From 15fdb5b3eb57ec59b75ac8516b60c9a72b635db3 Mon Sep 17 00:00:00 2001 From: Chirag Mittal <24974393+mittalchirag@users.noreply.github.com> Date: Tue, 5 Jul 2022 16:12:04 +0530 Subject: [PATCH] Init --- .editorconfig | 21 + .eslintrc.js | 115 + .gitignore | 19 + .husky/.gitignore | 1 + .husky/pre-commit | 4 + .nvmrc | 1 + .prettierignore | 15 + .prettierrc | 9 + .storybook/images/icon.png | Bin 0 -> 1148 bytes .storybook/images/logo.png | Bin 0 -> 1390 bytes .storybook/main.js | 16 + .storybook/manager-head.html | 58 + .storybook/manager.js | 32 + .storybook/preview.js | 67 + LICENSE | 201 + README.md | 109 + babel.config.json | 4 + declaration.d.ts | 4 + intro/WelcomePage/Intro.stories.mdx | 13 + intro/WelcomePage/IntroPage.tsx | 119 + intro/WelcomePage/assets/animations.png | Bin 0 -> 83144 bytes intro/WelcomePage/assets/colors.png | Bin 0 -> 169394 bytes intro/WelcomePage/assets/seperator.png | Bin 0 -> 942 bytes intro/WelcomePage/assets/title.png | Bin 0 -> 10949 bytes intro/WelcomePage/assets/typography.png | Bin 0 -> 62257 bytes intro/WelcomePage/styles.ts | 99 + neopop-land.png | Bin 0 -> 336029 bytes package-lock.json | 16788 ++++++++++++++++ package.json | 170 + rollup.config.js | 56 + scripts/build | 13 + src/components/Back/index.tsx | 52 + src/components/Back/types.ts | 9 + .../BottomSheet/BottomSheet.stories.mdx | 197 + .../components/BottomSheetControlled.tsx | 258 + src/components/BottomSheet/index.tsx | 74 + src/components/BottomSheet/styles.ts | 104 + src/components/BottomSheet/types.ts | 19 + src/components/Button/Button.stories.mdx | 183 + .../Button/components/ElevatedButton.tsx | 58 + .../Button/components/FlatButton.tsx | 58 + .../Button/components/LinkButton.tsx | 19 + src/components/Button/index.tsx | 21 + src/components/Button/styles.ts | 250 + src/components/Button/types.ts | 63 + src/components/Checkbox/Checkbox.stories.mdx | 288 + src/components/Checkbox/index.tsx | 54 + src/components/Checkbox/styles.ts | 105 + src/components/Checkbox/types.ts | 38 + src/components/Dropdown/index.tsx | 45 + src/components/Dropdown/styles.ts | 19 + src/components/Dropdown/types.ts | 13 + .../ElevatedCard/ElevatedCard.stories.mdx | 201 + src/components/ElevatedCard/index.tsx | 17 + src/components/ElevatedCard/styles.ts | 47 + src/components/ElevatedCard/types.ts | 15 + src/components/Header/Header.stories.mdx | 182 + src/components/Header/index.tsx | 52 + src/components/Header/types.ts | 12 + .../Helpers/ColorPalette.stories.mdx | 150 + src/components/Helpers/Customise.stories.mdx | 191 + src/components/Helpers/Layout.stories.mdx | 448 + .../Helpers/Miscellaneous.stories.mdx | 194 + src/components/Helpers/index.tsx | 130 + src/components/Helpers/types.ts | 20 + src/components/Helpers/withCheckHOC.tsx | 40 + .../InputField/InputField.stories.mdx | 153 + src/components/InputField/index.tsx | 84 + src/components/InputField/styles.ts | 57 + src/components/InputField/types.ts | 44 + src/components/Radio/Radio.stories.mdx | 196 + src/components/Radio/index.tsx | 50 + src/components/Radio/styles.ts | 96 + src/components/Radio/types.ts | 52 + .../Scoremeter/Scoremeter.stories.mdx | 188 + src/components/Scoremeter/index.tsx | 181 + src/components/Scoremeter/styles.ts | 107 + src/components/Scoremeter/types.ts | 39 + .../SearchBar/SearchBar.stories.mdx | 163 + src/components/SearchBar/index.tsx | 80 + src/components/SearchBar/styles.ts | 22 + src/components/SearchBar/types.ts | 21 + src/components/Slider/Slider.stories.mdx | 74 + src/components/Slider/assets/slider.svg | 1 + src/components/Slider/index.tsx | 42 + src/components/Slider/styles.ts | 44 + src/components/Slider/types.ts | 30 + src/components/Tags/Tags.stories.mdx | 180 + src/components/Tags/index.tsx | 50 + src/components/Tags/styles.ts | 16 + src/components/Tags/types.ts | 23 + src/components/Toast/Toast.stories.mdx | 209 + .../Toast/components/ToastPortal.tsx | 109 + src/components/Toast/index.tsx | 38 + src/components/Toast/styles.ts | 50 + src/components/Toast/types.ts | 40 + src/components/Toggle/Toggle.stories.mdx | 120 + src/components/Toggle/index.tsx | 27 + src/components/Toggle/styles.ts | 64 + src/components/Toggle/types.ts | 38 + .../Typography/Typography.stories.mdx | 662 + .../Typography/TypographySystem/global.ts | 70 + .../Typography/assets/FontVariant.png | Bin 0 -> 16388 bytes src/components/Typography/index.tsx | 53 + src/components/Typography/styles.ts | 63 + src/components/Typography/types.ts | 59 + src/components/index.ts | 57 + src/hooks/useAutoFocus.tsx | 11 + src/hooks/useClientHeight.tsx | 26 + src/hooks/useDelayMount.tsx | 24 + src/hooks/useScrollIntoView.tsx | 14 + src/index.ts | 6 + src/primitives/buttons.ts | 129 + src/primitives/colors.ts | 499 + src/primitives/index.ts | 14 + src/primitives/opacity.ts | 6 + src/primitives/scoremeter.ts | 60 + src/primitives/slider.ts | 18 + src/primitives/tags.ts | 16 + src/primitives/toasts.ts | 15 + src/primitives/typography.ts | 289 + src/types/index.ts | 39 + src/utils/Utils.stories.mdx | 0 src/utils/index.ts | 149 + tsconfig.build.json | 4 + tsconfig.eslint.json | 12 + tsconfig.json | 37 + 127 files changed, 26580 insertions(+) create mode 100644 .editorconfig create mode 100644 .eslintrc.js create mode 100644 .gitignore create mode 100644 .husky/.gitignore create mode 100755 .husky/pre-commit create mode 100644 .nvmrc create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 .storybook/images/icon.png create mode 100644 .storybook/images/logo.png create mode 100644 .storybook/main.js create mode 100644 .storybook/manager-head.html create mode 100644 .storybook/manager.js create mode 100644 .storybook/preview.js create mode 100644 LICENSE create mode 100644 README.md create mode 100644 babel.config.json create mode 100644 declaration.d.ts create mode 100644 intro/WelcomePage/Intro.stories.mdx create mode 100644 intro/WelcomePage/IntroPage.tsx create mode 100644 intro/WelcomePage/assets/animations.png create mode 100644 intro/WelcomePage/assets/colors.png create mode 100644 intro/WelcomePage/assets/seperator.png create mode 100644 intro/WelcomePage/assets/title.png create mode 100644 intro/WelcomePage/assets/typography.png create mode 100644 intro/WelcomePage/styles.ts create mode 100644 neopop-land.png create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 rollup.config.js create mode 100755 scripts/build create mode 100644 src/components/Back/index.tsx create mode 100644 src/components/Back/types.ts create mode 100644 src/components/BottomSheet/BottomSheet.stories.mdx create mode 100644 src/components/BottomSheet/components/BottomSheetControlled.tsx create mode 100644 src/components/BottomSheet/index.tsx create mode 100644 src/components/BottomSheet/styles.ts create mode 100644 src/components/BottomSheet/types.ts create mode 100644 src/components/Button/Button.stories.mdx create mode 100644 src/components/Button/components/ElevatedButton.tsx create mode 100644 src/components/Button/components/FlatButton.tsx create mode 100644 src/components/Button/components/LinkButton.tsx create mode 100644 src/components/Button/index.tsx create mode 100644 src/components/Button/styles.ts create mode 100644 src/components/Button/types.ts create mode 100644 src/components/Checkbox/Checkbox.stories.mdx create mode 100644 src/components/Checkbox/index.tsx create mode 100644 src/components/Checkbox/styles.ts create mode 100644 src/components/Checkbox/types.ts create mode 100644 src/components/Dropdown/index.tsx create mode 100644 src/components/Dropdown/styles.ts create mode 100644 src/components/Dropdown/types.ts create mode 100644 src/components/ElevatedCard/ElevatedCard.stories.mdx create mode 100644 src/components/ElevatedCard/index.tsx create mode 100644 src/components/ElevatedCard/styles.ts create mode 100644 src/components/ElevatedCard/types.ts create mode 100644 src/components/Header/Header.stories.mdx create mode 100644 src/components/Header/index.tsx create mode 100644 src/components/Header/types.ts create mode 100644 src/components/Helpers/ColorPalette.stories.mdx create mode 100644 src/components/Helpers/Customise.stories.mdx create mode 100644 src/components/Helpers/Layout.stories.mdx create mode 100644 src/components/Helpers/Miscellaneous.stories.mdx create mode 100644 src/components/Helpers/index.tsx create mode 100644 src/components/Helpers/types.ts create mode 100644 src/components/Helpers/withCheckHOC.tsx create mode 100644 src/components/InputField/InputField.stories.mdx create mode 100644 src/components/InputField/index.tsx create mode 100644 src/components/InputField/styles.ts create mode 100644 src/components/InputField/types.ts create mode 100644 src/components/Radio/Radio.stories.mdx create mode 100644 src/components/Radio/index.tsx create mode 100644 src/components/Radio/styles.ts create mode 100644 src/components/Radio/types.ts create mode 100644 src/components/Scoremeter/Scoremeter.stories.mdx create mode 100644 src/components/Scoremeter/index.tsx create mode 100644 src/components/Scoremeter/styles.ts create mode 100644 src/components/Scoremeter/types.ts create mode 100644 src/components/SearchBar/SearchBar.stories.mdx create mode 100644 src/components/SearchBar/index.tsx create mode 100644 src/components/SearchBar/styles.ts create mode 100644 src/components/SearchBar/types.ts create mode 100644 src/components/Slider/Slider.stories.mdx create mode 100644 src/components/Slider/assets/slider.svg create mode 100644 src/components/Slider/index.tsx create mode 100644 src/components/Slider/styles.ts create mode 100644 src/components/Slider/types.ts create mode 100644 src/components/Tags/Tags.stories.mdx create mode 100644 src/components/Tags/index.tsx create mode 100644 src/components/Tags/styles.ts create mode 100644 src/components/Tags/types.ts create mode 100644 src/components/Toast/Toast.stories.mdx create mode 100644 src/components/Toast/components/ToastPortal.tsx create mode 100644 src/components/Toast/index.tsx create mode 100644 src/components/Toast/styles.ts create mode 100644 src/components/Toast/types.ts create mode 100644 src/components/Toggle/Toggle.stories.mdx create mode 100644 src/components/Toggle/index.tsx create mode 100644 src/components/Toggle/styles.ts create mode 100644 src/components/Toggle/types.ts create mode 100644 src/components/Typography/Typography.stories.mdx create mode 100644 src/components/Typography/TypographySystem/global.ts create mode 100644 src/components/Typography/assets/FontVariant.png create mode 100644 src/components/Typography/index.tsx create mode 100644 src/components/Typography/styles.ts create mode 100644 src/components/Typography/types.ts create mode 100644 src/components/index.ts create mode 100644 src/hooks/useAutoFocus.tsx create mode 100644 src/hooks/useClientHeight.tsx create mode 100644 src/hooks/useDelayMount.tsx create mode 100644 src/hooks/useScrollIntoView.tsx create mode 100644 src/index.ts create mode 100644 src/primitives/buttons.ts create mode 100644 src/primitives/colors.ts create mode 100644 src/primitives/index.ts create mode 100644 src/primitives/opacity.ts create mode 100644 src/primitives/scoremeter.ts create mode 100644 src/primitives/slider.ts create mode 100644 src/primitives/tags.ts create mode 100644 src/primitives/toasts.ts create mode 100644 src/primitives/typography.ts create mode 100644 src/types/index.ts create mode 100644 src/utils/Utils.stories.mdx create mode 100644 src/utils/index.ts create mode 100644 tsconfig.build.json create mode 100644 tsconfig.eslint.json create mode 100644 tsconfig.json diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..1ea6200 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,21 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# editorconfig.org + +root = true + + +[*] +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +indent_style = space +indent_size = 4 + +[*.txt] +indent_style = tab +indent_size = 4 + +[*.{diff,md}] +trim_trailing_whitespace = false \ No newline at end of file diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..eaf48c7 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,115 @@ +const fs = require('fs'); + +const path = require('path'); + +const prettierOptions = JSON.parse(fs.readFileSync(path.resolve(__dirname, '.prettierrc'), 'utf8')); +module.exports = { + parser: '@typescript-eslint/parser', + extends: [ + 'airbnb-typescript', + 'prettier', + 'plugin:import/recommended', + 'plugin:storybook/recommended', + ], + plugins: ['prettier', 'react', 'react-hooks', '@typescript-eslint', 'import'], + env: { + jest: true, + browser: true, + node: true, + es6: true, + }, + parserOptions: { + ecmaVersion: 6, + sourceType: 'module', + ecmaFeatures: { + jsx: true, + }, + project: ['./tsconfig.eslint.json'], + }, + rules: { + '@typescript-eslint/prefer-optional-chain': 2, + 'jsx-no-lambda': 0, + semi: [2, 'always'], + '@typescript-eslint/interface-name-prefix': 0, + '@typescript-eslint/no-empty-interface': 0, + 'object-shorthand': [0, 'never'], + quotes: [2, 'single'], + '@typescript-eslint/no-var-requires': 0, + 'member-ordering': 0, + 'object-literal-sort-keys': 0, + 'no-shadowed-variable': 0, + 'no-consecutive-blank-lines': 0, + 'no-string-literal': 0, + 'jsx-no-multiline-js': 0, + 'jsx-boolean-value': 0, + 'arrow-parens': 0, + 'no-implicit-dependencies': 0, + 'no-submodule-imports': 0, + 'no-case-declarations': 1, + '@typescript-eslint/no-empty-function': 0, + '@typescript-eslint/ban-ts-comment': 1, + '@typescript-eslint/indent': 0, + 'jsx-alignment': 0, + 'jsx-wrap-multiline': 0, + 'react/jsx-no-useless-fragment': 2, + '@typescript-eslint/camelcase': 0, + 'prettier/prettier': [2, prettierOptions], + 'arrow-body-style': [2, 'as-needed'], + 'class-methods-use-this': 0, + 'import/order': 0, + 'import/imports-first': 0, + 'import/newline-after-import': 0, + 'import/no-dynamic-require': 0, + 'import/no-extraneous-dependencies': 0, + 'import/no-named-as-default': 0, + 'import/no-unresolved': [ + 2, + { + caseSensitive: false, + }, + ], + // ts already checks case sensitive imports + 'import/no-webpack-loader-syntax': 0, + 'import/prefer-default-export': 0, + 'import/no-cycle': 1, + 'no-param-reassign': 1, + 'max-len': 0, + 'newline-per-chained-call': 0, + 'no-confusing-arrow': 0, + 'no-console': 0, + 'no-use-before-define': 0, + 'prefer-template': 2, + 'react/destructuring-assignment': 0, + 'react-hooks/rules-of-hooks': 2, + 'react/jsx-closing-tag-location': 0, + 'react/forbid-prop-types': 0, + 'react/jsx-first-prop-new-line': [2, 'multiline'], + 'react/jsx-filename-extension': 0, + 'react/jsx-no-target-blank': 0, + 'react/jsx-props-no-spreading': 0, + 'react/jsx-uses-vars': 2, + 'react/prop-types': 0, + 'react/require-default-props': 0, + 'react/require-extension': 0, + 'react/self-closing-comp': 0, + 'react/sort-comp': 0, + 'require-yield': 0, + }, + settings: { + 'import/parsers': { + '@typescript-eslint/parser': ['.ts', '.tsx'], + }, + 'import/resolver': { + typescript: { + alwaysTryTypes: true, + // always try to resolve types under `@types` directory even it doesn't contain any source code, like `@types/unist` + project: './tsconfig.json', + }, + rollup: { + config: './rollup.config.js', + extensions: ['.js', '.jsx', '.ts', '.tsx'], + }, + }, + 'import/ignore': ['types'], // Weirdly eslint cannot resolve exports in types folder (try removing this later) + }, +}; \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eafcab4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +# Dependency directories +node_modules/ + +# Build directory +lib/ +lib-esm/ +dist/ +storybook-static/ + +# Logs +*.log +npm-debug.log* + +#macOS custom attributes +.DS_Store +*/.DS_Store + +#editor configs +.vscode diff --git a/.husky/.gitignore b/.husky/.gitignore new file mode 100644 index 0000000..31354ec --- /dev/null +++ b/.husky/.gitignore @@ -0,0 +1 @@ +_ diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..36af219 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + +npx lint-staged diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..958b5a3 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v14 diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..a9a740e --- /dev/null +++ b/.prettierignore @@ -0,0 +1,15 @@ +# Dependency directories +node_modules/ + +# Build directory +dist/ +lib/ +lib-esm/ + +# Logs +*.log +npm-debug.log* + +#macOS custom attributes +.DS_Store +*/.DS_Store \ No newline at end of file diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..5424f80 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,9 @@ +{ + "singleQuote": true, + "jsxSingleQuote": false, + "tabWidth": 4, + "printWidth": 100, + "trailingComma": "all", + "semi": true, + "exclude": ["node_modules"] +} diff --git a/.storybook/images/icon.png b/.storybook/images/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b1fd7109307e4df8d72aeffb2f3f47c46a82f357 GIT binary patch literal 1148 zcmV-?1cUpDP)gIyy#1 zM&;$@1qB83^YarE6P1;fEG#S!4-d4ow6?ak-{0TR(9p%j#q8|t#>U1UA0G<~3yFz| z*VosmsHo!N;>ya(yu7@Qj*jr~@SdKYf`Wp4e0-Rgm~(S;US3``H8n3UFB%#e=jZ3m z&CS5Tz^kjPR#sL$Jv}5OB=z<6YHDgbJ3A>UDXy-rp`oE>W@cGgSx-+-KtMp++S++} zc}Yo0NJvQU@9)&q)TO1RnwpxDl9F(6aA;^~^78VD8~UOE000hjQchC<@)!p6Egx;B?f?J-DoI2^RA}Din(0#FKoEcvL2i419LgaW62c*%D5!`i-nZ`iKg|vq zk}>5%B_zFDE8owim@k>`bfwZGa3YyhA|^sW#8@Jgi3s1>NQw{|Vsb-p6G=xQRHEsK z>+<6eI`JZY;HN%kFq{B%$yzUP{jhD$vPtG%0|<(}PzDD46an;hYNg0t&{;5{7aBffshyTOgGd zGYCOoUXsO}gdixAzaUT-Q3*#-Xh;iCLK2i=5kE#SWX%pwAay#OGLnF^_JZekU4Ow8 zNHs!UQ3W(m|G9#}TdyY}3HXzYDcF_&6TvCAVE@~~(+~wJA!=8GFPIMnxe=N`xg(VG z?KaG*wlo^JQ^FE}c~K*jK1;;-^@vakAMG#%CJQyr$c)DmfRc4T^34z|UV;f~O*>c` zS?eC&$b^!2;`KlRYPh%uhO+Ox=pEIaS~`?TfLBLrud|(jom>5wP_*}FV3ZFEgfgnG z{PNpXt@`P;?G-=NY*%voj`b?|7mR>mT=V*23e(xK9jlfO%D@kbpAiuo8889&b|GtZV}bc!~1L=a0#Q2@q7^F42Dd zOJ!ag0AUGu&&xN96JDy}33&e`a}RjM$ACha(k95eoHs0W3f|L0ACj0}&qWamEPG<=x zx$iwaUQB#)KI!f|{qn#VGXj8HET2FTf@dt>2ZOMa$6$C3iZ`GxTtW?b>b3$Xc>*YT0w{R`D0u=LKq8<* z-9VX4_8l}@SYn282TUX*4{;7#Ge(4HrNk|%(YCxDVCfRZObl-iO5|LWN&JMzF}Uq}@Y5hh0}#*yB?P zxNbWEU2S^*YT0;JrlLPr$NE0^yuP(QQ1S%W+u<2z12g>b3$Xc>*YT z0w{R`D0u?pCQq~nxDA+kjA@@SmMLUHZt|v-Uv;@fjcnPRjdpKQ<4ov43S>Y^@}3&5 z(==6qKk!yUA`xVJ*(3Zv^+m*G>3zw_!)*Nl+V`>0>FN6zH^X~qs~f$QgYK>CWm$S( zQn$4$RHx9~3#sRkD;M@CdMj*Pqn_4wD3Izp&9O@~dCa38h=sVv5|am|yHRgB550*Nf$a1T zk@)1XUkBRANOA3qv!Jxj1)+R*mRL}@f2kC2-ep_zw&q^96p=Yx z)ppc~gzCof$McLdob#UWrWjds?>LG)$LIx?WdMo6qT<*d#w5Bnt`(kVT85D3*sLW_ zBp8mnMdxrWwpUCA9XoNYsh)Mr9EHYAwE6ltP5-QGnJKr`t-DP2kQx zB)gL&*QwWyYlVljg<-gVQ-vuL;gAMuifgIF;3>wdd=K#6qOy)_6NX(^418Hdy%=-_ zlTcKQKgmul26>MEn}msQjqQ1a4GwASSHE=vQ|4VMCkA3dz-JRC24~O*n1rIjcm`hr zO{8@%23^5~CBkes^wb%WK=+q47bfvY#i{3YWzF~%^v>iGgRYQDR7}`x%KM5zSLjky zjDI#|Ee6|7S``veVTeI+0=<>sh)UnZU;ys`8{=r9Ns_wI;sWhDxY?zXl)+$#%I=9l wR|pi9mz@-YuFxVXtl5;kh9fHMsr8)r2h%Dw(yr0mi2wiq07*qoM6N<$f^o@oSpWb4 literal 0 HcmV?d00001 diff --git a/.storybook/main.js b/.storybook/main.js new file mode 100644 index 0000000..fa84555 --- /dev/null +++ b/.storybook/main.js @@ -0,0 +1,16 @@ +const path = require('path'); +module.exports = { + stories: ['../src/**/*.stories.@(js|jsx|ts|tsx|mdx)', '../intro/**/*.stories.@(js|jsx|ts|tsx|mdx)'], + addons: ['@storybook/addon-docs', '@storybook/addon-links', '@storybook/addon-essentials'], + webpackFinal: async (config) => { + config.resolve.alias = { + ...config.resolve.alias, + '@components': path.resolve(__dirname, '../src/components'), + '@hooks': path.resolve(__dirname, '../src/hooks'), + '@primitives': path.resolve(__dirname, '../src/primitives'), + '@types': path.resolve(__dirname, '../src/types'), + '@utils': path.resolve(__dirname, '../src/utils'), + }; + return config; + }, +}; diff --git a/.storybook/manager-head.html b/.storybook/manager-head.html new file mode 100644 index 0000000..3b837be --- /dev/null +++ b/.storybook/manager-head.html @@ -0,0 +1,58 @@ + + + + + + +NeoPOP Design System + \ No newline at end of file diff --git a/.storybook/manager.js b/.storybook/manager.js new file mode 100644 index 0000000..0c4892e --- /dev/null +++ b/.storybook/manager.js @@ -0,0 +1,32 @@ +import { addons } from '@storybook/addons'; +import { create } from '@storybook/theming'; +import Logo from './images/logo.png'; + +const theme = create({ + base: 'dark', + + appBg: '#161616', + appContentBg: '#0d0d0d', //TBD + appBorderRadius: 0, + textColor: 'rgba(255,255,255,0.9)', //TBD + + colorPrimary: '#fff', + colorSecondary: '#fff', // TBD icon and highlight + textInverseColor: '#1b1b1b', + + barBg: '#0d0d0d', + barTextColor: '#d2d2d2', + barSelectedColor: '#fbfbfb', + + inputTextColor: '#fff', + inputBg: '#161616', + inputBorderRadius: 0, + + brandTitle: 'CRED', + brandUrl: 'https://cred.club', + brandImage: Logo, +}); + +addons.setConfig({ + theme, +}); \ No newline at end of file diff --git a/.storybook/preview.js b/.storybook/preview.js new file mode 100644 index 0000000..cb0bf0a --- /dev/null +++ b/.storybook/preview.js @@ -0,0 +1,67 @@ +import React from 'react'; +import { INITIAL_VIEWPORTS } from '@storybook/addon-viewport'; +import { addParameters } from '@storybook/react'; +import { DocsPage } from '@storybook/addon-docs'; +import prettier from 'prettier/standalone'; +import prettierBabel from 'prettier/parser-babel'; + +// Global decorator to apply the styles to all stories +export const decorators = [ + (Story) => ( + + ), +]; + +// Custom Viewport for better looking +const CUSTOM_VIEWPORTS = { + iphoneX: { + name: 'iPhone X', + styles: { + width: '375px', + height: '812px', + }, + }, + ...INITIAL_VIEWPORTS, +}; + +addParameters({ + actions: { argTypesRegex: '^on[A-Z].*' }, + controls: { + matchers: { + color: /(background|color)$/i, + date: /Date$/, + }, + }, + viewport: { + viewports: CUSTOM_VIEWPORTS, + defaultViewport: 'iphoneX', + }, + viewMode: 'docs', + page: DocsPage, + previewTabs: { + 'storybook/docs/panel': { + index: -1, + }, + canvas: { title: 'Playground' }, + }, + options: { + storySort: { + order: [ + 'Introduction', + 'Foundation', + ['Colors', 'Typography', 'Layout', 'Miscellaneous', 'Customisation'], + 'Components', + ], + }, + }, +}); + +export const parameters = { + docs: { + transformSource: (input) => + prettier.format(input, { + parser: 'babel', + plugins: [prettierBabel], + }), + }, +}; diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + 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..12f4aea --- /dev/null +++ b/README.md @@ -0,0 +1,109 @@ +
+ NeoPop Banner +

NeoPOP

+ NeoPOP is CRED's inbuilt library for using NeoPOP components in your web app. +
+
+ + + +## what is NeoPOP? + +NeoPOP was created with one simple goal, to create the next generation of the next beautiful, more affirmative, design system. neopop stays true to everything that design at CRED stands for. + +## what this library features? + +- Easy to use and beautifully designed React components based on NeoPOP design system. +- Flexible and composable components which accepts custom configurations. +- Commonly used utility methods and functions. +- Fluid and highly optimized animations. + +> note: currently the components in this library are optimized for mobile views, we will soon release support for desktop views. + +## how to install? + +to use NeoPOP library, all you need to do is install the `@cred/neopop-web` package and its peer dependencies: + +```sh +yarn add @cred/neopop-web react react-dom styled-components + +# or + +npm i @cred/neopop-web react react-dom styled-components +``` + +## how to use? + +to start using the library you can, + +- import components from `@cred/neopop-web/lib/components` +- import primitives from `@cred/neopop-web/lib/primitives` +- import hooks from `@cred/neopop-web/lib/hooks` +- import utils from `@cred/neopop-web/lib/utils` + +for example, to use button refer the following code snippet: + +```jsx +import { Button } from '@cred/neopop-web/lib/components'; + +const Page = () => { + return ( + + ); +}; + +export default Page; +``` + +a detailed documentation and an interactive playground can be found [here](https://playground.cred.club) + +## contributing + +pull requests are welcome! we'd love help improving this library. feel free to browse through open issues to look for things that need work. if you have a feature request or bug, please open a new issue so we can track it. + +## contributors + +- Chirag Mittal — [Github](https://github.com/mittalchirag) | [Linkedin](https://www.linkedin.com/in/mittalchirag/) +- Tripurari Shankar — [Github](https://github.com/tripurari001) | [Linkedin](https://www.linkedin.com/in/tripurari-shankar-91907189/) +- Rahul Jain — [Github](https://github.com/rahuldkjain) | [Linkedin](https://www.linkedin.com/in/rahuldkjain/) +- Utkarsh Gupta — [Github](https://github.com/Utkarsh9799) | [Linkedin](https://www.linkedin.com/in/utkarsh-gupta-99923916a/) +- Aditya Sharma — [Github](https://github.com/sharmaaditya570191) | [Linkedin](https://www.linkedin.com/in/sharmaaditya570191/) +- Abhishek Naidu — [Github](https://github.com/abhisheknaiidu) | [Linkedin](https://www.linkedin.com/in/abhisheknaiidu/) + +## license + +``` +Copyright 2022 Dreamplug Technologies Private Limited. + +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/babel.config.json b/babel.config.json new file mode 100644 index 0000000..427eaef --- /dev/null +++ b/babel.config.json @@ -0,0 +1,4 @@ +{ + "presets": ["@babel/preset-typescript", "@babel/preset-react", "@babel/preset-env"], + "plugins": ["macros", "preval", "babel-plugin-styled-components", "@babel/plugin-proposal-nullish-coalescing-operator", "@babel/plugin-proposal-optional-chaining"] +} diff --git a/declaration.d.ts b/declaration.d.ts new file mode 100644 index 0000000..cf24093 --- /dev/null +++ b/declaration.d.ts @@ -0,0 +1,4 @@ +declare module '*.woff'; +declare module '*.woff2'; +declare module '*.png'; +declare module "*.svg"; \ No newline at end of file diff --git a/intro/WelcomePage/Intro.stories.mdx b/intro/WelcomePage/Intro.stories.mdx new file mode 100644 index 0000000..a32ca67 --- /dev/null +++ b/intro/WelcomePage/Intro.stories.mdx @@ -0,0 +1,13 @@ +import { Meta } from '@storybook/addon-docs'; +import IntroPage from './IntroPage'; + + + + diff --git a/intro/WelcomePage/IntroPage.tsx b/intro/WelcomePage/IntroPage.tsx new file mode 100644 index 0000000..c6b181e --- /dev/null +++ b/intro/WelcomePage/IntroPage.tsx @@ -0,0 +1,119 @@ +import React from 'react'; + +import { RootPage, HeroSection, Img, Heading } from './styles'; +import { HorizontalDivider, HorizontalSpacer } from '@components/Helpers'; +import Typography from '@components/Typography'; +import { colorGuide } from '@primitives/colors'; +import { fontNameSpaces } from '@primitives/typography'; +import { GlobalFonts } from '@components/Typography/TypographySystem/global'; + +import TypographyAsset from './assets/typography.png'; +import ColorsAsset from './assets/colors.png'; +import AnimationAsset from './assets/animations.png'; +import Title from './assets/title.png'; +import Seperator from './assets/seperator.png'; + +const Details = [ + { + heading: 'color', + details: + 'the vibrancy of neoPOP demanded a framework where color could cross barriers of screen and glass, to speak directly to the user.', + asset: ColorsAsset, + }, + { + heading: 'typography', + details: + 'with scalability at its heart, our typography system bring consistency & cohesiveness to the many experiences within CRED.', + asset: TypographyAsset, + }, + { + heading: 'layout', + details: + 'a consistent arrangement guides the user experience. to ensure uniformity of design, our components are crafted to be reusable and easily pluggable.', + asset: AnimationAsset, + }, +]; + +const IntroPage = () => ( + + + + + + meet + + +
+ +
+ + + behind every masterpiece there exists a framework. here is ours. now open-source. +
because art belongs to everyone. +
+ + + + + + FOUNDATIONS + + + + written by our developers with the ever-burning desire to + redefine UI conventions & bring the art of neopop to life. + + +
+ + {Details.map((data, i) => ( + + + + + {`${i + 1}/${Details.length}`} + + + + + + {data.heading} + + + + {data.details} + + + + + +
+ +
+ +
+ ))} +
+); + +export default IntroPage; diff --git a/intro/WelcomePage/assets/animations.png b/intro/WelcomePage/assets/animations.png new file mode 100644 index 0000000000000000000000000000000000000000..436f398bfb16d187f90a693c2e7e2a683f471051 GIT binary patch literal 83144 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

7%*U?B&7tA5=NIO9g=?N zdTHqm6qS-@fPf;+P*6$`{LSz0zxSW_oO|zc?sLwKbFLta8Cqzc7HOnLp5t0l2IWX@ zDqf|Z(BCq^t`$G z@6J^eBXj#4+gau1o=$^uz}VqBOCoQCF!txyx~kcY?8>R+45iI9T+7uPa1} zF*=OV)D1hoHNj5YHCsM230a>j%Us%m^nhle%b!LH_Y|?B5IC*(*5gO&jNjiOB<()U-B-m@hlKY8|*y#FgYA3kE%XK-)mLfQtOxgykg*FM30{Hdtrjw$GH?uCg zft!CTmv<_uAp!?8?s_4r<23!o|D~Hh!o~R>5B5K@yc*e6i_G93C+Tlr78kE(eh)i) z6*jPT7pW`tbMCVDSO40N-QbASAr;96&*npo_14Q?%tieA1i~cx);PlQ8XKz=XGJezXQMS9TxyA?lefYP13*ZD4YAK;N(|lq1Pd;##`68QzYRN`a(CJ^E6)4f zkihlejcm8uIho`T;!bSWf1W2KShqez!`;m!LEKS>M&P*^wYKy3mE(w4-S;>H6a9Ce zc-=+)VK?97Aabv~AGm7t#)xGQ;>16Quq^*eg0(+~33%=kWc25kOAYD^!c`p<6sOhJ zO&VP8`IIl*4l=#C^NIJ(_P;jls9z8T0Uot`Ut^Wce>DAwM4#=w|IRsxkg@F50N&wM zDI*j(?g`=~T2H$7qV60IZwWrIpEX~p33bSS53?FMKk+OB?;&S0(;2>BrCu)niHDzf zb$WdjlyjLUDcp2e^lC4+>y4$auOX~|4*WtIymcA0AKnh8Tc;z0%#Wa#?vMS7XgMKr z8UV@M*tPM9bE16>LlIPi4khXD8KDO-7i*L&a(obg&w!LOZgw9`%zPKS(UYjB&uj_Y z6~B;2bB6y3Ei&once$Vec%Nj8DvXXq5)#XNLPg-SAoA z%C>ZlEdL46lj^)+r{aW&Oha;~QP&)dIVq~`HK#+pd};D?KT2|LDd~vR`*GA$@#F6u zyAdTp?G*kBA7<>-@DDKV*|1bKcFxrWuAwx*s(1e>A5|3z{qHmH^>sn4{V zFsyq;YIvs!pJ5*`!(?3ffK3-JsnaiN9?%|(y&hr3vK$(6{k`9QB$m)duidn6pT+cl zA|&xd)iJK+mFf1b2y#{xG>&9SVGz+`1fAa#2=!5Tp$jZc+bR6!R%!Bxl8{4)@S6xn z#s)5E?Q2^M!K_|Hd@*~^1E;O`IP$MNhcqjVoxBTABp#X6Mvm(GEgC2b6(bcXpX_nT zQ{)!-{g;X)Xs7e#3witI7#2+Wr=Xtt^o}|MbYB?jpjl4}yR^7ET)BnVq^?LyQ}KrO z>07wc)$baSY{z+tRJ*@9W9?f6RHLs@75a}!F4ZAd_u6PCq1f&nzH^~7-e4}2 zB+3@X3-^k1FFU`PjHDvM2ecj2q?jSF}evZQ_n0|lWt}i6~(rSoo zex0@>j5CTAE#LDI*=4np#h?qvA;b3a^iucNb=b2kglB#R+}M@qXj%zqLwWV8rvzT>NP*@p)eic;QsQ7GJ8~3dpXydlF_BN7a!q|4ZA4YvAjThehVHK3HuK z`o!lD?>3Yp85fZtoeOP8J9sW$niLgM#nRTF-pvd1rpU)IlQVH?oS^J=m2ZcX8LL;R z)FSO?2Z})u9j|0dc~4z>6W)$3mpjqjQ{S1#=exD?pCcQnQOZPDny}z8fwKfiy~5x; zr!?Ejdn^S*E-TA9)A~(rvS7y#Ih5Pt&0<0242AwY!o@-{tG4Zbx)fsR>ZkZ{eo=kW zgZe*aJZX!*Zp2l;dV(CJj*Oc&&32#Z^y=4pZ2UnlXpFvY2vI_}<@9%{g;4{rD!JP~ zq(KMuVnn8gg6fGPY`YD-*z}~deY@Vi!8Fm{l~=(pt7f%rkJtR0rbV`&ACSMB)}>+X0kQAxg!p2eSi(im`K18dycplL<>$Pvf=+|NM}=N+ z5Nw3jdvQl}HAd5Tu3{NB+j`)8JCrx!i2vVj!k%1<$9~_%eaxF>AEC+0RR$5g^2|nn zQ0Hr*1+!g3Qo}V=*Fb`g}Sn#i~N*BcKa~RCx^eoQo`1=Y?Lx4*yi- zNAdtfnR)ozH-uLmKx{Wi_ zT!8C$#90W+F65;mO^LZ9?TPlgYP612wr{plaJ`+NpOO*^li@YDrCP7`K8x|3-ZBK@ z!NLD6<|2b~4BUV9abfx1&t0i)F#N-{I{mb-Zide~oWaT2-ufSFn0@}9-wd9=fJHo) z$9h&Ze(X-$yatJd!0Oa~Q{3p6Jm4KBj*PpwAJQn&#Z^aYXWgi?!(;Uc@!Uu137SM6 z>)<)@y|dH8$q<;S{2M{-L|eZ)Di{FkK}R6Us%{y}f&bi4!^A-#Rq~s5Y|+jiBm-!d zg+?Me9#zIFwb2T^-1PPBeVc=nV)rtdsLu8BhXrfy&~~JWHb`^w|4*}lD#-WZao?w; z?{|VUAf(N|_R_yI=%eyIWbO%#`p|zvkj)M%J(A*9@MI;lb4dR-^d7Er_JHVR)PWkPfiT@@^$R;G+rD2ey-x=h7&@X zR{iMsvlzek%E=zFNDUzzxhSWFb&8QN;55MVqJuI5@V=R`KVETeydP;h_{ijsBm4Pp zU?xaM(i8oo9eG(%T2dW*7xLt{7{uu}Q|6WPOQR*A9dtR|*qjp~qF*dZ93{vSQNH?* zC@TB9Gj>wI{NbM6D{#`FI_RCu;Jm8L;A$X_BrK3tEDE(fx3*$;xqrW`3^dO-*usxX zF(MIhVemR4vx4UtfX}FPfg(@dVfnWpX6^0Qgv&jZj+9QVR)pXJTmj7g$i=>Bv8;WU zh8*{md1J<#w1*CUS$<#4(7-pbHqjqTP&nIf7iRUkZP)Y&@+`iA)`x%0)h2TY;_bI! z)*vN|Hljji(*28cax=HIQ|k=&tI=`MApQ8DAY-6$m!_UVnqfzJp=7r=B+h9fY#72& z0L4m=QH=A$^D*9km^VTt}!(ow_%p_0b7W{Ov`bO;7< zYpwe4Gk3_)e1ixZuXffvtC~#_?4D*z!?EPC3gN4dWNb})KPKItWF@| zMS~-{N(k-M?D8*02rM8H7e0Q_Mf+cw;d{UvX0@EOZ5B?VtgjD*Hi3P`>J_lxzpw`H zvfh$pg_TA-G%5OLOTV>+1=iRtrVGc7TNz|(=#KaKp#L#_K61N5w7|B-LQaP#e zkV9?7H$92;Uw%PnEW+^?!`CVudlf}9YI(=Gce28l_BYBZSgF>3QWMo0Ih(Ebz|Tro~(0H0YvH z45Sso3PLea$%pWHQ;9U1wEqthc0(?gt^#e#@F_|*E2-Q+uRQZOMlu{*o#4z+<(&Hr z-$4rK6gd_Ht^!kT@$^<)gCbvO_^qh8+qK`rM?Nmg;7n9eE{P5FSEMM(gmZb0c%y8j zoufP_Ast05EhpL_LK=kKdq;9Zx!rBH!R;YiRkOkV9lD;`H4e~>`)5q-7UqpV zHkFQ@y|n0?$%1x?GoP3tM#-)SE9e9dF@x7{UYKd;WUo&Ib4V1F9+~HD9X;HH*af_- zy7#iPv{WWp8)bbOWvbmehX0Vsl#`f4M*hx0&sm7$;itJdsy1e}mV~UpD@b_6O83^nDW#cjRXK#bvPvR{}9I|h2`Lc@v9VFAf zHAjRizDh}Fq^X$Zl2Nfp3={srJ8Hm{eID6#w#`jPoB|P_?J6eifu+!U^Aie_p!5zp zjqU!}bvKFkGaGswW{;eC-3KgByIvKz3)?sdP9$`Bq`B$i@Nb##mVK|8`rGf((w=e= z96TE1kE@|LZmp*xoNxymdU=?x&hp#fG|e0zm0Vx z@D!}=A^-A^M{8UDKI=FFzoc0{qg!GoU+ExgpJCt)ptvE$V*DU=P(VG4&E z-pB3*f&!!}I$&l^x(*bX0^KZJX!#xxYwOHcNub?>U zbv;S1N!N@R(+Nf&f^(UvLT|t?X!0Y@+DP0j%r`d+vzf3#J>}b#u zODr!~dX70SV6RLhh{bbULHLS`GCk~PSz=BoK?9c#4jHU$%0k$7@?1bA9LRTbkymgC z%^F6A%OCIG=&JVqG}_q&A#Gv$R+3T^CtB%{-Iz0vvl7Bi-zO;_S`*5Qqz$$X_zb(! zI|d;+?yfy+WpQVWO{SFi@Ptm`g+Elv1Z_D$ZRfF7yTJWK!PkMGE7ULWSLjXDQSq%z zohA~Rfm@jt{w(HVD?IL_k6!u+(tE22@b{fRN`P{Fq+NUomD5R~MA2J2s}gc%ZQt-P zqD;{z27pY$4a3E{HXBlLWxLk)<8BLEHa45JU^$tV7Bk!0-|Ov#?_mYK`WbovBhvMD zhjRO%?ubp-6(LV0r594GkP{~iZ}ZcrH<60cfxBQkEEBTd0lyUDBFkp(iCtW5*)rMd zt#USS#Y^q@{cyk3+D&x|Tg6A=)qz)J3ZBn?l{3!U;8{_3@5>E6H>24h zPE-=#AB?iTuOJ?JE(H61-Ink5&8I`NqT(cG4oGlYEkfZxFSq}SFz$B}dfn?RlyXv* zAv9^>k8Z~c>fcX}*l#Nwl^+`Mr#IZ39GWw{OGpKkK+tlmG&iGo+*z_=KdVX9GKK&- z#^CprF^wOsnZoVa@7$*BtnQ1UVKT=WjE|~*qqf!KjKO=bEMybed7>JTSAv0df^_ve zJh)#gh#@*hH(cJit)mPDMg2n#79J*od>f!&Q33DBRAvikb30bEqw&7gJFV$8U!Px@ujeM&Ih+^c>FL5 z3qs|{uRKw#UgEda&}4?+rejf0ia32^*#?v-_e02DXfL{ctbJQRoU&#~b`#edp%c$8 zwpUdmW;Q`LLAk#ay@ljCoLrk4p40ZDRWB;)B^}lS(L@VTDl6?A`;N!5jUMa{-WQ64 zAN?tK9x#5zVgxYz=$gA}T-_$)+k_g&uLPYlkwAQDz)Nqw@I;-T!*agzMiJ6nB~=#? zO5}l)3L`+(a>Wc+P233qDhcXNV zyx`{6pp6GnLM7M?E6>LZf;fTw1e9bz1GJj-&igNetn;bAxO+r%kb=fC?i&K|;~0QR zSv={MPPJ*(Gm1Y;OJO6Vu^X6L0HawSbdxraii>_s2002K9O}ML6&QI4jT!ye0Tvxi z0uY10(p;;cks$_|2Pr2&|Qrr3~- z$kxlYCs>0!%;F`m_jxiNc2`Fj zhsZYKyFg4o&nctheJ8Lnz^n=#;3a1!SPTE(U7t8k^%pr8K{(S;JlvKlaKV%eW;ZkQ zZc3f!`7bDay^IEsh6fm~SrszwTe#hMpK+!XN>5|GG>HE@B(v83@WNoygS%DlQCp(}qrEx#9*|h;Ro0D`#Y>))Fdy(?f8FVULkX7norj zw{#fuU!&ys{fq5whIf7MGGzGq>b+u1U$P`uzWaw>97}|{3E}{)v61`d@y*BnSm>y+ zczOHxsn+)~fV2-GVR2r6vMLB{#e>y7Fc7Qle|0mm586f_wwDwnS{w6gNb!4`Lg=@r zzPIy}=03}#zIh2eMQ>YhT>Q(=hbK0Xw5cWzWK!ss`joN}Vv}iy+mx}{7H`C)gE6|q zj!``5_8oy3|2dY{y8Z6~0)tUb4D#-KUpyq4M_-9D*IfoEyd0ezApNUe_=9_Dn3zKR zt)0|kpLlkP5tC++tT-{8P8G2oKL$a0Wh=5ly!AuiwXA4M-wbR;0pfu!+{9Zbheu+^ z{1Je^raJWMDK`Za)$0lE3KRKN6Z!Z1_Rcyz-(BZ!7mzq@PD!RZ+Smey^@IY?d4u@| z@8uhcTRWyV%-Y`-42a49xu|M9$-Q_Qrq||QmOw!t1(0#l1%p6h`ke3S4gHC5eK9_E zda_2e%*x-{ju_d%_{Y}LWWleVueUt5o&K2V5?e7ct11ouEtM&f`{~(J$e%sWCA_Td z{K>a(-=2Mr_so`JP2K}Pjc;%;-^J0%(?&gYQkp|48}WVt1G4)D4=c*EpVZ~@c+)7X z$lm%W@M0*052oPbXm3$RT=btgHBJ*>p$~EV8T7g zm>nrFVG-XXk~q-Kt!VaSPpXE3+YTY*->^h8Q(Uy?RnYeuKk$P$t$!i$DuDwRT*uX~ z#tF_*#%>+d$+kIuUduNV-)TQ$xTlDwV#QSM75St-s=2C@gvnaKCBr=*@1G^ilhT&M#L zK#iS%NWR;lQ5afPI`jW3sqoI>NAt@Jv130C;eluBWZMIij(z-ZyZvB)uene=;!EsXNpr2?6P-Uoj5 z*S65hgVz~-$+Zv5SIYR`I=mu+Cm=tjM;T~@hTDesZGKjJ^tj~j;m0XkUYEKfu^aLd z;&Y3S9wOr!WPj!_fyEusb6y!5b~nOWK8t=366wC)0QPSe^XK+o$)51xcGcr)XEoiK z?ke{*?5P>W5NzV0=P$(FA`P|MRkv;q;o6#b=RQY^7n(E^AoSE3enDCzb^7p(<+648 z_viKLcT5g_|3MAfwMK!UeCR$fIPW`j@zye=bUO@ZffRNrh{$_70F1yjblmvZ~XeZ6xLRUKi+ODU*;8k)vh4k3nm3};Eo7bu;jRe?fVWUjVCs& zI{Y}n*qmrqK^=Jh88okl1wPyXJ7tSBKLtGr}e`a7MUs zoj#_eMvOLe1y%O<8EW`5I~YaW8Wz()hvh2XG-;=X%&2p@G44|&xyqGVmb0M-B&(XTzz zZ{S5`Am628wz9og!pWE~+SV7&&jp5?eH&y+%VnUvu#T|h^L2{j;6+Nxz_08nwCX(& zCfB;F%h%vCc z0jvfzwnr$1fks_FcIphNep|<_}$UQl{Ey zP7QY&chd)?^H8{@D95}4azD8)@O3y^#~ze@9}axGJ*390FzotcW8@X}dBc-}Tc|Tk ztgCm00^Ah@rO43GV#Vk`_&4^_Nw39LH*39mWpIc@XXT5%Sn_)1`NB&|K3aUWziX+^ zQ+_DPU;$~6h&OJE>Q}R6t#Dpr+E21mG85O&pyh3u`kDXaG5B{%4`H9$nq$!{(q~7|g?>rynEJ z%-eJHl6-esL}AI6akE`L2y~oU15OsI@b0F}@G zl`%bWv*VOKf}b6dGQLC_0OnR|q``lS_O?h5*CN7LjVe-bt%b{e)^y7?nVk?5IF6>DN;}a`y0IqL?7PhF8XhB0V{v^E?Up=hdwB_=G zUebeO52~SFh%+VW*Dj$CY5Z#bBlRk_Xb{GJ2<;_8Fb|ZQ868b+ItIcBQ<|RrTfoHC z2RWN0X;h3Ts^>29b|{!R@K%9m%q>YC_zP_|h{ykMj=$Grd9&BL$mnhNW%uLoC%KKA zA(t+TGL4sXWWi)*t~|OQ#c^j`E$dwMMF~Y6tQ{uL7oX`=bWdxt!2e+$D+8q->(_SY zyDW2OPyn7sQ4JP+xs*`h&y*FFDA7`iLTcQ+*5RT8GU)LLcDuGiQSgHI+#s>t@7#<8D7fi>dMrRk2K6wSpwE7rEh;+`xjp^4TqgmR#~8J> z*kaT=S9lyy;Ji}jg%6dw;vj%!O}9ksmgSW^S~qF-5f;snkd}tpww8#Lu*$YN_uLE2 zLH-~@4EK$KW{6@HS}WBUKLB=K8h6mxs^K$@70+i>Ze4tNz)v_p0Pa5-Xv_hDc$b`| zLuTHayZXSt$+Fw&lumik?hHz#u|vaXv;XHaP*l;L5ic4a{_0JZt;ao*=($TFU+c+( z5gn0;N6M<_9=XEuSn+zWzKJFJL_m4?(^KW@)F>fbaf0+H6E?Pp7)@OCn5r2hMmY8I zN{_bJEZu$_BYQw|mU{JcyFTLO!toxW=4sL+qQ)l^eT+T)mm^({x`H@9%7FWozDJe_ zuKwvVwC(E1Q2Agt?p#cC&QfR$GsjtgEHf6{q7}E&@f)V3Lws_Jlf@5}3X7*B$897- z%&0vE^J0=NrzNXUdWe7a(5yYIuVk-1OPJU@ON%XT(m$T~O{6Me8? zQTtNiHhBsiey-$SfmT~7M|h%oJyj1=6d*;nbP&yoEi;1Wi^F-~CVaf`5=!hB>s*)V zzU6@3Z+E$LI)4b3Dw>i7=QVVL1%<_+`}-lGQ}8)4A$K|6;N85>)})T6HMU0?l%6n# z`R9X9(3ESEL=pJFAsFYINE>YuFHgtJc}|Z9X;P@t^25qxr|tfkkwDfjFwQtqGV^;; zhJm7*TJnQ@<1I%!?g?&3MdN~mqM~y){0B9m#`z@2v~Gn{L923lZ*bWHChg~rDvMoq zrQm3w=3Hq1Z`n0Cx2n?#Mjwk^7=El{soB#M!pO{zTX$ABY`&N#MTT|Kg=SX>R^JHz zq>Z~-);Xe?iqYHddKO&*!lEB^Y=vtA<}ye7-2EApNMCMFEXqo$Zv*Bl%F`JNV8=)-Vv+yDfV48etc1bJ`YBREd^ zMzYVs#;{Y)i5k&|Sq7FL;q??9*`EElKa05vZaI8Hq=+ALj~(~_`&}Ea=p?n)!fpPj zgjwB>Pb}Bb6>HV zCx?m<+E7qdzIJ@+Sy*gNYj{#K>Iq#gs*}$5`6y*Lhm>!B)Xj%x&KaNl!B{jsY~dV) zf29oyBLkhn+qklk*2otIwUppniaKF{sDjyMu4#jXf3p0GHWN5!u}JRrQ6qZl_wS!$ zV~4t^{}LTLHwv0WABG!P4sOBXn=fN|>hJw_gN4>eHn4ib#V8GK;XS@Bf2l-LNodjL zFe#5#5E1YUj>lBp^U^P;#IBfoKyb@RVDD{R3$z4J8_|ZaDGgX2&^d8`IS0bc+dzWF zPIl>|o4Gzce=)Wf+5fU>{+_0#kq+lZ%Oz|CcG2cEwH5&;R5am^VN#lE_afDE;JQ6$ zYh2=D7`5_qB^IOsx9#5Gg%GCASoga1e<$2eK^^7_QL1zCvWOi0yffxg5{jtj(=IRz zDWcJasLfvjxgk`k2-W4a1zPK~u8nj$^l!PTuqxUwF z`}WD2g@sgR{%c)CiP(Vp&ZomaHyHU}h-(u9rQ}PUBI9_ZAy?EDHR$vWvj}PfpxLo3GE#Qn0Pp%EI1@&kPiaK{8cY%iu4n-5&1{Jz7gjyLjStZ4d^J2-DK^DOWEbrQR z$xZ`dgF;2TJ6CjN?cN3iP&*yO8Khq1T-9B4l+r0^r>c_@sMuxvg2}@k5@p1Rq4!Nh?n!KyP#8Djt=)OiVj2^ z=SC>;j_?#K3pPpg?%mQ0IfiO@Ec4w;7G9*elPJ~DSZAq>MjX<hsyxgWg%aBtFEWa~rZS#t+Z1?`2!b&))?I&E{T(|TRAhRCOe#6&iHVMf z0}6)yavZe*?G=s}uXoLLV1wA)euEuUfTGQtvUpMiUg!u5TC(V-xTC(s6~!q!$W{E- zTfdG8`8wa&Dnk8Hs6uX3|Mk-!D+9)7N;ulz&?5L_(1sQUREq9$o5KJ{FB)6 zMpbAGmRppiYl&-UIH?ZN-^cU|SQWsUsm|ZubwxnH!TX1h`hJZ-S>~r*9|X1j1~neO z%rCTX{RD1nif;WxO!MJFuZzyYGu%>csDDhQA&U!*{lZqU%0}%fi&w3P#L6zsvwZ{l zwb2!!cwQLPqv75W?W;nOs1su|eN5Y?&d5)b-4tK)*7Q(2R4qCVz-5 ztfI1T9bvB~-}dmFWmiEKTeT=H_P+GG&G;Nh&kij}Xp`VK-p7fOJ?QE)S%*w_7yT+gW?u+7i>kyZFpxD(rj)u37antgGBd9 zgngiC+@eiCV=JCnV&1KJl~%%(TmS5uWdrO&~co@7zJ)EfFFcho859?aZcz+ zzn>0yd;&6vvg>z!uIF1-b6noMU12yO?&Udma4R0qi~xX06^0g7UaOmr!#3I`+u)NzABX ztm-F~2FcgRvttXy4exaVM^{7+WiH+68vPae^f}bvWL66h?@Bd5QsNmwJ%U8Y{WCVi zHeW6+OMO0hl+3j#L^pz|Z560TN}+v1;=YFKoEYd)q8x7q2Ji7EO3K|+iFd7tKHHI` z!M6&)Ypay_3Bm+0l3ZJyjW6XGuxYplHj)AN{jh@%IfUbzfI?!EO}Z#&ttk6-;spPz zR=YPg&3P`cu-M5(n<9L_Lz;x#J*D_74zhXvhHS4QLIcfj65WB`Bm-nAfCYJUAD41l zpI#*67j%0J5vakRLct=`_KoOJqltX&I}MsB#s0cg+MK7hMWHZ~n9iI0xaaQ)Ric}$ zpn7yKkTnk^`2|(%RV#MnO)>Dk6vcpl&KlL= z8?(~N379MNT?b;q8Ndc&^`9^^njC#;u6e{Jv_RLQWnk0(Q|3{jBU(c(z+Oh2Y`*R_ zdZ_IlU_oljf*6*+YXA}xh($U|WkJJa=Ys*GNW;eTa1q;zG|=G*1srUBsG@{(ru|9@ z^pdqN2K~LyC2cI0lz>!1A5asD4_|-lx!szciLBugW&JPc`7I!g@LnbuFF&sBr#v5g zmMLgRO$%biu&}^ceOCk}9WP&Rrj}5i|n{&eZDeZhN~6wX4e`e|RWI zrC#L!Ztc+G6&rH8HT4e?`%qZrD{OE)0gt~>eZL#xWI3K|y8NA~UV1{9M>l>F4CZ?l zsE66-)h3^Hz!j1bao{6~IfX)%T4+Bk2E@0XZudFcl_n>>CR4a9Ajs3hDrf>jykrXb z4>l4`$q97!l`|G6BbhH^n^}O21LObL-UptnbNLsiARxzm%Oao!4p5jhd4ho~w3f!? zB_F8N$tBE>+sC_fUNQF5gFTljPr02?%28dSCM#kVb^^Q|s?cbe#_Tf~U=#|Iq#(kX z7bJags`o!-2FtWJ7Fhqj1;BnetR21?)HKIkwQg2LV}4qBv`gIeJhBTC?r@hcrR$)h z!KS=~Ud|mumo@spcCPmc128hHk0eywWW@=AgY{VdjpTw;S}Q&)8+gw|Net_DK&4rJ z)ussHgYvo6tV%Q`dAXjbOKf=r?eMZv7F+JE`gyji#z*`&I}qa3qa{qBG`pfK_WuN# zk&4t|Fl>LZ82B{&n4e(UD*6;UFT`ZR+-s#wu;hGE3U+hD6%L<|HDx}377tNpW9UKZ zjXddkE^S<={EvKofB$>1OV)943vXYc_U$F75YC7oy^{h~t1@IO+!7k-fTzk^coVzJ*u;BAn ztM|aN{?*He9j_^VV>MXWz+RY`|i3Loy-XrOWU<|NQ)yX zzFX;|b#-+tvFNlzor&CJfb>UNg|*F#WYAK60#f=s)9gt?TD4K^N`zhgugPGYe|%~3 zVqVl4SxAJ_iT>kx%!Wv}zgj0)6@x~q*c@USomQ!Cxe!GPmnhZ|EOV-rhPZI2uVwwn zQ13}1v^AolBY~=>PjSFZPk^~9nHLvC7y_~T65lc?01jCQ5O!r7S8hG<=0kRPdfj2c zV1*7T59-HLFmu^OH*IN^=kIQc-WkH9zSj1sEAO2;K^KQdqKiYJn@MaWT!3nqUOATy$biOO}< zd4r|Ca{{90RU?Up$H4&% z_z${%#ZPTH!(at9a_$k7mq}*N7FEl3_<8<0WWN{lO5hHWsBBhE>FGkkj0k?5z(S~5 zR0z{Yv|YL!6h`2#qYu*tICP_st}K*_4f6AGGd6aCls#vgUIc2vX-&d;ynA3_)-}(5 z1XWGzA$P~l5C0eIZ1B>u{U^vqc+r9cdA3AGUX=X((5b4Pk^x+5>~Qc=B>XodaZgx% z(gEabyDxAf#F3d{9N8+BUp3dBP}+67L7@oRnRW4UHm;&Aw}#-560B+HW7;Oh=`oLz zh;hFQ1u=~}QUN{$yDfyhf`cp=`)r5dGcq8H4Tt>K_OWo5_#|vGjj@$i)Ms6cO2dQ- zA+vPK+5C!p8SQ3B3n4n%qLhs5(N=`iBqdRd{bQL#R6%Jz>O7_s+` z>GG7id2;dh0ShrD-YG3b068 z<9H;k&i0PD$p9;QGOaXdGOA;e#XbpJjx6#nvo5sX^eijeXQ)tPxe>09CPXGH`A97; z^uM_08}A!&He{0*G)yAYb5y6X?Ls*0T^<_J5hkCSsxHk<5l_r}OhC(H}u|XKb(1eai?WZhK|2 z`eVp5d|a_X+Rfw>I=5KBE*C44kvwIUTjzbjp(*WAf|U;*5n7;1ubN};9!yUM zMqCeS#8qtIhmYcz7F%pE-qJRi(KXF!Utl(EVl>!Du>}qv9&dAJT%CSjx1V>k8kz?y zdE+M5?COwKT+wFuWdE#Saz5VW>d%l;=>A7nwhK8Glkp&arO1?`mLyjs{}(E9>2k-f z9b?@^h{NWGck+nqzlyf_#YY$EOMj(31^;SON=5rj!IlLEizR)4V>&pI$Uoj_fa(H) z3{=J?e?mh0+FN*R-|xA*-cMAcq_Lo|Pj}dGs`9=NmzeD?ra2vCC$f3gTz_)~<4?1@T(najUGZhe{;1Xv68 zToE2}nAgO$nt_5nKZme)5Vs<+l`$R1g(AZ$J}It%L*fs(Z1bqsMl>9X?u3^ zdKfb{ld;W< zI;F*qUu^{=0=W5>wjF-y_U^w_HbR62nn`u4mwa{t(j)%-1ZS!N3KL9y9rs9&^h3Z) zu|BGKM0pEC6Ve5lKL?bp6Xh9a|0R;)j^b<8B==@$Xt$5Q&(JQzJQ|GWbzjt#K4Cq* z{@(MoYM#dK0%nM|=OxHL9E(M_O$h#^y-~y)W$(a3*xGr|e?j>`=YJa7sjTd<)9g+4 zZ>>r{#INYh^csvF6T@G^bH*`iA1gQ|S8=kk z<+4P}D$3_5gv#@m)TB2^+N0ADCu71g%${H6-tnkP<5BF@bHk;V3CO!?Umm4El`Vy$ zz4%JgF+w<50l4Q@`=UGB!e$LPI57SObO4c2VNCN~_6;E;lTcH`s9~)yAW?oDx1jrM znA@Q)7DxK`;Sap#w>J~gsVC;iKEj6NqKtyoWiV#u|K7|RCM{RDFYm_LG8Cj(7`o?K zy3(}Z0qPX{m}ky~l{~LlNwu-MeTQ*IlJ$s>@UKNp6HO!8DS*~-=^mlB!qymIHE zAODGVqfVyBajtsh#ai%9T<9y?IZz5GrJSTQ=x19;cTs)mrJZta-7iCQ*awrJ8S4p> z=P<%qg{nXiS+Jh93N#yn8+9duH&C4_km45mXBoPR^Tzo}*!F&faRHI6Z-p^ywd0ry*2uBlryS%t% zCK`=6P={45W5Y&H3z{le!RKyFdYVu`1LRr3zVC@o8S$Fq;cp>!C$u0tGuR5-6e6>@ zZRPOP)>x2go3v}O__cb^i+C9QZD_%|dm}kKaQOSii zXWDZ%X`w~CaNxaeq&%uh=abI+(C%&X>%E2>dGiFzy{YtIwdLOzX8V528jkFgdNg#! zLJse^zK{N;T7N&opyp=vXC0QJn1}p0B539Gdx@O;ZDqiC;kLm6o_8+wdwoP;3Q@b# zm;mfAwAeSk8=^+o_2a><5;Ce(pvu0%Ls}+fY9#G45d0)HRhk1Wd06N4S(bd>hoFTP zu5c=s|G1YLa>i%r7noJ)`zP0DR2|o2tipLXX&(qrh^|g@^1*E%Z&IwpSuB|)=8?O2 zfprfSdw;eSI4f&-h;+Q*^R|-3_vwsYlrQ3~FJY2HzQOvyB>_Xr`RZYOA4(!WBXz6$;sHh9jWrEtbnEj^80I1!<=&RuPY+)B z%V`@YKbVTa7wtLxaiU4O%b9LM7hD!mrc8xxDaT94EHc+%=l{O6E1nl9_3&gej~(9; zKnmjA{`S=V-Re86i(rQ_TRiQ{^m>s~mQbn*vMUr7#1!ivw#ihqVBkEiSKhwJ&;%3}4^dyl>Z(R;7agVk4WOO)s#tlmqM zAVdlhb@d)riG&0pSY7n8L6S9tm+*iBHHSU?;B3ACz=$LY{qh3s5&-V`r zKb~{ZHZwzWj2*)c_#p@~*Mqay!iC{3^L+kZZQR%hD)6;)0Vkdra8(iq>r*_ASoO`H zdkR34W8Yf{a8M3)j<~5xPhJnNGh#ku#Sfa!Sp|NKLBW}?s)+{MX3J=3p7)1EupS$( zEnBQQQ=}PQCj3c`c=yaU2s-)ZL7v|Wb1Yox_3dMBs0*w~3*^&2xQSBh) z^0R2}Ih!3&x1aS0t{VAp=S=2WejMV5_L}u&p2)JV&hfz{clGf*swc3BO8=6>_Z*r@ z0!G3@=r+Mui}WQ?v;8!E%n|W*bALa+)q573QNGKK_2vSVOz9nKUu?wX!B<(x2>uHb z_8*W-g~BOGg2E73sn6ppcoOkes9~+RN%_lYcn7)i*CTd5ht#AFEX1e&!#QPEcaBrX1!KT38TM%B8pufvPE!w5&~ zlwUDe0)_w9zuIH%Oog#YYmfI|-I?V}8m*xr&cvy75hM=DauZ>JU}=)$q-L|+rE|d+F(8775@7Xgd=Eo=-S`?d>5nalCFi-`Bp15#dG!ZrgzU^wwxZDm+b zvs*g(TtxqR3*f{1No{sTd_lbkYh&%v7}StPOb~b_4F_1C85u&L?<@05>5T}ID6)Zu70)-gmL(N4q46|WB5&k!u)K1P&*vEU94Cczk}PcE)LpTw zNKM!o))Qv)e0vb9M-ET~Qm-+TMtJD_SXgUAY6~ahIR*Vg zix3X<`elx&0`bu@njOy$nSY~aedIDOh_t%=ofI#IZ8!ofl=s3ySfPI(h?w7Gk~ooS zpUp!E*5TdNj$z)PP^E!6Nxw>uuErVuTtq-j5E-+cyF_X=YVY&E3)`@~8c~aLAD#j( z2C7hF54VByysvDafX$xhhEmZN!FL+g1u%c)ihu|Lx>%q^o`pi6Y|9aLq|k7`5qZA7 zF%7a&x)FVJ^_DwzE!UbAdk1bZm`Lb=bnkgk{2?q#M_n71;@I%rDF!@CPgPI^W)|uG z#O~9MS9X1lg8*qAs6DrYRWOAV{g6<#M$Hi|0uZ#fY7Ouai{A&(Rd+iXT)58`5v-To z66;aUg@M(~A1{nRh!&R<3Cj+i&%CrP#C<7jvX}1pIAevFxBsr75&QHZEE zYK=ylr3XlMg=n1`o^wM7XOmq6xC$l?y`^?pY&kLELC7fLCz3De z&chm;I~Php!k#1?c$h!#i;|+pR6`GFfe

L$**n*yh4~K8PaoZXE+u5M^N9_zbNg z0I^twjc;Q|wR#Bh?1~D@MTguKiCEOW zs_gwqbq@+Acbc0dds`XE%y0o-#{=?>nVif<*ZiqC%FX!m!mA4G;U`~Ib&6dLABZ#n zwS7hWa+cg`if|p)mYrJb{CwoHWcSGd2}8$c^LUTW_52@(Kg56GFYk8ZHc|<+_Jb|y zT`b#LzuP>@f7DzoQ{aotD1SU}r$tDe3{Grg!!p&n(K%g^AaWK>1{ zGGbu*mGG-b#XbDXY^6aXKA58#O47~%W|A>W50(aiLQi$7Ry~6}RSPEl>|n+D%c!bU z2I)i4Au~Q8xXCoY^RGsS*}u7<>~Sm?&Dy?6Q4mB<8EqD~)=DME9oDbV?gl##l&)#; zzU&f*=Km)0RR-<#?(i)?m%fu+C`Sx3NJo`WK~G2i6hCUFc(UWwOQ2b7{db>wfIEf_ zxWT+Rh#5)1fjjrllcor~GC~MZ{1H7_=nycMuAg9}8VW61f%QPG`g6~vx|M=JQhcy_ z@#h&bbdl36N1BX=FW^2l0HmQ+xbQOa(7St+!vNKYm~HC15S@-}VJS z^aF(kAzbW_5L}qAfwiQdaF9xzQbB9aB9!8si}Uq!hi8+zC$wPcIO2+}m~WDE!sDK| z(>eH9^iiW*s~B)(hwt-Uq4PcU1DW{UcGi;?2ORcgdT@6L5k5ji1U=3RfnI>Q`#6F4 z^Oi5X50FEpm65fR5L^t1rB*EGAg)Ck)BY)9RGk%}42lGf?S|bm6X9qs6=o0EI=D2o zQatc3!=_Shx&-1dIR%U2A$U~ZN5BO7*b976re9{AxNee&2#N|p8gJh>2nBTzMk)~l z9?40Kl>-PuLQDHKJJML_G2DESUC^eaCGU_Xc@1WRRC1m*5BbRrq)t^75oKb(P(2H< zjeV%GDEmz|^Y1H=pqMPv`kE@*Py8bPFsA#hSc$Hg2c4c)e2$@~Npi1N_7PF8+n74qsN$bwW*}FILMBd^f_^UTu`lcW z)SX@a{r2bXpH;c>l-eFe+Zq*_yOpKkPH@!6&$7LWF)O) z)lQ?MLYE$Ref=7St|PBnk0Yrtawm&IUA+sDzIIxeBDQ_~;0f^~p9jXMLR_6On(A@h zPgY#Ha2IB`ziq4;n%sqH_ckOh!14eiq{a$Bpzmdvx9B#6DB*vZcjXEB&m;79N-^-A zrxcrJuS0_6 zxW8mkezVt%e0dQVJopyfgDM^jQa^2BE{9rmf+ODuxx-vz^Xb*up7Rknad2{=NPjuW2r9JY!gDG$$fq{k5#{OwR^Up9)i7A*~ z!$-aj4{8l(``qQYs>-q_c3Khp!x2S=EvL_B3VCxvf#*f_Xr}^#c$M#%F;>oZOa)9^ zJ**TpVnEopDuVvJaak*+6|rzU#W`0V#J?>Ix@Jj>UR+gU#b(kV2Fhh4@}Iw6j(z?8 zm8Z4JEuk@qLU`mRma2}@(gU`vQ0{^VdJ;84A^=?^xn7W)mrGog(~uB<7+|r zX&6>(HE(d|Q5gt(InXN=FP>99X_`oK*DPnT9{^tT`7bL>gA9 zaS&sUjM{Iigr>&*ri8quKYy(h0(S{7j~asPPMM}X-$}nI7el(bs>=f0lcoI9o9C@c`;bO&7_Nl{6R%waYIs`Yfqam(RIi`R5gzfy-^ z(-j2J-6EMaFzQ@OS>!DYN zyTrNeGd&GP#3}LWg%<{(GH}Z4^V7xk;qh)4QhuO?Fm<1R^Y{+!>W@qx^Ai>5mWG;& z9w}Q7ZPniO&(9TZUMkpXpJwGp*z8!X$C3XvL)`q0W`~oO1oW$wSMTtz#||7^Sy-VP z5Q>Gzxgrm#nO|8{C-v)yqXyYQ7;auS$~@Bv90Gr(Bw5S?Hw+KeT3ZV>&K0#HcdQba za(9*U(L(LH)4`|T>&C1Tn{Z%p8?|95s*c$L-9(Ga;D=K8E^>mcquigxX7!`1lmVFG zzp_J!*C*ki%BD2<&&ZBsThZ*fudJ>3kcvZS%NTem58@4qg(jexQDVURSG9U=mv{xU z6TknX_!z&Yo2%NutwK=^~Kpx ziO3%`UmmyO59Po+zVr;(dHs?jc$BD_?$?*QRVMgCJu%;cr?$w6s<&FoeY%5(9ysr< zST`4|MgSw8{l4+!C^X-|znSCIXCu(Si3n=xBM4^k=fJ%Y{F|#$wxyMYBIxZKm&wob zM|v^Ki}v4Mm8oI8l;ZGnCBLP@cep4l!RSiH_zWh(;9*I>FVZgBK)i+S(vCTMq%VJ1 zN>6~Z-J9n<9nqT>07lzY?|Ye$H7kXDZl^I-H`<4fTXOZzHm*woaJ7Q}tj zUw0KKr-U#TTsT$C|9Lonk@~A)_}T^5WMQ$O>*SBl?2|H{0u09Q!3yZ6nl5eqkIt01Av9~sFlplhO1zVn zOuUDwCxd>6{8?@xcN~$WYjVSL?-DG!qvOXGT)KlP9)h%HnDzl)A8wyCOurFPC;CJQ z#osg9pw-l}|ET_P{{}T-pkCzCJM;$gXBZpjo!bzsmttPpOLly;(BssmJiF;n zLlg!pd5E&vze_X-(3&}12kTsNuU~Qf#(d;7-i(m)c#LH z6f33LuKt!1$nj$5pwnpr50R7G^h|>D_(goI-I4dG-#sph^T#;5{3BB2WUM1J-up;j z{PzL|d{bsu>ZK%EB@|EiPnDbny9F~713&rmxyEaKsqUR}tzhE!ma3sm+kg-6cxB*( zlFS?tkTgzVn=gNTI(XV-D^s{#CD^O~*B{xCh_*9=NKYyw>nDkUe;Sz?2lf|MD;jIh zBO`2xx;~FOxZd01wDg;F7!gdZ#Ly|1Ezr~|$EP2O zm35!wqYBZE@pfL;7lqNRt$)R#V!G9-GkO6oOb}-k<=Qize(?v*Lf~1 z*r&HdW+GUz&wdi9B|8M=IR}jd#`RP}peai)KHFXulsf-f79aflqpr$RkT)y?qJ6 z;QP-az@sAXf_akxtSx@w<`d^e7|7=D9jC?6$@0GS-lZ%C4#A=u(c)SZ@=mJ;7Uqg# zeg#{;36`zyPrg34Lwu_lZG7UGB=Fu0SxQqYT;2v&kW zTlV;`6n0i)lngA#ce5OeI^5i>t?W`VeE$n!n&`soGg(X@5fZ-2WFYh_l`{k(Ci8j? z;g{Z~w($#AO&{;g{BajYVen(6dotB5h9E6g+HfSm%gJW_w54C$#JaWCPek-~Z9^8% zp`)WCY-M3#+3aXpK2tgmi9(-IwInS7Y}Uc@Hh)ri`&~+O#@dYdv3x(hpy0J`RZMf{ z0n<{bLN@6zS`-gWGTG@WQTTqPqG861zXh`y%0IoFT1n%aqc(#jqhm_0P4r{NvVOMESu=xDg+ zjdw56$y|PVpY-t7c?&IR2d!6M&YZ*@#kvnZG_&Bv+IGrameWj(VjZEt*p{Fa)3X)F zejRv)&vOSL(vnvDoznv3&LKGc5!?nfWtV*C>Vo*4CsG_lkrH5>>%%Q&Et0bHHx~;! zSGGZ(CH0T<-)`WunkLRL(ANmMkG*fW(#vx;-)0euba?*UPSJPlB-@w2RvUGj5&0V^ z)Wn+CeE+@-6zcO+AOKHx3IIkn?#*h5?U(!^Gp_QSFUWJ#kou;;{=NeKEyxOV-9r+9 zLhr^!y}?0Hv@6Sx=%1ez$*kOgyLp$BRp>AHzQHWmP*%>|76D7UFpmOzj4Or5g8Xv= zF>qU45~T{!=~H0`C+YH=a(H&3Axe=FJ(qt5xv0!kOKLZ7K{U6B=9y2dnd=oVZ%9*| zn^h2>yK#a;R?$mp^p@ho+bsmw%&f18Klu279s6$G*^q2)<1_vhjr4U*ImF+;`^bZ2 z9OwkZj?fAcJH_qsbTD>-0WMgZVGB@%totBQ!t>&vxNW+6^AU--+pLtE5t|X5R&?v| zICa!F&Y0ghUPPwmd|g*O)=!AfFaFLe^i2xnDrUO4Z^RJ>raR;P=7fe;T}Y(hhC(vxgkbjty~cqFwL<9^`9&{Nuf%lKQLP)!l!BgFTWYizfd3n*G+!_X{d5dDtB| z{A=WX)Y^tGZw+Kq`PxS`6VxeAqePf8bs>gSeUssx4;lq3iT$X zS0|AkpZR4mp&q>wy4RW{3kJ&NaJ|-07m8PBY?_~QMJlk_8aU=TZYWH^;`9Sq%-^hHs{Pa->(&5Wi22^aa2@z%|jGTo_{QYF*APgp%NR9*%y$&DL>vaw;4=I?%cc6N+O z-v5G+6&d;P)7eAoakiCty>mYEc(E`*%@Gt{+l#YAoaU^@lT29Cw4n zli>&8`&B#J4|`ArL~XOTA&8~#Ek-fvoO>mm15}nuY-l4+7|Qi+X8`|3S2=Az#rT8) z9*RrQ?eZbvPwxAhHg~J~4)-qnQN6{~qAe3evDQcV7AAw+N zRFU?QpEzvaT8)qzxPqpqrN)SbdrBWF)_rqP#fZZP;^$%2RPh$ZI;fz*n-xJeCY*Kn zB3~d&9N9$h_NN8$a1FE3z)Lds7h`ZLsfWv~Xa|IbEXF|#$MPDl(JS$(+*0=2WmimW zM@V=F3|hXfoC?eVAc$?@R!i&11EEOjc4YTZV&E>HA)X6`^NIwsihjEJUzuj>PdnA0zbD}_m;NAAPa3)y(*-9VV(H}Y z{2B7K&Q7|yi&7|l3zL5?B8V`&1yioFV+9nCL&f*#4ud*IXcvrF^aqYG-DM|7=g)e9 zH$S-e6O(e^!o_6gHT9648*OIT*?XQn-UgqWvJ9Xd%!deSlqNh(KI{~pS}&Cgr7=t7 zkNkF98ZMNuE|CzS5TRw=hGHx?jRNj%&XP`RNjq*n!bxf&_#P`<8NMOS3tMW!XD|R8 zbj(Okjr_5C*tKFTS~hEIrKXKj()rp#O$Sbcl?UuHG@ldpI6&(&`B|(&nI$yEO$L{WZ#;Sx zGEiN~!w7VE4W1GZOf9s%bz{a0KVke~UF@I-K8K0*muw>1`m3A@cSF zXIoH}8f})USCj2Qr;N?}PbEqrcoj|EVYc z3g>vej+_}c;vDlQlH-RJW|~}&jdNn~=11w^FtEZ-8fyCG>!%O;%I#z`Cd`0krlh6f zQK@_2%$rC);-FY3e|6>#tYX>{LiW-2nJzt*ny$X}#}{o%>7sF^`c==Q^-zakqH9$; zhT4!s@oM~fqd{YeB$En1j&V$Ik>OsnOj5C^Xm}Rb2_K=bGPZGI_X5z~ zx4Zd0KZHdvIpqoO%B$;@vW0wR>W@gBn2h|uOk6W`J(N@n=R#zQbJdO+QFGPm97@mz zDb`uz3~bJC-_rosls7=;}d+Hyi&8HPF9;KdrTpvXbV(92OUq;FPR>Aoj` zRjS(AnvvaH@fP|z{=i%Y)S4T^Nsg|Q>VnVp;=+v$fSizfTI9-g6E~#eR)1G^C14Nc zI7)6|M)rQ(2c%4*`wUr2MlDBnQ9XMx=q3Io_Z<^gVr$NnbYfwb?1W)t14Fz|#H8+A zxF=mSBmKaN1Bn1y9kcM-N)z%(v2LtC?n86qjikAmYZ^C_?m6J$gw(~h7`@3IfsaUw zc0a)rbnARbX#V+>iL7GU@$5mgENngs^_0|7VLHQUMjkjt3#%H+sbR4`EAP~<*Rktd zmOLWl!sdE~C7>S1!+oMbk^I|XHuv!<^_z=;RvX>aKlDG~AV=l~)KS4zO!&wU996(0 zECk(mipfG=KhLns0wnyoNJVkpDFNtp>u9-ty$GeR^^I)MwiEdfWuT!6R?thc_`2=t z+p>L{$(|)wX6cO+W>Wmg?#(^xU^X-^Aj>T;FyXr4yVgHQZXAWlb}e-zc}m61@Gw^w zLln>4=SrEtR$kWHO^`57?YUOCOf2T)=%~qJT2$Utjl4{IMC|JbwOofj>t2`Gw=xkq zO4RK}7{Q@9xm+Rze+-Ev>@3*Ryk z;d&knF~Bl7S;+j+^*$Mis>O(3`;+k@z6N)XF4Qp=Lz z2R4FhuT^R_SCG=mr^+ zZOas0pulv>jnDzl$N`zDhLb1elU)wPlIb7QLP7( zuJ`o8tsJV0x36w!#eG%n^4d(!8OVT8!5lEe0j2ueM;F9d=T9CRZ`yK;hARG5-eJV< z!|$ua+_2R{$4}dNzk}p|(?byHK+3(=D#E-CoSz9W#0r{D@9iC>w8}#K+**%ps=DdB z_;!CpCVrRCh9{9VKNEz9$FrS9>0O4|aKxsoT6Zro4pis=TM{<}dgN+X^#uoGP;VUK zNWcVTNZ1W~zyw`iX?P5wXtOd0!&`5QzdRDQZNKu}wyp`EtkIDz~ju<{P-{S0uzDsW zs5TkW*?{YG2TYz|a= zqaJjb?US*{q)!z3MWoL3NRvHw7M`J+JmLR4CwUZR!w+DBE{lQGW&*)K%jwJ~sl~P^ zd&VZNy_I~leXWQPCGAhF$g_t%CZpf^9+4aGkD|VY_X5gPaI65Q8QG2UYzZB%I}|wx zP!{Ub-P?_=bG8bp8nAzZu^28AOrb?MzVSa8-a)Z+(sem8D}xN=&Z`o|W%fiKtDHVE z1k`(b-G9K3fH}|mj#Uf;{ev5#Sb7V|mM)h)D@b?3NcJQAar&EVvx3FHCt?xGaR=gv z%?Op!Kb2>o8rpvEX0WNwdp#H($HlGVRKbEw?It`gOQBkB8oJRUM5?2ZXuVhqT>)vk z_1uNR)0#!{mzkb31PzwKLGQ(`Qm$w4=JfVc?fX>LluA?N8lmsO)K~4lG+i8ElQ*yt zoN1p5kVZO!f&L@LCqDyj3quUjCOlA#O3%=}+dxF~vmzSQnekkc#9!r3S3?uo&?Cu8 z1HFi0r0M5}m3Z{|$ZsMEOJ*l_Dt?R&_g8N9jLuWb75;H&6mE;|f5ZPXl;AzM(m500 z>Ui_gL6?zEYB&3YS@Cl}V5g$|wp^7x4jr!Yw+TQ+fJ9EbxWC!;*hocRQx@Z+-wBsG z)UhaY3eThK4>2BGTi~`8OXp&-nRnvxWg~TxIDb&X&4y?z!1Vlhyx6OTc=E+CG- z{ebQQb!fCaOalVZ^+6H*BL)|KrsiA~PzI#u{T~krF+taoiT)@nG!aV;spWLN#e`K2 zk@#!&A*Fj9x1`u@@xQ33Oxf>2rpX77Py21y@PQr3pwWT^GON1_FCI0qZUpTnhMBYh z`1qx&{ATj*07goUu9pG`IKc^{-O2B;srT?cQZ9_vj>4nr*bKWnpLX)1rV9K~lwSgY zL^|;|t2c-=W20+O_H$c=Zd*Phi<}r`tg6UMen;;n%o#yLuYrLEafd^80-BQT7u=4( z0@tzSGkx7*7wTQ=l{+lw^|^!@FT%R^8qP{GEcl^g_}00BE;}>mh)<34-W5j9!*A!~ zc+uEC*7N7bza>R?JVX_^vHgDnf0cey39nYP7Ck6g0q#slH@;h(*2peQo9Zbd-|dWc zI3ujlg>JIFN+rlDNgL828Q1whN&6|Js`9s6W`&pGbwXS{-^hN$#&x>PnZOR9b-3DB zzMyb!pveq$KiCer!fIwX>uLt7Jjux=%;>4zLSXDGG{1t*y+`E<4i+k?n1FIo){jE`r za-V@)7WVvS1RSN%$7E?gFM&(HO61jKv_CghMgimMeclW8RE6Wu8N@WpW>wJI*{;4n zuWf4nmD_?}5Cb=3hMjTWr;HWD>AuE2=o2I6b*oCYIiW(Ju5az>MVtnpCKioRG{h{( z{JCnr?lMWvHoM{8$DVcaR)GoQCV#Ao+aCG(r8L@T!_+SvL5$%x%{?~-H_lgC{Vufs z2Cd3P<~Rp6P=)PDYpDWqcgnax&hzl!`lF&ruRSI!Q|yeLQ{qZ>8T&_14!v7#>McF0 zEtZPZi1f>Ry}^s(xqPj7rWsh+UQd7GDO5<* zBl>kYdIaoK&CnME<$+qmLI@Ecu_9r`0b~}CX-AvemT+#LOr<9^rv21W8&v*X>fZu722m?37q&NekppJ{x|4u7njLGhWH#gBBz znQiCrE$@2S!)c=Tek+&4?}DP=cpb>sznH;%l2dSvk1FNEC~T{+gLb^W3qVV{2m~;7 z3)|PjM*sff3mZGKAT3~-PML7FVF8AxKblL^sXe#|&pK$Y>gJ|syD#OXfoggxaXjNV z!m7#}F!R+IPwhhnjxDK%ufNnYi}JFq2tq#hou@0A-V0Td-J@c|zt(ooG>RGdGk!i=H+ z2J7}Y*_<~atm{}VNM$CvobsPy$EJ$!ez^xUNhOOo{ zX)47fQSCGBJ~@8S47yg&jm85l62|0jrFd5?I7(SHH!A$zEMva~lGfNof1Mld%D&nB zg~Hd1 zR^OcHiB3kVZ^GR8*vTUn;N^~V^4SI;%)bZyHM~f%d#`jo;|?$cXaH)R3ULgng*M!~ z8?CjQy4&h(QXAVuIL_|%&JxeVURB@GPu;@Vm`aSGdwhI_&p|2|j=g_k34Ixwo^Y1V?&p*&oA95UFNa?fpFiGBGNn8Yqg|krvT&ou z=2pLX#JI=SnO>+cWP2f7c{4uqpwX!61=oKlYU_-23kNHE&1kIck<$TgqnfP=IA%c} z@7*{L9tc(;b4pS+VfPvLNBHnq*6Zd_wQ^*1mg!&&khBtIR%yq|@IEW}6nmt)Klo z)m44S+^HDI=o|Xl#Q7cRST_oa0e3Cvh|yCy{hN18wYLgm*ys}QC&Ny{#rjEHxQ~Se z7d65N3wbc`@Gp58{1le5$b1cNJDu6+k9A>(BN|O%ur?>McLnmv@Is42xot~l?2LT% z{nz_OJo+`E@e!mz;3Y7|m*TRhO$7_nk^gU@WewEgq6TUQKa(BLX`d0xs0%?yuj8Xe zN}pYwHY7B7#B4w6U4sw_pW&k0JiwL(RtBCuz-5>QVXSTUymx&?OVDYZcNEU4j;JF8 zX9~%pczPv6-{^FGyL7OiKL{qP({u^GXBb6U0vBX}Dj554d;?M;iVCb)RP#m_7zPA# zp|}sF3;3K4_yN;>Mo@)kip4~~j6uzC1fhBE1C?do095;9VpNme9silu^OwyPgc6LL z$g}b1g>;tRIE@oyV21$R#~})7T%ov% zST3^p7b?Tm8a;6>qN%ncoMQ2+wJCOQdEHVzR|Ai~VBGW~TD*|G^v0~%L(K^AF(;xT zmdHK_OR@jl6qC535W__+Y=CY0RQ0-h$)kzsN)9_=-UOk)KV98q>fvQ?vC7n`ICa2| zbYphv-0>>KC8G_OC}jDcuFd%YqskYq(Tbq?0`1AHC*YFmO89IKpS_YBLOZ0!!mX&~ z0qR_!;Hw;64Gwk@lj z((6Jf(Dbxgb*nBSX{lEmD-M(z=U+R3vq!iDA+5?JzY_l=6TT@Ofb&mF*68Iu(qthc zMGf5DJP{G>Ui&qvk}j4*%FBpghEHd$-{kuJ8z7qzt1kX%bBA#jaom`hDc4e*@m5x; zM#HY1`I`RfJ+MJ~_E5UDI`u>)z2=?%?FqWAAgf%2Y))ea|`n7Q)f^Cnj6p3$=s>!b_ za=wo`jk zb5tCIUcM0m6!Qo3JWcx8r8 z>+QFYJ;f3!GnfOG%I;z=%x&p zqPHisQRo*bc5{FW0sN&A@S!a4SNb6?o)RQce%j~>ZEZ{!d0jBWdu6NWuH8$L=5&;6 z*=#7B2PXlX5X|#mTJUA~$yryZJ}b^BuOybOi9EZ(&R-vaIyw4$_vfQlFXV5DGFg}t z_&luu98#y9IUo=5fo|FDc-ojsA2qf-f2wlun?i+Re0tpsCLK)5Xmatv?m;E}KeV#l z;_~cdoLi2s@=T%AS}Up0GTOAsG?{=GjA_c8Z{Z^!}q{ z5){533O(Kqn}D0cr7*N3 zk^16`%3BZ7kP+CQb00mMW9b121ZcX4bgZ%sA3vmX1$-)H{Ew>AJ|<+s=`Ku5T8rg; zNs(jL63-3$`;UhW3($0Se91F>B%t>f7wLNqfu2*PZw$LAi7mZaI`)76__^rSqtpve ziWx~%Q9dE&(cfJIJ!eKIm$91@P1JlrpPM`X(MRuR^{CW;GVl_l4LH_>rc-?p zuJiKlru@XqN`zei${B)XDB;9NVR?@6Fy9x%Nz{XM0{!?tUE=tN(!NTZMZWm;toIJs zmq%ekHYb;rm9)geN<7#JEx@>B(8G>#c6HTk5=&a5W0j8WD4;iMsFT(lGraRyiy_#;9H&0@AN+8Ud=}iHuO^(JD)t=-!koG>|~U^o0|T~ z;pHxQ>ONGTem1uA_xce>^&I@!i1U4LQMx~qlaAJo*Yk|>OCKgvhj=XxTxw{wA3Jgy zSrQLBThH8S;dKk=upI~!$O5V5HDD?Zq(-JLy-p5(I_P$+sClw{P;dFR=>q}!J zZN3mWzRQ$*r&uU4w=K0b=W=xYq^fmiFeQa0&+g4A#5US* z$hmQ3fl{!LD#ZSQi**Z?WZ#jF96s@+P7Elmx{#2G7sJD?2x`K?hAAfBO5r|62$uYG zigUZW88N#e8GvFFIpUg(0(DjlS3Et3390Nw6IEbz^0fZfUfA zOK2wC@i9EEj@WJB#oUftc2s>NSW-L#^>yo?^l7M00S`{xD{wa4^o&Ya_n-hw84Haf z+s4POy=4k&S2O^Q{Y94&pl0|2$*E3W*lV(4m2P1m`luEX+mCy0upo;SPsVEjx3BJ_ zYA@*Hk>=9FndtAL(1dP57O%Pz$&pi^rDpr6C!ct>xdH+DRTNw_LMZIcZ3PQJrGZgjNNTWB5D4D--Fk(nRX)xX-nMUelYC6nws#lemPjE2^wg&V=F0Q#MCP5jbVZ>X@c zF{v+z`T|@T?h*7n3x}AV*WuY6MUaQjPsn>bl$u$~D{k0CL6Zme+fP$=7HDsMZ}>VK z5G|3epvlKc&z63#viy6^xxCC%Z&qKyQTaiQa<8O0uq__w+5wC zZ{8F$S_}$x+>NQw#+>zs+c-0iX-{zBNcRQyfYWZwlIKZ-E#Kv=WAb5s zdn+Lky@n%9jE-o}V{7VLOD6s2 zM9}lm08K|b{vSMR82_#CEH^FF=*nI1^_p`G3VcqauFaG5v?^cg4{80;(cWIC+||xy zU7gBemf>h}5b5;vGS~0x{#92|*%BYzD3C5n;CV5_a{588YZMvbyN&Ob{1~Rb-(<70 z{DHotDRD{*u^<-a{`2#rJpx#2WYeHv`-UDyxff6>6?b+F90{cCS5Fk{yf#hz{638v`uZIfMo=q%dAz#1swgdEzxqhf^<__U z=h4f5CN<%CQ4+w`Cu~iIeJFw>tV0_cYG6G%0Y3rhsNl=z9HjB3#(jE`R9;&z(XpTf z^Znb#qL9RNZ@=G+AwiyzaZP9`_|EOHmrkdp973Z?B@Us7)^=TGRDn{!Z;-c8#n%RP zzWMaqjJsU_`g(-E^5C>@@joq){L?}#JDzs-EF55)dO&|&B@=Yu8%Mq{!TG}exGe!eM~f0VI{L>J(3?i3($kjZXHC9|3& z)dFQg{taCeQA?hETi>!(7y=b8PSYvL8qP+7KH}=PnfgvA23<~|-8T?iCAzGj!g7R? zCq^9+VsNx!PpZz00a4Au?I8pWs+V$DB3!S+uE%Z2k5U-32F#ylBix?(mxsu`&ND1HZ?GZ7}dzIqz(HXZX@S9 zvwu+x)~l#XIOYpN&)fa1Az0ze1dJj(GjR+7QA~A(Tk*xPWsT&(DaWVq9>MK*_B>R1 z$fQ9Ktha6e%Fqzi5KjXDTPA8={n=Z=bGrMdCmx)VXPvJ+jq&OG&3Ld|U@Mn-x33v) zpS4Zi*m+)f7dY<>6n`XOW-0&Y{i@H1DW{5aUT2~EAF>k9>KIsi6N)N6mo6jU(Xd{+GDKtt{wRw|8>DdK+m6KSH+&TMBfGuA3$se9xDz1^{g<1iyyJ5;#HcYE$42ZibxK+WFJxi&S+M5UX}{N< zfHSxhfa39S3oH_(o`RyhyJGY7`5xDj0D_gCPmg-U_X;T+*RXt^`O#NEom9unc>X|i zbPC)uZmBzTpvhE$3He z#mdIy$HIRv!hx=1VCiR32oCB{!3mhp#^(Y1|~ zUzobHjdS42{MO%*IHZ5};hypvjys_o4(z?aMJS~4&{HO-q@f$esCpe-;>#FgcuOBw zg{tp4s=N_*`-V~Ar7^v-hy!4e5pyX^UHiA7DV*asnUUBM5yL`>AVpg;FN|@_NyACNKem0GBdvg@}6zkv(=ZI;wA8TZ4BhJWm0=`c6Rx(=Pd&0 z;L86imhKB^>;&>lssmVx1o4QKxZq_4^vPP&fLmOz?)$bUval&&9w7{;h6gcQ4x15; zFRp;KHZ_qLBfH*^9JKr6)HYO?pYO}AM|k)K{}JH2{{(cMnEe6#jEa8KtCU&;H7#5$F8qn~Cg5DKlvi|4XBzUjwsJ3eRry50R7?AczaY5I7 zEwUKy2r!J?y*V+pdLORe@zSy^h{`ixc$&`2vh&%ex0yLR3Jp{zrBzhY6CUyQR4Xv) zE7P$;csq4QZ(*`u!9W;~#5^1zO&K{+!j;d} z05k*AoLlvnDkgnFtZQZd(ns9^BtCHUe!7@8uPWa+oKlUOi+JFw?4w)N|2~4^GP-2bELx&xv9|G#n0nca~+GLq~)va%_m2!~TA$+#mUQWEa0 zoRy49MrLt%CuBrUk*LHOhm5SmX($w_-|PB(fB)a>b+6~+`FK8_&)0arUXfC>DX@au zyr&&9!v1GVs;6u>vC$-NVf<5+Q3h;a!b#AQTP56n(L;LC*SUwH>&v6795?zgeBIYj zIUylr)%wJ(^I9&4o3Dv#sxVPCAKztttw(ShF8p4YZAY{p?~^bg#7F_5sOiB$ zJRHysr;@*UEYAc4|H;HX1En^R@i%8}zg0o;fZ@tdcm#7Qj$`;+VVgNYv4S4rbV-MW z4RZINkzB9xv^yHNAHS{@S;*@2DO4}64u2Yod2?Pfgy(bF-R(zT0yULe9&td0^&Ary z`02d=(CrX94@5q<0%158tC{bc_-{^@>Ilm8>3cWJa`CYeOuE-=K5^*IKPjdhc00;? z^+Qq#IL#YdjS{8+1jXEhJ&q){IftWH*Hb@N&5;HRzzX$UK*NEQ{e9|qG33hxqQapQgRJowctkRzGTXAmvss%Pb zcFjo`Tw3krp%)a@IIP$g>BCB4os@n{a>Kedq|wc5@G;=g69|R$Z#%-Ft8|BF`Oh}* z0cM0CpU{&uyJ482B#G^QD#;{4>aZ%|WnB=2Gm7hYHNiARcT(haH74w3{)I(rXX6h( zJ0v^W7Bm$Ay`>#|i5O7Is{o@66*GH^ED<4_9wv)COf+IaDld8n`46Xby39l_yPjdG8OdGnLjWs#R#ihNz?%QHZA67gMCzV=f;?Y!zM% zg{06zR|7+QDs8KeEj;_ar1kyM+__(hYxc{&16M|gwc9FZwN-t2S;!Vu@d>E0yH%Ta zlCacT@HlSO-J965hQXJ6nr?DVO1WT_560EHfqVxK_{1az+ef(vCoFxsWlX8N^YXiZ zv>5r+(&oLxyj!y-D0(q7l+or2dwIfX{8#zCw^L^p*VLaGM2O4 zlhg^C26-Z`%jaWn?mn=!_lnf)uHz6K;C%xLY^vD#vvaN$8<15G!HgPYxmIi?#k6GCZF?L6>oZcMa5yI{R;2@K<;ODjoBCPrr@#5 z8Cik1orKqveQ7=y3LRy|daXRMmQv0a9;`C|B(b~Dk+2uT9!O*mVd z(^w$!4c7$rahgi@ZG?$>q!?_-G~C3*Ji>6Uex%__bL5x1%~1$0@= zQ|$FDTFv51urg+gvZj(CD669oJ1hMyb@@zNH|8(i37=sl&ugKRk56R%5*m$nkR}wK z$3L-qq))37rnF^HtCP@$?xaPJKduH!XH?Do8}0@vjpqm39U2IKzagRcmw!PLWixSE zbmc%?FDxB8vlt-3-X*xtn##7s4wVjI{`pmJwMuE>stXJ4O3$oDbPN-^#}DFl_i+D? zHaXPX*VIij`jII^b~vDb#9>6cy=!Z#7}AZJpONoLl|hqW8VOuop(DzuD(E zd%#cUSY$~Zv zqgoVHv-Ci_Z7H_JRoY%VRz-n_A)qo;xdzR;XT}+9;A6onsjgBNAl}>t>2Q_kQs+xI zaht6mELLA*#W*3CP>(t(*Brdn*U?8*({2Rr+uN+AfOG<;Cd2OAr+dZ7f-klS3+0aH z=kKh6F9W5}eXe@?k_72iVKn$iualW92yS01xl~LMb*ZAmeb%p|=zr&=k(tzL)^i*y zqwmB#W$77zJ}Dh6u8PR+w`K}4K7T{PUf^1{o6m1i`9HsGJ}{)gawh|%CRG8}nzm#q zlhR*@a{VBO+=e_8qQD~)A~h{2QbCZthMS@r35!1LPy>GT4esob_+My<+#sIPtXh35R+>t)t~&+lyj; zjURvXRFjXk7l^Hrvc=ImvLnAH2ZQxPUD$(I2(fxlpjsx!~eW%8E)x|S=jwu-Iy#j zvnJc6XiV&w?;Mm;YVOnNqVc+j)1%dKxz|Y#Do$Kc9yns98PQckav%nEqVn97ac`(? zoMQ3&>S#Y#3dI$AFFbK7o1x&2$^RQVtWP z+_kE+|2vP>AZ%uM+iAISHI5C|R?cWP+u;)S^1!;GE{j-_N+@3cro$5FrghK~SL?)( zrT%A)PEOTuX-0neW(2z@Rr`lMOu-{C8u9!15N8*6WM2o*mggg@I=N~q)uRhoW+-)4 z%ctfVVUMclqsR8W(IGmkicKuOCX}o(b)w3ElWph$p$IRX-^OpBFihkCh_?3C;#pZ)7eTnmH|wV!cT-L z6tUvno^s~!53!}(&_eKUw0jL-;y9i$yDo{4<9Kw{E)Yi#v`$+IuE?B9 z+6DTZ2dFKXm`BQZn9M<(!TC4OJ!Jw%|47ts-`M>fZp|R;PIE48##gUDQ!%M|{gQ;AAf;D4rp##XoA)`VOGB2e=5+MXj$xIU#?Gh( z8S`vu7t zU%1r5R7`Bdm5pE~ukKT^g^!Mz$&z&(N!94)+I=sC^d*Q4zk{P(m-mC~CS8~e%T^1H zJ%JPC$T_uTgV^jxUZP@jT?VHj#*P6Uy_{C7ZBgX9ze`Aevw{H%0sGJxW)A4?dOh9P zX|wixr!-T|8(5RmSVN!AkV11`#p5sS;GQFp)ADC-iFtqV#KX>d%f_|T2>pjagQ)aj zKxsCp`YK{a3z8?pQPT*4lQE=x*Hw2WFj?@t6+ZN26_6dNu@18)-98S&HQ z1L9mpEY!#K<6I))hKn=sfrfLSHa=h2kV5Q1jOBvl8-z>f5UvJKX2{`T$TynfYF|+~ zn_o|MeVSGQk3XR3>1_io)mOQ5Hjyu)b&$$eD)9c@6Y$;oNfM??WU5@6Ch>y8g7u0N z<(?Au7MVp1sN`+RIIihOsl^@dQx0!x$&_-_D*3y)AJH6v$P+8yG*yMWy6-asZmxJj zxv;d$-7CCH0|5~&Lg(BUFD6U&s-npF*hL6?3xR4Q&Ofj9dR%4~6Pi^?=(EQOSUt&h zcTfR|uL1WO+pgtexXIO$gw88Gur;#^@>2bS0Rqer$lO06a$avPghyJVkA82g^p^Gi zu7q0twJ`_63 zR4+_1Skv@5@DsKh|48GMEPjS$R0|7HOG!=T_WmHNztPqayPm%HpoC3#C?w7$2U`eg{^bLw*uiCNdBUFZGBhs+XdDJSy21rWo$g59+py?@ zRIH6zbo|JyuerD9m`#?JZA5hvcS9iyrJ03Nv|6(+y%H-m?t{IJ75IU~ywgUK<#QW| z!FVWksV4*lBsdYC0u-z(aR!7vO~l)4Dc}@}u8rL{fO+V;jan(W8d+WWXWl4*jRGfN zcaO-@WV01K+JYbG#TNn{3A@YD`bDcnt+TIb+Dedpm;Eb{CmY{R&E`O#1c?iH_YuU} zu_8e{j54Be$G6UP6SZ=}eFJ%|+C*sw@s@z~jKdC&f(0U0?8njQ@s&|iNYbT0$+di! zoBJ6Le(LzwMLO9MB{_m9S}ZhAgRW<~{O? zmc_e{Aa)rq$dO4_&Kq-B^(jKtnqAwBov2`bNj3srT9W>5l>G6!-1=VjO!()^Z;d~; z&t4h)u6zCzvO&G$sAKHl_k`WX&Uov%TSdne=ugf>!(<2@tc1-3td*6=xQ=Hd<`QD^ z77O&IOuW6(T$EmVE(=$Zz=!Ky#oBb$M-kFn0-%v{`EKhKYQNYTbw`w(tnPN?^-`J5 zS3ydW3K~g108XQB5r156MZn$s}>ku1DIQ|uKY*I?_=19QU}o= z@gqAN&m#8HHH~cY8jyQ^Sv7k0f-S*8fS#m7sf)E7q zpBYptQ|sCx!OAW{P^x_+g>Dz6NBz3Bn^y|=l=9Flr(Ezm#ZHo^J=jk3cQuESMP=~u z%0B|UV5`!v1+FG+4$2}>_~)64JCSVQgM$~(oT);OxQHx`-@+NpV#iJ-kCGTjf z(0(0SX{-H&@+$TlOzhWNf}q|*M0>WAL|)TS6VW_&+YQc$PzPbLU#2B-jZt{!;saT&&)YDg7K9pg4F>sJIr%HIG+jo_wz`BY4kkPm@&g&Vw_bz09M#{V5qRe%Z-}|%P%91ZiQVcKt^Hnmoel;`H<-G>ttsKWzfBGUbIriBpLZwDkM`EHk>=BlT8YSr`oB+YJM z|8kJJ><9va0dGEycER;h`B-KVk!bHh>~W1gfvzv2415Y&?1{sdsih5w=$hYp-VG>G z=C=;F2h=jLvV}$aneZIJ@@CLAj%F7oNaC&z6mKy%%!QX>9_u(pR3Syfzr%?b^ zi=9hw_R9StgpzpPI(Gof?;Rq<#h74LXoDU!BD~^Db8$j^et+j!)iV}KgB#IFmw{VVM7ttod2^fl z_}BJZI&SRIsq*N1-IZpUm;{wWWsYl^Ovas6$mN|i`Ri9@UV)Tlw(q zpM}S7Be4?yctON23}G$yIVz=!;;U!hSCY3QAn-J2TL7eh@=ko-aNnf1@sUaGnGnft z3?*jmq0PzCM|NVl%v%Ahh&%;KYHFi3P=oiNFMcklZZyE9I7i~$IM(@muybSwj3*JJe>30*_v>bof zW6STaR;X=EZ+)(P!5Me&fN`B(?60q8RYr`RBJ5%2keKoJ8b9w~|1S3xo{-;3Dr{3J zh=!9a+ucVf^Bm2p+nCM(DFN@Y9|0o#-s~6q>S}AJ%g*ZkoX!FY;nxm#jJ3$izfgKj z0s&NR@AT>NTq=Gj>{GMmt4>Uya_-&8g(q{{E79;m5CA4bvpUIAAqH%n?S7Vae5kFG zAF}R>s2Go7v9>wtrtVJ6KBG+pOYYpKt*w{O{@lIM=LZ(jI9&C6b=H}?GJN?QA+qZJ zXR6ik){SKX23X31)zRb0D3`&X@k-#?46uI@uT4C|Oiz>^N= zN!Eka==J6S@`t-ONj)e%*ecJ@hD zj5L7TMsEC^@8YWdtlMBYy_ zCYqEIfnov*z1OA*@zYICndGKYq3e3_-1yc@ zu~)x{q}0aidgNB0I6)O8d9iokz_?O1P@zLaOu@_;V4CZ05$erxM5N83ZqD7t{-e|( z1Y;azlYisbXmj1vP?gkyw(l{cU43CahehdU6F6%hNx7Y5-xX&fIk!C?ezM*cfYNO? zQ5mepq86%uAh-bj1D{M>)P~P7L(h4cm1{H!?~2UKfZezL*}XFjGK3kGZ>XgKA@-SS zkZ2JnoIh%V2Ee1Ot2BDqz#VXAJmUw%W&3n+Cy3MXZFqK6v9kQHt~p&m z_>{K)n*YO`?>~^jLJ>KnMkgjT60b7u{)em@2y5jX=N_X>ifI4*_H!RcXTFMxn#A9# ziaN=JYgALkZtGQQgRb)09fsLIQG#I6FRy1>@E9ad#$jJ-ewKJ{OjKPmCR&wB_`uqI zYI(QxCz#g$7(bM!IOKG4$ido=YnPZPi>*>8iHt7R|3i* zqVy{odw03Qg7`X`Eg%(+Lug*6sRqnPd!i%<u zUxf8t&AU|kT@J^dc6=BJG4F|Th57EQ9R-XT+mMitVpswAB4{p35m`QuT4>n&=YzFQ zm{J&``CTa+YHXNi1oAtHFxPe`65)e%SSu5h_ob>WShT#N0M5u${W5sU7RXZPF#mT%DN z|Mjr*Uk_8fW}d#uB{6ruWW={K4aoHiOlqM|&1kL28uT4{#=9l#2sMAXZp^XOdW|~w z;K%bjZ3xfCsj4N058V>}b3lH**H_q7*X5Vk*WPiyd`pVfLs&Vpy5wHO*8N%o+9IEF zfjq6vy7hC>D?OgEWB(#>ULHwP9eTHotb$f)od!h@UrHTb=S28yX{qf%~9 zhNQ-Mhf>b^dR${_?mShuedtEUL4={5c0G7@Me*;OmNZ55ix&L*{Ev)IuDp+^&`=dL zgl}s~(O~N$Ka|*8m($^`k-&l7(pbqQ(VG`VS8hOsg2}$d{{mrJ{wtW*D?0?Gk$N)X z7nlal=aK?xT4;5V#RfO__B46)@~Jw-0yulc#m}d+LHHEhvPx50{fC|MW0~4D%w_K7 zd+cbzQ+2;KsxDPIWDS6{-(f)8WkS!Ks%x)uv7$XqLIBE&#xoET&x9C%=ui}rru4EA z9;vkOCp0B2u`)TeS`>fsg>SI4?gQdpv7?#l8JOp|OWpRcl3#Ojr0hCX7VY49=)oTHW~f!x9y_D1&(nON9p0Ued@6?neaSp?ga|5X`Z#1N^g zJjqP<9vWoPF3?<4aX4_P)n_h>Bv^HLJnEO$)#L6&FDU~|cnPndBlNxubGex9=!qNk zKd7fnDu9a`G?mxf1@LM`SQl3whKr`d5p|Z53-jPR3G^AV(&M z?$-L2<-V0_w;NNI{WYXKi3{u#=w-Iscs-$enz?8>(| z=>>3ZW@8c~Aw0(qyEWMpEgmAoDjWw=5NibtMRd*kH|$(7f%H%f7+P1w18+&|^w6da z3mv#EON#(_rG);10@S5vwQ15GLrCx4*INO##r2R<@P5H_aohjC3 z@GKy!9^{js^LzM>HEjMj*qTMon$D@r1Z-wX8<LH&cBl?0ZF7l(FHiFnK5H$`znhaX!``)nT&iveC{gI{)HG0Dn__r*ClmUo1Jf$Q zqDxPF)L){o65|MSv)s~+B8t&a;4Rh&=w%4vT1r@9#Zm#h#*$U^dBf7E@8okv>rmg; zw}oPi@!LPOK-Sulo@Y>853v&LCvyh~8{h)uG_!@i&+2bEYDu}7;<29PA)!chg71;Y z+IhtTs*A%FibS(SULhxCS*~jvlAX%^SKTcVd@ti#tdh9Q1_aMYAPzWTDSe4qL{1XS z$2*1Pl(KEEfnjsG$nJ%i*H5opoGIAuRI^7g*JRNg9iRRELVD)+?$G4^s6HKsAH%6| z9G#zjq^SV@geHamt5?p;j#&E^phA%D5^)POuf=>;)MwE~cZADM3g>f((&C+ydb5m) z9Ca3|@dXVVm!Q8^@lBmUgeBSSk0M1Ds(dLF0|T0kCMVrzKW$_K?H%6{Bis-GIgBhZ zc~@EeYQ#HJ=F^lusN^5DIcY<*B96icDmKUfk^Au-KEd&C8XapEuIumnCLX53g@=qw z&BV@o91^012kP+%-uSE`Nci8a6CWXUyTW(b{Mgr%d(UL>8{%ym@2R zUg_}}YxpH-c7bDz4;fkHU%=Dt5FQ5+u6aDxUoc1i(qPYE;?cFcq1o$e9>4c^f=zco zio84YRPb+BjqFy|TCK7K{n<&Ziu)2L&_xt~LN1-!kj{XR>AoO9p7#1iWB z{a?=uC3uA%y*owW$@>=9{!IEb`)>blc=X$^4~&-DVvxZ06OGxgt0E-1ncubyKV4$6 ziG$bR2vW4c)9b<`sp;0fO*>QDe;=L}?eX9jR4Fr~HSZ3+Pfe#76f_veCu0g4Em9FO$4BM#BRYi-P73Vnz8d54^m)UW226i}FMNOv*yB0~OAn1H+{rL|Jb{)_$lsW$ z|M>HnX^YX{KTw%N&y^>r;oZdZL+r%r{ ze~QeK{cWV+(K`d#K;}v8ZD-z#&mK&W0H*^?TX7X-77UR+U=GA#o10Q8aQL)8h2|VI?5*yqDoj@&s z*Lo2D3`&sJ7g@-5#}ro0C%=fj<^oweD@squzlyOw- zlfMI#Ozeo=payUEHDMMb3TMZECb=E5=xwQsmH!e}Q{^^m%HjiaKD+aW@Vw23wSpq%6zjf?k$n zKYeC!)<1z0mu#i9ARPbEJ0N8(%Wkof{>hjc0X@hU#f##@2@sVd$v21*yLLv_SVIOy zP6flvpuc(TK67*RS5O@F(3mYkbDes;(QnSQQAW>KLV_M{M3LbLFYX9HvUJ0D8V!D% zsH~la0A*tbeE;jCnyyhNB>L=`^|i#Nx~>bJf396pmjKXBH)&kx_wLNL6)>^%G{!W_G?epq57Tcb-SeeuZL! z>MZJfZ}M!}{~a)mx5_?*2Mf&m5;k`l=XnM^ULxnxluljmi$jk>Lv>1RT z$$encJxj1sS`(&t?B|Y*f0QKkBWtZ_!T^1GpfRk7r~5O%*F3Ygv0o-pJCYgnl zLeob3>Chrd?~ME#K@=f31%-YMazbEsSQmK7yCIT0@D&FkFuY~{`_bJ$;g=oU3&`Fu zuWkNTvDm>9xhUr`yoB=A3X=l3p{0Z*ax5{}9~Iu9zu*-2Uq7oiN!&N{awLf7&dqE- zPa!+*tD}_W2BdZAU>ri}BA3`M_7|PeLo?Q5wIADF$~=%D0A_f>4nWNL@_mDr0jZn% ze3NYL`ZLU|PQ(W7ygE;U{C!1bZ>Pjj{^WuveJqV;-#rRw^-9aJ@r^&!@#pfSunlqP zYk<3+eDnq0J!eI0tO^5E3$zbLOo*1bH!-6`Ha37I2iqeyhp7NNu~vFZ81*z;`XFMpE>nK0A$c9|Yjq0olI7 zrffz}rsV=JkVZL=eX=aeBHo`}OH-Kyh7~VX;m<)v(Qu{GeXY$mmcPMBDSawiU_J7- z6#gqjmwQ6#WCg;kDxgcid``|zXGG4<33z(wD+TDe3-g}N>f!uRJ_7z6?DNZSqA!am z56aSoCa{-Jj8aOw0-rE4ST~b*+0RB9?g8*h4Tv0`v@QpRig?}}ODSiWnj_aI2Il;^ ztCp5>7#h5;p&09SCyFhSvZo!q7Sh*b^FvP^mV!V=DxIgs2{A&@JlWSTv^UX~f*>yf zr{`+Hm}P1ka>VLPlS)wCf;p~7yO`5Y!tP6Vmu}LP$~J^@Kg?+P_snXA2nHku_lwqm zG6lbLT=XsVlzqza1vZe%M3|pJHj@0w%p|b^o`~d<0^Nl zujZuSxuKmUrPF8~o@RbFqOU~Q&_{DIdc%DK^p9gY0DU|%GEn&gM1PtQ-mvfV^5nfc zcSd<-zkWohmQYG5m4ir3&S`A&Ui9j2lE=s4XK)kBp-28P-(Qn|TX@gw&^{re;je-6 z+!rQ4G(a~VJ&aPpp`z$Z=C9p7!tGxUighT{vFNM*Rk3oGL&=mMY6x)*LB< zoSR+S6S8}_gzfRnVyyR2e`z}Q^`5filKx^K|2jtyD2c29mbaf?>NFMsH%NbvgN9-} z0)<(e?aC(~%timrVg=+cV7}>UKgN&mGF&_5_a`E;_P`sV)3Se5r{k=YsK?QRV0m#N ztHz?S12DJXUpr@&UhBEo$7tR#6$P~F-0?~b=U-oY^$Ty`;^VOzJ|9P^@uCv`4&%D99pO&WNEzjo-vA%t@4Jx?9 z(A{N|XlfU;x2KU5-m*APbDtSU1QnSf1(Ss`Kt#B_Lgri(Avn6$CRFzQj=xlNz2MgS zJ)N_GhnoDEWlxHab2Yw*r!*%V2utVhfLX*L`rEVYiAbbwwj<8&`H_hl{{l^?yTH9r zIwQVLlrQ~mJtJv>)bu-vj;R+te&B`%D2`%y{0X@EAOC=P^w zbW^r&zG8;XbX?0#0&IDwTd_z6p7mu!Sg=g(wNBOguAM3P)7ej7zO)+cj0?Mw6RpEY zg6b?y-+t>{O7R&iv1pWSrl|5ufOXnq0aPh&MymE033U(@j#m(;6o<_*L=lVlZRx>l zH-X!>bmooB@pNG?t6Y0MX&wI@sEEAX7UYX z7SqCn>z$Sp+KI9V926M}^M|U#%IIgYTs$|}@?u_X{wY=y@L4(Aaa2YJ-PrIKvGzyf zQu@a%T|pPCCp-pK64~i4tqY6KS6@?Kwd{>1Et7pBIg$S-8W$qy&!*7A0K_z zwd|H$ap)dfi2C~rI?KCj-=~ z-vf+Kd0^vFef|9Frsx_*k!IB@auPcb#zhZlaW6S3{P5)&7IInF-H?H$U!MM?g)E%a zPw8>bh5zrWcx9L=(-AkKrMzpam&9}&edRIS?b7#vi5@U4MFN&pm~hQGj2LA3>wemv z4<_Df0FhP#!k))uQ8WT$RmHZ3J$t`PX1>Apk|P{3#VL}vS2zzR`MSFwDJyUsP-KXl z{VFpO?+ezR=VQ54o|pReskoIJvu;V})8Op^cXXK$(^HSd`9t zDjA1ve!da#=8W^qKV$@^uX*S)yk>Bt@wojjp2#Rmdghm*OG3&X@b_W0EeE>2I>Edv zy3ZH%!{Zbhd>{cY8bX9#d%G`jGpnk|-CWMc*+Q$fL&{y|$N8yqx@eFe(skbzN? zUx=b}SZJRJ8~Q6_ZV;2eLPETjil&xq=lGv!1m+M~031I5deLF@LcnmxVQU`lr+uh| zI6Vz0k?Re8NLpyjxr4SpcYnUx6IAwil$~o#l+G|_ zeR=*J{}lF#{V*d1-n1yKI)U8!OE1*$mv9qJG!qlR*}ZXj&nC!s!ZcL++p4l6U9+Ov z)HKnlgT~q5eGGOZQHG06TxJ+1BD3F?)A;nt!>DvNC3ON8UnVoz{X*F`J!En^Ql~xR z3vKtp@~5{QT7UOG8n)zyc!v+}&R%}2Q7473c3f-KPm1%MD7oq^j+jDbFtK|!Y4*1C z%B#6lgB$5Tj=Oo{0*0KjmlRw5pqsGPtp~(JY2>qjknGC|)7lpXI1;8mA64Eh+t12n zU6Lp(j7SKA+k~jv?D&C?wUV%VPCXuHLwAY|9<~2o{c=CS)b4&>hx8_ffbsfbR#y(5 zy^=?t2Kx`p;P|~s?G+7pBwbDTO-Kyv`@AX5It2DHtXwDrs?hPA5_WrLNWXG4r(XH# zg|h)e!{G@XfwQv?&GBz|!X&OnLItUC9w@{7hyJhf+_I|P*ZT1gSaRF)xx&qy3tiPG zP{i^4`Yht)6q#BsrTo>Q)ww%$ucl2RnsSgUufi&}xOFk==)VOGvW8bzv7s4GmjYkE z^*2FGMY4Jai531jA!*UoK$gsy+ff&fCldGAd7G6j-aWI$T?^ZD3TkUG^!&;5sz3N| zDU6$3YF;~LDvaNnn$cbM&on>_6TnfvjN@_8M2rXS?`)Nh+N-VxWih8)0tPg-uqPs*#5#lJEpRxCCyjZ-8)JtX$%^*#{O*wzf*Zrv^50#M&0y znqp$@E$PG39*w7cTbjsL&#WA*hV@JAMA_3z77{=S&XH2(S_n5F$XF7T8u}x zFpHu$EAE6iqNYf;i{e^E)~HJq-cwTXn9P7W%+zUgV`91eR>oQG$i+L^251MU;ZiG> zT7pP;BbgWUOj9}9?p}NapDTyW*HLwGX5MBGl|JExjf2M#jS}ALMU=aCSxN!7HpLf@ z!+9h_2v(h&xM9q_GMl$j_(1fQo4X67JWxH4_{{qm8xaoEr}YaHZv5eml(9x^`Eiq* zW$}T7*tZ&eOVQ4{4~ct1a6vYjcFO^Hg8gPdjBJ)PlkCaoDDMBYtv=XfJ75Kfr8KfS z`DDA)E~{oC)_Lp6<7Zsl%+=SZ*dO#VYPNInSSV-0o>yr+n=Ilr>a`syOyMIU1QJld zrQuMl1J&`cp#1k*D{{E+0PQeBx({{Ep@%-LPJ+gOxx2|C@KG@3kLifKE-B97N- zI~0;e5>&~6_O`gM9^uv9{^)3ANHbJi#U7#bQ~h4Oti6V8{s?C@K5u}|^L@S=6naW^ zlz|oB^vM^Mm8Jn1Zkw z|7K;&;rt5>kx4XpqYm8?MrS~pBMLVtk$dc|*#`C=uM;jWc`wjeAO8~gHhO>m5d0&+`Q z*i2UEPZ_Yz16U_kBrWWw*=t40n~^1Vh&L5(apz@c{51Xo_R71ECCHsU`YaBGm{OUp z+RQt_KG1;ow@)R7JzN6br{pqIGG4ltgU0i+_z7cT?P6sUIHV*`v;AT3boO2ukp-z6 zjc(2b+c&JT{*}EitXdnx0AbsN309hzH+hHIar`4V2eUfYZh@;wh$7MNIzVFwDk-lf z{8}+c-FC1v|Al(aT{r6XS{@j%6Jx+=kKPt_sB`m{6l?UTNn7|i0%mBOGS9y-txeMd zAp-J*(0!YK_^<+eDj4`w%G54B_`NnLjQ+BNSuTp_hZnpL`SLRoqTU3jFOZ0_0G8m7 z0o2ehAM)yw8Hr{=aTs{!7phqY3Ev%mFIIPvTX)9* zjW7LbPb^cHqTd4xI*Q%`A+RTd>sTFzp(P$CHF^`{N6*+`x4Ey@nW=s$XgDT8R{&NH zR#KdOE+pMc@|9hovdF&cLSYUh0X0eTMI6#j3mq!0=*;NqY?YAbZoY-@cVZ{Sr`voH zz>CtwsF5)5qj|GcR&w~L4i(k@ikqO>*vWE%abY19kJU`*;m;qBs6}RK$0DP3AwR)+ z9$}XKw)?W{dB8iqr?vy)QKuoCy4oORbpbe0XMaHLyVAsi65bz=pMy9OL*}O_yu z5qa*&!=bF5(u7!RFLshuPTc@o0bI_MLGxQ0n>#Cx4+Qt-=CMto02^$Z#>8w_uQtFZ z=ml!5vqhx}d{2cmt9!79)kvAE0KH#OGpgV@sBG^Aa5dfvEg{r}r~&@W=u=uYNw zmJ;61(QvOSDK|aKEZpSnmmn;2B;_so*re#zpG<1?J_qPQ7k%W`vTqSxdclw_K2f<@ z4R6F-HDo~3`CozzUv@3STAS04{79!T27UB2NHvIV-jS+^>O$!`m}kL%0c~Lh-4e-- z{$>iD#i|#CCQNT37dJW;#KHmJ(L4q4%v4hv9jw*X<7b>dV`E>~j#V-eW(XADI6T{B ztqnrV)j0#&>hKEZ3Txt5Q=bRh!-m|-oR#&@<00G_rPCsf>zJbKNyZ?b`%6bA#c{iZ zg9fdI;oaE$>@PksKG3rsPj=FgH1omqJ8ydsk!kK>tlrcZk6Hc&^9FJ9Ax3yq+t&O= zZvdBcln&zbAkVF)j+I8gclMeZ(SO#kD9)PS_C!B6DdiZC7cGIKUN-DCHvoO$rvzc` zsqt3zpQ_p<@Kwt2spD`1))9)#esmd|6n+quu&z_)NCJD-5gu)zHo+r0ikT^@zyU8L zyj9>+;m@%|SnKtv7hw8e&=_nzR%{X&)LO|%>hcsLJWV7{cnMeusrB@=2xdzhaY z^fF*jO2qQ(fyGpp=rUUpK<}RSg!PXA)Iw^5gPi~)qeHf9oGKo+?@^JjI-6bsnK+N6 z7+NB0zs6j>1Vnd3iacYYB23UoB6_s5aax?c;9|UE2$25>0yMn=k`oHJjMIBF1oR!4+NerCX&!e_ z5@dg~DITKzp^mLk@LPe^E{Oz}*{TRGR*_I?vMBKH+8yaW0(M*jvOQPkT0<|Qz|B;- z$!CyT{5D9}=wd;Qx)ljBC*y~18ks;vMqgN~wEIEJNt8&AFbdM2&D)+CVTdjsQ_~KR zcE1G=WE7fiD%M5}*km)It<%~cm$6UM!6kWN1eb^QKF#80=&7nvSAAu>G^LGWtSSsW zCCJnY_qOzfj9yEqRe0Uxt!5KRdwX(J5rA;u) z#7Upz>TdQjqZQ3~yPv}x7svl*KwK{K>466knpA#VQ`f( zgn--HCn>)c5#{kP!6`eJja#2jd$IQnD4#&F!Ec0Xd*SVQ&T zFs1h`XrwS)YE{!}L;F0S7nv#rs;FNuZ|4{f$CS|fOgr}*iRpz5wU%7qI|~w^EAcsI zN^O=VqQ|XEK_VDPj{@rRcEBBadf!lhRbzpS1X(OSf?YpW#Q&K@z&Y8qnR%2cYQuMBPFA0BWcn+xUPj zTL!`C{j%k-v?<{^rf@hKZtNqeGeepG&g8xO&{u*EPDW*&W*5_9^lQ-Dlo4-5IKo1r z1h=!dI#`2ZylGP7!Yfq5D6PsW%`T^IpWZ!y!_GT=jt{2MU&rLN&gMpZASf%b5 z0#A%ldIx|fjMZTasEp84=BBrmn*6@r@X4yN%i>Bhed3UICydSeV&q) zbC!E8(ICT2RoC|jC2%~(XBlJ0NLy+E4Gg=O5nv;oBXBs6&SdMK!A!5_9k6De_HEy*bA&)+C)HP78j8n zVTdgrGX`Qr2MZWKrw%hleOse0lw#%4=ubiYc54oa=|vIOMZ=#B2?PDwo1E2HuKowi zRogVKR~;1Ivzgfdcimt{9ev#U?5vhQaJrx5&ypct!Ps$bWOKp3?hD%in_#npBrL>7 z$L@y1#zUZL5yA~xFYtbxtgRVYZ6x9awm@>Rds@egUCtD3#mEXdhP3PAl%L@KT)1Gs zD+!=te9Onp$g$-oRNK}?4*J6Fc>%w**%J0%h$OgB88ql1t`DG|W)g$W+#F*_wvo-( z16yxzH`Qu$J(tSv?S1pmIY^lM?f$oIw*$=*y@EdlVoejD?++_AZAPn~=+zgwWy*P( z5|2scqFO`FJZdp~fb2z&ph z3_ijg6wDVL*CcgRp+fBRIw}iGJg_k7o4_O<1*@G&-ZXtk$*cSG`Bbtz+B9KLVW4Qt zD-eS>b9e(dl2SS^-NthRHDd>(J8@_XnYdZfr?O=48i*GUL z?MW4sq{Ok0;8b%&@t%vMM7 zY>MwlAy|>(9K2)ORBo(1^`vSuK~xCs2z44Ueh>DU5YSw=tpAotjQ}`~ID4@_GK!FR z*phZN&bZd|;)Bq5a0~{Q83z;F5FRJIl2&nT{EDy+fb1q^+*}sP7IAErv{N$pzeQv9 zz?D}C5luFxgi&bzlduq{vLuBmdoa-R?BZl*W1m$yDeab#4EejUN)gt_4k}^{pijD1 zO+-4baV{srXqRDV1i5?Wt1pl;h(x-WK1r#L4V9}d_zaOjz8f9%81_&wN~ z9{|8m7Z;onio$+FByBomUkvoRgKa;0j`8;dyPFLj3G0T+(IinJ*y4HuAGv_xjS}hF zJ3+3EUFkOO`YI`^nSW5xU{{$%248J`a4t=Mq1NR*MD=2;dxSLW#a41$LUYSY+lL zJvg^&bMI0JLW%2034APIrt*RaP2IIOJ(x}!T4tU9`qxv-q z8$)N1ojbtT50L!|?AVdE(hk3qnGJnb*(CRbpc*S$r*W+zpoA46;t`+(PiPvB$i!82 zs43fS-4Kw+bMYzBg6UDnJ;iRpAV-pDeoT>rCgti^;1?h0!-BAolE(w+&KHr!Cab!< zz5ozGDYgk-ZX{?g+T+=&1r{NWvF8lCxRbF%JsPU}(Whyzx4EkygRZR>v%#-z5^{}X z=&Z5HzM+UxN9f5jjb~sSDzq#?S=a;UVdM8%t(7{Fdnl~5Bv2RWt;V903xtzK_wa<6 zpCF`}Idr!*>g-vRe{LYM&m6;@CfK`c(Tbl-GyPvvZypHM`~88BF*AmtknDv)c8Y9e zjiE@WF!no1*0M#}GKTDXmP(elh_ZAOvYVk$NQ-4kma?62pXHp_ zd7amJ?sM-v*O-11U)7?kdghFR%5>RY$Z|rYuR=SsSB~3X|^a@D33S;^MmspEA{TZMr zKe8aUFckRiPA8{VnFU-5QVHT;lRw=q6(6ud7Df&6l=~_wJ_NF6#{|yH>Z`k6S zZp`9-yB(pjNr1)f2N-g<7agP2GxbO9(S>b60VZtra;th}0sv#l2E2eJ?0?|2g`>m% z?eAVauM7Frm1SCQ|F6qqE-$WAun&spU*373OV52-H|AciJPUux9?}9Jb8>rEEmK_b zQ9kdP_yu6&Q1oZcAXy4H@;|6m%*X{6OmQRdz9Bpfj0=FFRGeRV7Ni82Puv07VD?@DjB$bCO=bjRVQ!&KyyHe!t&Lc` z`~86Rk6*HRtDFJYmHXd>y-ecQI!iJF)+XMW<~H!XGtW!fT&dHunns$kkJJFN+3cTo zfK^Kg@yXbu{N`Y!VG@@jntlh)vEqE(= zJH@;ZlF(2lya?lIhyq>-G@8M-Okqhff;~6>Wyo|E{c3P__Yc;Gx{hFx8`cc9Yi05KmVh;2|xUv~yS zGf_hi)8{Hso6crJjGN3_w@<1wjsBK*A>2U=Rde;|0Lter2y@z0=B%4jl_z1~%KCR9 zClKVw1Jq*?qTiAg1+Fk1WaGLM3bc*KS9nL7FDi36wpn`GSJQG|;61cZ+~wG@kz}}g z6_oWuYzqU-A$3dZ{fiJd7aMxW_dO2QGW10o@CL4gNm@`MtUksB<2XD4N)2PJr!mC- zHS!@(!|-P8Vg*=ScqTdN&^ld>>C0KyEGxgm3_qY(1EN*-OtsIx*un%3;hwJ`7g#?m z?0e>X4gzPL1ZSDYMrKIS)8}{@9SO1h|7v*`9S%-dO5|$y430C5}h^qx{Bth$=bwt=EzlUPB=|{z&PB} z#Tw(7>ige?h6pQw$Dlkqk9_x%wlHflO~vU9&~7gQda&9*3S-KB?;cWL+jkFV=a~mg zE`z)S>J7w&I?5Mq$V6i#Vh1#U-Oqo^e_z<+`W#bD7Tl^f55?Y*x8uF2u!TV+ttEm%zFdfm>%|=VkLV zeMqx4*87bDDtv^8x%|U60;a_sqal$!=4O9?XiF(d8sD139z>Q?Qivb?d|%vpQW&e{3z1*AmCb`H1V=N zEK> z1rqDAjvDn~QIm|%a|1ye8;qm5IbCiPw~DpMm0kE6ju{vG#kz~-Y5&LJ?_|)L&Am2RC6n3G#fBW^`09h<4l1C8_Tck`z|cNn z$C==09DlVKskwVe*w^TMI#YB80*E88m<&sDs$t6H2B_b*b;Sr~#`|h43;SBk+yN;Z z#9YYC!Hhw`Z@0|8B&Gq6&Mh)I#(l8!0HFpKNoh->l>@zL!;Za_=v=(14LH`PWa+0z zb6_q|qJH(>F`_2%$NB~>x8I%>74|Ko6O@7Ku=cDQ6V;eRlMTGSijCtcyvKR(W#wW+ z7WDW0wd3T-o+N%giB63$*MTJP3h8Rqs0t_sOL#_@9H4>^h$=YYVMy|(ycFGM|L&vA zkb+N8>d#7RJ@! z{5ii?3zdXGSFVS4cQ@C)(%<;BfoW|XZMbw_5&K`QC*S}$JNp07P3 zPkos-p+=Nnvart*I!TBHM|Hr=I(>#~gvv~?u;V`d6lXUAE{TVKgKcFIUPq)Kngx7D>zuCSX6^Ws`*1&h*;nt^Zra>*nN_T(<=z) zKMDlqli+CQ0H@d1acs;KkA__O&=PydI`~KwH)4j5bYoIxRv8rQO4>vth*tg1UEED$ zz`x1b8bDYMr-ksplxhM3GW)J;BRLxW;;Sbg5pXq(p|9;8Kd4i> zF?%y*P>MfNj~{YBh&?*0M1R=WjaHacJKibEf*$*RsHW)YqvHz?>jdy8=!*hDlT&!R z=kGM#Z%I($79!D;#&=SZqH@;fdhp{NF48~WgDkN z_Nyxsbuc0eqS349qc`sKG=jH_DtH?<^Kun10!#9qd1M)jB#&Q=YlOk6!Yu zxxiceUXlI$N?O2-@9x7>_|fP}fhMdf=R)CecjL{v?S39b#c_$F*SQv%`~DbPk1;TpcXIYpgI=D%Y`U;J9g1wIU+tvQ)p_KdqbuRbdO z;LBb^+(|j|1qC|4sX^afp@=f zG-tC4tvRfYGTrexs0vCB2|6U!G+Hj3%gja`8EvA975TqG--t$cpvU|&N0x4SV2Q`b z6?;M+{w|AveiRx`JWqDY7VKPi{5DzM`dr+1)z4(+yLCZh`{v?qAHBbSM%6n$t>s7{ zN9VAAl<3!t;0}*ueo=G!*2}y=K(o=pWPv6v%5|DJBl1S1!|)|qyY2(%+cz6Zjg}KDGx;pp>9SzwM*K%{hSw8F?PGWjtL{bfTOf&nYDFzAsR<3TG!$v64 zRZu@(COs$AWcB8CAYLu0_WmCu#7^mc-y9ro>0o(3@y_g*{-n#)x81Tt4*r9->W#fQ zpL*EtJoZqs>XbnOMOsqX@A-o>Je1&aM$S?>r_g!M>Sd;yOQep+yX7E}ME& zG1Dt5S)WSnX%m~$rhNr6pfeU5OM|YaCNUMhd4N2nA5IJAO zk4`qol_P>{*YnWfPFQ`6`OYOV<|UkFJa)&M9~WAnAhW&4I{w%3m7Wp@fAqCmXTTI_ zoXQ|HZ(~7U<&-6gpQYI%8E;FVk8|8CXfV`WS^9%FQVdcO1&x=b`;sFa_!K{g;)@|U zBE*Mo`5;R_)_4d2hP8nWSG=rY|DXgiFf*EmkCEv89~Av_Z`CF46+JYr{GTa;hBRe) z=gv7fqIec%IF*M_j@YPUY(P5=lb=uO)N_Q`dGW3sB+!tVd{virr#c7o1<#u=Z1n+@sO9Q?|=d8~j7kPA#GJItOB=Jn*TZLv(IT<PMc%03_#lxM}R)BpT>OR07_3qN?Zk#uioV8Dkah;Xbn) z@Lmr71Q=3aWg`44{I@)S<23x^F=UzjM#>k=fLEj&Zq~^X8$4L05AA`Awqze^zQdpePNn>JeK%>&8p~-_eTnRYcvmNC_0YS!ZjU^yfCk_PMP# zhsJFRy4CvZ5yL@<O82wn@5Z6#O zR&F!H#vZR*0+}ujm)~8=?R}2SINS4{(pI=D3(iT6+tQ}`Y>HeAzdyu06MOyEF`w3= z3az1qzrMgBFr?I7Hdcpwl?jX8v zjq8|v%2vLWYx+;$3k8&ATF^j#0a+a_B1;mQXGQl3vWV(Ys^t=Won1;G-5+n?7uh~I z&+XgZyH|&#eS)%jjH^>Miq$a<%5hLm61Dfgl}wox77&d2Cgpp}OAq44kUlQ)_)e>i z#-j6@WQk|ejZcAc9)59!k1rdo}wlri& z3T>AQC&>02@$M^LG;n&*+-Z9G30Dqt+HL3Q7yhZZ8j!})EMg>3)>HaIB8uXiGZO_W z`4mSR5$4?xo3vsS563|)ZayA+)<=$^#4%#8X?#8!L-9e6X_D44tT!asNbA4F;`ryE z{CDlvLU650kTr}M(dT)dX#hKH9E)58|EHes)#SQKi?%R@Q_J963i|h;rfxJ*4O4l7 zcwn8}tQrIR|G_pi@vQ`uF#CVh?N6uz{oh|`cI{mBPe3hY&XVjKuc0c>*0=M8#8HCZ zIA`8)`HIm;B?sG?*^ zsp3RKVq+9)thHY~=R=(tA)FNel|InBgwNB6nG z7Dt_oS=wU^iC6tmj%u#194*GQBTqOQ%>GhCzR%IgM|# zj{DZJtoA)1Ab>0JU=?D7U@K(}FA~x#7Knj=eEJs;d|u~ixNB3qOI=y(zl{C(9l)Av zQ+TM!!0rctX**;g&(Kfqj-jBN1!D>4vsUhVI?Xi`Xh)_@zFA7*p6-qij=4ymX+d88 zTasr;Tnj)|4h34z$VP)app&XQq)(SbPK^rsIveg?t3zC5QZ-$Y4q}~$HyZyEfV=PmsN+O99mJYI>8M~|(2{}Ie`TV6*IXPE}&o0EzLs?NY6Eq(ID zHEm3|b0%zH*Jwxt<93p5ya`f4?upFYgh;eY4VIVII}yR0op_4A;NGnDCN1S8or1zL zNJ%3+-UjyXe&q&BDZY9puGp##IAnMJ(=&Or&!dNgB(SK>bAxqdSR>ApVRWCK(q}&2 z&1as9*SCbwed@~M*YYKl1M7W%7q9@k^-Wh4iR52)xO}a ztvf7Oo7u1UAoaD$0_VHuf~s#ah6++qfw8PCM#d-?46@ASvnHQeg>7wd9QLk-L;^W) z9XD)qa%?D9Y4F3X@Il?d->lumDTASrzuJm^vBSS*Ja|m&9XJ$d4+2P>E8q51k%$Me z=1to!-_6}Rh#W1-v;$ube(K+&cp-Y(BI#LKHC;RpFE-sw-CvNfBxUu7ylzsK>xFd{C59P{E=Z{CxdHYO=|# zd>xuYC1IjlG*;b&T3NW{C*$vThtTR;q?(8F*{j$M^~eU^k|G~sBYk^|ACRH1uMd~> zFDHWY)MdP#W^^#&UlzzGkgC_z)v)GXmt+EhJ|upwd%~RexI1UaqI%KHoP^_1U@o|& zE#kx%DqohS$8xUXb7S{Q5pSS=xISUL#ora8bQ)UEZ8%VDrYXkV(B^NvVs;M1)tU8q z593dA8LYrtB`i>y37Pt>X|3+I7Y^bc5oGy0zj;|Xy*}Y;yH++-O#we2vYGkCX+9G2 z=bU}uZ3$UEbJAEJuP^>mML_1dAS3_p?mTSrA!H1EI5KYP!*lzm)=Dp&cp3S@tN2Sv zI)`64g%Xr+fG_2&cxCqOVSrf|cztV9P4-=-yGkYYDlcb!2<3z;iLMw(3y&W z`k}^NaCdpR-g0@2tM?_-Q}4K9SR+BpMbHfPcCy+$M1O6gKk96JVcWBaf6sRTf@@9a{pV2U~(n`MCu~7yyy%oBBEVEBdQ9BIc&h5W| zy00Lbn_>DDfM6j@4MpE=@gf+~t*3+cC-7`M*1@;T0q~uIzFq|7L3m~^I?@63w4x_m zB?f>?k>BL$X*RH6Oo7OJy1#lR8?Y5zCMGA$C-eGN+tCVpkAkN~YZJ4^{2?hk86@&n zu$*tWJu{daX|$D|{^vC^f&L&-f8|SPT?yn5sC$*e4A}bv^w*71X}BcLdsxoSEO&A> z?KF|yHZ_@XvaNSkC^rSqI0}L>$!SQE{N$43t_-f>+~BunFkVpzq(~ufT#oVclNF`f zJ+<Fd+uj{cED@m#aZub;mc(Pjr*E(ShjM%(ocDpHki>$b_W=f4UXiBX zuBNCPA;6!^RvJ%uY@UAFm6Y4bB*&BxKV%}Th6?`}Vl4X59Q@_g40ZwhvC>{9{1IP6 zn-Xp0>4l#Q=V!TO$K0+6WHhyK9Ua|lOSo&sWUfMl;3ElNvIh~tva+n4+j&h2NJz8? zksKHHf$A11_sL~1z-(pK1};d5G-TE3LS}n=R7RI?cyb4{%F;%_jX+!boqx7!I;46Q zC^Jm}Mioal2!~bp8S6NG29G*u6fk6W)7X&YR!M)oGR>BeDJ*a`4$TccWQdo%b;*Q= z8>woF29I?v{fM3rGuCkyHG^%!_+Q^pV*dG7NW<-j;)fgy9KcMR>hcaC zA*6CW2lOwNcPu1D>m1ghzD&h`y6Q}+?k5@hN!d~vChQ-43^0ot+lMF9J?o!H(;s*{ z?U)3dzPKFDV~R6k(gHY#h3_{4xm2Lp+D@w)A=IMchCd@w^cf|>hkSRyDmDM&P(*Jq63Sp}sL+>p#=wUVGn0!UBfT@(W8D{u1b zG(DI-1j8hI080ul0t@eP1a!D$4xd@Av4Np%gaKLUxd|9cmUe2)=zlZjp4V`%0jEq@ z&g)-LLs^Y^5bvVMi2R!|38%sdl!8Th`l+YU--UPP?0YR{EE-*U_ucSU9m!=ylUX z4pd&;A`sA{$@xZDI)fB_n8fkp^JA8iZ++t%*gzzmqM5a`1baM6*X^tuI< zh+hroi3a5Adb!*tRSOtMxZxfX_LMFp(l>RlIVoK~3o`$GLs*~}M(nALow8Vwba*Ql z)HZHFDup-X-)Yn0egR+2Vlyw%Pwfg zKOX!9gSdhM%d%d1Rz^_->swAZe?ZT|kCC(f-cIMGu4^tNv(&eq{T9GnOD z3n3I@vi+x;+Y7rg34R!6nQzY@C*t-^gRf`yUT0E6-8q68PsWEv!%GzcuW!Zeb`*gX zOpsEg$8&!?&064F{3G(As<@NyxM9KtsUv1@ELz$}UhWbSr~B(|eh4p`m*Jk)3H@ET zibQToNqT)<*cX&ze68{vOezdeH;rm`Ze>Np7jPZLG9tWw2$dpzM8@4}2;balZgPf@ zmbx6(L}?)j5Q{$%mCLJ0oNeTPXIJsH#CE0a_;xr?OeDJ>q2aMHjL=dPhkt+P1|t|k z`^Qa-Kgcqkd2p_vKM3kizn7w*sU#kv84TTs*}`_{$K$2j+-j1J&o!sePU)lbNAFxe zEfTz4NFO#c_%JrY@QQU`YG9& z+xf2a*FPxNi_Gj_#bY*uO#b>_^=meIB|$;oe9~p&KU9CCOKg7E!{@xzjXnba4Txf7 zH&hgvT6qG6Lu4LhV77ZR_)k9NnM_CzC~v6<{$fJv6J!kDgML5o`>%|8fJc#xMv9Fd zgSe}`=?&yA%hB&~GXeH`9IJPlf=1HqKJwS|NzyC4o<~9ixZnJ&m>3x@WhS9R8RgZc0kUUxd>6kD#!4 z7GJ~%_p|BABYQHFjW}0+?uwpc<&}d0J0bN1uGxx8+8L*8=;J$_^8SyvQ~p~lu?2VN z&fSo%&b08u|9;|FpdnI>*4Ouj&=+n5_$tPWWCu5{2j}43TKl%lX)8jb!T`aG@wx_( zA&bimX)+gj7Pmf}$u_=7f}?b&RrS#eam>U$IUOp&A6;gIaPq&e${qSp_E@AQhhq;E zHKRW_*a#X#V9#~n;U7o1i5#ep#jO?fF1*^CGMG))MUM}M#Q;Oy5ydAngt3a!#A1Wu zljc{f7v7|H=7Q%^`zQ^^CnHc}2Po(tounu|z-jCpm-4Y;D@-KRvz8|EAa}E>* zfJ9k)+8(vwAkr%-ODe0SbplL_zEKWdg5nNGDaIuj#PSayS^~Nsj3v5%f8wP;Z_D4Zy!V9rh>VB zHvB&C|LV!=a-$3(a^QN(VpOo5O9PkbN2aIxp-vP~N5f{WEqz;fT_y4tLIs;=a@CX zfMvuoTcCc#9PbgIDdIc2%~zESIYw;kT#lj#(XOCU6mD%n@s-Pv_W}HT z_!lAHk!D&Uy@)d4!n@Pt29+twG}fy$@qKl9MMp02HSB*#TTJp55up1f0(8VR_G%mi z=ulZks|007HB7^n=7Q=l;nTDovLg%?ks=zpPkExa#J&-#@258%Q>EW%xFjc8jScCY z-%l2|Es%bi$*cH>NPgyeX4Vems3u4L-_z-DA$@tV?lL}F1Bm-SIH=^@$q(+A{nDA~ znIp^9Fh>&-02<1i18isri6_MVcf3SM)YfGG73Y-KknT;&K2tbij-@06l;mA3Qx6T# zyi)dSZhGw*yN-RyYbq7gr|lzb7?35G_(DFp)j*sf=B4MIp?uKd(IfpB4a1lx=f44MT=O~U z2}b$*K<{WuKQzAk=bL8Q3UCC^dG76{Jq&R;8)Atn*sV01S9(wAI@ePuS?^AO`gJV7 z_^CvT#};I&Fh1Vs)58Gk-h{K+=}jS()>?(R9|>4;(=9bG$pOW_KTyi1L8MafU0wtr+K>(l=}_+_W*_xz0n z)%E9S(==vXJ-vw;!!}v4aGHtpnUkcugYw-d@DzNjSOU(SQn&x3Zu_Am_v_t?oXk;Y z0k?znCoh7U@B1_BR5Ncf^^HWrRs=4po_7CN$%xj{rf4*6V$J_wd8ZmBMiPMK>gb2h zRrR?Kh0YR`>{@kH*uatOp|d}Z>>U9@V_>tBVb-H;H^tzmsVj%_M6Pe0-aQWKZ|u}> zCB09G;scL#OJDP9XJ>8r41sV~r`LV)mG+OR4h`t8Kkx=9C_+8)qIhaHbiaclw5a+* zbU;;ef}?J$W_v#qP1c+4MfvWq)OmnK&m7iS>%VX z%A)UMt{9i?;Mk24TQwf-zuYiwBY=spvX~#@CV7ip3b->OVW4=w=@cNE2tH|zc(vP<(ew6Vlcglb<`sSdshT47Q)P$VWT5ktU& zGL(qppRlJ_q6HcW)k$Aveer>h1WIXzR}Z1{$HBstoM+DXnI4tzH$$mO)Zc;rm`$(JjYxewapDG=Y&RVT9FD8=?4Xb^?|T3WCzZ8g z_J!@h#$V)xcr_*7laZ?=oN!>8)qnRgp?W#1_njGpX_@NTQ4P<4y2IyK6U$J2D+)xy z)_-zf0TF&kG3KIA$5zI!K453DEbNx(Zj~&d^vUkv3Bz#fzR;md>asCyKc`cCG65); zE0o6FV)R&~iD^%$;$M>;EI^gs)eBkvdY{bo#R?AyvM>6Z(iU1ODXNX zbN99j^ROsv^5`XZuiXpl?+b%rw|v^#`08Nsf8EIBadWTFM==+cOKztmE#Iz+aIZ-VnzVf&rWM&D+z#c%I86%+(vU(C z&K8%t#+BotS%sh*QFljN%-ZB5XodIcR1bnjKp%^5XIcBYT~jffRnXixuxe7hoRdAF zv)cu}D_#jLBtGF$Jou1o1Au#BH#ggw*E0OI4E{Tw<_yai)&%IPQqXgvum;~%3)^;8 z0S~#07r-5>ze-t|rICPdWU3E@!d>p{lgHg9#zRUkKiMwFH)(ovfgviRaUqv~x(4!{ zM};$R7&9z!?}GZfb$v&1*P|EoH%+SRv%_3b%5=tV-NRax$az-Gg`cG_PCg5>2-)w! z*4jLL;!4o}MUhU~lI`8WY~eTh0tdb80gL>I5XEtpVPH2qSrHt1%SYRrhOtM7YlD5R zb>w3duO>uRu`xbh{<)AW*Ov&Zw=Q} z%IaIqNt$QE9t+n(rshq44eB##Jc?E!pw+|Y!tHOW{)p7?cbOTk{FZ>;w9l}CaSA4| z!8%LjxqX!SD`ZSOygq6=9`#+-?hfUfX;b&|D=hy_C8)^uiC0%8o6C&>^$5_cXjXsI zUgbInU=8%-uG2Jt_rg-k*A=1eBdCQLh0uK-lNI%Oryp|I!R2z*oRkzO-UOyDxtt9u zIoEbz;hEAe?ZI|ypGfI4&B2(x4B5?s28=1}q2~yByW0J}Z2d@eM1uZ2r2WVd>hOM# zsQ9mea*U8FK)Dy{%92Fr0Nd~%p>6LTr-MSKx{K>EZxW% zoY%DdShNi4IN_yWOx=|Q7+Eh9Z}a*{K44{Y{j=$Oy!jJVdUsqqmBE8Xvk_V z`pXMdM)0zm~80H~b$;xae!{^XZ$f$M0I3wwQaDdWp!NM{cEipqxvDK4Y~ zT)so^&F|aob%g_J0){1tUNS0C zLhWZDVU-6BbWgjUkT2Yf54LT{E2daP+Sukl2!`CyBDm&3{< z$?R>PI3BuoY@b`y+cvkFjQaajgwftb1S<}6LmQFH}?5O2Bh zXirEjrA+~1LEH@LJara603#6nx+EDn;vOObF;@id;j3a-L?F;oj5V|m5{EEgXFnQ3 zyG=zRtc*L;9CtcoXTom$JI$_3F|Ph=CdYo%_FuD;ooQ$OHM;@3{ckjBMm%l=#g8Co z@vg-D>tM~k`5#3+8jUEfirq5!*Ok~g;q$L*~5+gHG?``T>mw@ z36K73MmWF-{@3gld$`5FW}clc&i|U-hVA}0+5v{mzh+JB;e>z9{5!WBAPazqtTrj? zpXGc7aEI~^A}>zS!Pg;~h+LOpZ2s%|g?-cIU)PAv?OF&8F3!p@R5)w_NZjJ2zpgM6 zc#37;45D!WP>)G5EYVEF6Eb0a{wgvWA%47b+X|Lpwi0J=X}mgL0tpn2qY-3oeu1}t Z5fR11XGAGk1qkr(1mTo%%`u4b{{YUlp(p?V literal 0 HcmV?d00001 diff --git a/intro/WelcomePage/assets/colors.png b/intro/WelcomePage/assets/colors.png new file mode 100644 index 0000000000000000000000000000000000000000..3cc44f1bb312465bb1e9c57e417639991406bc29 GIT binary patch literal 169394 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

2V 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%0DR1kKZX%){!Q4r+`PF+S@Wi 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

RCnmVEY5`@sd5vSlgYKbpE$+qZPT2%$Z|EC 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�hNndnvlu#Rkx#@A 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 literal 0 HcmV?d00001 diff --git a/intro/WelcomePage/assets/title.png b/intro/WelcomePage/assets/title.png new file mode 100644 index 0000000000000000000000000000000000000000..a093896f689a477a26c4d8427b7fd039b55e7bf0 GIT binary patch literal 10949 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 literal 0 HcmV?d00001 diff --git a/intro/WelcomePage/assets/typography.png b/intro/WelcomePage/assets/typography.png new file mode 100644 index 0000000000000000000000000000000000000000..10a28113f8452b93b91981dc213988ef26785c57 GIT binary patch literal 62257 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 literal 0 HcmV?d00001 diff --git a/intro/WelcomePage/styles.ts b/intro/WelcomePage/styles.ts new file mode 100644 index 0000000..a9c21d2 --- /dev/null +++ b/intro/WelcomePage/styles.ts @@ -0,0 +1,99 @@ +import styled, { css } from 'styled-components'; +import { Row } from '@components/Helpers'; + +export const RootPage = styled.div` + position: absolute; + top: 0; + left: 0; + right: 0; + background: #0d0d0d; + padding: 100px 160px; + .sans-serif { + font-family: 'Gilroy', 'Trebuchet MS', Helvetica, sans-serif; + } + .serif { + font-family: 'Cirka', 'Times New Roman', Times, serif; + } + @media screen and (max-width: 768px) { + padding: 50px; + } +`; + +export const HeroSection = styled.div` + display: flex; + flex-direction: column; + align-items: center; + text-align: center; + .subheading { + font-size: 28px; + line-height: 44px; + letter-spacing: 0px; + font-weight: 400; + max-width: 550px; + } + .foundation { + letter-spacing: 7px; + font-size: 14px; + font-weight: 600; + } + .description { + line-height: 40px; + font-size: 26px; + max-width: 820px; + } + @media screen and (max-width: 364px) { + .subheading { + font-size: 18px; + line-height: 30px; + } + .foundation { + font-size: 13px; + } + .description { + font-size: 20px; + line-height: 34px; + } + } + @media screen and (min-width: 365px) and (max-width: 768px) { + .subheading { + font-size: 22px; + line-height: 32px; + } + .description { + font-size: 26px; + line-height: 38px; + } + } +`; + +export const Img = styled.img<{width: string, mWidth?: string}>` + width: ${(props) => props.width ? props.width : 'auto'}; + ${(props) => props.mWidth ? + css` + @media screen and (max-width: 768px) { + width: ${props.mWidth}; + } + ` + : css``}; +`; + +export const Heading = styled(Row)` + .heading { + font-size: 70px; + line-height: 48px; + } + .details { + max-width: 300px; + } + @media screen and (max-width: 768px) { + flex-direction: column; + height: 130px; + .heading { + font-size: 46px; + line-height: 0; + } + .details { + font-size: 15px; + } + } +`; \ No newline at end of file diff --git a/neopop-land.png b/neopop-land.png new file mode 100644 index 0000000000000000000000000000000000000000..d90d31214bd7d8562c6ec62a9319fd5c40f45b40 GIT binary patch literal 336029 zcmXV%c|4Tg|NhY;6xp&AW8WpaP-D%$ixMUwTT&`ynY%(Fl3li`5R#n~F_!GvcanW4 z%vff)=RV)wpWpBP^M0Iv&V9eG>paivIw#WHRPPKuH$4><)foeQ9ZM=Iy4zG#$2U$L z`}am($pB47MRQWei&|Sd#3a?E zrIp{jNsy7#_A^`9-aJrIGx6sn$Sdhx6*0Q4+R>1s$;o++7sboYA{N9+=4MwAJ#PXi z>(}1Al$#TSBO-eC&ey3gIH0 z5;FX@nHe~#ixS3{?&#>4n8|ra{u_=`y{pw_r(EaY=vY=-QCsuFO6g%i%%-k%G#{7p z_gsRqin6(KT5|F`*5`Jrl3v|)`?fc1ySjRuoZP4S$Qqg&7M7OACML=PKC0*&*YvLC zWaqLtXvW7Usi|u?ySPA5_}wcbd*iaAverRCkdMy;m#6rIM{74#E1b}H7S$S0PtT#D z5eA;?5`ubWve~zco$l$5s_FYgMMksunAuzo)UkZVARNHWuAwgOSJ1|VP2DoKf2(K0 z)mm&VA;GM{%q>ZU)>D*qX_Qn9_$WmHKxY)Eyer3eosC@qc=5ja~wc*7#Wu!xLz#J zXejS%^=o>1+SLUWlgk^Yj@%7A_vFpADeJpQl!z8HHsNvo`1shnuk1E=-#1K4;X*gx zipfU=@&_iJ;dhvS>Xdc3SLSnW+WlOggT;jxsVILhzF99jFWVT&#lV7u<_rPxCMVHI zKH=NfLJkRm^%n#ybA|mc>aVP9_Qgp3$R9yXP`DHxlw6Y`zwylqRgQG|#ABFyP06I( z0uLu2)wmdk@D;bbeC8r+mt?*+iXBhhSQc-*H{Kb+{dvG8uwfRtq1QPX(oukYVHMI} z>`rxp$H_oP(>h>cBh$cFQ2DGby7+~a`-d6RerCJfrd!3qVfEp$o24czJEOGpy5*mR zPn@YpmpUC8%qdqPQr(F*kdQP0$c_{;m&emyFRZ)nh_bWL@->LRxW_+}3dgdrJJh$I zKE*a`4m!TS;=6_7QNgGA*5nA|gWFfmeKW!ol@*g$affHVyqfjowtqVumS0fJ~QIzj0_~!@oZ!yrE(C-BiI}%FN3F7 z_cl>l@n}8jA`QQkhZz*TIwi(gz-j&FU{x26H+$+G z(!DUPCjqNNaXMs|i(dqV#OZ`5A}uk|sMn`ueRse97R))nZL}cR^@XGMQ?Cqvg6hLF zTzh%*9Wnd$jNabQ$9dc>+l9R)%xH0vxFWJ0+cBN`K@PjwgIRw>M5zM3FOX2tUnuD} z$Z14mwpq*R&ZyXrgO+{t+WUjmV7m$^w-+8i{;x)whopT7I3uefWM=O8eZ2Jk}nW zh8t-e5YN^FvG43!9=GPo$t-pK*)u6KOwKPqoQ3bFHzW|Vi}dV9-+km&iue4wm~$xN z`H>C|R%uyo4_dG{J@o)P@!XJhNl5yA_O1E0jQ%G?}nG1P^ zy$dCK-^u6@#K#fjHgAoVe}WZyD6tphI>XSLxF)0#QUz@Lk8Xok7ut9EUcYHZPM{?= z-NCzzG9Xy|V-m2xJ`PoYSo`_5S<{w#v5=fA+{}M3!A~}sSun8f=8sg>y&QWdaS3Ki zy`Nunat$LTRtj(HhT9u;^v*dQ1wNnQIIHEpBTbz-^sJ-p?t|oZrb9XG3ABKiR=kRo z{r68FIm!zPPH`&j6&-SA8gldKUy8L}+cxsW&N3F0U11iO%BwwgT&sf%%_h=FGOz&_ zNO-R@HZa2GakKS>rV??eNFHn8fDJi@_{f8)y;xMe8!(F91OxLj^OUW9pC7QoKCZfDHkCZLIPq~~lLj#nFjMQJ|}+~o(DB?L#4pg4;cL^LD%6$^f8 z7)Vlk9sl`2Rkg6MoG@W-Pa@u}OmUFdrIFTYKUZLu<18S$g=QToJ8WJnrHru%^pd0p zv}jtR+6`|z9y`hIb}4(V6UnzEST&kO7;GE8N*vYk z2#X81r;ne0>3iXP;s@=pX*rU7!?XfqK?9^zgiLu-s;Q)}Q z+c7Voub>Uqt=@oiOvq&rmGfXc*d^3YAxXZkDMm*n#gx&LM`n8d6Tq2*nm{dq$T@fU zZNT;3WDYgO0$dUjll4}d#6P~PSM8HeIjx$zPvWg22`>yPF1}O~apB)0P?xAlnl)ZHIYL{=_@1TBcj}zX`K>G~By^ir5%ZU2`q@Vdf*OCBf|l zW|HjD%(3Yij|Ut8&C)w#ln+j^mf$mBfF8bw(zh zbUeKc+mNo4@I$aR@@^e}p&U$!Ot}EZ-Y4jz2+G05sS>B$OuP_e@ooZWjWi$}%jgD> z3pjq{yaUb|3fn-4yZ8|54BCn1jfBj3SD&uOUA5wK`FMBt-GqKc3g_bVM_p`C_fVhc z$*21{Y2HtQ-oI^(=sOwHd7GSsy?3(Sg_$rpu&bx;-T(To%VB0n`WX?WKf&b)g}(Mk z{VV-*l|)ij0Pcb``J<}z>f)~NT$CE|dEnzy_!@YPC`n$WIoYLX71^VW4SP0slaU50 zqYvg!rvEVh0+Y7QAlo6cJQ|H*+D>?Z?(*WQ&wl^>W18`{7?bBD=5M0h^oo>-Xt zW1)1GK1;6AWVy~vF7bs=XU7U;cFU~>_xsRrehcc|l`~moh)D35EqL7C&N4?Nyw%={odiXOK^hRO{yWp&{g#XkieB$OU3Urc2 z9+(XWP;btX+I0E*C*4%S-td|ZBqwQTF)?0w{#+_WAnaMk9b=^rCBd?!F*-{w0VV%N z6suJE_{x`y9PQW}Sq~-1kD^~ERT=e}n zThT@Fe-A*;F8E`~Qx?>Uc1h5wlDeB!kRncOL7laCb|(>p8l>+!J+0sDsl*Qa=+gd6{_Agb@r6hQv!Cb3kh+Yy4-?%u1|rg zzWPND>P+2XSn10vlNj`pX~#cA+j4Lr1zBw$Wf%>7yfW5<$_w5sy&f;7$8Z%%6&E`7 zq}JGBb}1U2rS-whaP55avn!Xdnj0cluBmRpRBsRUow5B^gh!l8Z;NSRU-4jzxA2Q; zag$hTd_1}{9=-nYF~RF6Zb|^l02TFiLtQYmyax>-GJ;4YwCC-1w48V!h>uSrc_90k z35+^C`}HN5{tHr#aQ4pe9g+S7fLvhzbVK8DJ*xPNAp z9W$Xx`k<+~-1fC8vWD$D!wX%Xs`rd%W+J-CT#rA?g>HwQcDx8C zhL4jz67zHF8L)2>Fg+-bPBRM$rKR3<+atp0;cpnK@K-W0ZPsAJ)_?8vj^9nC!BtrA}AUuW;8kSL*=^pyS1yoq-ZLxgc>W{r5fz)KBi9AlES@z zHMU@e#VfI_+@C1;P;>0A+%;k;RKo6Rc^~Fz1Cu_6PuN6j(!figvK4r2fIj}@!-YS**as!9`YOMG6>;VH`-MNT z(C%$Glt$t&_xCvjb24${-B(?O`f@tV?-Z8@{EB0Lw{G98TkmzNeg5~i1nFUW<^6=L zwT)|P1&Lqzrs5}O$mqwaHgQi`%Iai1CZz9PO<%0U{`~W5Bp#iYew0FuCUnd2g+k=R zDdYPa_3t|aM;S1Y`|2d!%}=q%o(5l@N2v}!F6}|R8D%2XA-kXSa~#S2k9ZeGC5Z>f zZ`h{@6z)tb?bOa^?kvNiLxMEon>dN1h^@+*zg@1fi1r5R=)Ge%lF&&$1tKWRL}~wQ z;Pn^$B|~!xsvY#`1z=I0M0-=@(i^CllM9%KUE<=4h4f28YtowbXt2R6C-pX0t|c4A zH`Av1p2*i%^3$2tJ0*h6O%Sx{&ZIwAW~msmFyCZ8Y#6lqRh+C_TYfF1!I^e0399F3 zGd%t_0wPU}_p`ckUbo(OI(tS8Z+}kH#r8>`t8@o0g|v_jHKNY?DF9(|qo()?Ftqc1 zk}s1f>qcQR{QMMjbMq?p=U0LxIS42A;GjyDi2$}hhjZf+e0~YthLF*v&^)=9NIFTx zYnnWr_wfL)3T!4I?@FNG)}E|7;Am2g`sY^SV5mVqUpKQOQRz2_j?3sj8Y$7a2ae;*by(M1oNYUJMCsI6T zU>aZ2=iu9M!W>TYeAXD1^Z3Xxp`?f-P9F2NciiV*LXW5U)=Ef8a8;{M0;Z0MbXjW# zH3u0{re8o(&9hYAKYL^Ah`8xNWS9t2$R0iTKgeZT+{t~M;e4d0*p)Ic`uR2!R|PnO zeZlfmm}eI7wX_jyk0739Al-Y;B0R%|tE}B$3l?P9(0}O^prdcdv#0g3t!%IBgx9b~ z1k<1TlBt0UqPIR~Y?)P;ottFHPXed@yvz6F`M{5V%P-+#qa{+l(G*T_X}~y6r6qr# zv?BlbRynb9)t9bpB&(J7N@rWEJxV35_r5L_QrdKjd;%Ed779Kk50mFdo{w_FH>vqyuI`M$>=?NG@TBY#YPd zOyIv$Mt>s8z4{>HLjLUD<9Oheb_7jc)&6x3@!0?dK8`adxz&i_KuqjxNH zTT;SeM8cD+ywvaG`+jlSTju-^J+4-S78|hb z9P?r|``~8mI~}FF{f$06eePAG8U5_1zWlKPdOTbD1p_VGhkgb1+f4O$+cxB|pB@8u z_%kVlK+E9T9bqnXf$r&rU@4yb>+2WYI!mH3e}Ey@G6Qpq+#*Z;W?l>{_Obi3=&90w z+MS#S*%X|6L=4zJiw=L23A~lSYQ^IE^85zo5w`P!C)j~ zKiPUL|9QmG*PgC1E#f@J1K!>v=;VACpN`L#!1|gR3p=5s88rO}xg*DSbfbTt-M$%p zId(ZXa9TFa2gkfu64S@P>kyQ^&0s_Y-ItmXeLHpwC(*;i3_FU`f747b#HwhBlTScc z;-p#5{LVOb6-8C#aOvwWGIJ_1q1&fp>$3&#qpsMq2h*X@MpgB;Q3sCUqNasXy4^55 z(ONPLk8^&kOL#2+!?fhsO(-pdvNN4COvD_@6Y;0p8mowfD_>d!rkbqA7N@1D|k{ZJSj zQK z`pzWJzgAw2^Cfd&4?-RxIj`?r7g5(#n-}%Bmp^TVG|ejGL-&GVwL{Py4W1A&s!x#Y zTws3@*Ha2rfAQYOJUTLqenwSeA^EO~f}REsNeC$k!KA}ba8e%(9hW|u!&wVSz7ICE zly>ltPP_Mag9RU_7u>G0-S}~}Ue0DEV(Y8Z?e_OA-3HHAMgzW!eng~72sDfgH|jg6 zu}kr0_Og3oo|=_s97zQcg_pxtsQBseGZEtTb}!a?V*g~vDCAZVwPK=U>*m_jb9%cD zCc46#U~NvAjd3_0*G$gLH^E3PCk?}fSi6b;N_KhMOCJ9Mf3UoS+XEO?q>wC=sR*W! z)m%!DKiRMNzrMlzCLXO0xqw?^zyayyrH?5lfd#!A0hm^@A3!lYv=M>P0}(CgqE}G9 zlC{h8arTx&w|volUkzV@A3Sr0FOxD|eLIu15Q!~HB&*&1ZP9NP=P_6FHZ1tJLmQlG z#-DIKR$>(XAi{RFi?C<4mlEKcAjB=(@b1c24t9i~=qNV3NsH%Vw`eMdWJ1$MY2S3> z@2NcH{kWs;40~)<9M>ZVroOgz#uhDbz(XFPUQH-kmJXDhB7WkRL!<^9FgZ4?XGWxW z;vTvk_VT9R8;X7OiM9BUZ|p9N%+8A!5|87`!xba{|bE$mqt6vt!uqTTqBZA}3#gJ$O@|6VR=#g8SLn!zmd*_BAt1zKz$7cH= z%sS#2)=-uwrOQ%%@-8brmnew8=88{PhUKslOc~7hm$1tXjv>pOypxS3bWq4~2-_0E zfH!yJfVO(OL1^8hj+ptAO%H~z2hd9&cNIRq-Nex+q1R4PHlWhRK}bt+R@QwZLYSty zd@vMjousdHqz|B$9o+V`BB;m$?dXE$b8x7`U+5An3qOw5da&?qlt;CK0SM=OByCx1}JDdw|~>C3k)*o2ol z%)F#BV`)t1oNb5?F%29IGMIdTKhvLeZAB^K-4={c#}lsnkwk6~=hcryUfffCT}aMe zDj|xH#Grn`l)p_q(BB#&?!(|y?kJCJapvRO;SuK?xW&y?46l;`0?>oMd$gpLQBV( zzrySEAD3faP7gere#epSw}hQ?KGmf51;n-cyvaMgd3sGkqukm=;N=+%XQ_nas{N-+@EtN)o^`D9 zYVl$&%^~U1G3ph9gId@tnWt$AAMS1+Wy}1XNf}!ZFpZbWBT-0rPmqw`S&IW_@D8Aln75ry>u1ES z(9m!bBQh zYo*;0<)Tw{LcC?@Lw3mLSo|D^CA-D`!loPHF<&vNi1;-a5fL zUbQ%&`YL`V<qr~;DFe_g^ zLI8ukIJl#YEXtDg&X}fv@Bg@sqF1S+4OZ=v*3h2&47=#r9HyPx-w0jp7dAbsgjXAp zj1tm!Y;c0+O43o?yh9dmtS$JYC7d6ZH>^GlxgNi>p75&GjIH(Kwyl40et_F@qL|0EbnREKrlK4-mTrrK z0lup#ah*uJ(Bq@Zfrw@2y7rWu!CE%?(n6=8>K7FWC^y)2_GxTcH%fWuz-MxD3Cc&d zTG9M@J>XR~5k+>ZTcDcXyh-x!LMMPTkRXTw|KxV_U--p(hC&N&9x@H5kJyzbg(I;+ zdk{UEt35mVQu00%EIN)}?co^92@Yb7V>>mtR-n;$LfT!ki|W!^sAkT&W0HCG9A8zC z+$1596Qof28lkW=jEwTy(J0^dfl8!zYNc|ey5=&--LmzrO)j4L6F;_T`)wwoD?hxr zfPF>wge7@)_N!lAi7Rp2(M!E~8jbmVlg>t*R$@>RPwOsu)1pgiyJCVnzVc5u%%V*m z=9zUnvF=5H=8)b5(h(U$tfltsFTsK7EXUoG>DdG(-7Po1$c*@mWRl*M5C| zHG=wl94XpK)$p99+oR8__Ih^%o8G>-^jN$rC3tv3SfBUH+4H~11*LWeU-4ToVp}?Q zN!H*56hatwecyZYP6GcRug=GDxtB{P0mSi!8!9vu5iw;7;EeM`ZfqYcM|!(`fZlhJ zmuXKNswu@xU-d*tiE#OjLTmF5ZV+^|Ey7Cux3H=;3usrQ7H)Q=jMl4S5T`^o0%}i- zJDxWI42}MsyRm}qTDdVdw7+&OS<>|IOU;xW9|KZf3aFgt*JP|6{4 zP+Oe4d}n^m^F6OnXxLKT(J94>xS2c4Z@}Ztp4nv+%-6Z$nNRBZSRKpspCbWFwU=#5 z>IW`2m_Lu$F$|$fkQZ9m?J?s^_N!ZU08Z{(DtsDL+s`m{#*CNI@58SO4|GlXPfk3? zO?R4|PTJ3Dx(sp7+vO_2E?-A(ZnK)5FPL=;m|2D?;|tesG;iUjy71zV3d9LG!!)%- z@M<8Ff@45pxq!}>Wi-ye7f6u`CJ(ApnBpM!PxA!K9`1tCgbZN)CAmATM*VDg9f~LW zeC-y{H~Sqe<9`NgmfK$oqZitAQ|sZmLBEUE`&^OVIM!7$d{)g_zUZtHtz# zU+$Qmv;A=5{h+QXopAUiCH}-G_V4UTe9{|tz6+xbW<-;scntkIUjBT4RCwmV&`6*8 z$%SdNZO&F1y1nnt30d|kpW&D5jL+=2%;ET$1zM8yS*hi`cd=tsYm>D5_vW~fukQKb zKSR}(rv-vVwx6=l_va4Y?yCvb8hKc>2HZo6!J`gvxebyBWOZ-k$m=8Kk0Z7Y?s|t4 z5&_u>;4=s$m)N9nzd2Y({}LdXfM$Fy;Qy#r77$3meFhaH;9U`gwT_~FuNr#H->xOz zxPOuSCi~4{L97#v8Ph~=3I8IUXk8m$_M3qA^FmKT-eR@~Hh+yiogc@XHhq#5)}McC zU|R-QCq9ZEK7U4kL3#K{UghU@bw_GzL@Kv2i;Ys6jR5^1H zo^gu_;TOMn`R# zljz$o+u zFZyGjiwU%D#SA8m^D#efHEUE+B)qf1e(hhtovykZy(=(ncsXBdz}mPv%q;ts!btaC zlSS;Jss(v+bZUeVo1u4~^zaOjFj6!)kG%k^E@7qdY9$NQh%9e9=-Ne>nY{yX%RP|L zVb`F4`8O@Zy9xKvSa;ibVzouV6z9)}f)GT#!8qzUKnUO*9ESvYkY;b@@oC zUpsEGcMK|EoHf4XzVO`UO3w+-lN_OjTl)PKi3QS^QoV8hlPA$H$GmsGfwgclq4d>sH}F=;;m5?nKE$ z#8X_Uq_Z>DF88y}4U*P9e`@}lj-z2SN*dZ&YP*b&$m~S7IulV_VEQ(Ukp-Bn`nV-- za!L_=Y+Z{SD}q@?w;!ybWtSuN>;mzLPHTzPfz04uA11} zavj4@@mV^mjgcl)3D)FDjm+*oBM#Jh7sITrp6}B&4)fVk{B+0ilQAySggOzbS2A8J< zpE|3gakZu$pUFu#{bi!W@rLV~tmrxhY zWoA{bIk~!7QGva3_8XVa8JNt_eyI1N4=X}ny584lc6u=-issv?Cs;V_?6Lr5(+h0Qr`Qw!{AZf51FN0UmA8H9z<&up&>T zX*DFZE)pltg4zYl#Bg>DTx*9M9Lne$KWy8@++V}9VHMw890BF!FT1I~N!`zM0r^uW z1)em~OZk3a!Jfs{=S8-w4kag6-u`%b5l;Tsle~U=$@0_`CN-ORZ@pV~Pt!$6d!cK7 z>+SYv!t2wYM?*Sqhv6`Cri-DMdrRhM)GZsfXjrgIX7LfKQA3`i_xT5yUE-NJ-dyt= zKlPaX_GY!s*@;hC&K1Om=b_EVIU!W&s~m*3`-m)74>9`8<-$pNJp-f z)%_i4l79zY0U36`*@^dBKu7r&fG^+Q0!d0lRo^<=E%Qsk;4T_>Luk>L4U>OFx6i~| zGp*5e%asYXzWAgYDr(>*l=e!+A7gi=Ih=@ zXpP*P{A%MDS76nrbS;mLW;|E=s@Ns>TAFneT`sH5iuxomUnD=wQjR?uD|+GRTj69$ zNSGK*2^-3uKVXkK1}}}k{e)Z6rpvV7mtwP~DZd+38~&*Zo(8x~v=?HEkYR{NZ5dCB zr_Kmkz;T=7bdi*QwAgyJPxw$q@ZunF4>F`l{JlYS7_uLmnNS@>ZzvxLX-x}9E9wiV zdoVS(h+OBSSrNf{K9Zdp5*zitgA!F0D!aJ*f`w#o25-th+B`Y?_&K%y@vow1hu5!i z&8P7+F`Uv$L>po=AK4YdkA-vTyU3%KY*-0-pgCl`kGR7-Uv%rC+g z#1ccH)2l*NE8#q}S6-v~WW1FQ3_zr9OA+bPS)V zX(d~Mx>~)wi-z(l9i(q6wKN=rT)&oXdHrMH$!_N3B*ApAa?sH9afVJOAYAWC3_d9O z%W~`q^xsQ(=TmmQC}jex3w6p)P$@a4>_F+Lq#Z;af~Xx_9^rsEy@=Cq-C6tR+Iag6 zmWN2!A|wDz^y03FMeL#;1ZJ`+Y7^5DH9g>5dUkXVt@|Bu3vth*gmURQ9zPMcRQUOl zf=AFttBVRubn-g_4~Z0=-^qosACpOgP(LZdfD=~;xTrE(&iIk40>waHFF1Olk~RQ z1EOA+nS$+!D`=eCw*PtW17ht#H%txTbxG$5myVTU644&-HU9NJo=v_yt$)%i0&B$o{0tB*T>Op17qkw840*X$@OGby1x0E zf!v*e%L-B^d~buz=oo6QG2oPo^6^5SF1yH#rTCavpbykAD?Y8yF_m7`4Xjl75=8#o zCa+@sfH&1jv+`d0drn777Q7p_LS2I|o-b8DcL+J-r6WOJp6Da}LqKoM4wVGwZQHaT zc$3=Mvk%Ju+E&%o?PWz5G zn?1RX#3-kYlDFPM&-j{s5+RSODwC_E@tztz1Xm0O_E38{Z&o0+8&C9sTLD-$Vy8h? z;~$B+`;(>+3q8FTLN-$_CT(l&9A%fRAk)))bS_L!F2>ZSo#deCCRd8b0XF_2DPC-F9vLHiy?-5lza%X{)riA0vl1RA-{XU0>v1dUd=3 z|9x6>%H|0tCGb{QR(EVJ$Se6VH^F3AW=D+%!sVF z0S6+=zZce{e^c#-19_eJDp>S+(c>qvSq%7*R-z>(0v1goU~<8(xgl>K6ob$zr5sMn zP;%VQW!*iB$lyMTV1nY_aJwwrxrT`HTDW&;{UUK9rat0E^M^x6_mVum)Hmzy5ao&Qv^?w7AtGp*ioQXbr zXrfa$&~1fO(L24V|Mr+!XJ)h)P$-oI@X#7rHbiQX*OI%K}*6xrQ%as1k<_ z!(V=V&s7x=C#PrO5mnwB#0bJ@4|)A#-Ju>ivg$9BoYz`q&k`fn-z4=oY7sSGMy^Hl z>Vr3TFu$OtzyI4a&j2y<=#3X`i)ht<1$SQ?v|K)v>4%Q?(2gFk@;W$Or?Se8pm5I!^YWo*2+RMMa&7vn{iusN>m~~p6m;0H&80xAm$I@lLf#u7k z<%+%0U-Ma_=?2MlXms-GPmwh>Y2zj{R+d}#66d}O_K-Wo({l^`0~tPuG);SQ%kUTZ zT{4D+g0P26uoGMaADrsJw>h+;wyPzndoZ503v*PwxX_n4G(%6J%~=7K;5(8MRkVxGY#MO5s21y5TOfHP zdcOj4=`FWgFJDKA*>bm<=Dm*7vX{-$2_UVDK2h7{K~ufI@N`C_cQ#HY(*6F#1sB<^ zZ$^y0x5b8(Pc$dxn9$hhaS7E9bCBHHSPDc>bZI@YD`-sFJ@eQy>2H>n=LU6F`O?Af zZx7f+E%$A%bVU2%k<{Ys8y9)NrkRek_QiR0@U>O@|4j!)=;8Sucm7oK;0fQ2N84=l z*48<`Ni?+S5(CUidndj;_PO`{Lh#g&IA5VBdHWRy0yM`VF;fNJQM(uTH?c+WCm~`q32TE*FxTsCiIJzs0 zqOF2*I=tr}XN{A7Pid#-w&P^{qIu8QwIX{~=+@&7GgN-|*y^23390IHV{ z)kPJM@mgzg++2)YXLPEtOJHB)vcC$;D6G4{LzYPa%0LHznR)ab!HjF~aNuFcH(n_q zaB^Wfj(~1|a05uQ9>%r~&NYTw?4b*Vnh(+USHUx#-jse97rK@olw+(74TJeC3G_sg zzzWu+?)P1$Y+Qf#=`yNevBuQ!NcaiSGEks0G*ZXJI~%ulhiQ-0Vb>~29lVK4dcU3% zS0iJ(gr0O3YB2lx*#xqRmTjfXNPXEh%Aom%zjgaVs~L3VialkD6u%=jmD1#FUej(&$iR1f6u}xT_7E(?STUnu=ps6?}cdY6WZEnNC(MK90AfJn_Vsj z8R(hmVxUFZv$kGPe);SS{UHjGrJz0m?=mBwNH+yK@P(q?U8yj)T6ZDL!`dO6hRL2v z)>gAT)Fri9L1~GhVfWczQLFm$OI&a%YVVkE`Q)|Vt)?QE?5*wRXJ_0duBndC9CT?u zK~3R4J;#xh!e^a4|6n&MpVHH2OM35^|0v;WHapAl=3*yq%lzI#H55qpUce|3efp!n zO07jz^x~s;YKdvQJ!a|x4i_De-;|#)+7E190o{xL1>R&Rgyi=He$5Cyo**1`0ei3r zb7~D9#&VAw_U-|>55Rl!tg-3y!E~JzWe(Fx^!R$#!Z8^@jn>Rp0_ z3711a<21f>Ow#ZbVgBPm_`}(Y*S?B=dtmLA`kZvWXclz~+J4U>Y{on|Y5im)4ewY$ ze)zAtf=ESo(L8`@0+h)>(K~{`z9@JJfAvSe%0)sfx?i^A@@tp;X){FcA~;rWawrpc zDANapRctLCPNyu39WheOs9GZGD`Mwd$R5f^5j=`hWvl|@4uapO_+Mwz;BH*tqm3~u zUZ7TQZegl$mVBGEr&VM4v8ztg#!v5*^QbHPbCsYe(G2phmiyJCA$AU>Lo=coPqjT% zbZ3siRYgv4l~A$6!uii{{TPCRSh3=d!f?9>wXc}5qmO!U$&Ix0ypKofo4L9VpzM)j zl4>aoWuC~ZGw?yp*O~n-NM`;Sf-=5>27;YO#Tn>c$#^nmI&kMzh%gcVsbm2!Kitip zS~rbB^h7|FG3~oi=xU!eaBiI{0XH2#TrUrGE`Kki%(3ANNP=OhG@fVU>DDc3oX$`y z4ooT9g_Yc>UWosV5^y%x+T6Xccu3;3 z#`V1A#DU;#^0e`q6Q<6QWZ8*c)-z7{8t}3mTR>#uFGcYKidibmkt_ZzXa&udwGNRw zo-k2j{|NuygN`p=a065h2!hB`d=!*m6avUR5vek=L8bIHBUd5 ztP+c0&^wCiAlsgdJ#lbdOSfd_R&&LSt#Sh@kGka^!7E$MY$tY{Bd4oA)31$;Ri%>UO1UP_q zaBMMLUDrTI;iy97AEl}9_k+ZQbx1)ig*Ruvw>*{-`aw{L^ZRKFIj4R`y`4KdFYSJn zo6=&;z1knYQz&IBC`pSN*tj#v%ykzNc8xywe9Pl`)d znZ3lm=JIXZYNeq2{C{3ZYfSDLu_97Ru-~j0Blh6UQbhQ&()SsE?XojhuPr*U1D3qh z0>9`Dp_Zo&gw&Ae({GrOE?wB@nAaPqoeq_7+Mad- zx1}tfOta5N(F$O(q`0&=JDKl&6lb!NYg_B4*e7+T&oTPluOcpspUnAdyEf0EdVKp6 zn~kz-PdppA3LWyDg>{VFgcoO?c;Pb6rZ7|EyM;g7< z^DT>U?WYtFkHyIemjP--#f0~OYZg6y#-i5hG@;_fb)xg_**9x|NcGPdy&^6Q1L-Bw zx`vjsiC}Cuh{Eq#Ud2S?6QQpk^v0gSl8fLRVvXntgQ?1gWPBb{xQG5p+WHK%_t0EN z6kMwPhr5%{D9xIZq$;UkS*91e!8skgHy-`sZFT5lS3lQ-aVrk6nfQHg8?n!kC$$S9AM+Op__ZIhp>{SUiI zU4?#H_g!A%YrV_TTqManAKrU;M^r_>K${BspZcl)eH*7o5*;l!EsLD4K1EBK^mz8~ zwni_@*GItT>hkp%aESC*HA2>)EzNKEH{7-g`|u!Lle@4#8I=onEdm?l5@LvCFI9Jd z(yS>5z-$)V^majmf@(zts?|FFHn%^nD2Q2P(G@BKV6H3P}HkmyjNsFWc7jb90<8%!b zM>TGXy}}8EY0G{WXV@~3car>28h!tByNWuFw|JW&P8YLYVHYlcY_QY&)qYv_06U)h zM*3Hkzjop(9ER|py~0xVFY%~jUeEBEOaJ)~@ie-4=74d$3hcZ(ckl+B@vp3`WT_yc zmAP)220tzC^}N;*yIr)1kp{D(PK{_8&>Zx05jY((v2PvXy!E29s41}>r3N5EJwyz? z3#6(yP#Qx>zjVWUzBd}0{C6{LqjXjDHC=D7#;|!#{}!amyl6r5Qy|M{zT(|A z?3x)zyxQ4q`Qo2Zy&DyWH{ItWqBL-rInEz!3yex@SOqta7w-DSL#OP>HPvveC4%}4zC1m-hyEO- z0V*ym9iq;^%wy`%yKChQ%!BWOKIt*{_i-1xOfgaU2O+bu%BzIx_eTcUdzMvQyDSP# zzm7-5vs}dsU%Mz2j`4|o`^S}&4iC5BA2oy?#+|(yLx0vWES(k0Q!&2uHCcO|M(d$V zu5p#qocaCRv&wBGaRtm{kJ_%N!;}M5Np)Am(X0K%)z#I&5MzSf=w-z9*>p5c@DKz8 zW{NLd{r|s1#}2w_x||F>4KY6I_a4fa=Iy9ALN42<9@G)gI?d+@;4Fp1=CuxpyE4LT z5lIcb&%05#x&}#cP1iSn`tAz)E`6u4CQ*)AnrHkrmdNm=7CoqR9;c=X-w-T^MT(Ax zR-X5hXzo6gq`GrkHi#yA$bz%TrBU@~%j3V}+oYFmjaJ@{8POs%!8apslQR3sQx+*P z9I@BfsjZ(#o23#V`hcKEh!oi~t#S#qGk@Bq+oyObPtWYQOWB>+`SxXTq)fW-(QWgP zR4a^3Z|@dre-MTLRf{hwIatQW6f?c{io7LxLv0^C{hzi4^xmuj5p3-~S~b9=yMj!{ zb>NdXs_N9$O?yE*e8(7JM*WMf)}09G#Oyw(D;24*Jto2QL_~WK5c&i>Gs+n#sM+4+ z??|lKA-Y|#8d~{M{4b{4L`iY|Qlw{hHl2RWnN!XoH8A7Xo8mB}Yw&@g0$cj_r9e?y zTzPY0jAo;%`)|9K7)OdW&96XKpHkUMPA96*F*aE*qH^kk-Gt~Ij>*JFvA{CiL8V4VykN9NMFcba0mioTAmvo7Y*nulgn0Y>*}=@mUqfl9Ka8UB zKkTob`&63m=Z{(%Ax)=6Fq+_#Jao`KK@yCeQo*7irKF1j9HV7^D6eAM(WDJj;> zfE1Azl|vW*+8L4kr@CGb4%um)()unY--eMfQFjDNg?}Uq*Qjo-Q#RLA^1K?+!(f>j zQGKse`ftIiIzDL>O|iPD*ty*8BkNIzabSO zXI;}#VjqGlzA*Lyi&g0AxOCb-PrJ2&I$gvVr`{?y8S}dC@1>j<0i{pQ2-McX{Pf0} zb&Zd6JKR3%QwT9PpFX3;@bvTZXgvyd_~mo#)rW+!lLM12RslKPnL9@(%4mjwLjmma zo8#)~z{0PKE&{nV-$a)DGI&w-?d~098>2Nigkw*5I6ptmr0MCgF8N1T+P`_yyH6W2 zm#!cPVb8m%ShZ=OCOG6!$!oI#x0UyI8vNnc`-hK@{>2VQaM{I2ZQDkO#x3Q$%A?=U z7A8V}?UAZ>lD4nJBKl&ly9^l>sMlnhva^yOgzMO$W7?ddTE^4a>KaOF+GoErJ4;bVkl!9(MUp|k!+FU6dc z|Bs}raEtnTx|DQxcSwVDE{b$_x6&zHF5Mxmq;z+Ku!MBO7m${c?pk2k&&%(5|Ac#= zxifRloH^I+QbDA?I}W2QC_Ya#sKg$+K^kh2;4?M<-YMl2){zTI|4UmbZ9O+IzO6&| zc5h&Apf+`y-)YgXdnu$KFs8<}M)b_Ge38>IZ5j&Fui4DE0D=d{acU1HvfPrzfL~Xh zxn0!%1JnVE}~0{m8{SD4_xXpldkiQE@iR7dm_vpxbJ`2+|tbyqv*WvG~P zCN}DR*CtO^X``=j^qc)Z9qC(Z=5*;40>2j=) zP#>UYgH2C}nKiE6ps#^xcQxPn)TUFN|5vTVN`MP(I}d7trsCV|-Sh`|dur`a zwjY`RQX>~JC^;M21yniUF z6{kSb=XX)2hcZy2&xAdm%)Wk z_4Pm`K>tG52_Kmb2ctbJNGn595OdRuG{~P)vl12W*~X0PaB%o!HAi!D?SD?%GI*kL zzYnN%eCbkwN<}d2zGIkQQGENI)x3g@E)v3r|8_7q16 z`l#TaeP8H;LJIz=)=UMT(vAPKFmksJOub_XloQ%~jm;|`Nqkr9@jG)&)t{S(${#WN z^NBQ8lG8Ydj(y7Rx&QWJPKZFys*s>V_t74I$u)J|2HgwRvASHxSn(6Ve`^F_gq;NM z0;#agw&5yYA7i zfuvdB`&&v-U=G%O@)2P5jFzN5w2JZ#t0PoIt^w!BOqnSXmo|_jWwlY|>xaaF zz9M63(@5ru+A~Q3Y?u*m(Zn*ef=n5WH~xo5wzcX^&m|1Nm3mGWpcdBzz4x zN(bIUOn&_@clss)*#&Fb3BcD84vGRg3*HEyy@KfbN3HQvSiClT|9Xp)Xn!H?e|nw6 z{-@;YIUpF$bPMu6aFD6tb>?mdXKFpOMOYlG(0tlZ<~<)E+Km{rtqCM3&}c-E<6h|~ z{Yvh*2`eP~c~oXxQoNan{H|Yp-va7DOZhg4uye8GaUiN(v;ytx!W~-WjW3mr610$s zl-{^C6(Vi2GFiVTG7?$rAF=4THbDqC#kqg<#*yLFDXDwpZ}?|AmHfQ;>q{6=MlkA6MtOaQ{W$7S>%X@CkhV3Pw&PP_(T!e8#_ z{`}$B{@%0pBkrscU{VEisE*j0!I`V@Mw9MIxYZmM(>IvIqyhjWMxCXf%Bf^);WP!@`(SDPGle4aTU}6 zCpwwr-2N4mzX*_r5r6u`pdyiSnY;ozRj|Fs`}i@n_y}Qq0^^Z#e&`mDLNhTWN@Laa zb^BtNp~CTl0Q2JJ&(DXvM{WW_A3_gHV14;be=myP#XX|(Z#^}h(3`Yz(^5xS1hO{w zS$}X{-*Kxfq1=Z^!-h6HcSSvs-y23!O!P*iNkxW53LA6%?CURZ{j_DNW6`I6M)Zsk z#FJG)Dn<>G`@3bq7@bU+y1~-464aUEPIT#ztL#$+-yCn+BW2UJTabe*9LT#h!C3 zUj;)62WP^GT4hxvL;kz9$SL|a=WHS5cwL|eTO~$~?2O!tHq30rg zk3hyeaQ0l%3EdN%rmPEoQ7*)u2{ZY#w z4{1dOjh!(mW|DnTAwzf4uW95~%WB-g{yfd?AwZPtvS15>2~*rK=iiX^h)j9b?3aRa z2CI`B=oGwMkkzfK7Gt8a5#1!4y6Y#-RKlqz{po^U0x8w8r}H zY@?B`xacjK$-5IqKf)nH3oT9a@6%h?T{b&P*XKn};aMg;PVb;LqlRb9OH{X24u)Tq zVBVHL@zc_)_0&ePztX{j(4&hJ8yq7@IBe1x$w-9$;c7Rxp$l9XhW9FdxjQ;}n4#M~ zxa4Mz&k~y1soG>*uLhDQmaZ&JK5>sA!tP*flp5z6Zp?`j5Ewm1nBD}abu~N8qCe_B z1Nh;f3WVO5!NbMg8*n-40D-b9FTAnFHUe5DI*WSnK?o`kyY4esXmNi^dM!A*Lf!rS zQWW&7;@^h+*9}k4op|cF6iNd;!p~8U@39lhx~}L$tlAp&525Uv6XzddmB&e2FV6-Wp)-G^f zOVBDhcry`h+Nzl8XB3Efa+~)AHj^ja6n`15S*X`ig^gG|E_m4m%|Pm}$vwtSoKZC6MD ze>swHOwZTLKcpPgy4$~w?|t%gyTp?j5WjX&!_*{{oQx7~@6F9mx^@){QKE}eUSd{J zWsua6{i1g>hqG+{X$Sv)d)3VQ&8jarow2bGY&v{tSBL#U&f&iw`iY4z*v2so0#O z3TFK`nzc>sWpuKjSWFKRR~CAx7GN`cu6IjNi4UD&r36@Zi~3w?2@h$ONA7TF!J6q} z)I~wQ%NwV!zyapcI@}=1d>ELd|4RGuy9fY=EWdmaCjuw_bl8Pi)L}m2K3e$xD!~MV zAGZntS9I3ay8=lC9u1PGt*+K3Kr(}qqZD4we0fv52SS1{{m-B7)}0l;a1 zJ-B@~Lg#anFB9#|TTKnn_!5xbfW2;AbAgz&tOb7=_@dCy9I{SHw+RS>Ua#J&(I_ye z`?%%9xU~d!JOq`(J-fN&XqAN&&7Leid3wIRw??97(Rt8?Gi4vPUzgBf9MXdws2?j5 z^2dS&J!f$W5f2y;nn%Xin<8;pY@Ivq{1(@CYQiT*@~BB z%y@6TgO6LPrZ!E)FWd2R2Is0d4V9KewDJOQeomLhRMJ4fZARc_DCF7i6w4=KVFt@c zHm^_`Lh&l!0!Fye7q1eQFaanG4ZS?p^NBbg)kupS7u%^CrlXU+CEkCgm9qyyau@{? zpLk!@qqBh3M}>RW7rY_WK-?mnf2>ei6mE%XLP-53r6StHw021C=GOzs~RBhHl*x)a+K?|ja5uy;{ZkkN)6VL_&LOp12c$-({b%i)y)e&HfG36~2jm@mh2 z(VN#vme!>Jh;aLBz;aYM=>6DkUk$6iQVG7cK)x>Ut9I&!FQ~m_O^`R=f^Y=uc0~CV zv*tK{bEFhHJhtzmay&7K7U_Y;6x9#5YzCjr#YcPaCBDA)= z_j9eZA5{`mQ`g4zsR#Q3fM-c%?SjpOlYjttd&0WiG`I{L6}WFPbwx@7Wg7)YvMVN9 zw5L@*1=x1N=;pw!o;5At?0Udk2T*~rY{I~_!Z&n?SRd?K@R8qLWo$@^{I=On^jWJ7 z|C!uP!tk->J>LQ~BbOLOj%#)dQ5M(0^*`4pJV^=*_0<$Miqy*e^tcpu@g9Pvd;0(a zVr0oHiMcZQR5Td1?PO!aze60*uYwbj8YNsLoRLO6(EH&0^@He<(0=yqwdIK$$u5;! z+`KwwLz5A(6p(d-;`9#&f`FH!LGN3K+T8`K2<5qf*h#j9T}#`ydl2zGK=Q>-U3iy& z%-Ejor0fJd|0(@&yp_lKPHh|XWd<)gKG3Bvfiq##At?mM7uyq@?!|>077bM9aJg3U z49$~$PE~w<%P8jeRSl`|3)(bRC7Lhpq;;%lSv6po^@F#)f{8dqz3<6_g#dV@^mrc(Rr&}{er z0$~gXw>?73Pz)?6TSNO6O;VQ9uKA4MuzjA4;`?`ej;0TaFR8Gc;ucDFK^U*!=S`KkwVdMx)L@?q zwM}LM2S01(YADWZ_jaaO-_{jXRfuVe)vkBDLVR`zh$cz>TbB^r`)FKx3spt-^!Tp7 z?q9U8sJ@#*A`zDwi($CFL1{{$w6qHx1Of3cK48bA?iIjv*nw6EY|99!RBJ0ig`@D7 z0Q)Lty~_@b=0|$>OFN)xF^|78{MKpL*Y`eRiV?rgHLp)_V@G}84&{Wugc7>Xku*8d?PT{(Rp)(%vh5CXf#u-+0Z?Coyv6AR|JPb za6HIeG#f=FkGfGGg{W?PCHM{J73fb!q?DLGjgLh?$1n(Gg2;xq-z^u1z&s|u^=dTt z5fFe>)gbE5fc2PB!!l-Evw)8k-+&&~_6CZFjbewVPZ% zb38HE{qGNBen73^e}h$7|zxF5v2E&eVr|V)9DOBMAq#osM z8I|r*bpV!ybFaPyN{n|}cKR*Gz>C)wpOUGWo-|6~;jAr}z9(R_1;CM?){wcep{)B6 zFBxkm6E{?bXu3aU0`=3?es<^7-i!8$d^u*yzYDXX+ZopzL&0pWwx?_Q1FTOMZEal7JX$p zT>O8!9ONfnYHIv+O1Z9B(clkk8+T6>>0$1nYK6d?2}DHVzU9ao^q2&Cv(y{9u~@{j zp1;#?)_A);#C_-y>*?7A^Os6w-!&mbunKauGB^FVEcMX2=?#pS+ds^xB3|eSD}5?^7EV3WXn(pz2P9*3f-xr=;=)3Awa88 zygE0USMb}O$@;IUmGzuClJSzs?>8{n8{p`~y6RP|*BF*zDfG#tEFE}q+J_iBHp>D^ zm@jtrMLFHKkONI9`(N2gfE&qK`2}wc1HL~*|teGS=w>_gRQ_+8tPnJkaqZ?W9Qg?O@y6F}Qh=gDj4BuL` zP2YhuBH(1F%4Sa>wT>V=&7W89IRH9LSBBH!_VMo4!}iS-Z?$dOH}#*~f|;;R>wT*D z->dLK#72<1X<{hBl=8)qr);)Ptv zbAaxG*(C4^uY@LxABJ+~x(A1K*t*wiKKsx7%xg!N=$P!Ho^Q#J_^65UCC5S#>&wg@ zL=$DgI1$*syp_@kj)FOjs0^_W>~saT-sr)i2BHwE{yGvgR>O(N-#i{K1Mgny{{zUi zJ2QUmDtGfkXA1klqZO#3M9d#c6c5T5PFAK`=BKs###ufzkQ43aOlcj*@?73_oHr7b zP%({kvf$m=y5b$ur??DyXm$IKj-e7mg?@ySGr| z=?!}>6!J2us4$i$9+GSOA-uWL(@f$P_*_%W2EEAW{i!rnUm}N}NJ}PE6=7e6wf@%Q zaXD@4IQYRqJqNn=`&)cCCM_FBO?L`n8@f3L{%;SYZSLzQ*3)xI>|-X(^IaVwc8FU+ePLTO@g!ehLd}!aO?KP9 zDr1qI2C8%)um)|m_cnVtf~xSO3ng~b>V>f|!)v( zN|>-N&o?S&SOFS%K6k#+?eVsholcVj8dk$h4rZ`)@l1oaXwnpUAH1-n`fcp9KWD^E z^bY^qMgx_K%862!gqhi=fXv1KSXrD@*DCMj@^u0H0$=;5!x3m>7R+&1&`n0>_|+7^ zs^uP^NlQ>gNeJBOIuL_JlkJnxeDzrC^Y}>Vtbjy9m0L7iLr6*)<@O#N7X7cPFs7Mo zF}Dd5zR`Q03K}FWbJ?%-00$TOMu&;t-`eq9^L4B*k18*wxs4BP9~y77O@id!4kptQ z7V|SJq*+R}p#qEBYwH~A;COtDi;*Q3^4TuY=$+G_(J_khEa@Qy0;c-@p=py6yyXHG zOID8}|Lj|EDXUbgF5Oaqu9Fd1&y&U#_-}hc1{~!4AHaCM%4L~uEZIv$Zz&5KdAKv* ztT23c^Kx_YeDcFgfSB1OMrlHwVQ-Fhyt?d-c83A(yLP#F-Tlh=Np9Y97th~3&iD4& z7OW|{R^ufB^Ph&tbNL}ls`VKY@|4gE66SG?1LAzM>x{I9PzS^F9rqUZ1-|5|+7Vmc z$2l`Gc=+~1@H4YvvQ9W~@7}fL87@p%qYRIo!bi`H{HggvUK!PQwxeeJ3gp_5%-;9I zj=?Zzzu?Gk0%HG)eXh5Pb!kXeS%DrXL=Jf0=rap!x=+~UBxc4&g@SVdMKrU`O><|d z>91NqK=ibM<$DFqn$VC%f{~kZVr=4R1UynK8da0v^4|9}wWczkzI18M+)}GhAnbKU z;ik3p&TcRkeo+%q`ZB5pOiH|2cCe2iYX{~*4j_NMY&K>u2J=Hpl|F6iYGxdqfx$0_VER=6L)g! zeD+Z)#u}lZ{n|Y)OCw!LC!>y|;-^v!y$cE>;u<9`5`txMIk)WJhmJ{E>p`+4Cm1?FqT2yrm0G`>pxc62d}p;Ie=1 zU?S+5v_5B`Mql`^6yo>9kn$B8qYqzXdSgLDZ!&4*nomGW*G@ok+&YO zg}9N+nbrRGEeNE0nT;XE$rWN|edvWCUNMhGTk&q2iJi9rBw1OJ7QoI@R?@zT%v#Xz zmv@MTthe%L*`bj-2C8_f%{*wui1nXEXh)rdfNr=^X``3Eo2H9>pznxIL2@3WPCCa& z6t+zh=yS|vkWQfRB;|sl>8GZTct$@k!EOYZkHGtjpnTIrJtQs{caQv>HYnHcn`l%{ zeBBg{F+qpyGU+@gQ~3s^2I@hbMLh`6cq5TvebZ@Cksb@l|N z4$KBR_*wo#vtH?gX{>w_U|VVp=e3;s2`hHDcq~`B*7)R{1#oQW#9)x%FOPuE>`;Jp zu&HXjC3iHvEZErkupur+xPK`2aHhIWENf7z3jHBQ=4e}+BMp7afntJ?ktxNpbt)<9 za*N5%;hX*9KE&S8ei^}#qjqq9pPs0L-|2C(2@Si?q!6^ViR{>b3%rMX^{a4ch~jUe zyo#c>g<6Ou^cfWq3y0{90TKtmFr3?Y3vi=?Ezd9GEw5PK6=OvAqiZvG%u3K4WFm%T z_n9J@v=Uj8gw%X)oh<1@tl7K)spDNh1mHqdHToH)Tn~m3W*mkbXJ>b>R84+`yWPiO zlX1vLJ(@>6oH6kAyY*%~J$(#&x1nn*VRH`H0!N-&eJ_w%<%OqhqeZws=&Nx7x#F8X z(@pw95&ZN_)}$M2tu#;~$C+Rk%c+%ZFQ)!@-Nj!2sT8)PPX0DdAydmjHq;{8Vt)_P z(64O!fuS^V^kb;96o~fsAR(@=F|EOVpHO_x<<#@@uI+-qBK*OQi<8dta)xuvFdXn@ z0R#=b5#X#t%{~BRrW%Z6wf)2@Y^Z!=dMS}?IE&e!Pu_Z5n>pC>q596ZX!9ER*wMeB zYIQy!?|PZ;q(&vYcW5lT68dN{M9E0eJq{|sa3F3ehlyzH zR$V1qwb8=+J5H`n9(*4p=fABBEoVnt*9^@vjP$>=S9KpbG>j`TI`3f?BRn_speyWn z7Gh5iY#dNhY8_{uzs?n3_rz%swB!*~t?XBZPx+BD>diBp6jx2P3N&@-yosj+!QA&< z-=`1ej?o$)`Ms?TI>9s*hFTo5PIZIWP zrQVH*j$J%LF)Um9z~&8iiIxv|tl6Kbtq60ST%ta(xq@{wK~v8`L6gSO8$MV9z|^6) z{ABI#!tVf9h|pf*CR!H+HsL-)@W~hSsF6LM&^?<*0=1*C-V-ej2nu*oPw3K9YBxsb z)2WdP3IguJahm9qe?&E|F6;^pN@+`lM$2S6#jp3R;5{e~Je?n!3!J6H9;%KPDYdkE zTEfz4HaXUh{`-u?QaM>EpxCQn?uQ^}%IvP6EkyDJ?WPl%Dz6OGfK$M%^o#l7de;Tw z2v9N@uaQ9=&ZaHnjewfZ#-K}NkLwH?LKd04zLV!#(%k8idIz5x7TlLjAG03SFx4e? z2k;uzN=GnM8A#EQ;cPLgb!VuWBMp&bqY3$(Et~^z26;ccIwnQk6y)KGQ!ZwlkC)^E zdFBE@HP!he9Xs&*bHH`-5<5_9!~zU5e6+_+uStoL(RuLYhU0V+i1BBrj>3LBtICOI&q2hS*NG;-;?{yiYE_& z?F_wtI=f6fzqrr)Xf_-L=8A5`tt~S#n(=kEw@?MN2CWo>n=J%VcBmWZ_1LVWh-d4Y z!o&;O2SN1HuMPoWR+;rnsaPIu=2)s;b=}M_O{VoUhk-9e`X^~OK3%zd`NN4G&XpVN z2AEE-xj^J5(h!Q4QAn>g(pk!CHRJkejH^NDV`CRIH;6~H>?M#VLZFcNt1uaz@B3(x z9NEg1-p1?Hk1f4e{XT$4*&jh@bWWu^KO9@px(L=IjM{7@~2KykG%S;B@)gLWry|X z0Y4IN#LOTD(S$_QJ`&WHkuHvx6-L3o5NjyZ%lGabV)d6X$SUEsAkK|N%Hj{Vzu+FG z^~90-`plb<+#4%7iJ)5avJ7F{7;i`?rb@1k)nP0PDs zjgb@jo&%wc=~+9Empt|dV%G&rrNTj^CSp9&)-rA!#MjFB|jXpXJAtZ90RGh{`r8a2PT zpL=lpo*OZ#Xfpb*EYpQ&VU6uqeuM@;o0ni{$$fM2aKP|Kk?2{y*aa3j<62I>_!H}aJ&w2;B2R#>M#0wV)(GwP78TmGczx6G#mwvUuq$|-MCXK{9 z4Pfk|ey*7cyd~poDPb-D7EtZbKNnM?J2ZGqfjd7QibC2+w-2m=w(lfE2pX01!Rwx!hb>97Za#F571f_< zXSF@->@ziiEI(rESu+V$R=3DcbXAOghY*Yf^&xo6#g%3zy&LH)i35wAGd0=?QeI8}zYmsg3mjpCrvjOdRIx7?8qxj5t^5lr&}Cd2-Zs!usv!e}=}C7LP_9{e#a{DW^|7W6o4lg2-|Mcu_GjIY|Y zyk8H)+tO1D=z6qZpt?t=ww{aE0L=F+)LJ0ak2QMYS} zz2DovdrMj$y5np?6=;VP9R|%EDwMnp!&HpfT`_xbv5)k`D$he*DTy7y6{;VFp zdIRTYl3&&2T8nKpKa}@ZY3t{l%+!B-H6vpHkQ;CR+q|r5^99|NBQM_&$L(DXB6uS# zQBzPyE8R@}M#gQy+);Cic8B^rZ1?(V;GV1`2`=&-1xT=y+<<-<%m6EvY>(y2aEyuD zSDxvqNRO|P2H?7-CW!9!vqyHZj!X{_B+tC79U{j{(a2bep&n{DDtzsN=}uE*@k+g} zRYjJt3>VIf9VD0NqUx|7j9kaQw#$lYvh*>oWsSsbY`I{zx~w~;rYVi+XE+umb#N## zMWJlQ=Xg5fDk!jh@b^Ly1F&(axH_V8!D2vm7Yw<1DbMgmsV?RlZCzYUIDxJN@$Ehx z=)_1{znoT0k+ia;E680p1NW@ChS>T7w@*1`zuEC)zmf@OxZbZs#D-McX>9AMvv!M( zC2TwqIQ$u1!uA4Y6U}qN1a&M<=@uTq+qSyv~)~>GF7Fd)>3qxIRU( zqS}Y-B8j^?vEoL$Fu+ zHf`bAc0N`FZ&Mg@;$30?Ox(q2GnqIg}|<0fZCABs}4cw z;u_KSbCpZu&B`t9Sis1#pBgKZeOukWYF9LV6Vf{w&y1kT@gj1H*+^)~z&d$aQeFF@ zID3W?!Kv;)ZH#hT&1F?mjPk*$-w0eq+qzuvv;erqQ5eq?RK&4C9Ep}P8*su|3fW%{ zpI#Hq2s9;f6Uuk6)y+zl9;Y|IIQ* zgDwi72#gp>=*Wjj@9X}aI6VLGgkJq}d+6n-r8rerW&Gve{^j+LgB46=6>bE5rft6X z_o#gXDB69a7n`7n0Xvy+y&j;-M4jOUi!u*Ts%W{Lzkj6bbc0=R0J>M;9@s_Bxz3u% zGz;9{V7p+X`G_Qm776(H%M|aM;^18t^+7nf__jKEuh_qAW+Pp$dkIa)DS>sSj3WlO zbz!+`MiKHqz5^3J+d1Elq{n*30E<#DD@pX-m0(KNnLK> zllfJZc4iCpl`!!BacKDu^I)dS@P}s29XdzjUoy%a zA!y|3BeNc}j8Spv!dW^}CgOgMB{5ui9`VQSSvl($;()j0&E^}z>q_d7aX*|({n@ub zHg?}~ce*=5qE`EyBvOOsRm`UvcE3JpEWB)BscUd94BY5}qCB)QKH{M#e5P>YASE%# z839!HlXwrXAt5lyU}DTn2}bV_$|Z)DSqiGBQU`8``;>gPO4VEcmq$;E5HCXTyI=dB zI4V@KAOkIG;p&aX6im3~O_FhHqNtTWK5<)^(6?1DQ8jf!(hK1|zwQ-sV8on6Up&_< zqgbn_cc;d2ptn~g!qd!5&fkjZ7X)_0B9aCSy&c&DJ}(67UC$uh-CfPRjIc1`LPt>L zl7gUZU0L~R{BlPTfzl(h4vdvV=M?G=@}!;XZKl8W;{#1C37i@oHq_%trXv8{+@Avi zVNIIr83V|{mq6QgzR;Xz>%_e^VZjS^$k6&}R5NCdo2SKJ&+BeO2rPZyY1>^8ehP;L zW)W5MI3i$iJkESL04ah|4U<95exLhax==*>J_ihN68=p}b$vMv=-SXWPOj-ihuz?8 zGk?`kj`2Pg#dWZ&A@0&yB?u8JDAonH zQqb<=Ace&buZ^{|ZtXzPN(;~Kthx1wj2p;Y*(0P+aF%Ku!llUoY-+;S;w(Sp5_i3U ziz)o}M~5K`%YxATJm8Du<~{{q7!#c+l}alWTCa| z_8}-UN+s#wn&!F z19d*sq;*StTB)%M66&Q(N7p3boMEqrfw8XPC2!we4-#L!&Ruy$QuBzm7b{E47Wg+qTOdA zP!6e5uRDDK4a(K31p>)8DX$IsbT*DHV#6N~a%QzZJJDad_@6G}5@NuczImP{!!*=Y zCld?pp4}J9x^HFOuK>wXRrdK=2d zx{z46CP^VmSLAi~;|y$*V-5Id`b}dDVta}jcSAl%9DmxZ`%loY@g7av`4kOs&x6fO z^kb>t>=LcrP$JPIyxV$T!_vkoe~KD0-N62H49oEg{vtl9*nz-m8)_|j42orQU5K2Q za$r?{Aj|$P${P1UEcu!uV)T2&#s=T#wW*D%C_Set71COnm$dX+5pCC z^EHQ^K?>h_RfZI^)IEEw+Z!4g2hpv`v5r*Y-gaW{>r+ z9UNy5R2kO%djh&o04weT73^3n^_l8}eMcHNcVm#52*p}Q7Zal7!(_}dEdEnJZd)4ZFY-3|?(Ag+L zpKn5g_q_IP$2YSe8sui{;Z?^#lD+6SUs(d0Roq+>p~u|!p^rIWFZ*X*2elo>&LQ#}s)*&9mVqa1 z{CJn`7*w?@!>BXS1`yYr{|7|FS%&#f@AJ62UjN9*9qnI#hngT&z6U+#fs$RE%7>KJ zBE)B|E+yB=sOMtGC!T3nZ~~&-`xafg(HxHjB5W%AvJ}LwlFwJ?(J7LeJcJlOa@Y~ zE`I_`#PR@`PGL?2K=)NO&6(&0W*yralv&_9`lI&;k!FMq{u@LK!f~%Pg{Hd9$R8CL z=%|3zRZ`KV0EIPTV;nTBr{`Biq>e!x>I6TL(lu`MKIg2y;AF;7S%1^wm*I@+$R>NE zi`xmaCuJkO$w0>j;z}b~t0E_x<;joFO~D-X3YG646$D;&u)%u}!s}OI1P`!yEe<^p zV^rUv^S;8%UkeCNJ4|3TE3i5$Y#Ew$I6{9og)!fTI(^wzY`ISBrE6aG4qGOVerz;0 zL~>VTX;R+U(Zz|nICG_pkm?ct_#4Z9xMhQMIEYmmp@AM#5WgEbU#rZQ-ypJD{ku znFahuk@os!BiHdIT^;=ZN>Yp{q}dmh`wOua^~0RNZbeOJeFB;Y8B1t}sboaN6k!Al zS5qjpFrg|vet-OkpNgf{uOkusU;czJ!mrqnSOKBM=bH<#lVf+_>f5UVC0}oEZ-ZrL z4G0+WaNP5;zU#8Uvf|4a_RMf%=0vM|q}NP)mYA1jkr-p#7~&oylA zq-1%U;eWh@oFtD@ca1yMNPZNCE*SUthTrCM{lZmufqRj`#a|Ads~Ic9;l^vW3>B?4 z#Hcp!?Yr;O9%NL!qGOxI;qBWw`ENH8L5N&aFjDz38<>-W+1;nyf>RTg`u zX!D{Ir2atMHZ1F}LZfC$(e3Z2AtO-p?f$-O*P>zAtfz3Z`*8T_<8{^tj8C640=lR= z31!}G`qPXpQYKhXWX}H)8R|YOkh}hc|BZ5_HtdqC5RRl8k%j@$lIGr5u5M}lV3IYC z(fQ^qle6FJeWa%JPUc&rf*QPYM*VdNDg#$pU{X54!M{?d272kPZeh=!u)o!(^vfkakj|ik`$DcPnxgOPb^O#E zO0G8WAs4TuL|I{1Xh0g?q1nI6GS){*yr%^Bco*N`=YGbYG93hkBFzlc_30SoNyIS} zZfx|tBHkZ^I$7?9Bc&pOc?lJK48th>L%Gmp>}G^v4FPOkXXbTjJ%tLNY3g~1Op|b^ zSJ+X)56hmVb>$H^__<8brhK#xSEJs62EV(Dm3$=pkgz|Die*w$z4aeR)Bvg0cr#;M zvsI7#`}wgz=&vXt7X6!k-+$oGM|CPFoNec~(y_Q~XE(5N!z^%c0pRSa1UEBx9~r*F z%L26bC0XNeW(i6YMDaj98$SRPm4(*?V8>$lU&mm3xx^=81w4?{SPm@Ku%Tx~i}y(t zYws6**UW9q>J@zG)zg4Cn5aqQ^A{27?+mid1)-<0j#dSK4P;t{{k&^1yVG>P`xkEL~uNQvTbU9|(V8fbTH5+TQy0 zwCc0u%LUa7KMTt6Lz8VNR49EGIs7Fj>myM31A}{~j2&Af^^uW{{{_@7oR!I#Xlr#a zaBxXG+X1+KCk=}Izy>*ihU9m&&v)8lkl!~qxT z*LUm97HTohx1Talts^=GeUiOkQ+QM-mTTHC4O18U`*752GTEuY5B(v}*=o7=CzFsz zHK9^)Lrss0@iPgbXbn^kaj#L?>Fco#<&v$I(>vHB-PGsbvbSLPApWm0`bPu3w{r=PN&6nC6qYAQku@^zG#Y z?uyXh^sLm4jIOJb3}3u-oIMSApB!D^+2Opd*yt`)7=2OCTo~z3MtHO<&lUOBzR|R+ zVw^;;$!RWvEu$b^jd7nAaW%b5g$N`t=Y7L>)uH&{?)UFYz9oZ5NTat5%6fkUl*Z*^ zq59|zO>c?#R-O4qot7`G#u{cCV>224yMov46qFhM7Jb<(!6?@I0Q+2)F9zRk$_Gc@ ztVCcgwON_$(|{qsL7?A6d05fhEDx+VS=yfw_oB1!1P{)|--gP0#~-U4o{tXxg;%go zW=3K32;~bCxs!#G))gL9>Y0m$vyw`PD4BveF^i+;X04QLkpv* z6jO;&-r|XT;sgRm+!2q_$P(CE9KL##P5x-c&G={;E0G%QZa`c%*3S&f@FfEo?^FBG zD&6xYHEi=Y`kl(7pj6Yk>uSt0KIqt{kD+0W&Efj!tqQ_*ld*uKNp3Vg`->d;o%c}0wZZG5KLQT)V>v(v~92M6pA8CMrw-p z-=hd@tRm0Oc!4Nz<5~uwl?4#|Qd{`yKm|L$=YtbXyO@TT?~?eib|=t{qen#6eL2Kd zeL&a6G04Uq-t6b4an-yOH-AzW7KHrujd2Gb(mLanF)@4?k+xVva zivf-ZDQW}TW$u+8a?*}BE521!J%th}nZeSR_^T{_PJ^bCJvlw7$&zG^;b+s;8%H#r z)+dPZKfN-g6Uy)8RF(Tr9o}o1ymR6&6KEcy>xoRF%)z1y>e2)sInK(TgQhS9ovV+M z&EqTt{e;vFfA4}ucG=#{__(U|-+Uq-R3?dwc_*MbiJFh0S#2c^wniiwJ3Ld=HJ}M6y<=%|Fu}Oyo16YQ|Nr%qcJJX zlgi|*!fe|w-S50+yo4MxZ&<5vqJ0)76@9V4?-K1CZ&=Rg09c_tu=9V){`xbv;v`Cc zs2IE=Y*(;&R!|N~ml^Ry<2v6nob%MOgcH~?O+++yCuBEj^?Mx!wIct%*2{b$d83~* zaQWqlvqRM+N}0XW+Ms*w;r;&sdq9N0t=Lb6wsydYil7U&tejaE9a@7D%n^&s*`y>I z8L6uT@X754zK@X}B^L8c#7#X{a5L`B%iM~sM4qN;oqxrtVpX@SqQ=jYoZR=YfTL0? zBrnK#(()^!eF6WqFWoI`@3+IJ{usgXQw@LqM~pWDk$;Av@~?jU$nu|+YofyBKkZJE z>s6}h#(y;3v-2N{1v??DLb_*jSYxj{k{vB=oW$C4&{;hvcbyOUP-SzF1usesW8`$t zuEB~CXjU|{2x6lt#1F}wuN?jcoL_eLj9$S|C|&Rr_Ov-gU-x-wh&Mm6fTLygm6=4v z0<(JsFDi^F8^&+d;MwWl*+EUaf`3q26#%=cPaWLp02&VkG>M9ChYmppYpfUw#|5gZ zH-#>z)!iq&=Y1@zk!F+F`ATGT60HBF` z^6#_bK5S@}p<-KV* zqQN{^aBk=28BY(#`cXVhk72e`X|l&gQM;o7Ih|w$Z@G$mqb~TaEF9Jk7aH#!?XVfF z%CN^2rIaS@Kfm zoU|kh$u=L8`=G%Z9Zl0s{`DAkL~Kd^#dhUiUH(T8`R`K~>E$?Q#PN&i%zrQedN@pN zM|+mq+7WK#gw4hMi2PXH0@ntYWaeH zJJa9{KzzefDx|k%}UD%lOhmDKI z-wLU7>)_)Z1NN<&BUWZvOXLDuD{P`ynBiV$h6SIkxw(%YssSIb)Qu`4i52_F5k8Ot zW~mk&1G(>Zuc#uqy)9FN)+U&c_N>e7o}3qQ^+ospmA&;T9fd@kPfm|K*?Sv+FBGjL zoaYy$5n0yg1gp#}q61H<+e(N@xlM#iW0&Aj91@$u<-ZdNSE8-MGJJj0jh~(PkH$8Q zjqd1S8ZL=%&EcV{so+@aGdLAt8*WLz<}BAwLFvbPy63ue*Z;hgQ<%|L_Kkq1HvTOr zuo@E1WO%&jOm)N%0i{^4Fd$4*IW6!7tHg@}@;eL7e&i-j(U3WmJ$T`2pWaI9TC9DyG^5-WSq; zARKGHCs)A5k)TvCKmAe2mHf=JUjWF~{V4&0w@(>Jl{5M@!e|DbH!dycyhUC9dA;rK zk)^SR{C7rIm;X9%@M~PJXvI;Gu@e7@0{`*+)LIoKk`~GV{UU1V9@8@A&^ao_KMNWQ zx~F@t-h^HANftL4V^lc#AOt4DkHA zS%gXcWCVe+5==r%Swe@#43q35RREc(GhOPBp*1SYp{`XEY?bS$D(2hBpe<=l979km&Vw z9iqV^0|LLA^l|X!vv(!`AbAP8dgsAc_xA5!dvyKmz4zX_81KDzcKy+{`}_C4I=J(G zzPAAi=~RGV0pWn^@4k3>xGofuK%0Ym`ZtdROeP}$f;9rF1S>}BgOd-Hf4a-%fAy^0 zooS+{{9k3n`QZ&PjQ_YnQIi}}3bj$Xfst-l_;(wdRh>D9j>qAODv^c}_IJhuVP9;0 zf@^f(ZDYLbG!Y|sK+1MD5vptZ#p#a8iNn+)UVZ_atxMJ(8m&~owWAcx;5=#Cd8Qh0 zaU85g@Z#b4;8X5`NDGH$v(7>c?Cy$xFqp8k@iXq#dU1E>?L??p6hO!+WIw?1D$8NT zW&PRTF4nCsbMW56I9Q~*`V0OG zCc?l6YkRUHE+MD3D*ueGfU5huW0?HsVp)*GFGszC|JZCp(24&9t<5USI%vqMVhiIU z%pmIQE9cOmno=d6RYZ4=9aa||{`hs!fqcswJa3pNd8R z0R8*71Pkfxvn4VX$4k0(`1rS1(gwo_t%T14_5w@VoaO>f}G3}o*v=`&;a1! zSXQ68B!Yfr8mz(3|7b>-7H)k+|C803Rb~7^$+kdW`5!g;A1l|Z6FXE6-{`_59MAbr z$oR!6zLxH}+$X&{IG0}G&74C=tHm)M*j6{9RYs?D&(+h$sLI`5Cc+qIBJ^>7!LUY+)WGQ_Ol;BAd-@~HKeMdA zL+o}~r>`FTeC-UC)pl@WO|!uKBYpLn0M8!v_)umPHUKb_5S}$(Ek$jybwmdZ)_^>) z9Zoou#CelW@^84y)kyN60;VxSwx@)HHU3i{f9P3?hDC2}Qvd@qisv_$aZvAYK6&)% z!y~ElL`c!o0O$<3yjh7lTI~_^e)|aT*zwQ#U^N;7%j|;$7?ni&NXPyJYr-lC1q+`e zP%kWFS&Pa`PYyWRz6b|s2;h!6)PjAbaqLcUVDFC4zCULzzAD%Y%@?bTcUy71iC?|F z{_jLj%2I3Gj3ot#)h|a&``;2D&YA0Q?yZB)Q&xDb9Uf+@7A!M3ncXzz7M$=)X(=m6D97sy9ELr#I6XR9paiw42f?QQx@XstZAt#Q{IB;h zy8OoyNJgA6{sRW_9}21u+m!Cvc~J~u@H#qj=*XARQxO_obi_~tcK2hV`_JIj608}@ z93fbi?ig}~hM|giT7JY<5u8<>Hh?*3L=z<2U+^we2{?-Ss-VE~Y`J;Ndke;0fsgp) zrAd6L$lS+()X)F$6LL7a%5fRgN~VBqc?B0_Cs`L@R!fc5O2D_I=<3`()Fw12kt_T-nlnP&-{Gs@VU#%8J`!LYUqvka<660WQ`T+EcKD8W+Q@&o5q?!~@z zV!yV(fA8MCub4mh;9!Mi-Tu-E{`&Q^+F8yXJwKRE7y1X$z@+MGdH6J~0ctFnH0=2s z7BDNM;OYW&Pfr2BEL=$*1^ctE(illw>@7olmeLet7>xPocP zLN>Pw3Lj1DkmoSKOsEmDEQQ8`iADw7diVoLo=PK5-DtFWB3Zq^>%&f;5_x3L-rcty z&T(4WQj+~y?!vIN;Gx?yyTbn012}7C+gn>+m6p_Msk1Uy|D?eJXs?Vm>5k71C+^y( zt?6l{!QxwugOvwYI%mmZxc@l@!~COxW(f{oF4Ecq zyyNu_A{r%F`ZLbuS3t0aJpYF~x!0RVGmiWlKK?Dqe^2+EGvZJ^3jc}73yBLM`$4cT zb23_OkUmd5mOOQP*I_2m~vkk!Vn!Ek-h%6`#R8 ztk+lEkwnkOpB&Mu!e9fIEh{$)XG>>B3M^Mcjav;gXDuH2W`arA5sR~W(Ass z$xwW;EG?ljtSu*f_QcN2ThPCy|bCQ6+0s~Im)pna=DedV(W=NJbGZQaVrf18Ogssw8sF{O%+@tIs% z{sS;v{`>SeT(7>ld%HAaay0%!ySk&en-rs@7pumaNvP6PZ4UibXV7h^F+B@#}KF_ghC2letjM6)UZh z+KQQG3T6-X=2dt#v2ps_-Dk%Yo9~BFnEa=182^bP-M}(ur}19G(j9V2Z|RVjTOjAqd3;M~YY(TT7#7#x z$KO?1)iBJ_&yZuG;iZ(kS<6E=lXD^;XD?%@9WjVyPI`NvX*%J+RbNmC9)|HK#gl zuC!SfvAJsp9;PHi_*Ghq5{uASGj!E~nw>BWgm2h(#K1|=ek?>Y;Mfj*j3EE2@}GmF zHjshxA6`O696@ZE{{$K@RA^M$X_PGLVH|Bo_HpZz96H+d21JiZqaZqZ;00Y8oM4Ts zM{Y(A{>AkmJ z6~5f0!lF#^Vh5}*-ufSv?>T?RY9=HS#|;VD(k`dR-z|GNn%G255cU$0t}f z?hr%A2^J6CfM^8-%Z6(KM;Wg%EK86xUE);|tUuX1mljv5AdXv1650_RaN%MkqnJTR z#wQoVg(y0RAQCQDa519zVC0Ir5JXTA^nxg}bnV8icP01{T)TEFei6H?>*SY8<;jVbF4Z}8e_f4mH^c0&CemgSW>WG_5>{1R-NY-um)?( z9b?S#1M09~ZBLK#-#C83#e%hXV!>im$+-zfMP+EVE+K^rzxrDND<6h+A-wt@ur6xB zT0>atD&|~fO=q23B}o-gbzW2fM|!?zw}&R9D-T!CAHq*+!Ad?pMxYQ}`(lu=T+1?8jlms~;^``?}it922gm|@ft z#}EtF7WLWE*rOEZ?f`2PLSRKKO+#6)KeURJ0$n971>FB*0c+70{|{Kj-!q}^(TJr4 z)H|a)kynjeaC^*RmLV*J5lcOTt59?8)mIK-p-LaP2wS%v51-}&v|_}7ZNuj9mG>Qv zXSFHq!;pIG(fV}Yt8Wyp0$~x0MZi0Wv77~~X&{Qr$v?`11^jGLJ>Nq*tY%5E|404% zf6NtruW{R{&P$Q~3VXC;I3;epwy#+izXA{*+JFhPvN=&)$X= zBi(x^8-=Z$T;{9j{7rFJ*_w-Ix1WFY+6v8l_CoOgRh3$>utwnrjCLs=_zK+?v^jj+ z-k-KhUI@&WV&3N`-z>5U>(j)LLioxWURba^Vln@x0M_M}$`NJ`;)?xWf5|5Oe_qn9 z-19RZzur{Dk&qUu6lqn=QGY@Hi2+x%;k39L^E^cgd&af#-Q&TuhECxy9m_rUFnAW( z9PM--&vB(JSfW1w7RDUL(~)A7d{72hk5;Yr_H14&O`@jlVz$-?8t$d;;L+B*L1wHq zg>!r=tb|zOJB$;#zKo&x+1KX=S0E*HwspI%jC0>^{cNW7 zOdr}>QN4j}gFdp3f44Va?HXY1nm8$&-{;Rr&-3i`_S~*?={D)pw@oZ}QyK~|bY0uQGC;Dhs+i~>+_s0+Xq6>AOm6JC14X#D3 zWrdrl(|k7lhn2+9wMUYz2v}07i_n3Q_YT?wrInbo{4up@#|FptXX*Z6$RgUlj;@@a z+$1F`sfDwlSkYL$qkt95y{8`WpJTxSur6OXySC8(#l?NgJ=5$|?%68hJiD&{m%uj6 z^@$4nBj@ptOWqZ5$7V<*#BW8Ip_SRJe4m(5LnkNc4KZaGXLs#%2J1@lpu3}!(`FhC{zBVdyy|Lg5QkMiL!M{yVAXP;b0?Ndop7|- zQsK&9bHpnEtJdtG27%O1XD_?brxtcrcmiRdt0)7pEMQrGTM%ZC1zrJI`UdT3*krBF zez^V3(q*l}l-;$ancB@#U}V1ZPi9As{5ZG+jAEfY=^ zK95|IJ{7PY8BSh4y#-&zFs%Lsa}2MXbI{Wj#;b5AqcjcummjS-22NC^V67%T)} zso4h0k$+3V}6?17rREi245q0G30nj1_C-U4$60Q0j~Sw_u@63A-Ns zU&%Oyy7$NV{y$f6u=Wkc{$F^8ciOD~7b);hu?Tklnj|j9F)AfTaQ?bsKx*g|B$?a7 ztbbL?Esq_MD+5?|Cw2zP>pLMJ3G>y$qT^hI^seO&?GV6fHiWKpslHtFyRWwHgyiU0 z`;S-Y55V$YYqOqfp-RrnuRr7cgClp*cD2@x09c0#SXH6tZaV&-fvIL@Eqg`*J-W3A zEC}o3bd>|Fb5G#x=i4(b!+{7$WioUk6_PD96BRDPJ@Ww?OR+bU&5{PN*l-WLV%o}f zJeaC~Fd;9Wu7W_v7O;{dY;fc4TWg(!y)9U&(vGh_h%$T?Wz{OZ@#@<9&oj)Ap?`P+ zNz+gSsItiCz-~rW`?D$q#lv>b`|MngemL|BX<7JNA5ftX$QoPmg~VCJkkW_#4_Kz1 zt@M8-Nb6hfx!nItT@go-A&X_%g|pYS{*#=| zX4AvzbT+M@hqb1S4x7he{YY(_KQ{H!9g%zSWc!8plV)+PW~!RBQ?Id3>(d*LC*zB2 zGI{%}#Su_?lbOA<>aoYZ&=Y#B*3r??W9X=sF0uzJZ=Mi&#iW2Y<|H&r7l7qT5|`OZ zpSY0#EVZKL5%1*m=Fz3<$&L0pJ?;A@tb3A8^c5SU5ALk>hTclkQ@6i5Th2AM%vT$h zdv1M$6vv67S8Iz%W}Sl%fB)k$v3&H_gS$UJ_1Ll=*QeLfW7GPldFW(Xzv{2YY~q?x zU%cs}vA%e1ri*7$_NRVO&r}EXb6=nPwZ{A7%%8gc%F>kZ zwX1B8ksHNhK2jEVEe}F!&F&o~HZeN2X;}=|v^gOeVvpX%cQ4-mKl_lTWr*dTFFw4n z6aVlE#R5&d6yfAbEXq#V z4o3TxeWL`)a1kaORM{ajt*{ypcVosYYb>I2p0|YVAu}*S;7-3~c(^`bu^nvgg(w3LZrgn4_=b~r7zs`2$TUf9v z%qXK9rzZ=-iUkQb!zJHG4Le_j8DO!nJLAOH*0 zik|dZFFv#*jY5Pw*J~b@1XxWBR=DceiGOpF2IqO1<59~1tKAh^vZ#0V@Vf*TA>uWVUYU!K4G3}fVi|YKjV?~d&fyg0OtQL!b1Ptv;XsL>9KQEvHx!> z;;>1kh)s+Uv&WYChtnlzkQ4z`*w;aA9wLP^=vMCWWpajXx7>60oDg!Qg50G)Uonc% zlA^;Jxfu6~7_4$MF@QyUdlWIyHv75_)iB$>!WDewzS1J>l>0m!H60dzd8vx6PqeoQ^vT6&KEkkz8uAi=&u^xRsn8{ou17Q(6#JVeB ziBRqx#ES7E|7O6F9?495_kSpZv*H?;SnhdI5l1?nK24$3gMWlC>zQ;9UUVKhR<9FkWxMK#nuld9E+fAx)bW@NS$z$B@+#ee^5(Q6u^}S zD*~|qEKgX?qYPIlW5I&1U@97mI~&M}>0X2-zoiAaE1|}98~|gM11xqjtCt-LzoEW3 znA%HBZFn~G;uGkC+$-zfNA@|}QN|+7ee-%bq4XfiM$!3{qH4Wzc=b^-UZJzw#J9Ji zNggcdseROR)akF#LWl{HVqa&*`N6k_;3vx;z<&u|hlk~@yzb`hTY zxC@+HJlZ@{*7|o|pWD8EY=H;LWWgG$i?BeFH_jYgMJ=aoh$3%Rv|y2|p*Vst<09lu zp)0tGAUT`q6VUNy3EIRGEAmi8_^~}W$>z36Od-np8nEb_At~M|EyaSBb|y@0;f2nK zHNk=v-Ba(}{)$wis;+Q_2*C=$?WO4UU58iKetKXRq0@O7yaHg2iFX>J!D@*1keU6} z>oeyk1hEXT5cjR-t4X@iFDxf+xc`;>XhLUli|U8x0&8EfK0GSX*V)|j(X?A1F@ zzZ0CI1MeZkg4JA_TCnmR_v{oyRTS~=IgvMOH(0PxiLcPEvtaQq(3QgtXImsO=-P6> ziAWN6c~_C{QUjJYY-)Sjt9ChDWs4iYB3*czRB)EhDvkw9XYf^~tiV3a2w0UTc`PT> zg&hmJ+Q@(vlZ$5VV7!Yfc=hhXyBUR8ci`n5_;-BvbCWOO{uWj)o*^=pflvG*SuBWFrffTy+bUA@|MzyowgA$XAsG zxf@N9Cv-V>$Eh;FLYN_JM{ChTE)u#|{Nr^ca|WSm&c2}Y0|1EWpVx$CU=?D{AcYpN zn$w&fz#?%#+WeL!Stt@#`|!eewJrt=yeh}ILs=29%yxBDNDze>=uVGW@e=0{%Php% z0BaSzyzKZuTn$(zhSw9aO~>87JeW2u@XLqamn>P;GGKXA>9U!0+I-Av#@e9VGnub& z4weZkMz(A06jX*sHj8oHU8nQRiIfMqBJd)It5w?F!H2OVNP zAHPV&j97fH+UILk8vHCM^r-T`1*?Dm*TafY4uLKoR70TS*bjA{>x83(xf6h8k-n-5z}h=Jz`2R+#qBc- zp(+SNm6Pq8X6pgV2r8eT0lW$>!c+(6#$<2L16BnWS5OJgId~_V2OzGl0Shw9Zf*@) z23V+KlL%=wV5xi%eKGqjfNX%(TrC~EaeU(L=}xP6zI(bmUe%LT`_(<>8&tXqimpM! zD?+adx-}nG>j8@jfD69LDS8ZPsM28~U?pMm{N|)SC1~5yk3PB-i$yemotqDKPrkzT zpVLG!3t_qTLkfu#_%~XxqU3M0U|nKoD*?%*3Cq@sI2U!K$zR1ka(+EPrv5mRVL#U@ z`RF*q9@!F}eW*>_(BBSKUM1Z=20PiDX8(W~EWHz!2df1Rl$>wgf;9{lECP10W3A(> z2Cx9AWM>$%fXofVJ`WcO-7zh!8CZ#LQ_6x^A~Hz>XMlu)*iI@tGfU!jE_1EeD%Ql4zJ2OxryZ$ zZW$cxc`u;Cq&9;_VF@^9d-;MlsR3YBl$HMG*1T!p=Cz5&yOXq`;!r*%RvL7Wvbs-_ z1&jJ#idc87j3*?|k^ILkSp6?1-<6kvhE_*W5$DE6aLFXBiHx)%|4;yzY20Dsa)-3H zRqpZSr(b$bH|U4dosaPEwqPZ54#l3GlQ716*AoX=&g`LW0s(KQ}C|TV0jPTd?8^R0Z-HC}17uvRNVo zU_pdU(_K&iEXo!}7a>L+ELfuv9lAXCqOwz$6b&x2{hqw}3cTX>QF0KxD(m`kiNADZ zlRe{>j7AVm*lrkK5ClJ1W5GhzyfLZi55ps@{enj%ak)W37tPmuszbI>$w5MwJ#Bj55qq zK5hRXBq7$bFTZplwhH#ErQ*(-z%=IGkI5On?}k@*lM>5V#h$ee_CO*n&0}y_=+$rYkI`G|Fam0W%8wCS_>8;Ar`_xBmdGM_mbo)xCl{4HUh8I zH&~Pu`~QeCa7&qgV!7vXtiBYB8b;hH^Om?-4&uspM_k&5*Mq09Tkfs0Fx$nn^lN%Hy2^FVEI6Ig0b`k*%|Vg+?S0yM_fcg z#u(hr-NGA`VIyYr>C?(@#gutG)bVk5z~ZynPW>QNVg%!GS6qZj`Ko2wupoB^t(ofR z&y<{utD8^_SPU6dz&c;{`L{<}XwxWQRHw>wF%EOKAR8fF(VG z+^rU&n1CxPrz)EQvAPh%HyiAkfG<|I~;V`H`EwtBm?v~KK-GNMmjNqmyp#fHm za}U7+y2d#~pE8h#!Of`*M@b? zHrG{wu+Dzb3&5hYh`}Osu5vk~Y^?Gj!wI3xv4Wk2rde(u2rzaXVQKzPbip z71Zpghd5q*B{8?#WV|-QYD6G8Txm-Itu&(vVo~n6wqS98jjwKoXgfpqFrpAYA!av% zu}If2S;UDV5rr%#{{E$Y{Oe+{sF8O?(lqpn!ig(xkd{H>HnIOtOS<;|ad8L!$?wkT z@v1|)N7s@Ie*k2oa*wfwPFb>*a?k%F3zlHP((nb6nyW}MIs~vPALLG|1{1Xg?L~`F zQ=K|T6T|ndKja8D-Y6z?_x%Dg3zo=EEdB1?1h&{+@u*2S%9nRsA8Uf#X9-BS?%F*F zSas7P?#k!E@_-fdH1JGxr9WoLLaiy|hZ~D()gbVZwi0x>O!_3!Kmhh2nxfdm2S6)e zxf*u_MnhU0vVC#=xP>%&Sdh$r7?l~Oz!<`iWsvXeSClLSujO(!;PNz(rC~_+ z8`A=?$TZYQUjtPpi&!7RSIJQTX0bgDOX#k8En~xS^>Sq5>Sr*J$k#J)+F20RJM=0^ zn6R*59Ud41!jaAB!E-u1d*l%-1iBXhi)eS9njOmwTh@ZG&aO}DD@YeW+OZ=8DiyS7 z_f8+CYTz)4A!wkSu@r>aF*)cQt3e_ODuXVrWGv*U$v22iLhRFp;nX1 z1J%fERT#1K$s?f@n*ciN0^rp}Xpr4%eCxW$DssoBxH)_A#QpdQ1GL-J&ZBV=5*sig z++AzEH!V!q#0khh-9;!{brJUJGv%`T|2Y+L=>M~(taAU~n}4JO|9BF^klLl(VHczk zk>2-LTn(MxSn<~exyzLda<_hBG)!YtVRst+~O$=CY zRH74Kv53OCRINOGyYy@`pwc3SZ}gs297BNg!0xCj%2 zrSST?y$~h7-XnE4wn`tW%ukuw^sdiF| zcK3clcz)z;Z5o3`)=|uhI0^5tsXiFY_0I;Z%_KY9XE^rTxD=qQq-D_1D{&%0Mg$L)>rzR% zDdsD>KVDFiPQ`*lOX!|9r)HX~`aA-##1Gddjo#v*j0n7Lbv@&~G$%18(?nGq;ogII(>f@w<^AXmp;W8KRE$9l9VMd8W(lk_B znN}ep+C;9)NLw{vv0eql#e|oWnJskU18Dcj_#Z)9#9*~M*@=vRcq~|s-f=sx3@W@Q zJ-m02;e(mPWxGrmJ9vTEb~9Ne4)^+b4x3EIKnmovj8imisarqr+=Y-@upq3{W5eH= zQ??@GXqvw8^}=TNS=tSVU!uT+kY<>>(@YT=mH%U-2>)d7Y+4+tqA={Ck{A_7aN$B} z1S3MyD2f{wgQ8&&Tm)&sMT_FJ42+-)m%4HqL~*BUH*R$$`X~HXR-HPxo;o?XeY>VQ zGt+IqNvdwAKDskW&3$q{@t`gr@62Q1u!@D&y;6wz2cd@p`o48HOl z4_O5eKUTuRMc4-@>{g0aXu^sIU8=f4D52F@umJ8m<&qmTrqnA9KOxD(yz$0Z3RnrT z@DoaXqvbP|u!Jmo9sMr=YlsC)bn##-xySjRjyRh#X~=+Xhmz+XRs;A)V2Zej`*4+C zM!DVN_%@5Fht4-|2ljoisxp7z<*;Dc*E$6(RfYOBH)k#cOQ{LK@)1~bSc~Rzt(K+# zV;Lka(+36J2?`2yWx0eaf-$_4(8Xe5z4Dr^Z`;&?g(ZPvFUbAnJ_T-mw?OqMLo1XI z#7cH6B`r<|V6}=7SWM3muZ}v)0WLxk>C}SN4!q(!7vL(RWL_dPS^;Z-04!9j!t}fW zR>(P|;bkiyf@LEB3#ji*b9};<3h*SWk)_I&UuQWRToHf;V4-~Q6?QDlSASXXRS~dI zMDbrICM`7T8LOnNeJ38n2;d^feZfa%eVeZ;LH)2SLNZ@|-3PnF&A5yk7ojPY?4#_c zyZ9Lrsr)~&U_Iz8LK)@CqvBeT=rWPu4TkblmfB_{=R3OS1$z1bc3@$>3dqRZbUs3|2+e|JkGeWT#y_aHdW~#Dmar7C+GPN&fLD6sCx*#4 zc;IKX1XvW&&_bgmBe*_Bh`_26=&+SBfHjTV!o=(VtMscPU>OzpIoU<^x#Uk1fR%#$ zLr*3HEF{85%oo{dJcTz}=b-C7*jE;>EI1wWmGcgkYce2|GEMcXgIcgMOf_K{6rZ*@ zcjDxU=TZw+()vypxfjR^(W6k8Q}YvI#KKo>t7O5VTUI{_A!yr_aajRNMgZ2{>x7Ps zb*3XudHx^&8urgWGI%Z?5Li{%A|v=X^w2qqyOuAdOB92(zcLLeJ5^>AOgga&mKk&q zfVCBZRo^KhxE*n&)d$Hr^P0Oavp5af#m7%js{y5e48yBNtIC88D@7vPgAjKJi&uSc z`l~rZ%;OXRYrb3&Aol0a`DrgV>t&B<(W+hqz{&+-fmzK89shZdg2R&ta_<7K4t0bm zu-!h$*i1_7ndVmyN~9jZK+7%}kEn6C7i&&sfK}gkD!>&}`(ot~&67KsghZUN@)oRw zR{$2~n%DZ_K76jW^0&48DB)LR58eoTMSa*{y(0RmRGOhfD;*%;R7q>mo^JF#Tg-{H z8lj3I=Su%%^OX%I>r)aETs^eV?weS5UE(Kv-Cgj!HLKnWsLZ;Eh0zrpb=Uu;2CN~Z zBM;t!H5Ptuexn_62Amxgoqn=+{y}-0l8=8!XSF+&LQRc$(0G-5=;Yz@k^$B}U4#~& z&}0#YX3qp+g$OJMSUas(z7oS67a<0Q`j%<;%OIWYTMD`dn~Jkw;Ucs;4KB{LeYHHD z_SEBbb#Q!_=8N!&D>SNrrMhJqfO-GmAi%0`;8g@HPDqS9bwWhWkAH0b zAs6#VN>v`CO2T7EZ7l;V<*S3K4dL~yXjC{QpAaL~Rz}3CXTVCYqHn&|1#;K_|E&(z zz5uK2#VVs#xg*Z_+5`LNA6vqXPzonDUhJ6i zc7T+|Crz;a%Kjz|zslGnW3ZS+bu#!*rFh*VJ zq7~L4hg2#O&j74MKc1tO)AkU*xfX}QOC6rA*Bwf2p&MXD{ifPQr~|;*I|<3YpmIG; z7-OMPd(r$l11#D-n~j999#aSIAG~z~1?v^s)zs+olKBeW) zW3VpxLQL7qT?`hu;Vf9-h5-;USojBVG9eFG)R)B05Jdlse&GgR&>aBS3c{)ZD;McX z9UObrZRuw`qNbD66FgqiU;t7Vq3Xxua`Ir5Idd|IWlI|XSebT&MpewKKi}R=rp^Et zOmGz4e*+*U{7rYpU;t>OPeNMy?0xdkCN9lvIqeR`O66Tk9h{NWwqEO24&@iL_q0tH zicAGEg4&*tgM9DT3+)s?<_ zrChPST|~ml==RK9gkVX>RbYx?mX7sq^p$qbuW$!;C4ol+ouS-jGx#BLu9eU)-G;AO84rLiedB9|7QH7!W!vmrFYWK_{dvKWm zW6$a#=Rt)YIuITyjl(35+y{4WF<4MmHMO9mT$xcO>sZO%8?StlzphLxs(jNKHvF$k z4q@M8KtcE38GU3BfR*I)wOuVNU!|d&I(3dXstb;WLhjVTs)OA1iM#pmtF53I-@K;X zT2=%sJv4X;89miRwks6zRX-9U(d>s59n)Ky;F!u_*aS$3*k(l=lFZnsfJLU6_X)BO z+ikM~mWt>e_G<@7U4(XO;L_|+^nRY2hmfM~42i+oZui{1D79cEx<_hlKr z%XY+(%(!6Tfof!AwX8h<2wN|z-Qkc!%aAwxG{PWiLl2!oP}=4CX0Y!{?vGgvmiG@P zM**zi5XdZ86#qta7xc1v+suOXAiz~CK#hjOpQVEC0kDX}N@W@dltFgwVQ7FSjjodJ zo*qDdTg{&58iQ3o@nN|g9C&4Z8f+Ey9^(Kj2D@wGpb8Hm-Kq(4hp-MY5rS68#ka## zKv5K^WCE}}C#j$%Ht4zqtSVLs=))U&eu1TR24L~};q{iOa1n+|?zpxIbXP5L5t;+a zl~vLk(s6Zi%R<~c3sxSmTK!gzzA9F|s+9pO4aAyndj;**p%v!qc5R!}s3WW@`~J^Y z_3+2j4ev<*icj|-K7^eu6(bh0?sk?H9%lEKopt?--fes}0qfy6dmdbFiHl~ z4Iwir99-ld#^)s+08fBFR4g(-pw5D@EJ_CY3<<^>cq+M{xGlLNfR)~L0L!@v`7aaL zFk^>nm4l$9pvej*Ldh4ivk15GRXeg;4Ij;k#_;jiZ5AOuLYG0L%Y;|}mhf_W)A;({ z7E@xuGQe8=Q=lv6KcZj?6|uaYE5u-7!y<7|1;M&EEdds-aLj_$cgr|UdL19Vg(_2! zlC=XY#1RFp*DzH1;OAFHU&O=rF^hIAl%z-jS!uBZ}<5`O&?v5djnXT<0nhKoxv*<96|+^ z01F-8byd|#A;<)|*Y_H*rduhWPJO(}Fj18!9{>ycLUHE_fK@nq1T5Ik!Mpc9O?|~t zTl-cyZWhPbwscL!eYfYH|~PRX+>-E-4%0@*%nYV^>l#zOJl` z@KLs4h57&H2NrrYc>W(>T7Dq^6whW;saL)Lo7|7PRb+IFqLF*jLnpt(HDGm;U0H-g zUbv29JF^HaH;ag=X;zaa1}j%TG6ZE%^O6|suAnnYS7KTt%tW;Y5#pPVZ@zpS-@Tv;?(L?9jf^~j- zZv?D_8`kdGcOjVrSajs0VmtE5)vIkB3QdDKfv-7gzaSNKXD^q#-vXA(rE8nEYBb=+ z;p;e|L3P1V=enFf1D`BEEKPtpzH+hd_XAj*8fjeyqR|N-a>z=hRJ~aYR+o+t_=>8b zJHpDD$>N4d1T6M1Dq676BnN2+s~Pg2shFHQcSa))AjB6B>4t)!2n5>7YA|WxR|Uu!S-%1 z@QxxKJ^4Bs-AOg~O;!q48*O>GvT@Az)2;`NVsudaI$Uc3e-mAw-}uL_3%&_FN0 zo1wUXB{GJz#`BL1Vj^KxP`PA;?710t?4ffFSm%+XO74{^h9wb$6)jjcCGmALidf@5 zV3D@pGd9E;+`6RTXe#JFhXNdARSH=3YFE#=U#d>hc9AGacwK6wThsBAhB+6)r;L z$vxC`cV$JQ1&BKWo*UuPprFZ|GeZwnw*8kdD-jVMr4-#UjXZ|hy6Qb zM@O6wZtiRTk6Xv{PdRf=BJRkA`{$%o8BF$JhAj8cK@anTD~}jpb+IF}X_^(#%!D~0 z<03>Z$=?Wwyup=X5G9q+ELRoF&X^2Y6m(|}^qGVSux2q+o5>JSrNQpJ;?3!gQb`UxaXtxEuf~GM5b6@v`^FF?!eKI?o1n1F@#4dg z&_ida4`3&Mw+l zS0lYetfvv2{YAk&n0FB?ubqik^yqoEua~O4aGm4oEJId8$=N3#E~;z_Lnf~fWv>7C zlAG}Lc?VbsOJjBB^>4b`mE0eaA)qRrjE*=i*MF};V6rFvu_t1(;6=4Nl;I#L546&T zP`2TM{sy^vfMwt0W>aFmlj!vfU_}d7&pSw;;81p1$*Kh`@QPa9`B-<7iBwYxxjE1bBo$wOIj3fD#Q?%z_oHQ0@?Rg}MMNLIF8A9m*U1{G!^P#jSxR=Dei7 ze~?7N1X!*U0k0px>LUnZ`mXfhv4hyY%^k;AX7aS~t77(GCa}He7PJMrp^Mvrs_X$k z;xP;g&r&Dr&P&rpari7FypHsNP4>pQx%kGH%2Q9t1m9LDBoQ{**Z zU1-}lDTiMD^c|sB!!)MP&Hni(IG%Hr)5$igY}x35V=TX zy`^|u{Y&niF19ULne;(iH~0th@)`OA0E++|%8I5ywDjl`mn+xM74qr|Y8<-2tDYiU z#UNr&QdPh!gR$i#K^49m_VQK1vG%OjRB56uUT-&tTF?vjVl{x3{(p(}hRfGK1>OG_fVC$V;gG@u zbi~>7{4b>qMgAEDJfgR_+gNPGXcmte50Y{}6f5-5*&DZ4yZ5{_fFd+5l_2L#%Cr2z0rtXoGopLP2-$Cs;BIqyB%c6>Oy|6H|HLYPbHU zd%Xr&h2A(Jfw15uOfzQ@uuz9ru8|GJ8Nf~*M;9R&aTp!C5OHYcTXhegMn<}RQs1(* zn%LCqxk`sT1xmF~t=AL_?;A(@Pf@!2U;(}{mqS<}7RFEmP0JL_*RRO<*Q4#v~FBy4z~K+_eSEe<(DIaCf_Bc!Li3{Vc*>)%ECY znmDa;>Hg{K>=chd2zE{V^16cVy2+S;IE-cFEBpS604(Ur#bD8Z@z!lR&6EJE9Djuc z%f~sN7qIvRw^A>kBx14pTnje=SU7cw!D1%@<&}kjEBvSl9KxekVkDTg0j%I)1i5g| z+6LW6Em)rAbT{~n(->gc-l)R$>^OZp2FsOcpo2haOYUN@DrA73ii5*fUH}H)CGH;c z<`dpd_*Kz62w~;P%1SZ>sR^r=F5WtUnR%R-c`nCsHTm}yDiIyX*%s0-V#zs!_D*{*#J&Ul`+b>a;VXyPQ_F5m7^^6G#9HM{_I#CVkb8_C!7CHuPysA*{$reU0szA& zvtTj*L02v$d3PsR8fa`6bcZakV5QuxBnk3Wzqrl3@8Ztdy9f&ghQL>4!m_ZfGGOs* ze&6gStMoXtk~>w)=5KV{=sZOB90Hjb_j#*w+f4>QHC0#sDOQ|Cg<-1!EE6o|IuSd9 zIaukyGnW5I`L2ZR!dTN;uv9*YFt`YT3z~_mJaNE+_V2mnD@z<~MyM3l z-kPqIv%Kj_TO-~;-yJ1oQX_kQSV zjxIyOYp96TPmpxl?re9}Em(sL0m5*6wF7*EZ-tIHd!7Hq?r0DEBQ}<>Z2+c>2A#5G zj)wX!p!l&QMhe3)Z|=t~ZV^0@_%xOiY*FZGbopwFgs1 z(MRn!{+^Q%-dJiJ1{|Q;8G>c=qluZ&8$J$B|11C&#-*%n;aOc|lL;ZLB4E`!YhBT) zW2%|{09jGBL02XUjVfQ^B6L`si@vIo!YKZLZAmRyeh;>x;C6gz&6pJyF!nXTQh9dg z!wX;$&xeS?s)w$frmF+?8h95cZA@4`AZhC=g7`i>_UVIPzLKRY;3^_k*)vE`JNFws z{i-hn6BS&=*j}wOW2G%VTV(yo%@(j6XOp9gT&z1e83ZH1R{r|`C=u3@62>tOOXd0! zBG)vhUSGQiFGf{<;BHQCnL&MniZeJNIAlk|{Tr$AgdkmKL zBE$h8$wNpU;TeTS$-4@0g#}ARImjyJ)a$|o7ubrDqs_>igw$$a>Y6PnhvPENMPMwl ziYoE$P|B)yf5xININE6Q_in&4G8$g?G0d6gE7Nd%1XE5kjkD2|cW&-1SgJ#Zu|8uU z&=uH_lQ$XySP`ZQ0RY#F!x}=$~vF9fUy#WhVYQ)xjUnf z&m$t0xV{nU{%H)uoZ{84C{)k&k6e%cYrxuLX-F(EOUdni65fmzk4k>TKE3=9KZ^A6&yGrQ(o_9_a&_FMGMx? z>werxH}W1sz3JW6a3qVcea8T-gl3$|$I4ZBTZ)902P}3f3m0Kovj(s@H~EE~^;ET$ zlG=43(DLnAup0StUM>q2-tRYjX6iiJgS2O3~mt|0cR zXYCPmTk@(H^v6zAw*R1s=`t5#;BI2kSWa-9CQRBD=I*cm=~ouD_QQMO`p5W+M_Fa` z>+3Z5*lfANF<2K0STgAO4IObV#Hb|ao&VXhtnvKA3HB1755(<_Mu!(~m0S;w3w~LV38ue4ByQ-a`Paq98U@RB-ikKMfKBu6&5BgHTf(@KE zC(2LvdH}Eo<240G>+a5wx6UXvDIoiNi`y7c5x77~&t1 zS;|TBKZ^&f+_92I5|4Z-QwEb=F;8H@!U>6R_~LEG^JHm+u1o{l9c#WuSqWTb;(gEl zkK7#*HtozZx6OBUFK`GN9Q0^<@oCH8;?I;FLn6S&FB`i9x^ID4P}%aXDAiDkx= z5s8t7_Bg|}&-01H%FsjSQdzL}-;2-RG`z8q!1s{5c`rs1Jkcg6^E_pR{ecFj!) zV7Ecq!RqPDd<0)k@I1K! zLWt%|*A&dIRi8qy7QT9HoUatGGGTRB7-&VoD})MMIcc5WtsxXe>L(DGD~I-23jU8tXFt12nGA|J^*Wt{6X5k0a)ue2^Fv+_^MP4 zB9Q`2gKLKZ$z_3)WE6pv5dpIXK<<djE4J0a-v*Fyyt4 z!J1sD1&h$DlgZX(YmeNvE&jRut!;g0?DhecSq94-jP=IrC;t~0;Z|d?tOr<@080&6 z*+qyoB)bS>OTu}cCXlBZr$WsJ>JMfE*3#catp+?|PsKi|V5u%00!nfk8&M*PlyCc3 zH)z2cY+j=Bfv(0_vSHPN<-u3`a)eXh75*nYh%!p;_W;Y$0t;53t%kGRg_&H``3|a3 zSphBwtg;z#ejroAw|4R1p!;VnHf7h~jXxZ)5-m5iv72)4l>R6dEJ}`WRA`kGeBcju zKX6U;yZj7?7Q$CQy!1)kc*XTqdPG-~1`%l0PTLpRa0O)f^TCd=CdyY6fvcEMC2R3H ze03Id<$%TM$~Ri7(?T#7C#uJyRN14f@e?0Wa@5aM{u5!!uK;mOCj*ub71tZEY%7KU z8-O^B7<9zB%JF~u{A0D<*_yT3v+UxxZ3`HyKcqVbhqzpoBhBc&g8 z%v(wfSUy2j!20A6wjv}QjuOU_a;>RM!&3biEXayXcckt)IGl9-;I8<=nB$5VEVzno zV{81k<>4+uV=P=Qvj_OhEL?=K97@$KiztSr*@R2LqN*FmC1(-(qmz6Ag#C)63SPli z&pa_(RK=?H4oBh}OeH`Ne1*U%mP2Lv&e;U)fU#mkh&O?)6bgTGerCL$I$*i7tFZ6E z9Xv^W4=p!6XKwlG-7o;Yr*Q(I)yo&W&z8Dk+PKDmbtRsbMnbRNnQTYfho_pXa-G=l z+%Bzr{7(4=i|isEq=(M`;liD6xfh|87_8MlI#)u^hX5Km!&K!I7mOAcw1;uQ@8Lk6rAf9wx`l0R6YVET?iQQ5Xj z6&nDo-{0XN>sXSjHBir82urdE<3P^ln8UC(`Yc7b6EJ0Es$tO}5FFG_+=4|N0G1%7 zZbNwG;J{bqjA6LM(psj+qhm4O&sK5&A;GUMF`>4We?uDmc?1ts2WM z?{m>`6k!L%&RCyzgf->vc9kqhG(Z%vi|1k* z1>L`ZuiAB=5(|u&%cL?j5gB{@%GW-2QD`)fM*$1(pe7IM04SqfyHJUAUpz8l0azb0 z<}bfwgkKZfo>~&-n)q0-Xl^ubSEN%mQ#?40OMyna=QgV-q+0le*{aZ&OXq58RDjtOo{!uv>MNvCVRN+ZlrG(%*&ijltmbp0L?`sjt9>2wscKJ^rLev2`Tp|D=np? zwCTIlYJjnha8F7IMqz>!{iB_T8~;DUlxN=;-pLlMvBq$iuR_JZpjF+S%S20j1F)X) zLoAF%8X=l7!IL=PB76uJ;gDZNhbAH8?U<_gd&LRe@ylvnWMiHSow_p)V zpXvg{#n_6mT0{(1uxCnzozAt%T_#UyflzaOO$YgEA3q`SS7Y?vJ`pJIlcb2YYJY$$ z)q%u`m}#Q1KX9wXg1>cqey~{N{4W5jqv}d(0(eDQi7CY zb`eI9`vkmVgwi@SeM=G+EO8IcbgXuj9(9Ke%H9LXFVZ-uoJZ(gpMNL?-BAlzCB&X~ z{+iGPNg@rpbFp*V^G=yiZ0v1F( z?+-~qwIw)M8wP5&Ts)i1OzGvM09M1ahFi#Eun6s9Lx05_3zp&DMi9F{Qn$MVSVCA~ zCM=h7lxYaWLeL*Q0g_$D&kyle@Dh)l@i>}6SlVNrFoDrO6@nwLdlumpS+L$&lx5hB z@&8}#Zgc)ISxWP|Y=cm(D?eOVxYM_-_t3eafMw>>QU?pEi!d4N_d5&LKr1^4i-fAh z&!M)5C9atrBI(sDdoC7;Qmf%>vg%tGVYqh4C8Q!HfmaO1iLh|&w0s5bC}53d55iZX z3|JAoCF%;dF99pL2&X(lP#2yO&Wi#Tg+|LJM9fv9gK_O4%o3giiebVaMKSnEL&K80l4hu3oqO1Hac{)+{RXldPNuGv7L z=7A0xQqbMWBV2?KR+ zQisWvXg(SerWh7&?`PAo> zXs8mFiQx(xk3Zu?7cTLSTD~H~FlG)|zJjo`-0QSh&kdkay6s`(qxQB~AuQ^@?FAci zJtO?lni+W;gZ1zAOWP4=r^f$LvSPjt|JWr2tB*5_{cE1G%LP~49Izt1D_xttTFxGCt~3BVGj{H15N5#=(M$dun-2YsP;UKhN$6LT!N0epw>UfjyvHAFKNA;&$oP)-3pXdj7`gO#>{m31u1pk3BUgRV%rt3RtsLNQpq6Lo*pR zX|-ah;c_B7p9*003cB-uc&e)oS)4oUUm1%xHKnPb#*aS-_6)~hsV)w1FLA{=4htm{ z*6W9}8Gyxc*0zJmSttuw|1^uRSg^>sDk@8pM<%t96|?l0T`(0479z+UveKmnJj06B zw1A~*__zbCc*)L5_tjX8l*S9T8~ zm0M2^-3-sJ-v39-Oi&0bBpu5M6hIh7`9ei@Yr$Gmbi`@Khw`fr);6Zw`Z=p5fDz>2?8_vl547;;w%QSa9PYw;wQCu~i^S=bvn4~3Mi_h*S^+GaI6iIHOA#^*e0XR`CL9B-h570;|C(aK zO5Fz~?rOzFIE#5K_v>IWo=bdt`Tjn;=ka?qO-=)H2*6=6o<1Q&OJlI`ExB+*NySmh zG{jpPa-|E60~W>2v|&zxEd3in9CHr=SYg7F!<{Tx+E0@fgg({I<*`@1>rY_6;?_a) zcGcH}-pB9?J1H>l-oTi5#TnwWcmt*i7VEZq{a7$L^~V9FoP>XhQz#!y56k%%asM|+ zT!n(Bdjw())f+vEaCadrIzOjcF?#~Ot6)Z|! zAwVl|m(XgpU=f2=#A+V`tIiIy!x+`@in1DYFCjJe0fr}7Q=jzq&l4=9>nM-1@h*Fczc4EQG*OS#NU_l5U6~1CGqIuXH zU#s@U84Yg7Y_)ufs5ZJ{#PZig=f@SgO6IIz?;M+oLZg}qp`|t|(nE)$Gt`QXmZy(6 ztRI}PrUkR45>`HG=1P^lZey_4!7J&7((KguZ`+KoH|84!h9TSN8`u`2ytV>Z^w7Bx z7Oc)5zBi+Offi~c(VQ6JY{8;_vOk-_@bbeIUxN&+7y>#r%e?_L7{f(DcmE8)!bb>U zC4}r2)Q0t$;|_eK7A#GnM;Ndkl=v%=RvbmN&H4F{#W&sW0~RI~V%vQY@m5;Y7%VlI zl!KHv;+s>4^lwfecA{;qHnqdO0cni`=@lbo3F%eC1 ze5w{Kp;I5hEZ4B0^=!ml>VEyNC zb=mx5Y03in&ksV`VrKxW?V+Dtl_n=mMB9tODh-T+bf1AcDT`1HSin^p2=NfAq*_C}uIhoG zf1SD>N`NJW7-FfwBom)?pZQwqBGmDmOaNS80a)MOBNQ}l3yrCf+iwn7n6z5Sz{dFx zQD`)kXV3wkVjF!676KRBM_5+5boxdtT!h+KQ}X?%0G7JGbJ5JQx2343|22**--E<# zPbo|mI(xqYSUGu+p3S{ZIMf*hqxdA~E7pj&(Ve^8l&PzA=Jkbdgxqtz%uG!*=nuPT&JNDgH_BXmFV_x2oU7XZ!;66SQZEi!b^cz z6m$>3qCPqFKwxs#9)hnl=v-s4a1ag`7NRijUs;q<8ic0RWsRZ(I zW~JY9x`3#IMHwuYUPJ`B6EDpyp3)tCkDLVeWtU{PTmdU!*n`~BYxT+uxg}1)D_ny_ zSCLnUttuu$R!Ufft1vjp*}Hpw*D4YVR>rJG&ScIY*4TiYD-e3BG(2h_C4Jy6PFUU1BKVU^AcgCko9xxcKBiBT`8}g%3;qcl7j9>T53>eug+KT^l9*w0+w2^?n?%&8ekED z1z!PJiLZX`P+p-z~X%2A9TQaoDvPAkj2z6PDY{8#WW`j z%E(RrA2C?5B&#HA7J$XS5fVaAX|NFjRqBjV$vsNgrdH2but2Po5mNb!z-O<%2wyp3 zt#+Amz|wtU#0nnoqOVfkpymn&HIX{VI`G&KS7Bhib5i;(q%K81KRG|+Ry^y8{`J)YJahziies?q)}>vvU>zTPLlW3V7A)IY zKjDV_V_UfJt<&`EMl;XD^?waP1qo6 ze8tXlXTm7x4qyddw3~qsm>Uooi`cIKER@CzHvR=+OW#O1ZlyeyXR-T!5>ay!P44j^ruustIMIT>;9t$a}}^6O(6&?%3-Zs z|0ENK;)^Axb#{i&Ze4_`lV0f6&bbK9pBwVerSh0J@aKW5Lo|SS6|qu;L3QzN*Jy zr8@4Z2$nXf2P&i}u=C}7S^wdSCT%#Hm z4OViioQ5&A_>OV=mG=$~;vE^;rN=TC%mT3D9i<(AP7xV|9)5)Zix?~cEclf&4M3Lo zwX*4jJ^E$)LznCtPRM<%ShUg0m0$0^zv>_y@D2u6wF0bSi4KI~9IOidZwV{3+Dy>y z-g(DN&s^X*fHkR9@AsK>p0sMo6a}my3l<0Ty%!_KZQt($ZQiAHOf`9dcYYyWsf+Oc zW5Igmjq|TMyt4lSuxwp`vQ7DiIU3#AbT_+Vk6UV|ELil=xh%liv3`fN$|+7d#tkyC zYB5+;WlUZULI1mK?$ws?kWY{%WvH-O3AkZAHXX~w)c+jE}jEIaavaG7ZBzJ|*;OeGAsE1Xgd*5P75j zg#G`4YD;KH51s31!HNUb>`%meRBfwPvtUVFxvN212TP*^jrfP$t!Kzb2wouyx*x$; z?M47rPHZGqGI$HVN+DPRShl;JA2i6HkFg&C5yM>1eU)1-p~EE~9yGzp`;Di*A4{A6^_ot|T&FOqv>L-U;0c)UOi}KaPn$mWW8o9SI zSgRdz7I<|%0PCv$SzBXAe6))-ueNHzqKD3P1FSN3Mv(hplQ0Pp9&r(d!JtEykO5dO zny&PF^AnB}l72b0_WJwucxzGQ2;#$Z0bvO~Mw||#rSsJ|U}*%_XeD=*Mqq`P@aIz* zM`~pn@cW4`5Er2;DidfHAw&BDux1>au;_8t?)m)Xu8_tW_nTH{cfe{S15F4CO2Wez zfW@$0k@YQDNIL?m!g|$>$xD$%=!At;R+_EM-ISF~eH=0Nh@=?qM_qh<39;`=X>@=E zU$LXRuMhTh4s4PV?JhimtTIei{FCj1&;2JZ-6R16^j%FQjFngGxeH{8FO$@p>y|~hx1oXIV-LOh?*YqL{4e-t{Zdyp zzJpypL|3_|{D2RzY#Dj(dG~`!j6b8d7kovx!QvvEhI!!g$(P0o>3^IZXM+F-MK~Y@l!i6A;xY4!$ zz^yC&bEZztt*73cx*dDeo~r0O=}M&&%||7DpPY~P^yil6m>V`9I%?`sn+7$yibYwBd*;fbKZy?N9weo5sn*Uo}B{iE{5VDOs}YEM`Qu}eFR$BdDiWv zzs``)jeUtC8a~sm;5AqneCXK8=;^L8tP}^5hR;8M6$HzwqdU>ZkSIh_7rJ9M4fWrc zh;!RYuciT5=~Bv`F3vwG>7~m}ZnC>w6QbMV44qwyVC7ka6uF>byL1__fEglKq)uA; zyh#yi{LFVkub6s8j(v$;vhgpkpLpV>md7N{T$(EA<89x)u;QynAAO<6E15<(3Rs3< zst%e+yu|e{0~Sfb)9>1Bna{|)u_AY;SYh2T*qQxC=u0A4{t{8-4#;xM7VmxVILB*y zcQgyASjZl<`S^oG+qHk4Kx0YV!Xj84P5{e~KeS_cLGu$;^?*g4J1;dh4XUc*ovvR+ z8hUP*IdApqa@lt3It+_0H1%}{m1h8_j7M0{D7C28L4fk5T$@jI|={y!5U7)S*>@I0W8(@Xraht z7yqx))MHxzd<2UbIy(}PloJRk4CJK@% zbo?4uwkah}wN*DNG5xxJLl1&}EAv29b5$#}7SdCwxTWUqaokbi^RE#svW5O~e<{s3 zCaquK0V6!$b`G%WJM8VUi8vDitn@c;J}Lf5i^&1v1OUrt=vIRN zv}H#)rV`ObD6^R)nnkQ5qzbfKu4w4~&PF~hOoOSIos)NZzIt>O!+Pcg5`?89cL*yu zHIN`I*0@vT{?*U^w_cy4r3fQn@%%Ma2wfq)LVd8XY0zpPtpI*eJ{iV#U2>+JjJ%wT&MxnqDeE)s$4;StZi{OX2~@As|HRfTZx>;TKo3zNN7 z61^6YdySue99gt8v=12OYdMI#xc&x&uc*Dk3~Q%+u>H91+RrbN^RT%YL>>{+a4;!r8XL0Caxr)kb+)_sA!cUU+E z5?$FQl(ctAZO?4m?rLj0c5d4ny!h8|FUvzcIqJ=!Lt$`wuNEm@BZ<1u4a()Fl)d{|0@5a#WYy%VwwqH`3#+%0IZcT z8kIN!wZgc$pId`P@Id1aNxBGQ0K`NacWAlii>wZnQ^Lw6-C7Da(9@((wEH@vb< zr)OSR;}a!V0$BKrmI$lt(C32DPQJieRlP*&#A>JD^x_$ z)=%uJJE@bq-GT^~7>&j)wJQ1f{ zb7gpC)quWTUF5B7XMIcO&$pL@pNG=yk{hvG>Q76uE@Na#@zUqh>HGYQqJ;Z>-w+fs&wxJ3MFjaZMa^>hbM z+iS2w8zB>U0W1;8ny=nux~+0-vyNcZ3RwPx>HqJ^3Q^f^x8s-rSf~RmN34n;#y!9N z$>TYLv;EHsi=?_5bzOv`!qgOA@)x87to%#jSRwpa|!!&JH3x%~sM z)&kIRtF4b(lFbTN+-t_;o@&3um??;Nr)>@5I2M|POO+GWjlo#KOzg_<1-z2>K*<6c zNWoRM$C+JueGNGuzk3#Q|LkLI)*R*_W+1ERovyKKnK@tl{9B4}#B|u;_*E~%s+Sx^ z5DN{WZu+?VkK%u}2J4mAPrHdYvj?m#H~!c7C*9c)>GH3pY4Y$d0v5InGDAl+lNzk- zgQe?YTbXJqTF&#q0%JyFA-Q||YDJ0=#S~LuJzd2J%9IV=#c8l^C5jbvGv^0ANocZK z_d*vTD%7}-8)4agzu?_I3(t}DAwSTbDNeeC(z@ka+h|Vf3f&i?q_ns^f zvHf$hqWsGCG!l`H>#!C}^8$R8T{+f(CBsep8Z}6Q3LmowR;br$!-!xhz5=n-rXd3s z4WmkCd`2$>>kchU&bm@cH*H!dgqPh-A5=`#V4^6%6*HF38Lq zcQLg5zgUCi6LF>qSeF#px;X!EA^pR{anhuMd6xrN=oYpOqS*k}f?>}z653YU2<^ugH{U3oX>2VKwDj|H*D0P6u6_I#m9IRMsI zKl|$=@JP@_BUqBOvRnCHh+Z)kmr=tCSi?~;Cz3k_a{QpZvG?^o!GRH;5~`vLl(~Zu zut@8jCn8v=(t*^fs|Ru$wP%ne7_tJiND)57s2oQh)Sh^FG1HXF?^r`-&*LyUQi7$i z6(ijv617=4MCDJ<%irhXD=;gEv5=cF#LS>4{}iyc>to|9X~J#!YzDvzKAu&%kB|@+ z`DOk5`#tHae88bq^<`LZhau^F(Gn_@EFr#bmjhV!bRt+c*AsCj30QZri;(?0b7z=) zM`5~)fK|sCI9w-S3kw!eSdCk`&>n&*{wa{EQTQUS!1;DjQ|#e6{DUJpN|`DCT7xO|I&XN z0)_HsSBR~KW?24n<-Y`2D_e%H^lEm1l`i2<3aGVJiS6Hi!0B>%EKMPTRTpOH%mlEK zZ9Re&8wvBm#)=&QORBA9MU;$?kIG5s9VNn7>rF@!>TJ0oVb#8R9d%13&v!pg+hG*E+e z(*0M6q)+x~_`|J6i=RBwJzA*DfwLN{Rt*|Nbuog)0Z^J6qg>x4zMZn}n{J(Ep2~O?=He8*L@8sxsD225Rb^lf z2CxoT1h9kW71Na?VL|8`PIr+a44;3TFy7WLT6HgS;+s&keis&{Cu5(Sfup3R~cpBwJsv`{DLk$*;MK#S^&tw5sw$UI~oJB~EFcOy3V8syD zKG;}=MnZ$82v{!73_5OsQ=CbFWW0-z2o{opn#Vs`Rk>FqMOggCjub0@wU8p^HUk#x z<5sw;d%&u>K@@MzoFW98M`N7J>@w;t6Cv~n7WGzRoM(4vTffg|DFjl) zTITpw_{<#h@{_pI&`S1ez_Pv6GpJ*n@26kz4z+3_bcMQe-pc}5E#nDCEz_Az18-60 z9zXv|(8vDySLLJkt$fkq&j5y_!Ha(Qz)O7V4y`ot2-YQ0#6|dLvQGk` z`2v=Chin#O&7uY?rA3ZlsX4P4RAZqSBUt+FkdkSH(P$yeNl}k&aXP5;@hbNZ638Nm6^q<^jq??N6({9<^@=_(o)~?Ep^MPP6c(PpZ#04e ze+3^b%G10C3tsRj6Fv=lpJQ7V#S!aE+oOxwv2~&r5etrD#{dggwUI(6+eX0h zG!c4I(2B3@v|%(#E>B`zQv+C9f)&+<%eY|Ko{q{PMVOBlh6n^A(#ogd`Fqk>+b2E^ zs8Bz1++?rFXdD&c3BXeD;-&;431VG6;EmxM7@T#NAvp$F-G&q)vk1E%1`|=_&b!A+ zu4g);X567C2%j(I2V-?$Wq>s@ct*X@J=9}<4Ole9frF~QTyyond4zSPMFFzNcN<{2 zQa&F9vs7TZfMhlD`4>m5AQ+%;uI zEjuDN$iDb&0$9u5gY|^oO4`EE;`6-^9;b1A>_Cy?p?F5rt^q63RqZEm#Z`L*E8mU{ zG}s@^?xzDRy9WREIIeQZkmuY*XtF&8EPDK;%kL!b4QUYUtFuprCI};0Y0^sP?i>wP z`&5PQJ4M=?r`|spOs~2hxXR8iF0$VY-2CQ>La`g=`G&yt^3cu@cqO8OFOCWybHozs z<754r6%4Vc#>}sHbQ|56QjH6i_uX9C6`O{-oE!9*z)T`o>28xt(hFrx0Mz1tHhaM8 zXXq^E5W(tIH2{r-27S+mRwO&pcOf*%&HV$-TXoG}X>=qJWRGnZ7jvyDJ4OzcWp3 z+GTb!U=fVMd7+@ggB%b;jgpneurg2)zp@{7a_1F7=E};0(4Zq#_5P+@<^!Z< zJ{BDh0NX$$zj|bAZzDuYl7#;Lk5J141pZ9^Jz~dGgs;4Acr`D;N|RuVbCmvZ3Q7}2 zt;;bQEzi)I1zWR=rSOhF;+%8MRJjALj((UAcBQG zcO`9vf9$r4ihDFqdZ&zSVJm7t)H>)fHjoIycEY2u;jNPZ{(Hhxx$?|R(Hb5 zJq{yeMK&7E2rOyNVUc1j3Br=Os5-b~%S4JWZFpZ2z>-MTK7@rc!{6x|^tW|>cRO1F zUk_Yw2Uy$|aBF#(c}ryU4U9{4ZUL*i{5D3LV}AmUbt-9mtw|DU_*W;U#`u~&3I{AZ zi`oIey0x}tm>Xb)-`w@PNbBt^p4(z}fK?Yu2Rqw_c>vZ*?NYxl#?HN#>Yo5ul7tf@ zcPYZSO3_XU^wuZ!bsndYwd70eGDonQcQAC<+9l!*SAKUN1_@o+W?a8GU~SD1mTKI; zzn0Phv#~Z>s19qejssw6!n0u)mdt6N}IvC zjz!)goq^Jr+#sW>jbbu2n)PQJ8RRR6LDr(gLR3zn6c>Hf1KMjrxamRzRG6k zOdGHgfHjtolj#(ELoap_hCw-6P;zx!36@{i-H4GHeyZ~75AliLsO!iA6=Vl|r6h%x zqhG&Cyov}GI|aakukgW&HdxUIYo9oe=3x;TLiNGoRaP#+wqdl;oyJ1}EU5FO89G~s zuwz>JG<@=S8m~G)C>R$>ijexHDE)QQ0ag=B%ea~9@VMQ4{==A&=LZ|i+sO~wmLhjk z9AsmFgn_1QBrzMS5so1rshz{*sU>SZEyAFcgDWMHW&Lfgo9L;I0GUh3pt z_QKM+!KHP3b6Lxl-AA@1JD@p2*2A})qw>FtN3hD1a$E{no-r20YKMqLPhDLqa)+9t z=o|Dcj#(PP8U$!gWPOY);>xFC?@2po;Sdd_zWd<00~X`^sH=)R=vyLK@s~XRLIjH- zYbe3O!2KaYSoRC?!NLYBEXgOl>5w4>77aRs&|_hKCiA)-rNuYS0IT=9P_)82z^_4P zuS;dSWC+Uwrn(*5@DJ$?)_XtPl;=;60($76ALJb>1#+IycGTlNT7OhwcsO@*Af{(_ zS`PV&B;ngK2!VzQdLNzp6l!f$PH7dHFJS3JoLvK~>1aNWbjrt~6u~0Xefs9)0c(*e zQiO=LU$Sx9MQDmX?m6i}@ZA9`ZS%n*UBKU1iC_^|i``UQWVU@!~eQR8k=kDG-jwH0i>IUr z`7?lU#Tt?pjvuKY7>mz8fW4KORIP}$Gt7HvvKnu_(by%bbeOblO-7alR zkNLRgs%JcBdIaDJgHE{H7Bt=*>Rn_NjHyZ+0XnPR4GN^JH zV%bRn%QA|&^9-G2k|>}ouk;6mO%QRzm>IbzRqgLV6nfcmiVy)DLL9_@ z{1bcYD-cWhDiW3<*5A}`9140X{Vb;lhs6SL`!J6j$LAol(NxU%?}Lpme@#?h4)EPF&?48SND`gnQGiGL(DpGKv z5KmfdL`-umYDErsP^^e3au9{H@P?j)V)2G96a}RUqKF$^iy*ktje;xPx^d&uzsH$( z-fw>Mt%a(j6jt=DLRA(1q+V;VMi>33k^lA9xToQRSs5wJyQOk@a04szK zAjKfQl!k+}BKKg79>9|C!kG5G60k_<>3rwHHZB|*z$?3U_+ZIno8L=yyO=YGc-}n~ z(v!%KB`R-+u(q6;uoKr3B^lS(X7wu<_KR0`IkaBk(cxj?d0dQBIwu$t5ZAe@g*r#e z@ducU3*E=9)U!;?5j`Sx?wTV^WdbJ&Lc)eayD!J9JnbEy0IY{`4nn6Nuu!C>;Gg6; z5HC6OZ%zJVfK}TzEE{0?vTr_Ex=iNbhCX!OBz78&GB^Z7aEV~~5;5<|6Q>Beof?RO zC}0(0=pG=e(g?m<9I!0Lbsqt&cp9O1%HxBz;VXt+ITjx2*a)kmixB%O5nl}SA<8-c z%jOrGaEN3=qAhyYy*O3n4rR%?(MB)nhzx**;=CD*n!X`x22P0k3Oe_de6umDoz+%RPI%28LOP#x< z2tizIx+o0u8m!K~=hKuTy!dU`JN*AHU?s=RKgpr_B{|iNhsy<6RWa7{k3F=6fYn5> zbm6zFbht6su4n_6xF*IuY1sH#1Z#h6&D(VrZ)z|AtURv4B4+Sx`^_tB^bfZj4zMhU z)zHNX9l z;8o#VMT$^A1*(u%xNG!^lqiZM(WZSkg*l2ZjjlS-sxvKkeRFf?-pf~a zcYoSmnXT=g-rBwT*Iq+f&(NnT%F_T?xk3zC!o;@;A}_~5Y8yrDh&PtRx+j!l!_hma zb0-QccW=76gU7qurr}hj2+Pu|M`y1*rw_1t$Em~fPjbL}+?DxU=7(?D0IQy%^Uab0 zRvl5wi&>-p04(MP`yv+EG!S;5s==bVVY5F!;Li6MZyOu{AS|Gywa__WvATM)=5ATb z-Jn5r*CK#r|KR4?HCP@*U>MFI#63j2|#p9TZrEIyHmKmo8=T?=MA z`?f|ZyPzWU69&LiANO|Nkzvo(B@&=`9t*4@ixQ4#R$eyQvcD6&3fS#?`5VL)^-DZT z;3_t~nt@h!z24C3JHTq5w%^+QuEMOZE=d=F7MBgj&FpP)QjLr~{f0=Lcs0o1zki@H zVa}SLR+-;upB2dqaMw8iblhYHydicwaHZFFhAx|A(Eys+%Q&ds7F(TUbhVr zJGY9jb>-9W;<+v>SW`c;D$~vgi(mz+iu@A-hS)7~z$*B6O ztjJYaOjxoNXtjTB?|%2^rRg!B5U544f~%Y2yO<*2y$3ehp>q5Zu#;MW@r>q>D2Pd& z`yxft9~SHyJkl*s_weq|M9)H zwT1u1@p!y>NR_|hV>^IxsmemIB$)&#=7(P+RkX)xr_P~k5QIVX8n(3M$M5pzt=$#Zrfo+r)X+Pr zpW|TT&w`Fs4*-?UZzXmK?)>#^Eykp{K3L@`c3( zUvZAvPmp^3~dfv94{DpKDoZ!cEYJWns?X?3l3F8bDX za@+RPiye@acL5fz*QTN8Q--C=&0tjkt5hAq@>kFiuUWDhD_(3CMT}P{j_<>Jrs<`n zzOcAgkZ^CgX)#vqwr}~TJ>E(zT^+imH*fq$U$;q}Y7d5mv$h6S&tU~N==xQ50e_4DE01?j53j2vYKqc6S^yuy+p(w+N= zTy1a9|B<^tzPx5kRbF89@uYrY+jh{B-D#E4)vze9S+&*BBe(uHWH8nSEM=@}Q!!O} z^=z?gZc$d7|+fBE5NEYW>m zUF@33oRA_cC~|Mt$N>ACv&yGo<%R2ddK7rTa$Yz$G(}W*VQ1y^=)Aj(0{=YJqzIAp z7qnfMF6;Y*@Pn+o7zAkP&!ky3`n||+REAlREt4nGmFL>wEAUFQgX>q{>L_I2-Mw12 z4X&@RUvIjx+T3Pcg;#&w?TB}M{^4b*2P`$HQiL+zAtfIg8#drRHS75Krasrk{OQ#H zTdUAdwL`ZHry{grNI3)34^6#6KO|d@OUc|K_rx~~=LVl=BF>4V2)qA}vlQXdQqq4E zu<98)%TR+=%556DtCjOS%bSMv2(ZM$Pr`7bq`zM$cOX)F(s3KLEkM$)5SvVmeSHeA zhEnj=p#Tf(_xolWxm%I@2C;0lp3rV6KN6YLmrXgjBU!5>BX=#tLQ;dpZ}L$&D0+8# z?!~IgU32(wqTe7djpI17Qw3P7Sy9Mi4ZH$a@knj-Vf}lwxZN)fVloGBy6Ah7sCwK6 zVJ|B3cN{`kk!%RTozNB9F2QQ=&gDCW-c)-fdU`x|u^=%*-wX+Q- zS9+xJXU_6yJacT8oDl6Nz9-npQKT3@@%7#e`}LZB+KSvSKG~j#b5?_OLdlQq*YU>N??nb!%&#*bUV2_)%6=H z4%updBVYM6ym3z7O6z*B7G-^DJ;>721z3&GXi>zz>krhQvWZ=8cW!lyhFB@xo~1N^ zMdV~sZeqCdCsEU~sev3gy(X;B+&*N6NGiGNDRj+BXt+ebS5)XUrB@YUY01{&z6U;kQ!tu&bR>lCYPpTC@W z%5=D;whh>hcEn0WUB}OeXw#VVI)6Cymx}K37Xh8WBt8G7Uw*)(EZKyi(8HourScNPx;F9(Zl`Z((_le;l=jjS`xT~f-$1$`C<|SmMkFg z=rJFaQ)&_TmkQswq?+nkhLKT&Rk-m)Fm!*90<5EoVA+Kr7L0Y_QuP}B9}vKTStht8JfM>E9nu3KXoZ?AD#GI#k~y|M}*Z!bM#^Sj_6dVN^Xv zDU>I^Ya5w?EEzH)SYGubol=^URlB+MVj4&Coe{z@i8%A7Wl8*(*~+S8)UjMLwex^?1H%Gg*kR@JmCps>2CskVu)Km- z(AAOY=WOSmTib|re#atMO)@T%!%o3V=_Dji%JCDtVh1x83#mUHvUg!ZAc?wRW z?=fIeHJZ*^s!h~jEp+yE@}2y~)@vhOgfL(cM&?|uSC^|t4_J3OV%>FT6T~vU3Jb-? zV@--shUGYskcW*rB8%B6!q}mKa23HTyNxFQ`KTNn_S}>n_h+s#{mQ4|k8`t6h5|Y3 zJP1MrYt^09L94-PmqG*!Ua|{*?7r9Bjwd1f1y!0qS{Y#}UTyyhT^)(O`l2ZF@aNl% zb^iW|Kk;)icjP_s;sNXJ!E9rBD5MTq7h+7!b7}x zb)*P&{h)!I0uySm_9=c?!X|A^cM;|jeP#8g`@2aJ9(@GM87mkzJYV<}Cez~^lJbPF z027YEhaPzZD+RC!I}tvSa%)Pn_@X*%5Wy-mMd%SMznLD!TlqAsyxl_*O(2#i@hdPq z0G1ILstPJw_I;9EP1`ctMc-48?Ojn9i@J7^YhE++qGCJhmUgA zY*X;*k8ze6&>@_Qs&s#%0(Zt%+*ug)S^LKgC+ zrQ)A%B}?^d{!4&GG1kcgR$7E6=tlJW&;lLVG>9XkjIhn8hv&P|=>E?>;}1Mh5Ssw8 zutyOrNfNxbV%j~12-aQoZlxQIuQCoeNs^1!!H`JVe$=U{-J0D_?yUJ>RZv`tmGeVg z5iCDtoG|1ArLKE{Dt87}(=ku@s!@Y<1%TBRU+O@f3b0%NRuMv0VApB@Ea1v-RD?_27wOnqX5vEmB|Np7Q(`u$2f_S`n6X4sKs1 zcy+Y8`IRD+p_Q3J5X;kXc2S&ZXkN|0{6^L5M@9dn2=%#_nn(e5gs|l95X0s9PtJ1G z_m`g~uEDyvVYUosfOTA2mO(nn8DJe!%+NXc2v*b>rfX(K2ulDUT7PK_F3FD6W1T?SaB2&cej zz}|o_NQ$uFlaLl2N z#i$%ewkPRvi7xvo^IsZ+_ZMHS@3!#jw(E~iuV->&R@r#-X`z@|dFa%>h zkni~99NQ&!I_|3e!$m{pni9hDvnN?gMLpk^fR)UyZ(o`S*29lq2orJ6QiKQ4(uJN* z&%HU7fW-_QR2*|e(tWTnK?rz6TNrNXouhIxt#Z%vh_N=4{z5faIH3DAEHo%`8l6z% zN&xHCTW;B{mznh=1+2U34`-}Wx4oL@Af?^k-a{820T&bR?JZY!z=qJ#W%|xB3L9A zm7%0dummh5SweoT{shr6XSU1YbIGnoHd|}fE7BK#Z!S>4BxaH zRbPcYE$$ws5LLTp`*`sReRatlE~>}yLlEm8v2U{r5u*T!4PhnNe8$Hg_fw9OX$vqp zVfZuEiaI8nJB59mJzm(0iX#lWTqIBK212|Vba1YW+MKc!y5_3{CQiBzhM)?)$0gRBYaUx+XnK4J2Tn^ro8N9%TXQ?z={bv2BcntMKdvh zJSa1+!UFmLEEKmM4E&bof6x+i5nkK~>5j7q)|vMAK%D^=GjvWOf|X!2Ix9Rx46BlZ z)GWZNB`w&ompfgA`;#9Ab^#%bjcv-uNBkFibm^)F&ZU;1z)uj9^svLWjG3) zkmU?1PTNU!-bY6SD-BmjN|i-JpChADeph8qK5If;PKlNIG*}T9XJfipuWd(9i(OF& zV5tTURQBP#HE`@wz(V>tPNH=eAu8tjK+u1LWjvxL zkRtM9O*+&|uzVkD!KgkE80~jYB#a45p8wTll(*XsmI|=G2@`S7B3LJ+WH|yyXAvxP z$Qe2(Wi*TfT{&z4SVdHlF8f5asKMH2=&GsZ zLQ>(bbG1nkMo#YPG4`zghL%MG(y)zd%Km90qYI>+fS%1fmpKMx2+0N$zB+j4;Emku z2eE#3y0XV|FxmN>AXX{~*DTjcEPwu}zb(f<amA&hko$ftiK^*;{O zYI37dFaA2#VbAHoY#FN3t24kl)#6}I)35$-02VWJj(HZLUGrh$>Pviu3-_F9UX;8Ck(ULcmykJL)LGBgMOOn)vz9J)@`qoz5pzG2nk@_;_)jE zxw!UZDa~gpk*a4z)t~ zN|LrRCWbm{jbO1aigL0TkELJ*o)I5zhwR{w&n<{mcC7~N_-B4QpRk@Wq^?ip)%jN&(Bn6U6vx zRRAk4xf;}zMKd8O!h#~JuNx17T?B~RHgF|5%Ugf0qE+9@qph_-;UnIV~O=# zPn(6U-u{*7U0f_DY>00AQ_0k>Lr8$J9IY98Lx-!pj|9+$PV2&nL zLm_u#Cu2mpJR&r(iV{RWWi$Al2v)+wA#<~oe+gpU)2fuiskaqU)91g{U;%fs%3TY< zVj@mC_Tvn&X6V%L&-Bk<^Lzil1gv_7&cnwBSUhJ_81X%4B!iuj#-=tG23umRr zH|%Kq8)9#u&5%T}QUD9SLNe|d`o+cp@=epuVb9(~MJz$%SOKuM|7GudUgN04Fup%# zhN&W=7eNy>wg=;COpFvUqO?V%Qi>Sp!PbC^pr{plQ%Z}1RP3QB_M%eo>`CaUy?87B zSI)fie&;jKerHTKyJ?fSPj_c$lQfx~+1>f<`{Q|+I2eA;kL%zVF5R9Ytg5a^5n`X9 zU-Sr8uGLc9C&O0*R;xifM8$tCFA7%l4^rMPh~@W>`W-?e=mjj6ayN0;V-=E6$xvoI zQ-;+8u*eW1p72!ec|Ts{*nj4UkeoYKZVrUCEoT{6IZ)Y}%kI`+?erUUs4i}v9NF$X zR&U9f+Au^t!LY*`!%mr*(~E2??CqquD&PZ~w!~{RA%rFGT3Bf44C>l8|8VAiGwRN{ z*MLP{LrbsbMeci9cfGay@h=|)z_L!F_sz#<1MzfgcRo+LE5vTL|woMmg1MzAbL_;J?eB1KJqX*k*kP6V+K#Waf% zU{NXzOrcC&1rWdqV3qd(EEB#;V>5`$B6kmA5mkv2Rt(-|&a){3tN>ZX0^+izMzE-1 z7ji<-m)BtB42<>#x7ByKk|1;_s@2}4X$5OavdB$Fx0pc~O%xVM`IWTHjha*yH+Fzm zCWm9SKqEc){1Kza?Fb8gdWZm)%D%`?bRpI|RUw%S(^q}`)(u#|zX6t4ncO?=#`e4q@2*|(8Nz(|Lg`~e7&B>Xf$6^vzptZLZ~ zSWk6~%JE4#H*xe4ykh$c!_o4lWk_;Hii2XeJnAA$nuO&o1u;pfxjSpIO@jj#hb*qX zE*A@4%(G+%fH8zJaJUo?fO6*uupF_7S+N?jg$`JXQQ#86s6u}4#gQ^sSXDxUzM4uw zEV>8N7F0bdb>vC7=xIAonw&;kXDdhWL=I1kk?@s7uDW-(M%4n+te>j65yI+3tnw;3 zL8RYRz_K;;t{-(v5!yd0u{K*~)TpPs5*A`MqrU#1lUhudR-}0p7acp)@JA-h*a)V9 zzafHEzwz8RA1rc%UV1f;VC`Y;jb_7n1ncgV_nDzHQ^74+F74o1T-}7yB#vNVi=5Px zK(gk06{B({c!`MhjJ6TsX{}M9Q4&M}7HS&0SJhXM{2O?mMtNxZPo5K>b&~+$d14CGk$+uM?8+f zeE@tKkHh09iluvOnLw}(bU@C+Q8M>PeR$H=8QfXueLn1lrx9G;W58k}&K$7zqb910 znFH262CTHt44s*ZiON~-c%??8!NX4){!Mv{(P*kZ4X%)P^e)1kyhdOw_{#ppW(T9J z(L(fY6p6yny@6Eal{Ne4>n0Cubw#iW-R!WC)V#t^XN|C;G%S2V%0~fF3Sdd&AcgA? z7WG&wBmY?eGTIDLKCbcfpzb_|5mAH14jnTYwcmuagD`$oAaY&N&+>!D&u5W zk{)lwi*f)fy#iq&Fl%CY4SY)(R>iA_M}}8+O;<4;EjP5&yh0pDUB2Qqn7YrFnb#zQ zrTZmCgs@hdha3aHp@!Z8EYp3d!6G+kcr^#C`wm$5eFOH)W*!*8%KPCpHuGYv@Yaj&%{zdzDJzDpsR9?Ad^BQpItsVO;j>HCVO@6^(=fEQF!Eb5wDO#aHPo z1hC>7EaR&PPhhN&i!BUC%e~zZkf21j)20D@lAA1`Z!@@+%8$hntWs+lM&KdPMm1Qi z{lGUuuR+hx`+*N}^T;w7ymCqRQ8~$QFj&|)xv?>Ds4A9rHDTWXU`ag{wNtn@G^|1m zuplg7)oh^-j>cS+=oN$|E~Ann1ai|rlEGw@T54@c(A;_CT{6VDq>f-gu~b~U9ECBz z!ugc)_Vv$ezOrksgcYJzSTRg0qFxWE-po@^5vB}xJQgXo6gQNV9{Hb01 zsb{MIme|T52{o#4YN$4b&9DWi=QUV8=*q9?o&naol`X>@u=W68?N!{F*I-QnSj^CQ zhD_n?O0W#D_`n>cek5EXfF-3X{#kGcZpitej$rL z211!!$p+ct^L3d|lZF6Y6vKk6Y`J3*0h2PUG&R5qmz2QTDW}t>w3$$CZX2(ma$RR; zEeAkl0zuqN$Z-<0(PJDYP2vs{dHx^f@Z58wQF4Rdl*x-ZVC`eT+E)8(%0iZm=Q2;Ya4xc9t^ zkRWYjs|#Uy#Dxi=$*E9&btKONT=5vML~zxi2jefWCJK%Y>V}o)23Wxo%Qm3yCS1kJ z4ZzZ8pa2e0D+W5)Jpik<=efHI>j-7;(i0*@asXCF7FRzT-YdX*y_$$K2dp_@?X?|s z5CN;u+h^aJZKklQ!NO=XHo+t~5dl`NU4&{3ZX(aIywhq?8hCWi((miE??TlRF^*;i~wn+-n0YtK07Odvrb= z+&H9!|`TSK==NU^!piQ=?HP;>-bS4p@6{M;#czO8fB)o!4fY zCJZS;6EPv)w7lFmc5>I&pbSUkG4;(E&@@d3J02jS*^`l<%_zV^YUmC;A*2Ob-6_Ib zi{e}_B{sAlVdH-GXZi?;Vv%CY+G?<<6N(5b;|qu{lS5(_AvCe30fZrG!r(G)E?8*& z+yYI61xWP|U%YzlPND19uC5$jSSZM9sYnNIezsoy_~xaP8|OA}A3CN^3{+n^Vd3Hc zU{T&~|L|ZJmj=6eaa1h$LBd&rW%7T7Js50*H-2jbi@yJ4yu{s|N~6d~yH$Rxm8SV% zX_63z03j+Skr9N2Aea!Hqktd6>f|f1%5NWhuw1trTb4K5xh4Hj^B&m&l`yirQ1J=9- zYd-;&&(N8vO~Yb8?r$UcBWD@~EZW<$|2mn}K3E+3$uoqMVF6f5gjVEkXCMl&kQ%x_ zHG#T}MsJ;_!X}>gfl0TkUmA`!GaFRrQ#;ZS&yGHGPjq15&_(!L`6$N(v3I#>YG( z_ke}4T+VZWuTFXI9`$ADPxz{xtBj&d#jULZTE33dBCC;oyb=J*wxVXNP$9NTNkLl> zE4Fm^@X?U@LFHPo)no4v;1j%((eJsIxvOJ;+=gHgtf5_c_pXbOi8uvb%>nBm0M=b< ze<9t00j#{=F+*o&$H8i_Fv4;*ZToE5<>XHBH3=s_BlMY&Z(W4bZ75SSs030k=KxrL z0zq9#!U^z-2v&hw!dD8Fu@4qcb;rZfa8y&9bq{27a&yNlLXHH%3;q+qlT@m-nxU3l zY#L+;u?FGFjb949q=+>b^sZg5$m-73iv?MEIuN)zx3PG&2x?vFzj|r){jJ-_7>85+ zlZ2s@Rk0RDu$apnV9M@+TXtC)**8HiwaGH!;V$rz3tb6gk$VNOY+p*<^qE6?h_u^N z^Ml$z=%E?f2o12Lg|KVlqZ0%nwN=^&9k9YRNx`gl+>pJUuRK;IdPo*9% zn}GF3ReCiCtb+hpcd^a;@oyd&z)JfaGjyge#tQYLSxx|}Wmb+xOxk73k)F@@&~| zGz!wdQF5kI! z_2QL$u+%R|D->UeOM^tPASJvNs8;7oWs1;lsn3!w!mn(B8WNiqFO%!TDwVd=9s4u zEK@j4grs*5uwMJ>?0=SC{jX;c4)-=-?VYWgN3f;?ESh+yFUA6}Jb;CZ09Eecji|c@ zOC|?5EtNuS?78VDdNEcXuWK z+8D$7EupCnzyh8SiWx!1=f!|^R3E^YPeX5mwBNQ`-&#GNtX#LmVV5MRb)gDs6)0Jk zzQ;aTE)1;b7W6L@!7`K*O9x_K#hp$E_XNJuod?I@9dae-}4DPE-wTe$GCLtU^; z`0>g}qi7Y< zLRiOadr-#6K~FD^h+TOjAyCC_ zN*qfa8mO8=S=TJW)Gum+l{4a5E8OG$f2rxIKXXvzPU|2qL z4%USAt?*UgrU~?rz?KWnGQ|3Blp@w7Y=y#t+|&mtO53L+p73YY*w50M;U_s(S!fyeg-hp@Wlq zskS5`bk$yih35~ZN|BbC%{Q_7fQqkkE^5BPu9O8>w+gZXt`LOfNy3k&0IWYL-KcU4 zDxwrhhqlGfyczdu)}=KqU4$q>GAU0dVvMYQAV1;mPg$|ftL0BMGstyfx^8mmQlE!oq7K_-vJ*wW84?Ev`U6YK* zk^CplXBLTj&y$1G@D*7?AS=L?=}KTLYO!)#Id;hO{gYHkQK%-NRGKZIQArW<6^&xs z@1tV`^D?!<`kGw?V`;fu6~W?&?TV5lOvD*WMa%(f{{q&1*FlM3?G3=1YK9IeLd_6D zSQR*lXq0qYsKY7*!TeT7vUJa80Rw3sr-k5o~h(S4g z@^$C#QfGg*{R?7=PeYpI@u(aifZCF{uaIwt?{pNoSIpq&wc${zUwR9ds9^8V*7@Y> z9qQR5m|*5n?*>ZtHvp^h=n>!uy9@9PDgqE<9)D&r;!I&AbwqR6 zs|jo51zFM@>x%@!YQ7RT>CDsN)j7adh-b_4A3u6|`)m}a3Eiu~MffT&6*?ZDFCPJY z8ThC2G*rMER<9!BSj%(-@cKt#fHPrt7^}_^>dQt4pL>zJGqKpMpjiRd>(9it40FJm z1J+*NQU5EzVusF+?4|I*YR20MtZW;>@}?;ZhqMh9s{m_i9~shvy)ZXf$#69M@RkGC zV;;qdWV{p%-FKEEyvgZQT^b15!B?8(tae6WILe3a>XHPOwHmCoG-)YvhrmQ_chl6} zvD$sGoEbo3LXLxl^IO~D)o15d>Vo#)3Nx%MSt!&?RxVz>{_EwL2DPZvDp4ynX43kq zl{GhVj||;y#qO&#Z{`aGvLd<&NfFZVZwW{7z=}HvT?}~k=P|SPMq+{$m_dq*{P>3r z`C9l&I|u_+NKh?#^Tg>NXGK?dV?kG5hV?<}V(_EiUu{^rH%69A0hIP!#%aP5P?vkn zgeuZT!us*YIl?0xf0H_{WQ{JuU9}obk|H;FHlBzx2dsGw)*P_*5Mb?ihECs|+@sV4 zp%wBHK`jxi=FE$Bz?%M$FnWf!+-BS3DEs4C7i`svSRdilFfm}=;xQLX9x|d;Ox);) zH57h$_H^5a?j-57X;2sUD0mgFoV2(}<05xU5mMS4n7CIAySW5jb!l~Y+3Dx{#X&J5 zM`WmV_`>yHf7zv=R&TJ>%QD8^ytw8iR`|RJR|i5_O$&E2gpyJPU$fR(g#NRHLrzis z6ePc`In;nDgt7BLSQ|C*3duNdF*rN!(Zo=HrSM3Ejt6t%=HuDBy8&1rR&{wdb&<2h0sE}W)Uq&YxY5{VV0CO4fXJ63`xh@327qKHoK$~ zTh*o^o*kT%Axv6+mk!ca@FoW93tNu7XD+hOL}H)m1@2EAX_||&YyrpJ0gXLb$IGw?`qf&FUjOlkdKwcHvDRB% z{D`Ar)4&m%`ps+7i8yn>nx_c&@{amH0#@;Y-O&u4B&T&r#(U9|Bks`(Sn*&Gr7M|5 zIIH>8{(*9+Q`?T#cqMEl3R9fdF?62@ux_o5TdSMe;#ZO&q)^v3_l=UUG9j#hvuV=l zgN5Q`VK;O|HCXOEP{UOLLnkk7uHT(4!^vw#IoAf@)i&y1_!T_bok}eWYB^Aa8)g&6 z6<9gX+}53%#VJBY|EVXq&`d-N65f=PHJ=sy?g-xj_(~GUrZm(QZPAj4@q|i8C!P2% zTYfyrvJ?M_RlY3v$`3CvnOHU`F`8K)%wYmGx97ww)}pJ^Lk+$L}xdGo4eH#ZSreBk;vA-VZB zm}(go`;%K-QMY>HBX3UjP&8ToW5Tr^Ls7pEn%@F=QP7Jrb5cfq(7z_@e-H`+u6uGv zcE;fMP94gG=wM5~C;3o@Ie*E|-E$E94M1QIdb38WF&zEuTM$g$Rqdv&0HW;BLIGVQ zWn$r9w&135nio~p{2Oe&|EW&Nq+Mwi@q=u)X|Q{$_@OD7+|tk%OP}z;|6mg|j38$O6I^ zM>ssPE;IU>Zp~`eOuAG#% z%YAc3qif59$NVZ)j>7Wa<8lON55#rC>=F@B zUzovn50n3;Q_U;gb>+E5^7^bsdx>U`SxrqXf%^ERp9KAH=;jiYa5SF&&3^$u+40Us zYf(65f_=m+zr6J>M1ntm$Ahb<1SgGiCuP?&{tSLxy&TL<-yf&lz9MCmIRtceA5E(c zIS4qcG{SzIUH#iWdjPs`wAHUt&8~HUBI0>?a6fz<;=puXyB{dJV<=`LZ|-dKEyrw5 zwdYcNj34#m%Oo-U3eNq!M2*GA+1l(NKD01K;(D3>ew;bKPLpB+8{RN*+A~FzpSMv=07K z>o~%wra&0oqUxr#mrGN1_2L+Aa=mIbHa*)I8Au&C_4+Yiy>T5)q0~4Bt>z=)%6%M5yaqG0?B|s4Q5g!ZRGb2C{1Y4PT{U)C8>h%Ggz(1oRV>@dDk*%mcp&VjbJC z5o*4@qtd}J$C(akH*++7FY=@L#`8I#Lc!%Sv3`cGMA4T$GZ3K)$qhaO=~Nh)^qqKT zBE#)+i{_gRB8aj+ru!Xd6C%Zv zqJBEpLp~ir#fLw#-GMpua_kjk$U`)0`^E^G%XV_>f8MpVD>_svrpuH(%ErGvFVBQ# zxp9$Ip8K8uc4eoB*eo75yii5tV-lSX)(!BNY`F~o5bW~RzZ$O)6ro6;4<4ElB5>C)6oq1TX527vW;E%Hbuarz2zNe(!NW?? z?IG+;Gnmfwd_)y!u>HNLr=m(Um?F|r7r%Fc&iC*#%~|hwOa0+OG`5GgzcK2+M`JJb z4>oh)NVUC7(}(wRy|N-YlHvz%`hjKQ;QBlEc? zSM5T3A|j8I-p3Ga-Q3_FcImYL3HzvfUfyw)Gk{L}9qDz{hnEuzhH zchQ@iT32%@AjPB3RueP33M9_todaF&IYIz-u3KQ*=FS^Vg=f-q79I-}>bEg$+6h8* z2vZQ9R9b%PMON_zw0j*ed5}RQtd-Al)%c5TKdQD-O)alFV=Y=@QS-% zpDz^6DdHhy7h(Zcmj~h+WgCA~y&9*CC(aCh<=tE&n!?M{ zFkCo!fJ{Z08~A#nq^rHJ!^>_#XwN%_6B_XI$4{^BnAa(Z?K70(U*5QLsjGjyOs;;1 zd~`IX*HZ1~YWn#$TJQK|H=eiF9`G1;5=;_Qt>Rf;0j||3&YZxSB-GB;pVM zK?=I*Nfyx@V`+Fm>6@=Z#SwsS3Wh{>G{s52iNGC&ypK2_wIRH}@`yQk1wY6s8sO@y zq)ntYXnjKzEf^X}rc%3X%KMAXlaC(8Gir6wRx68XQB?j0fB|~dae)MPAVQB-mK9?X zpL`a}z;x#4%fN)%>1*Q78oW|7+J@J?wC1Am*_ibe7K%UHDH(nt<2ZS^Xoy1&O#W3o zmwU8u=v;SPwno4Tb5yLUM1lEwX7B{A(bxDDG*J@o8Yq0#eP)q|{xj^80HsuxFOwa5 zD@P|T=$HO&X!jf^*{7?G$1|!uikvGdHRBzfFmC$Gp{HLq6l(LvH=RW7I_;dYvD?sFZD=k8u?t|YwgudV}oJ}FWE7%=SV3!|hD`S&}Qmrm?x;a z*dv@Rbpyq``=@4b=N!m9JDKTOZG$FX>HKmu%pbeFCSsMfg($ zR?|6s831U;R5#UF3{4#NNW?I4T&C^ zvgCe?>PBlUO>MI)e>WV-@N2u(ccuQ)N@QDvTC78zBX)fJF6LZtM5!X`U?Typ^`tV> zb`0}`6udc_J!}5%Gk7a2%b|<6{KmaGwcUPS@A1GIV|_VZQJSsUij-)E=>HhH^svC6 zfa5?ppk|vcMaE5$Cw1pC;yN9r_NFfW~ zGN?-$PS^D`k(pe?x)~-;Z-6_D3@{+uKz!cT!Yj-*c+BTR#jgKJKVR@5P!)|!g#~BA z_17q)`L|E$^!tVbNH|Rc?^^kTFG-i6FX-?b7{C?Hxv&}y7O4+EC@8XazrGT2AUb&` zmw<}`^7s747DLrXQybP?DPkit`IPYhE2Rjh#^#$J2%2tsz zjmbdXELJD+>}7~tuTTRjc~VPll!+!^mo_&xJN@eWTtUdoC3|$?u#Y`zeX2Q@7X76T z92$8ZSwr}qObYMEcq)xI-;Uyu@?^Ge$oIpK@svdyZh^`ufiPBphrI>{%kNuJPSDpX zis&)m>tqrNa!O9tF-a@)DIO~-$SLB+v4*n&mu|8MQ+gl;kKxk!bENY5?YG3*F$qsI z2`q}~lO%M{?uIF4;GN;!BP5(v6#@E(gB@~&r#0esqfWn%1(8k-IS|0UK*U>>B@j^d z{&=9i15OI>vNMs53Ef?3&4^j~uC$-d-{nM{t8@q{r<6`XT_V9jf{hVIit(#9v#-S* zN^J(*P6Fuw@2OgySms1U*BqD@5@`XW;<7Scj-czOk5LdAqlV(yXII605DirFS{`aJ z$q6uG8?7!<^Mk#qnPvLk`mk-u3gGT!i_FO+vNPr?d?`QKrPbt+0M%O_bNd}(UM(`X zvHAX(GOsmLA9O^9q5()9c`WsI8{5`vERD#9QiL@sz5S;WKDxx` zPaR)%LjF~}%RI}90y(2iNPuFoq&-pay<38ejumMFD?*$7vi{aFS5#&?WY)p&Rt>+& zt9(|{i@`KA)}Y=!fByZ_JhfVZpowJnxgL0E6)pjo5?HAvZGFG=YNAaPW)YZn$&=Lr z=*s4gytgTH#S7`~wMX6OM!rQkVT1IMmsJl#MnWVdyg%}k=D^W=aQ$2<+vL7UV*sY? z+Was`Jf)7j5#dlCvGxlnOW*K7M>|dnblh?`7&|&6Vf$sFWNbO7#R7?rF)}bk*-ZKD zK>S)5Lf&N|2qbG5{*D~s>(Q~!KKmC+);sssSH1m!(sIMgXc454bo=^-kz}tH;or%k zmq}FIBUPa&5(=jUJJu-TfV#D!%WHy$mMO47@ml?HO6~m@qU#gA&hJEn50=lSrRaGQ zKPCoZahwzHladRT#7u$xIX@jn+`VQ(J3uEq7mn_$ls2nQW;06_bT5vUZE1;-zqoplwg{-uA|+{xPrSIl#dt#haw zCsfw*_Y`H@#Vl{erbPwy@&yU5@4DJ|KYl|pJnb`PY7V{I{*Ub)N_q!2;CUupjg`ko zidQjrD)D;f4~ZAVF~dp4uP zf>o`r6l*MgzCv;11Xra+|1f%ZTcaGZ{yH5cGbPR{v(At_$mboUM5EB>V)Yii2gtRI z!83EP-=aa|8|!xEZX#!SCS$5EX>OC6hQDtHQV1cKRGB13@iPoF*XaS0ekdTmNCBL8 zG?#4T*>JZ6QGLbhXO|_eWi|(7u0{Hvh^!+76`raYZj3-0@k1jMky#_HP9=V?OC!U; zRE$KgSd%%~9u&s~G4(vtf@A$R!(mYYy*czp&+{5keMATh`;|8{L))>@OthDLU7x6d z3X3v`m?8ODP@&0jzHW%1q$6>quoYG7$rYVtk)wkuq9=0_^1?ErDwOq_eitvbldjs8 zwRo9y?>?8Trbh>3?w+H7Qjp0ddCCcMRQb!37g)if8F}Dntt3%K4dJAxZ_)q_1{7cw zEYwzuW+zUmNYQSV88_%W`V-d)C<&gV-Jg15qTLsUtwADz@{!7t4WD7R>9xng7dQxG zTrK+h-nnc#h4b)#`Kag_pW6z96Bp=a56lf{>6@In8YpN#*Xzs43>VZUFx0^1ug`VP zv}y$RoJiSbp@>l!fx{aub^0MRMk+DoXdU)JifHlVmYAS9oyx|xc_v)ZC5$AyYQgpi z?PR|Xj%e|xWBE>yI`qp4s~!>O%C2@yf~DUV?}rfQVpyGfq8*W9O-*~8@!^!4EeVD4 z(_OCH+L{>u#J10e!7i&-JUY;GI6Rey3e>I>Xr_0h?rDZRv9wz?AZe)d$HQ9vYx?q9 zZ+*-i#w6WyI&r3KW^CQ1nQp(_UD3Ill_sDB61SL~4i|7yi0iLRS8hH?3*@l$Df^dX zwZKjg&%%EtjBrdVbp+`JgyYv4_g=4={1+(M+FwS<5EttWJ={S2pP#!uEV#gq!^P&c zM$)z+chWk25F!u+@9prrI&qXb#J@v#R*l00F+o+{hDmq@KYfRrbZ7*eQhQ4Vq=!A} zz&hT#g1d%uSwxXf@4$G7l+>a(?mG&15lV@r$}9J!tLo7TilQO<41y zt@7?Lpsre{+PMK`^#ij*eq*@#Y2U5@Qr!_XGbc#k5IN#H{g9dJtM*`ApZo3i;qt8u zN-&vcg}%-CM*uIfyusad&%>=sHyPB?Z3?L9^;yfGekrA2#}Lv!;rEK=Ge5_p4=J+B zmz^d~Zbt9I)%gAhgMF?WOV%Z(TMXPMZgY)Oyz^ztX+*x2vWC5+iub`@n~njfQg6eHz0LlMS~tSvjB{8@dO%K@a^&pU)-o?}67nU&Yn)Cc z%jEkU5!Hif+QN^;w@IIwfqP<~!!uL@BSPkBf;NY3o5)~tfeAGC(Z;>TVdR#zZcf8u zna{ZV-KvC{X8$-+BSLKx$jps7tT3`}Us-$7pNU zXYEcH+lBjQ`W;W-ev18_o&m1Mv?fe@fsXAotwAHDUMJd&d6cDR{Z=$s84~Ot{o~3y z2E##r9YsiZxwkVw2Mtia7-h#|Mb4hSOi>YNZlSY|`LN)Km4I90KPo#VmZq6l=9>#w((JtcrW-`mL&36xVt>viw!igU zX1&8KW5#QYpOr&$4sN4qM;83K32bPI=08$*XG>&TZ;l{4)WrgL{ z4mH?_VssTav54hdk^KRJ<5xOc>Y2K3qVtz~96NoAF@4AA!6AdGgpN-nZ^#_wxGh&=h4T>@8 zu;iC&Np-wkbYI`cw{*Xy9Vj?lD3ouSsG3Nl12#?ZMAXT^yaYR!lG92VOOa=pN~Im1 zAAEj)C9G?tYILMt)?)HjwO;H`twzp-OGo|10DkzI%KXt74>1j_0Qdd|@Z;Y{k+IwI zq2F+|k|_whVLAYJv!n;tK`8oqrQolZIL*(3a9=(Gkl8wQa)*X(`bW2JW5Zs=47~6+ zhc@GeE;hR!^sTAeAGsLHQy1?(jk%s^oG-v_d^(!2CI#v*`}YU9%KJ;9?hl9ZAbvYR zhqTM&MQm`HDsnu2QIk>?85mMED6sOLi6zwbQwdowidAmLU~mDetR&P@AAga&ns&Rw zFXQ-cYSCZsIMP+0%OZN?1(E*ta-PBh^#B}HSYtO`3;?TX6SXeFeL;U}S2l{hJ^Ai+ zOkU6@h|<7Q2D;^2Nbvm7Qh9Y0EhU(5Fgc~bm%(&3R-hNTCso_`svTzwH;#Jg$J&ie zpZaHIvZ{`9K~3(lj!+%ZD9oPg{obD|?@`&06FpIKPR#UL-w{VB zv^E2pv2=OA&+FG4O@=&3F?KwMW}c!pibq~ktbaqYEtAqxhVC6y(u z`WPc!SwC=&VZ$#9*bHGp0WE&tA~5^_m=cKu2wHw2IF$HGnf()x9d!;@LDDj%Km5Ox8AT{Ui4^bT%B#O4R=EG6i{nb&w#f8p(3BgJ2M{Z`}FE+e*4LaguU79!;lS6Sfqz@Bi1`1!uv zjlU42MLnazcM^HKi>auHq~Wo!YO>FmzE{;CVf@%l>T(4&mzd8DKdRJnrIAB(Fz4h? zT+!2J8NI{~)(`tStwg0+YPUC{++D^78!ld28kxVT3vgI= z?f1&hVJ#!(Q@tz5^nCuRm~BH-9(qmPW6fBi+n2g)@JLxG0lU-xu11FeauY@Zd^p-f zzyyETk)ToV0y{j027gg>F_bt#BaqZJt8n{79pOeN3sDpFC#|(tsN{5B!9UclxXm4F zvLZkiKx5D!_jHkmOgKyh2gD7Y)Dyy5L?o5ippCz*Xkf)zJL+|hCMRo|A`F}dWgj9- zIo0ql8x()%UWT^5bSdd6>U4>lnYDPzc_L|ulO)R163KdEbE0FVYMBlq;|eI`ZN@OE z?#6_XoX8RBkWz$k0Z;lfc+A>7e~yRrN8&)uH-X>8?y5V)KPYng@ETyqcrgYzN5zcaX8Ypqb5U~|n9y4TWQHsZ?m&Z&VD27E_Lz_|ZR?r9$SH~oo zFu2y){33gv-%FfN?Q3cd(0UJPN$0J+4sHsydkuRKyESe8WfjC~OJRm`h&0jrUOd8% z?wZ{9asJZaS&Fs~NT&221JuQj4EyFhz{C_;8)RlYV6K2XR>LTu`rYMR`IimF9{dSfzt1Dx@5%me*^xbs{zi2UAT0RNfV1u+F?7*OR(S1+ZG#c?45BfeE0?){LkkuLe3RBU4hnztT4n@y3} zy(A^dY{_BO2Q07auZ+@vQd99dbmhUwpv3ROQ2U;EyUjr`@ktR&t#O0l$7k>Wk|9Ao z;eytnC?IsP1@p!JksXQad;wAJQlCjeHq==!=_YFY4tm@sP(RP6h*`%ik67tA@qgZ0 z&dk@8?DPZ>JZw#wNN3VbClpv2wMUxw$ai^Zmopx?R1 z0gP`fBmd~7o?^M>j`md_e}BO0gCMMoDr|3)mgy5x7V2DXkjO`*ned!nV#+k+YAjU> z0{7O#+a_z2D-TKJhQ1oOnHjnWQ`d8XQ?^aA_6~(YSZd9b6VJ$MCNf~CvM|E*Ut&_gq*?kEVX(~-q+KF)Ha52rzTYr-f)=hp zm0>-Sp&n$n!T-SRA3Zb3=lStt-78D~w9a3H>cV-aR#e8lPRP)9M1djzj{stCJ41pe zzShwY*gLri&>6}1`^DyNI#W4i7CRInrx7AW&3!1gD4X#r=>+y-Z7MWfmF5hx5eza% z1-Y$wSyD2VNdEp(#=(M8|M?!%b>&7cuXKlVDkB#!>q<_+$m^&DWraU#vkH$m9`aXaKQ@EU}*c2-bw= zdt;Z>=dbpt4D(3)ksVi+-|E)XeGQ4-)*Kb6CITYvyJrsYt8*sD&zHs6KxDm;rDR&s}da@Fu|-4K0JTRGAIXVy`;vs zwImzO#kO~M*S)}0Ge&ptq%3rCAWZ-&l&SN>2iOmR*#Fs&74k*dER^cr+B46~VD_Mj zQbT9N>vLPmMwk92ibZSCTP$R7+7-8NYl;RMdRbmfp@|D842QfIu?YCMmKQYuTqq6| z3{3NAW;e)kQ;hx`Rt{iZz$S0{Wg~E@?l|nF;~Y4^8QuwGH&I-ns>85HL@WD&H6L#h z!lnErW?GN;V_`kmBYoBMX5Pk&yAJ(wCq0*5gu(L}@nB@67f}qo z?g)CdE~HUG7!vU_5}>8FeikR+(De(qM4=NPk&~lYmiF=73BbX-7T>q2^5c3nfAFJ+ ztt0D>(Va$r)+Z>I%DJaLnHaZUSr1L*N--HluPUl?IEycjWbkjt-L}KtJ$l=ai;F&} z3Fh zDpXgNW(7{G2M_XOketD zfDN}Cgxr2{3Sz{LWx+@;$jVT)-2Kr!NeC-hA9)GOF@A;&t~tsHq7RgKGfQ600=xc7 z`}18Dc*rRAFEH@X5p9A8NiT}OQUaVJ9n!};k~C}0UVKCD(ay^)Ad4Vh6YWZ=8KO2B zR<~z+SnGKfRT?3K{wX<@bmJOj(5Z==&`>h&pQE#VMchwm3i4CnqrVr6L^VwYq++ZS z_CwnE(f4g0$7fAoOzC||nwEIxE}+!#jNVODH>#c2zX+Cy=A<{cM_`%Zau1_e2wnS=y5fI_v{RlS3Pv;N$ zN!}}7tKnqx280$N$|*6l_O{c^ zAeeCEhH#<_Y8U8fRnQt>rgcuKcvvM@PnfYQt1vz%Kyaj_$$^jbaJP+3vu{%CY0>qH zD=14Z>aO^RVZ|Fo#L&oe=B`to+2;3m7(|FMvq-St8v=IV;&n0TrJwLd^aiWN)(Zpf zS$aEukIq(2wZS?R9aPS(q~oi}htn3U``LA|9X$%sG^r7Aj|oEt%fnMbU^#PfsBP9E z0b+D_;gFz(qn|io0I?-!wr0;ygi~O zTThkuz3-WiSZ3}a%}EoFr07N{AiDw8<~E4}__^3q1HS`tRA}>fDJ`8hosHfPVn!mJ z4oWGa0WVmvLgwBxJZD3eJ)>jY-wYEu%OJuRm|J&(u}`VI;d?tfEnK23l3YxF2mR7q z%?9%ovwUnbe0M|fBLfwtd*ov3Kt%5eka<$=bfgJf$7c4l#D87wPo^HFM7qLb`a@B;y81^;O?jH&A~Me8r!ELSXw6O2;cciE3#W% zav`k{DyXP)+T9x9wc2a43kmr<6#06AVT~tg=9G${E&4ZgY%dcX3C2Qn^Bb`g?{RDPXDdjs}AmW@Wk zY1`$luW!bWAB~!PMvI+c$_q@>COR!WVal9m+i*|VcT&lQGwpNLjQ`oND&)-};p*R_ z)cl|y-hG2&YQDjlOJD1HwuQOu!+KeahFD4J|5lQ=x4|IdwpL(L@&V0KL*qM$z^^yX zBY>HqkRvO5@#)e)yCpRy>PppNTor`)G9c!5)vr4Ecn~q4U(gfx9|7u>(*CX5pF&G4 zoKZPe5*{=F3EKmrZWC%OoBSDjN#k3jGe!kXx;4*3`JTY{+8qzeB;x=r>)o9MwgB692 z-j7%8bm>3u{B9uBIYng@q;O3Y7m)cH_tIz*!eNRJuZsj}FRz&wPvSf_D$qHMDe8ku z&HzTQST8K9_n0R}QD2^8@(G#ZMp01$m2R@%ioPgOXt9K=O(nsWim_aw#gs&tgjK$O zDe4$*zwWZku;@DDfCGw_vHqZ+yZ1~G2$ul!0ip?^*V+O~`{4GPs@=hi*1WXU>Qrc4 zRz+Rrw0Xf-E-lV1_z`GNL$2%GzNn5k?A>680FL)J7&ROnjY2&iE#3`fCxYbWZ7PN< zkyMkfd93wc(_n+EZ0ewcp5ru`$X|xYEx$ukMi|2Ma!5i3zsJ5gj<2U zuK*VmDDXFzqp#&gfVBSozdL^65iEIk1V^>amcUfrqp2aE-Z65JRK2y#H+n07HxMD3 z#5379UWf(~?8|caClz>!DGQ2-8#;}>Z0-C#V|#`f)9hcwdnWF?K;^S>cexzKXLN$XT%Y#+{>lHB5O_AQ9Ul8u8bNCC>rdb zn*8G$`Odd@oQK|7(+hVpq>Y23m>Ee-oFH+N!di+6k=eG=Sp%vOA)i8cF0x?{?%&#a zo3g5sol#m=*w7GHB)lgW;qP7>b*D>zl!P&XOwNI)+XGdCfe{#KP50u6BTPenj%LA9%Gsjpxh@K zAQ<2>JueZAW~_{EQo}=xGELj;d>l9ytwu9BPwahp&5x=Ik})*+aN^|QSA~N!EH}jR zup2RTla|%83S>|Z2wyeib|5{L>lgZOu*21NU_lIchZSTwyQhGSK1$`>ElN|gr5p%h zw$*~(1qlud#QC#Atz82@i_sM84qq3JIOwA$eNL!LfScBe7~I2g_v z>a(>4Y{GQ)BC5_#3V&mvQNyqeOcoFL1wRy^O-Jx|axKY-nI^H9mZ{5$bv zSgG!m;Bs<(731f*SMOK@rUR!Dru|iE7V@nCHX8}|B1$0!>P7vgE!g7J4*nf;UX=aI zN^xDRi5>2^-`1YI^@b%YxaEj)UH%&}IuwzHqJu@-zv@^RA$l^SPd|uovga2y8VRip zf5MrVWXkIeFbyT%amUbVnbzEEA0Oi<3+vJ3yw32GOS*~37{A{5W=5Bed3sQiUw~yC zQKmCZ1ZCfW>L&z}_s>xR;;C#wn%f3&CM4*$`sP&z3f?t>VMz*eot_-sZ(Z8Ll^1z0 z2$U^|Ol{_fqbFh?+M3h?b|!Zk{yG@bs5Y}?IFuX(}HP@MTQ#G8ZaP159bG6R9IXs)V1~wj7V9u5f5SS z2{qV8<6>)ya zk=D~Xk3BUZ8(yc7)|-ZVAXsPwrw|DPwn22@8h zaengmYg_QP@nRqyX@5B~EZmv6AwfI%{4&F_aiyAO??a`@^>1_Ev>)zba(ahD>FwRG z0lZjOW%4l%ziaGup#y9FR8zaYF@{XJlu?bT3XLsc|4Y?!HY%1cdwnytAgw2z9B(%u zALevK|KR4kzGtq4Jv1EcJ1P)O6i{kkRS!V-7#?g~Sk)CTW}ap2{v(;mlMYuF6HZNxnw= z--WlPtp+TJ4(}MN=kvzhqoL-@3ZA+nT^_*BoWFN)Z_3|RcBa)z&Uw}+!rKU}uqe?o z>l<$}RW>>oS28*oB%bFE$_Uu}w)vhWgr`)}x1&(zYhb;i2&S^+&jEy*gesQRJJl4+ z#%NDA--^2$#>hd>xcJP6uR+b*vZ5&{OE-(6c!zmjQ~fW-ioF3pN%h!AHLFc8mde7& zGVA8Fq~9C{{T`pxTfuw+z89(v^?_^11)ZNj4lBinRYC90zqsYU&irR%+=q?Dc9p^fks0_HjPeo(sW zpN-8ZS^MAQ`IG8jXpvYLOwM$EP`;V=cx?VI;RZ^l&k;Y-#90Xztv_AZ;f zeNe9|7YIS;tehjaL`BYYB)ZlYFwc4a0gX!{(mXMnGTB`9FSlGnI3c+Hm3kNI@z5KP ztZuv2c&fRT*C?cuY^WU-K78vVkQ4F7DzVLYNR$DNy~QIp&erso^1a{QYuE~o%bw+X zX88*yZ`xY0BclC?%Z`)DN8b}>855NeF5w5Cnp7;v% zC9g2t)(BqjEYTij>x7^?_Ek2-C!q++(4MI*2Y;Y$4ACOFt_roqD)9Z#m20t4kQ*_J zohb*%2m%pS@mPXV7qwXk$f*Ut12>pR-|wl{O^$vTAb&u-3d!R;meUmlCxcjbin@RH zxrH?AHq^o)lyIeLB-j+M9YcP;BuuxaW4<$kd95kVSU587qp_Hz{-9Mrjt463IGAT1H1NY|IcxLz4t(dHD6RY`x zRb6u^7$TzB*k#Q~myw3DG|bs4Fh-^RC;fI*m!5zSi8Oz-%9ef@hdmZovKJ$p;UvcM zow>(5QgFRK13Ofo^VrvfyX-}i`;lAeZ;MO%y@C6|*CeL9PolTt|2;8#nLCONJhKP=|Bn=sK`$rI?#*)q>w1eB=q_wWz`}2#I$TBUv`V>dO)ke{C zc;=glP4nfiv<@Ppjz>Y}H;YNp?Zza9Au|R^PV*d2XS6(zl8C&a`QJ52{^hA<>hAgF zF4x~*cB|693%|AlxlYamV{jr5=6s66Acjs{6RCt8Bu(6WD#Jbb%BFcIJ@%hix7HTi4``xz?vhf_+x_I58|lt-%jD^E!&(iqd}wsT2Yd_@7mA|; zT;UAuslC^}(6IeIQTueEl`5bt0~_lqKHwT>u|8hg+llUu3mP^A6p|EWZXcB-v37=k zNnXlmn=L2&Urw@@PEe(RIx2h zWTP>iw}(m?pm4?J8~lUiVYZ%YL}@iV(zBItpEpN*l=pY;&)>Q~#%V1Pq`v6MEBg~{QI;t};S+2_7TpRNeaK;Y+`h}#M=_>XJ}=)9_9_wv$+ z9T$WjD6cq&LVtED(jeZJ*=Vf(dW%T`JR0+Dhi&(PQTIuIL=nGX9y5EoLju5_8UhoPB}*D>@w)=yAG(A6 z-|)}ZF6IG5@d~F-uo23Tg(1&oWN=ca?nQ%IqkIjhyl_O^$ICXTqo`-6N{V8bYs5jM z2Vov@Ui|K1g43gLILH1XyTc^;Ly*m=cXw#yTiBz4njDF#3cg`8w zHvhUYD&x=vmhEw{8(AzMQeuR3Fa_iO=`}rgKtAm03rIk+1GUGB-<(n}_ zynB~C#CGslIEp}qbsj7`V;K58=Mo%-cuNCA@46HOaa)>QArU?p1mnoyBE4veZw4hp z06FfFf;#{y7?-yU`smrOs0PA%+Z$@om{i*u)||M=fU64Xs{+c*y+NtkQ)Hm?%u$?q zGX+-RUL^2dYgK4NEt{=o;v=RvHIpYmN zz#SRK)&~$VbCg0CToRz@(n=k1t1az?KFr0-`i69Bv0mfG{54nmkahYUqf}$CdYT8| zRg&q@^^xl4r2Z>7HZ>f)m~Is=W9!0&%!NLPo=eXitpT+ zT-+N3j`syNT#-&Uw-348uHG8-BJ_%rF~QAv)dQCZ^%t5|)(zJo7wL^Z5c+h~-Z1A8 zo^^8rzq(CQmfgM zb;JE`vi9Ka-A9LotHB^vL4ZGthTM}i_*<|IAATkJLpM{r{#v409h8`+;S5)H~Lmv}};w;p#Re3Mf z37uUw4MnG(3MlfS5!#8Oh&!>G1DCR3Y??aIeVX8s=F#6t#|vTO;}YcPWSZSVc9Y-N zaBtv}N#kOaHK!`Z8lj3d@@$WQ3B>K$FPkF>O6Xff)(dh)p~oqzvbs@Pu_c)<6`8Jm zq#z!xGcQ_3DT=-<@!GC?hdfPr$Ne4Wst&0IIeeKJsuo;4EMnvg6gMU`h4okQ_4y$X5JbO21oGW z3RqwejX#@I3JPs%E*^J={rJ=@L0h$suXc=$Ms2WnB4iQuwGj{Sb94pI9_v#|z3C;^ z)U`z`2zE^xeMpf0K`iX>yAkRe5r7lma~R-vRB$RR@H9)K5};maco+vn_uiHFa>{*T zO^NjKlV~bH)eS4oDs>Vo#tT45zIZ3{j*=SVS#PvZD(S>r#DWRC^!-^q{Y4Q`4+^-P za53=H*T+~*F*g<|_SM@0{0Vq!Ja2&kMFUkGuy3yIN6p5F{pYEun%r&C5fI$^WN}HJ z`R{7?*6)YG0W@648qCNZ=Xr+|O8etIb9Sq*w`8Q)|6FbPL z2}ziBARGQIBRb2Hs=`h>R_D2T?uQBf$ge^I$RR-74K;G))I+!ChKdJYvAs0Lg~YTS zc(ksF<5$22sNgb?#M;apoEes_4lI1XLMO!vDeokcbsYj96ZcX=$nCxUR_b6mgGB8c zYQ9)LY&a!?Uatxpp)Z523S0jd@G7(0)K{-5!e!DQr7Sh(MGWyxNOkrGLR=j{VWL6nNE^Wf>z0 z*5%jXLYY*YGo3o^ihP@^oY~Cd@5`CF)Qd8j~=xMHdDOOk5pYe+nJRGeLVLa{Eb}j%x|!$qJy$n=s6tT4mh;!w#HbVv*Y0sZc~8@m>O1Wc{89Uw z$pHUwR$}w3#d(6E(&8CO(`r{VEgRvRG{3<<$G}gP^9Np{|_!8}As5ZDnr=^&k@*jZYw;E-8{XhLx+R;5&x6LQMbZaX+XiD?Yf9 zr<)*+g7e$a^ocB;?a>H@uMdpFshN-d@TJ5NIBJFA#&tJcwd~4HTrLprHH_7r!~(%B z`mp?2wDceg+`&6a#Iy-4p<;IHCtqlUAxtnqv%ej$6WSD)Jn!$jdYio*XTK-@XHSao zgwK!c3je45f(%X13h=AN9MdAAA1u?Kbq2_*5*a^TC%mreN2Wu%5;Oq8p+C9!?Epq?)Ix{sii)yVUI-CRz)^F zJPbfRTzsv>_myiYgp z-}kYqryJ^$IdoSdNslg-RARs>9`)A?pJ0|q2?v5B+!Qg5V2Qqrv)se+Bk&H?cr!v+ z=_kPeeFVv+I1DkgI@IOT6C6tqRBcI9$i)92_+BlxpbcwFUj|6Bb~(x|8Qz zVA}0M3?-%3;LD5VuL)V7&WWsTrVAKi>C-r`Z*Pg`RGQjMH_~G4LX9{iXSLHRKYh9% z>l-+WUJFx3myGt?AYGm$7|*o)7y>Q(W`t7?_{H*+O-)gtGZ z*9PRtoGx=JCWA1(ti?o2&vC0B{4DJCfmz~hC?G#&Tn6ktB-pcSYKvW!HN=62NF|Iz z2aX!-Y7j-hJ21G(?q5ER*qmm1XwtZ??4PNJ<3i^jV>B zq9O*|$%P|t1<)dAsdju?>`|Ul8xxjB{DqxF@@$WFDSjX$PrEz(OzwxG!C?eTx=CN< zQeu)V|q; zH-Bqz7^o@}um1ksw`bW5ynXDt)9qZ`&)t4`ed>%4>`}IFdgz>K*HG+(~WPbl%3MRfDg^p`vv(eu0 z;W}zy0z;||;&0VQ*9oO~rrY3dvqkhMQX%Jo54?X|F#C6Ux$qWl%_#T->QSKNWj6?f zgwhfXM;`j33@u;-#D3@?G`tD$?rV&P93t@8U(a2V4gDPGKw#5ta)Ejvc3kmJdAP#J zz(cOdN^zMN9kX3xHQL!%G|)0>wJU0Q@d|W~`@M$-5KLSdh(ZmzNDr0z!dLdI4gPU! z3Y_&1%{{=Ixs?&hX`hRCL0x@}iIjgO=?8_jFw+Afy5)h4E!W-pb#I2&h(aT0|1!yO zP>%5$31EQ-0ad{=YR9X&8?}@Qgyf2TWM)WMg!{x6G8~=ek&uAl$H5WQ8!)d!+HY-R zI!#$svynXT$3>4^MYwq3SWDV83$gmUcZ2{DOqS7(tZ0sD{dq>GH()^FsVwjw4gRcK zKk#y4B!s@7i}ya635C&39tWvaG|rVRVjWW!;&OO#4Zo<|c$A{yQlI1E3jM+^C;7(+ zVKgE%t9T}Y|Cs@tjTp=g?~F_CR<6Q#K#S{EywzMw6mPP;ZZcGtG0zZpn8iRb)Jug` z3bFPDy%6>Udu8;hu*(o#1i2*YueF3KVb7L+^LW^;3Sg!irk|Xa&bC0r~VU5MADkYffuRt z8R4Nheih>{Ip$&13KVkB5}wq6WkBI}`vfj_0i(V)b{rx2Q?l`-(g%`xkNedygAv2yA1~mz5g)g<$MIez3Tj}1 z%h~Fd3hwucU8y>Xt^&Y|KoI-&q@J1-xuApd#0S53$0O})Gt?WEx+qeItY=guj?6a# zCdEcr+enM}8ld1y#SDtEM`UhJ>aaC4OUQgz-{_b&OV`j+H#5wbqpxN4FPyd$DlA{EvZVH6>xcYP$56^gULk3@ zTgB~cZTOYY5#yz1kXLaO%2n)L;bWaelY5rfs2=5|eT{>!gMXXEYko<0dq11L@3U$c zkm{h_1L>!m%Y`CiZTY$=mUW;XhNx=A& zl26}`ok6+hO_z3x__&+kzv_aiA66FoDqj>bvHlzSNpoo0f>bA(zzl6UGHWl<>s$Kj z&{c`vf&Uz3YSA&-7|dT1F%|-T_GOYD<7A_zPS@@yO*P{#t}3IO`n0bpj!UR|;WVcT zvXFPl=~6ugPH4dAMI)T5vAslbq;MwYqyTl{R#qPXijhq`A8pn=f|WQezJHgM)r8s= zuE2dl)xJt&=A#GI#P9R)7x|tgJ6~d}>&@tB^IQA!4SH%O0F~k` z2&RkPAUSrQfK`DB6+9zY{3l1Bzi%!zm&;WH6)2cc-(JL?b3`)b562fgogNkRD)%NM zBN&hgp@|%Qff*Nju%(fL%90=l{l!qW8N(8VVU3?bCQA9iA6qc`TP zUs)Ux4~AQyk9EjwUPxel77Wm08fl+V4~>Y(@5`f51Lx72JNJ${=e{}2D#1{Cl~?$& z-@pCy#w$Nf5<&Y%jL7*}&Dq$00z*%Yh;i?H6qqv?Wi5s2Nm^El6(1U8=o^<+&7436 z(DbJsbuje-p;X0K9sI_`;zvhO@4tSP5uFq;eo3AlDl8I*jaY=1{QE3@g$6W0lvPn2 za2OzH5$SWgiS83cnG7JdleB5Htkv9;Dn=mL2b*Ce`DR)^T5+{O&Zf)JBwLa=TGcPV z=Qraa|ilC*&=rc>f}4(-@AnX3&pe1MxuI0WsaCPH96zO_h-C*3bdK zOepArr>L44SjPPD-NGX&S0P%INy_}O1q5yoSN7?aNAv#FxN9v`+Td7}hv^)f{ zEDd;~YpIf8U+oIbXI(~G?~Y$VoGpyFWr{-@d_FRt{cxvUm-O5b6i;W-H@7rmcsOFG z`~j$o`Sew&b&+hvX@2FHukJ~t($$4l)|<4@1tDaZU)S#qRt`MR3?d+_>U{5oe> zV%I15JM9=~_q9O#zi+u8S0ts*1M}CP&;^JVz>>|(iS4%tJlPb~{1c$4w zjOy8&h#iHpHEkxk61V9wz(qb+wn9n#(cAIun6)=AHWVUc7`JxC@~hp|Fuj!~(;^UW!RQY3nSXcxcC`d=sDT>ei(IKMyS7lCS`6=x z+nvqLmBBx^)agJ|Dnv<9&wA?DmftGmuS@M$W-JxR*K&^k*;mDZ2zi9EIsCFGp00on z4B@#47hu2%5bXMT!$B!%WAS)(B{<?z%PrEUWzcqgg5McpHIO^51QI_@=uQSSVZ3PdQ)UmKgw2u_rs> zXxLy=&bBP;`Yk@2Q7qM61Sj1z9vwW5>O#VI++SOaTtv>6L2XbYD?Hj+DmM)$^z3yQ4dC`R5`YIlXLmil95}vb(kcS?oKVr+} zJ>HkokUHvpdp12*VsTj)TwsMYS;usSK;vsEOi*W{ISocE$|9tzF+xh(!J{l)JZQcW zw+aLPPJbKno*Xhj2Y;2rY^9@wUPbb+asw0Lh9qUEvg9|jjVWYRe$=#g#%S#VC-(h)Z{?kaCXvn z16sgf^hFpgxElk}OjElDi~E)>Tzv-EnCmr={_(+90-mc>B<(xMOtVdSLES~HE0}D6 ztBMsZwE&k@e}(o1@4)J0(e_ZcMhDhzGUpbW+v^bkR-{=tP@3p(>k9ik^0Aqsph3gr zcUnt2vl*XFv16g5;w^U;0S2PwwV@ASpX@o%U%vjhbst%Y=2%3f%Y2QG20z4H*mXz5 zBmpWbiU^3*TC-O%qc;tfp?bv|FEV%>9>xwQM>Oz6+}KP>5O&~+z}2H0SepG{+>MkJL-CGBChP;<{y4XnMcOYa1Qjfe zfkhYhV9z2*LLG4Sy0_7`@qc;9u<6yeD{a#GpE&TRxp1@5` zdl>JcxZs`iAa9kaLB}|3(=M08u$6l5F%(LsCxw3F@KW>;I8>DLi4tEk=JVWo3Ot}} zhSU-hs0N3-HOyV(blO$TF%CaR4E~u_dHo6ffTrP<5)o)A?c4Ge+l6k~TtnQ4O}OC=fT-R!+XWb+xmGyHrUSsCYD$Of zKuW8hTqd}mb{7A=SbT9+H z7FS*PJNoQQt`C_f{-1w$IUZC!a~wH$`NenrgoDr(*}AEGXLv35FBK6VmIkf5_+(#J z8W^FZcL=doy*rAXqIZ53w%CJVhTUIxM{A3~LmWc&epO8Y4&HrHU5)cl%+OW#Zr^#; z8*JOa9Xj_Xx}s?=#n@KhY>+I=D6wMG(TtItB7G6;Are@!+|~Siw0949$HTk7lbf5B zm5HzkUS1L{&3$SRr~Zp)mg+q7Et1Q&ZlL%!{@&7ceA$1@=$a@7I*^7jRzKeElIrqO zy>0afpBXb6W1hzfAx}d@2$o>>dIqkH+FvNMNiq9vZW!Tt|22I>(Z2I{oQjKUhhF-J zee+ikDx2DDvQVf(bV;NaHkbPyA+k{BdYTb(JWs%WN#y zOwH_jtw~cGY9VS|ScE|<8fc2}{qTc%x;ITLDMe`+p2!>QKG~OCX%nG(RqhKkuHizx zBQhz|X`RPe8B!kaF;iSDzvC7fNS%Sl6+}0I`||vt!)q(4MS5Qk$0*}Izn-y1%HQkoM(v~cym z8x&rW2`e@hb!q)$p>C+3j>*{E(=vq}8sS40{T_WE8-` zoq}66^~Q*49T>yC{;c*XfxKTs-Q6!0MEC;gixA=C*Dv;Cn7@XU;LKAl#+E>(5iF`t z%4n*&Jkdap9s@Fm?nQRN3B`jvMup=iGDv=-QXf?LdFO}^$^-D5(sc&LEVY1X02bI+`~|+O^tgC~7^pSP z9P2NVq;Y*Z^_@I*t>%}|0qoC~Cvywb>n&meookwL+J9UWpvV^~BA@b<7#Qoi?rNwL ze4kEsNE?gHqtFiK6+ZXN2BeQ&1nfTr4n7_k(wM&@c#(kH6F%n=wgEKxQ$*pXn=pOs z>NSCFc!}4PBLF#Six^PCBjrSg=ez|k{1F=9P3$AoE4E=xd`Y6YqAqRnMsU-K-uwE; zuUD6p%n9t5m}5G6V|hSS@Uiu99QhgG@=qAx;zgrSPcOxi1-9T^xil=yaMbzB#TVi?@!4gLr7fIS6a#J%fJd>%xM9*0OLZ z-KtsSKkT{Uz#Af++zpoKd~hLa1;V*C>#|F{LBY0b-V4}m;-*p6v?N?^qF+`q<7(** zPV5=S17o0imW04hQY(4r@KNMl_p5S#u$*JCPtphVXFa2DaeK4eL1*=5H%LQLGMu{k z^FKVYg4DlU{#uP`YaIBa+w^4L%Mz}A!7fCg3#WG;8#W5(;<*`Y!378N)YffR!yN z9?Cu`^&?`%x}+{Oz+gIKI*Ktm57$xdnOBRceVwkua>9Aw&I96<7pM>_bgfR_Cst{n1^#F*_b%yPYMcR4fvRNG<^-QI3K#_q+_! zU(cgldZvf;U8XLsxHDD(r5@DA5`oI<*As1*`ghJ4E1Bt%_l}XZsaWNsog3ge+p^Uk z&`rt>U;jY7p74O}JhFPIx9+rpmNqo4vaX}8BfYC&sm$zc&1?fPNF9PbU*pH)B!oZ~tt|@U)ovU;~sX5$rGc)X@=* z#ppB;9QdZ4vT}ILw&{IGX|A{E-llgw)L@&PpE-ctNA?8u*U$ z(VC6TZNG5~(0)SWQ^iRq9d6(AZ?7Gab?6%qBwBLfOFZ4#8OR;mM@Jn2A(EZ_Ta z(gEIrd?<2;y157dwPKYO9>??YWiP{_wiVpb?ir1QDG@+Ms+}}_>l>WCxRpeedw-pO zqnhMRr+#Bn`j3GMtZvRedLO+t2>eHfpl_}9h_;%rgI#`Q4c&A`Dd!-Lehg9oogDL{B-3B-wF z#cg39UGe_-qRrPF2io-XmhKiov3vc89+W-Z>$M;QXoRMMj98^S zK9;x+N?jdF8t|FBlD1$xf>ej}E>va00FTi_6>#a$CcX$lihNfc&s+_FuoG^a&qqX6 zo&?VliTo5RE(ye+!*-)rk~H*6vVu--&GBEHQzkT(09inAAAEjpGu zcZsps-brRmv~)+x!AN>jTmix6g$l*zRT{rI68V#^3t3c@1~YA!C<{ES5g&ba&(X1a zxKvKLNWmhM8FI6iv>OWKoesYQpEH28s5>osxs0z4X#|c>p~uqlgw(a8r?=Ya#%VfK z3HqTzNK~NJBcUZE?Yt(&@nRjvSwx@!J(B%f-H%Fghmb!r8(Cw6FNbfbZyj8CaKX!S zC*d6{AV!K&AqMvJ+#XrKKrOolpS>FjG-WJ1#O?>#_elg)#LDK_rMOjj&j7!-?xGr+ z2jk3IX;3(7z}T<3Bbc*q0I|NbPby~GxW>47!~B3?rrz%0zvu9eWIeY3eE+aEwi6I) zd$#OhI=#(g#e#!wCdvR`Tf22?imy+0UC$>4m`?u^tMnE2y{0(7;+LiUoop#C_sjGe z-kvv62w~!Vh6_}`N zn|>wY;DCy0rkM-NU-?wcnec3SDlJ*|dMhxT(kAX%MpLG0QT7AMoIOtFh z(+{5oQMR5(lUdW6O{6nC4ZR@o1XSh`;<=| z;uS={8kiPQG_r5;B>8Xy?R9oe@2mj)n|iqch{IHI;_Xk!yIl~dx5|P-|1(J)Ll)6N z=8IjC-+O7XOInO@wQ@$GyM}a}*7F+MPe%~C9xg(2R0~)X{25+ZYR=C9f@0AE!fTTw zS#VWVNmMleIFvYba^U+=gBEN?k32i=afsY(3Lx9rKwE$E zDjC{T0Je7A*YIDhC_@^;wx8juGTF;>e*0!)LeCM5Eh%YFcYQj$?@Z$V^X)^`;`jZ4 z>8nWqjpK)eI?kxeod!N*@}88aOY6K*N4x_&lWS1@)rE{xGamsO;^TU+SSa2Y4k)&z zD&=Fl>)98NoeYCoqY`k#Lw8+N7sU=I6}xb7Nz=3MH8Y*GxD-0Vt4 zR2}!e83o33h~^vfSiYi+E##ZbSA$}cRY|$e3Ftt;9iHj#h)EhT`cMPW9x+krmw_B? zpl}c-__c+#Wp7Scnjv`D&5b%PPHCI?Odki~VEDEx{n7Yi?JA#RXU9CVIWZ$~+hJ=m z@(gKE4499Svq@?Zm|3~s_wEbcYLdn8zc!LJSW}-(sJVR7UlZIfVqgay_oZe>R;4cq zCTd|Gwca^CV#Y1A1%u1RyuOwEi(Hy zFthKk9#II}=%n6VJZk;r8|Q%FNdDhldQ|t2$blADbRZbK2g3!D*l2HxX?7 zvmV0Vyv@uf!Yd+OzUV&)(Xg%R!5lWzL6>IO? zxv=UY_;9EBw;{*(au7yVxc>HoBlGpLZVA3S;z@w{Is^wHZ?v!5cD#fQmg+4G%kLU( zlm#2&5c2b-Ac^zTGums;FEh}`IDuZ>k!W%Fsx{jV7N5ctMi+K_W>lgnITWM93`m=lXQO|!_{R(a)z}wsj0f*k{V$I7;apImccI(7p|4b$ zF^URD#v!*Yi{eJ~)BQJHheny*FQ``on>={xZ(`9@OCpX9(hb3HK~p0}J6-AlS=Ei= zvf5Ur=na$z2frbL=Qem0gs=V8qY)~Ku(b)>sHx~7+_l`Se_`?Wd;6rzM_s$lQJs8+ z@Q;-EUfy5Dg30{NDg6f6BA=q;Je)f9#u_`8@m{Far@+XJh<*q7jWTkEE})_ON^Nz( z@&-HIskJRbCi8J!-<~GVWMyTdz32I!8Wmwz%;b*SR7ax~jtK7gDQhK~Qw#SBCRSjG zR+S0tpAAlx2ZB9PzKZ?2TX#lNVs?mHKNnr~cC@2#;HkN^sTBQpsn#*p>Tv$+Y~UL( z8Nr&)rwHuclwKTRgu|hPb!J4k-yG#Hl?WY}ec#3jjfsSGOkxUdHuB8#{qe>w?sEw- z^B}3iQyCN#4#5X^H~4UKd+3^bRkpR+VVXJ_sDp?TBoe5?Q?4#s)=&F z*l5E)Em`gDxgWSIZu{@aYq*4@6qj_oTOefeVU%|B$L0oWq+M3_pWAEF=UL~m!9y*a zw$&|%;GVPJ1|6ECxjad&Sb1?91;=Auy>Lz?j@;_*Js{IY-dW9(j9 zxYd?xGviLu`LK7_zT! zoFFfpErq}T!(Kcp7B*IU+gyz#BCKkHF#F9q3_>0TDjDa3*A>g7b(NAr{-%Jj_* zv=#Rz=&G+FgnAbwSw*b*;6Y&Qgb{;E>Cgby~Rr;zPKkD*Roa(sOv zdS@UD(t!|3&r(4KcSxXlocaq4P{foRm&Nu)q;4D6>c$N)K8$K0$o6>n)~l&NaX%tL z=iHkUM%$VmOw`r&>lV>?3DP41X@tDtIN7iCZD4nv;|H&a4FbZ+A}@_2%+`bzL`5h( zNu`rXSebTqlMY2RqGoV+n56i#ix@~4j%WkjA(NkYWO3v1n43G^U^hi586jGX1>vSI zUx15|Od&H31yj%_fF?Bv`nMupGt!$&p{b!$M;%Y=dKFN&kHYk+eq;YcVC?fZd$(!HP zemu42T`L$M_!|AcwAU}l@T>y3Z0K+;=;fo$*!esyjQ0clLQOJs)PWn=%c*v|ga zW3Xi4*-<;@&+aE2s?1SFxS(%QnD%EzelbhK#8$-?>LCq3GgLr$CAKfKZZUwu_T(=0 z<79qdRN+&*;TaM$J<}gS;P7c{tu>SzU|U^8br(8lE@m==^%{bcH}!%|ZPIpRWRAT_ z=Ogl7SgHF;NeG-@agEa9GL@HE+)5lLx#A&XZo@VVa)>M44H8l@T>@#;4FWXT14LNie=MK>zZR!4Za&3aZANuMB``hw#E+;{hb^ zGX%@GZGz{N5yy%J;s8*!c~A_W&8Ss*A}#1};e>2hnh2jdIDB$Bp4~utPLkD55IFHq zKyolUeMTD+M7ELnWN$EB=Ph47Jj?J#!O|vKcIPpGaVOS<}`ixjCxH&{4spfUDu9=Y*dvzs3cU z!;LXsk94xJ%H~4nUe?}wBCwVn2$hw~-s8Z;b=O@jw3}Ppt661HK6JmW!2;oHZ&<2S zLr=^`GJZiaYWd;eLNd}S7! zMenzsK>3?FQ@V608^g4fkgtg8#JhhX$xrs*3bqab%)bC6!OmKU!$K@l>e-jR2)^h2 zfBN-AO_IzpUKJ;-QO5`l&9;%!>@$mEcb<`fu-Y>0QW5%OqYC>}OSPjnGt9%oBuy$3 z;860N(1NyIkS9wzcK|iE>J63U)nOLs$hpD z5_6VOsE|6oBSl$@W7K^-5$=!T{v-uuC?w*CX0-cILE<;O*YJgN878Cw3qAk0Hz%W% z_+SraS)@m~P@B@{fK?VJZd3v*!>uw^zza3`6wdZg`BSkR7dGv@L6;Q<`82Smfw)LM zNxmHlHx;rK0*P}(jOh$$8NPB$Lm7SWyErl9-cmYw4!_PM!L$W zN>wcx1d?R=-pPLbz07PIWbVB1+uxF6gIYA4s+%ReBnq}JiH@!62#ymqi1w1t!e|KB zXto%du1}4}>)V*+*GtEFgHFf<@AeNzi*52e^QBKr`ioVB4b=TllT}BIyz%RL0cI>R z_({j?!^uZi5lL6jXD@-}c+DlyYlE2{nnbNhI%N5UUe-?5vBA1#1?P6kwHQcZ)xt-GCs^ zj;zTvfAj0I1T?H|faA6Ou0xa4cgO^V|OPAU(7B#vA#UxCe6~ z0Z5_)*=(uH?XAObX0$p^+m4&XZ}Pr>SBd%HRec3hBxS;B8=HcxUa^EV64SL|Bv>dTuW6`t|ndv$nf3;DyWhbYX z_@Y92{dFmG_UcMPi^5_hw=5lC6h<~Iu8a(a%20p|S+Op55>!15HlCm98L*_t41Z;ii%H14v2-`!*; zOMu(rCQm^JNS5I32-lF4+jqWem;wSb(U7THqtx?O=9cF?k&a-4_$kRKV3H6>4zo0m z+s3HAbu3}xYUN#@ikPmmlz%ujJ|RA_X032Vwkpr`Xjy|-t_^soq2@pH?p@zeH$8&g}T-BS;^tT063OR@fBU@#=IP&2k|COsju6B zyLL|&fsm(ti{P9ziAp#wzSe7KE#@0alBa;Xy}Y1k7-M7yoI<>>^Z!&6=LOYRAB@3)xBiFw`VP3T;(YLe zgkTKeO$Sf*VY&OYH{7^e$ljG6STYElU_YWKbMo5Y@_T}rp$W40_i1&;*3TF$$6V(B zo*7gOY4v3{V(nj&_nzP?l~HFezXicFMndIvIltlXwg_6j#XZT!qsCZ6=Ytm$GU2*~ zZb_4qQvdt@Wa2>~cz2Ta(`ahAw*P=B&SNl=(KM<3wCCvEjLrtpfrt7(@t#{SCs;>( zWQXJ^v$m(B*kfV~pYvx&R^(p2$;u^%!!uf{?^y&y3*u-&TA zPse_jUtA^r3kF>zM+EX5e{>W=BKJBa-I=o0OvW zto5$rX;4nET&a*hZ++Np_P5S&9AG4$KTmrm ze3ga|4=*YG+tNZgq%9m}pqXkZBMwW2Dil_a^mCU%)`Z!wLFDjxzNwW+h;yeO0kyu{ z3%J`_gC+=Ny@veyM{jDp(%2d`Cd`kQE)Eq52v_{(hq2Z)74&-SnmedXaM&>pCir$L zF%dukI(gR}8u9Xatn-CkFm`Q#n~e>9XzS-c{sVuziWtr-NT(@@fSj(W9#e1e$Re=u zRrM$>74cr8QNllI!`42?Ebh6lD-)@fwLGunsABMD0#&pZX5x^6a@aT{UJ&ZX?1v(j z^BzBp)U;^n;iY53diId9C<{3NzP@9)q6|XJ`&aqyXHyCgVQpwy>gBbIW+|yc7Fo@A z+7A=ZrXNy)VaLmnO%j2w(CvYeAP0|kmlh*8l%QF;IPFYdlpu?B^7C z;9IHVP=)8C=bt-RH|Or<8LPCnjogdihJ~cEg3+bb=iIkc6!3U>xWBLwt)*GZ zmmC8E$DXPWtn?i3%hirCG{MU(UXHN)+6#ly+beotuxdbfV;+(Lmn1w)}L3ExO+Ps*N(o|U`YiF{Xoe&CV}S& zU&d@-ljMepq^h*7QXV}`xC$WRWNzZ+P%g^2lK@%7BMXDj$%j+n>sO)T5Qmq(1!=`Y zIXnXjxHx7^U?kCEvv+Bn;C;J{%@lT+KxOQtPFlm@+iSM#pJKVZ={DCSf_>x}PGMF~ z>^?T&9Kq2lEQ5fsH?K1=&`qxkigIQao}_a5)vxYpW-jqvwZ`j6fv_uC-y?xqz|K~0 zw*S~W@GtD-WOsn}ayiObX!wrNTpLPEi#;%XG5SsRhL8|UPU7U|rK-4AdRg^RoC=f~ z6@AjSrxV5IL;SM&67y5-cZ$lqwb#w82U}lzXQKIV5`G4T&t*m1#Tasv!<)t)YPdMU zwsg@x14AXi^(oM2-OGPSka->m^0tG1#@(`C1~RXS8TLr<$1Kd!o`|m)76l4mx6CJr zic%~umvOR^HUIiQHPJ)^zp`Nau0c^@Ili7C(W`2piIS))@G4U;JD~hol+*dQlth5VR;xb5e^r=o_wAmPTD`+_WF<~`XxIjh2>8cD`RON zzh9m_zFask)?cWM^zUC$j?Uwg=>2N9eoO7nwBy24p6UWe*QMWTQVHxFSprK~$bCl9 zg@><7w-%%bLemp1*6qn>TCVMfdeanK0P{mHBP|Se*1;7dc;4XNk6fhh86>W`b>%Xd zZ7vdB(3Qau?-Xd7_+YxOsJAp)cb!w z@9b?$gmi{MoUe4ZoiN+au-i0@LBICA{yJWd9-88pXuc~RS;V8>&ufZSSV}2;*e5!z zLaPn1(@JCm)7*aq-9!aFm9L9n9ULw-crNgmJ_wm8mHV%T>=xzFKdq8Qe-`cWo*0a{ zoa9jk+f`0m-j%-Z#jk>}S!t0f$!*UO3O--eEjB=#0=_{UqZR{w|31b2%Ye%UCA=QU zXp|xf9*7f*rrQqa7aQ>ZT4nRu!V^VBy#zZeqHYOgWWDtS_K22{-yvj}3R(0(`_>OZ z#8kE-J$3CD;0{o#ziJW5Tzw2XrUmePWW!4vfIcz?`@owXZ4xw}}B+VAEm3Wed1AakV1 zOLFR{2WnDXDqF@6FqMINEJt|;^qJN*uDlJNMA}O-xCk=@(3ukc(d;z6a`fF+Zc7|+ zca%91S*aL%gr%XNiK%wnp#a8_`!5U3ha8%yItp0R9)0g8r=pVo>bq3#TlHzfkcienK}JV#_$c=H}wyrks;fq z0ymD@-xhaO!xg`kz`BJ(xkpwt(Hh*o^(I=KfIcC#=XQVzPEM$wMOJGJzRHD>dRx1(tt9{>)SopaPI}BuA;jeJc-6N>aEsA}h zxB`~AH)rr;zGF}9_7G8_y?iXfBikVYjUno5I{?6u(C2?@Sr`_F7PE>~kDU(43=wbs z%C1miy|bURD~3EqVO7m>g8%V`d!sAD04Oe{H)kdpVl46Y|9HCUhbX_NE3m-QAuTN> zEJ}xjbV>^>Ah3XRcS?+@>P@Z9I#duHyLnR5_^ z93!@w)>mRr(ehO_k>qpMq?rU$QoMY znTYu)%Zj6u zA54hi3!Q^egBdNK66+hmxA7o0Z9;gK58nZO^CWpjz8 zBQO9Udu07P$t#E%wSpQrcBq31?5QY=IFLhpiq?#0v*;Gmg{47|+v+tqRt97<#Ho!W zod9V6Ymh2}YD4N~q|Rc_=o8kOT zqkv#V7@_cT-fo}jSk<}t4rLn7SuwYaimgv0k-M_oPJdoA`>ToxueUGpm@e){ zOs1UeOo~3^&x^Q=iBIv*WBhw(BMt9!55GXP2(=MZ@5cC8<;5SL&0v)3fqE7f zn1S2G-CBHiSazosZ@yPa^KhJEhsHyT+MB1Hr+rq~7(QpA8GN(41^LnZ`fat$jysX}FkHD&p444^SPj%gf^^ zN}kp4twPjKeGdG5V<*_c&(Uq{M1SWw$#vezYi9g<(Go8$PSm~Mj{MClUrDOYt%H4jkNVP5TQ97bU5|Yk_B9qO zxAP(LheQe2lJI_vA2pX)!pTPsGP$maC{@@m0M5bs;jnB^iO5g4;Ltrka3n%)P~BU; z#}`E$`34)Mb_*3K(vsx3(@1-J`&-MhfO>0tUiQ3sWieYOuouJA%jXKR46`4Qy&@Iu zIr79Cf5TLC_fscOgOS6G)mN7=aG{KIw~HODjQSDbUrcDBp7gl$(^@n9tiW}c%qstL z5Uz9qTTl_W2$EStThCG*0Ro3Zc#G>>uF3P~PD6lTbXm0M>y*c)h9@)qyv2`X@Wo$Y zPorLi-#3F#XM89U7FMmSevtFfm$nXc5Xq)ttfd!1th?Uj-73bdI=1kQ{WW}9XuRCH zwHqd}Bu;j@E#}Q8Yn@VSuxo}o4)ABk6HUrMxApzh5)qud9z_l}fs}bh+_Yw1Uz}kb zHja_L3Z>rZW?;7e3;ziR?}n}k2IeQu63EaC6<};H9TuqHq^O&XA!#LX*YbC$CW5R* zeDsV>_-&68r(L=U>?=0j=hCN$Sz;8NR|?ZWbs3;Laj|JPkR_~ixp70AV1o2#72)ZsywUzC6P@`}|~%h^Li#2p0aMU7P@ z-*{A68B$;xefLfp_adnT-oA@@;Q!WCCK?kon$Bazk^B=dg zo~dZVY35sHSG%TzUA_xvT*RQ{4MHzVY?xk$_E8!QVp|#RI{mfVftc;cWx>gzi|tf$ zyNi@aPaOf^fe4C%QMd;Xc-fN`3!I}(=~&9aveLJbvw4%P+&lrjwr>&pF#lsNK4<;qJNEs5qw zV>%J$-75anW7;DqmBl;mzT%G&v;1FO$7lUQj}}%k1;_XF4vr6IIgJZBti6gKCPr|w zqJ|>oykun@NI5TtHIF^sj4tZchLUdA!NejWM-Rhe_TQXyw;4IFesjHCxGUEFi_7x@ zW+fFFgVjIhXw+Kz!8x{12-CEYcDLNmbJ5EP{ad&}TId^ZAPp-YC%B}3w}c60%=nE4 zvx*JCbq>IzE`E0Hg03ryjFD8>4pkU)ro*w3v1xPT{IJ7O)1im4`fE@Eyy@OdftTX4 zJu_9BW8S(LK4w4;=V?bTmRqI@j-28bg4F$Y&av1&&dGBZ1|jOo={AfzU%zd(`65%A zg6l5-HBk>~f3O=lqnvxI8&*VX;ZfVE49+0sT;^jbsYyQ-qP<%=X(f5#dM8naN`8F5 zoxa0bbrgQ_K3Fm1qbph=x9^YO$#bq!u>J$J8JVjlv`=90aEL+%=B`l3dRp;xw9T&U zDeI9K$t|Oc;9++pgNH-rsKz1@uK`sp@)hj01U53O4NRyO9*)}cg$CC#Lj>;QL0#1! zb765Xx+?UYocBpO@qvM8b|I)fw`i?HqOogjK6o{w1jtltXUevf?qiBmT4N1>#L0`=)esmvinE4wvVrWpjgLAzB8J) z_k?jcz+-En5BktQxgW%bKCA<1wqJ9tmerbi~8O zJ~A9FfNNg*Pn^h} zK^dPJr(R7Rela#o4b7sB?~|%>19kPlG=UV9_Oyk=k(%rDHTLU7{(+^>pDmj;vw`|_ zoZAR<$Aa4BsUq4!K+%6&NxSa-tUAp)jz6Zj6YkNf6WRtZUZjR&zomZvndY(c6k(>& zcObwF*G}oZEha_Y9}A&`eEbqtaRhx1vTa_~t;`UK&>hpuZzU7*r zEP>_&KwM_Jj9|jr9e+I;#Ii@>LG9j1-q&AcZi|C&J$|>zM?!RG?ryi8t@C(r5evD| zZsU|&vvps2ISC}{REP$OQ&*DbsCUWiX&10{quqkX%TuZ5P1^=Wl)F$(m8W}&#Jv_W z`6AEy^%P*=#j?8thRQ%(w)?#dl!xSl_)25347n=E`@h=AXg2fN^Qx*k#fk|6<>Qh% zS4VMD8Xk+Q12OZJ)P$tySyB)_`$lIL`|=LkO*ljlSFa;TlK}aaoB0Z|v_y^v_L8#+ zXygt`y71u9M>uG4#vON5;k|l$4X%+xq?mo3+WPVmN0ljt#Eg_)oKEW#-P;R1ny@dd zyrKl}a*NTTJC2>n`T3nA|KZ`^W0RULTUZ3-rOp|NPTHD%)@(%K=nK7H5tF#YyRUtO z^lkH#xPWi^Q-mp>BS|4`ivD3{EO!nrRaKcdO?8iVj9qO#RESQ?zm=d8Ci~bxRklQW z95}?@D~$Nt#H{#5ux=jG*rjF(7(fhCx3y7##X=i_HbA{tU|I~&_0uwmSu{r)9f{jg zgRPX#Q@xc}4&M2b6BFir)G%Pg5JB7Nr+WkM`)!hw%LtFwDcZ+1sLS-+%L#+_-)`g( zfV+QOlyeX7U$Pe~zmqfyHoH>T98ziUZlE^HeGit7_owY1wFT!xAv^0*-c+mP+@0GS zxrD?ZX*rsP$w=a*VTQ-W3-bH+^B_3uJZbZ5r{$)c=CMU{*%BAqhyZ^&xcjEwu|)CP`rcc%rT-WJR{) z8`%tm3{I(OfrY0h5AAo6mJF3 z$f#{~U>eEa^dT6zHp0-wtnMd9O!&>)i(-+9e-ELbQF_P(D$ z+-Ca8Mh&%15#}D?>d|T<;=KI=f+TUkQmA)LFL}tsQ_gP^{AAa1T<0uh-xnG)9<%X> zuwi-8hH|sde<7~#PcD{~W2Tm`C@63;`N_r-tAx`#-^Ld88|rP+xHfsWKg!dOoQg|8 zFR$0p3)fYJAZSbJp{AnW<+uD{g*C2np{Z+_pBQwbO2uHaJS^TLA~fR2^NkVBCd#^_ zyG=l>5HG=hTtlKc4aB^_9;p{7OPuymDmw$qa2%t*XHV^>GMcX5r7W-lS5K<9%?pcY zK3?D0Gc}yIb2%J4qej;^sBct+2!pd+~7p#F7*vr)z^y(B*F6D)8~PZw7WIqXEl{dy~kLLqb4@| zs{-)?+Oh`Ml6cBh*wGP&)5Z?{eRmEK1RVa;O?|G7pooU}Vsd>MwPak7_*ri)nJ<2H zmP-P%AeHBwofBt<@q2k;9`01p=1sz}K%~nB_9iUfzKro$NOa+#>XIqOXHqZk_5(P9 z)Vfh_lOrn=FOlw+n$& zI!Q5ahJLyHdsU?W^c#obY4}aH0-EJ>%%&ZuRqi^IGmA{~JN0~H;AEtW@Z&+Mc2N5& z6Pb7|Kv5O=nI5IFHKvI`$l91A_R774wH5X&qh%v?kb7ty(t&PCPE2($-}PPe50rBZYt{N@#pM7~@8!b2Ce)byR?KgEFjKr; z@Yt3Vr70`RF`zdr7pTf~b+`HA!Y@fDS^e7`yQAlD@*?c|VHi=*WM(93S3<3a*uzwb ztSB@-X>V_jj{v7WVawjF?XY#Po>yTzmByz%2k{bo0<*hkyc0^(+o885l^>Cy)O5j3 zyCzWRX;bam3 z-GN5<-Xk!{4BMp87Yv*9$Vzk(ttaJk5Qa?4Ff1wj-%m2%hIX0e+S9+Vp|l+{tG-og4#oWlzWrn=C?<4s0=-EB#YuoA<**Zh#k+hWuUR&+GX90}64WFYIW4U4*6FV>S@h#$URXJ?k@z}2h6#SN4Bx|hsx zU$R+sn}3@vc9YJ}F5D$(kZsj8x*x#0?=&-=nJ0R);(oK*>#-$8@4cZljZW#$KA*Rz z6}|AP^YW{1_W3JQ6_>f%^KC*&)(cn1z}B{XxFO|w)Qn<0y|H0d9Nw3}P&X6*i!twC z-=72QO`~DI5ZOxef%shcYI%nz@^Mk@U=g)mmpc3`zy6Bd_))1W^0b;2(%<^$ubBRk zySz!v8GH^u;uSDcr>^$eoe72Ds6#pvh+q3ltdkbbvtLzh%4o(7zrxXT)k*{6$smew zffQrR0_b`+iw)wkHDxBr{>^e!m`R8=%0SB~n0Plnz@9j|T@P4mcgwsHx;8yL_iV|X zgP1KG7B2CV`Ypx+HgA?5?gNE?zZ;e8OIBrX_1B)+cYD^!8 zv7y5dX;0)y>6<@)Uzyzg+F?c3R(*YWc#><%Ju%!eceyz|RqW)N-7lk6{eAD|de`7# zopR~;hYy*2&qP{6CQckV1e}nH#!6#?tn9^ivQ0L>(=~m8?+SnWEPPHpXafy)Q49F1 z@3!`nrV!74LVph>_|6J)vg_NAT^k9|=~l+~0^lRFstc>@WjaUe<-nwH=3*8wCKDK{ z1WfC00r}(vtrCMme$#`AD0&Lzk+@)li7wRAodz9nXlSFW^3@|da1eQ}OHaVC7Z`$d zy^`(u3=fwWlv#K&_&GH?xY}A=APt@A^ja#^ji<}XQx?F<`oR$I> zva0Et7Ug#Y-zx?uVApw$gO14xu}pYQM1OIIhn?T69fN+7#+ZS>s|yJ;JWTBTY#B_Xq0i^2|E2-g!#bb-oM?TR6u8HD9`# zsj08!dN*?|kwE3k6toc@3QdhI6QdWYcv(Wm9h35rXX2uFl_+x;sOMAxfDBkG(gLn% zN_0wgy7?lWd+aD`>Mi;YZB)vPrOj4gm10-JP0I$7KW>yLxXS7`>BMnrNTo(QShmzB z-ImzV@8F(4X=i*QX;^JFf|LL(yYH6~Sy8(;xJN0z@%Fi1tZRL}GE!e>(>&AIF?n1h zZ)!n^o`!wFCDh9G6}=%z!U!?${T2_8uKx@)`S<$rHpA%N+-aQKc+i_uEa2qn!Dw%A zD_yd~!m|2iVC&|7W->@XQK@T@cm1J`42Xu3lon54GIN*3teoAbY3$AYFhojt)$Ttz zHg^BB+B8bkerADOf2R7hI{sg$I<0}&xl;8xw6s(NK+*`})+=?WWqulve%9RG9YkvC;OS)k$rK<9y z&CH)GC;n&4e}4Z{EN1$7Br627sxnIukm+WSTq1~KlNhGru3TDvz#Zf*R42MU>7r-3 zB(BgC4XJy5NL)e7QZ!Xq*>0GcPkJjSY>+s>+&xuL!8)gfMmW`Uu3-74UN=~3m^be{ z0t=EX;%3iv*2gyrIvWm_%4IUnb`;Hg+*fLmj88K%tbVB&_X&6YN>Td<$_z@aS>)p! zS+Kqrtd!J$>~`m~3xq(M8Ro#MbaNg9uXiQyS;|~m^2l}F`_z0B-$bqmIR0rf)IQM_ zIhS@FdEK)l&wUd!`fxWB9gQ z{qoOitL>962WzV^%at0M`FGYZ=WnU3gC;?TtIJN@v@@okn-d!h5{`E+y;@FIT5o>t zOW#l*?R>N?ox~O$4Dv6L@L$Vqu79Ru8e+;Tf?PF3u<3}e#FKdJ&8NNwyFq>Tl#kbP z)(Kjd-X;~6@|1T?r&=s{pOpI&l5q4SRAh%*sWKeS+v5oCL04rf63^R;DhF=aslFE0 zHeZ5G3m2*cq~@iR@k|Ijl?19DU={7VUH_ca4)!JeA-3|uroQEi1yhblsEI39+6;ba7xi55y@Jacz@Ew!On1*IA zFsOEidGWe}-54P^$nOyzLVbIS1mnSSGVip-IZ8P8Qmb`6A>7(Yd%w)><0Zll=p!#w zN^5_~?=O#{>E?Lq@u*0(2`J3G#b&(fuk294o>V7@YzUU-{G*cVHE(VLb$=f zYo9zgy-3X{rk~-ZS%USi*}?1DBIw^D5Q#Of0t)ILw+%pu1dzy%2QEaR5KRAjth{f0&zasVBNOSgwL+!ra^+MM<%JSIlN zAnv0{2&5o`f957-c1-cx{FE--o=@hg06*6J7&AF-D@)D<>}cEFU{7n`A@>mhs7TyL z9osCZChdHo4=}&gbpbLBheDP6ABJ5#A`D!Z9b}`K`D8V?4vAfoIa>gGTp5Z zAl(>InJwu!Dbh`H(UGpe-*BO2lX8qZlU0-cRUzb z(-)qa5kjsiKzzeJYlU0%>jnRc{3dEQ;CZzefP8*nFWLWBkB4iLYv!Ve?M6kgz$Dce zRtnVx&k~}v6*ic_)E?g?pLvxk`MDvsU)3}(p#>R3=dy_lnFx|)YJk8Qtw2FEC?*j zrQKy2r?D6@0#c=761Cv9>clxSH{Z0QY{VKvMB}A7Zm-Qw#%Sk39Kip6nFEvPbdU3W z;5=X9_JNlH1s9mgOC6O2CT?PPe<(Ie&Epo0Najv;W8SqKrTuZ;yS$hO3q_2)0 zR7JrFFlj)eV-gEIOT)E`K~M8VbUKkkX0_s99U~Q}t``Xf&6PHilL{##q9doEfEN4m zn<&^s(9BRY*=19Ax7X>G zW3WnExb7`iA0)p4>EV}`+&Fs5h}U!}xOzySUf65BXXus(oh??XFu0knbRF{!7+uZn zgf7K>w*=#Y>nq9hcUn%8@DSWW#a>yA)%e-b&sDA_nk|eDjUl8=R(mV1zl{GmqUMC` zmCz1Dsi?H9tiEeZE{SCOeBZbyqWt%GH8Fbl8hrIRw8}1A7+`PNO#Ti*=PX~>dw=is zU0jfyT&f2pf8pa`<V^i(FK|e` z2~t6TrxL4vujWCFk${mHfBKI|!|Q9VQ!YY}^k%wClkNM!SiBKp5TAuvxcaliO=em! z!@x^4g5f3Xf-o0%-cJ(C$`WT{of|GXqzw4RQR8m|ucn!z3`Lj@%vA6(&%I%^`uSSM zGZ>8($teNGRIqh>lkgwMEGF1|c2#MmFzx<@xO$v}GuX^_NX>!V*^Gz%+BD6Ldk&tLlhf_QT7cO^EKIC zRebXP>#>a++J0#6>8#eem0JDh_UL*!jq62?b8UPq?hW_uP{MKvW2EJ~!5%V(n4QuTu$U zs|N8ku8tBLEY+pD>)(1Y5b1f=)GRz(;_K(Mpg~PAxsouxV@1;F6Y6cRE`ZFJ0%@7S zhR}7x7tl|O{A>I9)2D-PFfdu4GVrn8O?rh~z+&iz2-+xY7154Dfz!pM_XCpH zAl*bB?l12=O+XP>jh{GGUf^le#!rL_T1y~i?M*JCtr2f0tnRllK3w_twp5P zH#9;e&pXJ_~wyY=gT9uD0n9kkYrlD|BtA9*dd z6UGu`T?VL9(dQNrH#Cmrr-8ZBM7LuF@gfhZKBfYyJ|LoEdSwtY=08{!5uAaO&zi;c zV>1QKFjY@tFk3K742^J^z@Pnr=@K30Pv(iyNMVIbb z3<+~t7%N;12l5h3@u1IZoY{1Tx)IVxFIYa}u1inQzNM*d-u$zQ?d83d`iGYUMDaIp z6l;en{-Gk^_!sdG6RtE_71JsViamE!laGmMe>dlTB5ZqUL|_5=E4wsoh@Cl&9d7Jv zq{DZypmVW$z7FVZBIZMCZ||qR1Sflc02o$UU`AhZec)kg=8Ah+jC|*aL!o@)e)V`~ z$_ch$2cx1fBh=GI1@`h^X;c8AUOovmo5rLU3C+t;WtuTy+R&jYLmsXHg6z307uZ^& zF=-A%?damE#zf1Sfg)j7e<~Q40tL_h&1!Z9`R8l5bjMbj<7l#2(*Nk6(=&%#)-_EV ze$m&fDDx=*PkaeHa`lclJH7qG%nI^K8#(YMxN5V{)hxIkQa1`b)7L&sMIR<#b(b3K zxjVUe#w%`YqUjg55sJ^Ok57df2g&-5r^QZAm%0@^P8&tN;~KQ~l>b*G39EeN@Mc2) z*)cO5oC2s4Xr-i%kVn3Cpa)qQWJOwVgBigIweL64erB#C&7(ZAfqLEBk|3nvSr55B zu;Ddx)JYMc5}%n?MmxLWiaeEqPdK3#JpZ45xW5_J&XI80n?b~n{OJUuCZFAl?t&bx zyOl0pK^`judICA~5OY>RR`3}1iX83z--T4|>WpDDl^>)RSB*elnO3@<+Q^T_E`UM> zh---E>GyL^@;c%f%~*Kv>a+$BtlT?l2k6+mFeQTrURNbSQdxV*BVlBUD{toX82*b1P2?_qf`c03p%4 zRHQ+yI(2WwBQ=Rv({aE~p8EQ1U>-99d4yytdZBk~JL?(C2wjIu>pK1=S6q*bBiWyL z=mri2$|!*hg^OYYiWo?X))IO`Y%BIp<$RiZ!9UV*QKwh@GlnB;B0!YvMBeL;1cZD~Zp!?>mZ! zL1p>}M3!i(fkO9Q7+OA_+K6rX|DZq`p@LZ@1vs4K0KX)n8S_W@xv!Y@99XzH4~D|k z6uH5H+mc3zHa2hd)Tln_j^Yk+2Rf2Q8)-;l-mm15%@S{`hw-Gh7c!PH+01=Hb>hbX zwY1*jh^ABTj#31SkH$oY?e~`!Q>Rgs;|UyyvfqEcEu;GRZdY3LuYb>~puu4p7?=OFJRN>x61UxzI~^Q$7M&M_Z0SwbLR=|x zetfqMAqMT};~pSNzAQ?j+P=fZn~Y)fKek_&|K*qxiKKMmBpEr?i=-Q+BO%i_A+$lucg1DnH z`=;h*3?pl$m*3;DBFByw02)TEDr%p#&`@F4kY>DE5DJNYgC6RpKs9$NJ9iti$nZr^ zrusS5T%zrvZ+{%FcL9{Eg~P)pt|NrlKPwF8Y~EhWaXfN@AWRq|UWFU4p_s)SBDk3d;--~4 z!*(#DL@wiui=wUvC1(OM(8&pXh$;vR!9ri{xU>?X=guByM^2I`D0u~mUx8*f+fCMl+wN-_wpaDMyab701S2HO`1n0SseQU% zVmf59+-(JS2Kcv}ihMS@{5? zNhTz^xwiFIS~Mmf%NooO0%`5H6D-R`NRu7rZ}~Z+wN@P_5rsY%Yk0}RpX1{qsj;d4 zjgqGNLfQ*6qWurUw=3!9q0^!~iTW!x?@l_o?*N;E>9H+N$g7KzlO}ei))-q39wg^~ zn}PHC6||Hd{rS;~N1@kZyhfvl0tP{9i9k*?qIX&0BcN4TdU z$1Y~UkXM7Dy0I?C&Gc|&KYYjkq^0)ZW}_HgPT=yB6~(}oiNn!W0qy!05@#NJg?k`X zhCXX+YB})tIjxh=DSp}RAYVmF*agE@vBnx3JK3IY(&%fJq4IE(rSpOveW4!XORl?? z5j^EYFOvFy!~CGW{Nd%75T+lwrQQ^^FAY9_LA-Z+gOB7?g|Q;FKN_<3c=cz8$~5R~ zxRsL@GH!o@uvUbsWFHHlhKFJLFh|r@EC%+ADt5k?bosE?xmS0~8bY=XsqOj!cCSOv>So_j{{*{sgV*JL|H(FMqyo zosEhRwqX5s{k`HokxK<7Cxw*3pr+ipyluuPKq`#f(1EH`NK!|ppjZO+3upzQ3W}* zsgvxu}d`C~_MKEQ}wUDOP2X0jc1G~hH`!`LoYegTh zkjrVicpDCDB=C_VCw(+L#=w5G)ZHs8 zh=ewxXn;KwsCNm`m1UGc4Lfe>BS?J^S@Y1Hj$#iTk$?|`f+R_JBk4djwsSp25_}qh z?3EpMg&x1`V(NPM;!yE3^woztlVI0GRt!=-?egeJzFIk}J(jLK2{9aW3QH>?X3q7m zNqaY*gIkinzfC#gg=0EjCrHXj`2Jmo;5osgqltLOjsK9($=r`H{u!pu-K%xF{6Kj_ae-dU$S}MB zGK4c(CgmM*&X?UIkHyk$#&)BC`8M0*&0pX7LYn^jLSEX2w;a~fyl$G~nLp~3!2f(4 zTSY+`&m8ub#&VmR24i+2r^JX}b;mT_)RbhVQ6kGV-_7bQ?e@%FCvoa`Pha_RSZgzn zzNYpf-_-x)+?VT%+c79n|G{%4)c+ogxoCFsm*fiPK7w+Zg%qyLj9Lp7 ziWjtf3C;>uW{gYqLsec-mQ8=n{;D9%cdmtZ-{M-h5&0wNDZF-seEGcY^Qt6UBsn-R z+ak^p!%7uO;IGk$5R8{Yg?9ZoghO?inNv_t=1{j_20K_RCsM{BCIF1t-_}vpDE)L2 z^k?`go5*10d)w!~o2mGxn9?5jPDfWwy3OVwZs*DJl8NfpUqQx8shG)C#2wm!r68_f z?eru9q(b^xQl@VgN`c}!o!z3amQYBY;IrSVuSvpjVW@$4sNhf}z+Ofii~~%gibJ2t z^A(W*Qo!-+rR{}#-BKVV^Buv0ZLyP%vgS158$%f56sa9W1kf-k@7EMAIsVZi%v5PF z!5FO~1WTOKAeO&V9PG>xw0y<*hasY2-)A_75l@XcB>?M=w=Le1tZtM72?n(t80HKJB?jQN+7wTr=XOj4~-0{eyCONvmY zqi!4#>VWu?f(1&%@*WedX!xxC9bW6uX9{x~^Q4DYvMk`|Wsv=8O9;j3C?_~Phw4r- zj%$x;R@R%49u#7!uTmEYk#6O?T{zUQPmeX4$3|bB%5*xhRs|$#5`&_{kEscshD8I# ze-0?)f^#yLMDTcnz}y8U=#rnQ?B+xIqT!l3p;2)Y!4_V-N;l`g{@ z(Dm=JQdR(0dORWeoj$&5twUt{rkY?&I~^C88!~umPmXwPPA%2Vb9fBUK!l@ivJ!&r zg)7Adi~~G~d|TY0W9j_E-}M(icI?}45F{VL1PYgMB)x>CYR}t0vVm9RQDT%QmVuMi zd-{y}F<$Q`bCaJVpD&fg^ME)>=EJQ7a=16P0if|w2U@6oyzlqhW(&g;uUghv9Uwo) zF8>FhvtaO<3fR=er?qFMYAkp4Cu=(k(WHUFo+-7ypZ;Mo2q5wC*WfcHS#4&Ic8{46 zeTZH$0FFcx?Vn$$Jsz$im>?Z&ZrR!20**pCGDHE5Wo5`_L@brC9`gm7@}8 z#yGk92^{e|>D4)@nOg-~RiPptC7)lKmQnZHL}^i@c!L~CE&J_)oU0$M%3$yP`;v;b z>SiyY33rXcpIhTHWFUxzGj$qj7>&ELxe%l_r4Sh)jX3AD3|!Kiss;QAEWI4g_48=^ z93e&qN;`LXu}58YVzY#}<~nr2-d6Dj*ejsOeMl~!98}N@H?8tSAkXAW5@=O`lU)gs z@Jd!Qx&1)D`+<(Y?S$+xiaJfujII*WQO6lA(W?H8%Jio;iyW22S(U&kT~?);gfmc2 zmMB#KE?yj>rT@PLbiK23y_e%gJp;s#2RO};5n(DD^RX|StJd(7-ztOc@d7McEZzp4 z-Cs|)a@Nm{^&k3!J~monc)n7Bxiy{Cd^Fdq7ZWc)yHp`++hGGO$}K>;ptCim?YGnY zvq zFD-T7&CtzlZ~fNNvGVh0h9cNm;hg+771crF9`t&KYYD&OoEt{hTbrVrSag-OhWR_2 z9nA7A``g^Cq5v_MfVYlNmi)2-O1eXh3K>NYrxGxPsNkeowf;mSiyHkQ0I*^W&GCWO z^C_vUc}BDOBcKg#i`(=)flatHmP~kWf~9WAAY1l0cA7fSR4|QhqBC++U1W{eJ3G^t zL)51Zy~FRUA5H5puvyHgNYCK%VHA}_x5L6p!lg4?eFOPx3G51a_~k;$K>WYD>r3wl z(7qzyI^%Y$;wlCCsY%}DRTC`3ur~BU$z=$f6^YCWEjnrmhTH^erf#f@gRpGmWV?bU zb2(1L#nX01W$6KEb{X`7+NBvKTe`p_aQ}h7PBx; z7+-&kIGBmHq>9zKmKIs{IF8je5+4h*yiE-x&_E<@OP?zU79)$?A|HnEhm{E_YfZlM zJjQleDb3!0a?u>GUPompD&Vf6T)bhJ5re27D@*8G+!5s?OUx>|b!A5*;{lv}K6x&Y zXcI?`+M(UGrlle?3<}2cRC)lNTx=TKbS>t6PNo_6&loLY(2ytMD<316zZexVJco&K z=2=KU%5LdGGSANVR-S0DA!zIRIorpYgfPDboo+wGIc6rc9xKs&hX*+vS3))r#=S=J zZSJWJbOH+ir>N6GVtvp`BU2CQidG$Y&*m5B-14Mu~3dcs0cmOHZ*vQ?dNrf&mRc$59Rf ze?or*XV!|db=50_1y~P5S-z$yN*0az#j1+(Yt{BvHt3V zXi?dt_k(mfM@ik3cZ`S86cX4cIHTx_L0xmvGy;e2H_830!I*H~EeZORi*@=NJiQLw z1rqm<5H0(tB>Erx9N4#&Wn&VyCO=n~9ApR4Rv8KK(vibZCdGNxxo{KtH~YrsdQY!> z)N$r>U0f&Au*oZR>&8~4)z@Z)WLUwM)kt>Nzc(?xba-gnRgW7XI|nULg$5nZ@NR>45N)wPdhc~Y1yT%z(XMR z&NJ_-pDXS~Qypg;bcOl_;M4c$)NgSYDBfRJ>==yJD!6m8Fto(t%v;(rcpx5CT2ooU zl?EYtL#jb!Q5}ZI}2SaliKP>oCU{!^-hd;KYcOu}#1P z*}Fn8@oqxDhBIRry3i^hOrE10w&!0WS#ClKv@mu|Z``0ecjVf^xO#gxAJ--c7!<Fpr#WLw?h72TgP{ZS zOhegtezBD)VFNOtGvTZN(}$arBCJAEPk~lNs9-57TxbLJWB{s`S!l^(qHnPxBtjEQ z#M9O|!PdYNd(3CN1R7FZn>1#T5Z;lt+_I_`{ec6bs`h{A5W}BYb5fU;m{I-2aaZ3- zLG~Wb>i}zjg)5OZoZ*E9rnOb4{?9G?GX3jxg@5w`Ukp+FD>qGwJDhZWbu8VheWQ%5 z0u1_84I;B9E`U$t-MS|)jel2(3-&`8RyT+9RVfaBme1glVy|DgIZ^sd48WtBJ)pg& zmkAfs1;%QQt>C(^Que5xc#yy=P(i$p7Ot$~HlcQmYl2u+(8X3ocr+5=XEOcT!xjG3 zQAysjA#|f?zYCFQ%YTI&PEj5zd)7K#ZvOOJwjiqB6*+TS1%ph-+*|WYF8o+1|6?dk3$cy=0b`XxuEt>+rz@f>R1DR& z%IPw2%2lDCYktwaCoLDtJhi$-s#npd$FE7c6LLKAiL~3{{?W|Ze4l?HlWGQqsNYbM z49TdGIu>tEGV{K4|6w#FV}uw$5@qUEoyz&OAg15V}LJ)6QS7$+^)N>e??&{yb&b_qt(S1`@a~sZiBiJ zsmU~f>s+Z;=UOxr$W&meZk@2izmQ+DJN-Ui$#(swUVMvzdiry;Cm9bk5f#x?q)IfCEVQF<$X61!Jq4 zETU@YB<7Rv-NQa^4Apoy;G**qcmn4oP@QY<^RaG!Mc{a7Y@0g_utEj7SW)VP%&7181RUZQtwhu=WP+xsQ-R1@!&1SK#T7F*4HbHCZN%(0 zA)kDFu~?i~-gu#I>#px`ziS)x+!u*U2)z0--X@yzJ(1>dmK_ZGV+GL?;lT`j zQceFH^;|HpP;Rl!%n)0PL0}7;uDkBj?kkEMfH4OclJLwaU#LaO##2~_ahn*_JVuNX zyqW*sBS--y(&ls=ai>6~S{G|e94? zakyNTOMfRO4@hk8yY?jS5C?z8526bav;*Fn;>n`UanO%>RcOqVMWRmsUvl>!S@X$FgBB_Cf{7nAjKs}YX+)Vh zQ`C_jFvA9Ntw?C%{jXlj+?9qt#@E^1rG{jw1xpZkSfi=p(R*FSzXacxa#{(@))KEd z#xQt_9~-5XZ+?{e<1!i?Be?ukP$JZgHfgN2wSz_rymycJ{r7U$FXgEZdt~r(?9V5~ z&dQM=rU-@go))zaTZloeGY8kIp?AsTp!wPqO&m@BS$#0;YZR{$$d5~^uEppOYE~B+ zhHh2`f)rk#T=OSyOaA{6(glq8BT_^(jkISPV$PZIpqNIoKBQ(d#2}xQU33&{DheiS z|B6bn-?u=(wo8O!&Y-h2UKL8S&UDuarz%Z0xGB?PDX$euB58|fh5cfVBvKz?C#vvU zNdBov-IFB8=~11V;;*FSw6thK?QfH|j}l)u1~#*FqgchVqvVkU|3}hQ_(j<@QMwy; zX{2*e=@x0}UKS8okdlz@6qZIrx}=m47IsPL4(Sd_>5`PrZ{OedC(Lu_&YkDXoO8Iz znP^S=p8df~v%p)(g$hL4#+5}!yaeGvXs%9@c*xzYWmMvyzsq2?mbg}mh^4zB;O`n3 zPC?yYNgLEl5T*uGUF)1=A+J^5kwUj3{1j#bLNS?ts4JqL2#F(-?-tm}OMK+;r+KOL zxi@9p@jhNY3yskfL?3FY0-XZa#|OBxXbh}%tbycMdHMO`_9-AQmeOcB>ZI$}WK>w> zff4y%Bf`JDEPSqL>$=hPslju{;?JS}&ZUusmXXggr0;u$i{wnIr)`sv#_G+C#OlN7 z@;5X`9}SYFBXbp;k4I-5D|XX@T33#hXDWsFT zg;D%fl+bI0(gGU14NPFB!8_ffCtehdh?JA&PR*T4rImey^P+~X zi80U3`4#i^l}!krXsS*i*1C>QI9vIFTV5XTv+wvn0rBE`l|k(9bmPW_aZ{1Q)GY6) z?0BFyp*ylnMN8iLt&>P^HRmgWfy3g^qUTp6XpUExauQ4VQsKI7T?gAgy)6~H75$JV z$$Fh-nnzya_Ql;8kjw=8xI})&6rnNz$gCeFIVeEfMN)QDa8SzM)xj>dC+YA`xnd}& z7FXTrWJhM42?Ig{w6a~*TS9T?cD0!N&ShT56F`jP#><-oB%Iu|wcw%ETEgW9_xU;O zI>WMEe1G(EfPMG%f+u3J8pAlsk_+MVaOxOkp<>ss;wcu?J_M3wEg%85#FL&yNOX_T`ek(I(*N4J_yv0d>;)&Flw^;Jux*hMas)O>C!AXq^FKD~gmv7lM-*T%@wj zw_EgwPzGpjkXyNcSKoYn$!1Sxl|zcl>SNE^TJ~jm-x!8VhD1@#h#{%6{cXNTMSf4Z z@3Y!&5y%(6&0uYsc(myOgf)2K;AuZOK6^QmG<49V#ZC5H5(W^w{1!t8H+`8mo+E_~ zW7&(v*3P)O7XW%;fK-lZ>i5BubtIXHNtH^i2J_{^QNt%RDngXVIGnL|-Qm5&f z5jV9@{jEuI65JMYt7%8%Y9(|ygKZQCeO4U=M$gdLTSPXo@($1;5iaL~F8-};P3ttd zet_h!naF9|h|E!cpm^K~0b!5hR}yq!e_U7S*3nRuP=+S#W#bh94{!&jXf(6v7oHCF z;x@#b?JR?u71)wYu^X&)rO7~2k`+9$8}!~$_Y1=(b8`MYscLll6?&tAc+J*&eFWW* zh2{(H`BK_JqMUH{MI~{h6PmutLHIS5kGioB10u9~9e0arazI{@d-m}qFjp`EDVp`J zC)~XZrHp!Jm@@J(g5_(o(iK@f9gZzLN$GIQW4ET!hQ3;H6%FVMLRy%6QU&~*MOHinnqirpJ^D$Iv{jK^3m z(U2E;?yK8L(V>^h2DjiyPv6jQx3I+>SCy)lRnC^IWFU%$aI?ycDbBT=87+-fi(#O{Ob{ z|EhZLEpwqtMxu$Z{&ZoQ0TMp#ik%bIt;$p@Sgd|BsHAdwt{?GOE=Pl@hv@QTpnn;A zv8G$c&yegRG1h+8A2$;UpjeXdjp)8b>hR?1)h}c93TqHSXCxpZP#Z~5XzD+xB|`y2 z_XW3d9|o$%*;CLR*f;1?KKDavx$4!_LBA3<(V;`mq66oWO*#pfBUsbQK2cs;cE$oQ zmIsiXhlxZ;ici{G*b)NvbtNQg)FVk4Hp^7n#;4)#p!NHoHM!Kv#tS=z_-^m=w z8i;W32&5n&ur7FE(vOP95m!}7hNwYXbEZ>_NX^>55zm>gpGtN=sAOCKGM zl-|JJq3*J_(Kh;ywlBvVm}$W?TG<_(>RDelj$c{||KNk@HkDo%G=GF^V_W8lT>1i z<<3v6qYildT|nZMXHw}Wiwz`}(l#<7fvti5w)goAi$!8HqLrp?aQ&g zEcv$cYymJhFo^u5d6e#<7ES@Q_MnTEfv}oM+D)J^ZR5;`7X+SmMsWAcTTv<`a*Ml} zzWLM1NCO#MjiC_(5)ssx#?K0mGH=kzlPqlz}un$#H( z2ts=cXsn__njl%$5{QkJ4^K$YQs0B6hc%{IiGGkD)Qh}XGYSJ|rc~o0;j;gd&>-HS zcg`f~Z~Xe!fd!8(o0iNiSq-`plvAv5bksYm5ru>7Df~o`){&?LdfqPtMHOq1+0j6F zT~k0>`5t-NKj=+A3~4@Xmq$E6r0hKSfNqXz8*+^vwG#<|v$iAlH0`M;%Vkn9@V~eN zd1L8cu7S4OzMq?mQpC$X`pXE#kMrT0`Z6!X+YD4>AlGG%P+QaewK2%7Gs8ftSuqxF zb_Rjm#OVScOHpEyX;8dIHP|uwxdg##gHL0g3xELJ!CznbiNZJCNCO*(-Bc!lftl;57$fyz2Gu-X5^!vN)NCfFDoZIkr%vX*$* zCpCNHjo=xYx0_hIN0p?~q4yZ2A)T;MPUFe3ay2KrWwLpCK+SH-Q;9-0JWsJ+3Bx$F zxLbn9Hl+G>&>k6_ASDN4VKXR*V!wyG)94hk()$awzLiBZx2Rnpf89jPh*w4i)rBe% zhVh#xJWF{uWK_-;bRnj4jz@`>wu0S+->pQ8>@Z5%=m78s%0Kjkz8ePDhhfXkYc``3 zw((sf$b<-VySUHoy*qt~j-hWEJO41fHNG{w3?j1ZCLn;^WrT}hXrS5$5$Fu(m8InO zP#b=TNf(Bhn}z~sB;N@@Tu~ar{Vxa2tP{5NLjR-Druz#mchb;{vbHz+onfYmAxs2i zxftd#3oPRgZP4uHpsk@$YymUl-p>Ou=|yndnCeUE|4z;=24ecb!@p_qaAd^U`G#WF zqzUrCEPsT1R?gpV<}qUR8yY9}Y5^PaQ*=W(q@^?vu*!C?8;vIGdi*uC)(=;?UE&_;TC076b;Qa zan3XVPKP9^LAA7<7@&-$m@3J#z&O`mr3~cG>Z~o3QohI}4istk`PHxd2{gzW_UL4) zm{#5Lk9G8V8mlxy&vrp4fm$j2wNCjnGK{LogRjv75{3lfM4wlyum)r4QflO!DCor( zJhYw9a~99ImiK6{6mMq+DprPPFPWGfUl_u}5Pg12XLw^G;uZ4=jA~a!{v3hi) ze9rFFtyJb8`-ERhe2d9}@dE#)2D|1<9kci3d5>IBou<|z#T|(|Me*Bj(j{RNDRr!i zvnvUw4S9@le1vSyMkSM#9@=ov(Ny#jc93q*NvYBFHC>>bf}Om&A#|bpQ|tM4bL> z(c4?+BT!~1@sCz~?|Z)a*U_i*zPND?$pOTWD02}gObuk)s z>ODzXm|%CUloGHc<2Cq@wsQEkss1mM+EmmMo79;M*VhB@y9>B^yZgN93e_Y< zwfoVzav$_VF|%1My9Pg1pdEI&JL`X7fyw(cog1dLE8{g@4JQH^haEb?mAQj8$I9!k zG42jNlK|Ka8`L6{D=TYfMd}(61ap7)rTHuG;$yKsy=_UC!}M&EkPGwl0aphAHpjpK z32$#7z=AJqK8EPimwcx~!YfOel=-2S3(CQtil}}NS=Ihf4h7JCP?Gyb06F222}$s3 z%%k7v48v5fWq(1&FYm-2ye?hNg!*5oQU&>6_UZ5$>L<&n@%^5_ zzxfPtJlE?D?vq@j4->nRKYzb@a@Q_uGxRlTIxlK2kl-SzI8t}~DSdI`Fg91Em3vkz zBGbBe@Ap)o^8BtbU2cA?WT$V$KOs0(5uzLJzOr(V&ya!`+})m(BbJlD=>q=&p*CP9 zSvAfe1`$aeM!$IikaYcPHe(5RZ5VD}elBMSzBg-N!vqQN{p!SpMxZqlA#oIxM{v5* z>KdkWCahV}9j$mFUL>feM~@LjZBgE$(i)T#$x*#JQsHUf=Y$sjqvJX#wIvOI}lTdp1{2{>t-v%?9VOizXT_drb#vZ63=N ztG(qj7m!(iV!-z0ig#yX&S7S*-}Wxu?C)*+PqZn?VB@whwWo4?-y#@?Pk~W1FbEBf z<*JKrvEPV!wK8b3az{nIs-s;N+d`+Ny~5zNVn|}5?8&)(6>2TirkWVjnxWe7YzIB_JV{C z&^jxJ&1cQ&;G>i9HhJSF_Ws>oBzr3piRf=0cPl?qa9mNGXVoA|I;gRcbbWYOFdI*f zO@q6rMWJ-H}}#8bn1O^7g0hD1e=VGlW3j18aWz3&`$t6X)Fsq6^zR|r z6J9tW+l^rWl0+QJ@##O@q6`OKU0s8h3~faFbmB{k13Dr*Gyjm{M<(19#;+K`LtNyJ zG=!+-KEB=K<7)c791@k)Zf*~AP~2f zacZ&p26g;1Lz6{&nOk;~{5}dz0?T6WM*Kz^N{%e99UUzfy{7syBZ4gtS}Iq&{oXBH z_teZS5FgFe$c#0Gn;9!5n^?XcUH2mqi~1k zV&k#lab0ckJ)&?#a}@Zui;snb{}GU2`W?tgy)4jpCp5|`LW>rZksdA134A0dA`}pHI|(J z&hC(V;5`Mo+1h%L+50ppuit^UZFdjxPe)rLB{?38nfm1i&2k(s4sI{MwD! zpk41*^|m)FT%EnxQjI?uvrSSkutRA3-IoX!bT*uZta&pSsuzDMX1)G_?r5QT^v2y~ zQ3)v%(8vQ_4K@ zf*H%}z{nG>cTs84@zqs8xKH+7{=A&TYs%;PO3I=+G6x@R-#NcO(pYdId0w3P^FVq` zeL3@MBR^LfU;3k;yX~Rij`?3dh5P%r?ceM6%->AaX`A^tPknu>Iu-Tsdz7oP`92_| zx?l%+lX-M4YT5Z&w>Lkh&SA)CT-!zyGI%kF|JzuceC=;mT++vRMZl}@q%M-e=Kwr! z)%-{V^dgVA-fI#j>T=^46Oe^q`*?ko+;wB?p-lwehUO zCbQ2`yTvOl;>OLGkYjxT%26p%$&txTw|974E^{4J9=-MWR^R74H@EU#Y%g80 zjUnWBz}LFZQ8i{_Wc#`#EqEt7QJ3mnG8mAx*4W#b#&DX~(U18&&{HD$Tc`mB7#|Y! ztvYN*pTDcKoBS(g+aw_;ISz>b_!mnaV&AJr*uZAGX7Ic4eVrLhzkzEbRYqj%s2|!FIZFyx5|8S1}wXHJE@=hza_34b}L6>K-uF=I(i$EYJzy8G*+fjtRIGrP!cqS&bL z4R;g;Qmtd3I+gP(w+u?mWWL5hJ;QY1Zr4$*DX%0%DeMmibqMcgwp7GJlp$NYm7}Mi@+XICDOtp9nmBjOlws1K9{)s6T=;7L9 zR26*YbJceJV(Gl`XeOJNa->}ga>I1RWpQ(}Yc zqOFAYWgW;%q_SsfNWZ>O*VY>2&&~9OXK69L35YtHQ4>6@^czX94pch8eQMnv+52Y^ zX)2m@628?@2&>BqH?jySy}h(MYsi+9cyhWSxNRuKCroxvft$?jnK+Smk%cnoS+{Qx zjOq`lj44dV5QPFN|J>wYcj)~(TY!O$JE}+I5}X>$7MoZN*|e}*3!Jh` zHYh3up0aUJ$-vUl^;}-Th}Dvdh?Tu#9Zu_&zR2!F6tJCwGqW1|zQK&;Wj)@PP^Chm z8R@*{XpH5l$<`TXkN%}U_&POUND2jf4 zChLl$;zeb1pGewvQmj~Gob}3RghE_5%Z_D_$UgqQlM+5*$(bm5+sVckm4~FWnJ5=8 z+5aE(of*5Ob1bW!k*?aS1=bXGbye{gpp~O0GloLLbILT}NEog<6@BUsx7h&tZz823 zqvj8lwySHai7dDWf8KBN+3;Z{p21?`9g~uG_#VtV_n&p37^P~-&AaWjamd(w-I@UU zUZx7G-vq#lcR;5?1$+Qp0u!>|G|%RvJAw(agb$svcuh-V^VO%x(PRiUNQ^VS&`VxI zN$*UDTTRmS1@L_@Nb?loF43_rk=fg`qY?Aui;08~i(ac$ud%3aA`T^6?@@N-bz`JO zrFB#qCh1LfS*7`2+7PaK)UMAU;!z+N&~kgZ7#8mS7F;_zzCpa874X;XR0IA2A_|s zc+E2K4WlN4g5~kY#Mc8OYp-^+k4Lrkj@Uy@Hxta?vF}b-2;S!p57SF3Wsd?9RPFqT z{AZSKUQ~lUDkS!TObU!8zW9E+dsC6>L4Pz;ROhvmv_bdDEaq(YWNsElay!6)0t_m3N|3d?p*A|HIKGRgYRL7OOKl;^%+@41Tlz)$S-GVfc`| zWEjgL42d*>)l;qZg>%S#6X^M~G8|dB1hlNmz?q;jLhh#px-+Y%Sq!?TW7>%bYpn_U zkU}1#qjqU_AC+AqgmrAUJEIbOP8z5+53DQ1f1dX)^o`4c-ai}FhDAsHVBgK@9ZPB~ z+H!&JD{1VeO?jb!U*C$?#XsE1pZ*loBs0IA+7BjuZH9fzPn zSO*p2ftq)eY4w|~bPZ|07&I@~Q@;0zfIp;|8?y`pLl?!YhnR0abGRP>m*dT|X8qPNlhHx3y~TT7 zdy{bw?^c0G@AZg3XM`z;gtI`AUx#vN;K%Fd0P~Q%V^)v{Y9P0tP5^H25oUOPz)>Vw z5=(?ZIUD+0DH;PTla7=hFMaN`)1#@V2)Rt=qXY*h-APHwf2*(VF_W&eaEmXi9A$0I znSJd8S|NgbcUXL7IZ<)RHC?ZwI=gXn!%GG}dZ+E3yok@1qJgIo*wFP$r9|ZIyX}Cv z6LF4@;BG#`nr^-?$lzygN57`Bo?(xhsC{wto+xgwadoU>{PY#C++65Z?Ru~oA^pzp zTfkhn`=~_jppof^E`KJEtQ4ntzld+RAPiPsH#g$6K*-zTF2q{;1r9pMJH$|%qM0M6 z5OH=*Fe%er_L(kcwG9(5?tCZEFy=+gF?zWZ`Qz&Ji_jS{&Z~^gQ6-R4G4SH~>8ps8`{YP+EtB&A|G^d6%PA|(SE`g~6AR(;{yGBHj-P?|1YH~&g&93M6z}?k ze3X-z(f2@o0x|xb7_jo2R5r?S5!is4%eYHJDV5j>f;zC5J>uO=E_ugfJB$0=2j!a; zzG0tj5j5CE3Z{iFT3RrHRokSGRO~Qb?q@_h7W_#q4v7U9EN0nl$A@@jJ*g#snP8#H-QM^%kP?Qi2sbI9Gzbt8&&qo z@rRy$mXSB-MJDJb45IbQ9Occ{tBP3*3dxx6<()Eo4v@3AY)R_;=&_bKyt>8oCMkwI z&#>;#sOC1pZSL=FriV$FiQg67PO*$J@z-aOqAw(`E^T%scRC$(v!hrqt$#=T%|&Yc z{o_V@YGi?Lf!#XUo6lg{wg9A@&Hh4*riG=$e{3M!s2>v(t5a3>?v%i}(-$qL=MLpl z_GQ4UWshXtSvvstUw^BDQIi21X80T6r$j&-95ZfcczWPTwifRv>Iy$Yv0K)8?Z_`_ zp#x`8`4bMyzDpye3^*VFIiHzqensFnnPVSf9{7D-X zr^t)j?rELwh-H}2QQFP#anTk&2D%Rx0;OY-T{F=o$nEjE+&)hFqeFI2pbLZP`-aRh zWod_x-}}zU%J0tkf*;Ed(T3Fj9u}@P(WJ0#mFqi>UuGa*spLpr<0^aS{0l8A@%>em zyD1M4kEi?GP!Wq54r0fR%Q3rh7gXpeU#|6B{)p5;kYvRKV&A1kq7Mngp2n``8K`P+l?=TrkxZF0=f{+@duhGu_31iny?5hIUvH< zH8`7KHWv$GIW5HGQTvd?5O1LHkt815Tk*3FIpN16JbIbSX!QE8y0TPkN|P6Nr{*=# z)BGH_&T{GUfV!6!r$4ZL)F&B8HnRF{m(PDNH7xn|&Xw{WJSHx!(G8Sg%$_u>>SaEo z_aB^^ryiY2zL|NpB;-i=!It&(u=m+4x~fFuiTE4!AbA5^`Z#<|3#h`@^jD zUQqg|KG5r4!qe7N1M(T^mi-goHl}>56N9_Jm=nXWN+zyB6S2nf=TRP;u-)CSUhIvj zDIQ`NRY$>$ua!sM@R}YY&g(w3*<2#XZ}&-59dRJ%HT*FQ?rJ(DACxl(;x_TA z`zK4;Q}}YMzUi498<@EY7!FId77|h*9qgWI%S9|u%(8#ew^W!Nblw=4m*2Rxc6zge z8=R7}SLHDIlepVb(pX(8=BR>QbvB|dSGDbYhfkqx;bK^kZ3%h#B|BH!G=UFUXZoPo zs0|!2qxRK za^ot%03y~QT^m35H&)a-%NT2=Jaxp~IvUcDP%o~}%{HkRc3A^GFr%|lN? zDvSMlmZ)n<&V~&i2j_EZG=g zL2F}WIqxCzm^rxs*Z{2DzHP5IeOvfSw{77r?4xcmUj|~nyyIA7JeB&(T01U8qN47J z0s7y?(L-ILkXk%1gM^N#k03)r#IJCXH=;fp-Deg+ItH;VyvhVe*k%r$RW3wqM2BzZM1 z4*Nrq0E^|U_u@a%gdWNpwRxY6&&KHML?!=}ll`e2BpGZp-dNnR5Dc6_eUsh|yj3Gl z==%o(b{i8IS!b}g9)5Yhx4Z0`tqa0li4Joq!AgNPe-9DCLNCQ*F@Wx&hji8f z;e%isY`#(~_@lvl_hXI@`MB|{lZ5VD*vYx3 zBW&PDBN%~RR>5?DZCuU*tyCHtY+sCdT;-SH7ma=BEZD)4jXjvN z4zJ79v5;6p;J5D_X6Rk%9s_LOY+9CA)jB53wQj@+II-6HQvg6h+$wknN6i+&Hw6_Q z7IMb`&__WF!}(8upX9tye7BEZnt<25j&4R}la^!Wikw!Jr9aGnpOi1%mn#&u2H8H9 z-y?UH&H($nuJ6DS1du#GdIfV5OI9?!+&C4Kr1e`xpdYA z_n_un6&G7M=SnAiGpV(H!8FummJ?7c=vD2(W7wFllm|Gb+@OBqwXB#~*iQvQgC2xj zSg8iUUHl-_$DsCU)Q`4>Pyf+FkGqXp{)uyufh{&Y(1L~BWHl9R<2j;_&mD5D^>Bm# zTwXvdrAi&1FLj_9B7JW@R$B^4TK{H@Sd#`r-eUk}B_+#R!M ziK0d;uW4uWtm9imEa^W+#Ysa?ALY!0|Fp*j1q{+)Gd{}lqO#)w)ui%w1;1=GstYS} zX#Rv6^i@J9O5SucZu-m-fFIUm>`7>Y!g>ey+v6{t=%-!+C@H(bVL%q1Hg>wI$n32~ z8%0fdESh?hUsae-!r4O!k5$nPq zGhWeP0t0a`hV;wy>UlFpLq(wNzwKRCwO21_Nr4hb-{pZUfmCE@deK0u9uIoC?92<4 z1S5af6A&6f0LJz%YKop3MQ5~jCoN>oLg(GraZ}-gl=QAJpA23vE}j|!k=1k^8+8@X z89(<|)dr`Mv{hE4+^s7f@4(@k(BDDHQfM5iGC(1dX4&M-%xMUhQ-Y&CYUH?5O*JE9 zRyAu>vYmCt7iN;`^|2lxE9&2ARKBfneg{{nc#+iT8jj__A6W(#swL0f<}qd$?oeX# z8G@LLTsA0Bis%O4IGBD@mPL&%F$tOA%tVC39*lw>xeKduA+&C|)4{mVH3icLOKkY% z9nMA9dg^}tJk#5Gi?JL^H1)gdB^KdrEMzLv*4`6>7h)54@>CrBp8PTnSKS?HuSZgV z>&#}|vF;3mY;#knld1DTerA&~Og&?6!g%*SE|C!8LqvokJ>pnSw6Waij>;GRhnP%s z`ZPjnlG%MIN& zx;r>SsUaOnekiy}k%}+yM*HmHB$qW5HT5&wszPz=oKlTi7tSBGpE550=vV0LV}5&M zk96%N4tP8+cmX#;D|g}jPhE#e&$#n8yj950xiq%RH_2qgqa&?i>Vpvb8J_9+#D)yaMqLJJ~VV=0-su= z|20M&Qa!Zs_%E%h(xcF>IDZL>$yD}IHsyGZzn)#fKZ!Lpns3+LM7}0wGsY_;%5Q7Y zfCTFwLSjgIPgjdY>=`kR!Y=;=AT2Ju97!N#bE904h}$gbC<=6N!=xVQT)Tuf7Ys6s_b^BI40NLjMA6kB#C z?G-;RuLQw??=qw8M*F5~z7}_G&i8g6QuU}kNL6!c0_@qu~3 zCpJEs#ZNy`(6m9Df5nV;`vQGaO4M z0K#(yA}rDP=2=1edJxlP7ndjk)H?E{fjlgzU=yb~Gi{T5{6V(@`lTjq`%1eb7SJ4h zQq=dx8g~oA7(+MP)R|=8+^m#6miC>jYQNO}B6O_U!b(xrs;=q0>09Z@^T(!d6#?7+ zC98g;VZIxu^Mw&mQ%3O)p{!8w zP~|rEjh-juX59F2gqn%y3t&LY`}yvC5!N2jxSW_q{R}t$8gV~_#aTL|>~Yly$xAx> z1P{YDHstRTh#{E%Wb9L&ctPcq92aok}1U_>_NDV8p+d zb8yC!e09n@uU0O%CA;lR;ygy?@EpUeW2PPuemIxcT(jM1Mad7`3RfD1>p%~2XoU39 z5cyWQZqt%%R_L!CEd=HqE4wfTuX9zy0pPsgyK(^i%aRvm3R1yCl3t6Ub$Kw00+}~W ze$^GZ+Rf8F@k4^>-=4%s!Pt-|u}_51PjLf5#gTYg@47IoejCDaWvFUiGxENSbCNo1 zevYs4Y)A+hCTZ`AebBXTfdOUNpNa#^T|C@lC418rG%XdxQA{Y2AU8!#y9M<<)Y3LS zp!9S8dZjC`*Wey*T4JFf|?n={v*re_hu+)a+}MtPalB_N zKI9?OLdwSwjLq1b1ifHBm>Li@k-lB{2Ghj=Nwh8z!_;G|I#==%?X9D`s(NqRrE5 zY0HQ&uED5FdJL2~`ghT1?`d)`D4)=@W$veJTBGtVk}9GNmoCb3T>eS-Nipw7vDEqN z&6CLJS!OV)Rc*~w5-hH|GRKMj9{>p2c=2rkPFx!>x~8>cd#Su5D-`Z^{eu7wAWgNw8K?=%0Y@n0?Z%ZoMp3GqR{9##4Y z`{g&UH%0D!v0%^Bh#`5?l6J5CxMvc}=g8UUNn`ny*3U5r74GN6{vhjH=qmR|MEv-j z55N4~8Pb;b)s_$uzs)l#%rrdGy|>-qJDN84)mmS&H6w7cvmjIswa1!ZS8)cd;_aZ* zHw-o8?Vw0*?n*r(+t6BJM{Q|91uQ!mRxC`pvg=#!zDl8XkJsAWSHpQB+PCdt%wE38 zadsGS94pY7oNyuh+kwq8J8qL0d4<~gR$6tX^HZ~HTyrvs?B(ve(}T!^dJZN2=T=J6qdLj19;g7d z8BwCg%EiCxO4BW`^+S<4wx35E!_%pOWp5d*u;E=Koq7`R3HtsC#%?3ZpJ%wdzbW3b zWTJm_dr9BFt7Cu^cl(?t49B=RXvctus7`g7@^-`;&ag5x0}H0TvV`o>$64jipgel0 zvEFqoKA#J@yn}oC;Rq%jOo3vlPELG0{NiQv&|A>oMl%h)JSyFfmzYyFu;V+U(rZjX>Kn0Z)VD+BJ=Q{E~f;c*vxwHL3_Ru zuH|33b}PTqj$$lGbg|V7>^@=|TX%2swLE@q_>o%rVX_=T()WB16FAGOjk-+S(DJ*o zGH6v9!7QW<173{=eBh9x=}67U>k!hiVoIhDl)=*_G~L`$e2Nc)IJyoIls7j znSPR$hVI+D?L9#eA(Y7El1$8!v0Awv5iTBw36E?n!hjEMn%n;O#AwDL!Tnsu@6>r= zH-z95q#bOZm1hVoZP9a6OvV~si3M5XT>ArD8<}JUZ9>2N9c20KvBKRAz#|-MEWN8$ zr78WrNBTY+=@f?-mznvArHpi|yrA3tnyF&bnxn#TawV%=v4VY0`2NyFMQ6^o4qmQ* zMQs!KFQ<9cs@p>UfH5af*TW0pF*Tjqs$bUlh;1?w!Z4nKLniaA%VHjP9hT$XDPI%IqniG%YgH;y0; z4S36T^q#p8U2i4H?BxflH!-93$(YO85TPGeNXq4gW+Tbwjt2^BT)mb79&1sq zw!$uZGEpRhs)S1IMzKs+KJ;vQ_rhJrmsAC++|4hc#Kqqwzn)YrL+LOu(_Ue<&tSLR zl>BJ_{6QADEN3EZPjfI^fBJKgD~yHYB?=fVF2H~jAPoS}Pkz{hzjcTpw9M!TWUT8G zCr#Yx;B)T3zna%l)xb?#9E!sR^K{8lnuDDb&hdjR9fNNnu8lxqyJG(RqG$2Co%^z0 zSWP?HfE?_-u{MKhRTxSxIC>TxL>>r;WVC0gh`~Kbo|>xL{5jIdLz}zt0KVfGpbx36 zPcogfp&mKO#DrJ6P?@`y%-6vhKKQ7U&g~R4Krf;TSk;_RiL|7JQXkTB={Jey0^N!5+B5VD%)$L!`oSgtl@=AN+)bp17GQ3e|rRNz9xXKVxFB0m!c3ssUFRr z?qUAfD&+erkleh_B$mW)Vm{y)BF{6YGTezhW$77FT4;lz=LboetRP!kW#1*XYl82T zUn1%R+FSNE6aw~W%LfK>>$O@Q;ud8QMTA*HCo77#8_s!+VTK3iBSJ=Re-C2L`p-&g zBuN#e&A1!&P|WJ+gMDzr-Ran-|GAmJ0u_Zj#U)1b5NTZ&i?^X@k(|muDv8c<36IKg z)05uv^^>skk#i3iUjY8ZZti}zQv@m5Jbi%F~ihDyRk3?d^Nv?tqSEC{^ zb1eO#P22#&-&D`iKt*f4hrUZlTv@NewKP>QmTvN~k5_`7{5&$-6`)i{0&EE9_kp& zWkR}&_(w}oEPQnTgQiZxEMO5?W~7Co8D`Wye3+!X@8w~tK8L3EZ;iLM&xW1}p4i`t z0WS+Pv_(Cx6dh;L5r(i`l#SwqYIeAd=8-!ZxsRu`g;{mp|42Fuzoy^s?=!l4lNONP z04WiWF6oesk&f<8$q57L?hha#AsaAKLU4=*r9%-!QbG_EBow^&{oVfn58gZ1iR)bF zJYN#`s>o0d>-n3|neG1j$@C5nz8BXyqjLWHHC5U1y_IZ|W9`2(0=lnHPm}Fa@a~yi zw>gK1Oq-P9S0)<=$;M@r1xu(EtuLjAX%U4M46e7&nACH$3UQD|hgEy|J zme%PLZ;zN)r*Z=@s3syfMw};_6|3#ih~Tyc5Q_OK>i^x9AGz(-bNwkVo`l?6-5khC zZ_x8jcpmM;z>^t|uJ}5kej%AKcK&IEUnV}RVN-no-NX%lM~cJ$t$ z^t~WfY)R?^G~k2jcNGy!ea)c?E_anQA&@`Yuwx?2lurrz5h}Vfutm7J+xkHEN7J6& z&B)=qrMVKt&Gp`gb_J0-%0#I)QJqTUI}f#+3NBmkTbIdI-l2fM82H1pEfTwq&2xh| z@5>Vz*c6x#Du$T?yi~s~VmsphP-UH;o7%i|J}yK33{K`C<_M*R7qk*wjtnli)J3!u zj^W36rJ81=tTYqOgTD{pIW#_1mJTzSMdO%hV62F%RPSwGB6uEZ3t;fYS9HuS+7;A- z2)a|8fFj5KHpLxK^!!jqxm3Xn3g#H4L?{llf9BJfzFBSOu8}+UXbcP4uk2~>v3&V9 ze7zNn@R59S_M-&V>tt#iWjy$TL^#81uFmuKo^o=t2$p)eioa%={~QpNus(R7(9#wC z@yRKIegvG?jI?y_r|xMs9qcg&7`!AIqKAmX3cIu)KH$N4S{Nr=kfj&Y#0lnr_;k9- z<2X!5JOatU1c-ajVaALm;1H&VXR1@W`rJ6fVKKu&3ODg(Z(im33-Zd(Ep$Je&{HZf zrTe3Rkb6VkBmdm;r=V)!YQGtQ3Cm0va$l(6GJPWObR+Fl%>KV$Yof4=@`Nvm|HKbp zTT0^ljXxL##kFmuQeKD*RB$y%SD!7G7YV49;AX$4_16bEwidq{cIwv;AO}h*EN}}T zYce$-{G1q_w3C|Tma^~Qp&bCmP$J24*^T`C&AlSar%ZhrmOi#qqM<0kIf8YL{g@)& z&v0QlTA->!t_+MI5fbDu6!Iop=Ce>KD=s2qnfZAmhP26f8VFIi)BVP(6>*g8FkQ|< z!b7XDe8?&)MXSXriU5DaejOm(I(BjyKeuc;VF@=5tu6jYIIAw>g@Jq07`DC8=Bbro0A3fG$1g_+o~KOI8sV z4~&}YR=sz(Yvk_7peC(&(@tvmhetCvMQ{Cu-^l%%O<+glgUP)<6IREy=*D@{hrz?5 z24=z0dxgU+ur4Pyf-X=oGwnn&1O8g=*Yfp$jrKtvOmmO871}$+O80=;n{kHi$x+|L z@ye}1i^P4K2`vIed=sDh;9eXbLEk$QGD$mAc%C*R^Ssj1hgr2K($2a1^{hPLSdGdDq(&vyKcLIO$5C=+ORZ zG9|{gPt193QGcBuLxd*A^f!Pu9!3z_nq~^2T2_@dwaOZY1Lhv$!m5Fz-v4|fzjr8o3a9C=4GP~XH!dUE$Hz`d!4zX9zOUt)9-xvt&Rl0tD99~;-Khr8(p;}U2 zr^1I};?skt2`4W;B{$P)f@18n>fPHrxP^NO(`ZqQAQKkEyWW0%SGSMb3`y6 z*@NHiEQHi)O6K+Nt?-__XZR04VZKHL6+*k6asbMa03?TCgz)uTQ|^?>I?VJOf6|gs zp7xfwpPmwd6}=xUZ#>pT)p94<$Jv{g!ZvC7ews5Z~wcag+ zQxlq^t`OT2CefU2VaE0byjB8oG+i(nN^oTr6weme)W{a-%I4*pg|PBhrx$AFVG-s-?{JjL_&~gWoG$G)%X_?HY-{A^(8$%=1pHE_)-;KI>)zM{ zae`*aDUN*SW3JBhgM^5LZ}vA0;{-nUn-j{?Z3a%x?E`2SJY>8Nv zt3?$L^DOyq4Q;UJIhk`LOyms=PTnX{ zVlSl@TFI$P1=aQQ!cHrR3~Easp*HgYgrSzoyv%8*bja@aqomeDdBo!SHV*&{!i)ZojHb9}isW^L~)O6vr5_S+Nh_p>I*z5m;~ zapGBh7%IHt)Y88+_XA6Z(#3HnY;4D>?f%m|}E$=k#f%=$NnsOIXcr+biKTFbbqI z?z_?-T@@x+ywq+iJX{y}G8K5SluyR#7%{}umwNq@ajAm4K(<@8(c$l#(X7Ye0wTf`}y%J zU`(ZVkcprCGI;D}F(*Fo`*+8uhT+F_nU-tERPIi6J{nqxeXg)8NN5)Ia_5v)ytpjF zF6a9j@5Pze6(^Q9!v`8_V#E;Kd<8J!(-sHDKMNmC4vB~{EIO!0zm}Zgl$E1Yhs}s8 z15=^nVfjNK2MmHcW|$i0Lxj#I1~Jp11ngR9s0cih#d`duQ!r5+87a!6^A;}>@z z+o-A1c4xqEm~b&B=GzoY0Km&sT;J5fNS`n|T&;cLAnlH9kJz7@EG?HHP}j}qM2P)p z6U28E{uP%VtxMahH#vNKxlA-7jo~4M?lZ&25?p?EExVa!%>M_&@f$TtygzkDt8}no zv(BboB@98f-CVr$HJk6-4FnA%watWRSSr8m#o^1Ch zh@jc6QnV_Wj&w1*M+SLA;)WX~9Ya#kAQySS)v7nX4LR2UukDywK2{)xkJIrqbx8=) zPUXT1YmU?Y<1ppPHh=wx2teb$bM}4kLM3|Ils)rLPPUEg(}b+u?Zi=VV5gUYF6_c> z{7K?se5X0|GKgcmsbRK)tL|w!k}O2XZ9eu@L)@Zyz>hB7yANF|YXztI9C~^}O3I&w zw$6h}A|~cIP*>E!HTeLL5W~bR?-2)iC-a?55riB+f?I}Q3_GG!WjHS#4(i8&iKF#o z;>r7|n)c(4R5B@C)N|mN+KP?FKbg&|D@Jd7Ag>&KW*rH-piDyE$rgbJ~?T0f@- zO~8UlWL~qBI?PpC3sHW%1I6x|_Oy1A>#AAaY#fnL!!4tSRbM~M9?tpV>vt~5gmp|k zxep$ZU7*3v$?NuO*ArJd=S9*HrHa9aED33$X&{TP#T*=^Y23TitonpQmU@KaE)8I* zKa+pKovhECK&de_6N%rIIH%Om9tSW$obaCV?wlBm~lJk@#mo_B^M=yMYr*5Y@50STlf%5+F3FA?KRc%Iwz z`v@O*_=zCIecu$Jiyq=7)BAM;V7cyP66{}-&Dugz2(6GNS4Lk-0*DV4uxv}H2)P^^ zEl4o0dNkb0@_F*Ai^=v#F;X~&gcQdOL=l$pP@=yf9jl>oF_Vg=n|Pf$s(iIT4wq1H zcIas2^$H0p`1e5($G^}M?nyOe{mHp2Cpe@p^4JcLdH@saP~LvGNe$v$B}~DcLhq5M z>);e)QV7%%Vi5UV3Z0S5OjxuS{P=~WWDJLfq2`wY2Te!}mk>tHn9LgWHx{}Zyzb4g zaQ6=poV=YspEGaXbS&-{@6+_{<1y3OV;z9~>$l{?L9X~#rPhL+HE6ZELh`efAnPY~ z6x(WLJLf=8rp{F!xbuc^bjlxP+aUKhtHtIfN^&h~TQdN-!~Q}3JF3o~^5hu%evw)S zXpw4BmklXqZ$Obh1qoHcP4s4QJnPTO8n$gwv9g}@jr`kkKo}B)@UbGH6WOzBOCsDu zhlN{lMDP!*=J*fe>Jg)`;K#QwA?{@3@87>tyI@on{WSIptTEhWT&l~KJo+0{x=byz+50lP20UzTSyLku^qEcW$jzeQEyzN*Yb$>r36`=tJtCUmg$_q^F=zSqvXci{$4Y<2z zAFRu4i^}fVI(pBs<$qy`##;onWnenvo<@cQ8UN*g5y8cZ2K=&|A$4F%?9WY&_JvBe z-&_DNF|2_SuGP zq6Wp4H40(Qa{G!tWRVC}!s0719T4&5|Uqbv)mQ%aH;G1 zToMG|>GFgk^X)skx}_TvgFu9(d|CTS)yLv^avC~(N>aW%4)5}s63&D@z`$rZ8aWZk z*-_=vC<358Et1?xj|n>4VnPb9CWQmFppsPZ!q&v#nfmB@6(WQF7-oCbf56oM&VOP* z9wa&B-am9Ch5_5-n!xfRZna~>uLe2F|CUTsVcn~ODj4>pW!@}@`mor4m2@hWatAx? zPyX*Lv16wQf|Z9nD49q7Dpa`^a3`lSW491TM@ROlajH6FH!lb&bZ)cbnEU9BVbJ6% zDSRb1VX8v^-A^0q!Rz}nMlez|X`}%eP3#`yGeXtKElE zIdGSIC?g{}Q=NdUYQFvWW&DCp(wh22PJ$kpD6W#I-Ei7 zb^Xv*IW%=B>|$N)bRKN*JgJf$W96)+`I(j5N=&mE;GaYE9<``xq1aMZCs9f&bS z@gb|Mx;qP$Skr-nNzs|C9p9DRjGxfE=6Xh%Fk(n8VK$ud8MaGZBoND%%f{xzS4{+o zxrq?rvuq)PC*i9Y&Zs>6NHBMERP4OlukXeOQj2K?T2CdEl{LTn+qPDIZHD;po{qkf zoT9J$Jj7xh^r%x5j*NMc2X_`qXU1{dwOS4Jt&N9A5anm0gl$LSn)6?O_ET+S6w_IWIQtux-z3??PX2)^t?pAp!OVR0R#zuJ;TZHyyc2rr8~HSP=^GQn$f=F_`vtb^JrKT^=W=HVuSdhdz9}|Bcp&x zmY%Cmt}-jc4=Z zv;5C@2sR>zv&qgHtU5FGAUG;>r(&zpiBdyznjf;$05K_ON&W?Ux{>qhigq^&wm1N{!SRo-krn-MJh zWwsRw4EkSq%JQvG-}U<#^kGZkx3Tbf&EO^1FX3~+m0c3+(x;Hd=D)B?nflySU7nI3 z^P;7&TP3Q#+b3rNS&>%0-xA(|V%q^rN|C9svG?r^6I389{=4)XteP?zYkY?Z7Pi%P zbo8{WQ#ChzP-3`;f*-4qT_>|Ev{_vfCr-b*RW9%VcOBO9xDIroUPo?Edy>yrsoqKP z1RwF6yixPATK-lQD&t#UK|p;+E{{!!q`4ixAL5lEFEwUm0uE^WXErpg;SJG>%MXo9 zE1;fFO1PU)MN4y#verry`U&pLlH^`6ENG3={;$#dhT<KvTx-I7vD>J|8xE! z@MG(yByv-~u zWScplr`RdF_5UyM`mROQ$Bum6u_TvJV#&K_74dg<8jOS!*s-vZ>hA-du+)>;ZI=oaD;t6CdBC$>uGVCpN(+vR zK?+5q=|TU9e;IF&f|1uZsb#HHUb_R<;&cLe&*+M*M^bxTWJyY@9qOvj99k$+`-M?f zzGiJ(we#^IZyQuazPVL**Eaiiw<%5E|MTZx+1)z~D)5gex&Elv!XXdKr@g}eNt%en zx9KMJs!A?baLFTXs8b_9>K!&{i}>MX*~8i|E3G=Ym3O~AcFun4TV{03C=YHdB4;ev z$C;B~)PFk(09ki}HeR11cAzLa^U;Vbz@aY@?3>-0@&Wlr?V! z{Ifx(iXos?OM{L#UvH<55r3je3s@)*2c*a(MbbMTfXxR49MT7UnFM=0+RfUQqa1Eh6V^BT536bP1ur) z@5q|~Vsrqo3q7q85-e@5Jf%Tqlq(G+kK%bgyP{QkXTHrH{$PV{x~?-5GN_Nta)wP-0Y|>*qJ9j4P5b93KmO$^&qXf@TG{Sm+NwHypraF+!)^Pe5gvXp2i zC7{02F5W#vY_=r{X64n4D35v#$u7{jevJ+G+u*-US>Q2`WYoB#He96d75)2SUXM@c z4W%WtkgNG=L&kLaTsYf`v~T>?$Nzy`JTmQi07$uHo#HkrYw{6ivxJ6LBek`|yC zJYNdWjwL*^fi1Bm&;fmd)FQe&VDvF3na-L?m3x4~WCSE2` z8oa2;X|I)|l;tzZHC=ys#r6u`XgvUWx@wfElxcL(9h`qTLCGNq;!u%0{5lvSsGH^O6?x(jt%Z1!eZKf8!i|XGMaC(wkce-^N$rE ze>EB`*dcyzRd={_F&gc5a1zk?82<7MeBcpUfue&O-OYO<_h4K#_5Maa+XcjuN$7>r zbrgSHrT&<+S{{inZ&|`rITYp2IFc)iIRC(0(1d8Ta32>VgpYiHR|Db4WyiwDJk@wv zbB9ZRQ4Xg2uz-Bt+t(u&gS)HM>tjf6-)e5ga6cn#8}5nZ@lsPT`xYF8isv@3(85hA zR;d~vP-7>Gi-(CjkW#5M+JBVdJ$+(X{5|~yC=bctYYdUKonpVf2s^y%-x9Ob<5*bi z+NGa(t%Ht04lnZewHNY<5yK*$(*k2e4q&x&|FQhH@hhW<+y#fnx_&d{qYu4EXD)bF-xP*d6L*9p8!dcU>1dDgQ^ki>!B=f3v zz0zN5KC9>2MgXw1oSP5~9?mSGBPFe`W1)*G&&Y7w_hg2(&y)Otq}_ zoyd=m#P*P2ZOI^PEmJ-$jvkxydcPhZsuV-w+n-@N8 z9EeJY3d`aUgR3dajQ34T7czNv{e)suy1s!N$T2bv|34^n6Tf~>>`G(dqeW(bq4@!W zV{=kN*?wOGF_C72bNWbae;|FO_GA611pNYjp;cxV$P@JYB1#TAX7c;~U(R%|8%2@O zsrSJIq#QA9pE}&-K+$GR9X@`bqIhPt8e%{A8-eY0n#t>to@?Wf78#9)&5#Kr1WU}2 z`HUh(tCM2_8h4_Y`@>}^u6n?L)QhC3ACctBU|ih&Z^gkLT{6RR`R736p^5nOcXRA9MP9xWp1g3g?(xn;K zv`55JKnf`d&5zd!A|#7x{zp{=e&e29EXctC0OK?_t7fAj=uOFe*-mQv+2!U&mKxxB z+)*7z#sKqVsY-I86jy)qYP_sp&Ic*3NEk}ha&>KaTw8K zMZ+*&DtYFCW7)dkkcM(YC--Dq(#gGxiqdQMbE)dZH=JtdYGTYAO1G0g^h&RK#sD=H zX8nDM@tGJz`Y4*zE7)NhVWxf*Js1ZJD{z`?Ye0NTgQ9$>tWhvS%_f8kZbAXR6kp@R z)QL~b60sXA{)ISo)S&Ox!y{$B+vh43Vos#LNR^y=?gjn1B@T?_MyS`S}WD*Lj~e>`rAQB?BgkvEAl z%}9sE+@HF?2>62ph1iNSmpRB)gVzF(L!6@Yg6 zx|nQ1W{^W{FHb#Loj6j8o4HXyS^8JO z4o^Ncce?tu$(5V_m&G)h;sz&BuR-HHc|oo2WIpG%5pk+7TyvC2K#K88MQ*F3EGWe3 zsC8^*3KRv|88~1;P<2-2Zh}36bW^i#n>-0SWXkRYaPd@$G(wIBd$M8r0CJL8R4}NS z&i6MY#huHd1s}lnTi!NGn{$a_<)ARW&Xor;Rx9=nCg_0QrgxwZ?M@8o{$_4wFiIeo zH4!VEdS2|JUNF@n&ERXgnOG*Ts11MmX48IYIqE3w0Jqoc0t=zUuz%T`Y&H7>^VFtk4|F)&&&gncBo8ok*DUQ zgUdaFYZJ1FvkT7JN)cxcgfuzs>qY%C(zp*BZvNnyF>?RA-}~x3*0Gejt(jQ>{1qkK zLMvzQNlI~&@C!K_zsG5yS!yY|BP$=;xivhR4uC0%4-D2#mmGS`^`tj8O_%AlP}?PV z@StD*i(-Y&M$Lyov`Ap_=G82Vv;&}}{51nyH8Nhjee`B0R~tO0cbM$T`?oVUQF$Sn0LQVXU#wLlK;0$$ZoX-ACBN0Z0bZBm{d@vad4@TJW;i!8JhF=q52vrf1kWt)U z15(>`@~I41Kzp9zz9aaPv%*$)ChIh^c53S}%L^4P`^dbOMCXSl+w+NQ-1X32y@$Vo z8ufD{KgWTWnw1O7B@gyKQtW)>)?l#rc@bqc0zO%wxu*@!9I|ov%t?_DSE#uafWl;U z3QirVZjA*NnsD=6nEZbmm?J|(htm!i9Ix3_{;*bOA2UV_sUlG43HT7 zWmSyBa$rJ=jvcE{h%t3iwaQ+tK zgr*F(rXTwSE8!F6Q0t`$Gv_EhkZC1DQYd0&|89g#AhzAv>X5=M*v#Q@n_`Cz!QT^K z8(RG)S`ykEj8gIfTdmRIInpIxykM01yjMB`#t6&)m%xFwe;co^Ae;)Dc`o@&(=sR9 z=miv&oN>wXc;e|GK2qw4F!{7SeNygcLC;hW2O*Us!af$IMt86^q{w{!Us>H&yUOnk zBQqdPPc%x8Tw-}yOdzQ4Ve(fwoSV~|&)D2}fk)v()4s0*$-D?~+F&^Y2<_0SMp_aq zD0Gk6PUkmbwqR<1Qb&#+JHd02;bod}%vcq*Q=Um;#JFKx67}Zl(fTH=YT@$4+%L$_ z!kA5P{?S(cQie>+^K;9_s&#o)DuQfy6>z(>_Z8YQC=?yS@jDH4*G@xXO5+Gz3G62< z3#UhxlVDU_m1zolYr%>dY49Hbk^VJ1Q$eaAoY>xsH$iZjx}bwYnxx3&3!c#+QkSy1X~8rD0;wei{}k8Ic|7j~v>E$W6)>>zdSFMMj`WXWR1v!fQHR}ZBe z(y{%Fezy(>QR^J}h4dM}ed%f0lj(#I16#h6TzOl%=w4ztMgB`o3pC@rng9xyV2w(+ z{M|h>D~8i({hL2rO_?rKX{{HoN*ERqJdzo)?kq}-Kti{vVT3YFunCcEtv4561BTmy zM!Rjktb|B+Q$*Vx^~CK^Q@CPmJge`?X}wZJ-Jz;OYPtiA@17*zegF0pDNK%ez-;ua zn%k40{=$`4-RY?e-<~5MJNRi-E^$xRU3{ks9iT>fA z)xZl)d#H4(Nq10x#@Lew-EE|nr*xFTf}bYc#V5i7bCi5H5@`MQy3bT2-9RhGz=YFS zAs@XCNprFQhLC|8YY*|wxLymUHz^FhU88odN65?$Bs@(6*1e#tg*|st4S*e0tlFvULyaQraw{BPa{z+M@lc-+{ zb;k^g3`@~bdZ=Ad7xL;o%snbUXXYaUi`4T~Lh0?ya8;8n7LMx(dY&{6f7n^$PeVhnvv1T!FU?Yj_C;&qGw2GccKv-KiIwBLhK~1!>V3{h{X(9;x^BS~Pwqh;l zUfDMdj!S7B5$Lq#BWeNjAlsWwLHwiRZKOQLl|rMPtC66i=bAKX_drkQN(}ys;l7?I zI6K-8MOw{o~gRA%$BPyeUqx?OaFU1)%ZPi43o(RE}aKo%m3` zL$6WH$HB{6Oi2LK<{+V;m&2=nBP#Fkk+#kWLUbT;7^k4DL9rgSVP7~uLCrN#8pj{P zj%XwRqGAE?-i7`$+kw8$7g^-5Sd)Mngiry%$Nd2sT`P?D`B$ene{Dp46?OBW@VN@% z@pIKOjL(%xon^1(VTc(w6eou?V}G)BVOScogI#yCqD^hnN9|6bldy|~lEuD9rY3M8 zQ1syKk!*$DlrUW(l^1P|(Q)|iW{#az1NTLM@*~Dq7t|b0T|L_>na+WQR$^bY5?#Ge zrw4apDs1_O&R-4XB@*?|8NECr!mX%%J6PG(I`aF?Rr4k;Uz|XX%LBj~hzxcS`^E~4 zC)7vfjf95nXXUoB?c4UzxM3EQ+)1vGVnK|uKAa#<5-KYhIWwNM*lr+m{4hh)I(F(}u<4@72*Ai)$PCa8*eD ztl+37T;1$AGP=dYebyv$RjHtpSrBmTedL`g6U#06L7o7ma6#1IPLdvPRK zkR3Iw0M{`wXx(Hw2XA+A%KgX>dYpfP)k=Dw*d<_cev-G#mkqXoDEvag{T}R-c9-g-!;gV?GZ)LoQn=uZWVr>$-d%=l#PD~` ze_Q-aXH7_83sPh{F^?$U;wel~x5U_)8U;17fG29~27>bS)CJ0qIiJ0%;vi0eCwABe z(kFJ=3NH%vQO&n&6+yAmI7b&`hdm(m5j^WRLdwnIIiuO}$>Z#|(eSqB7nM z$h5E?ySHGAr@p#O@GMzmn!hbg$fGK!I{W$g^M)q{Vmx27oX>JH&0+s@+boBko2!mC zIhr5Xx|cKvlAri=cQRhwBgSM%dI*}#R#)zb-|R}P=YO)6jB)>0k=N2AFXKoCDB#DO z=qQxUIr1VL3X=sOao{t4)}wMw3tatAoh!VHH1|BNV)1YQe3Jj7#dM(6>1|y8G?kQ9 zh>hW3#A|{cV?Mu2FXepUHqVo{RvEz#*+cw%8dzBuhhOG$6b8f~5}@XyPShOWAJpl+ z;*03t-zfLJu(=*GM;(2ilTgj&WcP)TQ2j+f}0XG8gvNRtmM~SzVeT@^<-` zafrX5YNCL2w@l!^h6TLWP2M49>!RYwg)G%Rp}KDoogQo)uiO!yjMcY#B0;V&no~>{ zjCviy0CS#}Nb(pXI{a75GyRJeYi>GF)hya%S1c94!e@Id;P8g=mZ3e;xE{fm`kefp zN4TH$P(&Y#AD>m2bf=!NLROE$S5b{~wtKCX8p z>uOoC8Ay@F>06M)2PO(A=ZWCiU0$(<@skA(U9EQn902lNF~f3@$6ujutyDWE6ksF; zEUQQEWrIHzTgqMkK$}S*N;B1@=lfM4yM0C>ai$CHAOM^L?N5V0_|HJSxis8$mps9; zXrAUjN}Db8l^|$Bpk;{O~*kBLmWPD8Y3>)@$ z>~qS)Y;xpzG+C;k)1qHXuX~J{lfDZwFD+5GPnj*`h+(LyQZ zK!L$q>ALUQ_4U+mX43oQ&KJbsNQky2PAtSm-0oDnxO0yf_w)0H0{s_b9z*rK$VW0P zT7n`pnV+`45cpTOZPKOtT5u{IOoGC`*EiLiyJovUItXjW$8{bJI33{dsQHVP)OB@& zj=~@9GP7{7#t8dIUUkc0UF2}EfGxbSJyNGoGx&?%3E~uptXWZ>*Jgs4e!605`@1`cA%6Tw~BJtT$-tr&5K<_9BEkkUZQap(44 zZlu;A2MH|C6*u9?VJ^V%*BQAOfQusozbHyXg%YwovSONl zP0u}g_-?7=%+Ds)&FngypyXK)pkE5^fU?U~#c_HQg>Sx9iY})noR{ z?QWT13n!K~hxqBIOYn|YGo0}rGdgc_vQ4rO%CoeFLo?z%O$Q?S-o5L2%w~S}$5eJ= zp9^us@=;V*$3!6~5He(dGPHiwWK3r3Jj3nU0Hu%Be!FeOm*-v6%N)_kdaOL}<3t-Jw>9Z~c6lLVfX7<5}UMqQ8;*gRa#GQ7uwV#Jq!@Q`&C9z8^vDL8#0 zj*=_5>GLLQ`^F~R`(I_~CbNK$nA^-;BONzl_DOc0w(W2o6tTu<&9eXAaL|;66gp%j z%cQ7w3O%GcPI9RqDi^;4~Qg?)KVn zd)Dn#M`8b?)}@7i9aoZ(xvYBr_%rOD-XyU>v8cY~I1u96?-VUnJ!Ba?o3``DvCNx@ zX3iHPE96asNU+SQqQxE%DuN=W z%>F}e%JX55rF%o7H4a?(u?BANsr`&@jiXO6oSe`bCB-o2dm!e{%=<%H#^ zc|}M(DaQJoI_CjqH5NXQGPgT0;qsyUpW6fxxC1%7ZfM*Tnvgde{#aApX0;_Oi<~)> ziN}rs?nqM^L*l;3ij8;=z*VKHiLSn&DT1cP5bV77I^Lka8P?rkR6rib+L%D7I%TC= z25^hyRS-O+OXg8yBQrH$nDHD!YIElov89;#Re1&naX&S(Q6t zY4Z)t2($9$f*f%+Lzx~0{LN4Ef1y7~a`7R5b!i}l8~l_$(LgvO<rc;oM<)McUW+kzTBEX-(>?6xKi z!z{;RH&>8wQS<#zrWjC1!z;nd2Iz-%D`w@AJ6$jrJ+UdOApC(uDIEB_b6!ok{H}X8 zRu*xipsDfEy}D}s=1uM3ma!-u;NS;;x_#8`VP>p~-JN~o!V2jn_N~3^;#`8}5zAa^ z29fr2Bv4TGgChqs!4)b9>5>AWz3D4nqTI`SQTirk7<3Ur*gttgYhoWX^Pt{l95~$n zF-;6k-z8u_Tioo?6t50flxcf7AjbRz&|cJ;K|lG9`b|$f_TzyBwN$D!-cDG?;_}7E zRBNG927U+~{KxyO82i%_EYD*?m}SI1IQpTHZvXdsYhEdb1{|QfF;Yauy-E1{ZH(WI zC9_i&N4PK|4jeB37kvx}5eOaEk@{Ab8N`pxlCpNfoRh-Stm@JkT?8?VOA=eXqcB?b zR$0U+gRi^IJC8lYId%*eUOy%|uo`7~+M)hbAN@xo{nabWNGq)_v@`i%RG_vvOF#S9 z$p|GXtZPHWXxFM`35CsS9(`t{EaR(pe|llncV3=fb>hE&!2r&lIVHV}52X4)HLFqQ zU@!owq^%Feg=h@$M}6?0SBe9<-! zp)eIiBSP*Vj`;f{vGG~-#hb=*och0lksUjaHSNZi!R~)|Fr5dzOi3}iGDoh#D<>!7 zHW?3YTUC!rSOo1)%g7*SSuk+IvmmuL?n#fC;^J9SQ3`Ao%hvL*_@g;FY|p(WhnI8o zA`T8Rd{%3BBqXa}%g}}NL)s^(C@@zHtcV+x!Bzr@_>JrYm7zztyMS8mw+u}8RN2CG z)5G<#%T-<7Kb!}fZM7bart-*IDSG(ZYOVN!vBAwJGtfySFd@Js4~ngz#cJdq@f)%r zw2#OjN$;{}j;-V(ga~hKbax(0&v)bGXV})ttCf_uczmc_zPUwg@Be;Z_Au@J{hgKH zADQNYCSQDh89t-EoL2haZO!z*m=!Y$^im=zdJt0(MGyy1`c-nhX}(+6 z$_q6#yiCUT14E~grEP57;}FS!#s=9!E%-26qWdiGNmH#kv^cT0kMbSugB}CiwG2J{ zPpCn4silS!cD2sJ}L4vyalv)s|aX>}l#3 z{iXfSRjQS4Ehn8)Cs0Qwa3(Rx0~mSMDu}1W_SpX4IhWi1nnG?ipaB3&8XXg1!mDIP z*@WER(~}W_L=5a_zI7`Ce7g+{g~yM1pESwyt6QEAhy4!zsy)v$lU$Q>EQ`$=(=x(BLVOI0 z|McSG(?06nRR1dR5(}xhEcWe(z+I9y-Ss9v?MqWGYzgp&r&m~z=b{F;R)6-%>3Tpk z+rv9di|9oq>+SuuHS!XKNn9yO+u#&`|Q^9+`_EJF44`ND-aF#mfgk>jZx5t2`7CrUqq@ZsK zLP#(NSAfFW0O@e4+;EVunz$(X&MPwDeec*Ax!$!L)3KGK3Z5KNjEc#P*c5y{*qgI* z>U}BVoN6YH{;u~+m1n=d-}@~tY`q2!GHAHIl7) zz5W?eci{*>aXg3|zN zH15woeHSkKyhTNq(_Ig~yC|PHU2aewAE;mH4LlXBhyz}g*U@7Gte{6_AEA-ON9zN>G1mEeLiY}RqzKVUBb&^)D{9##vxa~T3=kkN$ zQu1;cS3vU+#(zex&Zig$XEhi=x(J)T6mj19g`V~Z7xa8XXs}GN7@gf9{+z9KlmC|i z$G&|f&jR}`J}q8i`KfiGZP_mR)2B`pq32fk8TJb7NoZK__H%ldp$$O`~Q zar`ZL;pUxnBRF@f>$H>$5cAKzJE|TbIRp}m{z`5sr>UGZJ`F3DQAldHntWn`9Y(1)(wrF&QAi<|e zUHnX}QLXEv(8$z2{fP_SQjJ^g>IcuQJas{rDUR&I&^?hDhFBZL1F7#Axr^R+z9zam z{)u11f~Fl$Z)f?%XWmC|Y{e*{*KbtY!bX?xCM!4|bnkaJm7?aXU&;7M|7W?w{|`-w&xSQQtm7HUen+5oQ&;5N@~Ikg0*W-wKOue!!^p7gP7cMNNsvNPmnj z0GFTSTWa`z(@3t>SHk}yLz$2urCsIYuuTF9FmjGfe(G7E@qqqieNE6RNd*66*4PWsvz zL!-CD@Od;D9}1GXeNIQ)?)P_Xj>xOjf8HZpB{z#XC}QJ!*`wS46!4*O$HL0$54(f1 zr90)l@rh)8{>cUHyW--5vyrpr&8utZk+AI9s{ew2dO^ai{9|Z)<2X~0i zV=7izk~=HCL;hJj9vU}#skXjN4EqpkG))+un2l|6iLIoL-IpF_?A$qM!Ie9XRjknE zY6m35KDimMg{#acfnfRuzzn>6Oi1_T%%88;%>6tehJ zA3g8tTttUDnNvkuZ)nuZPAThF>mJcHm=*;2am_zZ73K<^+EwFJ=kvTtW4%gE#rCaT ze9HdfY>2+5#zN*ec|<(~zf`+lsnBT~4v)Z$(90`~yYG&4fip8moU+fKKiL?v|Gt1O zZGs*}E~A+eB`%dcsHeD1QN->rn}id-l6vobJifQ9I&;34qcBXAa8Kh=oa~4;wVIic z2~ZPo|6Tr7QF5T#E6`>+SnPWKIPnw$8^?FGA(7%wp;*b6vH7st2IY-+t?~(_A|q-w zl~ek|mRtVkZhvslLc;O(oIIYOApzuM#r*Jr*{<--t{shdFXeMd9!l!D8PUbe#grAjjXhZ?f8J%a3cYOtCV!MFJDt9 zNf4Zi4nTXgq}^`A%1^SB?h0B!ZJc1BG}7$l1hFe*nrCL+fY&#-Rl>e~b$j#WD-X|? zDs1tOjb`SiHHQa_BfVU9EP}))XZF3ag|j=twV17K-lO*gqG zI2B{GhM%`w8R01!jaMRJDA;{FGUT}E1`W2#Z2z%TuVS_GRJdh~uMrTpJOb@i-Ah?9 zvJP~|K&$&6qt8tixAgOQ$ru~~C+n3>IhXI!!h7@g-&!f+oB0g2&Qf1T^W{^~7 zJDlAb(1pA;DRj<_s7s^c@>N|Rc}42a`MJg?Xb1FPRM^2WNWShfF~_Mc&f_FiAA2J$ ztj{6*!DVIDoHS!?xkGBo;%Mr)jLdPb%}@@U!|Y@ghyUFu9MuRML15%d6-*-U-22ew z-1lIFcxQADjc`w-0$t|IvtL-IQ|ra@LR3abXz!#vIx_Qr(kc`8r4RzvtCgJ3MV1o8 zbnP&YSM3zhb8LXT==Oad`Fs5VU=RbuSvw+lv4;?d4(!5XaEPA^VZ;?uuzPXW@LaIh z8gfI0e~+)LX=mCWVn6{J_(XIQx(ZcNll5QW4bExkRtIU7ZGFyNGHtF-gOEU( zj5x?u)o&GAxsl?~urr!lN3=DVkWP{5y7=4D0A-zrQ_uFYkQ80X}bv2piulG?nl zOai|SXHkSXW_z>h+OTf9+q=Xdb7`vddxqo~gIu!DD_Xoq-Pqt8$Jebde{XJ4^w-X_ znx9SBe?M($c;(AS^PR4$vV3ROF1=s^;v3E!;hb!9m=%Y${|&!AG{&&asq;MPq1eec zE1Lj!q--J-N-nRaeuOdZ_l||HVL`O16ydVHtL|9X34ggDD#WHk@NG~fu{;VPQ2)cs zQ)CM*aOtq4rZ&y|sg(UzD-Oi~Q>udP6TZQmw>tQa+a0RI0Gi+)Co-V?^l`xC6!F`N zt_y_B4@nNys+Q&*5b0x9e?;v~Y182f)vsQT9oiPgC*VLv`xv?yASReQzDG)xPQl10 z2gcUDQEdMR7_8{m$2Z^mj*hX7RkU2Em52(L55cqHtpRci`fe3}XfSUX^E zaukq?rL*r@XnUFN2~03ijYAg5(Eg%W&c7PxNq%fsc^=qI2KOXnzJpT_%4Tc9N`Eqk z3X+4|H~)*i=E&GyGo88s?cwzu_gfUuZvj~Y6fpZ?r-s;1P@YWeTh6EKZM%&vMXxy<}0t ztCF41_!`7uY+~AWpNt_TD^w+zb?#H&E-XD^t((RIo7nSibPtal#j@6SNlX0j<5Sba zNsIIo9NYfkCWy3O2jSS??nvSo;xtJc9^4Caws?+?+*;z^coTu%YoLHJU-DndyEKiM zCgPAwHRtFif0cfEUVQP(F%N7M)+V>^4JEK5Yg714uV2PckIM*##=3TJTtjZS5b8!( zI%g!w5uD&(#JJ${qy|z5gCSf)?3MXBIvn-cRYY<{jLCHFOF>2|HnK&6<6!^xtFc&? z_YaGTi~s$#zIC+M?bLiqwbQ!P~n}HGGkWtT9Q;j8RwW}b4KW|WLEHcyakxTP$VM7io3?i zH+WC^OyitCX8b`%&_zMs8xMnFB&7hk-g+!1urUdI_>Nena5hmE%;*C*`cyI|pj=!Q z)jI(*4Wm>dCo+(=x~(jJKP*u6&mp$_48VKl+=Tib^3Zv7e>es+lc~n&S5i z!}V-C&dz$}*r#7hdt0S5zjB$zG4j@+Qs~&M|3N7I>)2NeT~zSUc9!SyR}8bi3pGJS z3SfNdxz4=zr$g>tVok}mz1d&61gVCy`>W(us|ahfP{$7j)^4g^km@$VMxI94NOUVs z-_h};$D%0F9~fH5nt~(pgQ&@w*0e2|ur55>lyJ>l{EI0Z+~yDPaEzt= z=ACH=$8s4nM`Ew`72(8Cgd!6o6+XCdR1y`a4fxLrMSiaAtvWonr-Z;~qn3_ZeCGKF zt_P|%XR01O!`J{59T&?BSef@HP$YoVN`A`4IgnMoneSTTjwSToZonK)@UW!){=Bw5pJ9N^uAvCk3AMY@k(kvyWcrFR9 zr@j46hoQ~U%=fKC@-(1cYf5dPTPK?5f@`%Yc{6bpkRi_3czy*l`mLJ4l27~uFBVV_)#=9x8 z$XmFNM(rSJ03Z~E78TN^revg!J0_LP>Pm4xOCabh7z^o5FH0Cig4|s|cIFj2rH0 zGIZC!Xt;LSA|2lgclrqa3SD~2E7+7n*aHs;t`UX%zhiI3Vj3{y#s89B zc&^ohOjm?7uGlk0+F6u4eM0NX_10n?Feqk->mvD;Ac%&u|1uKJ_;YBNRuSI(_0uml zR9FIs03}Uo$oHszF2moccr6pf$M=j^HB&^J+ukIPb}5SXb8fO!iSsV~Ry^zZbY;xl+b-%Y zi45v8;?@TKd28vB&pTCZF>ji1Zu?iat4rM4b9Nzv{1?ZqRg*IDUBT~y2^0kt-nO&(|b7s??Afh?FQAS;S_+f$+ZNvtZCH&#J)%n>$Bi9{;iQmfAdK6HBrV!IHH9zO#`E zBGctygrQxwY3g&0kK@KkY0fV69!88J#03?LGtJEGp;J#LeWspQ-H)_NIQrvRMyJGm z*;^LH!>#&^K(4oDlC9fYZA)dpPrsFZApphIprh8Y?n(p)FKGlI66E~AH>7C63XFVH z%2>Q|H1I6#aCFrV%34q4W1ODZ$u+b}tn%@o-qv~4=+D2G9N|*lk2JPnf1#*c@epUh z2#)?hR3H@SU??Q5EUpsNA;uxwvnL8)bBr`PQZ!cxJ*OKzyLsg3eOQhyEIX29Cg?+P z%1ya>=1pj^KtAvmDp;`FUC8wg{Bg`i`PNh6tLTNyESL4zkyl|3zpl3qPL)`GJ`20U z((z6Ho{U(!s-XJOjH^L)M)U5CX;rAdnof;mmdX1!%Urtr9>e<@ABv_cU#HW!Pd;&i zn&v{Q*IE{?3Hl#WqGMZ-T@K}i?+S98&WfLYy9N2)oiWpTr^JEpX04yU06<8s+oZO) z48*8#jr9Q%o#(_SQ8=HW1%Dl^6-OS>Ksc$VI&=th#kb)6Aa1yCpbv^;%#_E$p*}S( z5=5qqxhv@Xj`fr6FFG`>foqlx_Hd&ldly%_95fJJ+Ma4jBcj6xsuB@F1@9%3KV9E& z$#orc8L+YfU{(VvjE1HB`@%7$*+*QpZ)WRO6kl;GrA+~s0hb5!iGTn+@ zlf1bAem&8~4fbW0Q%~rIp6haWx;klWlTDL=;0F`1GLh6GE*#`8CwbU}&ngiv*vn?( zns~k>g(!kkw~#_dOff%2_=fCQmL?3FmOA8L;4lx1!(;rlOzmTOQ+0FRZtm z*jnD1I-g(nq>3Uk%IO~y9T|Nu?*#Bd<9F3WZn{1!WXBE;fwo&RNP+_T8hHjn>g~ho zHeRnRCQzE9H${G^sTbh^1Lbe&rf0H*fqBZ@2Lyt|9Ng3`95DQ9yuWxMwwQXWkmQfiyw>of*-f>ApCnhv2D?H5zNERn%^fyYcpYllkw`MYq2CtqQ zKhgr9I-***8gzXt>7r!*Uc-n_I0G4bXf<4cK2GP~kMBAp!#zqa*y-spbNlGnsgBY{z?~5C$R5Vwo-cqvZ~5lvt)ooq^~6i zQ9)La%P&-mjx&_DgYkqz6)>833|3N+NV}d~#KUG5T^_Kir>pK)NUk@ny&r5abefFP zH&8i4;s4y}b?URlzt_Ko*t1yNS&E%}GwObjRtFPx^SMi$;(-{{d{(rk{bFs1_REv? zeO)q0S-vfpnoD^k(oNA{;f;#1t^w) z33b%T!Ma6rPbajO86KB&o}=-%m_0NiX*&qggEU}B!R@S%K{w_XiOh90I?bkELM)j2 zb^{q~LpHq1LkO$hK{!j*hY1G;$depCDPMTKNaYlPENQJ?p|-V~_tJR_A@FLyA;h5L zWZ1mTZg<~h;fMbkhR#;g-&4sv#w&_5GU;_DcVbQgsuBu zP!^n^o3SE0tM2MqaTDi>s()-RMFmTSn~+Rf3cd;y21W8{{${V&H!h$wRFhXrxAATJ zJVkjq_BvYqBN2$#7`A9XWQzr*X_l*m3Q|P?y9OxNdY*2UKLoK3K4c`CT|a~a(uTx$ zP1%13p2>=OpEN=r>_n2K4wedrt0ekj2p3{%E1%L;IOg=nDHT(Bg;PiWu` z!|);@)3#t1FG>Lj%POrmGuMLqBZYB|)=)VhZGmNn#F7MiVyIRjY5HHN+Rq<@guqk! z9%KbKj1cZzwlu1-r_%(;MfJtNy+$ZrbSPNapxh5P>g4$a0V3+Q@O8A&xGN@+IF&pu z+r9QosSlsbD)}d&kY~rYb=e{}WD+};oRM)E4!&x%(8y(dU7Aqk5MyCJc-4tfJf&NVzw88-@ZYHb7(nqe}Edas5fwZ@;Kd!zF;GclemCC7k@FU~_C;w?rdl3;?Ku4_gbTM3-L4SFOgJ~LXPID7^`~nC zAq*wV!t0Ccr*PqK0O7U&>Mq${qKM!oZX`!7|Fy|scUD3RQU**xMFhB(Q+t@__n@ArSmndJ{3Il56P*_^DWB{uNEI}WfXAO`U=)`LAjXLV4ool>J=OZq7VZ5B+nAf zV&4xY_PY&w3uXAkvbt={ulsh4te%JB!TaGOueiF#ty8f;zVP$4O+Xtchqa&a58sUS zgrSvDElESf>a@9*zRsLe)MD3rUKk_c()+-a0I>L_&FpVaA!Flofx=`^ElURvk_xV> zCGpm~CAZR(fe3dqydyVnr95UpvC+jv-5q7W(df~x_iM7FrSGlk)MGpTKBznI$o(xaV3|#x**j@z{HJN_G~q1qCC;btcHIs^CNPxc_N26WyKmJYm_=0f#0>*#`0F53 zq1?jY04qqDi8o+waY?gew_jJwl*$$vjsh@yy{9abI770-fH+7#i!r-U6cdS4m@Dvp zc6?3RZ;;$#v#1JiYn|Kozo5uzt_PwKJ;$BgS4v z57I>j=Y`nA{jSt|M1iiIO`r%olF(w7txEq|f`$w<;wzhjk+2`>n_na^9(O7JOw1w} z60{3xcyKMu2_}Wv=Asnaytd!?1<0t9@z0>$l>>)$zlm{2RqOim@fM%S1=4XH1%#7& z3bV3!%;V8+T1@`aP>0D#mc6z3=9sA1>=OGH6?RhUO1fqKC)W_hZ%ICq&S{|{vi5_B zfiO)kn%-h_S*v5oNMY1|k6O~Qs$fZPkP@>x*~p@Uy$@|mHkp9P*u<5EXnQzae!KrA z;Gy$rdVcwB<=w(R+x^@u4gbsBq^z^$-}gP!4K5^3N zzijr~w-%E3!Yxczcd@a{6B0{L27Z5?4)j*Yhjr#2?Cfd7_v*uMkOAX2?S~%~b7zn8 z3{DN5TY`1RxtTE^U$w$PKhr5Kz+CTYRMq0a(PpBinKIl-{USy6$IRjpQ+^(XywvJOA@MMhQ=U?BLbh^G_olsfQ$vkR{PEYS=i zT!u7oJ_C@!lT15ITU!rRPt!12?!v;Dkh}wAXr`w$z1`=I-5| zWboWW|6FIxZa%x?VzehRs+`Ylz53%1QfGGA=@OeLbMVj~bPDaD)R`u=hdE1rw^$#A zldh;Gx}l5V`HKEuDoHohX~8#h4-L^67RJ#%Rp z2*B)nX-`Rya|RQ-<|u#-E}e0m>>46j;i$iF1)vMkq zz#N@}Iejd(1@zQQ>7A!YRN%Y}+w=iRco(^>NCih1=JDi>?aUMO&Y@i!?^z_u?4=zW z8l!QZxyNvPP~v+~=T0aEZ|&`f%Wt*c@S-72#ZH4|1+HU}F3EVlf- z@9X_3PZlp7+DrzG6olaOcGW)p{YlXT_b3^CCuT=Ct2ck+ttmB7)R5ts>{jo_yJC0z zEopDPinTRXr9{v8Tw$jloeIfR8gHk_|K#@l>^J+BNcCp*wG-O9fA99=8&zyD7O2P4 zmrSyjL$<0@bNbAKQDb}Pg#F5jptJrp7Ju&;k|P6RWzers^VcR&5sqW}x%Pd7tt{Sv8z`68+I^L*! z=yYi>U9or;4UF5)-J4M*wCYk!E!W7(3M&ueN`Q8C8<~)hAR8(ZwU1@RL{1izQ?2QN^xz@)O0yOOrD8i$`LSfN&lE z8N*lPizbXS3?OE!MTL3WKU?39aEok8v@1MKUSvE&PDOoE=s{h0WCpdHUZ(lE_}FsJ zX!&w7u=cR3b}jII9R*(|ZN;#EdN%+WP8%;cwqlcOmv-f1guN8m6Jh|pRz=h_V#y!9 z@WI6E`q$9UcZMtm0mFm7rP<*@b`p#Ey%o<-(Pi4z5DXy zoZk9_H^V#v4bJ|YNI*0EX>NzRLLE%^e0aX-6@^;sP)t2$xMq&n|2{Tmgc(23L{^#TS(%ZENyMjBClExJF;xQlmT|u z{dDC}Y-Ax;lw)+$s{B$&TT?5$`Oh~=JO;}GX&gHpPQ*s|?3n8=^z+ZO5Tn(iDAfRi zDFCwa^5TV~8ytU|`SrUEfv*gOIuh6E<*H8xQpR5g_#AD-wk{IHa0KP7gFe!_^mRRd z;cc5`wB$?qni&P+T<9iWFN4u!SpsayE3K@q6{h^Tr3*k~ECVGA0_w8fhR*MKpu>z= zeZq;Mq2IN(;&N~mMjeU$zZ1bbU#We(Zi@;}UkbnJ&&M@i&r)msOAFmfaYH)xbHb}J z3wpXamKOPW&|l(vXq`47n_X*qgyT0L)1%||ncZ{P%~}y-Kn6pPM9`Sz&%={cGB!Wz zaY?%+TMLN+Fa10H_KRWF*EcGHnt=XTvGbNMV>|MNVQ}eO)_>c?M_|J;8OJ2%q(=rS zQ|}4FD3i`->6$2EH6`%b!?6Cf)P6O2hjuU4%gb^u?R|(yzohlQ#D8|spHJ`GFOt=R zbd4udSi-eR81fC&%9h-d)_vI?9$m2BUa3d{SBB$DLVyk}C`r}N#=+@}eGfhM+Kk{h zozjqMcP9Xsi_xW5ffcsVo>n|$g;M8Ho%Y7t>A`DTlqS(2swyz%##LSd%h<-h%W^ zOcKzge8j@pNgt?C;3hOtDZfar%P^0DntG%SK13hVuFCDxJT`fkol&2z(gde~WsdUY zeY(_;?-;KE_a(^Il=Rdk+Lx$uoIbC{1l;v&oFxP|=3 zzxzdwLVE-n9T8N7oWFV^){WD~7{S=s;O##5l;0B~AEz)_$K@_Q+aQf|03aMjThYP# z1kUf}88ulv7C_`gJcsFV!dkOoB%I%B&f{GLO%*>odrCkE>vwyj_1A~+FAvw^+ROtG z5`Bfun<;)8z*7w|DdUD;6~oLb zxEnCKj!yZ@i}e)~-J&HdEaz@lyf)kFa4iNTWO45Llod$7Jf|f}?BRPlb;5@lMU`E?G_cCf+PhZy->gy}Zjh=v6G^a{jNKDo8D5JGk7I%(m@8G;_-(QHdU~k$Za3me zfvoI6i_x>7QZ|@Gilhhke&7r*^p3MadrC^D7|N(ZkhcS(D0q{xUv8jQz`Vt(HNy$A zwKuOw$koe5Ke7}YMh7knm+5(*xyG}&HpR}n^x(de)9iOaTcrG_*Kbrc@3^DxY(S_M zZ*=#=GH5@^YmCmm%m*4*)~_gPIVN^S_YF28eD&}O5qk4r{nSty^lcLL)5G*<)}qn% zPv@i?z0b;1e**HQl5akl*$_TNVJps)riEK$RcoYES*v@u%OJ&B?#)O--9$i<>iHM`74-2JEuQT+3ABICeA zf$uX7*TODQz<>0}kEh6E!<&v%uQ>Ln&KG%Q{%;J{D8^uguIFqBiO?RAs&EephASjiEX^vF8 zMH~3O0;3s!k!J+E5en=xppfqMutU>wH#$G@8ajbnMZJvvv(15s5Mmi0Y`sk~n0@-% zR*HgaDfw-S4=rqB_c>_3D9s*B-aE$@SFi70oO9QLIFliC$4kYdg=0O=p%$iN;HpuS zrbHB_wd^u_dm|*LAFtoX=&gAG9!UDbtRIOrB!3wq$FnG@;eSJgwdh3F);vG8NXUbI z&K-SfQL8iQC6vBgJY3G1+-P)3B=YIkfe7rtq4S_R+!9|y?$(~4QnFPB)l;TPC!T-t{;bb(>2mOe?Z zmhg6hTkG}NhvBOKQbr(VTG1k9(M^4R^9t)PF^1vdKrDzgEzCd+z9&|k#gG^xs4OT}0ICq~ zbF4mB^x|L6OSp&QnA>j!3(($LP}iDBddHY^n2oyFPdx-io0yx%CW5LI%1uY&`y=(5 zE1|D=LK-rV4a>tL5PWCh%0?56{-!<%>Z!vHQy0{BAwi6Ux1A}ni3oQU0L4`;@%z~Z z5B{Jf=v7QTmre`im8qt(c<<+rz+mc)wgoM zQr8Xiw=INWA_!d3Up4+zea&Q%@N7sEbNzcx(i8x**-u&?xq0yZ{Z7{4hgHzrT&EXV zHb#4P@#0mTg~t`vv7EtbCCI)y#*M~(!;8Egl;J2?@sL<3)L!>9p@>LIn=bL8_>}!p z-NPY)u*kHFig1K;(e#o~y16ymk8g_tMX#M*|8w0M59xKsVb(%|`#VD=4(oN_o6)wL z-{l2j&hGit32YtOg-netma~8i%%h{cD2eolmiIZ;cW$Td$dJR5xaOi1i@A_3K7z;B z8xq}ze@kcta)!srNzZgGm9Uu$x%6$^&25pnTFgqlcHcNak&Y2Vh&@X}pwk$OCzRrg zcpA7AD%U)U>A-O|QuZ?v3rw08Y9JD6@F!xv@nWc3#%b)6(z5nYgVlsZhL*Qw?-+k+ zSutP9WeIwnGT69mig1dyyQukFAm67OSTPqsoC5x-N#KL&-BU~$FBB@inV_KbzMPh_ ztP9|dNWMNX0qu#lebHy_1$wCuW+Vndv%@KOtC2q5G(#_)v zr7NBMr8nBEN0U&Dm)pVb+c4l5P9HhsPz=heg*!}U14El?{-3yl6yT)Q?*|6M(;Ila zQ8GBhUn7x%EPFWzyH(Cc*r--}hUuEYs4&kE*L_7vBJ~68D8{y$>BHh{%${1Qzc==^ z;?Wq-jK~x1Td9u1?X`?C$#BJe!Zsc!u?>8)HR-(Ijil-I)lmnxs(IuJ|VEB=vy`Ry4ouGe}espK5=e#k^i-yC|j6#+ZIM@4t%D7E( zuX-LEJcRZ28%M0IRGRe}lWCbWQ(660a7n9I{aT4jL^Q}fjo!S2CE1frqWWEL5yo7a z1G#}C`AFie=$dq!-m1BPldAH4)K<|1qe&(JglMz)dySF-pg>#mk`R1tHSk0U zuG+x*xhgxXYH#WCa%|PTI^sSe!KDQwOrPfL7zNGVPMB|dQrYTBmdda;FtGAi@FVU0jH5Zff2~|T`1?ono!ZBkh zWDHTZb=(;PFG&0u5k&4~ji3E%Eq?x2E~W1UNoi!A12F>GP%`i#SyI>aS1b1?c-~|K z5>Sz8>-G&h#6_$P;j>aY@{$-DSS$|V5*86~@?I=Uus|EOi_B_$f7)&8q$2$Ex3`f~ z;Wbv0D0(J~7(($Gb$ry8>#lcK8XMUNs$~%4_6=Oe--wd&Y$UU3yMkl6SMp|S+WwJn zin<#C5_hnv(Li3h6xFpT&S^WY)9DhygSP2kM(A?@#mL)f#key!jJalvaMwMI)F+rt z9EFxaGpj4eAk4$Taw0(^$EG@LM>IBVvSh)dCN<}Z1GDP(>f0#9c}@kW?1v>BG{eqz z-8!vd7)320N7rwqPGbLKhVxI4Qty}wDi>+jc43b;%qQkngZ;yro|G|uu!8B}SD&iG zui5vqabQ>?ne5W~!`|>KkXDSwRmmSUpPxLaz~g^k7*07;opTr_xV2~y^NasxU8<*X zC}45Nf2xA|RlNkDKMbT(j5$KBj@}f4Z4I>33^|yRW>CWkg@#dE=o1DW zd9~XW>J9*9)99SJl@fSjlMn=au4>BFLt@jG+$}p|g#**pBK7=b6KGVqag10PR1>)h zfIR$MUj8_nQ7b$1kgF)V@Fy)|`z$D>eq$X-1MQmL?&f_(+JjvF66*_>{5a*@Te&AP zjQ5p#QpWv^0DkU~w8CgOd@}XQ(su;n>Crcelz}6o4*dIy+h`gk^87>Ob099H&AApW z24Wqd_=2#AY%w-pTynL$U4MV67NKTzR{topP}@)Aic#t}4dkNgdU&_${@^GF5S*^_ zC!tW80=?UbKJE(saUd_g1dBgh_G{&pu&97@;`xB*R#jSpyVMsxFf(kr6!|!=q(_%5 zP~aUwTs(_5u)@O2vaEjT;99)gi$tGupgieEnq@V~H%zAGxwb^3Vjs-1n))zf$MN!G z0_0&AYCON4r5SxTpY5Q0xEYHM3uLKoG{L<*i{toNdY$Lt^JIZQ^i64&q}}8i=UjRz zVDjaqo|41;9(#~?MIa<2(`lJ_3;nt4yp_$7uUeritx%SKNdb*bolwWELA<)4L|uM) zI~3p_xoGdjX6B1csv9nXeM9#OHW7xPH3-GI(xAd}oEk& zMlLn-1Ac@77>{bJ=2ne$m9ZfdOBHt%Ky6YK z)GG!MX0HWYtJ=m=y`F!M)g=i2?M7vJ-z-&THi*(c}tSX$*gt@Mj6OIn4K(G4M|NFtmRA*fGPg2 zp7tmqQLSCPn)J;-#O@x7wymYw+=j8vX11cJM_OathBS$FiCy(K55QhG6XY{Jc`@%l zq+Sa=oa2Q6nK-@k&*T9XqWBsSs< zWI&%9W-G#RsxY>?WMOk(RuTQ_7}9YM43YEk6cNJMVvXkn zXR(dloLn3lqak^6dBv`>=Zq$YBUX|=lKG5-$O)BN3)__gmgJzYq^I52GHW1H^^X}ysfY^Jf9^u#JXG)Rj*NYPk(>0^Lut;e$r5I zViS^LBD`p}K=Poeu5W&WZsP#wPbTySwZ7t>A5AXCtXvspzfr1?c!$Gsj`c2aN5H3= zctA!PRkg)a7jTQLfD6cXfDj-Jv_3PD{aI1;)}<1pKqyc{Y+6o#$4*!h8+~^By83Kb zsl=0zC8qh?&F5eOZQk-bvmXE=(~2}=ljx$j*w}&sb{>;MMeV`#UsGp!qQaXwYl#{~ z&GRCg6Kh%TA4Zy=&;A98{_glKk=3m|b;oEu`66h|AeX7gBX^)|A#IL~XphmG5W?Ny zxOY?SqrLV!wyJ;PM5@7W#&juL>_`fO3V_tVh(EDEd@TpT;mKmIVsnRKF~Zf-AAeM0 zMP&^5E&RprcOi(A^1k|+m8CI8a9V8^F8Uu_#vjf{(YIQ<&VS+XRp%5HNV&!_-?xDT zDs+t)VZqmnRrSM2QB(e=4A^f&8r8}fKrF_@!Ym49m}o=1J`Z?!Zs9WjO(GQ==In2 zL}JgRB1;z_>yhHL9{Imf`Xz9J`|uZMvVZ_(!?QAkKrBunKIKnThQ9?{X5Ug1hkLW= zqe?hRfWFqO34OpgTc19|Nd52}+b?4hznxyhJ1?6~QUJ%z_9#oqofzXs|H9-w9<~3W zDRkUGWsc~-X6lExjXu4UcD|P*WddWa=cO~nk4qu}GhADIhFoYGF3Nta&te#*yA!p= zT>cTf6T>&k>rI;_-QD5|R(Pp_a--MNKT+oS^3}VRuzJ7Xf4Q)z%V1zw_*DAL$qnfe z1l`4o#XqRu$7+?Z1zniB*g|HQSL?SW*(*vJO$UX4QD1N@Xlhf z0l(t#sjyIEeL-k$LGa$hDf{t;XRufO{7F$y`Qhm*4@#LU*mZODdCb4IdC_q+T`FIFPBw}QD zdc+cEqb(EmGZhtHdh!Mxqp2tHhsBevrVn@ZWPobK`J%)CmA#-P8N#F5by(i-MfMG8 z4$;h;Zq^{xyfgUmOYH*^JelH8!G?ZCh@#j*!n~8*9#-PVo}VF-RcNb~z&CHOAQe1O zAjcYzoFyKLxe5Tg`+o2)Yk-TIk#39+3Jb81>3MW6&UrEV2D^`wwC=*~R*e9sFzjBo z6(S|5;PZuA-<3mnLLE``-=yjG@o2cw@Ef$92BtR({rK+~>f}iUO zajexNXmRkKeT`8eYmnS%<`wQ0HVAhO)yis&FamSUoXCR7Q@`#zVS?{zwhafsNi4o= z(^;#8Bu*U%zY~>Jz&h4?Z45x(qn8xfe`>hBlog!t0`t=_);z)#t-ea@k+OQ~&&-cXF6e z!~^wq(YCr-miYoW!^;wi3XwsD!C@WmSamBzVm7Eo_X8)hcEW2LweiRZIn6)Au9H6} zxPMgM+`uCv{YdQij-jfgL{zxogx-(%Z#K6V+~G*zp44hU>06r2#{kr zn8+x1IK}Y;J1bCBLxUcc@6vuls>-YOeXOTj8qs&+jp;6RK&tejZ}uV9nD-9ZF}@&< zvcD9Va1l*dSuSQDeX25k#+qM_9SJrBH~z~fHj29M1}>e$LAzgZm%sd|nTE-hNqW!% z#00Z3^k%MoZ5hFjY%lnu$Xpl*12uL1C5O17M6!BY_VZP{1Hg}#4eK`d=k8%Bq#U$quV!Nn%87&P{DY1?Ij9^H*hgUeC zMqrO%n`bGCp0`S0D=uo0n14S!+QxI#jX!na-ol!3urCS85J}J|HsEBiTI6ApIT&j) zSmjnevS=fQ>fgtz^gCErZ~hU?0PTNssL&fQLWXwLpD^|(;1XpJlB-3QrBdzvX`JDC zU`f{J9Gv4UK9byyqOu6XACJcbr>uBU+P5gv3NyZxK+u4`aw&y1{$8;qPN3Sb;mdI`~Vj zv2X3}_g(~$v0v>@P`v0}ca0xz2M8z}7>-p!Y6r-c5=(y1oK68U%7EMH;y6~gUiksi zO_RA>RkO%kr*1C~3H%2=v5NJiQ{JTBCd&A#y8R^K`2?Lt4r!3VqZ_djjd{bGvF`-3 z!By^5_cG;)pcw(^)~*FOy=lp>rDazF91X3bCB=+u_qMb|2n|+Sv3Pf3V-P``ml(ea=1SB$JQ5xAxQ2!9h6gbikM2Ar(`R zgVbA(u+$=r0(fu$nYJ`XI?)h+w875 zGXiM#be^XUl<19#nL5Dr+Pe(~TQnp&eU!m)9W>iz@9QU6gcbZMPUb@X)h;2V={1OdBE1PK{anZ-#C{V207ux{kP%SV;9nIWpwK1RsW5n-GHBzEG zP4(&PC`U@nL`9k6R1x?*azc_7)WS`gAU#ii`oP4CkFdf-95Nxj`x08;9YL1?Iou#I zmnz|WI_S$>LK%0o_n0culloTf^KI!qp8N7N9}Y4mBNQPsUQu~|5jPa)V0}EodjSPf zvOz3oT6@n_^zNHxR@a72KfU6_1{17+&SE6A_ylB^j{RkeQ<&Ckewl1Euz{kGWt!;m zMo(m=sY*54>%xoIE2oZw4&BzojQ>K=5j=UoRWKnJ552RvY=<+`YiW#jwb%kUe_A+`YssI{InrCC zZq4f#r19K$)|PeSER#6USJpb`{V?Bkvk?XTmm0I(bqJw4n&k$VYW{8xm_94DkuG8Q zq}71C9YTij?QhiO86=ixKN7Rm^8+Bz502_3J3`B!rwXFev#ANJ-Jnhsi4=&w*lH^& z#B#A#K^nWZ&3hPVSzTK2f!W5&c+I)lcHm?2_4R97{M))^%bz#XtIH+~4fA6_eAA^h z+^0lvV0J%cALW;RG@Gem{Yd&tB-I!!rwUMQ8^teuzmB)5DN#l6F&YtAS>%X*q%L0k zv-uufCx#7buDSly<9}vTtbg&6f`;;^-H-fo^!PPFpKE-1=b5g#^!q^PExr|%{@}DH zF0XJCwDqQ@4t1HSI0&>l^f*?L$WwL-kb+PW8dwMPfzAih8#_j^+;41y=y;doHs8wa;tJ_$~H zBR7e=+}XHl6@wdApjROQmCA>43>$xrWv9u z6FV`>WQ%@+`12SY>bz&FodyC!1eA433FM-o7CURM;n}nde|wz`gDG?gq4}C;X=?at z2;^o`F!DET{=Vs_tkx1ezf}G`z;HlkVXUVc>SnoiXW|KK7NVtWw0N@OLE7`N{4cUgxH$>*(r=P;SvwCezlBAgCa(V!?khl#lRqa2 z;e)12@DUm=|Fj{haUJtdBdZw_dS-u+jwgJGknX>0#!Mu0wp;4>4rCx16o`tc+-bCO zOo@20W^a20i^tdcE%f4mlnBz!JxLH-<)I-}!lIDWb*AZUf@2QnpVk|+TI92kr|om` zw;)Asx-}6%=7krE$y^&qCS}iTIm#DYJS&S#kK07Z>)TS~Dwo!a=|)%VD~n3S;T-Tm zK#sNb?>GK(XO89SDlOVE2Lr0sB?fZe)iH$& z6mmXu6;4pIdZHsM-Z`e0p(5t=_sxUzk&k3AKhw&`>Go$#2sRL1X$?A0qO*jvjwZ)V zJT~a0;2*;)eD+X(3MBHy&9@7t*~X|}qB&!Kr;wbjMF)!z45+YDhv4w04VL=5EB$;X zfcp1#3eaj}`Y!0eo6Bl>{>S9sMOH-M_%{nBBZfYPBHv+FmK)-OZ2tYhqnkg3kj?kz zz#!$@RT!F#!kc@1?SKm+F8M%1Ti*zB?uvG1_KZJ{uD4(J3qvod=@LGstj$dDAYm{DC~0XzA&a4{G)YGc-uy87yd3fkRSTR=i|8 z*)^zCNiZHNoT&LErw#VrEry(_;QQVqDv$S(*9p z^o##8CfP3-Bkgj5EY-L1CZDaKi2(!i4sW7G?fhgZV5|n*>WJEoKOYMRJzn?V#tqWt zkkjNPT1YVLBELHEev!ed?c4q=CCo|11=58_^2`dEpCsfe^(DBI`R>6mpj*oPka$7{ zv9!i3`Dl?NrQ+E)MNUaY;T(a{m>KmQ6vtT+lk&b@7OUpILXkjjd;}A+1tF)FC*OAw z!Cak*T=nrTHwe?!hLl$FD4W2A7n9c5@e5CgZOn?T^5*f8Nsqh_ToEEx3Uoa!xGlFP z45*7Y4x?uJ5)&_;GQX!@DE!x9Ffkiv6YuG-ul8x?&DQuJ;-C@V+_h0YWem`z3E7p2 z2_^~AN$6%*1JEwiu`LjA#Z6nuDuP{s>(dFH&_2{6x#k&987Z#^LrZYm70jUpq_*lASwiD=+)^-@mUwLp8Jk z?$iOM{6~cj@=4QA*H6GMQb}DKUfIhXM6W`@-%{Go+;0}|-Bl|s)2F>jAkidcCa)W$ z`;>bOcwz>G}qc$ovGVc$TmfrO) z|Ef$@2oW1f88~?U(?>C=gM+m`b}M`i_MQdtY08Nd5~7O+j#1%*G9>LoR1pzV;ZYO_ z$RYizyZ_gyHo=jh!DF>}3hJ^Nocgj@Viv zU-v5cMe5VMHlgTu@z<;+PK_if;Pq7o5CL`x67T7ofX%Nve-C^^^HtB|j42blF=*I@ z(Uq|R-}Oql(oz!bARqX`=#ms!_BGP4gJq=Rj?gwN?LbX%q4VMDS-2WW8+My7@P3Uo z(s@QOnF4X10XLF{#(Vc^zL$#>KW71j`q~;b8%CX{C1`U51S8$T(%^o)q;~jbbOep| zVj>(R>p`D|80G2mUrs&I&}%uz`!Z>B@iXrvOKBSO;f_(*jfShJ1F1@l`tm1J>RwNA>i1I{pdcDuHEKyMoY77po z9#U{M&d_s3Vi+1QVi#1LjA?_|m}aajZm{Z+4XB;7r+kDi1b*df2QFX0pMQQ}{Bm+u zm(o66j65!aaLXllshK~w@jHGF9wKlZ*cjJG>rJL=@X_`qm{P2`(H0sDF9ZK@3%evB z!`CI$e%VJ`sZC{2U_nRbBezYyfc3qFw35M6ai+Ref>wk5P%|dvnu2kI;GX#uUyz18 zLzatBeaR0k0**+vKLrj5c|3IEbo{o42`NGVxeyZG;*;(-tSrYT!hdaNMEQfuc^Pfc ziTLosM%_ugjE_PWT*T6Zsrj{^(=iA7?pFRB#=8%_o5Mf~sb5fFWt05IRRYZy{xbuN zNsQjzCOvZo9cS1|wA}?Yuo>{tjz{u3Fdxs?q1QPCX&N0MG?cDw`i+>*{Tb|_r!?(c zudBl(;Jf2y&1D<0-K%KboVoDpZY-Jsa9sq6kOoD{N+PmPWqPz`@UIBj+d<$Hg-G$A z`y5qhPE8pAqW|q}_06}3UMU4<+-(2^J9^%JyZT^ak(}nO>r3?j@y>rL?FFNluBA-K z8NM5+jt~@RAFjbQ3TeL&ms}8u1fH9;DiOm*$}+gvi0V`vYqoji-GAiF$4aXAbOriv zWQjcK!>z^30>&VBYQ8T3ay~(4p5Y)^hYTN>#`hlA6kW4?hBmmhSOV(1KflM$Cj) zNr8s|8eI<%HsTooYg43PVYuxd5@_LtqVkXxIhcrUV7-)z@IB&lk||O5{;S5->f$zK*c?*8qi^FGT~pp_;$WU&wkf` zCjb4l(tkZ}dC?mNurGD3t^jCT`ZKp~5n|x}0G1kmQ-5rm3QmNDRLU0dZky{9RRYNplABh z=yLWSs7vs~(m6X@lDM59i(!ST!3Vu#Vdn~%2qhdo_xA=mz_dnN0;Pmt5uKBSy#NFK zPpEh;{Gf)WXKET9wvXv@T}{+)#IBL{aaZ$iY5RkhKy055h}YGE)z3JkH zg%eCv2JsGa*jYfTEl1o3q%TLN)pmKsxZ(C`cvGigM1Khitzsd`)tm@0Cd?r4XUl-d z3^zU|qP0s73uNA*lcLYXe>bYvt-M0b+Hk5K1*&FhXp(N?G~jj32S59{QmkX;T-%7^33c@4xL4e-@=NVZO z9i=shobP$knPb9f5AO3ptP#Sz#n5P%A@dAnR^Di*&pzW+i)%sqgZVwoDzsxr>nHhV z=qctdE+SRZBvKsuA@sdXGg$Z2?g6SUi!E)2k8o9l*6!o0JTgjiwOV_!y)&UFc=g@!V(Hki7Q-XGM*ja2+8)MMIe2uvH$Pi6X4i0_8T-(nof zs|jh01Um6k`%nX45AG|)n#gEHbCXB3$)d3Pl&ytc6CAp=9Wz4%vYs;C-c}FA&@H6| zIc9upBiuI=J)gM&=OXJu)}Aoab7Z-02|XMwIbYtldh|xuUcdSoXTJZ2bRVe7V-JIE zX1%$Ijt+tnoYc+BytUpzR4KxUs!ljDbjnHte;2Iwz4wG-c=LNfzIfzvqG+-uC>l$` z{rYj_A>ZMHnz@M#X#LuIZv?oAc=#wm-IT4U?{6OSDMxhT*NQPKy~4v3AFz9WBMazH z7+derBOMejtDRl~BVq~EQ* zoL);2t;G&+!n z&O^+pC|sdFwdQt!sTZlK4swC(-od|?V4;o@@Xrv3vYUa+PM9f^GWFgpDHMwV zjqs=VMnn8{aEK#To!Dw|bPDv44L^#pKPc{1wLXgN=jDv>%N#FpV*P%sqP>!f`c0HA z0OIGyv{(S0$EhcF!F4UBLO31Q6t}^C5AsB1Eaw35`phR>otPU8?*eD)KZgRGMr&8Is} zdY^o+TTq0xK^`o=vS-%AglEPBy@0sDlQ;J(RSV+$YR{K8%D+rq!nXH2dTVRtcl9~% zBNhQlW;15_dGpsz@i!!!_>8kQJxxCZl=;TIdlSDge>IU?d3CAJwuW@zf+S?m63gTO zMq1hx7O!l6y3R;D|5yuJq;NJ=$wK-|o&xwqcLkIkz<$~)=y<1ei8R>?d5Bf2w9Ys$ zEDfz^3iV$0Myt`~A*Z6$7M+?25<_i#=ofN|g;YPf*h54v$EhRGhGHb%Ut5*6ReayW zIhtT8#5N83m}#&|j$bQ7yXQ{ZTv%X+op!*lyrO$SwFaB? zNFZQ7A0h}BX$$0R6s}U+lG|qNYiYSC(+5ezzR4JB!CStJxN&@Hl|(;q8nRYmdN&uW z?Z0{@`KzRoI@90mos27BVW_x8jsJ}lcAAE1%(^PBYkQi-79dfn9LU!Ua~JX(OD_0y znm~<+sT)F&+qV8#yP5Rm|ESo<4YAMjn?ie5ERY^q!Fv!;X`^UEQ0c~S9-bOn#qJB% zI`a1d_w3IgSF(B=;I=~8Py1n+kVooyLYmC?TJEbTq2laQ$MdwN zr?4Jx&!E&lcJZZv2h9}A3UO(U#HcuPqg1(zuP=vn6Ka7$G@Ql2S+2j56*QuZ%H2#D zFbHhqVm+#+E!-2)*JMr{=;8QD&j^)KANVo`edANtjlTc*9E`OPQivt&g-{{HqY9wc)TpD4aT)-kP#k-nFF#Z}stp>%rC~(1eTU$c zfOY!fi4SI21GnyDqSAPa9qixn0Y{y2LDIWrm^g$qeS#dJo|V(gPx%K&N{fkOl5@7z6t22q8}i zU!vK>C*KUH2y}kAFN~0Pks}o9ZD~W-MAEyKHE89NJZij%TUG3!pH6F~B-VK!V59*}sPQk<5LYASWsA3ukuexqxV& z)YH-^wI})U1Dfks6d(#tcSk*bJ!FYOAP1VULf!wtGwpS9GSljG>GgmvO)23l*8J#E zEd7WK58_|8QR1tc!L&XkAO$$n+}LwSasUaWVEWmxV4Ii@@uHu^7e{Oaqi5*#COC*N z?lMk%SFG%Q0vbT*tgRX=ssc5|WwU(rbUm3^{b?&N3pL_TJJX3evVXc+-zjr#(qXBo zXdDTWj1!-c0)2>D^!>K{7vnGVU{G-ZtcL3U*Y%*W;GYqqgMMVKm50cyAR(Y2*x;;oBR?x5WD!B}`A(NrR)M%pjAFaJMQJV#Fai6Os5@ zXqOQpN(hm{DC8aJPI=<)WDgLgJ;_zU9jiTSROL2$>1Igc+L$G{;7DDX*yR;=HlojgG?wp&Qu zfInt7TEH!+Cib7*tib`sT$O@+X%Y2sTZ$h`3Q{y<(N$(UV2)oi>|?6@qh^B(fuAaS z1zkb`Z1Y{@d;V8%KQnoqdfG-q5u&KZGAMs^pMi9=eR1zbAU*&kgQP{bl3=C2BT1aZ zkO0YV6W>Vkw?9SV)Jx$fGD<-F#&Xt@qs&-^p8PdrV`5-JheEU5fOkAeA;&E1eKY6% zlS1=?8%btG3iVYdhS{{GHN7pBF>g>XQafQO!2yx%8fij>psbBjUzA0;P(^DBleDH@ z7yxw(qr}%7*Pp6!B6J^rr>qfT=NU9NVCp{%&v?Yq9@;ok@P)bTSu3+b!bKbC&h>&U zhZ@|Pv7-KZk8VC5C3~|lS;QE~qnd8TlMLvC(`@{PL`z4vi_MexO`390&AM~u24qg; zyi;|qg0z_-3rhIda;_|KI)tg%#Hb4ZC!#`KdeZN*qe(rJX|o(O_EP6;ucR=qC(NI1 zarZO9ZtjFMq#bPhZHpryod=W16>{b9_9%lItPmXoMHelp0UY10mdMuu5g2LGA2o=9v#{<>*>tkuBw=cuqtG_?>!d7vO>4xh&Eg{q%U*c04JD!5ms|M0qwulC1{vT?4t8=ZvBlwgr?aL1yfP zRO{Em6AO?3KEc~age7wl-@mMPfz{*<5o{$5oK{d+B__HZ=&!v6eMMb4Mpp_#2K zYSYxCiiLfC{kp^t2%%d|r?`fvd;&Y*|p)sE!N74#%~J8`IGm`Y{kMD8?~y`(DgC+w`7O;mznJx+0 zIU?C@6DTdlM~&B9PR>5&>%j`A4ua5^*(ax&q(iE0@*#iKrJGEF$Z)L4YV*^e{fTcS z@6MF%I6=lpCy&KHPb%}QmNDSJ<%gP1E{s`FGkVH-vRaUi{ZQ)x;Z`}`0_t^~JNZ&Z zf18vFcb{Ii*?)$>u`Gb(I74=D7&;l6qmCTraO$}TOzC_nmrDdYQ}ArqsKpGiuv_gI zz9LsTyv>59=J2U-#~4=<0SjY)gPc5TVpR>+D#t?l*NHuUytOEo> zjh4I;Cn?PBq}Tc#7V=W6Va%%L3p_gAh}}3$t@Mv|VVzhE&zngZr&dmgD>fQBy^P!~ zY2ehG62jRyF@vtkGy2R5S@66oK1@B_?CsBgGF8@?V(E5H?I$tWvTe&l?{cg^W~N0$=Q~xj~|C1DQ>!M+B^mMnF*%VAhYM>1*xlernt1i6;`xs`bh3 z17H4`HQGG+rwJu;?%qk~>@UFzL2vB3jHqJ~97M6*&;Gt$S`2`WL%R5>w_}?$C9w0? zr`rSGL69ve?G3T)A2p+=GSai$Kh}&+^Oy-fa3k2ySFYK`2x$tX8@H^{Yf;yV=${YHj#>%n`5Aj^qAyz??SDX z>!lq*P*J;Ae5IaSAT*z7@KnKf?%Rk8&U&Ss z=Q+_t`K!6J_20SiNpA?TOndn#R^&Y&?4!KCpD68@e0=$Q-&8ui>zU^k*dCOkzpSv= z!b0L7O~DD~o};f!gT=eKdpVpCjItb$BS+&l-?9J8Ps0mPLr{>yKe}f!EGYt6K+xsC zy=-old}u&@PiF8u%q24W1@h5BWb|1;nNO4B>tO;ef`yAR1IFX`PTSvtw3%IQO<->w zm8pp3TO4Ilr0;nNo8^#78+9I{{S9!jPNS&G;{~bLX0YUB*%iRwAe-;*MoK_}uOE)O2Y@zTz+YZS{-duoRSI0tYM~x*aCx~)zHmEn zd-`!hSCRSUS$;6O3n#*6pebA9#kSF3C@@Edhi6CbQ08Aua;R;5S^#sp`e8}HgVKvq z$GdDUNX_rP5#Vf-TUlZD2WKC`OX4$COzE6UyWRZnI!|dxO$j{OJgD*IAPDDRDjHZF z9LE(t)URGBJE4tgx%+zk{~CfhM`)_Y1Brkha@vdF(25n-azGO_MxAHDg z7d5<^5IsdpG&H`Ar|4W7wVAvgZF{)n^TV8L$89iF()r$>NjLKaFT) zS(g?ddiSSv^}_AUvkEN2*-oAYgF$?~?Kspy+qX;H=`jzSubA?zj^svwu;uyZ-Rd3P zP2?9!&m*H*H_l3bYIZp5AkmFCy-Q@9H35wsgDtj5q>iOkg|>mVN^73ETJ7PAzrEB7 zr`XhY-7p8(a&{Jbi}bcXK=nMTt$E{Exx+U=M7h1Q&8spUea|NUV#0ozZFrJ}%;7mo z>SNiz=oh)|P_ATx>3^BCHv}cs>+XR0fJnK|KC5JdKdf=7+fsCj%)`C;2ioO!WiGB3 z9@5!qepsS8ron5H0z*gk9oX;GOQs|`2ma)#Wl?=D{|a&8~exH;W4QJY@MRMpZY(GkU7U3om z&LxD@!C(_gXjZqHvNjf4(Ux^4j>xfJQxoyANY-aA?Js6YmkF+%8G46ABurfGg{fud z7`cAfU|fu{eoIBsZhH6MUqK1x*}vkb+P=KUUM6x5^W)+B*Z^^{Q0sIs8ljI?YpNlS7}Yy zh&qgd__*af^dxV9fpwPCGo!R_ME>=}^s428xH=MznPaEkN!F(RJl)Ug{Fx1pAuk>3}S399$xK;U6LXjcy(p+sG1f79WADvOu_`QX}t4 z_b7SGIW)P$2^ed{ z_=YFRbSt<$qZP~dFm}5rx+Z@)HcyY1rW6 zsY$(iP>E0bW*EW`wTeF40G+dMDDTrlovHA18MdbP>_0 z2Y*VCt5@$?WaCmd#-E?P|A4elnnPZ{*Wd68KQ74JBdHr<<|2W3BfVnzDYhRHd+Lee z5yS)I2-n%)?9n6eSu&tnt2$fjt0=odS%CucoI-PBR{-PRsY$ggC5FESN(L}%Rm1e9 zNj$4%H3P}jQYC1J5rsN!$c7HN@3idCpx&U*0pER!A!sy;cZ;H>)Z&ivGP4_GaNW%wr`&m}6K<=gr+@=~vGy7Q!mb zzs_B(nVWDRnj4t2ME|*iFcZtEL7!=}EzHczzq0+1VDa2-+WXSttaiaEy@`b2U@~_}9 ziaMu6e7@cB+m#y5o6Ks}yu3B4NFX$X0(8hWH}I7=lL03#Ys6lT%#`z4v)-iP>yIn} z^8EXOxQK4OdLXm=$F<&ocf8bCG0+HW0#wFiAAUuUagVYeH2wN$^YVecS)zTQjh5iF ztjMbd+}{+8UyqULp^(T9rPwBfoU8H6-cN<~20-7uIoaF#i!(AuD7A1agwvo;+)J_g z%j08+5-D&C_BXJ#>*}ssRzFA^7|4n|$Rrq>~^i?Jhk(aS&F~ zM_epZVuSiF*~dxiSb5d9JZIbrQy1%TM~16Ox@Y`Vz1pp^X0A1gJs0K9mTzE1sO9L{{`GO8I*A+f_!l zGb;peBC13p0nLJ)fS*FzDzA5YI9pJ)82wFa4yFJai173eQf%+Vcb?+rs-ZFWB`{M9s}9Ob;~ z(pwiB1$QJ`XVT-`Vqo8Dd8fn~kc(8FQIAZ?n4l$;aG>@XzfR8PrSM)|SNB2?@xA%^ z&NZRB=d7t3$9v{{#X4*#^;q>GC)}*eT5#)!Ql4z6xFzl!hce3lgl)~Mg&V?EYIcNE z&U(a1fLd9}i!n+{{A%@nD(wg76qq!m-7EAnKHt0mEuWV5Z`Ahd+xd7_NZ(lxP=1A^ zy(7QEDjVP>N>ck;8Rl@e$oYy07)=xOylwm1JQ41%Kfz7$o)YgjnaFH~niEZ4&YO`R z;9j?$@av5gvXDw4iM`8u=((GDdX%^SRq={+hQ!hd7VEDdA*^s%jQk&5fslZ{ebJ&+ zaPp_AWsf`HH_YihEph}&AGRoyHElI)dIC-RV^!2cH)k(&m1TbYdmSB67#rOYgZ=Q< zn>~}C3wo!*O+JfpQ~U7rBP~i(6aG)~8KJ3F5PEots^O0-F?F+JFzz9tauPa`w%t_i zC83YT)Ec&lfXX8kR+P`(TwS>bDaC>>Eb?tcgyu*%l&!Vj<5EH&V(=)KF<&wb2Uzh_Vrinb&;kd(o`*7_KHOfnjDI%nje zQ4MUbdk(-PqShJ~o2sEY$a}IJUqCtg{1qZ<{rhRS9+H~jZ~lmY)X{RgpVtO9>=s!$ zFbWaX9c&>^BwN&6I+T7YtXj@|9kh}rXh)xu;vxh)>-IV{ypWZHbPQkMBAz*2Nf9jk z-X`I~r;IdtM@WO+Am!p+SA6~H16t4MTgC2E{=Bt-CGPxBFOVJ5vRw**$TmJE{)@o) z*4v}7jhSODvbDE<7O~Y3th?5gFO(-jogp`m2AArDAGDk7TNMSff2_eBdaNzdr-IiK zE0fO8<*`p5Sy)~jOU{B`S)_RIgk8TN!7|mMxmhVT?-3i5p~jZHQ6G4cb(x{ay)S(q zv?r@~I_J=@BS?tdOs>SE`4QNs$;Lv$#^l9Yc5W(_S;-|}^*4BYMMkQ)-S$Gi%r>!3VcjIWQQ>9xI z-(>xaCN=_7t-~$>vL_C5+%3Q<6n5&zAZrjW75opJQAf1gm!c%{LKV=fnSNatUW+%& z4V_VU6`=gQLpBP-5|>ao64LnX;r&*Ul8@3*n;)T^sj=B=OZ zY&Bz)rs*GND*GQJzH6wGj>6E}G+T2<*^8k>gzz{gC><_Q8~<~QCv884qsyirSO44> zN2uZp!Yx6P=!HP;BsatTEP6g?R{Q-_gk?-XfozhPG;>ZAQ%7Ww|L zza~k3OTFT?46oh|$eXNEt#vzFor&_hAV*ZG=8+>XR-05cJnZm8%E1;sQFumd_Qu~z zm55-Si9*p{)?d?u=_nVZtFiS@>KIVluH9=2y_xZ^AQc^_Jzeuu&5^c=N6+dow9h)G zW}=v7GJ0?0Lvcg-ND``pc!&3y8{ca<;qM|3UGkiA)C}Uydmo7-ugyT1TCqtAnPa<+ zvNM?>^jHg=tmMs~Y0U?j>bV(vzkleJq(mo$XRmy#F5yAzy>2N{7Co%uFc#2LF=rfy zpzNIqQD1#)l>rd8gZnU&2{npgiegyajRP)N0Xu%ZK7cT*e`#?h5s*~>c-sC)xg)`) zFW#}qvP&ITT#bmwN*Men=gYrHCo+fD(6pSvum7|IrWZW7O8FY~k zk7tj|pE`xe;Pc@|RwJIy5x@1ac7RPsm}2_KHdHWd|G&6<3nuv4 zbA!U)0H-?L3a><5Z$`<#n3-(dJ$rW1)_JRz!H|$-ZOz=xn=r}TpQApnBz;G<>sR_# z(o_|jft`+W?j02*R&l%L8YNTCjPVH~@O-}z6 zB;b;1S|lrSFuhW6bM7)KVKvkn7gE^WCi#@8z6g$++x_;GEfN>UAX z5CT*}UpqTQf=l$CEjr?bKn-SkY)VO1wtp6&ytPo`T-TSv^anT{Cs87dI>j#&Ez)d8 zKSpBp^_KeBi`t^Exz&u01(a%gIB9s${den=II+bC{*^Q7I#xV|_afZ;9NXZ5D3e`5vwURfj)`Mt_WTw*xW7|`RPv(Tz0)> zT-*{6p>!{R61)UIx{0P>^e4XbobH190kRqUYl%S+~_cR^#&-ARiqy z0H$d6g5%JXM8K`^({l|!BAmqX)%;OWSp@zV9X)Bxc#!D{;R7L#Rytp2)}?v>Y<^NT zWZ^VTD$ff79$T)uPYJOwJ@+lnT@^tP5Ml$|?#B(#UJ+yH5rJl=_Pa(-c5+DQa@ z-pdvPq?zs$!XY9iA_c`#oNvqsm=HsdIH=P4p2^XryR2b*vr2O@i!)I7*(!P&;HRmi!(;@?BH{U&qkGSZ2br}Jvrz( zH7Izq!MT=$uv_`uG}aD+({8)WyXAUj6wZk^Py!2AU4uKbC#9tn<6qA7F_q!XS7xSZ z!XHNjJxa0wRFNh(=sOik3DTZV6@f+2KdnI>f?KJ?B)4!`Kn;H}{!Dm>hdWRs{Ny1{ zWVyq%(dI8X2Dl(G4(l73B(9EM)-1#N(JP*PbILY0Z&`vW7os?xZ{ltX0CIneEoRJ@ z;qNAG;HmG{=2-MKxzHdn>PRTfeY*dRGFzFm3bYj!9*At8Vql(|ESsZIo;%g$tr+$|00 z03Q4-;t#jV7q#YryfG!%*&!@pA>;z1SYn9eV}J&1OoR$pN~>$rY5<^?Qywf~VP99a zvW?B9wYfiP{@~pBXMfvxjQme2XMpK8N)te1S4fF4GE86O)(|9L?kStr_I&HkwEcO+ z>MJ8Jyh9{~+uMO3QU;#3g7Yg(R>V?VNs33Wtla^a?n5jF4;vpX#bvm0j|uhSez5=h zbsFl@Z}G+HtyM#xjkfY}s^eVReB&ho%9B7vXtzCPqf%(RNaFQQ{E&HVDAgQr~@sQ~x@h9C2@g z^vrj;!ostp)Vl>K+kGSvq@dI{n|+K|=zSg-jD*kBA5gMNQd~r>N!eiiG0`An<&F6q zGar07ktV|G+wrspGdrQ5NH6VL^DRpuAKcANBLZ5#HZkX;4thf`&F#1;L6XKFaRBaf zY{o$x8F|yt&S*W@2T98oTaO9s?2W{uePH<~_WN-Wlc@_c>R)feJdsjguSVq~-AR5D zz^uZMgPkt=DVXT^aO=D8zu?PBG@*qBPC034M+tW_I^OP-$G?9my_@XDi9;lh&hegr zoQUq9@k0(zM(vennv{>=xNk_&JB~P7@2avW_Bbn5%$9L(v~pxamt*2tYcQ!@LpVFR z(EAE8Xgtq{lHq`Ybsfok90v%usX=*2ZT1viiiBiLv&!ea%$Fx93Q#>1^DKuxIzE+c zfF96aUuMS)r~?KBpN!V~VYzubBCqT8otO7@HgxRX5U4B6auRC^TOIyqrA zCXoM;OO6;;Z6frA0pTKBblD-B^9f*nm`Q)iSYOj~Bq#4D`&Lwx$w(8E#TAyJHk9{_ z^v+AL_vY`FiFh=62b8bOeV7ua{2yMiWjM-&PPauh!9GVuCmOfnCrZr6*&PDCk^P_w zV|F<$El6wZd3`Mt=wscTqrW97;uIwy=p{KO0s15ShX1IJ@7A<{Yx|RaEjMkJ7J$=u z#qu~bEW4a2RJ-)g@TK!6TI1!^k{RzDUB1;?+(oKEOeqW z2fqZRA?Xk{N~0CULK3g*VomVSr*YuddzQEdxotslLuyo=#1MF^cXcuH$5|U`7+2}< z<5e=lkV+WjAPCYp^>wc%4M}0%*2+<152y znh^_^ykMMjZQKAE&dvXunlAMU=zKQ5>pq7AjAy3Q-8mxJIsA7e4~;DY&O%w83)~ci zHAo0Xntyut)RNtRqSCueLxT)KF;|}gHh6>TY7Xzmy~pG^k^iMR9YAz zjnbu*^neK;loAA%>H>1GSgUZ&1#yXNnSv9XQ z?h$inwZgzkdeg;!3z|Lbs_3l22s@4vPA!ecinv0`Iqf-KPq}IDmHGMG=^Pl?X_UN- zNnU@6L~B+LMgZ~g`M(vGS3{DAb4BE!Q4+Wo#`HHQ;L4_tTaZIJlpKi7;BhpFvK!_H1*1(X>8xmj-5fp5zqA~Bk^i+ingS)Y;PbxZ zapHU~WrEIlcy+5md-H@ARe#7u>#@@RpwRbT*B|{5uIv9U+)|wxs8CfMe@LFc4;SO* zQ~aO?h8zxRqL(+4T>?I%bW?gp)(sULpBtlE*_1TpKfhIzga3(W2HlD={N1BK8#?}` z46gmuw&W<6uVA#n

R@mf_d701J=T^|9OVB5;de*)K_{V>obF^`z?8?7=pg)aGpW}sVzHLK?S-`lVke&z>`(@#P)ci@=Sqm zI;7jqz9zgh%2>{%cC_OLUQPoH31Z3DJB_SyOh*+BCjh*JCB$(t5~;FX-dYi{YAInr zRM@qEg6g))^)nNFwf~hspKZA*|5dI1k(j7b)^}K*C>x2AI%G1WHGc7C@?Ps_-mevZ z>wB)X4pN4!jYm{JHJJ}FrHesD)k;b+Fwizl@$r=YjB`gWj+l0 zdeQiUB$fjt))wQmh+Wa8fq)@+e)WSZ&%GE63a&kLe#&OnsG}ul)}Il55fmPL&3MuV z`$PrVENYII*ueBKcoe^238P z(Rd(IGkbITG#+>$f2Km`rxI9XqA^d~QWoJFoMMz#eFNk4NAO1so$}7ukL8!`F;R`` z<4$$JFpJ|!RV;6mk$9l*dS&=cq-AKX_rvsWOw#d`6%U5u{#Hr;HTzjzoG&+|q00bi zg{1|ju*y9!#|9UkX6Lp@r zErE#34RWCl45tza~VPtS+>~_V-s*RP65V)>EN9i?tFy z#CyBrR2$Ou&9tfmdO%Nr3J+lNem$_W zN|AD=opr9Y@Mh(TSxALDC8{|kQhK4z{!Np)J)G0g(SRD|5IxpFa=hSt%b6hkkWC|j zUhR#}u~Ueuy5f`0;M3K)`n!u8!xcfL;v5sLcMbJn_qRtkRi1|LfY#4DqJ5RF6~)?Y;waf(7G#wd%4IG@WOX>YYIjRQ9k|S&xkBrRt6Y)B zZ2#dqTa9%tY)9hG$hu5zQ`FO*{dl0P(|CGm5-v&;uas+pQ|>Q&%0*vftLvWbbN46( z+o7GGpKc#oBPM9)BVNWM7TGTg!I`~10>kJ2x2^rW@hyQS_Xpo~&ciC2vNsxi`pEEd4ozz?B}-@w$Fvjtv03coS4e=?>#si;e6V2RHz0Gj~(4u z=9$g+-?Sq6lQ5pfXcvn#q*W}B?XsimLNheb>H|FH^{1ETB%10*fDiTC?G0V(tFb1n zxEkf?z|;)w4RrC@IX%5!zmlO<*L{*ONF6O^K{Z?xMA!49CN0MWzDp{!eOsKV_g0Mf z2u8F8E(FA=Gh)_Fyt5qS?n6}z^jHG^krKAkZECDPl>l?(^mNY=r`Np;C$n*a5f?Yc$+fbA!oC} zOG)FKKV^_~dqK~N=zBo79+;0dPnj+czHx}D8c%wl9O>?iy%c_0p*siP(Ltlf^X_for{Z##LZi0Y zqw4Zq=;!SHOnWU@EXNMR11=NuM0+-{OMx6CYh%r4e<)RiwEt?Tp}~233tNaF63fEx z0&pL0I8RX!|MI^!MYa)4*&9MNl_tbVH4F3A*nFR{g-tYQR2*uA{!g7BP$e8~mM;t= zr0948|MWOV;g+=i?eT|J9{WURR5gW5t%d6-v8R`Mq7io&4e>}5fh>gD#FRU!b_}9| zeB?y-?|OZjoS$cXuul~+x0a;t;KNLXgU7O0B`jut+g3SFfib!L4N9s`=n}Le#ZM z{ZYSOcn}Ok@rB6#rjoy7wQ8%#{;`_mB2w_(jt=S|ir7HkX>nz}KB{~?R$bDWIexau zwN_`;m!BVPMn|!-ly*(Gw%tMvRg^ZVqr;mM`K)}k9AHG^ay6y*OOzzb^&RtEl;%lW zx-9IpgeCp;oIP*2&yr8(^=$JtjeF0N!E*oFxDXix=#86g6~aorz1w2?O|Ui_loEvt z#b&O%W~Xse%t=U?dS)=CAgCy}9-J4J-IHzaem1odY_Pi!C;wvdVc}H@a0-A)Kj!|; zE+AEkSL&4`FvQX7{yaT|84>@loI1t=#Q`@*9lP1gfaO4SH5wiiTUJA!;D7m@-ZED# zE+l}q0QmvQY_Hx3Q)#4O1+3}-ccP0LN_Hp~W$PE}d7(>@*lhvU{xxzR1vB%38@(O; z0s(s*>u|$y^5$+8(BaH$^S`>zGsNl*3T1?C{|mhQUPbabqhCg=B_{{3H%ap=(X=9V z*Z#^hOTSoc$hkE{){(@cu_hV4ts6V;Z&lk`dCr6h^|D{2b7tegxQuoGekQGM z4i@07AY!dEMk@|ttOi$qujqd5{#O3M%}tC3Gutr_9w~ZG2|gIbX|BzO;s=ioWqDlM)GtV`eJ^Lchx?{4pbU*_Whig zApRc1w|kVcRy$eeah#sN{Ftug#(G~bHo`9Ai?r{TQ$u-r#Y=DC7p5p;gAS6evwItB z2uAS_U+)vQF5|vM8>-wMR8+(nAmeySt*f;4y{31Y1PT({{Wj7*n2EsA=!CKW!*@ zZNa^o4Hk-Ccs70#@To#5Zyr4|ZTBD#0RoXeIgOlzJvwMhe(E70kDLWQF&oPUr^txt zB1W|r!zj*)6#}M;DCAayu_De1O14T3QVwep#5jTU__Lw9g2mkS&4J19Qc51-&W1@QgQOg z+8WMh+%EBSiG%S|?XUbb%B|&u)gkc*&cKVO25G@RL^p2#&IjIqAGU{xb*_;|~ z1)0kMk_gOGQVluyoP>S;cP2dVCL3eUEOK?Gr2h1gd=tWo!u(_CIo;ld&&j z?eOZ)7QOpRcP;5Og!tU!89WSLqzwwwrp<1bWNqeNr|HG%XKdI$|L(?ux<51}o_E#Q zNcjjeB}#A{6@;G+=FID+zcQEnt}HO^enhKPv1)Qa7}yYWkrVD=eVzZzg`NsJ zudx%Kc_pqkL4&f7`b_K(T9PnWe|U8RbBRwo7^QK)VCRJAek9(4r;j&P53#hc_myVocX3M&tP0A@BsD?2$(lX3D$36vZ;Xm~k?y-pGZB6=TLqfEEhL$1Pqfa{ z+TnqwS5!EKJ?{bD|4uA>`>RGjkh%iK7Tx$hZ~!eRPVW2z{2e<&pa=Q2CvR}CVvM@x zn+eVyo0KDkToK>U>BDmwG40$r81D826S-xrgi&HL_>h*`naDJBY~*ck!mJhnshbR0 z-4Rkt0aP~&WP?7Y=yev9Fpyvct)?ilD+&&F^QiwR7i*i>W~MbNy6ascyFV@p> zP_bwAtLZ?6uH{GA^1Inyeme5;;nT%$uGOLD;k$z`r_|BLlHLDpqt~9hSdeGU8jMh_ z&cm#N7iqrc4z33=Wd;1(p~`7Ft=oP)S)V9JF2*)%&8}viD3yP(gh*XYz6H~@+LXCFee9h4>6`K(66hGd_ zNG?f7Ggp`s8`Q#`a=>30@I``wVDC8KKq?mr@R;X$=nxW-Ebrn1Q zXzM3vyf5p?BDRmiRZ>}?^IAF$JiROd)G|f{qC;D{jZ87iRv3vx-L2Z={{lZt&dS$2 zbtN%3ab4(&3(eKBk8Pz1i7@0$V7SZ(sZR=NLWb73>Tr6&q@g?n`_(N===Y_(>TBjC zi=zc44iQc1z)*CrNosY_K_6MNiD`Y}5;(g5YhMj%axx9s$dj{nuMTzKet(w1P5!+( zq)y;f;CN1wLSQNcSl1I=M{mmb64~oT^TA2pl}f5`epwg0^739i3zvGz8cxNY0EYBK z_TS&ojVsOpK%#j=L)tADa<-1ZKF}`K?t!J(_iO;JKtn4_Ur*&EGsOV{kT&BO(^V#R z2j;giTV^hy=t#OcV5Z!`hn@zia?mE_G%S<1lIXH)|K8ISKNG6YnML;|?DSi+EA<@b zxOpWz;S(${yIrU->c0$qz%K47w#Gb6pvOV5KPK%iJ$8swAnKq*E=5Z48QZcE znxr%H;Y!DeWeMAjHiCaI*-(n_vm`~cd+PZH$l8`cOZ6_x4(r5_Q!|s?s~*4No-cdx z<~7e=G_y^09|&7udO&37f^d-zk)AX}3++mEkxVEWMe(}1kmbwBn2(+uT;!<~!NN`w z3p6b|p42N)vr~3q`McV}2ZTT&iGtOZPVr7Htq?+zX&KWjmMMm4Z4V8~S*mI$ZOPSP zP)(#XQ>aFCmlavq;KFKs3G{eSi{*rkjc*;4Slr#%zM=y^rAT!JesHSKcTl2_6t>VarB&x&&b>N?&zd;Oyn{33jrFC0+jd zF`RXEH5Um?3)MyTkGToS^sX2CDERfUYQ0QZ`${yvf{VCDONqjhB%HR`S-**fZhD`~%onHH$XMIu7H|el&u3 z^>f9jqB(Q~!>oy^~4X zg_!=dU=@OyL8&MQs(*Z6n4Ys6((%JXJ`NSU`Tk~7tM!#5rrkYVYdX^C(UhbabM>}D zP*yRgGTk#%Tri~ga7J^72lej<6gUZgegVu+YYVP1H$Rx=fWmA)iE8huIQe^r6AtlB z1o6Ez)o#>aK;onYSb&Js3fu45N%C8066Hu)|7O$h0uv2yl$qEjO#V6^F zsrD=$b|$Nnz_uw@a;AeVPnNtU%3ZE}foAkwH0eaP#u=aXQ=E0gtW9 zttEQwON@Sd zEA=nNSU{Q*oz)PjvUUP6PT=dRwmO?7b*5ZeSNxd>U~y*YDTGqV=<7Pk31YMPji#za zRcFTcUBkxc-~~xA7_G0=y9khYlLu#7=x&bSi z7SqnH9s>7dC(&g$4iqlO*@LdKPlPsGN0~7al4fBNXL57VGL$N9l?swVvK7)b{Mwyc1!42>?|Eo6!{9^aDC>hCYfM_y3x&{!>7 zb^3oG5uF;{7xA=E8GlYM^5bz1x(pHg0(b&x$)1}uDqLG|^@dJ7+9iytr&)ZsWSzg9SEIr~fF3HQh2u3EcXf5R0SQP2^B-udvD z&CV_$v7P-pD&|Ov7Fu*jc!9vpD_Q{xVR7<9tyeL5%a6dA0zwS(aP~}yt(1NnK`e2; z_U2K`4^4RY)!$Whhm_Go@SH;k+Jn;3j{)Ze-8wqnjVYN7?l0D4Pkus*pGa(Vcu?Fm zit+Syk|vvS?eMwwiUu-mJ%+i0DRjdxTzIESJgM)$4+!gt*+lC*wB;-c@i9D(ezCUY zXW85%18RsF>iEZ^k!I2PO`;OkmbVB9i67t;zdTx0>%i(z%h+PNlo8I*t)#Oq^&JB& z%Scc2Pz|pDgBT{`^?Lmm0-|x>eoU7fk%N4@Hp>Up> zG(|Al~xop$ij4yMOLqFveK6HdSGw&DR}ZPznOnGq5Q7H7?{h1mylqDgCM zHpU-@Mx`3FQGHX7Gj_b2tt|S!`0Z-v*qZDwLlmN|h%j$C%w$WGzRJJ)gLl9L<_>o3Dvx~%qcM=^`^lK_DN4P zQTh3K2%nd7fxh7k4I%PCplV9a>Uc>W$|M=mtZ!r5H*OoC|W{gnSMmO}e?EGl+#v`%Q$vcc#u<8UF35mSZ7N z&$ih3kF;J%UF+{B|5cgH+^!c>w?qc9@86L!LLFD~R{f0n0T2onnXU72eBzmup>s0Z zKH*T%*29-k{!CnLL??Kksm$vklIeSCd3%=RogruuN#976<{7s5k4zo){12>+Y72{cotQav3kgv2WYVv?M zN)NC6(kkrF%2)=hH4T=3o@ku5X7;}W19QDgKQyh=fraY$g%nL7AgHxH*2b~lRB%k$ zD)F6^7W!5h^A_W3WH_Sr(TP@)1Xf`W}%_Aq0kl(yo{GX7zXbEv?D(ui3RPgTABQUh&|AJcKF@(9lo6>F|q2L*UG`u5FwEu?%>~gv1;8@79c3M zRoLObmrB^sLfUL_Vy;^gF>)Z66@ZGb?RJ;o`61PMx`(`*BHZNRcq0H|9g zXZT%JCZj9^(cw1|K`IFh9#^J9!#OTXOoePk6kvc41J=OaJRHWP3vEaEt4mggfTPRS#<6&-%EV^U}Wpp#{2sz>9 zR%4fiZiezZ9|fG_)>paXja`wanM^O| zGTrs1r%-Mbki{*K;khnl%YaF}9j<%8S98ns3Tfy^@L<5){iI=*fL94k##! zc5$#~?w=BE{hf=iyzIxD`|r!UBd-6Xu3&gynuI&CPe46RRLjo@_63(0r8HC1w6>(q zDVsc?%q4sNzrN8x`=nNHHLVd(e#>Xxh0>sefpSh-KX4-pJa2>{QG9L3DAq&A?nJs)fUZ}#Gb;K7(*}NcztVe`aK;w~qh8mg(=^bJ ztKw3dglsU-ZZF0i+xTkGZZq2P3nGz8QqKr5jG7p$j~0}CeN+T6OR|2rWnO!lgl zuR!bZ@41MepEWiUAN0M?mgH+{rvE6Y7{D%S0w$EMx+#qT*I?Y=Sw9}G1asHR!KoOD z>)vB$>+JTviy?T}jnJzBH%l5<+f!ruAEXZE*`9YTT}x@y596|hgvJRcTQB@a-%=g9 zb1sxS;~OK=^qm#`){E;v6kk2TW+PRINEgkYt486|EB-8zD0$lVOYH1M9-#=8d|`>z za$CZ0VhAM&wbM7%9iM}jQ{U8A@?Cox6P0T47MYo{gOetGYv@5XW-?jL5)&~Fh9n4X zwd9B{QK80TTFMxHtIP_({}E%GRor97%pMC9MH@`N#;1^UXM`KtEL zIuoKT7cVh*g7$}Sf-M;s-xmfLk4IG6|KX0jz!s(&O$d30 zKibiv4mHvI6{0Fi6nGH6wg5wX0e~F0QACp?^!Uf(Mp&!WggqvSOiv(N4n4&I^@aA{ zX-+1}o;)XXj&)kQ;PEkUjq;`hT-;<+iR$$c@X1DBNuN*$em~2Ha848Szz^L7jhC;} zr^d$go`s$lB{zhe4nO}FjY|qr*9tR9{!i$q)7R?i*)&dRr1mZM0aXFipMp)MaSR*XiL7bc-e_TgsP{`v%Zek8iF43_D6@iRA| z16u;Gd7x^TK-(d;nhCtB_PI8jEVXQjhGI1BDRncxze*SB8StAR;eFxGN0Ot+L~NKUx*(PF41Duf*5^SY zADqhhKkCrVPxQW~4q`m)+u1jzzeH>~Y*lAYLF&J}7VKwwUR)M-{3cwpXkQrEnQPNy z&%zJCGP<6<;x&6p&*{&U(Iy9yf`*J4`ooygnK-8+-Vr4~s~n2XCR6!O5}#m{A%_^w zVbvsPokjfZRYlc_PX{q}a;QBX6D2-H!lQnv=C_i$S?B0%-$Wei`t)b$OIhX~u;t@2 zxV!&RI~c~eNbOjK_`}D0Us-t+f>UL<#;>Z}UXkYWf90LanWDSxnQCYomN@ za10w{L6w}&j#>6(UgCxRkxzO0=eidU)U%any&%frsTnVGr*hv+3AI}7lNbovqaS6> z!aqQXR+xjNqp7Vos>5gv8_n9qrz zd;PCmrswJf&GHL9@MS<0b5iYlrR1l+a#*ET=|euTKleFAEvTUztrm%tBoMD?am&`T z|20cU%7v&JvXB-={=c&Q-*^p>u}jqsq7fJpq~8S4DtQ>_l)e@nLJYCR?zNZ-R)mG4 ziea`eF{GMgL{y!gumEjzNB&R@C@uTjdJQSu&-+a}h6I#8B@H6IR@_cA1UyKt?lSjE z^RkxC2%w%fc#iQ%VY`{8L%gya6V$gqZe^P=LK?J7o9woqO8r*`Ua`@ZZX)f4LlUIc z@Op!7G9?#A7cVl|c9P$Po*z!-9WhpjHg~Ge1wR%<7?8#eG`jfkIMoYex$a)Q3fg-^ zW)Sh#_Hrx-Tsroago5WiQEkr8!6hrA4=hka*%sI#*pk&T_Z52wP%Lo6%?`XtaoPy4|cJ{fg|AHUQa$JOq_)bRb=8=?hn$Ur4R6U zHUMbL?fyOKe@XDeA9!p%CbL8!w<>q63{r$_ZV{l-RmnKHBSYhB>b1LN zH8A<8*wTI)FM`LaaqsGt3Q6!-P^+*h8z0a1yFxOx-GI|oH;;nknq?D3CZZ4gQ0 z)*Vby1(H~5qb(U(G1dY|ixQ25zs%TY4IOAgO&#s6nI&*gznxS&xcLDz!m+6>fZK5z zs?HBT?RK11V%S)&`=n0%T-0M(vX$=g&bd>$a9IsaDW;+PlK$n;!{iu%+Y@r-L240? z*y>@j*O!!(B$*om&wWrq1<##Z$+qxPw&ai)f8LU9;lFi!0Q-CNNNTm9@n5!@Tw^I! zDY>#b>oZk?QEvE=P&OE&8O~fvZ!K4esZQW9tqfKag?Y4?q z%Dn+AvzCzLLBiWA-j)A-#N4ik`SUFpMn--Y37yVIgRQbEhD&7OEIAEj$^ zIFHkQl|o+pF4PP3JgM3qKJ?^*Z$HF9jJ|w9smX~Aw;=U{4F&y}jcbjE2r*5pw9xqu z(v!U3+rtftgC&S9e{=yO06mkG2kZ;Sx&;{d4gC^?Q9&qe(?YuxRLLKS6CV-z^1h5T zdoPVGXfuJ1w88bwff=U86!RSWs{h5ZJ+8-*FXWLe2DB(lX{!XWM>}aQn6&-)w7LlQ z2RJ`N6|?RbyX-f3Vw2v+R0;#CtD>R$5pL#V6q?URs#Nt3>{C$`Z_@Imtg|9@&3^fh zVKX>@I)~-#?t6J@!?MtWxbE6|4RnG_>cqd*BciSILORs28VQfZTX*6%c@I{HIBBOQ zD^p?WmK+9(U-mQpywKL=r6=(D--_4?Z_cmkIF@hGd8yq=bjtWWJk{wVoJ0`a#Se}* zd4v-h;oxT))73>pR$q`5$!M9+L|%u59`Pg%A@f$tuBqkzlTJtl8He0l1GgV%N?Pct z^I%Ho9|1hb)=vNj5GSuoJuE}`&>&q&APwzS^OWRgU|impk7qS?=tCvi!k!B%V!L-s zV2f6+}USyO?+dgdDyG82A5rRWi|7 zyT3rc2lg+^L0l%!S~|kzgsW)NkaKe~{MgI03drcFMxNZ#F&c3@>L=VrN@a+}tsqw_Q};if0uU)7A6Qffrh#)4Ske}oqp18}du z<;53xdFYJ8)a8@K{5EeDj3`kfNNKxZlE~g`v4_$w;2d2uFN>6pmIosl18qXv61`zr zKm*rgsBDBz&HyV=_rB}Wi3Gx6+3CX@83zd_0Sr4HTcWcNtovX~-T&-Sci~;Sida$L zys!Q5&qf9<)=+p6?c0`E(}Z`Tt6SRc^@SxIzx9x_jRK>h)CYd`$J%RP%LI`ZE8-lE zH`JVk%X9{kNz8OmPZ7+py)W}xwH8`AXiF{n1a+f$9ppG^oAPXB16)^tVBL2rSR|B&*+q7JdJk*QTQr{!V z3120Eu3P$OLW^cUpV{bcoCotF0KJF#4DfmO!oaxvX$Hyp!0%A%Ro4m@6z4W#_@Wi) zY9U*u094;H9dTjI5vT@dQP}}QZnCdObe>@IvNJpQFNc1Q%aNxchLQI|UMw0*h#Qk| zHfl)aZ$dmRJoT)zk?w}4`uJL%Hy)xH=y2{%6y6R#gnfd*OVNqt`X)t9&Jd$p2%fLA zR}Xnn^yXuturd1j>C)S3*L>>)QM*W0#Q^D2YpCbNqwS%ZuWL^taOf*A5Q?{h5kd#B z?w{^D;j#f$fVe=IGA~6=66zZlgmC91Ykecen_CCN#5?Vu;Ha6&1%?17f#a$kbPK*o ziT>W<1Pd{)1f#@H+%W2fz36c8&>a|5SCp(tKBAun}=B4Rn`va17jbocQ~5It;yu8yUAWA*IR&ct*z1v0`^PV-E$XP{u4N z(W=HBl`pSMC<;ICv~3TrSW0rHw>~zt>BJEStP)8_fkT9!B;XJtYZV=etGL zP@eM#FFT8t-lF3r=}^RMe}%S|wDi0C0nxrnY|b~d%vp;@f;GCW8F}FW$OX(TGLY?UHvdSB+I4osD(QvtBktst=K`|o8E;hhv+o^2nHR8{mO5M6~ zC5YH#IY0{|(FJ7ayUH6UQ$;Rc4u3sXxUCZUh^0Af-Riy|M3&b&SY%bCckvMi`F+ zA%H$M^6P2qXBgU-AhHF&n9;m!E~KKmWl^Ln&~Lkwz9sTi1}%y&SDt^nCFfGe*jdTX zuqMvl$5-kxp^N`Z0@6SKqa=-CbWi0jUNS^h*#583cBK7z#aKRuQcN35fI|^+?I0nA z8~1tVlveCfV=O z(AjwZxf9zJ zKH@7dRV_B&p^<2eHVIjBuZ9m{daUU6Jb(THBQ;5KiUl`7ULOM0FsFEy-kbzKLRL5t zm<5N4i&LJS+j{Htz4wN_c!NDQnOiTy96i66I!<7-6_6LjR46+I(EdM7^rt5oVFz5O zReoGX$v4Ud&EVw9{J%{VCUQ-onSh|!ZrL?Xde{p<%~G%w?ly?5vAY7lNN0oEu&GRv z#MIE#ss5;vl_>I2X-idR>wRw`hInGg7M}0^2>kD&2S+0jgG5%`d!mwAN52!FY9ipG zm0Jy6L=+=d+iG&8{P6bQQoJXShMW;X3p;c z;beiU#@l}@ln<3;fzuWNeeD0ZZOk^sFRbm-@h)VSM^~Zn7(sV)6&J=g#1P3@0L6Ip zKaALNFedv?|H>jTNil&LnQxi2?X!!O!hMx6$`yjPHH=|?h6$c?Pemf~o0VD+m~aac z_*ipymxzIoxOfm4Klkd9qgn;-5Z9~7LG$t8azrqTD6NkSn0|Fz2r$RSTStOg7^;+v2xoyHn$m~{J5=xX2Ya76Eu9&q!cH9Ba=@LsW z;V)@oevlxge@Y!4$Q;6968b26`c@FIcwgpipONC;=BTD8V8r?}KF5gbXh*S_IXF0>3WV&`g z-NwUmg-dMv7N>I0|E*LF?ysL;DU<6)4KVKEd(Fh~)IDDTb)5ceq6G~ihG{lklSv?v z8QCshMh#_>eg7ZhnxsO_nxRMb&nG_o#rdDTG)`uH<^jVvy_g3)Rn72FU5AmnU9m#xH zyYw(O9FK_;!;kyouZd239R)fd{qL&%73$Y@ma}^6#RbuG1I8S>ecuObtgO=uU4?M; zf{r}Dk%FCXA)pi@sP_P9XTvO!7Vl0K=rBKI00vDWnj4<<4)85E=Nh|}z&UgK!25Dh z*0p%~6JNg-xjtyOwrXXoNtCQDcXDMY#( zQ^c*9ONFQiZPaV6{p!(7*)&evgab-6{r(~^x#6uKbP*x@%mAL{Tm9W-oMwM1Qf7rb zzM%8JE41tm-h3 z??AyZ0z?*1Dir=kP*O-*Q~7|2oQuEcdiML-2-_V;e>OI^V=lE1+_waJ<8ca+6YH3?dOJat>>$9 zKV5W*Q)-YBZd~87<5@{jV(C}PQxZsCrYVX$h08!K@7;Vc+JoCl8gBu6C$_3N zHw81r>)EzNH8~qf5t2xY*fMYKP9{HZ0Srme23As2)+1{X<4f5x75cfZo2Ts&MF3E{ z=;*~3yDemQucK4khb7YI|NQ;B(DCWl&ToEC`2gNQ;Z*vJQubLbN#P34gror_jih$P z8J;ZN6#>5|I_Aqg_-eM)Tz#1~T#Cdex?Cr#v+O;EN_U@Mx&N`el9T^6RxRNEP0oFM zZ2pD(pHRbjpv~Db@u27Av+QqcoBdx6bmjSlDf}#=-NVD*Bn-1R9BISfT}uUvz^n~0 z>#%f~0nxV@K$7<#vnP;_iIW@9$IL$CQqg+DgNyI&|I*NAk~$b|%Uo)wn@f|yYKiU~ z{_;6{1>kU*LapAeBW^8RY}bCN#8-jHV}Gb6{1tw*Le2&)C|py#^Pm?EYHpEhuwb;T z{u2bXHYd(mUZTF-a+_aLZ`{0emFKV89Wst~3<0=NDRP>wx^HjmbMP&wO-9Xy&54I6 zw}K>azgpXF68Q>OvUjC3Ilg*AP9;jA!cT;~biB^a$2M@r%*vR4PS5|t zlye~Ajdd02S$ zmtb6(<@C)UhKlOz`p}hC?4yHv#0`um8Mc&Y{hHg+PNuJfrFH4`g@bDda1c311&ET_ zm^Oxf?mv69*Qywy-N#p8SdmK;)yr|PRIPOtd)+K z#YfKioCBNxk@#!c#S)4R_0Q>C#&9I_xshpJ=;mmnF6oP4m57@9ck#+9rN2HLY$CM^ z@)zmlC^K513@M(`cm^*PtSWqOEm}20rR#1j{*geQDKAK^r_)o&u<>CoFr2u_T`ORC?I#t*WaBeE2nn65pOgmcZcda2Y1M$MoH-zz21 znES&dik{fX6bZB?&nHKG>!R>x)nB zRQWvR3h(wGlaJ*8-OA%Uo@05yzA2?zGbPd!#a~{@>C;*~1|aO@_H#w z(avhvC;JOG?@1tc%QuUo=Zucg3=aq)kifYglXtkvFHJ)q44gDtTjU?^}# z)Q69M1%5=4uH~jTR43+mQ}SK4@Y)SUYM~wtxY@hk6}rX`M-(A1pK zKfufcGR=MzoZvZflY*vUSzYv4Fr7{=9&l?YQ5#W*#H;B1xuWG*Px2U2`5~I1w@1yT z%CaTMe#{96LNWh!TLDc=io=Q&aA{&C$uNyss=kK!fG3HLI&A}PI4Mbvc*b#dDsylW zfC_Ko_Bo4Cx5uoY`7rXBs*a<#>bJ}8psyLDtWjewLexudXnH?-NlCZC&PPfFrVK`g zj~lFyTVp<$Qd&L=aIU2Lf6f05K=M8{7dcy#cad`7*W|jhrwG?aFV{p4lhKZ7x4zeM z*IFr452+b~Wy`@oLKxaI712s{Z1E9)I9679pOzh|o|9KjN zyrx2_7Ek*#L%5vr;WHA%`$>Cha^)`_#3L7k{{c-`D^o80x;eMcr$hWiq~}T37Gr#> zR%~q0_^%H-5j@0urAm+z&)UR7e0=+MQ7$kEHXu@ zJh&~khg7DjWh8)-GF=d#CbcJ{MX1uGf#=1IAh{wpLoQZRnKxhZMJ^ckK~Iy3+?E{q zaO-yES&YsC|A0~$NKfW_bljrcWRo|I9BhbX_KW?G>hPsz_x#bh`$OC;i61=M4pgh zmugKg*<1P9&%*U%GVKf6r!@E;3GzvR;wU_$elwQm|6quM#_)PpDLA? zj^^XEA!uD2-|Dwww^}I(K-t`mfVx)#R98y+U8vLhsbS2j>HAAEP_p1FUJJ%tbvd+l zZ9+WezKb}N=lMD{aE2b!r6Sf$bIf+-`d2<{a6K%PWTO0vli6`1$aHo8AtH|&<(83u zGuWpRMf&^yI6CV)JI ze)s+Tb$>tiJfC>i>*dzzc~(VdC-|jeeg*~FZvfl0O%Y!L9!E;%Vkf?@)2NBzO8I-( zSVwJH+Q{MsRR=22kF*F@VaSg+FaXRHVWzK&X~^CXGdl{!kWe}gZBBPct4IH+4cI78 z4lACAr%riffHS4?|MatBA1qAr80YoNZfTwo#NS;>iA!4Ry5}Y#CjIwXv8mzCvqb!z zA(}A4Z;BvpP$+WWcs3-W)HwU+m9Sf%aub3#g84-!NJ2%pa7cp zRki5w163(>$Z^ZQm!}j3zdOv_I{Ho`;M%(KvG#tD#!f3UO*E-Wr;eSx$VR#5nIRu>CTc^m(Z@~=u|4XZIG-t}<3a(aw8C+LvpRR$AdJ`MpMk}Xnsd0r)G zg}T0LG4b_LW{{2o+Y_-C?DZOEMdlmGbYQpC`uJG=rcd_(qD<#!(>;O(EHzg4Vu~1+ zs?mI59-Z&4Hs-stNes0|suQPROc>S2!i2Q&mF%2Y+kJtK;zt@Ty;MXtUf)5b*g#n5a0HP zQ2-^&!>UsOOaZgIEU{{~7VrjwJ8Zg)>zUN6`Ij3u01G2WP$1tNN1$=w1vrxuORg;k zT)vepSNVj@Tv!*lyEcA=Xk1#C`I?$B)Y?NmNU0b8=*Gi zla0(D^VtcAvg#GrypmGA^$EW2cviA@T2tRbH--p2E4<^J01^vw75)X^6zWP?ryO-A zrEP+EFMuXlAGScDuRv5Dp&ly&U80@vaN#u=M0lh)A1_SQUNq#A_WK;2*O?cx4zjuySMf zfZ>$>Xa2yl4MJMdp(Yq%DF+$G0ang-$1ySlYJ8B2m5Q=FI;zz2s>50MT_)0YpE4=! zMOLB9OHWfTdR;3uQlJk5dbp9hco?)M6{AXAPE%cU8U?=kxNJm7j$`&50yeE5q zIVh|U1Bv-;nj2wAoE|q7zF;{!^=Bw*)F?$_$YH7g49fJE4ecOK%O`KS8hbE4F*A|P zP1a_vU4NSyXnuOjyLEJyu{iejOj*x!Wby4;6ShmfE*X^H0LI!=%4rKYbwngzkLrEu zI2mB+jpE?GVHDsEgk<(SJWhV@e8g%%7SUrd4>Na+?W6?++E#nc8yZcohq8bd^{Y2<;Is^9na9O) z!;-Vive8qQtJC)^_E3q};_@8;8YsO!o>f8`4j6uQ7sLq?^5ArOF9u?SJ}3U?jrt6J zMOcWPpd1Lt*!xYPbV~!@&ez?rUlYL`S5>)vl%|a;vNXkKTlL{5D1%2a+n?h_!nKa=;LjAP7!A&g9{D5Gq1QaXLWx^mLIdt-ehb z^`<|EtltUF3M=U|1h?1aHnE+4f_gqbCIo)vR3#mYSk-Ec-~4dt?Ky`kDTi8GU;k=D z>9Bek>uS&8q2*;tGPvN$*Ez^i7@}`@Xj{nHdU$;Oy2o(~@X|^Q5+m&>Vnw6%29L5j zVtPu*F~e3i(Z7xY`FKhEcadP>f7}?=jZ7Hh1#ad=jU5<@ANk7Yq4=~}P_#v*I6*cs z#AtMr*F$yo{^cIB9Zggma=U5%ljUE%vvDG&tb3#lEuUcaks32Oj!vwX>^JE zo6=W;QETu6!=WaTvE@U(5iUW!-bOUW*#==s9pQCz8f37q$yJ9n(UK%>G_BF_{cAF99FfJqka3v(>PHu2~s_tvlS5xx6 z!X;?4;6aA~bGQNOE#46pz5IG~L<}`>9DY@{kY~st50Ks{@aO{o798%wz?0nIOf?@N z*vfE4l*9YCuKh}xX%_!5_7!N|2<2!dt+a6|Eegy4E|A+gV(2~z@+L^(aRE`b3M#MY zZm^2(P>;^#2kJe*>p^g9_%J7~5EM^a>N%4_dbO?`cftFfFuCLG&t~$0mNYJ?NKRUz zkkHqK>apsrW5pdpD4!R;9j4y9%SnO~7_Cg}naw{3cKwjKPKuHuaIW#*3{p*V% zl48kOp!1s4cYUNGuF>xH1g@skv-nd^>~)gg8S@Hug5`!UAJj3g0aU4;t~&GU=c%7) zT|UIndg^YJb)QL|$_nFMc79xfEJ?_?SzmOl*je|#Kea?*FWi&}f!;+Oaa2WFw0MQv z@b<$i?$POm)~qQ6*>JcO3?77Q1p#9Hd%)2fg|y=qLg;k&Zh8}H$Dq~Mp}``Y_Qmb zn*}Z}OBWEmQD46ush?MZ8FcqNdpx4o{Wfdp@+MRbn+uCdmjxk@>CEr2(92wbj^vVR z#)}5X>NkV`7y3_c5HH)<9wyrmc}~U&;9Cg-Q)==*qZIny3#whLVd&qwnKP3Tbj7TP zOlMk9!VKMBy67ip_0lZZ$qHq9(YC+UK$k!uU3mT^$%4o;L=q>90$cJ?vq|VC9jCwtb2vrLfQlaKUsz{C767 zg9xaiPw}F4?GH#z%Hx&}O>zIW9)wNH8>wS9rLhxk2* z7?8o7e)Y532Zt_3Y8Qwl^8{=8K>&0%Qu8-SLdT zIgHV0rFVGz1O^DS-a16z7SzH zXdNxBE*3B*FEt_>Z@}kvE_t`SSe$>Kx+;y|9iS5KpoeL9{qqK83=cwaXFknIg;!s8 zZ(;!BOC&Bnp;hW9lnj6|canBg!7y*=&nm76URm%LOi-s6bDF{P5H-U!4@1vYpa^ zuu^sVnK(bEPWqdwpMbWm$=NXC`BlGb6{Q2qZ6wWUX;w;`U)$QUa*+(Z#vbIM@|~N$ zRi@_B#IG=nLm&HguQ#8pEhvj6Hr8SWBUY2i5j~EFW2~tJRu+`-pCQp9z8|vBCBwb> z1L1+42B1P2@n({s9OMmwvXKh_G6Y$gE+r|MP};qn`L%{|!0XF!cu>ZaE8kOC8_ThY zph`a7n)Svxa4kByv_g`M+>a1vp0fT#S(hU=RDjB5s#rS%wS{9kX$Zpwg@H@kaAS~$ zOOWbMW902Y@do$zQ3>V;@5Q>==Rn!qTLSgoW+>wUZy=(0ms#2r&_e!uZ!oeFWO`^6 z5pHMq>LSpfNQ*HCY-r_Tg<9vhQ7IERQd(_gue`t^kre&w;KaCg>vYEKq4?c*o^|^} zmQJ3|-7~5tW3$89?0%Z+vb@SPmh9PD*S@x}F(cIGh9e@A&ToaY%$ZXoRV|_r8-%MmlQ!}<6_tIBBp`)ol%NRS#x$z>tS$}CcQ+e^$+m7D8VqMuWH&pQK>jQu% zSgqym^K#Cw(c6H!Jt3Ex+e}d7h ziqO!Iy)u1IpTvUq_?LF~S+E~*^L40rOOisbH+rm$%By{GRZMG6Ayh#jydg|^$X=Am{>9Q2kdyh|7-vDs{E4U_yQzccxxTTXETQJ=N2erJp@ENGn+i^r zBwP6No=fb8#WF2sFA1l*?BjSB-?^9i%U>I8;%K4RcUW19y#kyjv@HF9?ovBryG&oQ zhAsZ?_JnO=G-U7_@mhwHxmN|q6u>wyhIXaj)go3_7e5(C6u5nTahpjc(H6PiyE@4j zab8`(>xt-4!}7}3R=Q&$f-CqeW?;^fA8KRx3M_H0UM!WZy}iqOCcfG)bX-~xqPaKj z`E%Y=QWIP@94<#)-2oUD8Cgjn}d%%o}0=HBO38o2t+` zW3DQpO}1hvua>q<63)5yRZ4@*5Z_qSrbfiH&3}0kXxt|UUT+~67FTq^1-U(* zG`#r4xr#O!!=Wxi&+VFH5_p*XcgZ~UkJi^%w+yh!Ym%YvW1B~mS3?CDDuvg;oDgPF z&+T^(gtWp#c9PtWhVyU5LW#!Od`)38_~Y3qWW7;_Mhf(zd*(S=7f`9(g~BK=X^bvf zO3Thg57d7(D0uYcIT5pX9}KgK`e(5zI`d|LeGU7GBBGQ!%Sw*(IN`b+E^}thy&sS= z-TNPn7dpn~T$enz(t6Kqr^f9`?xItgXx044xZeqw0Z5fsxH>+(UrTz)72p#h+)F>+*3Agzr=3!VA~G&IGQN<`y){6Ttn}D zRpsR9ZZ3PXu=}6MPKQaUd&Keyt3d+_0Zy8z1zcPM2{&Iw$W7VS(*s|QtcTs#WN!=| z=Vpd<#oh|AL*If;g>#X;KeLjD5A*pXKn$VO*g;JbT%pdto(#Tnhb#zvMvlB~R$bU` zz0^1(HC$Yh^I(3A`t*(UsRXN6I(;=Y)OPuv0h=wkT(SE1a3W2{>>u1g_|7-MAD+p- zLvFM?F_TwFzNe7_6aB*88JqQ1q;vjQ<7oRNmnV6~FFGm}j_{U?n@gtz&?tXJn@Trd zT3U1yswU>;`yx+auRa%MFH$jUkA;P5Gc22_4Fd`PH;-_N(gyo+^Q4y@Qgxd8+_)9oGDDKvpR` zhy(uFi9GvUjVOx^^qhk|E&+3ncw?m`R~80##t(oMU%0%#C|vbMBSag&`Y2+CN3AM~ z=`7riP2U=V1*iPw6`TO^SW&s9~%m50P4 zoKc4%JAB?n$nC>zHVpFWj=5nW{?#=ZOme!3&xULq}oXY1^!31k8oPP?NGM5GGDRKr54Z6*JI{P!8S z3yCC9St|0jXIVZZfDl0ge0nBwPL>j+gY*b0PR$Vi;WsaNv-If zrIj=#UX5TO(WHA?Apsgl_Z9U}} z`xJ$~lMX?-zhPfpm@wLS{S=GlvnuD1pKm;^1VX`v;gT!G^tY{eqonwz@=fBI{D;LG zu(czCzfp_hNab*r{|8Qhjl9(ldrwI~Opyw(eh0x!(s@L0-}&NiBmC10;AzUd~u6~_7~#V`(7Vd?xKVkV(krpnSH3p>THmgtJK z2)reTKv$P}-OxIVfa_9OwGW?s0T)pG{m5lAP4$n}AKs3@wy~>RGm3&q7q&GCbh#{@ zVEOHhWCmM7Xij$HjM)E#YDal>=MnYj{|-qrKog=gut@g#sZI!;(KL}BY!Es$uIEz!6gk3&AROZDDp zYJXuR&xztEK~VRU-px#bf}PP{{7mrj*3>Or56*?Npi%Y%{+S0tK`2WKu1F&8?W(w zVR@wnbhMJeTn#4Qt(OxxSjD*4NChhw?>he>cj4$XGwH=yj#L`4-vRuznnKGL_VT%( zc(d3%T^Yx6Yw!8NKcj%)PjeL-3&`jjh8mI4TbMo5Ag+-K>m$gI-1Zy;KX;`Mp%UD8&2K7RPb)MQV&}7%-ki%7mO~EH}2J;2G`j29lDC zkzA_ixbGVP6U7_H6!y?iU?9cEoIXN(W)3;yBtg!K-{2}kC+McW|g#h z)5))OpE#lIrEbhkLiz?{dwp%brs;O0< zfpHuS2s&$d9Szp-^P`j~4d6R55$OcBzw>f-Vj zeC%_6YB=Qm0zzFK&muE9&3H%qOOB&SJ1s!z^te)sTRx5GWLF1yohsY;AlMm9sW+Gq z{w&KHS;h?FGmQjaqK7rB;!;N2)K2Ip#IhtgjrhxKN1#hflNINyHXm(Wo8s5e?1Xm2 z%@_oBSS*Utm-8{&*qtobWMaTB+7#iB8Fv1hpoXL8p8rlpaRN>XsL2VdVpBvXz8g8q z5(U8M&k{S3HVZx0ch%g5Xru5dleMNm)QCbdMJsP?3}nlO3I{LQ}C6xx$&ia7aErU7T=gMSX*kHe_$db6~) zSh^9`IKN~ywkt+fvOztJxbW?-9kHp5KrYk7Md?nXg>ROQ>B)8#`JH$PSbLpM)~BA& z$G^Am$@eMMWxcL@o&z7A!vCF8;51M+@XA*hCbE}+{6*TP=sY$_dgRAY$$>v%0u*7n{?wBVQ<=_z`6XaUKzJNZJC|7quQI9 zbPcYJs6~VdJB*EA0jVij$npC1twETNW2sUBt;guf1v7WYBye1wvsRdhhmt;=%t5Xm zSXPqE9*guPaGEiL5;BQKqJ(LFxjArBbX`(Hv232=81HY>B<)!UTwUKt{&elS^XYj0 z3#uB-#O8gA6H@RDqN% zysl768VM$Xg+y%3gx?g|`$_ALk;JmT=K(*)7~K{L2L)T-;k2R4am4yTk%wm~>XyyJ zY*(|)zW@muIa77CMqwNss%}mwZU#6vB(%K)P+k6?5*@j()*+2_kz$Y@at+%AA)qY> z7LK}A+ul}ZTh%qZcFQ>?a*a7ByUZ*REMsY?mf`jTb|Fi(S|Osk;P*t6XecCr>X}(u zg=>^^kr?V$9iRwf&19jw%@>zrG(b)8(Cvmak>s~!UbA-U=Mwhjnnp3?)-=jA@93z- zojm=M&E(y)9{SW7Hs9&AllE=(*B$yIp`B9$6&|zo{F;l=*F+?S`=D)U=ikERUUff~ zvWY7EbKL`BTF1F^fqS$fj!{~@REe>9dhl0x&gyH-)!f7sPPo@*U^FK&8WqHrVKGA3 z3(T-@G^7&cXXkE06pW&wIHFb`#+Y=2?_>?`6*hJc3hlFyTkZfjP*_g~j6?4Sk zsoWuBfd7u0o)RF*BqO}fNd!h0pmgg-c|X(F2oS8}(J~YbT-XS?lXZ>~PI3agmt*Ab zpN)*U6A9TpghL_$WNcaW^c@h7J($rq;v?C*-g;YoOz!;Cx4~>dO2?SjrwfC<+J7|RFeKXdlcCs3|diO}e(_S>c*Jr<4R1U|w?pMz6IwGwe0>xg@ zp7fu2=;U(o26i9|$n~GGHzt1l+?>RJ{P*_xX+P|Yl^m4*cffN>2PR8I`fkZ%4v>ca zu$p(_OJL4AaCLd$z}s<(zXifwpy|NbRe3LgO-UtO9a%-&((nc_nx}E5v}Kc@$f_f_ zP(ZcgEwk(SO|@2sl^v%#UkOACosB@U8SPWRdp?pXuRskYOpiJrQ?(4@J!n8ZF28Cu zkzgLfVJ;9KZbxOIO?Lu0P`h5bvv&0?Z0Sw>t<|&jZx}8) zbgdZ}B;=eueiklBs|N7)}V_xXYX zxk#mXDHc?Xh7vrh>GDm*r{Y7k%X3vC~gER2)a9Bth1#=R9`ht|`3;0HHP z`0;ohf@8?@O@dDIyJ8Ajj0Cl;cGtlhHA*{m6-XGeC4{j0GI0IW(G&7L2*!#>$=~-b zTrd-x${;FbU z?BFJ|l#r!xa9eP}MfJZSua2i%Uz#qo9_#ze_MVmgF?Pw@$LqfxZq_ONbJ%;#?F?LB z`!bi%z4UjDGQeH37JQq;b+B zCk4^|D>+WpBYtDPskV zCRF3knP76 zLd7*&BY~E8SOf+N-wF2ap6$k%N;40P8gK{?8;Z;yg6ye~ znxSKl>cYLpUxvvSTH6@)K`+2h1Q5dy5W}3=>9Z!Tml$WFr(Yup8v;>X2I^K8n@Xkp!fTh$iGveUZiv70*M^_dyiGd*&uOGqTSYrQm$A=SYX3#L zz{IgpWGUXo?@T1ZYK!$TmCjZPYOH=pqW6xB0uiry*1kFSS*70DR}~a73;kV*W4;5( z+S2SkJ9yQ2#m-G~oLpCWE%;*ey$d0f002_q01?@8aIk{HcgH09*I_I|E-PyRfKco| za=oOf5%XE^MOi@;e%|LNb4TkN*~Z>~0NijVqVGcl-|l#8%q9I>zj)|Oz6_s5NWa{K zlGr|6!)?%vUf9vf!l2{;B1((VRK?%{q3AC&Z*|MOQJF#bWIFcKz1&%ki`ibH8e3#qh{F3G?mhAKwp#Lh=KY`m+|t-vRTZYRKHZ6QA} z4T!cTFeAjWVq$|f<}r?NAJyWc$-OuMQrjbNR=iqc-iu04MHl;~d3+!#jJNcIJgoE0 zxGi3S6UsgpW0zm~tm~brp3~|PL6AgnA9$t42|1~k2qcG6fsm?!*6_Qg;E9OlRs;vs zYM`4uKWgyj((cwALD)Y@q(D)G6FaKFn@8-QJGb^{v{R2|W{4d>f#g{(Qy{W{*?Pc* z5(YMpX506AQh zM5z|u0)5*}v_B;7M{8;D_w$_~MI@agZ*=M40>TVNs0jyXq_mlf3fFuHmS}yc6fmdQ zTC>0%E*79^;6L6GJG4$s?W);eBiW%72bH?0sO2_i&HtM!_TIOwLLtFP)~)3v5PyWg z6PbG1-DU>QzvKe>c9FsVgjpx)>{fT(!8nMxBr+F@S%z+{h;+|}(W<0n0ROl zovGC%%I-lsCvt*H2mN^~5CkW1Kt`69?!&>_by*-HTxO`4KA{^@dPD(gy@N7#se9m&B)q=wqjjqLbDr?g@GiiZWZ(2y^V8zWH7WfHPV8T zPuYnFE9Ea;C4rU)x$0wz?M z_8CQJ_zHgJ*1kcPez0c673IZ8?U0NU!Sn@(j8a?v;?q|j@;&qoge6gHTe0W#flve( zUNS)lT=;;1IS~D*UiU)F;>FKd5MxiE&I)DO;>f(aBDU0l$Klv#{;Dc7X9oRik9~k% zYI~Rxc&4QPRrK5-dJ`~t!O%5<_+ z4;odq84|_j{t@&dfMFAs|ALzzI&tJt9aABY;}+C&EAp^WU|177E5Z9^mRJ7E1bTh_ zvi5`01aQKwRM^ZAOj%HP~c?v+*b$ zoXH4XR&L5y68-O#)(EZiNC0-c&`xTb~Gx}Ng#CSlI?jJ2I>0Tpt8cE$3`3ia|fUfi!T(NaVv zZ!u5iijnaXCEOGepy;d%Hl|l)RP+yk)wYKJI-?+@9gGVZgUf3(_EVVQr!CXJw2^zF z5Y~PY=G}9NY8cpqXISE_WBB(;q!(-+mnZto*gD&npDFD83xT8G>UJQMRS7u%L);5GM+CVjg4 zMTD0ghn<~SdfPEUmxQBR_worvNlEt|fOjC1v;Ai|-eT<|#aU-tXpi{D=&y!P{K-=F zT2_cB(8ipPtt_wQqgM)6phtnt~oi41urd)sf_G!9d@6N$OFq*2RUq$r)-k}qNUO61vUqz|GRYWPBd$cyq9e2=YskD1$Rpgm;*6_91CcI_~LFB z4+zoILt@gY6rt0v6U|6y2j!;^(TjNP=(*OKb!*`{d-83!fLB5DdzFrA#W z|71qR8~4`dHfYiKE6nC#jpe=EKG^99ZQ734sn8i6OV$0TLk{FL6^DS=dTKlYHq4!$ zgr8C4LtIyhU+=+__CfwZt_qKr^H>!R*4@-!!1WQC+_o;m%pk;3+v-;S3~G{B{y`UM zT@kp99wXt!n-{-+@)G4f)vhWojd|tIJMz z*|%&@W6o8MvG!L{o-cmX3DOTG`I=XAUe;LSdTor-*ptMq1XX>k%K9&Uz-6<=ap*SVVI|Q`hADD0Yji}uI)>smKud8IuY;}WlP?d zep0vSEcgJyM8%_5XU<~=k8bmT4uxwj%kQPL-r&^o6EYoixFGRDRQ1D8jce?Jhn5#x zdQK&CCNDsvlTPn(R+w8y3E!-4L|S{U0Tz1wrksDod&7QgwS3}&4X)vuYrq~Ue*efs zh9i-Fz*E%U>`9Yb>k%CVo$o`QvODhdj~6ZSB1X2G{N7P67T^r)hVt1wsl_U0#dI`h zk;>H>5{5zb+m^jGk=k5QPK=WXPEbuk&Gwe}H>5N(Z3YzE@sAG^uNlj2$x0OoBJ!x? zI{$*&jBRh16Nnb_RwVyNZFL?`1siqNdp~P~#h3Q|+AM5+tL2KS&=kdlVhf~U#L?=- zY>5VV?k$zcNAPG?l=9wV%vO)atjpB;$Hlyt*h($0pw2bKGpe{BXI&P4NAvf}Mg~Z6tylQa&_FdiP&tE!*l{+EO$~MmD7K*z zI$n`tbB?efCZ0{*{@_QoUSo{r+ILk+V9Gr(iQ-odQcTMvWpAw${Q9fSs5l}6aLE;A z{=QCtxCgStn=>6+oayyaz93D|-}aa>Pbn^L;a3wOZ4L5v78$h-7mt%GLzAQq3Zrl{ z$0Hr@l`FFcSbdT}Fz>{<)V6C2BYNNJi+@fnm-bh-{ci0}*$q*T8nHW!nz7mIDmc4z z_9D_E_Om>yi>EG(IJ7S`jl75#(x+}qua7=e`v{Ya>jZt)5Gy&an)vq29m|2M-!h9_ zBj35{@n(>u9iEL#(7{g1n}opmI$NA5_#pTf4U^3MCbE@Lx_MYx?9?;d9qbAFk-?>o zTpmoA;7c16%v*s5gUePDVE?xSc^E{ZqI9kCO`F1iz;&4u2nUHE1QXA0)(fRtM%vWB zs!q3BHh#tZ*KNM)sD0Bp`7L+nFFze?2l4d)w7(Q~Wxqk>)5~;jR*=Ch%FXg>mF8q< z)(d|}N8jrF&)@=5QBHmW> zSfFU1pOfW0PwBBvL6^$f5}ftvx|CBjy9!wp*Wj2WUvK0LSSjciiUw|PXg38F;2b*_ z_l#Ri-nG9O8*g$S)`)Pi$i`*1DsYW$(j6&A%Ax6hy!p!o`sCvB>3+TAoyPuDXkqyG zG$xrs>@eSR8v$83B*Is|hPdeOe%=9NFifHcXR1RbWBiX6vKq2Iyf(vaLPiW_mvcsu z!C}@O&?IpR?qe|EjKWBECZtSlmvZ-dxwaGx>veqB=#a8pIV%gBJE%>F`pH4RluP+T70PYs;g#Gn3RK4}-lV^p(p&kPHxUR{ovQ;rjp16$w!HAN(Wm58b`?QqZg)HsPF z|By}67+&$kQuwVI%XJ(p)VWeKm~&l!x%5^~4^FKMk;>$dQE+N}e}pfuUm{zSp|?Dw zg#;LoW|8ohHBQ}I9Pht=Ch6yDedh?qYx;GoCfF%}pDR}(a#7Q)9JBY ztuCqqR@C(T;&7U?ySKGOT%=&DliA>r(C4}@Nnihe=2hV=@b&04jfT220_CDeNqVVG zGm<;M-yRuLeTzTTgz$iLhfS3D+CD*=T#`B1?s`$}42wF@7turMqbRWdT7Q3Yto$By zc+AZt^(k0yK_vY+S0gr~y<|;y(sm4Gp~~l+Gy`B)PvJd$L)X1Svw&@KZEFohw^x)q zBkDGl^s6{rH`9>(GjmnuAAX}-_ z#Zx*LaWC6Y3(2<|R9M3_8eb$*^$1+nj2uaXar-}|U_fF{2$@TWg}8zx6~UQ~N5?Te z>~85#+kfWzoJ~lQb^e)r_lgjKu1cV?akLpyY|oefMVK8&;vL;g!rx zx`0XQL}n3T8O(y?&?RO*%yGv|!jfoe*O@T~I?fPOnXaFY?#1+#2C#*N`0eD;(cyTN zqN(hcS5rmf*P{k4 z7)d3-w7g^tb%J5Bso;{^gk_bjWsyndh3ZTy1!5!0K$yTe=H*1;#Iks*_25EQ`V#T9 z@-t5YINKAYUm&R5Z0tSLV6qqY+DLI8#Uhn1IWSt#V6w%vOiNCgI7pv^PGXmP0^Wem z&_DTfY4dwKA4f3JvSB|wiXXj+6(Ly|?ju=L6yjr&v(O0~-1n+)4jCrI%PL+v6}q1E zxwh;Lpn(7RQd;hP_8f zIECjLivr%%c-a?G3+H=x?}L|7cwAry3@Yo;TXWj{UpU_^I2=!@DJ-`*zv*nm4JG$) zYjvxz<%xR{^^Il#C z<67GsPEl}}^_9+n&1H9oSoGS_95xkEYA8VT|`?NNi7pl z#uFA+Je&xpJjmX01zflQcE1_liMH>mxpgVAhhixNo zr@oH#;2(pvfMcHTPtz*L z?OVcYgD9;uVOp4T7%l)DN=4d5?O)q1XL=`w@9xJM(!rys-|hl&s*%%kJyxb&X@_cRZY9y|t~p?muC-8R$|18kZt`N4i|Z8#SFV z#xr<-2%jpojl-o@!w$b+UMy1t{Mq_6THlGRr$j5^SC3RHz;X_qd)3S2MMs_ zG#@pAE832`Z!8B(xK(fxNqdP9-@+lTIWe~SZcQgK2I1I&%$ghT;_GijUxw)eP!Ek; z5Yya0R&mnn$SFoCjaa`k`T5EH05z=ne@E`a2Ax~r;yW;b!?Yt`o1puMTjomfay*7O zDI9Xch<*QyFWDl&NUTG(&w08QpFSJqhX#q6_;41uoiwN7_8z|)ik}stjwK~p<*unp z+4aYZMr@1~wXIYn+D;7Z{^6s+^qV@m^HOHet50=!HD>QqEJq*N_<$dZ!UF9=c1!n1 zAwlzRkt9H*k`)jB`OM9yIq$+%=*`!>f=-ajSnCvp{08TT1A?nOH_1i~k23fCAA534 zKQ}ec9J32^Ye_Zfz8i@Z@p^SQNU&zmn8uC!4Dg{sg)B8;>-4^`UM$giTmE-#{>i>B zQEALakaXH@zw_c6ft4Ew3KI4zk^JM=G{>M$c#u?9Y24!T7jfz4!%;>*M z&)k0@26zt)uflU(#7eS=6wVoEKt|9(01!UX2O6VB6n$?k$CXOJ=f7{kulCiCX0wNM zGh<62%tZ$?!6zQ&g)yS4pA-gNbhXF3zp=x_JJ2&v75cL+*s?nQi#n^!L_7TA>_j`+ z(tGA@vFQjrK0aEOgdOUn1!qk*iVNX5DlgbkTCefxWU@Tj&ucsVU3cMFV7}*RiQXZ8 zf3E_3K^5MgA@Gy15wNUO!N!}f_DMn~Q?QB=h(|wx^7wa$8iTvncJHcBJ&wQlyOA8s zej;K}G)eD&B%Osn-S7Ly)#2#wn9d`oyL)Ql=!5C*nmW2ocbn#5ObtgjGfa=kG2P7e zJD>0GPk7&t_kCaWx}L91-*4+nr^OfM3m&D?#~sndBa>N$I4@Xou)X_hUKksAieXS{ z>U}Cr$C_9Isd`kz8x8!TXv)oc8!E)9O#gQ(vROdXo^k?Eiv@St@rXYRht>Z_N#D}< zJ!$%nR;9(ZXxNF{Rm2c5tKn({ox*TyyT~}gQ|L+_M)a{%tpv?KxQ(X;2h}hj^Q_tG zmpzYYA=bv>Qe*IraQ|e|Y>JtNbc0jx_0G5c-oKL%eTgR9%B?s$Fs!lWIsw>nLa$A= zR6?>{A8SnGuQQX+1ZB=9SV=SLy`gsl%3@)EIai+oc5mHSjq!SBCtSuNptg&XpXIjS z37%w}0khFkcmkKOB)NRiruwSt{Sh`HYV!2pLcU2^2&z8FWirw{5<5z{#0UO}mY)p* zx#iuwIerqY9)}@gi<01g5is|AWlQ~i@@e&`!a2U+y`vAttIJr1Z(uQ$h>dW>qT<0> z>HLSyr>m!QZ?cI&EW>TUr5Wpwv%tc&*&rOhcRNV_j__%OjK^@a87-|@{wa&$x6_sb z>O2txkj!+0Lrb7|>fQb0*iP%d8k9rW5rM0h4q&G+G3=ImG_cz$=qS+$XjS4)164!z z0odRKM>dGqpGLUUx!~alp$zMYA_oiIT(yX}bz-yZ)7wAw_l}v@ch4eulum44oNkMh z*s-^KZPw1~PFiot8U#I%oI#GNGkZ-qQ$JyG#yjDr`vXx`sKn@zgd_-uAU=pv1a206 z&Jvi-$ zUz8775(6vz7mxBV>KT}b8~lQO_nS;#7netx1}bA^a}jksD)UlbLUh;T;SN#U;;Y~C zT5V=b7k}Cz4V3<_&of$;d;H>K?}Uyk9R(rm`Z?wxV>*3y&9_!A4{Uz(iHQ$N+R74P zL9jgJMWwr_hFSy(&){{!HH6*JJP{Oo#Pz`HlleWJeGBAaQP%sLy+?Q?ux(G33YvJ5 z5Z;1CbVXnZ+EBtlHiLtp=S*=gU`h}qa|s`VAna3$^jXy3B?_3$J1EPD1hFG|>dq23 z#46W&j^gRrG8!tmp^_5VI`8_wzQm5P6Ll!Z*~hYcN5K)SfGTW1IuZFtKe9Ieskz|s znEoVlSjCq*ZvzusB{iP1UbyQ!*7AIL!fQl8Vhuai3vU>u0^4hXjx@sB~d4 zvmmtE{p9zgLv-$|=b?g{07X^yaGMviQtcK8774tYkd*RNULe_)q77O8RpZu=LtoMW zEZa&1{xu@zm*ct# zob9iVjfa`qw!;bl`5r+|r1l;-1m0AcY&RHvK+{Ez0`p2Q}7^u_pxE z6{96Xqou-`Hi+x+1^V>>8awt59fk0h?4wl{)i|ly#4y`2RUr&6)hvXtZX~H)J8RJJ z6ppB7~#)x64yvD=goMMMr4N zE8S3{P{fxEh0*=UD<~1P{1;1-sMN?d_AT*_1<1ua(AXPZrSZ1qPv; zzfj>$V^0Ry2J}Cmd_y79sv%`r&2oWRmkq6os+vjORFm56C{(|sbwOn97ORmp`;jp4 zAj*(6Ms~wL3ZV^kvnZ{+4E*}()hBz;S5a8uZN&@Y(SQG#CS z0u9K)An~Nw2wpix2Qo}i6ZPZ3)q;EdncOLiGrPpg?0jzb?Ik(=kx;l*dA8mGkj?wxZY!7NOXQnrG~I zcs`I*8IyC5XdOLRxLxY8SzOL1(mGey3b2b;^WSGBb=KQgqu=72A)94FHY|pHiYwSO zz5_;Y@eI@6;hgq;WMsmsg9w>HpSKi2F!pdqBcEfsx~@|1^iO5aDn0bhLql#daapBWjJll5@{u^_P0#>-M!c zAX$BI-@4f!nq)NpRC=e&!%vDp9z!hZxjzvLX`aYOWD`mgL$3%bJRU@fOl)YP3_N;h zR`u;5fxp8tXe=4t`=Lb~uZ50lGk$u~r3WWR)r2<_>Tx8V21*EJyAZi9yk-Zd)iQgK zV4y;k8=de0Q_)?K#9r|ihF`GIfBI-w638T=VPJ3*AodST&qP!MPotP!I(h5d5UN7w zBQ4DpUku0G<^sMjm~Au309JOtQ46KBZO8v|ws-$c9+Y80=Y+5EX(hxl+ISqnDN;Ik z*<3K4MRrLrSwI_pzn)DL)R*UVc~n9PGDxE~r-;7i87at?);|UF9EYw!cuaNj`0O^t zk`iFc10YTGfctJ6IecjC3n(DX)C*es+xgo6QnXw0;P2N|MwCkSS6kF2G3;c&S-HWcP*L4N z;kd*!>qMZQJZzg0IxkO;O-dr7&QImYIWwr}V`IdlPVQ!QGFnvsmvZ%{`Ql*qW$STv zBk)>aLU1@O0d zGvCTHXrl^#X<{^|*|}P0KW@oWM+zFT3kcY`?ZZ%}ocwG47G`0yrMCFZQ>XszMkNJZ z_~V#F7}7a+WKnO_2^mZKNl&FgynA}?L6#eMA^U7 zc8ZIO!=t0nhdWUv@~r99iF_SN3_Sy2`EiuK{9v-|3D>Ah*{NnaXGTTb6%vr>*7eeD zuvMIOcAAU=Ng(By5I==Jqtms#eiz zGnOj5#1z6+cxY4E#@hHHb9wEA3m&eVIOYxm_LZ8>|56-G`U|sbmL{TC(1^1)!oQKh zB>UF{kf&hjm>}cd%G%12q4c2(c^h99RZ$SymklIBg1-9mVNFUb!o7-f9Y0e`_&=zCys-@Ed+HgtSPfSRN*I-6UkPV;?%oihxyz1;COt(WCgrwe znl-R2)DqHll|wBI&Zj7(pF?oRBgJU`M(({ObnSzPvZj`1c}aEp&t6c;KaMAuOL_my$z{>iH* zbU(yIt$$Irshb+A+@+|RfHfourU$D)-M8fqUWIzcGBPBcg@0{eKyte64Ml2eyT^FgOK!L6CCySP&|Qm&=T1F2$$!1rdyzjyd%$q4tMkBk6pgz2r3nVsTwo$o&>Hu7$D zvnLpWAm*Z^$k>0d@IdFD{dWzw1XSu*;;t*+#QbN|FdR)-XTmg!;T=EJ{=>HxX12Ji zaUls*ZvQlaVlptKg5pB#MT}u zn;4C&;xa`R-YhVn*4KJTBd^_phgcF=A)TAAB?ZM|?&5xnFo9FO0yytyeQy4NmxqA~ zBzv=}LFu%7KvY&97M-SfmN1$Y_hX?neCK0Ny%LKK#J=NIy7}rUj+LR?y?em~?U%^V zzx01jBP?$}@!7J-4o7AJAHOYw0$U}L)25l{xp5|@Q!2n!<;&#NTu$bt1ozc3F|S^I zn!|=w)A_qn4V2nzWeCt?V6UM^2S*C&pt#aR?JwA$bGAgvV?v_~!*FS4Y`_Y&1xhvJ zC_+B0AT2L<6I2G>vaX5*Fj9GQl6l_yXtvN37G2R1x;fSn}om`kJHaIxwJy*t|N zz=T`VvFgSAPIQcVb;mCp`EG(yg#LR#fUfiTq9V6wdogSOBwc6N(^xU7al{C%oo7vi z*$yjogvzDufp2shjhsGmnW)!iG6#wu%t1VmnLG#!$&bJ!YbQL$6RSuODph>=hO+yc zAOcsPs512;ExpkVgW-twH7D7N%PCEJLZG!=+|9~IgXF+P>jq0tPm7#b(#d&`crtm# za&&yd3M@&5Y97MTTt39FkBADF?1X*1%UrjR$6iH0sVH>{r>IJZt;L{xPLC0+js%Y$pRdxZ?2EE|ozfzQgbX{IgI_9&F-$2V$4J~1F% zU9Km}vN7MslRLqc^C0Bitj>b=FqMohcAiPa2)WF2n0xi1j6@_sgVK-JY3X8PfaE7X zY|#x{VjXppW0$jwPA0ev0jSuZt7TN#|CJz??dbZ(&Y*mH4_z}4(oh_Du4gC8YP1cd zqS&_I@noUIoHVaEsBP)`;*86t@f6z9T5-8BhM>A18F^h(1rsX(>#eCMLSwXO1+g?K z+;j0Vy<$w@;!*$&wx3bC=qcAb^Y2dT7!^1W47zRGw*e&*UWg8X!qNGY=iG{+cBzr? z97@k|75J%aB^;V{$A~)6tQmeJB8=C-siBsj1E_y^K5J|y)1sZy)~iJG`<<}*CC56s zt%e2hx#cFS&AdUs??Iy#b~I4Zt4gf2p-rG+hVnjQ$)1~1k-Z=SV_&Dd-;eNTXk5vQ zD|aSA#58e3gxVQOCXl-nzU#u$v*4;_ObR-qGaqb6w%c#~-I606XhYhq}o|NGG+@*xJ+MC5g>;K-IRQNq|5DFp(A zcG#W4o3L;I;ka&g#qveX7n3ZBLgBKW_2aJWT&qF`%n$Lp7Xjb7+fO$EsY8Hd$H6i9 z&GfNs3bRt#sz@=*xLU7MoT=9tlLm&Ye9~CTqSmGo}XXzFH(Iqq{}jLNvpam^lE+ zSo9HCqD3@|2)TSpIC|`=mshlf8Kz4q-5`-_gbqR0UzCzTCm}hP-%+yIzd)|8CSOUu z3yn4pn90c_zmM&b9#4`j+u=8+rC8pU@ z88Jp-Pc4B-HcP*;WH;9NtWDx zkEGb|Tan-WSWw7;>|8FLF6kge+{tAkRc2Q&&w@%aty^l^QFTvhf5MlW3EES%o5L*y zy9W(`?Fq+M7P>3&LyWJI3lR!o0|r%<6zXqGGfo$@-B7op?+Q_G{Zd3QEc*3f*)m2ar1My4^@Q3;6-`Ao^Hv!^06q9J zi;9b7-Z%Eyc2B)DIQGr?)8P*E>Tfmp z69$qc!@F<@pwYwk*}_osJ?lN*-~5a0oh>u!L%%*5%;um!50_~1CZ$G67(7%i)doQD z^#k75BylAaKq4c1$SC`5-y{DoGloySEArO-XP+voA!dGQ178Q4Z(hs6aQ{L;L}(_sTY{0Yg5ehA^!HNXxBL)jyd1s<)PcVhhgi1$6k&y>K!H zerPmG*~VnJqOSZRUtFoKeSs^ROoYI%ysfqwl6u+t!I!gS-A}kdF+w82|LDeEzY8C+ zv`UeAZq}2p-zyG;k(68NWay83#aeOAQsXLdm-2rT6&?!;m3-97A)x#kwfhf&B>-Q%IrwV|yX4|P$L3hp?DFylxTax|{*yF}txJ3i;jakrHl zdk8xFBOCIk9qTQyDH5j=NC%X1BsF!M#Y>=vOpxt&gR-(K`}&>vah-w=um@_i~pVw%fyF3iaLW%o?D>!mu%$u0vun zqVx7XsV`L^@dg$&UU4bcnRa=NpiSM>-_8^ZjK5daNm#>atc$M0&@L-5-U__AptxF^ z6)SCN?f1Sonz&EZwp_gW7(muOTQt@80D$9=B0S-j-%so5lqMre!)#hxv^y-0!4*Du zZoY!LHx-&=nFpipqUeL3XH~fh4(H;4uGonI3=$%EH@aJFa}aJdM-#s9nWxymSO0BB zA(xunYBN!hQ`(v61SQwHYoU~QLE@%PqcMcQTZXdX{A;F~HMnpwj9;uTJepFR>z@?7 zjEjDd6@$MTn`%`=`g-nV}5u*Us87G2cV# zjXiut93i`?cc&r$JVc?sO}yD-ii_!$v0->ExA(GI_ehANAiGHs@y^}dNaZ1HV6OYr zf~?`+w737sQc$6{iI-Z{X!KKd093Cm^dNuN9bYG&?_S1?MXiDXboO&ip5>tM{Stm# z&NF|#k#E1sKFp_=z=El#}wo|u-SzR5OV&x2rnb)#%s%h-FGBq+ox zX7<87s{KEps0sWy@sb&=M;&!Li5u*OFzWtC=h-dX zOKX+~^hq7I_ZyYxk^h5r(7u#WtjHn;Z5xprO9A9Xl0^l@THa_n%whJOg2i|+rBFhw zE>yEi6E5EWMVXmrPT}D}=zQw#DT`ZsXO*<2x~0GW^F2`0*#RmPQ@$+g0uNI{F?2&& z7OEeYLmpH=p1mLgt3$y$$tJO)Ui3LI{x$4ZkYOmRAB~e;ex>eg!rV5pP`(py zAmk=2_^oBgxJN1ezq8=fq=45+fxp~fwaYa_82CSIbOVbSEIYKl<~YQ{E7AdSaQU%- zc4)K+zZ}Ib@dHT>gr@piHg{K*_~QJjuAbVlCfaBeDXW4udF2gghRXStS03= zOM`FD56q$MA?E)`9*djvFsG0V2XYQJD62H$vZO%um=Z)Eh0>g81!u)*EEk_HzjH5M zYGL$+&0~W*KK(KGq*7Vn|4u;U=INlLtT5%K6Q(u@1z=Z-4GSJgQ)vM`xxWARu7crE z;TT=9J$`{QqcJsZ8r-%KJ~VLiAJEMzfDQ5`sK)Bc65HbBP-70=c#skinTWt=Tl@`B zld})E6_ye`Zz_@ccon*rZEz+q_IDspN!i=r|3+^F8On&^exg&PW^>^LZJu6k_gZ{Sq7qtHb#3u2YkM`%dmV|?IBr}++~RF$z=u`28P5l z7rhA+VSDK6nm8>Y<=6~milnN&(jV5%zPD#aK})_PNyEY>V-vi{g=dY_` ze9i4;W=kSk_XEGut)JKL-1`tXFm_XW^|6&&cw zQu6oG5}&$urjBqUj$K_AbLe>Z^>G>$aLBmSQ@$FQIY<2_=&xdbh2UA>#MxL6O$rE; z=JXfiaAFEj(phlk;;l!)qk+&^_xsUbhN>S>50cC%g^8KK%5~##JY52T`p?9rf^l?d zNr{cdW1^Ya`^nrVL4?0iMox@yygGL!B-EkND~N)O%KraL(h4T`V)pDE@A>)&I)qo# zWk+J5)5k`%o>*x5MjPTXbAS;fm~o^KwIE;~4ofc*+R0tWJbSGAW&*Mv=`|O8!`pdh z2KOp!?IYnBEmCN-r)PLQ`~K<4y3dk@j!6WI6^Hs2V1rs^yN*BdG+@7K-a@Z4HpTOhqOn8|FY-$ZYT9 z0}#UWZT}Si&o=r-M(}R^%zbwYMw?(T!HtkY@g5M{q>{Cvgvk&F8GSlho)qK++x|;M z)NnS48qN?Fz^H`?F=~RdZ=i`D&n)&ASlNTY(Ort*t%8cwpBi$+k~K@EU9eM+^uTgYQAaTE971*Ty{6Tn2xDRv-x}%Wc>s?~H=`&X5>beta zB7LWpCt5ZS{^~IY`K;)WdJxbV7leS~q!U@Odm`=`VZ;7uPHcKJnPBb96-c>!T@`Kp zZO`~BpbVTKv;QyjFYY_Dqj|b96XgJ zoIlTWR+EeW%TPiaA;}#774yw+8zDux5G%&n&QVQf+Sh8WF$9$tlC|G{r{ZgtWz~zA1GUR={6Ny%zla(vFdB3e+687upT{$t%BPR$FWzKB_28A&`~gd7Agr_Z&9T_B#eE18Y@XXXnrF zh3B_$*f|wt4+cI=6_J7f0=%V-<(JT$ucqWy|Da#!m`@sMayUC|7`RNIxl^sFy3ra+ z;jJIkhivXTqWN&)O<3tdvFY^TSUt1{WEKWyeVgi0kStxcc`g_iIXkDUIt^-LuA|DP z5&P81U<>2K&19GjhaKI3$0H#zsJQI4E7md+R7fqW`Iqb)m@>lNwei(*z0)TziC>QK zjMcRa*t^BGisN=xc#_N+!B9&`65V~zFSCn|9%E{)K0PRD9pU5C?+LkRxt~Ux1>2Fo z7YgQn3Q*N5CuBO2N;_g!N6p+y9GHk4wURY$UEn1z9dI~1$i)J%uM&@W58zk(-03i^ zYYNWdoTlNBbVn|+-!e2?wb22$oE|SQ`NgN_5?(*X%gO6{$=3;y(#SV~M9*&=2w<&W z83(x+I~&iF3V7m76@LuVg*Ln^h3InXsl}(6fkpSaCtO_>?&!hHmXtpqF;zK!T>Poa zx96CBGCo?CkzY8sWdZkpMw5rpq#FXD4>5gkvbPOM>r&zeL4pd_cvN+zmnu8FsX?*< z?^7e1E|e`8Z(jR+REO7TMA<~GMG6H$N0#gFW374`B@^=12VhAJBskbf5mI2l(3LM) zl283OTz(a>hBQmO$ytH5?w}$-y?l{71n)g<5~kSs%XZzFG^_D8z-+tQ|Mq8I@JYSv z7i|(Q`p;@ywHmSlA=8EW(%Tpt>N#CWkcj7&J4W{Oy=JpE5!g19n-H}^oC((h&fukD zqk`naZONvDL@?^1iOlh_(W9iZ>ZnCm|LdJx)cWf3WCF#+?{mICx(%b1@_k9xSALW) zK(t@xJCfTA5graC_gs;f{ofr;_Q1|Nsi^WKhs$W`&#FJ5&I8WE0 z6oyJm-wVkV=~EwL8#g~ly^eF_OW0~p-*@FYzWm%g(T+uE>0q|QX|{Edn~-t>e&PZ; zVI_%Y8NRuhA6FLXtsG%lIm~eRSh{wu513HO`*hrc-}fN%aBR6VlXE`Xbr||ut#Ky* zxX{k-%H}h|)#EkWp~U@rm1pCWw$~&er8|HTdEq!+A{WQG+M_WjEvL&UnwJJ5PTGLdx*B1EB}~=r47M#_Ly23O!86cic*J>U{q(r z=DpM6vz9Ti6WXt?L+HMv^ALRDyWb8Bl>|{(1%%zF-mM$E9X{-$wNauAk+d>~y)2(vbHMfvof7>QDE1C;` zMct?$M-m#^Wm+Z6TVhWY`Q8uKE=Zd6L)G0P451`qDy{robjBL7uQC_S*?&I$HQIg) zd?U!3^n$=ZaGaERp8*leXKx6d@Ryl^%hz$XqRCK$kM!Q<2 zQslFS$~;!)6<$t4C`2yUv%N!tNhAD@P{53EpefFRArb?PtG;+d5uNh<&8{@VbMTm3 zQ4o|=B0xZM|Ac$!j?9Dlrj-RcFWW;?61Xg+u%WDpK)g0$kSh(Y6T(qYLO0(SV-nTf z^2V8zn7J_-4_jG@iL08~a5I5%*~0~ihtLX0!UQXk^`b9`2%#-3^5*q=zfn}mAaeDX z=1*z?e{z^zUxrBsN4z9)&kX>0?^_3>C7pB#Ead#y*NUcavG)W9QVuF8JNMaYKDu>E zf;lyXCraXE@H_goXwdio7wHhmuoRvbxAxlDYrr5+9q$xlL_q3bR>Wf!mQ*)%n zmzSfh6hFb1Rv_iK@NmwjtgHG0R|aq~=hxa8=ct0w$dR^f7fMCP1~1SK4y@DDCgTcS zEx&G!i4cgtYA741T%?x&rrBD{V$u59;O7!P2~Z)$#;FrUpi99h3!sK;Mc>Dn;R07j zrH_5Zhc?BSq4dLMEZ7L)9?ksEkoI4d+{4o}$4TVCF4yZt-${r&+a;Pa?IdX~v1yaX z(vOZCbs6{Zp$?AU79JCJvzM2{aUSn6kFro$d{}0QiYxuIdEX!5x+ym1J7KwS04c4fRyCx>1x;N6JzhTy>&q590u@1(5Ooqw zrQg!U^Nyo61C@W3c3F!rDip6SxOm&c`iW=GA6Hc{%q?-b)!Nj{F{V`41d#AvLBAF zZk9!Xo*V?gX2vC^eR#OXc*=sga#?F)gDVH<>2tYXG1CR*BEFeJ_1(byz9bFlIx zFvcz8MZz29r;%IzThlUnVwlM+@L&An}#491AfC-IGLR z>Yji%@m3CN41b+%c=Ugqq=!d0DXfGQwLy-L_q={wjTpT4Ft%2YQXBkd9iCYrRqgYq zQLpz7UrAF1P;9;lf_~o1D`5+1s(3SLxTGTPz z>w=V1IV}P+{FE{<`U8oz99{P0JMY((Ms2O0^VDp}*Y&3E8}>(}6xkTjOxd{=?`-Eo z;n($s`H|}=4tk%a4;@Y8Kb?j~Fn%o44H~{B5-HOcC|^0n9pY$>!@p2_s}W`JDgDX+ z#MPLad!jvz$0_70TA~XnzpLNecw7lHM}R7SjWc##D(BzGiUTnY?MUZP$=L`8L4$7e zV5Z4Fu=MWY(*Fs8Jo$3}L*jL-m{!-V(*-ePWSy+NyQ%&Q-tqfB#qn^K8TV4_ONqiQ z?}SaRQls=EQzaOEnaR2h(oe$`;qV@NFA*sp5+S&N!!lZZiX#%MHmtbcs==uG9wIlu z2$%{b9bcIx^T(O6Rhj$<3&dv$cnq1{v(v=p|F<9x zixC5RbSjKrrN(BMkWOA_S=h$Yh@?Q~k|t;?%acqTziYFDQEoX_cYpYI_~NA}3g zi2IA+eP`fjOfsvn`*}x%=Ee~AF`)D>2AcCc0_uEx!zTu=w7tmjtRrA_$jpGLf5AWT zK+OsvmgDJY!W|k!Yb5)|Wvl>CKN%ndk~Jmo8vX4035hY4xtG6HKO#loJ^&yr3Zb<) zxqr%2Z}~V0CnpQ^a(}o?=26eRrHlp;MZ@p=TrtkhfvMEx=ofp1hm~(ISJ5LwbOG4L z&m91h@qEKx7poae=Ab`mF^6dyMLJv6`jQ({h0+AEN46TWY6W^UDWo!WAdIi~@3?{MZ1zqp5isn@x zSAgLk=gw$8pacBw4z#cgVKKRp0V6k)KWF)sBhUa>9oKA94@=l1HmCrNcV~wd&)Ts_iEp5}?os=11@xO=>ZN@>yOy zHFw>%JVf;SP~cQL4PDh^Sm0?GcpwO@*l>icQNn5+2W3IkfGu)jF>o#Z*uLd`74y@; zeWvG7GhU};J{0M)H(gk4!zyV2<7>Y*>{IM)AQRX(-XlTh5Q0$cmod$*hD@o6zvF2x z6?~UeY7u4YU0Ehr>(o}qsZ=#Vdl)2G81t#TACS%Un>3BBwq53nm%Q};a?n(S9%WOc zIc1P7rJ+96o{z4bQ7OSos=_1t)Q9OfDywi%1L36g^O_f>*4xW{#(L%NjVsDgWid0f zb92HV8K&lHA7o(2%O=Q>P`Q;$Y9j^05!avg6;sSr+lxY~|c=L77om9tvI*)C4V0rkIcO^X2nr|MCY_XEwI(MSCR4ZakYHxH3T;doEK zn~+4O-YSsh|Ew`F$yt;cPJ)_7SX)`t(}~D9_2d?$WeKuv@!ekxs7DiEEf2P6Hq?mz z#fVhYK}Zb`I3ua7!G2W%@9mnxH7ID2dOR3Z7Epd0fI#FnCFM)37A-KY+jcGPdo?&HyIX9tXhXRSM^1n`e_Cq=z`M2_5Zsk_B>bz0EC(7zUd% z1FfOE#_xMbUL85V)v=q-5uAqCdfzvxCD{p|sz?l#%3CgH?ouH%-o3KGIpr z%8W-xWcjb`4@bNPG6#8_?90Srqj8@|(ugm(oGDOUus|f6g_xWP8lT)r!}#OAQ%j%Czf zqyEEUA#L`IqFCO21BL8{uuQ8}_HzV&Mli=KBu%K{_@z{~$glFu2mW`1%C@mcqACN; zm)mrd`$N-8pzSbM;^1XLdVUm9HMCJzVzT+d0}*p_e*wytq}FjLBU?g|ZG8!Gsc7A> ztM76p*>ohgIru;}!^A#^a{RWZ-Ve6e0xIDciI^QO^PIXOeTu5*fVhU?W{(`)vpR>J zn(1$ZAg6nm8!oA79k8qXiK)r*EhkRwgaou|1Jze45{C|?798*>YYDupFGB7|8Cu9h zF9+YJwte;v@fdF^wVrS#Y_S+PiGDtFyeCJ!TqTRdN51|BXKAAzf1SO=ZfRqn?>{zC6&T9MF|B>RR6!bYKQ7&+h|v; z_c*@f6<}c6UK4UU&V@viQA<7}*UJT(?1OqWSrybs&{uASRMbGO4W(h@=?V8K?Ug0f z;t#YKgM7vrWrBxIzb0vN(7ES5Kzya9gRsnTx5Oo{GNJAE9wn${Yho(2haG2C8}~oJ~PDgO6jLLtxJ2uVu(Yf z2Sd_OZ*#Va=7T?fdz*@@Aokli9%vYJ(faS-(Oqx92*Op3IT?i&22bZQgl$xz@i^Sq zD0=rGL6wxWR7Xc+r8P8=Q$h@@?0Q-I0%{YTyN~ zInr?C2;7FHPIr*M4X=vI(4G8HW>Z%iHeeZ`x>$~vFoG~#;9}=R@8={0)N^V=A4x@a z54>BGEB5RLHf3#bZIo6z3}5ck9|#(pHKjbbBB0T*H^uU~kIe$~VDi+^n-SAF9zU#5 z(iz4iK5|w_SM(9-18JcVS!(?Z-MB0aXm^IJlId#M#k_~8_3m1MM!=eJLCYamFV(c# z({6>Lg9w3Z1J%Zl=@7^NE%dS8J6f0j3bNmT zLdcHoLX6|I2iaGDhnN7g;Pam1kYUxruSFASAn#Jc@0O8nBWp`P1H7VhG2pmCFWvep zF89r6I_V#YKtzfzZ8UDq_8C;7B*^guJNko#MQh>+l8F$Q+uL{wwl(PzP@M@Rj2Nb= z55Rhbjhq_RpDLw-jJH6VI_;Fw8T^wu{%dn93HxWooL9`4xYx&7@gxzW$_dTYl@1vS z-zW%m!->j%6Mv!;?t@2FqG`C9ZS>@k{VYG|BSl#TRSO~kUHE=a>H~EtKZ&wB;$mfU zP`*yLUJW|&IQ47ZJ9l#p&I>S2qH%JP)Q;Htw~tnj9Ax0~G3WnJ=f#o))M#>T4!({X zcvE9U--bQE`}u;hJV|buW|K%~HQ|Kz^Z+QRjBw(9H#5QHEYwfqGhBA}9w#_QDUtQ? zm!XK-7%UG=G|$s^UE8p!#K#Q2E_y`CLn3bHi*=B4FxPdnJjf^chNW4dH+^DjF;B^3 z{<({k2620ePSwpj5 zTmGO*U5xqLp{`(+ks`*LR$e22>WFxs<#KiwX$!+Dxgdni#c>Fp`vG0#*v%^e^nQ9v7PPt7VC&9* zZCYuTya5N*Z+EU^U(s%758a-8xAgvWd`cH*5btxl{!`8DRI`bsEqKlc)9v%7_2tgi zjM=As(XJR#bpm};mg&cn_|DQPuX?Vow5?_)!cB=?D56x zm57f}ul>b1JYxOG=C5a9T*M*l{;}vn;=bKxQtA`2>n=gb3lp)`!|Mda(|I<&INq^p2+uHhj zwC>()*5!9P6HOTAkKIfs{cYwpxlToPtRTGL;fV4N37E7qc_1wR*CFn1xtsNc)b7_E zQ`)||SJQX9&y_2IJID58f0aEM3328?2C5QQ`@O7_W@NDX`Dv^j6Ex|Fl`Gu13`I*|3|xe^x@Y zwbxiRZ=a@BEVNm3cF%%;jQ?9oyySZNkD9uypV!4sbv1PdBRW={qV}H}2goHCfg19# zasn-(u5ZAhz_HWfkog+&O^em_OOwmg1qWg>(DAKVf?S@*%^$gDs~5i?l`XK2FIAkS zAV1taT|U$#%x+jl)*QUNFv}BTdJWfo?@nr5cLre8_5wsE8k{4ER)&#n7*F zNS~<4oR}4SEmu1>ruG?k#KiRjX1${~Y?~^jcj)LthGstGcI$!aWBug?N0nytfnBtf z!HP?w;`8W!y#^$!>>6Zj6h!JxQ&`+4__jdej4Lsa#X5GIOJq;%_;x%8aP)v0lsOU9 zsG`WE(nivD(|zrxq~kY?F0`_>pA!1xn?}3kL`<2j;Vp!PBUg2v?Llv#S)e@n?~?2_ z&s`LC-BI|yxXX5BhZ>$rJm2oysf{X-q@koQ{c5;CsnNr^R)pQ0MM7ubB4vvIt3P$j z)n#aBvluQh!HZkQd{)q<9>0g>R(yI10_YK-gW!+xNOQ443eUN-}@IVB%aim%$(h zJ&j$|d=pz@Q=U0dE=N-C>BlLG{*EP~4a2!@;BXy`6 zF6~1=o{D4O0Z0akp5cmkRL*7YMOyZ9+}AKO^=5E@wbkHS_*sls^39P77`1w5BpT@Y zcCm2f1Iqar;yq-FGsNTBHdAEw9Q?dgF7%O%(X<~1YF1hg7=8ul^ztZ8_{#V|k;|3? za8&^nwG~_K2>WRS3^Q#}Ggc6Az6T5`m5+BseM{mQVslg(G%JeZAu(x4fGi@7c0nNn**)D7&q51PEls~dAGG> zD_jMv5_n*jzqVC`1{!BCqkaj|TXZC_zLoBxWs`BvAN+E3Jfd5Qh#ev);@y_YMn)@X z?k};7mD1#vU&kY=IB{p9fM0+l6J&l}OHs~Zxb>FZ9=rdxKJMfcJWkzD`}O_j)cQx* zO(#81{aR$~-JFEP?Yfsww2m%3n<~QjALfJ(+|pIA&eXI7LNGoqL?3fQN}^j@hXyq^ z_D<(BZkS2E!G=ar5*?V9GNZ7heu}^S#|7^0E)KmIYmgJSi-K<5f1x0URm&c1Q8N4# z8bm`(nygQq12a#=bD4jB7(nnehqJxM)ydFhTPpK;6DXmIw^;b_1IbT?w!Q+k`8aPbp7Y4K;wL)h%V->9C8 zah4t)4mYO!dln!!ln}Z&V$gp;I;h8;M{sAlOX|dU; zuTs>DH~mQb1jBYK_>FUo`z70wQ)`m%m%4C3L2>Xce{PkuzSpeT6L-WD1Yk09!o5oP zO6WTM$5J&TYdB$3aw#WSU7SKYlf8iV6+gC5L^KQhGo8KrMqX*8$-npwR2SC9MCpARhNp zz*^x1&=OojUKi_-^_KlTF&0P_D`M0AbB(;_o?;7j#XlHP zP_=L_qe~;jmBo`f%WrkOE~@P=OC;E)0hDC80Z!ixCHkP1E%-v5NLVzn>cGvy=Jeqk z4F}LXOJmx`tRmb*iFcPdQi99?&7se`aX!G-CY=g8yM99HOug;Lb7CzzAub z1Gal3=V3**R=L48vbTj3Quo@;XHRoh#QrxfGC#BR+K8j-;Wr|>X2v67m{XMK$>cs6 zZWKwr$tx6M5uyr-;zR@=tmEJUZ+q@XLUrMRR{{k8(A-$Ew{a;z25C*Naw74J2JI@85=7z0yMiH057&Ag0dnu!2mdN0jQX zE!KervEDrT(oh@5D`OPQiH_viK~srD{?ycfM5;j2()#?B-zqe9q=H}B7-T^+Dhnb* zF1j-QNhHozD#-fe9mi47fDi_gEi|edAln~$=JXjnMKw$dm=3} zFP_3=MP5qt-bINtF*Ad|+|2%wKdf#9nyUnqX=a-U;X1ba% z&HLi7mP!j6$EI6G#8ltaav5sS=eSmQ7uG(I!`=vGBL^3qYuQqCQrAI&4Pi7&Q_!b)Yo>Kdn~>)axnmM-GUBd?Lm~n?!SKhy?>!kO<)5v zh;TAgwB)|c`!FJ2hhB*KDJb@)5TBrQ*7%H7CT%XLlN0;~B`QvWVQ@BgJ)x}%!XxAV zq--IV+^2dxOK<_v=LBYwDHKvu0>CjUD4{e^Q+paO(5#u3OmY|CZ|Uj)U6ccL>3^(O z?)b-9M$m2^64}(0^d=x?TP9>|>Hlnq>Gh_vbsa?_Xn!@a3e9*_5XSLNm-5wo6pZ@;|gu8^vzGJCRRT@En&naU-l7YO& zS2`_zElElfS}h%H;AEj?1(5D@Rf{RZ$&Wt!U}%2H;=Qs?q&l@+_mAQ!oI*KDQA@nR zx;^S?YyWF9$#cK($<6B(8wMOGo z#_@4@1HB3owaozVjqmRTsljQFjCbVV@Cd!>b6;al%cQy8PicqBLRp`icqHOR#+V(A zZcQj_gX45G-))+Php7lvB8}|OhJdrH8pPaSHNQ!IR3buJ?I3tAM1sV*6zUW7jsKmq zu)Z(F_^7*;$E2}6jeBlz6p7XMMgy|C^ek5fI(WHGd!`s)0(5b5_D}|F8n3_+RapdS z)f&1_{^&hy75O2YvBD^^EACt;5N6F^GxZJJN413P9Hpz$^2tSuY^WP3hVtp)Bt zp1yDSWfwF?y~qANoEf<Y8n}aN7~P5!C12O>2hiVk#2@(u&b}Gl~VYkT~g#R$0cCwCA<0r z))I&rImm`9i3B=)<>WWo1ni93GYsE|XmKMVcdLVD=`(#gq=??S8w)3fhehF1`trA) zLLr?}a=QmDXxZKMJmdeN^pH;W@=K>sDr&-CYMA%AdmGpk4eH}({r7p_ADQ|$cB0Zc zw%MnM@dzuzspAscOPm7^0ol{Dhd3rFMUbegnmW9_@d#D=Eg?4zr4vu=SjZ}g+h+wl zg>rtyu(uVu$8V?xN~n|nORXj4I)@N^;aA|q4fc7tv-803=N`2_zZ09S9YJrt?R_cz zDJQ$bClNSmsQrhT?hH?M}ff~)gzlebl)$oA|-kS3^3)$lXihS(VVe}7FvV`YA16fXC^;I|e6NdSNz?&ge z3OHf#uMAnA1oa{eB39V9i0kNoxcy&WQw*py1JFa+#%s4IzL`ctdZe@lMy;nPK>zYE z2Iq#+HgMfs@*{E%VyO*V9IQdxyxRYWf}wz6#Q&@Mb3`}la6Y@X=sG*LSTiYX#YbflHwB2hM9@g_-!ie$j2 zS-~l(=$hwum%6Q7;9@TyxL`qg#D3pis^?-f_kMZ?MVKr$+vpler(hi&YtAtjcC%Ox z(yG$`_-?8lnMUY<*vO7?C}F0|ht_h4^jxe(p{ofS^*PM;^YAZWkg*vp;_Msv#DEu8 ztDz95<2?CidA^lBLTF`3WJZ6GiX`Pgxy*+MTib`EpOPt|`;?SL)^#|2%+gH)wM3^q z8!vH;8Qq71Tk~Ribu(?ehl?W19ozZcM+-#am=ZiB%(H*($uweir|6IY0aA3|g7jr7Ls6+0!2M1ipIvcH z6dH=jL9L`e;&P!JnSc4bJB9iTqOX}*K}vAye97P0XOJ&tFgJ`*i`7J5>ig$U(%a5_ z&nk=<6C8P9{6y4*0zl4ego=>&hikS0=l&9*mRb(*sn^*QmC&*Adq8&4f1P?ULfqJz zzccreL9YtQ`2&r072m!z$0$hH`j8S$O*uQ3uwZKTG;4=GDr3TM2_oUks%^iC=o9An z{&}8vWqm+PP$g`-j^8jPFMpn@3;C@?Um+JF{EPRe4tUb`6tx`jvT}h@yJMGId?($9 zYgG9~;dQ3=!6)&0)J3~6QnI;p3`5Z5jKFg+3JJ)NIl)E_X3B4qB+R-#t^xs{5bX)5 zhW%utotMWn>Wo?+|MAaW9gVWzm*0XJWWb7dQ9>B>@@NrT?;S~-BbAI0Mb&J?{YrXS z`#Te2mJl=u|FxWlJ&`be^@XKGLXiA0)`+=7NyTM#40*kBhV7!LvE%oudC%@yTcZi2 z(Ma|{uZiE90ZcqR0<)6sJ3iCFa50Im-u(Ah$gg;UO(tRX-v%g2D~#1I(`Hsac9hK- z@6}f(JY?u%jPXfDTv^scUyq1MKdg9QC*Eb(`c*gSK6l=4>cr6btT2Pvn`Ai)n%Q$* zAsUa1Xl%_e2@$yeTf%Y;u;JGhP6v&9<2P`@x4;2 z1>0#2P##{L%4u5Dn?$Jc6|KiWsueYq##;s$E^J?!2s*84~CakT?MI6OJ zO@L>=H!ouZ`dw`nE?)P~W1as>(j0fK!u3~-b-|kSt5f#J`5zGgxgHPv{TELi3d!(OQrI&= zoc#ecg47Yc>ktB5{d%0n3SJ+;!k!h!YeCiJLJ|PmNT5F{cofQ21n?ku!`Q_KFN?yD0SC+{!B)v(`ddteQDkPp8Jr_6M8Oi1+u2>BS zA_xoT0MiM?SDRs0O$#Qf#NV`t`s)<&G72^(57*1YyLUVXGUtU0NPg{}=<|*I2{3w7 zv&XgP8?DFR!mD&w1H(tqwgjx7lWY^;qQ5#HB26L%twO-NRw@`13xKix&HOp|XFOt% z34HHyM3V{epoBviu-@a#RzQHb=>68wN4*y9Fy0f{On=Up_~)0V(%42s@ZG=~L&!mP zQ$lJZpOANbJR}R~>MxG7)TgQo2h}7jV5Ph#^XO8AU;Winy2EPz4OM`!KGgNBFluA{GBq|{*OtT1+_|!?+1#?_~{(!QjGmP zx0?)J;ssuZAja1jMALUgVew6H&O#L2uvRa;_wWc$lL3kqQNzu3xja3efp7)s_ZPx3 zq5z$rdCC1GwpKa&CxR?sfKb2lMeZr*e@ed@|B#Tww$B7ED>KH_n@S?FHfpZ5wDTEy zJszOCVGYr2XZ{naDjN|_j zNA#nk3bD-I#1XIhM?#7YY5J4pdtDJ%*AA zkb`@edZ{Xm zj8MsoKSc6yjJkP&JX?V!w2bceU?ixUdC9AfKn8)vz3|(obRL--w#{!56rmZ%)^TS|0OY?Gd}*!=mmK+s|6wcns01of5W9O|Oog+wULnr_ zOCQcq9t9iIKo@1XMn{ELN^55u%!2?Ev(PdOJlDv<5@m4i0dSs%A(}u&Ji)e(7t5@{ zU2u2$PNavk_YU-&T(hgDC^%vkXv)d_Dq90wb&C0${UHvw)wbF}`^6^gZ=h>f6)m32 zrhlXcAlt?0?}wUKc;Y=lI~AZ>Jqf725z)EjrmJm4%}d&1d%{*Eg`%;M<tQn9(vJ9?sys20|RlAI)cB(osZ!-sUzE z&{9M6a3W+36RXa#pO^L^%Rc05tTkfsLr0cMSHNuHkJCyy)KuaLf#cXbj{IsWRAUy~ zPm!`tLM^cz@#52|0>u{(6ihIQ(ZOUO=+Za+up&( zBS(S7*vBC80g$3JuP9f?Jb8fuLY+J}^9)iNqPN_ZN+5Z4YS}MH=r)UEnFR@dn=7iQ zupdnXh2)j!10k(Iu;OE@A|OZV(6o7C^7!Quj}hD}8yjmg;C`n_aF1Ku#u?e_x-PcK z5!x4t?gRbX@8o6Q_+0SXFN%WNasY42S)ntau)UkY}{M{avvwPE_ZnH*(w!w*) zbE^`6@FcO9-MP{CKAe3^5J~VKj4Yr|AZU5ip`u35k7J9HL3btLT zXRT369;yD_1GWqO(G|e1;orh`vkSx!}Js-;+VC`&nUvG`JxqsKtdiv?Au&uN5HV zAi>UJ(*fw1)%cI4uzjWNqTrX?a&AVjaf$U8yafNHW)ah0X+2?nEDC~C-R}|$r$}I( z!`Y0-T@p>@g2C80CIOg3?^2KP=@XFEEe+{+xJz|2$-{w*`cM(hYo8X8jsqkT-0`q=VX%@z8VQ(qeWapI+j8nv{Zd&1JnjPrAq5$%{sXm1VVU ziFL10FW`9gjA9WVtQDj*&+VVhuh*EDf35tLVzLn{&l8J+d>ave6itIYlRrmIEG+tq z08z7&V@&b4sJ}GS*5!}ZtLQr1>~MNHfHvz*IjaA2cvF@7spNh?sf{kFd*RpxF&d?> z(h1JsQw~n34kzR|aC>kRAED@Np-E^GG|5Q;SPiR8RqOCF3WKN+A}g^&xt=}3zCjJGG-Wya+Akyy;uuL zp;5F<+VA(4`5Jup$RM>HF%(z0G)-lYZ5bV%F5i8GFv4>p5~|YMe?#r(C-j6%p}1{& z%I2RTHQL^dd2AZx52pjGYn5C9L!JR6pXyN0xIu?AalRi(zvEh9Ki?=>Fw^bv{J)-! z2fzJmZ%y~WSaR6%W@?-`Jv+Epxw?v?P=)w9PDrYKhXs3L#c%8(LqCq+u#puMZ$F~L zL*!b9!<`8rtKR>zW%Qv>#miMy1SE{d3o+($>*hvrMo|aXiL=lB*%iP3Eu`^fvn)r~ zFj;gdcd2P+vmcX$e16G*Zve(OM|y2v*$Qq}^QfnSb>QQqM*I%osKFUQy3tI)YmTRc zlJ6qKpj~(D(Jn7x7!11KT3d<>=3Kx-2L_G_p0Vqn}GGu!_?)de*(1W5= zR0XzsWV(P;hg#RyrD|-)^j|!i_G~oAM=2(7JdA|!d~>Ef{!c8AstqUHPa1$FDZY<> zjl@uqc(8k|sAh5ZrW!9-V+~p3IG-)j^XdC+dEX#3u)JFQF$7RN7aaSq5$@O+siX2Vi-=Aj5 z4-sJ^6GEM}M2bZwaMKH{L&XtJM|OP=Jvmc&B>6>87B>BU zE|w>4_1of2)dMV~nKqb(?rt$mMRf}a*@{coLWEaHv4 zcJ(0=cUp?G)mK>dZ_n<&ssC*mfeb514S_>ve{!a8uf)kU`#-@#5&kQP{{0r~${B{LP0f~c4N-YlCy7xme^ z89B}4+*dMoQ{WUfR^X4`R#WPxSwQfYa>IxQ*8UCsKSoM{J9l}ay52OL?MfS>9N96Q^f0MAVtRf+JnXH`3?v*&qJr2P(q}oUHZJDxR0$Gzh`yJAl_7kI5 zlyZk5GD<8w7)b`qT1|U#&`L9!IU$_x_}&i3ZtgiCAiLMVu`wXreN+ZqD>knJE-Lj> zhu@Gt>cE4Urwss0HLsq3`Iyzt=E|!HcZvnO5ESi*0kF=Fh`QG>nCzF03Ai%LZ3aGZ-&u*BRMGDdFm9>7$p=g`_)6HX^)m^|c( zw!NO+fH=#QEGX`SH9ItfI5U!Rl;K7$Qm9Jkcw`^C-a?~(M2X2RtIusVj#;rMDK!vl zqa2HUOV_pNdv1KwA75sdU$7E4_}t!t#n~`Y)FhA*G*D50a}ZQ66%IinFW3}+Sc(C` z`@91~4La*5#Gs+t^>C5+wAZ%rhE$B2^Ob6;r-BhqpCkazS;HcbzdpF+L1xU84hNQ` zFw$%l@0X7l$I~L0B)qYZMJr!ldy`5bfjkUU*C z;12@H&;OQIG+XQGiWW^Vs65g5XP`k3=LE~ekbP*E7ef<62G<}u_qXiBdT|USghw5z z2>&}LG@31S@|##J>+KK>&4EM#E=akU#k}13&Syg&K3AI$Hr{glrsz!~DxfV|G{8lO z`?J`lF9;6)=;FDL8As?h>>ZqTa_!$liy+I%_(cKILy}6!-_m~TpJN{Yo&jHWXb>8^ zi>}Mz3qH?pT9n7$xjofX?-sqUpV9z3=VsZcM{8pQ;8;acDZq0}FSq__!+nz)jHPZ9 zkidNz>Acux5OmRmLV~~`3+WGcgfvt!Sx#y@f;^sIo|_Z!X<=)oo(_vgR4nRCOxFnO zwh+A+5`b=va+N$@w@fQ^ci6A+qPnGlXd8Q$>7gQq4X)nYn#oigZLf<%=+Y-8rr0nw zg+biycB+zR7p{rUVK;2tgO?W>wIs0Uquj8X;y=uW^gyr?sYTRg27vNZ{!P(*@ED## zKQ8Ig`h)8lu-ho*-(7X;7}3TyuPqZT_iOfnb;KGJ)MH5GtzXvoKiNX$X* zec>mrLeboHbqDd59PZ8o*#rBY0Q@!l0~t6EdndJNG<0A7t70Rqi03F_!FmB67m3|S zpr@ZYhBHY^WesoP#2+36tsPBrohcp*xOTdZT}1i)^zLS6jEtWF^Uz(Qoo7V&t;a%v ztP_4HcOab5>Q}%0n(iIN1;P84yA&DP?AaRc+Ou?xY63xW?D*E6*h-24r`GztR=x4K z*E$wg=`+u3yj?ZrLd*rE;Ew$IhvyK1QYIT%vvg&b6_6N;c?LmXsf}IF2&V)mLsmcL7OQ+?qU8Zco8c{m z1T-kYkwt*}@1kQ7BGFc^^4bjobx;lXZ2Np^2jTXgv5@`!Q%y`DDGX3h+Dr$nOV!~Z}bzTDF9peW^IG?4B>lmxK}!pC+LW>3h^13 z9$fXl8WsF)u-chh8y4dGT$H}3ivjyQ1gFcc{Y&Ua+5b8Ux2ue=g+TgA#XwGX0-?dl z4Nkl7%i$*s#F}oPO@@&oU1DRSCr4pKfw~vJqjH%{!W>qst&GXNZOx9&>Ada$s|-fS z43nx1f?8bKOb+#NN3D+cJ9S9%Kn^pVD;LJ>`Xv~^oj$1mppMKv&fX-*-m?<+_G>a2 zH*3;GN;#@$<#f?KtDov;$2dK&Q~-46UVJ7DgLY73;V1+&F#IOE+NP8HtmZ5wZPO%f z%!;^)RuOAps-#fZKyYGAm1sAq|CS-4!;a9#;$D>h*=qlSy!91LLDRPy)rz*b@CqOoKGe`)T{rZUk|tkLK1jDF-W7Zd6)nxQ{i zG7j{x(U~)Ch5=3c@y(0f)d*3|2vEC{40siJtGetP1%O?7iYP4MVBk@PT*pP$M7XN$>#=~$;ajHP z_e14`EU+-~3W5srAPg|e+WE-D5}W_RID`6sVx=coSm_2``-?VO_|{C2Zi`|h&`1WU z!fQ76<#I5bHCw<94Ewiy2@qq9r0GC7t^}AE#;es|P_6R8bM$_o;`e}fwxyAQT)PZ6 zZnn5jI&?9!jJ;L!BdbwjX(JxKvmrx78v)@fa_BN~<5#$X7P`zQb72aZv>*9V6!$}g z_>vzzGXDnNGABKmNFAuEB^cozJF#>(S$yp1o&WtKb0Q)QGBp@SOYR&pgl1N$_tal6 zouoWMM7f*-HI@?gq;tYXbo?d(kIOj3D2IM@hbbn(_dNRC zfM}I;Fp#+o&XRs?hkfH_-lT=QP|3hI@Mp-OboqbVzvd!Z*${To)7B&~u^E#ZJihlu zH(Q#)Jmw7qI(4QK%;2KE>EG8*^`vtTIn&I-(Mq$r!g>5B$XZPqPAm<@eNBCz+V8X6Tgyji<*^ZW3dRh?#wp>j{QuS}feohSv4 z)el3=gzuu(%tNu{-A$SH?&;-kIAw4ILgvXqsYWVC!Oa+&;+fEYJI8*Qnyh3dT=<%3 zwBWjr!`D)Ja87RLk!sHF;?L58anuCoRpEhGf?=0OWI}~RIj-a|!C?a&O&;Vo(_^N) z0tQUb5E>&i28*ug57-n-O$j91T<_jQ6l{pb$M53D6*#W@43iu&BAyKpKZ+oS_@88$ z!BT|^#vaWyi%ZcDJx1_&GLLLEIJ~qZZwMAyfnPabX#iKY>JMkT`1f#^J?ml*{{C3m zl_%4JmDKgYK9&I#_aSBMLQ+LSH-;y&OQXV=Wo=FCv}Y7NjYQ#{2-OWcOFF)-ay>_DKa{khCeudnR)gl8G0RFUzT6_vwG$fE^LX@hXaz zr)@r0`|@6;ubAq?IFt>c0I7Vz+1K^?q=hWDIT10)MoR_-eyx|o@DFXofKQa8pdsUs z-w3XLE#bRoeT2D!=O^1%#O^75Bwq{O9DTS4aiGJ|5tmGUu)X;ld;{Vsb~G%kh#JQ{ z3oJpS?BH|0Fq^659cZh7h@c~y_8p9_a z?inT*xJUAhX=i{N2)2sRn|%zhz)DAH-2fsrKd&wO0%zJ)_Txuxg{T_24dH~pE=*}O zz>{(Z25G6L737P0$Yw$3@|C>+dpgfGq9!@aPT;BY?*S;2W4j?OI`!exX9$zQcbxxB zxBRFP0}x7f3!u11t^04tb0Fjf)|ku!m=B7eiA*_kRS7JRVs{2mUSy#MQpkWIBfFt& zNXkrFY9ZDg#h{#~0KumadSA#+ZFit>J-HrZ3!d+dgnWb3H;Q+6U4CP%)*x^ycI_$; zRAdXWgAkQ6ietutOTOboj;fXCY3-A|ake@q8tvvme#Nq>r0a85Wo;>8eUZsSkXM5=f_2IvES;M4{t)tlCQ z5*CF04Q|krJ(FoaU*FgU5pZuYA@+#cM%g6?d5~HR)BN22>-yF6M;+M!{yi#l-_=6pMfft zyS@v5j~?UVv2^MFoeuVX^0OT|Qos+3OBIyihZ=9Cm0OGaBLp?xdU}t*t;%h1cyX4F ziT{^XvLk+6^osR=toifN*rzDK@=*hR`a`+!27;x@3^ry%?tzEA>1J2NJ4zXpW&c!uN z0ons{F8#*B@E<3Ux>w=t&V;U?z!%d281Si}YJ%fs_{x9`nOwZaaQ1g=xuMOr>Gd?e6#bKC8&l-Oh@^M-7h(Sx7e=EX|v)li1J z+;AyP!)M7kz~BA%b3Co>t#(r!LM#OJLTAw;}WCkb{TuX zqlj1CfV>PtLZ>ZsMHumj?aWN1wND#T2PFvqnlP)NIBxt`k`pgZ!+-ne%J&CPJU3%C z(vX1^L4juo_sxLx4B&q<#7x2rNO)oSw>qT)GDmb>ZoOlkej$c+wdO<;of!7vTsjGQ zXP89}Rqcur3J_$mlq1UG0cok*z;MW_*h525-+#0lUvDEOwbz~nNnxnU2}MFL{x!zj zOagY#w@HN8k1fOpn>yVqfdXOWe2T(vyngd?9VTO7boeg#$HD2*<(T{isx=aidjsGd zKzDwrfu}QfXl3>D_|DMWTfL}c0=zmi>(|&H(9^u@9#v&PRDT`NYG$lu?7?wm)F; zhlu-Hm?reP3j+`TcPDnY3cMyF;Wouh^}1#kGe-qJ{UneZD>Pdh!U8^ElSlh#SG4m4 z8lXO<$ylcew#lD0tR0n6N6~=$gUMkIEA_F9DFZ%z=s1SQSL-KIuP`a~o2IyGaFZXPUAJ$7lQS9$1lPq;K10-Rvn zYMPdS;P3`r924y&nu*r>Fa=)O$sz+hH7q4gBNW~O> zV&JbI{3yK&Z}Arj%WaZ1OHttRSmBB`^3xhY>h_avZ#s_GycD7y6@dl1qg&m=E~U> zz~307Pg;;X1Z8}-EAbROW?C0C1p5KSQ;ajiD8Gw--6m`OM%;-|_7}iFnfI|7!3rEe z=c@J)ghxdTRor17_-N&rsjQ=@b}4LxGdhD~!mM2W!Yc1>sQ@2gQOA1LGCceQITsX4 z!j%8y$`Q|OCsr;v(G@7iY^GS)aDWBV9qXeY%O3igyyWZuuN>*SE9j!*8T0nPklFi1 zc1++Rpzq_i2f(a*W1s=E%cbqH-kY`VKqaB|W2j#IG0}p{s@DWX=TMu33ZhH6vls_~ zHY()ptBmOKcUc|vKTY~?KZvRhvT=VH^Y(bLh!hk|SUByabRGX$1Y7--T$%Q1LBrh> zvvve(A5{1q#o_Qvt8Bu5u`EXq>}ZV;r7Geic+Juma)JeV|C$&?Fy`1aB1vs~8_8Oe$GpwO?kB!PF&sR5;I1|T zk1l?C;hOni?t5x(3>RjJ$_+Gy?>*0y+KZiw?=Es-Y|bV0Cuad%E&3~=KB^da(ho;B z5uX^ri-ab-im8V*6Z(tw*?^fV0T^yU9BPn9jvc8j`A-I!JWewbWcUAzi>$1)kfEnt zkG_su&|}k;_K3dU?qdBEbEh3WfXUl5j@wfP8M~Z*K>59B+}YB7!VR=ui0d5K)@Gi zi-`#o1f?~k`a8wGVM;cPP%|wD1S~A2f98?}RcCKV^!nCA(g1wB7#bLOO{8H-foN7l z&oBXk4^dE+EJ2LFvZG=4f3e4Z?K^fDo9KnacFLd;Ey18{66I^YBuCYSe~VuxHt#P* z4OH~kb>B*%$Es-HXpqgjpv6*X$5W6f11kWPC~?p?Z3!|D}$+WDJw0xhUw?mnCh)?oUCi-psjFM+__N1V7TkDPMH zH8E~-Q$%3lbuH?`H?skw?BL1SRY}ATl1t;)b2m1>|Ex@rZvU5T?+?RWTDPM;W7-gW zNdE5OYEhu#`0r%fC!<@7C2}FIv*@A%+?fSYpGLxE5nZ7#U$oA#;kDCdeshB@)3hq<|wE&AH<{FWdGc)3df>uN59k zcrhlvFDHdA{9#gNWwM0Z?Vi8CQCagP2i+o8#-D_I+ULJel(7%4QgSnO_;I87Q`;3Hb?tWxu@DqJ#5eoR5!H3FdZ+8+dRi+heVb zfiJwt6_jjYSU*e&GExQ23sAfhW3eiy`iMn~0qB&Eh*QGzvQOVffAhHo-eo74=ec(% zA3RO07=P4K@+P5_IOQt}vM+iYpEPS0nHWfj1p=6C_cqz{H#cL&(tqatlS6Y;-HyBT z3x~3ipj)4rjt|c}_umOt>8gl4{FEcn95h(Y4)!K7p{6Vk%A0^1AcNIt;~^I{=;Ew@ z-D``2KnyC3iI+GiW+9{#T6vL|UTeu;<9l3Ny3`OH(A2KtuQs|K3~;hZIV4rx04Bc)Z5A5EnJ;nSqm^-} zq->yKL#ZEyPqcJGuiqCPhQ<|d3IuDTGhMNCq2bMad~hl*nUP$=p;Z|WAKfBHQ5NNApET66^#j6k6w?CEz%ga^}O{YC9IuVVT-BJ|sT)kG7ka+g#1 zV_wN6kT`VUo-3U=0=LYuhk54B98Nf+T|enpULupgA@*C3q6iwvf70a8EK%Ao_XE2L=}=V@#|< za}#8hDF0)%7Cz@-xbtzvzE!HJHgn0aO~bxF;vNr5yQ?|ie;iC&9#^Ix4IJlV9uVe_ zzvUpyx<~|1IlmzWDKid;VTC~#@xZo7^?Zqyx?BV}L|$n;Cn7d5E<$P=bKFeAyg%*d z@4qzIX5e*w;|RX|m$< zoek3xgHj`X28>V62?T|WYoA}ph>{^mzD3A5>JyI1k4k+Bzb!cyd_M*bU$jy`;2?=1 ztt<0%IUmWi6_N$Z3*t#?84`9>7z$4t|E9A<6K}$3fy_;Hh7vdCJ!TZ)!n=pfgtZCz zTJH$<`-SwDxQc8}UGb0%86f3j)COq`;VbEw!yt2_f0~V63)a7_qy53G zXA=1>9kNQG(CdT+pbTCOubQaTVF8m+*M_Li8K-XA!Kn(ia4A0}=ZT&>{5wnD*8M`z zb}<1z$^tpC78RZRrt<-tl$bh`fF5g-nT3ghWB?N$$@3sOBX^KSBsF|5*6w4gt_nrc zGnC&uZvNJyHGue!Q6n`|wm{{g`TkWYu8Ccm%^JMB^XXnq8P1-OAg)wJvqn+m&DVIe zQ1JIiCphGZBZ*0b;4Xg1MtL+3~$2?t74yoH?o&6Lfb{s~^^qT@{i~!dlGND0Z zoaT!Zs(R<|bAa^4I1erymA#x+prl2-?dO{CG3X5b@{!r*#FeOJzL;()5XUE3zg_39 zs)bZzo-Fb|H+Q|2r@|L16Ft+?GH+C5CJL%gdtE6meQXRWxo-}P&Wh)z~@VE!| zOMw(L3Em|J*=vj2u4*n&`CH~NOiZs5{-a@c88n@b;IFFmZio|CZSYk@|P7f8JMK>lnuP{TqfP6PR=+6;Gh}dktpK5yq?Nl=`SO znlk(Lh`}D$Z5)HamsSd3`N@z)W3A)hMTT5m^-6y^cW{lua!EFJb7W2@sV!c`nl%xtf~;}3hE1fT!_KEhu&7jv7x7~k34h~#*N9Pr zc3nI_duhbS)TNSP4O+1JON5R%C?|T{Ij&BwIGD8%# z5x~E4U^C~%OjjCMkCO;ZYJSX6THe zV9{4DyT&dxLWil8>^3@91mp4_DD?Vq61zY1W(x^D+$Dmw5d}*sCY&JoOiL10 zjbN$cm1(?9AwHPNU3#vvgJpMAuQCqSaNq6y(}aAXvEUT)pA~PIY#s zoXhXzr}M&aU<8Y*U~FlKB|*-CYS8a=5F(=;OM6{OWq_+ejlNZ{+iJ}Gh;jz^2 zC1|v`A#o|^=>+M5ft3Qb{o^)eSeV?^7zT@*uvJvC_@DW~Ag-hb?!nR-I{%+wWnzSe z7}%3v=%+eFE9%Ic>xDxPVtoF?EsDn((~$0xqh=Fvc8g$bAZV0Xgyelvr(+}wpKC*j zutgp*#6f^Ei%>qn`mO5!B83Z$CYA`NY9ub(mvC*1lW5oj(1U-r)=X&P1F?`!u{im! z-WvIntaMS>M+7P=HKz!WT7!_f|W9ULrR zgatJmn1uvUq<0qkSZJ%WjsT3`;PVx~%9>6+d-$SBC|DHb5$mGK-PslBj*M((nBrE)jR6KC5|7h&&YdE2ahuZ{Rj|ZO>8nbL zf;k|C;RLoG`%K#=95IwK!|~6vXnE`QnRU%WR{cbaK{;z@sF@h0ma(_xHbIP7% z8S~RP48~6zjY#V~f)}K+A4Jnl0jEMPfU^D>2s zPbYN7NAnAR@(GE6U}dWaPiO>-mNjXGt5na^+DF?~0SOzu^WyHDT2;vVN|9yaOc zpCiGdLTH!mrO+XtG~+yGLfEsANH>lF+;ekK$^? z0R>KdoGrMI;~(ioCA(C<8bR~Wag@lHF|Q9CRzOTycj)vRpZ}zI zeMc=-uS>zAHfV#E-b8|B9;}<+d}=J5VQ~3$C6bwx2wN=?hSZ-UNlQQ{CK6oLjhOVL z3RX-wbOlRK#VKQi&uZIm|$MQ zhr*eKVSfZ~Je_CWLfI`!S%v+}*3QoSR&L~HxkSNA+WClPDFln-Eu2)F;Lj%}1P|5> zaQ&pEW$$&b__RDowM`YzCs&e|D>E=1q+)y{0f(QUkuj2*W3H*Fcm>%rC{tF zk*&?cp0NW6!D94hOU+hQ97EFIf67JilTTjd;aHg$_M>tS4@cKhepDBpu-iA>0>P3q z|1i`FrgnIWVZ$D*2Sl)#p|c(!(2!H%(aK~a*c%#CTkP$7P?qhdeI{9^J9+X)csXe_ zg7y4nBF>vjuu3sq&S822*OT{*S%ezpuG4A^-bGjn3njhM*7&{<`A{MR_H;(Dbo8K9 z2k(pL+lp&=0^GKKBPu zXP<&Q29450Ser#y%fWj2oo)B?%X64-C#s%_g!K|3$4^kOVxxiRIZMEV)HYR`XwZF7 zyoyIKhfh9|ZUDsRF><_3Y1!FWhF2hF}rfFbwt>;S2Ha39BIb zDnV`k^NbtkKir(wB=Gp4oS zwv5VgAe?8Y`^61xK0hu`HjNg5~SI)+-qF!Gc6lQLiQ} z{EPE7+&*?$_%T!tAH1%o&O#gQx0zoNY#x3Qh!{QiS#9T;V|jJ(iRo9i5TIX01q%tQ z-bRQ4t4pv>E_~~+PEO&tt4$7{rXW~sp-bAKVR&{F=7wuH0vEcEM1X*;5P?)YaDnat ze@hc}S_!z$E9=rD=9P+qm5+ZGfP3QkUklWF@5X9w}!jrD403D#!12+?Ij7Zo{JhFX$4 zlR@HaTQ}C^pi#|k7K#Px8S+LRlwbh}79~QN>^#nq`}^K@@C2ZC{Ah(jhyWs1jKhLq zwOPTEw=nwL>u+M3*ziUJ9vaStdcHiGt{mrsG8QcA?9f;B9{v*v>pEDJ=eMR`V~c)S zO4A(jXlBM+J;D9htAk6-T54uSbl@CX9+djo!P(!gUSV+uEB(sD+!g3oeFO`Br38y- z(k{ZwFSB&qTwPu{pG2-MT<#$UOD*nn3}-mOl75G-fr|b;#3_|AxXTxYqWy4@0KOe; zP=Qlb`4I;m{pGpt3PNIc2y%-A*SKQ^Q_-3 zadCO2p~8;L6#YP=L|BlkkV0VuYZ0dviRrtO#Gt4vPeC$W;A!>?9vjfeTFH-a8m`DY z*AMK~OQ{@=Pphim5fL|l?YBjG;5k?^$^9Q@=+xCKEO!+4MgspI-;Oc)PhH z0?k^d06GT2y11E$v)cq~x+#LitdNR?G+)^=;;?6ean$AB9rkSCBPSnWNwkDw@w1Xb zFwF!@TL=xgi;xJck`;`_-7kLJ+dMSUy_7txP}u1slx9K~u`lIQ6uOmy)d>}j zf;C-)b9(~pN6xFbsPQ5o5`?asg2mYs3Z}qm1<%4|1#|M1#IfcC%U1enz9MXb803L8 zKhEcUWt*KX5!TU!89D)4(N#YIQ1*njm~TKAWhHbNNEE3W$VcWs!@&;eHB@A`KkhlD zfr&UP>s8uqf;HVt4i<;GGOSoN$Y|*zl*wecUNr}caudfrg~?#TqCzRpEgr0>U_}#A z>3JUGZ`r|Y^7Gyn5YER&u$*Ga#GIl`*mBvzux@TXp1E%ubX@LXIAPWF5VPHh06dz< zMymlgRw@-NPJ)2Hy;;F(V%$7UUc5-hB-n72W1-;{^9P@iu&ew^?N{-rG>}jD6p%?rvm^E%yGAm+LFq_u zZg(LFe8B@fE^MML=xSF34gw3I!^%2E1K(N9L9f0$WV6ZjX z1=)?fx9r_2r2SL^%0?Lxe!rp5DGd{`bSv@O4PRFpn27U_t-V#SOu@pdY)3Id5=NA{ z1}$0DfD)m8d?%-YHo~A_iMO>WK#__V`8X;k<}^UC#N{q@0NkBmZKav;N!REO!-8TV zG*(&(jbY)#@*FIkZj`<5O{fqy;uF@vCbkAwrUqgJYl1DV zPr}E)*U5i|k;W5;?m@CfpqR*dti@C`vtB(Ag0%?`)-(wiWkLi%oOah{g7v`%)JQbQ zeM-QQ5-dp(lmR_4iHPJwiD~d##N-}>M#JB>Q3%##3xQaYHEPIxXHKz-HbT2Zz{*2h zpaotcbUwg48Cnwnr4=;6s>XmwVFat*a?ME;{e4koBig(r*u*j93hF!6Nx?ut&K9xMq8kBQxYmmnV}bb5g!%YCz!B6Wxr z3&!v7UcImU%D!=6sU+D~BYb~2Xw>eCZG@ykz^@Jurlp>Mkkek0sx~#KtG}(8+=X8O zBUns(rom*e9+Y>vD5iBRs1IrVkcL&{_+F5E#urh1A5NP*HJ$-nGIqRNu>w@5Lp@BlTg-7pRXVh3UsMH4<+Csn5pu7H1MdtwfuvPjG|K9=R(1@7f?u^W z!0{jHl?RAw`cl)m+HKHvbp;4l-ei+on}<^V6`!; z-r+F~^y?X*yX6In6T)VQRH!F=F1VXJSoRB8_zRs+*##c|;?v!SQ*x4 zA(;*~5AX?dKAk)?1*?kG+&)7`_rG5cyOmVpDw3=Sr9#jO=021&Y4RJB|D+1XxnEOY zT6-Q&8s=H|GL6;mg>1%&IByA7AXw7y9CENa_A8=sP_SZtbw>VUv``OLCs0m%<+Y7) zUNgA|W`KevlKp6tav)esezk>EcRNQ)nXpz)`sJeN_YCSvQ6+3=$J+Q-ax7IJqaX-z z4PoxOI3hN|e@eOFaRcGjY^WsZd`hxRHBgy)Kx(HP03LpK1XoZNX(fALcZfhsJ zE7A^F*8gMgTwWY0qbQz_N@A&Kz=eyJRx!Ql_(l;IqNs>4NFyV-Xdmc6LyNj_B?>MS zL=iW-cH>qz3jPZ&{I9IszF&Udsr!``yJI_}bEdmec}!l_sX96L+;cC`MM!PX=+#Yv zRUh^o^Af@=VUEV8iO8^LDuV3-CRgCTa zR~^4HT>12t%K;2at4bbDsWj{4YMdKMn$bqXdd(FqXRfppRtHIHtxyXeMc)EsmK-cK zTtpEou0gQCP{X?sEZ=8qRzwqOgYdc`7mm8y@%>>~Yi+(WaTjn6zo|Lfk7?)gSSup1 zfNfOt$nh@1I|dajp;!VQ^5tjNZ`L#%-16)H>I-LB(c<1lf>kLI64NjjrC~xFSAfJ( zU$LAPGCC(iKmx1Gno2bptHZRJ42d=K&m=iL}C7lT2g^B&qIDza~~NUEj$i=~DWEwcr^V#)v4Of|W! z*w6{-7d48_?i+q{emUbB{nE&~RuvnTmD*NNSk~O9v6EPE`Ogrn^{ZRY&Kb>{Ednw65&20tbGY=;>5!@U6s z7FBUAn?SG(d6(NVi;xnb16PKq>nqsRV8AGQLzz_q$&wPG_A!xzRT?3P;n`80@Yy%6 z6=yEjh-DI18R>2a!QX4Y`;ot2wrHvI6jO74e*yW$Z^)#hO%Eu^_@Fv2H|8@N!Gdks zqRBTZ#Cz@u1#4h-E`Y}EFMXA3bWSialez2!y@En&flx%-DGJs@K7a5P?Hz2hfOYjZ zoKQi(x>NjD621`>Ea(*&DG~Z3S92OZz0zcYwMi5P{`$ZFBFqHf1!8iyv!#L+W)WiC zJNxX}B3BB5#NQ2^s&2|POFvJu0yhC1mMP{zk9@^nfbX>UiZNZz{9G2WY~6lQynG!r zR1X2VoMO_<)%XtnI|OU}7k6YcbTH$AxZT;`z^Ukd65bUO4`b)JOgkhFYuEf|`1T{0 z+&GgB(*VJGRwv@zRIq9Ui{m249`XD-wW^NFS#Y4v%2KEiuF%W1Sfq`MxW54G3W5b4 zKz0cPD-P#L7v@)2XPm=`b(sjgXBAuY@yQv*Qs~s2dtQjs^J>{f?AVa75?y|Uv3Nsc zQLrc-YKOY8tOQiSlJF#ofRfql3YN{q;aNQl@k86e!K9CC-(X=T!NxR zsLH3^T=+%1vU?(vs=J0uDG_R5Xu`zFim)EQhV~POt#Qr?mcS{OGA~3g zvS|iOg?!2MVbA^v`A-row+^gNZH5k?{K&GSNv=Fg;*Tx40gx0jc@)VU-k$%k7BNiI zB5J}`8oJk^Yj!f&C+&=ArL?hLy&)5EZW64zf|W9g?+_t;kemi3Sf$Gy5rp5MV4--B zf<>K%H4Q!t!=5!?V0!4{7eJNIu@L71MZxd(XIgsxx5|V#-D79JDIdRG6$Qdig<-uO z6EdNz{ex4jM~XigXFgJqZ9Jx-VM<2W>2Y}^Si;uq1RDoZnR~D(1Jn8qn2o}caE3~C zkoUsgHdC;8-(vg~wZTBKY66ytS9TKXy?;Lk%YL!B2ZHtaGkH@9!HU(=!XqFkAR@Bd1L73+?vm-R{nJdwHb(3KAF`xOCzyqxMl{OZ!&)o!#F4~+2 zP?njb8Er+ke{HNqS*kGLePB;t60BC+2S#1j95DMIaUep z*tGU{l|p=TCDVH0ODbJ<*;MjIc~67SU7!O=Y%K%_!9aFa(R}9H&{_ z0mdGkMJWA(qOvi>ud7}GQAG*KTvmiMz?FqD*BREB z$(=BFM?Zh-MZVbV&k#%yu$W5qxihRFdqS|PISr+H(=H+6fbB22EWvQIC6={Y&dZ&M zE!3Qj$|RWOquMPmZudSRN2{%kalCjI-7_Cy$VP- z36>!>(}}nZafYHIQ7?gCEg1H!BX0{C#7>-GWyp8gc)Y8YYiM3X!E!c7oA_a*0(wxN zTnNvsGhNzQ|I$kyO^EJ+f)$NeXZYr1O|dc<+#un7|N4+q)&orl@`zl@ zv`qokBJv{+pEYptvZ;fkZlxxeIdtS#^7o&;5KDi7%sYU0+p2(U50$biW}yPpjifla z!Apb#&z{eJt`t7~z_X~zaqCgUh=^V{x^Q4twHeT)n{KNcftaI_w&OpEWtDhskt@G@ zinX&Gu;=R5tD6c|ZP>H(c4@HcXQ}t35EQITuQUzF_GEZ@a@`=t!-07p4A+C&jm#n> zKu`|<*$Z$He)Yx!c~p+#qgyTm2w38Cr$|_LM}K}QTP<(A+zs~{+syu9qRWNXvicLU z6pNH9x}&h{uI3eQy2LpI4kZc}qLr2l4Sq2S7B?vqD{;QWWQJHD1Pm=O1uMT{4;k;orE{7_x#@q>?!#5#{LktNei@ zrMAPu6|9djpJ@mk3d3xbTTZiVC>V_YB+OGOm!9#(vU(rdEf~c~TvR$$O6{e2ZPm&p zKt3qE4U`>080(2g2!dtEQg6l$){HesP5L%Vi*0a<6d(s{i38!HPknVsS^oiow>5dWK*H{mTCJBrGox zI;#8Ic(fyzJOpX8li#p8hCRn`iwMQ%hw&>2*1uFH^aFIJS5B~o8I~E|m0-cJOpuuY zr?QTII#3f3=Gm}OnMEkV5}b;!fm{f|(!d8!G^MsFV;YcQIo0gRctCg197e@R4y;c; zv>~KQulBEeZvLn0ux0F5!Q;;6M2=)TO1*bDra{58xE;K!_1wK_Fc#0XWB2Gdv`4h+ z!3tx6pjWn-Eww3vME0tonIFFk3P75RXE(|#E8-XC!|gFT_Xx0!t8sA#2-Yx!sR41N z@g!@y?|jOKLXS^3n1VGZ;PCkeSKjd0h9+sVN!)a@re-%aiZ+TQP#41AG_Fb5}{&en@bU{KB?mk7<{-Yw#uXI_Ln zi)lhCl02S5_Jxd?M!}ML77Er}O+sLDA-rV#N=k&6o7VupvVW2SK2lry@iZJmT2CbR zX2KR`j1kMFOC?$HXff1?-YHm3IoTB;VyP3>Ry%@~eUuneZ=4;FNRZ&HHw44r2Pm}VnFvM9C^pCSYc zG-1yKp$8KhW-h{i>i;8+kg61|?z_(sjhfbOXXG#u=h@-^b5p_UA$gMfB(@PYB4A03 z`>Zs%<9w~pURf(xQZ289YR^N-MyAdVDp)*@5iBuqFbed-Nq+AdzY>CV*?A3cEHz^J zRKlSnv)QAMPrmAXNq;b#wx9T<7*|Lf7DbhzfFF*OxZR@%D{4@b5b2s`goY6;zYf;r zzxgKI86`r^0YEJosz~+f4>K4&sq8bu^ZA{6#d$||UKz3K76bGO1q=1cH{g&3D{5FS zVHNx;ln94>SjX3VyJfm#3YMePsfAsh9xs(u7#5TW7u`is!)gc`mFawp>t#4j83hC1 z)U@zmRZ_4T@i?3t54<#iVAb&5WtR!zSL6O@Yvk{m3X80U z+2c8`0jv9zqKCM4Lu3P6tv~1l8Hrhh8qI+povLm3D;_NP73~SIDw&wyScx#^Lz4=w zh{y80`}UU|YeyTc@AcxCdiC9JHj+^cp~8OUB|`GsfohS%wO;6zDp+F#>)m~Ob;Ot% z!BW|PPaUuS=P#6CnM9oxti?iSk7}FVw7a)<1-oKcU~eP}ZNunQ5q=%FXfj<{(ndBH zO;U!KDy3pqQfZR3m4&k=yP)j|mYuG_X>m4lESY4X&CP%h3>uaZEdR1WSfAqtCs?KU zT*tL_Y(r3#r~3UG8Qm9vo5RH6uQ2=6w;POUOJFqIT_+I^(=3+T7g)!QVd0E|3PIXQ z7hy8%)pHlpD$@T?!LkyeSfY^b@&1ag-o}`Q4rdoLlu!xQG}xomhEbMkK;B^i2$ts3 zSPquoPas$relEhVAXxuqnUF)XGb|eX?;2uQevJO@%FJQmJS8t*1|tqc}?%i+X}m`t+ssi_$(Mf zNewyb5Ue|E0|;e+_Xxp4z=|HMzKG>&nmw0qzPIhB!6o}M+9{=rQeOY7Cz*)5rn6`l z8xL0bRSKySR@1aAN@CCn1T1B`P4J_00{^m~(xsIj1APep7Pj^Rv~Zx}+Urv+SapKc zu3!Ixs}@i!)UFsP7Y%BaZ1*NjNpkn!or8?3h<{eWg3;&%Ool03`TX-MniQhcN@Yhy zWq?tfI1wOZY8U(`4d_ni6rDgi?-=MLjBrN`D4k8j`TDth{$`1AYcw(ew$i~~Q7OV%}m?**eSIdMk&wb44 zPK;766|NPmmeIxcJRj^NVD2P~;~uVKfHHv;x|-WMh!!eeXbu*>cfci_WP$~`@?V|} z2vKVc@r@xzvy6?*_t1e;j%8OGR60WfR%{>aCyd&!5@lsrl`W_atPR1sI~ECfMqjMG z>V5Sj?afNMSsSTtIC(X5kDSONIanUlpdoY{tO?fK10XWdP0(F{+!V-F4RYI+ToYAE z&D+Qu7M#5>6e|0cXf(>!ZS`>ByS45bzcSy0Ga8ilDyx|B| zg)s2FC=Q`ajpJHp#=3U4|DQ6cN_jEy8NM|G)1ne92o21{#O$8`z-{zaxOE7y%du>x`KY+S2L8ST1N%TcR%Zk@n9j9qhJXE5)=(TAzqm;ox$YZ zp&a(yghD)E5Y;*O)iYxR>+(ZK)#lF8dDtTDhw0;=k6giOTTgeQOsJJtoLJhjgDg^G zSg@Vdl)wa*8t2ab7Y`Pr_o*c+XijSPP)BGRtboai_6nd_;V-RV_MhbU=aX5R6GcNs zuI9g@JQx{P$lVz0RnQ9IhG0c{wRukO?z?!RCg8mm-yC9(-Lm|oO@DmVPN5%|+!qqF z>NXieg9j@*j)m@$!aWCJ+A>#1EGZaP+hc(0k!>h`E}UEyXzfxXSnKOJG31-K0RNVJ zhM-tLBS(#3L9URn{sRPyXcd41k23YOcaKl5>Ha_PD^ZnI;Of^2L1mwToVHv3Q@;fd za$!2R^`IQij?=vDBevp1oV3gNJn13|R=Um!mIaOSQP2`0`Fzq`<-$1x%NUlLGkSJ} z)j(LK3dCxiz-OFYrFDWe^N;0W{2G(MxwpiXr}@i*U{x8`OSfDWbYxD4s)QvV3jD{; zj`g6un;5YkejzkOY0!}Zjx|??g=%30OH(H0tXvKz>k?t(p&<+jhKMQJCAC5H62)Ac z9*s=z?Yp4MO6kFC{^mUK{29A?33dg+s>fe3fDq*HcEzxQb;n;3tWLl}!_qq8H&><( zA;qp>B|PKmcHtA=1&+>~IJk6^6|D8SXmT&nF8xzzi!_H%bW4I40F7es_@aN63+oD2 zlTS#+mE&^=fkT>e@x5S9TU8kdR()m1C{;Cv= z1O@Zc9V=Wj75yW>BQl#wZhX?*gan&Wq{S<-IE ziB7~x@XiWuDp=9vzFw*aOI?RbuUr&gpkNu=nUo3n1Q=G+vc8l-U)p@iLwWuc(aIUI zL^uWHV5zKfUIhz&_3UJXV1bW5z2$PCA(adY?)CZi_!ao^=jE&wkI_9JRAYWb$Wl#& zGNF>%%}CqTw5jJOy>L{EN;`|K+7(HQ6LJ1drbxQZ3D*2lgGQ;a5UtBDt2c2a zmIy^9ryHwV%OygJG#vD_K7gnIy88>|Ms=XQ3_d|XlC*(Cue6**dGNK_gI8ZYc4EcgzY+P$AqfqYHbSCCogfDZi;bp9 z?yxJxi?jUUF_iwFy%`3}hJ@@QdJ~3q)aGweeS(FA#bc-ki|hpSD|Rd>iEiIwb2wY$ ztlb8dk~!l_RaF!)_@bg^x799$TnUFNFFDxDS7l z93S_bwjK9;#6+BMx2y!VjvC$1)@PMq zOjTA_ln7fMf-XY#V#p~M8b$Hl8}KVha{t%8?k;^0hUJI?7Pt+-u}rBUbd()iO!Xn$ zU4$%EvLHMwKYZi`3A1EY(HlsTyD~4CwxRdYxXHcVoJxFQ&^hdf5l|(=^1t&J9?s># zSJ1A|iK2WJ9PS8M1h`iLzZwi0l?R7lRXEo1ReKTe<6^i-vz$rRs#6)X=3?4t7dYyl zby2Wfs_C=vIhbVyi=_Vs;etmO*-3$xrE>(y_Fl!(AvIrBy&+ci#Az3VO6@tfat>vS zy^dfZU72_V?40r|>V?EMunqW9f`sJ+3;a`7<$s}z5c{N^D>UblX=g&@W13F8p%duH z0jPtbXUU&=b^mX_fNthp@ShZ!Ogslh`Ho_@Hy$^Vr5D8CVbtx~ zat)K+BhUq=b^@e}ViYr7M|q$*nH>&}K~jwOZFz=$TV(9*bw3@JhI^Oyu76gJgST$& z@c!Z9!Qnx-I5=1x9Cnwk9QSs&ymz%+c5B^#I$RdmTiTrhzxUO06>zvZ6nthodbwzI z_LP>7tnb8rOYC<)=f+oWe5DtxDtET@UwfqG{^@0iSP-lzVfB1GBOL4Jryl&};aeTw zKKMw)p)J<`{t~Ozda?dziw+Ok^6%o+cWrB~Y-uN)k2rjURr^`3p9D{cRq)7WX|D}D z*!?>@-MIgM`t4Yl6^ZFU$rb!c8P))~3KlE{)!nTWtlzp9(AzBCkH3Z8>N0$~0{m_H z`S`)|&H2FIjo1ATBHy=c;N{u&dZb(QKY`0V`&F#&9oVq<`aPZP7P?#H&-K0ej%9bE zcYLqyZ*1?AUt~Txuy^CYcUXDt(eB^j!K05JtXCd6*x#=g<{&A2Wj}?Bk-hz-MFy0 z^qG&$dd1x{6SfwRui&=&U-S~LU>!MkF8xsar(I&&q<NeUo6fPEN}JEz0~2XD9Tfd?CmbZYMJ-`WL;G8sjq)Ma_ywUMw+uQ|H5d>&o49M(bsNu{Ca=gM-Ih`0i)o~ zQ3VU4{MR|7cSHrN!mz&i**D$#$F-Ys=E1U^0(1e)Rz=Bd|J5J&J1q9kzGS_5)-t7HVNe-kiEAy6vP*KngKL!08ukb(Hse>-(MH#=)M=40%n-}-4|Jh>i z?A#;WIa|%}HNR~ScCV^w@$T>$>B;!hDP4v3^G~3WLmKw;iyr?(dY1DOZi;kOi{`-x z=u-04ljGARTa$1_c0aa_K@83hj!*&FT-)=XG{%28H}YS?jluB9o2;wINQ`V4-hn)e^m3*L7YAaRK6M{SVYFw z<6;r8MoWZ09`X6pBr`vzFWW{2%9MIJGC`h&_3BCMphU=2EWR%Zn%OdX@<7-mbaKvI zb05SU-ex2YU!b2lMDw7}&$|WzRlh18fkX`=ShC#T73+l6vFRQ(+GN)9@0SR7c-(|& zf%pma{Xdr5qmv&`j)Y%Hd6(>b;jYB>A!DJpfrUijdK1mja700mV?P$x= zV!ooG$F>E7bqsz^8@Qcd`R%DbP;gK^a(~Ggc%Ch_XHX5)b2K+8niI~@;lumt@>TZ} z8CLXP3BiJ1MZl0_(&(_sJxEwTyPB)ptenNXobh(l5*iS->;v8fj%IC-S%ij4b!LhO ztAqMr6n&B_S!9570rQocvdZEa`wfEgAc%@RWUN6P3==H9#ys#*#aDt=IN?B=<_ZOk zZM#Ra`{N%cLjq7@6rs8&1KAFp3Cqrmb=A2QSoBJ(Kr*dmVn`ZPu(swub)p4Xv^37D&2bAW@|#^}qudCIYOCEgA!lAPVHM<>e zx5`&PjL|FnS71oM8ry;}f^}-3o2}=jZA34kH)Y%NYE%Bayod$ zg8pC8fikw0k59t`}7Q@3!H#wq(rJZKLzot%)daV#xnUITwVJX4V zenLqllR?^1jo!XPS>LHY}t^?e{$W@rzT}0@t9758JAj2{VMo zDkiYmQT`L@Lu4#!xf*XHtl#T+##S9s*V?+jaJV*z^=jaj=xN&_U9SY|az^DO8Il`% zePXUm+b38Uc6wF9eEeETV2x2GZON{N2RxH5Izo|g(QTz*;lZLzc(N=!QLVOEp2!j5&=? zLg?HIa@3izj;1Z$FTVR7uDNa&b>I4VbM=L#oS&VvNHcf|MuC^?oTLT$a7ogG6C z{m$!7pUK|@{HjDdootPFZ@CNzze2?dL+v10aD_gD_~8jMvFL-gQ|bJNU4e6TuAKV*gL>&abtRG796qOcJA_0dIts zRtAF=L2-*xS-jC}y;$(dy%N3h8~6pp3qOoA zC+E#?&YX9Ar<-YwK20Z+CY>ZrGxOv*&w0)Zum3Xt1H5^sN2WMP02cfzN3ig?x8yXS zI;Iq?@>`bsdy|BIY^_TL1PkH747o<3j+q0yN5?Avkb~uYUc8+(Xw*>&_;20yE_aFt z&b|NPUJ!kO5-jG>>vuzlivpG{4LXl|WK@wy>E-P?t@4oHbC@W_!sYI(g!UuIa8M9h z62JR44i_iiR_MipWe65jo9ZC@f7|LHG^(Un2fK~ePcLZ~2S*3pNx}Br?gn7QUzGm@ zr($J(E%;b1&_ayz5%TcB?CsjJK&TCt^lB+aA69ozr0?cGreK9)p!|wCx#q)Wx|?u< z2MY&QGtL-n&Gvv8dDu9hF6jIq@qOoqJuAJE5~2FK%nYcpC-wed0^<$AA{q@t9KKGkUU{Hhana2E-D+tWwYw;-44%7k z;lhP0&rDXFu^m?BQ4*{+z`{ICov`V{A`nZV3KpmxCzm@1D|ihD_@;U+08N@*!3d{l zR+Gd1U-#N475UHecC1&^k6>NyFe8xXKRmrmfzBfzlEpP$99RA8k9)*2WKDMAmN{2g zssOh$OLAAZjvuFBu?t4QqJ74)D?W;D(vHTShS@mi`-$?Pz?G64=|V-YP%=Z|M`H<8PkiRlI$phSuF11r zEr0xpuE&p4=gOa5eg+}Z8L!CTs2=ylop}Vwg+yKO2m26yytEzx!7A_3Va~HE{AjPc zc;#c2uu9mWIWQ~;7SLPv>vOYuhJ6M-Nt-2LG1`mN|I&e)e>U z5JfzGz(ugqUP}6>$fdJu)qtaEMnc0 zbh@{uf`iByfOBH)lsw}|NfvS63g*R;gJ{W3RIp5AVF#Rl(53it(RF#N2TLz;=RV>) zm5-(5$}-D$zDP?~Sp$|ra`iE{Yk@E;VYP^le%Lb}tn#~(uf`Kt5zZ799V5hpwHCRJ z0Rk5MO5~sF{BVD3GKOH8E-oKzrX@lMb*R7oP4()+9SvNZ4hqrMSXoKT%fzUFb0Jg8MUMy ztZ>3xFp`ERm+m7)c$Cozw~Ey%|Lx9)<@%9HnO~Uy@RGIDHgAWz#jJIfL}d(+hPO@oOKj2%U7FRT!ZIVmTK(0CJM>H;V}m^j%gI1 zFijhZRT3;5QPoO%<^h+LU~wH+1NsB2Wu;*0We=tYm)}FIezGXbg6B(eC7?P;^I+P5 z1+4q31oSEs&H(i4w&HGeC+(whgkqJWapXu2>iV%7mvq#O5G+2{_}D0AR%CQmXD{9u zL$D}C>L(n1{jubUf~933ps~NkcQ9-aET%Q_$!xXS#TZdbe&=&}Zdk9Zz8)2J{0e2ju+DHbDBU5PLry8hz|78$0B#@iPaQ}sRJ(u?2|pUcMX z0~46VLi{H%5-5Eg8}nFL77CffjPAV%8q4s(lRVsx54C@UlM}4)U+`eb!?Y<492f^a z(mh=wv^Ffrm|#n}5V=)sna?qbfg93FgggW*N?1n0DjdZk#ji6Se4h1G7vXY=Sc*<* z4HhsgFJdX)zJJCouHU%1x0W2@F@Rhd^+*&fN`{OpgjnhM$gZ6~@02S%(r!<^qOnW9 zKaDC_BE@$1@bx2}|3f@svagy2!W6#(Zn|^l5}^VMmiNvjN9EjE@vDO^d1KJeP8K6| zHGTf7UO2H_L(6N%JsjL7}oZ*vx4+ikx1IqC&7x*|E4UnSyoV zaLEwVgcUU?NWb zck_4HCZsKmdGM@DgrO=CVn{SHuATO5_rbnIXshCKV#mE{OA4}Z4tG%hWr`LSxW38aZ5KVCiiqXyb2FYca$RiboXAt2*{Y^E@h&pGBWZ+i#zyOGSPYX>iq77Azj{$#9B!G{h`7;_Tw;d;!5ZtQHnCUjOp)M9 zoZHa?kX~Gsqv<9}x2|zPAM`f-%3|mJ^_2|4+BsM9s_p4a!kSJ~1Z!GekpSdC8^0r1 zJC~xgs6wGh4bu`K4Q?bN_e`*QKmO$-4D4t2Kzwy0v87kKulEEC1V^#kLIf#QyuJ{%>c=QUuDwUGq2k}@ZprneSeRk+)PB-2Tg)Co_}bYRxidC9XzV`JbLBE6;cyvr5lob2j!I(>K=kyNmzQ?Fq8dZ+cH z>eHqZXE2g|?rlw>y;l^cbNovehNOLv-eg5~qExPYovz@LO*(S@dKs%1g2 zAZ{zrY7XFagP-`Ve%*Ho6?ogJ4!W*EUm?6pPMP#}4DKg1&)wz0!?h*CgAFBBdZLxE zZCKk-2$s!8cWEfH86|79uk0TE(KNXepY4K1d9_I_w!ufri-cfR+nQ+Hom6`)Nt{-! z=VBDFr1A#AYJvvHj|p^Jnc+QcQ@i-^dISpATT{X3O0jm7V67{`Qo3Xz*GGbdcWdSS zA0C}sgN)JL@X-PV3j;R2I44E;_l{GZgT!az3xpVUMUuLi(HNrOE3E3bMAy^$!V2^*@zj?d@<_Z?NtrH5piseGb z`rtpI=bnMkeN$-~@IC~KcO9}5{K_YzqhKK$+jkrR=(-xY))iH- zCKxN-jNKW*+TcB?%A;fdkG{WSB`o_FiyfDuU^Vjk`i^kyeHLMU zEML$ijp_K?d7qjO>k|kT+^Pk~FaBoCSVFLBe`YM91sYbWjWC?jJUu+_!T7i`dRRt9 z>i$b1>k0lE>y>@T$W*x$*$$=2u#6)J{+$vbXnL?HwlIy;n%os*Yq+&;EMuBr$ILjg zCdQ3&-kLKQ6SN|k#lnN=xT?Kd;OA|X`b1id1QA|2h{ zgwAzL@he$$Hei7izXH5OX@aHRM6D7Ig`7|%BA{4Mq8-!M_ z6q6NO0FGXF`Jy|&JkwCYGV~rrB}Np{C^2na7pgzS%j$ZWBJ15ZUG+})+p8{O-+sJU^DxQ9&H>Y z^YLhu2))Oh5@Bjs4(w_Xeq{;PawRsPUqP`rYFjiVEcwp3-BGbnc4VQzq_ltS;QZm< z@n~~wvPTDPED3{^Dp(M&ELJuKBay83zI(mWtaw@g0V^`6-=S9ox958Y8v@q77_fvQ z!LClmuUyb5xZB&@um5QX*2J!uk2W>}y{2HPlsq2LOTya~R)xdM=3vR@P@>JtJKSir zEzDLL>D^YrnkX~6AooG9%&=mMQaBX9xSY$*XVY>k3QZA@YJm_Zj|Phh;8>Ih6_@{k zU`@BTg=0BDuo$4D64v{ZcF)?pL|9k@R=-ukQ1p5H%U6te77dC;8>td3Jhql#X^-a} zdHe{$5{hoCgec@DvIj1Ea{l8?Rb5isJ!`T(iS2Itlf4qq#nw)Q@Z^J^mJ@Np!ir_T z3TWshz%48#!O~GV(S_v)o5q3(7!rU~}WvH*B7^h++|!D1hb$sLRPAjULU zf<=&f2OqlhRCFg;%a_=I4=Xb^2ZCj7-+7Al=KU@F!xz%7U;Fy?ifOIILo0%)Q?V!* z(naXOv0SkB#_`P;&mUadzplDmJHJu_S)FU{74#~XEDC)3RXShPF|2M;qwNwF^!H%v zF<&Ai=2w?PqJDX!K(Kf>!%l|Le-(i=W@ZsOH?cxWG6N-8IO{mb$xY1gIqf2hve|{5 z%7c#6AYwXGu4WE*d2WpoVSK)G?^vWaFC$>B8%)bn2}iIl=`UWHPR|LIsu)%5B1A#C zYy>O_R*hj@j9FMrZ$$M|2*E;HQBu--Ov5Q1|J(%_1>}knp>bbXhdTs|7pfD%x(dPa zx%p%tmk9Fh2$p|l?ffU-Nf-Q$LS{x`*KyB&J02l>#Z!JFPGETgAX(hXT&4d>i7<37 z5#H8#FCgd^b|@@v*a;;~g=P)@fL!tdJ>EWf(3Hy&Gph2DhgJ)-Hu zTA!dBYXp%k#8V$^ZkimdWY8$-8{-XSRIz`-2w3*udO<=IBEFi*MDw0Va77yX9;qa$ z@hrDk_6$UR@f55D>mThrDT4J8U4)NsPnBW$n1)qbDuiH7BfnbzQhOF>M}A%e6Vfys z%mggZW9=?Lu=+dxg=~qC6s)xCguxv+=b8$Z;L!?~tFOzm??-j1sHU?2dJMs8{-NPl z3OkTc&p=oH!>Vk>w;r}{lpE(AR{0-x0GwB9gD-vXWR5sx?mL>L$JPZPs77|%!p>VJH@RW z!y^2(GrK~=a{LMceEnwiMu1>7s1=`YCMdym@8i~5{A@D>#8Anv=_Wv(VEqNZvO|+N zl4(psjMVVq-2%D@Ex!6V?mP^|5}&)6z-AA0laRf!nefb`t*{z1l-2>|!8*ZuzE0i z<3{#(pM1evukvbG{*u3cuBO4rB&{K^olr8c_*M63kA%FZTq6bmy}C1VlXkc5$Z z%Jp8r#@L|VSsHM~hrWNu)2pttakw|ouwUW8I!S?0PDaAwdD)zXgAI8fD8ZtN2PrZN zmQQO~UlZ+0PN1$8^F9V+D9e3^6OLi%SA%*E)(YfGPBoYrh)IIA`b>3qa4cQSC=PK) zn@Xt4B@<7hf(5~PH0oEW0wDy;JFowks;*>cH04GmRkD=xa$yP9`pR>^?hC;Z%>N^pm;=WO91%d4 z|FrNce`};7U2@S6)oH6uE=FKNVwH(Fj$WmoJCFM85zf3sSY)_kKOU^+;HY5QK2l+z zZ3Igf+UJckWV88kni4$Q6d?WsjJL*vH827e9xOi}As^rOEc~hi!CK}zVZ-TOk84N{ z69yE<+9?)z`wQhQO0beV3ns+*BE-tCv;c)Ia;7id+_8^7jkJB=F{@NQ0}Sf~Kypk@ zkc40z?db;=2$lf>>~`Whs0bDndE*Wr>RT)sf(2#y@aWj(W*Xb}s2FaMG72GFo+6c2b znxQ-Yk%1S=8KAdl9DU@1uWSb$$au$H$@s1k}fXqO9W zPmZv3$sHxMVJ9hLQHt}>;+^VQJxE!)Eq&}f{v@LFioU_j&_NZv^0S?VU}*_9GkP$` zuw;p6F4c^1{bqcRD8WLx@=Yd+dYDwT9IUUoTm!W{@@}2f;5}Ho`@0Y9TPMF-yfE4M^*Dk_yAD@%c$Io0?6@NMR&AWfPGs|$-=d~G06%k$#Lp)eJbPytn zL;(vARudmhtIFWHZK)8Z3D&llvmC*i;=+1aJy`lY;xOVy4wjC?R*(&OY9{v(Iu6AN zx02)@yoyz*h-GYebyA!nSiC?fGziv;n6dUIf@H%cM}%rQ?;q@o|Kx~g-h#xvWp2P- zc2AI~CgMD4=0s+UUtG*st?~$c#Wb9j&{UjF7h!6!0qzO4ZPY7-Lr1Wz*`0Grgu0jU z7!xc?{~>^5Q6h|rdtJfWXl67NoxP(EzRr3Vg0;kT!irtVGEpUz?+n3G9V?seju6Cf zzcj^)gosN?kgb`4Zi|J7=8489^Tp3RXktZAP#yH`gUlaH#JAsb@)r$)rQ5dx*6V9S zwXER5GN>2#;+sW%k6>dB^(y(9#@o7PKU|r|G#u~mHZxL8Bj{+jQWQ}-V5BzzlXd@% z5UiT=G<|iJeqN&4iu{S(R3&kB9OyR_OL^qPU?p8WQ(qzkZ*2>_2kY`2uRyP?f(0}P z>k}$hFf7wW=%UiqmThs;L9X#Bw^AH->qU`u>LWXkW$L5;)i8wD|y-E*_^vK6g=vg1sYH18M_;Ug7SM#R3`@Mseth7TfM7AImc=mQ)Rs;JUjx>1D3>8wYsy zoO|o}N0~**cGb(KuM#O+15qofw#~s1O=5d2Nq(o$+8fN4m>6FrR9+ z)>QeWeQ@HaRbq4XpwYvljb@^q8Q?wMs22y#pl3IvM+jD3?A~6DoW%AcD;JALP!YuC zOEoN8AS_Q`#Wwyp$EEJ{)Oba<1k4Jmd(IgQ3Xq0rN^&c1|FZsI-w<4Wu@?7|K{#2)>VLlRivXv=`3G_ z|M=*JkkOekRp8Jm5-Vhc9VX&D)qWS@EYXz|jb(qI*2}HS667)^gVg zn+%JXa9<|$ge7u}67AWeM#lQ-`}=db4W4azGZl2NI+sN%fW94f8ghlN9qjy!^(qDZ z#ea6T8-C>s?u$6*(m`0)59^uh6Qf{R!xWBp=?65GLLpcyK6FmCA9QC~uyws03D#u% z;tef0(y3MVU=1pQg>GevLy=<*>p585yQ*`qBF6!}sbX47%EPjWATqhAulK|2-r+8% zMh;e$46gqp9SPPnWpamL{h+_2e@*4NmXfN1h14E14*Hs01HtMI`AAGlu0lvTux5Y~ ztAfQ}t{tB_1#4Xcu_n7O?jP(9QLvy`)HPx|0pp%;h5rQq{L>m27q}+geMss;+^kJS z%f@9e5$97Z$(;w$XOcVb2-*l~uC}_aYP&-SRvP$0mociDS!RN10DQgeZ;yH z1Sm;=#I%G!vWhoXUOV(|s zCk7~TuDVbxo#qU?>L^~Z5mU-^^+5zI=v6-g76c0y*0nbVGax!e1&dfvh!7=0^eYk@ zrmA46=A#8djn0~{%)#7eljJ@;coDJ?)hj$$8?4WFA?Oz)-H)JP$>uG=LI6)GSi|VS zLItN0a-xUqN6GqLud7N|FR6It305R!pGAUI{>%}qB*l6qZe(5Y-s;>02EiKJ&VT|1 zt68|}_rO)0%JHw==x#u6b^Z0HS4t|nj$o~}7?=o@|GJ1ePcr#h{Ia#PY|WG$~M4EQ*j;D8(YBAOt}W5h%L?q!kFHMOg%b zA`R5gQPJ@sw%{93(C|%|xxR0HbLYO{t?dbGII+hwV|)BB_MAEQymKd6c!E_?*@F+h z{@}nK0Q6jiFvxjn{*x~0L9FB=h(e zG=LdDTAmNnjZmg0$mHtcCY~z&DXe$BZ@wObGEm z60E74ZzWixSQ|h1@U0KNL&9nq_EhzKoSXk}eP~Z~2uAP9yqh7f#H7P8QtfVE-=!l? zzKWUuk4T5gXE!u&Ejq7Y1+U!wOEC>$3AWW+C&0DAu6))g5Q6ov;5$9bC_*7v-~mz^ z4vzNL9y-A)DAwzbfJ+pzYTci691GLgVOhE>65w=Yhy><1(|S!ur7aKo<1!Fo8jt~o;oUw?-O3;v`r4eK@i%4Ln#e@0ZV z!el8g?Nx>k0=a4B%M=9*=xVde{#+vXb4v7kyKYn zHOs++WgECGG}=5QhIuV-at~}YzyD_v(uNcFzpSpgQCh*`{gux_7upF{l(5w1`{BKN zA5y?3w#Q;Y{uBJ`&kq0Nqiy%Z2d3?hmLywTLq{CIV|7_wvp49jX>wTHq*F5%ENd@vn;wS@bMoQ5Y&SEKi4 z-5KLS|B4VSsV@q{IvCUxEV?`Q2P6H>kj2>QIqh*)St{lT<9gs9TYP1uK=ermq4P{OYorJ$JtU z^FXnIUxm=%SMoL4;H>JL5mz3(q{8F(p9O zqzv=E|<#>DTl!kM-XeMW`i0IoX2_0s_(YD|_N9C|Dd0 z3dSa8l-}v6@19@%z`_D1_tmCYF(ur1v7Q9!X!kZQli^upd4k)&{r*%e-l>qaBoA9C$_Fu^-vf-WP(-gzTP^p0#;8+ z!(bE_dLX_O?3}d9X;dM1J|7AiLtLza^{fw3RZkg3!X(2|(IZ_VoJ?=&jc$p8rAQMj zm*np7OH@_Fe3}|Xxb74zEIS>KA_QIS|I%0aPJ{&eyO4%qJHbN25+eliloSTY(ZbZqXB~D9>3!U3jOGzMky_rFEvzV?(i4eDY=Nt=ug^Zft@_N_H%M{pkI3tnaFd$%O|M zyR?+XoNy~V_J-7D0BE7Q>qVIEJlR{1$4vK3Tu+Dg4Un<{U>UIb4yoPw>+6k(<{&%J*a<6LGB*~#@!oMJ?=-; z+XwO$l1UQeq0@4GWcq~WK{|XTC&3h6dk?apCm~o6t47QC;zVR|f?#bv|EfMyeYk;7 zau+EGg0)dyT7ngK+n@jZE&qUTzOD3XLYWYPHIqv2=xwi0o{Q~p=2fsZUnm}EG)BOp zUlG2w8o>%iSm_)gT+;pz1Q!EPcVY2QATOQ&D55iICzZ@5A6C^r+1D|?{Y0n za42`SHWkBoXq8hSSd)9Y!N4m=SJqaKU|kNyvIMI<85dUGh(%>CkH^K4 zr6kMa*MevLe*R1)AORJVFh=>Ph-XS>_0i5w+qQrE9qB3qUR6fG5|yvD`Jj;3?mnHO zw}t)_YxaQ)YA9g3*)ZD*%@7rWC0|#LYBHb|584GAq&ACYN6uyiG0UvG<5 zW4)*W0Si%ueDRusC1_PumKqBm7Bji$t=u776^Ssr5lY=&!5SwNtf_;4-z~us#JvOW z^~sOB`zNm5vkrX%^Y9-`Mu2%X7JRr>U>%!W;xoGT$If4y7uE7)v%uM!$MEhun~M9V zlV*n3p{yUqt-M+;-l|^G{c>@}%P@lF%54R}p;cnGzW&jqw$Dn0Tjd4C z!JbZ|^QiG^bi|DGPNXsj>Kzm5WlD*Vq*1A#CMnifCI%B7MhFt`wo&iz{ zK))JUO(oSTC-`B6%QK>o9Yq+zWet8eo!8i#*qB*%9{Ld}!I~(+Dn}fgo}NxY@&j-t zcg<-K)a`CJcJJM^HNr;D`qKOd@dsFC%yw(cSKoq*F?HJxrSu9L%2tAPc(z%` zUAAU8l&(H4mrg6?OYUNxSXjJWc<}c448fY4qlG01R>$q0Ls-WJPA|gXMgS=WD7*x% z&r>4g;5&2Ft~0!BKk0o~ zjTSnO#S`|WJkH<6B-M_conLR?zWq^w_bYr<;`Z$wPpZ;J`gzDz%I8&eLG%O*bZl=2 zQN0S$up$$8Tq9`DUeEHZ$tW%-HZV%ukEyEF_TXmgtq-GwRne)zR!kS|`F76`Mjv4X zwbG$r%BluBqg`AtYv036}K+ zaTwTHyXU-uwb=g8JF=K_$LdP4;a5JTVQdLjtlqZJD_E^puz0g=)abQ+slH>%l^41w z{|O2HPa$w?C6@ z>QeZsTsr0nWCjoB{%?Tgx2w?Xxzi&Kf<}SuM#xYm?{bem)VT;2?5fQTLTen3p!N89 zNPUnRdzxSw50%- z1Z#-OYKCm~PWF%XPZ;+k=Xv;#54CEMoPcA^vdjZJsIDd#nNghK73qkh)M)cq?gGKG zq_^T%;A|M`Cahbs5hSY;*LCqux$xDzl2NiXc`oV>eXyIAI^V&ADYz-wfgN{bgOykm2W%9i%#aYCz|7QNrAt-@}eBspkOhy z-3&0XZ3JVO0q|cazH>sbWFB7D{^e8lMqUEpo-}$p`1&O7zEsERi-JW)gDlho^-_IJ zt1=;C76i+BtyIBkVgqAOvPzibSkwvA3Kmf51bSsLp8Y|v6y&8M`>n^FzEn*$nhBvj zbZzDhp_Ba|8_N)`WV2^Je@00q2-ZXuEP0n9SO!kQ5`qPxps_t75Gs+fG|M;t0J`f~5q=5G?NWs(P<3UM&K|zB-;Q9h*#sp{yI0_bSk9JukM8%>pi_@_joEJ-^E4bEN zI6p5&|NXiwv-;?#-=CV-Z&izJ&kY>(?yDz!czf~J9mOh(gWK$l?4b>|r6^$y2X)EE zSNvFDSuh#ZzEs@E7w_?DRe2QRTJ{_8DeMMBl}uK!32lZCWB+`bN9}%&bH8U zi$zO>p+f~LESdSm7chRa4Zjjt{{*E9s)RVv;YXa~N)#*x1>&BCY|R#o3rnF{g7sfi zAy{;q-8Mn)DKDeq%J*xlOt5-emlN(TyuiSC-P;J3oQ#S^kky>P0RMYwTK{!t4q8>3 z;(vO#h|`)Aj8>dY0pe8}7~9K}!y{eNs}Q#N=D|%=JjUwIpgBS~F+!%bD3yT+r3VYu zi{l&y_u87hie!8NQ3h(|mm+XfzIV#6N)J}e+01&<8Y%knEqgf6xZ4^}|KqMuh64QScXU&j8AC1em*1YrM_2Xzk?X1Q^U zX@~@CTA+XqISgD zzorjVoKK^x%9aSZn-&Pa;=`Mq#X*DMLO9rLep4~KfmpCko!?$g4!m%OPSyhdFd?5) zzg&rM-dIuyR&4alw*rR6&wPZjmBN-9lRCk2fjW3~4N0rk#hnMg?iK_zD8Hga7*Mca zS>VdiEB_IKRkrTzZX6*J7Jy(Gj+MzCg=$eRTnta0mm>tl(|)_aj-s-?|Mvb*@0LRi zA6pi+Ck?eizRHGQ+3wEesY`mbrUVOWVh(O#Snv^n>2ge{9Fi8asl<51mr8G_cVVcm zuGX)y@SgJ08MUkG%WLp%ROD*RnOj}K31ysZwwXYBk~H? z6a~u{39Dw$)`LZjP|?!vd9N^I?Ws9;IsOyes6Jm~^j>(*Fgn0?)9?6R*%61^K(ID1 z%9Ri-?sBFEb}+dwluI8Oo$8ob#wH#!Yd-W&{!`mufA7Hu46>WJIx1yiGek@QKa&gxeXh4TK*5bd11c|<;6EYdvt~#YoAqK}n-UnZKBFKV zaSUyPU~L{cf<>s+ncd`FHO4oC8irBKx?e6{pl5Al8ZEIVBW;1@EbHN6C%K0QC0La< z4SE($0V|QC>jpK#fB+UnFGv?F_5W+|?Sb z(%+-T*c-*DjbM%Zh{8y=ls`>n6PvDJmdr^ zkZbqcUd?{!3RbTd?RyL)wB$-o3V-M+(95CKq`{2+?KnEg9g)j50uFAif~5vV z8u^bnPNCje71M*70}FojA0t>Drn|?%Z@zI36sz5f+!Ion(M;=r$< zScY76NUy5qW);DrIM~pze3fvZXX=G@%EYXyQG-IkvZbaLHV3CzI^(%}-NHH5n zKlUp0OOrd&MI)?%Lp8-93m%&J?HQ-yjH0#Sns_P2@)#$8Dpl;qlV*4!T}>!y(+!h= zg~gq=^l?0ZSFpM^o@Y{vm|tlBmtN1&y0c&jzpM!LP|!xO{#n7A`Vt`u76dCc8faE1m2N3Sfwi!}n6Q^W{-$lK`Q1e^s}uiiVb&jpkFt@|?zRY1WChB+NJ9$dSb@22ON0c($whm$0u9TLkp`3|26A!L zjt0cF4moRbvZ|9tn|fshEJhLXHS!LuACC6cR-Its!RnM^(fyg+QT1;dhDD3QriLZc zT%*EOC>TDT?TFLvZkN{&w*t7YI&om_-azP&3RchRSLVpZ4KR^ELa zDBdp~#Q@CgY-nK77(m#ss(%~1H){mTP%EFR$7_iMtDogn{dlQQVq4w`rB?!*t7Y2& z&FD^oU5z}uVrDwAgbU>=Qya7nci)AOUo2lDY_xCjGD+*+dD#+SnA>?3GD+@g)o2P> zaVTs($6ZGePViv0Dp;SNUY|};uqNJvW$l6pShOO9Vtu;1zsLKT;Xjb5I{z~EcvoF* zH*2*4UT2@owS9?Yut32&yrrfo6s!V)@qv@Zr*{X|)r=^eQLBv^uL?7Mc6}+5zgWt8 zHf#ZS$#IoDSn?p==U$%M^V}7%qz1*py)h$L07n%xOBos)8nl|*iRh(F0l^AlczivAa z%04&=`JtQhEC(Ig%{id7)Qd&MPgH=N~) zzB40M#~P4z*0~KT-|o4Wx%-j_2@tHbs@t)GrA!3)!Pd?R(%RFWpL_@wj@f3!AVf^B z<$`VdUwL^pI7U&hL?l0!a&t-Tx^oe0xX1&deV%Y?S&GroO?8Uc$Jy1F1(z;28_Uak{R((#@lSYW~_ zB6_(R+712zD?A~}~qgaTu6A14Xc#iJ$OIh=x9 zXJul`^ZGDZUH8iNR&4a>(#FQWF%c% zN|lDfkB(;qD{yNFmMplsAuBJm!?W7k@6M7O4x0|H`g@S6a)K~F5$a{wEy(z=x>v9Q z7x~&~5B*A~46#+LCx(n8+Be1mnYy2@yUOpjxiu4h-t{cYso&g$zg?j2+Q48DYaA7R z^&cQu2?Yy>ekV38o!I_4rcC%x5>~5>RrPF!VEsG8453#V(8Wa(NphuAZ@mKg1}=v$ z_phaXGPWxPxuIaWPJV46=CcW!6l6({ZIoak5$oMZ`;=wmFPN1%umL>PYr7}29hfRu z$s*yp{SiTdf@d+2X}q54pi;1^Z2+TT(G3WKm4tezfGkWby-H%_p!G=d{&?e%{vcSY zsPNm{fwiPzk@gkGIre|77Rf$B|+k9?w?1ks?^*8pCq!o(XEO z&{wv%|N8zO)YkK#wzi7^8it_@FBe+8{)eJ1+ptzDBz@*ZvCx%PCkLr#3vHJPU&5 zj99bjT(J$nyWa6=bxy04SLqT&ua#Q0TCbp2WVb)rbYOMkYzJ61wo`j0J&9NZ#j-pk zEhQU=mdv7H83kF{757f6#wmiOCNag0qgR3`SR2-M70ebE2e(HgNR6)Fv)6Lk5f7Z9z{L}y!}!x5Wk1Uvyg{R^ za(7x}|L3S28kX(#Opd=GGGOb$I<*8#aQKc8s?F1x`D#a&&Pu+82TMzY@GI)FhSJtO zSUogDea3qd+ps3^{0Fw>`Hy9x?d_g}bFedDuqv`70v@h?FFzTU8^f4x%Yh;1^{eQ&g}*)5wU?aIX-8{}TkuC|H-}cgKpA5V5Eewxi}} zYIVJR9C)N4^~iG#nkO-l^VI~o?g}omA#PYNFi9g7XuT<6tvM|B`|lZ6m_Jw42rn7H6&nR_ zuV8IZBlHAI@x^AbBv!1uO0RBB1t?gp1d9qG`v})Tjdxah=*-1`63o@pUs_BC-XXZ1 z2a3SVdUehC>n+o(6Rcuk_znb%&8rl3e;8MAr_&I8*>F;BcQj zancMS18jND?@3SRx(6?3z5dT3Ukbv|6NwGh^w9TV${Ur8#j2~Z3W%K}#jpGA;`uB_X+WMPW4M=N zTC%>CUD4vpgv!w683Jv{l}s~{jh%Y1c!0U~e_m+-SWVb>z^|&Vk;4I>f-e!CV!XPT zQLOti-MOfuu&&>+1WR4+@<~?~ckjXSV>Ws7e<*wC{4@W-y@lf_$y#Y%m}ecpwmW>~ z%9r0?OFHE(XU496{XPT>x~Gv0ck0{GF^4=^f*S5>Nl=pkzxy)6j4@0S|LRUp)F_vNQ)2+TY!W>Ab~_jK?6Mo4@wh@ywZf&pY?(?ribT5v(+CicoQTH=8XMJc2k@U5D3k6YjDS=5xK*VuxW^N>Ib&{@J|wnk~i#9f}3s< zJBM@}vxj;L(gdELq|M}mDV38%uu@Z4FtfkATV|?dL;I|z3Q;rd#xD-&6LBbe*c@gVSlt)<5~vi7 zGI+<8vN+m%knmNDnWa|)@y44e^uCg6pd{CTX9{f$1o(4q>nn=v5n$g=)&=ZtVtz~M zq{+N$Jc<Y&kJ&AGMFulQoern-_MGA@=stuW<8%1nUid6tRib?5U@y8NwdH zYMUWnbsyoXl;*$wiOD&Qd?47m#SoT(QiR%z@I%iEzW1ob#cuHB$HV@FKl(Z!+7|r? zmM01Owz$w*Z1Wvm4iN0bSS9|G;uMGLbNKkg^L=!GsHx(vts;)e2@1*K#0x>Nk|+5f zSm2ZW-1Gfr8w*lFn*b587RmSKhVCFm;wVVd?LX2q7A1;wJOpb?`yMleqzY{yQ7mCt z)sBTVrUfH{Dh(c)V|A;M1N5y7HU@R^RRN?1!N6A(|NGf^ zs%+`a4SiE|acE;bWsr`$?PK8U+cvH)pQe*-@@eA_?Enyw19Bemu^*{FeZ{;@OR#{q zBkweXV%QWs4JZ>Vnq|1b)<*ahY6$PlMvWX0_!WZDV>wk49ePB4*5Rh3$siqKvFBK2 zBP>kzLj>#5`OWA3-h&q|#WL{~W(^k5IzNYCy&>hE$C898V4VLvZfoci`4726s0504 z9p9O7S^mMLd3~^?gDqwaNzRQYdh1Cmi_ycWJ^0L4d{v7-ynju zN0$}+_{&F+K6`XyiNZ(Dwz`F1-*{2Ny#~t}Rq)KWQ%q^J3T;V3bzXo?j&{K(z#8}!8XHAE;s+yna!ISL;bq6}m^s7sIA+u4&v zdU*)evO=)tHF%F&cW4%XWtBm`ux(5L1Zu`j>|NNvoArXu$lD{14_;}%K^3ebatC4{ zWdqXlil`Hp*i^gxbkljA47pT6)J{9rAB;>Pbr#w0-@V`DNviAiok!Q4L<}VO!pkuB ztYE*o!bR^@XtGn=f9E_=PtO zHoh=#>ani#zh`h?f(4{v2GYaS(7gkasPO@kdfPP2g1qt?uk(_*L#MzW9; zAyO@FGo!AR+~RHy3-*B2jpr%0IkD0UxZClZ{k&MbOc5+e5#F=l-5m%>5JIrT7wffB zju4{tZ^8*4GBF_F$Y57~^dfJcP1vqT9>E$$kmYx`EK;mUi3kuo% zT5lPZ@;L;!m>N*4#z#)CRDb1(Ui<=xs9;NZ)sbKb57zIbOL^%T)?eN4&_lZL6RJXJ(c zx=Z4EEI$fqdIW3!lwn#*7ebM`1J3e>@-4L|BmA^&DMA8PGzV%c7?!|Z$cCa8C4vR` zrJvnhrSviptY+#Kzdrf?*v^C+#M(0siDA`2EoJ+=-*^^&T)ZBXPoO28qdP;4T-|T* z3S&O6MF_~UEqldAK-MN%Ga~r$!kujLwCS&CPjZMDrEAZ<@Y5qR&ozsj&~JBFTwG(W z6KgNuMWjXK1O3Rjq1q1_Z~M8*;U~k{XZ}=eui`TFPCcZKP^tFg4vSi`7>QLKoMtsUh)qKuuGs(T?rQOJMX;t2EM$?# zWeJ60IpL5rp;$KvGQr8=Bp=@^pjnE#_{#fE2EaP+BY36imN!T4ZlusmG(xwAAaw49 zYzV>XNhJp=N`SISe|UflVQQCt@be(c$y5&-d4e4=BLY&jrHGI{0jhGxwxjls@O{u_t!hX1xR?9sDuZTl$ zQud1{YAJT83mn3+p8xQ}kMC?`eyVv$fx0Xz9TQe6zjQjj+_SoO;pDDJ^NHNOB{n9Z zudNovkCA-^H`AwxW_{=&p2ej=uvQ%g77ZDxPp}YR-CkZV=EG{O^Bw}hLXCA?Bumhj zC}l&=dJM}oQ2#{Ekk_$i4ZDNzxD^NX4=b+#srmG#^e!nF(ecxBmW4pE0*PQ1v4&yw z=uXLD)SkHp$+~F`M~TAOY+`XXUPG}oQ<(3hLXhjk#$XHA>~@5B0Vu&j`0kHp(EqO^ zO>bmiO02e z;;Vi0lP~E_xL^P6Kl*hc{cDK{TJdqmqoKlotcDKZB7YS4578)JOAF+rAmC!*<0m+| zu&c7HsK~I!j9_J5-Ye5nEdE1ISr(R4(`>27Fp1!lx0$dX2-X2V4c#stzY;9|FY*|E zmC8M>BgHC7vrcmpp2gzvP1gw9xrbJNQLrUZ!Efkk%dgUZKZ3Q#?axQkD@ha@2~kOw zag`#$V#Ih>p_ST))|nNtE9C8Ee$|c+?lyQm-LE)p?Ys+IzZ6Y6;S+%0ik9UA5G)G( z`B)KdnV>%yWrDOEUQnCXaMY)mi=Gpqdn8Cc;)R$mzx(yp#>0C)sYXvYPqT%Y78ww} zH;q3xZ`iogRtXRD?t&Dl59nSW`}TOwavq&8*O&%$I6{6anyT5Zf3(X8Mh#pqdW<)^ zU^!YnRVGm%O0Ar)v-nEQ8g3|HG%WWlPVQJy2M+Xi{KsnOq$ExWzN-2+#HBt6Y(@lH zUJ)nuM&z>u%9IGGP3w1B-io(sPgzU3wX)QzYiOO$B{XqhrgG1kBCII)rxQITSbj7D zPVyjfDHc1-gVEI!DGL$K_I>nMgLVJzoY zB6}Cq*%m5v8#`!M(b=2EnTopQmACAu5VnJZ1z29(Vlp&ENX4oE6yivucH?5&5FTYB zcV^W?S9C22Tqn@0VNhV*q_!$mpjI@)*@R#5S^)V9ye_ADw$RPpG%J>aSd4*qk#68y z&6^u**k9wMD|4=nTw&M_V#QRf?*j-_cJ4`)YJ{bVYxVW#yZ$j5uK#5tcMv;xB65df zxn!NJ;Enk*IK^_sd+>L6Sv>WNLXHp*eZGM1-;iG$$6w?>*Si`zRsI8|A~=QzL`Xe` zJm9_}PAZp#_T8!zdbm!y8K{RBX`rM6S>uzXD@N!GL&Wahy-g`HZ`Rkzmjim?g&c-Tz({>roq3;p~d0_+<&*k_o2RhdrjyEBlL}Bo4s$>K;>rDi_@@^k=8P zJ0TMWes|uerwA1=D`*?AiL3+TM<=RbyU)44e4KnC;W!@yVpQJBlQhCAwgGkBt>swr zM+u!C$*SZF-C3M;->!MO@%c`(pkaA#u3fJT3uP&X1ws!?1F_3v6}5W(6J<-qIJ>T?pV18g0-htZ=4%ig9d{st!_+v^);1pE{t4QeN#HA#gbN_E zA50w3W7&wP)ak~i?9bpMQiD*drc_)Agg2aNDFjRE(@o1)q~i(~O7TLPmG>kBELL3W zu)jQXpS*>Vto{YW0(3Hj2`!GPPk%1M>&l8cgq9luh&~nebVOdhm z;-y0i(a8Qw%k}t$U>#`_S1)%RMDCfLXrwnGQl-0b7DZ%^1uq(yD{pPiu-uJ?tMYD6 z*pszEwglq62YWU(U~KA>ht&ps)9 zrFd0+uXgnEUM#QbW}`%~0RQ5FNkFlzDJT_6mI#)u>0><8C0j=epMhMBKNt?wNg1n2&Iy2#n{cX4FEQPdi{t0K%9KEuc5<1lOyyk2Qq)yj(!b0TZSju^$J~Ax!fVMqGnn$ zfn^yUt5rmJm461EsjO^T?1_V5TaDUP-=7|TWx)#)taN0G5cDn314zaN5ZhPu?~k|q z!uBobl|O7|mRkW%^L~~Wc#gs&Se&q~FK;~n{6CCfbp;;|x5grGX2_gG$`p3Zhr*`% zFu9n-t;iCB!)pz``}kO+HH*J;;}6GzUjbMIrgRac3At&p)^?SbW0a1aCs^j4pdu#- z0Fq*n305-0QHjav(LfoATU8JVR*G8?5#vyylelD|xVE-ZCJ0su`1n!1(ST-R)c?vs zFG9Zg!$?({o<2PC`Ulk5UBZ>?%&-bZSVph96rp%v-Ru&B7wzz-H@nRjdaaz@c0GQz zN6%@rpQ23>W&Xnf!+$#4hU>7pd`?hiamqyf{{F5aPRArDo}(OvAx)M!Sg6OtQ@996 zDm#+gXRUh$E3qnIO2856@lWr!m!|h3oY%WO(I|-A?J3B*0U=lz;ZaL46+KmqN;WiBUJ3y_Oh|>oDEMJKZzzWn*%b|Jueh5%Lt{dl3 zXHUX1ys_+ALY-Yv*PZG3!4ywLhVeQ>y^^T@+}fxFn3?v$3}zF=uPA;U>GOij(KI`t zRI%pKsr$eFN$Mktu#~Fk|NGEJuJN|kE3u>jnnOP$9+%lFj7pFRt7TwH2*q`JLK;nGW z^z(yPcV~2$oek;aLHl5hqrF)=+ISRXhT?h0Z?G$R5vIf$ zv=5j`sGMVe$le+0uPjel1PhU4=2omXisg7}5ba|K!0ddm9M7I50Y!8U<5mzXXs7Om z$etdXQYtcm`ff$RYjX1rZa-LI)#VM(PC7|sW9nkcDG(VqBaSTiUY6L6IPOy|? z-5ngjvZh$OkNb~$HUJ#uzre1zi`w>1g~CS+8ni){gyJ2De;g@7 zUD3VM)tQRd0hpjB2Z@n&(=M_JHyl;#2@QlZS;LwL7Df?ciY#iaQ ziy?{te;M5DC@}A%aDcFyj}eSS_VO z+sP0C0$HvNkV$j2C=-9eaC>tcke8jEv>e>4Qk%0EiQyRo#Iyw4C zGL_+7b4VPeni}Xo&>YEXCG)9PCbR0z#s@ytmzQr;36>uJe5G>u&JbZKmgTcN;qaW# zgGy1IwSKn@$Wg@HVC+E1?Q_$P^Qr2|8H(XKsnAQ8BJAn0-aSBwWso3N$5miiWC^LL z^N%94DH=?N^I=vGw1b4*;Abnz|3o4s2kJfGWY_w@A95mr$s(om#~U z6S+Gu90gd^rvYJ`M6{Z)CEE=<;Xrg0$g}(rlYHw20#$%*PB(!Ob%U7R`|-m-5bcnJ z(<}8+=l^t1*T3;M6%}T1-e`n{#vKusM6mi&toK48LNbJgvd<{J2uXKD4ET??>-^^` z*U*6v&{pBPx7*m)+1211L=DC)m~SliEVPYR;6+$k;3<(@*M#9Z4^oy&qWW5`CHYsX z)mp5FbZhBOMS@`6U%6+kMTi|*@ocX#`7X~L>74_z2LxPf%zOenrep;Q_3J9U0~)Sc^^@ zg86yK69(`z!M1bcCIy1E3>`-RsY=^vw^m%?t=3lNcjNt^C0~+!}&dFJI#On zqYWn!F(YNv+Gm-L17@ z8?g&wWU3~;dKy_tQWd;ESZH9Y6rN?;5x4en&7(u@&3P+|de6Q(RK{QO)KAl1Bh{-> z^Qr1O^GC4Y@%-qmp{DMNm`qq>*yGsZvk)K(k`pcx6=_Bq-cD~ld}aDtqNhhA{Z|N< z`C~o#esZqRhFYi4NDJmzAhR50Kl6bg8T*d!0Ye6Rs9!stq7(4$8SH9yg2l--fohLJ z28g_sTD{(O#?wk-&ehB>bY`vlwi8;|B%K^(^qdK&r@F{%ad2L_P@RqQX zDt|gi);QcMnv=eQA(llA{Vr+q(QD5^8|df2H(v6nQl!I;9Pa=6S28^d5iB!nResem zto8xkvD~0*+d+?CNeHXKra?*-1rschD7`5ENj7aYbZigMGFIq+ua+Bp_iT-%RMtk_Mp}NRDZ@qwcIm%V@a8~BrSI-a`S1Gr}g*+snnLpWd%v5iyw{> zEOm1aC&%SrxU7SMIt}G@csh6Ez(O!uo6x1c$(-v z8=EV|LNYFbEC?3ita$;g@}aZ30rnZqQHtdZYl`d&*X7x<#W=@@$wA%R7{pQ{5e1Q0 zu=~hUghIgRpKBv@;_R9LQ&MopZ9Z5w3bm?I;WU!XO5s^7r-B5+gl-=V1dOcPh#+gN zJ`i&JAojai^}}2~La(NvzC{G0E0MS_mP`MlYdz1?VdsC%I3sr)B-4V|d93RKKD+*ib5S23g!({;$9;eSeR z8M8H;i_JojzNg_Hy(wJ{<15GqS4lok@@CWG*wYi>^)2~u8OZ&@q)G^NAFQaoq6rXD z)b*%Ps%<{AMc(A}%4d1261gHfU~SO&f5X|`mDnQBYSW;f?n5P5}%aS)|h6_?MDUERa??@sQa#90KXwT^ngfeIC& zZ3!%^S#?XerwNj)dek_T;8!OImi-)`US2PX=aEP`FozEu42u|!e`Pa?fU#Voe0ns{ zA&y@;mk}(3G+2>+46IQBPBM{QkqN2<3+mTD)>FV06bE1b*r_Z{0e!c`lXdXH8d13q zMObjG?>_0Y?F6vkSRqA-$~_b-&k1foD9Rr%#DAn*j@8hKvTOL2wcFgF(JNJ<2Te|3 zxju&(yfIjy4~s-Pb@Y&#@={W_up+&yx}!6y*Ork6%at!hhFPsz2+DS)%QW3ctA6}S zu;P(JzI_O|@61#O$bBOhfTnGWwZm=#69$x51xSiwG=i0kU-3VA;MFjd36?H@c?ed@ zjqTObNkyT%`h2chibV=>Zy1(@?(5(8!y0p{=LK z8BL!G=I1Ng5$vuSTek749(NlmLa83 z?pZ=*tWCf-lDb&;D82}@AYG&iRlLOjj#c3zu@A=dyq!NQ7@a$Ze=77LaopnoB`!;nezMZ&{;qTf+5=-8R)-ix!WF-^O% z#Yv&7w-)z;6jOwppXp4f2x@PExIxiw(X5EF(1LHV^;pEXPxJ~JEK-CJhrZ$HLgQDA zc-lbMWW5y|0?9AdJ|sQ;b1tL(%d4b}IL(mb=me&0yS`@;9aV-?&UM5$fiDbX z(>;eqWd};IQhzd>IQuY~GAN;rwts+998{Cd6_v4uc8$Rr41%St=G*aEK^0S_S!rB# z?E0Bv&w^+H*)4Cp8U!*mv*eO!5IuzdVYV?GgAo_mN|`y5M4s4s{VCE@J350)GEdodBbaDZ>J@n!AuS7?)M> zz{G47fb9jd#gyk#TG$AVlHtt&P)1e4Y&T&6T#^D}`%jpwrfJ3zjO<>s1TLALC*Zl9 z!LI(_%3Z%CND(GPwK1Q6v4s^N-Sae`?pd6Kjf(rb%}1hHn_SPT(x8I~onh4_p;5ko zWB88@xr4G?tTW=^m@{ARQ&kl2^KDGQ`rVogRxFI7!}=A)uza!`k$P)I&R_Pz5@tfW z$D{1COs%vtSh*vF^^3hAtaSr4@!-6HN1f~lJBG1}l&=jhsJ;#dKk8`8K0OSuhEp6lv z(xF}lfuJaIExGIR+nGo@@u@SS=dCgg#E_7jHZd%> zV1+pMMe|Qwgo#$UvruE)HP>^i;|{+H`3NKiE6{@i|4G#|{71ZR4K^8Z*u>Z@DqCr~ zXN~yI(^`}0Yyct5r+bE{<@r?}mM8Z|q`Q>HmTr+uox*=&qO2WEQK3Xl8z zGm#o4ZDuyzb6?86&#^YC2=n|(g+^yR8LTQn`R-&0|FInZVFMnN=U3~{D`*fT&F^lO zg>;8~JCBeqXcf?KtQfRz!kqU@_YAAl(67iAdYj~Q3xvFfGY<6zrh6`j6e=>I+NM?V zuu|e4tJGH4m2}VdVx-LQPlB?PU=4=vlF@=P#&*(st({zK_?3L=)I@@oAL=N5y$mv{OYU5~owjC7|-j8zAjtiJ%_FuHaP# zJqyZV5L*`I{$JJIK-p%Ys!t>G25` z?!tHWBUyyK1AxM3h8Yz=rNSb-fLRL`wCcGMx%%;opC;fhwP5wsq}c!LVawskFa17omlj>11RKTl@D`++3kqB5w^(;Z|Ye)zd-#;kvA73gepWaYmWGN%g z6_zHij~z_D7rBOAeKe}~2KaG$+CPE;wkF!-MbmqCmvV7X>6bGvI=JM=^24=~Y z<$i%6XJ2G9b##~07}z0R`YO{%z65&GOfMFUSad&N7W*odiD9#_lD+2PzkrLgD=uEZ zKR5=5rKrifD z1-44iR5{vyVpr)+b##*sl_A3g;T%&VV#Gf!yfq^bA9{Q_4xoQch4ZtyaY2uR+5QB} zMzDtouILbjov4aS5h|^mVENim=0Byv_)7AlmZfz@ zoQs(5+1PhE-C>|KT-_Lp&;H}S-g>%PU9X&s1kSgAb4oud>^2g^Z}XG4tH&eLMbQjsJzj5RI71 z!v>Q=xeLWV2R(vl2_R01 zU-_)lDA`2zDrp7@Y|o4o+;A(i!53@v?_ZBWua_NNQjW|@3z)9a5UhBA#R4T(fi5o) zOV$Kbb*}x5;Hc3oMo9WH9$S1WjY_cQ7|QoBqzpopSy)%BV(}orLdDRA!3r=le5jOV z%EjlOLZ5%^wyZ}gSFCHlat~n=!kWUbU|5A1EF6UDAw&i%5v*Bo5JIuS5Bo6wW5Rz@ z;f+R?A)oFU+J);4Hm8|!d>I#*DWO+Nr)27jy-oBPl>0N*OgO+rImpNYcTW>!WM(ssjT6sMdlCd|1F=OSAB<> zjBxV&lVpU^hIP`>8Py=HoKi#Hex(%adB-V2qjhV++JGUlLVic#Ki~ZL23G`5n@@Mh zIj9t<-d60A=xA8n(-(TUUEq{9v0%0Q#2{-*uxQC-l?chgsQ?5kZ4E2e_NVe9@|w52 z2Cdz3_GvwEf@P6l@v@-JyFC@H+*SWD515e(7OdhcPDV{%mE0-mZ37$cbsFXFeaf@Ol%HXgyU{ECaln3bVfTkl-QTQ?Y@WyNff zV1=kFrB;pE>Rg`-09f{7jr#qUj}ci$Q0?J{D5HX435q+x=mbN6zQhqoYQbV#l=a`9IiE;3)o2Em#}AL|bbhcb5=C8!@i#Xk^-#Q$g&+jEE7pReMt?&8&m)Zn(tfq()IBX3 z-u5A&DwNDp4sN+lY*JS&pf_FqU+?4j@EdIChoSNZCDLQ{N0zRpu2nwTA;oiH>vL zgwLkqAI?kcP!}Qi?*_T|fB`WDz<)5uoTYd!I1FQ9Ovr&@R$qK@!5byr;6H<4bui1* z**K~?M~7HQQC)-u$N});g|us?4|0vcQe1rW6U-uXDdLwg9uJBsbs#kH$py=DC|v?D zAb4XH+plkxlmcU9B@fo{s}uc4rAg(~x2!7n|7v|IqS zUa)T1KIxt}Y~kV5H+yq4|6Y9j-x1y9WaAWu?~9&@C3AySYxFV*mdMBFv=!d$Si~OI z6lW0>UOD>&^Rs^%M{EXyWlpfTO5VJcGr-$4Tsi|JGVPx&=njN*fdj8SoWTxfzAB~ff@pldkg2fWb{{(_%^hbQn zYo2xa&RJf_Ve{!F_aY7i3Jj8^$M+Zp2>$rV&ueByU)N3^>tfjm1j}Tnbhte0aaa`8 zmSiCWOG$!m%}6q=h!IPC3%hH2kar&_TOiE4|SG6XD7Mrk=K zs-77P&L;};lw#-PRRSjkxrA~cBjG4QKiXjzJ&$>RqyaRv{6yGa;uesjmSFsT%0>pkN;R&D689QTu!sWUp2E9!)0Bz9GCidz4Uyn`_Su`; zW$zdDl(_aaID2-M3v$Pv3c+GL;O~0+MGJkbro>;uP>$6yGxnCs(HHp9Wn;4X>6{U1QR^TN`v+LCtQX~?UlF-ga|_XaG4|8LH|t4_Z;`=_)&?;>30ij)iW6 zg$MQaQikKdks)6yxG%p$W6&?UNNmm~1IA3uBh=MUch)PlMu=UDwCF4mu8 zcI+KjNkLXkPxjtX%-zR`;3BHRZMYU3JsS0q-BcMgc6_J=ebfYxLoL;=7-htnYRZ%H z^AAuKu_aCS42cDtHK?o-3)a+ex`}fC>Y0QWZf?Hclz!V1teflWn-|uF*S|^x%a`)x)!X2RQ=RI zT77MQiY0Zt&j`7b5lU|t6@bLi?ccp-4tW>dgU}#XdUpZNl82ZiGNAFx-zWwv(AN=tCi|Js^X9-hIn?|N-q5Ut0y3~I65M_-#R-_k+fXsTEL8B}{F_c9pr+8nrt?XYD$S+& zxM@{+wbWg)p>G-bLW;v-xupd?jUs~7M9(Q|8s=Vp{$)U2_2sgEtTwRLl6kRaDG6-2_<~L@W}lRhr=(d@m1+7Qr>`{FN!54DSCA7af+4C&Fvh>@;Wf%jNX}_=M*DImAA(w1;sA&Hm zPD5RUrOqg6s(>MKP}}Zgh)8Zv4=6B)5Fbzbo%v|{eHND^7cm5C?b#Hw;q8|N%7`4L z=bv0Deg3J4fho_*Gc1I#98SqM{3kA1Nymq@-7v^WrKCobQU4+J= zthHdlAFtWIy&hto^`hutaZ41moBv%k{)uMsmRrC)FC^#^F`T6q*9cxS#}2IKr$$T9Y5fBAJPWS*;hM(Z2@ zwf_rmoYEvESQ^D%ZhzcLsE$<3^#8JuPpJ)LkFos*y2d;=BdXHqE6+6es;lK5Em(`C z4DGD4$V*wnoHbok|ctE5W%X%yfq&J!%IUoqXM>Mr=yWF5Q6iKPsE>emNw z1)7x~^?hN?O$Y2&YiRoi5-b~^V3qf4<8cN%YQJV z4|s<@)`~csVA-f9#qqy?{q>fA|ATlIFbaR(6@yB+_G}Dp#7MpsEx&pi?!Q= z6&Q*Ljb0mDE5YJ|mn>N2n^f0Z97QmibZb0dTf{K>@jzb1?$m|q6F&@QouxD1q&8} zqsQI<^`1448Dm}9!2VA{85~lgx(#Dxb`VK3y+g8wPksJp8Yb2*%}HLFS>#uB5W<=z z6V~fVUm=LOH~(4}VIxlYLMrt~5#II**7IpJ;_Gg}!bKRz5o(58{7i@OA3U^BB8Zl0 zB56r?7~FtE(>-GYq7r^X+M&5*ZaQD#ZVMKxonW2bCg##wu*~?{gG`hP9S$t^! z4W=pDe;@pYmK#OLb%kJYl~RuUzc}Jf6t*4&)tXC}x zU)$iTHNK0`3MB5azW=&9?)P6l-hKqj8q@Pp_y5Vj_UHS*eA6l$(EpYA5OWmEq30S$ zRi;rU$I|x8^G}Z%sX^ScN&9=xe}}Uf2T@odSB?u<9dne$m?J7nHsl-pcyN}R zRf{+_!U>jBkOzcDz5PnCbY$zoMcSj5r}^1$f$+pzSV|EZHPOMsf(4SADKNH=p#2PJ zT(x*BXWnN@3FzADAjzmmv`dvw2D==}o%GpN+`gt9VdL?L6S-KlzW^Io$=x33c|N8& zVAc~kW-6L7{Mmd?p9KZ8?z>`e5tgrnjc@K7|NEakqP`lx-s5*x`u$tI&t^Ztunzf# z>Qc^^vO}|2qq1ZBzp`1&3a_$O=vb}L|HGqzq~kH!9#9Ri6%T&SS7oqNX>__}SXi(c zj^y?$C0H*kcN46ax-Q&{+I(ZKgSE@`4Z)f`U?GY&ph&Q|QWgTW+*L@ZJ1SYg z+ChLIj3Ts1u>2zutcRX!)rU>WZyYx$LZbs;q>Q5Jys45qB`F^sa&S`U--ffVbNH3? zx<@~zwEaAyO0d5%RgR4pw{1tB0|bk=L3%JTW)ZqDpVK*I(;Yh!!Fn9WnjISCZX=Vp z5s!UR9sc_-1Ah)+Fn&$_u_#5 z-;{O5=RXKa?o~I+9fI|O#$YWPbk#?H-|(wNR|jjA5StWP&?Wq=*%jH8VaCCI+(e469 z!5~<}(|sBflWkd9W<4P5k0}x?JIGyQy+GM{|77c9ZDQs2+etMh1+no6*7(nJJG#Qu z_=TxjNPM;9W$h2@&R*APAc(?@>{y{n4-y5U1c?VgNFX6P8YCKiBpRAThysBqk|&_y z9e4m!CV8H4)0*yi#87dXtk z{{R}UNT7woaU58l$=$$LO)_DvMxut%2kYt2U4#?D>TOugg7xrLPtBk_ST{~-8pd6O zx1n+$@6vW2U^O5t(Cu>kGl*ktClPxIfif7x_>(c;r>x*Xo$B&(Vj%z7!q1WyI}j2c zEaBl8J|G&UYynt9fEjPWGTAz-JOZ2jc9YKhq>yJ^ycAe7)gEEVbG!qrR+9oSxv#f` zGUTuE&BQT*><{#PjYa53RAhY17?bf^4X5y}D@@{HIl)&}!O7hU=j&LoRR6#$s;*qh zr&=voj6&}-ORN^oB@5QnFXWo^oLT_OV&G?a`_}?kwxsR4Cf@&}(zG)>{LM$p$A2sO zpJ~!EP1#t*`H#M@EL|#^C)@w6JpY&8e`1#MY+=EU=V`D`c~?h(bxP(w@nB)Xdi9~l zN;tWH9yl5jGed@GbU#|KUL_tZVm*)a(H#IQ&*UD*KL9WQDn@yK-6S+6yPl0y;}NYg zmB)re^{Qia>{nH!cOzyF$+?zK853vrwvhaFp{q|qSMqFGK z%UiIl;ucbC=N9|==Hl_+2EyG($3MFWE6sm;36Gs}$Ql!5HgEo){r2V#*LWZouqa*REYFYo2*nwQi8e|c3ERZXx!Hfm1Vjmm z2a8T&lu0Z?G{eizuwdbBwWU{5nyabA6EVLU)SoUarJL*t+C-5mWbKK>P8S+-Oz zgv6Ixo_o#sZaObZskn8C{u~vWTI%5SH_=~$2#FgO_^N}aVKZ>K-@WRjUnGPF>(&;t z)&8p6MtCDxu#me)1J*T-l+*P8aKaKKHUTSn7Q04ot90I+0?qCZyA2U0cPjdHa&w-v+HZ}5vZjBNN| z4T7IL!%RxRB@G`eFT3(k&+D%)k$=i=K@+~*pjk#%tak%nNv5_?NOrmo=+7&vpnv^c zgsMqg$hj8%>qD(og(bpLt=hH*#<6G^oBE=SUcdc2JGcLr7tNYht``YME$Xz`#SNqA zGE@J?>dk*yF@afSiUeJFu=xCMs=sPQ4)uk{$;jtq%}se498&|~p6_~mHONnZ^~=tAMWbn&|H?=csIv<*=d){M}ue;cqN`g#?u-3@|4hqQ~JgosNoDM(6pN$rBbF6{2-<@tTz>pK6yT<6TpJu~;*M;*X1 zPU?8*gpC})QpCS$FS@>+TPvRbYQf>~o$RJ6h<_9?8k3juDKd*jF1ogJMp~~yi2at=E5SL;61L3 z3Ep+jR*~{d%?@i!Km7?_5bOF**u~!bbCDC*X2lol@|DZ8fw|s%Oa_0CcxekoH-X?Z z0I5l^7-B)`kX1!`SIsxD!s21B4n?t2rVX}oqZymkoRXkUf&IS)GmEJ&W?NQRD$f)!hIaGaTmgLp;qUOV0JA!?iQibpGN0L zhS`e{$iFpFOj`6!wR-GKe+9L z^2fVH0GZ!=FTOBDItPeb0W)_>Ujfik%|Bst;`_jtk@$cbB_J)foLc9#BYv_8BUMLq zSuG2=xre8XO|AOtA(t?#kP$c_b69KIh_HYM^#1MV7e~&(=npRU{^pTeQ9>|kvF~7w z4j57`n#)v8eN=|Xjhi%PzPTcBePii@Adq?$yTBQ#6d|3SsGUVjsOzdL@>NPyAA;IZ zo&L6=-~20a<I|>v$id73zHsyFptL=RUA=^GNo=_v z0zB#TuN8CTC9r!nP&)?oC9$O(2dLam&%hWdG+x&IiG$eM+xSrKp{2zr%2!CgOM2?a zILee&91JhFM|J&lL95M2uAI2tErO$TQ$2AFbVkTVC`Z8Rz*M=x6z4q3#Ti#Itr2b2 z_1km!nAbo@z}cUv#bl7X&35$RXM(kdP*W7)B*PT#hh$?_jLel|kuCeNY#E&PHQ_G> zDR;SWcR`;tCaRIGJk~Got=qPh8rN=@gAPA<>kXJ3GBJIIJOs}9aQsZa1+?m3b<2El zu&c$*ncz0}8T)3upmU*8Gx%9&*k5#l+#fCdz>sG*UNMiM`#nAO=B#*V;r-unF_>1{ zF8mBn92I$rXFayYEzR-&=t-Ob_$AlTzk$uVjk>K>_1~!%1fG4Cn@0HwmMKWO#wr$R z!NlB?9Nv0xiMCxJd_jlQ^v#lTAzyDr40>m3R&Saxkv#Lx7P0?}nW=74!+g(*aKr(f z>)5TAuC=G%WZ|bZJk;mrUxM4lu>ta)n$?0e+S>*Avs-3`e+AUvZa1u5c3bkj5xjht zw93aUp2D_c4&3P~n|!-mJ2z9$`UYpoJPC?qnt;FRz1lVE>o)4Vu%y0m+mjEjfThSe z@QLOCK=0I}AS<~)T=63k`f@F<_~wEZ86Y&|AN4OFa69`1{;$|0z@8m+JRjQb*iH2O zdGCw&jR0GE0V;V$6UoGFwbIKK8JD2~5`Nzc7M~Hp6Jn53Z>eQ`_w)wUJK;Yxt4X)a zC=U0V`_i>u67YAWr0<%fnhcKHR%;rH?mcxaXK35(XvD-} z*d4t=Al^nGmfmI3cJHPPD!Z3_hwcR$`Z8N-|Ie4}5#PG}8l^&0ZZen8-d4$@|Q?X=c!C~a^0Ib??t;}Ui8$dfZv zY$q-tNiI>=q5T#mH_ICk8V93pq|N^+h(5Yan5U`X=Gc}R#FGK@a> zhxQ?az9qX>-kF1X&0IiQXX}n2tHp;f`B61Y^Xq}L)!YlHZvpm{_4$ch<&y-teIO&> z_OALAeIXccQmO-+aI-S@gIow-Hs*RO?ph$Eu$GN=(hu4^1wePKs0pn?2Rj)tGjH%Q ztD=%3u`Rx%s3L34pYaUjA$*1!T+hC{)JZec#UayN##NVPU7GyIKbo{7{k2(G9lT%D zR@}O!hj!W$*%&|lZFS8VTys)+Jx$P+gnom_s8ML+vGr42KD%xO#iLs@Qr2PVEXw%V zrt-hLLlk*b0!0Hr_2#&NpA)-zm)AY3@oL~(D%|tnX@mC{`Q97pket7ePXFTDoDFMU zdVpd%zVZiJC4dp z{n32>VzN2NtGUnlv7XkWcJeVKOT6$acdK{^trMQ8g&a*CYarjAL~W}5L2OD|-H#L~ zPcJSsngxavk_4}15vW)0xVn$b>Aq3Z8O1A>$e^>x@e@F<9C&;MH8=o(U9`}p1i_1v zsS^It&UW)&1p|uSo+Q%WR7GO^mT&|_O^aZ52i_CcukE1_2hcnATTsO=4}7dF8D>8) zp_end6n8I*!M}Ff7(>ZgyuO=l(m=SfBa$P`WiIF{hHNr0oD@lf=`7f;fz(niZaEkE z3+$_lOa?&a73_^Z1_6%8fA878nds~EA3ss=9E#>*KJej!?z1cPlv~}XI$YlBzLBd& zx@gx25IB$4QK550dhQN(M#E`ezC7kboa_c$;4Uo$OSeVM;jy4@lhq*?rI0`Us9hW+ z9U^)GeZzm&`V9}tFj)a)UCFSolLRU@L2*L}FsZM+{^b*TW<&AmM%ptg@kg`x*(x%W zz2=uIUkW)+UMpj9$x|61iE!_pxN36e*?SGicwepl-lsl{b8H-0(vQ}XSYZ7_>t^BcTQjpy8-#lInL>TeQb1_zyvK(4J4iaZKnM^@YhC>=k z9_l@oNSZK`3g5Jh@1wBb0zdn;c0zj>0pao|%$|XMrNVzxnD#|bp?9l>eeMR7n!HtX zlgFMNtcp2B;97U&N@nqX*uU|R_M9j3-M?Qx`+Nxvc6&1VF9N6{0dRPb);@YX9V*p? z%HRdH{Z3%WX4PjsxZweahgpGzs1#XdiRo^>LcGq1aYfyx{%t8m=c}Dp&=xy!cptcZ z_&AyhrH&3u?cpTn<1%{NOlX-CY*H=GdmfQK_&t(bH&%v7yteYHzD30BchL*<4=JD6mU5Z$sw2O^2XAdL~yNp9EYhFAAd!ew3Bl_5ECjMvKG{n ze-RJ<-6L7(XbT;AYo1)|@oWTr&{CTSebOjrH`E!u>NShKy8I{)$A^k--c->e@>nfz zIRst0{`c!8C;jv!bd2bJQ714piU%8A9&Q$oSZr;Ai2beN$mpAyC0yk>L#)8Ulk2@9 zIMIclu9;Gq%xZ^G8oe(`9O9mgGsgy`02FO9dg3Z6JR;cSGFnc-V}TCeid8SGE6*^> z15;afgpi~YbR^%lvz7D%)mo#*Ke>(Tfj$z|pR?%aj(L7}RmAOonibh9o3rM@Fy)i7 zSbP7z;y?wD$W_{=!U?`nnHEW6EcWxMHn{fNqIK|ON9B1Kj>WLSNk_C70$Q+qi+s>X zwV!_NYogNp|IPIqg#jy`-++R9X_OWh*t5*y?p1t9cWV(eBjb+l8ZGk#{G_MsYHoQF+{<4ls363vx7=r+H}rNBZTc?+m{vMb0k8RpLRi<6G5XtKOZ<=VjC`wK4O-}#$Bd1% zi!S^hF)(RX?P2H^mONgxKs!sDB4ynsQ?XlDiNuuYo!Ji^#_hC$=ZBP8snlF|`6q8u z^@?qnXf9c=!d#gzHtHVg&0bUV;TM>i+fKGyGzUjZj|HlHS?Xsw6%Y<{jr zi;TcQQ79!iZxf!IVr*$gWHbEvww)#Epj4IZ{d-mdSo(S*{7+k_TTEEPh@Cljp`#7% zY&vk+18A>dL0)UEbHYO#kI$j}*vUS82LGpXpzP}cI^j!$H2#amk?r^0S^Q}J6h%+; z^U_)G=og)R;c?`zoCBq)QeO--ylA_A2OyaP`O)JiBoZXqo9NSR=#NwXgiZhPX>K~A zK9e8LVB4q2<97}Tubiu@(T49os|<60l``}qbjX~PTNZ$zawIg?AN#!^Mj)%y=+MnW z(W+WO`rlpj-FDNsB(Tu+lXz#3neX;MH;Hyt&iSeT58QzN$Miu zQkF=T4C~^;{dv(X<@42r{tJjkjps98LZ^z@BMk5gnDcb=5+<*rZ>t!Y43fc4T|qZr zuK?F*#N3O>57KxO`@2%1o*#r27Z%4WVjs4b&k-ON`0B|H|85J8MXD*JVE-n1BO==>T^M@{nT_+Oggp3UD;Ju0-NT^D4!+x;;m*rH2H2z+(`H{AF; z4xL)QDBiRLap!`8jx|@Rdb@7$Uw|A}?B4|B$oZ#^odDV<7ut+KXbi9j}9ombk$#UU06!j9U*ulzped@hMaF68obl~5(Djm@=5l6#`3-*yZQrCHU&btYxh(# zrqnhEd(EF*4oQaf7>@>F?LGe~?Ccwk`}=wPL1}}3EatbK7=BVYQgA1k>O}gH(piu~ zS5Rh|4B~&?etCb)*cIhtD}Er4HEi_7dWfvU=AaSHJJW!BLf!$`1F#EPgns6S+4qc} zWvsbwnD|BuELKhcX~@PS??a%-x zQ7lIC$*ql!`&%$1rMS1zROu1{%x+a$M5?W z3&|`SvpbC6oql07vqVBKzO5eK3q--)rY0(FzC%_7&|@)AyCFv4aJBgxxb$HIf!D3& zTt+%XL0{q=0sg1yc^#F)h*keq+-|P5hqv)5mS5>Atw~(Stn5~Ix^iPascVuuX z1s|)l!*HTNBV*vLA9>14N_Y30oFfc=Ml3g(*Vfiu*|}88T+0y1tV7-b_pwh8&We+N z-BFpX$E+ra(q@Iug11NyK#%=nw;rnmwNUyfQ6Uy$WEm89SuoSm^T|HjqfH zrNL-{4_;Rli0L^4?=O2+Vt~POsUcSGiq|{#3cdI3de~+;`g@i-Z~wCtZj|<3wSH#R zM&94_HdMjoEt>9Y50?B`f<`^iukWANy3g-wG04Td+2_K_CjWyK^{xg9e)4@ubkKM z)&sj3@K@?GTh*G~S+MBH@Td)utch_Ca;C8`)9;Wm!pTr2Lu>2YoldJo=1?pzO z^+7-INjA5SmA6__S{cMg8<7i**R5BhJ+o_{;XPekmt}fQYi~^8q<97qV)$uPc-LcI z`@@#*`M%&kg^ps)l$W=P^Y|!}EAsV+>Uz>t7OL7rlD@uGycQvkj$g|vUT#s0K=cAO z8?8tDXn9w;z_E;K^5XB_#Ytmx3^6}zc}zZ69@7MUZy+&=frN`;PL9{|5vbHv8DixbVzfbH7nnhOv)Fk6%8dm5#=o3Fv;t(q=Xh`` zlwy_vw@Ry<2BMjj1{%_#Mm+~-kZ+WsY4cZD$PpGYK$jCTbcJB|IupCANcko!vwFPB z@6n$Zyw_E07J7}6USPK+{Ds*^*PGql1iNorZK|Z4nL94&eg|!w$L~LAM2HCVuNPso zt)1SJ#EDie8vuQwn56O(*XqFqN5GTEoEDeS*C?-q@(Yuh z&6{6}?$@DZ@HU0O;I;D^;CE2GBu=5{9cgUZ=O&u=`7tAPUL4thKc!eud;jZe7m>?6@l&6k5Q~6Ut;ysI1;T6bKX0n4eqzWoV zI5DKK2EP1>#@F)23;a7BN-ZvSzSr%`6$@R?qm2F*3sp~G3|t&BrA8Zli(e&qH2^Q< z?gd=e211@*cl^GIUJYGP+iS};*wH<#$iBBZ3fVGndwm!U!g+AZ06u8TQ2?dz>}ADy z#x@Ts6t~HEsY5d)KlJFd?jw83+>KUnaDYqe1ex_AHD7v0Oq`18jB!0bnvU0lhv_}_ zi{j(ln-$PhW}Xgl<{gHGkwGcDXY(wcmAtCM6347R4Kitz=l98NGx^v~*jA+P;sT#r zD8z>5xv39z(M28}E~z9j*`gdINb#S1{cdG94F2pcc3DL~HF&8J$lEFDze))hHpT)& z-te`PaKm5QGYs8DAj(UXP4L`({9P+q{83XXwD2bZiSl=x(f$A4^tlsIjDQXV?5-W7 zGI~umU05$-eeFJAU;`M~aX{kbUkv0rK^F#{5dTwpRNIN?_u?dvj(c2RV%gEH67hvz z{gXF8R#e_{-T#KBZWj&pc9{9Un?xBOxsB=I%w4Wcko?(N%&o=2F@Svzkb4M zBEC$Oc`ElkDA% zkcQM$WpWwGE9g@d6kTo0<0%;$JX1|J*{eQqLI)RTn!9@;^E?xFxBLNfK0~296Zqz4 zz4$NlzX3O19dg~F`CrVkK*2JAh0}V}_$DZ!oEso~Xi9wqFVEhVq$0eYh%mdPKr8oj}aJypCS0mE5&g@ zn6Jnln5givr*63*57I5}pc)CZVnIKZ79SF!y$qdz9DS82lrtAv1EJ}hYSzK)x4As? zSeTA67tJXRpI>Cmo<}~^eRNFGMgBvWyx-l{P@hY#kmGr|`P;IF;9oh)uRVi5c<0OX zowgD$4*L+3Ryj(k_rJ<(@XGs#sH{oTRS%Joj-Vf{PneYWNlIVp`uTwFs)ZIGHS9Ci zP+2EI0+GR2&Q*uC|H%}D2+GK%%o}(dPz$d-qRBPw- z5B8*W`Wrs$C}kFYqZkxS@B(riAluu+OwBaynaITX*f-jCyyen^~p+=?Se!I z&oFS9_B*dfttxqFy=eX@pzQ$yl$knDuAS8Sh4SdA`i#T|8U^uX8wh31X z#$YXd6XbsZxsB?8r8?6Xa07{v=Td)Z;E}@qoOPZrk6jxlYgF9pi(Ve7B=P=f-92{j zcumij$%gz0AbBxH_eqEq|Bdt|Iwq*xrCb()8S@4Bx49(pvrTB0#g#n5YChAM(|gC0 zsDc44lT8|^N7NAKDi;vkK6{MhY2x9)`>0*F&*z*sw)kko<)QVS_KxcM8W^kv(UX#3 zah}P$!@)?}OPhXFY%%|dt$19he1x4f<>k^L0~_#zdt6Ml+TCDzVzX5>X>~`1zWy?8 zHTD5|h9(Uto&!#}0AHmmBpTKQ)MC77FEj2(6VZMI-h|CM#tLr0o&m3e85NAZ3dk`J zqT^;%sOpyYsLBIrJv&lcM+ZAYSZFrD1s<4;%LB%tftACd?sYN@^|}Fq?LCd{#Idr& zUZ%Kj0z_cSlti2TwwT#pcw~wc=!c%Vnv&>xhm{o9)ZSMdbI7n!5alV?EDfp z3xAF`GFVQTgNM<5F?->04Qog=2*#X)v41aeZXF!$hN;ACP>q-U(0D|kb$6JKvTA<^ zY-qCqmi}5%KrgW!uVXeBA_iOfmHLn%k^jDg0iAC7W775E%iHZWY@zE6=1e8KXRAeH zLDI^@lWh`doO;w}?pi9mnQJQ^T5GFx6Xq@Gv*re>t`p9#`|+Xj9n$zW`CEu_IK@`a z$sPBFKaH$F8v!`ExPuI9KNNDu4VxE$9lV3*rZ*m*Ta@TwpWLSeJ|e-3c;FWvLXD=z zDskGe1F&L1V`}qc7qDluUW47W`T$sGe>xwZfHdQ0PR#O2J)c&?CZ0b}{gxw6{Z}kY z-08sz)$4DTJQ2~rpFf3X1)nJ-{=}(Z`_^fjxwnP`lG~jLq?m!t6pgL85Sm+Q@c4-n z(#ySGwX;VZ-ueCr!6gBb$z*%wimKwtP^K;htg+>_Hw{)xQ;P(9*)Pi_RYlbKJ(e># zx}w1AooUux5wk-M78k5NnfQ0r&0-NvxI#PUrfxh@0y}J@ct%xs?Zl&Tg&YsB#X**V zS2R#c@afSmNEI(+@ZN;4eL__M@DV>d>xyy3dm)X^z+Y>Nfo(zIVPz-WW>zCUW4%b3 zBH>sOR`U8}eO0Z${;$Eox82NNY?5a5T6xP^K-a+5CqnGuf_3Ojf{J*e1kfH`ly$2) zh`;exhfcyBvu6vLzcgv*$IJHaS|3>oz5D)pr?j9uD;TQ{Kk8K*8OlR-P(0$G`~cJ8 zy}OGzOZ&THb?598g7bL#(*J^(y$O;GS#AeDeIG|F-`PF5i{cO3fY|rH#6HScRcr`N zI-L=~Qm;L16hEJsrvy4YfU0ZgavIzM1&!(M>OsSL5zv4$2y6MuJ%B%B6nJtPmfNd4 z11khT_JF$$;C^TNi6Vk3v#ymOj>WC!B4&{?kj#0Rw(|}=xfSO?OAI7&^g|nyGF~)U z4@L3y)I8X;DeF%=i?VroEMn&2U&tQ*2IdI=R{(BD}nXFF}M88<+@xaNds&Uk5INzFQ3fWZ1ag-w}9OyeIx6 z0$ig8v?o3h?X5HQ&H0Ad1#q#My*~DE{M%)RQm=tGDt?7TVa#^}}xKKw; zq`jEAW|^IUG4f_%HDEZNm!ivV56)V8YLfkgbDx>_UygKnS->Mrs8+MH#`hAR5B z(nte(aC_T|%QF$DzVpzdt=An(O+9KcM+-69oI_Bedqy*PhK%BG-}Q2RlB6#qaoOQy z5&70rTwQQIbt3aY?$5=s?&jIVVD8s{yZWn?hwZ+Pf`n*JHkD^(^492uNe@x%J%PioC=aL@=sr@F2AQaiuuUUNjK$3?X-sfpA+=+mx>eN^>Wb$GC zj%5|mDoB190^0f03kxh=z}TSnwj98Hp4S%di+Mi)%t+7;fgI;Fl|lqi??7QtRhTG8 z$d~k{Q-uRiEDx8SdA2PKI>`HHzEDK&`ROu-f(L_O!?>*O_ZaF>tHvQ zye;rS<>6#lp$$^#q%uH6Wuy#i92`&eL80nj#lbpWv*#e-2pXci%N~c=|(YMh>DKb_jp!W8Bb=R^ z<8jSoc}VndspJt{os0N!h5$f{n%D`Tc<(c5i=w8{QEy??~dS^AA1|D z)!!5ViG7(?>qR)BiRrttFjxB=hjFFc&M5M4 zVyz^&5h|uCKx_YQ}~6#>c+3%z=GtU_4=UGmjW(71QN#^ZhbBvHdR-w*hw1LNJrWleYs%zgwhCS z`YM&s(rYL9o7gN)P=3ZsnK9C|@wpC*O9zh){h~0HAIsh0$%HCQ#*kH+6L>}?n+g_FMsAQLF*bBdCr;@J515hrr$EoAWE*3i z3c*(qVugH@g|)qQW%FB}Y|P#gvdW*xT=vs2RdPzao4 zBSbgz<+><@4>ECtt$pwMEa8E?lB&7LwC1NTo%8uAHO^j?gI)0EWZ0D7?q#p!YA#-_(85Htau1@4-R)ty7LKzV>PLP;U{c zsL1Yjj)aZA0!lV@#?J}1-Gh_3q>KKB)64hkaMro%K4Gb4z)v%)@^+&5u#fhuFM{`| zct#avHFcXzMy+ZovF3~YOe9YttAov|Q>9RT^JoqW5rH4!OASP^0qA}SMdTtf@#(LN zS#;JEx)OQzWgJaTM2O!EevRE0T!{pF(|`re8|$D{N>|@8K;RV}mpG2jTjQraFtwx! zSeE9kuHa3SvVZKZ=DdTtk;eD4P$M=NQ(`wPRz}p%K=36OJn_6%pY&ojj~HW?(-Hws zUz_Cm+`MlheQ$ik2+zf>hxe6!_fK*V7xL8Ni~|wyW!(8{J&*>% z8O_F;%>pwAKsH`#&E5m(;eWRn69Qruk6u2OdK?FwHWayFo+)+xWHF6-f^~V%k_@c5 zP1{!u_63DM3ZiFHY#hFTsPvl_zLonHIJFb|$R(%t)*(Yzi) zwyD3fN9wh7Bf$65YcnA_8vN2f;^JeA$Qmd^WgC(K8E@79X0=UJZL*3`G>?zW_UIbF z?EcioYN?(uFZgBvejnS?HT)dQEOfkS`Es`i^{fSUzjFCX^855{iG=SVysqOA7q**G0WSxd zuK4Utm+!`ollc8(wxW>-9wH!r9j5JC-iBxq(wQ`eBEH%7(vgwwCHgbM$}H4WnRFbr z<)OkO=ZDo9lwH+ZGOJ(3vKHU9KY6;YJA93Hlb2wQKo~u3=e*^OBmo#H#lTB}JK&?mIjG#hWNy-PI>CH5wCa}bhu))DDTcP(#O zsAP(fu}jQR>(*wX`l{=PuN@;I1(CaVX9z#Y5z2_Ybqg^wSld9g8NHep7CF0blY(+Q zyqP|ggP_EwEe!7x*R00kzoO?NSF`om38DN0QYf5P9JG@NSQt2IN&`j5g+0M$tN^1x zALOSd`stj(889^mCn0Z`-h{*Ob)bFt!8z0#Sj00iY0e%y0{Ryj&qih199qtQJV9eK zXpoQgH!mG*q`-)6&9mYFHXtgI_mHsc^>4mAe&O;K99$cPB!i$kD$}y@4~!*t1P0v* z%sH5?ONj2LRV^l%g_I>AZb}H^|4xn^(P%2Z0+m56ZT>B z9CJh;I(!*@S)R)Q-qvhXK&hk@)Rtpc0Tr|wko9aAOsN(@l%5=02GpPJ6;J{#_;UEa zz9YF2(_edlJ`U1=-<3tr95P(cT}xf-cJMpR-d)9*_Jw4OJq;6OCdOz7qpe>9<46!W zdnM#C5gXmF>4J0$x>=K?ui})Tu#EeII)qAVGI;VkmphYu9z=rje|bhrT5XEyBKSYI zR*!h8tL$;2eafO~fG@-EMA?8cE`##JIn>Ho`0tx* z%N$(HAusXVBz2_JE2!~j!OT4}xXs)dDA`?I*ui3D{ju@0zx>uxUOEHS{!*)F(iLaPOV)&juFeck_ z$3G|wSO4eD>*SThKxyw=VYU2r#^LStBRabZg-76Cem7J3ig--9wyXQw^3Jueh>a(= zL}TqE!3g+H00CsU(FQx6D!Q-z`|OFpxauYc? zPXC)hSJt0Of*9300LPuCkRLR9ndcR81~+m^KAOPx`WoafcSN4NEJE$&ZSoASFyMG3u6A&X?OyU9dTC{Ipu4S>WADyzk;b;Txj8`ezgrL%C%g6Mf**{ zMBhK{v3+PvbwQdv|J)N(TrmO86~Qizan|(Nq|y3PNT~ekhK;n`xv+tP@2-+xJ>*@X z`rF%bs(XI@raOZIOf)(a$O_F5P44Pz45aS%YUhHR3Nj3BpP?lNpqv?L&{hCCfHLC0 z*ac8W@fb*%?&TDeF?M+SXU9IYy(Z*ZH?$Gj16}|JQ-(=3R3CxN$!I4N0*gD%uIpkn z2>R~#Lu(1hNz}9N{oT>=Tvwr7N#(8=ONl=w)A=q%kVH*XK;_2KD@GpWOPC$ZY*<#*0cKM<%JB6Wp0~WYFtc|4(`d^Z5*}X-P}6hSGAXIPf;U)wIzk}+==)e z6BJ$lCxO{RqORhtEizID5m*<NqyFUmu68elN<+@{2nmmeJ#kt0Xd?vMLJCAsQ1WKH?I z-F+@>wpokbRZ*GsU-fUsLm8rHDnGwk7Fih!2KcJhs!FTL^f5ldE{K!EiT!K8>SrKh z0cGtEDoEL7b>Qk+AFIl?KBrG?aOxi43SD?OFEnu8x9UaKVj>rD7o}?;=hT&v`S(@J zM~R3oh2)>TAQ>mKT}mi&XOjn`i9ET057Z9;A-$;aoTYa_#o;(m6WF68O3GPShJ;LVELW!g!oCd~c*uZ?s>1;p_b_p$Y1l++ZasrhoNFd!zB-9TN z_E;&{1v<|mdcg012K)%c(}4`$uXvaaV3|a4aRsDbWYj$eRIYU;nuANzQ}QT0G?;|Y z6mnZ* zir)Ji{hqz8Iq6m}MIyUEyaKFOwv=Q^o{kd_M7tN)t4Qh;ioBs=29i|N;KFlpBkbQt z#5Gni)v`#({a6r*Ph{sW!oSEIN$m8PGi7JB<4LG4`Q*l~UrRT7^TCEt01xGN(fs~M zFtuz%ML(3&Fh?wiR^!_WH@J7JY7hGTpbuR|=;j>qHP)l1nCZj;Twst~HprKx4>DxLD z#As(1Jd#VMqp1?|KDt_BJp)eJsiOHgJonieOTLy+pSD~%@~om}=i~vJiM_giT%ePf zB!cbgA{7*&xBIL%4Ve@0fs-V{MF2kOq@Cq~&7MMsKL`jK&2p$qiV0AQ*owM_x?pz; zsIjv~1CSo*3p|*dbH;S39@xQv55SC9)qwD>APye*4;uW{!V!oCe6Oqckv%GNf1o;a zR&AZu_xKac(5zcyA3J9Up-&bfmrg;$n^Z(`>3P)~=%ly0J*bL9bBFP#fh;s3nAI#g zSK`fISqiMH_1;sv>QGhXN1yFq(qLBPWF>2?yZzQi+_SlPu)gOZ|bE1#7Qn8;s_8?}5k6D>WkQADykG>FqyG#&mk3s~nsM5f3V)3SwF3#L)lncE zD{ihAc#}I9tAW%UAxCU8zOE0rE2w@P?}2$b7Y>=c zvkS<%@S7R!6!2KtDp`Ytin}l zTF3vT7$E8j>W8&l(}iwhg>o!L7BG+x0QN0exH1@M05-&TziR^bG`6n3n*(ztKxy%K z@s>$xK-GVF=MVVZEn!$Qz!;~eJN>mApMgcZo)q(!`>ielrf8$CSB_y_c9{n z=evZZ4`aU?O`kY+wv`20e=t7HWcVatG(y{a$cqN2g00oh^;P!k$4`|Tr&*4-`^N27 ze!BDX6xX$M4p@ZVd2#)+qeeV~UJb7hL3Lu3eRdm@UOuW_nrizwQr(kJ{CA(mysG)b zBK2*3VOf0a49_d%<5+lm+}9gA%76G<4}c@kQoIjB6%Kd$u(0#(y&dRHqfG*5ISaLo zO|I0Tz3^wj842~#`p$!!cet)C-9kdIb(Q(3j6c;K!K+z4#a-E#4t?>>eDc{grU~BA zD;*qB)jJW7r`GQ~vwq|}n{g4%-z|8y?znuM!0SEotku7afO48%MKtI0ZVklT(0SiD zy4DP`y`lJl$2RtU3?ItRs8qzwVNI9teg(JXt0;(hmGxK0^qyupL0>~1X z7N$0=LK`tYdAd}uwd9?pdS`43JK-?xDY~CB(4jZl&eP?=n4~IAxwStNeW=KlpJJEp zG~#^;qHZTUZmu}$erXsVNb#10GrO&_Ezc&^zp7$VjN7zX=1v1SShS@Zs@d0;Sy|NKnRX5?ngNufhQE1bbCIj?#GSQY=IhoTRSZ=WXU}ONq=qx z!i7aoI(`-aPAfVV>T)g#k21v(=4JP`V+*L`%I7w34d2^nrjflpnXfmJE3bfb{(k|| z3N7^n_;}ebdAcSm$d~}Jo(lz2++JX!Q%bKFqd)>RZDz2?M1X$;e#Kj7XJoU+koaj6 zrJ`VfmwKIl>-S$jS1c&pil6M%-S`T?C_|w8sBplq{lnhwQvB}llT4{W*PC;7R9(Ld z+!*z8nT6~p@UO%#Bb~_|{^NLT{5SXi&pZAvn*YzI#Zx~yK8F4)P`su7k1$k|{i7^? z;g1^ZUs!hRpJ>$`?SB-d0`-m^_)qhn68|x=YOsO>SUh_H%J}?rZo*KTyNFzN&f!US zGC0Ms=~lOz6i~$CFq5OK9?&$Efp+=r9f>rG{DPEmkz|_5{5r8ta(!~|{ zo0oSIKjhO2Ryvz9|7q_GlAMNtDB67$pMnK7J2ouYvf?&uxiL&Z>ea7DBPX$E27(!8 z5?hw^EbDhiR$8ClJ&~Z`7eiSF;Xzm&@Go}5PdNtTPDeU-^4G}E)g1ymY9?9m!^<`r zURkg!`5n2!{A_J@^Rrhd3;u0;Z2sNt-&KFf{U4fgWdHy6`Dwxbg8J7>{mc0ib)f!J z|JnXgM4ISY*uRd>lSq|B5d2GXgVRmR5!zjEUbShi;!E82nHsm9jNyL`^cxHRCk+ zo#$9p@oTM&nV;0+4~r*w?BALE>)FJ6__yt{^D+5rasTh*e;fBd*;9$b`v0$hqhtT? zu9w$8>wofNK!v5v=yJ~6w>jwLuRfWczqhlWE|0sJf3^ExWrAyE}Q*TP;?9d;*R#cnDT4PQ|{{F=Yl-17`kdc@KCo&5OpP3Pg$6fgOQ zdd9L`p65sv$OeH8l@xz9>O}{)`HEUHprGC5ry6^7P~tJ~l(R zcxChMN@ipXGLO?yMTE7>O9D_=J=wmbq(_8;#kWmE2I4s7H-{`9vPJ&H30CM|c2|at z#jiP}Ba!Z@12qk|;P2S00wVS^t{`ey@ z^Vfo(?Mi-U=>>XCh{qN#`T;4cxo&O^is-#ULb(a?k*9uHt zBgmXTmG=goox)@+)j^@z@s-=YDg&LqD(YZ$NvwdSTorUc3$A-CnpEt@7teb%zrM>k z8Az3SEB-ROXg`0*$`bv-I7eNmk2S}uRKQ>6e_jKh{=*f9+ZKgx8}$i(PX!Tw9AlVX z{5HJsbx`Y-lkxb04SudLiP<<;KeDOjFZfL){xUz?%s(fqKl7(&r9yMD=fIx%wH?9# zPqzP^_y4;8DeBdtvo%BBHa2pyc)q3)%cP1Pw_Vb()| zV#)<_p8O^Ls;76K8vU|T<1g`-A3uPhApy|bU|1;60;+&JwjON3yXLQMNX(zHQ)hlQ z_>*SNn$7%GH}ES?_QW42?Bw4zI*0gIv&qYtEB^oOzn{NjPw(Uh{+RyX+5bOm5obO9 zhK2ss_4n(8DrVxwfQk8E9jw3<$U3PdiU{i#)3bk zMv{(3$?mr2Lz|!ED}H}#Y~ru*fm6Y!P~4O(emN1c3EBXHUu@u0!WsN*yZI?;+h{QH zuL81*U%pAy?0@?o!;c8TZ~Y^~oBKaU@KAmP9G&{V^bhU4R{uKmPgDQjivADwuZq*_ z1pDWqro-(&uT(=hT0tpK#pl#*{tugScM_!zShmGlj9Spg7efPFMe6xtp;qiwcDVg? zQKUhLLlB3YtC_(|^jI_|sb|0DzSRgE{PZaVK$XaV(wxDS(G*7n1OlqSk+@~z6!_Vz zg(484)&@rZV2IZ68B1d@#$*4Bx__yt``CqU7dmleV=kMyB{Cy?A1AnIeJqH}6ZtnlqzobO}MA~`5 zDR-%V(*G*!f8D76X~AK}{vp(9|3E#+{!y0gf9r2V_+_A43g1Puk&yJ_ z=WO%C$6J0T{(|3O7K6WJa;nUqSp*Ms;^+Nfb)5wMoc9}Uh5pK1zX<=fJvRSKw*US2 zKZPcL_Wy~$6%!SH>)+V_pFV%PzyI?nF8Mppg39`r`d@$2|GHEEJB5$Em`xIfQ*^TZ zix-{*pA2`||GwA$I}+B7{*Mpf$10&1R{Lr`UPt>A6?4k;1iy zU*$7at=Zf2&>($}5l{G=cd&)Bc#Qx@tpijl6+wa#X)-U~dV&RK)9V#$3;r1BcW}V& zn2PXqyHo%;_;U(y+Ne2*P>vg*$PNmWq{*-ByIeE)FBK2|TE%80S=?~qLtJP60@Y7A z?&hz7UyHv+6^`WJw#Vi_y8X|;|BYi^se}5z^zRb?r6~)3>7V&|IqM&0!%@M*!VLNs zGm{S0|NMANMMM9+N=>_2@3(*6Vf$YP+kbmrc@b%%6a62GTI8dEpGqSZtw}w6m6H-y zRn|D8i&aLbjvBcj55CwkT5irgqyz;QQyfFcqYLB=-}ay;_b~Z#z|R!vLD{P*FjP9D z(ol3vhYA|Rixep#ncS;XP(j@cTHMh8(LXfgIpApW zQ&s67`QN2~c^&oXQ~YP@e^YJSzZyfXQs8a&kCV&xANxn$&$R#Sf*;;K$N!u3f8BLDyZ07*qoM6N<$f;?`4c>n+a literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..375dac1 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,16788 @@ +{ + "name": "@cred/neopop-web", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@ampproject%2fremapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/cli": { + "version": "7.17.10", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcli/-/cli-7.17.10.tgz", + "integrity": "sha512-OygVO1M2J4yPMNOW9pb+I6kFGpQK77HmG44Oz3hg8xQIl5L/2zq+ZohwAdSaqYgVwM0SfmPHZHphH4wR8qzVYw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.8", + "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents.3", + "chokidar": "^3.4.0", + "commander": "^4.0.1", + "convert-source-map": "^1.1.0", + "fs-readdir-recursive": "^1.1.0", + "glob": "^7.0.0", + "make-dir": "^2.1.0", + "slash": "^2.0.0" + } + }, + "@babel/code-frame": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcode-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "dev": true, + "requires": { + "@babel/highlight": "^7.16.7" + } + }, + "@babel/compat-data": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcompat-data/-/compat-data-7.18.5.tgz", + "integrity": "sha512-BxhE40PVCBxVEJsSBhB6UWyAuqJRxGsAw8BdHMJ3AKGydcwuWW4kOO3HmqBQAdcq/OP+/DlTVxLvsCzRTnZuGg==", + "dev": true + }, + "@babel/core": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcore/-/core-7.18.5.tgz", + "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helpers": "^7.18.2", + "@babel/parser": "^7.18.5", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.5", + "@babel/types": "^7.18.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/eslint-parser": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2feslint-parser/-/eslint-parser-7.18.2.tgz", + "integrity": "sha512-oFQYkE8SuH14+uR51JVAmdqwKYXGRjEXx7s+WiagVjqQ+HPE+nnwyF2qlVG8evUsUHmPcA+6YXMEDbIhEyQc5A==", + "dev": true, + "requires": { + "eslint-scope": "^5.1.1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fgenerator/-/generator-7.18.2.tgz", + "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2", + "@jridgewell/gen-mapping": "^0.3.0", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fgen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz", + "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.20.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.0.tgz", + "integrity": "sha512-Kh8zTGR9de3J63e5nS0rQUdRs/kbtwoeQQ0sriS0lItjC96u8XXZN6lKpuyWd2coKSU13py/y+LTmThLuVX0Pg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.12.tgz", + "integrity": "sha512-b2aZrV4zvutr9AIa6/gA3wsZKRwTKYoDxYiFKcESS3Ug2GTXzwBEvMuuFLhCQpEnRXs1zng4ISAXSUxxKBIcxw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz", + "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "requires": { + "@babel/types": "^7.17.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-module-transforms": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-module-transforms/-/helper-module-transforms-7.18.0.tgz", + "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.0", + "@babel/types": "^7.18.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-plugin-utils/-/helper-plugin-utils-7.17.12.tgz", + "integrity": "sha512-JDkf04mqtN3y4iAbO1hv9U2ARpPyPL1zqyWs/2WG1pgSq9llHFjStX5jdxb84himgJm+8Ng+x0oiWF/nw/XQKA==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helper-replace-supers": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-replace-supers/-/helper-replace-supers-7.18.2.tgz", + "integrity": "sha512-XzAIyxx+vFnrOxiQrToSUOzUOn0e1J2Li40ntddek1Y69AXUTXoDJ40/D5RdjFu7s7qHiaeoTiempZcbuVXh2Q==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-simple-access": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-simple-access/-/helper-simple-access-7.18.2.tgz", + "integrity": "sha512-7LIrjYzndorDY88MycupkpQLKS1AFfsVRm2k/9PtKScSy5tZq0McZTj+DiMRynboZfIqOKvo03pmhTaUgiD6fQ==", + "dev": true, + "requires": { + "@babel/types": "^7.18.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.16.8", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + } + }, + "@babel/helpers": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelpers/-/helpers-7.18.2.tgz", + "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==", + "dev": true, + "requires": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.18.2", + "@babel/types": "^7.18.2" + } + }, + "@babel/highlight": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhighlight/-/highlight-7.17.12.tgz", + "integrity": "sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fparser/-/parser-7.18.5.tgz", + "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.17.12.tgz", + "integrity": "sha512-xCJQXl4EeQ3J9C4yOmpTrtVGmzpm2iSzyxbkZHw7UCnZBftHpF/hpII80uWVyVrc40ytIClHjgWGTG1g/yB+aw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.17.12.tgz", + "integrity": "sha512-/vt0hpIw0x4b6BLKUkwlvEoiGZYYLNZ96CzyHYPbtG2jZGz6LBe7/V+drYrc/d+ovrF9NBi0pmtvmNb/FsWtRQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.17.12" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.17.12.tgz", + "integrity": "sha512-RWVvqD1ooLKP6IqWTA5GyFVX2isGEgC5iFxKzfYOIy/QEFdxYyCybBDtIGjipHpb9bDWHzcqGqFakf+mVmBTdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-class-properties/-/plugin-proposal-class-properties-7.17.12.tgz", + "integrity": "sha512-U0mI9q8pW5Q9EaTHFPwSVusPMV/DV9Mm8p7csqROFLtIE9rBF5piLqyrBGigftALrBcsBGu4m38JneAe7ZDLXw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.0.tgz", + "integrity": "sha512-t+8LsRMMDE74c6sV7KShIw13sqbqd58tlqNrsWoWBTIMw7SVQ0cZ905wLNS/FBCy/3PyooRHLFFlfrUNyyz5lA==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-decorators": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-decorators/-/plugin-proposal-decorators-7.18.2.tgz", + "integrity": "sha512-kbDISufFOxeczi0v4NQP3p5kIeW6izn/6klfWBrIIdGZZe4UpHR+QU03FAoWjGGd9SUXAwbw2pup1kaL4OQsJQ==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/plugin-syntax-decorators": "^7.17.12", + "charcodes": "^0.2.0" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-default-from": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.17.12.tgz", + "integrity": "sha512-LpsTRw725eBAXXKUOnJJct+SEaOzwR78zahcLuripD2+dKc2Sj+8Q2DzA+GC/jOpOu/KlDXuxrzG214o1zTauQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-default-from": "^7.16.7" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.17.12.tgz", + "integrity": "sha512-j7Ye5EWdwoXOpRmo5QmRyHPsDIe6+u70ZYZrd7uz+ebPYFKfRcLcNu3Ro0vOlJ5zuv8rU7xa+GttNiRzX56snQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-json-strings/-/plugin-proposal-json-strings-7.17.12.tgz", + "integrity": "sha512-rKJ+rKBoXwLnIn7n6o6fulViHMrOThz99ybH+hKHcOZbnN14VuMnH9fo2eHE69C8pO4uX1Q7t2HYYIDmv8VYkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.17.12.tgz", + "integrity": "sha512-EqFo2s1Z5yy+JeJu7SFfbIUtToJTVlC61/C7WLKDntSw4Sz6JNAIfL7zQ74VvirxpjB5kz/kIx0gCcb+5OEo2Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.17.12.tgz", + "integrity": "sha512-ws/g3FSGVzv+VH86+QvgtuJL/kR67xaEIF2x0iPqdDfYW6ra6JF3lKVBkWynRLcNtIC1oCTfDRVxmm2mKzy+ag==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.0.tgz", + "integrity": "sha512-nbTv371eTrFabDfHLElkn9oyf9VG+VKK6WMzhY2o4eHKaG19BToD9947zzGMO6I/Irstx9d8CwX6njPNIAR/yw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.17.10", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.17.12" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.17.12.tgz", + "integrity": "sha512-7wigcOs/Z4YWlK7xxjkvaIw84vGhDv/P1dFGQap0nHkc8gFKY/r+hXc8Qzf5k1gY7CvGIcHqAnOagVKJJ1wVOQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-private-methods/-/plugin-proposal-private-methods-7.17.12.tgz", + "integrity": "sha512-SllXoxo19HmxhDWm3luPz+cPhtoTSKLJE9PXshsfrOzBqs60QP0r8OaJItrPhAj0d7mZMnNF0Y1UUggCDgMz1A==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.17.12.tgz", + "integrity": "sha512-/6BtVi57CJfrtDNKfK5b66ydK2J5pXUKBKSPD2G1whamMuEnZWgoOIfO8Vf9F/DoD4izBLD/Au4NMQfruzzykg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.17.12.tgz", + "integrity": "sha512-Wb9qLjXf3ZazqXA7IvI7ozqRIXIGPtSo+L5coFmEkhTQK18ao4UDDD0zdTGAarmbLj2urpRwrc6893cu5Bfh0A==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-decorators": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-decorators/-/plugin-syntax-decorators-7.17.12.tgz", + "integrity": "sha512-D1Hz0qtGTza8K2xGyEdVNCYLdVHukAcbQr4K3/s6r/esadyEriZovpJimQOpu8ju4/jV8dW/1xdaE0UpDroidw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-default-from": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-export-default-from/-/plugin-syntax-export-default-from-7.16.7.tgz", + "integrity": "sha512-4C3E4NsrLOgftKaTYTULhHsuQrGv3FHrBzOMDiS7UYKIpgGBkAdawg4h+EI8zPeK9M0fiIIh72hIwsI24K7MbA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-flow": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-flow/-/plugin-syntax-flow-7.17.12.tgz", + "integrity": "sha512-B8QIgBvkIG6G2jgsOHQUist7Sm0EBLDCx8sen072IwqNuzMegZNXrYnSv77cYzA8mLDZAfQYqsLIhimiP1s2HQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.17.12.tgz", + "integrity": "sha512-n/loy2zkq9ZEM8tEOwON9wTQSTNDTDEz6NujPtJGLU7qObzT1N4c4YZZf8E6ATB2AjNQg/Ib2AIpO03EZaCehw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-jsx/-/plugin-syntax-jsx-7.17.12.tgz", + "integrity": "sha512-spyY3E3AURfxh/RHtjx5j6hs8am5NbUBGfcZ2vB3uShSpZdQyXSf5rR5Mk76vbtlAZOelyVQ71Fg0x9SG4fsog==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-typescript/-/plugin-syntax-typescript-7.17.12.tgz", + "integrity": "sha512-TYY0SXFiO31YXtNg3HtFwNJHjLsAyIIhAhNWkQ5whPPS7HWUFlg9z0Ta4qAQNjQbP1wsSt/oKkmZ/4/WWdMUpw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.17.12.tgz", + "integrity": "sha512-PHln3CNi/49V+mza4xMwrg+WGYevSF1oaiXaC2EQfdp4HWlSjRsrDXWJiQBKpP7749u6vQ9mcry2uuFOv5CXvA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.17.12.tgz", + "integrity": "sha512-J8dbrWIOO3orDzir57NRsjg4uxucvhby0L/KZuGsWDj0g7twWK3g7JhJhOrXtuXiw8MeiSdJ3E0OW9H8LYEzLQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-remap-async-to-generator": "^7.16.8" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.18.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.4.tgz", + "integrity": "sha512-+Hq10ye+jlvLEogSOtq4mKvtk7qwcUQ1f0Mrueai866C82f844Yom2cttfJdMdqRLTxWpsbfbkIkOIfovyUQXw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.18.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-classes/-/plugin-transform-classes-7.18.4.tgz", + "integrity": "sha512-e42NSG2mlKWgxKUAD9EJJSkZxR67+wZqzNxLSpc51T8tRU5SLFHsPmgYR5yr7sdgX4u+iHA1C5VafJ6AyImV3A==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-replace-supers": "^7.18.2", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-computed-properties/-/plugin-transform-computed-properties-7.17.12.tgz", + "integrity": "sha512-a7XINeplB5cQUWMg1E/GI1tFz3LfK021IjV1rj1ypE+R7jHm+pIHmHl25VNkZxtx9uuYp7ThGk8fur1HHG7PgQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-destructuring/-/plugin-transform-destructuring-7.18.0.tgz", + "integrity": "sha512-Mo69klS79z6KEfrLg/1WkmVnB8javh75HX4pi2btjvlIoasuxilEyjtsQW6XPrubNd7AQy0MMaNIaQE4e7+PQw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.17.12.tgz", + "integrity": "sha512-EA5eYFUG6xeerdabina/xIoB95jJ17mAkR8ivx6ZSu9frKShBjpOGZPn511MTDTkiCO+zXnzNczvUM69YSf3Zw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-flow-strip-types": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.17.12.tgz", + "integrity": "sha512-g8cSNt+cHCpG/uunPQELdq/TeV3eg1OLJYwxypwHtAWo9+nErH3lQx9CSO2uI9lF74A0mR0t4KoMjs1snSgnTw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-flow": "^7.17.12" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.18.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-for-of/-/plugin-transform-for-of-7.18.1.tgz", + "integrity": "sha512-+TTB5XwvJ5hZbO8xvl2H4XaMDOAK57zF4miuC9qQJgysPNEAZZ9Z69rdF5LJkozGdZrjBIUAIyKUWRMmebI7vg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-literals/-/plugin-transform-literals-7.17.12.tgz", + "integrity": "sha512-8iRkvaTjJciWycPIZ9k9duu663FT7VrBdNqNgxnVXEFwOIp55JWcZd23VBRySYbnS3PwQ3rGiabJBBBGj5APmQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.0.tgz", + "integrity": "sha512-h8FjOlYmdZwl7Xm2Ug4iX2j7Qy63NANI+NQVWQzv6r25fqgg7k2dZl03p95kvqNclglHs4FZ+isv4p1uXMA+QA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.2.tgz", + "integrity": "sha512-f5A865gFPAJAEE0K7F/+nm5CmAE3y8AWlMBG9unu5j9+tk50UQVK0QS8RNxSp7MJf0wh97uYyLWt3Zvu71zyOQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-simple-access": "^7.18.2", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.18.5.tgz", + "integrity": "sha512-SEewrhPpcqMF1V7DhnEbhVJLrC+nnYfe1E0piZMZXBpxi9WvZqWGwpsk7JYP7wPWeqaBh4gyKlBhHJu3uz5g4Q==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.0.tgz", + "integrity": "sha512-d/zZ8I3BWli1tmROLxXLc9A6YXvGK8egMxHp+E/rRwMh1Kip0AP77VwZae3snEJ33iiWwvNv2+UIIhfalqhzZA==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.17.12.tgz", + "integrity": "sha512-vWoWFM5CKaTeHrdUJ/3SIOTRV+MBVGybOC9mhJkaprGNt5demMymDW24yC74avb915/mIRe3TgNb/d8idvnCRA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.17.12", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-new-target/-/plugin-transform-new-target-7.18.5.tgz", + "integrity": "sha512-TuRL5uGW4KXU6OsRj+mLp9BM7pO8e7SGNTEokQRRxHFkXYMFiy2jlKSZPFtI/mKORDzciH+hneskcSOp0gU8hg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-parameters/-/plugin-transform-parameters-7.17.12.tgz", + "integrity": "sha512-6qW4rWo1cyCdq1FkYri7AHpauchbGLXpdwnYsfxFb+KtddHENfsY5JZb35xUwkK5opOLcJ3BNd2l7PhRYGlwIA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz", + "integrity": "sha512-qgIg8BcZgd0G/Cz916D5+9kqX0c7nPZyXaP8R2tLNN5tkyIZdG5fEwBrxwplzSnjC1jvQmyMNVwUCZPcbGY7Pg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-react-jsx/-/plugin-transform-react-jsx-7.17.12.tgz", + "integrity": "sha512-Lcaw8bxd1DKht3thfD4A12dqo1X16he1Lm8rIv8sTwjAYNInRS1qHa9aJoqvzpscItXvftKDCfaEQzwoVyXpEQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-jsx": "^7.17.12", + "@babel/types": "^7.17.12" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.16.7.tgz", + "integrity": "sha512-RMvQWvpla+xy6MlBpPlrKZCMRs2AGiHOGHY3xRwl0pEeim348dDyxeH4xBsMPbIMhujeq7ihE702eM2Ew0Wo+A==", + "dev": true, + "requires": { + "@babel/plugin-transform-react-jsx": "^7.16.7" + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.0.tgz", + "integrity": "sha512-6+0IK6ouvqDn9bmEG7mEyF/pwlJXVj5lwydybpyyH3D0A7Hftk+NCTdYjnLNZksn261xaOV5ksmp20pQEmc2RQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-regenerator/-/plugin-transform-regenerator-7.18.0.tgz", + "integrity": "sha512-C8YdRw9uzx25HSIzwA7EM7YP0FhCe5wNvJbZzjVNHHPGVcDJ3Aie+qGYYdS1oVQgn+B3eAIJbWFLrJ4Jipv7nw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "regenerator-transform": "^0.15.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-reserved-words/-/plugin-transform-reserved-words-7.17.12.tgz", + "integrity": "sha512-1KYqwbJV3Co03NIi14uEHW8P50Md6KqFgt0FfpHdK6oyAHQVTosgPuPSiWud1HX0oYJ1hGRRlk0fP87jFpqXZA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-spread/-/plugin-transform-spread-7.17.12.tgz", + "integrity": "sha512-9pgmuQAtFi3lpNUstvG9nGfk9DkrdmWNp9KeKPFmuZCpEnxRzYlS8JgwPjYj+1AWDOSvoGN0H30p1cBOmT/Svg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-template-literals/-/plugin-transform-template-literals-7.18.2.tgz", + "integrity": "sha512-/cmuBVw9sZBGZVOMkpAEaVLwm4JmK2GZ1dFKOGGpMzEHWFmyZZ59lUU0PdRr8YNYeQdNzTDwuxP2X2gzydTc9g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.17.12.tgz", + "integrity": "sha512-Q8y+Jp7ZdtSPXCThB6zjQ74N3lj0f6TDh1Hnf5B+sYlzQ8i5Pjp8gW0My79iekSpT4WnI06blqP6DT0OmaXXmw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.18.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-typescript/-/plugin-transform-typescript-7.18.4.tgz", + "integrity": "sha512-l4vHuSLUajptpHNEOUDEGsnpl9pfRLsN1XUoDQDD/YBuXTM+v37SHGS+c6n4jdcZy96QtuUuSvZYMLSSsjH8Mw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.0", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/plugin-syntax-typescript": "^7.17.12" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + } + }, + "@babel/preset-env": { + "version": "7.18.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fpreset-env/-/preset-env-7.18.2.tgz", + "integrity": "sha512-PfpdxotV6afmXMU47S08F9ZKIm2bJIQ0YbAAtDfIENX7G1NUAXigLREh69CWDjtgUy7dYn7bsMzkgdtAlmS68Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.10", + "@babel/helper-compilation-targets": "^7.18.2", + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.17.12", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-async-generator-functions": "^7.17.12", + "@babel/plugin-proposal-class-properties": "^7.17.12", + "@babel/plugin-proposal-class-static-block": "^7.18.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.17.12", + "@babel/plugin-proposal-json-strings": "^7.17.12", + "@babel/plugin-proposal-logical-assignment-operators": "^7.17.12", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.17.12", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.18.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.17.12", + "@babel/plugin-proposal-private-methods": "^7.17.12", + "@babel/plugin-proposal-private-property-in-object": "^7.17.12", + "@babel/plugin-proposal-unicode-property-regex": "^7.17.12", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.17.12", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@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-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.17.12", + "@babel/plugin-transform-async-to-generator": "^7.17.12", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.17.12", + "@babel/plugin-transform-classes": "^7.17.12", + "@babel/plugin-transform-computed-properties": "^7.17.12", + "@babel/plugin-transform-destructuring": "^7.18.0", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.17.12", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.18.1", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.17.12", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.18.0", + "@babel/plugin-transform-modules-commonjs": "^7.18.2", + "@babel/plugin-transform-modules-systemjs": "^7.18.0", + "@babel/plugin-transform-modules-umd": "^7.18.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.17.12", + "@babel/plugin-transform-new-target": "^7.17.12", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.17.12", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.18.0", + "@babel/plugin-transform-reserved-words": "^7.17.12", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.17.12", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.18.2", + "@babel/plugin-transform-typeof-symbol": "^7.17.12", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.2", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@babel/preset-flow": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fpreset-flow/-/preset-flow-7.17.12.tgz", + "integrity": "sha512-7QDz7k4uiaBdu7N89VKjUn807pJRXmdirQu0KyR9LXnQrr5Jt41eIMKTS7ljej+H29erwmMrwq9Io9mJHLI3Lw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-transform-flow-strip-types": "^7.17.12" + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fpreset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-react": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fpreset-react/-/preset-react-7.17.12.tgz", + "integrity": "sha512-h5U+rwreXtZaRBEQhW1hOJLMq8XNJBQ/9oymXiCXTuT/0uOwpbT0gUt+sXeOqoXBgNuUKI7TaObVwoEyWkpFgA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-transform-react-display-name": "^7.16.7", + "@babel/plugin-transform-react-jsx": "^7.17.12", + "@babel/plugin-transform-react-jsx-development": "^7.16.7", + "@babel/plugin-transform-react-pure-annotations": "^7.16.7" + } + }, + "@babel/preset-typescript": { + "version": "7.17.12", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fpreset-typescript/-/preset-typescript-7.17.12.tgz", + "integrity": "sha512-S1ViF8W2QwAKUGJXxP9NAfNaqGDdEBJKpYkxHf5Yy2C4NPPzXGeR3Lhk7G8xJaaLcFTRfNjVbtbVtm8Gb0mqvg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.17.12", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-transform-typescript": "^7.17.12" + } + }, + "@babel/register": { + "version": "7.17.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fregister/-/register-7.17.7.tgz", + "integrity": "sha512-fg56SwvXRifootQEDQAu1mKdjh5uthPzdO0N6t358FktfL4XjAVXuH58ULoiW8mesxiOgNIrxiImqEwv0+hRRA==", + "dev": true, + "requires": { + "clone-deep": "^4.0.1", + "find-cache-dir": "^2.0.0", + "make-dir": "^2.1.0", + "pirates": "^4.0.5", + "source-map-support": "^0.5.16" + } + }, + "@babel/runtime": { + "version": "7.18.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fruntime/-/runtime-7.18.3.tgz", + "integrity": "sha512-38Y8f7YUhce/K7RMwTp7m0uCumpv9hZkitCbBClqQIow1qSbCvGkcegKOXpEWCQLfWmevgRiWokZ1GkpfhbZug==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/runtime-corejs3": { + "version": "7.18.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fruntime-corejs3/-/runtime-corejs3-7.18.3.tgz", + "integrity": "sha512-l4ddFwrc9rnR+EJsHsh+TJ4A35YqQz/UqcjtlX2ov53hlJYG5CxtQmNZxyajwDVmCxwy++rtvGU5HazCK4W41Q==", + "dev": true, + "requires": { + "core-js-pure": "^3.20.2", + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.16.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2ftemplate/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + } + }, + "@babel/traverse": { + "version": "7.18.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2ftraverse/-/traverse-7.18.5.tgz", + "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.18.2", + "@babel/helper-environment-visitor": "^7.18.2", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.18.5", + "@babel/types": "^7.18.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.18.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2ftypes/-/types-7.18.4.tgz", + "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + } + }, + "@base2/pretty-print-object": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@base2%2fpretty-print-object/-/pretty-print-object-1.0.1.tgz", + "integrity": "sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==", + "dev": true + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@bcoe%2fv8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@cnakazawa%2fwatch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "dev": true, + "requires": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + } + }, + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@colors%2fcolors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true + }, + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@discoveryjs%2fjson-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "dev": true + }, + "@emotion/is-prop-valid": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@emotion%2fis-prop-valid/-/is-prop-valid-1.1.3.tgz", + "integrity": "sha512-RFg04p6C+1uO19uG8N+vqanzKqiM9eeV1LDOG3bmkYmuOj7NbKNlFC/4EZq5gnwAIlcC/jOT24f8Td0iax2SXA==", + "dev": true, + "requires": { + "@emotion/memoize": "^0.7.4" + } + }, + "@emotion/memoize": { + "version": "0.7.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@emotion%2fmemoize/-/memoize-0.7.5.tgz", + "integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==", + "dev": true + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@emotion%2fstylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==", + "dev": true + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@emotion%2funitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", + "dev": true + }, + "@eslint/eslintrc": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@eslint%2feslintrc/-/eslintrc-1.3.0.tgz", + "integrity": "sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.3.2", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "argparse": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "globals": { + "version": "13.15.0", + "resolved": "https://npm-registry.infra.dreamplug.net/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@gar%2fpromisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true + }, + "@humanwhocodes/config-array": { + "version": "0.9.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@humanwhocodes%2fconfig-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@humanwhocodes%2fobject-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@istanbuljs%2fload-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "requires": { + "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": { + "version": "0.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@istanbuljs%2fschema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@jest/transform": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@jest%2ftransform/-/transform-26.6.2.tgz", + "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "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": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jest/types": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@jest%2ftypes/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fgen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fresolve-uri/-/resolve-uri-3.0.7.tgz", + "integrity": "sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fset-array/-/set-array-1.1.1.tgz", + "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fsource-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fgen-mapping/-/gen-mapping-0.3.1.tgz", + "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.13", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2fsourcemap-codec/-/sourcemap-codec-1.4.13.tgz", + "integrity": "sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.13", + "resolved": "https://npm-registry.infra.dreamplug.net/@jridgewell%2ftrace-mapping/-/trace-mapping-0.3.13.tgz", + "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/@mdx-js%2fmdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "dev": true, + "requires": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcore/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/@mdx-js%2freact/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "dev": true + }, + "@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/@mdx-js%2futil/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", + "dev": true + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@mrmlnc%2freaddir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nicolo-ribaudo/chokidar-2": { + "version": "2.1.8-no-fsevents.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@nicolo-ribaudo%2fchokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz", + "integrity": "sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==", + "dev": true, + "optional": true + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@nodelib%2ffs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@nodelib%2ffs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + } + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@nodelib%2ffs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://npm-registry.infra.dreamplug.net/@nodelib%2ffs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@npmcli%2ffs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dev": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + }, + "dependencies": { + "semver": { + "version": "7.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@npmcli%2fmove-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "dev": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "@pmmmwh/react-refresh-webpack-plugin": { + "version": "0.5.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@pmmmwh%2freact-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz", + "integrity": "sha512-bcKCAzF0DV2IIROp9ZHkRJa6O4jy7NlnHdWL3GmcUxYWNjLXkK5kfELELwEfSP5hXPfVL/qOGMAROuMQb9GG8Q==", + "dev": true, + "requires": { + "ansi-html-community": "^0.0.8", + "common-path-prefix": "^3.0.0", + "core-js-pure": "^3.8.1", + "error-stack-parser": "^2.0.6", + "find-up": "^5.0.0", + "html-entities": "^2.1.0", + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "@react-spring/animated": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2fanimated/-/animated-9.4.5.tgz", + "integrity": "sha512-KWqrtvJSMx6Fj9nMJkhTwM9r6LIriExDRV6YHZV9HKQsaolUFppgkOXpC+rsL1JEtEvKv6EkLLmSqHTnuYjiIA==", + "requires": { + "@react-spring/shared": "~9.4.5", + "@react-spring/types": "~9.4.5" + } + }, + "@react-spring/core": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2fcore/-/core-9.4.5.tgz", + "integrity": "sha512-83u3FzfQmGMJFwZLAJSwF24/ZJctwUkWtyPD7KYtNagrFeQKUH1I05ZuhmCmqW+2w1KDW1SFWQ43RawqfXKiiQ==", + "requires": { + "@react-spring/animated": "~9.4.5", + "@react-spring/rafz": "~9.4.5", + "@react-spring/shared": "~9.4.5", + "@react-spring/types": "~9.4.5" + } + }, + "@react-spring/rafz": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2frafz/-/rafz-9.4.5.tgz", + "integrity": "sha512-swGsutMwvnoyTRxvqhfJBtGM8Ipx6ks0RkIpNX9F/U7XmyPvBMGd3GgX/mqxZUpdlsuI1zr/jiYw+GXZxAlLcQ==" + }, + "@react-spring/shared": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2fshared/-/shared-9.4.5.tgz", + "integrity": "sha512-JhMh3nFKsqyag0KM5IIM8BQANGscTdd0mMv3BXsUiMZrcjQTskyfnv5qxEeGWbJGGar52qr5kHuBHtCjQOzniA==", + "requires": { + "@react-spring/rafz": "~9.4.5", + "@react-spring/types": "~9.4.5" + } + }, + "@react-spring/types": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2ftypes/-/types-9.4.5.tgz", + "integrity": "sha512-mpRIamoHwql0ogxEUh9yr4TP0xU5CWyZxVQeccGkHHF8kPMErtDXJlxyo0lj+telRF35XNihtPTWoflqtyARmg==" + }, + "@react-spring/web": { + "version": "9.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@react-spring%2fweb/-/web-9.4.5.tgz", + "integrity": "sha512-NGAkOtKmOzDEctL7MzRlQGv24sRce++0xAY7KlcxmeVkR7LRSGkoXHaIfm9ObzxPMcPHQYQhf3+X9jepIFNHQA==", + "requires": { + "@react-spring/animated": "~9.4.5", + "@react-spring/core": "~9.4.5", + "@react-spring/shared": "~9.4.5", + "@react-spring/types": "~9.4.5" + } + }, + "@rollup/plugin-alias": { + "version": "3.1.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fplugin-alias/-/plugin-alias-3.1.9.tgz", + "integrity": "sha512-QI5fsEvm9bDzt32k39wpOwZhVzRcL5ydcffUHMyLVaVaLeC70I8TJZ17F1z1eMoLu4E/UOcH9BWVkKpIKdrfiw==", + "dev": true, + "requires": { + "slash": "^3.0.0" + }, + "dependencies": { + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + } + } + }, + "@rollup/plugin-babel": { + "version": "5.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fplugin-babel/-/plugin-babel-5.3.1.tgz", + "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.10.4", + "@rollup/pluginutils": "^3.1.0" + } + }, + "@rollup/plugin-commonjs": { + "version": "22.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fplugin-commonjs/-/plugin-commonjs-22.0.0.tgz", + "integrity": "sha512-Ktvf2j+bAO+30awhbYoCaXpBcyPmJbaEUYClQns/+6SNCYFURbvBiNbWgHITEsIgDDWCDUclWRKEuf8cwZCFoQ==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "dependencies": { + "estree-walker": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + } + } + }, + "@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fplugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, + "@rollup/plugin-typescript": { + "version": "8.3.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fplugin-typescript/-/plugin-typescript-8.3.3.tgz", + "integrity": "sha512-55L9SyiYu3r/JtqdjhwcwaECXP7JeJ9h1Sg1VWRJKIutla2MdZQodTgcCNybXLMCnqpNLEhS2vGENww98L1npg==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "resolve": "^1.17.0" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@rollup%2fpluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + } + }, + "@storybook/addon-actions": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-actions/-/addon-actions-6.5.9.tgz", + "integrity": "sha512-wDYm3M1bN+zcYZV3Q24M03b/P8DDpvj1oSoY6VLlxDAi56h8qZB/voeIS2I6vWXOB79C5tbwljYNQO0GsufS0g==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "fast-deep-equal": "^3.1.3", + "global": "^4.4.0", + "lodash": "^4.17.21", + "polished": "^4.2.2", + "prop-types": "^15.7.2", + "react-inspector": "^5.1.0", + "regenerator-runtime": "^0.13.7", + "telejson": "^6.0.8", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2", + "uuid-browser": "^3.1.0" + } + }, + "@storybook/addon-backgrounds": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-backgrounds/-/addon-backgrounds-6.5.9.tgz", + "integrity": "sha512-9k+GiY5aiANLOct34ar29jqgdi5ZpCqpZ86zPH0GsEC6ifH6nzP4trLU0vFUe260XDCvB4g8YaI7JZKPhozERg==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "global": "^4.4.0", + "memoizerific": "^1.11.3", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/addon-controls": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-controls/-/addon-controls-6.5.9.tgz", + "integrity": "sha512-VvjkgK32bGURKyWU2No6Q2B0RQZjLZk8D3neVNCnrWxwrl1G82StegxjRPn/UZm9+MZVPvTvI46nj1VdgOktnw==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/node-logger": "6.5.9", + "@storybook/store": "6.5.9", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "lodash": "^4.17.21", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/addon-docs": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-docs/-/addon-docs-6.5.9.tgz", + "integrity": "sha512-9lwOZyiOJFUgGd9ADVfcgpels5o0XOXqGMeVLuzT1160nopbZjNjo/3+YLJ0pyHRPpMJ4rmq2+vxRQR6PVRgPg==", + "dev": true, + "requires": { + "@babel/plugin-transform-react-jsx": "^7.12.12", + "@babel/preset-env": "^7.12.11", + "@jest/transform": "^26.6.2", + "@mdx-js/react": "^1.6.22", + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/docs-tools": "6.5.9", + "@storybook/mdx1-csf": "^0.0.1", + "@storybook/node-logger": "6.5.9", + "@storybook/postinstall": "6.5.9", + "@storybook/preview-web": "6.5.9", + "@storybook/source-loader": "6.5.9", + "@storybook/store": "6.5.9", + "@storybook/theming": "6.5.9", + "babel-loader": "^8.0.0", + "core-js": "^3.8.2", + "fast-deep-equal": "^3.1.3", + "global": "^4.4.0", + "lodash": "^4.17.21", + "regenerator-runtime": "^0.13.7", + "remark-external-links": "^8.0.0", + "remark-slug": "^6.0.0", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/addon-essentials": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-essentials/-/addon-essentials-6.5.9.tgz", + "integrity": "sha512-V9ThjKQsde4A2Es20pLFBsn0MWx2KCJuoTcTsANP4JDcbvEmj8UjbDWbs8jAU+yzJT5r+CI6NoWmQudv12ZOgw==", + "dev": true, + "requires": { + "@storybook/addon-actions": "6.5.9", + "@storybook/addon-backgrounds": "6.5.9", + "@storybook/addon-controls": "6.5.9", + "@storybook/addon-docs": "6.5.9", + "@storybook/addon-measure": "6.5.9", + "@storybook/addon-outline": "6.5.9", + "@storybook/addon-toolbars": "6.5.9", + "@storybook/addon-viewport": "6.5.9", + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/node-logger": "6.5.9", + "core-js": "^3.8.2", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/addon-links": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-links/-/addon-links-6.5.9.tgz", + "integrity": "sha512-4BYC7pkxL3NLRnEgTA9jpIkObQKril+XFj1WtmY/lngF90vvK0Kc/TtvTA2/5tSgrHfxEuPevIdxMIyLJ4ejWQ==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/router": "6.5.9", + "@types/qs": "^6.9.5", + "core-js": "^3.8.2", + "global": "^4.4.0", + "prop-types": "^15.7.2", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/addon-measure": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-measure/-/addon-measure-6.5.9.tgz", + "integrity": "sha512-0aA22wD0CIEUccsEbWkckCOXOwr4VffofMH1ToVCOeqBoyLOMB0gxFubESeprqM54CWsYh2DN1uujgD6508cwA==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "core-js": "^3.8.2", + "global": "^4.4.0" + } + }, + "@storybook/addon-outline": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-outline/-/addon-outline-6.5.9.tgz", + "integrity": "sha512-oJ1DK3BDJr6aTlZc9axfOxV1oDkZO7hOohgUQDaKO1RZrSpyQsx2ViK2X6p/W7JhFJHKh7rv+nGCaVlLz3YIZA==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "core-js": "^3.8.2", + "global": "^4.4.0", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/addon-toolbars": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-toolbars/-/addon-toolbars-6.5.9.tgz", + "integrity": "sha512-6JFQNHYVZUwp17p5rppc+iQJ2QOIWPTF+ni1GMMThjc84mzXs2+899Sf1aPFTvrFJTklmT+bPX6x4aUTouVa1w==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/addon-viewport": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddon-viewport/-/addon-viewport-6.5.9.tgz", + "integrity": "sha512-thKS+iw6M7ueDQQ7M66STZ5rgtJKliAcIX6UCopo0Ffh4RaRYmX6MCjqtvBKk8joyXUvm9SpWQemJD9uBQrjgw==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "global": "^4.4.0", + "memoizerific": "^1.11.3", + "prop-types": "^15.7.2", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/addons": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2faddons/-/addons-6.5.9.tgz", + "integrity": "sha512-adwdiXg+mntfPocLc1KXjZXyLgGk7Aac699Fwe+OUYPEC5tW347Rm/kFatcE556d42o5czcRiq3ZSIGWnm9ieQ==", + "dev": true, + "requires": { + "@storybook/api": "6.5.9", + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/router": "6.5.9", + "@storybook/theming": "6.5.9", + "@types/webpack-env": "^1.16.0", + "core-js": "^3.8.2", + "global": "^4.4.0", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/api": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fapi/-/api-6.5.9.tgz", + "integrity": "sha512-9ylztnty4Y+ALU/ehW3BML9czjCAFsWvrwuCi6UgcwNjswwjSX3VRLhfD1KT3pl16ho//95LgZ0LnSwROCcPOA==", + "dev": true, + "requires": { + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/router": "6.5.9", + "@storybook/semver": "^7.3.2", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "fast-deep-equal": "^3.1.3", + "global": "^4.4.0", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3", + "regenerator-runtime": "^0.13.7", + "store2": "^2.12.0", + "telejson": "^6.0.8", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + }, + "dependencies": { + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + } + } + } + }, + "@storybook/builder-webpack4": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fbuilder-webpack4/-/builder-webpack4-6.5.9.tgz", + "integrity": "sha512-YOeA4++9uRZ8Hog1wC60yjaxBOiI1FRQNtax7b9E7g+kP8UlSCPCGcv4gls9hFmzbzTOPfQTWnToA9Oa6jzRVw==", + "dev": true, + "requires": { + "@babel/core": "^7.12.10", + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/channel-postmessage": "6.5.9", + "@storybook/channels": "6.5.9", + "@storybook/client-api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/node-logger": "6.5.9", + "@storybook/preview-web": "6.5.9", + "@storybook/router": "6.5.9", + "@storybook/semver": "^7.3.2", + "@storybook/store": "6.5.9", + "@storybook/theming": "6.5.9", + "@storybook/ui": "6.5.9", + "@types/node": "^14.0.10 || ^16.0.0", + "@types/webpack": "^4.41.26", + "autoprefixer": "^9.8.6", + "babel-loader": "^8.0.0", + "case-sensitive-paths-webpack-plugin": "^2.3.0", + "core-js": "^3.8.2", + "css-loader": "^3.6.0", + "file-loader": "^6.2.0", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^4.1.6", + "glob": "^7.1.6", + "glob-promise": "^3.4.0", + "global": "^4.4.0", + "html-webpack-plugin": "^4.0.0", + "pnp-webpack-plugin": "1.6.4", + "postcss": "^7.0.36", + "postcss-flexbugs-fixes": "^4.2.1", + "postcss-loader": "^4.2.0", + "raw-loader": "^4.0.2", + "stable": "^0.1.8", + "style-loader": "^1.3.0", + "terser-webpack-plugin": "^4.2.3", + "ts-dedent": "^2.0.0", + "url-loader": "^4.1.1", + "util-deprecate": "^1.0.2", + "webpack": "4", + "webpack-dev-middleware": "^3.7.3", + "webpack-filter-warnings-plugin": "^1.2.1", + "webpack-hot-middleware": "^2.25.1", + "webpack-virtual-modules": "^0.2.2" + }, + "dependencies": { + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + } + } + }, + "@types/node": { + "version": "16.11.41", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-16.11.41.tgz", + "integrity": "sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ==", + "dev": true + }, + "acorn": { + "version": "8.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "requires": { + "@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" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "commander": { + "version": "2.20.3", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "dependencies": { + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + } + } + }, + "fork-ts-checker-webpack-plugin": { + "version": "4.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz", + "integrity": "sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "chalk": "^2.4.1", + "micromatch": "^3.1.10", + "minimatch": "^3.0.4", + "semver": "^5.6.0", + "tapable": "^1.0.0", + "worker-rpc": "^0.1.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + } + } + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "serialize-javascript": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "terser": { + "version": "5.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "4.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", + "dev": true, + "requires": { + "cacache": "^15.0.5", + "find-cache-dir": "^3.3.1", + "jest-worker": "^26.5.0", + "p-limit": "^3.0.2", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", + "source-map": "^0.6.1", + "terser": "^5.3.4", + "webpack-sources": "^1.4.3" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "@storybook/channel-postmessage": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fchannel-postmessage/-/channel-postmessage-6.5.9.tgz", + "integrity": "sha512-pX/0R8UW7ezBhCrafRaL20OvMRcmESYvQQCDgjqSzJyHkcG51GOhsd6Ge93eJ6QvRMm9+w0Zs93N2VKjVtz0Qw==", + "dev": true, + "requires": { + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "core-js": "^3.8.2", + "global": "^4.4.0", + "qs": "^6.10.0", + "telejson": "^6.0.8" + } + }, + "@storybook/channel-websocket": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fchannel-websocket/-/channel-websocket-6.5.9.tgz", + "integrity": "sha512-xtHvSNwuOhkgALwVshKWsoFhDmuvcosdYfxcfFGEiYKXIu46tRS5ZXmpmgEC/0JAVkVoFj5nL8bV7IY5np6oaA==", + "dev": true, + "requires": { + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "core-js": "^3.8.2", + "global": "^4.4.0", + "telejson": "^6.0.8" + } + }, + "@storybook/channels": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fchannels/-/channels-6.5.9.tgz", + "integrity": "sha512-FvGA35nV38UPXWOl9ERapFTJaxwSTamQ339s2Ev7E9riyRG+GRkgTWzf5kECJgS1PAYKd/7m/RqKJT9BVv6A5g==", + "dev": true, + "requires": { + "core-js": "^3.8.2", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/client-api": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fclient-api/-/client-api-6.5.9.tgz", + "integrity": "sha512-pc7JKJoWLesixUKvG2nV36HukUuYoGRyAgD3PpIV7qSBS4JixqZ3VAHFUtqV1UzfOSQTovLSl4a0rIRnpie6gA==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/channel-postmessage": "6.5.9", + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/store": "6.5.9", + "@types/qs": "^6.9.5", + "@types/webpack-env": "^1.16.0", + "core-js": "^3.8.2", + "fast-deep-equal": "^3.1.3", + "global": "^4.4.0", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7", + "store2": "^2.12.0", + "synchronous-promise": "^2.0.15", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/client-logger": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fclient-logger/-/client-logger-6.5.9.tgz", + "integrity": "sha512-DOHL6p0uiDd3gV/Sb2FR+Vh6OiPrrf8BrA06uvXWsMRIIvEEvnparxv9EvPg7FlmUX0T3nq7d3juwjx4F8Wbcg==", + "dev": true, + "requires": { + "core-js": "^3.8.2", + "global": "^4.4.0" + } + }, + "@storybook/components": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcomponents/-/components-6.5.9.tgz", + "integrity": "sha512-BhfX980O9zn/1J4FNMeDo8ZvL1m5Ml3T4HRpfYmEBnf8oW5b5BeF6S2K2cwFStZRjWqm1feUcwNpZxCBVMkQnQ==", + "dev": true, + "requires": { + "@storybook/client-logger": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/theming": "6.5.9", + "@types/react-syntax-highlighter": "11.0.5", + "core-js": "^3.8.2", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "react-syntax-highlighter": "^15.4.5", + "regenerator-runtime": "^0.13.7", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/core": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcore/-/core-6.5.9.tgz", + "integrity": "sha512-Mt3TTQnjQt2/pa60A+bqDsAOrYpohapdtt4DDZEbS8h0V6u11KyYYh3w7FCySlL+sPEyogj63l5Ec76Jah3l2w==", + "dev": true, + "requires": { + "@storybook/core-client": "6.5.9", + "@storybook/core-server": "6.5.9" + } + }, + "@storybook/core-client": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcore-client/-/core-client-6.5.9.tgz", + "integrity": "sha512-LY0QbhShowO+PQx3gao3wdVjpKMH1AaSLmuI95FrcjoMmSXGf96jVLKQp9mJRGeHIsAa93EQBYuCihZycM3Kbg==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/channel-postmessage": "6.5.9", + "@storybook/channel-websocket": "6.5.9", + "@storybook/client-api": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/preview-web": "6.5.9", + "@storybook/store": "6.5.9", + "@storybook/ui": "6.5.9", + "airbnb-js-shims": "^2.2.1", + "ansi-to-html": "^0.6.11", + "core-js": "^3.8.2", + "global": "^4.4.0", + "lodash": "^4.17.21", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0", + "unfetch": "^4.2.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/core-common": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcore-common/-/core-common-6.5.9.tgz", + "integrity": "sha512-NxOK0mrOCo0TWZ7Npc5HU66EKoRHlrtg18/ZixblLDWQMIqY9XCck8K1kJ8QYpYCHla+aHIsYUArFe2vhlEfZA==", + "dev": true, + "requires": { + "@babel/core": "^7.12.10", + "@babel/plugin-proposal-class-properties": "^7.12.1", + "@babel/plugin-proposal-decorators": "^7.12.12", + "@babel/plugin-proposal-export-default-from": "^7.12.1", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", + "@babel/plugin-proposal-object-rest-spread": "^7.12.1", + "@babel/plugin-proposal-optional-chaining": "^7.12.7", + "@babel/plugin-proposal-private-methods": "^7.12.1", + "@babel/plugin-proposal-private-property-in-object": "^7.12.1", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-arrow-functions": "^7.12.1", + "@babel/plugin-transform-block-scoping": "^7.12.12", + "@babel/plugin-transform-classes": "^7.12.1", + "@babel/plugin-transform-destructuring": "^7.12.1", + "@babel/plugin-transform-for-of": "^7.12.1", + "@babel/plugin-transform-parameters": "^7.12.1", + "@babel/plugin-transform-shorthand-properties": "^7.12.1", + "@babel/plugin-transform-spread": "^7.12.1", + "@babel/preset-env": "^7.12.11", + "@babel/preset-react": "^7.12.10", + "@babel/preset-typescript": "^7.12.7", + "@babel/register": "^7.12.1", + "@storybook/node-logger": "6.5.9", + "@storybook/semver": "^7.3.2", + "@types/node": "^14.0.10 || ^16.0.0", + "@types/pretty-hrtime": "^1.0.0", + "babel-loader": "^8.0.0", + "babel-plugin-macros": "^3.0.1", + "babel-plugin-polyfill-corejs3": "^0.1.0", + "chalk": "^4.1.0", + "core-js": "^3.8.2", + "express": "^4.17.1", + "file-system-cache": "^1.0.5", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.0.4", + "fs-extra": "^9.0.1", + "glob": "^7.1.6", + "handlebars": "^4.7.7", + "interpret": "^2.2.0", + "json5": "^2.1.3", + "lazy-universal-dotenv": "^3.0.1", + "picomatch": "^2.3.0", + "pkg-dir": "^5.0.0", + "pretty-hrtime": "^1.0.3", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "telejson": "^6.0.8", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2", + "webpack": "4" + }, + "dependencies": { + "@babel/helper-define-polyfill-provider": { + "version": "0.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-define-polyfill-provider/-/helper-define-polyfill-provider-0.1.5.tgz", + "integrity": "sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + } + } + }, + "@types/node": { + "version": "16.11.41", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-16.11.41.tgz", + "integrity": "sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.1.7", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.1.7.tgz", + "integrity": "sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.1.5", + "core-js-compat": "^3.8.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "dependencies": { + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + } + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@storybook/core-events": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcore-events/-/core-events-6.5.9.tgz", + "integrity": "sha512-tXt7a3ZvJOCeEKpNa/B5rQM5VI7UJLlOh3IHOImWn4HqoBRrZvbourmac+PRZAtXpos0h3c6554Hjapj/Sny5Q==", + "dev": true, + "requires": { + "core-js": "^3.8.2" + } + }, + "@storybook/core-server": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcore-server/-/core-server-6.5.9.tgz", + "integrity": "sha512-YeePGUrd5fQPvGzMhowh124KrcZURFpFXg1VB0Op3ESqCIsInoMZeObci4Gc+binMXC7vcv7aw3EwSLU37qJzQ==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "^0.5.3", + "@storybook/builder-webpack4": "6.5.9", + "@storybook/core-client": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/csf-tools": "6.5.9", + "@storybook/manager-webpack4": "6.5.9", + "@storybook/node-logger": "6.5.9", + "@storybook/semver": "^7.3.2", + "@storybook/store": "6.5.9", + "@storybook/telemetry": "6.5.9", + "@types/node": "^14.0.10 || ^16.0.0", + "@types/node-fetch": "^2.5.7", + "@types/pretty-hrtime": "^1.0.0", + "@types/webpack": "^4.41.26", + "better-opn": "^2.1.1", + "boxen": "^5.1.2", + "chalk": "^4.1.0", + "cli-table3": "^0.6.1", + "commander": "^6.2.1", + "compression": "^1.7.4", + "core-js": "^3.8.2", + "cpy": "^8.1.2", + "detect-port": "^1.3.0", + "express": "^4.17.1", + "fs-extra": "^9.0.1", + "global": "^4.4.0", + "globby": "^11.0.2", + "ip": "^2.0.0", + "lodash": "^4.17.21", + "node-fetch": "^2.6.7", + "open": "^8.4.0", + "pretty-hrtime": "^1.0.3", + "prompts": "^2.4.0", + "regenerator-runtime": "^0.13.7", + "serve-favicon": "^2.5.0", + "slash": "^3.0.0", + "telejson": "^6.0.8", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2", + "watchpack": "^2.2.0", + "webpack": "4", + "ws": "^8.2.3", + "x-default-browser": "^0.4.0" + }, + "dependencies": { + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + } + }, + "@types/node": { + "version": "16.11.41", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-16.11.41.tgz", + "integrity": "sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "6.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "dev": true + }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + } + } + }, + "@storybook/csf": { + "version": "0.0.2--canary.4566f4d.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcsf/-/csf-0.0.2--canary.4566f4d.1.tgz", + "integrity": "sha512-9OVvMVh3t9znYZwb0Svf/YQoxX2gVOeQTGe2bses2yj+a3+OJnCrUF3/hGv6Em7KujtOdL2LL+JnG49oMVGFgQ==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "@storybook/csf-tools": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcsf-tools/-/csf-tools-6.5.9.tgz", + "integrity": "sha512-RAdhsO2XmEDyWy0qNQvdKMLeIZAuyfD+tYlUwBHRU6DbByDucvwgMOGy5dF97YNJFmyo93EUYJzXjUrJs3U1LQ==", + "dev": true, + "requires": { + "@babel/core": "^7.12.10", + "@babel/generator": "^7.12.11", + "@babel/parser": "^7.12.11", + "@babel/plugin-transform-react-jsx": "^7.12.12", + "@babel/preset-env": "^7.12.11", + "@babel/traverse": "^7.12.11", + "@babel/types": "^7.12.11", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/mdx1-csf": "^0.0.1", + "core-js": "^3.8.2", + "fs-extra": "^9.0.1", + "global": "^4.4.0", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0" + } + }, + "@storybook/docs-tools": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fdocs-tools/-/docs-tools-6.5.9.tgz", + "integrity": "sha512-UoTaXLvec8x+q+4oYIk/t8DBju9C3ZTGklqOxDIt+0kS3TFAqEgI3JhKXqQOXgN5zDcvLVSxi8dbVAeSxk2ktA==", + "dev": true, + "requires": { + "@babel/core": "^7.12.10", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/store": "6.5.9", + "core-js": "^3.8.2", + "doctrine": "^3.0.0", + "lodash": "^4.17.21", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/manager-webpack4": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fmanager-webpack4/-/manager-webpack4-6.5.9.tgz", + "integrity": "sha512-49LZlHqWc7zj9tQfOOANixPYmLxqWTTZceA6DSXnKd9xDiO2Gl23Y+l/CSPXNZGDB8QFAwpimwqyKJj/NLH45A==", + "dev": true, + "requires": { + "@babel/core": "^7.12.10", + "@babel/plugin-transform-template-literals": "^7.12.1", + "@babel/preset-react": "^7.12.10", + "@storybook/addons": "6.5.9", + "@storybook/core-client": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/node-logger": "6.5.9", + "@storybook/theming": "6.5.9", + "@storybook/ui": "6.5.9", + "@types/node": "^14.0.10 || ^16.0.0", + "@types/webpack": "^4.41.26", + "babel-loader": "^8.0.0", + "case-sensitive-paths-webpack-plugin": "^2.3.0", + "chalk": "^4.1.0", + "core-js": "^3.8.2", + "css-loader": "^3.6.0", + "express": "^4.17.1", + "file-loader": "^6.2.0", + "find-up": "^5.0.0", + "fs-extra": "^9.0.1", + "html-webpack-plugin": "^4.0.0", + "node-fetch": "^2.6.7", + "pnp-webpack-plugin": "1.6.4", + "read-pkg-up": "^7.0.1", + "regenerator-runtime": "^0.13.7", + "resolve-from": "^5.0.0", + "style-loader": "^1.3.0", + "telejson": "^6.0.8", + "terser-webpack-plugin": "^4.2.3", + "ts-dedent": "^2.0.0", + "url-loader": "^4.1.1", + "util-deprecate": "^1.0.2", + "webpack": "4", + "webpack-dev-middleware": "^3.7.3", + "webpack-virtual-modules": "^0.2.2" + }, + "dependencies": { + "@types/node": { + "version": "16.11.41", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-16.11.41.tgz", + "integrity": "sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ==", + "dev": true + }, + "acorn": { + "version": "8.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "requires": { + "@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" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "2.20.3", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + } + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "serialize-javascript": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "terser": { + "version": "5.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "4.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", + "dev": true, + "requires": { + "cacache": "^15.0.5", + "find-cache-dir": "^3.3.1", + "jest-worker": "^26.5.0", + "p-limit": "^3.0.2", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", + "source-map": "^0.6.1", + "terser": "^5.3.4", + "webpack-sources": "^1.4.3" + } + } + } + }, + "@storybook/mdx1-csf": { + "version": "0.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fmdx1-csf/-/mdx1-csf-0.0.1.tgz", + "integrity": "sha512-4biZIWWzoWlCarMZmTpqcJNgo/RBesYZwGFbQeXiGYsswuvfWARZnW9RE9aUEMZ4XPn7B1N3EKkWcdcWe/K2tg==", + "dev": true, + "requires": { + "@babel/generator": "^7.12.11", + "@babel/parser": "^7.12.11", + "@babel/preset-env": "^7.12.11", + "@babel/types": "^7.12.11", + "@mdx-js/mdx": "^1.6.22", + "@types/lodash": "^4.14.167", + "js-string-escape": "^1.0.1", + "loader-utils": "^2.0.0", + "lodash": "^4.17.21", + "prettier": ">=2.2.1 <=2.3.0", + "ts-dedent": "^2.0.0" + }, + "dependencies": { + "prettier": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/prettier/-/prettier-2.3.0.tgz", + "integrity": "sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==", + "dev": true + } + } + }, + "@storybook/node-logger": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fnode-logger/-/node-logger-6.5.9.tgz", + "integrity": "sha512-nZZNZG2Wtwv6Trxi3FrnIqUmB55xO+X/WQGPT5iKlqNjdRIu/T72mE7addcp4rbuWCQfZUhcDDGpBOwKtBxaGg==", + "dev": true, + "requires": { + "@types/npmlog": "^4.1.2", + "chalk": "^4.1.0", + "core-js": "^3.8.2", + "npmlog": "^5.0.1", + "pretty-hrtime": "^1.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@storybook/postinstall": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fpostinstall/-/postinstall-6.5.9.tgz", + "integrity": "sha512-KQBupK+FMRrtSt8IL0MzCZ/w9qbd25Yxxp/+ajfWgZTRgsWgVFOqcDyMhS16eNbBp5qKIBCBDXfEF+/mK8HwQQ==", + "dev": true, + "requires": { + "core-js": "^3.8.2" + } + }, + "@storybook/preview-web": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fpreview-web/-/preview-web-6.5.9.tgz", + "integrity": "sha512-4eMrO2HJyZUYyL/j+gUaDvry6iGedshwT5MQqe7J9FaA+Q2pNARQRB1X53f410w7S4sObRmYIAIluWPYdWym9w==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/channel-postmessage": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/store": "6.5.9", + "ansi-to-html": "^0.6.11", + "core-js": "^3.8.2", + "global": "^4.4.0", + "lodash": "^4.17.21", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7", + "synchronous-promise": "^2.0.15", + "ts-dedent": "^2.0.0", + "unfetch": "^4.2.0", + "util-deprecate": "^1.0.2" + } + }, + "@storybook/react": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2freact/-/react-6.5.9.tgz", + "integrity": "sha512-Rp+QaTQAzxJhwuzJXVd49mnIBLQRlF8llTxPT2YoGHdrGkku/zl/HblQ6H2yzEf15367VyzaAv/BpLsO9Jlfxg==", + "dev": true, + "requires": { + "@babel/preset-flow": "^7.12.1", + "@babel/preset-react": "^7.12.10", + "@pmmmwh/react-refresh-webpack-plugin": "^0.5.3", + "@storybook/addons": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core": "6.5.9", + "@storybook/core-common": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "@storybook/docs-tools": "6.5.9", + "@storybook/node-logger": "6.5.9", + "@storybook/react-docgen-typescript-plugin": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", + "@storybook/semver": "^7.3.2", + "@storybook/store": "6.5.9", + "@types/estree": "^0.0.51", + "@types/node": "^14.14.20 || ^16.0.0", + "@types/webpack-env": "^1.16.0", + "acorn": "^7.4.1", + "acorn-jsx": "^5.3.1", + "acorn-walk": "^7.2.0", + "babel-plugin-add-react-displayname": "^0.0.5", + "babel-plugin-react-docgen": "^4.2.1", + "core-js": "^3.8.2", + "escodegen": "^2.0.0", + "fs-extra": "^9.0.1", + "global": "^4.4.0", + "html-tags": "^3.1.0", + "lodash": "^4.17.21", + "prop-types": "^15.7.2", + "react-element-to-jsx-string": "^14.3.4", + "react-refresh": "^0.11.0", + "read-pkg-up": "^7.0.1", + "regenerator-runtime": "^0.13.7", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2", + "webpack": ">=4.43.0 <6.0.0" + }, + "dependencies": { + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + } + }, + "@types/estree": { + "version": "0.0.51", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2festree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "dev": true + }, + "@types/node": { + "version": "16.11.41", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-16.11.41.tgz", + "integrity": "sha512-mqoYK2TnVjdkGk8qXAVGc/x9nSaTpSrFaGFm43BUH3IdoBV0nta6hYaGmdOvIMlbHJbUEVen3gvwpwovAZKNdQ==", + "dev": true + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + } + } + }, + "@storybook/react-docgen-typescript-plugin": { + "version": "1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2freact-docgen-typescript-plugin/-/react-docgen-typescript-plugin-1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0.tgz", + "integrity": "sha512-eVg3BxlOm2P+chijHBTByr90IZVUtgRW56qEOLX7xlww2NBuKrcavBlcmn+HH7GIUktquWkMPtvy6e0W0NgA5w==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "endent": "^2.0.1", + "find-cache-dir": "^3.3.1", + "flat-cache": "^3.0.4", + "micromatch": "^4.0.2", + "react-docgen-typescript": "^2.1.1", + "tslib": "^2.0.0" + }, + "dependencies": { + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "@storybook/router": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2frouter/-/router-6.5.9.tgz", + "integrity": "sha512-G2Xp/2r8vU2O34eelE+G5VbEEVFDeHcCURrVJEROh6dq2asFJAPbzslVXSeCqgOTNLSpRDJ2NcN5BckkNqmqJg==", + "dev": true, + "requires": { + "@storybook/client-logger": "6.5.9", + "core-js": "^3.8.2", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/source-loader": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsource-loader/-/source-loader-6.5.9.tgz", + "integrity": "sha512-H03nFKaP6borfWMTTa9igBA+Jm2ph+FoVJImWC/X+LAmLSJYYSXuqSgmiZ/DZvbjxS4k8vccE2HXogne1IvaRA==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "core-js": "^3.8.2", + "estraverse": "^5.2.0", + "global": "^4.4.0", + "loader-utils": "^2.0.0", + "lodash": "^4.17.21", + "prettier": ">=2.2.1 <=2.3.0", + "regenerator-runtime": "^0.13.7" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "prettier": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/prettier/-/prettier-2.3.0.tgz", + "integrity": "sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==", + "dev": true + } + } + }, + "@storybook/store": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fstore/-/store-6.5.9.tgz", + "integrity": "sha512-80pcDTcCwK6wUA63aWOp13urI77jfipIVee9mpVvbNyfrNN8kGv1BS0z/JHDxuV6rC4g7LG1fb+BurR0yki7BA==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/csf": "0.0.2--canary.4566f4d.1", + "core-js": "^3.8.2", + "fast-deep-equal": "^3.1.3", + "global": "^4.4.0", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3", + "regenerator-runtime": "^0.13.7", + "slash": "^3.0.0", + "stable": "^0.1.8", + "synchronous-promise": "^2.0.15", + "ts-dedent": "^2.0.0", + "util-deprecate": "^1.0.2" + }, + "dependencies": { + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + } + } + }, + "@storybook/telemetry": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2ftelemetry/-/telemetry-6.5.9.tgz", + "integrity": "sha512-JluoHCRhHAr4X0eUNVBSBi1JIBA92404Tu1TPdbN7x6gCZxHXXPTSUTAnspXp/21cTdMhY2x+kfZQ8fmlGK4MQ==", + "dev": true, + "requires": { + "@storybook/client-logger": "6.5.9", + "@storybook/core-common": "6.5.9", + "chalk": "^4.1.0", + "core-js": "^3.8.2", + "detect-package-manager": "^2.0.1", + "fetch-retry": "^5.0.2", + "fs-extra": "^9.0.1", + "global": "^4.4.0", + "isomorphic-unfetch": "^3.1.0", + "nanoid": "^3.3.1", + "read-pkg-up": "^7.0.1", + "regenerator-runtime": "^0.13.7" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@storybook/theming": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2ftheming/-/theming-6.5.9.tgz", + "integrity": "sha512-KM0AMP5jMQPAdaO8tlbFCYqx9uYM/hZXGSVUhznhLYu7bhNAIK7ZVmXxyE/z/khM++8eUHzRoZGiO/cwCkg9Xw==", + "dev": true, + "requires": { + "@storybook/client-logger": "6.5.9", + "core-js": "^3.8.2", + "memoizerific": "^1.11.3", + "regenerator-runtime": "^0.13.7" + } + }, + "@storybook/ui": { + "version": "6.5.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fui/-/ui-6.5.9.tgz", + "integrity": "sha512-ryuPxJgtbb0gPXKGgGAUC+Z185xGAd1IvQ0jM5fJ0SisHXI8jteG3RaWhntOehi9qCg+64Vv6eH/cj9QYNHt1Q==", + "dev": true, + "requires": { + "@storybook/addons": "6.5.9", + "@storybook/api": "6.5.9", + "@storybook/channels": "6.5.9", + "@storybook/client-logger": "6.5.9", + "@storybook/components": "6.5.9", + "@storybook/core-events": "6.5.9", + "@storybook/router": "6.5.9", + "@storybook/semver": "^7.3.2", + "@storybook/theming": "6.5.9", + "core-js": "^3.8.2", + "memoizerific": "^1.11.3", + "qs": "^6.10.0", + "regenerator-runtime": "^0.13.7", + "resolve-from": "^5.0.0" + }, + "dependencies": { + "@storybook/semver": { + "version": "7.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fsemver/-/semver-7.3.2.tgz", + "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", + "dev": true, + "requires": { + "core-js": "^3.6.5", + "find-up": "^4.1.0" + } + } + } + }, + "@types/babel__core": { + "version": "7.1.19", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fbabel__core/-/babel__core-7.1.19.tgz", + "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "dev": true, + "requires": { + "@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.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fbabel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fbabel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.17.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fbabel__traverse/-/babel__traverse-7.17.1.tgz", + "integrity": "sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/estree": { + "version": "0.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2festree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "@types/glob": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fglob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fgraceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/hast": { + "version": "2.3.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fhast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, + "@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fhoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "dev": true, + "requires": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, + "@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fhtml-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==", + "dev": true + }, + "@types/is-function": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fis-function/-/is-function-1.0.1.tgz", + "integrity": "sha512-A79HEEiwXTFtfY+Bcbo58M2GRYzCr9itHWzbzHVFNEYCcoU/MMGwYYf721gBrnhpj1s6RGVVha/IgNFnR0Iw/Q==", + "dev": true + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fistanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fistanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fistanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fjson-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fjson5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "@types/lodash": { + "version": "4.14.182", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2flodash/-/lodash-4.14.182.tgz", + "integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==", + "dev": true + }, + "@types/mdast": { + "version": "3.0.10", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fmdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fminimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", + "dev": true + }, + "@types/node": { + "version": "18.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==", + "dev": true + }, + "@types/node-fetch": { + "version": "2.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnode-fetch/-/node-fetch-2.6.2.tgz", + "integrity": "sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==", + "dev": true, + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnormalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true + }, + "@types/npmlog": { + "version": "4.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fnpmlog/-/npmlog-4.1.4.tgz", + "integrity": "sha512-WKG4gTr8przEZBiJ5r3s8ZIAoMXNbOgQ+j/d5O4X3x6kZJRLNvyUJuUK/KoG3+8BaOHPhp2m7WC6JKKeovDSzQ==", + "dev": true + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fparse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "@types/parse5": { + "version": "5.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fparse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==", + "dev": true + }, + "@types/pretty-hrtime": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fpretty-hrtime/-/pretty-hrtime-1.0.1.tgz", + "integrity": "sha512-VjID5MJb1eGKthz2qUerWT8+R4b9N+CHvGCzg9fn4kWZgaF9AhdYikQio3R7wV8YY1NsQKPaCwKz1Yff+aHNUQ==", + "dev": true + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fprop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "dev": true + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fqs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "@types/react": { + "version": "18.0.14", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2freact/-/react-18.0.14.tgz", + "integrity": "sha512-x4gGuASSiWmo0xjDLpm5mPb52syZHJx02VKbqUKdLmKtAwIh63XClGsiTI1K6DO5q7ox4xAsQrU+Gl3+gGXF9Q==", + "dev": true, + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-portal": { + "version": "4.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2freact-portal/-/react-portal-4.0.4.tgz", + "integrity": "sha512-ecVWngYHeSymq5XdrQOXRpIb9ay5SM4Stm/ur6+wc0Z+r05gafZ5SuMRbXKYsj4exNJa+4CTKK6J7qcTKm9K5g==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/react-syntax-highlighter": { + "version": "11.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2freact-syntax-highlighter/-/react-syntax-highlighter-11.0.5.tgz", + "integrity": "sha512-VIOi9i2Oj5XsmWWoB72p3KlZoEbdRAcechJa8Ztebw7bDl2YmR+odxIqhtJGp1q2EozHs02US+gzxJ9nuf56qg==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fresolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fscheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", + "dev": true + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fsource-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "@types/styled-components": { + "version": "5.1.25", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fstyled-components/-/styled-components-5.1.25.tgz", + "integrity": "sha512-fgwl+0Pa8pdkwXRoVPP9JbqF0Ivo9llnmsm+7TCI330kbPIFd9qv1Lrhr37shf4tnxCOSu+/IgqM7uJXLWZZNQ==", + "dev": true, + "requires": { + "@types/hoist-non-react-statics": "*", + "@types/react": "*", + "csstype": "^3.0.2" + } + }, + "@types/tapable": { + "version": "1.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2ftapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "dev": true + }, + "@types/uglify-js": { + "version": "3.16.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fuglify-js/-/uglify-js-3.16.0.tgz", + "integrity": "sha512-0yeUr92L3r0GLRnBOvtYK1v2SjqMIqQDHMl7GLb+l2L8+6LSFWEEWEIgVsPdMn5ImLM8qzWT8xFPtQYpp8co0g==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + } + }, + "@types/unist": { + "version": "2.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2funist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==", + "dev": true + }, + "@types/webpack": { + "version": "4.41.32", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fwebpack/-/webpack-4.41.32.tgz", + "integrity": "sha512-cb+0ioil/7oz5//7tZUSwbrSAN/NWHrQylz5cW8G0dWTcF/g+/dSdMlKVZspBYuMAN1+WnwHrkxiRrLcwd0Heg==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "@types/webpack-env": { + "version": "1.17.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fwebpack-env/-/webpack-env-1.17.0.tgz", + "integrity": "sha512-eHSaNYEyxRA5IAG0Ym/yCyf86niZUIF/TpWKofQI/CVfh5HsMEUyfE2kwFxha4ow0s5g0LfISQxpDKjbRDrizw==", + "dev": true + }, + "@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fwebpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + } + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fyargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@types%2fyargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2feslint-plugin/-/eslint-plugin-5.29.0.tgz", + "integrity": "sha512-kgTsISt9pM53yRFQmLZ4npj99yGl3x3Pl7z4eA66OuTzAGC4bQB5H5fuLwPnqTKU3yyrrg4MIhjF17UYnL4c0w==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.29.0", + "@typescript-eslint/type-utils": "5.29.0", + "@typescript-eslint/utils": "5.29.0", + "debug": "^4.3.4", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.2.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "dependencies": { + "ignore": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true + }, + "semver": { + "version": "7.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/experimental-utils": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2fexperimental-utils/-/experimental-utils-5.29.0.tgz", + "integrity": "sha512-H4fqOVYiH6R15NjtMO2LVBZgzXgzjdPEXYb7x/meg4QbXsptLxdq8YlHK2NZOFKipuInY4sAPY5a6SQ/53s3dw==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "5.29.0" + } + }, + "@typescript-eslint/parser": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2fparser/-/parser-5.29.0.tgz", + "integrity": "sha512-ruKWTv+x0OOxbzIw9nW5oWlUopvP/IQDjB5ZqmTglLIoDTctLlAJpAQFpNPJP/ZI7hTT9sARBosEfaKbcFuECw==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "5.29.0", + "@typescript-eslint/types": "5.29.0", + "@typescript-eslint/typescript-estree": "5.29.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2fscope-manager/-/scope-manager-5.29.0.tgz", + "integrity": "sha512-etbXUT0FygFi2ihcxDZjz21LtC+Eps9V2xVx09zFoN44RRHPrkMflidGMI+2dUs821zR1tDS6Oc9IXxIjOUZwA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.29.0", + "@typescript-eslint/visitor-keys": "5.29.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2ftype-utils/-/type-utils-5.29.0.tgz", + "integrity": "sha512-JK6bAaaiJozbox3K220VRfCzLa9n0ib/J+FHIwnaV3Enw/TO267qe0pM1b1QrrEuy6xun374XEAsRlA86JJnyg==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "5.29.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2ftypes/-/types-5.29.0.tgz", + "integrity": "sha512-X99VbqvAXOMdVyfFmksMy3u8p8yoRGITgU1joBJPzeYa0rhdf5ok9S56/itRoUSh99fiDoMtarSIJXo7H/SnOg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2ftypescript-estree/-/typescript-estree-5.29.0.tgz", + "integrity": "sha512-mQvSUJ/JjGBdvo+1LwC+GY2XmSYjK1nAaVw2emp/E61wEVYEyibRHCqm1I1vEKbXCpUKuW4G7u9ZCaZhJbLoNQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.29.0", + "@typescript-eslint/visitor-keys": "5.29.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "dependencies": { + "semver": { + "version": "7.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/utils": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2futils/-/utils-5.29.0.tgz", + "integrity": "sha512-3Eos6uP1nyLOBayc/VUdKZikV90HahXE5Dx9L5YlSd/7ylQPXhLk1BYb29SDgnBnTp+jmSZUU0QxUiyHgW4p7A==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@typescript-eslint/scope-manager": "5.29.0", + "@typescript-eslint/types": "5.29.0", + "@typescript-eslint/typescript-estree": "5.29.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.29.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@typescript-eslint%2fvisitor-keys/-/visitor-keys-5.29.0.tgz", + "integrity": "sha512-Hpb/mCWsjILvikMQoZIE3voc9wtQcS0A9FUw3h8bhr9UxBdtI/tw1ZDZUOXHXLOVMedKCH5NxyzATwnU78bWCQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.29.0", + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true + } + } + }, + "@use-gesture/core": { + "version": "10.2.15", + "resolved": "https://npm-registry.infra.dreamplug.net/@use-gesture%2fcore/-/core-10.2.15.tgz", + "integrity": "sha512-R8k5GHKR6J3n48K1xiWCBSnTsxmfiVCp+MYPMhFaoHT1/oIjrFA6SeMmWDl0REwP/CpBfNdQ0FwOo/0dGjPhwA==" + }, + "@use-gesture/react": { + "version": "10.2.15", + "resolved": "https://npm-registry.infra.dreamplug.net/@use-gesture%2freact/-/react-10.2.15.tgz", + "integrity": "sha512-Hdfp17a3iHDo33jasd8GIPlIjM4wxNzn1O9apNX2VrF7X2ewzXp4wCCQ4aPqsnyvBA1WhR8KHMrBS/XWQZxTHQ==", + "requires": { + "@use-gesture/core": "10.2.15" + } + }, + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2ffloating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", + "dev": true + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fhelper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dev": true, + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fleb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dev": true, + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2futf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@webassemblyjs%2fwast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/@xtuc%2fieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/@xtuc%2flong/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://npm-registry.infra.dreamplug.net/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "6.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + }, + "address": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/address/-/address-1.2.0.tgz", + "integrity": "sha512-tNEZYz5G/zYunxFm7sfhAxkXEuLj3K6BKwv6ZURlsF6yiUQ65z0Q2wZW9L5cPUl9ocofGvXOdFYbFHp0+6MOig==", + "dev": true + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "airbnb-js-shims": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz", + "integrity": "sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "array.prototype.flat": "^1.2.1", + "array.prototype.flatmap": "^1.2.1", + "es5-shim": "^4.5.13", + "es6-shim": "^0.35.5", + "function.prototype.name": "^1.1.0", + "globalthis": "^1.0.0", + "object.entries": "^1.1.0", + "object.fromentries": "^2.0.0 || ^1.0.0", + "object.getownpropertydescriptors": "^2.0.3", + "object.values": "^1.1.0", + "promise.allsettled": "^1.0.0", + "promise.prototype.finally": "^3.1.0", + "string.prototype.matchall": "^4.0.0 || ^3.0.1", + "string.prototype.padend": "^3.0.0", + "string.prototype.padstart": "^3.0.0", + "symbol.prototype.description": "^1.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://npm-registry.infra.dreamplug.net/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "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-errors": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true + }, + "ansi-align": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dev": true, + "requires": { + "string-width": "^4.1.0" + } + }, + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + } + } + }, + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "dev": true + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "ansi-to-html": { + "version": "0.6.15", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-to-html/-/ansi-to-html-0.6.15.tgz", + "integrity": "sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ==", + "dev": true, + "requires": { + "entities": "^2.0.0" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "app-root-dir": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/app-root-dir/-/app-root-dir-1.0.2.tgz", + "integrity": "sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg=", + "dev": true + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://npm-registry.infra.dreamplug.net/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "aria-query": { + "version": "4.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true, + "optional": true + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "array-includes": { + "version": "3.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/array-includes/-/array-includes-3.1.5.tgz", + "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "array.prototype.flat": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", + "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz", + "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.map": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/array.prototype.map/-/array.prototype.map-1.0.4.tgz", + "integrity": "sha512-Qds9QnX7A0qISY7JT5WuJO0NJPE9CMlC6JzHQfhpqAAQQzufVRoeH7EzUY5GcPTx72voG8LV/5eo+b8Qi8hmhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "array.prototype.reduce": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz", + "integrity": "sha512-WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "arrify": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://npm-registry.infra.dreamplug.net/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "ast-types": { + "version": "0.14.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ast-types/-/ast-types-0.14.2.tgz", + "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", + "dev": true, + "requires": { + "tslib": "^2.0.1" + } + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "dev": true + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true, + "optional": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "9.8.8", + "resolved": "https://npm-registry.infra.dreamplug.net/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "axe-core": { + "version": "4.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/axe-core/-/axe-core-4.4.2.tgz", + "integrity": "sha512-LVAaGp/wkkgYJcjmHsoKx4juT1aQvJyPcW09MLCjVTh3V2cc6PnyempiLMNH5iMdfIX/zdbjUx2KDjMLCTdPeA==", + "dev": true + }, + "axobject-query": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", + "dev": true + }, + "babel-loader": { + "version": "8.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", + "dev": true, + "requires": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "dependencies": { + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-add-react-displayname": { + "version": "0.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz", + "integrity": "sha1-M51M3be2X9YtHfnbn+BN4TQSK9U=", + "dev": true + }, + "babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + } + }, + "babel-plugin-preval": { + "version": "5.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-preval/-/babel-plugin-preval-5.1.0.tgz", + "integrity": "sha512-G5R+xmo5LS41A4UyZjOjV0mp9AvkuCyUOAJ6TOv/jTZS+VKh7L7HUDRcCSOb0YCM/u0fFarh7Diz0wjY8rFNFg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.12.5", + "@types/babel__core": "^7.1.12", + "babel-plugin-macros": "^3.0.1", + "require-from-string": "^2.0.2" + } + }, + "babel-plugin-react-docgen": { + "version": "4.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-react-docgen/-/babel-plugin-react-docgen-4.2.1.tgz", + "integrity": "sha512-UQ0NmGHj/HAqi5Bew8WvNfCk8wSsmdgNd8ZdMjBCICtyCJCq9LiqgqvjCYe570/Wg7AQArSq1VQ60Dd/CHN7mQ==", + "dev": true, + "requires": { + "ast-types": "^0.14.2", + "lodash": "^4.17.15", + "react-docgen": "^5.0.0" + } + }, + "babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", + "dev": true + }, + "babel-plugin-transform-replace-expressions": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-plugin-transform-replace-expressions/-/babel-plugin-transform-replace-expressions-0.2.0.tgz", + "integrity": "sha512-Eh1rRd9hWEYgkgoA3D0kGp7xJ/wgVshgsqmq60iC4HVWD+Lux+fNHSHBa2v1Hsv+dHflShC71qKhiH40OiPtDA==", + "dev": true, + "requires": { + "@babel/parser": "^7.3.3" + } + }, + "babel-polyfill": { + "version": "6.26.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-polyfill/-/babel-polyfill-6.26.0.tgz", + "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "core-js": "^2.5.0", + "regenerator-runtime": "^0.10.5" + }, + "dependencies": { + "core-js": { + "version": "2.6.12", + "resolved": "https://npm-registry.infra.dreamplug.net/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true + } + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://npm-registry.infra.dreamplug.net/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "core-js": { + "version": "2.6.12", + "resolved": "https://npm-registry.infra.dreamplug.net/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + } + } + }, + "bail": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://npm-registry.infra.dreamplug.net/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://npm-registry.infra.dreamplug.net/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true + }, + "better-opn": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/better-opn/-/better-opn-2.1.1.tgz", + "integrity": "sha512-kIPXZS5qwyKiX/HcRvDYfmBQUa8XP17I0mYZZ0y4UhpYOSvtsLHDYqmomS+Mj20aDvD3knEiQ0ecQy2nhio3yA==", + "dev": true, + "requires": { + "open": "^7.0.3" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + }, + "open": { + "version": "7.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + } + } + }, + "big-integer": { + "version": "1.6.51", + "resolved": "https://npm-registry.infra.dreamplug.net/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "dev": true, + "optional": true + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://npm-registry.infra.dreamplug.net/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "bn.js": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", + "dev": true + }, + "body-parser": { + "version": "1.20.0", + "resolved": "https://npm-registry.infra.dreamplug.net/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.10.3", + "resolved": "https://npm-registry.infra.dreamplug.net/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + } + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "boxen": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dev": true, + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + } + } + }, + "bplist-parser": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/bplist-parser/-/bplist-parser-0.1.1.tgz", + "integrity": "sha1-1g1dzCDLptx+HymbNdPh+V2vuuY=", + "dev": true, + "optional": true, + "requires": { + "big-integer": "^1.6.7" + } + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://npm-registry.infra.dreamplug.net/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dev": true, + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dev": true, + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.20.4", + "resolved": "https://npm-registry.infra.dreamplug.net/browserslist/-/browserslist-4.20.4.tgz", + "integrity": "sha512-ok1d+1WpnU24XYN7oC3QWgTyMhY/avPJ/r9T00xxvUOIparA/gc+UPUMaod3i+G6s+nI2nUb9xZ5k794uIwShw==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001349", + "electron-to-chromium": "^1.4.147", + "escalade": "^3.1.1", + "node-releases": "^2.0.5", + "picocolors": "^1.0.0" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer": { + "version": "4.9.2", + "resolved": "https://npm-registry.infra.dreamplug.net/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "bytes": { + "version": "3.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "c8": { + "version": "7.11.3", + "resolved": "https://npm-registry.infra.dreamplug.net/c8/-/c8-7.11.3.tgz", + "integrity": "sha512-6YBmsaNmqRm9OS3ZbIiL2EZgi1+Xc4O24jL3vMYGE6idixYuGdy76rIfIdltSKDj9DpLNrcXSonUTR1miBD0wA==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.3", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^9.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "cacache": { + "version": "12.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dev": true, + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true, + "optional": true + } + } + }, + "camelize": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/camelize/-/camelize-1.0.0.tgz", + "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=", + "dev": true + }, + "caniuse-lite": { + "version": "1.0.30001358", + "resolved": "https://npm-registry.infra.dreamplug.net/caniuse-lite/-/caniuse-lite-1.0.30001358.tgz", + "integrity": "sha512-hvp8PSRymk85R20bsDra7ZTCpSVGN/PAz9pSAjPSjKC+rNmnUk5vCRgJwiTT/O4feQ/yu/drvZYpKxxhbFuChw==", + "dev": true + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dev": true, + "requires": { + "rsvp": "^4.8.4" + } + }, + "case-sensitive-paths-webpack-plugin": { + "version": "2.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", + "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", + "dev": true + }, + "ccount": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "dev": true + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "dev": true + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "dev": true + }, + "charcodes": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/charcodes/-/charcodes-0.2.0.tgz", + "integrity": "sha512-Y4kiDb+AM4Ecy58YkuZrrSRJBDQdQ2L+NyS1vHHFtNtUjgutcZfx3yp1dAONI/oPaPmyGfCLx5CxL+zauIMyKQ==", + "dev": true + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://npm-registry.infra.dreamplug.net/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://npm-registry.infra.dreamplug.net/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-boxes": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-table3": { + "version": "0.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/cli-table3/-/cli-table3-0.6.2.tgz", + "integrity": "sha512-QyavHCaIC80cMivimWu4aWHilIpiDpfm3hGmqAmXVL1UsnbLuBSMd21hTX6VY4ZSDSM73ESLeF8TOYId3rBTbw==", + "dev": true, + "requires": { + "@colors/colors": "1.5.0", + "string-width": "^4.2.0" + } + }, + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "collapse-white-space": { + "version": "1.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://npm-registry.infra.dreamplug.net/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "dev": true + }, + "commander": { + "version": "4.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true + }, + "common-path-prefix": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://npm-registry.infra.dreamplug.net/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://npm-registry.infra.dreamplug.net/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "bytes": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://npm-registry.infra.dreamplug.net/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", + "dev": true + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://npm-registry.infra.dreamplug.net/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "requires": { + "safe-buffer": "5.2.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://npm-registry.infra.dreamplug.net/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + }, + "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + } + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-js": { + "version": "3.23.2", + "resolved": "https://npm-registry.infra.dreamplug.net/core-js/-/core-js-3.23.2.tgz", + "integrity": "sha512-ELJOWxNrJfOH/WK4VJ3Qd+fOqZuOuDNDJz0xG6Bt4mGg2eO/UT9CljCrbqDGovjLKUrGajEEBcoTOc0w+yBYeQ==", + "dev": true + }, + "core-js-compat": { + "version": "3.23.2", + "resolved": "https://npm-registry.infra.dreamplug.net/core-js-compat/-/core-js-compat-3.23.2.tgz", + "integrity": "sha512-lrgZvxFwbQp9v7E8mX0rJ+JX7Bvh4eGULZXA1IAyjlsnWvCdw6TF8Tg6xtaSUSJMrSrMaLdpmk+V54LM1dvfOA==", + "dev": true, + "requires": { + "browserslist": "^4.20.4", + "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } + } + }, + "core-js-pure": { + "version": "3.23.2", + "resolved": "https://npm-registry.infra.dreamplug.net/core-js-pure/-/core-js-pure-3.23.2.tgz", + "integrity": "sha512-t6u7H4Ff/yZNk+zqTr74UjCcZ3k8ApBryeLLV4rYQd9aF3gqmjjGjjR44ENfeBMH8VVvSynIjAJ0mUuFhzQtrA==", + "dev": true + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "dev": true + }, + "cosmiconfig": { + "version": "7.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "cp-file": { + "version": "7.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cp-file/-/cp-file-7.0.0.tgz", + "integrity": "sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "nested-error-stacks": "^2.0.0", + "p-event": "^4.1.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "cpy": { + "version": "8.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/cpy/-/cpy-8.1.2.tgz", + "integrity": "sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg==", + "dev": true, + "requires": { + "arrify": "^2.0.1", + "cp-file": "^7.0.0", + "globby": "^9.2.0", + "has-glob": "^1.0.0", + "junk": "^3.1.0", + "nested-error-stacks": "^2.1.0", + "p-all": "^2.1.0", + "p-filter": "^2.1.0", + "p-map": "^3.0.0" + }, + "dependencies": { + "globby": { + "version": "9.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + } + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://npm-registry.infra.dreamplug.net/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=", + "dev": true + }, + "css-loader": { + "version": "3.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/css-loader/-/css-loader-3.6.0.tgz", + "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^1.2.3", + "normalize-path": "^3.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.0", + "semver": "^6.3.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-to-react-native": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/css-to-react-native/-/css-to-react-native-3.0.0.tgz", + "integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==", + "dev": true, + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "csstype": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/csstype/-/csstype-3.1.0.tgz", + "integrity": "sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==", + "dev": true + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "optional": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "debug": { + "version": "4.3.4", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "optional": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://npm-registry.infra.dreamplug.net/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, + "default-browser-id": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/default-browser-id/-/default-browser-id-1.0.4.tgz", + "integrity": "sha512-qPy925qewwul9Hifs+3sx1ZYn14obHxpkX+mPD369w4Rzg+YkJBgi3SOvwUq81nWSjqGUegIgEPwD8u+HUnxlw==", + "dev": true, + "optional": true, + "requires": { + "bplist-parser": "^0.1.0", + "meow": "^3.1.0", + "untildify": "^2.0.0" + } + }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "depd": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true + }, + "detab": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "dev": true, + "requires": { + "repeat-string": "^1.5.4" + } + }, + "detect-package-manager": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/detect-package-manager/-/detect-package-manager-2.0.1.tgz", + "integrity": "sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A==", + "dev": true, + "requires": { + "execa": "^5.1.1" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "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" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "detect-port": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/detect-port/-/detect-port-1.3.0.tgz", + "integrity": "sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ==", + "dev": true, + "requires": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "requires": { + "utila": "~0.4" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "dom-walk": { + "version": "0.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/dom-walk/-/dom-walk-0.1.2.tgz", + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dev": true, + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://npm-registry.infra.dreamplug.net/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dotenv": { + "version": "8.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "dev": true + }, + "dotenv-expand": { + "version": "5.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.164", + "resolved": "https://npm-registry.infra.dreamplug.net/electron-to-chromium/-/electron-to-chromium-1.4.164.tgz", + "integrity": "sha512-K7iy5y6XyP9Pzh3uaDti0KC4JUNT6T1tLG5RTOmesqq2YgAJpYYYJ32m+anvZYjCV35llPTEh87kvEV/uSsiyQ==", + "dev": true + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://npm-registry.infra.dreamplug.net/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://npm-registry.infra.dreamplug.net/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "endent": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/endent/-/endent-2.1.0.tgz", + "integrity": "sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==", + "dev": true, + "requires": { + "dedent": "^0.7.0", + "fast-json-parse": "^1.0.3", + "objectorarray": "^1.0.5" + } + }, + "enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "errno": { + "version": "0.1.8", + "resolved": "https://npm-registry.infra.dreamplug.net/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "error-stack-parser": { + "version": "2.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dev": true, + "requires": { + "stackframe": "^1.3.4" + } + }, + "es-abstract": { + "version": "1.20.1", + "resolved": "https://npm-registry.infra.dreamplug.net/es-abstract/-/es-abstract-1.20.1.tgz", + "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "regexp.prototype.flags": "^1.4.3", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "es-get-iterator": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/es-get-iterator/-/es-get-iterator-1.1.2.tgz", + "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + } + } + }, + "es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-shim": { + "version": "4.6.7", + "resolved": "https://npm-registry.infra.dreamplug.net/es5-shim/-/es5-shim-4.6.7.tgz", + "integrity": "sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ==", + "dev": true + }, + "es6-shim": { + "version": "0.35.6", + "resolved": "https://npm-registry.infra.dreamplug.net/es6-shim/-/es6-shim-0.35.6.tgz", + "integrity": "sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA==", + "dev": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "dev": true, + "requires": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "eslint": { + "version": "8.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint/-/eslint-8.18.0.tgz", + "integrity": "sha512-As1EfFMVk7Xc6/CvhssHUjsAQSkpfXvUGMFC3ce8JDe6WvqCgRrLOBQbVpsBFr1X1V+RACOadnzVvcUS5ni2bA==", + "dev": true, + "requires": { + "@eslint/eslintrc": "^1.3.0", + "@humanwhocodes/config-array": "^0.9.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.2", + "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": "^6.0.1", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true + }, + "eslint-scope": { + "version": "7.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "13.15.0", + "resolved": "https://npm-registry.infra.dreamplug.net/globals/-/globals-13.15.0.tgz", + "integrity": "sha512-bpzcOlgDhMG070Av0Vy5Owklpv1I6+j96GhUI7Rh7IzDCKLzboflLrrfqMu8NquDbiR4EOQk7XzJwqVJxicxog==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://npm-registry.infra.dreamplug.net/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "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" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "eslint-config-airbnb-base": { + "version": "15.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", + "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", + "dev": true, + "requires": { + "confusing-browser-globals": "^1.0.10", + "object.assign": "^4.1.2", + "object.entries": "^1.1.5", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-config-airbnb-typescript": { + "version": "17.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.0.0.tgz", + "integrity": "sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g==", + "dev": true, + "requires": { + "eslint-config-airbnb-base": "^15.0.0" + } + }, + "eslint-config-prettier": { + "version": "8.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", + "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "dev": true + }, + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-import-resolver-typescript": { + "version": "2.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz", + "integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==", + "dev": true, + "requires": { + "debug": "^4.3.4", + "glob": "^7.2.0", + "is-glob": "^4.0.3", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + } + }, + "eslint-module-utils": { + "version": "2.7.3", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", + "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", + "dev": true, + "requires": { + "debug": "^3.2.7", + "find-up": "^2.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + } + } + }, + "eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dev": true, + "requires": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.5.1", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz", + "integrity": "sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==", + "dev": true, + "requires": { + "@babel/runtime": "^7.16.3", + "aria-query": "^4.2.2", + "array-includes": "^3.1.4", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.3.5", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.7", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.2.1", + "language-tags": "^1.0.5", + "minimatch": "^3.0.4" + }, + "dependencies": { + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + } + } + }, + "eslint-plugin-prettier": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", + "integrity": "sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "eslint-plugin-react": { + "version": "7.30.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-react/-/eslint-plugin-react-7.30.0.tgz", + "integrity": "sha512-RgwH7hjW48BleKsYyHK5vUAvxtE9SMPDKmcPRQgtRCYaZA0XQPt5FSkrU3nhz5ifzMZcA8opwmRJ2cmOO8tr5A==", + "dev": true, + "requires": { + "array-includes": "^3.1.5", + "array.prototype.flatmap": "^1.3.0", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.1", + "object.values": "^1.1.5", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.7" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "resolve": { + "version": "2.0.0-next.4", + "resolved": "https://npm-registry.infra.dreamplug.net/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true + }, + "eslint-plugin-storybook": { + "version": "0.5.12", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-plugin-storybook/-/eslint-plugin-storybook-0.5.12.tgz", + "integrity": "sha512-ojuNKnrZFrQpm5N5Lp8UR0VEn4HtLjlNn6nxQAYlmTsEXNigtId1XPuMbXAsvFcEmv3RTb5l+9tZgkhSURfACg==", + "dev": true, + "requires": { + "@storybook/csf": "^0.0.1", + "@typescript-eslint/experimental-utils": "^5.3.0", + "requireindex": "^1.1.0" + }, + "dependencies": { + "@storybook/csf": { + "version": "0.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@storybook%2fcsf/-/csf-0.0.1.tgz", + "integrity": "sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + }, + "espree": { + "version": "9.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/espree/-/espree-9.3.2.tgz", + "integrity": "sha512-D211tC7ZwouTIuY5x9XnS0E9sWNChB7IYKX/Xp5eQj3nFXhqmiUDB9q27y76oFl8jTg3pXcQx/bpxMfs3CIZbA==", + "dev": true, + "requires": { + "acorn": "^8.7.1", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "acorn": { + "version": "8.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "estree-to-babel": { + "version": "3.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/estree-to-babel/-/estree-to-babel-3.2.1.tgz", + "integrity": "sha512-YNF+mZ/Wu2FU/gvmzuWtYc8rloubL7wfXCTgouFrnjGVXPA/EeYYA7pupXWrb3Iv1cTBeSSxxJIbK23l4MRNqg==", + "dev": true, + "requires": { + "@babel/traverse": "^7.1.6", + "@babel/types": "^7.2.0", + "c8": "^7.6.0" + } + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://npm-registry.infra.dreamplug.net/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "events": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.3.6", + "resolved": "https://npm-registry.infra.dreamplug.net/exec-sh/-/exec-sh-0.3.6.tgz", + "integrity": "sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "express": { + "version": "4.18.1", + "resolved": "https://npm-registry.infra.dreamplug.net/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "dev": true, + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.0", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.10.3", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.10.3", + "resolved": "https://npm-registry.infra.dreamplug.net/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-diff": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "fast-json-parse": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-json-parse/-/fast-json-parse-1.0.3.tgz", + "integrity": "sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "fault": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/fault/-/fault-1.0.4.tgz", + "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", + "dev": true, + "requires": { + "format": "^0.2.0" + } + }, + "fb-watchman": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "fetch-retry": { + "version": "5.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/fetch-retry/-/fetch-retry-5.0.2.tgz", + "integrity": "sha512-57Hmu+1kc6pKFUGVIobT7qw3NeAzY/uNN26bSevERLVvf6VGFR/ooDCOFBHMNDgAxBiU2YJq1D0vFzc6U1DcPw==", + "dev": true + }, + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", + "dev": true + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-loader": { + "version": "6.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "file-system-cache": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/file-system-cache/-/file-system-cache-1.1.0.tgz", + "integrity": "sha512-IzF5MBq+5CR0jXx5RxPe4BICl/oEhBSXKaL9fLhAXrIfIUS77Hr4vzrYyqYMHN6uTt+BOqi3fDCTjjEBCjERKw==", + "dev": true, + "requires": { + "fs-extra": "^10.1.0", + "ramda": "^0.28.0" + }, + "dependencies": { + "fs-extra": { + "version": "10.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + } + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "flatted": { + "version": "3.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "foreground-child": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "fork-ts-checker-webpack-plugin": { + "version": "6.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.2.tgz", + "integrity": "sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "cosmiconfig": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "schema-utils": { + "version": "2.7.0", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "format": { + "version": "0.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/format/-/format-0.2.2.tgz", + "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=", + "dev": true + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://npm-registry.infra.dreamplug.net/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true + }, + "gauge": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dev": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + } + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://npm-registry.infra.dreamplug.net/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/get-intrinsic/-/get-intrinsic-1.1.2.tgz", + "integrity": "sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true, + "optional": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "github-slugger": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/github-slugger/-/github-slugger-1.4.0.tgz", + "integrity": "sha512-w0dzqw/nt51xMVmlaV1+JRzN+oCa1KfcgGEWhxUG16wbdA+Xnt/yoFO8Z8x/V82ZcZ0wy6ln9QDup5avbhiDhQ==", + "dev": true + }, + "glob": { + "version": "7.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "glob-promise": { + "version": "3.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-promise/-/glob-promise-3.4.0.tgz", + "integrity": "sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw==", + "dev": true, + "requires": { + "@types/glob": "*" + } + }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, + "global": { + "version": "4.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/global/-/global-4.4.0.tgz", + "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, + "requires": { + "min-document": "^2.19.0", + "process": "^0.11.10" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/@nodelib%2ffs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "fast-glob": { + "version": "3.2.11", + "resolved": "https://npm-registry.infra.dreamplug.net/fast-glob/-/fast-glob-3.2.11.tgz", + "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "dev": true, + "requires": { + "@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" + } + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + } + } + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://npm-registry.infra.dreamplug.net/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "handlebars": { + "version": "4.7.7", + "resolved": "https://npm-registry.infra.dreamplug.net/handlebars/-/handlebars-4.7.7.tgz", + "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "dev": true, + "requires": { + "minimist": "^1.2.5", + "neo-async": "^2.6.0", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-glob": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-glob/-/has-glob-1.0.0.tgz", + "integrity": "sha1-mqqe7b/7G6OZCnsAEPtnjuAIEgc=", + "dev": true, + "requires": { + "is-glob": "^3.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://npm-registry.infra.dreamplug.net/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "dev": true, + "requires": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "dev": true, + "requires": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + } + }, + "hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "dev": true + }, + "hast-util-raw": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "dev": true, + "requires": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + } + }, + "hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "dev": true, + "requires": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + } + }, + "hastscript": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "dev": true, + "requires": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "highlight.js": { + "version": "10.7.3", + "resolved": "https://npm-registry.infra.dreamplug.net/highlight.js/-/highlight.js-10.7.3.tgz", + "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dev": true, + "requires": { + "react-is": "^16.7.0" + } + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://npm-registry.infra.dreamplug.net/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "html-entities": { + "version": "2.3.3", + "resolved": "https://npm-registry.infra.dreamplug.net/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "dev": true + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dev": true, + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + } + }, + "html-tags": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true + }, + "html-void-elements": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "dev": true + }, + "html-webpack-plugin": { + "version": "4.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", + "dev": true, + "requires": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.20", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, + "husky": { + "version": "8.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/husky/-/husky-8.0.1.tgz", + "integrity": "sha512-xs7/chUH/CKdOCs7Zy0Aev9e/dKOMZf3K1Az1nar3tzlv0jfqnYtu235bstsWTmXOR0EfINrPa97yy4Lz6RiKw==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://npm-registry.infra.dreamplug.net/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "inline-style-parser": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==", + "dev": true + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true + }, + "ip": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true + }, + "is-absolute-url": { + "version": "3.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "dev": true + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dev": true, + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-builtin-module": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-builtin-module/-/is-builtin-module-3.1.0.tgz", + "integrity": "sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==", + "dev": true, + "requires": { + "builtin-modules": "^3.0.0" + } + }, + "is-callable": { + "version": "1.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "dev": true + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-core-module": { + "version": "2.9.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true + }, + "is-dom": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-dom/-/is-dom-1.1.0.tgz", + "integrity": "sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ==", + "dev": true, + "requires": { + "is-object": "^1.0.1", + "is-window": "^1.0.2" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-function": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "dev": true + }, + "is-map": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-object": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "dev": true + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "is-reference": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "requires": { + "@types/estree": "*" + } + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-set": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true, + "optional": true + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "dev": true + }, + "is-window": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-window/-/is-window-1.0.2.tgz", + "integrity": "sha1-LIlspT25feRdPDMTOmXYyfVjSA0=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-word-character": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-4.0.0.tgz", + "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", + "dev": true + }, + "isomorphic-unfetch": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz", + "integrity": "sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==", + "dev": true, + "requires": { + "node-fetch": "^2.6.1", + "unfetch": "^4.2.0" + } + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", + "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "istanbul-reports": { + "version": "3.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "iterate-iterator": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/iterate-iterator/-/iterate-iterator-1.0.2.tgz", + "integrity": "sha512-t91HubM4ZDQ70M9wqp+pcNpu8OyJ9UAtXntT/Bcsvp5tZMnz9vRa+IunKXeI8AnfZMTv0jNuVEmGeLSMjVvfPw==", + "dev": true + }, + "iterate-value": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/iterate-value/-/iterate-value-1.0.2.tgz", + "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==", + "dev": true, + "requires": { + "es-get-iterator": "^1.0.2", + "iterate-iterator": "^1.0.1" + } + }, + "jest-haste-map": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/jest-haste-map/-/jest-haste-map-26.6.2.tgz", + "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.1.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "26.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", + "dev": true + }, + "jest-serializer": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/jest-serializer/-/jest-serializer-26.6.2.tgz", + "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "js-string-escape": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/js-string-escape/-/js-string-escape-1.0.1.tgz", + "integrity": "sha1-4mJbrbwNZ8dTPp7cEGjFh65BN+8=", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://npm-registry.infra.dreamplug.net/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json5": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsx-ast-utils": { + "version": "3.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/jsx-ast-utils/-/jsx-ast-utils-3.3.0.tgz", + "integrity": "sha512-XzO9luP6L0xkxwhIJMTJQpZo/eeN60K08jHdexfD569AGxeNug6UketeHXEhROoM8aR7EcUoOQmIhcJQjcuq8Q==", + "dev": true, + "requires": { + "array-includes": "^3.1.4", + "object.assign": "^4.1.2" + } + }, + "junk": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/junk/-/junk-3.1.0.tgz", + "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, + "klona": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true + }, + "language-subtag-registry": { + "version": "0.3.21", + "resolved": "https://npm-registry.infra.dreamplug.net/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz", + "integrity": "sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==", + "dev": true + }, + "language-tags": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=", + "dev": true, + "requires": { + "language-subtag-registry": "~0.3.2" + } + }, + "lazy-universal-dotenv": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz", + "integrity": "sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ==", + "dev": true, + "requires": { + "@babel/runtime": "^7.5.0", + "app-root-dir": "^1.0.2", + "core-js": "^3.0.4", + "dotenv": "^8.0.0", + "dotenv-expand": "^5.1.0" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "lilconfig": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/lilconfig/-/lilconfig-2.0.5.tgz", + "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==", + "dev": true + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "lint-staged": { + "version": "12.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/lint-staged/-/lint-staged-12.5.0.tgz", + "integrity": "sha512-BKLUjWDsKquV/JuIcoQW4MSAI3ggwEImF1+sB4zaKvyVx1wBk3FsG7UK9bpnmBTN1pm7EH2BBcMwINJzCRv12g==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.16", + "commander": "^9.3.0", + "debug": "^4.3.4", + "execa": "^5.1.1", + "lilconfig": "2.0.5", + "listr2": "^4.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.5.0", + "string-argv": "^0.3.1", + "supports-color": "^9.2.2", + "yaml": "^1.10.2" + }, + "dependencies": { + "commander": { + "version": "9.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-9.3.0.tgz", + "integrity": "sha512-hv95iU5uXPbK83mjrJKuZyFM/LBAoCV/XhVGkS5Je6tl7sxr6A0ITMw5WoRV46/UaJ46Nllm3Xt7IaJhXTIkzw==", + "dev": true + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "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" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "supports-color": { + "version": "9.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-9.2.2.tgz", + "integrity": "sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "listr2": { + "version": "4.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + } + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "optional": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "optional": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "optional": true + } + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/loader-utils/-/loader-utils-2.0.2.tgz", + "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://npm-registry.infra.dreamplug.net/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "optional": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, + "requires": { + "tslib": "^2.0.3" + } + }, + "lowlight": { + "version": "1.20.0", + "resolved": "https://npm-registry.infra.dreamplug.net/lowlight/-/lowlight-1.20.0.tgz", + "integrity": "sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==", + "dev": true, + "requires": { + "fault": "^1.0.0", + "highlight.js": "~10.7.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.9", + "resolved": "https://npm-registry.infra.dreamplug.net/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://npm-registry.infra.dreamplug.net/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "requires": { + "tmpl": "1.0.5" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true, + "optional": true + }, + "map-or-similar": { + "version": "1.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/map-or-similar/-/map-or-similar-1.5.0.tgz", + "integrity": "sha1-beJlMXSt+12e3DPGnT6Sobdvrwg=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "markdown-escapes": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://npm-registry.infra.dreamplug.net/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "dev": true, + "requires": { + "unist-util-remove": "^2.0.0" + } + }, + "mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "dev": true, + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "dev": true, + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "mdast-util-to-string": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz", + "integrity": "sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A==", + "dev": true + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "memfs": { + "version": "3.4.6", + "resolved": "https://npm-registry.infra.dreamplug.net/memfs/-/memfs-3.4.6.tgz", + "integrity": "sha512-rH9mjopto6Wkr7RFuH9l9dk3qb2XGOcYKr7xMhaYqfzuJqOqhRrcFvfD7JMuPj6SLmPreh5+6eAuv36NFAU+Mw==", + "dev": true, + "requires": { + "fs-monkey": "^1.0.3" + } + }, + "memoizerific": { + "version": "1.11.3", + "resolved": "https://npm-registry.infra.dreamplug.net/memoizerific/-/memoizerific-1.11.3.tgz", + "integrity": "sha1-fIekZGREwy11Q4VwkF8tvRsagFo=", + "dev": true, + "requires": { + "map-or-similar": "^1.5.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://npm-registry.infra.dreamplug.net/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "optional": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "optional": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "optional": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "optional": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "optional": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "optional": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "optional": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "microevent.ts": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/microevent.ts/-/microevent.ts-0.1.1.tgz", + "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://npm-registry.infra.dreamplug.net/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "min-document": { + "version": "2.19.0", + "resolved": "https://npm-registry.infra.dreamplug.net/min-document/-/min-document-2.19.0.tgz", + "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, + "requires": { + "dom-walk": "^0.1.0" + } + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://npm-registry.infra.dreamplug.net/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "minipass": { + "version": "3.3.3", + "resolved": "https://npm-registry.infra.dreamplug.net/minipass/-/minipass-3.3.3.tgz", + "integrity": "sha512-N0BOsdFAlNRfmwMhjAsLVWOk7Ljmeb39iqFlsV1At+jqRhSUP9yeof8FyJu4imaJiSUp8vQebWD/guZwGQC8iA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://npm-registry.infra.dreamplug.net/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + }, + "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "nan": { + "version": "2.16.0", + "resolved": "https://npm-registry.infra.dreamplug.net/nan/-/nan-2.16.0.tgz", + "integrity": "sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==", + "dev": true, + "optional": true + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://npm-registry.infra.dreamplug.net/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://npm-registry.infra.dreamplug.net/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://npm-registry.infra.dreamplug.net/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://npm-registry.infra.dreamplug.net/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "nested-error-stacks": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz", + "integrity": "sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-dir": { + "version": "0.1.17", + "resolved": "https://npm-registry.infra.dreamplug.net/node-dir/-/node-dir-0.1.17.tgz", + "integrity": "sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU=", + "dev": true, + "requires": { + "minimatch": "^3.0.2" + } + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://npm-registry.infra.dreamplug.net/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + } + } + }, + "node-releases": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/node-releases/-/node-releases-2.0.5.tgz", + "integrity": "sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==", + "dev": true + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dev": true, + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://npm-registry.infra.dreamplug.net/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/object.entries/-/object.entries-1.1.5.tgz", + "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "object.fromentries": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/object.fromentries/-/object.fromentries-2.0.5.tgz", + "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz", + "integrity": "sha512-sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ==", + "dev": true, + "requires": { + "array.prototype.reduce": "^1.0.4", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.1" + } + }, + "object.hasown": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/object.hasown/-/object.hasown-1.1.1.tgz", + "integrity": "sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==", + "dev": true, + "requires": { + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "object.values": { + "version": "1.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "objectorarray": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/objectorarray/-/objectorarray-1.0.5.tgz", + "integrity": "sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==", + "dev": true + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "8.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "requires": { + "is-docker": "^2.0.0" + } + } + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "requires": { + "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" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "optional": true + }, + "p-all": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-all/-/p-all-2.1.0.tgz", + "integrity": "sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA==", + "dev": true, + "requires": { + "p-map": "^2.0.0" + }, + "dependencies": { + "p-map": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + } + } + }, + "p-event": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "requires": { + "p-timeout": "^3.1.0" + } + }, + "p-filter": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-filter/-/p-filter-2.1.0.tgz", + "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", + "dev": true, + "requires": { + "p-map": "^2.0.0" + }, + "dependencies": { + "p-map": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true + } + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-timeout": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "requires": { + "p-finally": "^1.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pako": { + "version": "1.0.11", + "resolved": "https://npm-registry.infra.dreamplug.net/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true + }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dev": true, + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dev": true, + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@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": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://npm-registry.infra.dreamplug.net/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://npm-registry.infra.dreamplug.net/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pidtree": { + "version": "0.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pidtree/-/pidtree-0.5.0.tgz", + "integrity": "sha512-9nxspIM7OpZuhBxPg73Zvyq7j1QMPMPsGKTqRc2XOaFQauDvoNz9fM1Wdkjmeo7l9GXOZiRs97sPkuayl39wjA==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true, + "optional": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "optional": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "pkg-dir": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", + "dev": true, + "requires": { + "find-up": "^5.0.0" + }, + "dependencies": { + "find-up": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + } + } + }, + "pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://npm-registry.infra.dreamplug.net/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "dev": true, + "requires": { + "ts-pnp": "^1.1.6" + } + }, + "polished": { + "version": "4.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/polished/-/polished-4.2.2.tgz", + "integrity": "sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==", + "dev": true, + "requires": { + "@babel/runtime": "^7.17.8" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "8.4.14", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-flexbugs-fixes": { + "version": "4.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", + "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", + "dev": true, + "requires": { + "postcss": "^7.0.26" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-loader": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-loader/-/postcss-loader-4.3.0.tgz", + "integrity": "sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0", + "semver": "^7.3.4" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dev": true, + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dev": true, + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + }, + "dependencies": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dev": true, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "prettier": { + "version": "2.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "pretty-error": { + "version": "2.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dev": true, + "requires": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "prismjs": { + "version": "1.28.0", + "resolved": "https://npm-registry.infra.dreamplug.net/prismjs/-/prismjs-1.28.0.tgz", + "integrity": "sha512-8aaXdYvl1F7iC7Xm1spqSaY/OJBpYW3v+KJ+F17iYxvdc8sfjW194COK5wVhMZX45tGteiBQgdvD/nhxcRwylw==", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "https://npm-registry.infra.dreamplug.net/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "promise.allsettled": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/promise.allsettled/-/promise.allsettled-1.0.5.tgz", + "integrity": "sha512-tVDqeZPoBC0SlzJHzWGZ2NKAguVq2oiYj7gbggbiTvH2itHohijTp7njOUA0aQ/nl+0lr/r6egmhoYu63UZ/pQ==", + "dev": true, + "requires": { + "array.prototype.map": "^1.0.4", + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1", + "get-intrinsic": "^1.1.1", + "iterate-value": "^1.0.2" + } + }, + "promise.prototype.finally": { + "version": "3.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/promise.prototype.finally/-/promise.prototype.finally-3.1.3.tgz", + "integrity": "sha512-EXRF3fC9/0gz4qkt/f5EP5iW4kj9oFpBICNpCNOb/52+8nlHIX07FPLbi/q4qYBQ1xZqivMzTpNQSnArVASolQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "prompts": { + "version": "2.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://npm-registry.infra.dreamplug.net/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "property-information": { + "version": "5.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "dev": true, + "requires": { + "xtend": "^4.0.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://npm-registry.infra.dreamplug.net/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://npm-registry.infra.dreamplug.net/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.10.5", + "resolved": "https://npm-registry.infra.dreamplug.net/qs/-/qs-6.10.5.tgz", + "integrity": "sha512-O5RlPh0VFtR78y79rgcgKK4wbAI0C5zGVLztOIdpWX6ep368q5Hv6XRxDvXuZ9q3C6v+e3n8UfZZJw7IIG27eQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true + }, + "ramda": { + "version": "0.28.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ramda/-/ramda-0.28.0.tgz", + "integrity": "sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==", + "dev": true + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://npm-registry.infra.dreamplug.net/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "raw-loader": { + "version": "4.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/raw-loader/-/raw-loader-4.0.2.tgz", + "integrity": "sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "react": { + "version": "17.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "react-docgen": { + "version": "5.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react-docgen/-/react-docgen-5.4.2.tgz", + "integrity": "sha512-4Z5XYpHsn2bbUfaflxoS30VhUvQLBe4GCwwM5v1e1FUOeDdaoJi6wUGSmYp6OdXYEISEAOEIaSPBk4iezNCKBw==", + "dev": true, + "requires": { + "@babel/core": "^7.7.5", + "@babel/generator": "^7.12.11", + "@babel/runtime": "^7.7.6", + "ast-types": "^0.14.2", + "commander": "^2.19.0", + "doctrine": "^3.0.0", + "estree-to-babel": "^3.1.0", + "neo-async": "^2.6.1", + "node-dir": "^0.1.10", + "strip-indent": "^3.0.0" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + } + } + }, + "react-docgen-typescript": { + "version": "2.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react-docgen-typescript/-/react-docgen-typescript-2.2.2.tgz", + "integrity": "sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==", + "dev": true + }, + "react-dom": { + "version": "17.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + } + }, + "react-element-to-jsx-string": { + "version": "14.3.4", + "resolved": "https://npm-registry.infra.dreamplug.net/react-element-to-jsx-string/-/react-element-to-jsx-string-14.3.4.tgz", + "integrity": "sha512-t4ZwvV6vwNxzujDQ+37bspnLwA4JlgUPWhLjBJWsNIDceAf6ZKUTCjdm08cN6WeZ5pTMKiCJkmAYnpmR4Bm+dg==", + "dev": true, + "requires": { + "@base2/pretty-print-object": "1.0.1", + "is-plain-object": "5.0.0", + "react-is": "17.0.2" + }, + "dependencies": { + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + } + } + }, + "react-inspector": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/react-inspector/-/react-inspector-5.1.1.tgz", + "integrity": "sha512-GURDaYzoLbW8pMGXwYPDBIv6nqei4kK7LPRZ9q9HCZF54wqXz/dnylBp/kfE9XmekBhHvLDdcYeyIwSrvtOiWg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.0.0", + "is-dom": "^1.0.0", + "prop-types": "^15.0.0" + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://npm-registry.infra.dreamplug.net/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "react-portal": { + "version": "4.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/react-portal/-/react-portal-4.2.2.tgz", + "integrity": "sha512-vS18idTmevQxyQpnde0Td6ZcUlv+pD8GTyR42n3CHUQq9OHi1C4jDE4ZWEbEsrbrLRhSECYiao58cvocwMtP7Q==", + "requires": { + "prop-types": "^15.5.8" + } + }, + "react-refresh": { + "version": "0.11.0", + "resolved": "https://npm-registry.infra.dreamplug.net/react-refresh/-/react-refresh-0.11.0.tgz", + "integrity": "sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==", + "dev": true + }, + "react-syntax-highlighter": { + "version": "15.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/react-syntax-highlighter/-/react-syntax-highlighter-15.5.0.tgz", + "integrity": "sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "highlight.js": "^10.4.1", + "lowlight": "^1.17.0", + "prismjs": "^1.27.0", + "refractor": "^3.6.0" + } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "optional": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "dependencies": { + "indent-string": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "optional": true, + "requires": { + "repeating": "^2.0.0" + } + } + } + }, + "refractor": { + "version": "3.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/refractor/-/refractor-3.6.0.tgz", + "integrity": "sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==", + "dev": true, + "requires": { + "hastscript": "^6.0.0", + "parse-entities": "^2.0.0", + "prismjs": "~1.27.0" + }, + "dependencies": { + "prismjs": { + "version": "1.27.0", + "resolved": "https://npm-registry.infra.dreamplug.net/prismjs/-/prismjs-1.27.0.tgz", + "integrity": "sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==", + "dev": true + } + } + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "regenerator-transform": { + "version": "0.15.0", + "resolved": "https://npm-registry.infra.dreamplug.net/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://npm-registry.infra.dreamplug.net/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true + }, + "regexpu-core": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + } + }, + "regjsgen": { + "version": "0.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "regjsparser": { + "version": "0.8.4", + "resolved": "https://npm-registry.infra.dreamplug.net/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://npm-registry.infra.dreamplug.net/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "remark-external-links": { + "version": "8.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-external-links/-/remark-external-links-8.0.0.tgz", + "integrity": "sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA==", + "dev": true, + "requires": { + "extend": "^3.0.0", + "is-absolute-url": "^3.0.0", + "mdast-util-definitions": "^4.0.0", + "space-separated-tokens": "^1.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "remark-footnotes": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "dev": true + }, + "remark-mdx": { + "version": "1.6.22", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "dev": true, + "requires": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.9", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fcore/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fhelper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "dev": true + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://npm-registry.infra.dreamplug.net/@babel%2fplugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "remark-parse": { + "version": "8.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dev": true, + "requires": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + } + }, + "remark-slug": { + "version": "6.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-slug/-/remark-slug-6.1.0.tgz", + "integrity": "sha512-oGCxDF9deA8phWvxFuyr3oSJsdyUAxMFbA0mZ7Y1Sas+emILtO+e5WutF9564gDsEN4IXaQXm5pFo6MLH+YmwQ==", + "dev": true, + "requires": { + "github-slugger": "^1.0.0", + "mdast-util-to-string": "^1.0.0", + "unist-util-visit": "^2.0.0" + } + }, + "remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "dev": true, + "requires": { + "mdast-squeeze-paragraphs": "^4.0.0" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "renderkid": { + "version": "2.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dev": true, + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "repeat-element": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://npm-registry.infra.dreamplug.net/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "optional": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "requireindex": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/requireindex/-/requireindex-1.2.0.tgz", + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", + "dev": true + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://npm-registry.infra.dreamplug.net/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://npm-registry.infra.dreamplug.net/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rollup": { + "version": "2.75.7", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup/-/rollup-2.75.7.tgz", + "integrity": "sha512-VSE1iy0eaAYNCxEXaleThdFXqZJ42qDBatAwrfnPlENEZ8erQ+0LYX4JXOLPceWfZpV1VtZwZ3dFCuOZiSyFtQ==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "rollup-plugin-babel": { + "version": "4.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup-plugin-babel/-/rollup-plugin-babel-4.4.0.tgz", + "integrity": "sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "rollup-pluginutils": "^2.8.1" + } + }, + "rollup-plugin-peer-deps-external": { + "version": "2.2.4", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup-plugin-peer-deps-external/-/rollup-plugin-peer-deps-external-2.2.4.tgz", + "integrity": "sha512-AWdukIM1+k5JDdAqV/Cxd+nejvno2FVLVeZ74NKggm3Q5s9cbbcOgUPGdbxPi4BXu7xGaZ8HG12F+thImYu/0g==", + "dev": true + }, + "rollup-plugin-svg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-svg/-/rollup-plugin-svg-2.0.0.tgz", + "integrity": "sha512-DmE7dSQHo1SC5L2uH2qul3Mjyd5oV6U1aVVkyvTLX/mUsRink7f1b1zaIm+32GEBA6EHu8H/JJi3DdWqM53ySQ==", + "dev": true, + "requires": { + "rollup-pluginutils": "^1.3.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.2.1.tgz", + "integrity": "sha512-6/I1dwNKk0N9iGOU3ydzAAurz4NPo/ttxZNCqgIVbWFvWyzWBSNonRrJ5CpjDuyBfmM7ENN7WCzUi9aT/UPXXQ==", + "dev": true + }, + "rollup-pluginutils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz", + "integrity": "sha512-SjdWWWO/CUoMpDy8RUbZ/pSpG68YHmhk5ROKNIoi2En9bJ8bTt3IhYi254RWiTclQmL7Awmrq+rZFOhZkJAHmQ==", + "dev": true, + "requires": { + "estree-walker": "^0.2.1", + "minimatch": "^3.0.2" + } + } + } + }, + "rollup-plugin-terser": { + "version": "7.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", + "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.10.4", + "jest-worker": "^26.2.1", + "serialize-javascript": "^4.0.0", + "terser": "^5.0.0" + }, + "dependencies": { + "acorn": { + "version": "8.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true + }, + "commander": { + "version": "2.20.3", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "terser": { + "version": "5.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/terser/-/terser-5.14.1.tgz", + "integrity": "sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + } + } + }, + "rollup-plugin-visualizer": { + "version": "5.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.6.0.tgz", + "integrity": "sha512-CKcc8GTUZjC+LsMytU8ocRr/cGZIfMR7+mdy4YnlyetlmIl/dM8BMnOEpD4JPIGt+ZVW7Db9ZtSsbgyeBH3uTA==", + "dev": true, + "requires": { + "nanoid": "^3.1.32", + "open": "^8.4.0", + "source-map": "^0.7.3", + "yargs": "^17.3.1" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "17.5.1", + "resolved": "https://npm-registry.infra.dreamplug.net/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + } + }, + "yargs-parser": { + "version": "21.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/yargs-parser/-/yargs-parser-21.0.1.tgz", + "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", + "dev": true + } + } + }, + "rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://npm-registry.infra.dreamplug.net/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "dev": true, + "requires": { + "estree-walker": "^0.6.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://npm-registry.infra.dreamplug.net/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "dev": true + } + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://npm-registry.infra.dreamplug.net/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + }, + "dependencies": { + "aproba": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + } + } + }, + "rxjs": { + "version": "7.5.5", + "resolved": "https://npm-registry.infra.dreamplug.net/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sane": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dev": true, + "requires": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "scheduler": { + "version": "0.20.2", + "resolved": "https://npm-registry.infra.dreamplug.net/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "schema-utils": { + "version": "2.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://npm-registry.infra.dreamplug.net/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "send": { + "version": "0.18.0", + "resolved": "https://npm-registry.infra.dreamplug.net/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-favicon": { + "version": "2.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/serve-favicon/-/serve-favicon-2.5.0.tgz", + "integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=", + "dev": true, + "requires": { + "etag": "~1.8.1", + "fresh": "0.5.2", + "ms": "2.1.1", + "parseurl": "~1.3.2", + "safe-buffer": "5.1.1" + }, + "dependencies": { + "ms": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://npm-registry.infra.dreamplug.net/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://npm-registry.infra.dreamplug.net/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "slash": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "6.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-6.1.0.tgz", + "integrity": "sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + } + } + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://npm-registry.infra.dreamplug.net/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "dev": true + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://npm-registry.infra.dreamplug.net/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "dev": true + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.11", + "resolved": "https://npm-registry.infra.dreamplug.net/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "ssri": { + "version": "6.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "https://npm-registry.infra.dreamplug.net/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "stackframe": { + "version": "1.3.4", + "resolved": "https://npm-registry.infra.dreamplug.net/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", + "dev": true + }, + "state-toggle": { + "version": "1.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://npm-registry.infra.dreamplug.net/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true + }, + "store2": { + "version": "2.13.2", + "resolved": "https://npm-registry.infra.dreamplug.net/store2/-/store2-2.13.2.tgz", + "integrity": "sha512-CMtO2Uneg3SAz/d6fZ/6qbqqQHi2ynq6/KzMD/26gTkiEShCcpqFfTHgOxsE0egAq6SX3FmN4CeSqn8BzXQkJg==", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://npm-registry.infra.dreamplug.net/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string.prototype.matchall": { + "version": "4.0.7", + "resolved": "https://npm-registry.infra.dreamplug.net/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", + "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1", + "get-intrinsic": "^1.1.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.1", + "side-channel": "^1.0.4" + } + }, + "string.prototype.padend": { + "version": "3.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", + "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "string.prototype.padstart": { + "version": "3.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/string.prototype.padstart/-/string.prototype.padstart-3.1.3.tgz", + "integrity": "sha512-NZydyOMtYxpTjGqp0VN5PYUF/tsU15yDMZnUdj16qRUIUiMJkHHSDElYyQFrMu+/WloTpA7MQSiADhBicDfaoA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + } + }, + "string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + } + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "optional": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "optional": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "style-loader": { + "version": "1.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + } + }, + "style-to-object": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "dev": true, + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "styled-components": { + "version": "5.3.5", + "resolved": "https://npm-registry.infra.dreamplug.net/styled-components/-/styled-components-5.3.5.tgz", + "integrity": "sha512-ndETJ9RKaaL6q41B69WudeqLzOpY1A/ET/glXkNZ2T7dPjPqpPCXXQjDFYZWwNnE5co0wX+gTCqx9mfxTmSIPg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, + "symbol.prototype.description": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz", + "integrity": "sha512-x738iXRYsrAt9WBhRCVG5BtIC3B7CUkFwbHW2zOvGtwM33s7JjrCDyq8V0zgMYVb5ymsL8+qkzzpANH63CPQaQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-symbol-description": "^1.0.0", + "has-symbols": "^1.0.2", + "object.getownpropertydescriptors": "^2.1.2" + } + }, + "synchronous-promise": { + "version": "2.0.15", + "resolved": "https://npm-registry.infra.dreamplug.net/synchronous-promise/-/synchronous-promise-2.0.15.tgz", + "integrity": "sha512-k8uzYIkIVwmT+TcglpdN50pS2y1BDcUnBPK9iJeGu0Pl1lOI8pD6wtzgw91Pjpe+RxtTncw32tLxs/R0yNL2Mg==", + "dev": true + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "tar": { + "version": "6.1.11", + "resolved": "https://npm-registry.infra.dreamplug.net/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "chownr": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + } + } + }, + "telejson": { + "version": "6.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/telejson/-/telejson-6.0.8.tgz", + "integrity": "sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg==", + "dev": true, + "requires": { + "@types/is-function": "^1.0.0", + "global": "^4.4.0", + "is-function": "^1.0.2", + "is-regex": "^1.1.2", + "is-symbol": "^1.0.3", + "isobject": "^4.0.0", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3" + } + }, + "terser": { + "version": "4.8.0", + "resolved": "https://npm-registry.infra.dreamplug.net/terser/-/terser-4.8.0.tgz", + "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "dev": true, + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://npm-registry.infra.dreamplug.net/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.4.5", + "resolved": "https://npm-registry.infra.dreamplug.net/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "dev": true, + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://npm-registry.infra.dreamplug.net/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://npm-registry.infra.dreamplug.net/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", + "dev": true + }, + "trim": { + "version": "0.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", + "dev": true + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true, + "optional": true + }, + "trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "dev": true + }, + "trough": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "dev": true + }, + "ts-dedent": { + "version": "2.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ts-dedent/-/ts-dedent-2.2.0.tgz", + "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "dev": true + }, + "ts-pnp": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", + "dev": true + }, + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "tslib": { + "version": "2.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "dev": true + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://npm-registry.infra.dreamplug.net/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://npm-registry.infra.dreamplug.net/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://npm-registry.infra.dreamplug.net/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://npm-registry.infra.dreamplug.net/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://npm-registry.infra.dreamplug.net/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.7.4", + "resolved": "https://npm-registry.infra.dreamplug.net/typescript/-/typescript-4.7.4.tgz", + "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==", + "dev": true + }, + "uglify-js": { + "version": "3.16.1", + "resolved": "https://npm-registry.infra.dreamplug.net/uglify-js/-/uglify-js-3.16.1.tgz", + "integrity": "sha512-X5BGTIDH8U6IQ1TIRP62YC36k+ULAa1d59BxlWvPUJ1NkW5L3FwcGfEzuVvGmhJFBu0YJ5Ge25tmRISqCmLiRQ==", + "dev": true, + "optional": true + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unfetch": { + "version": "4.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unfetch/-/unfetch-4.2.0.tgz", + "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==", + "dev": true + }, + "unherit": { + "version": "1.1.3", + "resolved": "https://npm-registry.infra.dreamplug.net/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dev": true, + "requires": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true + }, + "unified": { + "version": "9.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dev": true, + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + } + } + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unist-builder": { + "version": "2.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "dev": true + }, + "unist-util-generated": { + "version": "1.1.6", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", + "dev": true + }, + "unist-util-is": { + "version": "4.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "dev": true + }, + "unist-util-position": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "dev": true + }, + "unist-util-remove": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "dev": true, + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dev": true, + "requires": { + "unist-util-visit": "^2.0.0" + } + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dev": true, + "requires": { + "@types/unist": "^2.0.2" + } + }, + "unist-util-visit": { + "version": "2.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + } + }, + "unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, + "untildify": { + "version": "2.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/untildify/-/untildify-2.1.0.tgz", + "integrity": "sha1-F+soB5h/dpUunASF/DEdBqgmouA=", + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0" + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true, + "optional": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://npm-registry.infra.dreamplug.net/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://npm-registry.infra.dreamplug.net/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-loader": { + "version": "4.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util": { + "version": "0.11.1", + "resolved": "https://npm-registry.infra.dreamplug.net/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + }, + "uuid-browser": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/uuid-browser/-/uuid-browser-3.1.0.tgz", + "integrity": "sha1-DwWkCu90+eWVHiDvv0SxGHHlZBA=", + "dev": true + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "v8-to-istanbul": { + "version": "9.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz", + "integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "vfile": { + "version": "4.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + } + } + }, + "vfile-location": { + "version": "3.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "dev": true + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://npm-registry.infra.dreamplug.net/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://npm-registry.infra.dreamplug.net/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", + "dev": true + }, + "walker": { + "version": "1.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "requires": { + "makeerror": "1.0.12" + } + }, + "watchpack": { + "version": "1.7.5", + "resolved": "https://npm-registry.infra.dreamplug.net/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", + "dev": true, + "requires": { + "chokidar": "^3.4.1", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.1" + } + }, + "watchpack-chokidar2": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", + "dev": true, + "optional": true, + "requires": { + "chokidar": "^2.1.8" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "optional": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "optional": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://npm-registry.infra.dreamplug.net/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true, + "optional": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "optional": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://npm-registry.infra.dreamplug.net/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "optional": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "optional": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://npm-registry.infra.dreamplug.net/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "optional": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "optional": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "optional": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "optional": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "optional": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://npm-registry.infra.dreamplug.net/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "optional": true, + "requires": { + "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" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "optional": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "optional": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "web-namespaces": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "dev": true + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", + "dev": true + }, + "webpack": { + "version": "4.46.0", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack/-/webpack-4.46.0.tgz", + "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.5.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://npm-registry.infra.dreamplug.net/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "json5": { + "version": "1.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://npm-registry.infra.dreamplug.net/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "webpack-dev-middleware": { + "version": "3.7.3", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", + "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", + "dev": true, + "requires": { + "memory-fs": "^0.4.1", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", + "range-parser": "^1.2.1", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "mime": { + "version": "2.6.0", + "resolved": "https://npm-registry.infra.dreamplug.net/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true + } + } + }, + "webpack-filter-warnings-plugin": { + "version": "1.2.1", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-filter-warnings-plugin/-/webpack-filter-warnings-plugin-1.2.1.tgz", + "integrity": "sha512-Ez6ytc9IseDMLPo0qCuNNYzgtUl8NovOqjIq4uAU8LTD4uoa1w1KpZyyzFtLTEMZpkkOkLfL9eN+KGYdk1Qtwg==", + "dev": true + }, + "webpack-hot-middleware": { + "version": "2.25.1", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-hot-middleware/-/webpack-hot-middleware-2.25.1.tgz", + "integrity": "sha512-Koh0KyU/RPYwel/khxbsDz9ibDivmUbrRuKSSQvW42KSDdO4w23WI3SkHpSUKHE76LrFnnM/L7JCrpBwu8AXYw==", + "dev": true, + "requires": { + "ansi-html-community": "0.0.8", + "html-entities": "^2.1.0", + "querystring": "^0.2.0", + "strip-ansi": "^6.0.0" + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "dev": true, + "requires": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "webpack-virtual-modules": { + "version": "0.2.2", + "resolved": "https://npm-registry.infra.dreamplug.net/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz", + "integrity": "sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==", + "dev": true, + "requires": { + "debug": "^3.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://npm-registry.infra.dreamplug.net/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dev": true, + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://npm-registry.infra.dreamplug.net/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "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" + } + }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://npm-registry.infra.dreamplug.net/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "widest-line": { + "version": "3.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dev": true, + "requires": { + "string-width": "^4.0.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://npm-registry.infra.dreamplug.net/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://npm-registry.infra.dreamplug.net/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "worker-rpc": { + "version": "0.1.1", + "resolved": "https://npm-registry.infra.dreamplug.net/worker-rpc/-/worker-rpc-0.1.1.tgz", + "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", + "dev": true, + "requires": { + "microevent.ts": "~0.1.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://npm-registry.infra.dreamplug.net/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://npm-registry.infra.dreamplug.net/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "8.8.0", + "resolved": "https://npm-registry.infra.dreamplug.net/ws/-/ws-8.8.0.tgz", + "integrity": "sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==", + "dev": true + }, + "x-default-browser": { + "version": "0.4.0", + "resolved": "https://npm-registry.infra.dreamplug.net/x-default-browser/-/x-default-browser-0.4.0.tgz", + "integrity": "sha1-cM8NqF2nwKtcsPFaiX8jIqa91IE=", + "dev": true, + "requires": { + "default-browser-id": "^1.0.4" + } + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://npm-registry.infra.dreamplug.net/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://npm-registry.infra.dreamplug.net/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://npm-registry.infra.dreamplug.net/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://npm-registry.infra.dreamplug.net/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://npm-registry.infra.dreamplug.net/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "y18n": { + "version": "5.0.8", + "resolved": "https://npm-registry.infra.dreamplug.net/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + } + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://npm-registry.infra.dreamplug.net/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://npm-registry.infra.dreamplug.net/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://npm-registry.infra.dreamplug.net/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..4827e6a --- /dev/null +++ b/package.json @@ -0,0 +1,170 @@ +{ + "name": "@cred/neopop-web", + "version": "1.0.0", + "description": "NeoPOP components library by CRED", + "main": "lib/index.js", + "module": "lib-esm/index.js", + "typings": "lib/index.d.ts", + "scripts": { + "build": "./scripts/build", + "storybook": "start-storybook -p 6006 -s ./.storybook/images", + "build:storybook": "build-storybook -s ./.storybook/images", + "lint": "eslint \"src/**/*.{js,jsx,ts,tsx}\" --quiet --fix", + "prepare": "husky install", + "pretty": "prettier --write src/**/*.{ts,tsx}" + }, + "exports": { + ".": { + "node": "./lib/index.js", + "require": "./lib/index.js", + "default": "./lib-esm/index.js" + }, + "./lib/components": { + "node": "./lib/components/index.js", + "require": "./lib/components/index.js", + "default": "./lib-esm/components/index.js" + }, + "./lib/primitives": { + "node": "./lib/primitives/index.js", + "require": "./lib/primitives/index.js", + "default": "./lib-esm/primitives/index.js" + }, + "./lib/utils": { + "node": "./lib/utils/index.js", + "require": "./lib/utils/index.js", + "default": "./lib-esm/utils/index.js" + }, + "./lib/hooks": { + "node": "./lib/hooks/index.js", + "require": "./lib/hooks/index.js", + "default": "./lib-esm/hooks/index.js" + }, + "./lib/*": { + "node": [ + "./lib/*.js", + "./lib/*/index.js", + "./lib/**/*" + ], + "default": [ + "./lib-esm/*.js", + "./lib-esm/*/index.js", + "./lib-esm/**/index.js" + ] + }, + "./lib-esm/*": { + "node": [ + "./lib/*.js", + "./lib/*/index.js", + "./lib/**/*" + ], + "default": [ + "./lib-esm/*.js", + "./lib-esm/*/index.js", + "./lib-esm/**/index.js" + ] + } + }, + "files": [ + "lib", + "lib-esm" + ], + "author": "webdev@cred.club", + "license": "Apache-2.0", + "dependencies": { + "@react-spring/web": "^9.4.4", + "@use-gesture/react": "^10.2.11", + "react-portal": "^4.2.2" + }, + "devDependencies": { + "@babel/cli": "^7.17.6", + "@babel/core": "^7.17.9", + "@babel/eslint-parser": "^7.17.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.16.7", + "@babel/plugin-transform-modules-commonjs": "^7.17.9", + "@babel/preset-env": "^7.16.11", + "@babel/preset-react": "^7.16.7", + "@babel/preset-typescript": "^7.16.7", + "@rollup/plugin-alias": "^3.1.9", + "@rollup/plugin-babel": "^5.3.1", + "@rollup/plugin-commonjs": "^22.0.0", + "@rollup/plugin-node-resolve": "^13.2.1", + "@rollup/plugin-typescript": "^8.3.2", + "@storybook/addon-actions": "^6.5.5", + "@storybook/addon-docs": "^6.5.5", + "@storybook/addon-essentials": "^6.5.5", + "@storybook/addon-links": "^6.5.5", + "@storybook/react": "^6.5.5", + "@types/react": "^18.0.8", + "@types/react-portal": "^4.0.4", + "@types/styled-components": "^5.1.25", + "@typescript-eslint/eslint-plugin": "^5.21.0", + "@typescript-eslint/parser": "^5.21.0", + "babel-loader": "^8.2.5", + "babel-plugin-add-react-displayname": "0.0.5", + "babel-plugin-macros": "3.1.0", + "babel-plugin-preval": "^5.1.0", + "babel-plugin-styled-components": "^2.0.7", + "babel-plugin-transform-replace-expressions": "0.2.0", + "babel-polyfill": "6.26.0", + "eslint": "^8.14.0", + "eslint-config-airbnb-typescript": "^17.0.0", + "eslint-config-prettier": "^8.5.0", + "eslint-import-resolver-typescript": "^2.7.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.4.1", + "eslint-plugin-prettier": "^4.0.0", + "eslint-plugin-react": "^7.29.4", + "eslint-plugin-react-hooks": "^4.5.0", + "eslint-plugin-storybook": "^0.5.12", + "husky": ">=6", + "lint-staged": "^12.4.1", + "postcss": "^8.4.12", + "prettier": "^2.6.2", + "react": "^17.0.2", + "react-dom": "^17.0.2", + "rollup": "^2.70.2", + "rollup-plugin-babel": "4.4.0", + "rollup-plugin-peer-deps-external": "^2.2.4", + "rollup-plugin-svg": "^2.0.0", + "rollup-plugin-terser": "7.0.2", + "rollup-plugin-visualizer": "^5.6.0", + "styled-components": "^5.3.5", + "typescript": "^4.6.3" + }, + "peerDependencies": { + "react": "^17.0.2 || ^18.0.0", + "react-dom": "^17.0.2 || ^18.0.0", + "styled-components": "^5.3.5" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "src/**/*.{js,jsx,ts,tsx,css}": [ + "prettier --write", + "eslint \"src/**/*.{js,jsx,ts,tsx}\" --quiet --fix" + ] + }, + "directories": { + "lib": "lib" + }, + "keywords": [ + "neopop", + "design system", + "design", + "react", + "web", + "cred" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/CRED-CLUB/neopop-web.git" + }, + "bugs": { + "url": "https://github.com/CRED-CLUB/neopop-web/issues" + }, + "homepage": "https://github.com/CRED-CLUB/neopop-web#readme" +} diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 0000000..8d93b15 --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,56 @@ +import { babel } from '@rollup/plugin-babel'; +import resolve from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; +import peerDepsExternal from 'rollup-plugin-peer-deps-external'; +import alias from '@rollup/plugin-alias'; +import path from 'path'; +import svg from 'rollup-plugin-svg'; + +const extensions = ['.js', '.jsx', '.ts', '.tsx', '.mdx']; +const projectRootDir = path.resolve(__dirname); +const plugins = [ + svg(), + peerDepsExternal(), + resolve({ extensions }), + commonjs(), + babel({ extensions, babelHelpers: 'bundled' }), + alias({ + entries: [ + { find: '@components', replacement: `${projectRootDir}/src/components` }, + { find: '@primitives', replacement: `${projectRootDir}/src/primitives` }, + { find: '@types', replacement: `${projectRootDir}/src/types` }, + { find: '@hooks', replacement: `${projectRootDir}/src/hooks` }, + { find: '@utils', replacement: `${projectRootDir}/src/utils` }, + ], + }), +]; + +export default [ + { + input: 'src/index.ts', + external: ['react', 'react-dom'], + plugins, + output: { + dir: 'lib-esm', + format: 'esm', + preserveModules: true, + preserveModulesRoot: 'src', + sourcemap: true, + name: '@cred/neopop-web', + }, + }, + { + input: 'src/index.ts', + external: ['react', 'react-dom'], + plugins, + output: { + exports: 'named', + dir: 'lib', + format: 'cjs', + preserveModules: true, + preserveModulesRoot: 'src', + sourcemap: true, + name: '@cred/neopop-web', + }, + }, +]; diff --git a/scripts/build b/scripts/build new file mode 100755 index 0000000..f91fa67 --- /dev/null +++ b/scripts/build @@ -0,0 +1,13 @@ +#!/bin/bash + +# Clean up +rm -rf lib +rm -rf lib-esm + +# Bundle and Compile +npx cross-env NODE_ENV=production rollup -c + +# Type check and Typedef +npx tsc --project tsconfig.build.json + + diff --git a/src/components/Back/index.tsx b/src/components/Back/index.tsx new file mode 100644 index 0000000..202a2b5 --- /dev/null +++ b/src/components/Back/index.tsx @@ -0,0 +1,52 @@ +import React from 'react'; +import { mainColors, typographyGuide } from '@primitives'; +import { Row, VerticalSpacer } from '@components/Helpers'; +import Typography from '../Typography'; +import { BackProps } from './types'; + +const Back = (props: BackProps) => { + const { + heading, + color, + textStyle = { ...typographyGuide.back.heading }, + rightElement, + onClick, + } = props; + + return ( + + + + + + + + + + + {heading ? ( + + {heading} + + ) : null} + +

+ + ); +}; + +export default Back; diff --git a/src/components/Back/types.ts b/src/components/Back/types.ts new file mode 100644 index 0000000..8e3c5cd --- /dev/null +++ b/src/components/Back/types.ts @@ -0,0 +1,9 @@ +import { FontNameSpaceInterface } from '@types'; + +export interface BackProps { + heading?: string; + color?: string; + onClick: React.MouseEventHandler; + rightElement?: React.ReactNode; + textStyle?: FontNameSpaceInterface; +} diff --git a/src/components/BottomSheet/BottomSheet.stories.mdx b/src/components/BottomSheet/BottomSheet.stories.mdx new file mode 100644 index 0000000..26dd026 --- /dev/null +++ b/src/components/BottomSheet/BottomSheet.stories.mdx @@ -0,0 +1,197 @@ +import { ComponentStory } from '@storybook/react'; +import { useArgs } from '@storybook/client-api'; +import BottomSheet, { BottomSheetCustom } from '.'; +import { Meta, Canvas, Story, ArgsTable } from '@storybook/addon-docs'; +import { colorPalette, mainColors, FontVariant } from '@primitives'; +import { Typography, Button } from '@components'; + + + +export const Template = (args) => { + const [, updateArgs] = useArgs(); + const { handleClose, ...props } = args; + const closeHandler = () => { + handleClose(); + updateArgs({ open: false }); + }; + return ( + <> + + + + BottomSheet Content + + + + ); +}; + +export const Template2 = (args) => { + const [, updateArgs] = useArgs(); + const { handleClose, ...props } = args; + const closeHandler = () => { + handleClose(); + updateArgs({ open: false }); + }; + return ( + <> + + +
+ + 1914 translation by H. Rackham + +
+
+ + ); +}; + +# BottomSheet + +BottomSheet is modal like component but more optimized for mobile devices + +## Usage + +#### Default + +```jsx +export const MyComponent = (props) => { + const [isOpen, setOpen] = useState(); + + const handleClose = () => { + setOpen(false); + }; + return ( + <> + + + + 1914 translation by H. Rackham + + + + ); +}; +``` + +#### Custom + +```jsx +export const MyComponent = (props) => { + const [isOpen, setOpen] = useState(); + + const handleClose = () => { + setOpen(false); + }; + + return ( + <> + + +
+ + 1914 translation by H. Rackham + +
+
+ + ); +}; +``` + +## Variants + +There are two states of BottomSheet + +#### Default + + + + {Template.bind({})} + + + +#### Custom + + + + {Template2.bind({})} + + + +## Props + +
+ +| prop | description | type | +| ----------------- | --------------------------------------------------------------------------------------------- | ---------------- | +| `open` \* | controls the state of bottomsheet. if true, bottomsheet opens | `boolean` | +| `handleClose` \* | callback function that triggers on close action (for example if someone click/tap on overlay) | `function` | +| `sheetStyle` | custom styles | `CSS Properties` | +| `sheetPlunkColor` | color of plunk | `string` | +| `maxHeight` | max height that bottom sheet will take to show content | `string` | +| `overlayColor` | transparency and color of overlay | `string` | +| `node` | DOM node on which to mount to (we use ReactPortal under the hood) default is `document.body` | `HTMLElement` | +| `blocking` | if true Bottomsheet won't close on clicking/tapping the overlay | `boolean` | +| `onAfterClose` | event handler which triggers after unmounting the bottomsheet | `function` | +| `onBeforeClose` | event handler which triggers before close animation starts | `function` | +| `onCloseEnd` | event handler which triggers after close animation ends | `function` | + +
diff --git a/src/components/BottomSheet/components/BottomSheetControlled.tsx b/src/components/BottomSheet/components/BottomSheetControlled.tsx new file mode 100644 index 0000000..0b5cfdd --- /dev/null +++ b/src/components/BottomSheet/components/BottomSheetControlled.tsx @@ -0,0 +1,258 @@ +import React, { useEffect, useRef } from 'react'; +import { useSpring } from '@react-spring/web'; +import { Handler, useDrag, rubberbandIfOutOfBounds } from '@use-gesture/react'; +import { Portal } from 'react-portal'; +import useDelayMount from '@hooks/useDelayMount'; +import useClientHeight from '@hooks/useClientHeight'; +import { UseBottomSheetMechanicsArgs, Prop } from '../types'; + +import { Wraper, Overlay, Sheet, GapFiller, Content, Card, Notch, CardCustom } from '../styles'; + +const twoThirdOf = (number: number) => (number * 2) / 3; + +export const useBottomSheetMechanics = ({ + open, + handleClose, + onBeforeClose, + onCloseEnd, + blocking, + onOpenEnd, +}: UseBottomSheetMechanicsArgs) => { + const mounted = useDelayMount(open); + const [{ y, opacity, scaleY }, api] = useSpring(() => ({ + y: '100%', + scaleY: 1, + opacity: 0, + config: { tension: 180, friction: 25 }, + })); + const [cardRef, sheetHeight] = useClientHeight(); + const preventScrollRef = useRef(false); + const closeInProgressRef = useRef(false); + + const requestCloseBottomSheet = () => { + if (closeInProgressRef.current) { + return; + } + closeInProgressRef.current = true; + handleClose(); + }; + + const springApiSet = async ({ onRest = () => {}, ...option }: any) => + new Promise((resolve) => { + api.start({ + ...option, + onRest: (...args) => { + resolve(args); + onRest?.(...args); + }, + }); + }); + + const closeBottomSheet = () => { + if (onBeforeClose instanceof Function) { + onBeforeClose(); + } + closeInProgressRef.current = true; + springApiSet({ + opacity: 0, + y: sheetHeight ? `${sheetHeight + 200}px` : '115%', + onRest: (...args: any[]) => { + const event = args[0]; + if (event?.finished && !event?.cancelled) { + onCloseEnd(); + } + }, + }); + }; + + useEffect(() => { + (async () => { + if (mounted) { + await springApiSet({ + opacity: 1, + y: '0px', + }); + if (onOpenEnd instanceof Function) { + onOpenEnd(); + } + closeInProgressRef.current = false; + } else { + closeBottomSheet(); + } + })(); + }, [mounted]); + + useEffect(() => { + const element = cardRef.ref.current; + const preventScrolling = (e: Event) => { + if (preventScrollRef.current) { + e.preventDefault(); + } + }; + + element.addEventListener('scroll', preventScrolling); + element.addEventListener('touchmove', preventScrolling); + + return () => { + element.removeEventListener('scroll', preventScrolling); + element.removeEventListener('touchmove', preventScrolling); + }; + }, [cardRef.ref.current]); + + const handleDrag: Handler<'drag'> = ({ + args: [{ closeOnTap = false, contentSheet = false } = {}] = [], + cancel, + active, + tap, + velocity: [, vy = 0], + movement: [, my], + direction: [, dy], + }) => { + if (closeInProgressRef.current) { + return; + } + + if (tap && closeOnTap) { + requestCloseBottomSheet(); + return; + } + + if (contentSheet) { + const elem = cardRef.ref.current; + preventScrollRef.current = dy > 0 && elem.scrollTop === 0; + } + + // it's not the correct Physics formula just a measure of user intent + const predictedDistance = my * vy; + if (!blocking && predictedDistance >= twoThirdOf(sheetHeight)) { + cancel(); + requestCloseBottomSheet(); + return; + } + + const yValue = rubberbandIfOutOfBounds(my, -1, sheetHeight + 100, 0.12); + springApiSet({ + y: active ? `${yValue}px` : '0px', + immediate: active, + scaleY: active && yValue < 0 ? Math.ceil(Math.abs(yValue)) : 1, + }); + }; + + const bind = useDrag(handleDrag, { + filterTaps: true, + }); + + return { + requestCloseBottomSheet, + opacity, + y, + bind, + cardRef, + scaleY, + }; +}; + +const BottomSheetControlled = ({ + children, + node, + handleClose, + blocking = false, + onCloseEnd, + onBeforeClose, + open, + maxHeight = '85%', + sheetStyle, + sheetPlunkColor, + overlayColor, + ...props +}: Prop) => { + const { requestCloseBottomSheet, opacity, y, bind, cardRef, scaleY } = useBottomSheetMechanics({ + open, + handleClose, + onBeforeClose, + onCloseEnd, + blocking, + }); + + return ( + + + { + if (event.key === 'Escape' && !blocking) { + // Always stop propagation, to avoid weirdness for bottom sheets inside other bottom sheets + event.stopPropagation(); + requestCloseBottomSheet(); + } + }} + style={{ opacity, backgroundColor: overlayColor }} + {...bind({ closeOnTap: !blocking })} + /> + + + + {children} + + + + + + ); +}; + +export const BottomSheetControlledCustom = ({ + children, + node, + handleClose, + blocking = false, + onCloseEnd, + onBeforeClose, + open, + maxHeight = '85%', + sheetStyle, + sheetPlunkColor, + overlayColor, + shouldShowNotch = true, + shouldShowOverlay = true, + ...props +}: Prop) => { + const { requestCloseBottomSheet, opacity, y, bind, cardRef } = useBottomSheetMechanics({ + open, + handleClose, + onBeforeClose, + onCloseEnd, + blocking, + }); + + return ( + + + {shouldShowOverlay ? ( + { + if (event.key === 'Escape' && !blocking) { + // Always stop propagation, to avoid weirdness for bottom sheets inside other bottom sheets + event.stopPropagation(); + requestCloseBottomSheet(); + } + }} + style={{ opacity, backgroundColor: overlayColor }} + {...bind({ closeOnTap: !blocking })} + /> + ) : null} + + {shouldShowNotch ? : null} + + {children} + + + + + ); +}; + +export default BottomSheetControlled; diff --git a/src/components/BottomSheet/index.tsx b/src/components/BottomSheet/index.tsx new file mode 100644 index 0000000..c99dfd7 --- /dev/null +++ b/src/components/BottomSheet/index.tsx @@ -0,0 +1,74 @@ +import React, { useEffect, useLayoutEffect, useState } from 'react'; +import BottomSheetControlled, { + BottomSheetControlledCustom, +} from './components/BottomSheetControlled'; +import { Prop as BottomSheetProp } from './types'; + +interface Prop extends Omit { + onAfterClose?: () => void; +} + +export const useBottomSheet = ({ + onAfterClose, + open, +}: { + open: boolean; + onAfterClose?: () => void; +}) => { + const [mounted, setMounted] = useState(false); + + const handleCloseEnd = () => { + if (onAfterClose instanceof Function) { + onAfterClose(); + } + setMounted(false); + }; + + useLayoutEffect(() => { + if (open) { + setMounted(true); + } + }, [open]); + + useEffect(() => { + if (open) { + document.body.style.overflow = 'hidden'; + } + + return () => { + document.body.style.overflow = 'visible'; + }; + }, [open]); + + return { mounted, handleCloseEnd }; +}; + +const BottomSheet = ({ children, onAfterClose, ...props }: Prop) => { + const { handleCloseEnd, mounted } = useBottomSheet({ onAfterClose, open: props.open }); + + if (!mounted) { + return null; + } + + return ( + + {children} + + ); +}; + +export const BottomSheetCustom = ({ children, onAfterClose, ...props }: Prop) => { + const { handleCloseEnd, mounted } = useBottomSheet({ onAfterClose, open: props.open }); + + if (!mounted) { + return null; + } + + return ( + + {children} + + ); +}; + +export default BottomSheet; diff --git a/src/components/BottomSheet/styles.ts b/src/components/BottomSheet/styles.ts new file mode 100644 index 0000000..a7c5f14 --- /dev/null +++ b/src/components/BottomSheet/styles.ts @@ -0,0 +1,104 @@ +import styled from 'styled-components'; +import { animated } from '@react-spring/web'; +import { hexToRGBA } from '../../utils'; +import { colorPalette, mainColors } from '../../primitives'; + +export const Wraper = styled.div` + position: relative; + z-index: 101; +`; + +export const Overlay = styled(animated.div)` + position: fixed; + top: -60px; + right: 0px; + left: 0px; + bottom: -60px; + background-color: ${hexToRGBA(mainColors.black, 0.9)}; + touch-action: none; + z-index: 5; +`; + +export const Sheet = styled(animated.div)` + width: 100%; + overflow: auto; + overscroll-behavior: auto; + scrollbar-width: none; + width: 100%; + &::-webkit-scrollbar { + width: 0px; /* Remove scrollbar space */ + background: transparent; /* Optional: just make scrollbar invisible */ + } +`; + +export const CardCustom = styled(animated.div)<{ $maxHeight: string }>` + display: flex; + position: fixed; + left: 0; + bottom: 0; + right: 0; + width: 100%; + max-height: ${(p) => p.$maxHeight}; + z-index: 6; + touch-action: none; +`; + +export const Card = styled(CardCustom)<{ $sheetShadowColor?: string; $maxHeight: string }>` + max-height: ${(p) => p.$maxHeight}; + background-color: ${colorPalette.popWhite[400]}; + &::after, + &::before { + position: absolute; + content: ' '; + top: -3.5px; + height: 4px; + width: 55%; + background-color: ${(p) => (p.$sheetShadowColor ? p.$sheetShadowColor : '#c4c4c4')}; + z-index: 1; + } + &::after { + left: 0; + margin-left: 1.5px; + transform: skewX(-45deg); + } + &::before { + right: 0; + margin-right: 1.5px; + transform: skewX(45deg); + } +`; + +export const Notch = styled.div` + position: absolute; + top: -18px; + width: 60px; + height: 2px; + background-color: ${colorPalette.popBlack[100]}; + left: 50%; + transform: translate(-50%, 0); +`; + +export const Content = styled.div` + &::after, + &::before { + content: ' '; + clear: both; + display: table; + } +`; + +export const GapFiller = styled(animated.div)` + background-color: ${colorPalette.popWhite[400]}; + height: 1px; + display: block; + transform-origin: bottom; + z-index: 10; + overscroll-behavior: none; + touch-action: none; + position: fixed; + right: 0; + bottom: 0; + left: 0; + -webkit-tap-highlight-color: transparent; + -webkit-touch-callout: none; +`; diff --git a/src/components/BottomSheet/types.ts b/src/components/BottomSheet/types.ts new file mode 100644 index 0000000..0a733b5 --- /dev/null +++ b/src/components/BottomSheet/types.ts @@ -0,0 +1,19 @@ +export interface Prop extends UseBottomSheetMechanicsArgs { + children: React.ReactNode; + node?: HTMLElement; + maxHeight?: string; + sheetStyle?: React.CSSProperties; + sheetPlunkColor?: string; + overlayColor?: string; + shouldShowNotch?: boolean; + shouldShowOverlay?: boolean; +} + +export interface UseBottomSheetMechanicsArgs { + open: boolean; + handleClose: () => void; + onBeforeClose?: () => void; + onCloseEnd: () => void; + onOpenEnd?: () => void; + blocking?: boolean; +} diff --git a/src/components/Button/Button.stories.mdx b/src/components/Button/Button.stories.mdx new file mode 100644 index 0000000..46fdd7e --- /dev/null +++ b/src/components/Button/Button.stories.mdx @@ -0,0 +1,183 @@ +import { ArgsTable, Meta, Canvas, Story } from '@storybook/addon-docs'; +import Button from '.'; +import { mainColors } from '@primitives'; + + + +export const SampleButton = (args) => { + return ( +
+ +
+ ); +}; + +# Button + +Button component allows to render neoPOP styled - Elevated, Flat, and Link type of Button and trigger an `onClick` action on tap/press. + +## Usage + +- Button component decides text color, background color, edge colors, and border color based on the `variant`, `kind`, and `colorMode` props. +- Spacing of the button - height, padding, icon height (if any icon is passed) is decided by the `size` prop. +- Text style of the button is also decided by the `size` prop. +- Button component is super flexible as it supports these configs: + - `colorConfig` prop for all the colors + - `spacingConfig` prop for - height, iconHeight, and padding + - `textStyle` for custom textStyle - fontWeight, fontSize, fontType + + + { + console.log("I'm clicked"); + }, + }} + > + {SampleButton.bind()} + + + +```jsx +import { Button } from '@cred/neopop-web/lib/components'; + +const Page = () => { + return ( + + ); +}; + +export default Page; +``` + +## Variants + +### Kinds + +There can be 3 different types of button. + + + + + + + +There can be 2 different variants of `flat` and `elevated` kind buttton + + + + + + + + +### Sizes + + + + + + + +### Styles + + + + + + + +### States + + + + + + + +## Props + +
+ +| prop | description | type | +| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | +| `kind*` | different kind of button
`"flat"` `"elevated"` `"link"` | `string` | +| `children*` | use to render the center text or can pass any React Element | `ReactNode` | +| `style` | custom styles if any | `CSS Properties` | +| `size` | `"big"`, `"medium"` or `"small"` - used to decide the paddings, height, and typography style | `string` | +| `variant` | `"primary"` or `"secondary"` variant of `flat` or `elevated` button | `string` | +| `colorMode` | `"dark"` or `"light"` mode of the button | `string` | +| `elevationDirection` | specifies the direction for an `elevated` button. this will decide which plunk to hide or show when button is pressed.
`"bottom-right"` `"top-right"` `"bottom-left"` `"top-left"` `"bottom-center"` `"top-center"` `"right-center"` `"left-center"` | `string` | +| `fullWidth` | flex the button to take full-width of the container | `boolean` | +| `showArrow` | arrow icon in the button | `boolean` | +| `disabled` | if true, button is disabled | `object` | +| `colorConfig` | object for taking in colors | `object` | +| `spacingConfig` | object for taking in spacing details | `object` | +| `textStyle` | text style - passes configs for `Typography`
`{ fontWeight: FontWeights, fontSize: number, fontType: FontType }` | `object` | +| `icon` | url for any image to be set, this aligns left to the text | `string` | + +
+ +`colorConfig` prop object takes in all the colors related to button. +It also takes `disabledColors` which takes in the same props but applied when `disabled` is true. + +
+ +| field | description | type | +| ----------------- | ---------------------------------------------------------------------------------------------------------------- | -------- | +| `borderColor` | border color for the borders of face | `string` | +| `backgroundColor` | background color for the face | `string` | +| `edgeColors` | colors for the plunk (left, right, top, bottom)
`{ left: color, top: color, right: color, bottom: color }` | `object` | +| `color` | text color | `string` | +| `disabledColors` | object of `borderColor`, `backgroundColor`, `edgeColors`, and `color` to be applied when `disabled` is true. | `string` | + +
+ +`spacingConfig` prop object takes in `padding`, `height` and `iconHeight` + +
+ +| field | description | type | +| ------------ | ---------------------------------------------------------- | -------- | +| `padding` | takes padding around the text - all CSS patterns supported | `string` | +| `height` | height of the button - in px | `string` | +| `iconHeight` | fixed height for the icon, width is set to auto | `string` | + +
diff --git a/src/components/Button/components/ElevatedButton.tsx b/src/components/Button/components/ElevatedButton.tsx new file mode 100644 index 0000000..ea60bf6 --- /dev/null +++ b/src/components/Button/components/ElevatedButton.tsx @@ -0,0 +1,58 @@ +import React from 'react'; +import { fontNameSpaces } from '@primitives'; +import { Pointer } from '@components/Helpers'; +import Typography from '@components/Typography'; +import { ButtonWrapper } from '../styles'; +import { ButtonProps } from '../types'; +import { getButtonColors, getSpacingConfig, getTextStyle } from '@primitives/buttons'; + +const ElevatedButton = (props: ButtonProps) => { + const { + variant, + colorMode, + kind, + size, + textStyle, + colorConfig, + spacingConfig, + children, + onTouchStart = () => {}, + ...propsToFwd + } = props; + const spacing = spacingConfig ?? getSpacingConfig(size ?? 'medium'); + const colors = + colorConfig ?? getButtonColors(colorMode ?? 'dark', variant ?? 'primary', kind ?? 'flat'); + const customTextStyle = textStyle ?? getTextStyle(size ?? 'medium') ?? fontNameSpaces.th14b; + const textColor = propsToFwd.disabled ? colors?.disabledColors?.color : colors?.color; + return ( + +
+ {propsToFwd.icon ? icon : null} + + {children} + + {propsToFwd.showArrow ? ( + + ) : null} +
+
+
+
+
+ + ); +}; + +export default ElevatedButton; diff --git a/src/components/Button/components/FlatButton.tsx b/src/components/Button/components/FlatButton.tsx new file mode 100644 index 0000000..e45f1dd --- /dev/null +++ b/src/components/Button/components/FlatButton.tsx @@ -0,0 +1,58 @@ +import { fontNameSpaces } from '@primitives'; +import { getButtonColors, getSpacingConfig, getTextStyle } from '@primitives/buttons'; +import React from 'react'; + +import { Pointer } from '../../Helpers'; +import Typography from '../../Typography'; +import { ButtonWrapper } from '../styles'; +import { ButtonProps } from '../types'; + +const FlatButton = (props: ButtonProps) => { + const { + variant, + colorMode, + kind, + size, + textStyle, + colorConfig, + spacingConfig, + children, + onTouchStart = () => {}, + ...propsToFwd + } = props; + const spacing = spacingConfig ?? getSpacingConfig(size ?? 'medium'); + const colors = + colorConfig ?? getButtonColors(colorMode ?? 'dark', variant ?? 'primary', kind ?? 'flat'); + const customTextStyle = textStyle ?? getTextStyle(size ?? 'medium') ?? fontNameSpaces.th14b; + const textColor = propsToFwd.disabled ? colors?.disabledColors?.color : colors?.color; + + return ( + +
+ {propsToFwd.icon ? icon : null} + + {children} + + {propsToFwd.showArrow ? ( + + ) : null} +
+
+
+ + ); +}; + +export default FlatButton; diff --git a/src/components/Button/components/LinkButton.tsx b/src/components/Button/components/LinkButton.tsx new file mode 100644 index 0000000..ff0e725 --- /dev/null +++ b/src/components/Button/components/LinkButton.tsx @@ -0,0 +1,19 @@ +import { FontVariant } from '@primitives'; +import React from 'react'; +import Typography from '../../Typography'; +import { LinkButtonContainer } from '../styles'; +import { ButtonProps } from '../types'; + +const LinkButton = (props: ButtonProps) => { + const { children, textStyle = { ...FontVariant.BodyMedium11 }, color } = props; + + return ( + + + {children} + + + ); +}; + +export default LinkButton; diff --git a/src/components/Button/index.tsx b/src/components/Button/index.tsx new file mode 100644 index 0000000..514bb9c --- /dev/null +++ b/src/components/Button/index.tsx @@ -0,0 +1,21 @@ +import React from 'react'; +import ElevatedButton from './components/ElevatedButton'; +import FlatButton from './components/FlatButton'; +import LinkButton from './components/LinkButton'; +import { ButtonProps } from './types'; + +const Button = (props: ButtonProps) => { + const { kind } = props; + switch (kind) { + case 'elevated': + return ; + case 'flat': + return ; + case 'link': + return ; + default: + return ; + } +}; + +export default Button; diff --git a/src/components/Button/styles.ts b/src/components/Button/styles.ts new file mode 100644 index 0000000..2cde4b0 --- /dev/null +++ b/src/components/Button/styles.ts @@ -0,0 +1,250 @@ +import styled, { css } from 'styled-components'; +import { PlunkProps } from '@primitives'; +import { LinkButtonProps, ButtonProps, NeoPopElevationDirections } from './types'; + +const EDGEWIDTH = PlunkProps.WIDTH; +const SKEW_ANGLE = PlunkProps.ANGLE; + +const shouldNotMoveRightEdge = (elevationDirection: NeoPopElevationDirections | undefined) => { + if ( + elevationDirection === NeoPopElevationDirections.lc || + elevationDirection === NeoPopElevationDirections.rc || + elevationDirection === NeoPopElevationDirections.tc || + elevationDirection === NeoPopElevationDirections.tr || + elevationDirection === NeoPopElevationDirections.tl + ) + return true; + return false; +}; + +const shouldNotMoveBottomEdge = (elevationDirection: NeoPopElevationDirections | undefined) => { + if ( + elevationDirection === NeoPopElevationDirections.lc || + elevationDirection === NeoPopElevationDirections.tc || + elevationDirection === NeoPopElevationDirections.bc || + elevationDirection === NeoPopElevationDirections.bl || + elevationDirection === NeoPopElevationDirections.tl + ) + return true; + return false; +}; + +type StyledButtonType = Exclude; + +export const ButtonWrapper = styled.button` + outline: none; + margin: 0; + border: 0; + background: transparent; + padding: 0; + display: ${({ fullWidth }) => (fullWidth ? 'block' : 'inline-flex')}; + overflow: hidden; + user-select: none; + -webkit-tap-highlight-color: transparent; + --webkit-user-select: none; + cursor: pointer; + overflow: hidden; + position: relative; + width: ${({ fullWidth }) => (fullWidth ? '100%' : 'fit-content')}; + height: 100%; + will-change: transform; + ${({ disabled }) => + disabled + ? css` + pointer-events: none; + ` + : ` + + `} + .button-face { + position: relative; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + background-color: ${({ colorConfig }) => colorConfig?.backgroundColor ?? 'transparent'}; + border: ${({ colorConfig }) => + colorConfig?.borderColor ? `1px solid ${colorConfig?.borderColor}` : 'none'}; + padding: ${({ spacingConfig }) => spacingConfig?.padding ?? '16px 20px'}; + z-index: 2; + height: ${({ spacingConfig }) => spacingConfig?.height ?? 'auto'}; + /* transition: transform ${EDGEWIDTH / 100}s ease; */ + transition: transform 0.12s ease-in-out; + -webkit-transition: transform 0.12s ease-in-out; + -moz-transition: transform 0.12s ease-in-out; + &.elevated { + margin: 0 ${EDGEWIDTH}px ${EDGEWIDTH}px 0; + } + .icon { + height: ${({ spacingConfig }) => spacingConfig?.iconHeight ?? '16px'}; + width: auto; + margin-right: 10px; + } + .arrow { + margin-left: 10px; + } + } + + .button-edge { + position: absolute; + transform-origin: 0% 0%; + /* transition: transform ${EDGEWIDTH / 100}s ease; */ + transition: transform 0.12s ease-in-out; + -webkit-transition: transform 0.12s ease-in-out; + -moz-transition: transform 0.12s ease-in-out; + /* pointer-events: none; */ + + &.right { + height: calc(100% - ${EDGEWIDTH}px); + width: ${EDGEWIDTH}px; + transform: translate3d(0px, 0px, 0px) skewY(45deg); + right: 0px; + /* border-bottom: 1px solid white; */ + background-color: ${({ colorConfig }) => + colorConfig?.edgeColors?.right ?? 'transparent'}; + top: 0px; + z-index: 2; + } + &.bottom { + width: calc(100% - ${EDGEWIDTH}px); + height: ${EDGEWIDTH}px; + transform: translate3d(0px, 0px, 0px) skewX(45deg); + /* border-right: 1px solid white; */ + bottom: 0px; + left: 0px; + background-color: ${({ colorConfig }) => + colorConfig?.edgeColors?.bottom ?? 'transparent'}; + z-index: 2; + } + &.top { + width: calc(100% - ${EDGEWIDTH}px); + height: ${EDGEWIDTH}px; + transform: skewX(45deg) scaleY(1); + top: 0px; + left: 0px; + background-color: ${({ colorConfig }) => colorConfig?.edgeColors?.top ?? 'transparent'}; + &:after { + content: ''; + height: 3px; + width: 6px; + background-color: ${({ colorConfig }) => + colorConfig?.edgeColors?.top ?? 'transparent'}; + transform: skewX(-45deg) scaleY(1); + position: absolute; + right: -2px; + } + } + &.left { + height: calc(100% - ${EDGEWIDTH}px); + width: ${EDGEWIDTH}px; + transform: skewY(45deg) scaleY(1); + left: 0px; + top: 0px; + z-index: 1; + background-color: ${({ colorConfig }) => + colorConfig?.edgeColors?.left ?? 'transparent'}; + &:after { + content: ''; + height: 6px; + width: 3px; + background-color: ${({ colorConfig }) => + colorConfig?.edgeColors?.left ?? 'transparent'}; + transform: skewY(-45deg) scaleY(1); + position: absolute; + bottom: -2px; + right: 0px; + } + } + } + &:active, + &.active { + .button-face { + transform: translate3d(${EDGEWIDTH}px, ${EDGEWIDTH}px, 0); + } + .button-edge { + &.bottom { + transform: ${({ elevationDirection }) => + shouldNotMoveRightEdge(elevationDirection) + ? `skewX(${SKEW_ANGLE}deg)` + : `translate3d(${EDGEWIDTH}px, ${EDGEWIDTH}px, 0) skewX(${SKEW_ANGLE}deg)`}; + } + &.right { + transform: ${({ elevationDirection }) => + shouldNotMoveBottomEdge(elevationDirection) + ? `skewY(${SKEW_ANGLE}deg)` + : `translate3d(${EDGEWIDTH}px, ${EDGEWIDTH}px, 0) skewY(${SKEW_ANGLE}deg)`}; + } + } + } + ${({ disabled }) => + disabled + ? css` + .button-face { + background-color: ${({ colorConfig }) => + colorConfig?.disabledColors?.backgroundColor + ? colorConfig?.disabledColors?.backgroundColor + : ''}; + border: ${({ colorConfig }) => + colorConfig?.disabledColors?.borderColor + ? `1px solid ${colorConfig?.disabledColors?.borderColor}` + : ''}; + color: rgba(255, 255, 255, 0.5); + &:active { + transform: none; + } + } + .button-edge { + &.right { + background-color: ${({ colorConfig }) => + colorConfig?.disabledColors?.edgeColors?.right ?? 'transparent'}; + } + &.bottom { + background-color: ${({ colorConfig }) => + colorConfig?.disabledColors?.edgeColors?.bottom ?? 'transparent'}; + } + &.top { + background-color: ${({ colorConfig }) => + colorConfig?.disabledColors?.edgeColors?.top ?? 'transparent'}; + } + &.left { + background-color: ${({ colorConfig }) => + colorConfig?.disabledColors?.edgeColors?.left ?? 'transparent'}; + } + &:active, + &.active { + &.bottom { + transform: skewX(${SKEW_ANGLE}deg); + } + &.right { + transform: skewY(${SKEW_ANGLE}deg); + } + } + } + ` + : ` + + `} +`; + +export const LinkButtonContainer = styled.button` + outline: none; + background-color: transparent; + margin: 0; + padding: 0; + border: 0; + display: inline-flex; + user-select: none; + -webkit-tap-highlight-color: transparent; + --webkit-user-select: none; + cursor: pointer; + color: ${({ color }: LinkButtonProps) => color ?? ''}; + border-bottom: ${({ color }: LinkButtonProps) => (color ? `1px solid ${color}` : '')}; + ${({ disabled }: StyledButtonType) => + disabled + ? css` + pointer-events: none; + ` + : ` + + `} +`; diff --git a/src/components/Button/types.ts b/src/components/Button/types.ts new file mode 100644 index 0000000..000b7d1 --- /dev/null +++ b/src/components/Button/types.ts @@ -0,0 +1,63 @@ +import { FontNameSpaceInterface } from '../../types'; + +interface EdgeColors { + top: string; + bottom: string; + right: string; + left: string; +} + +export enum NeoPopElevationDirections { + br = 'bottom-right', + tr = 'top-right', + bl = 'bottom-left', + tl = 'top-left', + bc = 'bottom-center', + tc = 'top-center', + rc = 'right-center', + lc = 'left-center', +} + +export type ButtonVariants = 'primary' | 'secondary'; +export type ButtonKinds = 'flat' | 'elevated' | 'link'; +export type ButtonSizes = 'big' | 'medium' | 'small'; +export type ButtonModes = 'dark' | 'light'; +export interface ColorConfig { + borderColor?: string; + backgroundColor?: string; + edgeColors?: EdgeColors; + color?: string; +} + +export interface ButtonColorConfig extends ColorConfig { + disabledColors?: ColorConfig; +} +export interface ButtonSpacingConfig { + padding?: string; + height?: string; + iconHeight?: string; +} + +export interface ButtonUIConfig { + colorConfig?: ButtonColorConfig; + textStyle?: FontNameSpaceInterface; + spacingConfig?: ButtonSpacingConfig; + elevationDirection?: NeoPopElevationDirections; + icon?: string; +} + +export interface LinkButtonProps { + color?: string; +} +export interface ButtonProps extends ButtonUIConfig, React.HTMLAttributes { + style?: React.CSSProperties; + children?: React.ReactNode; + variant?: ButtonVariants; + kind?: ButtonKinds; + size?: ButtonSizes; + colorMode?: ButtonModes; + disabled?: boolean; + showArrow?: boolean; + fullWidth?: boolean; + onClick?: () => void; +} diff --git a/src/components/Checkbox/Checkbox.stories.mdx b/src/components/Checkbox/Checkbox.stories.mdx new file mode 100644 index 0000000..8a1446a --- /dev/null +++ b/src/components/Checkbox/Checkbox.stories.mdx @@ -0,0 +1,288 @@ +import { useState } from 'react'; +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { Checkbox, Typography, Row, VerticalSpacer, HorizontalSpacer } from '@components'; +import { colorGuide, colorPalette, FontVariant } from '@primitives'; + + + +# Checkbox + +Checkbox component is used when the users wants to select one or more items from a set of options. + +## Usage + +#### 1. Single Checkbox with label + +export const SingleCheckbox = (args) => { + const [isChecked, setIsChecked] = useState(false); + const handleChange = (event) => { + setIsChecked(event.target.checked); + }; + return ( + + + I agree to terms & conditions + + + ); +}; + + + + {SingleCheckbox.bind()} + + + +```jsx +import React, { useState } from 'react'; +import { Row, Checkbox, VerticalSpacer, Typography } from '@cred/neopop-web/lib/components'; +import { colorGuide, colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +export const SingleCheckbox = () => { + const [isChecked, setIsChecked] = useState(false); + const handleChange = (event) => { + setIsChecked(event.target.checked); + }; + + return ( + + + I agree to terms & conditions + + + ); +}; + +export default SingleCheckbox; +``` + +#### 2. Multiple Checkboxes with label + +export const MultipleCheckboxes = (args) => { + const [options, setOptions] = useState([ + { + name: 'CRED mint', + isChecked: false, + }, + { + name: 'Store', + isChecked: false, + }, + { + name: 'Utility Bills', + isChecked: false, + }, + ]); + const handleChange = (event, index) => { + const tempOptions = [...options]; + tempOptions[index].isChecked = !tempOptions[index].isChecked; + setOptions(tempOptions); + }; + return ( +
+ {options.map((option, index) => { + return ( + + handleChange(event, index)} + > + + {option.name} + + + + + ); + })} +
+ ); +}; + + + + {MultipleCheckboxes.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { + Row, + Checkbox, + VerticalSpacer, + HorizontalSpacer, + Typography, +} from '@cred/neopop-web/lib/components'; +import { colorGuide, colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +const MultipleCheckboxes = () => { + const [options, setOptions] = useState([ + { + name: 'CRED mint', + isChecked: false, + }, + { + name: 'Store', + isChecked: false, + }, + { + name: 'Utility Bills', + isChecked: false, + }, + ]); + + const handleChange = (event, index) => { + const tempOptions = [...options]; + tempOptions[index].isChecked = !tempOptions[index].isChecked; + setOptions(tempOptions); + }; + + return ( +
+ {options.map((option, index) => { + return ( + + handleClick(e, index)} + > + + {option.name} + + + + + ); + })} +
+ ); +}; + +export default MultipleCheckboxes; +``` + +## Variants + +There are two states of checkbox + +#### Selected + +export const Selected = (args) => { + return ( + + + Selected + + + ); +}; + + + { + console.log(event.target.checked); + }, + }} + > + {Selected.bind({})} + + + +#### Unselected + +export const Unselected = (args) => { + return ( + + + Unselected + + + ); +}; + + + { + console.log(event.target.checked); + }, + }} + > + {Unselected.bind({})} + + + +## Props + +
+ +| prop | description | type | +| -------------- | --------------------------------- | ---------- | +| `isChecked*` | if true, the component is checked | `boolean` | +| `colorConfig` | checkbox color config | `object` | +| `colorMode` | dark or light | `string` | +| `onChange` | onChange event handler | `function` | + +
+ +**colorConfig** + +colorConfig prop object support four color configurations namely: `background`, `border`, `leftPlunk`, & `topPlunk`. + +
+ +| property | description | type | +| --------------- | ------------------------- | -------- | +| `background*` | checkbox background color | `string` | +| `border*` | checkbox border color | `string` | +| `leftPlunk*` | left-plunk color | `string` | +| `topPlunk*` | top-plunk color | `string` | + +
diff --git a/src/components/Checkbox/index.tsx b/src/components/Checkbox/index.tsx new file mode 100644 index 0000000..ef53980 --- /dev/null +++ b/src/components/Checkbox/index.tsx @@ -0,0 +1,54 @@ +import React from 'react'; +import withCheckHOC from '@components/Helpers/withCheckHOC'; +import { CheckmarkWrapper, CheckboxLabel } from './styles'; +import { CheckboxProps } from './types'; +import { colorGuide } from '@primitives'; +import { Row, VerticalSpacer } from '@components/Helpers'; +import { isEmpty } from '@utils'; + +const Checkbox = (props: CheckboxProps) => { + const { isChecked, handleChange, colorConfig, colorMode, children, ...propsToFwd } = props; + const defaultColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].checkbox; + const checkboxColorConfig = isEmpty(colorConfig) + ? defaultColorConfig + : colorConfig ?? defaultColorConfig; + + return ( + + + + + + + + + + + {children ? ( + <> + + {children} + + ) : null} + + + ); +}; + +export default withCheckHOC(Checkbox); diff --git a/src/components/Checkbox/styles.ts b/src/components/Checkbox/styles.ts new file mode 100644 index 0000000..f0fdff2 --- /dev/null +++ b/src/components/Checkbox/styles.ts @@ -0,0 +1,105 @@ +import styled from 'styled-components'; +import { PlunkProps } from '@primitives'; +import { CheckmarkWrapperProps } from './types'; + +const BOX_SIZE = 20; + +export const CheckboxLabel = styled.label` + position: relative; + width: ${BOX_SIZE}px; + height: ${BOX_SIZE}px; + overflow: hidden; + box-sizing: border-box; + transition: transform 0.15s ease; + user-select: none; + cursor: pointer; + + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; + + /* Hide the browser's default checkbox */ + input { + position: absolute; + opacity: 0; + cursor: pointer; + height: 0; + width: 0; + } +`; + +export const CheckmarkWrapper = styled.div` + width: 20px; + height: 20px; + overflow: hidden; + position: relative; + &:before { + content: ''; + position: absolute; + left: 0; + top: 0; + width: 20px; + height: ${PlunkProps.WIDTH}px; + background-color: ${(props) => props.colorConfig.topPlunk}; + transform-origin: 0% 0%; + transform: skewX(${PlunkProps.ANGLE}deg) scaleY(1); + transition: background-color 0.15s ease; + opacity: 0; + } + &:after { + content: ''; + position: absolute; + left: 0; + bottom: 0; + width: ${PlunkProps.WIDTH}px; + height: 20px; + background-color: ${(props) => props.colorConfig.leftPlunk}; + transform-origin: 0% 0%; + transform: skewY(${PlunkProps.ANGLE}deg) scaleX(1); + transition: background-color 0.15s ease; + opacity: 0; + } + + &:active { + &:before { + transition: opacity 0.1s ease 0.03s; + opacity: 1; + } + &:after { + transition: opacity 0.1s ease 0.03s; + opacity: 1; + } + } + + /* Create a custom checkbox */ + .checkmark { + box-sizing: border-box; + position: absolute; + height: ${BOX_SIZE}px; + width: ${BOX_SIZE}px; + background-color: ${(props) => + props.checked ? props.colorConfig.border : props.colorConfig.background}; + transition: all 0.15s ease; + cursor: pointer; + border: 1px solid ${(props) => props.colorConfig.border}; + z-index: 999; + display: flex; + align-items: center; + justify-content: center; + &:active { + transform: translate(${PlunkProps.WIDTH}px, ${PlunkProps.WIDTH}px); + background-color: ${(props) => props.colorConfig.border}; + } + } + + &:active .checkmark { + transform: translate(${PlunkProps.WIDTH}px, ${PlunkProps.WIDTH}px); + } + /* tick mark */ + .tick-svg { + transition: opacity 0.15s ease; + opacity: ${({ checked }) => (checked ? '1' : '0')}; + } +`; diff --git a/src/components/Checkbox/types.ts b/src/components/Checkbox/types.ts new file mode 100644 index 0000000..4c05672 --- /dev/null +++ b/src/components/Checkbox/types.ts @@ -0,0 +1,38 @@ +import React from 'react'; +export interface CheckboxColorConfig { + background: string; + border: string; + leftPlunk: string; + topPlunk: string; +} + +export type CheckboxColorModes = 'dark' | 'light'; + +export interface CheckboxProps extends React.HTMLAttributes { + /** + * color mode of checkbox + */ + colorMode?: CheckboxColorModes; + /** + * checkbox color configs + */ + colorConfig?: CheckboxColorConfig; + /** + * is Checkbox checked? + */ + isChecked: boolean; + /** + * onChange event handler + */ + handleChange?: React.ChangeEventHandler; + /** + * label or children? + */ + children?: React.ReactNode; +} + +export interface CheckmarkWrapperProps { + colorConfig: CheckboxColorConfig; + hasChildren: boolean; + checked: boolean; +} diff --git a/src/components/Dropdown/index.tsx b/src/components/Dropdown/index.tsx new file mode 100644 index 0000000..f2302dd --- /dev/null +++ b/src/components/Dropdown/index.tsx @@ -0,0 +1,45 @@ +import React from 'react'; +import { Chevron, VerticalSpacer } from '../Helpers'; +import Typography from '@components/Typography'; +import { colorGuide, fontNameSpaces } from '@primitives'; +import { Directions } from '@types'; +import { DropdownContainer } from './styles'; +import { DropdownProps } from './types'; +import { isEmpty } from '@utils'; + +const Dropdown = (props: DropdownProps) => { + const { onClick, label, colorConfig, colorMode } = props; + const defaultColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].dropdown[ + label ? 'withLabel' : 'withoutLabel' + ]; + const dropdownColorConfig = isEmpty(colorConfig) + ? defaultColorConfig + : colorConfig ?? defaultColorConfig; + + return ( + + {label ? ( + <> + + {label} + + + + ) : null} + + + ); +}; + +export default Dropdown; diff --git a/src/components/Dropdown/styles.ts b/src/components/Dropdown/styles.ts new file mode 100644 index 0000000..30697d0 --- /dev/null +++ b/src/components/Dropdown/styles.ts @@ -0,0 +1,19 @@ +import styled from 'styled-components'; +import { DropdownConfig } from './types'; + +export const DropdownContainer = styled.div` + display: inline-flex; + align-items: center; + justify-content: center; + user-select: none; + -webkit-tap-highlight-color: transparent; + --webkit-user-select: none; + padding: 10px 15px; + border: ${({ border }: DropdownConfig) => `1px solid ${border}`}; + &.no-label { + width: 22px; + min-width: 22px; + height: 22px; + padding: 0px; + } +`; diff --git a/src/components/Dropdown/types.ts b/src/components/Dropdown/types.ts new file mode 100644 index 0000000..50ca1c8 --- /dev/null +++ b/src/components/Dropdown/types.ts @@ -0,0 +1,13 @@ +export interface DropdownConfig { + border?: string; + text?: string; + chevron?: string; +} + +export type DropdownColorModes = 'dark' | 'light'; +export interface DropdownProps { + onClick: () => void; + label: string; + colorConfig?: DropdownConfig; + colorMode?: DropdownColorModes; +} diff --git a/src/components/ElevatedCard/ElevatedCard.stories.mdx b/src/components/ElevatedCard/ElevatedCard.stories.mdx new file mode 100644 index 0000000..a8c8428 --- /dev/null +++ b/src/components/ElevatedCard/ElevatedCard.stories.mdx @@ -0,0 +1,201 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { ElevatedCard, Column, HorizontalSpacer, Row, Tag, Typography, Button } from '@components'; +import { mainColors, colorPalette, colorGuide, fontNameSpaces, getButtonConfig } from '@primitives'; + + + +# ElevatedCard + +Card component with plunks at right & bottom edges. Just wrap your card-content inside ElevatedCard component to make it elevated. + +export const CardTemplate = (args) => ; + +## Usage + + + + + +
+ + ABCD Bank + + + + XXX 1111 + +
+ +
+ + + +
+ + Due Today + +
+ + + ₹1000.00 + + + + +
+ ), + }} + > + {CardTemplate.bind({})} +
+
+ +```jsx +import React from 'react'; +import { + ElevatedCard, + Column, + Row, + Typography, + HorizontalSpacer, + Tag, + Button, +} from '@cred/neopop-web/lib/components'; +import { + mainColors, + colorPalette, + colorGuide, + fontNameSpaces, + getButtonConfig, +} from '@cred/neopop-web/lib/primitives'; +import styled from 'styled-components'; + +const ContentWrapper = styled.div` + padding: 20px; +`; + +const Card = () => { + return ( + + + + +
+ + ABCD Bank + + + + XXX 1111 + +
+ +
+ + + +
+ + Due Today + +
+ + + ₹1000.00 + + + + + + + ); +}; + +export default Card; +``` + +## Props + +
+ +| prop | description | type | +| ----------------- | ----------------------------------------------- | --------------- | +| `edgeColors` | color configs of right & bottom plunk | `object` | +| `backgroundColor` | card background color | `boolean` | +| `style` | inline css styles | `CSSProperties` | +| `fullWidth` | if true, card takes full-width of the container | `boolean` | + +
diff --git a/src/components/ElevatedCard/index.tsx b/src/components/ElevatedCard/index.tsx new file mode 100644 index 0000000..ab48f64 --- /dev/null +++ b/src/components/ElevatedCard/index.tsx @@ -0,0 +1,17 @@ +import React from 'react'; +import { CardContainer, CardEdge, CardFace } from './styles'; +import { CardProps } from './types'; + +const ElevatedCard = (props: CardProps) => { + const { style, children, ...propsToFwd } = props; + + return ( + + {children} + + + + ); +}; + +export default ElevatedCard; diff --git a/src/components/ElevatedCard/styles.ts b/src/components/ElevatedCard/styles.ts new file mode 100644 index 0000000..275188c --- /dev/null +++ b/src/components/ElevatedCard/styles.ts @@ -0,0 +1,47 @@ +import styled from 'styled-components'; +import { PlunkProps } from '@primitives'; +import { CardEdgeProps, CardProps } from './types'; + +const EDGEWIDTH = PlunkProps.WIDTH; +const SKEW_ANGLE = PlunkProps.ANGLE; + +export const CardFace = styled.div` + position: relative; + background-color: ${({ backgroundColor }: CardProps) => backgroundColor ?? 'transparent'}; + /* padding: ${({ fullWidth }: CardProps) => (fullWidth ? '16px 20px' : '12px 20px')}; */ + z-index: 1; + width: 100%; + margin: 0 ${EDGEWIDTH}px ${EDGEWIDTH}px 0; +`; + +export const CardEdge = styled.div` + position: absolute; + transform-origin: 0% 0%; + transition: transform ${EDGEWIDTH / 100}s ease; + &.right { + height: calc(100% - ${EDGEWIDTH}px); + width: ${EDGEWIDTH}px; + transform: translate3d(0px, 0px, 0px) skewY(${SKEW_ANGLE}deg); + right: 0px; + /* border-bottom: 1px solid white; */ + background-color: ${({ edgeColors }: CardEdgeProps) => edgeColors?.right ?? 'transparent'}; + top: 0px; + } + &.bottom { + width: calc(100% - ${EDGEWIDTH}px); + height: ${EDGEWIDTH}px; + transform: translate3d(0px, 0px, 0px) skewX(${SKEW_ANGLE}deg); + /* border-right: 1px solid white; */ + bottom: 0px; + left: 0px; + background-color: ${({ edgeColors }: CardEdgeProps) => edgeColors?.bottom ?? 'transparent'}; + } +`; +export const CardContainer = styled.div` + display: ${({ fullWidth }: CardProps) => (fullWidth ? 'block' : 'inline-flex')}; + overflow: hidden; + user-select: none; + width: 100%; + --webkit-user-select: none; + position: relative; +`; diff --git a/src/components/ElevatedCard/types.ts b/src/components/ElevatedCard/types.ts new file mode 100644 index 0000000..bd7e900 --- /dev/null +++ b/src/components/ElevatedCard/types.ts @@ -0,0 +1,15 @@ +interface EdgeColors { + bottom: string; + right: string; +} + +export interface CardEdgeProps { + edgeColors?: EdgeColors; +} + +export interface CardProps extends CardEdgeProps { + children: React.ReactNode; + backgroundColor?: string; + style?: React.CSSProperties; + fullWidth?: boolean; +} diff --git a/src/components/Header/Header.stories.mdx b/src/components/Header/Header.stories.mdx new file mode 100644 index 0000000..dff409c --- /dev/null +++ b/src/components/Header/Header.stories.mdx @@ -0,0 +1,182 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { Back, Header } from '@components'; +import { colorGuide, colorPalette } from '@primitives'; + + + +# Header + +Header component is the basic necessity while creating a new page in the app. It can handle all the navigation and info related requirements of the page. + +## Variants + +There are two components(Header & Back) that serves the same purpose with different designs. + +Use `Header` component if you need block level heading with description support. + +Use `Back` component if you need inline level heading. + +export const HeaderTemplate = (args) =>
; + +export const BackTemplate = (args) => ; + +### Header + +#### Header with heading + + + { + console.log('back clicked'); + }, + }} + > + {HeaderTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Header } from '@cred/neopop-web/lib/components'; + +const HeaderComp = () => { + return ( +
{ + console.log('back clicked'); + }} + /> + ); +}; + +export default HeaderComp; +``` + +#### Header without heading + + + { + console.log('back clicked'); + }, + }} + > + {HeaderTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Header } from '@cred/neopop-web/lib/components'; + +const HeaderComp = () => { + return ( +
{ + console.log('back clicked'); + }} + /> + ); +}; + +export default HeaderComp; +``` + +#### Header Props + +
+ +| prop | description | type | +| --------------- | ------------------------------- | ---------- | +| `heading` | text-content of the heading | `string` | +| `description` | text-description of the heading | `string` | +| `onBackClick*` | onClick handler on back button | `function` | + +
+ +### Back + +#### Back with heading + + + { + console.log('back clicked'); + }, + }} + > + {BackTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Back } from '@cred/neopop-web/lib/components'; + +const BackComp = () => { + return ( + { + console.log('back clicked'); + }} + /> + ); +}; + +export default BackComp; +``` + +#### Back without heading + + + { + console.log('back clicked'); + }, + }} + > + {BackTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Back } from '@cred/neopop-web/lib/components'; + +const BackComp = () => { + return ( + { + console.log('back clicked'); + }} + /> + ); +}; + +export default BackComp; +``` + +#### Back Props + +
+ +| prop | description | type | +| ------------ | ------------------------------ | ---------- | +| `heading` | back header heading | `string` | +| `onClick*` | onClick handler on back button | `function` | + +
diff --git a/src/components/Header/index.tsx b/src/components/Header/index.tsx new file mode 100644 index 0000000..c97441b --- /dev/null +++ b/src/components/Header/index.tsx @@ -0,0 +1,52 @@ +import React from 'react'; +import { FontOpacity, mainColors, typographyGuide } from '@primitives'; +import Back from '@components/Back'; +import { Column } from '@components/Helpers'; +import Typography from '@components/Typography'; +import { HeaderProps } from './types'; + +const Header = (props: HeaderProps) => { + const { header } = typographyGuide; + const { + heading, + textStyle = { heading: header.heading, description: header.description }, + color, + description, + onBackClick, + } = props; + const fallbackColor = color ?? mainColors.white; + + return ( + + + {heading ? ( +
+ + {heading} + +
+ ) : ( + '' + )} + {description ? ( +
+ + {description} + +
+ ) : ( + '' + )} +
+ ); +}; + +export default Header; diff --git a/src/components/Header/types.ts b/src/components/Header/types.ts new file mode 100644 index 0000000..e7c4071 --- /dev/null +++ b/src/components/Header/types.ts @@ -0,0 +1,12 @@ +import { FontNameSpaceInterface } from '@types'; + +export interface HeaderProps { + heading?: string; + description?: string; + color?: string; + onBackClick: React.MouseEventHandler; + textStyle?: { + heading: FontNameSpaceInterface; + description: FontNameSpaceInterface; + }; +} diff --git a/src/components/Helpers/ColorPalette.stories.mdx b/src/components/Helpers/ColorPalette.stories.mdx new file mode 100644 index 0000000..f979a47 --- /dev/null +++ b/src/components/Helpers/ColorPalette.stories.mdx @@ -0,0 +1,150 @@ +import { Meta, ColorPalette, ColorItem } from '@storybook/addon-docs'; + + + +# Color Palette + +neoPOP color palettes include state colors as well as pop palettes. You can use the colors by importing `colorPalette` primitive. + +```jsx +import { colorPalette } from '@cred/neopop-web/lib/primitives'; +``` + +## State Colors + +
+ + + + + + + + +
+ +## Pop Palettes + +
+ + + + + + + + + + + + + +
+ +**NOTE**: Component level color-guides are already defined as per the design system. You can use it by importing `colorGuide` primitive. + +```jsx +import { colorGuide } from '@cred/neopop-web/lib/primitives'; +``` diff --git a/src/components/Helpers/Customise.stories.mdx b/src/components/Helpers/Customise.stories.mdx new file mode 100644 index 0000000..8fb9bb9 --- /dev/null +++ b/src/components/Helpers/Customise.stories.mdx @@ -0,0 +1,191 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { Button, Typography } from '@components'; +import { mainColors, colorPalette } from '@primitives'; +import { hexToRGBA } from '@utils'; +import { FontWeights, FontType } from '@types'; + + + +export const colorConfig = { + backgroundColor: mainColors.black, + color: mainColors.white, + borderColor: '#E5FE40', + edgeColors: { right: '#A2B42D', bottom: '#67721F', top: 'transparent', left: 'transparent' }, + disabledColors: { + backgroundColor: colorPalette.black[50], + color: hexToRGBA(mainColors.white, 0.5), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: colorPalette.white[70], + bottom: colorPalette.white[50], + }, + }, +}; +export const CustomiseButton = (args) => { + return ( + + ); +}; + +# How to Customise + +All neoPOP components use default neoPOP styles based on props passed to the components. +The styles like color and typography is decided based on the `colors` and `typography` mentioned in Foundation respectively. +To customise the component even further with your own theme, we provide 2 ways + +1. Extend color primitives +2. Custom props +3. Inline styles + +## Extending color primitives +- All the components by default read the colors in `@cred/neopop-web/lib/primitives/colors` defined for the respective component +- It's possible to override some/all the colors defined in `@cred/neopop-web/lib/primitives/colors` +- `@cred/neopop-web/lib/primitives/colors` contains three configs, namely + - `mainColors`: this defines primary colors used overall + - `colorPalette`: this defines the neoPOP color palette (ideally you would not want to modify this) + - `colorGuide`: this defines the colors for each component. Every component have it's own structure to define their color guide, refer [here](https://github.com/CRED-CLUB/neopop-web/blob/src/primitives/colors.ts) for default color guide +- To override the color primitives you can use the `extend` method + +**make sure to call `extend` method in your `index` file before mounting the react node** + +```jsx +import { extend } from '@cred/neopop-web/lib/primitives'; + +extend({ + mainColors: { + black: '#000' + }, + colorGuide: { + lightComponents: { + buttons: { + primary: { + backgroundColor: mainColors.black + } + } + } + } +}) +``` + +## Passing `colorConfig` to the component for colors + +- All component have a `colorConfig` object which takes in a object based on the configuration of that component +- Check documentation for the object signature of each component +- This config will override the default neoPOP style + +Let's see how to customize the Button component + +```jsx +import React from 'react'; +import { Button } from '@cred/neopop-web/lib/components'; +import { colorPalette, mainColors } from '@cred/neopop-web/lib/primitives'; +import { hexToRGBA } from '@utils'; + +const colorConfig = { + backgroundColor: mainColors.black, + color: mainColors.white, + borderColor: '#E5FE40', + edgeColors: { right: '#A2B42D', bottom: '#67721F', top: 'transparent', left: 'transparent' }, + disabledColors: { + backgroundColor: colorPalette.black[50], + color: hexToRGBA(mainColors.white, 0.5), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: colorPalette.white[70], + bottom: colorPalette.white[50], + }, + }, +}; + +const MyCustomButton = (args) => { + return ( + + ); +}; + +export default MyCustomButton; +``` + + + {CustomiseButton.bind()} + + +## Passing `textStyle` to the component + +- Component that involves typography will have a prop called `textStyle` which accepts the `FontNameSpace` type object. +- You can pass `FontWeight`, `FontSize`, and `FontType` to this object. + +Let's customize the textStyle for the custom button: + +```jsx +... +import { FontWeights, FontType } from '@types'; + +const MyCustomButton = () => { + return ( + + ); +}; + +... +``` + + + + {CustomiseButton.bind()} + + + +## Passing inline styles to the component + +- Some components support inline CSS style tag which gets applied to the top level element of the wrapper. + +```jsx +my inline styled typography component +``` + + + my inline styled typography component + diff --git a/src/components/Helpers/Layout.stories.mdx b/src/components/Helpers/Layout.stories.mdx new file mode 100644 index 0000000..e824cec --- /dev/null +++ b/src/components/Helpers/Layout.stories.mdx @@ -0,0 +1,448 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { + HorizontalSpacer, + VerticalSpacer, + HorizontalDivider, + PageContainer, + Row, + Button, + Column, +} from '@components'; +import { Directions } from './types'; +import { mainColors, colorPalette } from '@primitives'; + + + +# Layout & Spacing + +Let's understand the basic building blocks of the neopop-web to build a strong foundation. It includes layout, & spacing related items needed to improve the developer experience. + +## Layout + +Defining layout becomes essential to maintain design uniformity. Components like PageContainer, Row, & Column etc are the most commonly used layouts and let's understand how to use it in your project. + +### PageContainer + +Wrap your page content into PageContainer to give paddings. As per the design system padding-right is `15px` and padding-left is `30px`. + +```jsx +import React from 'react'; +import { PageContainer } from '@cred/neopop-web/lib/components'; + +const Page = ({ children }) => { + return {children}; +}; + +export default Page; +``` + +### Row + +Easiest way to create rows. It uses flex under the hood. It comes with `v-justify`, `h-center`, & `v-center` pre-defined classes that makes the component more flexible. + +export const RowTemplate = (args) => { + return ( + + + + + + ); +}; + + + + {RowTemplate.bind()} + + + +```jsx +import React from 'react'; +import { Row, Button, VerticalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxRow = () => { + return ( + + + + + + ); +}; + +export default BoxRow; +``` + +#### Variants + +##### v-justify + +It adds `justify-content: space-between` style to the wrapper row container. + + + + + + + + + +```jsx +import React from 'react'; +import { Row, Button, VerticalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxRow = () => { + return ( + + + + + + ); +}; + +export default BoxRow; +``` + +##### h-center + +It adds `align-items: center` style to the wrapper row container. + + + + + + + + + +```jsx +import React from 'react'; +import { Row, Button, VerticalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxRow = () => { + return ( + + + + + + ); +}; + +export default BoxRow; +``` + +##### v-center + +It adds `justify-content: center` style to the wrapper row container. + + + + + + + + + +```jsx +import React from 'react'; +import { Row, Button, VerticalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxRow = () => { + return ( + + + + + + ); +}; + +export default BoxRow; +``` + +### Column + +Easiest way to create columns. It uses flex under the hood. It comes with `h-center`, & `v-center` pre-defined classes that makes the component more flexible. + +export const ColumnTemplate = (args) => { + return ( + + + + + + ); +}; + + + + {ColumnTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Column, Button, HorizontalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxColumn = () => { + return ( + + + + + + ); +}; + +export default BoxColumn; +``` + +#### Variants + +##### v-center + +It adds `align-items: center` style to the wrapper column container. + + + + + + + + + +```jsx +import React from 'react'; +import { Column, Button, HorizontalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxColumn = () => { + return ( + + + + + + ); +}; + +export default BoxColumn; +``` + +##### h-center + +It adds `justify-content: center` style to the wrapper column container. + + + + + + + + + +```jsx +import React from 'react'; +import { Column, Button, HorizontalSpacer } from '@cred/neopop-web/lib/components'; + +const BoxColumn = () => { + return ( + + + + + + ); +}; + +export default BoxColumn; +``` + +### HorizontalDivider + +Use this component to display a divider. `rgba(255, 255, 255, 0.1)` is the default color. + +export const Divider = (args) => { + return ; +}; + + + + {Divider.bind({})} + + + +```jsx +import React from 'react'; +import { HorizontalDivider } from '@cred/neopop-web/lib/components'; +import { colorPalette } from '@cred/neopop-web/lib/primitives'; + +const Divider = () => { + return ; +}; + +export default Divider; +``` + +**Props** + +
+ +| prop | description | type | default | +| ------- | ------------- | -------- | -------------------------- | +| `color` | divider color | `string` | `rgba(255, 255, 255, 0.1)` | + +
+ +## Spacing + +### HorizontalSpacer + +All the paddings and margins in neopop-web are multiples of 5. Use HorizontalSpacer component by specifying `n` to give `(5*n)px` margin horizontally. + + + + + + + + + +```jsx +import React from 'react'; +import { Column, HorizontalSpacer, Button } from '@cred/neopop-web/lib/components'; + +const ColumnItem = () => { + return ( + + + + + + ); +}; + +export default ColumnItem; +``` + +**Props** + +
+ +| prop | description | type | +| ----- | ------------------ | ------ | +| `n*` | padding multiplier | number | + +
+ +### VerticalSpacer + +All the paddings and margins in neopop-web are multiples of 5. Use VerticalSpacer component by specifying `n` to give `(5*n)px` margin vertically. + + + + + + + + + +```jsx +import React from 'react'; +import { Row, VerticalSpacer, Button } from '@cred/neopop-web/lib/components'; + +const RowItem = () => { + return ( + + + + + + ); +}; + +export default RowItem; +``` + +**Props** + +
+ +| prop | description | type | +| ----- | ------------------ | ------ | +| `n*` | padding multiplier | number | + +
diff --git a/src/components/Helpers/Miscellaneous.stories.mdx b/src/components/Helpers/Miscellaneous.stories.mdx new file mode 100644 index 0000000..c72b12d --- /dev/null +++ b/src/components/Helpers/Miscellaneous.stories.mdx @@ -0,0 +1,194 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import { + Cross, + Pointer, + Chevron, + HorizontalSpacer, + VerticalSpacer, + HorizontalDivider, + PageContainer, + Row, + Column, +} from '@components'; +import { Directions } from './types'; +import { mainColors } from '@primitives'; + + + +# Miscellaneous + +Here are the few miscellaneous items to improve the developer experience. + +## Icons + +Icons are often used to display common actions like close, expand and click etc. Here are few icons as per the design system. + +### Cross + +export const CrossIcon = (args) => { + return ; +}; + + + {}, + }} + > + {CrossIcon.bind({})} + + + +```jsx +import React from 'react'; +import { Cross } from '@cred/neopop-web/lib/components'; +import { mainColors } from '@cred/neopop-web/lib/primitives'; + +const CrossIcon = () => { + return ; +}; + +export default CrossIcon; +``` + +**Props** + +
+ +| prop | description | type | default | +| ----------- | ------------------- | -------- | --------- | +| `color*` | Cross icon color | string | `#ffffff` | +| `onClick*` | click event handler | function | `null` | + +
+ +### Pointer + +export const PointerIcon = (args) => { + return ; +}; + + + + {PointerIcon.bind({})} + + + +```jsx +import React from 'react'; +import { Pointer } from '@cred/neopop-web/lib/components'; +import { mainColors } from '@cred/neopop-web/lib/primitives'; + +const PointerIcon = () => { + return ; +}; + +export default PointerIcon; +``` + +**Props** + +
+ +| prop | description | type | default | +| ----------- | ------------------------------------------------------- | ------------- | --------- | +| `color` | Pointer icon color | string | `#ffffff` | +| `direction` | Pointer direction (`east`, `west`, `north`, or `south`) | string | `east` | +| `size` | Pointer size (`small`, or `medium`) | string | `medium` | +| `style` | inline style | CSSProperties | `null` | + +
+ +**Variants** + +
+ + + + + + + + + + + + +
+ +### Chevron + +export const ChevronIcon = (args) => { + return ; +}; + + + + {ChevronIcon.bind({})} + + + +```jsx +import React from 'react'; +import { Chevron } from '@cred/neopop-web/lib/components'; +import { mainColors } from '@cred/neopop-web/lib/primitives'; + +const ChevronIcon = () => { + return ; +}; + +export default ChevronIcon; +``` + +**Props** + +
+ +| prop | description | type | default | +| ----------- | ------------------------------------------------------- | ------------- | --------- | +| `color` | Chevron icon color | string | `#ffffff` | +| `direction` | Chevron direction (`east`, `west`, `north`, or `south`) | string | `east` | +| `style` | inline style | CSSProperties | `null` | + +
+ +**Variants** + +
+ + + + + + + + +
diff --git a/src/components/Helpers/index.tsx b/src/components/Helpers/index.tsx new file mode 100644 index 0000000..f02295d --- /dev/null +++ b/src/components/Helpers/index.tsx @@ -0,0 +1,130 @@ +import styled from 'styled-components'; +import { mainColors } from '@primitives'; +import * as React from 'react'; +import { ChevronProps, Directions, PointerProps, CrossProps } from './types'; +import { hexToRGBA } from '@utils'; + +export const Row = styled.div` + display: flex; + flex-direction: row; + &.h-center { + align-items: center; + } + &.v-center { + justify-content: center; + } + &.v-justify { + justify-content: space-between; + } +`; + +export const Column = styled.div` + display: flex; + flex-direction: column; + &.v-center { + align-items: center; + } + &.h-center { + justify-content: center; + } +`; + +export const PageContainer = styled.div` + background-color: ${mainColors.black}; + min-height: calc(100vh - constant(safe-area-inset-top)); + min-height: calc(100vh - env(safe-area-inset-top)); + width: 100vw; + padding: 0px 15px 0px 30px; + padding-bottom: constant(safe-area-inset-bottom); + padding-bottom: env(safe-area-inset-bottom); + display: flex; + flex-direction: column; +`; + +export const HorizontalDivider = styled.div` + background-color: ${({ color }) => color ?? hexToRGBA(mainColors.white, 0.1)}; + margin: 0px; + width: 100%; + height: 1px; + position: relative; +`; + +type SpacerType = { + n: number; +}; +export const HorizontalSpacer = styled.div` + margin-bottom: ${({ n }: SpacerType) => `calc(${n} * 5px)`}; +`; + +export const VerticalSpacer = styled.div` + margin-right: ${({ n }: SpacerType) => `calc(${n} * 5px)`}; +`; + +const RotateDegrees = { + [Directions.NORTH]: '-90deg', + [Directions.SOUTH]: '90deg', + [Directions.EAST]: '0deg', + [Directions.WEST]: '180deg', +}; + +export const Chevron = ({ + color = mainColors.white, + direction = Directions.EAST, +}: ChevronProps) => ( + + + +); + +export const Pointer = ({ + color = mainColors.white, + direction = Directions.EAST, + size = 'medium', + style, +}: PointerProps) => + size === 'small' ? ( + + + + ) : ( + + + + ); + +export const Cross = ({ color = mainColors.white, onClick }: CrossProps) => ( + + + + +); diff --git a/src/components/Helpers/types.ts b/src/components/Helpers/types.ts new file mode 100644 index 0000000..d4ab8db --- /dev/null +++ b/src/components/Helpers/types.ts @@ -0,0 +1,20 @@ +export enum Directions { + NORTH = 'north', + SOUTH = 'south', + EAST = 'east', + WEST = 'west', +} +export type ChevronProps = { + color?: string; + direction?: Directions; + style?: React.CSSProperties; +}; + +export type PointerProps = ChevronProps & { + size?: 'big' | 'medium' | 'small'; +}; + +export interface CrossProps { + color: string; + onClick: () => void; +} diff --git a/src/components/Helpers/withCheckHOC.tsx b/src/components/Helpers/withCheckHOC.tsx new file mode 100644 index 0000000..2771e77 --- /dev/null +++ b/src/components/Helpers/withCheckHOC.tsx @@ -0,0 +1,40 @@ +import React, { useState, useEffect } from 'react'; +import { RadioColorConfig, CheckboxColorConfig, ToggleColorConfig } from '../../types'; + +export interface CheckHOCProps { + colorConfig: CheckboxColorConfig | RadioColorConfig | ToggleColorConfig; + isChecked?: boolean; + onChange?: (v: React.ChangeEvent) => void; + id?: string; + name?: string; + value?: string; + label?: React.ReactNode; +} + +const withCheckHOC = (OriginalComponent: React.FunctionComponent) => { + const NewComponent = (props: CheckHOCProps) => { + const { isChecked, onChange, ...propsToFwd } = props; + const [isCbChecked, setIsCbCheck] = useState(isChecked ?? false); + useEffect(() => { + if (typeof isChecked === 'boolean') { + setIsCbCheck(isChecked); + } + }, [isChecked]); + const handleChange = (e: React.ChangeEvent) => { + if (onChange instanceof Function) { + onChange(e); + } else setIsCbCheck(e.target.checked); + }; + + return ( + + ); + }; + return NewComponent; +}; + +export default withCheckHOC; diff --git a/src/components/InputField/InputField.stories.mdx b/src/components/InputField/InputField.stories.mdx new file mode 100644 index 0000000..98b508d --- /dev/null +++ b/src/components/InputField/InputField.stories.mdx @@ -0,0 +1,153 @@ +import { Meta, ColorPalette, ColorItem, ArgsTable, Story, Canvas } from '@storybook/addon-docs'; +import InputField from '.'; + + + +export const InputFieldTemplate = (args) => ( +
+ +
+); + +# Input Field + +export const inputArgTypes = { + label: 'your name', + placeholder: 'enter your name', + type: 'text', + inputMode: 'text', + maxLength: 30, + id: 'text_field', + autoFocus: true, + colorMode: 'light', + colorConfig: { + labelColor: '#0d0d0d', + textColor: '#000000', + }, +}; + +export const inputWarningArgTypes = { + label: 'your name', + placeholder: 'enter your name', + type: 'text', + inputMode: 'text', + maxLength: 30, + id: 'text_field', + autoFocus: true, + errorMessage: 'error message comes here', + hasError: true, + colorConfig: { + textColor: '#0d0d0d', + errorColor: '#EE4D37', + }, +}; + +An input field includes a label and a text field users can type text into. + +## Usage + +```jsx +import React from 'react'; +import { InputField } from '@cred/neopop-web/lib/components'; + +const InputFieldExample = () => { + return ( +
+ +
+ ); +}; + +export default InputFieldExample; +``` + +## Variants + + + + {InputFieldTemplate.bind({})} + + + +### With Error Message + + + + {InputFieldTemplate.bind({})} + + + +## Props + +
+ +| prop | description | type | +| -------------- | ---------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| name | specifies the name | `string` | +| isDisabled | disable state | `bool` | +| placeholder | defines placeholder for the field | `string` | +| scrollIntoView | - | `bool` | +| id | the unique identifier for this field | `string` | +| label | specifies caption for the element | `string` | +| type | specifies the type of the input field | `text` , `tel` , `number` | +| onChange | event when the user commits a value change to a form control | `func` | +| maxLength | specifies the maximum value | `number` | +| value | specifies the value of an element | `any` | +| tabIndex | indicates the element can be focused, and participates in sequential keyboard navigation | `number` | +| autoComplete | specifies whether an element should have autocomplete enabled | `string` | +| onBlur | event when an element loses focus | `func` | +| onFocus | event when the user sets focus on an element | `number` | +| style | for inline styles | `React.CSSProperties` | +| autoFocus | specifies that an element should automatically get focus when the page loads | `bool` | +| hasError | specifies error state | `bool` | +| inputRef | ref attribute for input field | React.MutableRefObject | +| errorMessage | defines error message | `string` | +| colorConfig | can be used for passing additional color configurations | `object` | +| colorMode | dark or light | `string` | +| textStyle | can be used for passing font styles for label and input | `object` | +| inputMode | allows browser to display an appropriate virtual keyboard | `text` , `search`, `tel` , `url` , `email` , `numeric` , `decimal` , `none` | + +
+ +**colorConfig** + +
+ +| prop | description | type | +| ---------------- | -------------------------------------------------------- | -------- | +| textColor | color to be used by input element in active state | `string` | +| labelColor | color to be used for the label above input field | `string` | +| caretColor | color to be used for the caret (cursor) | `string` | +| errorColor | color to be used for the error message | `string` | +| placeholderColor | color to be used for the placeholder text in input field | `string` | + +
+ +**textStyle** + +
+ +| prop | description | type | +| ----- | ------------------------------------------ | --------------------------------- | +| label | font style to be used for label text | `object - FontNameSpaceInterface` | +| input | font style to be used for input field text | `object - FontNameSpaceInterface` | + +
+ +**FontNameSpaceInterface** + +
+ +| prop | description | type | +| --------------- | ------------------ | ------------------------------------------ | +| `fontType*` | typography variant | `heading`, `caps`, `body`, `serif-heading` | +| `fontWeight*` | weight of the text | `800`, `700`, `600`, `500`, `400`, `300` | +| `fontSize*` | size of the text | `string` | + +
diff --git a/src/components/InputField/index.tsx b/src/components/InputField/index.tsx new file mode 100644 index 0000000..1c4d36a --- /dev/null +++ b/src/components/InputField/index.tsx @@ -0,0 +1,84 @@ +import React from 'react'; +import Typography from '@components/Typography'; +import { InputFieldProps } from './types'; +import { Container, Input, Label } from './styles'; +import useScrollIntoView from '@hooks/useScrollIntoView'; +import useAutoFocus from '@hooks/useAutoFocus'; +import { colorGuide, typographyGuide } from '@primitives'; +import { isEmpty } from '@utils'; + +const InputField = (props: InputFieldProps) => { + const { + id, + label, + colorMode, + isDisabled, + inputRef, + scrollIntoView, + autoFocus, + value, + colorConfig, + textStyle, + hasError, + errorMessage = 'error message', + ...propsToFwd + } = props; + const customRef = React.useRef(null); + const { inputFields } = typographyGuide; + useScrollIntoView({ scrollIntoView: scrollIntoView, ref: customRef }); + useAutoFocus({ autoFocus: autoFocus, ref: customRef, currentValue: value }); + + const getLabelColor = () => { + if (hasError) { + return colorConfig?.errorColor; + } + return colorConfig?.labelColor; + }; + + const labelText = () => { + if (hasError) { + return errorMessage; + } + return label; + }; + const defaultColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].inputFields; + + const inputFieldColorConfig = isEmpty(colorConfig) + ? defaultColorConfig + : colorConfig ?? defaultColorConfig; + + return ( + + {label ? ( + + ) : ( + '' + )} + + { + customRef.current = inputRef ? (inputRef.current = ref) : ref; + }} + value={value} + id={id} + disabled={isDisabled} + textColor={inputFieldColorConfig?.textColor} + caretColor={inputFieldColorConfig?.caretColor} + placeholderColor={inputFieldColorConfig?.placeholderColor} + text={textStyle?.input ?? inputFields.text} + {...propsToFwd} + /> + + + ); +}; + +export default InputField; diff --git a/src/components/InputField/styles.ts b/src/components/InputField/styles.ts new file mode 100644 index 0000000..fcc097b --- /dev/null +++ b/src/components/InputField/styles.ts @@ -0,0 +1,57 @@ +import styled from 'styled-components'; +import { mainColors } from '@primitives'; +import { generateTextStyle, hexToRGBA } from '@utils'; +import { InputConfig } from './types'; + +export const Container = styled.div``; + +export const Input = styled.input` + ${({ textColor, text }: InputConfig) => + text ? generateTextStyle(text.fontType, text.fontSize, text.fontWeight, textColor) : ''} + display: block; + border: none; + outline: none; + background: transparent; + caret-color: ${({ caretColor }: InputConfig) => caretColor}; + max-width: 100%; + width: 100%; + padding: 0px; + ::placeholder { + color: ${({ placeholderColor }: InputConfig) => + placeholderColor ?? hexToRGBA(mainColors.black, 0.3)}; + } + + :-ms-input-placeholder { + /* Internet Explorer 10-11 */ + + color: ${({ placeholderColor }: InputConfig) => + placeholderColor ?? hexToRGBA(mainColors.black, 0.3)}; + } + + ::-webkit-input-placeholder { + /* Chrome/Opera/Safari */ + + color: ${({ placeholderColor }: InputConfig) => + placeholderColor ?? hexToRGBA(mainColors.black, 0.3)}; + } + + ::-moz-placeholder { + /* Firefox 19+ */ + + color: ${({ placeholderColor }: InputConfig) => + placeholderColor ?? hexToRGBA(mainColors.black, 0.3)}; + } + + :-moz-placeholder { + /* Firefox 18- */ + + color: ${({ placeholderColor }: InputConfig) => + placeholderColor ?? hexToRGBA(mainColors.black, 0.3)}; + } +`; + +export const Label = styled.label` + text-align: left; + margin-bottom: 10px; + display: block; +`; diff --git a/src/components/InputField/types.ts b/src/components/InputField/types.ts new file mode 100644 index 0000000..3233301 --- /dev/null +++ b/src/components/InputField/types.ts @@ -0,0 +1,44 @@ +import { FontNameSpaceInterface } from '../../types'; + +export interface InputColorConfig { + textColor?: string; + labelColor?: string; + caretColor?: string; + errorColor?: string; + placeholderColor?: string; +} + +export interface InputTypographyConfig { + label?: FontNameSpaceInterface; + text?: FontNameSpaceInterface; +} +export interface InputConfig extends InputColorConfig, InputTypographyConfig {} + +export type InputFieldColorModes = 'dark' | 'light'; +export interface InputFieldProps extends React.InputHTMLAttributes { + name?: string; + isDisabled?: boolean; + placeholder?: string; + scrollIntoView?: boolean; + id?: string; + label?: string; + onChange?: any; + maxLength?: number; + value?: any; + tabIndex?: number; + autoComplete?: string; + onBlur?: any; + onFocus?: any; + style?: {}; + autoFocus?: boolean; + hasError?: boolean; + inputRef?: React.MutableRefObject; + errorMessage?: string; + colorConfig?: InputColorConfig; + textStyle?: { + input: FontNameSpaceInterface; + label: FontNameSpaceInterface; + }; + inputMode?: 'text' | 'search' | 'tel' | 'url' | 'email' | 'numeric' | 'decimal' | 'none'; + colorMode?: InputFieldColorModes; +} diff --git a/src/components/Radio/Radio.stories.mdx b/src/components/Radio/Radio.stories.mdx new file mode 100644 index 0000000..189f57e --- /dev/null +++ b/src/components/Radio/Radio.stories.mdx @@ -0,0 +1,196 @@ +import { useState } from 'react'; +import { ArgsTable, Meta, Canvas, Story } from '@storybook/addon-docs'; +import { colorGuide } from '@primitives'; +import { HorizontalSpacer, Row, Radio } from '@components'; + + + +# Radio + +Radio component allow users to select single option from a list of options. + +export const GenderRadio = () => { + const [selectedVal, setSelectedVal] = useState(''); + const handleChange = (e) => { + console.log(e.target.value); + setSelectedVal(e.target.value); + }; + return ( + <> + + + + + ); +}; + +## Usage + + + + {GenderRadio.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Radio, HorizontalSpacer } from '@cred/neopop-web/lib/components'; +import { colorGuide } from '@cred/neopop-web/lib/primitives'; + +const GenderRadio = () => { + const [selectedVal, setSelectedVal] = useState(''); + const handleChange = (e) => { + console.log(e.target.value); + setSelectedVal(e.target.value); + }; + + return ( + <> + + + + + ); +}; + +export default GenderRadio; +``` + +## Variants + +Radio component has two states namely selected and unselected. + +export const RadioTemplate = (args) => { + return ; +}; + +#### Selected + + + { + console.log(e.target.checked); + }, + }} + > + {RadioTemplate.bind({})} + + + +#### Unselected + + + { + console.log(e.target.checked); + }, + }} + > + {RadioTemplate.bind({})} + + + +## Props + +
+ +| prop | description | type | +| -------------- | --------------------------------- | ---------- | +| `id` | id of the radio element | `string` | +| `name*` | name of the radio element | `string` | +| `value*` | value of the radio element | `string` | +| `label*` | label of the radio element | `string` | +| `isChecked*` | if true, radio is checked | `boolean` | +| `colorConfig` | color-config of the radio element | `object` | +| `colorMode` | dark or light | `string` | +| `onChange` | onChange event handler | `function` | + +
+ +`colorConfig` prop object support four color configurations for content namely `border`, `background`, `plunk`, & `dotBackground` and 5 color configurations for radio-container namely `color`, `backgroundColor`, `borderColor`, `activeBackgroundColor`, & `activeBorderColor`. + +```js +// example +const colorConfig = { + background: mainColors.white, + border: mainColors.black, + plunk: colorPalette.black[50], + dotBackground: mainColors.white, + containerConfig: { + color: mainColors.black, + backgroundColor: colorPalette.black[100], + borderColor: hexToRGBA(mainColors.white, 0.1), + activeBackgroundColor: colorPalette.poliPurple[500], + activeBorderColor: '#2C5ECD', + }, +}; +``` diff --git a/src/components/Radio/index.tsx b/src/components/Radio/index.tsx new file mode 100644 index 0000000..a5f4f03 --- /dev/null +++ b/src/components/Radio/index.tsx @@ -0,0 +1,50 @@ +import React, { useRef } from 'react'; +import { StyledRadio, RadioLabel } from './styles'; +import { RadioProps } from './types'; +import { VerticalSpacer } from '@components/Helpers'; +import withCheckHOC from '@components/Helpers/withCheckHOC'; +import { colorGuide } from '@primitives'; +import { isEmpty } from '@utils'; + +const Radio = (props: RadioProps) => { + const { id, label, isChecked, handleChange, colorConfig, colorMode, ...propsToFwd } = props; + const radioRef = useRef(null); + const defaultColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].radio; + + const RadioStyledButton = () => ( + radioRef?.current?.click()} + colorConfig={ + isEmpty(colorConfig) ? defaultColorConfig : colorConfig ?? defaultColorConfig + } + > + + + + ); + + if (label && colorConfig?.containerConfig) { + return ( + + + +
{label}
+
+ ); + } + return ; +}; + +export default withCheckHOC(Radio); diff --git a/src/components/Radio/styles.ts b/src/components/Radio/styles.ts new file mode 100644 index 0000000..a5a1098 --- /dev/null +++ b/src/components/Radio/styles.ts @@ -0,0 +1,96 @@ +import styled from 'styled-components'; +import { mainColors } from '@primitives'; +import { RadioContainerColorConfig, StyledRadioProps } from './types'; + +const RADIO_SIZE = 20; + +export const StyledRadio = styled.div` + display: block; + position: relative; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; + width: ${RADIO_SIZE}px; + height: ${RADIO_SIZE}px; + + /* Hide the browser's default radio button */ + input { + position: absolute; + opacity: 0; + cursor: pointer; + left: 0; + } + + /* Create a custom radio button */ + .checkmark { + position: absolute; + top: 0; + left: 0; + border-radius: 50%; + width: ${RADIO_SIZE}px; + height: ${RADIO_SIZE}px; + background-color: ${(props) => props.colorConfig.background}; + border: 1px solid ${(props) => props.colorConfig.border}; + box-sizing: border-box; + &:active { + box-shadow: inset 2px 2px 0px ${(props) => props.colorConfig.plunk}; + border: 0; + background-color: ${(props) => props.colorConfig.border}; + } + } + + /* When the radio button is checked, add a black background */ + input:checked ~ .checkmark { + background-color: ${(props) => props.colorConfig.border}; + &:active { + box-shadow: 0px 0px 0px; + } + } + + /* Create the indicator (the dot/circle - hidden when not checked) */ + .checkmark:after { + content: ''; + position: absolute; + display: none; + } + + /* Show the indicator (dot/circle) when checked */ + input:checked ~ .checkmark:after { + display: block; + } + + /* Style the indicator (dot/circle) */ + .checkmark:after { + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 7px; + height: 7px; + border-radius: 50%; + background-color: ${(props) => props.colorConfig.dotBackground}; + } +`; + +export const RadioLabel = styled.label` + user-select: none; + -webkit-tap-highlight-color: transparent; + --webkit-user-select: none; + display: flex; + align-items: center; + cursor: pointer; + border: ${({ borderColor }) => `1px solid ${borderColor}`}; + background-color: ${({ backgroundColor }) => backgroundColor}; + padding: 15px; + color: ${({ color }) => color ?? mainColors.black}; + + .label { + max-width: calc(100% - 35px); + } + &.selected { + border: ${({ activeBorderColor }) => `1px solid ${activeBorderColor}`}; + background-color: ${({ activeBackgroundColor }) => activeBackgroundColor}; + } +`; diff --git a/src/components/Radio/types.ts b/src/components/Radio/types.ts new file mode 100644 index 0000000..e9e7a43 --- /dev/null +++ b/src/components/Radio/types.ts @@ -0,0 +1,52 @@ +export type RadioColorModes = 'dark' | 'light'; +export interface RadioContainerColorConfig { + borderColor: string; + backgroundColor: string; + activeBackgroundColor: string; + activeBorderColor: string; + color: string; +} +export interface RadioColorConfig { + background: string; + border: string; + plunk: string; + dotBackground: string; + containerConfig?: RadioContainerColorConfig; +} + +export interface RadioProps extends React.HTMLAttributes { + /** + * id attribute + */ + id?: string; + /** + * name attribute + */ + name?: string; + /** + * name attribute + */ + value?: string; + /** + * is radio checked? + */ + isChecked: boolean; + /** + * color configs for radio + */ + colorConfig?: RadioColorConfig; + /** + * Mode of radio + */ + colorMode?: RadioColorModes; + /** + * radio onChange handler + */ + handleChange: (v?: React.ChangeEvent) => void; + + label?: React.ReactNode; +} + +export interface StyledRadioProps { + colorConfig: RadioColorConfig; +} diff --git a/src/components/Scoremeter/Scoremeter.stories.mdx b/src/components/Scoremeter/Scoremeter.stories.mdx new file mode 100644 index 0000000..4b5ffa2 --- /dev/null +++ b/src/components/Scoremeter/Scoremeter.stories.mdx @@ -0,0 +1,188 @@ +import { ArgsTable, Story, Canvas, Meta } from '@storybook/addon-docs'; +import { getScoreMeterConfig } from '../../primitives'; +import ScoreMeter from '.'; + + + +export const DarkScoreMeterTemplate = (args) => ( +
+ +
+); + +export const LightScoreMeterTemplate = (args) => ( +
+ +
+); + +export const ScoreMeterArgs = { + reading: { + description: 'Current value of meter', + }, + meterConfig: { + description: + 'All configs related to meter. meterColor: bar fill color, meterWrapper: outside meter wrapper bg, border: meter border, dotColor: dot color', + }, + scoreConfig: { + description: + 'All configs related to score. scoreDesc: description inside meter, scoreWrapper: space between bar with meterColor and scoreContainer, scoreContainer: score container background, scoreColor: score text color, showIndicators: indicators for score inc/dec.', + }, + oldReading: { + description: 'Old reading (pass when score change animation required)', + control: { + type: 'number', + }, + }, + lowerLimit: { + description: 'Minimum possible reading of meter', + defaultValue: 300, + control: { + type: 'number', + }, + }, + upperLimit: { + description: 'Maximum possible reading of meter', + defaultValue: 900, + control: { + type: 'number', + }, + }, +}; + +# ScoreMeter + +ScoreMeter component can be used as a visual representation of any measurable and quantifiable value with a defined lower and upper limit. + +## Usage + +- Pass the required Props +- Use `colorMode` prop to change the color mode - `"dark"` or `"light"` +- Use `type` prop to change the colors based on rating `"excellent"`, `"average"`, or `"poor"` +- `colorConfig` will override the default config (calculated based on `colorMode` and `type`) + +```jsx +import { ScoreMeter } from '@cred/neopop-web/lib/components'; + +const ScoreMeterExample = () => { + return ( + + ); +}; + +export default ScoreMeterExample; +``` + +## Variants + +
+ + + + {DarkScoreMeterTemplate.bind({})} + + + + + + {LightScoreMeterTemplate.bind({})} + + + +## Props + +
+ + +| name | description | type | +| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------ | ------- | +| `reading*` | Current value of meter | number | +| `oldReading` | Old reading (to be given when animation to new reading required) | number | +| `lowerLimit` | Min reading of meter (default 300) | number | +| `upperLimit` | Max reading of meter (default 900) | number | +| `colorMode` | Color mode of the score meter - `"dark"` or `"light"` | string | +| `type` | Rating Type of the score meter - `"excellent"`, `"average"`, or `"poor"` | string | +| `scoreDesc` | Text to be shown below the score | string | +| `showIndicators` | Show indicators up or down (used in case of animation)
use `indicatorColors` in `colorConfig` to set the colors for indicators | boolean | +| `colorConfig` | All configs related to color of the scoremeter | object | +| `showLegends` | Use to show lower limit and upper limit text | boolean | + + +
+ +**colorConfig** + +
+ + +| name | description | type | +| -------------------------- | ---------------------------------------------------------------------------- | ------ | +| `meterStrokeColor*` | Object defining color of the meter | object | +| `meterStrokeBackground` | Background of the meter color | string | +| `meterBorderColor` | Outer border of the meter | string | +| `dotColor` | Color for the dot on the meter | string | +| `indicatorColors` | Color of the indicators used inside the meter | object | +| `scoreContainerBackground` | Score background color | string | +| `scoreContainerBorder` | Color of the border of the container (gap between meter and score container) | string | +| `scoreColor` | Color of the score | string | + + +
+ +**meterStrokeColor** + +
+ + +| name | description | type | +| ------------ | ---------------------------------- | ------ | +| `excellent*` | Color when the rating is excellent | string | +| `average*` | Color when the rating is average | string | +| `poor*` | Color when the rating is poor | string | + + +
+ +**indicatorColors** + +
+ + +| name | description | type | +| ------------ | ---------------------------------------------------------------- | ------ | +| `neutral*` | Color used when there is no change in `oldReading` and `reading` | string | +| `increment*` | Color used when `oldReading < reading` | string | +| `decrement*` | Color used when `oldReading > reading` | string | + + +
diff --git a/src/components/Scoremeter/index.tsx b/src/components/Scoremeter/index.tsx new file mode 100644 index 0000000..fa665bc --- /dev/null +++ b/src/components/Scoremeter/index.tsx @@ -0,0 +1,181 @@ +import React from 'react'; +import Typography from '@components/Typography'; +import { colorGuide, fontNameSpaces } from '@primitives'; +import { Legend, MeterContainer, MeterSVG, MeterWrapper, ScoreContainer } from './styles'; +import { DEFAULT_MODE, DEFAULT_TYPE, LOWER_THRESHOLD, ScoremeterProps } from './types'; +import { Row } from '@components/Helpers'; + +const getScoremeterReading = (reading: number, lowerLimit: number, upperLimit: number) => + ((75 - 0) / (upperLimit - lowerLimit)) * (reading - upperLimit) + 75; +const getDotRotateDegree = (reading: number, lowerLimit: number, upperLimit: number) => + 2.7 * (((reading - lowerLimit) * 100) / (upperLimit - lowerLimit)) + 47; + +const ScoreMeter = (props: ScoremeterProps) => { + const { + reading, + oldReading, + colorMode = DEFAULT_MODE, + type = DEFAULT_TYPE, + colorConfig = colorGuide[colorMode == 'light' ? 'lightComponents' : 'darkComponents'] + .scoremeter, + scoreDesc, + showIndicators, + lowerLimit = 300, + upperLimit = 900, + showLegends = true, + } = props; + + const sanitizedReading = reading < 0 ? LOWER_THRESHOLD : reading; + const sanitizedOldReading = oldReading + ? oldReading < 0 + ? LOWER_THRESHOLD + : oldReading + : LOWER_THRESHOLD; + const [score, setScore] = React.useState(sanitizedReading); + const [oldScore] = React.useState(sanitizedOldReading); + const [animate, setAnimate] = React.useState(false); + const [scoreUpdate, setScoreUpdate] = React.useState(false); + + const differenceScore = sanitizedOldReading + ? sanitizedReading - sanitizedOldReading + : sanitizedReading; + const differential = differenceScore < 0 ? -1 : 1; + + React.useEffect(() => { + if (sanitizedOldReading && sanitizedReading !== sanitizedOldReading) { + setScore(sanitizedOldReading); + setAnimate((prev) => !prev); + } + }, []); + + React.useEffect(() => { + if (score !== sanitizedReading) { + setTimeout(() => { + setScoreUpdate(true); + }, 500); + } + }, [animate]); + + React.useEffect(() => { + if (Math.floor(sanitizedReading) !== Math.floor(score)) { + setTimeout(() => { + setScore((prevScore) => prevScore + differential); + setScoreUpdate((prev) => !prev); + }, 20); + } + }, [scoreUpdate]); + + const scoreReading = getScoremeterReading(score, lowerLimit, upperLimit); + const dotRotateDegree = getDotRotateDegree(score, lowerLimit, upperLimit); + + return ( + + + +
+
+ + + {score > oldScore ? ( + + ) : ( + + )} + +
+ + {/* Inside Meter */} + +
+ + {sanitizedOldReading ? score : sanitizedReading} + + {scoreDesc ? ( + + {scoreDesc} + + ) : null} + {showIndicators ? ( +
+ + oldScore + ? colorConfig?.indicatorColors?.increment + : colorConfig?.indicatorColors?.neutral + } + fillRule="evenodd" + /> + + + + +
+ ) : ( + '' + )} +
+
+ + + {/* Legends */} + {showLegends ? ( + <> + +
·
+ + {lowerLimit} + +
+ +
·
+ + {upperLimit} + +
+ + ) : null} + + + ); +}; + +export default ScoreMeter; diff --git a/src/components/Scoremeter/styles.ts b/src/components/Scoremeter/styles.ts new file mode 100644 index 0000000..1eef74b --- /dev/null +++ b/src/components/Scoremeter/styles.ts @@ -0,0 +1,107 @@ +import styled, { css } from 'styled-components'; +import { ScoremeterColorConfig, ScoremeterTypes } from './types'; + +export const MeterContainer = styled.div` + position: relative; + height: 185px; +`; + +interface StyledScoremeter { + colorConfig: ScoremeterColorConfig; + type: ScoremeterTypes; + showIndicators?: boolean; +} + +export const MeterWrapper = styled.div` + position: relative; + width: 160px; + height: 160px; + border-radius: 50%; + background: ${({ colorConfig }) => colorConfig?.meterStrokeBackground ?? 'transparent'}; + display: flex; + justify-content: center; + align-items: center; + border: ${({ colorConfig }) => `1px solid ${colorConfig?.meterBorderColor}`}; + + &.absoulte-center { + left: 50%; + top: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + } + + .dot { + width: 6px; + height: 6px; + position: absolute; + background: ${({ colorConfig, type }) => + colorConfig?.dotColor + ? colorConfig.dotColor + : colorConfig?.meterStrokeColor[type ?? 'excellent']}; + border-radius: 50%; + z-index: 9; + transform: rotateZ(45deg) translateY(80px); + transition: transform 0.2s ease; + } + + .meter { + transform: rotate(135deg); + background: ${({ colorConfig }) => colorConfig?.meterStrokeBackground}; + border-radius: 50%; + } +`; + +export const ScoreContainer = styled.div` + width: 115px; + height: 115px; + border-radius: 50%; + background: ${({ colorConfig }) => + colorConfig?.scoreContainerBorder ? colorConfig?.scoreContainerBorder : 'transparent'}; + position: absolute; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + left: 50%; + top: 50%; + -webkit-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + .score { + all: inherit; + background: ${({ colorConfig }) => colorConfig?.scoreContainerBackground}; + color: ${({ colorConfig }) => colorConfig?.scoreColor}; + padding-top: ${({ showIndicators }) => (showIndicators ? '6%' : '0')}; + width: 95px; + height: 95px; + letter-spacing: 1px; + overflow: hidden; + } +`; + +export const MeterSVG = styled.svg` + display: block; + & .path { + transition: stroke-dasharray 100ms ease; + } + & .path1 { + transition: stroke-dasharray 100ms ease; + } +`; + +export const Legend = styled.div` + position: absolute; + bottom: 0; + color: #4b4f52; + ${(props: { right?: boolean }) => + props.right + ? css` + right: 0; + ` + : css` + left: 0; + `}; + .dot { + text-align: center; + color: #434547; + } +`; diff --git a/src/components/Scoremeter/types.ts b/src/components/Scoremeter/types.ts new file mode 100644 index 0000000..7d03edd --- /dev/null +++ b/src/components/Scoremeter/types.ts @@ -0,0 +1,39 @@ +interface IndicatorColors { + neutral?: string; + increment?: string; + decrement?: string; +} + +export const LOWER_THRESHOLD = 0; +export const DEFAULT_MODE = 'dark'; +export const DEFAULT_TYPE = 'excellent'; +export interface ScoremeterColorConfig { + meterStrokeColor: { + excellent: string; + average: string; + poor: string; + }; + meterStrokeBackground?: string; + meterBorderColor?: string; + dotColor?: string; + indicatorColors?: IndicatorColors; + scoreContainerBackground?: string; + scoreContainerBorder?: string; + scoreColor?: string; +} + +export type ScoremeterModes = 'dark' | 'light'; + +export type ScoremeterTypes = 'excellent' | 'average' | 'poor'; +export interface ScoremeterProps { + reading: number; + colorMode?: ScoremeterModes; + type?: ScoremeterTypes; + colorConfig?: ScoremeterColorConfig; + scoreDesc?: string; + showIndicators?: boolean; + oldReading: number; + lowerLimit?: number; + upperLimit?: number; + showLegends?: boolean; +} diff --git a/src/components/SearchBar/SearchBar.stories.mdx b/src/components/SearchBar/SearchBar.stories.mdx new file mode 100644 index 0000000..c2d79ce --- /dev/null +++ b/src/components/SearchBar/SearchBar.stories.mdx @@ -0,0 +1,163 @@ +import { ArgsTable, Meta, Canvas, Story } from '@storybook/addon-docs'; +import { colorGuide, mainColors, colorPalette } from '@primitives'; +import { SearchBar } from '@components'; + + + +# SearchBar + +SearchBar component allows to render a flexible search input field with change and submit event support. + +export const BasicSearch = (args) => { + return ; +}; + +## Usage + +### 1. Search with icon + + + { + console.log('Search query: ', value); + }, + onSubmit: (value) => { + console.log('Search query submitted'); + }, + }} + > + {BasicSearch.bind({})} + + + +```jsx +import React from 'react'; +import { SearchBar } from '@cred/neopop-web/lib/components'; +import { colorGuide } from '@cred/neopop-web/lib/primitives'; + +const SearchInputField = () => { + const handleChange = (value) => { + console.log('Search query: ', value); + }; + const handleSubmit = () => { + console.log('Search query submitted'); + }; + + return ( + + ); +}; + +export default SearchInputField; +``` + +### 2. Search without icon + + + { + console.log('Search query: ', value); + }, + onSubmit: (value) => { + console.log('Search query submitted'); + }, + }} + > + {BasicSearch.bind({})} + + + +```jsx +import React from 'react'; +import { SearchBar } from '@cred/neopop-web/lib/components'; +import { colorGuide } from '@cred/neopop-web/lib/primitives'; + +const SearchInputField = () => { + const handleChange = (value) => { + console.log('Search query: ', value); + }; + const handleSubmit = () => { + console.log('Search query submitted'); + }; + + return ( + + ); +}; + +export default SearchInputField; +``` + +## Props + +
+ +| prop | description | type | +| ---------------------- | ----------------------------------------------- | --------------------------------- | +| `iconUrl` | url of icon inside input field | `string` | +| `placeholder` | input field placeholder | `string` | +| `colorConfig` | search container color config | `object` | +| `inputColorConfig` | input field color config | `object` | +| `colorMode` | dark or light | `string` | +| `textStyle` | font styles to be used for the input text field | `object - FontNameSpaceInterface` | +| `handleSearchInput*` | onChange event handler | `function` | +| `onSubmit` | onSubmit event handler | `function` | + +
+ +**colorConfig** prop object support four color configurations for content namely `border`, `activeBorder`, `backgroundColor`, & `closeIcon`. + +**inputColorConfig** prop object support five color configurations for content namely `textColor`, `labelColor`, `caretColor`,`errorColor`, & `placeholderColor`. + +**textStyle** + +
+ +| prop | description | type | +| --------------- | ------------------ | ------------------------------------------ | +| `fontType*` | typography variant | `heading`, `caps`, `body`, `serif-heading` | +| `fontWeight*` | weight of the text | `800`, `700`, `600`, `500`, `400`, `300` | +| `fontSize*` | size of the text | `string` | + +
+ +```js +const colorConfig = { + border: mainColors.black, + activeBorder: mainColors.green, + backgroundColor: mainColors.white, + closeIcon: colorPalette.popBlack[100], +}; + +const inputColorConfig = { + textColor: mainColors.black, + labelColor: mainColors.blue, + caretColor: mainColors.black, + errorColor: mainColors.red, + placeholderColor: colorPalette.popBlack[100], +}; +``` diff --git a/src/components/SearchBar/index.tsx b/src/components/SearchBar/index.tsx new file mode 100644 index 0000000..02bb032 --- /dev/null +++ b/src/components/SearchBar/index.tsx @@ -0,0 +1,80 @@ +import * as React from 'react'; +import { Cross } from '@components/Helpers'; +import InputField from '@components/InputField'; +import { colorGuide, typographyGuide } from '@primitives'; +import { SearchBarContainer } from './styles'; +import { SearchBarProps } from './types'; +import { isEmpty } from '@utils'; + +const SearchBar = (props: SearchBarProps) => { + const { + iconUrl, + colorConfig, + textStyle = typographyGuide.searchBar.input, + placeholder, + handleSearchInput, + colorMode, + inputColorConfig, + onSubmit, + } = props; + const [searchText, setSearchText] = React.useState(''); + const [isActive, setIsActive] = React.useState(false); + const inputRef = React.useRef(null); + const handleChange = (event: React.ChangeEvent) => { + const value = event?.target?.value ?? ''; + setSearchText(value); + handleSearchInput(value); + }; + const handleSubmit = (e: React.FormEvent) => { + e?.preventDefault(); + inputRef?.current?.blur(); + onSubmit?.(); + }; + const clearData = () => { + setSearchText(''); + handleSearchInput(''); + }; + const defaultSearchBarColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].searchBar; + const defaultInputFieldColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].inputFields; + const searchColorConfig = isEmpty(colorConfig) + ? defaultSearchBarColorConfig + : colorConfig ?? defaultSearchBarColorConfig; + const inputFieldColorConfig = isEmpty(inputColorConfig) + ? defaultInputFieldColorConfig + : inputColorConfig ?? defaultInputFieldColorConfig; + + return ( + setIsActive(true)} + onBlur={() => { + setIsActive(false); + }} + > + {iconUrl ? search : null} +
+
+ + + +
+ {searchText ? : null} +
+ ); +}; + +export default SearchBar; diff --git a/src/components/SearchBar/styles.ts b/src/components/SearchBar/styles.ts new file mode 100644 index 0000000..12f9917 --- /dev/null +++ b/src/components/SearchBar/styles.ts @@ -0,0 +1,22 @@ +import styled from 'styled-components'; +import { SearchBarColorConfig } from './types'; + +export const SearchBarContainer = styled.div` + display: flex; + padding: 11px 15px; + align-items: center; + border: ${({ border }: SearchBarColorConfig) => `1px solid ${border}`}; + background-color: ${({ backgroundColor }: SearchBarColorConfig) => + backgroundColor ? `${backgroundColor}` : 'transparent'}; + &.active { + border: ${({ activeBorder }: SearchBarColorConfig) => `1px solid ${activeBorder}`}; + } + .icon { + margin-right: 10px; + height: 16px; + width: auto; + } + .input { + width: 100%; + } +`; diff --git a/src/components/SearchBar/types.ts b/src/components/SearchBar/types.ts new file mode 100644 index 0000000..5f73e16 --- /dev/null +++ b/src/components/SearchBar/types.ts @@ -0,0 +1,21 @@ +import { FontNameSpaceInterface, InputColorConfig } from '@types'; + +export interface SearchBarColorConfig { + border: string; + activeBorder: string; + backgroundColor: string; + closeIcon: string; +} + +export type SearchBarColorModes = 'dark' | 'light'; + +export interface SearchBarProps { + iconUrl?: string; + textStyle?: FontNameSpaceInterface; + placeholder?: string; + handleSearchInput: Function; + colorConfig?: SearchBarColorConfig; + inputColorConfig?: InputColorConfig; + onSubmit?: () => void; + colorMode?: SearchBarColorModes; +} diff --git a/src/components/Slider/Slider.stories.mdx b/src/components/Slider/Slider.stories.mdx new file mode 100644 index 0000000..37b886c --- /dev/null +++ b/src/components/Slider/Slider.stories.mdx @@ -0,0 +1,74 @@ +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import Slider from '@components/Slider'; +import { useState } from 'react'; + + + +# Slider + +Slider is ideal for showing a range of values, from which users may select a single value. Common use cases include selecting amount from a given range, brightness, volume settings. + +## Usage + +export const SliderTemplate = (args) => { + return ; +}; + +export const SliderTemplateArgs = { + min: 0, + max: 100, + step: 1 +}; + + + + {SliderTemplate.bind({})} + + + +```jsx +import React from 'react'; +import { Slider } from '@cred/neopop-web/lib/components'; + +const SliderExample = () => { + return ( + + ) +} +``` + +## Props + +| prop | description | type +| ------------- | ------------------------------------------------------------------------------------------------- | -------- +| `min*` | Minimum value the slider can take as input | number +| `max*` | Maximum value the slider can take as input | number +| `step*` | Specifies the size of each movement of the slider control | number +| `defaultValue` | Sets the default value of the slider control | number +| `value` | Sets the current value of the slider control | number +| `sliderConfig` | Object that takes the slider config to control slider UI | object +| `thumbConfig` | Object that takes the thumb config to control slider thumb UI | object +| `onInput` | Handle input event, occurs immediately after the value of an element has changed | function +| `onChange` | Handle change event, occurs when the element loses focus, after the value has changed | function +| `style` | Pass CSS styles to customize the slider according to your requirements | CSSProperties + +You can pass the following fields in the `sliderConfig` object to control how the slider looks. + +| field | description | type +| ------------- | ------------------------------------------------------------------------------------- | -------- +| `sliderWidth` | Sets the width of the slider | string +| `sliderHeight` | Sets the height of the slider | string +| `sliderBackground` | Sets the background color of the slider bar | string +| `sliderTransition` | Sets the transition effect of the slider, eg. color change transition on sliding | string + +You can pass the following fields in the `thumbConfig` object to control how the slider thumb looks. + +| field | description | type +| ------------- | ------------------------------------------------------------------------------------- | -------- +| `thumbWidth` | Sets the width of the slider thumb | string +| `thumbHeight` | Sets the height of the slider thumb | string +| `thumbBackground` | Sets the background of the slider thumb | string +| `thumbBackgroundSize` | Sets the background size of the slider thumb | string +| `thumbBackgroundColor`| Sets the background color of the slider thumb | string +| `thumbBorder` | Sets the border of the slider thumb | string +| `thumbBorderRadius` | Sets the border radius of the slider thumb | string diff --git a/src/components/Slider/assets/slider.svg b/src/components/Slider/assets/slider.svg new file mode 100644 index 0000000..50f05fe --- /dev/null +++ b/src/components/Slider/assets/slider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/Slider/index.tsx b/src/components/Slider/index.tsx new file mode 100644 index 0000000..3aede4b --- /dev/null +++ b/src/components/Slider/index.tsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { SliderProps } from './types'; +import { SliderWrapper } from './styles'; +import { SliderConfig, ThumbConfig } from '@primitives'; +import { isEmpty } from '@utils'; + +const Slider = (props: SliderProps) => { + const { + min, + max, + step, + defaultValue, + value, + onInput, + onChange, + style, + sliderConfig, + thumbConfig, + } = props; + + const sliderUiConfig = isEmpty(sliderConfig) ? SliderConfig : sliderConfig; + const thumbUiConfig = isEmpty(thumbConfig) ? ThumbConfig : thumbConfig; + + return ( + + + + ); +}; + +export default Slider; diff --git a/src/components/Slider/styles.ts b/src/components/Slider/styles.ts new file mode 100644 index 0000000..7e82e5a --- /dev/null +++ b/src/components/Slider/styles.ts @@ -0,0 +1,44 @@ +import styled from 'styled-components'; +import { SliderProps } from './types'; + +export const SliderWrapper = styled.div>` + .slider { + outline: none; + -webkit-appearance: none; + width: ${({ sliderConfig }) => sliderConfig?.sliderWidth}; + height: ${({ sliderConfig }) => sliderConfig?.sliderHeight}; + background: ${({ sliderConfig }) => sliderConfig?.sliderBackground}; + transition: ${({ sliderConfig }) => sliderConfig?.sliderTransition}; + } + .slider::-webkit-slider-thumb { + -webkit-appearance: none; + cursor: pointer; + width: ${({ thumbConfig }) => thumbConfig?.thumbWidth}; + height: ${({ thumbConfig }) => thumbConfig?.thumbHeight}; + background: ${({ thumbConfig }) => thumbConfig?.thumbBackground}; + background-size: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundSize}; + border: ${({ thumbConfig }) => thumbConfig?.thumbBorder}; + background-color: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundColor}; + border-radius: ${({ thumbConfig }) => thumbConfig?.thumbBorderRadius}; + } + .slider::-moz-range-thumb { + cursor: pointer; + width: ${({ thumbConfig }) => thumbConfig?.thumbWidth}; + height: ${({ thumbConfig }) => thumbConfig?.thumbHeight}; + background: ${({ thumbConfig }) => thumbConfig?.thumbBackground}; + background-size: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundSize}; + border: ${({ thumbConfig }) => thumbConfig?.thumbBorder}; + background-color: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundColor}; + border-radius: ${({ thumbConfig }) => thumbConfig?.thumbBorderRadius}; + } + .slider::-ms-thumb { + cursor: pointer; + width: ${({ thumbConfig }) => thumbConfig?.thumbWidth}; + height: ${({ thumbConfig }) => thumbConfig?.thumbHeight}; + background: ${({ thumbConfig }) => thumbConfig?.thumbBackground}; + background-size: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundSize}; + border: ${({ thumbConfig }) => thumbConfig?.thumbBorder}; + background-color: ${({ thumbConfig }) => thumbConfig?.thumbBackgroundColor}; + border-radius: ${({ thumbConfig }) => thumbConfig?.thumbBorderRadius}; + } +`; diff --git a/src/components/Slider/types.ts b/src/components/Slider/types.ts new file mode 100644 index 0000000..8c27efe --- /dev/null +++ b/src/components/Slider/types.ts @@ -0,0 +1,30 @@ +import React from 'react'; + +export interface ThumbConfig { + thumbWidth?: string; + thumbHeight?: string; + thumbBackground?: string; + thumbBackgroundSize?: string; + thumbBackgroundColor?: string; + thumbBorder?: string; + thumbBorderRadius?: string; +} + +export interface SliderConfig { + sliderWidth?: string; + sliderHeight?: string; + sliderBackground?: string; + sliderTransition?: string; +} +export interface SliderProps { + min: number; + max: number; + step: number; + sliderConfig?: SliderConfig; + thumbConfig?: ThumbConfig; + defaultValue?: number; + value?: number; + onInput?: React.ChangeEventHandler; + onChange?: React.ChangeEventHandler; + style?: React.CSSProperties; +} diff --git a/src/components/Tags/Tags.stories.mdx b/src/components/Tags/Tags.stories.mdx new file mode 100644 index 0000000..9e4992b --- /dev/null +++ b/src/components/Tags/Tags.stories.mdx @@ -0,0 +1,180 @@ +import { ArgsTable, Story, Canvas, Meta } from '@storybook/addon-docs'; +import { colorGuide, mainColors } from '../../primitives'; +import Tag from '.'; + + + +# Tag + +export const TagTemplate = (args) => ; + +export const tagArgTypes = { + children: { + description: 'Tag keyword', + default: null, + type: { + required: true, + }, + }, + colorConfig: { + description: 'Tag color config', + default: null, + type: { + required: true, + }, + }, + noContainer: { + description: 'Tag without container?', + default: false, + }, + icon: { + description: 'Tag with icon source', + type: { + required: false, + }, + control: { + type: 'text', + }, + }, +}; + +Tag component is used to label, categorize or organize data using keywords. + + + Error (dark) + + Info (no container) + + Warning (light) + Success (dark) + + Info with icon + + + +## Usage + +```jsx +import { Tag } from '@cred/neopop-web/lib/components'; +import { mainColors } from '@cred/neopop-web/lib/primitives'; + +const TagUsage = () => { + return ( + + DEAL OF THE DAY + + ); +}; + +export default TagUsage; +``` + +## Variants + +
+ +### Success + + + + {TagTemplate.bind({})} + + + +### Info With Icon + + + + {TagTemplate.bind({})} + + + +### Error + + + + {TagTemplate.bind({})} + + + +### Warning + + + + {TagTemplate.bind({})} + + + +## Props + +
+ +| name | description | type | +| ------------- | ---------------------------------- | --------------------------------- | +| `children*` | tag keyword | `string` | +| `colorConfig` | tag color config | `object` | +| `icon` | tag with icon source | `string` | +| `noContainer` | tag without container | `boolean` | +| `colorMode` | dark or light | `string` | +| `textStyle` | can be used for passing font style | `object - FontNameSpaceInterface` | + +
+ +**colorConfig** + +
+ +| name | description | type | +| ------------ | ---------------- | ------ | +| `color` | text color | string | +| `background` | background color | string | + +
+ +**FontNameSpaceInterface** + +
+ +| prop | description | type | +| --------------- | ------------------ | ------------------------------------------ | +| `fontType*` | typography variant | `heading`, `caps`, `body`, `serif-heading` | +| `fontWeight*` | weight of the text | `800`, `700`, `600`, `500`, `400`, `300` | +| `fontSize*` | size of the text | `string` | + +
diff --git a/src/components/Tags/index.tsx b/src/components/Tags/index.tsx new file mode 100644 index 0000000..63dd6d4 --- /dev/null +++ b/src/components/Tags/index.tsx @@ -0,0 +1,50 @@ +import React from 'react'; +import Typography from '@components/Typography'; +import { typographyGuide } from '@primitives'; +import { TagContainer, TagIcon, TagIconContainer } from './styles'; +import { TagProps } from './types'; +import { isEmpty } from '@utils'; +import { getTagColor } from '@primitives/tags'; + +const DEFAULT_TYPE = 'success'; +const DEFAULT_MODE = 'dark'; + +const Tag = ({ + children, + colorConfig, + textStyle, + icon, + noContainer = false, + colorMode, + type, +}: TagProps) => { + const defaultColorConfig = getTagColor(type ?? DEFAULT_TYPE, colorMode ?? DEFAULT_MODE); + + const tagColorConfig = isEmpty(colorConfig) + ? defaultColorConfig + : colorConfig ?? defaultColorConfig; + const { background, color } = tagColorConfig; + const { tags } = typographyGuide; + + if (noContainer) + return ( + + {children} + + ); + + return ( + + {icon ? ( + + + + ) : null} + + {children} + + + ); +}; + +export default Tag; diff --git a/src/components/Tags/styles.ts b/src/components/Tags/styles.ts new file mode 100644 index 0000000..6400ce3 --- /dev/null +++ b/src/components/Tags/styles.ts @@ -0,0 +1,16 @@ +import styled from 'styled-components'; + +export const TagContainer = styled.div` + display: inline-flex; + padding: 5px 10px 4px; + align-items: center; +`; + +export const TagIconContainer = styled.div` + margin-right: 5px; +`; + +export const TagIcon = styled.img` + height: 10px; + width: auto; +`; diff --git a/src/components/Tags/types.ts b/src/components/Tags/types.ts new file mode 100644 index 0000000..bab4c90 --- /dev/null +++ b/src/components/Tags/types.ts @@ -0,0 +1,23 @@ +import { FontNameSpaceInterface } from '@types'; + +interface ColorConfig { + background?: string; + color: string; +} + +export type TagColorMode = 'dark' | 'light'; +export type TagTypes = 'warning' | 'error' | 'success' | 'info'; + +export interface TagProps { + children: React.ReactNode; + colorConfig: ColorConfig; + noContainer?: boolean; + icon?: string; + textStyle?: FontNameSpaceInterface; + colorMode?: TagColorMode; + type?: TagTypes; +} + +export interface ContainerProps { + bgColor: string; +} diff --git a/src/components/Toast/Toast.stories.mdx b/src/components/Toast/Toast.stories.mdx new file mode 100644 index 0000000..230fc1d --- /dev/null +++ b/src/components/Toast/Toast.stories.mdx @@ -0,0 +1,209 @@ +import { ArgsTable, Story, Canvas, Meta } from '@storybook/addon-docs'; +import { Row, VerticalSpacer } from '@components'; +import { mainColors } from '@primitives'; +import { showToast, ToastContainer } from '.'; +import { Toast } from './components/ToastPortal'; + + ( + <> + + {Story()} + + ), + ]} + component={Toast} +/> + +export const ToastTemplate = (args) => ( + +); + +export const toastArgTypes = { + content: { + description: 'Toast message', + type: { + required: true, + }, + }, + type: { + description: 'Type of toast - `success` | `error` | `warning`', + }, + id: { + table: { + disable: true, + }, + }, + removeToast: { + table: { + disable: true, + }, + }, + description: { + description: 'Toast subtext', + }, + colorConfig: { + description: 'Toast appearance (color and background)', + defaultValue: { + background: mainColors.red, + color: '#F8F8F8', + }, + }, + fullWidth: { + description: 'Toast width', + }, + dismissOnClick: { + description: 'Click to dismiss toast', + }, + autoCloseTime: { + description: 'Auto close time in ms', + }, + icon: { + description: 'Toast with icon source', + }, +}; + +# Toasts + +Toasts is used as a non blocking notification with short message for users to get a quick glance. + +## Usage + +1. Add `ToastContainer` anywhere in the DOM tree. +2. Call `showToast` method with message as first argument and object with toast configuration props as second argument. +3. You can pass the `type` as `success` | `error` | `warning` or can pass custom `colorConfig` to change the color of the toast. + +
+ +#### App.jsx + +```jsx +import { ToastContainer } from '@cred/neopop-web/lib/components'; +import MainApp from './MainApp.jsx'; // Any component +import ToastDemo from './ToastDemo.jsx'; + +const App = () => { + return ( +
+ {/* Mounting ToastContainer in DOM */} + + + +
+ ); +}; +``` + +#### ToastDemo.jsx + +```jsx +import { showToast } from '@cred/neopop-web/lib/components'; +import { mainColors } from '@cred/neopop-web/lib/primitives'; + +const ToastDemo = () => { + const showToastNotif = () => { + showToast('Sample toast message', { type: 'success', autoCloseTime: '5000' }); + }; + + return ; +}; + +export default ToastDemo; +``` + +## Variants + +### Error Toast + + + + {ToastTemplate.bind({})} + + + +### Warning Toast + + + + {ToastTemplate.bind({})} + + + +### Success Toast + + + + {ToastTemplate.bind({})} + + + +## Props + +`showToast(content: string, options: object)` function takes two arguments + +
+ +| prop | description | type | +| ------------ | ------------------------------- | -------- | +| `content*` | toast message | `string` | +| `options` | configuration for toast options | `object` | + +
+ +`options` + +
+ +| prop | description | type | +| ---------------- | ---------------------------------------------------------------------------- | --------- | +| `description` | toast subtext | `string` | +| `type` | `success`, `warning`, or `error` - this also decides the color | `string` | +| `colorConfig` | `{ background: string, color: string }` | `object` | +| `textStyle` | used for passing the font styles for toast content (message) and description | `object` | +| `fullWidth` | toast width with default true | `boolean` | +| `dismissOnClick` | if true, it will dismiss on click | `boolean` | +| `autoCloseTime` | auto close time in ms | `number` | +| `icon` | toast with icon source | `string` | + +
+ +**textStyle** + +
+ +| prop | description | type | +| ------------- | ------------------------------------------ | --------------------------------- | +| `heading` | font style to be used for heading text | `object - FontNameSpaceInterface` | +| `description` | font style to be used for description text | `object - FontNameSpaceInterface` | + +
+ +**FontNameSpaceInterface** + +
+ +| prop | description | type | +| --------------- | ------------------ | ------------------------------------------ | +| `fontType*` | typography variant | `heading`, `caps`, `body`, `serif-heading` | +| `fontWeight*` | weight of the text | `800`, `700`, `600`, `500`, `400`, `300` | +| `fontSize*` | size of the text | `string` | + +
diff --git a/src/components/Toast/components/ToastPortal.tsx b/src/components/Toast/components/ToastPortal.tsx new file mode 100644 index 0000000..feca171 --- /dev/null +++ b/src/components/Toast/components/ToastPortal.tsx @@ -0,0 +1,109 @@ +import React, { useState, useEffect, forwardRef, useImperativeHandle } from 'react'; +import { Portal } from 'react-portal'; +import { HorizontalSpacer, Column } from '../../Helpers'; +import { typographyGuide } from '../../../primitives'; +import Typography from '../../Typography'; +import { Icon, ToastItem } from '../styles'; +import { ToastIconProps, ToastProps } from '../types'; +import { hexToRGBA } from '../../../utils'; +import { getToastColor } from '@primitives/toasts'; + +const generateId = () => Math.random().toString(36).substring(2, 10); + +const DEFAULT_MSG = 'Something went wrong!'; + +const DEFAULT_TYPE = 'error'; + +const ToastIcon = ({ icon }: ToastIconProps) => { + if (!icon) return null; + return ; +}; + +export const Toast = (props: ToastProps) => { + const { + id, + type, + content = DEFAULT_MSG, + colorConfig = getToastColor(type ?? DEFAULT_TYPE), + textStyle = { ...typographyGuide.toast }, + fullWidth = true, + dismissOnClick = false, + description, + icon, + removeToast, + autoCloseTime, + } = props; + + return ( + (dismissOnClick && removeToast && id ? removeToast(id) : null)} + > + + + {content} + + {description ? ( + <> + + + {description} + + + ) : null} + + + + ); +}; + +export const ToastPortal = forwardRef((props, ref) => { + const [toastList, setToastList] = useState([]); + const [removeId, setRemoveId] = useState(''); + + useImperativeHandle(ref, () => ({ + addToast(options: ToastProps) { + setToastList([...toastList, { ...options, id: generateId() }]); + }, + })); + + const removeToast = (id: string | undefined) => { + if (id) { + setToastList((toasts) => toasts.filter((toast) => toast.id !== id)); + } + }; + + useEffect(() => { + if (removeId) { + removeToast(removeId); + } + }, [removeId]); + + useEffect(() => { + if (toastList.length) { + const { id, autoCloseTime } = toastList[toastList.length - 1]; + setTimeout(() => { + setRemoveId(id); + }, autoCloseTime || 3000); + } + }, [toastList]); + + if (!toastList) return null; + if (toastList && !toastList.length) return null; + + return ( + +
+ {toastList.map((toastItemData) => { + const { id, ...propsToFwd } = toastItemData; + return ; + })} +
+
+ ); +}); diff --git a/src/components/Toast/index.tsx b/src/components/Toast/index.tsx new file mode 100644 index 0000000..2f689e9 --- /dev/null +++ b/src/components/Toast/index.tsx @@ -0,0 +1,38 @@ +import React, { useEffect, useRef } from 'react'; +import { ToastPortal } from './components/ToastPortal'; +import { OptionProps, RefType } from './types'; + +class GlobalStore { + func: Array; + + constructor() { + this.func = []; + } + + on(listener: Function) { + this.func.push(listener); + } + + emit(options: OptionProps) { + this.func.forEach((l) => l(options)); + } +} + +const globalStore = new GlobalStore(); + +export const showToast = (content: string, options?: OptionProps) => { + globalStore.emit({ ...options, content }); +}; + +export const ToastContainer = () => { + const toastRef = useRef(); + + useEffect(() => { + const listener = (options?: OptionProps) => { + toastRef.current?.addToast(options); + }; + globalStore.on(listener); + }, []); + + return ; +}; diff --git a/src/components/Toast/styles.ts b/src/components/Toast/styles.ts new file mode 100644 index 0000000..965f295 --- /dev/null +++ b/src/components/Toast/styles.ts @@ -0,0 +1,50 @@ +import styled, { css } from 'styled-components'; +import { ToastItemProps } from './types'; + +const showUp = (autoCloseTime: number) => css` + @keyframes showup { + 0% { + transform: translateY(-120%); + } + ${`${20000 / autoCloseTime || 3000}%`} { + transform: translateX(0); + } + 90% { + transform: translateX(0); + } + 100% { + transform: translateY(-120%); + } + } +`; + +export const ToastItem = styled.div` + ${({ autoCloseTime }: ToastItemProps) => showUp(autoCloseTime || 3000)}; + display: flex; + align-items: flex-start; + border-radius: ${(props: ToastItemProps) => (props.fullWidth ? '0' : '4px')}; + background-color: ${(props: ToastItemProps) => props.background}; + padding: 15px; + margin: ${(props: ToastItemProps) => (props.fullWidth ? 'auto' : '8px')}; + margin-top: env(safe-area-inset-top); + margin-top: constant(safe-area-inset-top); + width: ${(props: ToastItemProps) => (props.fullWidth ? '100%' : 'auto')}; + position: fixed; + top: 0; + left: 0; + animation: ${({ autoCloseTime }: ToastItemProps) => + `showup ${autoCloseTime || '3000'}ms ease-in`}; + animation-fill-mode: forwards; + z-index: 1001; +`; + +export const ToastItemMsgContainer = styled.div` + /* padding: 15px 0px 15px 30px; */ +`; + +export const Icon = styled.img` + margin-left: 15px; + height: 30px; + min-height: 30px; + width: auto; +`; diff --git a/src/components/Toast/types.ts b/src/components/Toast/types.ts new file mode 100644 index 0000000..56d9520 --- /dev/null +++ b/src/components/Toast/types.ts @@ -0,0 +1,40 @@ +import { FontNameSpaceInterface } from '@types'; + +export type ToastItemProps = { + fullWidth: boolean; + background: string; + autoCloseTime: number | undefined; +}; + +export type ToastIconProps = { + icon: string | undefined; +}; + +export type OptionProps = Omit; + +export type RefType = { + addToast: (options?: OptionProps) => void; +}; + +type ToastColorConfig = { + background: string; + color: string; +}; + +export type ToastTypes = 'success' | 'error' | 'warning'; +export interface ToastProps { + id?: string; + content: string; + description?: string; + textStyle?: { + heading: FontNameSpaceInterface; + description: FontNameSpaceInterface; + }; + type?: ToastTypes; + colorConfig: ToastColorConfig; + fullWidth?: boolean; + dismissOnClick?: boolean; + autoCloseTime?: number; + icon?: string; + removeToast?: (id: string) => void; +} diff --git a/src/components/Toggle/Toggle.stories.mdx b/src/components/Toggle/Toggle.stories.mdx new file mode 100644 index 0000000..e32ea4f --- /dev/null +++ b/src/components/Toggle/Toggle.stories.mdx @@ -0,0 +1,120 @@ +import { useState } from 'react'; +import { Canvas, Meta, Story } from '@storybook/addon-docs'; +import { colorGuide } from '@primitives'; +import { Row, VerticalSpacer, Toggle } from '@components'; + + + +# Toggle + +Toggle component allow users to turn on or off a single option. They are usually used to enable or disable a specific setting. + +export const ToggleButton = () => { + const [isChecked, setIsChecked] = useState(false); + const handleChange = (event) => { + console.log(event.target.checked); + setIsChecked(event.target.checked); + }; + return ( + + ); +}; + +## Usage + + + + + +```jsx +import React, { useState } from 'react'; +import { Toggle } from '@cred/neopop-web/lib/components'; +import { colorGuide } from '@cred/neopop-web/lib/primitives'; + +const ToggleButton = () => { + const [isChecked, setIsChecked] = useState(false); + const handleChange = (event) => { + console.log(event.target.checked); + setIsChecked(event.target.checked); + }; + + return ( + + ); +}; + +export default ToggleButton; +``` + +## Variants + +Toggle component has two states namely on or off. + +export const ToggleVariant = (args) => { + return ; +}; + +#### On + + + {}, + }} + > + {ToggleVariant.bind({})} + + + +#### Off + + + {}, + }} + > + {ToggleVariant.bind({})} + + + +## Props + +
+ +| prop | description | type | +| -------------- | -------------------------- | ---------- | +| `isChecked*` | if true, toggle is checked | `boolean` | +| `colorConfig` | toggle color config | `object` | +| `colorMode` | dark or light | `string` | +| `onChange` | onChange event handler | `function` | + +
+ +`colorConfig` prop object support five color configurations for both on & off states namely: `switchBackground`, `switchBorder`, `buttonBackground`, `buttonBorder`, & `buttonMarkBackground`. + +
+ +| property | description | type | +| ------------------------- | ----------------------------------- | -------- | +| `switchBackground*` | toggle background color | `string` | +| `switchBorder*` | toggle border color | `string` | +| `buttonBackground*` | toggle button background color | `string` | +| `buttonBorder*` | toggle button border color | `string` | +| `buttonMarkBackground*` | toggle button mark background color | `string` | + +
diff --git a/src/components/Toggle/index.tsx b/src/components/Toggle/index.tsx new file mode 100644 index 0000000..28a374a --- /dev/null +++ b/src/components/Toggle/index.tsx @@ -0,0 +1,27 @@ +import React, { useRef } from 'react'; +import withCheckHOC from '@components/Helpers/withCheckHOC'; +import { ToggleBtn } from './styles'; +import { ToggleProps } from './types'; +import { colorGuide } from '@primitives'; +import { isEmpty } from '@utils'; + +const Toggle = (props: ToggleProps) => { + const { isChecked, handleChange, colorConfig, colorMode } = props; + const defaultColorConfig = + colorGuide[colorMode === 'light' ? 'lightComponents' : 'darkComponents'].toggle; + const toggleRef = useRef(null); + return ( + toggleRef?.current?.click()} + > + +
+ + ); +}; + +export default withCheckHOC(Toggle); diff --git a/src/components/Toggle/styles.ts b/src/components/Toggle/styles.ts new file mode 100644 index 0000000..eac2863 --- /dev/null +++ b/src/components/Toggle/styles.ts @@ -0,0 +1,64 @@ +import styled from 'styled-components'; +import { StyledToggleProps } from './types'; + +export const ToggleBtn = styled.div` + width: 40px; + height: 22px; + border: 1px solid ${(props) => props.colorConfig.on.switchBorder}; + box-sizing: border-box; + background-color: ${(props) => + props.isChecked + ? props.colorConfig.on.switchBackground + : props.colorConfig.off.switchBackground}; + transition: background-color 0.15s ease, border-width 0.15s ease; + position: relative; + cursor: pointer; + overflow: hidden; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; + + input { + opacity: 0; + width: 0; + height: 0; + position: absolute; + } + + /* Create a custom toggle box */ + .mark { + width: 20px; + height: 20px; + background-color: ${(props) => props.colorConfig.off.buttonBackground}; + border: 1px solid ${(props) => props.colorConfig.off.buttonBorder}; + box-sizing: border-box; + position: relative; + transition: transform 0.15s ease; + } + + input:checked ~ .mark { + background-color: ${(props) => props.colorConfig.on.buttonBackground}; + border: 1px solid ${(props) => props.colorConfig.on.buttonBorder}; + transform: translateX(18px); + } + + // square mark + .mark:after { + content: ''; + position: absolute; + left: 50%; + top: 50%; + width: 8px; + height: 8px; + transform: translate(-50%, -50%); + opacity: 1; + transition: opacity 0.15s ease; + background-color: ${(props) => props.colorConfig.off.buttonMarkBackground}; + } + + input:checked ~ .mark:after { + background-color: ${(props) => props.colorConfig.on.buttonMarkBackground}; + } +`; diff --git a/src/components/Toggle/types.ts b/src/components/Toggle/types.ts new file mode 100644 index 0000000..db7413c --- /dev/null +++ b/src/components/Toggle/types.ts @@ -0,0 +1,38 @@ +export type ToggleColorModes = 'dark' | 'light'; + +export interface ToggleProps { + /** + * checkbox color configs + */ + colorConfig?: ToggleColorConfig; + /** + * Mode of toggle + */ + colorMode?: ToggleColorModes; + /** + * Is toggle on? + */ + isChecked: boolean; + /** + * onChange event handler + */ + handleChange?: React.ChangeEventHandler; +} + +type ToggleColors = { + switchBackground: string; + switchBorder: string; + buttonBackground: string; + buttonBorder: string; + buttonMarkBackground: string; +}; + +export interface ToggleColorConfig { + on: ToggleColors; + off: ToggleColors; +} + +export interface StyledToggleProps { + colorConfig: ToggleColorConfig; + isChecked: boolean; +} diff --git a/src/components/Typography/Typography.stories.mdx b/src/components/Typography/Typography.stories.mdx new file mode 100644 index 0000000..867d423 --- /dev/null +++ b/src/components/Typography/Typography.stories.mdx @@ -0,0 +1,662 @@ +import styled from 'styled-components'; +import { Meta, Canvas, Story } from '@storybook/addon-docs'; +import FontVariantTut from './assets/FontVariant.png'; +import { FontOverflowType, FontType, FontWeights } from './types'; +import { Row, HorizontalSpacer, VerticalSpacer, HorizontalDivider, Typography } from '@components'; +import { colorPalette, mainColors, FontVariant } from '@primitives'; +import { GlobalFonts } from './TypographySystem/global'; +import { hexToRGBA } from '@utils'; + + + +export const System = () => { + const PageContainer = styled.div` + padding-bottom: 30px; + .gilroy { + font-family: 'Gilroy', 'Trebuchet MS', Helvetica, sans-serif; + } + .cirka { + font-family: 'Cirka', 'Times New Roman', Times, serif; + } + `; + const CONFIGS = [ + { + title: 'Body', + items: [ + { + fontType: FontType.BODY, + fontSize: 11, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 11', + }, + { + fontType: FontType.BODY, + fontSize: 12, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 12', + }, + { + fontType: FontType.BODY, + fontSize: 13, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 13', + }, + { + fontType: FontType.BODY, + fontSize: 14, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 14', + }, + { + fontType: FontType.BODY, + fontSize: 15, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 15', + }, + { + fontType: FontType.BODY, + fontSize: 16, + fontWeight: FontWeights.REGULAR, + color: '#000000', + children: 'gilroy body regular 16', + }, + { + fontType: FontType.BODY, + fontSize: 11, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 11', + }, + { + fontType: FontType.BODY, + fontSize: 12, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 12', + }, + { + fontType: FontType.BODY, + fontSize: 13, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 13', + }, + { + fontType: FontType.BODY, + fontSize: 14, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 14', + }, + { + fontType: FontType.BODY, + fontSize: 15, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 15', + }, + { + fontType: FontType.BODY, + fontSize: 16, + fontWeight: FontWeights.MEDIUM, + color: '#000000', + children: 'gilroy body medium 16', + }, + ], + }, + { + title: 'Caps', + items: [ + { + fontType: FontType.CAPS, + fontSize: 10, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy caps extra bold 10', + }, + { + fontType: FontType.CAPS, + fontSize: 12, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy caps extra bold 12', + }, + { + fontType: FontType.CAPS, + fontSize: 10, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy caps bold 10', + }, + { + fontType: FontType.CAPS, + fontSize: 12, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy caps bold 12', + }, + { + fontType: FontType.CAPS, + fontSize: 10, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy caps semi bold 10', + }, + { + fontType: FontType.CAPS, + fontSize: 12, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy caps semi bold 12', + }, + ], + }, + { + title: 'Serif Heading', + items: [ + { + fontType: FontType.SERIF_HEADING, + fontSize: 18, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'cirka heading bold 18', + }, + { + fontType: FontType.SERIF_HEADING, + fontSize: 20, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'cirka heading bold 20', + }, + { + fontType: FontType.SERIF_HEADING, + fontSize: 22, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'cirka heading bold 22', + }, + { + fontType: FontType.SERIF_HEADING, + fontSize: 24, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'cirka heading bold 24', + }, + ], + }, + { + title: 'Heading', + items: [ + { + fontType: FontType.HEADING, + fontSize: 13, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 13', + }, + { + fontType: FontType.HEADING, + fontSize: 14, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 14', + }, + { + fontType: FontType.HEADING, + fontSize: 16, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 16', + }, + { + fontType: FontType.HEADING, + fontSize: 18, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 18', + }, + { + fontType: FontType.HEADING, + fontSize: 20, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 20', + }, + { + fontType: FontType.HEADING, + fontSize: 22, + fontWeight: FontWeights.SEMI_BOLD, + color: '#000000', + children: 'gilroy heading semi bold 22', + }, + { + fontType: FontType.HEADING, + fontSize: 13, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 13', + }, + { + fontType: FontType.HEADING, + fontSize: 14, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 14', + }, + { + fontType: FontType.HEADING, + fontSize: 16, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 16', + }, + { + fontType: FontType.HEADING, + fontSize: 18, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 18', + }, + { + fontType: FontType.HEADING, + fontSize: 20, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 20', + }, + { + fontType: FontType.HEADING, + fontSize: 22, + fontWeight: FontWeights.BOLD, + color: '#000000', + children: 'gilroy heading bold 22', + }, + { + fontType: FontType.HEADING, + fontSize: 13, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 13', + }, + { + fontType: FontType.HEADING, + fontSize: 14, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 14', + }, + { + fontType: FontType.HEADING, + fontSize: 15, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 15', + }, + { + fontType: FontType.HEADING, + fontSize: 16, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 16', + }, + { + fontType: FontType.HEADING, + fontSize: 18, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 18', + }, + { + fontType: FontType.HEADING, + fontSize: 20, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 20', + }, + { + fontType: FontType.HEADING, + fontSize: 22, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 22', + }, + { + fontType: FontType.HEADING, + fontSize: 44, + fontWeight: FontWeights.EXTRA_BOLD, + color: '#000000', + children: 'gilroy heading extra bold 44', + }, + ], + }, + ]; + return ( + <> + + + {CONFIGS.map((config, index) => ( +
+
+ + {config.title} + + + +
+
+ {config.items.map((item, ind) => ( +
+ +
+ ))} +
+ +
+ ))} +
+ + ); +}; + +# Typography + +Text wrapper that supports headings, serif-heading, caps, body, overflow, & overflow with ellipsis. + +export const TypoTemplate = (args) => { + return ; +}; + +## How to use? + +1. Import `Typography` component from neopop-web. + +```jsx +import { Typography } from '@cred/neopop-web/lib/components'; +``` + +2. Import `FontVariant` primitive. It is a config that provides fontType, fontSize & fontWeight as per the design system. You can select the style as per this convention: + +
+ +
+ +```jsx +import { FontVariant } from '@cred/neopop-web/lib/primitives'; + +neoPOP; +``` + +3. Import colorPalette/colorGuide/mainColors primitive to assign text color as per the design system. + NOTE: default `color` prop value is #FFFFFF + +```jsx +import { colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + + + neoPOP +; +``` + +🎉 You are all set! + +## Variants + +Here's what you can achieve from Typography component. No need to worry about line-height or line-spacing, Typography component handles it for you. + +##### Heading + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +const Heading = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default Heading; +``` + +##### Serif Heading + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +const SerifHeading = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default SerifHeading; +``` + +##### Caps + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +const Caps = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default Caps; +``` + +##### Body + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant } from '@cred/neopop-web/lib/primitives'; + +const Body = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default Body; +``` + +##### Overflow + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant, FontOverflowType } from '@cred/neopop-web/lib/primitives'; + +const Overflow = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default Overflow; +``` + +##### Overflow with clamp + + + + {TypoTemplate.bind({})} + + + +```jsx +import React, { useState } from 'react'; +import { Typography } from '@cred/neopop-web/lib/components'; +import { colorPalette, FontVariant, FontOverflowType } from '@cred/neopop-web/lib/primitives'; + +const OverflowWithClamp = () => { + return ( + + rewards for paying credit card bills. + + ); +}; + +export default OverflowWithClamp; +``` + +## Props + +
+ +| prop | description | type | +| --------------- | --------------------------------------------------------- | ------------------------------------------ | +| `fontType` \* | typography variant | `heading`, `caps`, `body`, `serif-heading` | +| `children` \* | text content | `ReactNode` | +| `color` | text color | `string` | +| `fontWeight` \* | font weight | `800`, `700`, `600`, `500`, `400`, `300` | +| `fontSize` \* | font size | `string` | +| `style` | CSS styles | `CSSStyles` | +| `overflow` | text overflow | `ellipsis`, `clip` | +| `lineClamp` | line-clamp to truncate text at a specific number of lines | `number` | +| `as` | as paragraph/span | `paragraph`, `span` | + +
+ +## StyleGuide + + + +## Scope of Improvements + +1. `className` prop support to reduce extra wrapper need. +2. `dangerouslySetInnerHTML` prop support to reduce extra wrapper need. diff --git a/src/components/Typography/TypographySystem/global.ts b/src/components/Typography/TypographySystem/global.ts new file mode 100644 index 0000000..2cf276b --- /dev/null +++ b/src/components/Typography/TypographySystem/global.ts @@ -0,0 +1,70 @@ +import { createGlobalStyle } from 'styled-components'; + +export const GlobalFonts = createGlobalStyle` +@font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-ExtraBold.woff') format('woff'); + font-weight: 800; + font-style: normal; + } + @font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-Bold.woff') format('woff'); + font-weight: 700; + font-style: normal; + } + @font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-SemiBold.woff') format('woff'); + font-weight: 600; + font-style: normal; + } + @font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-Medium.woff') format('woff'); + font-weight: 500; + font-style: normal; + } + @font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-Regular.woff') format('woff'); + font-weight: 400; + font-style: normal; + } + @font-face { + font-family: 'Gilroy'; + src: url('https://web-assets.cred.club/fonts/Gilroy-Thin.woff') format('woff'); + font-weight: 300; + font-style: normal; + } + @font-face { + font-family: 'Cirka'; + src: url('https://web-assets.cred.club/fonts/PPCirka-Bold.woff') format('woff'); + font-weight: 700; + font-style: normal; + } + @font-face { + font-family: 'Cirka'; + src: url('https://web-assets.cred.club/fonts/PPCirka-Light.woff') format('woff'); + font-weight: 600; + font-style: normal; + } + @font-face { + font-family: 'Cirka'; + src: url('https://web-assets.cred.club/fonts/PPCirka-Medium.woff') format('woff'); + font-weight: 500; + font-style: normal; + } + @font-face { + font-family: 'Cirka'; + src: url('https://web-assets.cred.club/fonts/PPCirka-Regular.woff') format('woff'); + font-weight: 400; + font-style: normal; + } + @font-face { + font-family: 'Cirka'; + src: url('https://web-assets.cred.club/fonts/PPCirka-SemiBold.woff') format('woff'); + font-weight: 300; + font-style: normal; + } +`; diff --git a/src/components/Typography/assets/FontVariant.png b/src/components/Typography/assets/FontVariant.png new file mode 100644 index 0000000000000000000000000000000000000000..c02bcc9eea4a66bcf53a182e1ba29aaaccc49269 GIT binary patch literal 16388 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 literal 0 HcmV?d00001 diff --git a/src/components/Typography/index.tsx b/src/components/Typography/index.tsx new file mode 100644 index 0000000..e3ae336 --- /dev/null +++ b/src/components/Typography/index.tsx @@ -0,0 +1,53 @@ +import React from 'react'; +import { ParagraphWrapper, SpanWrapper, TypographyWrapper } from './styles'; +import { FontType, TypographyProps } from './types'; + +const Typography = (props: TypographyProps) => { + const { children, style, as, ...details } = props; + switch (as) { + case 'p': + return ( + + {children} + + ); + case 'span': + return ( + + {children} + + ); + default: + return ( + + {children} + + ); + } +}; + +export default Typography; diff --git a/src/components/Typography/styles.ts b/src/components/Typography/styles.ts new file mode 100644 index 0000000..72ff549 --- /dev/null +++ b/src/components/Typography/styles.ts @@ -0,0 +1,63 @@ +import styled, { css } from 'styled-components'; +import { generateTextStyle } from '@utils'; +import { TypographyProps } from './types'; + +export const TypographyWrapper = styled.div` + ${(props) => generateTextStyle(props.fontType, props.fontSize, props.fontWeight, props.color)}; + ${(props) => + props.overflow && + css` + white-space: nowrap; + overflow: hidden; + text-overflow: ${props.overflow}; + `}; + ${(props) => + props.overflow && + props.lineClamp && + css` + display: -webkit-box; + -webkit-line-clamp: ${props.lineClamp ?? 1}; + -webkit-box-orient: vertical; + white-space: break-spaces; + `}; +`; + +export const ParagraphWrapper = styled.p` + ${(props) => generateTextStyle(props.fontType, props.fontSize, props.fontWeight, props.color)}; + ${(props) => + props.overflow && + css` + white-space: nowrap; + overflow: hidden; + text-overflow: ${props.overflow}; + `}; + ${(props) => + props.overflow && + props.lineClamp && + css` + display: -webkit-box; + -webkit-line-clamp: ${props.lineClamp ?? 1}; + -webkit-box-orient: vertical; + white-space: break-spaces; + `}; +`; + +export const SpanWrapper = styled.span` + ${(props) => generateTextStyle(props.fontType, props.fontSize, props.fontWeight, props.color)}; + ${(props) => + props.overflow && + css` + white-space: nowrap; + overflow: hidden; + text-overflow: ${props.overflow}; + `}; + ${(props) => + props.overflow && + props.lineClamp && + css` + display: -webkit-box; + -webkit-line-clamp: ${props.lineClamp ?? 1}; + -webkit-box-orient: vertical; + white-space: break-spaces; + `}; +`; diff --git a/src/components/Typography/types.ts b/src/components/Typography/types.ts new file mode 100644 index 0000000..5807369 --- /dev/null +++ b/src/components/Typography/types.ts @@ -0,0 +1,59 @@ +export enum FontType { + HEADING = 'heading', + CAPS = 'caps', + BODY = 'body', + SERIF_HEADING = 'serif-heading', +} + +export enum FontWeights { + EXTRA_BOLD = 800, + BOLD = 700, + SEMI_BOLD = 600, + MEDIUM = 500, + REGULAR = 400, + THIN = 300, +} + +export enum FontOverflowType { + ELLIPSIS = 'ellipsis', + CLIP = 'clip', +} + +export interface TypographyProps { + /** + * Typography Variant? + */ + fontType: FontType; + /** + * Text Content? + */ + children: React.ReactNode; + /** + * Text Color? + */ + color?: string; + /** + * Font Weight? + */ + fontWeight: FontWeights; + /** + * Font Size? + */ + fontSize: number; + /** + * CSS Styles + */ + style?: React.CSSProperties; + /** + * text-overflow? + */ + overflow?: FontOverflowType; + /** + * ellipsis line-clamp? + */ + lineClamp?: number; + /** + * as paragraph/span? + */ + as?: 'p' | 'span'; +} diff --git a/src/components/index.ts b/src/components/index.ts new file mode 100644 index 0000000..ff9ffd0 --- /dev/null +++ b/src/components/index.ts @@ -0,0 +1,57 @@ +import Button from './Button'; +import ElevatedCard from './ElevatedCard'; +import Typography from './Typography'; +import Tag from './Tags'; +import Back from './Back'; +import Header from './Header'; +import Toggle from './Toggle'; +import Radio from './Radio'; +import Checkbox from './Checkbox'; +import InputField from './InputField'; +import SearchBar from './SearchBar'; +import BottomSheet, { BottomSheetCustom } from './BottomSheet'; +import Dropdown from './Dropdown'; +import ScoreMeter from './Scoremeter'; +import Slider from './Slider'; +import { showToast, ToastContainer } from './Toast'; +import { + Row, + Column, + PageContainer, + HorizontalDivider, + HorizontalSpacer, + VerticalSpacer, + Chevron, + Cross, + Pointer, +} from './Helpers'; + +export { + Button, + Typography, + ElevatedCard, + Tag, + Back, + Header, + InputField, + Checkbox, + Radio, + Toggle, + Row, + Column, + PageContainer, + HorizontalSpacer, + VerticalSpacer, + HorizontalDivider, + BottomSheet, + BottomSheetCustom, + SearchBar, + Dropdown, + ScoreMeter, + Chevron, + Pointer, + Slider, + Cross, +}; + +export { showToast, ToastContainer }; diff --git a/src/hooks/useAutoFocus.tsx b/src/hooks/useAutoFocus.tsx new file mode 100644 index 0000000..5a632e1 --- /dev/null +++ b/src/hooks/useAutoFocus.tsx @@ -0,0 +1,11 @@ +const useAutoFocus = (options: any) => { + const { autoFocus = false, ref, currentValue = '' } = options; + + if (autoFocus && !currentValue) { + setTimeout(() => { + ref?.current?.focus(); + }, 20); + } +}; + +export default useAutoFocus; diff --git a/src/hooks/useClientHeight.tsx b/src/hooks/useClientHeight.tsx new file mode 100644 index 0000000..089a880 --- /dev/null +++ b/src/hooks/useClientHeight.tsx @@ -0,0 +1,26 @@ +import { useLayoutEffect, useRef, useState, MutableRefObject } from 'react'; + +function useClientHeight(): [{ ref: MutableRefObject }, number] { + const ref = useRef() as MutableRefObject; + const [clientHeight, setClientHeight] = useState(0); + + useLayoutEffect(() => { + setClientHeight(ref.current?.clientHeight ?? 0); + + function handleResize() { + setClientHeight(ref.current?.clientHeight ?? 0); + } + + window.addEventListener('resize', handleResize); + ref.current?.addEventListener('resize', handleResize); + + return () => { + window.removeEventListener('resize', handleResize); + ref.current?.addEventListener('resize', handleResize); + }; + }, []); + + return [{ ref }, clientHeight]; +} + +export default useClientHeight; diff --git a/src/hooks/useDelayMount.tsx b/src/hooks/useDelayMount.tsx new file mode 100644 index 0000000..56764b6 --- /dev/null +++ b/src/hooks/useDelayMount.tsx @@ -0,0 +1,24 @@ +import { useLayoutEffect, useRef, useState } from 'react'; + +const useDelayMount = (mountReference: boolean) => { + const [mounted, setMounted] = useState(false); + const timerRef = useRef(null); + + useLayoutEffect(() => { + if (mountReference) { + timerRef.current = requestAnimationFrame(() => { + setMounted(true); + }); + } + + return () => { + if (timerRef.current) { + cancelAnimationFrame(timerRef.current); + } + }; + }, [mountReference]); + + return mountReference ? mounted : false; +}; + +export default useDelayMount; diff --git a/src/hooks/useScrollIntoView.tsx b/src/hooks/useScrollIntoView.tsx new file mode 100644 index 0000000..f871721 --- /dev/null +++ b/src/hooks/useScrollIntoView.tsx @@ -0,0 +1,14 @@ +import React from 'react'; + +const useScrollIntoView = (options: any) => { + const { scrollIntoView = false, ref } = options; + React.useEffect(() => { + if (scrollIntoView instanceof Object) { + ref?.current?.scrollIntoView(scrollIntoView); + } else { + ref?.current?.scrollIntoView(); + } + }, []); +}; + +export default useScrollIntoView; diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..d312e7a --- /dev/null +++ b/src/index.ts @@ -0,0 +1,6 @@ +import * as Components from './components'; +import * as Utils from './utils'; +import * as Types from './types'; +import * as Primitives from './primitives'; + +export { Components, Utils, Types, Primitives }; diff --git a/src/primitives/buttons.ts b/src/primitives/buttons.ts new file mode 100644 index 0000000..492bd19 --- /dev/null +++ b/src/primitives/buttons.ts @@ -0,0 +1,129 @@ +// Font NameSpaces: b<1><2><3><4><5> +// 1: +// d for dark +// l for light + +// 2: +// p for primary +// s for secondary + +// 3: +// size - 50, 40, 30 + +// 4: +// p - plunk (elevated) +// f - flat + +// 5: +// 0 -> don't add arrow +// 1 -> add arrow + +import { colorGuide } from './colors'; +import { typographyGuide } from './typography'; +import { ButtonModes, ButtonKinds, ButtonVariants, ButtonSizes } from '../types'; + +const buttonTypography = typographyGuide.buttons; + +export const getButtonColors = (mode: ButtonModes, variant: ButtonVariants, kind: ButtonKinds) => { + const colors = + mode === 'dark' ? colorGuide.darkComponents.buttons : colorGuide.lightComponents.buttons; + const transparentEdge = + kind === 'elevated' + ? { + top: 'transparent', + left: 'transparent', + } + : {}; + + return variant === 'primary' + ? { + ...colors.primary, + mode, + edgeColors: { ...colors.primary.edgeColors, ...transparentEdge }, + } + : { + ...colors.secondary, + mode, + edgeColors: { ...colors.secondary.edgeColors, ...transparentEdge }, + }; +}; + +const getSize = (number: string) => { + switch (number) { + case '50': + return 'big'; + + case '40': + return 'medium'; + + case '30': + return 'small'; + default: + return 'medium'; + } +}; + +const sizeConfig = { + big: { + height: '50px', + padding: '0px 30px', + iconHeight: '20px', + }, + medium: { + height: '40px', + padding: '0px 20px', + iconHeight: '16px', + }, + small: { + height: '30px', + padding: '0px 25px', + iconHeight: '14px', + }, +}; + +export const getSpacingConfig = (size: ButtonSizes) => { + switch (size) { + case 'big': + return sizeConfig.big; + case 'medium': + return sizeConfig.medium; + case 'small': + return sizeConfig.small; + default: + return sizeConfig.medium; + } +}; + +export const getTextStyle = (size: ButtonSizes) => { + switch (size) { + case 'big': + return buttonTypography.big; + case 'medium': + return buttonTypography.medium; + case 'small': + return buttonTypography.small; + default: + return buttonTypography.medium; + } +}; + +/** ****************************************************************************************** */ +// New Configs + +export const getButtonConfig = (name: string) => { + const colorMode = name.slice(1, 2) === 'l' ? 'light' : 'dark'; + const variant = name.slice(2, 3) === 's' ? 'secondary' : 'primary'; + const size = name.slice(3, 5); + const kind = name.slice(5, 6) === 'p' ? 'elevated' : 'flat'; + const arrow = name.slice(6, 7); + const config = { + colorConfig: getButtonColors(colorMode, variant, kind), + spacingConfig: getSpacingConfig(getSize(size)), + colorMode, + size, + kind, + variant, + showArrow: Boolean(Number(arrow)), + }; + return config; +}; diff --git a/src/primitives/colors.ts b/src/primitives/colors.ts new file mode 100644 index 0000000..6d6bf22 --- /dev/null +++ b/src/primitives/colors.ts @@ -0,0 +1,499 @@ +import { hexToRGBA, mergeDeep } from '../utils'; +import { FontOpacity } from './opacity'; + +export let mainColors = Object.freeze({ + black: '#0d0d0d', + white: '#ffffff', + red: '#EE4D37', + yellow: '#F08D32', + blue: '#144CC7', + green: '#06C270', +}); + +export let colorPalette = Object.freeze({ + white: { + 50: '#E0E0E0', + 70: '#EFEFEF', + 90: '#FBFBFB', + }, + popWhite: { + 100: '#D2D2D2', + 200: '#E0E0E0', + 300: '#EFEFEF', + 400: '#FBFBFB', + 500: '#ffffff', + }, + popBlack: { + 100: '#8A8A8A', + 200: '#3D3D3D', + 300: '#161616', + 400: '#121212', + 500: '#0d0d0d', + }, + black: { + 50: '#8A8A8A', + 70: '#3D3D3D', + 90: '#161616', + 100: '#121212', + }, + poliPurple: { + 100: '#E8DFFF', + 200: '#D2C2FF', + 300: '#B49AFF', + 400: '#9772FF', + 500: '#6A35FF', + 600: '#4A25B3', + 700: '#351A80', + 800: '#20104D', + }, + orangeSunshine: { + 100: '#FFEFE6', + 200: '#FFDBC7', + 300: '#FFC3A2', + 400: '#FFAB7C', + 500: '#FF8744', + 600: '#B35F30', + 700: '#804322', + 800: '#4D2914', + }, + parkGreen: { + 100: '#DDFFF1', + 200: '#C4FFE6', + 300: '#9DFFD6', + 400: '#76FFC6', + 500: '#3BFFAD', + 600: '#29B379', + 700: '#1E8057', + 800: '#124D34', + }, + pinkPong: { + 100: '#FFE1E9', + 200: '#FFC6D4', + 300: '#FFA0B7', + 400: '#FF7B9A', + 500: '#FF426F', + 600: '#B32E4E', + 700: '#802138', + 800: '#4D1421', + }, + mannna: { + 100: '#FFF8E5', + 200: '#FFEFC7', + 300: '#FFE5A2', + 400: '#FFDB7D', + 500: '#FFCB45', + 600: '#B38E30', + 700: '#806623', + 800: '#4D3D15', + }, + neoPaccha: { + 100: '#FBFFE6', + 200: '#F7FFC6', + 300: '#F2FF9F', + 400: '#EDFE79', + 500: '#E5FE40', + 600: '#A0B22D', + 700: '#727F20', + 800: '#454C13', + }, + yoyo: { + 100: '#F4E5FF', + 200: '#E5C5FF', + 300: '#D59FFF', + 400: '#C379FF', + 500: '#AA3FFF', + 600: '#772CB3', + 700: '#552080', + 800: '#33134D', + }, + error: { + 100: '#FCE2DD', + 200: '#F6A69B', + 300: '#F47564', + 400: '#F05E4B', + 500: '#EE4D37', + }, + warning: { + 100: '#FBDDC2', + 200: '#F8C699', + 300: '#F5AC6A', + 400: '#F29947', + 500: '#F08D32', + }, + info: { + 100: '#C2D0F2', + 200: '#89A5E3', + 300: '#3F6FD9', + 400: '#2C5ECD', + 500: '#144CC7', + }, + success: { + 100: '#E6F9F1', + 200: '#83E0B8', + 300: '#4FE3A3', + 400: '#1FC87F', + 500: '#06C270', + }, +}); + +const getDarkThemedColors = () => ({ + font: { + heading: hexToRGBA(mainColors.white, FontOpacity.HEADING), + subHeading: hexToRGBA(mainColors.white, FontOpacity.SUB_HEADING), + bodyText: hexToRGBA(mainColors.white, FontOpacity.BODY_TEXT), + bodyTextLighter: hexToRGBA(mainColors.white, FontOpacity.BODY_TEXT_LIGHTER), + }, + containerCard: { + background: colorPalette.black[100], + stroke: 'rgba(255,255,255,0.1)', + }, + bottomSheet: {}, + toast: { + success: { + background: mainColors.green, + color: '#F8F8F8', + }, + warning: { + background: mainColors.yellow, + color: '#F8F8F8', + }, + error: { + background: mainColors.red, + color: '#F8F8F8', + }, + }, + searchBar: { + border: colorPalette.black[70], + activeBorder: mainColors.white, + backgroundColor: colorPalette.popBlack[400], + closeIcon: colorPalette.popWhite[100], + }, + tags: { + warning: { + background: mainColors.yellow, + color: colorPalette.white[90], + }, + error: { + background: mainColors.red, + color: colorPalette.white[90], + }, + success: { + background: mainColors.green, + color: colorPalette.white[90], + }, + info: { + background: mainColors.blue, + color: colorPalette.white[90], + }, + }, + checkbox: { + background: mainColors.black, + border: mainColors.white, + leftPlunk: colorPalette.black[50], + topPlunk: colorPalette.black[70], + }, + inputFields: { + textColor: hexToRGBA(mainColors.white, FontOpacity.HEADING), + labelColor: hexToRGBA(mainColors.white, FontOpacity.BODY_TEXT), + caretColor: mainColors.blue, + errorColor: mainColors.red, + placeholderColor: hexToRGBA(mainColors.white, 0.3), + }, + toggle: { + on: { + switchBackground: '#B4EDD4', + switchBorder: mainColors.white, + buttonBackground: '#38b36f', + buttonBorder: '#B4EDD4', + buttonMarkBackground: mainColors.white, + }, + off: { + switchBackground: '#0a0a0a', + switchBorder: mainColors.white, + buttonBackground: mainColors.white, + buttonBorder: '#0a0a0a', + buttonMarkBackground: colorPalette.white[50], + }, + }, + radio: { + background: mainColors.black, + border: mainColors.white, + plunk: colorPalette.black[50], + dotBackground: mainColors.black, + containerConfig: { + color: mainColors.white, + backgroundColor: colorPalette.black[100], + borderColor: hexToRGBA(mainColors.white, 0.1), + activeBackgroundColor: colorPalette.poliPurple[500], + activeBorderColor: '#2C5ECD', + }, + }, + dropdown: { + withLabel: { + text: hexToRGBA(mainColors.white, 0.5), + border: hexToRGBA(mainColors.white, 0.1), + chevron: hexToRGBA(mainColors.white, 0.5), + }, + withoutLabel: { + text: hexToRGBA(mainColors.white, 0.5), + border: mainColors.white, + chevron: mainColors.white, + }, + }, + scoremeter: { + meterStrokeColor: { + excellent: mainColors.green, + average: colorPalette.neoPaccha[400], + poor: colorPalette.warning[400], + }, + meterStrokeBackground: mainColors.black, + meterBorderColor: colorPalette.popBlack[200], + dotColor: '', + indicatorColors: { + neutral: '#e2e2e2', + increment: '#5CDDBE', + decrement: '#FFB098', + }, + scoreContainerBackground: colorPalette.popBlack[300], + scoreContainerBorder: mainColors.black, + scoreColor: mainColors.white, + }, + buttons: { + primary: { + backgroundColor: mainColors.black, + color: mainColors.white, + edgeColors: { + bottom: colorPalette.black[70], + right: colorPalette.black[50], + top: colorPalette.popBlack[200], + left: colorPalette.popBlack[100], + }, + disabledColors: { + backgroundColor: colorPalette.black[50], + color: hexToRGBA(mainColors.white, 0.5), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: colorPalette.white[70], + bottom: colorPalette.white[50], + }, + }, + }, + secondary: { + backgroundColor: mainColors.white, + color: mainColors.black, + borderColor: mainColors.black, + edgeColors: { + bottom: colorPalette.black[50], + right: colorPalette.white[50], + left: colorPalette.white[50], + top: '#C7C7C7', + }, + disabledColors: { + backgroundColor: mainColors.white, + color: hexToRGBA(mainColors.black, 0.3), + borderColor: hexToRGBA(mainColors.black, 0.3), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: 'transparent', + bottom: 'transparent', + }, + }, + }, + }, +}); + +const getLightThemedColors = () => ({ + font: { + heading: hexToRGBA(mainColors.black, FontOpacity.HEADING), + subHeading: hexToRGBA(mainColors.black, FontOpacity.SUB_HEADING), + bodyText: hexToRGBA(mainColors.black, FontOpacity.BODY_TEXT), + bodyTextLighter: hexToRGBA(mainColors.black, FontOpacity.BODY_TEXT_LIGHTER), + }, + containerCard: { + background: colorPalette.black[100], + stroke: 'rgba(255,255,255,0.1)', + }, + searchBar: { + border: colorPalette.white[50], + activeBorder: mainColors.black, + backgroundColor: mainColors.white, + closeIcon: colorPalette.white[50], + }, + bottomSheet: {}, + toast: { + success: { + background: mainColors.green, + color: '#F8F8F8', + }, + warning: { + background: mainColors.yellow, + color: '#F8F8F8', + }, + error: { + background: mainColors.red, + color: '#F8F8F8', + }, + }, + dropdown: { + withLabel: { + text: hexToRGBA(mainColors.black, 0.5), + border: hexToRGBA(mainColors.black, 0.1), + chevron: hexToRGBA(mainColors.black, 0.5), + }, + withoutLabel: { + text: hexToRGBA(mainColors.black, 0.5), + border: mainColors.black, + chevron: mainColors.black, + }, + }, + scoremeter: { + meterStrokeColor: { + excellent: mainColors.green, + average: colorPalette.neoPaccha[400], + poor: colorPalette.warning[400], + }, + meterStrokeBackground: 'transparent', + meterBorderColor: colorPalette.popWhite[200], + dotColor: colorPalette.popBlack[300], + indicatorColors: { + neutral: '#e2e2e2', + increment: '#5CDDBE', + decrement: '#FFB098', + }, + scoreContainerBackground: colorPalette.popWhite[300], + scoreContainerBorder: colorPalette.popWhite[400], + scoreColor: mainColors.black, + }, + tags: { + warning: { + background: '#FEF4EB', + color: mainColors.yellow, + }, + error: { + background: '#FDEDEB', + color: mainColors.red, + }, + success: { + background: '#E6F9F1', + color: mainColors.green, + }, + info: { + background: '#EBF1FE', + color: mainColors.blue, + }, + }, + checkbox: { + background: mainColors.white, + border: mainColors.black, + leftPlunk: colorPalette.black[50], + topPlunk: colorPalette.white[50], + }, + inputFields: { + textColor: hexToRGBA(mainColors.black, FontOpacity.HEADING), + labelColor: hexToRGBA(mainColors.black, FontOpacity.BODY_TEXT), + caretColor: mainColors.blue, + errorColor: mainColors.red, + placeholderColor: hexToRGBA(mainColors.black, 0.3), + }, + buttons: { + primary: { + backgroundColor: mainColors.white, + color: mainColors.black, + edgeColors: { + bottom: colorPalette.black[50], + right: colorPalette.white[50], + top: colorPalette.popBlack[200], + left: colorPalette.popBlack[100], + }, + disabledColors: { + backgroundColor: colorPalette.popBlack[100], + color: hexToRGBA(mainColors.white, 0.5), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: '#B6B6B6', + bottom: colorPalette.popBlack[200], + }, + }, + }, + secondary: { + backgroundColor: mainColors.black, + color: mainColors.white, + borderColor: mainColors.white, + edgeColors: { + bottom: colorPalette.black[50], + top: '#262626', + right: colorPalette.white[50], + left: '#404040', + }, + disabledColors: { + backgroundColor: mainColors.black, + color: hexToRGBA(mainColors.white, 0.3), + borderColor: hexToRGBA(mainColors.white, 0.3), + edgeColors: { + top: 'transparent', + left: 'transparent', + right: 'transparent', + bottom: 'transparent', + }, + }, + }, + }, + toggle: { + on: { + switchBackground: '#CAFFE2', + switchBorder: '#0a0a0a', + buttonBackground: '#38b36f', + buttonBorder: '#F7F7F7', + buttonMarkBackground: mainColors.white, + }, + off: { + switchBackground: mainColors.white, + switchBorder: '#0a0a0a', + buttonBackground: colorPalette.white[50], + buttonBorder: mainColors.white, + buttonMarkBackground: mainColors.white, + }, + }, + radio: { + background: mainColors.white, + border: mainColors.black, + plunk: colorPalette.black[50], + dotBackground: mainColors.white, + containerConfig: { + color: mainColors.black, + backgroundColor: colorPalette.black[100], + borderColor: hexToRGBA(mainColors.white, 0.1), + activeBackgroundColor: colorPalette.poliPurple[500], + activeBorderColor: '#2C5ECD', + }, + }, +}); + +const getColorGuide = () => ({ + mainAppBackground: mainColors.black, + darkComponents: getDarkThemedColors(), + lightComponents: getLightThemedColors(), +}); + +export let colorGuide = getColorGuide(); + +interface UserTheme { + mainColors?: typeof mainColors; + colorGuide?: typeof colorGuide; + colorPalette?: typeof colorPalette; +} + +export const extend = (themeOverwrite: UserTheme) => { + const { + mainColors: userMainColors = {}, + colorGuide: userColorGuide = {}, + colorPalette: userColorPalette = {}, + } = themeOverwrite; + + mainColors = Object.freeze(mergeDeep({}, mainColors, userMainColors)); + colorPalette = Object.freeze(mergeDeep({}, colorPalette, userColorPalette)); + colorGuide = Object.freeze(mergeDeep({}, getColorGuide(), userColorGuide)); +}; diff --git a/src/primitives/index.ts b/src/primitives/index.ts new file mode 100644 index 0000000..aec65be --- /dev/null +++ b/src/primitives/index.ts @@ -0,0 +1,14 @@ +export { getButtonConfig } from './buttons'; +export { getScoreMeterConfig } from './scoremeter'; +export { colorGuide, colorPalette, mainColors, extend } from './colors'; +export { typographyGuide, fontNameSpaces, FontVariant } from './typography'; +export { SliderConfig, ThumbConfig } from './slider'; + +const enum PlunkProps { + WIDTH = 3, + ANGLE = 45, +} + +export { PlunkProps }; + +export { FontOpacity } from './opacity'; diff --git a/src/primitives/opacity.ts b/src/primitives/opacity.ts new file mode 100644 index 0000000..1978c3b --- /dev/null +++ b/src/primitives/opacity.ts @@ -0,0 +1,6 @@ +export enum FontOpacity { + HEADING = 0.9, + SUB_HEADING = 0.7, + BODY_TEXT = 0.5, + BODY_TEXT_LIGHTER = 0.3, +} diff --git a/src/primitives/scoremeter.ts b/src/primitives/scoremeter.ts new file mode 100644 index 0000000..7cd69b4 --- /dev/null +++ b/src/primitives/scoremeter.ts @@ -0,0 +1,60 @@ +import { colorGuide } from '@primitives/colors'; +export enum Bureaus { + crif = 'crif', + experian = 'experian', + equifax = 'equifax', +} + +const scoreConfig = { + excellent: { + type: 'excellent', + text: 'Excellent', + }, + average: { + type: 'average', + text: 'Good', + }, + poor: { + type: 'poor', + text: 'Poor', + }, +}; + +export const getTypeAndText = (score: number, bureau: string) => { + if (bureau === Bureaus.experian && score < 850) { + return score >= 750 ? scoreConfig.average : scoreConfig.poor; + } else if (bureau === Bureaus.crif && score < 770) { + return score >= 600 ? scoreConfig.average : scoreConfig.poor; + } else if (score < 780) { + return score >= 690 ? scoreConfig.average : scoreConfig.poor; + } + + return scoreConfig.excellent; +}; + +const darkScoreMeter = (score: number, bureau: 'crif' | 'experian' | 'equifax') => ({ + colorMode: 'dark', + reading: score, + colorConfig: colorGuide.darkComponents.scoremeter, + type: getTypeAndText(score, bureau).type, + scoreDesc: getTypeAndText(score, bureau).text, +}); + +const lightScoreMeter = ( + score: number, + bureau: 'crif' | 'experian' | 'equifax', + oldScore: number, +) => ({ + colorMode: 'light', + reading: score, + oldReading: oldScore, + colorConfig: colorGuide.lightComponents.scoremeter, + type: getTypeAndText(score, bureau).type, + showIndicators: true, + scoreDesc: getTypeAndText(score, bureau).text, +}); + +export const getScoreMeterConfig = { + lightScoreMeter, + darkScoreMeter, +}; diff --git a/src/primitives/slider.ts b/src/primitives/slider.ts new file mode 100644 index 0000000..02ba01f --- /dev/null +++ b/src/primitives/slider.ts @@ -0,0 +1,18 @@ +import SliderThumb from '../components/Slider/assets/slider.svg'; + +export const SliderConfig = { + sliderBackground: '#F08D32', + sliderHeight: '10px', + sliderWidth: '100%', + sliderTransition: 'all ease-in-out 0.05s', +}; + +export const ThumbConfig = { + thumbWidth: '40px', + thumbHeight: '40px', + thumbBackground: `url(${SliderThumb}) no-repeat center`, + thumbBackgroundSize: 'contain', + thumbBackgroundColor: 'transparent', + thumbBorder: '0px', + thumbBorderRadius: '50%', +}; diff --git a/src/primitives/tags.ts b/src/primitives/tags.ts new file mode 100644 index 0000000..fb6457a --- /dev/null +++ b/src/primitives/tags.ts @@ -0,0 +1,16 @@ +import { TagColorMode, TagTypes } from '@components/Tags/types'; +import { colorGuide } from '@primitives'; + +export const getTagColor = (type: TagTypes, mode: TagColorMode) => { + const colorConfig = colorGuide[mode == 'light' ? 'lightComponents' : 'darkComponents'].tags; + switch (type) { + case 'success': + return colorConfig.success; + case 'error': + return colorConfig.error; + case 'warning': + return colorConfig.warning; + default: + return colorConfig.error; + } +}; diff --git a/src/primitives/toasts.ts b/src/primitives/toasts.ts new file mode 100644 index 0000000..f80946f --- /dev/null +++ b/src/primitives/toasts.ts @@ -0,0 +1,15 @@ +import { colorGuide } from '@primitives'; +import { ToastTypes } from '@types'; + +export const getToastColor = (type: ToastTypes) => { + switch (type) { + case 'success': + return colorGuide.darkComponents.toast.success; + case 'error': + return colorGuide.darkComponents.toast.error; + case 'warning': + return colorGuide.darkComponents.toast.warning; + default: + return colorGuide.darkComponents.toast.error; + } +}; diff --git a/src/primitives/typography.ts b/src/primitives/typography.ts new file mode 100644 index 0000000..29b77e4 --- /dev/null +++ b/src/primitives/typography.ts @@ -0,0 +1,289 @@ +// Font NameSpaces: t<1><2><3> +// 1: +// h for heading +// b for body +// sh for serif-heading +// c for caps +// 2: +// font size - eg: 12, 13, 14, ... +// 3: +// r - regular +// m - medium +// sb - semibold +// b - bold +// eb - extrabold + +import { FontNameSpaceInterface, FontType, FontWeights } from '../types'; + +export const fontNameSpaces: { [key: string]: FontNameSpaceInterface } = { + ...[44, 34, 28, 22, 20, 18, 16, 15, 14, 13].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`th${fontSize}eb`]: { + fontType: FontType.HEADING, + fontSize, + fontWeight: FontWeights.EXTRA_BOLD, + }, + }), + {}, + ), + ...[34, 28, 22, 20, 18, 16, 14, 13, 11].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`th${fontSize}b`]: { + fontType: FontType.HEADING, + fontSize, + fontWeight: FontWeights.BOLD, + }, + }), + {}, + ), + + ...[22, 20, 18, 16, 14, 13, 12, 10].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`th${fontSize}sb`]: { + fontType: FontType.HEADING, + fontSize, + fontWeight: FontWeights.SEMI_BOLD, + }, + }), + {}, + ), + + ...[16, 15, 14, 13, 12, 11].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`tb${fontSize}m`]: { + fontType: FontType.BODY, + fontSize, + fontWeight: FontWeights.MEDIUM, + }, + }), + {}, + ), + + ...[16, 15, 14, 13, 12, 11].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`tb${fontSize}r`]: { + fontType: FontType.BODY, + fontSize, + fontWeight: FontWeights.REGULAR, + }, + }), + {}, + ), + + tc12eb: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.EXTRA_BOLD }, + tc10eb: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.EXTRA_BOLD }, + tc12b: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.BOLD }, + tc10b: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.BOLD }, + tc8b: { fontType: FontType.CAPS, fontSize: 8, fontWeight: FontWeights.BOLD }, + tc12sb: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.SEMI_BOLD }, + tc10sb: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.SEMI_BOLD }, + + ...[36, 34, 32, 24, 22, 20, 18].reduce( + (accum: Record, fontSize: number) => ({ + ...accum, + [`tsh${fontSize}b`]: { + fontType: FontType.SERIF_HEADING, + fontSize, + fontWeight: FontWeights.BOLD, + }, + }), + {}, + ), +}; + +export const FontVariant: { [key: string]: FontNameSpaceInterface } = { + HeadingExtraBold44: { + fontType: FontType.HEADING, + fontSize: 44, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold34: { + fontType: FontType.HEADING, + fontSize: 34, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold28: { + fontType: FontType.HEADING, + fontSize: 28, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold22: { + fontType: FontType.HEADING, + fontSize: 22, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold20: { + fontType: FontType.HEADING, + fontSize: 20, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold18: { + fontType: FontType.HEADING, + fontSize: 18, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold16: { + fontType: FontType.HEADING, + fontSize: 16, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold15: { + fontType: FontType.HEADING, + fontSize: 15, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold14: { + fontType: FontType.HEADING, + fontSize: 14, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingExtraBold13: { + fontType: FontType.HEADING, + fontSize: 13, + fontWeight: FontWeights.EXTRA_BOLD, + }, + HeadingBold34: { fontType: FontType.HEADING, fontSize: 34, fontWeight: FontWeights.BOLD }, + HeadingBold28: { fontType: FontType.HEADING, fontSize: 28, fontWeight: FontWeights.BOLD }, + HeadingBold22: { fontType: FontType.HEADING, fontSize: 22, fontWeight: FontWeights.BOLD }, + HeadingBold20: { fontType: FontType.HEADING, fontSize: 20, fontWeight: FontWeights.BOLD }, + HeadingBold18: { fontType: FontType.HEADING, fontSize: 18, fontWeight: FontWeights.BOLD }, + HeadingBold16: { fontType: FontType.HEADING, fontSize: 16, fontWeight: FontWeights.BOLD }, + HeadingBold14: { fontType: FontType.HEADING, fontSize: 14, fontWeight: FontWeights.BOLD }, + HeadingBold13: { fontType: FontType.HEADING, fontSize: 13, fontWeight: FontWeights.BOLD }, + HeadingBold11: { fontType: FontType.HEADING, fontSize: 11, fontWeight: FontWeights.BOLD }, + HeadingSemiBold22: { + fontType: FontType.HEADING, + fontSize: 22, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold20: { + fontType: FontType.HEADING, + fontSize: 20, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold18: { + fontType: FontType.HEADING, + fontSize: 18, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold16: { + fontType: FontType.HEADING, + fontSize: 16, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold14: { + fontType: FontType.HEADING, + fontSize: 14, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold13: { + fontType: FontType.HEADING, + fontSize: 13, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold12: { + fontType: FontType.HEADING, + fontSize: 12, + fontWeight: FontWeights.SEMI_BOLD, + }, + HeadingSemiBold10: { + fontType: FontType.HEADING, + fontSize: 10, + fontWeight: FontWeights.SEMI_BOLD, + }, + BodyMedium16: { fontType: FontType.BODY, fontSize: 16, fontWeight: FontWeights.MEDIUM }, + BodyMedium15: { fontType: FontType.BODY, fontSize: 15, fontWeight: FontWeights.MEDIUM }, + BodyMedium14: { fontType: FontType.BODY, fontSize: 14, fontWeight: FontWeights.MEDIUM }, + BodyMedium13: { fontType: FontType.BODY, fontSize: 13, fontWeight: FontWeights.MEDIUM }, + BodyMedium12: { fontType: FontType.BODY, fontSize: 12, fontWeight: FontWeights.MEDIUM }, + BodyMedium11: { fontType: FontType.BODY, fontSize: 11, fontWeight: FontWeights.MEDIUM }, + BodyRegular16: { fontType: FontType.BODY, fontSize: 16, fontWeight: FontWeights.REGULAR }, + BodyRegular15: { fontType: FontType.BODY, fontSize: 15, fontWeight: FontWeights.REGULAR }, + BodyRegular14: { fontType: FontType.BODY, fontSize: 14, fontWeight: FontWeights.REGULAR }, + BodyRegular13: { fontType: FontType.BODY, fontSize: 13, fontWeight: FontWeights.REGULAR }, + BodyRegular12: { fontType: FontType.BODY, fontSize: 12, fontWeight: FontWeights.REGULAR }, + BodyRegular11: { fontType: FontType.BODY, fontSize: 11, fontWeight: FontWeights.REGULAR }, + CapsExtraBold12: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.EXTRA_BOLD }, + CapsExtraBold10: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.EXTRA_BOLD }, + CapsBold12: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.BOLD }, + CapsBold10: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.BOLD }, + CapsBold8: { fontType: FontType.CAPS, fontSize: 8, fontWeight: FontWeights.BOLD }, + CapsSemiBold12: { fontType: FontType.CAPS, fontSize: 12, fontWeight: FontWeights.SEMI_BOLD }, + CapsSemiBold10: { fontType: FontType.CAPS, fontSize: 10, fontWeight: FontWeights.SEMI_BOLD }, + CirkaHeadingBold36: { + fontType: FontType.SERIF_HEADING, + fontSize: 36, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold34: { + fontType: FontType.SERIF_HEADING, + fontSize: 34, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold32: { + fontType: FontType.SERIF_HEADING, + fontSize: 32, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold24: { + fontType: FontType.SERIF_HEADING, + fontSize: 24, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold22: { + fontType: FontType.SERIF_HEADING, + fontSize: 22, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold20: { + fontType: FontType.SERIF_HEADING, + fontSize: 20, + fontWeight: FontWeights.BOLD, + }, + CirkaHeadingBold18: { + fontType: FontType.SERIF_HEADING, + fontSize: 18, + fontWeight: FontWeights.BOLD, + }, +}; + +export const typographyGuide = { + back: { + heading: FontVariant.HeadingSemiBold14, + }, + header: { + heading: FontVariant.CirkaHeadingBold24, + description: FontVariant.BodyMedium14, + }, + containerCard: { + heading: FontVariant.HeadingBold14, + description: FontVariant.BodyMedium13, + }, + bottomSheet: {}, + tags: { + containerText: FontVariant.CapsBold8, + noContainerText: FontVariant.CapsBold10, + }, + searchBar: { + input: FontVariant.HeadingSemiBold13, + }, + buttons: { + big: FontVariant.HeadingBold14, + medium: FontVariant.HeadingBold13, + small: FontVariant.HeadingBold11, + }, + checkbox: {}, + toast: { + heading: FontVariant.HeadingSemiBold13, + description: FontVariant.BodyRegular11, + }, + inputFields: { + label: FontVariant.CapsBold8, + text: FontVariant.HeadingBold22, + }, +}; diff --git a/src/types/index.ts b/src/types/index.ts new file mode 100644 index 0000000..d0371bc --- /dev/null +++ b/src/types/index.ts @@ -0,0 +1,39 @@ +import { + ButtonKinds, + ButtonVariants, + ButtonSizes, + ButtonModes, + NeoPopElevationDirections, + ButtonUIConfig, + ButtonProps, +} from '@components/Button/types'; +import { FontType, FontWeights } from '@components/Typography/types'; +import { CheckboxColorConfig } from '@components/Checkbox/types'; +import { RadioColorConfig } from '@components/Radio/types'; +import { ToggleColorConfig } from '@components/Toggle/types'; +import { Directions } from '@components/Helpers/types'; +import { InputColorConfig } from '@components/InputField/types'; +import { ToastTypes } from '@components/Toast/types'; +import { ScoremeterModes } from '@components/Scoremeter/types'; + +export { FontType, FontWeights, NeoPopElevationDirections, Directions }; +export interface FontNameSpaceInterface { + fontWeight: FontWeights; + fontType: FontType; + fontSize: number; +} + +export type { + ToastTypes, + ButtonVariants, + ButtonKinds, + ButtonSizes, + ButtonModes, + CheckboxColorConfig, + RadioColorConfig, + ToggleColorConfig, + InputColorConfig, + ScoremeterModes, + ButtonUIConfig, + ButtonProps, +}; diff --git a/src/utils/Utils.stories.mdx b/src/utils/Utils.stories.mdx new file mode 100644 index 0000000..e69de29 diff --git a/src/utils/index.ts b/src/utils/index.ts new file mode 100644 index 0000000..0f443ef --- /dev/null +++ b/src/utils/index.ts @@ -0,0 +1,149 @@ +import { css } from 'styled-components'; +import { FontType, FontWeights } from '@types'; + +export const hexToRGBA = (hex: string, alpha: string | number) => { + const r = parseInt(hex.slice(1, 3), 16); + const g = parseInt(hex.slice(3, 5), 16); + const b = parseInt(hex.slice(5, 7), 16); + + if (alpha) return `rgba(${r},${g},${b}, ${alpha})`; + return `rgb(${r},${g},${b})`; +}; + +export const isEmpty = (value: any) => + value === undefined || value === null || value === '' || value === {} || value === []; + +const Currencies: { [key: string]: any } = { + dollar: { + countryCode: 'US', + currency: 'USD', + }, + inr: { + countryCode: 'IN', + currency: 'INR', + }, +}; + +export const currencyFormatter = ( + rupees: number | string, + fallback = '', + minimumFractionDigits = 0, + cur = 'inr', +) => { + const formatNumber = Number(rupees); + if ((formatNumber !== 0 && !formatNumber) || Number.isNaN(formatNumber)) { + if (fallback) return fallback; + return ''; + } + // console.log(cur); + if (window?.Intl) { + const obj = Currencies[cur]; + + if (obj) { + return new Intl.NumberFormat(`en-${obj.countryCode}`, { + style: 'currency', + currency: `${obj.currency}`, + minimumFractionDigits: minimumFractionDigits, + maximumFractionDigits: 2, + }) + .format(formatNumber) + .replace(/\s/g, ''); + } + } + return formatNumber; +}; + +export const generateTextStyle = ( + type = FontType.BODY, + fontSize = 14, + fontWeight = FontWeights.REGULAR, + color = '#FFFFFF', +) => { + const LINE_HEIGHT_MULTIPLIER = { + [FontType.HEADING]: 1.25, + [FontType.CAPS]: 1.25, + [FontType.BODY]: 1.5, + [FontType.SERIF_HEADING]: 1.25, + }; + + const getLetterSpacing = (fType: FontType, fSize: number, fWeight: FontWeights) => { + switch (fType) { + case FontType.HEADING: + switch (fWeight) { + case FontWeights.EXTRA_BOLD: + return fSize >= 44 ? 0 : 0.2; + case FontWeights.BOLD: + return fSize >= 13 ? 0.2 : 0.4; + case FontWeights.SEMI_BOLD: + return fSize >= 18 ? 0.2 : 0.4; + default: + return 0.2; + } + case FontType.CAPS: + if (fSize > 8) return 2; + return 1; + case FontType.BODY: + return 0.4; + case FontType.SERIF_HEADING: + return 0.2; + default: + return 0.4; + } + }; + + const letterSpacing = getLetterSpacing(type, fontSize, fontWeight); + + return css` + font-size: ${fontSize}px; + font-style: normal; + font-weight: ${fontWeight}; + line-height: ${Math.round(fontSize * LINE_HEIGHT_MULTIPLIER[type])}px; + letter-spacing: ${letterSpacing}px; + color: ${color ?? ''}; + ${type === FontType.CAPS + ? css` + text-transform: uppercase; + ` + : ''} + `; +}; + +export function getRandomInt(min: number, max: number): number { + const minN = Math.ceil(min); + const maxN = Math.floor(max); + return Math.floor(Math.random() * (maxN - minN + 1)) + minN; +} + +export const isImageLoaded = (src: string) => + new Promise((resolve, reject) => { + const image = new Image(); + image.src = src; + image.addEventListener('load', () => { + resolve(true); + }); + image.addEventListener('error', () => { + reject(); + }); + }); + +function isObject(item: any): boolean { + return item instanceof Object && !Array.isArray(item); +} + +export function mergeDeep(target: any, ...sources: any[]): any { + if (!sources.length) return target; + const source = sources.shift(); + + if (isObject(target) && isObject(source)) { + for (const key in source) { + if (isObject(source[key])) { + if (!target[key]) Object.assign(target, { [key]: {} }); + mergeDeep(target[key], source[key]); + } else { + Object.assign(target, { [key]: source[key] }); + } + } + } + + return mergeDeep(target, ...sources); +} diff --git a/tsconfig.build.json b/tsconfig.build.json new file mode 100644 index 0000000..cc77906 --- /dev/null +++ b/tsconfig.build.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "exclude": ["node_modules", "**/*.stories.tsx"] +} diff --git a/tsconfig.eslint.json b/tsconfig.eslint.json new file mode 100644 index 0000000..71cee58 --- /dev/null +++ b/tsconfig.eslint.json @@ -0,0 +1,12 @@ +{ + + "extends": "./tsconfig.json", + "include": ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx"], + "exclude": [ + "server/**", + "node_modules/**", + "lib/**", + "lib-esm/**", + "dist/**" + ] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..f3ff969 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,37 @@ +{ + "include": ["src/**/*", "declaration.d.ts"], + + "compilerOptions": { + "target": "esnext", + "module": "commonjs", + "allowJs": true, + "checkJs": false, + "jsx": "preserve", + "strict": true, + "moduleResolution": "node", + "rootDirs": ["src", "intro"], + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "resolveJsonModule": true, + "declaration": true, + "emitDeclarationOnly": true, + "isolatedModules": true, + "declarationDir": "lib", + "outDir": "lib", + "declarationMap": true, + "baseUrl": "./", + "paths": { + "@components": ["./src/components/index"], + "@components/*": ["./src/components/*"], + "@hooks": ["./src/hooks/index"], + "@hooks/*": ["./src/hooks/*"], + "@primitives": ["./src/primitives/index"], + "@primitives/*": ["./src/primitives/*"], + "@types": ["./src/types/index"], + "@types/*": ["./src/types/*"], + "@utils": ["./src/utils/index"], + "@utils/*": ["./src/utils/*"] + } + } +}