From d19ed62e6eb2095e185cb770db74e5a1a8c9ffd5 Mon Sep 17 00:00:00 2001 From: Otto Date: Sat, 28 Mar 2026 18:49:38 +0000 Subject: [PATCH] v1.0 - Meal planner with favorites, history, and notes --- data.json | 6 + dist/assets/index-280BfggH.js | 40 + dist/assets/index-rHixgCzr.css | 1 + dist/index.html | 13 + index.html | 12 + node_modules/.bin/baseline-browser-mapping | 1 + node_modules/.bin/browserslist | 1 + node_modules/.bin/esbuild | 1 + node_modules/.bin/jsesc | 1 + node_modules/.bin/json5 | 1 + node_modules/.bin/loose-envify | 1 + node_modules/.bin/nanoid | 1 + node_modules/.bin/parser | 1 + node_modules/.bin/rollup | 1 + node_modules/.bin/semver | 1 + node_modules/.bin/update-browserslist-db | 1 + node_modules/.bin/vite | 1 + node_modules/.package-lock.json | 940 + node_modules/@babel/code-frame/LICENSE | 22 + node_modules/@babel/code-frame/README.md | 19 + node_modules/@babel/code-frame/lib/index.js | 217 + .../@babel/code-frame/lib/index.js.map | 1 + node_modules/@babel/code-frame/package.json | 32 + node_modules/@babel/compat-data/LICENSE | 22 + node_modules/@babel/compat-data/README.md | 19 + .../@babel/compat-data/corejs2-built-ins.js | 2 + .../compat-data/corejs3-shipped-proposals.js | 2 + .../compat-data/data/corejs2-built-ins.json | 2106 + .../data/corejs3-shipped-proposals.json | 5 + .../compat-data/data/native-modules.json | 18 + .../compat-data/data/overlapping-plugins.json | 35 + .../compat-data/data/plugin-bugfixes.json | 203 + .../@babel/compat-data/data/plugins.json | 838 + .../@babel/compat-data/native-modules.js | 2 + .../@babel/compat-data/overlapping-plugins.js | 2 + node_modules/@babel/compat-data/package.json | 40 + .../@babel/compat-data/plugin-bugfixes.js | 2 + node_modules/@babel/compat-data/plugins.js | 2 + node_modules/@babel/core/LICENSE | 22 + node_modules/@babel/core/README.md | 19 + .../@babel/core/lib/config/cache-contexts.js | 5 + .../core/lib/config/cache-contexts.js.map | 1 + .../@babel/core/lib/config/caching.js | 261 + .../@babel/core/lib/config/caching.js.map | 1 + .../@babel/core/lib/config/config-chain.js | 469 + .../core/lib/config/config-chain.js.map | 1 + .../core/lib/config/config-descriptors.js | 190 + .../core/lib/config/config-descriptors.js.map | 1 + .../core/lib/config/files/configuration.js | 290 + .../lib/config/files/configuration.js.map | 1 + .../@babel/core/lib/config/files/import.cjs | 6 + .../core/lib/config/files/import.cjs.map | 1 + .../core/lib/config/files/index-browser.js | 58 + .../lib/config/files/index-browser.js.map | 1 + .../@babel/core/lib/config/files/index.js | 78 + .../@babel/core/lib/config/files/index.js.map | 1 + .../core/lib/config/files/module-types.js | 203 + .../core/lib/config/files/module-types.js.map | 1 + .../@babel/core/lib/config/files/package.js | 61 + .../core/lib/config/files/package.js.map | 1 + .../@babel/core/lib/config/files/plugins.js | 220 + .../core/lib/config/files/plugins.js.map | 1 + .../@babel/core/lib/config/files/types.js | 5 + .../@babel/core/lib/config/files/types.js.map | 1 + .../@babel/core/lib/config/files/utils.js | 36 + .../@babel/core/lib/config/files/utils.js.map | 1 + node_modules/@babel/core/lib/config/full.js | 312 + .../@babel/core/lib/config/full.js.map | 1 + .../core/lib/config/helpers/config-api.js | 85 + .../core/lib/config/helpers/config-api.js.map | 1 + .../core/lib/config/helpers/deep-array.js | 23 + .../core/lib/config/helpers/deep-array.js.map | 1 + .../core/lib/config/helpers/environment.js | 12 + .../lib/config/helpers/environment.js.map | 1 + node_modules/@babel/core/lib/config/index.js | 87 + .../@babel/core/lib/config/index.js.map | 1 + node_modules/@babel/core/lib/config/item.js | 67 + .../@babel/core/lib/config/item.js.map | 1 + .../@babel/core/lib/config/partial.js | 158 + .../@babel/core/lib/config/partial.js.map | 1 + .../core/lib/config/pattern-to-regex.js | 38 + .../core/lib/config/pattern-to-regex.js.map | 1 + node_modules/@babel/core/lib/config/plugin.js | 33 + .../@babel/core/lib/config/plugin.js.map | 1 + .../@babel/core/lib/config/printer.js | 113 + .../@babel/core/lib/config/printer.js.map | 1 + .../lib/config/resolve-targets-browser.js | 41 + .../lib/config/resolve-targets-browser.js.map | 1 + .../@babel/core/lib/config/resolve-targets.js | 61 + .../core/lib/config/resolve-targets.js.map | 1 + node_modules/@babel/core/lib/config/util.js | 31 + .../@babel/core/lib/config/util.js.map | 1 + .../config/validation/option-assertions.js | 277 + .../validation/option-assertions.js.map | 1 + .../core/lib/config/validation/options.js | 187 + .../core/lib/config/validation/options.js.map | 1 + .../core/lib/config/validation/plugins.js | 67 + .../core/lib/config/validation/plugins.js.map | 1 + .../core/lib/config/validation/removed.js | 68 + .../core/lib/config/validation/removed.js.map | 1 + .../@babel/core/lib/errors/config-error.js | 18 + .../core/lib/errors/config-error.js.map | 1 + .../core/lib/errors/rewrite-stack-trace.js | 98 + .../lib/errors/rewrite-stack-trace.js.map | 1 + .../@babel/core/lib/gensync-utils/async.js | 90 + .../core/lib/gensync-utils/async.js.map | 1 + .../@babel/core/lib/gensync-utils/fs.js | 31 + .../@babel/core/lib/gensync-utils/fs.js.map | 1 + .../core/lib/gensync-utils/functional.js | 58 + .../core/lib/gensync-utils/functional.js.map | 1 + node_modules/@babel/core/lib/index.js | 230 + node_modules/@babel/core/lib/index.js.map | 1 + node_modules/@babel/core/lib/parse.js | 45 + node_modules/@babel/core/lib/parse.js.map | 1 + node_modules/@babel/core/lib/parser/index.js | 85 + .../@babel/core/lib/parser/index.js.map | 1 + .../lib/parser/util/missing-plugin-helper.js | 337 + .../parser/util/missing-plugin-helper.js.map | 1 + .../core/lib/tools/build-external-helpers.js | 144 + .../lib/tools/build-external-helpers.js.map | 1 + node_modules/@babel/core/lib/transform-ast.js | 48 + .../@babel/core/lib/transform-ast.js.map | 1 + .../@babel/core/lib/transform-file-browser.js | 23 + .../core/lib/transform-file-browser.js.map | 1 + .../@babel/core/lib/transform-file.js | 40 + .../@babel/core/lib/transform-file.js.map | 1 + node_modules/@babel/core/lib/transform.js | 47 + node_modules/@babel/core/lib/transform.js.map | 1 + .../lib/transformation/block-hoist-plugin.js | 84 + .../transformation/block-hoist-plugin.js.map | 1 + .../transformation/file/babel-7-helpers.cjs | 4 + .../file/babel-7-helpers.cjs.map | 1 + .../core/lib/transformation/file/file.js | 204 + .../core/lib/transformation/file/file.js.map | 1 + .../core/lib/transformation/file/generate.js | 84 + .../lib/transformation/file/generate.js.map | 1 + .../core/lib/transformation/file/merge-map.js | 37 + .../lib/transformation/file/merge-map.js.map | 1 + .../@babel/core/lib/transformation/index.js | 90 + .../core/lib/transformation/index.js.map | 1 + .../core/lib/transformation/normalize-file.js | 127 + .../lib/transformation/normalize-file.js.map | 1 + .../core/lib/transformation/normalize-opts.js | 59 + .../lib/transformation/normalize-opts.js.map | 1 + .../core/lib/transformation/plugin-pass.js | 48 + .../lib/transformation/plugin-pass.js.map | 1 + .../lib/transformation/util/clone-deep.js | 54 + .../lib/transformation/util/clone-deep.js.map | 1 + .../core/lib/vendor/import-meta-resolve.js | 1042 + .../lib/vendor/import-meta-resolve.js.map | 1 + node_modules/@babel/core/package.json | 82 + .../core/src/config/files/index-browser.ts | 115 + .../@babel/core/src/config/files/index.ts | 30 + .../src/config/resolve-targets-browser.ts | 42 + .../@babel/core/src/config/resolve-targets.ts | 54 + .../@babel/core/src/transform-file-browser.ts | 33 + .../@babel/core/src/transform-file.ts | 56 + node_modules/@babel/generator/LICENSE | 22 + node_modules/@babel/generator/README.md | 19 + node_modules/@babel/generator/lib/buffer.js | 244 + .../@babel/generator/lib/buffer.js.map | 1 + .../@babel/generator/lib/generators/base.js | 86 + .../generator/lib/generators/base.js.map | 1 + .../generator/lib/generators/classes.js | 215 + .../generator/lib/generators/classes.js.map | 1 + .../generator/lib/generators/deprecated.js | 73 + .../lib/generators/deprecated.js.map | 1 + .../generator/lib/generators/expressions.js | 309 + .../lib/generators/expressions.js.map | 1 + .../@babel/generator/lib/generators/flow.js | 658 + .../generator/lib/generators/flow.js.map | 1 + .../@babel/generator/lib/generators/index.js | 128 + .../generator/lib/generators/index.js.map | 1 + .../@babel/generator/lib/generators/jsx.js | 124 + .../generator/lib/generators/jsx.js.map | 1 + .../generator/lib/generators/methods.js | 207 + .../generator/lib/generators/methods.js.map | 1 + .../generator/lib/generators/modules.js | 290 + .../generator/lib/generators/modules.js.map | 1 + .../generator/lib/generators/statements.js | 297 + .../lib/generators/statements.js.map | 1 + .../lib/generators/template-literals.js | 38 + .../lib/generators/template-literals.js.map | 1 + .../@babel/generator/lib/generators/types.js | 183 + .../generator/lib/generators/types.js.map | 1 + .../generator/lib/generators/typescript.js | 726 + .../lib/generators/typescript.js.map | 1 + node_modules/@babel/generator/lib/index.js | 108 + .../@babel/generator/lib/index.js.map | 1 + .../@babel/generator/lib/node/index.js | 81 + .../@babel/generator/lib/node/index.js.map | 1 + .../@babel/generator/lib/node/parentheses.js | 298 + .../generator/lib/node/parentheses.js.map | 1 + node_modules/@babel/generator/lib/nodes.js | 19 + .../@babel/generator/lib/nodes.js.map | 1 + node_modules/@babel/generator/lib/printer.js | 782 + .../@babel/generator/lib/printer.js.map | 1 + .../@babel/generator/lib/source-map.js | 86 + .../@babel/generator/lib/source-map.js.map | 1 + .../@babel/generator/lib/token-map.js | 195 + .../@babel/generator/lib/token-map.js.map | 1 + node_modules/@babel/generator/package.json | 39 + .../@babel/helper-compilation-targets/LICENSE | 22 + .../helper-compilation-targets/README.md | 19 + .../helper-compilation-targets/lib/debug.js | 28 + .../lib/debug.js.map | 1 + .../lib/filter-items.js | 67 + .../lib/filter-items.js.map | 1 + .../helper-compilation-targets/lib/index.js | 229 + .../lib/index.js.map | 1 + .../helper-compilation-targets/lib/options.js | 24 + .../lib/options.js.map | 1 + .../helper-compilation-targets/lib/pretty.js | 40 + .../lib/pretty.js.map | 1 + .../helper-compilation-targets/lib/targets.js | 28 + .../lib/targets.js.map | 1 + .../helper-compilation-targets/lib/utils.js | 58 + .../lib/utils.js.map | 1 + .../helper-compilation-targets/package.json | 43 + node_modules/@babel/helper-globals/LICENSE | 22 + node_modules/@babel/helper-globals/README.md | 19 + .../helper-globals/data/browser-upper.json | 911 + .../helper-globals/data/builtin-lower.json | 15 + .../helper-globals/data/builtin-upper.json | 51 + .../@babel/helper-globals/package.json | 32 + .../@babel/helper-module-imports/LICENSE | 22 + .../@babel/helper-module-imports/README.md | 19 + .../lib/import-builder.js | 122 + .../lib/import-builder.js.map | 1 + .../lib/import-injector.js | 304 + .../lib/import-injector.js.map | 1 + .../@babel/helper-module-imports/lib/index.js | 37 + .../helper-module-imports/lib/index.js.map | 1 + .../helper-module-imports/lib/is-module.js | 11 + .../lib/is-module.js.map | 1 + .../@babel/helper-module-imports/package.json | 28 + .../@babel/helper-module-transforms/LICENSE | 22 + .../@babel/helper-module-transforms/README.md | 19 + .../lib/dynamic-import.js | 46 + .../lib/dynamic-import.js.map | 1 + .../lib/get-module-name.js | 46 + .../lib/get-module-name.js.map | 1 + .../helper-module-transforms/lib/index.js | 396 + .../helper-module-transforms/lib/index.js.map | 1 + .../lib/lazy-modules.js | 31 + .../lib/lazy-modules.js.map | 1 + .../lib/normalize-and-load-metadata.js | 362 + .../lib/normalize-and-load-metadata.js.map | 1 + .../lib/rewrite-live-references.js | 360 + .../lib/rewrite-live-references.js.map | 1 + .../lib/rewrite-this.js | 22 + .../lib/rewrite-this.js.map | 1 + .../helper-module-transforms/package.json | 32 + .../@babel/helper-plugin-utils/LICENSE | 22 + .../@babel/helper-plugin-utils/README.md | 19 + .../@babel/helper-plugin-utils/lib/index.js | 74 + .../helper-plugin-utils/lib/index.js.map | 1 + .../@babel/helper-plugin-utils/package.json | 24 + .../@babel/helper-string-parser/LICENSE | 22 + .../@babel/helper-string-parser/README.md | 19 + .../@babel/helper-string-parser/lib/index.js | 295 + .../helper-string-parser/lib/index.js.map | 1 + .../@babel/helper-string-parser/package.json | 31 + .../helper-validator-identifier/LICENSE | 22 + .../helper-validator-identifier/README.md | 19 + .../lib/identifier.js | 70 + .../lib/identifier.js.map | 1 + .../helper-validator-identifier/lib/index.js | 57 + .../lib/index.js.map | 1 + .../lib/keyword.js | 35 + .../lib/keyword.js.map | 1 + .../helper-validator-identifier/package.json | 31 + .../@babel/helper-validator-option/LICENSE | 22 + .../@babel/helper-validator-option/README.md | 19 + .../lib/find-suggestion.js | 39 + .../lib/find-suggestion.js.map | 1 + .../helper-validator-option/lib/index.js | 21 + .../helper-validator-option/lib/index.js.map | 1 + .../helper-validator-option/lib/validator.js | 48 + .../lib/validator.js.map | 1 + .../helper-validator-option/package.json | 27 + node_modules/@babel/helpers/LICENSE | 23 + node_modules/@babel/helpers/README.md | 19 + .../@babel/helpers/lib/helpers-generated.js | 1440 + .../helpers/lib/helpers-generated.js.map | 1 + .../@babel/helpers/lib/helpers/AwaitValue.js | 11 + .../helpers/lib/helpers/AwaitValue.js.map | 1 + .../helpers/lib/helpers/OverloadYield.js | 12 + .../helpers/lib/helpers/OverloadYield.js.map | 1 + .../lib/helpers/applyDecoratedDescriptor.js | 31 + .../helpers/applyDecoratedDescriptor.js.map | 1 + .../@babel/helpers/lib/helpers/applyDecs.js | 459 + .../helpers/lib/helpers/applyDecs.js.map | 1 + .../helpers/lib/helpers/applyDecs2203.js | 363 + .../helpers/lib/helpers/applyDecs2203.js.map | 1 + .../helpers/lib/helpers/applyDecs2203R.js | 376 + .../helpers/lib/helpers/applyDecs2203R.js.map | 1 + .../helpers/lib/helpers/applyDecs2301.js | 421 + .../helpers/lib/helpers/applyDecs2301.js.map | 1 + .../helpers/lib/helpers/applyDecs2305.js | 235 + .../helpers/lib/helpers/applyDecs2305.js.map | 1 + .../helpers/lib/helpers/applyDecs2311.js | 236 + .../helpers/lib/helpers/applyDecs2311.js.map | 1 + .../helpers/lib/helpers/arrayLikeToArray.js | 13 + .../lib/helpers/arrayLikeToArray.js.map | 1 + .../helpers/lib/helpers/arrayWithHoles.js | 11 + .../helpers/lib/helpers/arrayWithHoles.js.map | 1 + .../helpers/lib/helpers/arrayWithoutHoles.js | 12 + .../lib/helpers/arrayWithoutHoles.js.map | 1 + .../helpers/lib/helpers/assertClassBrand.js | 14 + .../lib/helpers/assertClassBrand.js.map | 1 + .../lib/helpers/assertThisInitialized.js | 14 + .../lib/helpers/assertThisInitialized.js.map | 1 + .../lib/helpers/asyncGeneratorDelegate.js | 52 + .../lib/helpers/asyncGeneratorDelegate.js.map | 1 + .../helpers/lib/helpers/asyncIterator.js | 72 + .../helpers/lib/helpers/asyncIterator.js.map | 1 + .../helpers/lib/helpers/asyncToGenerator.js | 38 + .../lib/helpers/asyncToGenerator.js.map | 1 + .../lib/helpers/awaitAsyncGenerator.js | 12 + .../lib/helpers/awaitAsyncGenerator.js.map | 1 + .../@babel/helpers/lib/helpers/callSuper.js | 15 + .../helpers/lib/helpers/callSuper.js.map | 1 + .../@babel/helpers/lib/helpers/checkInRHS.js | 14 + .../helpers/lib/helpers/checkInRHS.js.map | 1 + .../lib/helpers/checkPrivateRedeclaration.js | 13 + .../helpers/checkPrivateRedeclaration.js.map | 1 + .../classApplyDescriptorDestructureSet.js | 25 + .../classApplyDescriptorDestructureSet.js.map | 1 + .../lib/helpers/classApplyDescriptorGet.js | 14 + .../helpers/classApplyDescriptorGet.js.map | 1 + .../lib/helpers/classApplyDescriptorSet.js | 18 + .../helpers/classApplyDescriptorSet.js.map | 1 + .../helpers/lib/helpers/classCallCheck.js | 13 + .../helpers/lib/helpers/classCallCheck.js.map | 1 + .../helpers/classCheckPrivateStaticAccess.js | 12 + .../classCheckPrivateStaticAccess.js.map | 1 + .../classCheckPrivateStaticFieldDescriptor.js | 13 + ...ssCheckPrivateStaticFieldDescriptor.js.map | 1 + .../helpers/classExtractFieldDescriptor.js | 12 + .../classExtractFieldDescriptor.js.map | 1 + .../helpers/lib/helpers/classNameTDZError.js | 11 + .../lib/helpers/classNameTDZError.js.map | 1 + .../classPrivateFieldDestructureSet.js | 14 + .../classPrivateFieldDestructureSet.js.map | 1 + .../lib/helpers/classPrivateFieldGet.js | 14 + .../lib/helpers/classPrivateFieldGet.js.map | 1 + .../lib/helpers/classPrivateFieldGet2.js | 12 + .../lib/helpers/classPrivateFieldGet2.js.map | 1 + .../lib/helpers/classPrivateFieldInitSpec.js | 13 + .../helpers/classPrivateFieldInitSpec.js.map | 1 + .../lib/helpers/classPrivateFieldLooseBase.js | 14 + .../helpers/classPrivateFieldLooseBase.js.map | 1 + .../lib/helpers/classPrivateFieldLooseKey.js | 12 + .../helpers/classPrivateFieldLooseKey.js.map | 1 + .../lib/helpers/classPrivateFieldSet.js | 15 + .../lib/helpers/classPrivateFieldSet.js.map | 1 + .../lib/helpers/classPrivateFieldSet2.js | 13 + .../lib/helpers/classPrivateFieldSet2.js.map | 1 + .../helpers/lib/helpers/classPrivateGetter.js | 12 + .../lib/helpers/classPrivateGetter.js.map | 1 + .../lib/helpers/classPrivateMethodGet.js | 13 + .../lib/helpers/classPrivateMethodGet.js.map | 1 + .../lib/helpers/classPrivateMethodInitSpec.js | 13 + .../helpers/classPrivateMethodInitSpec.js.map | 1 + .../lib/helpers/classPrivateMethodSet.js | 11 + .../lib/helpers/classPrivateMethodSet.js.map | 1 + .../helpers/lib/helpers/classPrivateSetter.js | 13 + .../lib/helpers/classPrivateSetter.js.map | 1 + .../classStaticPrivateFieldDestructureSet.js | 16 + ...assStaticPrivateFieldDestructureSet.js.map | 1 + .../helpers/classStaticPrivateFieldSpecGet.js | 16 + .../classStaticPrivateFieldSpecGet.js.map | 1 + .../helpers/classStaticPrivateFieldSpecSet.js | 17 + .../classStaticPrivateFieldSpecSet.js.map | 1 + .../helpers/classStaticPrivateMethodGet.js | 13 + .../classStaticPrivateMethodGet.js.map | 1 + .../helpers/classStaticPrivateMethodSet.js | 11 + .../classStaticPrivateMethodSet.js.map | 1 + .../@babel/helpers/lib/helpers/construct.js | 20 + .../helpers/lib/helpers/construct.js.map | 1 + .../@babel/helpers/lib/helpers/createClass.js | 26 + .../helpers/lib/helpers/createClass.js.map | 1 + .../lib/helpers/createForOfIteratorHelper.js | 64 + .../helpers/createForOfIteratorHelper.js.map | 1 + .../helpers/createForOfIteratorHelperLoose.js | 29 + .../createForOfIteratorHelperLoose.js.map | 1 + .../@babel/helpers/lib/helpers/createSuper.js | 25 + .../helpers/lib/helpers/createSuper.js.map | 1 + .../@babel/helpers/lib/helpers/decorate.js | 350 + .../helpers/lib/helpers/decorate.js.map | 1 + .../@babel/helpers/lib/helpers/defaults.js | 18 + .../helpers/lib/helpers/defaults.js.map | 1 + .../helpers/lib/helpers/defineAccessor.js | 16 + .../helpers/lib/helpers/defineAccessor.js.map | 1 + .../lib/helpers/defineEnumerableProperties.js | 27 + .../helpers/defineEnumerableProperties.js.map | 1 + .../helpers/lib/helpers/defineProperty.js | 23 + .../helpers/lib/helpers/defineProperty.js.map | 1 + .../@babel/helpers/lib/helpers/dispose.js | 47 + .../@babel/helpers/lib/helpers/dispose.js.map | 1 + .../@babel/helpers/lib/helpers/extends.js | 22 + .../@babel/helpers/lib/helpers/extends.js.map | 1 + .../@babel/helpers/lib/helpers/get.js | 25 + .../@babel/helpers/lib/helpers/get.js.map | 1 + .../helpers/lib/helpers/getPrototypeOf.js | 14 + .../helpers/lib/helpers/getPrototypeOf.js.map | 1 + .../@babel/helpers/lib/helpers/identity.js | 11 + .../helpers/lib/helpers/identity.js.map | 1 + .../helpers/lib/helpers/importDeferProxy.js | 35 + .../lib/helpers/importDeferProxy.js.map | 1 + .../@babel/helpers/lib/helpers/inherits.js | 25 + .../helpers/lib/helpers/inherits.js.map | 1 + .../helpers/lib/helpers/inheritsLoose.js | 14 + .../helpers/lib/helpers/inheritsLoose.js.map | 1 + .../lib/helpers/initializerDefineProperty.js | 17 + .../helpers/initializerDefineProperty.js.map | 1 + .../lib/helpers/initializerWarningHelper.js | 11 + .../helpers/initializerWarningHelper.js.map | 1 + .../@babel/helpers/lib/helpers/instanceof.js | 15 + .../helpers/lib/helpers/instanceof.js.map | 1 + .../lib/helpers/interopRequireDefault.js | 13 + .../lib/helpers/interopRequireDefault.js.map | 1 + .../lib/helpers/interopRequireWildcard.js | 44 + .../lib/helpers/interopRequireWildcard.js.map | 1 + .../helpers/lib/helpers/isNativeFunction.js | 15 + .../lib/helpers/isNativeFunction.js.map | 1 + .../lib/helpers/isNativeReflectConstruct.js | 16 + .../helpers/isNativeReflectConstruct.js.map | 1 + .../helpers/lib/helpers/iterableToArray.js | 13 + .../lib/helpers/iterableToArray.js.map | 1 + .../lib/helpers/iterableToArrayLimit.js | 41 + .../lib/helpers/iterableToArrayLimit.js.map | 1 + .../@babel/helpers/lib/helpers/jsx.js | 47 + .../@babel/helpers/lib/helpers/jsx.js.map | 1 + .../helpers/lib/helpers/maybeArrayLike.js | 16 + .../helpers/lib/helpers/maybeArrayLike.js.map | 1 + .../helpers/lib/helpers/newArrowCheck.js | 13 + .../helpers/lib/helpers/newArrowCheck.js.map | 1 + .../helpers/lib/helpers/nonIterableRest.js | 11 + .../lib/helpers/nonIterableRest.js.map | 1 + .../helpers/lib/helpers/nonIterableSpread.js | 11 + .../lib/helpers/nonIterableSpread.js.map | 1 + .../lib/helpers/nullishReceiverError.js | 11 + .../lib/helpers/nullishReceiverError.js.map | 1 + .../lib/helpers/objectDestructuringEmpty.js | 11 + .../helpers/objectDestructuringEmpty.js.map | 1 + .../helpers/lib/helpers/objectSpread.js | 24 + .../helpers/lib/helpers/objectSpread.js.map | 1 + .../helpers/lib/helpers/objectSpread2.js | 39 + .../helpers/lib/helpers/objectSpread2.js.map | 1 + .../lib/helpers/objectWithoutProperties.js | 24 + .../helpers/objectWithoutProperties.js.map | 1 + .../helpers/objectWithoutPropertiesLoose.js | 19 + .../objectWithoutPropertiesLoose.js.map | 1 + .../lib/helpers/possibleConstructorReturn.js | 17 + .../helpers/possibleConstructorReturn.js.map | 1 + .../helpers/lib/helpers/readOnlyError.js | 11 + .../helpers/lib/helpers/readOnlyError.js.map | 1 + .../@babel/helpers/lib/helpers/regenerator.js | 188 + .../helpers/lib/helpers/regenerator.js.map | 1 + .../helpers/lib/helpers/regeneratorAsync.js | 15 + .../lib/helpers/regeneratorAsync.js.map | 1 + .../lib/helpers/regeneratorAsyncGen.js | 13 + .../lib/helpers/regeneratorAsyncGen.js.map | 1 + .../lib/helpers/regeneratorAsyncIterator.js | 49 + .../helpers/regeneratorAsyncIterator.js.map | 1 + .../helpers/lib/helpers/regeneratorDefine.js | 40 + .../lib/helpers/regeneratorDefine.js.map | 1 + .../helpers/lib/helpers/regeneratorKeys.js | 28 + .../lib/helpers/regeneratorKeys.js.map | 1 + .../helpers/lib/helpers/regeneratorRuntime.js | 98 + .../lib/helpers/regeneratorRuntime.js.map | 1 + .../helpers/lib/helpers/regeneratorValues.js | 32 + .../lib/helpers/regeneratorValues.js.map | 1 + .../@babel/helpers/lib/helpers/set.js | 48 + .../@babel/helpers/lib/helpers/set.js.map | 1 + .../helpers/lib/helpers/setFunctionName.js | 21 + .../lib/helpers/setFunctionName.js.map | 1 + .../helpers/lib/helpers/setPrototypeOf.js | 15 + .../helpers/lib/helpers/setPrototypeOf.js.map | 1 + .../lib/helpers/skipFirstGeneratorNext.js | 15 + .../lib/helpers/skipFirstGeneratorNext.js.map | 1 + .../helpers/lib/helpers/slicedToArray.js | 15 + .../helpers/lib/helpers/slicedToArray.js.map | 1 + .../helpers/lib/helpers/superPropBase.js | 16 + .../helpers/lib/helpers/superPropBase.js.map | 1 + .../helpers/lib/helpers/superPropGet.js | 16 + .../helpers/lib/helpers/superPropGet.js.map | 1 + .../helpers/lib/helpers/superPropSet.js | 13 + .../helpers/lib/helpers/superPropSet.js.map | 1 + .../lib/helpers/taggedTemplateLiteral.js | 18 + .../lib/helpers/taggedTemplateLiteral.js.map | 1 + .../lib/helpers/taggedTemplateLiteralLoose.js | 15 + .../helpers/taggedTemplateLiteralLoose.js.map | 1 + .../@babel/helpers/lib/helpers/tdz.js | 11 + .../@babel/helpers/lib/helpers/tdz.js.map | 1 + .../@babel/helpers/lib/helpers/temporalRef.js | 13 + .../helpers/lib/helpers/temporalRef.js.map | 1 + .../helpers/lib/helpers/temporalUndefined.js | 9 + .../lib/helpers/temporalUndefined.js.map | 1 + .../@babel/helpers/lib/helpers/toArray.js | 15 + .../@babel/helpers/lib/helpers/toArray.js.map | 1 + .../helpers/lib/helpers/toConsumableArray.js | 15 + .../lib/helpers/toConsumableArray.js.map | 1 + .../@babel/helpers/lib/helpers/toPrimitive.js | 18 + .../helpers/lib/helpers/toPrimitive.js.map | 1 + .../helpers/lib/helpers/toPropertyKey.js | 13 + .../helpers/lib/helpers/toPropertyKey.js.map | 1 + .../@babel/helpers/lib/helpers/toSetter.js | 18 + .../helpers/lib/helpers/toSetter.js.map | 1 + .../tsRewriteRelativeImportExtensions.js | 16 + .../tsRewriteRelativeImportExtensions.js.map | 1 + .../@babel/helpers/lib/helpers/typeof.js | 22 + .../@babel/helpers/lib/helpers/typeof.js.map | 1 + .../lib/helpers/unsupportedIterableToArray.js | 19 + .../helpers/unsupportedIterableToArray.js.map | 1 + .../@babel/helpers/lib/helpers/using.js | 29 + .../@babel/helpers/lib/helpers/using.js.map | 1 + .../@babel/helpers/lib/helpers/usingCtx.js | 103 + .../helpers/lib/helpers/usingCtx.js.map | 1 + .../helpers/lib/helpers/wrapAsyncGenerator.js | 88 + .../lib/helpers/wrapAsyncGenerator.js.map | 1 + .../helpers/lib/helpers/wrapNativeSuper.js | 38 + .../lib/helpers/wrapNativeSuper.js.map | 1 + .../@babel/helpers/lib/helpers/wrapRegExp.js | 72 + .../helpers/lib/helpers/wrapRegExp.js.map | 1 + .../helpers/lib/helpers/writeOnlyError.js | 11 + .../helpers/lib/helpers/writeOnlyError.js.map | 1 + node_modules/@babel/helpers/lib/index.js | 122 + node_modules/@babel/helpers/lib/index.js.map | 1 + node_modules/@babel/helpers/package.json | 31 + node_modules/@babel/parser/CHANGELOG.md | 1073 + node_modules/@babel/parser/LICENSE | 19 + node_modules/@babel/parser/README.md | 19 + .../@babel/parser/bin/babel-parser.js | 15 + node_modules/@babel/parser/lib/index.js | 14582 ++++ node_modules/@babel/parser/lib/index.js.map | 1 + node_modules/@babel/parser/package.json | 50 + .../@babel/parser/typings/babel-parser.d.ts | 262 + .../plugin-transform-react-jsx-self/LICENSE | 22 + .../plugin-transform-react-jsx-self/README.md | 19 + .../lib/index.js | 61 + .../lib/index.js.map | 1 + .../package.json | 35 + .../plugin-transform-react-jsx-source/LICENSE | 22 + .../README.md | 19 + .../lib/index.js | 51 + .../lib/index.js.map | 1 + .../package.json | 35 + node_modules/@babel/template/LICENSE | 22 + node_modules/@babel/template/README.md | 19 + node_modules/@babel/template/lib/builder.js | 69 + .../@babel/template/lib/builder.js.map | 1 + .../@babel/template/lib/formatters.js | 61 + .../@babel/template/lib/formatters.js.map | 1 + node_modules/@babel/template/lib/index.js | 23 + node_modules/@babel/template/lib/index.js.map | 1 + node_modules/@babel/template/lib/literal.js | 69 + .../@babel/template/lib/literal.js.map | 1 + node_modules/@babel/template/lib/options.js | 73 + .../@babel/template/lib/options.js.map | 1 + node_modules/@babel/template/lib/parse.js | 163 + node_modules/@babel/template/lib/parse.js.map | 1 + node_modules/@babel/template/lib/populate.js | 138 + .../@babel/template/lib/populate.js.map | 1 + node_modules/@babel/template/lib/string.js | 20 + .../@babel/template/lib/string.js.map | 1 + node_modules/@babel/template/package.json | 27 + node_modules/@babel/traverse/LICENSE | 22 + node_modules/@babel/traverse/README.md | 19 + node_modules/@babel/traverse/lib/cache.js | 37 + node_modules/@babel/traverse/lib/cache.js.map | 1 + node_modules/@babel/traverse/lib/context.js | 125 + .../@babel/traverse/lib/context.js.map | 1 + node_modules/@babel/traverse/lib/hub.js | 19 + node_modules/@babel/traverse/lib/hub.js.map | 1 + node_modules/@babel/traverse/lib/index.js | 87 + node_modules/@babel/traverse/lib/index.js.map | 1 + .../@babel/traverse/lib/path/ancestry.js | 139 + .../@babel/traverse/lib/path/ancestry.js.map | 1 + .../@babel/traverse/lib/path/comments.js | 52 + .../@babel/traverse/lib/path/comments.js.map | 1 + .../@babel/traverse/lib/path/context.js | 254 + .../@babel/traverse/lib/path/context.js.map | 1 + .../@babel/traverse/lib/path/conversion.js | 608 + .../traverse/lib/path/conversion.js.map | 1 + .../@babel/traverse/lib/path/evaluation.js | 373 + .../traverse/lib/path/evaluation.js.map | 1 + .../@babel/traverse/lib/path/family.js | 346 + .../@babel/traverse/lib/path/family.js.map | 1 + .../@babel/traverse/lib/path/index.js | 288 + .../@babel/traverse/lib/path/index.js.map | 1 + .../traverse/lib/path/inference/index.js | 149 + .../traverse/lib/path/inference/index.js.map | 1 + .../lib/path/inference/inferer-reference.js | 151 + .../path/inference/inferer-reference.js.map | 1 + .../traverse/lib/path/inference/inferers.js | 207 + .../lib/path/inference/inferers.js.map | 1 + .../traverse/lib/path/inference/util.js | 28 + .../traverse/lib/path/inference/util.js.map | 1 + .../@babel/traverse/lib/path/introspection.js | 395 + .../traverse/lib/path/introspection.js.map | 1 + .../@babel/traverse/lib/path/lib/hoister.js | 172 + .../traverse/lib/path/lib/hoister.js.map | 1 + .../traverse/lib/path/lib/removal-hooks.js | 38 + .../lib/path/lib/removal-hooks.js.map | 1 + .../lib/path/lib/virtual-types-validator.js | 162 + .../path/lib/virtual-types-validator.js.map | 1 + .../traverse/lib/path/lib/virtual-types.js | 26 + .../lib/path/lib/virtual-types.js.map | 1 + .../@babel/traverse/lib/path/modification.js | 229 + .../traverse/lib/path/modification.js.map | 1 + .../@babel/traverse/lib/path/removal.js | 67 + .../@babel/traverse/lib/path/removal.js.map | 1 + .../@babel/traverse/lib/path/replacement.js | 264 + .../traverse/lib/path/replacement.js.map | 1 + .../@babel/traverse/lib/scope/binding.js | 84 + .../@babel/traverse/lib/scope/binding.js.map | 1 + .../@babel/traverse/lib/scope/index.js | 1018 + .../@babel/traverse/lib/scope/index.js.map | 1 + .../@babel/traverse/lib/scope/lib/renamer.js | 132 + .../traverse/lib/scope/lib/renamer.js.map | 1 + .../traverse/lib/scope/traverseForScope.js | 66 + .../lib/scope/traverseForScope.js.map | 1 + .../@babel/traverse/lib/traverse-node.js | 137 + .../@babel/traverse/lib/traverse-node.js.map | 1 + node_modules/@babel/traverse/lib/types.js | 3 + node_modules/@babel/traverse/lib/types.js.map | 1 + node_modules/@babel/traverse/lib/visitors.js | 252 + .../@babel/traverse/lib/visitors.js.map | 1 + node_modules/@babel/traverse/package.json | 35 + .../@babel/traverse/tsconfig.overrides.json | 6 + node_modules/@babel/types/LICENSE | 22 + node_modules/@babel/types/README.md | 19 + .../@babel/types/lib/asserts/assertNode.js | 16 + .../types/lib/asserts/assertNode.js.map | 1 + .../types/lib/asserts/generated/index.js | 1251 + .../types/lib/asserts/generated/index.js.map | 1 + .../types/lib/ast-types/generated/index.js | 3 + .../lib/ast-types/generated/index.js.map | 1 + .../lib/builders/flow/createFlowUnionType.js | 18 + .../builders/flow/createFlowUnionType.js.map | 1 + .../flow/createTypeAnnotationBasedOnTypeof.js | 31 + .../createTypeAnnotationBasedOnTypeof.js.map | 1 + .../types/lib/builders/generated/index.js | 29 + .../types/lib/builders/generated/index.js.map | 1 + .../types/lib/builders/generated/lowercase.js | 2902 + .../lib/builders/generated/lowercase.js.map | 1 + .../types/lib/builders/generated/uppercase.js | 272 + .../lib/builders/generated/uppercase.js.map | 1 + .../@babel/types/lib/builders/productions.js | 12 + .../types/lib/builders/productions.js.map | 1 + .../types/lib/builders/react/buildChildren.js | 24 + .../lib/builders/react/buildChildren.js.map | 1 + .../builders/typescript/createTSUnionType.js | 22 + .../typescript/createTSUnionType.js.map | 1 + .../@babel/types/lib/builders/validateNode.js | 21 + .../types/lib/builders/validateNode.js.map | 1 + node_modules/@babel/types/lib/clone/clone.js | 12 + .../@babel/types/lib/clone/clone.js.map | 1 + .../@babel/types/lib/clone/cloneDeep.js | 12 + .../@babel/types/lib/clone/cloneDeep.js.map | 1 + .../types/lib/clone/cloneDeepWithoutLoc.js | 12 + .../lib/clone/cloneDeepWithoutLoc.js.map | 1 + .../@babel/types/lib/clone/cloneNode.js | 107 + .../@babel/types/lib/clone/cloneNode.js.map | 1 + .../@babel/types/lib/clone/cloneWithoutLoc.js | 12 + .../types/lib/clone/cloneWithoutLoc.js.map | 1 + .../@babel/types/lib/comments/addComment.js | 15 + .../types/lib/comments/addComment.js.map | 1 + .../@babel/types/lib/comments/addComments.js | 22 + .../types/lib/comments/addComments.js.map | 1 + .../lib/comments/inheritInnerComments.js | 12 + .../lib/comments/inheritInnerComments.js.map | 1 + .../lib/comments/inheritLeadingComments.js | 12 + .../comments/inheritLeadingComments.js.map | 1 + .../lib/comments/inheritTrailingComments.js | 12 + .../comments/inheritTrailingComments.js.map | 1 + .../types/lib/comments/inheritsComments.js | 17 + .../lib/comments/inheritsComments.js.map | 1 + .../types/lib/comments/removeComments.js | 15 + .../types/lib/comments/removeComments.js.map | 1 + .../types/lib/constants/generated/index.js | 60 + .../lib/constants/generated/index.js.map | 1 + .../@babel/types/lib/constants/index.js | 31 + .../@babel/types/lib/constants/index.js.map | 1 + .../types/lib/converters/ensureBlock.js | 14 + .../types/lib/converters/ensureBlock.js.map | 1 + .../converters/gatherSequenceExpressions.js | 65 + .../gatherSequenceExpressions.js.map | 1 + .../lib/converters/toBindingIdentifierName.js | 14 + .../converters/toBindingIdentifierName.js.map | 1 + .../@babel/types/lib/converters/toBlock.js | 29 + .../types/lib/converters/toBlock.js.map | 1 + .../types/lib/converters/toComputedKey.js | 14 + .../types/lib/converters/toComputedKey.js.map | 1 + .../types/lib/converters/toExpression.js | 28 + .../types/lib/converters/toExpression.js.map | 1 + .../types/lib/converters/toIdentifier.js | 25 + .../types/lib/converters/toIdentifier.js.map | 1 + .../@babel/types/lib/converters/toKeyAlias.js | 38 + .../types/lib/converters/toKeyAlias.js.map | 1 + .../lib/converters/toSequenceExpression.js | 19 + .../converters/toSequenceExpression.js.map | 1 + .../types/lib/converters/toStatement.js | 39 + .../types/lib/converters/toStatement.js.map | 1 + .../types/lib/converters/valueToNode.js | 89 + .../types/lib/converters/valueToNode.js.map | 1 + .../@babel/types/lib/definitions/core.js | 1725 + .../@babel/types/lib/definitions/core.js.map | 1 + .../lib/definitions/deprecated-aliases.js | 11 + .../lib/definitions/deprecated-aliases.js.map | 1 + .../types/lib/definitions/experimental.js | 124 + .../types/lib/definitions/experimental.js.map | 1 + .../@babel/types/lib/definitions/flow.js | 495 + .../@babel/types/lib/definitions/flow.js.map | 1 + .../@babel/types/lib/definitions/index.js | 106 + .../@babel/types/lib/definitions/index.js.map | 1 + .../@babel/types/lib/definitions/jsx.js | 157 + .../@babel/types/lib/definitions/jsx.js.map | 1 + .../@babel/types/lib/definitions/misc.js | 31 + .../@babel/types/lib/definitions/misc.js.map | 1 + .../types/lib/definitions/placeholders.js | 27 + .../types/lib/definitions/placeholders.js.map | 1 + .../types/lib/definitions/typescript.js | 528 + .../types/lib/definitions/typescript.js.map | 1 + .../@babel/types/lib/definitions/utils.js | 296 + .../@babel/types/lib/definitions/utils.js.map | 1 + .../@babel/types/lib/index-legacy.d.ts | 2797 + node_modules/@babel/types/lib/index.d.ts | 3617 + node_modules/@babel/types/lib/index.js | 582 + node_modules/@babel/types/lib/index.js.flow | 2650 + node_modules/@babel/types/lib/index.js.map | 1 + .../modifications/appendToMemberExpression.js | 15 + .../appendToMemberExpression.js.map | 1 + .../flow/removeTypeDuplicates.js | 65 + .../flow/removeTypeDuplicates.js.map | 1 + .../types/lib/modifications/inherits.js | 28 + .../types/lib/modifications/inherits.js.map | 1 + .../prependToMemberExpression.js | 17 + .../prependToMemberExpression.js.map | 1 + .../lib/modifications/removeProperties.js | 24 + .../lib/modifications/removeProperties.js.map | 1 + .../lib/modifications/removePropertiesDeep.js | 14 + .../modifications/removePropertiesDeep.js.map | 1 + .../typescript/removeTypeDuplicates.js | 66 + .../typescript/removeTypeDuplicates.js.map | 1 + .../retrievers/getAssignmentIdentifiers.js | 48 + .../getAssignmentIdentifiers.js.map | 1 + .../lib/retrievers/getBindingIdentifiers.js | 102 + .../retrievers/getBindingIdentifiers.js.map | 1 + .../types/lib/retrievers/getFunctionName.js | 63 + .../lib/retrievers/getFunctionName.js.map | 1 + .../retrievers/getOuterBindingIdentifiers.js | 13 + .../getOuterBindingIdentifiers.js.map | 1 + .../@babel/types/lib/traverse/traverse.js | 50 + .../@babel/types/lib/traverse/traverse.js.map | 1 + .../@babel/types/lib/traverse/traverseFast.js | 40 + .../types/lib/traverse/traverseFast.js.map | 1 + .../types/lib/utils/deprecationWarning.js | 44 + .../types/lib/utils/deprecationWarning.js.map | 1 + .../@babel/types/lib/utils/inherit.js | 13 + .../@babel/types/lib/utils/inherit.js.map | 1 + .../react/cleanJSXElementLiteralChild.js | 40 + .../react/cleanJSXElementLiteralChild.js.map | 1 + .../@babel/types/lib/utils/shallowEqual.js | 17 + .../types/lib/utils/shallowEqual.js.map | 1 + .../validators/buildMatchMemberExpression.js | 13 + .../buildMatchMemberExpression.js.map | 1 + .../types/lib/validators/generated/index.js | 2797 + .../lib/validators/generated/index.js.map | 1 + .../@babel/types/lib/validators/is.js | 27 + .../@babel/types/lib/validators/is.js.map | 1 + .../@babel/types/lib/validators/isBinding.js | 27 + .../types/lib/validators/isBinding.js.map | 1 + .../types/lib/validators/isBlockScoped.js | 13 + .../types/lib/validators/isBlockScoped.js.map | 1 + .../types/lib/validators/isImmutable.js | 21 + .../types/lib/validators/isImmutable.js.map | 1 + .../@babel/types/lib/validators/isLet.js | 13 + .../@babel/types/lib/validators/isLet.js.map | 1 + .../@babel/types/lib/validators/isNode.js | 12 + .../@babel/types/lib/validators/isNode.js.map | 1 + .../types/lib/validators/isNodesEquivalent.js | 57 + .../lib/validators/isNodesEquivalent.js.map | 1 + .../types/lib/validators/isPlaceholderType.js | 15 + .../lib/validators/isPlaceholderType.js.map | 1 + .../types/lib/validators/isReferenced.js | 96 + .../types/lib/validators/isReferenced.js.map | 1 + .../@babel/types/lib/validators/isScope.js | 18 + .../types/lib/validators/isScope.js.map | 1 + .../lib/validators/isSpecifierDefault.js | 14 + .../lib/validators/isSpecifierDefault.js.map | 1 + .../@babel/types/lib/validators/isType.js | 17 + .../@babel/types/lib/validators/isType.js.map | 1 + .../lib/validators/isValidES3Identifier.js | 13 + .../validators/isValidES3Identifier.js.map | 1 + .../types/lib/validators/isValidIdentifier.js | 18 + .../lib/validators/isValidIdentifier.js.map | 1 + .../@babel/types/lib/validators/isVar.js | 15 + .../@babel/types/lib/validators/isVar.js.map | 1 + .../types/lib/validators/matchesPattern.js | 44 + .../lib/validators/matchesPattern.js.map | 1 + .../types/lib/validators/react/isCompatTag.js | 11 + .../lib/validators/react/isCompatTag.js.map | 1 + .../lib/validators/react/isReactComponent.js | 11 + .../validators/react/isReactComponent.js.map | 1 + .../@babel/types/lib/validators/validate.js | 42 + .../types/lib/validators/validate.js.map | 1 + node_modules/@babel/types/package.json | 39 + node_modules/@esbuild/linux-arm64/README.md | 3 + node_modules/@esbuild/linux-arm64/bin/esbuild | Bin 0 -> 8978432 bytes .../@esbuild/linux-arm64/package.json | 20 + node_modules/@jridgewell/gen-mapping/LICENSE | 19 + .../@jridgewell/gen-mapping/README.md | 227 + .../gen-mapping/dist/gen-mapping.mjs | 292 + .../gen-mapping/dist/gen-mapping.mjs.map | 6 + .../gen-mapping/dist/gen-mapping.umd.js | 358 + .../gen-mapping/dist/gen-mapping.umd.js.map | 6 + .../gen-mapping/dist/types/gen-mapping.d.ts | 88 + .../gen-mapping/dist/types/set-array.d.ts | 32 + .../dist/types/sourcemap-segment.d.ts | 12 + .../gen-mapping/dist/types/types.d.ts | 43 + .../@jridgewell/gen-mapping/package.json | 67 + .../gen-mapping/src/gen-mapping.ts | 614 + .../@jridgewell/gen-mapping/src/set-array.ts | 82 + .../gen-mapping/src/sourcemap-segment.ts | 16 + .../@jridgewell/gen-mapping/src/types.ts | 61 + .../gen-mapping/types/gen-mapping.d.cts | 89 + .../gen-mapping/types/gen-mapping.d.cts.map | 1 + .../gen-mapping/types/gen-mapping.d.mts | 89 + .../gen-mapping/types/gen-mapping.d.mts.map | 1 + .../gen-mapping/types/set-array.d.cts | 33 + .../gen-mapping/types/set-array.d.cts.map | 1 + .../gen-mapping/types/set-array.d.mts | 33 + .../gen-mapping/types/set-array.d.mts.map | 1 + .../gen-mapping/types/sourcemap-segment.d.cts | 13 + .../types/sourcemap-segment.d.cts.map | 1 + .../gen-mapping/types/sourcemap-segment.d.mts | 13 + .../types/sourcemap-segment.d.mts.map | 1 + .../@jridgewell/gen-mapping/types/types.d.cts | 44 + .../gen-mapping/types/types.d.cts.map | 1 + .../@jridgewell/gen-mapping/types/types.d.mts | 44 + .../gen-mapping/types/types.d.mts.map | 1 + node_modules/@jridgewell/remapping/LICENSE | 19 + node_modules/@jridgewell/remapping/README.md | 218 + .../@jridgewell/remapping/dist/remapping.mjs | 144 + .../remapping/dist/remapping.mjs.map | 6 + .../remapping/dist/remapping.umd.js | 212 + .../remapping/dist/remapping.umd.js.map | 6 + .../@jridgewell/remapping/package.json | 71 + .../remapping/src/build-source-map-tree.ts | 89 + .../@jridgewell/remapping/src/remapping.ts | 42 + .../remapping/src/source-map-tree.ts | 172 + .../@jridgewell/remapping/src/source-map.ts | 38 + .../@jridgewell/remapping/src/types.ts | 27 + .../types/build-source-map-tree.d.cts | 15 + .../types/build-source-map-tree.d.cts.map | 1 + .../types/build-source-map-tree.d.mts | 15 + .../types/build-source-map-tree.d.mts.map | 1 + .../remapping/types/remapping.d.cts | 21 + .../remapping/types/remapping.d.cts.map | 1 + .../remapping/types/remapping.d.mts | 21 + .../remapping/types/remapping.d.mts.map | 1 + .../remapping/types/source-map-tree.d.cts | 46 + .../remapping/types/source-map-tree.d.cts.map | 1 + .../remapping/types/source-map-tree.d.mts | 46 + .../remapping/types/source-map-tree.d.mts.map | 1 + .../remapping/types/source-map.d.cts | 19 + .../remapping/types/source-map.d.cts.map | 1 + .../remapping/types/source-map.d.mts | 19 + .../remapping/types/source-map.d.mts.map | 1 + .../@jridgewell/remapping/types/types.d.cts | 16 + .../remapping/types/types.d.cts.map | 1 + .../@jridgewell/remapping/types/types.d.mts | 16 + .../remapping/types/types.d.mts.map | 1 + node_modules/@jridgewell/resolve-uri/LICENSE | 19 + .../@jridgewell/resolve-uri/README.md | 40 + .../resolve-uri/dist/resolve-uri.mjs | 232 + .../resolve-uri/dist/resolve-uri.mjs.map | 1 + .../resolve-uri/dist/resolve-uri.umd.js | 240 + .../resolve-uri/dist/resolve-uri.umd.js.map | 1 + .../resolve-uri/dist/types/resolve-uri.d.ts | 4 + .../@jridgewell/resolve-uri/package.json | 69 + .../@jridgewell/sourcemap-codec/LICENSE | 19 + .../@jridgewell/sourcemap-codec/README.md | 264 + .../sourcemap-codec/dist/sourcemap-codec.mjs | 423 + .../dist/sourcemap-codec.mjs.map | 6 + .../dist/sourcemap-codec.umd.js | 464 + .../dist/sourcemap-codec.umd.js.map | 6 + .../@jridgewell/sourcemap-codec/package.json | 63 + .../@jridgewell/sourcemap-codec/src/scopes.ts | 345 + .../sourcemap-codec/src/sourcemap-codec.ts | 111 + .../sourcemap-codec/src/strings.ts | 65 + .../@jridgewell/sourcemap-codec/src/vlq.ts | 55 + .../sourcemap-codec/types/scopes.d.cts | 50 + .../sourcemap-codec/types/scopes.d.cts.map | 1 + .../sourcemap-codec/types/scopes.d.mts | 50 + .../sourcemap-codec/types/scopes.d.mts.map | 1 + .../types/sourcemap-codec.d.cts | 9 + .../types/sourcemap-codec.d.cts.map | 1 + .../types/sourcemap-codec.d.mts | 9 + .../types/sourcemap-codec.d.mts.map | 1 + .../sourcemap-codec/types/strings.d.cts | 16 + .../sourcemap-codec/types/strings.d.cts.map | 1 + .../sourcemap-codec/types/strings.d.mts | 16 + .../sourcemap-codec/types/strings.d.mts.map | 1 + .../sourcemap-codec/types/vlq.d.cts | 7 + .../sourcemap-codec/types/vlq.d.cts.map | 1 + .../sourcemap-codec/types/vlq.d.mts | 7 + .../sourcemap-codec/types/vlq.d.mts.map | 1 + .../@jridgewell/trace-mapping/LICENSE | 19 + .../@jridgewell/trace-mapping/README.md | 348 + .../trace-mapping/dist/trace-mapping.mjs | 493 + .../trace-mapping/dist/trace-mapping.mjs.map | 6 + .../trace-mapping/dist/trace-mapping.umd.js | 559 + .../dist/trace-mapping.umd.js.map | 6 + .../@jridgewell/trace-mapping/package.json | 67 + .../trace-mapping/src/binary-search.ts | 115 + .../trace-mapping/src/by-source.ts | 41 + .../trace-mapping/src/flatten-map.ts | 192 + .../@jridgewell/trace-mapping/src/resolve.ts | 16 + .../@jridgewell/trace-mapping/src/sort.ts | 45 + .../trace-mapping/src/sourcemap-segment.ts | 23 + .../trace-mapping/src/strip-filename.ts | 8 + .../trace-mapping/src/trace-mapping.ts | 502 + .../@jridgewell/trace-mapping/src/types.ts | 114 + .../trace-mapping/types/binary-search.d.cts | 33 + .../types/binary-search.d.cts.map | 1 + .../trace-mapping/types/binary-search.d.mts | 33 + .../types/binary-search.d.mts.map | 1 + .../trace-mapping/types/by-source.d.cts | 4 + .../trace-mapping/types/by-source.d.cts.map | 1 + .../trace-mapping/types/by-source.d.mts | 4 + .../trace-mapping/types/by-source.d.mts.map | 1 + .../trace-mapping/types/flatten-map.d.cts | 9 + .../trace-mapping/types/flatten-map.d.cts.map | 1 + .../trace-mapping/types/flatten-map.d.mts | 9 + .../trace-mapping/types/flatten-map.d.mts.map | 1 + .../trace-mapping/types/resolve.d.cts | 4 + .../trace-mapping/types/resolve.d.cts.map | 1 + .../trace-mapping/types/resolve.d.mts | 4 + .../trace-mapping/types/resolve.d.mts.map | 1 + .../trace-mapping/types/sort.d.cts | 4 + .../trace-mapping/types/sort.d.cts.map | 1 + .../trace-mapping/types/sort.d.mts | 4 + .../trace-mapping/types/sort.d.mts.map | 1 + .../types/sourcemap-segment.d.cts | 17 + .../types/sourcemap-segment.d.cts.map | 1 + .../types/sourcemap-segment.d.mts | 17 + .../types/sourcemap-segment.d.mts.map | 1 + .../trace-mapping/types/strip-filename.d.cts | 5 + .../types/strip-filename.d.cts.map | 1 + .../trace-mapping/types/strip-filename.d.mts | 5 + .../types/strip-filename.d.mts.map | 1 + .../trace-mapping/types/trace-mapping.d.cts | 80 + .../types/trace-mapping.d.cts.map | 1 + .../trace-mapping/types/trace-mapping.d.mts | 80 + .../types/trace-mapping.d.mts.map | 1 + .../trace-mapping/types/types.d.cts | 107 + .../trace-mapping/types/types.d.cts.map | 1 + .../trace-mapping/types/types.d.mts | 107 + .../trace-mapping/types/types.d.mts.map | 1 + node_modules/@rolldown/pluginutils/LICENSE | 25 + .../@rolldown/pluginutils/dist/index.cjs | 271 + .../@rolldown/pluginutils/dist/index.d.cts | 157 + .../@rolldown/pluginutils/dist/index.d.ts | 157 + .../@rolldown/pluginutils/dist/index.js | 255 + .../@rolldown/pluginutils/package.json | 36 + .../@rollup/rollup-linux-arm64-gnu/README.md | 3 + .../rollup-linux-arm64-gnu/package.json | 25 + .../rollup.linux-arm64-gnu.node | Bin 0 -> 1805064 bytes node_modules/@types/babel__core/LICENSE | 21 + node_modules/@types/babel__core/README.md | 15 + node_modules/@types/babel__core/index.d.ts | 831 + node_modules/@types/babel__core/package.json | 51 + node_modules/@types/babel__generator/LICENSE | 21 + .../@types/babel__generator/README.md | 15 + .../@types/babel__generator/index.d.ts | 210 + .../@types/babel__generator/package.json | 43 + node_modules/@types/babel__template/LICENSE | 21 + node_modules/@types/babel__template/README.md | 15 + .../@types/babel__template/index.d.ts | 92 + .../@types/babel__template/package.json | 43 + node_modules/@types/babel__traverse/LICENSE | 21 + node_modules/@types/babel__traverse/README.md | 15 + .../@types/babel__traverse/index.d.ts | 1506 + .../@types/babel__traverse/package.json | 63 + node_modules/@types/estree/LICENSE | 21 + node_modules/@types/estree/README.md | 15 + node_modules/@types/estree/flow.d.ts | 167 + node_modules/@types/estree/index.d.ts | 694 + node_modules/@types/estree/package.json | 27 + node_modules/@vitejs/plugin-react/LICENSE | 21 + node_modules/@vitejs/plugin-react/README.md | 142 + .../@vitejs/plugin-react/dist/index.cjs | 343 + .../@vitejs/plugin-react/dist/index.d.cts | 67 + .../@vitejs/plugin-react/dist/index.d.ts | 67 + .../@vitejs/plugin-react/dist/index.js | 320 + .../plugin-react/dist/refresh-runtime.js | 670 + .../@vitejs/plugin-react/package.json | 70 + .../baseline-browser-mapping/LICENSE.txt | 201 + .../baseline-browser-mapping/README.md | 467 + .../baseline-browser-mapping/dist/cli.cjs | 2 + .../baseline-browser-mapping/dist/index.cjs | 1 + .../baseline-browser-mapping/dist/index.d.ts | 104 + .../baseline-browser-mapping/dist/index.js | 1 + .../baseline-browser-mapping/package.json | 68 + node_modules/browserslist/LICENSE | 20 + node_modules/browserslist/README.md | 65 + node_modules/browserslist/browser.js | 54 + node_modules/browserslist/cli.js | 156 + node_modules/browserslist/error.d.ts | 7 + node_modules/browserslist/error.js | 12 + node_modules/browserslist/index.d.ts | 224 + node_modules/browserslist/index.js | 1335 + node_modules/browserslist/node.js | 502 + node_modules/browserslist/package.json | 45 + node_modules/browserslist/parse.js | 78 + node_modules/caniuse-lite/LICENSE | 395 + node_modules/caniuse-lite/README.md | 6 + node_modules/caniuse-lite/data/agents.js | 1 + .../caniuse-lite/data/browserVersions.js | 1 + node_modules/caniuse-lite/data/browsers.js | 1 + node_modules/caniuse-lite/data/features.js | 1 + .../caniuse-lite/data/features/aac.js | 1 + .../data/features/abortcontroller.js | 1 + .../caniuse-lite/data/features/ac3-ec3.js | 1 + .../data/features/accelerometer.js | 1 + .../data/features/addeventlistener.js | 1 + .../data/features/alternate-stylesheet.js | 1 + .../data/features/ambient-light.js | 1 + .../caniuse-lite/data/features/apng.js | 1 + .../data/features/array-find-index.js | 1 + .../caniuse-lite/data/features/array-find.js | 1 + .../caniuse-lite/data/features/array-flat.js | 1 + .../data/features/array-includes.js | 1 + .../data/features/arrow-functions.js | 1 + .../caniuse-lite/data/features/asmjs.js | 1 + .../data/features/async-clipboard.js | 1 + .../data/features/async-functions.js | 1 + .../caniuse-lite/data/features/atob-btoa.js | 1 + .../caniuse-lite/data/features/audio-api.js | 1 + .../caniuse-lite/data/features/audio.js | 1 + .../caniuse-lite/data/features/audiotracks.js | 1 + .../caniuse-lite/data/features/autofocus.js | 1 + .../caniuse-lite/data/features/auxclick.js | 1 + .../caniuse-lite/data/features/av1.js | 1 + .../caniuse-lite/data/features/avif.js | 1 + .../data/features/background-attachment.js | 1 + .../data/features/background-clip-text.js | 1 + .../data/features/background-img-opts.js | 1 + .../data/features/background-position-x-y.js | 1 + .../features/background-repeat-round-space.js | 1 + .../data/features/background-sync.js | 1 + .../data/features/battery-status.js | 1 + .../caniuse-lite/data/features/beacon.js | 1 + .../data/features/beforeafterprint.js | 1 + .../caniuse-lite/data/features/bigint.js | 1 + .../caniuse-lite/data/features/blobbuilder.js | 1 + .../caniuse-lite/data/features/bloburls.js | 1 + .../data/features/border-image.js | 1 + .../data/features/border-radius.js | 1 + .../data/features/broadcastchannel.js | 1 + .../caniuse-lite/data/features/brotli.js | 1 + .../caniuse-lite/data/features/calc.js | 1 + .../data/features/canvas-blending.js | 1 + .../caniuse-lite/data/features/canvas-text.js | 1 + .../caniuse-lite/data/features/canvas.js | 1 + .../caniuse-lite/data/features/ch-unit.js | 1 + .../data/features/chacha20-poly1305.js | 1 + .../data/features/channel-messaging.js | 1 + .../data/features/childnode-remove.js | 1 + .../caniuse-lite/data/features/classlist.js | 1 + .../client-hints-dpr-width-viewport.js | 1 + .../caniuse-lite/data/features/clipboard.js | 1 + .../caniuse-lite/data/features/colr-v1.js | 1 + .../caniuse-lite/data/features/colr.js | 1 + .../data/features/comparedocumentposition.js | 1 + .../data/features/console-basic.js | 1 + .../data/features/console-time.js | 1 + .../caniuse-lite/data/features/const.js | 1 + .../data/features/constraint-validation.js | 1 + .../data/features/contenteditable.js | 1 + .../data/features/contentsecuritypolicy.js | 1 + .../data/features/contentsecuritypolicy2.js | 1 + .../data/features/cookie-store-api.js | 1 + .../caniuse-lite/data/features/cors.js | 1 + .../data/features/createimagebitmap.js | 1 + .../data/features/credential-management.js | 1 + .../cross-document-view-transitions.js | 1 + .../data/features/cryptography.js | 1 + .../caniuse-lite/data/features/css-all.js | 1 + .../data/features/css-anchor-positioning.js | 1 + .../data/features/css-animation.js | 1 + .../data/features/css-any-link.js | 1 + .../data/features/css-appearance.js | 1 + .../data/features/css-at-counter-style.js | 1 + .../data/features/css-autofill.js | 1 + .../data/features/css-backdrop-filter.js | 1 + .../data/features/css-background-offsets.js | 1 + .../data/features/css-backgroundblendmode.js | 1 + .../data/features/css-boxdecorationbreak.js | 1 + .../data/features/css-boxshadow.js | 1 + .../caniuse-lite/data/features/css-canvas.js | 1 + .../data/features/css-caret-color.js | 1 + .../data/features/css-cascade-layers.js | 1 + .../data/features/css-cascade-scope.js | 1 + .../data/features/css-case-insensitive.js | 1 + .../data/features/css-clip-path.js | 1 + .../data/features/css-color-adjust.js | 1 + .../data/features/css-color-function.js | 1 + .../data/features/css-conic-gradients.js | 1 + .../features/css-container-queries-style.js | 1 + .../data/features/css-container-queries.js | 1 + .../features/css-container-query-units.js | 1 + .../data/features/css-containment.js | 1 + .../data/features/css-content-visibility.js | 1 + .../data/features/css-counters.js | 1 + .../data/features/css-crisp-edges.js | 1 + .../data/features/css-cross-fade.js | 1 + .../data/features/css-default-pseudo.js | 1 + .../data/features/css-descendant-gtgt.js | 1 + .../data/features/css-deviceadaptation.js | 1 + .../data/features/css-dir-pseudo.js | 1 + .../data/features/css-display-contents.js | 1 + .../data/features/css-element-function.js | 1 + .../data/features/css-env-function.js | 1 + .../data/features/css-exclusions.js | 1 + .../data/features/css-featurequeries.js | 1 + .../data/features/css-file-selector-button.js | 1 + .../data/features/css-filter-function.js | 1 + .../caniuse-lite/data/features/css-filters.js | 1 + .../data/features/css-first-letter.js | 1 + .../data/features/css-first-line.js | 1 + .../caniuse-lite/data/features/css-fixed.js | 1 + .../data/features/css-focus-visible.js | 1 + .../data/features/css-focus-within.js | 1 + .../data/features/css-font-palette.js | 1 + .../features/css-font-rendering-controls.js | 1 + .../data/features/css-font-stretch.js | 1 + .../data/features/css-gencontent.js | 1 + .../data/features/css-gradients.js | 1 + .../data/features/css-grid-animation.js | 1 + .../data/features/css-grid-lanes.js | 1 + .../caniuse-lite/data/features/css-grid.js | 1 + .../data/features/css-hanging-punctuation.js | 1 + .../caniuse-lite/data/features/css-has.js | 1 + .../caniuse-lite/data/features/css-hyphens.js | 1 + .../caniuse-lite/data/features/css-if.js | 1 + .../data/features/css-image-orientation.js | 1 + .../data/features/css-image-set.js | 1 + .../data/features/css-in-out-of-range.js | 1 + .../data/features/css-indeterminate-pseudo.js | 1 + .../data/features/css-initial-letter.js | 1 + .../data/features/css-initial-value.js | 1 + .../caniuse-lite/data/features/css-lch-lab.js | 1 + .../data/features/css-letter-spacing.js | 1 + .../data/features/css-line-clamp.js | 1 + .../data/features/css-logical-props.js | 1 + .../data/features/css-marker-pseudo.js | 1 + .../caniuse-lite/data/features/css-masks.js | 1 + .../data/features/css-matches-pseudo.js | 1 + .../data/features/css-math-functions.js | 1 + .../data/features/css-media-interaction.js | 1 + .../data/features/css-media-range-syntax.js | 1 + .../data/features/css-media-resolution.js | 1 + .../data/features/css-media-scripting.js | 1 + .../data/features/css-mediaqueries.js | 1 + .../data/features/css-mixblendmode.js | 1 + .../data/features/css-module-scripts.js | 1 + .../data/features/css-motion-paths.js | 1 + .../data/features/css-namespaces.js | 1 + .../caniuse-lite/data/features/css-nesting.js | 1 + .../data/features/css-not-sel-list.js | 1 + .../data/features/css-nth-child-of.js | 1 + .../caniuse-lite/data/features/css-opacity.js | 1 + .../data/features/css-optional-pseudo.js | 1 + .../data/features/css-overflow-anchor.js | 1 + .../data/features/css-overflow-overlay.js | 1 + .../data/features/css-overflow.js | 1 + .../data/features/css-overscroll-behavior.js | 1 + .../data/features/css-page-break.js | 1 + .../data/features/css-paged-media.js | 1 + .../data/features/css-paint-api.js | 1 + .../data/features/css-placeholder-shown.js | 1 + .../data/features/css-placeholder.js | 1 + .../data/features/css-print-color-adjust.js | 1 + .../data/features/css-read-only-write.js | 1 + .../data/features/css-rebeccapurple.js | 1 + .../data/features/css-reflections.js | 1 + .../caniuse-lite/data/features/css-regions.js | 1 + .../data/features/css-relative-colors.js | 1 + .../data/features/css-repeating-gradients.js | 1 + .../caniuse-lite/data/features/css-resize.js | 1 + .../data/features/css-revert-value.js | 1 + .../data/features/css-rrggbbaa.js | 1 + .../data/features/css-scroll-behavior.js | 1 + .../data/features/css-scrollbar.js | 1 + .../caniuse-lite/data/features/css-sel2.js | 1 + .../caniuse-lite/data/features/css-sel3.js | 1 + .../data/features/css-selection.js | 1 + .../caniuse-lite/data/features/css-shapes.js | 1 + .../data/features/css-snappoints.js | 1 + .../caniuse-lite/data/features/css-sticky.js | 1 + .../caniuse-lite/data/features/css-subgrid.js | 1 + .../data/features/css-supports-api.js | 1 + .../caniuse-lite/data/features/css-table.js | 1 + .../data/features/css-text-align-last.js | 1 + .../data/features/css-text-box-trim.js | 1 + .../data/features/css-text-indent.js | 1 + .../data/features/css-text-justify.js | 1 + .../data/features/css-text-orientation.js | 1 + .../data/features/css-text-spacing.js | 1 + .../data/features/css-text-wrap-balance.js | 1 + .../data/features/css-textshadow.js | 1 + .../data/features/css-touch-action.js | 1 + .../data/features/css-transitions.js | 1 + .../data/features/css-unicode-bidi.js | 1 + .../data/features/css-unset-value.js | 1 + .../data/features/css-variables.js | 1 + .../data/features/css-when-else.js | 1 + .../data/features/css-widows-orphans.js | 1 + .../data/features/css-width-stretch.js | 1 + .../data/features/css-writing-mode.js | 1 + .../caniuse-lite/data/features/css-zoom.js | 1 + .../caniuse-lite/data/features/css3-attr.js | 1 + .../data/features/css3-boxsizing.js | 1 + .../caniuse-lite/data/features/css3-colors.js | 1 + .../data/features/css3-cursors-grab.js | 1 + .../data/features/css3-cursors-newer.js | 1 + .../data/features/css3-cursors.js | 1 + .../data/features/css3-tabsize.js | 1 + .../data/features/currentcolor.js | 1 + .../data/features/custom-elements.js | 1 + .../data/features/custom-elementsv1.js | 1 + .../caniuse-lite/data/features/customevent.js | 1 + .../data/features/customizable-select.js | 1 + .../caniuse-lite/data/features/datalist.js | 1 + .../caniuse-lite/data/features/dataset.js | 1 + .../caniuse-lite/data/features/datauri.js | 1 + .../data/features/date-tolocaledatestring.js | 1 + .../data/features/declarative-shadow-dom.js | 1 + .../caniuse-lite/data/features/decorators.js | 1 + .../caniuse-lite/data/features/details.js | 1 + .../data/features/deviceorientation.js | 1 + .../data/features/devicepixelratio.js | 1 + .../caniuse-lite/data/features/dialog.js | 1 + .../data/features/dispatchevent.js | 1 + .../caniuse-lite/data/features/dnssec.js | 1 + .../data/features/do-not-track.js | 1 + .../data/features/document-currentscript.js | 1 + .../data/features/document-evaluate-xpath.js | 1 + .../data/features/document-execcommand.js | 1 + .../data/features/document-policy.js | 1 + .../features/document-scrollingelement.js | 1 + .../data/features/documenthead.js | 1 + .../data/features/dom-manip-convenience.js | 1 + .../caniuse-lite/data/features/dom-range.js | 1 + .../data/features/domcontentloaded.js | 1 + .../caniuse-lite/data/features/dommatrix.js | 1 + .../caniuse-lite/data/features/download.js | 1 + .../caniuse-lite/data/features/dragndrop.js | 1 + .../data/features/element-closest.js | 1 + .../data/features/element-from-point.js | 1 + .../data/features/element-scroll-methods.js | 1 + .../caniuse-lite/data/features/eme.js | 1 + .../caniuse-lite/data/features/eot.js | 1 + .../caniuse-lite/data/features/es5.js | 1 + .../caniuse-lite/data/features/es6-class.js | 1 + .../data/features/es6-generators.js | 1 + .../features/es6-module-dynamic-import.js | 1 + .../caniuse-lite/data/features/es6-module.js | 1 + .../caniuse-lite/data/features/es6-number.js | 1 + .../data/features/es6-string-includes.js | 1 + .../caniuse-lite/data/features/es6.js | 1 + .../caniuse-lite/data/features/eventsource.js | 1 + .../data/features/extended-system-fonts.js | 1 + .../data/features/feature-policy.js | 1 + .../caniuse-lite/data/features/fetch.js | 1 + .../data/features/fieldset-disabled.js | 1 + .../caniuse-lite/data/features/fileapi.js | 1 + .../caniuse-lite/data/features/filereader.js | 1 + .../data/features/filereadersync.js | 1 + .../caniuse-lite/data/features/filesystem.js | 1 + .../caniuse-lite/data/features/flac.js | 1 + .../caniuse-lite/data/features/flexbox-gap.js | 1 + .../caniuse-lite/data/features/flexbox.js | 1 + .../caniuse-lite/data/features/flow-root.js | 1 + .../data/features/focusin-focusout-events.js | 1 + .../data/features/font-family-system-ui.js | 1 + .../data/features/font-feature.js | 1 + .../data/features/font-kerning.js | 1 + .../data/features/font-loading.js | 1 + .../data/features/font-size-adjust.js | 1 + .../caniuse-lite/data/features/font-smooth.js | 1 + .../data/features/font-unicode-range.js | 1 + .../data/features/font-variant-alternates.js | 1 + .../data/features/font-variant-numeric.js | 1 + .../caniuse-lite/data/features/fontface.js | 1 + .../data/features/form-attribute.js | 1 + .../data/features/form-submit-attributes.js | 1 + .../data/features/form-validation.js | 1 + .../caniuse-lite/data/features/forms.js | 1 + .../caniuse-lite/data/features/fullscreen.js | 1 + .../caniuse-lite/data/features/gamepad.js | 1 + .../caniuse-lite/data/features/geolocation.js | 1 + .../data/features/getboundingclientrect.js | 1 + .../data/features/getcomputedstyle.js | 1 + .../data/features/getelementsbyclassname.js | 1 + .../data/features/getrandomvalues.js | 1 + .../caniuse-lite/data/features/gyroscope.js | 1 + .../data/features/hardwareconcurrency.js | 1 + .../caniuse-lite/data/features/hashchange.js | 1 + .../caniuse-lite/data/features/heif.js | 1 + .../caniuse-lite/data/features/hevc.js | 1 + .../caniuse-lite/data/features/hidden.js | 1 + .../data/features/high-resolution-time.js | 1 + .../caniuse-lite/data/features/history.js | 1 + .../data/features/html-media-capture.js | 1 + .../data/features/html5semantic.js | 1 + .../data/features/http-live-streaming.js | 1 + .../caniuse-lite/data/features/http2.js | 1 + .../caniuse-lite/data/features/http3.js | 1 + .../data/features/iframe-sandbox.js | 1 + .../data/features/iframe-seamless.js | 1 + .../data/features/iframe-srcdoc.js | 1 + .../data/features/imagecapture.js | 1 + .../caniuse-lite/data/features/ime.js | 1 + .../img-naturalwidth-naturalheight.js | 1 + .../caniuse-lite/data/features/import-maps.js | 1 + .../caniuse-lite/data/features/imports.js | 1 + .../data/features/indeterminate-checkbox.js | 1 + .../caniuse-lite/data/features/indexeddb.js | 1 + .../caniuse-lite/data/features/indexeddb2.js | 1 + .../data/features/inline-block.js | 1 + .../caniuse-lite/data/features/innertext.js | 1 + .../data/features/input-autocomplete-onoff.js | 1 + .../caniuse-lite/data/features/input-color.js | 1 + .../data/features/input-datetime.js | 1 + .../data/features/input-email-tel-url.js | 1 + .../caniuse-lite/data/features/input-event.js | 1 + .../data/features/input-file-accept.js | 1 + .../data/features/input-file-directory.js | 1 + .../data/features/input-file-multiple.js | 1 + .../data/features/input-inputmode.js | 1 + .../data/features/input-minlength.js | 1 + .../data/features/input-number.js | 1 + .../data/features/input-pattern.js | 1 + .../data/features/input-placeholder.js | 1 + .../caniuse-lite/data/features/input-range.js | 1 + .../data/features/input-search.js | 1 + .../data/features/input-selection.js | 1 + .../data/features/insert-adjacent.js | 1 + .../data/features/insertadjacenthtml.js | 1 + .../data/features/internationalization.js | 1 + .../data/features/intersectionobserver-v2.js | 1 + .../data/features/intersectionobserver.js | 1 + .../data/features/intl-pluralrules.js | 1 + .../data/features/intrinsic-width.js | 1 + .../caniuse-lite/data/features/jpeg2000.js | 1 + .../caniuse-lite/data/features/jpegxl.js | 1 + .../caniuse-lite/data/features/jpegxr.js | 1 + .../data/features/js-regexp-lookbehind.js | 1 + .../caniuse-lite/data/features/json.js | 1 + .../features/justify-content-space-evenly.js | 1 + .../data/features/kerning-pairs-ligatures.js | 1 + .../data/features/keyboardevent-charcode.js | 1 + .../data/features/keyboardevent-code.js | 1 + .../keyboardevent-getmodifierstate.js | 1 + .../data/features/keyboardevent-key.js | 1 + .../data/features/keyboardevent-location.js | 1 + .../data/features/keyboardevent-which.js | 1 + .../caniuse-lite/data/features/lazyload.js | 1 + .../caniuse-lite/data/features/let.js | 1 + .../data/features/link-icon-png.js | 1 + .../data/features/link-icon-svg.js | 1 + .../data/features/link-rel-dns-prefetch.js | 1 + .../data/features/link-rel-modulepreload.js | 1 + .../data/features/link-rel-preconnect.js | 1 + .../data/features/link-rel-prefetch.js | 1 + .../data/features/link-rel-preload.js | 1 + .../data/features/link-rel-prerender.js | 1 + .../data/features/loading-lazy-attr.js | 1 + .../data/features/loading-lazy-media.js | 1 + .../data/features/localecompare.js | 1 + .../data/features/magnetometer.js | 1 + .../data/features/matchesselector.js | 1 + .../caniuse-lite/data/features/matchmedia.js | 1 + .../caniuse-lite/data/features/mathml.js | 1 + .../caniuse-lite/data/features/maxlength.js | 1 + .../mdn-css-backdrop-pseudo-element.js | 1 + .../mdn-css-unicode-bidi-isolate-override.js | 1 + .../features/mdn-css-unicode-bidi-isolate.js | 1 + .../mdn-css-unicode-bidi-plaintext.js | 1 + .../features/mdn-text-decoration-color.js | 1 + .../data/features/mdn-text-decoration-line.js | 1 + .../features/mdn-text-decoration-shorthand.js | 1 + .../features/mdn-text-decoration-style.js | 1 + .../data/features/media-fragments.js | 1 + .../data/features/mediacapture-fromelement.js | 1 + .../data/features/mediarecorder.js | 1 + .../caniuse-lite/data/features/mediasource.js | 1 + .../caniuse-lite/data/features/menu.js | 1 + .../data/features/meta-theme-color.js | 1 + .../caniuse-lite/data/features/meter.js | 1 + .../caniuse-lite/data/features/midi.js | 1 + .../caniuse-lite/data/features/minmaxwh.js | 1 + .../caniuse-lite/data/features/mp3.js | 1 + .../caniuse-lite/data/features/mpeg-dash.js | 1 + .../caniuse-lite/data/features/mpeg4.js | 1 + .../data/features/multibackgrounds.js | 1 + .../caniuse-lite/data/features/multicolumn.js | 1 + .../data/features/mutation-events.js | 1 + .../data/features/mutationobserver.js | 1 + .../data/features/namevalue-storage.js | 1 + .../data/features/native-filesystem-api.js | 1 + .../caniuse-lite/data/features/nav-timing.js | 1 + .../caniuse-lite/data/features/netinfo.js | 1 + .../data/features/notifications.js | 1 + .../data/features/object-entries.js | 1 + .../caniuse-lite/data/features/object-fit.js | 1 + .../data/features/object-observe.js | 1 + .../data/features/object-values.js | 1 + .../caniuse-lite/data/features/objectrtc.js | 1 + .../data/features/offline-apps.js | 1 + .../data/features/offscreencanvas.js | 1 + .../caniuse-lite/data/features/ogg-vorbis.js | 1 + .../caniuse-lite/data/features/ogv.js | 1 + .../caniuse-lite/data/features/ol-reversed.js | 1 + .../data/features/once-event-listener.js | 1 + .../data/features/online-status.js | 1 + .../caniuse-lite/data/features/opus.js | 1 + .../data/features/orientation-sensor.js | 1 + .../caniuse-lite/data/features/outline.js | 1 + .../data/features/pad-start-end.js | 1 + .../data/features/page-transition-events.js | 1 + .../data/features/pagevisibility.js | 1 + .../data/features/passive-event-listener.js | 1 + .../caniuse-lite/data/features/passkeys.js | 1 + .../data/features/passwordrules.js | 1 + .../caniuse-lite/data/features/path2d.js | 1 + .../data/features/payment-request.js | 1 + .../caniuse-lite/data/features/pdf-viewer.js | 1 + .../data/features/permissions-api.js | 1 + .../data/features/permissions-policy.js | 1 + .../data/features/picture-in-picture.js | 1 + .../caniuse-lite/data/features/picture.js | 1 + .../caniuse-lite/data/features/ping.js | 1 + .../caniuse-lite/data/features/png-alpha.js | 1 + .../data/features/pointer-events.js | 1 + .../caniuse-lite/data/features/pointer.js | 1 + .../caniuse-lite/data/features/pointerlock.js | 1 + .../caniuse-lite/data/features/portals.js | 1 + .../data/features/prefers-color-scheme.js | 1 + .../data/features/prefers-reduced-motion.js | 1 + .../caniuse-lite/data/features/progress.js | 1 + .../data/features/promise-finally.js | 1 + .../caniuse-lite/data/features/promises.js | 1 + .../caniuse-lite/data/features/proximity.js | 1 + .../caniuse-lite/data/features/proxy.js | 1 + .../data/features/publickeypinning.js | 1 + .../caniuse-lite/data/features/push-api.js | 1 + .../data/features/queryselector.js | 1 + .../data/features/readonly-attr.js | 1 + .../data/features/referrer-policy.js | 1 + .../data/features/registerprotocolhandler.js | 1 + .../data/features/rel-noopener.js | 1 + .../data/features/rel-noreferrer.js | 1 + .../caniuse-lite/data/features/rellist.js | 1 + .../caniuse-lite/data/features/rem.js | 1 + .../data/features/requestanimationframe.js | 1 + .../data/features/requestidlecallback.js | 1 + .../data/features/resizeobserver.js | 1 + .../data/features/resource-timing.js | 1 + .../data/features/rest-parameters.js | 1 + .../data/features/rtcpeerconnection.js | 1 + .../caniuse-lite/data/features/ruby.js | 1 + .../caniuse-lite/data/features/run-in.js | 1 + .../features/same-site-cookie-attribute.js | 1 + .../data/features/screen-orientation.js | 1 + .../data/features/script-async.js | 1 + .../data/features/script-defer.js | 1 + .../data/features/scrollintoview.js | 1 + .../data/features/scrollintoviewifneeded.js | 1 + .../caniuse-lite/data/features/sdch.js | 1 + .../data/features/selection-api.js | 1 + .../data/features/server-timing.js | 1 + .../data/features/serviceworkers.js | 1 + .../data/features/setimmediate.js | 1 + .../caniuse-lite/data/features/shadowdom.js | 1 + .../caniuse-lite/data/features/shadowdomv1.js | 1 + .../data/features/sharedarraybuffer.js | 1 + .../data/features/sharedworkers.js | 1 + .../caniuse-lite/data/features/sni.js | 1 + .../caniuse-lite/data/features/spdy.js | 1 + .../data/features/speech-recognition.js | 1 + .../data/features/speech-synthesis.js | 1 + .../data/features/spellcheck-attribute.js | 1 + .../caniuse-lite/data/features/sql-storage.js | 1 + .../caniuse-lite/data/features/srcset.js | 1 + .../caniuse-lite/data/features/stream.js | 1 + .../caniuse-lite/data/features/streams.js | 1 + .../data/features/stricttransportsecurity.js | 1 + .../data/features/style-scoped.js | 1 + .../data/features/subresource-bundling.js | 1 + .../data/features/subresource-integrity.js | 1 + .../caniuse-lite/data/features/svg-css.js | 1 + .../caniuse-lite/data/features/svg-filters.js | 1 + .../caniuse-lite/data/features/svg-fonts.js | 1 + .../data/features/svg-fragment.js | 1 + .../caniuse-lite/data/features/svg-html.js | 1 + .../caniuse-lite/data/features/svg-html5.js | 1 + .../caniuse-lite/data/features/svg-img.js | 1 + .../caniuse-lite/data/features/svg-smil.js | 1 + .../caniuse-lite/data/features/svg.js | 1 + .../caniuse-lite/data/features/sxg.js | 1 + .../data/features/tabindex-attr.js | 1 + .../data/features/template-literals.js | 1 + .../caniuse-lite/data/features/template.js | 1 + .../caniuse-lite/data/features/temporal.js | 1 + .../caniuse-lite/data/features/testfeat.js | 1 + .../data/features/text-decoration.js | 1 + .../data/features/text-emphasis.js | 1 + .../data/features/text-overflow.js | 1 + .../data/features/text-size-adjust.js | 1 + .../caniuse-lite/data/features/text-stroke.js | 1 + .../caniuse-lite/data/features/textcontent.js | 1 + .../caniuse-lite/data/features/textencoder.js | 1 + .../caniuse-lite/data/features/tls1-1.js | 1 + .../caniuse-lite/data/features/tls1-2.js | 1 + .../caniuse-lite/data/features/tls1-3.js | 1 + .../caniuse-lite/data/features/touch.js | 1 + .../data/features/transforms2d.js | 1 + .../data/features/transforms3d.js | 1 + .../data/features/trusted-types.js | 1 + .../caniuse-lite/data/features/ttf.js | 1 + .../caniuse-lite/data/features/typedarrays.js | 1 + .../caniuse-lite/data/features/u2f.js | 1 + .../data/features/unhandledrejection.js | 1 + .../data/features/upgradeinsecurerequests.js | 1 + .../features/url-scroll-to-text-fragment.js | 1 + .../caniuse-lite/data/features/url.js | 1 + .../data/features/urlsearchparams.js | 1 + .../caniuse-lite/data/features/use-strict.js | 1 + .../data/features/user-select-none.js | 1 + .../caniuse-lite/data/features/user-timing.js | 1 + .../data/features/variable-fonts.js | 1 + .../data/features/vector-effect.js | 1 + .../caniuse-lite/data/features/vibration.js | 1 + .../caniuse-lite/data/features/video.js | 1 + .../caniuse-lite/data/features/videotracks.js | 1 + .../data/features/view-transitions.js | 1 + .../data/features/viewport-unit-variants.js | 1 + .../data/features/viewport-units.js | 1 + .../caniuse-lite/data/features/wai-aria.js | 1 + .../caniuse-lite/data/features/wake-lock.js | 1 + .../caniuse-lite/data/features/wasm-bigint.js | 1 + .../data/features/wasm-bulk-memory.js | 1 + .../data/features/wasm-extended-const.js | 1 + .../caniuse-lite/data/features/wasm-gc.js | 1 + .../data/features/wasm-multi-memory.js | 1 + .../data/features/wasm-multi-value.js | 1 + .../data/features/wasm-mutable-globals.js | 1 + .../data/features/wasm-nontrapping-fptoint.js | 1 + .../data/features/wasm-reference-types.js | 1 + .../data/features/wasm-relaxed-simd.js | 1 + .../data/features/wasm-signext.js | 1 + .../caniuse-lite/data/features/wasm-simd.js | 1 + .../data/features/wasm-tail-calls.js | 1 + .../data/features/wasm-threads.js | 1 + .../caniuse-lite/data/features/wasm.js | 1 + .../caniuse-lite/data/features/wav.js | 1 + .../caniuse-lite/data/features/wbr-element.js | 1 + .../data/features/web-animation.js | 1 + .../data/features/web-app-manifest.js | 1 + .../data/features/web-bluetooth.js | 1 + .../caniuse-lite/data/features/web-serial.js | 1 + .../caniuse-lite/data/features/web-share.js | 1 + .../caniuse-lite/data/features/webauthn.js | 1 + .../caniuse-lite/data/features/webcodecs.js | 1 + .../caniuse-lite/data/features/webgl.js | 1 + .../caniuse-lite/data/features/webgl2.js | 1 + .../caniuse-lite/data/features/webgpu.js | 1 + .../caniuse-lite/data/features/webhid.js | 1 + .../data/features/webkit-user-drag.js | 1 + .../caniuse-lite/data/features/webm.js | 1 + .../caniuse-lite/data/features/webnfc.js | 1 + .../caniuse-lite/data/features/webp.js | 1 + .../caniuse-lite/data/features/websockets.js | 1 + .../data/features/webtransport.js | 1 + .../caniuse-lite/data/features/webusb.js | 1 + .../caniuse-lite/data/features/webvr.js | 1 + .../caniuse-lite/data/features/webvtt.js | 1 + .../caniuse-lite/data/features/webworkers.js | 1 + .../caniuse-lite/data/features/webxr.js | 1 + .../caniuse-lite/data/features/will-change.js | 1 + .../caniuse-lite/data/features/woff.js | 1 + .../caniuse-lite/data/features/woff2.js | 1 + .../caniuse-lite/data/features/word-break.js | 1 + .../caniuse-lite/data/features/wordwrap.js | 1 + .../data/features/x-doc-messaging.js | 1 + .../data/features/x-frame-options.js | 1 + .../caniuse-lite/data/features/xhr2.js | 1 + .../caniuse-lite/data/features/xhtml.js | 1 + .../caniuse-lite/data/features/xhtmlsmil.js | 1 + .../data/features/xml-serializer.js | 1 + .../caniuse-lite/data/features/zstd.js | 1 + node_modules/caniuse-lite/data/regions/AD.js | 1 + node_modules/caniuse-lite/data/regions/AE.js | 1 + node_modules/caniuse-lite/data/regions/AF.js | 1 + node_modules/caniuse-lite/data/regions/AG.js | 1 + node_modules/caniuse-lite/data/regions/AI.js | 1 + node_modules/caniuse-lite/data/regions/AL.js | 1 + node_modules/caniuse-lite/data/regions/AM.js | 1 + node_modules/caniuse-lite/data/regions/AO.js | 1 + node_modules/caniuse-lite/data/regions/AR.js | 1 + node_modules/caniuse-lite/data/regions/AS.js | 1 + node_modules/caniuse-lite/data/regions/AT.js | 1 + node_modules/caniuse-lite/data/regions/AU.js | 1 + node_modules/caniuse-lite/data/regions/AW.js | 1 + node_modules/caniuse-lite/data/regions/AX.js | 1 + node_modules/caniuse-lite/data/regions/AZ.js | 1 + node_modules/caniuse-lite/data/regions/BA.js | 1 + node_modules/caniuse-lite/data/regions/BB.js | 1 + node_modules/caniuse-lite/data/regions/BD.js | 1 + node_modules/caniuse-lite/data/regions/BE.js | 1 + node_modules/caniuse-lite/data/regions/BF.js | 1 + node_modules/caniuse-lite/data/regions/BG.js | 1 + node_modules/caniuse-lite/data/regions/BH.js | 1 + node_modules/caniuse-lite/data/regions/BI.js | 1 + node_modules/caniuse-lite/data/regions/BJ.js | 1 + node_modules/caniuse-lite/data/regions/BM.js | 1 + node_modules/caniuse-lite/data/regions/BN.js | 1 + node_modules/caniuse-lite/data/regions/BO.js | 1 + node_modules/caniuse-lite/data/regions/BR.js | 1 + node_modules/caniuse-lite/data/regions/BS.js | 1 + node_modules/caniuse-lite/data/regions/BT.js | 1 + node_modules/caniuse-lite/data/regions/BW.js | 1 + node_modules/caniuse-lite/data/regions/BY.js | 1 + node_modules/caniuse-lite/data/regions/BZ.js | 1 + node_modules/caniuse-lite/data/regions/CA.js | 1 + node_modules/caniuse-lite/data/regions/CD.js | 1 + node_modules/caniuse-lite/data/regions/CF.js | 1 + node_modules/caniuse-lite/data/regions/CG.js | 1 + node_modules/caniuse-lite/data/regions/CH.js | 1 + node_modules/caniuse-lite/data/regions/CI.js | 1 + node_modules/caniuse-lite/data/regions/CK.js | 1 + node_modules/caniuse-lite/data/regions/CL.js | 1 + node_modules/caniuse-lite/data/regions/CM.js | 1 + node_modules/caniuse-lite/data/regions/CN.js | 1 + node_modules/caniuse-lite/data/regions/CO.js | 1 + node_modules/caniuse-lite/data/regions/CR.js | 1 + node_modules/caniuse-lite/data/regions/CU.js | 1 + node_modules/caniuse-lite/data/regions/CV.js | 1 + node_modules/caniuse-lite/data/regions/CX.js | 1 + node_modules/caniuse-lite/data/regions/CY.js | 1 + node_modules/caniuse-lite/data/regions/CZ.js | 1 + node_modules/caniuse-lite/data/regions/DE.js | 1 + node_modules/caniuse-lite/data/regions/DJ.js | 1 + node_modules/caniuse-lite/data/regions/DK.js | 1 + node_modules/caniuse-lite/data/regions/DM.js | 1 + node_modules/caniuse-lite/data/regions/DO.js | 1 + node_modules/caniuse-lite/data/regions/DZ.js | 1 + node_modules/caniuse-lite/data/regions/EC.js | 1 + node_modules/caniuse-lite/data/regions/EE.js | 1 + node_modules/caniuse-lite/data/regions/EG.js | 1 + node_modules/caniuse-lite/data/regions/ER.js | 1 + node_modules/caniuse-lite/data/regions/ES.js | 1 + node_modules/caniuse-lite/data/regions/ET.js | 1 + node_modules/caniuse-lite/data/regions/FI.js | 1 + node_modules/caniuse-lite/data/regions/FJ.js | 1 + node_modules/caniuse-lite/data/regions/FK.js | 1 + node_modules/caniuse-lite/data/regions/FM.js | 1 + node_modules/caniuse-lite/data/regions/FO.js | 1 + node_modules/caniuse-lite/data/regions/FR.js | 1 + node_modules/caniuse-lite/data/regions/GA.js | 1 + node_modules/caniuse-lite/data/regions/GB.js | 1 + node_modules/caniuse-lite/data/regions/GD.js | 1 + node_modules/caniuse-lite/data/regions/GE.js | 1 + node_modules/caniuse-lite/data/regions/GF.js | 1 + node_modules/caniuse-lite/data/regions/GG.js | 1 + node_modules/caniuse-lite/data/regions/GH.js | 1 + node_modules/caniuse-lite/data/regions/GI.js | 1 + node_modules/caniuse-lite/data/regions/GL.js | 1 + node_modules/caniuse-lite/data/regions/GM.js | 1 + node_modules/caniuse-lite/data/regions/GN.js | 1 + node_modules/caniuse-lite/data/regions/GP.js | 1 + node_modules/caniuse-lite/data/regions/GQ.js | 1 + node_modules/caniuse-lite/data/regions/GR.js | 1 + node_modules/caniuse-lite/data/regions/GT.js | 1 + node_modules/caniuse-lite/data/regions/GU.js | 1 + node_modules/caniuse-lite/data/regions/GW.js | 1 + node_modules/caniuse-lite/data/regions/GY.js | 1 + node_modules/caniuse-lite/data/regions/HK.js | 1 + node_modules/caniuse-lite/data/regions/HN.js | 1 + node_modules/caniuse-lite/data/regions/HR.js | 1 + node_modules/caniuse-lite/data/regions/HT.js | 1 + node_modules/caniuse-lite/data/regions/HU.js | 1 + node_modules/caniuse-lite/data/regions/ID.js | 1 + node_modules/caniuse-lite/data/regions/IE.js | 1 + node_modules/caniuse-lite/data/regions/IL.js | 1 + node_modules/caniuse-lite/data/regions/IM.js | 1 + node_modules/caniuse-lite/data/regions/IN.js | 1 + node_modules/caniuse-lite/data/regions/IQ.js | 1 + node_modules/caniuse-lite/data/regions/IR.js | 1 + node_modules/caniuse-lite/data/regions/IS.js | 1 + node_modules/caniuse-lite/data/regions/IT.js | 1 + node_modules/caniuse-lite/data/regions/JE.js | 1 + node_modules/caniuse-lite/data/regions/JM.js | 1 + node_modules/caniuse-lite/data/regions/JO.js | 1 + node_modules/caniuse-lite/data/regions/JP.js | 1 + node_modules/caniuse-lite/data/regions/KE.js | 1 + node_modules/caniuse-lite/data/regions/KG.js | 1 + node_modules/caniuse-lite/data/regions/KH.js | 1 + node_modules/caniuse-lite/data/regions/KI.js | 1 + node_modules/caniuse-lite/data/regions/KM.js | 1 + node_modules/caniuse-lite/data/regions/KN.js | 1 + node_modules/caniuse-lite/data/regions/KP.js | 1 + node_modules/caniuse-lite/data/regions/KR.js | 1 + node_modules/caniuse-lite/data/regions/KW.js | 1 + node_modules/caniuse-lite/data/regions/KY.js | 1 + node_modules/caniuse-lite/data/regions/KZ.js | 1 + node_modules/caniuse-lite/data/regions/LA.js | 1 + node_modules/caniuse-lite/data/regions/LB.js | 1 + node_modules/caniuse-lite/data/regions/LC.js | 1 + node_modules/caniuse-lite/data/regions/LI.js | 1 + node_modules/caniuse-lite/data/regions/LK.js | 1 + node_modules/caniuse-lite/data/regions/LR.js | 1 + node_modules/caniuse-lite/data/regions/LS.js | 1 + node_modules/caniuse-lite/data/regions/LT.js | 1 + node_modules/caniuse-lite/data/regions/LU.js | 1 + node_modules/caniuse-lite/data/regions/LV.js | 1 + node_modules/caniuse-lite/data/regions/LY.js | 1 + node_modules/caniuse-lite/data/regions/MA.js | 1 + node_modules/caniuse-lite/data/regions/MC.js | 1 + node_modules/caniuse-lite/data/regions/MD.js | 1 + node_modules/caniuse-lite/data/regions/ME.js | 1 + node_modules/caniuse-lite/data/regions/MG.js | 1 + node_modules/caniuse-lite/data/regions/MH.js | 1 + node_modules/caniuse-lite/data/regions/MK.js | 1 + node_modules/caniuse-lite/data/regions/ML.js | 1 + node_modules/caniuse-lite/data/regions/MM.js | 1 + node_modules/caniuse-lite/data/regions/MN.js | 1 + node_modules/caniuse-lite/data/regions/MO.js | 1 + node_modules/caniuse-lite/data/regions/MP.js | 1 + node_modules/caniuse-lite/data/regions/MQ.js | 1 + node_modules/caniuse-lite/data/regions/MR.js | 1 + node_modules/caniuse-lite/data/regions/MS.js | 1 + node_modules/caniuse-lite/data/regions/MT.js | 1 + node_modules/caniuse-lite/data/regions/MU.js | 1 + node_modules/caniuse-lite/data/regions/MV.js | 1 + node_modules/caniuse-lite/data/regions/MW.js | 1 + node_modules/caniuse-lite/data/regions/MX.js | 1 + node_modules/caniuse-lite/data/regions/MY.js | 1 + node_modules/caniuse-lite/data/regions/MZ.js | 1 + node_modules/caniuse-lite/data/regions/NA.js | 1 + node_modules/caniuse-lite/data/regions/NC.js | 1 + node_modules/caniuse-lite/data/regions/NE.js | 1 + node_modules/caniuse-lite/data/regions/NF.js | 1 + node_modules/caniuse-lite/data/regions/NG.js | 1 + node_modules/caniuse-lite/data/regions/NI.js | 1 + node_modules/caniuse-lite/data/regions/NL.js | 1 + node_modules/caniuse-lite/data/regions/NO.js | 1 + node_modules/caniuse-lite/data/regions/NP.js | 1 + node_modules/caniuse-lite/data/regions/NR.js | 1 + node_modules/caniuse-lite/data/regions/NU.js | 1 + node_modules/caniuse-lite/data/regions/NZ.js | 1 + node_modules/caniuse-lite/data/regions/OM.js | 1 + node_modules/caniuse-lite/data/regions/PA.js | 1 + node_modules/caniuse-lite/data/regions/PE.js | 1 + node_modules/caniuse-lite/data/regions/PF.js | 1 + node_modules/caniuse-lite/data/regions/PG.js | 1 + node_modules/caniuse-lite/data/regions/PH.js | 1 + node_modules/caniuse-lite/data/regions/PK.js | 1 + node_modules/caniuse-lite/data/regions/PL.js | 1 + node_modules/caniuse-lite/data/regions/PM.js | 1 + node_modules/caniuse-lite/data/regions/PN.js | 1 + node_modules/caniuse-lite/data/regions/PR.js | 1 + node_modules/caniuse-lite/data/regions/PS.js | 1 + node_modules/caniuse-lite/data/regions/PT.js | 1 + node_modules/caniuse-lite/data/regions/PW.js | 1 + node_modules/caniuse-lite/data/regions/PY.js | 1 + node_modules/caniuse-lite/data/regions/QA.js | 1 + node_modules/caniuse-lite/data/regions/RE.js | 1 + node_modules/caniuse-lite/data/regions/RO.js | 1 + node_modules/caniuse-lite/data/regions/RS.js | 1 + node_modules/caniuse-lite/data/regions/RU.js | 1 + node_modules/caniuse-lite/data/regions/RW.js | 1 + node_modules/caniuse-lite/data/regions/SA.js | 1 + node_modules/caniuse-lite/data/regions/SB.js | 1 + node_modules/caniuse-lite/data/regions/SC.js | 1 + node_modules/caniuse-lite/data/regions/SD.js | 1 + node_modules/caniuse-lite/data/regions/SE.js | 1 + node_modules/caniuse-lite/data/regions/SG.js | 1 + node_modules/caniuse-lite/data/regions/SH.js | 1 + node_modules/caniuse-lite/data/regions/SI.js | 1 + node_modules/caniuse-lite/data/regions/SK.js | 1 + node_modules/caniuse-lite/data/regions/SL.js | 1 + node_modules/caniuse-lite/data/regions/SM.js | 1 + node_modules/caniuse-lite/data/regions/SN.js | 1 + node_modules/caniuse-lite/data/regions/SO.js | 1 + node_modules/caniuse-lite/data/regions/SR.js | 1 + node_modules/caniuse-lite/data/regions/ST.js | 1 + node_modules/caniuse-lite/data/regions/SV.js | 1 + node_modules/caniuse-lite/data/regions/SY.js | 1 + node_modules/caniuse-lite/data/regions/SZ.js | 1 + node_modules/caniuse-lite/data/regions/TC.js | 1 + node_modules/caniuse-lite/data/regions/TD.js | 1 + node_modules/caniuse-lite/data/regions/TG.js | 1 + node_modules/caniuse-lite/data/regions/TH.js | 1 + node_modules/caniuse-lite/data/regions/TJ.js | 1 + node_modules/caniuse-lite/data/regions/TL.js | 1 + node_modules/caniuse-lite/data/regions/TM.js | 1 + node_modules/caniuse-lite/data/regions/TN.js | 1 + node_modules/caniuse-lite/data/regions/TO.js | 1 + node_modules/caniuse-lite/data/regions/TR.js | 1 + node_modules/caniuse-lite/data/regions/TT.js | 1 + node_modules/caniuse-lite/data/regions/TV.js | 1 + node_modules/caniuse-lite/data/regions/TW.js | 1 + node_modules/caniuse-lite/data/regions/TZ.js | 1 + node_modules/caniuse-lite/data/regions/UA.js | 1 + node_modules/caniuse-lite/data/regions/UG.js | 1 + node_modules/caniuse-lite/data/regions/US.js | 1 + node_modules/caniuse-lite/data/regions/UY.js | 1 + node_modules/caniuse-lite/data/regions/UZ.js | 1 + node_modules/caniuse-lite/data/regions/VA.js | 1 + node_modules/caniuse-lite/data/regions/VC.js | 1 + node_modules/caniuse-lite/data/regions/VE.js | 1 + node_modules/caniuse-lite/data/regions/VG.js | 1 + node_modules/caniuse-lite/data/regions/VI.js | 1 + node_modules/caniuse-lite/data/regions/VN.js | 1 + node_modules/caniuse-lite/data/regions/VU.js | 1 + node_modules/caniuse-lite/data/regions/WF.js | 1 + node_modules/caniuse-lite/data/regions/WS.js | 1 + node_modules/caniuse-lite/data/regions/YE.js | 1 + node_modules/caniuse-lite/data/regions/YT.js | 1 + node_modules/caniuse-lite/data/regions/ZA.js | 1 + node_modules/caniuse-lite/data/regions/ZM.js | 1 + node_modules/caniuse-lite/data/regions/ZW.js | 1 + .../caniuse-lite/data/regions/alt-af.js | 1 + .../caniuse-lite/data/regions/alt-an.js | 1 + .../caniuse-lite/data/regions/alt-as.js | 1 + .../caniuse-lite/data/regions/alt-eu.js | 1 + .../caniuse-lite/data/regions/alt-na.js | 1 + .../caniuse-lite/data/regions/alt-oc.js | 1 + .../caniuse-lite/data/regions/alt-sa.js | 1 + .../caniuse-lite/data/regions/alt-ww.js | 1 + .../caniuse-lite/dist/lib/statuses.js | 9 + .../caniuse-lite/dist/lib/supported.js | 9 + .../caniuse-lite/dist/unpacker/agents.js | 47 + .../dist/unpacker/browserVersions.js | 1 + .../caniuse-lite/dist/unpacker/browsers.js | 1 + .../caniuse-lite/dist/unpacker/feature.js | 52 + .../caniuse-lite/dist/unpacker/features.js | 6 + .../caniuse-lite/dist/unpacker/index.js | 4 + .../caniuse-lite/dist/unpacker/region.js | 22 + node_modules/caniuse-lite/package.json | 34 + node_modules/convert-source-map/LICENSE | 23 + node_modules/convert-source-map/README.md | 206 + node_modules/convert-source-map/index.js | 233 + node_modules/convert-source-map/package.json | 38 + node_modules/debug/LICENSE | 20 + node_modules/debug/README.md | 481 + node_modules/debug/package.json | 64 + node_modules/debug/src/browser.js | 272 + node_modules/debug/src/common.js | 292 + node_modules/debug/src/index.js | 10 + node_modules/debug/src/node.js | 263 + node_modules/electron-to-chromium/LICENSE | 5 + node_modules/electron-to-chromium/README.md | 186 + .../electron-to-chromium/chromium-versions.js | 87 + .../chromium-versions.json | 1 + .../full-chromium-versions.js | 2753 + .../full-chromium-versions.json | 1 + .../electron-to-chromium/full-versions.js | 1751 + .../electron-to-chromium/full-versions.json | 1 + node_modules/electron-to-chromium/index.js | 36 + .../electron-to-chromium/package.json | 43 + node_modules/electron-to-chromium/versions.js | 242 + .../electron-to-chromium/versions.json | 1 + node_modules/esbuild/LICENSE.md | 21 + node_modules/esbuild/README.md | 3 + node_modules/esbuild/bin/esbuild | Bin 0 -> 8978432 bytes node_modules/esbuild/install.js | 285 + node_modules/esbuild/lib/main.d.ts | 705 + node_modules/esbuild/lib/main.js | 2239 + node_modules/esbuild/package.json | 46 + node_modules/escalade/dist/index.js | 22 + node_modules/escalade/dist/index.mjs | 22 + node_modules/escalade/index.d.mts | 11 + node_modules/escalade/index.d.ts | 15 + node_modules/escalade/license | 9 + node_modules/escalade/package.json | 74 + node_modules/escalade/readme.md | 211 + node_modules/escalade/sync/index.d.mts | 9 + node_modules/escalade/sync/index.d.ts | 13 + node_modules/escalade/sync/index.js | 18 + node_modules/escalade/sync/index.mjs | 18 + node_modules/gensync/LICENSE | 7 + node_modules/gensync/README.md | 196 + node_modules/gensync/index.js | 373 + node_modules/gensync/index.js.flow | 32 + node_modules/gensync/package.json | 37 + node_modules/gensync/test/.babelrc | 5 + node_modules/gensync/test/index.test.js | 489 + node_modules/js-tokens/CHANGELOG.md | 151 + node_modules/js-tokens/LICENSE | 21 + node_modules/js-tokens/README.md | 240 + node_modules/js-tokens/index.js | 23 + node_modules/js-tokens/package.json | 30 + node_modules/jsesc/LICENSE-MIT.txt | 20 + node_modules/jsesc/README.md | 422 + node_modules/jsesc/bin/jsesc | 148 + node_modules/jsesc/jsesc.js | 337 + node_modules/jsesc/man/jsesc.1 | 94 + node_modules/jsesc/package.json | 56 + node_modules/json5/LICENSE.md | 23 + node_modules/json5/README.md | 282 + node_modules/json5/dist/index.js | 1737 + node_modules/json5/dist/index.min.js | 1 + node_modules/json5/dist/index.min.mjs | 1 + node_modules/json5/dist/index.mjs | 1426 + node_modules/json5/lib/cli.js | 152 + node_modules/json5/lib/index.d.ts | 4 + node_modules/json5/lib/index.js | 9 + node_modules/json5/lib/parse.d.ts | 15 + node_modules/json5/lib/parse.js | 1114 + node_modules/json5/lib/register.js | 13 + node_modules/json5/lib/require.js | 4 + node_modules/json5/lib/stringify.d.ts | 89 + node_modules/json5/lib/stringify.js | 261 + node_modules/json5/lib/unicode.d.ts | 3 + node_modules/json5/lib/unicode.js | 4 + node_modules/json5/lib/util.d.ts | 5 + node_modules/json5/lib/util.js | 35 + node_modules/json5/package.json | 72 + node_modules/loose-envify/LICENSE | 21 + node_modules/loose-envify/README.md | 45 + node_modules/loose-envify/cli.js | 16 + node_modules/loose-envify/custom.js | 4 + node_modules/loose-envify/index.js | 3 + node_modules/loose-envify/loose-envify.js | 36 + node_modules/loose-envify/package.json | 36 + node_modules/loose-envify/replace.js | 65 + node_modules/lru-cache/LICENSE | 15 + node_modules/lru-cache/README.md | 166 + node_modules/lru-cache/index.js | 334 + node_modules/lru-cache/package.json | 32 + node_modules/ms/index.js | 162 + node_modules/ms/license.md | 21 + node_modules/ms/package.json | 38 + node_modules/ms/readme.md | 59 + node_modules/nanoid/LICENSE | 20 + node_modules/nanoid/README.md | 39 + node_modules/nanoid/async/index.browser.cjs | 69 + node_modules/nanoid/async/index.browser.js | 34 + node_modules/nanoid/async/index.cjs | 71 + node_modules/nanoid/async/index.d.ts | 56 + node_modules/nanoid/async/index.js | 35 + node_modules/nanoid/async/index.native.js | 26 + node_modules/nanoid/async/package.json | 12 + node_modules/nanoid/bin/nanoid.cjs | 55 + node_modules/nanoid/index.browser.cjs | 72 + node_modules/nanoid/index.browser.js | 34 + node_modules/nanoid/index.cjs | 85 + node_modules/nanoid/index.d.cts | 91 + node_modules/nanoid/index.d.ts | 91 + node_modules/nanoid/index.js | 45 + node_modules/nanoid/nanoid.js | 1 + node_modules/nanoid/non-secure/index.cjs | 34 + node_modules/nanoid/non-secure/index.d.ts | 33 + node_modules/nanoid/non-secure/index.js | 21 + node_modules/nanoid/non-secure/package.json | 6 + node_modules/nanoid/package.json | 89 + node_modules/nanoid/url-alphabet/index.cjs | 7 + node_modules/nanoid/url-alphabet/index.js | 3 + node_modules/nanoid/url-alphabet/package.json | 6 + node_modules/node-releases/LICENSE | 21 + node_modules/node-releases/README.md | 12 + .../node-releases/data/processed/envs.json | 1 + .../release-schedule/release-schedule.json | 1 + node_modules/node-releases/package.json | 22 + node_modules/picocolors/LICENSE | 15 + node_modules/picocolors/README.md | 21 + node_modules/picocolors/package.json | 25 + node_modules/picocolors/picocolors.browser.js | 4 + node_modules/picocolors/picocolors.d.ts | 5 + node_modules/picocolors/picocolors.js | 75 + node_modules/picocolors/types.d.ts | 51 + node_modules/postcss/LICENSE | 20 + node_modules/postcss/README.md | 29 + node_modules/postcss/lib/at-rule.d.ts | 140 + node_modules/postcss/lib/at-rule.js | 25 + node_modules/postcss/lib/comment.d.ts | 68 + node_modules/postcss/lib/comment.js | 13 + node_modules/postcss/lib/container.d.ts | 483 + node_modules/postcss/lib/container.js | 447 + .../postcss/lib/css-syntax-error.d.ts | 248 + node_modules/postcss/lib/css-syntax-error.js | 133 + node_modules/postcss/lib/declaration.d.ts | 151 + node_modules/postcss/lib/declaration.js | 24 + node_modules/postcss/lib/document.d.ts | 69 + node_modules/postcss/lib/document.js | 33 + node_modules/postcss/lib/fromJSON.d.ts | 9 + node_modules/postcss/lib/fromJSON.js | 54 + node_modules/postcss/lib/input.d.ts | 227 + node_modules/postcss/lib/input.js | 265 + node_modules/postcss/lib/lazy-result.d.ts | 190 + node_modules/postcss/lib/lazy-result.js | 550 + node_modules/postcss/lib/list.d.ts | 60 + node_modules/postcss/lib/list.js | 58 + node_modules/postcss/lib/map-generator.js | 376 + node_modules/postcss/lib/no-work-result.d.ts | 46 + node_modules/postcss/lib/no-work-result.js | 137 + node_modules/postcss/lib/node.d.ts | 556 + node_modules/postcss/lib/node.js | 449 + node_modules/postcss/lib/parse.d.ts | 9 + node_modules/postcss/lib/parse.js | 42 + node_modules/postcss/lib/parser.js | 611 + node_modules/postcss/lib/postcss.d.mts | 69 + node_modules/postcss/lib/postcss.d.ts | 458 + node_modules/postcss/lib/postcss.js | 101 + node_modules/postcss/lib/postcss.mjs | 30 + node_modules/postcss/lib/previous-map.d.ts | 81 + node_modules/postcss/lib/previous-map.js | 144 + node_modules/postcss/lib/processor.d.ts | 115 + node_modules/postcss/lib/processor.js | 67 + node_modules/postcss/lib/result.d.ts | 205 + node_modules/postcss/lib/result.js | 42 + node_modules/postcss/lib/root.d.ts | 87 + node_modules/postcss/lib/root.js | 61 + node_modules/postcss/lib/rule.d.ts | 126 + node_modules/postcss/lib/rule.js | 27 + node_modules/postcss/lib/stringifier.d.ts | 46 + node_modules/postcss/lib/stringifier.js | 353 + node_modules/postcss/lib/stringify.d.ts | 9 + node_modules/postcss/lib/stringify.js | 11 + node_modules/postcss/lib/symbols.js | 5 + .../postcss/lib/terminal-highlight.js | 70 + node_modules/postcss/lib/tokenize.js | 266 + node_modules/postcss/lib/warn-once.js | 13 + node_modules/postcss/lib/warning.d.ts | 147 + node_modules/postcss/lib/warning.js | 37 + node_modules/postcss/package.json | 88 + node_modules/react-dom/LICENSE | 21 + node_modules/react-dom/README.md | 60 + ...t-dom-server-legacy.browser.development.js | 7029 ++ ...om-server-legacy.browser.production.min.js | 93 + ...eact-dom-server-legacy.node.development.js | 7093 ++ ...t-dom-server-legacy.node.production.min.js | 101 + .../react-dom-server.browser.development.js | 7014 ++ ...react-dom-server.browser.production.min.js | 96 + .../cjs/react-dom-server.node.development.js | 7070 ++ .../react-dom-server.node.production.min.js | 102 + .../cjs/react-dom-test-utils.development.js | 1763 + .../react-dom-test-utils.production.min.js | 40 + .../react-dom/cjs/react-dom.development.js | 29923 +++++++ .../react-dom/cjs/react-dom.production.min.js | 322 + .../react-dom/cjs/react-dom.profiling.min.js | 366 + node_modules/react-dom/client.js | 25 + node_modules/react-dom/index.js | 38 + node_modules/react-dom/package.json | 62 + node_modules/react-dom/profiling.js | 38 + node_modules/react-dom/server.browser.js | 17 + node_modules/react-dom/server.js | 3 + node_modules/react-dom/server.node.js | 17 + node_modules/react-dom/test-utils.js | 7 + ...t-dom-server-legacy.browser.development.js | 7026 ++ ...om-server-legacy.browser.production.min.js | 75 + .../react-dom-server.browser.development.js | 7011 ++ ...react-dom-server.browser.production.min.js | 76 + .../umd/react-dom-test-utils.development.js | 1759 + .../react-dom-test-utils.production.min.js | 33 + .../react-dom/umd/react-dom.development.js | 29924 +++++++ .../react-dom/umd/react-dom.production.min.js | 267 + .../react-dom/umd/react-dom.profiling.min.js | 285 + node_modules/react-refresh/LICENSE | 21 + node_modules/react-refresh/README.md | 5 + node_modules/react-refresh/babel.js | 7 + .../cjs/react-refresh-babel.development.js | 601 + .../cjs/react-refresh-babel.production.js | 586 + .../cjs/react-refresh-runtime.development.js | 338 + .../cjs/react-refresh-runtime.production.js | 14 + node_modules/react-refresh/package.json | 38 + node_modules/react-refresh/runtime.js | 7 + node_modules/react/LICENSE | 21 + node_modules/react/README.md | 37 + .../cjs/react-jsx-dev-runtime.development.js | 1315 + .../react-jsx-dev-runtime.production.min.js | 10 + .../react-jsx-dev-runtime.profiling.min.js | 10 + .../cjs/react-jsx-runtime.development.js | 1333 + .../cjs/react-jsx-runtime.production.min.js | 11 + .../cjs/react-jsx-runtime.profiling.min.js | 11 + node_modules/react/cjs/react.development.js | 2740 + .../react/cjs/react.production.min.js | 26 + .../cjs/react.shared-subset.development.js | 20 + .../cjs/react.shared-subset.production.min.js | 10 + node_modules/react/index.js | 7 + node_modules/react/jsx-dev-runtime.js | 7 + node_modules/react/jsx-runtime.js | 7 + node_modules/react/package.json | 47 + node_modules/react/react.shared-subset.js | 7 + node_modules/react/umd/react.development.js | 3343 + .../react/umd/react.production.min.js | 31 + node_modules/react/umd/react.profiling.min.js | 31 + node_modules/rollup/LICENSE.md | 679 + node_modules/rollup/README.md | 134 + node_modules/rollup/dist/bin/rollup | 1912 + node_modules/rollup/dist/es/getLogFilter.js | 64 + node_modules/rollup/dist/es/package.json | 1 + node_modules/rollup/dist/es/parseAst.js | 12 + node_modules/rollup/dist/es/rollup.js | 17 + .../rollup/dist/es/shared/node-entry.js | 24122 ++++++ .../rollup/dist/es/shared/parseAst.js | 2124 + node_modules/rollup/dist/es/shared/watch.js | 9297 +++ node_modules/rollup/dist/getLogFilter.d.ts | 5 + node_modules/rollup/dist/getLogFilter.js | 69 + node_modules/rollup/dist/loadConfigFile.d.ts | 20 + node_modules/rollup/dist/loadConfigFile.js | 29 + node_modules/rollup/dist/native.js | 161 + node_modules/rollup/dist/parseAst.d.ts | 4 + node_modules/rollup/dist/parseAst.js | 22 + node_modules/rollup/dist/rollup.d.ts | 1225 + node_modules/rollup/dist/rollup.js | 127 + .../rollup/dist/shared/fsevents-importer.js | 37 + node_modules/rollup/dist/shared/index.js | 9003 +++ .../rollup/dist/shared/loadConfigFile.js | 572 + node_modules/rollup/dist/shared/parseAst.js | 2361 + node_modules/rollup/dist/shared/rollup.js | 24044 ++++++ node_modules/rollup/dist/shared/watch-cli.js | 542 + node_modules/rollup/dist/shared/watch.js | 324 + node_modules/rollup/package.json | 289 + node_modules/scheduler/LICENSE | 21 + node_modules/scheduler/README.md | 9 + .../scheduler-unstable_mock.development.js | 700 + .../scheduler-unstable_mock.production.min.js | 20 + ...cheduler-unstable_post_task.development.js | 207 + ...duler-unstable_post_task.production.min.js | 14 + .../scheduler/cjs/scheduler.development.js | 634 + .../scheduler/cjs/scheduler.production.min.js | 19 + node_modules/scheduler/index.js | 7 + node_modules/scheduler/package.json | 36 + .../scheduler-unstable_mock.development.js | 699 + .../scheduler-unstable_mock.production.min.js | 19 + .../scheduler/umd/scheduler.development.js | 152 + .../scheduler/umd/scheduler.production.min.js | 146 + .../scheduler/umd/scheduler.profiling.min.js | 146 + node_modules/scheduler/unstable_mock.js | 7 + node_modules/scheduler/unstable_post_task.js | 7 + node_modules/semver/LICENSE | 15 + node_modules/semver/README.md | 443 + node_modules/semver/bin/semver.js | 174 + node_modules/semver/package.json | 38 + node_modules/semver/range.bnf | 16 + node_modules/semver/semver.js | 1643 + node_modules/source-map-js/LICENSE | 28 + node_modules/source-map-js/README.md | 765 + node_modules/source-map-js/lib/array-set.js | 121 + node_modules/source-map-js/lib/base64-vlq.js | 140 + node_modules/source-map-js/lib/base64.js | 67 + .../source-map-js/lib/binary-search.js | 111 + .../source-map-js/lib/mapping-list.js | 79 + node_modules/source-map-js/lib/quick-sort.js | 132 + .../lib/source-map-consumer.d.ts | 1 + .../source-map-js/lib/source-map-consumer.js | 1188 + .../lib/source-map-generator.d.ts | 1 + .../source-map-js/lib/source-map-generator.js | 444 + .../source-map-js/lib/source-node.d.ts | 1 + node_modules/source-map-js/lib/source-node.js | 413 + node_modules/source-map-js/lib/util.js | 594 + node_modules/source-map-js/package.json | 71 + node_modules/source-map-js/source-map.d.ts | 104 + node_modules/source-map-js/source-map.js | 8 + node_modules/update-browserslist-db/LICENSE | 20 + node_modules/update-browserslist-db/README.md | 30 + .../check-npm-version.js | 17 + node_modules/update-browserslist-db/cli.js | 42 + .../update-browserslist-db/index.d.ts | 6 + node_modules/update-browserslist-db/index.js | 347 + .../update-browserslist-db/package.json | 40 + node_modules/update-browserslist-db/utils.js | 25 + node_modules/vite/LICENSE.md | 3423 + node_modules/vite/README.md | 20 + node_modules/vite/bin/openChrome.applescript | 95 + node_modules/vite/bin/vite.js | 61 + node_modules/vite/client.d.ts | 256 + node_modules/vite/dist/client/client.mjs | 829 + node_modules/vite/dist/client/env.mjs | 24 + .../vite/dist/node-cjs/publicUtils.cjs | 6172 ++ .../vite/dist/node/chunks/dep-BB45zftN.js | 993 + .../vite/dist/node/chunks/dep-BK3b2jBa.js | 67048 ++++++++++++++++ .../vite/dist/node/chunks/dep-D-7KCb9p.js | 7960 ++ .../vite/dist/node/chunks/dep-Dnp7gl8U.js | 7004 ++ .../vite/dist/node/chunks/dep-IQS-Za7F.js | 561 + node_modules/vite/dist/node/cli.js | 917 + node_modules/vite/dist/node/constants.js | 113 + node_modules/vite/dist/node/index.d.ts | 3627 + node_modules/vite/dist/node/index.js | 261 + node_modules/vite/dist/node/runtime.d.ts | 63 + node_modules/vite/dist/node/runtime.js | 1066 + .../vite/dist/node/types.d-aGj9QkWt.d.ts | 281 + node_modules/vite/index.cjs | 60 + node_modules/vite/index.d.cts | 6 + node_modules/vite/package.json | 191 + node_modules/vite/types/customEvent.d.ts | 39 + node_modules/vite/types/hmrPayload.d.ts | 65 + node_modules/vite/types/hot.d.ts | 36 + node_modules/vite/types/import-meta.d.ts | 5 + node_modules/vite/types/importGlob.d.ts | 75 + node_modules/vite/types/importMeta.d.ts | 22 + node_modules/vite/types/metadata.d.ts | 10 + node_modules/vite/types/package.json | 4 + node_modules/yallist/LICENSE | 15 + node_modules/yallist/README.md | 204 + node_modules/yallist/iterator.js | 8 + node_modules/yallist/package.json | 29 + node_modules/yallist/yallist.js | 426 + package-backend.json | 11 + package-lock.json | 1677 + package.json | 18 + server.js | 124 + src/App.jsx | 310 + src/index.css | 484 + src/main.jsx | 10 + vite.config.js | 6 + 2227 files changed, 433934 insertions(+) create mode 100644 data.json create mode 100644 dist/assets/index-280BfggH.js create mode 100644 dist/assets/index-rHixgCzr.css create mode 100644 dist/index.html create mode 100644 index.html create mode 120000 node_modules/.bin/baseline-browser-mapping create mode 120000 node_modules/.bin/browserslist create mode 120000 node_modules/.bin/esbuild create mode 120000 node_modules/.bin/jsesc create mode 120000 node_modules/.bin/json5 create mode 120000 node_modules/.bin/loose-envify create mode 120000 node_modules/.bin/nanoid create mode 120000 node_modules/.bin/parser create mode 120000 node_modules/.bin/rollup create mode 120000 node_modules/.bin/semver create mode 120000 node_modules/.bin/update-browserslist-db create mode 120000 node_modules/.bin/vite create mode 100644 node_modules/.package-lock.json create mode 100644 node_modules/@babel/code-frame/LICENSE create mode 100644 node_modules/@babel/code-frame/README.md create mode 100644 node_modules/@babel/code-frame/lib/index.js create mode 100644 node_modules/@babel/code-frame/lib/index.js.map create mode 100644 node_modules/@babel/code-frame/package.json create mode 100644 node_modules/@babel/compat-data/LICENSE create mode 100644 node_modules/@babel/compat-data/README.md create mode 100644 node_modules/@babel/compat-data/corejs2-built-ins.js create mode 100644 node_modules/@babel/compat-data/corejs3-shipped-proposals.js create mode 100644 node_modules/@babel/compat-data/data/corejs2-built-ins.json create mode 100644 node_modules/@babel/compat-data/data/corejs3-shipped-proposals.json create mode 100644 node_modules/@babel/compat-data/data/native-modules.json create mode 100644 node_modules/@babel/compat-data/data/overlapping-plugins.json create mode 100644 node_modules/@babel/compat-data/data/plugin-bugfixes.json create mode 100644 node_modules/@babel/compat-data/data/plugins.json create mode 100644 node_modules/@babel/compat-data/native-modules.js create mode 100644 node_modules/@babel/compat-data/overlapping-plugins.js create mode 100644 node_modules/@babel/compat-data/package.json create mode 100644 node_modules/@babel/compat-data/plugin-bugfixes.js create mode 100644 node_modules/@babel/compat-data/plugins.js create mode 100644 node_modules/@babel/core/LICENSE create mode 100644 node_modules/@babel/core/README.md create mode 100644 node_modules/@babel/core/lib/config/cache-contexts.js create mode 100644 node_modules/@babel/core/lib/config/cache-contexts.js.map create mode 100644 node_modules/@babel/core/lib/config/caching.js create mode 100644 node_modules/@babel/core/lib/config/caching.js.map create mode 100644 node_modules/@babel/core/lib/config/config-chain.js create mode 100644 node_modules/@babel/core/lib/config/config-chain.js.map create mode 100644 node_modules/@babel/core/lib/config/config-descriptors.js create mode 100644 node_modules/@babel/core/lib/config/config-descriptors.js.map create mode 100644 node_modules/@babel/core/lib/config/files/configuration.js create mode 100644 node_modules/@babel/core/lib/config/files/configuration.js.map create mode 100644 node_modules/@babel/core/lib/config/files/import.cjs create mode 100644 node_modules/@babel/core/lib/config/files/import.cjs.map create mode 100644 node_modules/@babel/core/lib/config/files/index-browser.js create mode 100644 node_modules/@babel/core/lib/config/files/index-browser.js.map create mode 100644 node_modules/@babel/core/lib/config/files/index.js create mode 100644 node_modules/@babel/core/lib/config/files/index.js.map create mode 100644 node_modules/@babel/core/lib/config/files/module-types.js create mode 100644 node_modules/@babel/core/lib/config/files/module-types.js.map create mode 100644 node_modules/@babel/core/lib/config/files/package.js create mode 100644 node_modules/@babel/core/lib/config/files/package.js.map create mode 100644 node_modules/@babel/core/lib/config/files/plugins.js create mode 100644 node_modules/@babel/core/lib/config/files/plugins.js.map create mode 100644 node_modules/@babel/core/lib/config/files/types.js create mode 100644 node_modules/@babel/core/lib/config/files/types.js.map create mode 100644 node_modules/@babel/core/lib/config/files/utils.js create mode 100644 node_modules/@babel/core/lib/config/files/utils.js.map create mode 100644 node_modules/@babel/core/lib/config/full.js create mode 100644 node_modules/@babel/core/lib/config/full.js.map create mode 100644 node_modules/@babel/core/lib/config/helpers/config-api.js create mode 100644 node_modules/@babel/core/lib/config/helpers/config-api.js.map create mode 100644 node_modules/@babel/core/lib/config/helpers/deep-array.js create mode 100644 node_modules/@babel/core/lib/config/helpers/deep-array.js.map create mode 100644 node_modules/@babel/core/lib/config/helpers/environment.js create mode 100644 node_modules/@babel/core/lib/config/helpers/environment.js.map create mode 100644 node_modules/@babel/core/lib/config/index.js create mode 100644 node_modules/@babel/core/lib/config/index.js.map create mode 100644 node_modules/@babel/core/lib/config/item.js create mode 100644 node_modules/@babel/core/lib/config/item.js.map create mode 100644 node_modules/@babel/core/lib/config/partial.js create mode 100644 node_modules/@babel/core/lib/config/partial.js.map create mode 100644 node_modules/@babel/core/lib/config/pattern-to-regex.js create mode 100644 node_modules/@babel/core/lib/config/pattern-to-regex.js.map create mode 100644 node_modules/@babel/core/lib/config/plugin.js create mode 100644 node_modules/@babel/core/lib/config/plugin.js.map create mode 100644 node_modules/@babel/core/lib/config/printer.js create mode 100644 node_modules/@babel/core/lib/config/printer.js.map create mode 100644 node_modules/@babel/core/lib/config/resolve-targets-browser.js create mode 100644 node_modules/@babel/core/lib/config/resolve-targets-browser.js.map create mode 100644 node_modules/@babel/core/lib/config/resolve-targets.js create mode 100644 node_modules/@babel/core/lib/config/resolve-targets.js.map create mode 100644 node_modules/@babel/core/lib/config/util.js create mode 100644 node_modules/@babel/core/lib/config/util.js.map create mode 100644 node_modules/@babel/core/lib/config/validation/option-assertions.js create mode 100644 node_modules/@babel/core/lib/config/validation/option-assertions.js.map create mode 100644 node_modules/@babel/core/lib/config/validation/options.js create mode 100644 node_modules/@babel/core/lib/config/validation/options.js.map create mode 100644 node_modules/@babel/core/lib/config/validation/plugins.js create mode 100644 node_modules/@babel/core/lib/config/validation/plugins.js.map create mode 100644 node_modules/@babel/core/lib/config/validation/removed.js create mode 100644 node_modules/@babel/core/lib/config/validation/removed.js.map create mode 100644 node_modules/@babel/core/lib/errors/config-error.js create mode 100644 node_modules/@babel/core/lib/errors/config-error.js.map create mode 100644 node_modules/@babel/core/lib/errors/rewrite-stack-trace.js create mode 100644 node_modules/@babel/core/lib/errors/rewrite-stack-trace.js.map create mode 100644 node_modules/@babel/core/lib/gensync-utils/async.js create mode 100644 node_modules/@babel/core/lib/gensync-utils/async.js.map create mode 100644 node_modules/@babel/core/lib/gensync-utils/fs.js create mode 100644 node_modules/@babel/core/lib/gensync-utils/fs.js.map create mode 100644 node_modules/@babel/core/lib/gensync-utils/functional.js create mode 100644 node_modules/@babel/core/lib/gensync-utils/functional.js.map create mode 100644 node_modules/@babel/core/lib/index.js create mode 100644 node_modules/@babel/core/lib/index.js.map create mode 100644 node_modules/@babel/core/lib/parse.js create mode 100644 node_modules/@babel/core/lib/parse.js.map create mode 100644 node_modules/@babel/core/lib/parser/index.js create mode 100644 node_modules/@babel/core/lib/parser/index.js.map create mode 100644 node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js create mode 100644 node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js.map create mode 100644 node_modules/@babel/core/lib/tools/build-external-helpers.js create mode 100644 node_modules/@babel/core/lib/tools/build-external-helpers.js.map create mode 100644 node_modules/@babel/core/lib/transform-ast.js create mode 100644 node_modules/@babel/core/lib/transform-ast.js.map create mode 100644 node_modules/@babel/core/lib/transform-file-browser.js create mode 100644 node_modules/@babel/core/lib/transform-file-browser.js.map create mode 100644 node_modules/@babel/core/lib/transform-file.js create mode 100644 node_modules/@babel/core/lib/transform-file.js.map create mode 100644 node_modules/@babel/core/lib/transform.js create mode 100644 node_modules/@babel/core/lib/transform.js.map create mode 100644 node_modules/@babel/core/lib/transformation/block-hoist-plugin.js create mode 100644 node_modules/@babel/core/lib/transformation/block-hoist-plugin.js.map create mode 100644 node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs create mode 100644 node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs.map create mode 100644 node_modules/@babel/core/lib/transformation/file/file.js create mode 100644 node_modules/@babel/core/lib/transformation/file/file.js.map create mode 100644 node_modules/@babel/core/lib/transformation/file/generate.js create mode 100644 node_modules/@babel/core/lib/transformation/file/generate.js.map create mode 100644 node_modules/@babel/core/lib/transformation/file/merge-map.js create mode 100644 node_modules/@babel/core/lib/transformation/file/merge-map.js.map create mode 100644 node_modules/@babel/core/lib/transformation/index.js create mode 100644 node_modules/@babel/core/lib/transformation/index.js.map create mode 100644 node_modules/@babel/core/lib/transformation/normalize-file.js create mode 100644 node_modules/@babel/core/lib/transformation/normalize-file.js.map create mode 100644 node_modules/@babel/core/lib/transformation/normalize-opts.js create mode 100644 node_modules/@babel/core/lib/transformation/normalize-opts.js.map create mode 100644 node_modules/@babel/core/lib/transformation/plugin-pass.js create mode 100644 node_modules/@babel/core/lib/transformation/plugin-pass.js.map create mode 100644 node_modules/@babel/core/lib/transformation/util/clone-deep.js create mode 100644 node_modules/@babel/core/lib/transformation/util/clone-deep.js.map create mode 100644 node_modules/@babel/core/lib/vendor/import-meta-resolve.js create mode 100644 node_modules/@babel/core/lib/vendor/import-meta-resolve.js.map create mode 100644 node_modules/@babel/core/package.json create mode 100644 node_modules/@babel/core/src/config/files/index-browser.ts create mode 100644 node_modules/@babel/core/src/config/files/index.ts create mode 100644 node_modules/@babel/core/src/config/resolve-targets-browser.ts create mode 100644 node_modules/@babel/core/src/config/resolve-targets.ts create mode 100644 node_modules/@babel/core/src/transform-file-browser.ts create mode 100644 node_modules/@babel/core/src/transform-file.ts create mode 100644 node_modules/@babel/generator/LICENSE create mode 100644 node_modules/@babel/generator/README.md create mode 100644 node_modules/@babel/generator/lib/buffer.js create mode 100644 node_modules/@babel/generator/lib/buffer.js.map create mode 100644 node_modules/@babel/generator/lib/generators/base.js create mode 100644 node_modules/@babel/generator/lib/generators/base.js.map create mode 100644 node_modules/@babel/generator/lib/generators/classes.js create mode 100644 node_modules/@babel/generator/lib/generators/classes.js.map create mode 100644 node_modules/@babel/generator/lib/generators/deprecated.js create mode 100644 node_modules/@babel/generator/lib/generators/deprecated.js.map create mode 100644 node_modules/@babel/generator/lib/generators/expressions.js create mode 100644 node_modules/@babel/generator/lib/generators/expressions.js.map create mode 100644 node_modules/@babel/generator/lib/generators/flow.js create mode 100644 node_modules/@babel/generator/lib/generators/flow.js.map create mode 100644 node_modules/@babel/generator/lib/generators/index.js create mode 100644 node_modules/@babel/generator/lib/generators/index.js.map create mode 100644 node_modules/@babel/generator/lib/generators/jsx.js create mode 100644 node_modules/@babel/generator/lib/generators/jsx.js.map create mode 100644 node_modules/@babel/generator/lib/generators/methods.js create mode 100644 node_modules/@babel/generator/lib/generators/methods.js.map create mode 100644 node_modules/@babel/generator/lib/generators/modules.js create mode 100644 node_modules/@babel/generator/lib/generators/modules.js.map create mode 100644 node_modules/@babel/generator/lib/generators/statements.js create mode 100644 node_modules/@babel/generator/lib/generators/statements.js.map create mode 100644 node_modules/@babel/generator/lib/generators/template-literals.js create mode 100644 node_modules/@babel/generator/lib/generators/template-literals.js.map create mode 100644 node_modules/@babel/generator/lib/generators/types.js create mode 100644 node_modules/@babel/generator/lib/generators/types.js.map create mode 100644 node_modules/@babel/generator/lib/generators/typescript.js create mode 100644 node_modules/@babel/generator/lib/generators/typescript.js.map create mode 100644 node_modules/@babel/generator/lib/index.js create mode 100644 node_modules/@babel/generator/lib/index.js.map create mode 100644 node_modules/@babel/generator/lib/node/index.js create mode 100644 node_modules/@babel/generator/lib/node/index.js.map create mode 100644 node_modules/@babel/generator/lib/node/parentheses.js create mode 100644 node_modules/@babel/generator/lib/node/parentheses.js.map create mode 100644 node_modules/@babel/generator/lib/nodes.js create mode 100644 node_modules/@babel/generator/lib/nodes.js.map create mode 100644 node_modules/@babel/generator/lib/printer.js create mode 100644 node_modules/@babel/generator/lib/printer.js.map create mode 100644 node_modules/@babel/generator/lib/source-map.js create mode 100644 node_modules/@babel/generator/lib/source-map.js.map create mode 100644 node_modules/@babel/generator/lib/token-map.js create mode 100644 node_modules/@babel/generator/lib/token-map.js.map create mode 100644 node_modules/@babel/generator/package.json create mode 100644 node_modules/@babel/helper-compilation-targets/LICENSE create mode 100644 node_modules/@babel/helper-compilation-targets/README.md create mode 100644 node_modules/@babel/helper-compilation-targets/lib/debug.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/debug.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/filter-items.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/filter-items.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/index.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/index.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/options.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/options.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/pretty.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/pretty.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/targets.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/targets.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/lib/utils.js create mode 100644 node_modules/@babel/helper-compilation-targets/lib/utils.js.map create mode 100644 node_modules/@babel/helper-compilation-targets/package.json create mode 100644 node_modules/@babel/helper-globals/LICENSE create mode 100644 node_modules/@babel/helper-globals/README.md create mode 100644 node_modules/@babel/helper-globals/data/browser-upper.json create mode 100644 node_modules/@babel/helper-globals/data/builtin-lower.json create mode 100644 node_modules/@babel/helper-globals/data/builtin-upper.json create mode 100644 node_modules/@babel/helper-globals/package.json create mode 100644 node_modules/@babel/helper-module-imports/LICENSE create mode 100644 node_modules/@babel/helper-module-imports/README.md create mode 100644 node_modules/@babel/helper-module-imports/lib/import-builder.js create mode 100644 node_modules/@babel/helper-module-imports/lib/import-builder.js.map create mode 100644 node_modules/@babel/helper-module-imports/lib/import-injector.js create mode 100644 node_modules/@babel/helper-module-imports/lib/import-injector.js.map create mode 100644 node_modules/@babel/helper-module-imports/lib/index.js create mode 100644 node_modules/@babel/helper-module-imports/lib/index.js.map create mode 100644 node_modules/@babel/helper-module-imports/lib/is-module.js create mode 100644 node_modules/@babel/helper-module-imports/lib/is-module.js.map create mode 100644 node_modules/@babel/helper-module-imports/package.json create mode 100644 node_modules/@babel/helper-module-transforms/LICENSE create mode 100644 node_modules/@babel/helper-module-transforms/README.md create mode 100644 node_modules/@babel/helper-module-transforms/lib/dynamic-import.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/dynamic-import.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/get-module-name.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/get-module-name.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/index.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/index.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/lazy-modules.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/lazy-modules.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/normalize-and-load-metadata.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/normalize-and-load-metadata.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/rewrite-live-references.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/rewrite-live-references.js.map create mode 100644 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js create mode 100644 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map create mode 100644 node_modules/@babel/helper-module-transforms/package.json create mode 100644 node_modules/@babel/helper-plugin-utils/LICENSE create mode 100644 node_modules/@babel/helper-plugin-utils/README.md create mode 100644 node_modules/@babel/helper-plugin-utils/lib/index.js create mode 100644 node_modules/@babel/helper-plugin-utils/lib/index.js.map create mode 100644 node_modules/@babel/helper-plugin-utils/package.json create mode 100644 node_modules/@babel/helper-string-parser/LICENSE create mode 100644 node_modules/@babel/helper-string-parser/README.md create mode 100644 node_modules/@babel/helper-string-parser/lib/index.js create mode 100644 node_modules/@babel/helper-string-parser/lib/index.js.map create mode 100644 node_modules/@babel/helper-string-parser/package.json create mode 100644 node_modules/@babel/helper-validator-identifier/LICENSE create mode 100644 node_modules/@babel/helper-validator-identifier/README.md create mode 100644 node_modules/@babel/helper-validator-identifier/lib/identifier.js create mode 100644 node_modules/@babel/helper-validator-identifier/lib/identifier.js.map create mode 100644 node_modules/@babel/helper-validator-identifier/lib/index.js create mode 100644 node_modules/@babel/helper-validator-identifier/lib/index.js.map create mode 100644 node_modules/@babel/helper-validator-identifier/lib/keyword.js create mode 100644 node_modules/@babel/helper-validator-identifier/lib/keyword.js.map create mode 100644 node_modules/@babel/helper-validator-identifier/package.json create mode 100644 node_modules/@babel/helper-validator-option/LICENSE create mode 100644 node_modules/@babel/helper-validator-option/README.md create mode 100644 node_modules/@babel/helper-validator-option/lib/find-suggestion.js create mode 100644 node_modules/@babel/helper-validator-option/lib/find-suggestion.js.map create mode 100644 node_modules/@babel/helper-validator-option/lib/index.js create mode 100644 node_modules/@babel/helper-validator-option/lib/index.js.map create mode 100644 node_modules/@babel/helper-validator-option/lib/validator.js create mode 100644 node_modules/@babel/helper-validator-option/lib/validator.js.map create mode 100644 node_modules/@babel/helper-validator-option/package.json create mode 100644 node_modules/@babel/helpers/LICENSE create mode 100644 node_modules/@babel/helpers/README.md create mode 100644 node_modules/@babel/helpers/lib/helpers-generated.js create mode 100644 node_modules/@babel/helpers/lib/helpers-generated.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/AwaitValue.js create mode 100644 node_modules/@babel/helpers/lib/helpers/AwaitValue.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/OverloadYield.js create mode 100644 node_modules/@babel/helpers/lib/helpers/OverloadYield.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecoratedDescriptor.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecoratedDescriptor.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2203.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2203.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2203R.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2203R.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2301.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2301.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2305.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2305.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2311.js create mode 100644 node_modules/@babel/helpers/lib/helpers/applyDecs2311.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayLikeToArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayLikeToArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayWithHoles.js create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayWithHoles.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayWithoutHoles.js create mode 100644 node_modules/@babel/helpers/lib/helpers/arrayWithoutHoles.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/assertClassBrand.js create mode 100644 node_modules/@babel/helpers/lib/helpers/assertClassBrand.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/assertThisInitialized.js create mode 100644 node_modules/@babel/helpers/lib/helpers/assertThisInitialized.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncGeneratorDelegate.js create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncGeneratorDelegate.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncIterator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncIterator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncToGenerator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/asyncToGenerator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/awaitAsyncGenerator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/awaitAsyncGenerator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/callSuper.js create mode 100644 node_modules/@babel/helpers/lib/helpers/callSuper.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/checkInRHS.js create mode 100644 node_modules/@babel/helpers/lib/helpers/checkInRHS.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/checkPrivateRedeclaration.js create mode 100644 node_modules/@babel/helpers/lib/helpers/checkPrivateRedeclaration.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorDestructureSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorDestructureSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classApplyDescriptorSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classCallCheck.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classCallCheck.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classCheckPrivateStaticAccess.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classCheckPrivateStaticAccess.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classCheckPrivateStaticFieldDescriptor.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classCheckPrivateStaticFieldDescriptor.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classExtractFieldDescriptor.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classExtractFieldDescriptor.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classNameTDZError.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classNameTDZError.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldDestructureSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldDestructureSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldGet2.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldGet2.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldInitSpec.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldInitSpec.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldLooseBase.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldLooseBase.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldLooseKey.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldLooseKey.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldSet2.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateFieldSet2.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateGetter.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateGetter.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodInitSpec.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodInitSpec.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateMethodSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateSetter.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classPrivateSetter.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldDestructureSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldDestructureSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldSpecGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldSpecGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldSpecSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateFieldSpecSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateMethodGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateMethodGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateMethodSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/classStaticPrivateMethodSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/construct.js create mode 100644 node_modules/@babel/helpers/lib/helpers/construct.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/createClass.js create mode 100644 node_modules/@babel/helpers/lib/helpers/createClass.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/createForOfIteratorHelper.js create mode 100644 node_modules/@babel/helpers/lib/helpers/createForOfIteratorHelper.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/createForOfIteratorHelperLoose.js create mode 100644 node_modules/@babel/helpers/lib/helpers/createForOfIteratorHelperLoose.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/createSuper.js create mode 100644 node_modules/@babel/helpers/lib/helpers/createSuper.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/decorate.js create mode 100644 node_modules/@babel/helpers/lib/helpers/decorate.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/defaults.js create mode 100644 node_modules/@babel/helpers/lib/helpers/defaults.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/defineAccessor.js create mode 100644 node_modules/@babel/helpers/lib/helpers/defineAccessor.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/defineEnumerableProperties.js create mode 100644 node_modules/@babel/helpers/lib/helpers/defineEnumerableProperties.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/defineProperty.js create mode 100644 node_modules/@babel/helpers/lib/helpers/defineProperty.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/dispose.js create mode 100644 node_modules/@babel/helpers/lib/helpers/dispose.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/extends.js create mode 100644 node_modules/@babel/helpers/lib/helpers/extends.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/get.js create mode 100644 node_modules/@babel/helpers/lib/helpers/get.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/getPrototypeOf.js create mode 100644 node_modules/@babel/helpers/lib/helpers/getPrototypeOf.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/identity.js create mode 100644 node_modules/@babel/helpers/lib/helpers/identity.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/importDeferProxy.js create mode 100644 node_modules/@babel/helpers/lib/helpers/importDeferProxy.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/inherits.js create mode 100644 node_modules/@babel/helpers/lib/helpers/inherits.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/inheritsLoose.js create mode 100644 node_modules/@babel/helpers/lib/helpers/inheritsLoose.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/initializerDefineProperty.js create mode 100644 node_modules/@babel/helpers/lib/helpers/initializerDefineProperty.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/initializerWarningHelper.js create mode 100644 node_modules/@babel/helpers/lib/helpers/initializerWarningHelper.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/instanceof.js create mode 100644 node_modules/@babel/helpers/lib/helpers/instanceof.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/interopRequireDefault.js create mode 100644 node_modules/@babel/helpers/lib/helpers/interopRequireDefault.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/interopRequireWildcard.js create mode 100644 node_modules/@babel/helpers/lib/helpers/interopRequireWildcard.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/isNativeFunction.js create mode 100644 node_modules/@babel/helpers/lib/helpers/isNativeFunction.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/isNativeReflectConstruct.js create mode 100644 node_modules/@babel/helpers/lib/helpers/isNativeReflectConstruct.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/iterableToArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/iterableToArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/iterableToArrayLimit.js create mode 100644 node_modules/@babel/helpers/lib/helpers/iterableToArrayLimit.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/jsx.js create mode 100644 node_modules/@babel/helpers/lib/helpers/jsx.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/maybeArrayLike.js create mode 100644 node_modules/@babel/helpers/lib/helpers/maybeArrayLike.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/newArrowCheck.js create mode 100644 node_modules/@babel/helpers/lib/helpers/newArrowCheck.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/nonIterableRest.js create mode 100644 node_modules/@babel/helpers/lib/helpers/nonIterableRest.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/nonIterableSpread.js create mode 100644 node_modules/@babel/helpers/lib/helpers/nonIterableSpread.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/nullishReceiverError.js create mode 100644 node_modules/@babel/helpers/lib/helpers/nullishReceiverError.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/objectDestructuringEmpty.js create mode 100644 node_modules/@babel/helpers/lib/helpers/objectDestructuringEmpty.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/objectSpread.js create mode 100644 node_modules/@babel/helpers/lib/helpers/objectSpread.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/objectSpread2.js create mode 100644 node_modules/@babel/helpers/lib/helpers/objectSpread2.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/objectWithoutProperties.js create mode 100644 node_modules/@babel/helpers/lib/helpers/objectWithoutProperties.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/objectWithoutPropertiesLoose.js create mode 100644 node_modules/@babel/helpers/lib/helpers/objectWithoutPropertiesLoose.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/possibleConstructorReturn.js create mode 100644 node_modules/@babel/helpers/lib/helpers/possibleConstructorReturn.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/readOnlyError.js create mode 100644 node_modules/@babel/helpers/lib/helpers/readOnlyError.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regenerator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regenerator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsync.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsync.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsyncGen.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsyncGen.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsyncIterator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorAsyncIterator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorDefine.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorDefine.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorKeys.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorKeys.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorRuntime.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorRuntime.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorValues.js create mode 100644 node_modules/@babel/helpers/lib/helpers/regeneratorValues.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/set.js create mode 100644 node_modules/@babel/helpers/lib/helpers/set.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/setFunctionName.js create mode 100644 node_modules/@babel/helpers/lib/helpers/setFunctionName.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/setPrototypeOf.js create mode 100644 node_modules/@babel/helpers/lib/helpers/setPrototypeOf.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/skipFirstGeneratorNext.js create mode 100644 node_modules/@babel/helpers/lib/helpers/skipFirstGeneratorNext.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/slicedToArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/slicedToArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropBase.js create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropBase.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropGet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropGet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropSet.js create mode 100644 node_modules/@babel/helpers/lib/helpers/superPropSet.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/taggedTemplateLiteral.js create mode 100644 node_modules/@babel/helpers/lib/helpers/taggedTemplateLiteral.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/taggedTemplateLiteralLoose.js create mode 100644 node_modules/@babel/helpers/lib/helpers/taggedTemplateLiteralLoose.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/tdz.js create mode 100644 node_modules/@babel/helpers/lib/helpers/tdz.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/temporalRef.js create mode 100644 node_modules/@babel/helpers/lib/helpers/temporalRef.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/temporalUndefined.js create mode 100644 node_modules/@babel/helpers/lib/helpers/temporalUndefined.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/toArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/toArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/toConsumableArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/toConsumableArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/toPrimitive.js create mode 100644 node_modules/@babel/helpers/lib/helpers/toPrimitive.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/toPropertyKey.js create mode 100644 node_modules/@babel/helpers/lib/helpers/toPropertyKey.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/toSetter.js create mode 100644 node_modules/@babel/helpers/lib/helpers/toSetter.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/tsRewriteRelativeImportExtensions.js create mode 100644 node_modules/@babel/helpers/lib/helpers/tsRewriteRelativeImportExtensions.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/typeof.js create mode 100644 node_modules/@babel/helpers/lib/helpers/typeof.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/unsupportedIterableToArray.js create mode 100644 node_modules/@babel/helpers/lib/helpers/unsupportedIterableToArray.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/using.js create mode 100644 node_modules/@babel/helpers/lib/helpers/using.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/usingCtx.js create mode 100644 node_modules/@babel/helpers/lib/helpers/usingCtx.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapAsyncGenerator.js create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapAsyncGenerator.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapNativeSuper.js create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapNativeSuper.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapRegExp.js create mode 100644 node_modules/@babel/helpers/lib/helpers/wrapRegExp.js.map create mode 100644 node_modules/@babel/helpers/lib/helpers/writeOnlyError.js create mode 100644 node_modules/@babel/helpers/lib/helpers/writeOnlyError.js.map create mode 100644 node_modules/@babel/helpers/lib/index.js create mode 100644 node_modules/@babel/helpers/lib/index.js.map create mode 100644 node_modules/@babel/helpers/package.json create mode 100644 node_modules/@babel/parser/CHANGELOG.md create mode 100644 node_modules/@babel/parser/LICENSE create mode 100644 node_modules/@babel/parser/README.md create mode 100755 node_modules/@babel/parser/bin/babel-parser.js create mode 100644 node_modules/@babel/parser/lib/index.js create mode 100644 node_modules/@babel/parser/lib/index.js.map create mode 100644 node_modules/@babel/parser/package.json create mode 100644 node_modules/@babel/parser/typings/babel-parser.d.ts create mode 100644 node_modules/@babel/plugin-transform-react-jsx-self/LICENSE create mode 100644 node_modules/@babel/plugin-transform-react-jsx-self/README.md create mode 100644 node_modules/@babel/plugin-transform-react-jsx-self/lib/index.js create mode 100644 node_modules/@babel/plugin-transform-react-jsx-self/lib/index.js.map create mode 100644 node_modules/@babel/plugin-transform-react-jsx-self/package.json create mode 100644 node_modules/@babel/plugin-transform-react-jsx-source/LICENSE create mode 100644 node_modules/@babel/plugin-transform-react-jsx-source/README.md create mode 100644 node_modules/@babel/plugin-transform-react-jsx-source/lib/index.js create mode 100644 node_modules/@babel/plugin-transform-react-jsx-source/lib/index.js.map create mode 100644 node_modules/@babel/plugin-transform-react-jsx-source/package.json create mode 100644 node_modules/@babel/template/LICENSE create mode 100644 node_modules/@babel/template/README.md create mode 100644 node_modules/@babel/template/lib/builder.js create mode 100644 node_modules/@babel/template/lib/builder.js.map create mode 100644 node_modules/@babel/template/lib/formatters.js create mode 100644 node_modules/@babel/template/lib/formatters.js.map create mode 100644 node_modules/@babel/template/lib/index.js create mode 100644 node_modules/@babel/template/lib/index.js.map create mode 100644 node_modules/@babel/template/lib/literal.js create mode 100644 node_modules/@babel/template/lib/literal.js.map create mode 100644 node_modules/@babel/template/lib/options.js create mode 100644 node_modules/@babel/template/lib/options.js.map create mode 100644 node_modules/@babel/template/lib/parse.js create mode 100644 node_modules/@babel/template/lib/parse.js.map create mode 100644 node_modules/@babel/template/lib/populate.js create mode 100644 node_modules/@babel/template/lib/populate.js.map create mode 100644 node_modules/@babel/template/lib/string.js create mode 100644 node_modules/@babel/template/lib/string.js.map create mode 100644 node_modules/@babel/template/package.json create mode 100644 node_modules/@babel/traverse/LICENSE create mode 100644 node_modules/@babel/traverse/README.md create mode 100644 node_modules/@babel/traverse/lib/cache.js create mode 100644 node_modules/@babel/traverse/lib/cache.js.map create mode 100644 node_modules/@babel/traverse/lib/context.js create mode 100644 node_modules/@babel/traverse/lib/context.js.map create mode 100644 node_modules/@babel/traverse/lib/hub.js create mode 100644 node_modules/@babel/traverse/lib/hub.js.map create mode 100644 node_modules/@babel/traverse/lib/index.js create mode 100644 node_modules/@babel/traverse/lib/index.js.map create mode 100644 node_modules/@babel/traverse/lib/path/ancestry.js create mode 100644 node_modules/@babel/traverse/lib/path/ancestry.js.map create mode 100644 node_modules/@babel/traverse/lib/path/comments.js create mode 100644 node_modules/@babel/traverse/lib/path/comments.js.map create mode 100644 node_modules/@babel/traverse/lib/path/context.js create mode 100644 node_modules/@babel/traverse/lib/path/context.js.map create mode 100644 node_modules/@babel/traverse/lib/path/conversion.js create mode 100644 node_modules/@babel/traverse/lib/path/conversion.js.map create mode 100644 node_modules/@babel/traverse/lib/path/evaluation.js create mode 100644 node_modules/@babel/traverse/lib/path/evaluation.js.map create mode 100644 node_modules/@babel/traverse/lib/path/family.js create mode 100644 node_modules/@babel/traverse/lib/path/family.js.map create mode 100644 node_modules/@babel/traverse/lib/path/index.js create mode 100644 node_modules/@babel/traverse/lib/path/index.js.map create mode 100644 node_modules/@babel/traverse/lib/path/inference/index.js create mode 100644 node_modules/@babel/traverse/lib/path/inference/index.js.map create mode 100644 node_modules/@babel/traverse/lib/path/inference/inferer-reference.js create mode 100644 node_modules/@babel/traverse/lib/path/inference/inferer-reference.js.map create mode 100644 node_modules/@babel/traverse/lib/path/inference/inferers.js create mode 100644 node_modules/@babel/traverse/lib/path/inference/inferers.js.map create mode 100644 node_modules/@babel/traverse/lib/path/inference/util.js create mode 100644 node_modules/@babel/traverse/lib/path/inference/util.js.map create mode 100644 node_modules/@babel/traverse/lib/path/introspection.js create mode 100644 node_modules/@babel/traverse/lib/path/introspection.js.map create mode 100644 node_modules/@babel/traverse/lib/path/lib/hoister.js create mode 100644 node_modules/@babel/traverse/lib/path/lib/hoister.js.map create mode 100644 node_modules/@babel/traverse/lib/path/lib/removal-hooks.js create mode 100644 node_modules/@babel/traverse/lib/path/lib/removal-hooks.js.map create mode 100644 node_modules/@babel/traverse/lib/path/lib/virtual-types-validator.js create mode 100644 node_modules/@babel/traverse/lib/path/lib/virtual-types-validator.js.map create mode 100644 node_modules/@babel/traverse/lib/path/lib/virtual-types.js create mode 100644 node_modules/@babel/traverse/lib/path/lib/virtual-types.js.map create mode 100644 node_modules/@babel/traverse/lib/path/modification.js create mode 100644 node_modules/@babel/traverse/lib/path/modification.js.map create mode 100644 node_modules/@babel/traverse/lib/path/removal.js create mode 100644 node_modules/@babel/traverse/lib/path/removal.js.map create mode 100644 node_modules/@babel/traverse/lib/path/replacement.js create mode 100644 node_modules/@babel/traverse/lib/path/replacement.js.map create mode 100644 node_modules/@babel/traverse/lib/scope/binding.js create mode 100644 node_modules/@babel/traverse/lib/scope/binding.js.map create mode 100644 node_modules/@babel/traverse/lib/scope/index.js create mode 100644 node_modules/@babel/traverse/lib/scope/index.js.map create mode 100644 node_modules/@babel/traverse/lib/scope/lib/renamer.js create mode 100644 node_modules/@babel/traverse/lib/scope/lib/renamer.js.map create mode 100644 node_modules/@babel/traverse/lib/scope/traverseForScope.js create mode 100644 node_modules/@babel/traverse/lib/scope/traverseForScope.js.map create mode 100644 node_modules/@babel/traverse/lib/traverse-node.js create mode 100644 node_modules/@babel/traverse/lib/traverse-node.js.map create mode 100644 node_modules/@babel/traverse/lib/types.js create mode 100644 node_modules/@babel/traverse/lib/types.js.map create mode 100644 node_modules/@babel/traverse/lib/visitors.js create mode 100644 node_modules/@babel/traverse/lib/visitors.js.map create mode 100644 node_modules/@babel/traverse/package.json create mode 100644 node_modules/@babel/traverse/tsconfig.overrides.json create mode 100644 node_modules/@babel/types/LICENSE create mode 100644 node_modules/@babel/types/README.md create mode 100644 node_modules/@babel/types/lib/asserts/assertNode.js create mode 100644 node_modules/@babel/types/lib/asserts/assertNode.js.map create mode 100644 node_modules/@babel/types/lib/asserts/generated/index.js create mode 100644 node_modules/@babel/types/lib/asserts/generated/index.js.map create mode 100644 node_modules/@babel/types/lib/ast-types/generated/index.js create mode 100644 node_modules/@babel/types/lib/ast-types/generated/index.js.map create mode 100644 node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js create mode 100644 node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js.map create mode 100644 node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js create mode 100644 node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js.map create mode 100644 node_modules/@babel/types/lib/builders/generated/index.js create mode 100644 node_modules/@babel/types/lib/builders/generated/index.js.map create mode 100644 node_modules/@babel/types/lib/builders/generated/lowercase.js create mode 100644 node_modules/@babel/types/lib/builders/generated/lowercase.js.map create mode 100644 node_modules/@babel/types/lib/builders/generated/uppercase.js create mode 100644 node_modules/@babel/types/lib/builders/generated/uppercase.js.map create mode 100644 node_modules/@babel/types/lib/builders/productions.js create mode 100644 node_modules/@babel/types/lib/builders/productions.js.map create mode 100644 node_modules/@babel/types/lib/builders/react/buildChildren.js create mode 100644 node_modules/@babel/types/lib/builders/react/buildChildren.js.map create mode 100644 node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js create mode 100644 node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js.map create mode 100644 node_modules/@babel/types/lib/builders/validateNode.js create mode 100644 node_modules/@babel/types/lib/builders/validateNode.js.map create mode 100644 node_modules/@babel/types/lib/clone/clone.js create mode 100644 node_modules/@babel/types/lib/clone/clone.js.map create mode 100644 node_modules/@babel/types/lib/clone/cloneDeep.js create mode 100644 node_modules/@babel/types/lib/clone/cloneDeep.js.map create mode 100644 node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js create mode 100644 node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js.map create mode 100644 node_modules/@babel/types/lib/clone/cloneNode.js create mode 100644 node_modules/@babel/types/lib/clone/cloneNode.js.map create mode 100644 node_modules/@babel/types/lib/clone/cloneWithoutLoc.js create mode 100644 node_modules/@babel/types/lib/clone/cloneWithoutLoc.js.map create mode 100644 node_modules/@babel/types/lib/comments/addComment.js create mode 100644 node_modules/@babel/types/lib/comments/addComment.js.map create mode 100644 node_modules/@babel/types/lib/comments/addComments.js create mode 100644 node_modules/@babel/types/lib/comments/addComments.js.map create mode 100644 node_modules/@babel/types/lib/comments/inheritInnerComments.js create mode 100644 node_modules/@babel/types/lib/comments/inheritInnerComments.js.map create mode 100644 node_modules/@babel/types/lib/comments/inheritLeadingComments.js create mode 100644 node_modules/@babel/types/lib/comments/inheritLeadingComments.js.map create mode 100644 node_modules/@babel/types/lib/comments/inheritTrailingComments.js create mode 100644 node_modules/@babel/types/lib/comments/inheritTrailingComments.js.map create mode 100644 node_modules/@babel/types/lib/comments/inheritsComments.js create mode 100644 node_modules/@babel/types/lib/comments/inheritsComments.js.map create mode 100644 node_modules/@babel/types/lib/comments/removeComments.js create mode 100644 node_modules/@babel/types/lib/comments/removeComments.js.map create mode 100644 node_modules/@babel/types/lib/constants/generated/index.js create mode 100644 node_modules/@babel/types/lib/constants/generated/index.js.map create mode 100644 node_modules/@babel/types/lib/constants/index.js create mode 100644 node_modules/@babel/types/lib/constants/index.js.map create mode 100644 node_modules/@babel/types/lib/converters/ensureBlock.js create mode 100644 node_modules/@babel/types/lib/converters/ensureBlock.js.map create mode 100644 node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js create mode 100644 node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js.map create mode 100644 node_modules/@babel/types/lib/converters/toBindingIdentifierName.js create mode 100644 node_modules/@babel/types/lib/converters/toBindingIdentifierName.js.map create mode 100644 node_modules/@babel/types/lib/converters/toBlock.js create mode 100644 node_modules/@babel/types/lib/converters/toBlock.js.map create mode 100644 node_modules/@babel/types/lib/converters/toComputedKey.js create mode 100644 node_modules/@babel/types/lib/converters/toComputedKey.js.map create mode 100644 node_modules/@babel/types/lib/converters/toExpression.js create mode 100644 node_modules/@babel/types/lib/converters/toExpression.js.map create mode 100644 node_modules/@babel/types/lib/converters/toIdentifier.js create mode 100644 node_modules/@babel/types/lib/converters/toIdentifier.js.map create mode 100644 node_modules/@babel/types/lib/converters/toKeyAlias.js create mode 100644 node_modules/@babel/types/lib/converters/toKeyAlias.js.map create mode 100644 node_modules/@babel/types/lib/converters/toSequenceExpression.js create mode 100644 node_modules/@babel/types/lib/converters/toSequenceExpression.js.map create mode 100644 node_modules/@babel/types/lib/converters/toStatement.js create mode 100644 node_modules/@babel/types/lib/converters/toStatement.js.map create mode 100644 node_modules/@babel/types/lib/converters/valueToNode.js create mode 100644 node_modules/@babel/types/lib/converters/valueToNode.js.map create mode 100644 node_modules/@babel/types/lib/definitions/core.js create mode 100644 node_modules/@babel/types/lib/definitions/core.js.map create mode 100644 node_modules/@babel/types/lib/definitions/deprecated-aliases.js create mode 100644 node_modules/@babel/types/lib/definitions/deprecated-aliases.js.map create mode 100644 node_modules/@babel/types/lib/definitions/experimental.js create mode 100644 node_modules/@babel/types/lib/definitions/experimental.js.map create mode 100644 node_modules/@babel/types/lib/definitions/flow.js create mode 100644 node_modules/@babel/types/lib/definitions/flow.js.map create mode 100644 node_modules/@babel/types/lib/definitions/index.js create mode 100644 node_modules/@babel/types/lib/definitions/index.js.map create mode 100644 node_modules/@babel/types/lib/definitions/jsx.js create mode 100644 node_modules/@babel/types/lib/definitions/jsx.js.map create mode 100644 node_modules/@babel/types/lib/definitions/misc.js create mode 100644 node_modules/@babel/types/lib/definitions/misc.js.map create mode 100644 node_modules/@babel/types/lib/definitions/placeholders.js create mode 100644 node_modules/@babel/types/lib/definitions/placeholders.js.map create mode 100644 node_modules/@babel/types/lib/definitions/typescript.js create mode 100644 node_modules/@babel/types/lib/definitions/typescript.js.map create mode 100644 node_modules/@babel/types/lib/definitions/utils.js create mode 100644 node_modules/@babel/types/lib/definitions/utils.js.map create mode 100644 node_modules/@babel/types/lib/index-legacy.d.ts create mode 100644 node_modules/@babel/types/lib/index.d.ts create mode 100644 node_modules/@babel/types/lib/index.js create mode 100644 node_modules/@babel/types/lib/index.js.flow create mode 100644 node_modules/@babel/types/lib/index.js.map create mode 100644 node_modules/@babel/types/lib/modifications/appendToMemberExpression.js create mode 100644 node_modules/@babel/types/lib/modifications/appendToMemberExpression.js.map create mode 100644 node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js create mode 100644 node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js.map create mode 100644 node_modules/@babel/types/lib/modifications/inherits.js create mode 100644 node_modules/@babel/types/lib/modifications/inherits.js.map create mode 100644 node_modules/@babel/types/lib/modifications/prependToMemberExpression.js create mode 100644 node_modules/@babel/types/lib/modifications/prependToMemberExpression.js.map create mode 100644 node_modules/@babel/types/lib/modifications/removeProperties.js create mode 100644 node_modules/@babel/types/lib/modifications/removeProperties.js.map create mode 100644 node_modules/@babel/types/lib/modifications/removePropertiesDeep.js create mode 100644 node_modules/@babel/types/lib/modifications/removePropertiesDeep.js.map create mode 100644 node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js create mode 100644 node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js.map create mode 100644 node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js create mode 100644 node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js.map create mode 100644 node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js create mode 100644 node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js.map create mode 100644 node_modules/@babel/types/lib/retrievers/getFunctionName.js create mode 100644 node_modules/@babel/types/lib/retrievers/getFunctionName.js.map create mode 100644 node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js create mode 100644 node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js.map create mode 100644 node_modules/@babel/types/lib/traverse/traverse.js create mode 100644 node_modules/@babel/types/lib/traverse/traverse.js.map create mode 100644 node_modules/@babel/types/lib/traverse/traverseFast.js create mode 100644 node_modules/@babel/types/lib/traverse/traverseFast.js.map create mode 100644 node_modules/@babel/types/lib/utils/deprecationWarning.js create mode 100644 node_modules/@babel/types/lib/utils/deprecationWarning.js.map create mode 100644 node_modules/@babel/types/lib/utils/inherit.js create mode 100644 node_modules/@babel/types/lib/utils/inherit.js.map create mode 100644 node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js create mode 100644 node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js.map create mode 100644 node_modules/@babel/types/lib/utils/shallowEqual.js create mode 100644 node_modules/@babel/types/lib/utils/shallowEqual.js.map create mode 100644 node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js create mode 100644 node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js.map create mode 100644 node_modules/@babel/types/lib/validators/generated/index.js create mode 100644 node_modules/@babel/types/lib/validators/generated/index.js.map create mode 100644 node_modules/@babel/types/lib/validators/is.js create mode 100644 node_modules/@babel/types/lib/validators/is.js.map create mode 100644 node_modules/@babel/types/lib/validators/isBinding.js create mode 100644 node_modules/@babel/types/lib/validators/isBinding.js.map create mode 100644 node_modules/@babel/types/lib/validators/isBlockScoped.js create mode 100644 node_modules/@babel/types/lib/validators/isBlockScoped.js.map create mode 100644 node_modules/@babel/types/lib/validators/isImmutable.js create mode 100644 node_modules/@babel/types/lib/validators/isImmutable.js.map create mode 100644 node_modules/@babel/types/lib/validators/isLet.js create mode 100644 node_modules/@babel/types/lib/validators/isLet.js.map create mode 100644 node_modules/@babel/types/lib/validators/isNode.js create mode 100644 node_modules/@babel/types/lib/validators/isNode.js.map create mode 100644 node_modules/@babel/types/lib/validators/isNodesEquivalent.js create mode 100644 node_modules/@babel/types/lib/validators/isNodesEquivalent.js.map create mode 100644 node_modules/@babel/types/lib/validators/isPlaceholderType.js create mode 100644 node_modules/@babel/types/lib/validators/isPlaceholderType.js.map create mode 100644 node_modules/@babel/types/lib/validators/isReferenced.js create mode 100644 node_modules/@babel/types/lib/validators/isReferenced.js.map create mode 100644 node_modules/@babel/types/lib/validators/isScope.js create mode 100644 node_modules/@babel/types/lib/validators/isScope.js.map create mode 100644 node_modules/@babel/types/lib/validators/isSpecifierDefault.js create mode 100644 node_modules/@babel/types/lib/validators/isSpecifierDefault.js.map create mode 100644 node_modules/@babel/types/lib/validators/isType.js create mode 100644 node_modules/@babel/types/lib/validators/isType.js.map create mode 100644 node_modules/@babel/types/lib/validators/isValidES3Identifier.js create mode 100644 node_modules/@babel/types/lib/validators/isValidES3Identifier.js.map create mode 100644 node_modules/@babel/types/lib/validators/isValidIdentifier.js create mode 100644 node_modules/@babel/types/lib/validators/isValidIdentifier.js.map create mode 100644 node_modules/@babel/types/lib/validators/isVar.js create mode 100644 node_modules/@babel/types/lib/validators/isVar.js.map create mode 100644 node_modules/@babel/types/lib/validators/matchesPattern.js create mode 100644 node_modules/@babel/types/lib/validators/matchesPattern.js.map create mode 100644 node_modules/@babel/types/lib/validators/react/isCompatTag.js create mode 100644 node_modules/@babel/types/lib/validators/react/isCompatTag.js.map create mode 100644 node_modules/@babel/types/lib/validators/react/isReactComponent.js create mode 100644 node_modules/@babel/types/lib/validators/react/isReactComponent.js.map create mode 100644 node_modules/@babel/types/lib/validators/validate.js create mode 100644 node_modules/@babel/types/lib/validators/validate.js.map create mode 100644 node_modules/@babel/types/package.json create mode 100644 node_modules/@esbuild/linux-arm64/README.md create mode 100755 node_modules/@esbuild/linux-arm64/bin/esbuild create mode 100644 node_modules/@esbuild/linux-arm64/package.json create mode 100644 node_modules/@jridgewell/gen-mapping/LICENSE create mode 100644 node_modules/@jridgewell/gen-mapping/README.md create mode 100644 node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs create mode 100644 node_modules/@jridgewell/gen-mapping/dist/gen-mapping.mjs.map create mode 100644 node_modules/@jridgewell/gen-mapping/dist/gen-mapping.umd.js create mode 100644 node_modules/@jridgewell/gen-mapping/dist/gen-mapping.umd.js.map create mode 100644 node_modules/@jridgewell/gen-mapping/dist/types/gen-mapping.d.ts create mode 100644 node_modules/@jridgewell/gen-mapping/dist/types/set-array.d.ts create mode 100644 node_modules/@jridgewell/gen-mapping/dist/types/sourcemap-segment.d.ts create mode 100644 node_modules/@jridgewell/gen-mapping/dist/types/types.d.ts create mode 100644 node_modules/@jridgewell/gen-mapping/package.json create mode 100644 node_modules/@jridgewell/gen-mapping/src/gen-mapping.ts create mode 100644 node_modules/@jridgewell/gen-mapping/src/set-array.ts create mode 100644 node_modules/@jridgewell/gen-mapping/src/sourcemap-segment.ts create mode 100644 node_modules/@jridgewell/gen-mapping/src/types.ts create mode 100644 node_modules/@jridgewell/gen-mapping/types/gen-mapping.d.cts create mode 100644 node_modules/@jridgewell/gen-mapping/types/gen-mapping.d.cts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/gen-mapping.d.mts create mode 100644 node_modules/@jridgewell/gen-mapping/types/gen-mapping.d.mts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/set-array.d.cts create mode 100644 node_modules/@jridgewell/gen-mapping/types/set-array.d.cts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/set-array.d.mts create mode 100644 node_modules/@jridgewell/gen-mapping/types/set-array.d.mts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/sourcemap-segment.d.cts create mode 100644 node_modules/@jridgewell/gen-mapping/types/sourcemap-segment.d.cts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/sourcemap-segment.d.mts create mode 100644 node_modules/@jridgewell/gen-mapping/types/sourcemap-segment.d.mts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/types.d.cts create mode 100644 node_modules/@jridgewell/gen-mapping/types/types.d.cts.map create mode 100644 node_modules/@jridgewell/gen-mapping/types/types.d.mts create mode 100644 node_modules/@jridgewell/gen-mapping/types/types.d.mts.map create mode 100644 node_modules/@jridgewell/remapping/LICENSE create mode 100644 node_modules/@jridgewell/remapping/README.md create mode 100644 node_modules/@jridgewell/remapping/dist/remapping.mjs create mode 100644 node_modules/@jridgewell/remapping/dist/remapping.mjs.map create mode 100644 node_modules/@jridgewell/remapping/dist/remapping.umd.js create mode 100644 node_modules/@jridgewell/remapping/dist/remapping.umd.js.map create mode 100644 node_modules/@jridgewell/remapping/package.json create mode 100644 node_modules/@jridgewell/remapping/src/build-source-map-tree.ts create mode 100644 node_modules/@jridgewell/remapping/src/remapping.ts create mode 100644 node_modules/@jridgewell/remapping/src/source-map-tree.ts create mode 100644 node_modules/@jridgewell/remapping/src/source-map.ts create mode 100644 node_modules/@jridgewell/remapping/src/types.ts create mode 100644 node_modules/@jridgewell/remapping/types/build-source-map-tree.d.cts create mode 100644 node_modules/@jridgewell/remapping/types/build-source-map-tree.d.cts.map create mode 100644 node_modules/@jridgewell/remapping/types/build-source-map-tree.d.mts create mode 100644 node_modules/@jridgewell/remapping/types/build-source-map-tree.d.mts.map create mode 100644 node_modules/@jridgewell/remapping/types/remapping.d.cts create mode 100644 node_modules/@jridgewell/remapping/types/remapping.d.cts.map create mode 100644 node_modules/@jridgewell/remapping/types/remapping.d.mts create mode 100644 node_modules/@jridgewell/remapping/types/remapping.d.mts.map create mode 100644 node_modules/@jridgewell/remapping/types/source-map-tree.d.cts create mode 100644 node_modules/@jridgewell/remapping/types/source-map-tree.d.cts.map create mode 100644 node_modules/@jridgewell/remapping/types/source-map-tree.d.mts create mode 100644 node_modules/@jridgewell/remapping/types/source-map-tree.d.mts.map create mode 100644 node_modules/@jridgewell/remapping/types/source-map.d.cts create mode 100644 node_modules/@jridgewell/remapping/types/source-map.d.cts.map create mode 100644 node_modules/@jridgewell/remapping/types/source-map.d.mts create mode 100644 node_modules/@jridgewell/remapping/types/source-map.d.mts.map create mode 100644 node_modules/@jridgewell/remapping/types/types.d.cts create mode 100644 node_modules/@jridgewell/remapping/types/types.d.cts.map create mode 100644 node_modules/@jridgewell/remapping/types/types.d.mts create mode 100644 node_modules/@jridgewell/remapping/types/types.d.mts.map create mode 100644 node_modules/@jridgewell/resolve-uri/LICENSE create mode 100644 node_modules/@jridgewell/resolve-uri/README.md create mode 100644 node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs create mode 100644 node_modules/@jridgewell/resolve-uri/dist/resolve-uri.mjs.map create mode 100644 node_modules/@jridgewell/resolve-uri/dist/resolve-uri.umd.js create mode 100644 node_modules/@jridgewell/resolve-uri/dist/resolve-uri.umd.js.map create mode 100644 node_modules/@jridgewell/resolve-uri/dist/types/resolve-uri.d.ts create mode 100644 node_modules/@jridgewell/resolve-uri/package.json create mode 100644 node_modules/@jridgewell/sourcemap-codec/LICENSE create mode 100644 node_modules/@jridgewell/sourcemap-codec/README.md create mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs create mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js create mode 100644 node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/package.json create mode 100644 node_modules/@jridgewell/sourcemap-codec/src/scopes.ts create mode 100644 node_modules/@jridgewell/sourcemap-codec/src/sourcemap-codec.ts create mode 100644 node_modules/@jridgewell/sourcemap-codec/src/strings.ts create mode 100644 node_modules/@jridgewell/sourcemap-codec/src/vlq.ts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/scopes.d.cts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/scopes.d.cts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/scopes.d.mts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/scopes.d.mts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.cts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.cts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.mts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.mts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/strings.d.cts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/strings.d.cts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/strings.d.mts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/strings.d.mts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/vlq.d.cts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/vlq.d.cts.map create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/vlq.d.mts create mode 100644 node_modules/@jridgewell/sourcemap-codec/types/vlq.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/LICENSE create mode 100644 node_modules/@jridgewell/trace-mapping/README.md create mode 100644 node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs create mode 100644 node_modules/@jridgewell/trace-mapping/dist/trace-mapping.mjs.map create mode 100644 node_modules/@jridgewell/trace-mapping/dist/trace-mapping.umd.js create mode 100644 node_modules/@jridgewell/trace-mapping/dist/trace-mapping.umd.js.map create mode 100644 node_modules/@jridgewell/trace-mapping/package.json create mode 100644 node_modules/@jridgewell/trace-mapping/src/binary-search.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/by-source.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/flatten-map.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/resolve.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/sort.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/sourcemap-segment.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/strip-filename.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/trace-mapping.ts create mode 100644 node_modules/@jridgewell/trace-mapping/src/types.ts create mode 100644 node_modules/@jridgewell/trace-mapping/types/binary-search.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/binary-search.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/binary-search.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/binary-search.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/by-source.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/by-source.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/by-source.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/by-source.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/flatten-map.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/flatten-map.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/flatten-map.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/flatten-map.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/resolve.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/resolve.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/resolve.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/resolve.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/sort.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/sort.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/sort.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/sort.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/sourcemap-segment.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/sourcemap-segment.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/sourcemap-segment.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/sourcemap-segment.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/strip-filename.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/strip-filename.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/strip-filename.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/strip-filename.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/trace-mapping.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/trace-mapping.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/trace-mapping.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/trace-mapping.d.mts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/types.d.cts create mode 100644 node_modules/@jridgewell/trace-mapping/types/types.d.cts.map create mode 100644 node_modules/@jridgewell/trace-mapping/types/types.d.mts create mode 100644 node_modules/@jridgewell/trace-mapping/types/types.d.mts.map create mode 100644 node_modules/@rolldown/pluginutils/LICENSE create mode 100644 node_modules/@rolldown/pluginutils/dist/index.cjs create mode 100644 node_modules/@rolldown/pluginutils/dist/index.d.cts create mode 100644 node_modules/@rolldown/pluginutils/dist/index.d.ts create mode 100644 node_modules/@rolldown/pluginutils/dist/index.js create mode 100644 node_modules/@rolldown/pluginutils/package.json create mode 100644 node_modules/@rollup/rollup-linux-arm64-gnu/README.md create mode 100644 node_modules/@rollup/rollup-linux-arm64-gnu/package.json create mode 100644 node_modules/@rollup/rollup-linux-arm64-gnu/rollup.linux-arm64-gnu.node create mode 100644 node_modules/@types/babel__core/LICENSE create mode 100644 node_modules/@types/babel__core/README.md create mode 100644 node_modules/@types/babel__core/index.d.ts create mode 100644 node_modules/@types/babel__core/package.json create mode 100644 node_modules/@types/babel__generator/LICENSE create mode 100644 node_modules/@types/babel__generator/README.md create mode 100644 node_modules/@types/babel__generator/index.d.ts create mode 100644 node_modules/@types/babel__generator/package.json create mode 100644 node_modules/@types/babel__template/LICENSE create mode 100644 node_modules/@types/babel__template/README.md create mode 100644 node_modules/@types/babel__template/index.d.ts create mode 100644 node_modules/@types/babel__template/package.json create mode 100644 node_modules/@types/babel__traverse/LICENSE create mode 100644 node_modules/@types/babel__traverse/README.md create mode 100644 node_modules/@types/babel__traverse/index.d.ts create mode 100644 node_modules/@types/babel__traverse/package.json create mode 100644 node_modules/@types/estree/LICENSE create mode 100644 node_modules/@types/estree/README.md create mode 100644 node_modules/@types/estree/flow.d.ts create mode 100644 node_modules/@types/estree/index.d.ts create mode 100644 node_modules/@types/estree/package.json create mode 100644 node_modules/@vitejs/plugin-react/LICENSE create mode 100644 node_modules/@vitejs/plugin-react/README.md create mode 100644 node_modules/@vitejs/plugin-react/dist/index.cjs create mode 100644 node_modules/@vitejs/plugin-react/dist/index.d.cts create mode 100644 node_modules/@vitejs/plugin-react/dist/index.d.ts create mode 100644 node_modules/@vitejs/plugin-react/dist/index.js create mode 100644 node_modules/@vitejs/plugin-react/dist/refresh-runtime.js create mode 100644 node_modules/@vitejs/plugin-react/package.json create mode 100644 node_modules/baseline-browser-mapping/LICENSE.txt create mode 100644 node_modules/baseline-browser-mapping/README.md create mode 100755 node_modules/baseline-browser-mapping/dist/cli.cjs create mode 100644 node_modules/baseline-browser-mapping/dist/index.cjs create mode 100644 node_modules/baseline-browser-mapping/dist/index.d.ts create mode 100644 node_modules/baseline-browser-mapping/dist/index.js create mode 100644 node_modules/baseline-browser-mapping/package.json create mode 100644 node_modules/browserslist/LICENSE create mode 100644 node_modules/browserslist/README.md create mode 100644 node_modules/browserslist/browser.js create mode 100755 node_modules/browserslist/cli.js create mode 100644 node_modules/browserslist/error.d.ts create mode 100644 node_modules/browserslist/error.js create mode 100644 node_modules/browserslist/index.d.ts create mode 100644 node_modules/browserslist/index.js create mode 100644 node_modules/browserslist/node.js create mode 100644 node_modules/browserslist/package.json create mode 100644 node_modules/browserslist/parse.js create mode 100644 node_modules/caniuse-lite/LICENSE create mode 100644 node_modules/caniuse-lite/README.md create mode 100644 node_modules/caniuse-lite/data/agents.js create mode 100644 node_modules/caniuse-lite/data/browserVersions.js create mode 100644 node_modules/caniuse-lite/data/browsers.js create mode 100644 node_modules/caniuse-lite/data/features.js create mode 100644 node_modules/caniuse-lite/data/features/aac.js create mode 100644 node_modules/caniuse-lite/data/features/abortcontroller.js create mode 100644 node_modules/caniuse-lite/data/features/ac3-ec3.js create mode 100644 node_modules/caniuse-lite/data/features/accelerometer.js create mode 100644 node_modules/caniuse-lite/data/features/addeventlistener.js create mode 100644 node_modules/caniuse-lite/data/features/alternate-stylesheet.js create mode 100644 node_modules/caniuse-lite/data/features/ambient-light.js create mode 100644 node_modules/caniuse-lite/data/features/apng.js create mode 100644 node_modules/caniuse-lite/data/features/array-find-index.js create mode 100644 node_modules/caniuse-lite/data/features/array-find.js create mode 100644 node_modules/caniuse-lite/data/features/array-flat.js create mode 100644 node_modules/caniuse-lite/data/features/array-includes.js create mode 100644 node_modules/caniuse-lite/data/features/arrow-functions.js create mode 100644 node_modules/caniuse-lite/data/features/asmjs.js create mode 100644 node_modules/caniuse-lite/data/features/async-clipboard.js create mode 100644 node_modules/caniuse-lite/data/features/async-functions.js create mode 100644 node_modules/caniuse-lite/data/features/atob-btoa.js create mode 100644 node_modules/caniuse-lite/data/features/audio-api.js create mode 100644 node_modules/caniuse-lite/data/features/audio.js create mode 100644 node_modules/caniuse-lite/data/features/audiotracks.js create mode 100644 node_modules/caniuse-lite/data/features/autofocus.js create mode 100644 node_modules/caniuse-lite/data/features/auxclick.js create mode 100644 node_modules/caniuse-lite/data/features/av1.js create mode 100644 node_modules/caniuse-lite/data/features/avif.js create mode 100644 node_modules/caniuse-lite/data/features/background-attachment.js create mode 100644 node_modules/caniuse-lite/data/features/background-clip-text.js create mode 100644 node_modules/caniuse-lite/data/features/background-img-opts.js create mode 100644 node_modules/caniuse-lite/data/features/background-position-x-y.js create mode 100644 node_modules/caniuse-lite/data/features/background-repeat-round-space.js create mode 100644 node_modules/caniuse-lite/data/features/background-sync.js create mode 100644 node_modules/caniuse-lite/data/features/battery-status.js create mode 100644 node_modules/caniuse-lite/data/features/beacon.js create mode 100644 node_modules/caniuse-lite/data/features/beforeafterprint.js create mode 100644 node_modules/caniuse-lite/data/features/bigint.js create mode 100644 node_modules/caniuse-lite/data/features/blobbuilder.js create mode 100644 node_modules/caniuse-lite/data/features/bloburls.js create mode 100644 node_modules/caniuse-lite/data/features/border-image.js create mode 100644 node_modules/caniuse-lite/data/features/border-radius.js create mode 100644 node_modules/caniuse-lite/data/features/broadcastchannel.js create mode 100644 node_modules/caniuse-lite/data/features/brotli.js create mode 100644 node_modules/caniuse-lite/data/features/calc.js create mode 100644 node_modules/caniuse-lite/data/features/canvas-blending.js create mode 100644 node_modules/caniuse-lite/data/features/canvas-text.js create mode 100644 node_modules/caniuse-lite/data/features/canvas.js create mode 100644 node_modules/caniuse-lite/data/features/ch-unit.js create mode 100644 node_modules/caniuse-lite/data/features/chacha20-poly1305.js create mode 100644 node_modules/caniuse-lite/data/features/channel-messaging.js create mode 100644 node_modules/caniuse-lite/data/features/childnode-remove.js create mode 100644 node_modules/caniuse-lite/data/features/classlist.js create mode 100644 node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js create mode 100644 node_modules/caniuse-lite/data/features/clipboard.js create mode 100644 node_modules/caniuse-lite/data/features/colr-v1.js create mode 100644 node_modules/caniuse-lite/data/features/colr.js create mode 100644 node_modules/caniuse-lite/data/features/comparedocumentposition.js create mode 100644 node_modules/caniuse-lite/data/features/console-basic.js create mode 100644 node_modules/caniuse-lite/data/features/console-time.js create mode 100644 node_modules/caniuse-lite/data/features/const.js create mode 100644 node_modules/caniuse-lite/data/features/constraint-validation.js create mode 100644 node_modules/caniuse-lite/data/features/contenteditable.js create mode 100644 node_modules/caniuse-lite/data/features/contentsecuritypolicy.js create mode 100644 node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js create mode 100644 node_modules/caniuse-lite/data/features/cookie-store-api.js create mode 100644 node_modules/caniuse-lite/data/features/cors.js create mode 100644 node_modules/caniuse-lite/data/features/createimagebitmap.js create mode 100644 node_modules/caniuse-lite/data/features/credential-management.js create mode 100644 node_modules/caniuse-lite/data/features/cross-document-view-transitions.js create mode 100644 node_modules/caniuse-lite/data/features/cryptography.js create mode 100644 node_modules/caniuse-lite/data/features/css-all.js create mode 100644 node_modules/caniuse-lite/data/features/css-anchor-positioning.js create mode 100644 node_modules/caniuse-lite/data/features/css-animation.js create mode 100644 node_modules/caniuse-lite/data/features/css-any-link.js create mode 100644 node_modules/caniuse-lite/data/features/css-appearance.js create mode 100644 node_modules/caniuse-lite/data/features/css-at-counter-style.js create mode 100644 node_modules/caniuse-lite/data/features/css-autofill.js create mode 100644 node_modules/caniuse-lite/data/features/css-backdrop-filter.js create mode 100644 node_modules/caniuse-lite/data/features/css-background-offsets.js create mode 100644 node_modules/caniuse-lite/data/features/css-backgroundblendmode.js create mode 100644 node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js create mode 100644 node_modules/caniuse-lite/data/features/css-boxshadow.js create mode 100644 node_modules/caniuse-lite/data/features/css-canvas.js create mode 100644 node_modules/caniuse-lite/data/features/css-caret-color.js create mode 100644 node_modules/caniuse-lite/data/features/css-cascade-layers.js create mode 100644 node_modules/caniuse-lite/data/features/css-cascade-scope.js create mode 100644 node_modules/caniuse-lite/data/features/css-case-insensitive.js create mode 100644 node_modules/caniuse-lite/data/features/css-clip-path.js create mode 100644 node_modules/caniuse-lite/data/features/css-color-adjust.js create mode 100644 node_modules/caniuse-lite/data/features/css-color-function.js create mode 100644 node_modules/caniuse-lite/data/features/css-conic-gradients.js create mode 100644 node_modules/caniuse-lite/data/features/css-container-queries-style.js create mode 100644 node_modules/caniuse-lite/data/features/css-container-queries.js create mode 100644 node_modules/caniuse-lite/data/features/css-container-query-units.js create mode 100644 node_modules/caniuse-lite/data/features/css-containment.js create mode 100644 node_modules/caniuse-lite/data/features/css-content-visibility.js create mode 100644 node_modules/caniuse-lite/data/features/css-counters.js create mode 100644 node_modules/caniuse-lite/data/features/css-crisp-edges.js create mode 100644 node_modules/caniuse-lite/data/features/css-cross-fade.js create mode 100644 node_modules/caniuse-lite/data/features/css-default-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-descendant-gtgt.js create mode 100644 node_modules/caniuse-lite/data/features/css-deviceadaptation.js create mode 100644 node_modules/caniuse-lite/data/features/css-dir-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-display-contents.js create mode 100644 node_modules/caniuse-lite/data/features/css-element-function.js create mode 100644 node_modules/caniuse-lite/data/features/css-env-function.js create mode 100644 node_modules/caniuse-lite/data/features/css-exclusions.js create mode 100644 node_modules/caniuse-lite/data/features/css-featurequeries.js create mode 100644 node_modules/caniuse-lite/data/features/css-file-selector-button.js create mode 100644 node_modules/caniuse-lite/data/features/css-filter-function.js create mode 100644 node_modules/caniuse-lite/data/features/css-filters.js create mode 100644 node_modules/caniuse-lite/data/features/css-first-letter.js create mode 100644 node_modules/caniuse-lite/data/features/css-first-line.js create mode 100644 node_modules/caniuse-lite/data/features/css-fixed.js create mode 100644 node_modules/caniuse-lite/data/features/css-focus-visible.js create mode 100644 node_modules/caniuse-lite/data/features/css-focus-within.js create mode 100644 node_modules/caniuse-lite/data/features/css-font-palette.js create mode 100644 node_modules/caniuse-lite/data/features/css-font-rendering-controls.js create mode 100644 node_modules/caniuse-lite/data/features/css-font-stretch.js create mode 100644 node_modules/caniuse-lite/data/features/css-gencontent.js create mode 100644 node_modules/caniuse-lite/data/features/css-gradients.js create mode 100644 node_modules/caniuse-lite/data/features/css-grid-animation.js create mode 100644 node_modules/caniuse-lite/data/features/css-grid-lanes.js create mode 100644 node_modules/caniuse-lite/data/features/css-grid.js create mode 100644 node_modules/caniuse-lite/data/features/css-hanging-punctuation.js create mode 100644 node_modules/caniuse-lite/data/features/css-has.js create mode 100644 node_modules/caniuse-lite/data/features/css-hyphens.js create mode 100644 node_modules/caniuse-lite/data/features/css-if.js create mode 100644 node_modules/caniuse-lite/data/features/css-image-orientation.js create mode 100644 node_modules/caniuse-lite/data/features/css-image-set.js create mode 100644 node_modules/caniuse-lite/data/features/css-in-out-of-range.js create mode 100644 node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-initial-letter.js create mode 100644 node_modules/caniuse-lite/data/features/css-initial-value.js create mode 100644 node_modules/caniuse-lite/data/features/css-lch-lab.js create mode 100644 node_modules/caniuse-lite/data/features/css-letter-spacing.js create mode 100644 node_modules/caniuse-lite/data/features/css-line-clamp.js create mode 100644 node_modules/caniuse-lite/data/features/css-logical-props.js create mode 100644 node_modules/caniuse-lite/data/features/css-marker-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-masks.js create mode 100644 node_modules/caniuse-lite/data/features/css-matches-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-math-functions.js create mode 100644 node_modules/caniuse-lite/data/features/css-media-interaction.js create mode 100644 node_modules/caniuse-lite/data/features/css-media-range-syntax.js create mode 100644 node_modules/caniuse-lite/data/features/css-media-resolution.js create mode 100644 node_modules/caniuse-lite/data/features/css-media-scripting.js create mode 100644 node_modules/caniuse-lite/data/features/css-mediaqueries.js create mode 100644 node_modules/caniuse-lite/data/features/css-mixblendmode.js create mode 100644 node_modules/caniuse-lite/data/features/css-module-scripts.js create mode 100644 node_modules/caniuse-lite/data/features/css-motion-paths.js create mode 100644 node_modules/caniuse-lite/data/features/css-namespaces.js create mode 100644 node_modules/caniuse-lite/data/features/css-nesting.js create mode 100644 node_modules/caniuse-lite/data/features/css-not-sel-list.js create mode 100644 node_modules/caniuse-lite/data/features/css-nth-child-of.js create mode 100644 node_modules/caniuse-lite/data/features/css-opacity.js create mode 100644 node_modules/caniuse-lite/data/features/css-optional-pseudo.js create mode 100644 node_modules/caniuse-lite/data/features/css-overflow-anchor.js create mode 100644 node_modules/caniuse-lite/data/features/css-overflow-overlay.js create mode 100644 node_modules/caniuse-lite/data/features/css-overflow.js create mode 100644 node_modules/caniuse-lite/data/features/css-overscroll-behavior.js create mode 100644 node_modules/caniuse-lite/data/features/css-page-break.js create mode 100644 node_modules/caniuse-lite/data/features/css-paged-media.js create mode 100644 node_modules/caniuse-lite/data/features/css-paint-api.js create mode 100644 node_modules/caniuse-lite/data/features/css-placeholder-shown.js create mode 100644 node_modules/caniuse-lite/data/features/css-placeholder.js create mode 100644 node_modules/caniuse-lite/data/features/css-print-color-adjust.js create mode 100644 node_modules/caniuse-lite/data/features/css-read-only-write.js create mode 100644 node_modules/caniuse-lite/data/features/css-rebeccapurple.js create mode 100644 node_modules/caniuse-lite/data/features/css-reflections.js create mode 100644 node_modules/caniuse-lite/data/features/css-regions.js create mode 100644 node_modules/caniuse-lite/data/features/css-relative-colors.js create mode 100644 node_modules/caniuse-lite/data/features/css-repeating-gradients.js create mode 100644 node_modules/caniuse-lite/data/features/css-resize.js create mode 100644 node_modules/caniuse-lite/data/features/css-revert-value.js create mode 100644 node_modules/caniuse-lite/data/features/css-rrggbbaa.js create mode 100644 node_modules/caniuse-lite/data/features/css-scroll-behavior.js create mode 100644 node_modules/caniuse-lite/data/features/css-scrollbar.js create mode 100644 node_modules/caniuse-lite/data/features/css-sel2.js create mode 100644 node_modules/caniuse-lite/data/features/css-sel3.js create mode 100644 node_modules/caniuse-lite/data/features/css-selection.js create mode 100644 node_modules/caniuse-lite/data/features/css-shapes.js create mode 100644 node_modules/caniuse-lite/data/features/css-snappoints.js create mode 100644 node_modules/caniuse-lite/data/features/css-sticky.js create mode 100644 node_modules/caniuse-lite/data/features/css-subgrid.js create mode 100644 node_modules/caniuse-lite/data/features/css-supports-api.js create mode 100644 node_modules/caniuse-lite/data/features/css-table.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-align-last.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-box-trim.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-indent.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-justify.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-orientation.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-spacing.js create mode 100644 node_modules/caniuse-lite/data/features/css-text-wrap-balance.js create mode 100644 node_modules/caniuse-lite/data/features/css-textshadow.js create mode 100644 node_modules/caniuse-lite/data/features/css-touch-action.js create mode 100644 node_modules/caniuse-lite/data/features/css-transitions.js create mode 100644 node_modules/caniuse-lite/data/features/css-unicode-bidi.js create mode 100644 node_modules/caniuse-lite/data/features/css-unset-value.js create mode 100644 node_modules/caniuse-lite/data/features/css-variables.js create mode 100644 node_modules/caniuse-lite/data/features/css-when-else.js create mode 100644 node_modules/caniuse-lite/data/features/css-widows-orphans.js create mode 100644 node_modules/caniuse-lite/data/features/css-width-stretch.js create mode 100644 node_modules/caniuse-lite/data/features/css-writing-mode.js create mode 100644 node_modules/caniuse-lite/data/features/css-zoom.js create mode 100644 node_modules/caniuse-lite/data/features/css3-attr.js create mode 100644 node_modules/caniuse-lite/data/features/css3-boxsizing.js create mode 100644 node_modules/caniuse-lite/data/features/css3-colors.js create mode 100644 node_modules/caniuse-lite/data/features/css3-cursors-grab.js create mode 100644 node_modules/caniuse-lite/data/features/css3-cursors-newer.js create mode 100644 node_modules/caniuse-lite/data/features/css3-cursors.js create mode 100644 node_modules/caniuse-lite/data/features/css3-tabsize.js create mode 100644 node_modules/caniuse-lite/data/features/currentcolor.js create mode 100644 node_modules/caniuse-lite/data/features/custom-elements.js create mode 100644 node_modules/caniuse-lite/data/features/custom-elementsv1.js create mode 100644 node_modules/caniuse-lite/data/features/customevent.js create mode 100644 node_modules/caniuse-lite/data/features/customizable-select.js create mode 100644 node_modules/caniuse-lite/data/features/datalist.js create mode 100644 node_modules/caniuse-lite/data/features/dataset.js create mode 100644 node_modules/caniuse-lite/data/features/datauri.js create mode 100644 node_modules/caniuse-lite/data/features/date-tolocaledatestring.js create mode 100644 node_modules/caniuse-lite/data/features/declarative-shadow-dom.js create mode 100644 node_modules/caniuse-lite/data/features/decorators.js create mode 100644 node_modules/caniuse-lite/data/features/details.js create mode 100644 node_modules/caniuse-lite/data/features/deviceorientation.js create mode 100644 node_modules/caniuse-lite/data/features/devicepixelratio.js create mode 100644 node_modules/caniuse-lite/data/features/dialog.js create mode 100644 node_modules/caniuse-lite/data/features/dispatchevent.js create mode 100644 node_modules/caniuse-lite/data/features/dnssec.js create mode 100644 node_modules/caniuse-lite/data/features/do-not-track.js create mode 100644 node_modules/caniuse-lite/data/features/document-currentscript.js create mode 100644 node_modules/caniuse-lite/data/features/document-evaluate-xpath.js create mode 100644 node_modules/caniuse-lite/data/features/document-execcommand.js create mode 100644 node_modules/caniuse-lite/data/features/document-policy.js create mode 100644 node_modules/caniuse-lite/data/features/document-scrollingelement.js create mode 100644 node_modules/caniuse-lite/data/features/documenthead.js create mode 100644 node_modules/caniuse-lite/data/features/dom-manip-convenience.js create mode 100644 node_modules/caniuse-lite/data/features/dom-range.js create mode 100644 node_modules/caniuse-lite/data/features/domcontentloaded.js create mode 100644 node_modules/caniuse-lite/data/features/dommatrix.js create mode 100644 node_modules/caniuse-lite/data/features/download.js create mode 100644 node_modules/caniuse-lite/data/features/dragndrop.js create mode 100644 node_modules/caniuse-lite/data/features/element-closest.js create mode 100644 node_modules/caniuse-lite/data/features/element-from-point.js create mode 100644 node_modules/caniuse-lite/data/features/element-scroll-methods.js create mode 100644 node_modules/caniuse-lite/data/features/eme.js create mode 100644 node_modules/caniuse-lite/data/features/eot.js create mode 100644 node_modules/caniuse-lite/data/features/es5.js create mode 100644 node_modules/caniuse-lite/data/features/es6-class.js create mode 100644 node_modules/caniuse-lite/data/features/es6-generators.js create mode 100644 node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js create mode 100644 node_modules/caniuse-lite/data/features/es6-module.js create mode 100644 node_modules/caniuse-lite/data/features/es6-number.js create mode 100644 node_modules/caniuse-lite/data/features/es6-string-includes.js create mode 100644 node_modules/caniuse-lite/data/features/es6.js create mode 100644 node_modules/caniuse-lite/data/features/eventsource.js create mode 100644 node_modules/caniuse-lite/data/features/extended-system-fonts.js create mode 100644 node_modules/caniuse-lite/data/features/feature-policy.js create mode 100644 node_modules/caniuse-lite/data/features/fetch.js create mode 100644 node_modules/caniuse-lite/data/features/fieldset-disabled.js create mode 100644 node_modules/caniuse-lite/data/features/fileapi.js create mode 100644 node_modules/caniuse-lite/data/features/filereader.js create mode 100644 node_modules/caniuse-lite/data/features/filereadersync.js create mode 100644 node_modules/caniuse-lite/data/features/filesystem.js create mode 100644 node_modules/caniuse-lite/data/features/flac.js create mode 100644 node_modules/caniuse-lite/data/features/flexbox-gap.js create mode 100644 node_modules/caniuse-lite/data/features/flexbox.js create mode 100644 node_modules/caniuse-lite/data/features/flow-root.js create mode 100644 node_modules/caniuse-lite/data/features/focusin-focusout-events.js create mode 100644 node_modules/caniuse-lite/data/features/font-family-system-ui.js create mode 100644 node_modules/caniuse-lite/data/features/font-feature.js create mode 100644 node_modules/caniuse-lite/data/features/font-kerning.js create mode 100644 node_modules/caniuse-lite/data/features/font-loading.js create mode 100644 node_modules/caniuse-lite/data/features/font-size-adjust.js create mode 100644 node_modules/caniuse-lite/data/features/font-smooth.js create mode 100644 node_modules/caniuse-lite/data/features/font-unicode-range.js create mode 100644 node_modules/caniuse-lite/data/features/font-variant-alternates.js create mode 100644 node_modules/caniuse-lite/data/features/font-variant-numeric.js create mode 100644 node_modules/caniuse-lite/data/features/fontface.js create mode 100644 node_modules/caniuse-lite/data/features/form-attribute.js create mode 100644 node_modules/caniuse-lite/data/features/form-submit-attributes.js create mode 100644 node_modules/caniuse-lite/data/features/form-validation.js create mode 100644 node_modules/caniuse-lite/data/features/forms.js create mode 100644 node_modules/caniuse-lite/data/features/fullscreen.js create mode 100644 node_modules/caniuse-lite/data/features/gamepad.js create mode 100644 node_modules/caniuse-lite/data/features/geolocation.js create mode 100644 node_modules/caniuse-lite/data/features/getboundingclientrect.js create mode 100644 node_modules/caniuse-lite/data/features/getcomputedstyle.js create mode 100644 node_modules/caniuse-lite/data/features/getelementsbyclassname.js create mode 100644 node_modules/caniuse-lite/data/features/getrandomvalues.js create mode 100644 node_modules/caniuse-lite/data/features/gyroscope.js create mode 100644 node_modules/caniuse-lite/data/features/hardwareconcurrency.js create mode 100644 node_modules/caniuse-lite/data/features/hashchange.js create mode 100644 node_modules/caniuse-lite/data/features/heif.js create mode 100644 node_modules/caniuse-lite/data/features/hevc.js create mode 100644 node_modules/caniuse-lite/data/features/hidden.js create mode 100644 node_modules/caniuse-lite/data/features/high-resolution-time.js create mode 100644 node_modules/caniuse-lite/data/features/history.js create mode 100644 node_modules/caniuse-lite/data/features/html-media-capture.js create mode 100644 node_modules/caniuse-lite/data/features/html5semantic.js create mode 100644 node_modules/caniuse-lite/data/features/http-live-streaming.js create mode 100644 node_modules/caniuse-lite/data/features/http2.js create mode 100644 node_modules/caniuse-lite/data/features/http3.js create mode 100644 node_modules/caniuse-lite/data/features/iframe-sandbox.js create mode 100644 node_modules/caniuse-lite/data/features/iframe-seamless.js create mode 100644 node_modules/caniuse-lite/data/features/iframe-srcdoc.js create mode 100644 node_modules/caniuse-lite/data/features/imagecapture.js create mode 100644 node_modules/caniuse-lite/data/features/ime.js create mode 100644 node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js create mode 100644 node_modules/caniuse-lite/data/features/import-maps.js create mode 100644 node_modules/caniuse-lite/data/features/imports.js create mode 100644 node_modules/caniuse-lite/data/features/indeterminate-checkbox.js create mode 100644 node_modules/caniuse-lite/data/features/indexeddb.js create mode 100644 node_modules/caniuse-lite/data/features/indexeddb2.js create mode 100644 node_modules/caniuse-lite/data/features/inline-block.js create mode 100644 node_modules/caniuse-lite/data/features/innertext.js create mode 100644 node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js create mode 100644 node_modules/caniuse-lite/data/features/input-color.js create mode 100644 node_modules/caniuse-lite/data/features/input-datetime.js create mode 100644 node_modules/caniuse-lite/data/features/input-email-tel-url.js create mode 100644 node_modules/caniuse-lite/data/features/input-event.js create mode 100644 node_modules/caniuse-lite/data/features/input-file-accept.js create mode 100644 node_modules/caniuse-lite/data/features/input-file-directory.js create mode 100644 node_modules/caniuse-lite/data/features/input-file-multiple.js create mode 100644 node_modules/caniuse-lite/data/features/input-inputmode.js create mode 100644 node_modules/caniuse-lite/data/features/input-minlength.js create mode 100644 node_modules/caniuse-lite/data/features/input-number.js create mode 100644 node_modules/caniuse-lite/data/features/input-pattern.js create mode 100644 node_modules/caniuse-lite/data/features/input-placeholder.js create mode 100644 node_modules/caniuse-lite/data/features/input-range.js create mode 100644 node_modules/caniuse-lite/data/features/input-search.js create mode 100644 node_modules/caniuse-lite/data/features/input-selection.js create mode 100644 node_modules/caniuse-lite/data/features/insert-adjacent.js create mode 100644 node_modules/caniuse-lite/data/features/insertadjacenthtml.js create mode 100644 node_modules/caniuse-lite/data/features/internationalization.js create mode 100644 node_modules/caniuse-lite/data/features/intersectionobserver-v2.js create mode 100644 node_modules/caniuse-lite/data/features/intersectionobserver.js create mode 100644 node_modules/caniuse-lite/data/features/intl-pluralrules.js create mode 100644 node_modules/caniuse-lite/data/features/intrinsic-width.js create mode 100644 node_modules/caniuse-lite/data/features/jpeg2000.js create mode 100644 node_modules/caniuse-lite/data/features/jpegxl.js create mode 100644 node_modules/caniuse-lite/data/features/jpegxr.js create mode 100644 node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js create mode 100644 node_modules/caniuse-lite/data/features/json.js create mode 100644 node_modules/caniuse-lite/data/features/justify-content-space-evenly.js create mode 100644 node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-charcode.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-code.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-key.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-location.js create mode 100644 node_modules/caniuse-lite/data/features/keyboardevent-which.js create mode 100644 node_modules/caniuse-lite/data/features/lazyload.js create mode 100644 node_modules/caniuse-lite/data/features/let.js create mode 100644 node_modules/caniuse-lite/data/features/link-icon-png.js create mode 100644 node_modules/caniuse-lite/data/features/link-icon-svg.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-modulepreload.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-preconnect.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-prefetch.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-preload.js create mode 100644 node_modules/caniuse-lite/data/features/link-rel-prerender.js create mode 100644 node_modules/caniuse-lite/data/features/loading-lazy-attr.js create mode 100644 node_modules/caniuse-lite/data/features/loading-lazy-media.js create mode 100644 node_modules/caniuse-lite/data/features/localecompare.js create mode 100644 node_modules/caniuse-lite/data/features/magnetometer.js create mode 100644 node_modules/caniuse-lite/data/features/matchesselector.js create mode 100644 node_modules/caniuse-lite/data/features/matchmedia.js create mode 100644 node_modules/caniuse-lite/data/features/mathml.js create mode 100644 node_modules/caniuse-lite/data/features/maxlength.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-css-backdrop-pseudo-element.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate-override.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-plaintext.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-text-decoration-color.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-text-decoration-line.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-text-decoration-shorthand.js create mode 100644 node_modules/caniuse-lite/data/features/mdn-text-decoration-style.js create mode 100644 node_modules/caniuse-lite/data/features/media-fragments.js create mode 100644 node_modules/caniuse-lite/data/features/mediacapture-fromelement.js create mode 100644 node_modules/caniuse-lite/data/features/mediarecorder.js create mode 100644 node_modules/caniuse-lite/data/features/mediasource.js create mode 100644 node_modules/caniuse-lite/data/features/menu.js create mode 100644 node_modules/caniuse-lite/data/features/meta-theme-color.js create mode 100644 node_modules/caniuse-lite/data/features/meter.js create mode 100644 node_modules/caniuse-lite/data/features/midi.js create mode 100644 node_modules/caniuse-lite/data/features/minmaxwh.js create mode 100644 node_modules/caniuse-lite/data/features/mp3.js create mode 100644 node_modules/caniuse-lite/data/features/mpeg-dash.js create mode 100644 node_modules/caniuse-lite/data/features/mpeg4.js create mode 100644 node_modules/caniuse-lite/data/features/multibackgrounds.js create mode 100644 node_modules/caniuse-lite/data/features/multicolumn.js create mode 100644 node_modules/caniuse-lite/data/features/mutation-events.js create mode 100644 node_modules/caniuse-lite/data/features/mutationobserver.js create mode 100644 node_modules/caniuse-lite/data/features/namevalue-storage.js create mode 100644 node_modules/caniuse-lite/data/features/native-filesystem-api.js create mode 100644 node_modules/caniuse-lite/data/features/nav-timing.js create mode 100644 node_modules/caniuse-lite/data/features/netinfo.js create mode 100644 node_modules/caniuse-lite/data/features/notifications.js create mode 100644 node_modules/caniuse-lite/data/features/object-entries.js create mode 100644 node_modules/caniuse-lite/data/features/object-fit.js create mode 100644 node_modules/caniuse-lite/data/features/object-observe.js create mode 100644 node_modules/caniuse-lite/data/features/object-values.js create mode 100644 node_modules/caniuse-lite/data/features/objectrtc.js create mode 100644 node_modules/caniuse-lite/data/features/offline-apps.js create mode 100644 node_modules/caniuse-lite/data/features/offscreencanvas.js create mode 100644 node_modules/caniuse-lite/data/features/ogg-vorbis.js create mode 100644 node_modules/caniuse-lite/data/features/ogv.js create mode 100644 node_modules/caniuse-lite/data/features/ol-reversed.js create mode 100644 node_modules/caniuse-lite/data/features/once-event-listener.js create mode 100644 node_modules/caniuse-lite/data/features/online-status.js create mode 100644 node_modules/caniuse-lite/data/features/opus.js create mode 100644 node_modules/caniuse-lite/data/features/orientation-sensor.js create mode 100644 node_modules/caniuse-lite/data/features/outline.js create mode 100644 node_modules/caniuse-lite/data/features/pad-start-end.js create mode 100644 node_modules/caniuse-lite/data/features/page-transition-events.js create mode 100644 node_modules/caniuse-lite/data/features/pagevisibility.js create mode 100644 node_modules/caniuse-lite/data/features/passive-event-listener.js create mode 100644 node_modules/caniuse-lite/data/features/passkeys.js create mode 100644 node_modules/caniuse-lite/data/features/passwordrules.js create mode 100644 node_modules/caniuse-lite/data/features/path2d.js create mode 100644 node_modules/caniuse-lite/data/features/payment-request.js create mode 100644 node_modules/caniuse-lite/data/features/pdf-viewer.js create mode 100644 node_modules/caniuse-lite/data/features/permissions-api.js create mode 100644 node_modules/caniuse-lite/data/features/permissions-policy.js create mode 100644 node_modules/caniuse-lite/data/features/picture-in-picture.js create mode 100644 node_modules/caniuse-lite/data/features/picture.js create mode 100644 node_modules/caniuse-lite/data/features/ping.js create mode 100644 node_modules/caniuse-lite/data/features/png-alpha.js create mode 100644 node_modules/caniuse-lite/data/features/pointer-events.js create mode 100644 node_modules/caniuse-lite/data/features/pointer.js create mode 100644 node_modules/caniuse-lite/data/features/pointerlock.js create mode 100644 node_modules/caniuse-lite/data/features/portals.js create mode 100644 node_modules/caniuse-lite/data/features/prefers-color-scheme.js create mode 100644 node_modules/caniuse-lite/data/features/prefers-reduced-motion.js create mode 100644 node_modules/caniuse-lite/data/features/progress.js create mode 100644 node_modules/caniuse-lite/data/features/promise-finally.js create mode 100644 node_modules/caniuse-lite/data/features/promises.js create mode 100644 node_modules/caniuse-lite/data/features/proximity.js create mode 100644 node_modules/caniuse-lite/data/features/proxy.js create mode 100644 node_modules/caniuse-lite/data/features/publickeypinning.js create mode 100644 node_modules/caniuse-lite/data/features/push-api.js create mode 100644 node_modules/caniuse-lite/data/features/queryselector.js create mode 100644 node_modules/caniuse-lite/data/features/readonly-attr.js create mode 100644 node_modules/caniuse-lite/data/features/referrer-policy.js create mode 100644 node_modules/caniuse-lite/data/features/registerprotocolhandler.js create mode 100644 node_modules/caniuse-lite/data/features/rel-noopener.js create mode 100644 node_modules/caniuse-lite/data/features/rel-noreferrer.js create mode 100644 node_modules/caniuse-lite/data/features/rellist.js create mode 100644 node_modules/caniuse-lite/data/features/rem.js create mode 100644 node_modules/caniuse-lite/data/features/requestanimationframe.js create mode 100644 node_modules/caniuse-lite/data/features/requestidlecallback.js create mode 100644 node_modules/caniuse-lite/data/features/resizeobserver.js create mode 100644 node_modules/caniuse-lite/data/features/resource-timing.js create mode 100644 node_modules/caniuse-lite/data/features/rest-parameters.js create mode 100644 node_modules/caniuse-lite/data/features/rtcpeerconnection.js create mode 100644 node_modules/caniuse-lite/data/features/ruby.js create mode 100644 node_modules/caniuse-lite/data/features/run-in.js create mode 100644 node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js create mode 100644 node_modules/caniuse-lite/data/features/screen-orientation.js create mode 100644 node_modules/caniuse-lite/data/features/script-async.js create mode 100644 node_modules/caniuse-lite/data/features/script-defer.js create mode 100644 node_modules/caniuse-lite/data/features/scrollintoview.js create mode 100644 node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js create mode 100644 node_modules/caniuse-lite/data/features/sdch.js create mode 100644 node_modules/caniuse-lite/data/features/selection-api.js create mode 100644 node_modules/caniuse-lite/data/features/server-timing.js create mode 100644 node_modules/caniuse-lite/data/features/serviceworkers.js create mode 100644 node_modules/caniuse-lite/data/features/setimmediate.js create mode 100644 node_modules/caniuse-lite/data/features/shadowdom.js create mode 100644 node_modules/caniuse-lite/data/features/shadowdomv1.js create mode 100644 node_modules/caniuse-lite/data/features/sharedarraybuffer.js create mode 100644 node_modules/caniuse-lite/data/features/sharedworkers.js create mode 100644 node_modules/caniuse-lite/data/features/sni.js create mode 100644 node_modules/caniuse-lite/data/features/spdy.js create mode 100644 node_modules/caniuse-lite/data/features/speech-recognition.js create mode 100644 node_modules/caniuse-lite/data/features/speech-synthesis.js create mode 100644 node_modules/caniuse-lite/data/features/spellcheck-attribute.js create mode 100644 node_modules/caniuse-lite/data/features/sql-storage.js create mode 100644 node_modules/caniuse-lite/data/features/srcset.js create mode 100644 node_modules/caniuse-lite/data/features/stream.js create mode 100644 node_modules/caniuse-lite/data/features/streams.js create mode 100644 node_modules/caniuse-lite/data/features/stricttransportsecurity.js create mode 100644 node_modules/caniuse-lite/data/features/style-scoped.js create mode 100644 node_modules/caniuse-lite/data/features/subresource-bundling.js create mode 100644 node_modules/caniuse-lite/data/features/subresource-integrity.js create mode 100644 node_modules/caniuse-lite/data/features/svg-css.js create mode 100644 node_modules/caniuse-lite/data/features/svg-filters.js create mode 100644 node_modules/caniuse-lite/data/features/svg-fonts.js create mode 100644 node_modules/caniuse-lite/data/features/svg-fragment.js create mode 100644 node_modules/caniuse-lite/data/features/svg-html.js create mode 100644 node_modules/caniuse-lite/data/features/svg-html5.js create mode 100644 node_modules/caniuse-lite/data/features/svg-img.js create mode 100644 node_modules/caniuse-lite/data/features/svg-smil.js create mode 100644 node_modules/caniuse-lite/data/features/svg.js create mode 100644 node_modules/caniuse-lite/data/features/sxg.js create mode 100644 node_modules/caniuse-lite/data/features/tabindex-attr.js create mode 100644 node_modules/caniuse-lite/data/features/template-literals.js create mode 100644 node_modules/caniuse-lite/data/features/template.js create mode 100644 node_modules/caniuse-lite/data/features/temporal.js create mode 100644 node_modules/caniuse-lite/data/features/testfeat.js create mode 100644 node_modules/caniuse-lite/data/features/text-decoration.js create mode 100644 node_modules/caniuse-lite/data/features/text-emphasis.js create mode 100644 node_modules/caniuse-lite/data/features/text-overflow.js create mode 100644 node_modules/caniuse-lite/data/features/text-size-adjust.js create mode 100644 node_modules/caniuse-lite/data/features/text-stroke.js create mode 100644 node_modules/caniuse-lite/data/features/textcontent.js create mode 100644 node_modules/caniuse-lite/data/features/textencoder.js create mode 100644 node_modules/caniuse-lite/data/features/tls1-1.js create mode 100644 node_modules/caniuse-lite/data/features/tls1-2.js create mode 100644 node_modules/caniuse-lite/data/features/tls1-3.js create mode 100644 node_modules/caniuse-lite/data/features/touch.js create mode 100644 node_modules/caniuse-lite/data/features/transforms2d.js create mode 100644 node_modules/caniuse-lite/data/features/transforms3d.js create mode 100644 node_modules/caniuse-lite/data/features/trusted-types.js create mode 100644 node_modules/caniuse-lite/data/features/ttf.js create mode 100644 node_modules/caniuse-lite/data/features/typedarrays.js create mode 100644 node_modules/caniuse-lite/data/features/u2f.js create mode 100644 node_modules/caniuse-lite/data/features/unhandledrejection.js create mode 100644 node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js create mode 100644 node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js create mode 100644 node_modules/caniuse-lite/data/features/url.js create mode 100644 node_modules/caniuse-lite/data/features/urlsearchparams.js create mode 100644 node_modules/caniuse-lite/data/features/use-strict.js create mode 100644 node_modules/caniuse-lite/data/features/user-select-none.js create mode 100644 node_modules/caniuse-lite/data/features/user-timing.js create mode 100644 node_modules/caniuse-lite/data/features/variable-fonts.js create mode 100644 node_modules/caniuse-lite/data/features/vector-effect.js create mode 100644 node_modules/caniuse-lite/data/features/vibration.js create mode 100644 node_modules/caniuse-lite/data/features/video.js create mode 100644 node_modules/caniuse-lite/data/features/videotracks.js create mode 100644 node_modules/caniuse-lite/data/features/view-transitions.js create mode 100644 node_modules/caniuse-lite/data/features/viewport-unit-variants.js create mode 100644 node_modules/caniuse-lite/data/features/viewport-units.js create mode 100644 node_modules/caniuse-lite/data/features/wai-aria.js create mode 100644 node_modules/caniuse-lite/data/features/wake-lock.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-bigint.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-bulk-memory.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-extended-const.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-gc.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-multi-memory.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-multi-value.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-mutable-globals.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-nontrapping-fptoint.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-reference-types.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-relaxed-simd.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-signext.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-simd.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-tail-calls.js create mode 100644 node_modules/caniuse-lite/data/features/wasm-threads.js create mode 100644 node_modules/caniuse-lite/data/features/wasm.js create mode 100644 node_modules/caniuse-lite/data/features/wav.js create mode 100644 node_modules/caniuse-lite/data/features/wbr-element.js create mode 100644 node_modules/caniuse-lite/data/features/web-animation.js create mode 100644 node_modules/caniuse-lite/data/features/web-app-manifest.js create mode 100644 node_modules/caniuse-lite/data/features/web-bluetooth.js create mode 100644 node_modules/caniuse-lite/data/features/web-serial.js create mode 100644 node_modules/caniuse-lite/data/features/web-share.js create mode 100644 node_modules/caniuse-lite/data/features/webauthn.js create mode 100644 node_modules/caniuse-lite/data/features/webcodecs.js create mode 100644 node_modules/caniuse-lite/data/features/webgl.js create mode 100644 node_modules/caniuse-lite/data/features/webgl2.js create mode 100644 node_modules/caniuse-lite/data/features/webgpu.js create mode 100644 node_modules/caniuse-lite/data/features/webhid.js create mode 100644 node_modules/caniuse-lite/data/features/webkit-user-drag.js create mode 100644 node_modules/caniuse-lite/data/features/webm.js create mode 100644 node_modules/caniuse-lite/data/features/webnfc.js create mode 100644 node_modules/caniuse-lite/data/features/webp.js create mode 100644 node_modules/caniuse-lite/data/features/websockets.js create mode 100644 node_modules/caniuse-lite/data/features/webtransport.js create mode 100644 node_modules/caniuse-lite/data/features/webusb.js create mode 100644 node_modules/caniuse-lite/data/features/webvr.js create mode 100644 node_modules/caniuse-lite/data/features/webvtt.js create mode 100644 node_modules/caniuse-lite/data/features/webworkers.js create mode 100644 node_modules/caniuse-lite/data/features/webxr.js create mode 100644 node_modules/caniuse-lite/data/features/will-change.js create mode 100644 node_modules/caniuse-lite/data/features/woff.js create mode 100644 node_modules/caniuse-lite/data/features/woff2.js create mode 100644 node_modules/caniuse-lite/data/features/word-break.js create mode 100644 node_modules/caniuse-lite/data/features/wordwrap.js create mode 100644 node_modules/caniuse-lite/data/features/x-doc-messaging.js create mode 100644 node_modules/caniuse-lite/data/features/x-frame-options.js create mode 100644 node_modules/caniuse-lite/data/features/xhr2.js create mode 100644 node_modules/caniuse-lite/data/features/xhtml.js create mode 100644 node_modules/caniuse-lite/data/features/xhtmlsmil.js create mode 100644 node_modules/caniuse-lite/data/features/xml-serializer.js create mode 100644 node_modules/caniuse-lite/data/features/zstd.js create mode 100644 node_modules/caniuse-lite/data/regions/AD.js create mode 100644 node_modules/caniuse-lite/data/regions/AE.js create mode 100644 node_modules/caniuse-lite/data/regions/AF.js create mode 100644 node_modules/caniuse-lite/data/regions/AG.js create mode 100644 node_modules/caniuse-lite/data/regions/AI.js create mode 100644 node_modules/caniuse-lite/data/regions/AL.js create mode 100644 node_modules/caniuse-lite/data/regions/AM.js create mode 100644 node_modules/caniuse-lite/data/regions/AO.js create mode 100644 node_modules/caniuse-lite/data/regions/AR.js create mode 100644 node_modules/caniuse-lite/data/regions/AS.js create mode 100644 node_modules/caniuse-lite/data/regions/AT.js create mode 100644 node_modules/caniuse-lite/data/regions/AU.js create mode 100644 node_modules/caniuse-lite/data/regions/AW.js create mode 100644 node_modules/caniuse-lite/data/regions/AX.js create mode 100644 node_modules/caniuse-lite/data/regions/AZ.js create mode 100644 node_modules/caniuse-lite/data/regions/BA.js create mode 100644 node_modules/caniuse-lite/data/regions/BB.js create mode 100644 node_modules/caniuse-lite/data/regions/BD.js create mode 100644 node_modules/caniuse-lite/data/regions/BE.js create mode 100644 node_modules/caniuse-lite/data/regions/BF.js create mode 100644 node_modules/caniuse-lite/data/regions/BG.js create mode 100644 node_modules/caniuse-lite/data/regions/BH.js create mode 100644 node_modules/caniuse-lite/data/regions/BI.js create mode 100644 node_modules/caniuse-lite/data/regions/BJ.js create mode 100644 node_modules/caniuse-lite/data/regions/BM.js create mode 100644 node_modules/caniuse-lite/data/regions/BN.js create mode 100644 node_modules/caniuse-lite/data/regions/BO.js create mode 100644 node_modules/caniuse-lite/data/regions/BR.js create mode 100644 node_modules/caniuse-lite/data/regions/BS.js create mode 100644 node_modules/caniuse-lite/data/regions/BT.js create mode 100644 node_modules/caniuse-lite/data/regions/BW.js create mode 100644 node_modules/caniuse-lite/data/regions/BY.js create mode 100644 node_modules/caniuse-lite/data/regions/BZ.js create mode 100644 node_modules/caniuse-lite/data/regions/CA.js create mode 100644 node_modules/caniuse-lite/data/regions/CD.js create mode 100644 node_modules/caniuse-lite/data/regions/CF.js create mode 100644 node_modules/caniuse-lite/data/regions/CG.js create mode 100644 node_modules/caniuse-lite/data/regions/CH.js create mode 100644 node_modules/caniuse-lite/data/regions/CI.js create mode 100644 node_modules/caniuse-lite/data/regions/CK.js create mode 100644 node_modules/caniuse-lite/data/regions/CL.js create mode 100644 node_modules/caniuse-lite/data/regions/CM.js create mode 100644 node_modules/caniuse-lite/data/regions/CN.js create mode 100644 node_modules/caniuse-lite/data/regions/CO.js create mode 100644 node_modules/caniuse-lite/data/regions/CR.js create mode 100644 node_modules/caniuse-lite/data/regions/CU.js create mode 100644 node_modules/caniuse-lite/data/regions/CV.js create mode 100644 node_modules/caniuse-lite/data/regions/CX.js create mode 100644 node_modules/caniuse-lite/data/regions/CY.js create mode 100644 node_modules/caniuse-lite/data/regions/CZ.js create mode 100644 node_modules/caniuse-lite/data/regions/DE.js create mode 100644 node_modules/caniuse-lite/data/regions/DJ.js create mode 100644 node_modules/caniuse-lite/data/regions/DK.js create mode 100644 node_modules/caniuse-lite/data/regions/DM.js create mode 100644 node_modules/caniuse-lite/data/regions/DO.js create mode 100644 node_modules/caniuse-lite/data/regions/DZ.js create mode 100644 node_modules/caniuse-lite/data/regions/EC.js create mode 100644 node_modules/caniuse-lite/data/regions/EE.js create mode 100644 node_modules/caniuse-lite/data/regions/EG.js create mode 100644 node_modules/caniuse-lite/data/regions/ER.js create mode 100644 node_modules/caniuse-lite/data/regions/ES.js create mode 100644 node_modules/caniuse-lite/data/regions/ET.js create mode 100644 node_modules/caniuse-lite/data/regions/FI.js create mode 100644 node_modules/caniuse-lite/data/regions/FJ.js create mode 100644 node_modules/caniuse-lite/data/regions/FK.js create mode 100644 node_modules/caniuse-lite/data/regions/FM.js create mode 100644 node_modules/caniuse-lite/data/regions/FO.js create mode 100644 node_modules/caniuse-lite/data/regions/FR.js create mode 100644 node_modules/caniuse-lite/data/regions/GA.js create mode 100644 node_modules/caniuse-lite/data/regions/GB.js create mode 100644 node_modules/caniuse-lite/data/regions/GD.js create mode 100644 node_modules/caniuse-lite/data/regions/GE.js create mode 100644 node_modules/caniuse-lite/data/regions/GF.js create mode 100644 node_modules/caniuse-lite/data/regions/GG.js create mode 100644 node_modules/caniuse-lite/data/regions/GH.js create mode 100644 node_modules/caniuse-lite/data/regions/GI.js create mode 100644 node_modules/caniuse-lite/data/regions/GL.js create mode 100644 node_modules/caniuse-lite/data/regions/GM.js create mode 100644 node_modules/caniuse-lite/data/regions/GN.js create mode 100644 node_modules/caniuse-lite/data/regions/GP.js create mode 100644 node_modules/caniuse-lite/data/regions/GQ.js create mode 100644 node_modules/caniuse-lite/data/regions/GR.js create mode 100644 node_modules/caniuse-lite/data/regions/GT.js create mode 100644 node_modules/caniuse-lite/data/regions/GU.js create mode 100644 node_modules/caniuse-lite/data/regions/GW.js create mode 100644 node_modules/caniuse-lite/data/regions/GY.js create mode 100644 node_modules/caniuse-lite/data/regions/HK.js create mode 100644 node_modules/caniuse-lite/data/regions/HN.js create mode 100644 node_modules/caniuse-lite/data/regions/HR.js create mode 100644 node_modules/caniuse-lite/data/regions/HT.js create mode 100644 node_modules/caniuse-lite/data/regions/HU.js create mode 100644 node_modules/caniuse-lite/data/regions/ID.js create mode 100644 node_modules/caniuse-lite/data/regions/IE.js create mode 100644 node_modules/caniuse-lite/data/regions/IL.js create mode 100644 node_modules/caniuse-lite/data/regions/IM.js create mode 100644 node_modules/caniuse-lite/data/regions/IN.js create mode 100644 node_modules/caniuse-lite/data/regions/IQ.js create mode 100644 node_modules/caniuse-lite/data/regions/IR.js create mode 100644 node_modules/caniuse-lite/data/regions/IS.js create mode 100644 node_modules/caniuse-lite/data/regions/IT.js create mode 100644 node_modules/caniuse-lite/data/regions/JE.js create mode 100644 node_modules/caniuse-lite/data/regions/JM.js create mode 100644 node_modules/caniuse-lite/data/regions/JO.js create mode 100644 node_modules/caniuse-lite/data/regions/JP.js create mode 100644 node_modules/caniuse-lite/data/regions/KE.js create mode 100644 node_modules/caniuse-lite/data/regions/KG.js create mode 100644 node_modules/caniuse-lite/data/regions/KH.js create mode 100644 node_modules/caniuse-lite/data/regions/KI.js create mode 100644 node_modules/caniuse-lite/data/regions/KM.js create mode 100644 node_modules/caniuse-lite/data/regions/KN.js create mode 100644 node_modules/caniuse-lite/data/regions/KP.js create mode 100644 node_modules/caniuse-lite/data/regions/KR.js create mode 100644 node_modules/caniuse-lite/data/regions/KW.js create mode 100644 node_modules/caniuse-lite/data/regions/KY.js create mode 100644 node_modules/caniuse-lite/data/regions/KZ.js create mode 100644 node_modules/caniuse-lite/data/regions/LA.js create mode 100644 node_modules/caniuse-lite/data/regions/LB.js create mode 100644 node_modules/caniuse-lite/data/regions/LC.js create mode 100644 node_modules/caniuse-lite/data/regions/LI.js create mode 100644 node_modules/caniuse-lite/data/regions/LK.js create mode 100644 node_modules/caniuse-lite/data/regions/LR.js create mode 100644 node_modules/caniuse-lite/data/regions/LS.js create mode 100644 node_modules/caniuse-lite/data/regions/LT.js create mode 100644 node_modules/caniuse-lite/data/regions/LU.js create mode 100644 node_modules/caniuse-lite/data/regions/LV.js create mode 100644 node_modules/caniuse-lite/data/regions/LY.js create mode 100644 node_modules/caniuse-lite/data/regions/MA.js create mode 100644 node_modules/caniuse-lite/data/regions/MC.js create mode 100644 node_modules/caniuse-lite/data/regions/MD.js create mode 100644 node_modules/caniuse-lite/data/regions/ME.js create mode 100644 node_modules/caniuse-lite/data/regions/MG.js create mode 100644 node_modules/caniuse-lite/data/regions/MH.js create mode 100644 node_modules/caniuse-lite/data/regions/MK.js create mode 100644 node_modules/caniuse-lite/data/regions/ML.js create mode 100644 node_modules/caniuse-lite/data/regions/MM.js create mode 100644 node_modules/caniuse-lite/data/regions/MN.js create mode 100644 node_modules/caniuse-lite/data/regions/MO.js create mode 100644 node_modules/caniuse-lite/data/regions/MP.js create mode 100644 node_modules/caniuse-lite/data/regions/MQ.js create mode 100644 node_modules/caniuse-lite/data/regions/MR.js create mode 100644 node_modules/caniuse-lite/data/regions/MS.js create mode 100644 node_modules/caniuse-lite/data/regions/MT.js create mode 100644 node_modules/caniuse-lite/data/regions/MU.js create mode 100644 node_modules/caniuse-lite/data/regions/MV.js create mode 100644 node_modules/caniuse-lite/data/regions/MW.js create mode 100644 node_modules/caniuse-lite/data/regions/MX.js create mode 100644 node_modules/caniuse-lite/data/regions/MY.js create mode 100644 node_modules/caniuse-lite/data/regions/MZ.js create mode 100644 node_modules/caniuse-lite/data/regions/NA.js create mode 100644 node_modules/caniuse-lite/data/regions/NC.js create mode 100644 node_modules/caniuse-lite/data/regions/NE.js create mode 100644 node_modules/caniuse-lite/data/regions/NF.js create mode 100644 node_modules/caniuse-lite/data/regions/NG.js create mode 100644 node_modules/caniuse-lite/data/regions/NI.js create mode 100644 node_modules/caniuse-lite/data/regions/NL.js create mode 100644 node_modules/caniuse-lite/data/regions/NO.js create mode 100644 node_modules/caniuse-lite/data/regions/NP.js create mode 100644 node_modules/caniuse-lite/data/regions/NR.js create mode 100644 node_modules/caniuse-lite/data/regions/NU.js create mode 100644 node_modules/caniuse-lite/data/regions/NZ.js create mode 100644 node_modules/caniuse-lite/data/regions/OM.js create mode 100644 node_modules/caniuse-lite/data/regions/PA.js create mode 100644 node_modules/caniuse-lite/data/regions/PE.js create mode 100644 node_modules/caniuse-lite/data/regions/PF.js create mode 100644 node_modules/caniuse-lite/data/regions/PG.js create mode 100644 node_modules/caniuse-lite/data/regions/PH.js create mode 100644 node_modules/caniuse-lite/data/regions/PK.js create mode 100644 node_modules/caniuse-lite/data/regions/PL.js create mode 100644 node_modules/caniuse-lite/data/regions/PM.js create mode 100644 node_modules/caniuse-lite/data/regions/PN.js create mode 100644 node_modules/caniuse-lite/data/regions/PR.js create mode 100644 node_modules/caniuse-lite/data/regions/PS.js create mode 100644 node_modules/caniuse-lite/data/regions/PT.js create mode 100644 node_modules/caniuse-lite/data/regions/PW.js create mode 100644 node_modules/caniuse-lite/data/regions/PY.js create mode 100644 node_modules/caniuse-lite/data/regions/QA.js create mode 100644 node_modules/caniuse-lite/data/regions/RE.js create mode 100644 node_modules/caniuse-lite/data/regions/RO.js create mode 100644 node_modules/caniuse-lite/data/regions/RS.js create mode 100644 node_modules/caniuse-lite/data/regions/RU.js create mode 100644 node_modules/caniuse-lite/data/regions/RW.js create mode 100644 node_modules/caniuse-lite/data/regions/SA.js create mode 100644 node_modules/caniuse-lite/data/regions/SB.js create mode 100644 node_modules/caniuse-lite/data/regions/SC.js create mode 100644 node_modules/caniuse-lite/data/regions/SD.js create mode 100644 node_modules/caniuse-lite/data/regions/SE.js create mode 100644 node_modules/caniuse-lite/data/regions/SG.js create mode 100644 node_modules/caniuse-lite/data/regions/SH.js create mode 100644 node_modules/caniuse-lite/data/regions/SI.js create mode 100644 node_modules/caniuse-lite/data/regions/SK.js create mode 100644 node_modules/caniuse-lite/data/regions/SL.js create mode 100644 node_modules/caniuse-lite/data/regions/SM.js create mode 100644 node_modules/caniuse-lite/data/regions/SN.js create mode 100644 node_modules/caniuse-lite/data/regions/SO.js create mode 100644 node_modules/caniuse-lite/data/regions/SR.js create mode 100644 node_modules/caniuse-lite/data/regions/ST.js create mode 100644 node_modules/caniuse-lite/data/regions/SV.js create mode 100644 node_modules/caniuse-lite/data/regions/SY.js create mode 100644 node_modules/caniuse-lite/data/regions/SZ.js create mode 100644 node_modules/caniuse-lite/data/regions/TC.js create mode 100644 node_modules/caniuse-lite/data/regions/TD.js create mode 100644 node_modules/caniuse-lite/data/regions/TG.js create mode 100644 node_modules/caniuse-lite/data/regions/TH.js create mode 100644 node_modules/caniuse-lite/data/regions/TJ.js create mode 100644 node_modules/caniuse-lite/data/regions/TL.js create mode 100644 node_modules/caniuse-lite/data/regions/TM.js create mode 100644 node_modules/caniuse-lite/data/regions/TN.js create mode 100644 node_modules/caniuse-lite/data/regions/TO.js create mode 100644 node_modules/caniuse-lite/data/regions/TR.js create mode 100644 node_modules/caniuse-lite/data/regions/TT.js create mode 100644 node_modules/caniuse-lite/data/regions/TV.js create mode 100644 node_modules/caniuse-lite/data/regions/TW.js create mode 100644 node_modules/caniuse-lite/data/regions/TZ.js create mode 100644 node_modules/caniuse-lite/data/regions/UA.js create mode 100644 node_modules/caniuse-lite/data/regions/UG.js create mode 100644 node_modules/caniuse-lite/data/regions/US.js create mode 100644 node_modules/caniuse-lite/data/regions/UY.js create mode 100644 node_modules/caniuse-lite/data/regions/UZ.js create mode 100644 node_modules/caniuse-lite/data/regions/VA.js create mode 100644 node_modules/caniuse-lite/data/regions/VC.js create mode 100644 node_modules/caniuse-lite/data/regions/VE.js create mode 100644 node_modules/caniuse-lite/data/regions/VG.js create mode 100644 node_modules/caniuse-lite/data/regions/VI.js create mode 100644 node_modules/caniuse-lite/data/regions/VN.js create mode 100644 node_modules/caniuse-lite/data/regions/VU.js create mode 100644 node_modules/caniuse-lite/data/regions/WF.js create mode 100644 node_modules/caniuse-lite/data/regions/WS.js create mode 100644 node_modules/caniuse-lite/data/regions/YE.js create mode 100644 node_modules/caniuse-lite/data/regions/YT.js create mode 100644 node_modules/caniuse-lite/data/regions/ZA.js create mode 100644 node_modules/caniuse-lite/data/regions/ZM.js create mode 100644 node_modules/caniuse-lite/data/regions/ZW.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-af.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-an.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-as.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-eu.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-na.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-oc.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-sa.js create mode 100644 node_modules/caniuse-lite/data/regions/alt-ww.js create mode 100644 node_modules/caniuse-lite/dist/lib/statuses.js create mode 100644 node_modules/caniuse-lite/dist/lib/supported.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/agents.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/browserVersions.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/browsers.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/feature.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/features.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/index.js create mode 100644 node_modules/caniuse-lite/dist/unpacker/region.js create mode 100644 node_modules/caniuse-lite/package.json create mode 100644 node_modules/convert-source-map/LICENSE create mode 100644 node_modules/convert-source-map/README.md create mode 100644 node_modules/convert-source-map/index.js create mode 100644 node_modules/convert-source-map/package.json create mode 100644 node_modules/debug/LICENSE create mode 100644 node_modules/debug/README.md create mode 100644 node_modules/debug/package.json create mode 100644 node_modules/debug/src/browser.js create mode 100644 node_modules/debug/src/common.js create mode 100644 node_modules/debug/src/index.js create mode 100644 node_modules/debug/src/node.js create mode 100644 node_modules/electron-to-chromium/LICENSE create mode 100644 node_modules/electron-to-chromium/README.md create mode 100644 node_modules/electron-to-chromium/chromium-versions.js create mode 100644 node_modules/electron-to-chromium/chromium-versions.json create mode 100644 node_modules/electron-to-chromium/full-chromium-versions.js create mode 100644 node_modules/electron-to-chromium/full-chromium-versions.json create mode 100644 node_modules/electron-to-chromium/full-versions.js create mode 100644 node_modules/electron-to-chromium/full-versions.json create mode 100644 node_modules/electron-to-chromium/index.js create mode 100644 node_modules/electron-to-chromium/package.json create mode 100644 node_modules/electron-to-chromium/versions.js create mode 100644 node_modules/electron-to-chromium/versions.json create mode 100644 node_modules/esbuild/LICENSE.md create mode 100644 node_modules/esbuild/README.md create mode 100755 node_modules/esbuild/bin/esbuild create mode 100644 node_modules/esbuild/install.js create mode 100644 node_modules/esbuild/lib/main.d.ts create mode 100644 node_modules/esbuild/lib/main.js create mode 100644 node_modules/esbuild/package.json create mode 100644 node_modules/escalade/dist/index.js create mode 100644 node_modules/escalade/dist/index.mjs create mode 100644 node_modules/escalade/index.d.mts create mode 100644 node_modules/escalade/index.d.ts create mode 100644 node_modules/escalade/license create mode 100644 node_modules/escalade/package.json create mode 100644 node_modules/escalade/readme.md create mode 100644 node_modules/escalade/sync/index.d.mts create mode 100644 node_modules/escalade/sync/index.d.ts create mode 100644 node_modules/escalade/sync/index.js create mode 100644 node_modules/escalade/sync/index.mjs create mode 100644 node_modules/gensync/LICENSE create mode 100644 node_modules/gensync/README.md create mode 100644 node_modules/gensync/index.js create mode 100644 node_modules/gensync/index.js.flow create mode 100644 node_modules/gensync/package.json create mode 100644 node_modules/gensync/test/.babelrc create mode 100644 node_modules/gensync/test/index.test.js create mode 100644 node_modules/js-tokens/CHANGELOG.md create mode 100644 node_modules/js-tokens/LICENSE create mode 100644 node_modules/js-tokens/README.md create mode 100644 node_modules/js-tokens/index.js create mode 100644 node_modules/js-tokens/package.json create mode 100644 node_modules/jsesc/LICENSE-MIT.txt create mode 100644 node_modules/jsesc/README.md create mode 100755 node_modules/jsesc/bin/jsesc create mode 100644 node_modules/jsesc/jsesc.js create mode 100644 node_modules/jsesc/man/jsesc.1 create mode 100644 node_modules/jsesc/package.json create mode 100644 node_modules/json5/LICENSE.md create mode 100644 node_modules/json5/README.md create mode 100644 node_modules/json5/dist/index.js create mode 100644 node_modules/json5/dist/index.min.js create mode 100644 node_modules/json5/dist/index.min.mjs create mode 100644 node_modules/json5/dist/index.mjs create mode 100755 node_modules/json5/lib/cli.js create mode 100644 node_modules/json5/lib/index.d.ts create mode 100644 node_modules/json5/lib/index.js create mode 100644 node_modules/json5/lib/parse.d.ts create mode 100644 node_modules/json5/lib/parse.js create mode 100644 node_modules/json5/lib/register.js create mode 100644 node_modules/json5/lib/require.js create mode 100644 node_modules/json5/lib/stringify.d.ts create mode 100644 node_modules/json5/lib/stringify.js create mode 100644 node_modules/json5/lib/unicode.d.ts create mode 100644 node_modules/json5/lib/unicode.js create mode 100644 node_modules/json5/lib/util.d.ts create mode 100644 node_modules/json5/lib/util.js create mode 100644 node_modules/json5/package.json create mode 100644 node_modules/loose-envify/LICENSE create mode 100644 node_modules/loose-envify/README.md create mode 100755 node_modules/loose-envify/cli.js create mode 100644 node_modules/loose-envify/custom.js create mode 100644 node_modules/loose-envify/index.js create mode 100644 node_modules/loose-envify/loose-envify.js create mode 100644 node_modules/loose-envify/package.json create mode 100644 node_modules/loose-envify/replace.js create mode 100644 node_modules/lru-cache/LICENSE create mode 100644 node_modules/lru-cache/README.md create mode 100644 node_modules/lru-cache/index.js create mode 100644 node_modules/lru-cache/package.json create mode 100644 node_modules/ms/index.js create mode 100644 node_modules/ms/license.md create mode 100644 node_modules/ms/package.json create mode 100644 node_modules/ms/readme.md create mode 100644 node_modules/nanoid/LICENSE create mode 100644 node_modules/nanoid/README.md create mode 100644 node_modules/nanoid/async/index.browser.cjs create mode 100644 node_modules/nanoid/async/index.browser.js create mode 100644 node_modules/nanoid/async/index.cjs create mode 100644 node_modules/nanoid/async/index.d.ts create mode 100644 node_modules/nanoid/async/index.js create mode 100644 node_modules/nanoid/async/index.native.js create mode 100644 node_modules/nanoid/async/package.json create mode 100755 node_modules/nanoid/bin/nanoid.cjs create mode 100644 node_modules/nanoid/index.browser.cjs create mode 100644 node_modules/nanoid/index.browser.js create mode 100644 node_modules/nanoid/index.cjs create mode 100644 node_modules/nanoid/index.d.cts create mode 100644 node_modules/nanoid/index.d.ts create mode 100644 node_modules/nanoid/index.js create mode 100644 node_modules/nanoid/nanoid.js create mode 100644 node_modules/nanoid/non-secure/index.cjs create mode 100644 node_modules/nanoid/non-secure/index.d.ts create mode 100644 node_modules/nanoid/non-secure/index.js create mode 100644 node_modules/nanoid/non-secure/package.json create mode 100644 node_modules/nanoid/package.json create mode 100644 node_modules/nanoid/url-alphabet/index.cjs create mode 100644 node_modules/nanoid/url-alphabet/index.js create mode 100644 node_modules/nanoid/url-alphabet/package.json create mode 100644 node_modules/node-releases/LICENSE create mode 100644 node_modules/node-releases/README.md create mode 100644 node_modules/node-releases/data/processed/envs.json create mode 100644 node_modules/node-releases/data/release-schedule/release-schedule.json create mode 100644 node_modules/node-releases/package.json create mode 100644 node_modules/picocolors/LICENSE create mode 100644 node_modules/picocolors/README.md create mode 100644 node_modules/picocolors/package.json create mode 100644 node_modules/picocolors/picocolors.browser.js create mode 100644 node_modules/picocolors/picocolors.d.ts create mode 100644 node_modules/picocolors/picocolors.js create mode 100644 node_modules/picocolors/types.d.ts create mode 100644 node_modules/postcss/LICENSE create mode 100644 node_modules/postcss/README.md create mode 100644 node_modules/postcss/lib/at-rule.d.ts create mode 100644 node_modules/postcss/lib/at-rule.js create mode 100644 node_modules/postcss/lib/comment.d.ts create mode 100644 node_modules/postcss/lib/comment.js create mode 100644 node_modules/postcss/lib/container.d.ts create mode 100644 node_modules/postcss/lib/container.js create mode 100644 node_modules/postcss/lib/css-syntax-error.d.ts create mode 100644 node_modules/postcss/lib/css-syntax-error.js create mode 100644 node_modules/postcss/lib/declaration.d.ts create mode 100644 node_modules/postcss/lib/declaration.js create mode 100644 node_modules/postcss/lib/document.d.ts create mode 100644 node_modules/postcss/lib/document.js create mode 100644 node_modules/postcss/lib/fromJSON.d.ts create mode 100644 node_modules/postcss/lib/fromJSON.js create mode 100644 node_modules/postcss/lib/input.d.ts create mode 100644 node_modules/postcss/lib/input.js create mode 100644 node_modules/postcss/lib/lazy-result.d.ts create mode 100644 node_modules/postcss/lib/lazy-result.js create mode 100644 node_modules/postcss/lib/list.d.ts create mode 100644 node_modules/postcss/lib/list.js create mode 100644 node_modules/postcss/lib/map-generator.js create mode 100644 node_modules/postcss/lib/no-work-result.d.ts create mode 100644 node_modules/postcss/lib/no-work-result.js create mode 100644 node_modules/postcss/lib/node.d.ts create mode 100644 node_modules/postcss/lib/node.js create mode 100644 node_modules/postcss/lib/parse.d.ts create mode 100644 node_modules/postcss/lib/parse.js create mode 100644 node_modules/postcss/lib/parser.js create mode 100644 node_modules/postcss/lib/postcss.d.mts create mode 100644 node_modules/postcss/lib/postcss.d.ts create mode 100644 node_modules/postcss/lib/postcss.js create mode 100644 node_modules/postcss/lib/postcss.mjs create mode 100644 node_modules/postcss/lib/previous-map.d.ts create mode 100644 node_modules/postcss/lib/previous-map.js create mode 100644 node_modules/postcss/lib/processor.d.ts create mode 100644 node_modules/postcss/lib/processor.js create mode 100644 node_modules/postcss/lib/result.d.ts create mode 100644 node_modules/postcss/lib/result.js create mode 100644 node_modules/postcss/lib/root.d.ts create mode 100644 node_modules/postcss/lib/root.js create mode 100644 node_modules/postcss/lib/rule.d.ts create mode 100644 node_modules/postcss/lib/rule.js create mode 100644 node_modules/postcss/lib/stringifier.d.ts create mode 100644 node_modules/postcss/lib/stringifier.js create mode 100644 node_modules/postcss/lib/stringify.d.ts create mode 100644 node_modules/postcss/lib/stringify.js create mode 100644 node_modules/postcss/lib/symbols.js create mode 100644 node_modules/postcss/lib/terminal-highlight.js create mode 100644 node_modules/postcss/lib/tokenize.js create mode 100644 node_modules/postcss/lib/warn-once.js create mode 100644 node_modules/postcss/lib/warning.d.ts create mode 100644 node_modules/postcss/lib/warning.js create mode 100644 node_modules/postcss/package.json create mode 100644 node_modules/react-dom/LICENSE create mode 100644 node_modules/react-dom/README.md create mode 100644 node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js create mode 100644 node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom-server-legacy.node.development.js create mode 100644 node_modules/react-dom/cjs/react-dom-server-legacy.node.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom-server.browser.development.js create mode 100644 node_modules/react-dom/cjs/react-dom-server.browser.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom-server.node.development.js create mode 100644 node_modules/react-dom/cjs/react-dom-server.node.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom-test-utils.development.js create mode 100644 node_modules/react-dom/cjs/react-dom-test-utils.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom.development.js create mode 100644 node_modules/react-dom/cjs/react-dom.production.min.js create mode 100644 node_modules/react-dom/cjs/react-dom.profiling.min.js create mode 100644 node_modules/react-dom/client.js create mode 100644 node_modules/react-dom/index.js create mode 100644 node_modules/react-dom/package.json create mode 100644 node_modules/react-dom/profiling.js create mode 100644 node_modules/react-dom/server.browser.js create mode 100644 node_modules/react-dom/server.js create mode 100644 node_modules/react-dom/server.node.js create mode 100644 node_modules/react-dom/test-utils.js create mode 100644 node_modules/react-dom/umd/react-dom-server-legacy.browser.development.js create mode 100644 node_modules/react-dom/umd/react-dom-server-legacy.browser.production.min.js create mode 100644 node_modules/react-dom/umd/react-dom-server.browser.development.js create mode 100644 node_modules/react-dom/umd/react-dom-server.browser.production.min.js create mode 100644 node_modules/react-dom/umd/react-dom-test-utils.development.js create mode 100644 node_modules/react-dom/umd/react-dom-test-utils.production.min.js create mode 100644 node_modules/react-dom/umd/react-dom.development.js create mode 100644 node_modules/react-dom/umd/react-dom.production.min.js create mode 100644 node_modules/react-dom/umd/react-dom.profiling.min.js create mode 100644 node_modules/react-refresh/LICENSE create mode 100644 node_modules/react-refresh/README.md create mode 100644 node_modules/react-refresh/babel.js create mode 100644 node_modules/react-refresh/cjs/react-refresh-babel.development.js create mode 100644 node_modules/react-refresh/cjs/react-refresh-babel.production.js create mode 100644 node_modules/react-refresh/cjs/react-refresh-runtime.development.js create mode 100644 node_modules/react-refresh/cjs/react-refresh-runtime.production.js create mode 100644 node_modules/react-refresh/package.json create mode 100644 node_modules/react-refresh/runtime.js create mode 100644 node_modules/react/LICENSE create mode 100644 node_modules/react/README.md create mode 100644 node_modules/react/cjs/react-jsx-dev-runtime.development.js create mode 100644 node_modules/react/cjs/react-jsx-dev-runtime.production.min.js create mode 100644 node_modules/react/cjs/react-jsx-dev-runtime.profiling.min.js create mode 100644 node_modules/react/cjs/react-jsx-runtime.development.js create mode 100644 node_modules/react/cjs/react-jsx-runtime.production.min.js create mode 100644 node_modules/react/cjs/react-jsx-runtime.profiling.min.js create mode 100644 node_modules/react/cjs/react.development.js create mode 100644 node_modules/react/cjs/react.production.min.js create mode 100644 node_modules/react/cjs/react.shared-subset.development.js create mode 100644 node_modules/react/cjs/react.shared-subset.production.min.js create mode 100644 node_modules/react/index.js create mode 100644 node_modules/react/jsx-dev-runtime.js create mode 100644 node_modules/react/jsx-runtime.js create mode 100644 node_modules/react/package.json create mode 100644 node_modules/react/react.shared-subset.js create mode 100644 node_modules/react/umd/react.development.js create mode 100644 node_modules/react/umd/react.production.min.js create mode 100644 node_modules/react/umd/react.profiling.min.js create mode 100644 node_modules/rollup/LICENSE.md create mode 100644 node_modules/rollup/README.md create mode 100755 node_modules/rollup/dist/bin/rollup create mode 100644 node_modules/rollup/dist/es/getLogFilter.js create mode 100644 node_modules/rollup/dist/es/package.json create mode 100644 node_modules/rollup/dist/es/parseAst.js create mode 100644 node_modules/rollup/dist/es/rollup.js create mode 100644 node_modules/rollup/dist/es/shared/node-entry.js create mode 100644 node_modules/rollup/dist/es/shared/parseAst.js create mode 100644 node_modules/rollup/dist/es/shared/watch.js create mode 100644 node_modules/rollup/dist/getLogFilter.d.ts create mode 100644 node_modules/rollup/dist/getLogFilter.js create mode 100644 node_modules/rollup/dist/loadConfigFile.d.ts create mode 100644 node_modules/rollup/dist/loadConfigFile.js create mode 100644 node_modules/rollup/dist/native.js create mode 100644 node_modules/rollup/dist/parseAst.d.ts create mode 100644 node_modules/rollup/dist/parseAst.js create mode 100644 node_modules/rollup/dist/rollup.d.ts create mode 100644 node_modules/rollup/dist/rollup.js create mode 100644 node_modules/rollup/dist/shared/fsevents-importer.js create mode 100644 node_modules/rollup/dist/shared/index.js create mode 100644 node_modules/rollup/dist/shared/loadConfigFile.js create mode 100644 node_modules/rollup/dist/shared/parseAst.js create mode 100644 node_modules/rollup/dist/shared/rollup.js create mode 100644 node_modules/rollup/dist/shared/watch-cli.js create mode 100644 node_modules/rollup/dist/shared/watch.js create mode 100644 node_modules/rollup/package.json create mode 100644 node_modules/scheduler/LICENSE create mode 100644 node_modules/scheduler/README.md create mode 100644 node_modules/scheduler/cjs/scheduler-unstable_mock.development.js create mode 100644 node_modules/scheduler/cjs/scheduler-unstable_mock.production.min.js create mode 100644 node_modules/scheduler/cjs/scheduler-unstable_post_task.development.js create mode 100644 node_modules/scheduler/cjs/scheduler-unstable_post_task.production.min.js create mode 100644 node_modules/scheduler/cjs/scheduler.development.js create mode 100644 node_modules/scheduler/cjs/scheduler.production.min.js create mode 100644 node_modules/scheduler/index.js create mode 100644 node_modules/scheduler/package.json create mode 100644 node_modules/scheduler/umd/scheduler-unstable_mock.development.js create mode 100644 node_modules/scheduler/umd/scheduler-unstable_mock.production.min.js create mode 100644 node_modules/scheduler/umd/scheduler.development.js create mode 100644 node_modules/scheduler/umd/scheduler.production.min.js create mode 100644 node_modules/scheduler/umd/scheduler.profiling.min.js create mode 100644 node_modules/scheduler/unstable_mock.js create mode 100644 node_modules/scheduler/unstable_post_task.js create mode 100644 node_modules/semver/LICENSE create mode 100644 node_modules/semver/README.md create mode 100755 node_modules/semver/bin/semver.js create mode 100644 node_modules/semver/package.json create mode 100644 node_modules/semver/range.bnf create mode 100644 node_modules/semver/semver.js create mode 100644 node_modules/source-map-js/LICENSE create mode 100644 node_modules/source-map-js/README.md create mode 100644 node_modules/source-map-js/lib/array-set.js create mode 100644 node_modules/source-map-js/lib/base64-vlq.js create mode 100644 node_modules/source-map-js/lib/base64.js create mode 100644 node_modules/source-map-js/lib/binary-search.js create mode 100644 node_modules/source-map-js/lib/mapping-list.js create mode 100644 node_modules/source-map-js/lib/quick-sort.js create mode 100644 node_modules/source-map-js/lib/source-map-consumer.d.ts create mode 100644 node_modules/source-map-js/lib/source-map-consumer.js create mode 100644 node_modules/source-map-js/lib/source-map-generator.d.ts create mode 100644 node_modules/source-map-js/lib/source-map-generator.js create mode 100644 node_modules/source-map-js/lib/source-node.d.ts create mode 100644 node_modules/source-map-js/lib/source-node.js create mode 100644 node_modules/source-map-js/lib/util.js create mode 100644 node_modules/source-map-js/package.json create mode 100644 node_modules/source-map-js/source-map.d.ts create mode 100644 node_modules/source-map-js/source-map.js create mode 100644 node_modules/update-browserslist-db/LICENSE create mode 100644 node_modules/update-browserslist-db/README.md create mode 100644 node_modules/update-browserslist-db/check-npm-version.js create mode 100755 node_modules/update-browserslist-db/cli.js create mode 100644 node_modules/update-browserslist-db/index.d.ts create mode 100644 node_modules/update-browserslist-db/index.js create mode 100644 node_modules/update-browserslist-db/package.json create mode 100644 node_modules/update-browserslist-db/utils.js create mode 100644 node_modules/vite/LICENSE.md create mode 100644 node_modules/vite/README.md create mode 100644 node_modules/vite/bin/openChrome.applescript create mode 100755 node_modules/vite/bin/vite.js create mode 100644 node_modules/vite/client.d.ts create mode 100644 node_modules/vite/dist/client/client.mjs create mode 100644 node_modules/vite/dist/client/env.mjs create mode 100644 node_modules/vite/dist/node-cjs/publicUtils.cjs create mode 100644 node_modules/vite/dist/node/chunks/dep-BB45zftN.js create mode 100644 node_modules/vite/dist/node/chunks/dep-BK3b2jBa.js create mode 100644 node_modules/vite/dist/node/chunks/dep-D-7KCb9p.js create mode 100644 node_modules/vite/dist/node/chunks/dep-Dnp7gl8U.js create mode 100644 node_modules/vite/dist/node/chunks/dep-IQS-Za7F.js create mode 100644 node_modules/vite/dist/node/cli.js create mode 100644 node_modules/vite/dist/node/constants.js create mode 100644 node_modules/vite/dist/node/index.d.ts create mode 100644 node_modules/vite/dist/node/index.js create mode 100644 node_modules/vite/dist/node/runtime.d.ts create mode 100644 node_modules/vite/dist/node/runtime.js create mode 100644 node_modules/vite/dist/node/types.d-aGj9QkWt.d.ts create mode 100644 node_modules/vite/index.cjs create mode 100644 node_modules/vite/index.d.cts create mode 100644 node_modules/vite/package.json create mode 100644 node_modules/vite/types/customEvent.d.ts create mode 100644 node_modules/vite/types/hmrPayload.d.ts create mode 100644 node_modules/vite/types/hot.d.ts create mode 100644 node_modules/vite/types/import-meta.d.ts create mode 100644 node_modules/vite/types/importGlob.d.ts create mode 100644 node_modules/vite/types/importMeta.d.ts create mode 100644 node_modules/vite/types/metadata.d.ts create mode 100644 node_modules/vite/types/package.json create mode 100644 node_modules/yallist/LICENSE create mode 100644 node_modules/yallist/README.md create mode 100644 node_modules/yallist/iterator.js create mode 100644 node_modules/yallist/package.json create mode 100644 node_modules/yallist/yallist.js create mode 100644 package-backend.json create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 server.js create mode 100644 src/App.jsx create mode 100644 src/index.css create mode 100644 src/main.jsx create mode 100644 vite.config.js diff --git a/data.json b/data.json new file mode 100644 index 0000000..150171e --- /dev/null +++ b/data.json @@ -0,0 +1,6 @@ +{ + "meals": [ + ["", "", "", "", "", "", ""], + ["", "", "", "", "", "", ""] + ] +} diff --git a/dist/assets/index-280BfggH.js b/dist/assets/index-280BfggH.js new file mode 100644 index 0000000..9f8d0df --- /dev/null +++ b/dist/assets/index-280BfggH.js @@ -0,0 +1,40 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))r(l);new MutationObserver(l=>{for(const u of l)if(u.type==="childList")for(const o of u.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(l){const u={};return l.integrity&&(u.integrity=l.integrity),l.referrerPolicy&&(u.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?u.credentials="include":l.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function r(l){if(l.ep)return;l.ep=!0;const u=n(l);fetch(l.href,u)}})();function uc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Yi={exports:{}},ol={},Xi={exports:{}},R={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var bn=Symbol.for("react.element"),oc=Symbol.for("react.portal"),ic=Symbol.for("react.fragment"),sc=Symbol.for("react.strict_mode"),ac=Symbol.for("react.profiler"),cc=Symbol.for("react.provider"),fc=Symbol.for("react.context"),dc=Symbol.for("react.forward_ref"),pc=Symbol.for("react.suspense"),hc=Symbol.for("react.memo"),mc=Symbol.for("react.lazy"),Uo=Symbol.iterator;function vc(e){return e===null||typeof e!="object"?null:(e=Uo&&e[Uo]||e["@@iterator"],typeof e=="function"?e:null)}var Gi={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Zi=Object.assign,Ji={};function dn(e,t,n){this.props=e,this.context=t,this.refs=Ji,this.updater=n||Gi}dn.prototype.isReactComponent={};dn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};dn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function qi(){}qi.prototype=dn.prototype;function Bu(e,t,n){this.props=e,this.context=t,this.refs=Ji,this.updater=n||Gi}var Wu=Bu.prototype=new qi;Wu.constructor=Bu;Zi(Wu,dn.prototype);Wu.isPureReactComponent=!0;var Ao=Array.isArray,bi=Object.prototype.hasOwnProperty,Qu={current:null},es={key:!0,ref:!0,__self:!0,__source:!0};function ts(e,t,n){var r,l={},u=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(u=""+t.key),t)bi.call(t,r)&&!es.hasOwnProperty(r)&&(l[r]=t[r]);var i=arguments.length-2;if(i===1)l.children=n;else if(1>>1,b=g[B];if(0>>1;Bl(El,j))xtl(ur,El)?(g[B]=ur,g[xt]=j,B=xt):(g[B]=El,g[Ct]=j,B=Ct);else if(xtl(ur,j))g[B]=ur,g[xt]=j,B=xt;else break e}}return T}function l(g,T){var j=g.sortIndex-T.sortIndex;return j!==0?j:g.id-T.id}if(typeof performance=="object"&&typeof performance.now=="function"){var u=performance;e.unstable_now=function(){return u.now()}}else{var o=Date,i=o.now();e.unstable_now=function(){return o.now()-i}}var s=[],f=[],m=1,h=null,p=3,w=!1,S=!1,k=!1,M=typeof setTimeout=="function"?setTimeout:null,c=typeof clearTimeout=="function"?clearTimeout:null,a=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function d(g){for(var T=n(f);T!==null;){if(T.callback===null)r(f);else if(T.startTime<=g)r(f),T.sortIndex=T.expirationTime,t(s,T);else break;T=n(f)}}function v(g){if(k=!1,d(g),!S)if(n(s)!==null)S=!0,q(C);else{var T=n(f);T!==null&&F(v,T.startTime-g)}}function C(g,T){S=!1,k&&(k=!1,c(z),z=-1),w=!0;var j=p;try{for(d(T),h=n(s);h!==null&&(!(h.expirationTime>T)||g&&!we());){var B=h.callback;if(typeof B=="function"){h.callback=null,p=h.priorityLevel;var b=B(h.expirationTime<=T);T=e.unstable_now(),typeof b=="function"?h.callback=b:h===n(s)&&r(s),d(T)}else r(s);h=n(s)}if(h!==null)var lr=!0;else{var Ct=n(f);Ct!==null&&F(v,Ct.startTime-T),lr=!1}return lr}finally{h=null,p=j,w=!1}}var _=!1,N=null,z=-1,H=5,O=-1;function we(){return!(e.unstable_now()-Og||125B?(g.sortIndex=j,t(f,g),n(s)===null&&g===n(f)&&(k?(c(z),z=-1):k=!0,F(v,j-B))):(g.sortIndex=b,t(s,g),S||w||(S=!0,q(C))),g},e.unstable_shouldYield=we,e.unstable_wrapCallback=function(g){var T=p;return function(){var j=p;p=T;try{return g.apply(this,arguments)}finally{p=j}}}})(os);us.exports=os;var zc=us.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Tc=ae,Ce=zc;function y(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Jl=Object.prototype.hasOwnProperty,Lc=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Vo={},Ho={};function jc(e){return Jl.call(Ho,e)?!0:Jl.call(Vo,e)?!1:Lc.test(e)?Ho[e]=!0:(Vo[e]=!0,!1)}function Oc(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Rc(e,t,n,r){if(t===null||typeof t>"u"||Oc(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function pe(e,t,n,r,l,u,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=u,this.removeEmptyString=o}var le={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){le[e]=new pe(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];le[t]=new pe(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){le[e]=new pe(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){le[e]=new pe(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){le[e]=new pe(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){le[e]=new pe(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){le[e]=new pe(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){le[e]=new pe(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){le[e]=new pe(e,5,!1,e.toLowerCase(),null,!1,!1)});var Yu=/[\-:]([a-z])/g;function Xu(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Yu,Xu);le[t]=new pe(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Yu,Xu);le[t]=new pe(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Yu,Xu);le[t]=new pe(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){le[e]=new pe(e,1,!1,e.toLowerCase(),null,!1,!1)});le.xlinkHref=new pe("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){le[e]=new pe(e,1,!1,e.toLowerCase(),null,!0,!0)});function Gu(e,t,n,r){var l=le.hasOwnProperty(t)?le[t]:null;(l!==null?l.type!==0:r||!(2i||l[o]!==u[i]){var s=` +`+l[o].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=o&&0<=i);break}}}finally{_l=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Cn(e):""}function Mc(e){switch(e.tag){case 5:return Cn(e.type);case 16:return Cn("Lazy");case 13:return Cn("Suspense");case 19:return Cn("SuspenseList");case 0:case 2:case 15:return e=Nl(e.type,!1),e;case 11:return e=Nl(e.type.render,!1),e;case 1:return e=Nl(e.type,!0),e;default:return""}}function tu(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Vt:return"Fragment";case $t:return"Portal";case ql:return"Profiler";case Zu:return"StrictMode";case bl:return"Suspense";case eu:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case as:return(e.displayName||"Context")+".Consumer";case ss:return(e._context.displayName||"Context")+".Provider";case Ju:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case qu:return t=e.displayName||null,t!==null?t:tu(e.type)||"Memo";case nt:t=e._payload,e=e._init;try{return tu(e(t))}catch{}}return null}function Dc(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return tu(t);case 8:return t===Zu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function vt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function fs(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Fc(e){var t=fs(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,u=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(o){r=""+o,u.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function sr(e){e._valueTracker||(e._valueTracker=Fc(e))}function ds(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=fs(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Fr(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function nu(e,t){var n=t.checked;return K({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Wo(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=vt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function ps(e,t){t=t.checked,t!=null&&Gu(e,"checked",t,!1)}function ru(e,t){ps(e,t);var n=vt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?lu(e,t.type,n):t.hasOwnProperty("defaultValue")&&lu(e,t.type,vt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Qo(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function lu(e,t,n){(t!=="number"||Fr(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var xn=Array.isArray;function qt(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l"+t.valueOf().toString()+"",t=ar.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function In(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Pn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ic=["Webkit","ms","Moz","O"];Object.keys(Pn).forEach(function(e){Ic.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Pn[t]=Pn[e]})});function ys(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Pn.hasOwnProperty(e)&&Pn[e]?(""+t).trim():t+"px"}function gs(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=ys(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var Uc=K({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function iu(e,t){if(t){if(Uc[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(y(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(y(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(y(61))}if(t.style!=null&&typeof t.style!="object")throw Error(y(62))}}function su(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var au=null;function bu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var cu=null,bt=null,en=null;function Xo(e){if(e=nr(e)){if(typeof cu!="function")throw Error(y(280));var t=e.stateNode;t&&(t=fl(t),cu(e.stateNode,e.type,t))}}function ws(e){bt?en?en.push(e):en=[e]:bt=e}function Ss(){if(bt){var e=bt,t=en;if(en=bt=null,Xo(e),t)for(e=0;e>>=0,e===0?32:31-(Gc(e)/Zc|0)|0}var cr=64,fr=4194304;function _n(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function $r(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,u=e.pingedLanes,o=n&268435455;if(o!==0){var i=o&~l;i!==0?r=_n(i):(u&=o,u!==0&&(r=_n(u)))}else o=n&~l,o!==0?r=_n(o):u!==0&&(r=_n(u));if(r===0)return 0;if(t!==0&&t!==r&&!(t&l)&&(l=r&-r,u=t&-t,l>=u||l===16&&(u&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function er(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ie(t),e[t]=n}function ef(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Tn),ri=" ",li=!1;function $s(e,t){switch(e){case"keyup":return Tf.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Vs(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ht=!1;function jf(e,t){switch(e){case"compositionend":return Vs(t);case"keypress":return t.which!==32?null:(li=!0,ri);case"textInput":return e=t.data,e===ri&&li?null:e;default:return null}}function Of(e,t){if(Ht)return e==="compositionend"||!io&&$s(e,t)?(e=Us(),Pr=lo=ot=null,Ht=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=si(n)}}function Qs(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Qs(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ks(){for(var e=window,t=Fr();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Fr(e.document)}return t}function so(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Vf(e){var t=Ks(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Qs(n.ownerDocument.documentElement,n)){if(r!==null&&so(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,u=Math.min(r.start,l);r=r.end===void 0?u:Math.min(r.end,l),!e.extend&&u>r&&(l=r,r=u,u=l),l=ai(n,u);var o=ai(n,r);l&&o&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),u>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Bt=null,vu=null,jn=null,yu=!1;function ci(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;yu||Bt==null||Bt!==Fr(r)||(r=Bt,"selectionStart"in r&&so(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),jn&&Bn(jn,r)||(jn=r,r=Br(vu,"onSelect"),0Kt||(e.current=Cu[Kt],Cu[Kt]=null,Kt--)}function U(e,t){Kt++,Cu[Kt]=e.current,e.current=t}var yt={},se=wt(yt),ve=wt(!1),Ot=yt;function un(e,t){var n=e.type.contextTypes;if(!n)return yt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},u;for(u in n)l[u]=t[u];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function ye(e){return e=e.childContextTypes,e!=null}function Qr(){$(ve),$(se)}function yi(e,t,n){if(se.current!==yt)throw Error(y(168));U(se,t),U(ve,n)}function ta(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(y(108,Dc(e)||"Unknown",l));return K({},n,r)}function Kr(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||yt,Ot=se.current,U(se,e),U(ve,ve.current),!0}function gi(e,t,n){var r=e.stateNode;if(!r)throw Error(y(169));n?(e=ta(e,t,Ot),r.__reactInternalMemoizedMergedChildContext=e,$(ve),$(se),U(se,e)):$(ve),U(ve,n)}var Ke=null,dl=!1,$l=!1;function na(e){Ke===null?Ke=[e]:Ke.push(e)}function bf(e){dl=!0,na(e)}function St(){if(!$l&&Ke!==null){$l=!0;var e=0,t=I;try{var n=Ke;for(I=1;e>=o,l-=o,Ye=1<<32-Ie(t)+l|n<z?(H=N,N=null):H=N.sibling;var O=p(c,N,d[z],v);if(O===null){N===null&&(N=H);break}e&&N&&O.alternate===null&&t(c,N),a=u(O,a,z),_===null?C=O:_.sibling=O,_=O,N=H}if(z===d.length)return n(c,N),V&&_t(c,z),C;if(N===null){for(;zz?(H=N,N=null):H=N.sibling;var we=p(c,N,O.value,v);if(we===null){N===null&&(N=H);break}e&&N&&we.alternate===null&&t(c,N),a=u(we,a,z),_===null?C=we:_.sibling=we,_=we,N=H}if(O.done)return n(c,N),V&&_t(c,z),C;if(N===null){for(;!O.done;z++,O=d.next())O=h(c,O.value,v),O!==null&&(a=u(O,a,z),_===null?C=O:_.sibling=O,_=O);return V&&_t(c,z),C}for(N=r(c,N);!O.done;z++,O=d.next())O=w(N,c,z,O.value,v),O!==null&&(e&&O.alternate!==null&&N.delete(O.key===null?z:O.key),a=u(O,a,z),_===null?C=O:_.sibling=O,_=O);return e&&N.forEach(function(kt){return t(c,kt)}),V&&_t(c,z),C}function M(c,a,d,v){if(typeof d=="object"&&d!==null&&d.type===Vt&&d.key===null&&(d=d.props.children),typeof d=="object"&&d!==null){switch(d.$$typeof){case ir:e:{for(var C=d.key,_=a;_!==null;){if(_.key===C){if(C=d.type,C===Vt){if(_.tag===7){n(c,_.sibling),a=l(_,d.props.children),a.return=c,c=a;break e}}else if(_.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===nt&&ki(C)===_.type){n(c,_.sibling),a=l(_,d.props),a.ref=Sn(c,_,d),a.return=c,c=a;break e}n(c,_);break}else t(c,_);_=_.sibling}d.type===Vt?(a=jt(d.props.children,c.mode,v,d.key),a.return=c,c=a):(v=Dr(d.type,d.key,d.props,null,c.mode,v),v.ref=Sn(c,a,d),v.return=c,c=v)}return o(c);case $t:e:{for(_=d.key;a!==null;){if(a.key===_)if(a.tag===4&&a.stateNode.containerInfo===d.containerInfo&&a.stateNode.implementation===d.implementation){n(c,a.sibling),a=l(a,d.children||[]),a.return=c,c=a;break e}else{n(c,a);break}else t(c,a);a=a.sibling}a=Xl(d,c.mode,v),a.return=c,c=a}return o(c);case nt:return _=d._init,M(c,a,_(d._payload),v)}if(xn(d))return S(c,a,d,v);if(mn(d))return k(c,a,d,v);gr(c,d)}return typeof d=="string"&&d!==""||typeof d=="number"?(d=""+d,a!==null&&a.tag===6?(n(c,a.sibling),a=l(a,d),a.return=c,c=a):(n(c,a),a=Yl(d,c.mode,v),a.return=c,c=a),o(c)):n(c,a)}return M}var sn=oa(!0),ia=oa(!1),Gr=wt(null),Zr=null,Gt=null,po=null;function ho(){po=Gt=Zr=null}function mo(e){var t=Gr.current;$(Gr),e._currentValue=t}function Nu(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function nn(e,t){Zr=e,po=Gt=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(me=!0),e.firstContext=null)}function Le(e){var t=e._currentValue;if(po!==e)if(e={context:e,memoizedValue:t,next:null},Gt===null){if(Zr===null)throw Error(y(308));Gt=e,Zr.dependencies={lanes:0,firstContext:e}}else Gt=Gt.next=e;return t}var zt=null;function vo(e){zt===null?zt=[e]:zt.push(e)}function sa(e,t,n,r){var l=t.interleaved;return l===null?(n.next=n,vo(t)):(n.next=l.next,l.next=n),t.interleaved=n,qe(e,r)}function qe(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var rt=!1;function yo(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function aa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ge(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function dt(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,D&2){var l=r.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),r.pending=t,qe(e,n)}return l=r.interleaved,l===null?(t.next=t,vo(r)):(t.next=l.next,l.next=t),r.interleaved=t,qe(e,n)}function Tr(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,to(e,n)}}function Ei(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var l=null,u=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};u===null?l=u=o:u=u.next=o,n=n.next}while(n!==null);u===null?l=u=t:u=u.next=t}else l=u=t;n={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:u,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Jr(e,t,n,r){var l=e.updateQueue;rt=!1;var u=l.firstBaseUpdate,o=l.lastBaseUpdate,i=l.shared.pending;if(i!==null){l.shared.pending=null;var s=i,f=s.next;s.next=null,o===null?u=f:o.next=f,o=s;var m=e.alternate;m!==null&&(m=m.updateQueue,i=m.lastBaseUpdate,i!==o&&(i===null?m.firstBaseUpdate=f:i.next=f,m.lastBaseUpdate=s))}if(u!==null){var h=l.baseState;o=0,m=f=s=null,i=u;do{var p=i.lane,w=i.eventTime;if((r&p)===p){m!==null&&(m=m.next={eventTime:w,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var S=e,k=i;switch(p=t,w=n,k.tag){case 1:if(S=k.payload,typeof S=="function"){h=S.call(w,h,p);break e}h=S;break e;case 3:S.flags=S.flags&-65537|128;case 0:if(S=k.payload,p=typeof S=="function"?S.call(w,h,p):S,p==null)break e;h=K({},h,p);break e;case 2:rt=!0}}i.callback!==null&&i.lane!==0&&(e.flags|=64,p=l.effects,p===null?l.effects=[i]:p.push(i))}else w={eventTime:w,lane:p,tag:i.tag,payload:i.payload,callback:i.callback,next:null},m===null?(f=m=w,s=h):m=m.next=w,o|=p;if(i=i.next,i===null){if(i=l.shared.pending,i===null)break;p=i,i=p.next,p.next=null,l.lastBaseUpdate=p,l.shared.pending=null}}while(!0);if(m===null&&(s=h),l.baseState=s,l.firstBaseUpdate=f,l.lastBaseUpdate=m,t=l.shared.interleaved,t!==null){l=t;do o|=l.lane,l=l.next;while(l!==t)}else u===null&&(l.shared.lanes=0);Dt|=o,e.lanes=o,e.memoizedState=h}}function Ci(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=Hl.transition;Hl.transition={};try{e(!1),t()}finally{I=n,Hl.transition=r}}function Na(){return je().memoizedState}function rd(e,t,n){var r=ht(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Pa(e))za(t,n);else if(n=sa(e,t,n,r),n!==null){var l=fe();Ue(n,e,r,l),Ta(n,t,r)}}function ld(e,t,n){var r=ht(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Pa(e))za(t,l);else{var u=e.alternate;if(e.lanes===0&&(u===null||u.lanes===0)&&(u=t.lastRenderedReducer,u!==null))try{var o=t.lastRenderedState,i=u(o,n);if(l.hasEagerState=!0,l.eagerState=i,Ae(i,o)){var s=t.interleaved;s===null?(l.next=l,vo(t)):(l.next=s.next,s.next=l),t.interleaved=l;return}}catch{}finally{}n=sa(e,t,l,r),n!==null&&(l=fe(),Ue(n,e,r,l),Ta(n,t,r))}}function Pa(e){var t=e.alternate;return e===Q||t!==null&&t===Q}function za(e,t){On=br=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ta(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,to(e,n)}}var el={readContext:Le,useCallback:ue,useContext:ue,useEffect:ue,useImperativeHandle:ue,useInsertionEffect:ue,useLayoutEffect:ue,useMemo:ue,useReducer:ue,useRef:ue,useState:ue,useDebugValue:ue,useDeferredValue:ue,useTransition:ue,useMutableSource:ue,useSyncExternalStore:ue,useId:ue,unstable_isNewReconciler:!1},ud={readContext:Le,useCallback:function(e,t){return Ve().memoizedState=[e,t===void 0?null:t],e},useContext:Le,useEffect:_i,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,jr(4194308,4,ka.bind(null,t,e),n)},useLayoutEffect:function(e,t){return jr(4194308,4,e,t)},useInsertionEffect:function(e,t){return jr(4,2,e,t)},useMemo:function(e,t){var n=Ve();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ve();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=rd.bind(null,Q,e),[r.memoizedState,e]},useRef:function(e){var t=Ve();return e={current:e},t.memoizedState=e},useState:xi,useDebugValue:_o,useDeferredValue:function(e){return Ve().memoizedState=e},useTransition:function(){var e=xi(!1),t=e[0];return e=nd.bind(null,e[1]),Ve().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Q,l=Ve();if(V){if(n===void 0)throw Error(y(407));n=n()}else{if(n=t(),te===null)throw Error(y(349));Mt&30||pa(r,t,n)}l.memoizedState=n;var u={value:n,getSnapshot:t};return l.queue=u,_i(ma.bind(null,r,u,e),[e]),r.flags|=2048,Jn(9,ha.bind(null,r,u,n,t),void 0,null),n},useId:function(){var e=Ve(),t=te.identifierPrefix;if(V){var n=Xe,r=Ye;n=(r&~(1<<32-Ie(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Gn++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[He]=t,e[Kn]=r,Aa(e,t,!1,!1),t.stateNode=e;e:{switch(o=su(n,r),n){case"dialog":A("cancel",e),A("close",e),l=r;break;case"iframe":case"object":case"embed":A("load",e),l=r;break;case"video":case"audio":for(l=0;lfn&&(t.flags|=128,r=!0,kn(u,!1),t.lanes=4194304)}else{if(!r)if(e=qr(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),kn(u,!0),u.tail===null&&u.tailMode==="hidden"&&!o.alternate&&!V)return oe(t),null}else 2*X()-u.renderingStartTime>fn&&n!==1073741824&&(t.flags|=128,r=!0,kn(u,!1),t.lanes=4194304);u.isBackwards?(o.sibling=t.child,t.child=o):(n=u.last,n!==null?n.sibling=o:t.child=o,u.last=o)}return u.tail!==null?(t=u.tail,u.rendering=t,u.tail=t.sibling,u.renderingStartTime=X(),t.sibling=null,n=W.current,U(W,r?n&1|2:n&1),t):(oe(t),null);case 22:case 23:return jo(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Se&1073741824&&(oe(t),t.subtreeFlags&6&&(t.flags|=8192)):oe(t),null;case 24:return null;case 25:return null}throw Error(y(156,t.tag))}function pd(e,t){switch(co(t),t.tag){case 1:return ye(t.type)&&Qr(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return an(),$(ve),$(se),So(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return wo(t),null;case 13:if($(W),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(y(340));on()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return $(W),null;case 4:return an(),null;case 10:return mo(t.type._context),null;case 22:case 23:return jo(),null;case 24:return null;default:return null}}var Sr=!1,ie=!1,hd=typeof WeakSet=="function"?WeakSet:Set,x=null;function Zt(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Y(e,t,r)}else n.current=null}function Du(e,t,n){try{n()}catch(r){Y(e,t,r)}}var Fi=!1;function md(e,t){if(gu=Vr,e=Ks(),so(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,u=r.focusNode;r=r.focusOffset;try{n.nodeType,u.nodeType}catch{n=null;break e}var o=0,i=-1,s=-1,f=0,m=0,h=e,p=null;t:for(;;){for(var w;h!==n||l!==0&&h.nodeType!==3||(i=o+l),h!==u||r!==0&&h.nodeType!==3||(s=o+r),h.nodeType===3&&(o+=h.nodeValue.length),(w=h.firstChild)!==null;)p=h,h=w;for(;;){if(h===e)break t;if(p===n&&++f===l&&(i=o),p===u&&++m===r&&(s=o),(w=h.nextSibling)!==null)break;h=p,p=h.parentNode}h=w}n=i===-1||s===-1?null:{start:i,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(wu={focusedElem:e,selectionRange:n},Vr=!1,x=t;x!==null;)if(t=x,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,x=e;else for(;x!==null;){t=x;try{var S=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(S!==null){var k=S.memoizedProps,M=S.memoizedState,c=t.stateNode,a=c.getSnapshotBeforeUpdate(t.elementType===t.type?k:Me(t.type,k),M);c.__reactInternalSnapshotBeforeUpdate=a}break;case 3:var d=t.stateNode.containerInfo;d.nodeType===1?d.textContent="":d.nodeType===9&&d.documentElement&&d.removeChild(d.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(y(163))}}catch(v){Y(t,t.return,v)}if(e=t.sibling,e!==null){e.return=t.return,x=e;break}x=t.return}return S=Fi,Fi=!1,S}function Rn(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var u=l.destroy;l.destroy=void 0,u!==void 0&&Du(t,n,u)}l=l.next}while(l!==r)}}function ml(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Fu(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Ha(e){var t=e.alternate;t!==null&&(e.alternate=null,Ha(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[He],delete t[Kn],delete t[Eu],delete t[Jf],delete t[qf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ba(e){return e.tag===5||e.tag===3||e.tag===4}function Ii(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Ba(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Iu(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Wr));else if(r!==4&&(e=e.child,e!==null))for(Iu(e,t,n),e=e.sibling;e!==null;)Iu(e,t,n),e=e.sibling}function Uu(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Uu(e,t,n),e=e.sibling;e!==null;)Uu(e,t,n),e=e.sibling}var ne=null,De=!1;function tt(e,t,n){for(n=n.child;n!==null;)Wa(e,t,n),n=n.sibling}function Wa(e,t,n){if(Be&&typeof Be.onCommitFiberUnmount=="function")try{Be.onCommitFiberUnmount(il,n)}catch{}switch(n.tag){case 5:ie||Zt(n,t);case 6:var r=ne,l=De;ne=null,tt(e,t,n),ne=r,De=l,ne!==null&&(De?(e=ne,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ne.removeChild(n.stateNode));break;case 18:ne!==null&&(De?(e=ne,n=n.stateNode,e.nodeType===8?Al(e.parentNode,n):e.nodeType===1&&Al(e,n),Vn(e)):Al(ne,n.stateNode));break;case 4:r=ne,l=De,ne=n.stateNode.containerInfo,De=!0,tt(e,t,n),ne=r,De=l;break;case 0:case 11:case 14:case 15:if(!ie&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var u=l,o=u.destroy;u=u.tag,o!==void 0&&(u&2||u&4)&&Du(n,t,o),l=l.next}while(l!==r)}tt(e,t,n);break;case 1:if(!ie&&(Zt(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(i){Y(n,t,i)}tt(e,t,n);break;case 21:tt(e,t,n);break;case 22:n.mode&1?(ie=(r=ie)||n.memoizedState!==null,tt(e,t,n),ie=r):tt(e,t,n);break;default:tt(e,t,n)}}function Ui(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new hd),t.forEach(function(r){var l=xd.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Oe(e,t){var n=t.deletions;if(n!==null)for(var r=0;rl&&(l=o),r&=~u}if(r=l,r=X()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*yd(r/1960))-r,10e?16:e,it===null)var r=!1;else{if(e=it,it=null,rl=0,D&6)throw Error(y(331));var l=D;for(D|=4,x=e.current;x!==null;){var u=x,o=u.child;if(x.flags&16){var i=u.deletions;if(i!==null){for(var s=0;sX()-To?Lt(e,0):zo|=n),ge(e,t)}function qa(e,t){t===0&&(e.mode&1?(t=fr,fr<<=1,!(fr&130023424)&&(fr=4194304)):t=1);var n=fe();e=qe(e,t),e!==null&&(er(e,t,n),ge(e,n))}function Cd(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qa(e,n)}function xd(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(y(314))}r!==null&&r.delete(t),qa(e,n)}var ba;ba=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ve.current)me=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return me=!1,fd(e,t,n);me=!!(e.flags&131072)}else me=!1,V&&t.flags&1048576&&ra(t,Xr,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Or(e,t),e=t.pendingProps;var l=un(t,se.current);nn(t,n),l=Eo(null,t,r,e,l,n);var u=Co();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ye(r)?(u=!0,Kr(t)):u=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,yo(t),l.updater=hl,t.stateNode=l,l._reactInternals=t,zu(t,r,e,n),t=ju(null,t,r,!0,u,n)):(t.tag=0,V&&u&&ao(t),ce(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Or(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=Nd(r),e=Me(r,e),l){case 0:t=Lu(null,t,r,e,n);break e;case 1:t=Ri(null,t,r,e,n);break e;case 11:t=ji(null,t,r,e,n);break e;case 14:t=Oi(null,t,r,Me(r.type,e),n);break e}throw Error(y(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Me(r,l),Lu(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Me(r,l),Ri(e,t,r,l,n);case 3:e:{if(Fa(t),e===null)throw Error(y(387));r=t.pendingProps,u=t.memoizedState,l=u.element,aa(e,t),Jr(t,r,null,n);var o=t.memoizedState;if(r=o.element,u.isDehydrated)if(u={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=u,t.memoizedState=u,t.flags&256){l=cn(Error(y(423)),t),t=Mi(e,t,r,n,l);break e}else if(r!==l){l=cn(Error(y(424)),t),t=Mi(e,t,r,n,l);break e}else for(ke=ft(t.stateNode.containerInfo.firstChild),Ee=t,V=!0,Fe=null,n=ia(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(on(),r===l){t=be(e,t,n);break e}ce(e,t,r,n)}t=t.child}return t;case 5:return ca(t),e===null&&_u(t),r=t.type,l=t.pendingProps,u=e!==null?e.memoizedProps:null,o=l.children,Su(r,l)?o=null:u!==null&&Su(r,u)&&(t.flags|=32),Da(e,t),ce(e,t,o,n),t.child;case 6:return e===null&&_u(t),null;case 13:return Ia(e,t,n);case 4:return go(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=sn(t,null,r,n):ce(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Me(r,l),ji(e,t,r,l,n);case 7:return ce(e,t,t.pendingProps,n),t.child;case 8:return ce(e,t,t.pendingProps.children,n),t.child;case 12:return ce(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,u=t.memoizedProps,o=l.value,U(Gr,r._currentValue),r._currentValue=o,u!==null)if(Ae(u.value,o)){if(u.children===l.children&&!ve.current){t=be(e,t,n);break e}}else for(u=t.child,u!==null&&(u.return=t);u!==null;){var i=u.dependencies;if(i!==null){o=u.child;for(var s=i.firstContext;s!==null;){if(s.context===r){if(u.tag===1){s=Ge(-1,n&-n),s.tag=2;var f=u.updateQueue;if(f!==null){f=f.shared;var m=f.pending;m===null?s.next=s:(s.next=m.next,m.next=s),f.pending=s}}u.lanes|=n,s=u.alternate,s!==null&&(s.lanes|=n),Nu(u.return,n,t),i.lanes|=n;break}s=s.next}}else if(u.tag===10)o=u.type===t.type?null:u.child;else if(u.tag===18){if(o=u.return,o===null)throw Error(y(341));o.lanes|=n,i=o.alternate,i!==null&&(i.lanes|=n),Nu(o,n,t),o=u.sibling}else o=u.child;if(o!==null)o.return=u;else for(o=u;o!==null;){if(o===t){o=null;break}if(u=o.sibling,u!==null){u.return=o.return,o=u;break}o=o.return}u=o}ce(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,nn(t,n),l=Le(l),r=r(l),t.flags|=1,ce(e,t,r,n),t.child;case 14:return r=t.type,l=Me(r,t.pendingProps),l=Me(r.type,l),Oi(e,t,r,l,n);case 15:return Ra(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Me(r,l),Or(e,t),t.tag=1,ye(r)?(e=!0,Kr(t)):e=!1,nn(t,n),La(t,r,l),zu(t,r,l,n),ju(null,t,r,!0,e,n);case 19:return Ua(e,t,n);case 22:return Ma(e,t,n)}throw Error(y(156,t.tag))};function ec(e,t){return Ps(e,t)}function _d(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ze(e,t,n,r){return new _d(e,t,n,r)}function Ro(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Nd(e){if(typeof e=="function")return Ro(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ju)return 11;if(e===qu)return 14}return 2}function mt(e,t){var n=e.alternate;return n===null?(n=ze(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Dr(e,t,n,r,l,u){var o=2;if(r=e,typeof e=="function")Ro(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Vt:return jt(n.children,l,u,t);case Zu:o=8,l|=8;break;case ql:return e=ze(12,n,t,l|2),e.elementType=ql,e.lanes=u,e;case bl:return e=ze(13,n,t,l),e.elementType=bl,e.lanes=u,e;case eu:return e=ze(19,n,t,l),e.elementType=eu,e.lanes=u,e;case cs:return yl(n,l,u,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ss:o=10;break e;case as:o=9;break e;case Ju:o=11;break e;case qu:o=14;break e;case nt:o=16,r=null;break e}throw Error(y(130,e==null?e:typeof e,""))}return t=ze(o,n,t,l),t.elementType=e,t.type=r,t.lanes=u,t}function jt(e,t,n,r){return e=ze(7,e,r,t),e.lanes=n,e}function yl(e,t,n,r){return e=ze(22,e,r,t),e.elementType=cs,e.lanes=n,e.stateNode={isHidden:!1},e}function Yl(e,t,n){return e=ze(6,e,null,t),e.lanes=n,e}function Xl(e,t,n){return t=ze(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Pd(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=zl(0),this.expirationTimes=zl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=zl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Mo(e,t,n,r,l,u,o,i,s){return e=new Pd(e,t,n,i,s),t===1?(t=1,u===!0&&(t|=8)):t=0,u=ze(3,null,null,t),e.current=u,u.stateNode=e,u.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},yo(u),e}function zd(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(lc)}catch(e){console.error(e)}}lc(),ls.exports=xe;var Rd=ls.exports,Ki=Rd;Zl.createRoot=Ki.createRoot,Zl.hydrateRoot=Ki.hydrateRoot;const Gl=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Cr=["Breakfast","Lunch","Dinner","Snacks"],Re="/api";function Md(){const[e,t]=ae.useState(Array(7).fill("").map(()=>Array(4).fill(""))),[n,r]=ae.useState([]),[l,u]=ae.useState([]),[o,i]=ae.useState(!0),[s,f]=ae.useState(!0),[m,h]=ae.useState(!1),[p,w]=ae.useState(!1),[S,k]=ae.useState(null),[M,c]=ae.useState(null),[a,d]=ae.useState({});ae.useEffect(()=>{const L=localStorage.getItem("darkMode");L!==null&&i(JSON.parse(L)),fetch(`${Re}/meals`).then(E=>E.json()).then(E=>{if(E.meals&&E.meals[0]){const q=E.meals[0].map(F=>Array(4).fill("").map((g,T)=>F[T]||""));t(q)}}).catch(E=>console.error(E)),fetch(`${Re}/favorites`).then(E=>E.json()).then(E=>r(E.favorites||[])).catch(E=>console.error(E)),fetch(`${Re}/history`).then(E=>E.json()).then(E=>u(E.history||[])).catch(E=>console.error(E)),fetch(`${Re}/notes`).then(E=>E.json()).then(E=>d(E.notes||{})).catch(E=>console.error(E)).finally(()=>f(!1))},[]),ae.useEffect(()=>{localStorage.setItem("darkMode",JSON.stringify(o))},[o]);const v=(L,E,q)=>{const F=e.map((g,T)=>T===L?g.map((j,B)=>B===E?q:j):g);t(F),fetch(`${Re}/meals`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({meals:[F.map(g=>[...g]),Array(7).fill("").map(()=>Array(4).fill(""))]})}).catch(g=>console.error(g))},C=(L,E,q)=>{fetch(`${Re}/favorites`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({meal:L,day:Gl[E],mealType:Cr[q]})}).then(F=>F.json()).then(F=>r(F.favorites)).catch(F=>console.error(F))},_=L=>n.some(E=>E.meal===L&&L!==""),N=L=>{k(L),h(!1)},z=(L,E)=>{if(S){const q=e.map((F,g)=>g===L?F.map((T,j)=>j===E?S:T):F);t(q),fetch(`${Re}/meals`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({meals:[q,Array(7).fill("").map(()=>Array(4).fill(""))]})}).catch(F=>console.error(F)),k(null)}},H=L=>{t(L.map(E=>[...E])),fetch(`${Re}/meals`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({meals:[L,Array(7).fill("").map(()=>Array(4).fill(""))]})}).catch(E=>console.error(E))},O=()=>{if(confirm("Clear all meals? Current week will be saved to history.")){const L=Array(7).fill("").map(()=>Array(4).fill(""));t(L),fetch(`${Re}/meals`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({meals:[L,Array(7).fill("").map(()=>Array(4).fill(""))],addToHistory:!0})}).catch(E=>console.error(E)),fetch(`${Re}/history`).then(E=>E.json()).then(E=>u(E.history||[])).catch(E=>console.error(E))}},we=()=>{window.print()},kt=(L,E)=>{const q=`${L}-${E}`;c({dayIndex:L,mealIndex:E,notes:a[q]||""})},Et=()=>{if(M){const L=`${M.dayIndex}-${M.mealIndex}`,E={...a};M.notes?E[L]=M.notes:delete E[L],d(E),fetch(`${Re}/notes`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({notes:E})}).catch(q=>console.error(q)),c(null)}};return s?P.jsx("div",{className:"loading",children:"Loading..."}):P.jsxs("div",{className:`app ${o?"dark":"light"}`,children:[P.jsxs("header",{children:[P.jsx("h1",{children:"What the F**K to Eat?! 🍽️"}),P.jsxs("div",{className:"controls",children:[S&&P.jsxs("span",{className:"selected-fav",children:["Click a cell to add: ",P.jsx("strong",{children:S})," ",P.jsx("button",{onClick:()=>k(null),children:"Cancel"})]}),P.jsx("button",{onClick:()=>i(!o),children:o?"☀️ Light":"🌙 Dark"}),P.jsxs("button",{onClick:()=>h(!m),children:["❤️ Favorites (",n.length,")"]}),P.jsxs("button",{onClick:()=>w(!p),children:["📜 History (",l.length,")"]}),P.jsx("button",{onClick:O,children:"🔄 Reset"}),P.jsx("button",{onClick:we,children:"🖨️ Print"})]})]}),m&&P.jsxs("div",{className:"panel",children:[P.jsx("h2",{children:"❤️ Favorites"}),n.length===0?P.jsx("p",{className:"empty-msg",children:"No favorites yet. Click the heart on a meal to add it."}):P.jsx("div",{className:"favorites-grid",children:n.map((L,E)=>P.jsxs("div",{className:"fav-card",onClick:()=>N(L.meal),children:[P.jsx("span",{children:L.meal}),P.jsxs("small",{children:[L.day," - ",L.mealType]})]},E))})]}),p&&P.jsxs("div",{className:"panel",children:[P.jsx("h2",{children:"📜 History"}),l.length===0?P.jsx("p",{className:"empty-msg",children:"No history yet. Reset the week to save it."}):P.jsx("div",{className:"history-list",children:l.map((L,E)=>P.jsxs("div",{className:"history-card",onClick:()=>H(L.week),children:[P.jsxs("span",{children:["Week ",E+1]}),P.jsx("small",{children:new Date(L.date).toLocaleDateString()})]},E))})]}),P.jsx("main",{children:P.jsxs("table",{className:"meal-table",children:[P.jsx("thead",{children:P.jsxs("tr",{children:[P.jsx("th",{children:"Day"}),Cr.map(L=>P.jsx("th",{children:L},L))]})}),P.jsx("tbody",{children:Gl.map((L,E)=>P.jsxs("tr",{children:[P.jsx("td",{className:"day-label",children:L}),Cr.map((q,F)=>P.jsxs("td",{onClick:()=>z(E,F),className:a[`${E}-${F}`]?"has-notes":"",children:[P.jsx("textarea",{rows:3,value:e[E][F]||"",onChange:g=>v(E,F,g.target.value),placeholder:"..."}),P.jsxs("div",{className:"cell-buttons",children:[e[E][F]&&P.jsx("button",{className:"fav-btn",onClick:g=>{g.stopPropagation(),C(e[E][F],E,F)},children:_(e[E][F])?"❤️":"🤍"}),P.jsx("button",{className:"notes-btn",onClick:g=>{g.stopPropagation(),kt(E,F)},children:"📋"})]})]},q))]},L))})]})}),P.jsxs("footer",{children:[P.jsxs("div",{className:"legend",children:[P.jsx("span",{children:"❤️ Click heart to favorite"}),P.jsx("span",{children:"📋 Click notepad to add notes"}),P.jsxs("span",{children:[P.jsx("span",{className:"legend-box"})," Blue border = has notes"]})]}),P.jsx("p",{children:"Data synced across all devices"})]}),M&&P.jsx("div",{className:"modal-overlay",onClick:()=>c(null),children:P.jsxs("div",{className:"modal",onClick:L=>L.stopPropagation(),children:[P.jsxs("h3",{children:["Notes for ",Gl[M.dayIndex]," - ",Cr[M.mealIndex]]}),P.jsx("textarea",{value:M.notes,onChange:L=>c({...M,notes:L.target.value}),placeholder:"Add notes here... (prep time, ingredients, etc.)",rows:5}),P.jsxs("div",{className:"modal-buttons",children:[P.jsx("button",{onClick:Et,children:"Save"}),P.jsx("button",{onClick:()=>c(null),className:"cancel",children:"Cancel"})]})]})})]})}Zl.createRoot(document.getElementById("root")).render(P.jsx(kc.StrictMode,{children:P.jsx(Md,{})})); diff --git a/dist/assets/index-rHixgCzr.css b/dist/assets/index-rHixgCzr.css new file mode 100644 index 0000000..85e62e3 --- /dev/null +++ b/dist/assets/index-rHixgCzr.css @@ -0,0 +1 @@ +*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.app{min-height:100vh;padding:20px;transition:background .3s,color .3s}.app.dark{background:#1a1a2e;color:#eee}.app.light{background:#f5f5f5;color:#333}header{display:flex;flex-direction:column;align-items:center;margin-bottom:30px;gap:15px}h1{font-size:2rem;font-weight:700;color:#e2e8f0;text-align:center}.app.light h1{color:#1e293b}.controls{display:flex;gap:10px}button{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}button:hover{opacity:.85;transform:translateY(-1px)}button:active{transform:scale(.98)}.app.dark button{background:#3b82f6;color:#fff}.app.light button{background:#64748b;color:#fff}main{max-width:1000px;margin:0 auto;overflow-x:auto}.meal-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000026;border:2px solid #334155}.meal-table th,.meal-table td{padding:14px 12px;text-align:left}.meal-table th{font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:1px}.app.dark .meal-table th{background:#334155;color:#e2e8f0}.app.light .meal-table th{background:#cbd5e1;color:#334155}.meal-table tbody tr:nth-child(odd){background:#ffffff05}.app.light .meal-table tbody tr:nth-child(odd){background:#00000005}.meal-table tbody tr{transition:all .15s ease}.meal-table tbody tr:hover{background:#3b82f626!important}.app.light .meal-table tbody tr:hover{background:#3b82f614!important}.meal-table td{border-bottom:1px solid rgba(255,255,255,.05)}.meal-table td.has-notes{box-shadow:inset 0 0 0 1px #3b82f666}.app.light .meal-table td{border-bottom:1px solid rgba(0,0,0,.08)}.meal-table td.day-label{font-weight:600;width:100px}.meal-table textarea{width:100%;min-height:4.5em;padding:10px;border:none;border-radius:6px;font-size:1rem;font-family:inherit;background:#ffffff0d;color:inherit;resize:none;overflow-wrap:break-word;word-wrap:break-word;line-height:1.4;transition:all .2s ease}.app.light .meal-table textarea{background:#ffffffe6}.meal-table textarea:focus{outline:none;background:#3b82f626;box-shadow:0 0 0 2px #3b82f633}.meal-table textarea::placeholder{opacity:.4;font-style:italic}footer{text-align:center;margin-top:30px;opacity:.6;font-size:.85rem}.legend{display:flex;justify-content:center;gap:20px;margin-bottom:10px;flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:5px;font-size:.8rem}.legend-box{display:inline-block;width:14px;height:14px;border:2px solid rgba(59,130,246,.6);border-radius:3px;background:transparent}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.2rem}.panel{background:#ffffff0d;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 4px 12px #0000001a}.app.light .panel{background:#ffffffe6;box-shadow:0 4px 12px #0000001a}.panel h2{margin-bottom:15px;font-size:1.2rem}.empty-msg{opacity:.6;font-style:italic}.favorites-grid{display:flex;flex-wrap:wrap;gap:10px}.fav-card{background:#3b82f633;padding:10px 15px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:4px}.fav-card:hover{transform:scale(1.05);background:#3b82f64d}.fav-card span{font-weight:500}.fav-card small{opacity:.7;font-size:.75rem}.history-list{display:flex;flex-direction:column;gap:8px}.history-card{background:#ffffff0d;padding:10px 15px;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.history-card:hover{background:#3b82f633}.history-card span{font-weight:500}.history-card small{opacity:.7}.meal-table td{position:relative}.cell-buttons{position:absolute;top:4px;right:4px;display:flex;gap:2px;opacity:0;transition:opacity .2s}.meal-table td:hover .cell-buttons{opacity:1}.fav-btn,.notes-btn{background:none;border:none;font-size:.85rem;cursor:pointer;padding:2px 4px;box-shadow:none}.selected-fav{display:flex;align-items:center;gap:8px;background:#3b82f64d;padding:8px 12px;border-radius:8px;font-size:.9rem}.selected-fav button{background:#ef4444;padding:4px 8px;font-size:.75rem}.meal-table tbody tr:hover{cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#1e293b;padding:24px;border-radius:12px;width:90%;max-width:400px;box-shadow:0 8px 32px #0000004d}.app.light .modal{background:#f8fafc}.modal h3{margin-bottom:15px;font-size:1.1rem}.modal textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font-family:inherit;resize:none;margin-bottom:15px}.app.light .modal textarea{background:#fff;border-color:#cbd5e1;color:#1e293b}.modal textarea:focus{outline:none;border-color:#3b82f6}.modal-buttons{display:flex;gap:10px;justify-content:flex-end}.modal-buttons button{padding:8px 16px}.modal-buttons .cancel{background:#475569}@media print{.controls{display:none}.app{background:#fff!important;color:#000!important}.meal-table{box-shadow:none}.meal-table th{background:#333!important;color:#fff!important}.meal-table td{border-color:#000!important}.meal-table textarea{background:#fff!important;color:#000!important}body{font-size:12pt}}@media (max-width: 600px){header{flex-direction:column;text-align:center}.meal-table{font-size:.85rem}.meal-table th,.meal-table td{padding:10px 6px}.meal-table textarea{font-size:.9rem;min-height:4em}} diff --git a/dist/index.html b/dist/index.html new file mode 100644 index 0000000..9327c5f --- /dev/null +++ b/dist/index.html @@ -0,0 +1,13 @@ + + + + + + What the fuck to eat + + + + +
+ + diff --git a/index.html b/index.html new file mode 100644 index 0000000..ff6df45 --- /dev/null +++ b/index.html @@ -0,0 +1,12 @@ + + + + + + What the fuck to eat + + +
+ + + diff --git a/node_modules/.bin/baseline-browser-mapping b/node_modules/.bin/baseline-browser-mapping new file mode 120000 index 0000000..8e9a12d --- /dev/null +++ b/node_modules/.bin/baseline-browser-mapping @@ -0,0 +1 @@ +../baseline-browser-mapping/dist/cli.cjs \ No newline at end of file diff --git a/node_modules/.bin/browserslist b/node_modules/.bin/browserslist new file mode 120000 index 0000000..3cd991b --- /dev/null +++ b/node_modules/.bin/browserslist @@ -0,0 +1 @@ +../browserslist/cli.js \ No newline at end of file diff --git a/node_modules/.bin/esbuild b/node_modules/.bin/esbuild new file mode 120000 index 0000000..c83ac07 --- /dev/null +++ b/node_modules/.bin/esbuild @@ -0,0 +1 @@ +../esbuild/bin/esbuild \ No newline at end of file diff --git a/node_modules/.bin/jsesc b/node_modules/.bin/jsesc new file mode 120000 index 0000000..7237604 --- /dev/null +++ b/node_modules/.bin/jsesc @@ -0,0 +1 @@ +../jsesc/bin/jsesc \ No newline at end of file diff --git a/node_modules/.bin/json5 b/node_modules/.bin/json5 new file mode 120000 index 0000000..217f379 --- /dev/null +++ b/node_modules/.bin/json5 @@ -0,0 +1 @@ +../json5/lib/cli.js \ No newline at end of file diff --git a/node_modules/.bin/loose-envify b/node_modules/.bin/loose-envify new file mode 120000 index 0000000..ed9009c --- /dev/null +++ b/node_modules/.bin/loose-envify @@ -0,0 +1 @@ +../loose-envify/cli.js \ No newline at end of file diff --git a/node_modules/.bin/nanoid b/node_modules/.bin/nanoid new file mode 120000 index 0000000..e2be547 --- /dev/null +++ b/node_modules/.bin/nanoid @@ -0,0 +1 @@ +../nanoid/bin/nanoid.cjs \ No newline at end of file diff --git a/node_modules/.bin/parser b/node_modules/.bin/parser new file mode 120000 index 0000000..ce7bf97 --- /dev/null +++ b/node_modules/.bin/parser @@ -0,0 +1 @@ +../@babel/parser/bin/babel-parser.js \ No newline at end of file diff --git a/node_modules/.bin/rollup b/node_modules/.bin/rollup new file mode 120000 index 0000000..5939621 --- /dev/null +++ b/node_modules/.bin/rollup @@ -0,0 +1 @@ +../rollup/dist/bin/rollup \ No newline at end of file diff --git a/node_modules/.bin/semver b/node_modules/.bin/semver new file mode 120000 index 0000000..5aaadf4 --- /dev/null +++ b/node_modules/.bin/semver @@ -0,0 +1 @@ +../semver/bin/semver.js \ No newline at end of file diff --git a/node_modules/.bin/update-browserslist-db b/node_modules/.bin/update-browserslist-db new file mode 120000 index 0000000..b11e16f --- /dev/null +++ b/node_modules/.bin/update-browserslist-db @@ -0,0 +1 @@ +../update-browserslist-db/cli.js \ No newline at end of file diff --git a/node_modules/.bin/vite b/node_modules/.bin/vite new file mode 120000 index 0000000..6d1e3be --- /dev/null +++ b/node_modules/.bin/vite @@ -0,0 +1 @@ +../vite/bin/vite.js \ No newline at end of file diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json new file mode 100644 index 0000000..15813a8 --- /dev/null +++ b/node_modules/.package-lock.json @@ -0,0 +1,940 @@ +{ + "name": "what-the-fuck-to-eat", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz", + "integrity": "sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", + "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", + "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", + "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.60.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.0.tgz", + "integrity": "sha512-DX2x7CMcrJzsE91q7/O02IJQ5/aLkVtYFryqCjduJhUfGKG6yJV8hxaw8pZa93lLEpPTP/ohdN4wFz7yp/ry9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.12", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.12.tgz", + "integrity": "sha512-qyq26DxfY4awP2gIRXhhLWfwzwI+N5Nxk6iQi8EFizIaWIjqicQTE4sLnZZVdeKPRcVNoJOkkpfzoIYuvCKaIQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001781", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001781.tgz", + "integrity": "sha512-RdwNCyMsNBftLjW6w01z8bKEvT6e/5tpPVEgtn22TiLGlstHOVecsX2KHFkD5e/vRnIE4EGzpuIODb3mtswtkw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.328", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.328.tgz", + "integrity": "sha512-QNQ5l45DzYytThO21403XN3FvK0hOkWDG8viNf6jqS42msJ8I4tGDSpBCgvDRRPnkffafiwAym2X2eHeGD2V0w==", + "dev": true, + "license": "ISC" + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.36", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.36.tgz", + "integrity": "sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/postcss": { + "version": "8.5.8", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz", + "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.60.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.0.tgz", + "integrity": "sha512-yqjxruMGBQJ2gG4HtjZtAfXArHomazDHoFwFFmZZl0r7Pdo7qCIXKqKHZc8yeoMgzJJ+pO6pEEHa+V7uzWlrAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.60.0", + "@rollup/rollup-android-arm64": "4.60.0", + "@rollup/rollup-darwin-arm64": "4.60.0", + "@rollup/rollup-darwin-x64": "4.60.0", + "@rollup/rollup-freebsd-arm64": "4.60.0", + "@rollup/rollup-freebsd-x64": "4.60.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.60.0", + "@rollup/rollup-linux-arm-musleabihf": "4.60.0", + "@rollup/rollup-linux-arm64-gnu": "4.60.0", + "@rollup/rollup-linux-arm64-musl": "4.60.0", + "@rollup/rollup-linux-loong64-gnu": "4.60.0", + "@rollup/rollup-linux-loong64-musl": "4.60.0", + "@rollup/rollup-linux-ppc64-gnu": "4.60.0", + "@rollup/rollup-linux-ppc64-musl": "4.60.0", + "@rollup/rollup-linux-riscv64-gnu": "4.60.0", + "@rollup/rollup-linux-riscv64-musl": "4.60.0", + "@rollup/rollup-linux-s390x-gnu": "4.60.0", + "@rollup/rollup-linux-x64-gnu": "4.60.0", + "@rollup/rollup-linux-x64-musl": "4.60.0", + "@rollup/rollup-openbsd-x64": "4.60.0", + "@rollup/rollup-openharmony-arm64": "4.60.0", + "@rollup/rollup-win32-arm64-msvc": "4.60.0", + "@rollup/rollup-win32-ia32-msvc": "4.60.0", + "@rollup/rollup-win32-x64-gnu": "4.60.0", + "@rollup/rollup-win32-x64-msvc": "4.60.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + } + } +} diff --git a/node_modules/@babel/code-frame/LICENSE b/node_modules/@babel/code-frame/LICENSE new file mode 100644 index 0000000..f31575e --- /dev/null +++ b/node_modules/@babel/code-frame/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@babel/code-frame/README.md b/node_modules/@babel/code-frame/README.md new file mode 100644 index 0000000..7160755 --- /dev/null +++ b/node_modules/@babel/code-frame/README.md @@ -0,0 +1,19 @@ +# @babel/code-frame + +> Generate errors that contain a code frame that point to source locations. + +See our website [@babel/code-frame](https://babeljs.io/docs/babel-code-frame) for more information. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/code-frame +``` + +or using yarn: + +```sh +yarn add @babel/code-frame --dev +``` diff --git a/node_modules/@babel/code-frame/lib/index.js b/node_modules/@babel/code-frame/lib/index.js new file mode 100644 index 0000000..9c5db40 --- /dev/null +++ b/node_modules/@babel/code-frame/lib/index.js @@ -0,0 +1,217 @@ +'use strict'; + +Object.defineProperty(exports, '__esModule', { value: true }); + +var picocolors = require('picocolors'); +var jsTokens = require('js-tokens'); +var helperValidatorIdentifier = require('@babel/helper-validator-identifier'); + +function isColorSupported() { + return (typeof process === "object" && (process.env.FORCE_COLOR === "0" || process.env.FORCE_COLOR === "false") ? false : picocolors.isColorSupported + ); +} +const compose = (f, g) => v => f(g(v)); +function buildDefs(colors) { + return { + keyword: colors.cyan, + capitalized: colors.yellow, + jsxIdentifier: colors.yellow, + punctuator: colors.yellow, + number: colors.magenta, + string: colors.green, + regex: colors.magenta, + comment: colors.gray, + invalid: compose(compose(colors.white, colors.bgRed), colors.bold), + gutter: colors.gray, + marker: compose(colors.red, colors.bold), + message: compose(colors.red, colors.bold), + reset: colors.reset + }; +} +const defsOn = buildDefs(picocolors.createColors(true)); +const defsOff = buildDefs(picocolors.createColors(false)); +function getDefs(enabled) { + return enabled ? defsOn : defsOff; +} + +const sometimesKeywords = new Set(["as", "async", "from", "get", "of", "set"]); +const NEWLINE$1 = /\r\n|[\n\r\u2028\u2029]/; +const BRACKET = /^[()[\]{}]$/; +let tokenize; +const JSX_TAG = /^[a-z][\w-]*$/i; +const getTokenType = function (token, offset, text) { + if (token.type === "name") { + const tokenValue = token.value; + if (helperValidatorIdentifier.isKeyword(tokenValue) || helperValidatorIdentifier.isStrictReservedWord(tokenValue, true) || sometimesKeywords.has(tokenValue)) { + return "keyword"; + } + if (JSX_TAG.test(tokenValue) && (text[offset - 1] === "<" || text.slice(offset - 2, offset) === " defs[type](str)).join("\n"); + } else { + highlighted += value; + } + } + return highlighted; +} + +let deprecationWarningShown = false; +const NEWLINE = /\r\n|[\n\r\u2028\u2029]/; +function getMarkerLines(loc, source, opts, startLineBaseZero) { + const startLoc = Object.assign({ + column: 0, + line: -1 + }, loc.start); + const endLoc = Object.assign({}, startLoc, loc.end); + const { + linesAbove = 2, + linesBelow = 3 + } = opts || {}; + const startLine = startLoc.line - startLineBaseZero; + const startColumn = startLoc.column; + const endLine = endLoc.line - startLineBaseZero; + const endColumn = endLoc.column; + let start = Math.max(startLine - (linesAbove + 1), 0); + let end = Math.min(source.length, endLine + linesBelow); + if (startLine === -1) { + start = 0; + } + if (endLine === -1) { + end = source.length; + } + const lineDiff = endLine - startLine; + const markerLines = {}; + if (lineDiff) { + for (let i = 0; i <= lineDiff; i++) { + const lineNumber = i + startLine; + if (!startColumn) { + markerLines[lineNumber] = true; + } else if (i === 0) { + const sourceLength = source[lineNumber - 1].length; + markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1]; + } else if (i === lineDiff) { + markerLines[lineNumber] = [0, endColumn]; + } else { + const sourceLength = source[lineNumber - i].length; + markerLines[lineNumber] = [0, sourceLength]; + } + } + } else { + if (startColumn === endColumn) { + if (startColumn) { + markerLines[startLine] = [startColumn, 0]; + } else { + markerLines[startLine] = true; + } + } else { + markerLines[startLine] = [startColumn, endColumn - startColumn]; + } + } + return { + start, + end, + markerLines + }; +} +function codeFrameColumns(rawLines, loc, opts = {}) { + const shouldHighlight = opts.forceColor || isColorSupported() && opts.highlightCode; + const startLineBaseZero = (opts.startLine || 1) - 1; + const defs = getDefs(shouldHighlight); + const lines = rawLines.split(NEWLINE); + const { + start, + end, + markerLines + } = getMarkerLines(loc, lines, opts, startLineBaseZero); + const hasColumns = loc.start && typeof loc.start.column === "number"; + const numberMaxWidth = String(end + startLineBaseZero).length; + const highlightedLines = shouldHighlight ? highlight(rawLines) : rawLines; + let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index) => { + const number = start + 1 + index; + const paddedNumber = ` ${number + startLineBaseZero}`.slice(-numberMaxWidth); + const gutter = ` ${paddedNumber} |`; + const hasMarker = markerLines[number]; + const lastMarkerLine = !markerLines[number + 1]; + if (hasMarker) { + let markerLine = ""; + if (Array.isArray(hasMarker)) { + const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " "); + const numberOfMarkers = hasMarker[1] || 1; + markerLine = ["\n ", defs.gutter(gutter.replace(/\d/g, " ")), " ", markerSpacing, defs.marker("^").repeat(numberOfMarkers)].join(""); + if (lastMarkerLine && opts.message) { + markerLine += " " + defs.message(opts.message); + } + } + return [defs.marker(">"), defs.gutter(gutter), line.length > 0 ? ` ${line}` : "", markerLine].join(""); + } else { + return ` ${defs.gutter(gutter)}${line.length > 0 ? ` ${line}` : ""}`; + } + }).join("\n"); + if (opts.message && !hasColumns) { + frame = `${" ".repeat(numberMaxWidth + 1)}${opts.message}\n${frame}`; + } + if (shouldHighlight) { + return defs.reset(frame); + } else { + return frame; + } +} +function index (rawLines, lineNumber, colNumber, opts = {}) { + if (!deprecationWarningShown) { + deprecationWarningShown = true; + const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`."; + if (process.emitWarning) { + process.emitWarning(message, "DeprecationWarning"); + } else { + const deprecationError = new Error(message); + deprecationError.name = "DeprecationWarning"; + console.warn(new Error(message)); + } + } + colNumber = Math.max(colNumber, 0); + const location = { + start: { + column: colNumber, + line: lineNumber + } + }; + return codeFrameColumns(rawLines, location, opts); +} + +exports.codeFrameColumns = codeFrameColumns; +exports.default = index; +exports.highlight = highlight; +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/code-frame/lib/index.js.map b/node_modules/@babel/code-frame/lib/index.js.map new file mode 100644 index 0000000..6b85ae4 --- /dev/null +++ b/node_modules/@babel/code-frame/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sources":["../src/defs.ts","../src/highlight.ts","../src/index.ts"],"sourcesContent":["import picocolors, { createColors } from \"picocolors\";\nimport type { Colors, Formatter } from \"picocolors/types\";\n\nexport function isColorSupported() {\n return (\n // See https://github.com/alexeyraspopov/picocolors/issues/62\n typeof process === \"object\" &&\n (process.env.FORCE_COLOR === \"0\" || process.env.FORCE_COLOR === \"false\")\n ? false\n : picocolors.isColorSupported\n );\n}\n\nexport type InternalTokenType =\n | \"keyword\"\n | \"capitalized\"\n | \"jsxIdentifier\"\n | \"punctuator\"\n | \"number\"\n | \"string\"\n | \"regex\"\n | \"comment\"\n | \"invalid\";\n\ntype UITokens = \"gutter\" | \"marker\" | \"message\";\n\nexport type Defs = Record;\n\nconst compose: (f: (gv: U) => V, g: (v: T) => U) => (v: T) => V =\n (f, g) => v =>\n f(g(v));\n\n/**\n * Styles for token types.\n */\nfunction buildDefs(colors: Colors): Defs {\n return {\n keyword: colors.cyan,\n capitalized: colors.yellow,\n jsxIdentifier: colors.yellow,\n punctuator: colors.yellow,\n number: colors.magenta,\n string: colors.green,\n regex: colors.magenta,\n comment: colors.gray,\n invalid: compose(compose(colors.white, colors.bgRed), colors.bold),\n\n gutter: colors.gray,\n marker: compose(colors.red, colors.bold),\n message: compose(colors.red, colors.bold),\n\n reset: colors.reset,\n };\n}\n\nconst defsOn = buildDefs(createColors(true));\nconst defsOff = buildDefs(createColors(false));\n\nexport function getDefs(enabled: boolean): Defs {\n return enabled ? defsOn : defsOff;\n}\n","import type { Token as JSToken, JSXToken } from \"js-tokens\";\nimport jsTokens from \"js-tokens\";\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\n\nimport {\n isStrictReservedWord,\n isKeyword,\n} from \"@babel/helper-validator-identifier\";\n\nimport { getDefs, type InternalTokenType } from \"./defs.ts\";\n\n/**\n * Names that are always allowed as identifiers, but also appear as keywords\n * within certain syntactic productions.\n *\n * https://tc39.es/ecma262/#sec-keywords-and-reserved-words\n *\n * `target` has been omitted since it is very likely going to be a false\n * positive.\n */\nconst sometimesKeywords = new Set([\"as\", \"async\", \"from\", \"get\", \"of\", \"set\"]);\n\ntype Token = {\n type: InternalTokenType | \"uncolored\";\n value: string;\n};\n\n/**\n * RegExp to test for newlines in terminal.\n */\nconst NEWLINE = /\\r\\n|[\\n\\r\\u2028\\u2029]/;\n\n/**\n * RegExp to test for the three types of brackets.\n */\nconst BRACKET = /^[()[\\]{}]$/;\n\nlet tokenize: (\n text: string,\n) => Generator<{ type: InternalTokenType | \"uncolored\"; value: string }>;\n\nif (process.env.BABEL_8_BREAKING) {\n /**\n * Get the type of token, specifying punctuator type.\n */\n const getTokenType = function (\n token: JSToken | JSXToken,\n ): InternalTokenType | \"uncolored\" {\n if (token.type === \"IdentifierName\") {\n const tokenValue = token.value;\n if (\n isKeyword(tokenValue) ||\n isStrictReservedWord(tokenValue, true) ||\n sometimesKeywords.has(tokenValue)\n ) {\n return \"keyword\";\n }\n\n const firstChar = tokenValue.charCodeAt(0);\n if (firstChar < 128) {\n // ASCII characters\n if (\n firstChar >= charCodes.uppercaseA &&\n firstChar <= charCodes.uppercaseZ\n ) {\n return \"capitalized\";\n }\n } else {\n const firstChar = String.fromCodePoint(tokenValue.codePointAt(0));\n if (firstChar !== firstChar.toLowerCase()) {\n return \"capitalized\";\n }\n }\n }\n\n if (token.type === \"Punctuator\" && BRACKET.test(token.value)) {\n return \"uncolored\";\n }\n\n if (token.type === \"Invalid\" && token.value === \"@\") {\n return \"punctuator\";\n }\n\n switch (token.type) {\n case \"NumericLiteral\":\n return \"number\";\n\n case \"StringLiteral\":\n case \"JSXString\":\n case \"NoSubstitutionTemplate\":\n return \"string\";\n\n case \"RegularExpressionLiteral\":\n return \"regex\";\n\n case \"Punctuator\":\n case \"JSXPunctuator\":\n return \"punctuator\";\n\n case \"MultiLineComment\":\n case \"SingleLineComment\":\n return \"comment\";\n\n case \"Invalid\":\n case \"JSXInvalid\":\n return \"invalid\";\n\n case \"JSXIdentifier\":\n return \"jsxIdentifier\";\n\n default:\n return \"uncolored\";\n }\n };\n\n /**\n * Turn a string of JS into an array of objects.\n */\n tokenize = function* (text: string): Generator {\n for (const token of jsTokens(text, { jsx: true })) {\n switch (token.type) {\n case \"TemplateHead\":\n yield { type: \"string\", value: token.value.slice(0, -2) };\n yield { type: \"punctuator\", value: \"${\" };\n break;\n\n case \"TemplateMiddle\":\n yield { type: \"punctuator\", value: \"}\" };\n yield { type: \"string\", value: token.value.slice(1, -2) };\n yield { type: \"punctuator\", value: \"${\" };\n break;\n\n case \"TemplateTail\":\n yield { type: \"punctuator\", value: \"}\" };\n yield { type: \"string\", value: token.value.slice(1) };\n break;\n\n default:\n yield {\n type: getTokenType(token),\n value: token.value,\n };\n }\n }\n };\n} else {\n /**\n * RegExp to test for what seems to be a JSX tag name.\n */\n const JSX_TAG = /^[a-z][\\w-]*$/i;\n\n // The token here is defined in js-tokens@4. However we don't bother\n // typing it since the whole block will be removed in Babel 8\n const getTokenType = function (token: any, offset: number, text: string) {\n if (token.type === \"name\") {\n const tokenValue = token.value;\n if (\n isKeyword(tokenValue) ||\n isStrictReservedWord(tokenValue, true) ||\n sometimesKeywords.has(tokenValue)\n ) {\n return \"keyword\";\n }\n\n if (\n JSX_TAG.test(tokenValue) &&\n (text[offset - 1] === \"<\" || text.slice(offset - 2, offset) === \" defs[type as InternalTokenType](str))\n .join(\"\\n\");\n } else {\n highlighted += value;\n }\n }\n\n return highlighted;\n}\n","import { getDefs, isColorSupported } from \"./defs.ts\";\nimport { highlight } from \"./highlight.ts\";\n\nexport { highlight };\n\nlet deprecationWarningShown = false;\n\ntype Location = {\n column: number;\n line: number;\n};\n\ntype NodeLocation = {\n end?: Location;\n start: Location;\n};\n\nexport interface Options {\n /** Syntax highlight the code as JavaScript for terminals. default: false */\n highlightCode?: boolean;\n /** The number of lines to show above the error. default: 2 */\n linesAbove?: number;\n /** The number of lines to show below the error. default: 3 */\n linesBelow?: number;\n /** The line number corresponding to the first line in `rawLines`. default: 1 */\n startLine?: number;\n /**\n * Forcibly syntax highlight the code as JavaScript (for non-terminals);\n * overrides highlightCode.\n * default: false\n */\n forceColor?: boolean;\n /**\n * Pass in a string to be displayed inline (if possible) next to the\n * highlighted location in the code. If it can't be positioned inline,\n * it will be placed above the code frame.\n * default: nothing\n */\n message?: string;\n}\n\n/**\n * RegExp to test for newlines in terminal.\n */\n\nconst NEWLINE = /\\r\\n|[\\n\\r\\u2028\\u2029]/;\n\n/**\n * Extract what lines should be marked and highlighted.\n */\n\ntype MarkerLines = Record;\n\nfunction getMarkerLines(\n loc: NodeLocation,\n source: string[],\n opts: Options,\n startLineBaseZero: number,\n): {\n start: number;\n end: number;\n markerLines: MarkerLines;\n} {\n const startLoc: Location = {\n column: 0,\n line: -1,\n ...loc.start,\n };\n const endLoc: Location = {\n ...startLoc,\n ...loc.end,\n };\n const { linesAbove = 2, linesBelow = 3 } = opts || {};\n const startLine = startLoc.line - startLineBaseZero;\n const startColumn = startLoc.column;\n const endLine = endLoc.line - startLineBaseZero;\n const endColumn = endLoc.column;\n\n let start = Math.max(startLine - (linesAbove + 1), 0);\n let end = Math.min(source.length, endLine + linesBelow);\n\n if (startLine === -1) {\n start = 0;\n }\n\n if (endLine === -1) {\n end = source.length;\n }\n\n const lineDiff = endLine - startLine;\n const markerLines: MarkerLines = {};\n\n if (lineDiff) {\n for (let i = 0; i <= lineDiff; i++) {\n const lineNumber = i + startLine;\n\n if (!startColumn) {\n markerLines[lineNumber] = true;\n } else if (i === 0) {\n const sourceLength = source[lineNumber - 1].length;\n\n markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];\n } else if (i === lineDiff) {\n markerLines[lineNumber] = [0, endColumn];\n } else {\n const sourceLength = source[lineNumber - i].length;\n\n markerLines[lineNumber] = [0, sourceLength];\n }\n }\n } else {\n if (startColumn === endColumn) {\n if (startColumn) {\n markerLines[startLine] = [startColumn, 0];\n } else {\n markerLines[startLine] = true;\n }\n } else {\n markerLines[startLine] = [startColumn, endColumn - startColumn];\n }\n }\n\n return { start, end, markerLines };\n}\n\nexport function codeFrameColumns(\n rawLines: string,\n loc: NodeLocation,\n opts: Options = {},\n): string {\n const shouldHighlight =\n opts.forceColor || (isColorSupported() && opts.highlightCode);\n const startLineBaseZero = (opts.startLine || 1) - 1;\n const defs = getDefs(shouldHighlight);\n\n const lines = rawLines.split(NEWLINE);\n const { start, end, markerLines } = getMarkerLines(\n loc,\n lines,\n opts,\n startLineBaseZero,\n );\n const hasColumns = loc.start && typeof loc.start.column === \"number\";\n\n const numberMaxWidth = String(end + startLineBaseZero).length;\n\n const highlightedLines = shouldHighlight ? highlight(rawLines) : rawLines;\n\n let frame = highlightedLines\n .split(NEWLINE, end)\n .slice(start, end)\n .map((line, index) => {\n const number = start + 1 + index;\n const paddedNumber = ` ${number + startLineBaseZero}`.slice(\n -numberMaxWidth,\n );\n const gutter = ` ${paddedNumber} |`;\n const hasMarker = markerLines[number];\n const lastMarkerLine = !markerLines[number + 1];\n if (hasMarker) {\n let markerLine = \"\";\n if (Array.isArray(hasMarker)) {\n const markerSpacing = line\n .slice(0, Math.max(hasMarker[0] - 1, 0))\n .replace(/[^\\t]/g, \" \");\n const numberOfMarkers = hasMarker[1] || 1;\n\n markerLine = [\n \"\\n \",\n defs.gutter(gutter.replace(/\\d/g, \" \")),\n \" \",\n markerSpacing,\n defs.marker(\"^\").repeat(numberOfMarkers),\n ].join(\"\");\n\n if (lastMarkerLine && opts.message) {\n markerLine += \" \" + defs.message(opts.message);\n }\n }\n return [\n defs.marker(\">\"),\n defs.gutter(gutter),\n line.length > 0 ? ` ${line}` : \"\",\n markerLine,\n ].join(\"\");\n } else {\n return ` ${defs.gutter(gutter)}${line.length > 0 ? ` ${line}` : \"\"}`;\n }\n })\n .join(\"\\n\");\n\n if (opts.message && !hasColumns) {\n frame = `${\" \".repeat(numberMaxWidth + 1)}${opts.message}\\n${frame}`;\n }\n\n if (shouldHighlight) {\n return defs.reset(frame);\n } else {\n return frame;\n }\n}\n\n/**\n * Create a code frame, adding line numbers, code highlighting, and pointing to a given position.\n */\n\nexport default function (\n rawLines: string,\n lineNumber: number,\n colNumber?: number | null,\n opts: Options = {},\n): string {\n if (!deprecationWarningShown) {\n deprecationWarningShown = true;\n\n const message =\n \"Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.\";\n\n if (process.emitWarning) {\n // A string is directly supplied to emitWarning, because when supplying an\n // Error object node throws in the tests because of different contexts\n process.emitWarning(message, \"DeprecationWarning\");\n } else {\n const deprecationError = new Error(message);\n deprecationError.name = \"DeprecationWarning\";\n console.warn(new Error(message));\n }\n }\n\n colNumber = Math.max(colNumber, 0);\n\n const location: NodeLocation = {\n start: { column: colNumber, line: lineNumber },\n };\n\n return codeFrameColumns(rawLines, location, opts);\n}\n"],"names":["isColorSupported","process","env","FORCE_COLOR","picocolors","compose","f","g","v","buildDefs","colors","keyword","cyan","capitalized","yellow","jsxIdentifier","punctuator","number","magenta","string","green","regex","comment","gray","invalid","white","bgRed","bold","gutter","marker","red","message","reset","defsOn","createColors","defsOff","getDefs","enabled","sometimesKeywords","Set","NEWLINE","BRACKET","tokenize","JSX_TAG","getTokenType","token","offset","text","type","tokenValue","value","isKeyword","isStrictReservedWord","has","test","slice","firstChar","String","fromCodePoint","codePointAt","toLowerCase","match","jsTokens","default","exec","matchToToken","index","highlight","defs","highlighted","split","map","str","join","deprecationWarningShown","getMarkerLines","loc","source","opts","startLineBaseZero","startLoc","Object","assign","column","line","start","endLoc","end","linesAbove","linesBelow","startLine","startColumn","endLine","endColumn","Math","max","min","length","lineDiff","markerLines","i","lineNumber","sourceLength","codeFrameColumns","rawLines","shouldHighlight","forceColor","highlightCode","lines","hasColumns","numberMaxWidth","highlightedLines","frame","paddedNumber","hasMarker","lastMarkerLine","markerLine","Array","isArray","markerSpacing","replace","numberOfMarkers","repeat","colNumber","emitWarning","deprecationError","Error","name","console","warn","location"],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@babel/code-frame/package.json b/node_modules/@babel/code-frame/package.json new file mode 100644 index 0000000..d78a947 --- /dev/null +++ b/node_modules/@babel/code-frame/package.json @@ -0,0 +1,32 @@ +{ + "name": "@babel/code-frame", + "version": "7.29.0", + "description": "Generate errors that contain a code frame that point to source locations.", + "author": "The Babel Team (https://babel.dev/team)", + "homepage": "https://babel.dev/docs/en/next/babel-code-frame", + "bugs": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen", + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "repository": { + "type": "git", + "url": "https://github.com/babel/babel.git", + "directory": "packages/babel-code-frame" + }, + "main": "./lib/index.js", + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "devDependencies": { + "charcodes": "^0.2.0", + "import-meta-resolve": "^4.1.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "type": "commonjs" +} \ No newline at end of file diff --git a/node_modules/@babel/compat-data/LICENSE b/node_modules/@babel/compat-data/LICENSE new file mode 100644 index 0000000..f31575e --- /dev/null +++ b/node_modules/@babel/compat-data/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@babel/compat-data/README.md b/node_modules/@babel/compat-data/README.md new file mode 100644 index 0000000..c191898 --- /dev/null +++ b/node_modules/@babel/compat-data/README.md @@ -0,0 +1,19 @@ +# @babel/compat-data + +> The compat-data to determine required Babel plugins + +See our website [@babel/compat-data](https://babeljs.io/docs/babel-compat-data) for more information. + +## Install + +Using npm: + +```sh +npm install --save @babel/compat-data +``` + +or using yarn: + +```sh +yarn add @babel/compat-data +``` diff --git a/node_modules/@babel/compat-data/corejs2-built-ins.js b/node_modules/@babel/compat-data/corejs2-built-ins.js new file mode 100644 index 0000000..ed19e0b --- /dev/null +++ b/node_modules/@babel/compat-data/corejs2-built-ins.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file as Babel 8 drop support of core-js 2 +module.exports = require("./data/corejs2-built-ins.json"); diff --git a/node_modules/@babel/compat-data/corejs3-shipped-proposals.js b/node_modules/@babel/compat-data/corejs3-shipped-proposals.js new file mode 100644 index 0000000..7909b8c --- /dev/null +++ b/node_modules/@babel/compat-data/corejs3-shipped-proposals.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file now that it is included in babel-plugin-polyfill-corejs3 +module.exports = require("./data/corejs3-shipped-proposals.json"); diff --git a/node_modules/@babel/compat-data/data/corejs2-built-ins.json b/node_modules/@babel/compat-data/data/corejs2-built-ins.json new file mode 100644 index 0000000..ba76060 --- /dev/null +++ b/node_modules/@babel/compat-data/data/corejs2-built-ins.json @@ -0,0 +1,2106 @@ +{ + "es6.array.copy-within": { + "chrome": "45", + "opera": "32", + "edge": "12", + "firefox": "32", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.31" + }, + "es6.array.every": { + "chrome": "5", + "opera": "10.10", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.fill": { + "chrome": "45", + "opera": "32", + "edge": "12", + "firefox": "31", + "safari": "7.1", + "node": "4", + "deno": "1", + "ios": "8", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.31" + }, + "es6.array.filter": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.array.find": { + "chrome": "45", + "opera": "32", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "4", + "deno": "1", + "ios": "8", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.31" + }, + "es6.array.find-index": { + "chrome": "45", + "opera": "32", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "4", + "deno": "1", + "ios": "8", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.31" + }, + "es7.array.flat-map": { + "chrome": "69", + "opera": "56", + "edge": "79", + "firefox": "62", + "safari": "12", + "node": "11", + "deno": "1", + "ios": "12", + "samsung": "10", + "rhino": "1.7.15", + "opera_mobile": "48", + "electron": "4.0" + }, + "es6.array.for-each": { + "chrome": "5", + "opera": "10.10", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.from": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "36", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "41", + "electron": "1.2" + }, + "es7.array.includes": { + "chrome": "47", + "opera": "34", + "edge": "14", + "firefox": "102", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "34", + "electron": "0.36" + }, + "es6.array.index-of": { + "chrome": "5", + "opera": "10.10", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.is-array": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "4", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.iterator": { + "chrome": "66", + "opera": "53", + "edge": "12", + "firefox": "60", + "safari": "9", + "node": "10", + "deno": "1", + "ios": "9", + "samsung": "9", + "rhino": "1.7.13", + "opera_mobile": "47", + "electron": "3.0" + }, + "es6.array.last-index-of": { + "chrome": "5", + "opera": "10.10", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.map": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.array.of": { + "chrome": "45", + "opera": "32", + "edge": "12", + "firefox": "25", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.31" + }, + "es6.array.reduce": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "3", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.reduce-right": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "3", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.slice": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.array.some": { + "chrome": "5", + "opera": "10.10", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.array.sort": { + "chrome": "63", + "opera": "50", + "edge": "12", + "firefox": "5", + "safari": "12", + "node": "10", + "deno": "1", + "ie": "9", + "ios": "12", + "samsung": "8", + "rhino": "1.7.13", + "opera_mobile": "46", + "electron": "3.0" + }, + "es6.array.species": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.date.now": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "2", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.date.to-iso-string": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "3.5", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.date.to-json": { + "chrome": "5", + "opera": "12.10", + "edge": "12", + "firefox": "4", + "safari": "10", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "10", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12.1", + "electron": "0.20" + }, + "es6.date.to-primitive": { + "chrome": "47", + "opera": "34", + "edge": "15", + "firefox": "44", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "34", + "electron": "0.36" + }, + "es6.date.to-string": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.4", + "deno": "1", + "ie": "10", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.function.bind": { + "chrome": "7", + "opera": "12", + "edge": "12", + "firefox": "4", + "safari": "5.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "es6.function.has-instance": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "50", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.function.name": { + "chrome": "5", + "opera": "10.50", + "edge": "14", + "firefox": "2", + "safari": "4", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es6.map": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.math.acosh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.asinh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.atanh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.cbrt": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.clz32": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "31", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.cosh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.expm1": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.fround": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "26", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.hypot": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "27", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.imul": { + "chrome": "30", + "opera": "17", + "edge": "12", + "firefox": "23", + "safari": "7", + "node": "0.12", + "deno": "1", + "android": "4.4", + "ios": "7", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "18", + "electron": "0.20" + }, + "es6.math.log1p": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.log10": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.log2": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.sign": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.sinh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.tanh": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.math.trunc": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "25", + "safari": "7.1", + "node": "0.12", + "deno": "1", + "ios": "8", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.number.constructor": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "36", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.number.epsilon": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "25", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.14", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.is-finite": { + "chrome": "19", + "opera": "15", + "edge": "12", + "firefox": "16", + "safari": "9", + "node": "0.8", + "deno": "1", + "android": "4.1", + "ios": "9", + "samsung": "1.5", + "rhino": "1.7.13", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.number.is-integer": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "16", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.is-nan": { + "chrome": "19", + "opera": "15", + "edge": "12", + "firefox": "15", + "safari": "9", + "node": "0.8", + "deno": "1", + "android": "4.1", + "ios": "9", + "samsung": "1.5", + "rhino": "1.7.13", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.number.is-safe-integer": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "32", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.max-safe-integer": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "31", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.min-safe-integer": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "31", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.parse-float": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "25", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.14", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.number.parse-int": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "25", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "2", + "rhino": "1.7.14", + "opera_mobile": "21", + "electron": "0.20" + }, + "es6.object.assign": { + "chrome": "49", + "opera": "36", + "edge": "13", + "firefox": "36", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.object.create": { + "chrome": "5", + "opera": "12", + "edge": "12", + "firefox": "4", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "es7.object.define-getter": { + "chrome": "62", + "opera": "49", + "edge": "16", + "firefox": "48", + "safari": "9", + "node": "8.10", + "deno": "1", + "ios": "9", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "es7.object.define-setter": { + "chrome": "62", + "opera": "49", + "edge": "16", + "firefox": "48", + "safari": "9", + "node": "8.10", + "deno": "1", + "ios": "9", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "es6.object.define-property": { + "chrome": "5", + "opera": "12", + "edge": "12", + "firefox": "4", + "safari": "5.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "es6.object.define-properties": { + "chrome": "5", + "opera": "12", + "edge": "12", + "firefox": "4", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "es7.object.entries": { + "chrome": "54", + "opera": "41", + "edge": "14", + "firefox": "47", + "safari": "10.1", + "node": "7", + "deno": "1", + "ios": "10.3", + "samsung": "6", + "rhino": "1.7.14", + "opera_mobile": "41", + "electron": "1.4" + }, + "es6.object.freeze": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.get-own-property-descriptor": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es7.object.get-own-property-descriptors": { + "chrome": "54", + "opera": "41", + "edge": "15", + "firefox": "50", + "safari": "10.1", + "node": "7", + "deno": "1", + "ios": "10.3", + "samsung": "6", + "rhino": "1.8", + "opera_mobile": "41", + "electron": "1.4" + }, + "es6.object.get-own-property-names": { + "chrome": "40", + "opera": "27", + "edge": "12", + "firefox": "33", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "27", + "electron": "0.21" + }, + "es6.object.get-prototype-of": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es7.object.lookup-getter": { + "chrome": "62", + "opera": "49", + "edge": "79", + "firefox": "36", + "safari": "9", + "node": "8.10", + "deno": "1", + "ios": "9", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "es7.object.lookup-setter": { + "chrome": "62", + "opera": "49", + "edge": "79", + "firefox": "36", + "safari": "9", + "node": "8.10", + "deno": "1", + "ios": "9", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "es6.object.prevent-extensions": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.to-string": { + "chrome": "57", + "opera": "44", + "edge": "15", + "firefox": "51", + "safari": "10", + "node": "8", + "deno": "1", + "ios": "10", + "samsung": "7", + "opera_mobile": "43", + "electron": "1.7" + }, + "es6.object.is": { + "chrome": "19", + "opera": "15", + "edge": "12", + "firefox": "22", + "safari": "9", + "node": "0.8", + "deno": "1", + "android": "4.1", + "ios": "9", + "samsung": "1.5", + "rhino": "1.7.13", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.object.is-frozen": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.is-sealed": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.is-extensible": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.keys": { + "chrome": "40", + "opera": "27", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "27", + "electron": "0.21" + }, + "es6.object.seal": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "35", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.13", + "opera_mobile": "32", + "electron": "0.30" + }, + "es6.object.set-prototype-of": { + "chrome": "34", + "opera": "21", + "edge": "12", + "firefox": "31", + "safari": "9", + "node": "0.12", + "deno": "1", + "ie": "11", + "ios": "9", + "samsung": "2", + "rhino": "1.7.13", + "opera_mobile": "21", + "electron": "0.20" + }, + "es7.object.values": { + "chrome": "54", + "opera": "41", + "edge": "14", + "firefox": "47", + "safari": "10.1", + "node": "7", + "deno": "1", + "ios": "10.3", + "samsung": "6", + "rhino": "1.7.14", + "opera_mobile": "41", + "electron": "1.4" + }, + "es6.promise": { + "chrome": "51", + "opera": "38", + "edge": "14", + "firefox": "45", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "41", + "electron": "1.2" + }, + "es7.promise.finally": { + "chrome": "63", + "opera": "50", + "edge": "18", + "firefox": "58", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "8", + "rhino": "1.7.15", + "opera_mobile": "46", + "electron": "3.0" + }, + "es6.reflect.apply": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.construct": { + "chrome": "49", + "opera": "36", + "edge": "13", + "firefox": "49", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.define-property": { + "chrome": "49", + "opera": "36", + "edge": "13", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.delete-property": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.get": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.get-own-property-descriptor": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.get-prototype-of": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.has": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.is-extensible": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.own-keys": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.prevent-extensions": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.set": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.reflect.set-prototype-of": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "42", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.regexp.constructor": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "40", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.regexp.flags": { + "chrome": "49", + "opera": "36", + "edge": "79", + "firefox": "37", + "safari": "9", + "node": "6", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "36", + "electron": "0.37" + }, + "es6.regexp.match": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "49", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.regexp.replace": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "49", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.regexp.split": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "49", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.regexp.search": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "49", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.regexp.to-string": { + "chrome": "50", + "opera": "37", + "edge": "79", + "firefox": "39", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "37", + "electron": "1.1" + }, + "es6.set": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.symbol": { + "chrome": "51", + "opera": "38", + "edge": "79", + "firefox": "51", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es7.symbol.async-iterator": { + "chrome": "63", + "opera": "50", + "edge": "79", + "firefox": "57", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "es6.string.anchor": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.big": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.blink": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.bold": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.code-point-at": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "29", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.ends-with": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "29", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.fixed": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.fontcolor": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.fontsize": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.from-code-point": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "29", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.includes": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "40", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.italics": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.iterator": { + "chrome": "38", + "opera": "25", + "edge": "12", + "firefox": "36", + "safari": "9", + "node": "0.12", + "deno": "1", + "ios": "9", + "samsung": "3", + "rhino": "1.7.13", + "opera_mobile": "25", + "electron": "0.20" + }, + "es6.string.link": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es7.string.pad-start": { + "chrome": "57", + "opera": "44", + "edge": "15", + "firefox": "48", + "safari": "10", + "node": "8", + "deno": "1", + "ios": "10", + "samsung": "7", + "rhino": "1.7.13", + "opera_mobile": "43", + "electron": "1.7" + }, + "es7.string.pad-end": { + "chrome": "57", + "opera": "44", + "edge": "15", + "firefox": "48", + "safari": "10", + "node": "8", + "deno": "1", + "ios": "10", + "samsung": "7", + "rhino": "1.7.13", + "opera_mobile": "43", + "electron": "1.7" + }, + "es6.string.raw": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "34", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.14", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.repeat": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "24", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.small": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.starts-with": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "29", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "rhino": "1.7.13", + "opera_mobile": "28", + "electron": "0.21" + }, + "es6.string.strike": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.sub": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.sup": { + "chrome": "5", + "opera": "15", + "edge": "12", + "firefox": "17", + "safari": "6", + "node": "0.4", + "deno": "1", + "android": "4", + "ios": "7", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.14", + "opera_mobile": "14", + "electron": "0.20" + }, + "es6.string.trim": { + "chrome": "5", + "opera": "10.50", + "edge": "12", + "firefox": "3.5", + "safari": "4", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "es7.string.trim-left": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "61", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "9", + "rhino": "1.7.13", + "opera_mobile": "47", + "electron": "3.0" + }, + "es7.string.trim-right": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "61", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "9", + "rhino": "1.7.13", + "opera_mobile": "47", + "electron": "3.0" + }, + "es6.typed.array-buffer": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.data-view": { + "chrome": "5", + "opera": "12", + "edge": "12", + "firefox": "15", + "safari": "5.1", + "node": "0.4", + "deno": "1", + "ie": "10", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "es6.typed.int8-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.uint8-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.uint8-clamped-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.int16-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.uint16-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.int32-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.uint32-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.float32-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.typed.float64-array": { + "chrome": "51", + "opera": "38", + "edge": "13", + "firefox": "48", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.weak-map": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "9", + "node": "6.5", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "41", + "electron": "1.2" + }, + "es6.weak-set": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "9", + "node": "6.5", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "41", + "electron": "1.2" + } +} diff --git a/node_modules/@babel/compat-data/data/corejs3-shipped-proposals.json b/node_modules/@babel/compat-data/data/corejs3-shipped-proposals.json new file mode 100644 index 0000000..d03b698 --- /dev/null +++ b/node_modules/@babel/compat-data/data/corejs3-shipped-proposals.json @@ -0,0 +1,5 @@ +[ + "esnext.promise.all-settled", + "esnext.string.match-all", + "esnext.global-this" +] diff --git a/node_modules/@babel/compat-data/data/native-modules.json b/node_modules/@babel/compat-data/data/native-modules.json new file mode 100644 index 0000000..2328d21 --- /dev/null +++ b/node_modules/@babel/compat-data/data/native-modules.json @@ -0,0 +1,18 @@ +{ + "es6.module": { + "chrome": "61", + "and_chr": "61", + "edge": "16", + "firefox": "60", + "and_ff": "60", + "node": "13.2.0", + "opera": "48", + "op_mob": "45", + "safari": "10.1", + "ios": "10.3", + "samsung": "8.2", + "android": "61", + "electron": "2.0", + "ios_saf": "10.3" + } +} diff --git a/node_modules/@babel/compat-data/data/overlapping-plugins.json b/node_modules/@babel/compat-data/data/overlapping-plugins.json new file mode 100644 index 0000000..9b884bd --- /dev/null +++ b/node_modules/@babel/compat-data/data/overlapping-plugins.json @@ -0,0 +1,35 @@ +{ + "transform-async-to-generator": [ + "bugfix/transform-async-arrows-in-class" + ], + "transform-parameters": [ + "bugfix/transform-edge-default-parameters", + "bugfix/transform-safari-id-destructuring-collision-in-function-expression" + ], + "transform-function-name": [ + "bugfix/transform-edge-function-name" + ], + "transform-block-scoping": [ + "bugfix/transform-safari-block-shadowing", + "bugfix/transform-safari-for-shadowing" + ], + "transform-template-literals": [ + "bugfix/transform-tagged-template-caching" + ], + "transform-optional-chaining": [ + "bugfix/transform-v8-spread-parameters-in-optional-chaining" + ], + "proposal-optional-chaining": [ + "bugfix/transform-v8-spread-parameters-in-optional-chaining" + ], + "transform-class-properties": [ + "bugfix/transform-v8-static-class-fields-redefine-readonly", + "bugfix/transform-firefox-class-in-computed-class-key", + "bugfix/transform-safari-class-field-initializer-scope" + ], + "proposal-class-properties": [ + "bugfix/transform-v8-static-class-fields-redefine-readonly", + "bugfix/transform-firefox-class-in-computed-class-key", + "bugfix/transform-safari-class-field-initializer-scope" + ] +} diff --git a/node_modules/@babel/compat-data/data/plugin-bugfixes.json b/node_modules/@babel/compat-data/data/plugin-bugfixes.json new file mode 100644 index 0000000..3d1aed6 --- /dev/null +++ b/node_modules/@babel/compat-data/data/plugin-bugfixes.json @@ -0,0 +1,203 @@ +{ + "bugfix/transform-async-arrows-in-class": { + "chrome": "55", + "opera": "42", + "edge": "15", + "firefox": "52", + "safari": "11", + "node": "7.6", + "deno": "1", + "ios": "11", + "samsung": "6", + "opera_mobile": "42", + "electron": "1.6" + }, + "bugfix/transform-edge-default-parameters": { + "chrome": "49", + "opera": "36", + "edge": "18", + "firefox": "52", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "bugfix/transform-edge-function-name": { + "chrome": "51", + "opera": "38", + "edge": "79", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "bugfix/transform-safari-block-shadowing": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "44", + "safari": "11", + "node": "6", + "deno": "1", + "ie": "11", + "ios": "11", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "bugfix/transform-safari-for-shadowing": { + "chrome": "49", + "opera": "36", + "edge": "12", + "firefox": "4", + "safari": "11", + "node": "6", + "deno": "1", + "ie": "11", + "ios": "11", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "36", + "electron": "0.37" + }, + "bugfix/transform-safari-id-destructuring-collision-in-function-expression": { + "chrome": "49", + "opera": "36", + "edge": "14", + "firefox": "2", + "safari": "16.3", + "node": "6", + "deno": "1", + "ios": "16.3", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "bugfix/transform-tagged-template-caching": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "34", + "safari": "13", + "node": "4", + "deno": "1", + "ios": "13", + "samsung": "3.4", + "rhino": "1.7.14", + "opera_mobile": "28", + "electron": "0.21" + }, + "bugfix/transform-v8-spread-parameters-in-optional-chaining": { + "chrome": "91", + "opera": "77", + "edge": "91", + "firefox": "74", + "safari": "13.1", + "node": "16.9", + "deno": "1.9", + "ios": "13.4", + "samsung": "16", + "opera_mobile": "64", + "electron": "13.0" + }, + "transform-optional-chaining": { + "chrome": "80", + "opera": "67", + "edge": "80", + "firefox": "74", + "safari": "13.1", + "node": "14", + "deno": "1", + "ios": "13.4", + "samsung": "13", + "rhino": "1.8", + "opera_mobile": "57", + "electron": "8.0" + }, + "proposal-optional-chaining": { + "chrome": "80", + "opera": "67", + "edge": "80", + "firefox": "74", + "safari": "13.1", + "node": "14", + "deno": "1", + "ios": "13.4", + "samsung": "13", + "rhino": "1.8", + "opera_mobile": "57", + "electron": "8.0" + }, + "transform-parameters": { + "chrome": "49", + "opera": "36", + "edge": "15", + "firefox": "52", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "transform-async-to-generator": { + "chrome": "55", + "opera": "42", + "edge": "15", + "firefox": "52", + "safari": "10.1", + "node": "7.6", + "deno": "1", + "ios": "10.3", + "samsung": "6", + "opera_mobile": "42", + "electron": "1.6" + }, + "transform-template-literals": { + "chrome": "41", + "opera": "28", + "edge": "13", + "firefox": "34", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "opera_mobile": "28", + "electron": "0.21" + }, + "transform-function-name": { + "chrome": "51", + "opera": "38", + "edge": "14", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "transform-block-scoping": { + "chrome": "50", + "opera": "37", + "edge": "14", + "firefox": "53", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + } +} diff --git a/node_modules/@babel/compat-data/data/plugins.json b/node_modules/@babel/compat-data/data/plugins.json new file mode 100644 index 0000000..c2ff459 --- /dev/null +++ b/node_modules/@babel/compat-data/data/plugins.json @@ -0,0 +1,838 @@ +{ + "transform-explicit-resource-management": { + "chrome": "134", + "edge": "134", + "firefox": "141", + "node": "24", + "electron": "35.0" + }, + "transform-duplicate-named-capturing-groups-regex": { + "chrome": "126", + "opera": "112", + "edge": "126", + "firefox": "129", + "safari": "17.4", + "node": "23", + "ios": "17.4", + "electron": "31.0" + }, + "transform-regexp-modifiers": { + "chrome": "125", + "opera": "111", + "edge": "125", + "firefox": "132", + "node": "23", + "samsung": "27", + "electron": "31.0" + }, + "transform-unicode-sets-regex": { + "chrome": "112", + "opera": "98", + "edge": "112", + "firefox": "116", + "safari": "17", + "node": "20", + "deno": "1.32", + "ios": "17", + "samsung": "23", + "opera_mobile": "75", + "electron": "24.0" + }, + "bugfix/transform-v8-static-class-fields-redefine-readonly": { + "chrome": "98", + "opera": "84", + "edge": "98", + "firefox": "75", + "safari": "15", + "node": "12", + "deno": "1.18", + "ios": "15", + "samsung": "11", + "opera_mobile": "52", + "electron": "17.0" + }, + "bugfix/transform-firefox-class-in-computed-class-key": { + "chrome": "74", + "opera": "62", + "edge": "79", + "firefox": "126", + "safari": "16", + "node": "12", + "deno": "1", + "ios": "16", + "samsung": "11", + "opera_mobile": "53", + "electron": "6.0" + }, + "bugfix/transform-safari-class-field-initializer-scope": { + "chrome": "74", + "opera": "62", + "edge": "79", + "firefox": "69", + "safari": "16", + "node": "12", + "deno": "1", + "ios": "16", + "samsung": "11", + "opera_mobile": "53", + "electron": "6.0" + }, + "transform-class-static-block": { + "chrome": "94", + "opera": "80", + "edge": "94", + "firefox": "93", + "safari": "16.4", + "node": "16.11", + "deno": "1.14", + "ios": "16.4", + "samsung": "17", + "opera_mobile": "66", + "electron": "15.0" + }, + "proposal-class-static-block": { + "chrome": "94", + "opera": "80", + "edge": "94", + "firefox": "93", + "safari": "16.4", + "node": "16.11", + "deno": "1.14", + "ios": "16.4", + "samsung": "17", + "opera_mobile": "66", + "electron": "15.0" + }, + "transform-private-property-in-object": { + "chrome": "91", + "opera": "77", + "edge": "91", + "firefox": "90", + "safari": "15", + "node": "16.9", + "deno": "1.9", + "ios": "15", + "samsung": "16", + "opera_mobile": "64", + "electron": "13.0" + }, + "proposal-private-property-in-object": { + "chrome": "91", + "opera": "77", + "edge": "91", + "firefox": "90", + "safari": "15", + "node": "16.9", + "deno": "1.9", + "ios": "15", + "samsung": "16", + "opera_mobile": "64", + "electron": "13.0" + }, + "transform-class-properties": { + "chrome": "74", + "opera": "62", + "edge": "79", + "firefox": "90", + "safari": "14.1", + "node": "12", + "deno": "1", + "ios": "14.5", + "samsung": "11", + "opera_mobile": "53", + "electron": "6.0" + }, + "proposal-class-properties": { + "chrome": "74", + "opera": "62", + "edge": "79", + "firefox": "90", + "safari": "14.1", + "node": "12", + "deno": "1", + "ios": "14.5", + "samsung": "11", + "opera_mobile": "53", + "electron": "6.0" + }, + "transform-private-methods": { + "chrome": "84", + "opera": "70", + "edge": "84", + "firefox": "90", + "safari": "15", + "node": "14.6", + "deno": "1", + "ios": "15", + "samsung": "14", + "opera_mobile": "60", + "electron": "10.0" + }, + "proposal-private-methods": { + "chrome": "84", + "opera": "70", + "edge": "84", + "firefox": "90", + "safari": "15", + "node": "14.6", + "deno": "1", + "ios": "15", + "samsung": "14", + "opera_mobile": "60", + "electron": "10.0" + }, + "transform-numeric-separator": { + "chrome": "75", + "opera": "62", + "edge": "79", + "firefox": "70", + "safari": "13", + "node": "12.5", + "deno": "1", + "ios": "13", + "samsung": "11", + "rhino": "1.7.14", + "opera_mobile": "54", + "electron": "6.0" + }, + "proposal-numeric-separator": { + "chrome": "75", + "opera": "62", + "edge": "79", + "firefox": "70", + "safari": "13", + "node": "12.5", + "deno": "1", + "ios": "13", + "samsung": "11", + "rhino": "1.7.14", + "opera_mobile": "54", + "electron": "6.0" + }, + "transform-logical-assignment-operators": { + "chrome": "85", + "opera": "71", + "edge": "85", + "firefox": "79", + "safari": "14", + "node": "15", + "deno": "1.2", + "ios": "14", + "samsung": "14", + "opera_mobile": "60", + "electron": "10.0" + }, + "proposal-logical-assignment-operators": { + "chrome": "85", + "opera": "71", + "edge": "85", + "firefox": "79", + "safari": "14", + "node": "15", + "deno": "1.2", + "ios": "14", + "samsung": "14", + "opera_mobile": "60", + "electron": "10.0" + }, + "transform-nullish-coalescing-operator": { + "chrome": "80", + "opera": "67", + "edge": "80", + "firefox": "72", + "safari": "13.1", + "node": "14", + "deno": "1", + "ios": "13.4", + "samsung": "13", + "rhino": "1.8", + "opera_mobile": "57", + "electron": "8.0" + }, + "proposal-nullish-coalescing-operator": { + "chrome": "80", + "opera": "67", + "edge": "80", + "firefox": "72", + "safari": "13.1", + "node": "14", + "deno": "1", + "ios": "13.4", + "samsung": "13", + "rhino": "1.8", + "opera_mobile": "57", + "electron": "8.0" + }, + "transform-optional-chaining": { + "chrome": "91", + "opera": "77", + "edge": "91", + "firefox": "74", + "safari": "13.1", + "node": "16.9", + "deno": "1.9", + "ios": "13.4", + "samsung": "16", + "opera_mobile": "64", + "electron": "13.0" + }, + "proposal-optional-chaining": { + "chrome": "91", + "opera": "77", + "edge": "91", + "firefox": "74", + "safari": "13.1", + "node": "16.9", + "deno": "1.9", + "ios": "13.4", + "samsung": "16", + "opera_mobile": "64", + "electron": "13.0" + }, + "transform-json-strings": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "62", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "9", + "rhino": "1.7.14", + "opera_mobile": "47", + "electron": "3.0" + }, + "proposal-json-strings": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "62", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "9", + "rhino": "1.7.14", + "opera_mobile": "47", + "electron": "3.0" + }, + "transform-optional-catch-binding": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "58", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "9", + "opera_mobile": "47", + "electron": "3.0" + }, + "proposal-optional-catch-binding": { + "chrome": "66", + "opera": "53", + "edge": "79", + "firefox": "58", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "9", + "opera_mobile": "47", + "electron": "3.0" + }, + "transform-parameters": { + "chrome": "49", + "opera": "36", + "edge": "18", + "firefox": "52", + "safari": "16.3", + "node": "6", + "deno": "1", + "ios": "16.3", + "samsung": "5", + "opera_mobile": "36", + "electron": "0.37" + }, + "transform-async-generator-functions": { + "chrome": "63", + "opera": "50", + "edge": "79", + "firefox": "57", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "proposal-async-generator-functions": { + "chrome": "63", + "opera": "50", + "edge": "79", + "firefox": "57", + "safari": "12", + "node": "10", + "deno": "1", + "ios": "12", + "samsung": "8", + "opera_mobile": "46", + "electron": "3.0" + }, + "transform-object-rest-spread": { + "chrome": "60", + "opera": "47", + "edge": "79", + "firefox": "55", + "safari": "11.1", + "node": "8.3", + "deno": "1", + "ios": "11.3", + "samsung": "8", + "opera_mobile": "44", + "electron": "2.0" + }, + "proposal-object-rest-spread": { + "chrome": "60", + "opera": "47", + "edge": "79", + "firefox": "55", + "safari": "11.1", + "node": "8.3", + "deno": "1", + "ios": "11.3", + "samsung": "8", + "opera_mobile": "44", + "electron": "2.0" + }, + "transform-dotall-regex": { + "chrome": "62", + "opera": "49", + "edge": "79", + "firefox": "78", + "safari": "11.1", + "node": "8.10", + "deno": "1", + "ios": "11.3", + "samsung": "8", + "rhino": "1.7.15", + "opera_mobile": "46", + "electron": "3.0" + }, + "transform-unicode-property-regex": { + "chrome": "64", + "opera": "51", + "edge": "79", + "firefox": "78", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "9", + "opera_mobile": "47", + "electron": "3.0" + }, + "proposal-unicode-property-regex": { + "chrome": "64", + "opera": "51", + "edge": "79", + "firefox": "78", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "9", + "opera_mobile": "47", + "electron": "3.0" + }, + "transform-named-capturing-groups-regex": { + "chrome": "64", + "opera": "51", + "edge": "79", + "firefox": "78", + "safari": "11.1", + "node": "10", + "deno": "1", + "ios": "11.3", + "samsung": "9", + "opera_mobile": "47", + "electron": "3.0" + }, + "transform-async-to-generator": { + "chrome": "55", + "opera": "42", + "edge": "15", + "firefox": "52", + "safari": "11", + "node": "7.6", + "deno": "1", + "ios": "11", + "samsung": "6", + "opera_mobile": "42", + "electron": "1.6" + }, + "transform-exponentiation-operator": { + "chrome": "52", + "opera": "39", + "edge": "14", + "firefox": "52", + "safari": "10.1", + "node": "7", + "deno": "1", + "ios": "10.3", + "samsung": "6", + "rhino": "1.7.14", + "opera_mobile": "41", + "electron": "1.3" + }, + "transform-template-literals": { + "chrome": "41", + "opera": "28", + "edge": "13", + "firefox": "34", + "safari": "13", + "node": "4", + "deno": "1", + "ios": "13", + "samsung": "3.4", + "opera_mobile": "28", + "electron": "0.21" + }, + "transform-literals": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "53", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.15", + "opera_mobile": "32", + "electron": "0.30" + }, + "transform-function-name": { + "chrome": "51", + "opera": "38", + "edge": "79", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "transform-arrow-functions": { + "chrome": "47", + "opera": "34", + "edge": "13", + "firefox": "43", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.13", + "opera_mobile": "34", + "electron": "0.36" + }, + "transform-block-scoped-functions": { + "chrome": "41", + "opera": "28", + "edge": "12", + "firefox": "46", + "safari": "10", + "node": "4", + "deno": "1", + "ie": "11", + "ios": "10", + "samsung": "3.4", + "opera_mobile": "28", + "electron": "0.21" + }, + "transform-classes": { + "chrome": "46", + "opera": "33", + "edge": "13", + "firefox": "45", + "safari": "10", + "node": "5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "33", + "electron": "0.36" + }, + "transform-object-super": { + "chrome": "46", + "opera": "33", + "edge": "13", + "firefox": "45", + "safari": "10", + "node": "5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "33", + "electron": "0.36" + }, + "transform-shorthand-properties": { + "chrome": "43", + "opera": "30", + "edge": "12", + "firefox": "33", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.14", + "opera_mobile": "30", + "electron": "0.27" + }, + "transform-duplicate-keys": { + "chrome": "42", + "opera": "29", + "edge": "12", + "firefox": "34", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "3.4", + "opera_mobile": "29", + "electron": "0.25" + }, + "transform-computed-properties": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "34", + "safari": "7.1", + "node": "4", + "deno": "1", + "ios": "8", + "samsung": "4", + "rhino": "1.8", + "opera_mobile": "32", + "electron": "0.30" + }, + "transform-for-of": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "transform-sticky-regex": { + "chrome": "49", + "opera": "36", + "edge": "13", + "firefox": "3", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "rhino": "1.7.15", + "opera_mobile": "36", + "electron": "0.37" + }, + "transform-unicode-escapes": { + "chrome": "44", + "opera": "31", + "edge": "12", + "firefox": "53", + "safari": "9", + "node": "4", + "deno": "1", + "ios": "9", + "samsung": "4", + "rhino": "1.7.15", + "opera_mobile": "32", + "electron": "0.30" + }, + "transform-unicode-regex": { + "chrome": "50", + "opera": "37", + "edge": "13", + "firefox": "46", + "safari": "12", + "node": "6", + "deno": "1", + "ios": "12", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "transform-spread": { + "chrome": "46", + "opera": "33", + "edge": "13", + "firefox": "45", + "safari": "10", + "node": "5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "33", + "electron": "0.36" + }, + "transform-destructuring": { + "chrome": "51", + "opera": "38", + "edge": "15", + "firefox": "53", + "safari": "10", + "node": "6.5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "41", + "electron": "1.2" + }, + "transform-block-scoping": { + "chrome": "50", + "opera": "37", + "edge": "14", + "firefox": "53", + "safari": "11", + "node": "6", + "deno": "1", + "ios": "11", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "transform-typeof-symbol": { + "chrome": "48", + "opera": "35", + "edge": "12", + "firefox": "36", + "safari": "9", + "node": "6", + "deno": "1", + "ios": "9", + "samsung": "5", + "rhino": "1.8", + "opera_mobile": "35", + "electron": "0.37" + }, + "transform-new-target": { + "chrome": "46", + "opera": "33", + "edge": "14", + "firefox": "41", + "safari": "10", + "node": "5", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "33", + "electron": "0.36" + }, + "transform-regenerator": { + "chrome": "50", + "opera": "37", + "edge": "13", + "firefox": "53", + "safari": "10", + "node": "6", + "deno": "1", + "ios": "10", + "samsung": "5", + "opera_mobile": "37", + "electron": "1.1" + }, + "transform-member-expression-literals": { + "chrome": "7", + "opera": "12", + "edge": "12", + "firefox": "2", + "safari": "5.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "transform-property-literals": { + "chrome": "7", + "opera": "12", + "edge": "12", + "firefox": "2", + "safari": "5.1", + "node": "0.4", + "deno": "1", + "ie": "9", + "android": "4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "12", + "electron": "0.20" + }, + "transform-reserved-words": { + "chrome": "13", + "opera": "10.50", + "edge": "12", + "firefox": "2", + "safari": "3.1", + "node": "0.6", + "deno": "1", + "ie": "9", + "android": "4.4", + "ios": "6", + "phantom": "1.9", + "samsung": "1", + "rhino": "1.7.13", + "opera_mobile": "10.1", + "electron": "0.20" + }, + "transform-export-namespace-from": { + "chrome": "72", + "deno": "1.0", + "edge": "79", + "firefox": "80", + "node": "13.2.0", + "opera": "60", + "opera_mobile": "51", + "safari": "14.1", + "ios": "14.5", + "samsung": "11.0", + "android": "72", + "electron": "5.0" + }, + "proposal-export-namespace-from": { + "chrome": "72", + "deno": "1.0", + "edge": "79", + "firefox": "80", + "node": "13.2.0", + "opera": "60", + "opera_mobile": "51", + "safari": "14.1", + "ios": "14.5", + "samsung": "11.0", + "android": "72", + "electron": "5.0" + } +} diff --git a/node_modules/@babel/compat-data/native-modules.js b/node_modules/@babel/compat-data/native-modules.js new file mode 100644 index 0000000..f8c25fa --- /dev/null +++ b/node_modules/@babel/compat-data/native-modules.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly +module.exports = require("./data/native-modules.json"); diff --git a/node_modules/@babel/compat-data/overlapping-plugins.js b/node_modules/@babel/compat-data/overlapping-plugins.js new file mode 100644 index 0000000..0dd35f1 --- /dev/null +++ b/node_modules/@babel/compat-data/overlapping-plugins.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly +module.exports = require("./data/overlapping-plugins.json"); diff --git a/node_modules/@babel/compat-data/package.json b/node_modules/@babel/compat-data/package.json new file mode 100644 index 0000000..d6d14a5 --- /dev/null +++ b/node_modules/@babel/compat-data/package.json @@ -0,0 +1,40 @@ +{ + "name": "@babel/compat-data", + "version": "7.29.0", + "author": "The Babel Team (https://babel.dev/team)", + "license": "MIT", + "description": "The compat-data to determine required Babel plugins", + "repository": { + "type": "git", + "url": "https://github.com/babel/babel.git", + "directory": "packages/babel-compat-data" + }, + "publishConfig": { + "access": "public" + }, + "exports": { + "./plugins": "./plugins.js", + "./native-modules": "./native-modules.js", + "./corejs2-built-ins": "./corejs2-built-ins.js", + "./corejs3-shipped-proposals": "./corejs3-shipped-proposals.js", + "./overlapping-plugins": "./overlapping-plugins.js", + "./plugin-bugfixes": "./plugin-bugfixes.js" + }, + "scripts": { + "build-data": "./scripts/download-compat-table.sh && node ./scripts/build-data.mjs && node ./scripts/build-modules-support.mjs && node ./scripts/build-bugfixes-targets.mjs" + }, + "keywords": [ + "babel", + "compat-table", + "compat-data" + ], + "devDependencies": { + "@mdn/browser-compat-data": "^6.0.8", + "core-js-compat": "^3.48.0", + "electron-to-chromium": "^1.5.278" + }, + "engines": { + "node": ">=6.9.0" + }, + "type": "commonjs" +} \ No newline at end of file diff --git a/node_modules/@babel/compat-data/plugin-bugfixes.js b/node_modules/@babel/compat-data/plugin-bugfixes.js new file mode 100644 index 0000000..9aaf364 --- /dev/null +++ b/node_modules/@babel/compat-data/plugin-bugfixes.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly +module.exports = require("./data/plugin-bugfixes.json"); diff --git a/node_modules/@babel/compat-data/plugins.js b/node_modules/@babel/compat-data/plugins.js new file mode 100644 index 0000000..b191017 --- /dev/null +++ b/node_modules/@babel/compat-data/plugins.js @@ -0,0 +1,2 @@ +// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly +module.exports = require("./data/plugins.json"); diff --git a/node_modules/@babel/core/LICENSE b/node_modules/@babel/core/LICENSE new file mode 100644 index 0000000..f31575e --- /dev/null +++ b/node_modules/@babel/core/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@babel/core/README.md b/node_modules/@babel/core/README.md new file mode 100644 index 0000000..2903543 --- /dev/null +++ b/node_modules/@babel/core/README.md @@ -0,0 +1,19 @@ +# @babel/core + +> Babel compiler core. + +See our website [@babel/core](https://babeljs.io/docs/babel-core) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20core%22+is%3Aopen) associated with this package. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/core +``` + +or using yarn: + +```sh +yarn add @babel/core --dev +``` diff --git a/node_modules/@babel/core/lib/config/cache-contexts.js b/node_modules/@babel/core/lib/config/cache-contexts.js new file mode 100644 index 0000000..f2ececd --- /dev/null +++ b/node_modules/@babel/core/lib/config/cache-contexts.js @@ -0,0 +1,5 @@ +"use strict"; + +0 && 0; + +//# sourceMappingURL=cache-contexts.js.map diff --git a/node_modules/@babel/core/lib/config/cache-contexts.js.map b/node_modules/@babel/core/lib/config/cache-contexts.js.map new file mode 100644 index 0000000..39b1898 --- /dev/null +++ b/node_modules/@babel/core/lib/config/cache-contexts.js.map @@ -0,0 +1 @@ +{"version":3,"names":[],"sources":["../../src/config/cache-contexts.ts"],"sourcesContent":["import type { ConfigContext } from \"./config-chain.ts\";\nimport type {\n CallerMetadata,\n TargetsListOrObject,\n} from \"./validation/options.ts\";\n\nexport type { ConfigContext as FullConfig };\n\nexport type FullPreset = {\n targets: TargetsListOrObject;\n} & ConfigContext;\nexport type FullPlugin = {\n assumptions: Record;\n} & FullPreset;\n\n// Context not including filename since it is used in places that cannot\n// process 'ignore'/'only' and other filename-based logic.\nexport type SimpleConfig = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\nexport type SimplePreset = {\n targets: TargetsListOrObject;\n} & SimpleConfig;\nexport type SimplePlugin = {\n assumptions: Record;\n} & SimplePreset;\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/caching.js b/node_modules/@babel/core/lib/config/caching.js new file mode 100644 index 0000000..344c839 --- /dev/null +++ b/node_modules/@babel/core/lib/config/caching.js @@ -0,0 +1,261 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.assertSimpleType = assertSimpleType; +exports.makeStrongCache = makeStrongCache; +exports.makeStrongCacheSync = makeStrongCacheSync; +exports.makeWeakCache = makeWeakCache; +exports.makeWeakCacheSync = makeWeakCacheSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _async = require("../gensync-utils/async.js"); +var _util = require("./util.js"); +const synchronize = gen => { + return _gensync()(gen).sync; +}; +function* genTrue() { + return true; +} +function makeWeakCache(handler) { + return makeCachedFunction(WeakMap, handler); +} +function makeWeakCacheSync(handler) { + return synchronize(makeWeakCache(handler)); +} +function makeStrongCache(handler) { + return makeCachedFunction(Map, handler); +} +function makeStrongCacheSync(handler) { + return synchronize(makeStrongCache(handler)); +} +function makeCachedFunction(CallCache, handler) { + const callCacheSync = new CallCache(); + const callCacheAsync = new CallCache(); + const futureCache = new CallCache(); + return function* cachedFunction(arg, data) { + const asyncContext = yield* (0, _async.isAsync)(); + const callCache = asyncContext ? callCacheAsync : callCacheSync; + const cached = yield* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data); + if (cached.valid) return cached.value; + const cache = new CacheConfigurator(data); + const handlerResult = handler(arg, cache); + let finishLock; + let value; + if ((0, _util.isIterableIterator)(handlerResult)) { + value = yield* (0, _async.onFirstPause)(handlerResult, () => { + finishLock = setupAsyncLocks(cache, futureCache, arg); + }); + } else { + value = handlerResult; + } + updateFunctionCache(callCache, cache, arg, value); + if (finishLock) { + futureCache.delete(arg); + finishLock.release(value); + } + return value; + }; +} +function* getCachedValue(cache, arg, data) { + const cachedValue = cache.get(arg); + if (cachedValue) { + for (const { + value, + valid + } of cachedValue) { + if (yield* valid(data)) return { + valid: true, + value + }; + } + } + return { + valid: false, + value: null + }; +} +function* getCachedValueOrWait(asyncContext, callCache, futureCache, arg, data) { + const cached = yield* getCachedValue(callCache, arg, data); + if (cached.valid) { + return cached; + } + if (asyncContext) { + const cached = yield* getCachedValue(futureCache, arg, data); + if (cached.valid) { + const value = yield* (0, _async.waitFor)(cached.value.promise); + return { + valid: true, + value + }; + } + } + return { + valid: false, + value: null + }; +} +function setupAsyncLocks(config, futureCache, arg) { + const finishLock = new Lock(); + updateFunctionCache(futureCache, config, arg, finishLock); + return finishLock; +} +function updateFunctionCache(cache, config, arg, value) { + if (!config.configured()) config.forever(); + let cachedValue = cache.get(arg); + config.deactivate(); + switch (config.mode()) { + case "forever": + cachedValue = [{ + value, + valid: genTrue + }]; + cache.set(arg, cachedValue); + break; + case "invalidate": + cachedValue = [{ + value, + valid: config.validator() + }]; + cache.set(arg, cachedValue); + break; + case "valid": + if (cachedValue) { + cachedValue.push({ + value, + valid: config.validator() + }); + } else { + cachedValue = [{ + value, + valid: config.validator() + }]; + cache.set(arg, cachedValue); + } + } +} +class CacheConfigurator { + constructor(data) { + this._active = true; + this._never = false; + this._forever = false; + this._invalidate = false; + this._configured = false; + this._pairs = []; + this._data = void 0; + this._data = data; + } + simple() { + return makeSimpleConfigurator(this); + } + mode() { + if (this._never) return "never"; + if (this._forever) return "forever"; + if (this._invalidate) return "invalidate"; + return "valid"; + } + forever() { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + if (this._never) { + throw new Error("Caching has already been configured with .never()"); + } + this._forever = true; + this._configured = true; + } + never() { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + if (this._forever) { + throw new Error("Caching has already been configured with .forever()"); + } + this._never = true; + this._configured = true; + } + using(handler) { + if (!this._active) { + throw new Error("Cannot change caching after evaluation has completed."); + } + if (this._never || this._forever) { + throw new Error("Caching has already been configured with .never or .forever()"); + } + this._configured = true; + const key = handler(this._data); + const fn = (0, _async.maybeAsync)(handler, `You appear to be using an async cache handler, but Babel has been called synchronously`); + if ((0, _async.isThenable)(key)) { + return key.then(key => { + this._pairs.push([key, fn]); + return key; + }); + } + this._pairs.push([key, fn]); + return key; + } + invalidate(handler) { + this._invalidate = true; + return this.using(handler); + } + validator() { + const pairs = this._pairs; + return function* (data) { + for (const [key, fn] of pairs) { + if (key !== (yield* fn(data))) return false; + } + return true; + }; + } + deactivate() { + this._active = false; + } + configured() { + return this._configured; + } +} +function makeSimpleConfigurator(cache) { + function cacheFn(val) { + if (typeof val === "boolean") { + if (val) cache.forever();else cache.never(); + return; + } + return cache.using(() => assertSimpleType(val())); + } + cacheFn.forever = () => cache.forever(); + cacheFn.never = () => cache.never(); + cacheFn.using = cb => cache.using(() => assertSimpleType(cb())); + cacheFn.invalidate = cb => cache.invalidate(() => assertSimpleType(cb())); + return cacheFn; +} +function assertSimpleType(value) { + if ((0, _async.isThenable)(value)) { + throw new Error(`You appear to be using an async cache handler, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously handle your caching logic.`); + } + if (value != null && typeof value !== "string" && typeof value !== "boolean" && typeof value !== "number") { + throw new Error("Cache keys must be either string, boolean, number, null, or undefined."); + } + return value; +} +class Lock { + constructor() { + this.released = false; + this.promise = void 0; + this._resolve = void 0; + this.promise = new Promise(resolve => { + this._resolve = resolve; + }); + } + release(value) { + this.released = true; + this._resolve(value); + } +} +0 && 0; + +//# sourceMappingURL=caching.js.map diff --git a/node_modules/@babel/core/lib/config/caching.js.map b/node_modules/@babel/core/lib/config/caching.js.map new file mode 100644 index 0000000..c9a69fd --- /dev/null +++ b/node_modules/@babel/core/lib/config/caching.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_async","_util","synchronize","gen","gensync","sync","genTrue","makeWeakCache","handler","makeCachedFunction","WeakMap","makeWeakCacheSync","makeStrongCache","Map","makeStrongCacheSync","CallCache","callCacheSync","callCacheAsync","futureCache","cachedFunction","arg","asyncContext","isAsync","callCache","cached","getCachedValueOrWait","valid","value","cache","CacheConfigurator","handlerResult","finishLock","isIterableIterator","onFirstPause","setupAsyncLocks","updateFunctionCache","delete","release","getCachedValue","cachedValue","get","waitFor","promise","config","Lock","configured","forever","deactivate","mode","set","validator","push","constructor","_active","_never","_forever","_invalidate","_configured","_pairs","_data","simple","makeSimpleConfigurator","Error","never","using","key","fn","maybeAsync","isThenable","then","invalidate","pairs","cacheFn","val","assertSimpleType","cb","released","_resolve","Promise","resolve"],"sources":["../../src/config/caching.ts"],"sourcesContent":["import gensync from \"gensync\";\nimport type { Handler } from \"gensync\";\nimport {\n maybeAsync,\n isAsync,\n onFirstPause,\n waitFor,\n isThenable,\n} from \"../gensync-utils/async.ts\";\nimport { isIterableIterator } from \"./util.ts\";\n\nexport type { CacheConfigurator };\n\nexport type SimpleCacheConfigurator = {\n (forever: boolean): void;\n (handler: () => T): T;\n\n forever: () => void;\n never: () => void;\n using: (handler: () => T) => T;\n invalidate: (handler: () => T) => T;\n};\n\nexport type CacheEntry = {\n value: ResultT;\n valid: (channel: SideChannel) => Handler;\n}[];\n\nconst synchronize = (\n gen: (...args: ArgsT) => Handler,\n): ((...args: ArgsT) => ResultT) => {\n return gensync(gen).sync;\n};\n\n// eslint-disable-next-line require-yield\nfunction* genTrue() {\n return true;\n}\n\nexport function makeWeakCache(\n handler: (\n arg: ArgT,\n cache: CacheConfigurator,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction(WeakMap, handler);\n}\n\nexport function makeWeakCacheSync(\n handler: (arg: ArgT, cache?: CacheConfigurator) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeWeakCache(handler),\n );\n}\n\nexport function makeStrongCache(\n handler: (\n arg: ArgT,\n cache: CacheConfigurator,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n return makeCachedFunction(Map, handler);\n}\n\nexport function makeStrongCacheSync(\n handler: (arg: ArgT, cache?: CacheConfigurator) => ResultT,\n): (arg: ArgT, data?: SideChannel) => ResultT {\n return synchronize<[ArgT, SideChannel], ResultT>(\n makeStrongCache(handler),\n );\n}\n\n/* NOTE: Part of the logic explained in this comment is explained in the\n * getCachedValueOrWait and setupAsyncLocks functions.\n *\n * > There are only two hard things in Computer Science: cache invalidation and naming things.\n * > -- Phil Karlton\n *\n * I don't know if Phil was also thinking about handling a cache whose invalidation function is\n * defined asynchronously is considered, but it is REALLY hard to do correctly.\n *\n * The implemented logic (only when gensync is run asynchronously) is the following:\n * 1. If there is a valid cache associated to the current \"arg\" parameter,\n * a. RETURN the cached value\n * 3. If there is a FinishLock associated to the current \"arg\" parameter representing a valid cache,\n * a. Wait for that lock to be released\n * b. RETURN the value associated with that lock\n * 5. Start executing the function to be cached\n * a. If it pauses on a promise, then\n * i. Let FinishLock be a new lock\n * ii. Store FinishLock as associated to the current \"arg\" parameter\n * iii. Wait for the function to finish executing\n * iv. Release FinishLock\n * v. Send the function result to anyone waiting on FinishLock\n * 6. Store the result in the cache\n * 7. RETURN the result\n */\nfunction makeCachedFunction(\n CallCache: new () => CacheMap,\n handler: (\n arg: ArgT,\n cache: CacheConfigurator,\n ) => Handler | ResultT,\n): (arg: ArgT, data: SideChannel) => Handler {\n const callCacheSync = new CallCache();\n const callCacheAsync = new CallCache();\n const futureCache = new CallCache>();\n\n return function* cachedFunction(arg: ArgT, data: SideChannel) {\n const asyncContext = yield* isAsync();\n const callCache = asyncContext ? callCacheAsync : callCacheSync;\n\n const cached = yield* getCachedValueOrWait(\n asyncContext,\n callCache,\n futureCache,\n arg,\n data,\n );\n if (cached.valid) return cached.value;\n\n const cache = new CacheConfigurator(data);\n\n const handlerResult: Handler | ResultT = handler(arg, cache);\n\n let finishLock: Lock;\n let value: ResultT;\n\n if (isIterableIterator(handlerResult)) {\n value = yield* onFirstPause(handlerResult, () => {\n finishLock = setupAsyncLocks(cache, futureCache, arg);\n });\n } else {\n value = handlerResult;\n }\n\n updateFunctionCache(callCache, cache, arg, value);\n\n if (finishLock) {\n futureCache.delete(arg);\n finishLock.release(value);\n }\n\n return value;\n };\n}\n\ntype CacheMap =\n | Map>\n // @ts-expect-error todo(flow->ts): add `extends object` constraint to ArgT\n | WeakMap>;\n\nfunction* getCachedValue(\n cache: CacheMap,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cachedValue: CacheEntry | void = cache.get(arg);\n\n if (cachedValue) {\n for (const { value, valid } of cachedValue) {\n if (yield* valid(data)) return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction* getCachedValueOrWait(\n asyncContext: boolean,\n callCache: CacheMap,\n futureCache: CacheMap, SideChannel>,\n arg: ArgT,\n data: SideChannel,\n): Handler<{ valid: true; value: ResultT } | { valid: false; value: null }> {\n const cached = yield* getCachedValue(callCache, arg, data);\n if (cached.valid) {\n return cached;\n }\n\n if (asyncContext) {\n const cached = yield* getCachedValue(futureCache, arg, data);\n if (cached.valid) {\n const value = yield* waitFor(cached.value.promise);\n return { valid: true, value };\n }\n }\n\n return { valid: false, value: null };\n}\n\nfunction setupAsyncLocks(\n config: CacheConfigurator,\n futureCache: CacheMap, SideChannel>,\n arg: ArgT,\n): Lock {\n const finishLock = new Lock();\n\n updateFunctionCache(futureCache, config, arg, finishLock);\n\n return finishLock;\n}\n\nfunction updateFunctionCache<\n ArgT,\n ResultT,\n SideChannel,\n Cache extends CacheMap,\n>(\n cache: Cache,\n config: CacheConfigurator,\n arg: ArgT,\n value: ResultT,\n) {\n if (!config.configured()) config.forever();\n\n let cachedValue: CacheEntry | void = cache.get(arg);\n\n config.deactivate();\n\n switch (config.mode()) {\n case \"forever\":\n cachedValue = [{ value, valid: genTrue }];\n cache.set(arg, cachedValue);\n break;\n case \"invalidate\":\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n break;\n case \"valid\":\n if (cachedValue) {\n cachedValue.push({ value, valid: config.validator() });\n } else {\n cachedValue = [{ value, valid: config.validator() }];\n cache.set(arg, cachedValue);\n }\n }\n}\n\nclass CacheConfigurator {\n _active: boolean = true;\n _never: boolean = false;\n _forever: boolean = false;\n _invalidate: boolean = false;\n\n _configured: boolean = false;\n\n _pairs: [\n cachedValue: unknown,\n handler: (data: SideChannel) => Handler,\n ][] = [];\n\n _data: SideChannel;\n\n constructor(data: SideChannel) {\n this._data = data;\n }\n\n simple() {\n return makeSimpleConfigurator(this);\n }\n\n mode() {\n if (this._never) return \"never\";\n if (this._forever) return \"forever\";\n if (this._invalidate) return \"invalidate\";\n return \"valid\";\n }\n\n forever() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never) {\n throw new Error(\"Caching has already been configured with .never()\");\n }\n this._forever = true;\n this._configured = true;\n }\n\n never() {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._forever) {\n throw new Error(\"Caching has already been configured with .forever()\");\n }\n this._never = true;\n this._configured = true;\n }\n\n using(handler: (data: SideChannel) => T): T {\n if (!this._active) {\n throw new Error(\"Cannot change caching after evaluation has completed.\");\n }\n if (this._never || this._forever) {\n throw new Error(\n \"Caching has already been configured with .never or .forever()\",\n );\n }\n this._configured = true;\n\n const key = handler(this._data);\n\n const fn = maybeAsync(\n handler,\n `You appear to be using an async cache handler, but Babel has been called synchronously`,\n );\n\n if (isThenable(key)) {\n // @ts-expect-error todo(flow->ts): improve function return type annotation\n return key.then((key: unknown) => {\n this._pairs.push([key, fn]);\n return key;\n });\n }\n\n this._pairs.push([key, fn]);\n return key;\n }\n\n invalidate(handler: (data: SideChannel) => T): T {\n this._invalidate = true;\n return this.using(handler);\n }\n\n validator(): (data: SideChannel) => Handler {\n const pairs = this._pairs;\n return function* (data: SideChannel) {\n for (const [key, fn] of pairs) {\n if (key !== (yield* fn(data))) return false;\n }\n return true;\n };\n }\n\n deactivate() {\n this._active = false;\n }\n\n configured() {\n return this._configured;\n }\n}\n\nfunction makeSimpleConfigurator(\n cache: CacheConfigurator,\n): SimpleCacheConfigurator {\n function cacheFn(val: any) {\n if (typeof val === \"boolean\") {\n if (val) cache.forever();\n else cache.never();\n return;\n }\n\n return cache.using(() => assertSimpleType(val()));\n }\n cacheFn.forever = () => cache.forever();\n cacheFn.never = () => cache.never();\n cacheFn.using = (cb: () => SimpleType) =>\n cache.using(() => assertSimpleType(cb()));\n cacheFn.invalidate = (cb: () => SimpleType) =>\n cache.invalidate(() => assertSimpleType(cb()));\n\n return cacheFn as any;\n}\n\n// Types are limited here so that in the future these values can be used\n// as part of Babel's caching logic.\nexport type SimpleType =\n | string\n | boolean\n | number\n | null\n | void\n | Promise;\nexport function assertSimpleType(value: unknown): SimpleType {\n if (isThenable(value)) {\n throw new Error(\n `You appear to be using an async cache handler, ` +\n `which your current version of Babel does not support. ` +\n `We may add support for this in the future, ` +\n `but if you're on the most recent version of @babel/core and still ` +\n `seeing this error, then you'll need to synchronously handle your caching logic.`,\n );\n }\n\n if (\n value != null &&\n typeof value !== \"string\" &&\n typeof value !== \"boolean\" &&\n typeof value !== \"number\"\n ) {\n throw new Error(\n \"Cache keys must be either string, boolean, number, null, or undefined.\",\n );\n }\n // @ts-expect-error Type 'unknown' is not assignable to type 'SimpleType'. This can be removed\n // when strictNullCheck is enabled\n return value;\n}\n\nclass Lock {\n released: boolean = false;\n promise: Promise;\n _resolve: (value: T) => void;\n\n constructor() {\n this.promise = new Promise(resolve => {\n this._resolve = resolve;\n });\n }\n\n release(value: T) {\n this.released = true;\n this._resolve(value);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/config-chain.js b/node_modules/@babel/core/lib/config/config-chain.js new file mode 100644 index 0000000..5fded8e --- /dev/null +++ b/node_modules/@babel/core/lib/config/config-chain.js @@ -0,0 +1,469 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.buildPresetChain = buildPresetChain; +exports.buildPresetChainWalker = void 0; +exports.buildRootChain = buildRootChain; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _debug() { + const data = require("debug"); + _debug = function () { + return data; + }; + return data; +} +var _options = require("./validation/options.js"); +var _patternToRegex = require("./pattern-to-regex.js"); +var _printer = require("./printer.js"); +var _rewriteStackTrace = require("../errors/rewrite-stack-trace.js"); +var _configError = require("../errors/config-error.js"); +var _index = require("./files/index.js"); +var _caching = require("./caching.js"); +var _configDescriptors = require("./config-descriptors.js"); +const debug = _debug()("babel:config:config-chain"); +function* buildPresetChain(arg, context) { + const chain = yield* buildPresetChainWalker(arg, context); + if (!chain) return null; + return { + plugins: dedupDescriptors(chain.plugins), + presets: dedupDescriptors(chain.presets), + options: chain.options.map(o => createConfigChainOptions(o)), + files: new Set() + }; +} +const buildPresetChainWalker = exports.buildPresetChainWalker = makeChainWalker({ + root: preset => loadPresetDescriptors(preset), + env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName), + overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index), + overridesEnv: (preset, index, envName) => loadPresetOverridesEnvDescriptors(preset)(index)(envName), + createLogger: () => () => {} +}); +const loadPresetDescriptors = (0, _caching.makeWeakCacheSync)(preset => buildRootDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors)); +const loadPresetEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, envName))); +const loadPresetOverridesDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index))); +const loadPresetOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(preset => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(preset, preset.alias, _configDescriptors.createUncachedDescriptors, index, envName)))); +function* buildRootChain(opts, context) { + let configReport, babelRcReport; + const programmaticLogger = new _printer.ConfigPrinter(); + const programmaticChain = yield* loadProgrammaticChain({ + options: opts, + dirname: context.cwd + }, context, undefined, programmaticLogger); + if (!programmaticChain) return null; + const programmaticReport = yield* programmaticLogger.output(); + let configFile; + if (typeof opts.configFile === "string") { + configFile = yield* (0, _index.loadConfig)(opts.configFile, context.cwd, context.envName, context.caller); + } else if (opts.configFile !== false) { + configFile = yield* (0, _index.findRootConfig)(context.root, context.envName, context.caller); + } + let { + babelrc, + babelrcRoots + } = opts; + let babelrcRootsDirectory = context.cwd; + const configFileChain = emptyChain(); + const configFileLogger = new _printer.ConfigPrinter(); + if (configFile) { + const validatedFile = validateConfigFile(configFile); + const result = yield* loadFileChain(validatedFile, context, undefined, configFileLogger); + if (!result) return null; + configReport = yield* configFileLogger.output(); + if (babelrc === undefined) { + babelrc = validatedFile.options.babelrc; + } + if (babelrcRoots === undefined) { + babelrcRootsDirectory = validatedFile.dirname; + babelrcRoots = validatedFile.options.babelrcRoots; + } + mergeChain(configFileChain, result); + } + let ignoreFile, babelrcFile; + let isIgnored = false; + const fileChain = emptyChain(); + if ((babelrc === true || babelrc === undefined) && typeof context.filename === "string") { + const pkgData = yield* (0, _index.findPackageData)(context.filename); + if (pkgData && babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)) { + ({ + ignore: ignoreFile, + config: babelrcFile + } = yield* (0, _index.findRelativeConfig)(pkgData, context.envName, context.caller)); + if (ignoreFile) { + fileChain.files.add(ignoreFile.filepath); + } + if (ignoreFile && shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)) { + isIgnored = true; + } + if (babelrcFile && !isIgnored) { + const validatedFile = validateBabelrcFile(babelrcFile); + const babelrcLogger = new _printer.ConfigPrinter(); + const result = yield* loadFileChain(validatedFile, context, undefined, babelrcLogger); + if (!result) { + isIgnored = true; + } else { + babelRcReport = yield* babelrcLogger.output(); + mergeChain(fileChain, result); + } + } + if (babelrcFile && isIgnored) { + fileChain.files.add(babelrcFile.filepath); + } + } + } + if (context.showConfig) { + console.log(`Babel configs on "${context.filename}" (ascending priority):\n` + [configReport, babelRcReport, programmaticReport].filter(x => !!x).join("\n\n") + "\n-----End Babel configs-----"); + } + const chain = mergeChain(mergeChain(mergeChain(emptyChain(), configFileChain), fileChain), programmaticChain); + return { + plugins: isIgnored ? [] : dedupDescriptors(chain.plugins), + presets: isIgnored ? [] : dedupDescriptors(chain.presets), + options: isIgnored ? [] : chain.options.map(o => createConfigChainOptions(o)), + fileHandling: isIgnored ? "ignored" : "transpile", + ignore: ignoreFile || undefined, + babelrc: babelrcFile || undefined, + config: configFile || undefined, + files: chain.files + }; +} +function babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory) { + if (typeof babelrcRoots === "boolean") return babelrcRoots; + const absoluteRoot = context.root; + if (babelrcRoots === undefined) { + return pkgData.directories.includes(absoluteRoot); + } + let babelrcPatterns = babelrcRoots; + if (!Array.isArray(babelrcPatterns)) { + babelrcPatterns = [babelrcPatterns]; + } + babelrcPatterns = babelrcPatterns.map(pat => { + return typeof pat === "string" ? _path().resolve(babelrcRootsDirectory, pat) : pat; + }); + if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) { + return pkgData.directories.includes(absoluteRoot); + } + return babelrcPatterns.some(pat => { + if (typeof pat === "string") { + pat = (0, _patternToRegex.default)(pat, babelrcRootsDirectory); + } + return pkgData.directories.some(directory => { + return matchPattern(pat, babelrcRootsDirectory, directory, context); + }); + }); +} +const validateConfigFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("configfile", file.options, file.filepath) +})); +const validateBabelrcFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("babelrcfile", file.options, file.filepath) +})); +const validateExtendFile = (0, _caching.makeWeakCacheSync)(file => ({ + filepath: file.filepath, + dirname: file.dirname, + options: (0, _options.validate)("extendsfile", file.options, file.filepath) +})); +const loadProgrammaticChain = makeChainWalker({ + root: input => buildRootDescriptors(input, "base", _configDescriptors.createCachedDescriptors), + env: (input, envName) => buildEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, envName), + overrides: (input, index) => buildOverrideDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index), + overridesEnv: (input, index, envName) => buildOverrideEnvDescriptors(input, "base", _configDescriptors.createCachedDescriptors, index, envName), + createLogger: (input, context, baseLogger) => buildProgrammaticLogger(input, context, baseLogger) +}); +const loadFileChainWalker = makeChainWalker({ + root: file => loadFileDescriptors(file), + env: (file, envName) => loadFileEnvDescriptors(file)(envName), + overrides: (file, index) => loadFileOverridesDescriptors(file)(index), + overridesEnv: (file, index, envName) => loadFileOverridesEnvDescriptors(file)(index)(envName), + createLogger: (file, context, baseLogger) => buildFileLogger(file.filepath, context, baseLogger) +}); +function* loadFileChain(input, context, files, baseLogger) { + const chain = yield* loadFileChainWalker(input, context, files, baseLogger); + chain == null || chain.files.add(input.filepath); + return chain; +} +const loadFileDescriptors = (0, _caching.makeWeakCacheSync)(file => buildRootDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors)); +const loadFileEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(envName => buildEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, envName))); +const loadFileOverridesDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => buildOverrideDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index))); +const loadFileOverridesEnvDescriptors = (0, _caching.makeWeakCacheSync)(file => (0, _caching.makeStrongCacheSync)(index => (0, _caching.makeStrongCacheSync)(envName => buildOverrideEnvDescriptors(file, file.filepath, _configDescriptors.createUncachedDescriptors, index, envName)))); +function buildFileLogger(filepath, context, baseLogger) { + if (!baseLogger) { + return () => {}; + } + return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Config, { + filepath + }); +} +function buildRootDescriptors({ + dirname, + options +}, alias, descriptors) { + return descriptors(dirname, options, alias); +} +function buildProgrammaticLogger(_, context, baseLogger) { + var _context$caller; + if (!baseLogger) { + return () => {}; + } + return baseLogger.configure(context.showConfig, _printer.ChainFormatter.Programmatic, { + callerName: (_context$caller = context.caller) == null ? void 0 : _context$caller.name + }); +} +function buildEnvDescriptors({ + dirname, + options +}, alias, descriptors, envName) { + var _options$env; + const opts = (_options$env = options.env) == null ? void 0 : _options$env[envName]; + return opts ? descriptors(dirname, opts, `${alias}.env["${envName}"]`) : null; +} +function buildOverrideDescriptors({ + dirname, + options +}, alias, descriptors, index) { + var _options$overrides; + const opts = (_options$overrides = options.overrides) == null ? void 0 : _options$overrides[index]; + if (!opts) throw new Error("Assertion failure - missing override"); + return descriptors(dirname, opts, `${alias}.overrides[${index}]`); +} +function buildOverrideEnvDescriptors({ + dirname, + options +}, alias, descriptors, index, envName) { + var _options$overrides2, _override$env; + const override = (_options$overrides2 = options.overrides) == null ? void 0 : _options$overrides2[index]; + if (!override) throw new Error("Assertion failure - missing override"); + const opts = (_override$env = override.env) == null ? void 0 : _override$env[envName]; + return opts ? descriptors(dirname, opts, `${alias}.overrides[${index}].env["${envName}"]`) : null; +} +function makeChainWalker({ + root, + env, + overrides, + overridesEnv, + createLogger +}) { + return function* chainWalker(input, context, files = new Set(), baseLogger) { + const { + dirname + } = input; + const flattenedConfigs = []; + const rootOpts = root(input); + if (configIsApplicable(rootOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: rootOpts, + envName: undefined, + index: undefined + }); + const envOpts = env(input, context.envName); + if (envOpts && configIsApplicable(envOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: envOpts, + envName: context.envName, + index: undefined + }); + } + (rootOpts.options.overrides || []).forEach((_, index) => { + const overrideOps = overrides(input, index); + if (configIsApplicable(overrideOps, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: overrideOps, + index, + envName: undefined + }); + const overrideEnvOpts = overridesEnv(input, index, context.envName); + if (overrideEnvOpts && configIsApplicable(overrideEnvOpts, dirname, context, input.filepath)) { + flattenedConfigs.push({ + config: overrideEnvOpts, + index, + envName: context.envName + }); + } + } + }); + } + if (flattenedConfigs.some(({ + config: { + options: { + ignore, + only + } + } + }) => shouldIgnore(context, ignore, only, dirname))) { + return null; + } + const chain = emptyChain(); + const logger = createLogger(input, context, baseLogger); + for (const { + config, + index, + envName + } of flattenedConfigs) { + if (!(yield* mergeExtendsChain(chain, config.options, dirname, context, files, baseLogger))) { + return null; + } + logger(config, index, envName); + yield* mergeChainOpts(chain, config); + } + return chain; + }; +} +function* mergeExtendsChain(chain, opts, dirname, context, files, baseLogger) { + if (opts.extends === undefined) return true; + const file = yield* (0, _index.loadConfig)(opts.extends, dirname, context.envName, context.caller); + if (files.has(file)) { + throw new Error(`Configuration cycle detected loading ${file.filepath}.\n` + `File already loaded following the config chain:\n` + Array.from(files, file => ` - ${file.filepath}`).join("\n")); + } + files.add(file); + const fileChain = yield* loadFileChain(validateExtendFile(file), context, files, baseLogger); + files.delete(file); + if (!fileChain) return false; + mergeChain(chain, fileChain); + return true; +} +function mergeChain(target, source) { + target.options.push(...source.options); + target.plugins.push(...source.plugins); + target.presets.push(...source.presets); + for (const file of source.files) { + target.files.add(file); + } + return target; +} +function* mergeChainOpts(target, { + options, + plugins, + presets +}) { + target.options.push(options); + target.plugins.push(...(yield* plugins())); + target.presets.push(...(yield* presets())); + return target; +} +function emptyChain() { + return { + options: [], + presets: [], + plugins: [], + files: new Set() + }; +} +function createConfigChainOptions(opts) { + const options = Object.assign({}, opts); + delete options.extends; + delete options.env; + delete options.overrides; + delete options.plugins; + delete options.presets; + delete options.passPerPreset; + delete options.ignore; + delete options.only; + delete options.test; + delete options.include; + delete options.exclude; + if (hasOwnProperty.call(options, "sourceMap")) { + options.sourceMaps = options.sourceMap; + delete options.sourceMap; + } + return options; +} +function dedupDescriptors(items) { + const map = new Map(); + const descriptors = []; + for (const item of items) { + if (typeof item.value === "function") { + const fnKey = item.value; + let nameMap = map.get(fnKey); + if (!nameMap) { + nameMap = new Map(); + map.set(fnKey, nameMap); + } + let desc = nameMap.get(item.name); + if (!desc) { + desc = { + value: item + }; + descriptors.push(desc); + if (!item.ownPass) nameMap.set(item.name, desc); + } else { + desc.value = item; + } + } else { + descriptors.push({ + value: item + }); + } + } + return descriptors.reduce((acc, desc) => { + acc.push(desc.value); + return acc; + }, []); +} +function configIsApplicable({ + options +}, dirname, context, configName) { + return (options.test === undefined || configFieldIsApplicable(context, options.test, dirname, configName)) && (options.include === undefined || configFieldIsApplicable(context, options.include, dirname, configName)) && (options.exclude === undefined || !configFieldIsApplicable(context, options.exclude, dirname, configName)); +} +function configFieldIsApplicable(context, test, dirname, configName) { + const patterns = Array.isArray(test) ? test : [test]; + return matchesPatterns(context, patterns, dirname, configName); +} +function ignoreListReplacer(_key, value) { + if (value instanceof RegExp) { + return String(value); + } + return value; +} +function shouldIgnore(context, ignore, only, dirname) { + if (ignore && matchesPatterns(context, ignore, dirname)) { + var _context$filename; + const message = `No config is applied to "${(_context$filename = context.filename) != null ? _context$filename : "(unknown)"}" because it matches one of \`ignore: ${JSON.stringify(ignore, ignoreListReplacer)}\` from "${dirname}"`; + debug(message); + if (context.showConfig) { + console.log(message); + } + return true; + } + if (only && !matchesPatterns(context, only, dirname)) { + var _context$filename2; + const message = `No config is applied to "${(_context$filename2 = context.filename) != null ? _context$filename2 : "(unknown)"}" because it fails to match one of \`only: ${JSON.stringify(only, ignoreListReplacer)}\` from "${dirname}"`; + debug(message); + if (context.showConfig) { + console.log(message); + } + return true; + } + return false; +} +function matchesPatterns(context, patterns, dirname, configName) { + return patterns.some(pattern => matchPattern(pattern, dirname, context.filename, context, configName)); +} +function matchPattern(pattern, dirname, pathToTest, context, configName) { + if (typeof pattern === "function") { + return !!(0, _rewriteStackTrace.endHiddenCallStack)(pattern)(pathToTest, { + dirname, + envName: context.envName, + caller: context.caller + }); + } + if (typeof pathToTest !== "string") { + throw new _configError.default(`Configuration contains string/RegExp pattern, but no filename was passed to Babel`, configName); + } + if (typeof pattern === "string") { + pattern = (0, _patternToRegex.default)(pattern, dirname); + } + return pattern.test(pathToTest); +} +0 && 0; + +//# sourceMappingURL=config-chain.js.map diff --git a/node_modules/@babel/core/lib/config/config-chain.js.map b/node_modules/@babel/core/lib/config/config-chain.js.map new file mode 100644 index 0000000..92414e5 --- /dev/null +++ b/node_modules/@babel/core/lib/config/config-chain.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","_debug","_options","_patternToRegex","_printer","_rewriteStackTrace","_configError","_index","_caching","_configDescriptors","debug","buildDebug","buildPresetChain","arg","context","chain","buildPresetChainWalker","plugins","dedupDescriptors","presets","options","map","o","createConfigChainOptions","files","Set","exports","makeChainWalker","root","preset","loadPresetDescriptors","env","envName","loadPresetEnvDescriptors","overrides","index","loadPresetOverridesDescriptors","overridesEnv","loadPresetOverridesEnvDescriptors","createLogger","makeWeakCacheSync","buildRootDescriptors","alias","createUncachedDescriptors","makeStrongCacheSync","buildEnvDescriptors","buildOverrideDescriptors","buildOverrideEnvDescriptors","buildRootChain","opts","configReport","babelRcReport","programmaticLogger","ConfigPrinter","programmaticChain","loadProgrammaticChain","dirname","cwd","undefined","programmaticReport","output","configFile","loadConfig","caller","findRootConfig","babelrc","babelrcRoots","babelrcRootsDirectory","configFileChain","emptyChain","configFileLogger","validatedFile","validateConfigFile","result","loadFileChain","mergeChain","ignoreFile","babelrcFile","isIgnored","fileChain","filename","pkgData","findPackageData","babelrcLoadEnabled","ignore","config","findRelativeConfig","add","filepath","shouldIgnore","validateBabelrcFile","babelrcLogger","showConfig","console","log","filter","x","join","fileHandling","absoluteRoot","directories","includes","babelrcPatterns","Array","isArray","pat","path","resolve","length","some","pathPatternToRegex","directory","matchPattern","file","validate","validateExtendFile","input","createCachedDescriptors","baseLogger","buildProgrammaticLogger","loadFileChainWalker","loadFileDescriptors","loadFileEnvDescriptors","loadFileOverridesDescriptors","loadFileOverridesEnvDescriptors","buildFileLogger","configure","ChainFormatter","Config","descriptors","_","_context$caller","Programmatic","callerName","name","_options$env","_options$overrides","Error","_options$overrides2","_override$env","override","chainWalker","flattenedConfigs","rootOpts","configIsApplicable","push","envOpts","forEach","overrideOps","overrideEnvOpts","only","logger","mergeExtendsChain","mergeChainOpts","extends","has","from","delete","target","source","Object","assign","passPerPreset","test","include","exclude","hasOwnProperty","call","sourceMaps","sourceMap","items","Map","item","value","fnKey","nameMap","get","set","desc","ownPass","reduce","acc","configName","configFieldIsApplicable","patterns","matchesPatterns","ignoreListReplacer","_key","RegExp","String","_context$filename","message","JSON","stringify","_context$filename2","pattern","pathToTest","endHiddenCallStack","ConfigError"],"sources":["../../src/config/config-chain.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\n\nimport path from \"node:path\";\nimport buildDebug from \"debug\";\nimport type { Handler } from \"gensync\";\nimport { validate } from \"./validation/options.ts\";\nimport type {\n ConfigApplicableTest,\n BabelrcSearch,\n CallerMetadata,\n MatchItem,\n InputOptions,\n ConfigChainOptions,\n} from \"./validation/options.ts\";\nimport pathPatternToRegex from \"./pattern-to-regex.ts\";\nimport { ConfigPrinter, ChainFormatter } from \"./printer.ts\";\nimport type { ReadonlyDeepArray } from \"./helpers/deep-array.ts\";\n\nimport { endHiddenCallStack } from \"../errors/rewrite-stack-trace.ts\";\nimport ConfigError from \"../errors/config-error.ts\";\nimport type { PluginAPI, PresetAPI } from \"./helpers/config-api.ts\";\n\nconst debug = buildDebug(\"babel:config:config-chain\");\n\nimport {\n findPackageData,\n findRelativeConfig,\n findRootConfig,\n loadConfig,\n} from \"./files/index.ts\";\nimport type { ConfigFile, IgnoreFile, FilePackageData } from \"./files/index.ts\";\n\nimport { makeWeakCacheSync, makeStrongCacheSync } from \"./caching.ts\";\n\nimport {\n createCachedDescriptors,\n createUncachedDescriptors,\n} from \"./config-descriptors.ts\";\nimport type {\n UnloadedDescriptor,\n OptionsAndDescriptors,\n ValidatedFile,\n} from \"./config-descriptors.ts\";\n\nexport type ConfigChain = {\n plugins: UnloadedDescriptor[];\n presets: UnloadedDescriptor[];\n options: ConfigChainOptions[];\n files: Set;\n};\n\nexport type PresetInstance = {\n options: InputOptions;\n alias: string;\n dirname: string;\n externalDependencies: ReadonlyDeepArray;\n};\n\nexport type ConfigContext = {\n filename: string | undefined;\n cwd: string;\n root: string;\n envName: string;\n caller: CallerMetadata | undefined;\n showConfig: boolean;\n};\n\n/**\n * Build a config chain for a given preset.\n */\nexport function* buildPresetChain(\n arg: PresetInstance,\n context: any,\n): Handler {\n const chain = yield* buildPresetChainWalker(arg, context);\n if (!chain) return null;\n\n return {\n plugins: dedupDescriptors(chain.plugins),\n presets: dedupDescriptors(chain.presets),\n options: chain.options.map(o => createConfigChainOptions(o)),\n files: new Set(),\n };\n}\n\nexport const buildPresetChainWalker = makeChainWalker({\n root: preset => loadPresetDescriptors(preset),\n env: (preset, envName) => loadPresetEnvDescriptors(preset)(envName),\n overrides: (preset, index) => loadPresetOverridesDescriptors(preset)(index),\n overridesEnv: (preset, index, envName) =>\n loadPresetOverridesEnvDescriptors(preset)(index)(envName),\n createLogger: () => () => {}, // Currently we don't support logging how preset is expanded\n});\nconst loadPresetDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n buildRootDescriptors(preset, preset.alias, createUncachedDescriptors),\n);\nconst loadPresetEnvDescriptors = makeWeakCacheSync((preset: PresetInstance) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadPresetOverridesDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadPresetOverridesEnvDescriptors = makeWeakCacheSync(\n (preset: PresetInstance) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n preset,\n preset.alias,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nexport type FileHandling = \"transpile\" | \"ignored\" | \"unsupported\";\nexport type RootConfigChain = ConfigChain & {\n babelrc: ConfigFile | undefined;\n config: ConfigFile | undefined;\n ignore: IgnoreFile | undefined;\n fileHandling: FileHandling;\n files: Set;\n};\n\n/**\n * Build a config chain for Babel's full root configuration.\n */\nexport function* buildRootChain(\n opts: InputOptions,\n context: ConfigContext,\n): Handler {\n let configReport, babelRcReport;\n const programmaticLogger = new ConfigPrinter();\n const programmaticChain = yield* loadProgrammaticChain(\n {\n options: opts,\n dirname: context.cwd,\n },\n context,\n undefined,\n programmaticLogger,\n );\n if (!programmaticChain) return null;\n const programmaticReport = yield* programmaticLogger.output();\n\n let configFile;\n if (typeof opts.configFile === \"string\") {\n configFile = yield* loadConfig(\n opts.configFile,\n context.cwd,\n context.envName,\n context.caller,\n );\n } else if (opts.configFile !== false) {\n configFile = yield* findRootConfig(\n context.root,\n context.envName,\n context.caller,\n );\n }\n\n let { babelrc, babelrcRoots } = opts;\n let babelrcRootsDirectory = context.cwd;\n\n const configFileChain = emptyChain();\n const configFileLogger = new ConfigPrinter();\n if (configFile) {\n const validatedFile = validateConfigFile(configFile);\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n configFileLogger,\n );\n if (!result) return null;\n configReport = yield* configFileLogger.output();\n\n // Allow config files to toggle `.babelrc` resolution on and off and\n // specify where the roots are.\n if (babelrc === undefined) {\n babelrc = validatedFile.options.babelrc;\n }\n if (babelrcRoots === undefined) {\n babelrcRootsDirectory = validatedFile.dirname;\n babelrcRoots = validatedFile.options.babelrcRoots;\n }\n\n mergeChain(configFileChain, result);\n }\n\n let ignoreFile, babelrcFile;\n let isIgnored = false;\n const fileChain = emptyChain();\n // resolve all .babelrc files\n if (\n (babelrc === true || babelrc === undefined) &&\n typeof context.filename === \"string\"\n ) {\n const pkgData = yield* findPackageData(context.filename);\n\n if (\n pkgData &&\n babelrcLoadEnabled(context, pkgData, babelrcRoots, babelrcRootsDirectory)\n ) {\n ({ ignore: ignoreFile, config: babelrcFile } = yield* findRelativeConfig(\n pkgData,\n context.envName,\n context.caller,\n ));\n\n if (ignoreFile) {\n fileChain.files.add(ignoreFile.filepath);\n }\n\n if (\n ignoreFile &&\n shouldIgnore(context, ignoreFile.ignore, null, ignoreFile.dirname)\n ) {\n isIgnored = true;\n }\n\n if (babelrcFile && !isIgnored) {\n const validatedFile = validateBabelrcFile(babelrcFile);\n const babelrcLogger = new ConfigPrinter();\n const result = yield* loadFileChain(\n validatedFile,\n context,\n undefined,\n babelrcLogger,\n );\n if (!result) {\n isIgnored = true;\n } else {\n babelRcReport = yield* babelrcLogger.output();\n mergeChain(fileChain, result);\n }\n }\n\n if (babelrcFile && isIgnored) {\n fileChain.files.add(babelrcFile.filepath);\n }\n }\n }\n\n if (context.showConfig) {\n console.log(\n `Babel configs on \"${context.filename}\" (ascending priority):\\n` +\n // print config by the order of ascending priority\n [configReport, babelRcReport, programmaticReport]\n .filter(x => !!x)\n .join(\"\\n\\n\") +\n \"\\n-----End Babel configs-----\",\n );\n }\n // Insert file chain in front so programmatic options have priority\n // over configuration file chain items.\n const chain = mergeChain(\n mergeChain(mergeChain(emptyChain(), configFileChain), fileChain),\n programmaticChain,\n );\n\n return {\n plugins: isIgnored ? [] : dedupDescriptors(chain.plugins),\n presets: isIgnored ? [] : dedupDescriptors(chain.presets),\n options: isIgnored\n ? []\n : chain.options.map(o => createConfigChainOptions(o)),\n fileHandling: isIgnored ? \"ignored\" : \"transpile\",\n ignore: ignoreFile || undefined,\n babelrc: babelrcFile || undefined,\n config: configFile || undefined,\n files: chain.files,\n };\n}\n\nfunction babelrcLoadEnabled(\n context: ConfigContext,\n pkgData: FilePackageData,\n babelrcRoots: BabelrcSearch | undefined,\n babelrcRootsDirectory: string,\n): boolean {\n if (typeof babelrcRoots === \"boolean\") return babelrcRoots;\n\n const absoluteRoot = context.root;\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcRoots === undefined) {\n return pkgData.directories.includes(absoluteRoot);\n }\n\n let babelrcPatterns = babelrcRoots;\n if (!Array.isArray(babelrcPatterns)) {\n babelrcPatterns = [babelrcPatterns];\n }\n babelrcPatterns = babelrcPatterns.map(pat => {\n return typeof pat === \"string\"\n ? path.resolve(babelrcRootsDirectory, pat)\n : pat;\n });\n\n // Fast path to avoid having to match patterns if the babelrc is just\n // loading in the standard root directory.\n if (babelrcPatterns.length === 1 && babelrcPatterns[0] === absoluteRoot) {\n return pkgData.directories.includes(absoluteRoot);\n }\n\n return babelrcPatterns.some(pat => {\n if (typeof pat === \"string\") {\n pat = pathPatternToRegex(pat, babelrcRootsDirectory);\n }\n\n return pkgData.directories.some(directory => {\n return matchPattern(pat, babelrcRootsDirectory, directory, context);\n });\n });\n}\n\nconst validateConfigFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"configfile\", file.options, file.filepath),\n }),\n);\n\nconst validateBabelrcFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"babelrcfile\", file.options, file.filepath),\n }),\n);\n\nconst validateExtendFile = makeWeakCacheSync(\n (file: ConfigFile): ValidatedFile => ({\n filepath: file.filepath,\n dirname: file.dirname,\n options: validate(\"extendsfile\", file.options, file.filepath),\n }),\n);\n\n/**\n * Build a config chain for just the programmatic options passed into Babel.\n */\nconst loadProgrammaticChain = makeChainWalker({\n root: input => buildRootDescriptors(input, \"base\", createCachedDescriptors),\n env: (input, envName) =>\n buildEnvDescriptors(input, \"base\", createCachedDescriptors, envName),\n overrides: (input, index) =>\n buildOverrideDescriptors(input, \"base\", createCachedDescriptors, index),\n overridesEnv: (input, index, envName) =>\n buildOverrideEnvDescriptors(\n input,\n \"base\",\n createCachedDescriptors,\n index,\n envName,\n ),\n createLogger: (input, context, baseLogger) =>\n buildProgrammaticLogger(input, context, baseLogger),\n});\n\n/**\n * Build a config chain for a given file.\n */\nconst loadFileChainWalker = makeChainWalker({\n root: file => loadFileDescriptors(file),\n env: (file, envName) => loadFileEnvDescriptors(file)(envName),\n overrides: (file, index) => loadFileOverridesDescriptors(file)(index),\n overridesEnv: (file, index, envName) =>\n loadFileOverridesEnvDescriptors(file)(index)(envName),\n createLogger: (file, context, baseLogger) =>\n buildFileLogger(file.filepath, context, baseLogger),\n});\n\nfunction* loadFileChain(\n input: ValidatedFile,\n context: ConfigContext,\n files: Set,\n baseLogger: ConfigPrinter,\n) {\n const chain = yield* loadFileChainWalker(input, context, files, baseLogger);\n chain?.files.add(input.filepath);\n\n return chain;\n}\n\nconst loadFileDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n buildRootDescriptors(file, file.filepath, createUncachedDescriptors),\n);\nconst loadFileEnvDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((envName: string) =>\n buildEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n envName,\n ),\n ),\n);\nconst loadFileOverridesDescriptors = makeWeakCacheSync((file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n buildOverrideDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n ),\n ),\n);\nconst loadFileOverridesEnvDescriptors = makeWeakCacheSync(\n (file: ValidatedFile) =>\n makeStrongCacheSync((index: number) =>\n makeStrongCacheSync((envName: string) =>\n buildOverrideEnvDescriptors(\n file,\n file.filepath,\n createUncachedDescriptors,\n index,\n envName,\n ),\n ),\n ),\n);\n\nfunction buildFileLogger(\n filepath: string,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Config, {\n filepath,\n });\n}\n\nfunction buildRootDescriptors(\n { dirname, options }: Partial,\n alias: string,\n descriptors: (\n dirname: string,\n options: InputOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n) {\n return descriptors(dirname, options, alias);\n}\n\nfunction buildProgrammaticLogger(\n _: unknown,\n context: ConfigContext,\n baseLogger: ConfigPrinter | void,\n) {\n if (!baseLogger) {\n return () => {};\n }\n return baseLogger.configure(context.showConfig, ChainFormatter.Programmatic, {\n callerName: context.caller?.name,\n });\n}\n\nfunction buildEnvDescriptors(\n { dirname, options }: Partial,\n alias: string,\n descriptors: (\n dirname: string,\n options: InputOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n envName: string,\n) {\n const opts = options.env?.[envName];\n return opts ? descriptors(dirname, opts, `${alias}.env[\"${envName}\"]`) : null;\n}\n\nfunction buildOverrideDescriptors(\n { dirname, options }: Partial,\n alias: string,\n descriptors: (\n dirname: string,\n options: InputOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n) {\n const opts = options.overrides?.[index];\n if (!opts) throw new Error(\"Assertion failure - missing override\");\n\n return descriptors(dirname, opts, `${alias}.overrides[${index}]`);\n}\n\nfunction buildOverrideEnvDescriptors(\n { dirname, options }: Partial,\n alias: string,\n descriptors: (\n dirname: string,\n options: InputOptions,\n alias: string,\n ) => OptionsAndDescriptors,\n index: number,\n envName: string,\n) {\n const override = options.overrides?.[index];\n if (!override) throw new Error(\"Assertion failure - missing override\");\n\n const opts = override.env?.[envName];\n return opts\n ? descriptors(\n dirname,\n opts,\n `${alias}.overrides[${index}].env[\"${envName}\"]`,\n )\n : null;\n}\n\nfunction makeChainWalker<\n ArgT extends {\n options: InputOptions;\n dirname: string;\n filepath?: string;\n },\n>({\n root,\n env,\n overrides,\n overridesEnv,\n createLogger,\n}: {\n root: (configEntry: ArgT) => OptionsAndDescriptors;\n env: (configEntry: ArgT, env: string) => OptionsAndDescriptors | null;\n overrides: (configEntry: ArgT, index: number) => OptionsAndDescriptors;\n overridesEnv: (\n configEntry: ArgT,\n index: number,\n env: string,\n ) => OptionsAndDescriptors | null;\n createLogger: (\n configEntry: ArgT,\n context: ConfigContext,\n printer: ConfigPrinter | void,\n ) => (\n opts: OptionsAndDescriptors,\n index?: number | null,\n env?: string | null,\n ) => void;\n}): (\n configEntry: ArgT,\n context: ConfigContext,\n files?: Set,\n baseLogger?: ConfigPrinter,\n) => Handler {\n return function* chainWalker(input, context, files = new Set(), baseLogger) {\n const { dirname } = input;\n\n const flattenedConfigs: {\n config: OptionsAndDescriptors;\n index: number | undefined | null;\n envName: string | undefined | null;\n }[] = [];\n\n const rootOpts = root(input);\n if (configIsApplicable(rootOpts, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: rootOpts,\n envName: undefined,\n index: undefined,\n });\n\n const envOpts = env(input, context.envName);\n if (\n envOpts &&\n configIsApplicable(envOpts, dirname, context, input.filepath)\n ) {\n flattenedConfigs.push({\n config: envOpts,\n envName: context.envName,\n index: undefined,\n });\n }\n\n (rootOpts.options.overrides || []).forEach((_, index) => {\n const overrideOps = overrides(input, index);\n if (configIsApplicable(overrideOps, dirname, context, input.filepath)) {\n flattenedConfigs.push({\n config: overrideOps,\n index,\n envName: undefined,\n });\n\n const overrideEnvOpts = overridesEnv(input, index, context.envName);\n if (\n overrideEnvOpts &&\n configIsApplicable(\n overrideEnvOpts,\n dirname,\n context,\n input.filepath,\n )\n ) {\n flattenedConfigs.push({\n config: overrideEnvOpts,\n index,\n envName: context.envName,\n });\n }\n }\n });\n }\n\n // Process 'ignore' and 'only' before 'extends' items are processed so\n // that we don't do extra work loading extended configs if a file is\n // ignored.\n if (\n flattenedConfigs.some(\n ({\n config: {\n options: { ignore, only },\n },\n }) => shouldIgnore(context, ignore, only, dirname),\n )\n ) {\n return null;\n }\n\n const chain = emptyChain();\n const logger = createLogger(input, context, baseLogger);\n\n for (const { config, index, envName } of flattenedConfigs) {\n if (\n !(yield* mergeExtendsChain(\n chain,\n config.options,\n dirname,\n context,\n files,\n baseLogger,\n ))\n ) {\n return null;\n }\n\n logger(config, index, envName);\n yield* mergeChainOpts(chain, config);\n }\n return chain;\n };\n}\n\nfunction* mergeExtendsChain(\n chain: ConfigChain,\n opts: InputOptions,\n dirname: string,\n context: ConfigContext,\n files: Set,\n baseLogger?: ConfigPrinter,\n): Handler {\n if (opts.extends === undefined) return true;\n\n const file = yield* loadConfig(\n opts.extends,\n dirname,\n context.envName,\n context.caller,\n );\n\n if (files.has(file)) {\n throw new Error(\n `Configuration cycle detected loading ${file.filepath}.\\n` +\n `File already loaded following the config chain:\\n` +\n Array.from(files, file => ` - ${file.filepath}`).join(\"\\n\"),\n );\n }\n\n files.add(file);\n const fileChain = yield* loadFileChain(\n validateExtendFile(file),\n context,\n files,\n baseLogger,\n );\n files.delete(file);\n\n if (!fileChain) return false;\n\n mergeChain(chain, fileChain);\n\n return true;\n}\n\nfunction mergeChain(target: ConfigChain, source: ConfigChain): ConfigChain {\n target.options.push(...source.options);\n target.plugins.push(...source.plugins);\n target.presets.push(...source.presets);\n for (const file of source.files) {\n target.files.add(file);\n }\n\n return target;\n}\n\nfunction* mergeChainOpts(\n target: ConfigChain,\n { options, plugins, presets }: OptionsAndDescriptors,\n): Handler {\n target.options.push(options);\n target.plugins.push(...(yield* plugins()));\n target.presets.push(...(yield* presets()));\n\n return target;\n}\n\nfunction emptyChain(): ConfigChain {\n return {\n options: [],\n presets: [],\n plugins: [],\n files: new Set(),\n };\n}\n\nfunction createConfigChainOptions(opts: InputOptions): ConfigChainOptions {\n const options = {\n ...opts,\n };\n delete options.extends;\n delete options.env;\n delete options.overrides;\n delete options.plugins;\n delete options.presets;\n delete options.passPerPreset;\n delete options.ignore;\n delete options.only;\n delete options.test;\n delete options.include;\n delete options.exclude;\n\n // \"sourceMap\" is just aliased to sourceMap, so copy it over as\n // we merge the options together.\n if (Object.hasOwn(options, \"sourceMap\")) {\n options.sourceMaps = options.sourceMap;\n delete options.sourceMap;\n }\n return options;\n}\n\nfunction dedupDescriptors(\n items: UnloadedDescriptor[],\n): UnloadedDescriptor[] {\n const map = new Map<\n Function,\n Map }>\n >();\n\n const descriptors = [];\n\n for (const item of items) {\n if (typeof item.value === \"function\") {\n const fnKey = item.value;\n let nameMap = map.get(fnKey);\n if (!nameMap) {\n nameMap = new Map();\n map.set(fnKey, nameMap);\n }\n let desc = nameMap.get(item.name);\n if (!desc) {\n desc = { value: item };\n descriptors.push(desc);\n\n // Treat passPerPreset presets as unique, skipping them\n // in the merge processing steps.\n if (!item.ownPass) nameMap.set(item.name, desc);\n } else {\n desc.value = item;\n }\n } else {\n descriptors.push({ value: item });\n }\n }\n\n return descriptors.reduce((acc, desc) => {\n acc.push(desc.value);\n return acc;\n }, []);\n}\n\nfunction configIsApplicable(\n { options }: OptionsAndDescriptors,\n dirname: string,\n context: ConfigContext,\n configName: string,\n): boolean {\n return (\n (options.test === undefined ||\n configFieldIsApplicable(context, options.test, dirname, configName)) &&\n (options.include === undefined ||\n configFieldIsApplicable(context, options.include, dirname, configName)) &&\n (options.exclude === undefined ||\n !configFieldIsApplicable(context, options.exclude, dirname, configName))\n );\n}\n\nfunction configFieldIsApplicable(\n context: ConfigContext,\n test: ConfigApplicableTest,\n dirname: string,\n configName: string,\n): boolean {\n const patterns = Array.isArray(test) ? test : [test];\n\n return matchesPatterns(context, patterns, dirname, configName);\n}\n\n/**\n * Print the ignoreList-values in a more helpful way than the default.\n */\nfunction ignoreListReplacer(\n _key: string,\n value: MatchItem[] | MatchItem,\n): MatchItem[] | MatchItem | string {\n if (value instanceof RegExp) {\n return String(value);\n }\n\n return value;\n}\n\n/**\n * Tests if a filename should be ignored based on \"ignore\" and \"only\" options.\n */\nfunction shouldIgnore(\n context: ConfigContext,\n ignore: MatchItem[] | undefined | null,\n only: MatchItem[] | undefined | null,\n dirname: string,\n): boolean {\n if (ignore && matchesPatterns(context, ignore, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it matches one of \\`ignore: ${JSON.stringify(\n ignore,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n if (only && !matchesPatterns(context, only, dirname)) {\n const message = `No config is applied to \"${\n context.filename ?? \"(unknown)\"\n }\" because it fails to match one of \\`only: ${JSON.stringify(\n only,\n ignoreListReplacer,\n )}\\` from \"${dirname}\"`;\n debug(message);\n if (context.showConfig) {\n console.log(message);\n }\n return true;\n }\n\n return false;\n}\n\n/**\n * Returns result of calling function with filename if pattern is a function.\n * Otherwise returns result of matching pattern Regex with filename.\n */\nfunction matchesPatterns(\n context: ConfigContext,\n patterns: MatchItem[],\n dirname: string,\n configName?: string,\n): boolean {\n return patterns.some(pattern =>\n matchPattern(pattern, dirname, context.filename, context, configName),\n );\n}\n\nfunction matchPattern(\n pattern: MatchItem,\n dirname: string,\n pathToTest: string | undefined,\n context: ConfigContext,\n configName?: string,\n): boolean {\n if (typeof pattern === \"function\") {\n return !!endHiddenCallStack(pattern)(pathToTest, {\n dirname,\n envName: context.envName,\n caller: context.caller,\n });\n }\n\n if (typeof pathToTest !== \"string\") {\n throw new ConfigError(\n `Configuration contains string/RegExp pattern, but no filename was passed to Babel`,\n configName,\n );\n }\n\n if (typeof pattern === \"string\") {\n pattern = pathPatternToRegex(pattern, dirname);\n }\n return pattern.test(pathToTest);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/config-descriptors.js b/node_modules/@babel/core/lib/config/config-descriptors.js new file mode 100644 index 0000000..21fb414 --- /dev/null +++ b/node_modules/@babel/core/lib/config/config-descriptors.js @@ -0,0 +1,190 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createCachedDescriptors = createCachedDescriptors; +exports.createDescriptor = createDescriptor; +exports.createUncachedDescriptors = createUncachedDescriptors; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _functional = require("../gensync-utils/functional.js"); +var _index = require("./files/index.js"); +var _item = require("./item.js"); +var _caching = require("./caching.js"); +var _resolveTargets = require("./resolve-targets.js"); +function isEqualDescriptor(a, b) { + var _a$file, _b$file, _a$file2, _b$file2; + return a.name === b.name && a.value === b.value && a.options === b.options && a.dirname === b.dirname && a.alias === b.alias && a.ownPass === b.ownPass && ((_a$file = a.file) == null ? void 0 : _a$file.request) === ((_b$file = b.file) == null ? void 0 : _b$file.request) && ((_a$file2 = a.file) == null ? void 0 : _a$file2.resolved) === ((_b$file2 = b.file) == null ? void 0 : _b$file2.resolved); +} +function* handlerOf(value) { + return value; +} +function optionsWithResolvedBrowserslistConfigFile(options, dirname) { + if (typeof options.browserslistConfigFile === "string") { + options.browserslistConfigFile = (0, _resolveTargets.resolveBrowserslistConfigFile)(options.browserslistConfigFile, dirname); + } + return options; +} +function createCachedDescriptors(dirname, options, alias) { + const { + plugins, + presets, + passPerPreset + } = options; + return { + options: optionsWithResolvedBrowserslistConfigFile(options, dirname), + plugins: plugins ? () => createCachedPluginDescriptors(plugins, dirname)(alias) : () => handlerOf([]), + presets: presets ? () => createCachedPresetDescriptors(presets, dirname)(alias)(!!passPerPreset) : () => handlerOf([]) + }; +} +function createUncachedDescriptors(dirname, options, alias) { + return { + options: optionsWithResolvedBrowserslistConfigFile(options, dirname), + plugins: (0, _functional.once)(() => createPluginDescriptors(options.plugins || [], dirname, alias)), + presets: (0, _functional.once)(() => createPresetDescriptors(options.presets || [], dirname, alias, !!options.passPerPreset)) + }; +} +const PRESET_DESCRIPTOR_CACHE = new WeakMap(); +const createCachedPresetDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { + const dirname = cache.using(dir => dir); + return (0, _caching.makeStrongCacheSync)(alias => (0, _caching.makeStrongCache)(function* (passPerPreset) { + const descriptors = yield* createPresetDescriptors(items, dirname, alias, passPerPreset); + return descriptors.map(desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc)); + })); +}); +const PLUGIN_DESCRIPTOR_CACHE = new WeakMap(); +const createCachedPluginDescriptors = (0, _caching.makeWeakCacheSync)((items, cache) => { + const dirname = cache.using(dir => dir); + return (0, _caching.makeStrongCache)(function* (alias) { + const descriptors = yield* createPluginDescriptors(items, dirname, alias); + return descriptors.map(desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc)); + }); +}); +const DEFAULT_OPTIONS = {}; +function loadCachedDescriptor(cache, desc) { + const { + value, + options = DEFAULT_OPTIONS + } = desc; + if (options === false) return desc; + let cacheByOptions = cache.get(value); + if (!cacheByOptions) { + cacheByOptions = new WeakMap(); + cache.set(value, cacheByOptions); + } + let possibilities = cacheByOptions.get(options); + if (!possibilities) { + possibilities = []; + cacheByOptions.set(options, possibilities); + } + if (!possibilities.includes(desc)) { + const matches = possibilities.filter(possibility => isEqualDescriptor(possibility, desc)); + if (matches.length > 0) { + return matches[0]; + } + possibilities.push(desc); + } + return desc; +} +function* createPresetDescriptors(items, dirname, alias, passPerPreset) { + return yield* createDescriptors("preset", items, dirname, alias, passPerPreset); +} +function* createPluginDescriptors(items, dirname, alias) { + return yield* createDescriptors("plugin", items, dirname, alias); +} +function* createDescriptors(type, items, dirname, alias, ownPass) { + const descriptors = yield* _gensync().all(items.map((item, index) => createDescriptor(item, dirname, { + type, + alias: `${alias}$${index}`, + ownPass: !!ownPass + }))); + assertNoDuplicates(descriptors); + return descriptors; +} +function* createDescriptor(pair, dirname, { + type, + alias, + ownPass +}) { + const desc = (0, _item.getItemDescriptor)(pair); + if (desc) { + return desc; + } + let name; + let options; + let value = pair; + if (Array.isArray(value)) { + if (value.length === 3) { + [value, options, name] = value; + } else { + [value, options] = value; + } + } + let file = undefined; + let filepath = null; + if (typeof value === "string") { + if (typeof type !== "string") { + throw new Error("To resolve a string-based item, the type of item must be given"); + } + const resolver = type === "plugin" ? _index.loadPlugin : _index.loadPreset; + const request = value; + ({ + filepath, + value + } = yield* resolver(value, dirname)); + file = { + request, + resolved: filepath + }; + } + if (!value) { + throw new Error(`Unexpected falsy value: ${String(value)}`); + } + if (typeof value === "object" && value.__esModule) { + if (value.default) { + value = value.default; + } else { + throw new Error("Must export a default export when using ES6 modules."); + } + } + if (typeof value !== "object" && typeof value !== "function") { + throw new Error(`Unsupported format: ${typeof value}. Expected an object or a function.`); + } + if (filepath !== null && typeof value === "object" && value) { + throw new Error(`Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`); + } + return { + name, + alias: filepath || alias, + value, + options, + dirname, + ownPass, + file + }; +} +function assertNoDuplicates(items) { + const map = new Map(); + for (const item of items) { + if (typeof item.value !== "function") continue; + let nameMap = map.get(item.value); + if (!nameMap) { + nameMap = new Set(); + map.set(item.value, nameMap); + } + if (nameMap.has(item.name)) { + const conflicts = items.filter(i => i.value === item.value); + throw new Error([`Duplicate plugin/preset detected.`, `If you'd like to use two separate instances of a plugin,`, `they need separate names, e.g.`, ``, ` plugins: [`, ` ['some-plugin', {}],`, ` ['some-plugin', {}, 'some unique name'],`, ` ]`, ``, `Duplicates detected are:`, `${JSON.stringify(conflicts, null, 2)}`].join("\n")); + } + nameMap.add(item.name); + } +} +0 && 0; + +//# sourceMappingURL=config-descriptors.js.map diff --git a/node_modules/@babel/core/lib/config/config-descriptors.js.map b/node_modules/@babel/core/lib/config/config-descriptors.js.map new file mode 100644 index 0000000..b51b2cb --- /dev/null +++ b/node_modules/@babel/core/lib/config/config-descriptors.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_functional","_index","_item","_caching","_resolveTargets","isEqualDescriptor","a","b","_a$file","_b$file","_a$file2","_b$file2","name","value","options","dirname","alias","ownPass","file","request","resolved","handlerOf","optionsWithResolvedBrowserslistConfigFile","browserslistConfigFile","resolveBrowserslistConfigFile","createCachedDescriptors","plugins","presets","passPerPreset","createCachedPluginDescriptors","createCachedPresetDescriptors","createUncachedDescriptors","once","createPluginDescriptors","createPresetDescriptors","PRESET_DESCRIPTOR_CACHE","WeakMap","makeWeakCacheSync","items","cache","using","dir","makeStrongCacheSync","makeStrongCache","descriptors","map","desc","loadCachedDescriptor","PLUGIN_DESCRIPTOR_CACHE","DEFAULT_OPTIONS","cacheByOptions","get","set","possibilities","includes","matches","filter","possibility","length","push","createDescriptors","type","gensync","all","item","index","createDescriptor","assertNoDuplicates","pair","getItemDescriptor","Array","isArray","undefined","filepath","Error","resolver","loadPlugin","loadPreset","String","__esModule","default","Map","nameMap","Set","has","conflicts","i","JSON","stringify","join","add"],"sources":["../../src/config/config-descriptors.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\nimport { once } from \"../gensync-utils/functional.ts\";\n\nimport { loadPlugin, loadPreset } from \"./files/index.ts\";\n\nimport { getItemDescriptor } from \"./item.ts\";\n\nimport {\n makeWeakCacheSync,\n makeStrongCacheSync,\n makeStrongCache,\n} from \"./caching.ts\";\nimport type { CacheConfigurator } from \"./caching.ts\";\n\nimport type {\n PluginItem,\n InputOptions,\n PresetItem,\n} from \"./validation/options.ts\";\n\nimport { resolveBrowserslistConfigFile } from \"./resolve-targets.ts\";\nimport type { PluginAPI, PresetAPI } from \"./helpers/config-api.ts\";\n\n// Represents a config object and functions to lazily load the descriptors\n// for the plugins and presets so we don't load the plugins/presets unless\n// the options object actually ends up being applicable.\nexport type OptionsAndDescriptors = {\n options: InputOptions;\n plugins: () => Handler[]>;\n presets: () => Handler[]>;\n};\n\n// Represents a plugin or presets at a given location in a config object.\n// At this point these have been resolved to a specific object or function,\n// but have not yet been executed to call functions with options.\nexport interface UnloadedDescriptor {\n name: string | undefined;\n value: object | ((api: API, options: Options, dirname: string) => unknown);\n options: Options;\n dirname: string;\n alias: string;\n ownPass?: boolean;\n file?: {\n request: string;\n resolved: string;\n };\n}\n\nfunction isEqualDescriptor(\n a: UnloadedDescriptor,\n b: UnloadedDescriptor,\n): boolean {\n return (\n a.name === b.name &&\n a.value === b.value &&\n a.options === b.options &&\n a.dirname === b.dirname &&\n a.alias === b.alias &&\n a.ownPass === b.ownPass &&\n a.file?.request === b.file?.request &&\n a.file?.resolved === b.file?.resolved\n );\n}\n\nexport type ValidatedFile = {\n filepath: string;\n dirname: string;\n options: InputOptions;\n};\n\n// eslint-disable-next-line require-yield\nfunction* handlerOf(value: T): Handler {\n return value;\n}\n\nfunction optionsWithResolvedBrowserslistConfigFile(\n options: InputOptions,\n dirname: string,\n): InputOptions {\n if (typeof options.browserslistConfigFile === \"string\") {\n options.browserslistConfigFile = resolveBrowserslistConfigFile(\n options.browserslistConfigFile,\n dirname,\n );\n }\n return options;\n}\n\n/**\n * Create a set of descriptors from a given options object, preserving\n * descriptor identity based on the identity of the plugin/preset arrays\n * themselves, and potentially on the identity of the plugins/presets + options.\n */\nexport function createCachedDescriptors(\n dirname: string,\n options: InputOptions,\n alias: string,\n): OptionsAndDescriptors {\n const { plugins, presets, passPerPreset } = options;\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n plugins: plugins\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n createCachedPluginDescriptors(plugins, dirname)(alias)\n : () => handlerOf([]),\n presets: presets\n ? () =>\n // @ts-expect-error todo(flow->ts) ts complains about incorrect arguments\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n createCachedPresetDescriptors(presets, dirname)(alias)(\n !!passPerPreset,\n )\n : () => handlerOf([]),\n };\n}\n\n/**\n * Create a set of descriptors from a given options object, with consistent\n * identity for the descriptors, but not caching based on any specific identity.\n */\nexport function createUncachedDescriptors(\n dirname: string,\n options: InputOptions,\n alias: string,\n): OptionsAndDescriptors {\n return {\n options: optionsWithResolvedBrowserslistConfigFile(options, dirname),\n // The returned result here is cached to represent a config object in\n // memory, so we build and memoize the descriptors to ensure the same\n // values are returned consistently.\n plugins: once(() =>\n createPluginDescriptors(options.plugins || [], dirname, alias),\n ),\n presets: once(() =>\n createPresetDescriptors(\n options.presets || [],\n dirname,\n alias,\n !!options.passPerPreset,\n ),\n ),\n };\n}\n\nconst PRESET_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPresetDescriptors = makeWeakCacheSync(\n (items: PresetItem[], cache: CacheConfigurator) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCacheSync((alias: string) =>\n makeStrongCache(function* (\n passPerPreset: boolean,\n ): Handler[]> {\n const descriptors = yield* createPresetDescriptors(\n items,\n dirname,\n alias,\n passPerPreset,\n );\n return descriptors.map(\n // Items are cached using the overall preset array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PRESET_DESCRIPTOR_CACHE, desc),\n );\n }),\n );\n },\n);\n\nconst PLUGIN_DESCRIPTOR_CACHE = new WeakMap();\nconst createCachedPluginDescriptors = makeWeakCacheSync(\n (items: PluginItem[], cache: CacheConfigurator) => {\n const dirname = cache.using(dir => dir);\n return makeStrongCache(function* (\n alias: string,\n ): Handler[]> {\n const descriptors = yield* createPluginDescriptors(items, dirname, alias);\n return descriptors.map(\n // Items are cached using the overall plugin array identity when\n // possibly, but individual descriptors are also cached if a match\n // can be found in the previously-used descriptor lists.\n desc => loadCachedDescriptor(PLUGIN_DESCRIPTOR_CACHE, desc),\n );\n });\n },\n);\n\n/**\n * When no options object is given in a descriptor, this object is used\n * as a WeakMap key in order to have consistent identity.\n */\nconst DEFAULT_OPTIONS = {};\n\n/**\n * Given the cache and a descriptor, returns a matching descriptor from the\n * cache, or else returns the input descriptor and adds it to the cache for\n * next time.\n */\nfunction loadCachedDescriptor(\n cache: WeakMap[]>>,\n desc: UnloadedDescriptor,\n) {\n const { value, options = DEFAULT_OPTIONS } = desc;\n if (options === false) return desc;\n\n let cacheByOptions = cache.get(value);\n if (!cacheByOptions) {\n cacheByOptions = new WeakMap();\n cache.set(value, cacheByOptions);\n }\n\n let possibilities = cacheByOptions.get(options);\n if (!possibilities) {\n possibilities = [];\n cacheByOptions.set(options, possibilities);\n }\n\n if (!possibilities.includes(desc)) {\n const matches = possibilities.filter(possibility =>\n isEqualDescriptor(possibility, desc),\n );\n if (matches.length > 0) {\n return matches[0];\n }\n\n possibilities.push(desc);\n }\n\n return desc;\n}\n\nfunction* createPresetDescriptors(\n items: PresetItem[],\n dirname: string,\n alias: string,\n passPerPreset: boolean,\n): Handler[]> {\n return yield* createDescriptors(\n \"preset\",\n items,\n dirname,\n alias,\n passPerPreset,\n );\n}\n\nfunction* createPluginDescriptors(\n items: PluginItem[],\n dirname: string,\n alias: string,\n): Handler[]> {\n return yield* createDescriptors(\"plugin\", items, dirname, alias);\n}\n\nfunction* createDescriptors(\n type: Type,\n items: Type extends \"plugin\" ? PluginItem[] : PresetItem[],\n dirname: string,\n alias: string,\n ownPass?: boolean,\n): Handler<\n UnloadedDescriptor[]\n> {\n const descriptors = yield* gensync.all(\n items.map((item, index) =>\n createDescriptor(item, dirname, {\n type,\n alias: `${alias}$${index}`,\n ownPass: !!ownPass,\n }),\n ),\n );\n\n assertNoDuplicates(descriptors);\n\n return descriptors;\n}\n\n/**\n * Given a plugin/preset item, resolve it into a standard format.\n */\nexport function* createDescriptor(\n pair: PluginItem | PresetItem,\n dirname: string,\n {\n type,\n alias,\n ownPass,\n }: {\n type?: \"plugin\" | \"preset\";\n alias: string;\n ownPass?: boolean;\n },\n): Handler> {\n const desc = getItemDescriptor(pair);\n if (desc) {\n return desc;\n }\n\n let name;\n let options;\n let value = pair;\n if (Array.isArray(value)) {\n if (value.length === 3) {\n [value, options, name] = value;\n } else {\n [value, options] = value;\n }\n }\n\n let file = undefined;\n let filepath = null;\n if (typeof value === \"string\") {\n if (typeof type !== \"string\") {\n throw new Error(\n \"To resolve a string-based item, the type of item must be given\",\n );\n }\n const resolver = type === \"plugin\" ? loadPlugin : loadPreset;\n const request = value;\n\n // @ts-expect-error value must be a PluginItem\n ({ filepath, value } = yield* resolver(value, dirname));\n\n file = {\n request,\n resolved: filepath,\n };\n }\n\n if (!value) {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n throw new Error(`Unexpected falsy value: ${String(value)}`);\n }\n\n // @ts-expect-error Handle transpiled ES6 modules.\n if (typeof value === \"object\" && value.__esModule) {\n // @ts-expect-error Handle transpiled ES6 modules.\n if (value.default) {\n // @ts-expect-error Handle transpiled ES6 modules.\n value = value.default;\n } else {\n throw new Error(\"Must export a default export when using ES6 modules.\");\n }\n }\n\n if (typeof value !== \"object\" && typeof value !== \"function\") {\n throw new Error(\n `Unsupported format: ${typeof value}. Expected an object or a function.`,\n );\n }\n\n if (filepath !== null && typeof value === \"object\" && value) {\n // We allow object values for plugins/presets nested directly within a\n // config object, because it can be useful to define them in nested\n // configuration contexts.\n throw new Error(\n `Plugin/Preset files are not allowed to export objects, only functions. In ${filepath}`,\n );\n }\n\n return {\n name,\n alias: filepath || alias,\n value,\n options,\n dirname,\n ownPass,\n file,\n };\n}\n\nfunction assertNoDuplicates(items: UnloadedDescriptor[]): void {\n const map = new Map();\n\n for (const item of items) {\n if (typeof item.value !== \"function\") continue;\n\n let nameMap = map.get(item.value);\n if (!nameMap) {\n nameMap = new Set();\n map.set(item.value, nameMap);\n }\n\n if (nameMap.has(item.name)) {\n const conflicts = items.filter(i => i.value === item.value);\n throw new Error(\n [\n `Duplicate plugin/preset detected.`,\n `If you'd like to use two separate instances of a plugin,`,\n `they need separate names, e.g.`,\n ``,\n ` plugins: [`,\n ` ['some-plugin', {}],`,\n ` ['some-plugin', {}, 'some unique name'],`,\n ` ]`,\n ``,\n `Duplicates detected are:`,\n `${JSON.stringify(conflicts, null, 2)}`,\n ].join(\"\\n\"),\n );\n }\n\n nameMap.add(item.name);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/configuration.js b/node_modules/@babel/core/lib/config/files/configuration.js new file mode 100644 index 0000000..582fc32 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/configuration.js @@ -0,0 +1,290 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ROOT_CONFIG_FILENAMES = void 0; +exports.findConfigUpwards = findConfigUpwards; +exports.findRelativeConfig = findRelativeConfig; +exports.findRootConfig = findRootConfig; +exports.loadConfig = loadConfig; +exports.resolveShowConfigPath = resolveShowConfigPath; +function _debug() { + const data = require("debug"); + _debug = function () { + return data; + }; + return data; +} +function _fs() { + const data = require("fs"); + _fs = function () { + return data; + }; + return data; +} +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _json() { + const data = require("json5"); + _json = function () { + return data; + }; + return data; +} +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _caching = require("../caching.js"); +var _configApi = require("../helpers/config-api.js"); +var _utils = require("./utils.js"); +var _moduleTypes = require("./module-types.js"); +var _patternToRegex = require("../pattern-to-regex.js"); +var _configError = require("../../errors/config-error.js"); +var fs = require("../../gensync-utils/fs.js"); +require("module"); +var _rewriteStackTrace = require("../../errors/rewrite-stack-trace.js"); +var _async = require("../../gensync-utils/async.js"); +const debug = _debug()("babel:config:loading:files:configuration"); +const ROOT_CONFIG_FILENAMES = exports.ROOT_CONFIG_FILENAMES = ["babel.config.js", "babel.config.cjs", "babel.config.mjs", "babel.config.json", "babel.config.cts", "babel.config.ts", "babel.config.mts"]; +const RELATIVE_CONFIG_FILENAMES = [".babelrc", ".babelrc.js", ".babelrc.cjs", ".babelrc.mjs", ".babelrc.json", ".babelrc.cts"]; +const BABELIGNORE_FILENAME = ".babelignore"; +const runConfig = (0, _caching.makeWeakCache)(function* runConfig(options, cache) { + yield* []; + return { + options: (0, _rewriteStackTrace.endHiddenCallStack)(options)((0, _configApi.makeConfigAPI)(cache)), + cacheNeedsConfiguration: !cache.configured() + }; +}); +function* readConfigCode(filepath, data) { + if (!_fs().existsSync(filepath)) return null; + let options = yield* (0, _moduleTypes.default)(filepath, (yield* (0, _async.isAsync)()) ? "auto" : "require", "You appear to be using a native ECMAScript module configuration " + "file, which is only supported when running Babel asynchronously " + "or when using the Node.js `--experimental-require-module` flag.", "You appear to be using a configuration file that contains top-level " + "await, which is only supported when running Babel asynchronously."); + let cacheNeedsConfiguration = false; + if (typeof options === "function") { + ({ + options, + cacheNeedsConfiguration + } = yield* runConfig(options, data)); + } + if (!options || typeof options !== "object" || Array.isArray(options)) { + throw new _configError.default(`Configuration should be an exported JavaScript object.`, filepath); + } + if (typeof options.then === "function") { + options.catch == null || options.catch(() => {}); + throw new _configError.default(`You appear to be using an async configuration, ` + `which your current version of Babel does not support. ` + `We may add support for this in the future, ` + `but if you're on the most recent version of @babel/core and still ` + `seeing this error, then you'll need to synchronously return your config.`, filepath); + } + if (cacheNeedsConfiguration) throwConfigError(filepath); + return buildConfigFileObject(options, filepath); +} +const cfboaf = new WeakMap(); +function buildConfigFileObject(options, filepath) { + let configFilesByFilepath = cfboaf.get(options); + if (!configFilesByFilepath) { + cfboaf.set(options, configFilesByFilepath = new Map()); + } + let configFile = configFilesByFilepath.get(filepath); + if (!configFile) { + configFile = { + filepath, + dirname: _path().dirname(filepath), + options + }; + configFilesByFilepath.set(filepath, configFile); + } + return configFile; +} +const packageToBabelConfig = (0, _caching.makeWeakCacheSync)(file => { + const babel = file.options.babel; + if (babel === undefined) return null; + if (typeof babel !== "object" || Array.isArray(babel) || babel === null) { + throw new _configError.default(`.babel property must be an object`, file.filepath); + } + return { + filepath: file.filepath, + dirname: file.dirname, + options: babel + }; +}); +const readConfigJSON5 = (0, _utils.makeStaticFileCache)((filepath, content) => { + let options; + try { + options = _json().parse(content); + } catch (err) { + throw new _configError.default(`Error while parsing config - ${err.message}`, filepath); + } + if (!options) throw new _configError.default(`No config detected`, filepath); + if (typeof options !== "object") { + throw new _configError.default(`Config returned typeof ${typeof options}`, filepath); + } + if (Array.isArray(options)) { + throw new _configError.default(`Expected config object but found array`, filepath); + } + delete options.$schema; + return { + filepath, + dirname: _path().dirname(filepath), + options + }; +}); +const readIgnoreConfig = (0, _utils.makeStaticFileCache)((filepath, content) => { + const ignoreDir = _path().dirname(filepath); + const ignorePatterns = content.split("\n").map(line => line.replace(/#.*$/, "").trim()).filter(Boolean); + for (const pattern of ignorePatterns) { + if (pattern.startsWith("!")) { + throw new _configError.default(`Negation of file paths is not supported.`, filepath); + } + } + return { + filepath, + dirname: _path().dirname(filepath), + ignore: ignorePatterns.map(pattern => (0, _patternToRegex.default)(pattern, ignoreDir)) + }; +}); +function findConfigUpwards(rootDir) { + let dirname = rootDir; + for (;;) { + for (const filename of ROOT_CONFIG_FILENAMES) { + if (_fs().existsSync(_path().join(dirname, filename))) { + return dirname; + } + } + const nextDir = _path().dirname(dirname); + if (dirname === nextDir) break; + dirname = nextDir; + } + return null; +} +function* findRelativeConfig(packageData, envName, caller) { + let config = null; + let ignore = null; + const dirname = _path().dirname(packageData.filepath); + for (const loc of packageData.directories) { + if (!config) { + var _packageData$pkg; + config = yield* loadOneConfig(RELATIVE_CONFIG_FILENAMES, loc, envName, caller, ((_packageData$pkg = packageData.pkg) == null ? void 0 : _packageData$pkg.dirname) === loc ? packageToBabelConfig(packageData.pkg) : null); + } + if (!ignore) { + const ignoreLoc = _path().join(loc, BABELIGNORE_FILENAME); + ignore = yield* readIgnoreConfig(ignoreLoc); + if (ignore) { + debug("Found ignore %o from %o.", ignore.filepath, dirname); + } + } + } + return { + config, + ignore + }; +} +function findRootConfig(dirname, envName, caller) { + return loadOneConfig(ROOT_CONFIG_FILENAMES, dirname, envName, caller); +} +function* loadOneConfig(names, dirname, envName, caller, previousConfig = null) { + const configs = yield* _gensync().all(names.map(filename => readConfig(_path().join(dirname, filename), envName, caller))); + const config = configs.reduce((previousConfig, config) => { + if (config && previousConfig) { + throw new _configError.default(`Multiple configuration files found. Please remove one:\n` + ` - ${_path().basename(previousConfig.filepath)}\n` + ` - ${config.filepath}\n` + `from ${dirname}`); + } + return config || previousConfig; + }, previousConfig); + if (config) { + debug("Found configuration %o from %o.", config.filepath, dirname); + } + return config; +} +function* loadConfig(name, dirname, envName, caller) { + const filepath = (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, { + paths: [b] + }, M = require("module")) => { + let f = M._findPath(r, M._nodeModulePaths(b).concat(b)); + if (f) return f; + f = new Error(`Cannot resolve module '${r}'`); + f.code = "MODULE_NOT_FOUND"; + throw f; + })(name, { + paths: [dirname] + }); + const conf = yield* readConfig(filepath, envName, caller); + if (!conf) { + throw new _configError.default(`Config file contains no configuration data`, filepath); + } + debug("Loaded config %o from %o.", name, dirname); + return conf; +} +function readConfig(filepath, envName, caller) { + const ext = _path().extname(filepath); + switch (ext) { + case ".js": + case ".cjs": + case ".mjs": + case ".ts": + case ".cts": + case ".mts": + return readConfigCode(filepath, { + envName, + caller + }); + default: + return readConfigJSON5(filepath); + } +} +function* resolveShowConfigPath(dirname) { + const targetPath = process.env.BABEL_SHOW_CONFIG_FOR; + if (targetPath != null) { + const absolutePath = _path().resolve(dirname, targetPath); + const stats = yield* fs.stat(absolutePath); + if (!stats.isFile()) { + throw new Error(`${absolutePath}: BABEL_SHOW_CONFIG_FOR must refer to a regular file, directories are not supported.`); + } + return absolutePath; + } + return null; +} +function throwConfigError(filepath) { + throw new _configError.default(`\ +Caching was left unconfigured. Babel's plugins, presets, and .babelrc.js files can be configured +for various types of caching, using the first param of their handler functions: + +module.exports = function(api) { + // The API exposes the following: + + // Cache the returned value forever and don't call this function again. + api.cache(true); + + // Don't cache at all. Not recommended because it will be very slow. + api.cache(false); + + // Cached based on the value of some function. If this function returns a value different from + // a previously-encountered value, the plugins will re-evaluate. + var env = api.cache(() => process.env.NODE_ENV); + + // If testing for a specific env, we recommend specifics to avoid instantiating a plugin for + // any possible NODE_ENV value that might come up during plugin execution. + var isProd = api.cache(() => process.env.NODE_ENV === "production"); + + // .cache(fn) will perform a linear search though instances to find the matching plugin based + // based on previous instantiated plugins. If you want to recreate the plugin and discard the + // previous instance whenever something changes, you may use: + var isProd = api.cache.invalidate(() => process.env.NODE_ENV === "production"); + + // Note, we also expose the following more-verbose versions of the above examples: + api.cache.forever(); // api.cache(true) + api.cache.never(); // api.cache(false) + api.cache.using(fn); // api.cache(fn) + + // Return the value that will be cached. + return { }; +};`, filepath); +} +0 && 0; + +//# sourceMappingURL=configuration.js.map diff --git a/node_modules/@babel/core/lib/config/files/configuration.js.map b/node_modules/@babel/core/lib/config/files/configuration.js.map new file mode 100644 index 0000000..07c99ef --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/configuration.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_debug","data","require","_fs","_path","_json","_gensync","_caching","_configApi","_utils","_moduleTypes","_patternToRegex","_configError","fs","_rewriteStackTrace","_async","debug","buildDebug","ROOT_CONFIG_FILENAMES","exports","RELATIVE_CONFIG_FILENAMES","BABELIGNORE_FILENAME","runConfig","makeWeakCache","options","cache","endHiddenCallStack","makeConfigAPI","cacheNeedsConfiguration","configured","readConfigCode","filepath","nodeFs","existsSync","loadCodeDefault","isAsync","Array","isArray","ConfigError","then","catch","throwConfigError","buildConfigFileObject","cfboaf","WeakMap","configFilesByFilepath","get","set","Map","configFile","dirname","path","packageToBabelConfig","makeWeakCacheSync","file","babel","undefined","readConfigJSON5","makeStaticFileCache","content","json5","parse","err","message","$schema","readIgnoreConfig","ignoreDir","ignorePatterns","split","map","line","replace","trim","filter","Boolean","pattern","startsWith","ignore","pathPatternToRegex","findConfigUpwards","rootDir","filename","join","nextDir","findRelativeConfig","packageData","envName","caller","config","loc","directories","_packageData$pkg","loadOneConfig","pkg","ignoreLoc","findRootConfig","names","previousConfig","configs","gensync","all","readConfig","reduce","basename","loadConfig","name","v","w","process","versions","node","resolve","r","paths","b","M","f","_findPath","_nodeModulePaths","concat","Error","code","conf","ext","extname","resolveShowConfigPath","targetPath","env","BABEL_SHOW_CONFIG_FOR","absolutePath","stats","stat","isFile"],"sources":["../../../src/config/files/configuration.ts"],"sourcesContent":["import buildDebug from \"debug\";\nimport nodeFs from \"node:fs\";\nimport path from \"node:path\";\nimport json5 from \"json5\";\nimport gensync from \"gensync\";\nimport type { Handler } from \"gensync\";\nimport { makeWeakCache, makeWeakCacheSync } from \"../caching.ts\";\nimport type { CacheConfigurator } from \"../caching.ts\";\nimport { makeConfigAPI } from \"../helpers/config-api.ts\";\nimport type { ConfigAPI } from \"../helpers/config-api.ts\";\nimport { makeStaticFileCache } from \"./utils.ts\";\nimport loadCodeDefault from \"./module-types.ts\";\nimport pathPatternToRegex from \"../pattern-to-regex.ts\";\nimport type { FilePackageData, RelativeConfig, ConfigFile } from \"./types.ts\";\nimport type { CallerMetadata, InputOptions } from \"../validation/options.ts\";\nimport ConfigError from \"../../errors/config-error.ts\";\n\nimport * as fs from \"../../gensync-utils/fs.ts\";\n\nimport { createRequire } from \"node:module\";\nimport { endHiddenCallStack } from \"../../errors/rewrite-stack-trace.ts\";\nimport { isAsync } from \"../../gensync-utils/async.ts\";\nconst require = createRequire(import.meta.url);\n\nconst debug = buildDebug(\"babel:config:loading:files:configuration\");\n\nexport const ROOT_CONFIG_FILENAMES = [\n \"babel.config.js\",\n \"babel.config.cjs\",\n \"babel.config.mjs\",\n \"babel.config.json\",\n \"babel.config.cts\",\n \"babel.config.ts\",\n \"babel.config.mts\",\n];\nconst RELATIVE_CONFIG_FILENAMES = [\n \".babelrc\",\n \".babelrc.js\",\n \".babelrc.cjs\",\n \".babelrc.mjs\",\n \".babelrc.json\",\n \".babelrc.cts\",\n];\n\nconst BABELIGNORE_FILENAME = \".babelignore\";\n\ntype ConfigCacheData = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\n\nconst runConfig = makeWeakCache(function* runConfig(\n options: Function,\n cache: CacheConfigurator,\n): Handler<{\n options: InputOptions | null;\n cacheNeedsConfiguration: boolean;\n}> {\n // if we want to make it possible to use async configs\n yield* [];\n\n return {\n options: endHiddenCallStack(options as any as (api: ConfigAPI) => unknown)(\n makeConfigAPI(cache),\n ),\n cacheNeedsConfiguration: !cache.configured(),\n };\n});\n\nfunction* readConfigCode(\n filepath: string,\n data: ConfigCacheData,\n): Handler {\n if (!nodeFs.existsSync(filepath)) return null;\n\n let options = yield* loadCodeDefault(\n filepath,\n (yield* isAsync()) ? \"auto\" : \"require\",\n \"You appear to be using a native ECMAScript module configuration \" +\n \"file, which is only supported when running Babel asynchronously \" +\n \"or when using the Node.js `--experimental-require-module` flag.\",\n \"You appear to be using a configuration file that contains top-level \" +\n \"await, which is only supported when running Babel asynchronously.\",\n );\n\n let cacheNeedsConfiguration = false;\n if (typeof options === \"function\") {\n ({ options, cacheNeedsConfiguration } = yield* runConfig(options, data));\n }\n\n if (!options || typeof options !== \"object\" || Array.isArray(options)) {\n throw new ConfigError(\n `Configuration should be an exported JavaScript object.`,\n filepath,\n );\n }\n\n // @ts-expect-error todo(flow->ts)\n if (typeof options.then === \"function\") {\n // @ts-expect-error We use ?. in case options is a thenable but not a promise\n options.catch?.(() => {});\n throw new ConfigError(\n `You appear to be using an async configuration, ` +\n `which your current version of Babel does not support. ` +\n `We may add support for this in the future, ` +\n `but if you're on the most recent version of @babel/core and still ` +\n `seeing this error, then you'll need to synchronously return your config.`,\n filepath,\n );\n }\n\n if (cacheNeedsConfiguration) throwConfigError(filepath);\n\n return buildConfigFileObject(options, filepath);\n}\n\n// We cache the generated ConfigFile object rather than creating a new one\n// every time, so that it can be used as a cache key in other functions.\nconst cfboaf /* configFilesByOptionsAndFilepath */ = new WeakMap<\n InputOptions,\n Map\n>();\nfunction buildConfigFileObject(\n options: InputOptions,\n filepath: string,\n): ConfigFile {\n let configFilesByFilepath = cfboaf.get(options);\n if (!configFilesByFilepath) {\n cfboaf.set(options, (configFilesByFilepath = new Map()));\n }\n\n let configFile = configFilesByFilepath.get(filepath);\n if (!configFile) {\n configFile = {\n filepath,\n dirname: path.dirname(filepath),\n options,\n };\n configFilesByFilepath.set(filepath, configFile);\n }\n\n return configFile;\n}\n\nconst packageToBabelConfig = makeWeakCacheSync(\n (file: ConfigFile): ConfigFile | null => {\n const babel: unknown = file.options.babel;\n\n if (babel === undefined) return null;\n\n if (typeof babel !== \"object\" || Array.isArray(babel) || babel === null) {\n throw new ConfigError(`.babel property must be an object`, file.filepath);\n }\n\n return {\n filepath: file.filepath,\n dirname: file.dirname,\n options: babel,\n };\n },\n);\n\nconst readConfigJSON5 = makeStaticFileCache((filepath, content): ConfigFile => {\n let options;\n try {\n options = json5.parse(content);\n } catch (err) {\n throw new ConfigError(\n `Error while parsing config - ${err.message}`,\n filepath,\n );\n }\n\n if (!options) throw new ConfigError(`No config detected`, filepath);\n\n if (typeof options !== \"object\") {\n throw new ConfigError(`Config returned typeof ${typeof options}`, filepath);\n }\n if (Array.isArray(options)) {\n throw new ConfigError(`Expected config object but found array`, filepath);\n }\n\n delete options.$schema;\n\n return {\n filepath,\n dirname: path.dirname(filepath),\n options,\n };\n});\n\nconst readIgnoreConfig = makeStaticFileCache((filepath, content) => {\n const ignoreDir = path.dirname(filepath);\n const ignorePatterns = content\n .split(\"\\n\")\n .map(line =>\n line.replace(process.env.BABEL_8_BREAKING ? /^#.*$/ : /#.*$/, \"\").trim(),\n )\n .filter(Boolean);\n\n for (const pattern of ignorePatterns) {\n if (pattern.startsWith(\"!\")) {\n throw new ConfigError(\n `Negation of file paths is not supported.`,\n filepath,\n );\n }\n }\n\n return {\n filepath,\n dirname: path.dirname(filepath),\n ignore: ignorePatterns.map(pattern =>\n pathPatternToRegex(pattern, ignoreDir),\n ),\n };\n});\n\nexport function findConfigUpwards(rootDir: string): string | null {\n let dirname = rootDir;\n for (;;) {\n for (const filename of ROOT_CONFIG_FILENAMES) {\n if (nodeFs.existsSync(path.join(dirname, filename))) {\n return dirname;\n }\n }\n\n const nextDir = path.dirname(dirname);\n if (dirname === nextDir) break;\n dirname = nextDir;\n }\n\n return null;\n}\n\nexport function* findRelativeConfig(\n packageData: FilePackageData,\n envName: string,\n caller: CallerMetadata | undefined,\n): Handler {\n let config = null;\n let ignore = null;\n\n const dirname = path.dirname(packageData.filepath);\n\n for (const loc of packageData.directories) {\n if (!config) {\n config = yield* loadOneConfig(\n RELATIVE_CONFIG_FILENAMES,\n loc,\n envName,\n caller,\n packageData.pkg?.dirname === loc\n ? packageToBabelConfig(packageData.pkg)\n : null,\n );\n }\n\n if (!ignore) {\n const ignoreLoc = path.join(loc, BABELIGNORE_FILENAME);\n ignore = yield* readIgnoreConfig(ignoreLoc);\n\n if (ignore) {\n debug(\"Found ignore %o from %o.\", ignore.filepath, dirname);\n }\n }\n }\n\n return { config, ignore };\n}\n\nexport function findRootConfig(\n dirname: string,\n envName: string,\n caller: CallerMetadata | undefined,\n): Handler {\n return loadOneConfig(ROOT_CONFIG_FILENAMES, dirname, envName, caller);\n}\n\nfunction* loadOneConfig(\n names: string[],\n dirname: string,\n envName: string,\n caller: CallerMetadata | undefined,\n previousConfig: ConfigFile | null = null,\n): Handler {\n const configs = yield* gensync.all(\n names.map(filename =>\n readConfig(path.join(dirname, filename), envName, caller),\n ),\n );\n const config = configs.reduce((previousConfig: ConfigFile | null, config) => {\n if (config && previousConfig) {\n throw new ConfigError(\n `Multiple configuration files found. Please remove one:\\n` +\n ` - ${path.basename(previousConfig.filepath)}\\n` +\n ` - ${config.filepath}\\n` +\n `from ${dirname}`,\n );\n }\n\n return config || previousConfig;\n }, previousConfig);\n\n if (config) {\n debug(\"Found configuration %o from %o.\", config.filepath, dirname);\n }\n return config;\n}\n\nexport function* loadConfig(\n name: string,\n dirname: string,\n envName: string,\n caller: CallerMetadata | undefined,\n): Handler {\n const filepath = require.resolve(name, { paths: [dirname] });\n\n const conf = yield* readConfig(filepath, envName, caller);\n if (!conf) {\n throw new ConfigError(\n `Config file contains no configuration data`,\n filepath,\n );\n }\n\n debug(\"Loaded config %o from %o.\", name, dirname);\n return conf;\n}\n\n/**\n * Read the given config file, returning the result. Returns null if no config was found, but will\n * throw if there are parsing errors while loading a config.\n */\nfunction readConfig(\n filepath: string,\n envName: string,\n caller: CallerMetadata | undefined,\n): Handler {\n const ext = path.extname(filepath);\n switch (ext) {\n case \".js\":\n case \".cjs\":\n case \".mjs\":\n case \".ts\":\n case \".cts\":\n case \".mts\":\n return readConfigCode(filepath, { envName, caller });\n default:\n return readConfigJSON5(filepath);\n }\n}\n\nexport function* resolveShowConfigPath(\n dirname: string,\n): Handler {\n const targetPath = process.env.BABEL_SHOW_CONFIG_FOR;\n if (targetPath != null) {\n const absolutePath = path.resolve(dirname, targetPath);\n const stats = yield* fs.stat(absolutePath);\n if (!stats.isFile()) {\n throw new Error(\n `${absolutePath}: BABEL_SHOW_CONFIG_FOR must refer to a regular file, directories are not supported.`,\n );\n }\n return absolutePath;\n }\n return null;\n}\n\nfunction throwConfigError(filepath: string): never {\n throw new ConfigError(\n `\\\nCaching was left unconfigured. Babel's plugins, presets, and .babelrc.js files can be configured\nfor various types of caching, using the first param of their handler functions:\n\nmodule.exports = function(api) {\n // The API exposes the following:\n\n // Cache the returned value forever and don't call this function again.\n api.cache(true);\n\n // Don't cache at all. Not recommended because it will be very slow.\n api.cache(false);\n\n // Cached based on the value of some function. If this function returns a value different from\n // a previously-encountered value, the plugins will re-evaluate.\n var env = api.cache(() => process.env.NODE_ENV);\n\n // If testing for a specific env, we recommend specifics to avoid instantiating a plugin for\n // any possible NODE_ENV value that might come up during plugin execution.\n var isProd = api.cache(() => process.env.NODE_ENV === \"production\");\n\n // .cache(fn) will perform a linear search though instances to find the matching plugin based\n // based on previous instantiated plugins. If you want to recreate the plugin and discard the\n // previous instance whenever something changes, you may use:\n var isProd = api.cache.invalidate(() => process.env.NODE_ENV === \"production\");\n\n // Note, we also expose the following more-verbose versions of the above examples:\n api.cache.forever(); // api.cache(true)\n api.cache.never(); // api.cache(false)\n api.cache.using(fn); // api.cache(fn)\n\n // Return the value that will be cached.\n return { };\n};`,\n filepath,\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/import.cjs b/node_modules/@babel/core/lib/config/files/import.cjs new file mode 100644 index 0000000..46fa5d5 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/import.cjs @@ -0,0 +1,6 @@ +module.exports = function import_(filepath) { + return import(filepath); +}; +0 && 0; + +//# sourceMappingURL=import.cjs.map diff --git a/node_modules/@babel/core/lib/config/files/import.cjs.map b/node_modules/@babel/core/lib/config/files/import.cjs.map new file mode 100644 index 0000000..2200da8 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/import.cjs.map @@ -0,0 +1 @@ +{"version":3,"names":["module","exports","import_","filepath"],"sources":["../../../src/config/files/import.cjs"],"sourcesContent":["// We keep this in a separate file so that in older node versions, where\n// import() isn't supported, we can try/catch around the require() call\n// when loading this file.\n\nmodule.exports = function import_(filepath) {\n return import(filepath);\n};\n"],"mappings":"AAIAA,MAAM,CAACC,OAAO,GAAG,SAASC,OAAOA,CAACC,QAAQ,EAAE;EAC1C,OAAO,OAAOA,QAAQ,CAAC;AACzB,CAAC;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/index-browser.js b/node_modules/@babel/core/lib/config/files/index-browser.js new file mode 100644 index 0000000..d8ba7db --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/index-browser.js @@ -0,0 +1,58 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ROOT_CONFIG_FILENAMES = void 0; +exports.findConfigUpwards = findConfigUpwards; +exports.findPackageData = findPackageData; +exports.findRelativeConfig = findRelativeConfig; +exports.findRootConfig = findRootConfig; +exports.loadConfig = loadConfig; +exports.loadPlugin = loadPlugin; +exports.loadPreset = loadPreset; +exports.resolvePlugin = resolvePlugin; +exports.resolvePreset = resolvePreset; +exports.resolveShowConfigPath = resolveShowConfigPath; +function findConfigUpwards(rootDir) { + return null; +} +function* findPackageData(filepath) { + return { + filepath, + directories: [], + pkg: null, + isPackage: false + }; +} +function* findRelativeConfig(pkgData, envName, caller) { + return { + config: null, + ignore: null + }; +} +function* findRootConfig(dirname, envName, caller) { + return null; +} +function* loadConfig(name, dirname, envName, caller) { + throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`); +} +function* resolveShowConfigPath(dirname) { + return null; +} +const ROOT_CONFIG_FILENAMES = exports.ROOT_CONFIG_FILENAMES = []; +function resolvePlugin(name, dirname) { + return null; +} +function resolvePreset(name, dirname) { + return null; +} +function loadPlugin(name, dirname) { + throw new Error(`Cannot load plugin ${name} relative to ${dirname} in a browser`); +} +function loadPreset(name, dirname) { + throw new Error(`Cannot load preset ${name} relative to ${dirname} in a browser`); +} +0 && 0; + +//# sourceMappingURL=index-browser.js.map diff --git a/node_modules/@babel/core/lib/config/files/index-browser.js.map b/node_modules/@babel/core/lib/config/files/index-browser.js.map new file mode 100644 index 0000000..e10ddee --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/index-browser.js.map @@ -0,0 +1 @@ +{"version":3,"names":["findConfigUpwards","rootDir","findPackageData","filepath","directories","pkg","isPackage","findRelativeConfig","pkgData","envName","caller","config","ignore","findRootConfig","dirname","loadConfig","name","Error","resolveShowConfigPath","ROOT_CONFIG_FILENAMES","exports","resolvePlugin","resolvePreset","loadPlugin","loadPreset"],"sources":["../../../src/config/files/index-browser.ts"],"sourcesContent":["/* c8 ignore start */\n\nimport type { Handler } from \"gensync\";\n\nimport type {\n ConfigFile,\n IgnoreFile,\n RelativeConfig,\n FilePackageData,\n} from \"./types.ts\";\n\nimport type { CallerMetadata } from \"../validation/options.ts\";\n\nexport type { ConfigFile, IgnoreFile, RelativeConfig, FilePackageData };\n\nexport function findConfigUpwards(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n rootDir: string,\n): string | null {\n return null;\n}\n\n// eslint-disable-next-line require-yield\nexport function* findPackageData(filepath: string): Handler {\n return {\n filepath,\n directories: [],\n pkg: null,\n isPackage: false,\n };\n}\n\n// eslint-disable-next-line require-yield\nexport function* findRelativeConfig(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n pkgData: FilePackageData,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n envName: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n caller: CallerMetadata | undefined,\n): Handler {\n return { config: null, ignore: null };\n}\n\n// eslint-disable-next-line require-yield\nexport function* findRootConfig(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n dirname: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n envName: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n caller: CallerMetadata | undefined,\n): Handler {\n return null;\n}\n\n// eslint-disable-next-line require-yield\nexport function* loadConfig(\n name: string,\n dirname: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n envName: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n caller: CallerMetadata | undefined,\n): Handler {\n throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`);\n}\n\n// eslint-disable-next-line require-yield\nexport function* resolveShowConfigPath(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n dirname: string,\n): Handler {\n return null;\n}\n\nexport const ROOT_CONFIG_FILENAMES: string[] = [];\n\ntype Resolved =\n | { loader: \"require\"; filepath: string }\n | { loader: \"import\"; filepath: string };\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function resolvePlugin(name: string, dirname: string): Resolved | null {\n return null;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function resolvePreset(name: string, dirname: string): Resolved | null {\n return null;\n}\n\nexport function loadPlugin(\n name: string,\n dirname: string,\n): Handler<{\n filepath: string;\n value: unknown;\n}> {\n throw new Error(\n `Cannot load plugin ${name} relative to ${dirname} in a browser`,\n );\n}\n\nexport function loadPreset(\n name: string,\n dirname: string,\n): Handler<{\n filepath: string;\n value: unknown;\n}> {\n throw new Error(\n `Cannot load preset ${name} relative to ${dirname} in a browser`,\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAeO,SAASA,iBAAiBA,CAE/BC,OAAe,EACA;EACf,OAAO,IAAI;AACb;AAGO,UAAUC,eAAeA,CAACC,QAAgB,EAA4B;EAC3E,OAAO;IACLA,QAAQ;IACRC,WAAW,EAAE,EAAE;IACfC,GAAG,EAAE,IAAI;IACTC,SAAS,EAAE;EACb,CAAC;AACH;AAGO,UAAUC,kBAAkBA,CAEjCC,OAAwB,EAExBC,OAAe,EAEfC,MAAkC,EACT;EACzB,OAAO;IAAEC,MAAM,EAAE,IAAI;IAAEC,MAAM,EAAE;EAAK,CAAC;AACvC;AAGO,UAAUC,cAAcA,CAE7BC,OAAe,EAEfL,OAAe,EAEfC,MAAkC,EACN;EAC5B,OAAO,IAAI;AACb;AAGO,UAAUK,UAAUA,CACzBC,IAAY,EACZF,OAAe,EAEfL,OAAe,EAEfC,MAAkC,EACb;EACrB,MAAM,IAAIO,KAAK,CAAC,eAAeD,IAAI,gBAAgBF,OAAO,eAAe,CAAC;AAC5E;AAGO,UAAUI,qBAAqBA,CAEpCJ,OAAe,EACS;EACxB,OAAO,IAAI;AACb;AAEO,MAAMK,qBAA+B,GAAAC,OAAA,CAAAD,qBAAA,GAAG,EAAE;AAO1C,SAASE,aAAaA,CAACL,IAAY,EAAEF,OAAe,EAAmB;EAC5E,OAAO,IAAI;AACb;AAGO,SAASQ,aAAaA,CAACN,IAAY,EAAEF,OAAe,EAAmB;EAC5E,OAAO,IAAI;AACb;AAEO,SAASS,UAAUA,CACxBP,IAAY,EACZF,OAAe,EAId;EACD,MAAM,IAAIG,KAAK,CACb,sBAAsBD,IAAI,gBAAgBF,OAAO,eACnD,CAAC;AACH;AAEO,SAASU,UAAUA,CACxBR,IAAY,EACZF,OAAe,EAId;EACD,MAAM,IAAIG,KAAK,CACb,sBAAsBD,IAAI,gBAAgBF,OAAO,eACnD,CAAC;AACH;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/index.js b/node_modules/@babel/core/lib/config/files/index.js new file mode 100644 index 0000000..8750f40 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/index.js @@ -0,0 +1,78 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "ROOT_CONFIG_FILENAMES", { + enumerable: true, + get: function () { + return _configuration.ROOT_CONFIG_FILENAMES; + } +}); +Object.defineProperty(exports, "findConfigUpwards", { + enumerable: true, + get: function () { + return _configuration.findConfigUpwards; + } +}); +Object.defineProperty(exports, "findPackageData", { + enumerable: true, + get: function () { + return _package.findPackageData; + } +}); +Object.defineProperty(exports, "findRelativeConfig", { + enumerable: true, + get: function () { + return _configuration.findRelativeConfig; + } +}); +Object.defineProperty(exports, "findRootConfig", { + enumerable: true, + get: function () { + return _configuration.findRootConfig; + } +}); +Object.defineProperty(exports, "loadConfig", { + enumerable: true, + get: function () { + return _configuration.loadConfig; + } +}); +Object.defineProperty(exports, "loadPlugin", { + enumerable: true, + get: function () { + return _plugins.loadPlugin; + } +}); +Object.defineProperty(exports, "loadPreset", { + enumerable: true, + get: function () { + return _plugins.loadPreset; + } +}); +Object.defineProperty(exports, "resolvePlugin", { + enumerable: true, + get: function () { + return _plugins.resolvePlugin; + } +}); +Object.defineProperty(exports, "resolvePreset", { + enumerable: true, + get: function () { + return _plugins.resolvePreset; + } +}); +Object.defineProperty(exports, "resolveShowConfigPath", { + enumerable: true, + get: function () { + return _configuration.resolveShowConfigPath; + } +}); +var _package = require("./package.js"); +var _configuration = require("./configuration.js"); +var _plugins = require("./plugins.js"); +({}); +0 && 0; + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/core/lib/config/files/index.js.map b/node_modules/@babel/core/lib/config/files/index.js.map new file mode 100644 index 0000000..832135f --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_package","require","_configuration","_plugins"],"sources":["../../../src/config/files/index.ts"],"sourcesContent":["type indexBrowserType = typeof import(\"./index-browser\");\ntype indexType = typeof import(\"./index\");\n\n// Kind of gross, but essentially asserting that the exports of this module are the same as the\n// exports of index-browser, since this file may be replaced at bundle time with index-browser.\n// eslint-disable-next-line @typescript-eslint/no-unused-expressions\n({}) as any as indexBrowserType as indexType;\n\nexport { findPackageData } from \"./package.ts\";\n\nexport {\n findConfigUpwards,\n findRelativeConfig,\n findRootConfig,\n loadConfig,\n resolveShowConfigPath,\n ROOT_CONFIG_FILENAMES,\n} from \"./configuration.ts\";\nexport type {\n ConfigFile,\n IgnoreFile,\n RelativeConfig,\n FilePackageData,\n} from \"./types.ts\";\nexport {\n loadPlugin,\n loadPreset,\n resolvePlugin,\n resolvePreset,\n} from \"./plugins.ts\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,cAAA,GAAAD,OAAA;AAcA,IAAAE,QAAA,GAAAF,OAAA;AAlBA,CAAC,CAAC,CAAC;AAA0C","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/module-types.js b/node_modules/@babel/core/lib/config/files/module-types.js new file mode 100644 index 0000000..e29a82f --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/module-types.js @@ -0,0 +1,203 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = loadCodeDefault; +exports.supportsESM = void 0; +var _async = require("../../gensync-utils/async.js"); +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _url() { + const data = require("url"); + _url = function () { + return data; + }; + return data; +} +require("module"); +function _semver() { + const data = require("semver"); + _semver = function () { + return data; + }; + return data; +} +function _debug() { + const data = require("debug"); + _debug = function () { + return data; + }; + return data; +} +var _rewriteStackTrace = require("../../errors/rewrite-stack-trace.js"); +var _configError = require("../../errors/config-error.js"); +var _transformFile = require("../../transform-file.js"); +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +const debug = _debug()("babel:config:loading:files:module-types"); +try { + var import_ = require("./import.cjs"); +} catch (_unused) {} +const supportsESM = exports.supportsESM = _semver().satisfies(process.versions.node, "^12.17 || >=13.2"); +const LOADING_CJS_FILES = new Set(); +function loadCjsDefault(filepath) { + if (LOADING_CJS_FILES.has(filepath)) { + debug("Auto-ignoring usage of config %o.", filepath); + return {}; + } + let module; + try { + LOADING_CJS_FILES.add(filepath); + module = (0, _rewriteStackTrace.endHiddenCallStack)(require)(filepath); + } finally { + LOADING_CJS_FILES.delete(filepath); + } + return module != null && (module.__esModule || module[Symbol.toStringTag] === "Module") ? module.default || (arguments[1] ? module : undefined) : module; +} +const loadMjsFromPath = (0, _rewriteStackTrace.endHiddenCallStack)(function () { + var _loadMjsFromPath = _asyncToGenerator(function* (filepath) { + const url = (0, _url().pathToFileURL)(filepath).toString() + "?import"; + if (!import_) { + throw new _configError.default("Internal error: Native ECMAScript modules aren't supported by this platform.\n", filepath); + } + return yield import_(url); + }); + function loadMjsFromPath(_x) { + return _loadMjsFromPath.apply(this, arguments); + } + return loadMjsFromPath; +}()); +const tsNotSupportedError = ext => `\ +You are using a ${ext} config file, but Babel only supports transpiling .cts configs. Either: +- Use a .cts config file +- Update to Node.js 23.6.0, which has native TypeScript support +- Install tsx to transpile ${ext} files on the fly\ +`; +const SUPPORTED_EXTENSIONS = { + ".js": "unknown", + ".mjs": "esm", + ".cjs": "cjs", + ".ts": "unknown", + ".mts": "esm", + ".cts": "cjs" +}; +const asyncModules = new Set(); +function* loadCodeDefault(filepath, loader, esmError, tlaError) { + let async; + const ext = _path().extname(filepath); + const isTS = ext === ".ts" || ext === ".cts" || ext === ".mts"; + const type = SUPPORTED_EXTENSIONS[hasOwnProperty.call(SUPPORTED_EXTENSIONS, ext) ? ext : ".js"]; + const pattern = `${loader} ${type}`; + switch (pattern) { + case "require cjs": + case "auto cjs": + if (isTS) { + return ensureTsSupport(filepath, ext, () => loadCjsDefault(filepath)); + } else { + return loadCjsDefault(filepath, arguments[2]); + } + case "auto unknown": + case "require unknown": + case "require esm": + try { + if (isTS) { + return ensureTsSupport(filepath, ext, () => loadCjsDefault(filepath)); + } else { + return loadCjsDefault(filepath, arguments[2]); + } + } catch (e) { + if (e.code === "ERR_REQUIRE_ASYNC_MODULE" || e.code === "ERR_REQUIRE_CYCLE_MODULE" && asyncModules.has(filepath)) { + asyncModules.add(filepath); + if (!(async != null ? async : async = yield* (0, _async.isAsync)())) { + throw new _configError.default(tlaError, filepath); + } + } else if (e.code === "ERR_REQUIRE_ESM" || type === "esm") {} else { + throw e; + } + } + case "auto esm": + if (async != null ? async : async = yield* (0, _async.isAsync)()) { + const promise = isTS ? ensureTsSupport(filepath, ext, () => loadMjsFromPath(filepath)) : loadMjsFromPath(filepath); + return (yield* (0, _async.waitFor)(promise)).default; + } + if (isTS) { + throw new _configError.default(tsNotSupportedError(ext), filepath); + } else { + throw new _configError.default(esmError, filepath); + } + default: + throw new Error("Internal Babel error: unreachable code."); + } +} +function ensureTsSupport(filepath, ext, callback) { + if (process.features.typescript || require.extensions[".ts"] || require.extensions[".cts"] || require.extensions[".mts"]) { + return callback(); + } + if (ext !== ".cts") { + throw new _configError.default(tsNotSupportedError(ext), filepath); + } + const opts = { + babelrc: false, + configFile: false, + sourceType: "unambiguous", + sourceMaps: "inline", + sourceFileName: _path().basename(filepath), + presets: [[getTSPreset(filepath), Object.assign({ + onlyRemoveTypeImports: true, + optimizeConstEnums: true + }, { + allowDeclareFields: true + })]] + }; + let handler = function (m, filename) { + if (handler && filename.endsWith(".cts")) { + try { + return m._compile((0, _transformFile.transformFileSync)(filename, Object.assign({}, opts, { + filename + })).code, filename); + } catch (error) { + const packageJson = require("@babel/preset-typescript/package.json"); + if (_semver().lt(packageJson.version, "7.21.4")) { + console.error("`.cts` configuration file failed to load, please try to update `@babel/preset-typescript`."); + } + throw error; + } + } + return require.extensions[".js"](m, filename); + }; + require.extensions[ext] = handler; + try { + return callback(); + } finally { + if (require.extensions[ext] === handler) delete require.extensions[ext]; + handler = undefined; + } +} +function getTSPreset(filepath) { + try { + return require("@babel/preset-typescript"); + } catch (error) { + if (error.code !== "MODULE_NOT_FOUND") throw error; + let message = "You appear to be using a .cts file as Babel configuration, but the `@babel/preset-typescript` package was not found: please install it!"; + if (process.versions.pnp) { + message += ` +If you are using Yarn Plug'n'Play, you may also need to add the following configuration to your .yarnrc.yml file: + +packageExtensions: +\t"@babel/core@*": +\t\tpeerDependencies: +\t\t\t"@babel/preset-typescript": "*" +`; + } + throw new _configError.default(message, filepath); + } +} +0 && 0; + +//# sourceMappingURL=module-types.js.map diff --git a/node_modules/@babel/core/lib/config/files/module-types.js.map b/node_modules/@babel/core/lib/config/files/module-types.js.map new file mode 100644 index 0000000..eafb5e6 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/module-types.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_async","require","_path","data","_url","_semver","_debug","_rewriteStackTrace","_configError","_transformFile","asyncGeneratorStep","n","t","e","r","o","a","c","i","u","value","done","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","debug","buildDebug","import_","_unused","supportsESM","exports","semver","satisfies","process","versions","node","LOADING_CJS_FILES","Set","loadCjsDefault","filepath","has","module","add","endHiddenCallStack","delete","__esModule","Symbol","toStringTag","default","undefined","loadMjsFromPath","_loadMjsFromPath","url","pathToFileURL","toString","ConfigError","_x","tsNotSupportedError","ext","SUPPORTED_EXTENSIONS","asyncModules","loadCodeDefault","loader","esmError","tlaError","async","path","extname","isTS","type","hasOwnProperty","call","pattern","ensureTsSupport","code","isAsync","promise","waitFor","Error","callback","features","typescript","extensions","opts","babelrc","configFile","sourceType","sourceMaps","sourceFileName","basename","presets","getTSPreset","Object","assign","onlyRemoveTypeImports","optimizeConstEnums","allowDeclareFields","handler","m","filename","endsWith","_compile","transformFileSync","error","packageJson","lt","version","console","message","pnp"],"sources":["../../../src/config/files/module-types.ts"],"sourcesContent":["import { isAsync, waitFor } from \"../../gensync-utils/async.ts\";\nimport type { Handler } from \"gensync\";\nimport path from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\nimport { createRequire } from \"node:module\";\nimport semver from \"semver\";\nimport buildDebug from \"debug\";\n\nimport { endHiddenCallStack } from \"../../errors/rewrite-stack-trace.ts\";\nimport ConfigError from \"../../errors/config-error.ts\";\n\nimport type { InputOptions } from \"../index.ts\";\nimport { transformFileSync } from \"../../transform-file.ts\";\n\nconst debug = buildDebug(\"babel:config:loading:files:module-types\");\n\nconst require = createRequire(import.meta.url);\n\nif (!process.env.BABEL_8_BREAKING) {\n try {\n // Old Node.js versions don't support import() syntax.\n // eslint-disable-next-line no-var\n var import_:\n | ((specifier: string | URL) => any)\n | undefined = require(\"./import.cjs\");\n } catch {}\n}\n\nexport const supportsESM = semver.satisfies(\n process.versions.node,\n // older versions, starting from 10, support the dynamic\n // import syntax but always return a rejected promise.\n \"^12.17 || >=13.2\",\n);\n\nconst LOADING_CJS_FILES = new Set();\n\nfunction loadCjsDefault(filepath: string) {\n // The `require()` call below can make this code reentrant if a require hook\n // like @babel/register has been loaded into the system. That would cause\n // Babel to attempt to compile the `.babelrc.js` file as it loads below. To\n // cover this case, we auto-ignore re-entrant config processing. ESM loaders\n // do not have this problem, because loaders do not apply to themselves.\n if (LOADING_CJS_FILES.has(filepath)) {\n debug(\"Auto-ignoring usage of config %o.\", filepath);\n return {};\n }\n\n let module;\n try {\n LOADING_CJS_FILES.add(filepath);\n module = endHiddenCallStack(require)(filepath);\n } finally {\n LOADING_CJS_FILES.delete(filepath);\n }\n\n if (process.env.BABEL_8_BREAKING) {\n return module != null &&\n (module.__esModule || module[Symbol.toStringTag] === \"Module\")\n ? module.default\n : module;\n } else {\n return module != null &&\n (module.__esModule || module[Symbol.toStringTag] === \"Module\")\n ? module.default ||\n /* fallbackToTranspiledModule */ (arguments[1] ? module : undefined)\n : module;\n }\n}\n\nconst loadMjsFromPath = endHiddenCallStack(async function loadMjsFromPath(\n filepath: string,\n) {\n // Add ?import as a workaround for https://github.com/nodejs/node/issues/55500\n const url = pathToFileURL(filepath).toString() + \"?import\";\n\n if (process.env.BABEL_8_BREAKING) {\n return await import(url);\n } else {\n if (!import_) {\n throw new ConfigError(\n \"Internal error: Native ECMAScript modules aren't supported by this platform.\\n\",\n filepath,\n );\n }\n\n return await import_(url);\n }\n});\n\nconst tsNotSupportedError = (ext: string) => `\\\nYou are using a ${ext} config file, but Babel only supports transpiling .cts configs. Either:\n- Use a .cts config file\n- Update to Node.js 23.6.0, which has native TypeScript support\n- Install tsx to transpile ${ext} files on the fly\\\n`;\n\nconst SUPPORTED_EXTENSIONS = {\n \".js\": \"unknown\",\n \".mjs\": \"esm\",\n \".cjs\": \"cjs\",\n \".ts\": \"unknown\",\n \".mts\": \"esm\",\n \".cts\": \"cjs\",\n} as const;\n\nconst asyncModules = new Set();\n\nexport default function* loadCodeDefault(\n filepath: string,\n loader: \"require\" | \"auto\",\n esmError: string,\n tlaError: string,\n): Handler {\n let async;\n\n const ext = path.extname(filepath);\n const isTS = ext === \".ts\" || ext === \".cts\" || ext === \".mts\";\n\n const type =\n SUPPORTED_EXTENSIONS[\n Object.hasOwn(SUPPORTED_EXTENSIONS, ext)\n ? (ext as keyof typeof SUPPORTED_EXTENSIONS)\n : (\".js\" as const)\n ];\n\n const pattern = `${loader} ${type}` as const;\n switch (pattern) {\n case \"require cjs\":\n case \"auto cjs\":\n if (isTS) {\n return ensureTsSupport(filepath, ext, () => loadCjsDefault(filepath));\n } else if (process.env.BABEL_8_BREAKING) {\n return loadCjsDefault(filepath);\n } else {\n return loadCjsDefault(\n filepath,\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n /* fallbackToTranspiledModule */ arguments[2],\n );\n }\n case \"auto unknown\":\n case \"require unknown\":\n case \"require esm\":\n try {\n if (isTS) {\n return ensureTsSupport(filepath, ext, () => loadCjsDefault(filepath));\n } else if (process.env.BABEL_8_BREAKING) {\n return loadCjsDefault(filepath);\n } else {\n return loadCjsDefault(\n filepath,\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n /* fallbackToTranspiledModule */ arguments[2],\n );\n }\n } catch (e) {\n if (\n e.code === \"ERR_REQUIRE_ASYNC_MODULE\" ||\n // Node.js 13.0.0 throws ERR_REQUIRE_CYCLE_MODULE instead of\n // ERR_REQUIRE_ASYNC_MODULE when requiring a module a second time\n // https://github.com/nodejs/node/issues/55516\n // This `asyncModules` won't catch all of such cases, but it will\n // at least catch those caused by Babel trying to load a module twice.\n (e.code === \"ERR_REQUIRE_CYCLE_MODULE\" && asyncModules.has(filepath))\n ) {\n asyncModules.add(filepath);\n if (!(async ??= yield* isAsync())) {\n throw new ConfigError(tlaError, filepath);\n }\n // fall through: require() failed due to TLA\n } else if (\n e.code === \"ERR_REQUIRE_ESM\" ||\n (!process.env.BABEL_8_BREAKING && type === \"esm\")\n ) {\n // fall through: require() failed due to ESM\n } else {\n throw e;\n }\n }\n // fall through: require() failed due to ESM or TLA, try import()\n case \"auto esm\":\n if ((async ??= yield* isAsync())) {\n const promise = isTS\n ? ensureTsSupport(filepath, ext, () => loadMjsFromPath(filepath))\n : loadMjsFromPath(filepath);\n\n return (yield* waitFor(promise)).default;\n }\n if (isTS) {\n throw new ConfigError(tsNotSupportedError(ext), filepath);\n } else {\n throw new ConfigError(esmError, filepath);\n }\n default:\n throw new Error(\"Internal Babel error: unreachable code.\");\n }\n}\n\nfunction ensureTsSupport(\n filepath: string,\n ext: string,\n callback: () => T,\n): T {\n if (\n process.features.typescript ||\n require.extensions[\".ts\"] ||\n require.extensions[\".cts\"] ||\n require.extensions[\".mts\"]\n ) {\n return callback();\n }\n\n if (ext !== \".cts\") {\n throw new ConfigError(tsNotSupportedError(ext), filepath);\n }\n\n const opts: InputOptions = {\n babelrc: false,\n configFile: false,\n sourceType: \"unambiguous\",\n sourceMaps: \"inline\",\n sourceFileName: path.basename(filepath),\n presets: [\n [\n getTSPreset(filepath),\n {\n onlyRemoveTypeImports: true,\n optimizeConstEnums: true,\n ...(process.env.BABEL_8_BREAKING ? {} : { allowDeclareFields: true }),\n },\n ],\n ],\n };\n\n let handler: NodeJS.RequireExtensions[\"\"] = function (m, filename) {\n // If we want to support `.ts`, `.d.ts` must be handled specially.\n if (handler && filename.endsWith(\".cts\")) {\n try {\n // @ts-expect-error Undocumented API\n return m._compile(\n transformFileSync(filename, {\n ...opts,\n filename,\n }).code,\n filename,\n );\n } catch (error) {\n // TODO(Babel 8): Add this as an optional peer dependency\n // eslint-disable-next-line import/no-extraneous-dependencies\n const packageJson = require(\"@babel/preset-typescript/package.json\");\n if (semver.lt(packageJson.version, \"7.21.4\")) {\n console.error(\n \"`.cts` configuration file failed to load, please try to update `@babel/preset-typescript`.\",\n );\n }\n throw error;\n }\n }\n return require.extensions[\".js\"](m, filename);\n };\n require.extensions[ext] = handler;\n\n try {\n return callback();\n } finally {\n if (require.extensions[ext] === handler) delete require.extensions[ext];\n handler = undefined;\n }\n}\n\nfunction getTSPreset(filepath: string) {\n try {\n // eslint-disable-next-line import/no-extraneous-dependencies\n return require(\"@babel/preset-typescript\");\n } catch (error) {\n if (error.code !== \"MODULE_NOT_FOUND\") throw error;\n\n let message =\n \"You appear to be using a .cts file as Babel configuration, but the `@babel/preset-typescript` package was not found: please install it!\";\n\n if (!process.env.BABEL_8_BREAKING) {\n if (process.versions.pnp) {\n // Using Yarn PnP, which doesn't allow requiring packages that are not\n // explicitly specified as dependencies.\n message += `\nIf you are using Yarn Plug'n'Play, you may also need to add the following configuration to your .yarnrc.yml file:\n\npackageExtensions:\n\\t\"@babel/core@*\":\n\\t\\tpeerDependencies:\n\\t\\t\\t\"@babel/preset-typescript\": \"*\"\n`;\n }\n }\n\n throw new ConfigError(message, filepath);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/package.js b/node_modules/@babel/core/lib/config/files/package.js new file mode 100644 index 0000000..eed8ab8 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/package.js @@ -0,0 +1,61 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.findPackageData = findPackageData; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +var _utils = require("./utils.js"); +var _configError = require("../../errors/config-error.js"); +const PACKAGE_FILENAME = "package.json"; +const readConfigPackage = (0, _utils.makeStaticFileCache)((filepath, content) => { + let options; + try { + options = JSON.parse(content); + } catch (err) { + throw new _configError.default(`Error while parsing JSON - ${err.message}`, filepath); + } + if (!options) throw new Error(`${filepath}: No config detected`); + if (typeof options !== "object") { + throw new _configError.default(`Config returned typeof ${typeof options}`, filepath); + } + if (Array.isArray(options)) { + throw new _configError.default(`Expected config object but found array`, filepath); + } + return { + filepath, + dirname: _path().dirname(filepath), + options + }; +}); +function* findPackageData(filepath) { + let pkg = null; + const directories = []; + let isPackage = true; + let dirname = _path().dirname(filepath); + while (!pkg && _path().basename(dirname) !== "node_modules") { + directories.push(dirname); + pkg = yield* readConfigPackage(_path().join(dirname, PACKAGE_FILENAME)); + const nextLoc = _path().dirname(dirname); + if (dirname === nextLoc) { + isPackage = false; + break; + } + dirname = nextLoc; + } + return { + filepath, + directories, + pkg, + isPackage + }; +} +0 && 0; + +//# sourceMappingURL=package.js.map diff --git a/node_modules/@babel/core/lib/config/files/package.js.map b/node_modules/@babel/core/lib/config/files/package.js.map new file mode 100644 index 0000000..38aeb2c --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/package.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","_utils","_configError","PACKAGE_FILENAME","readConfigPackage","makeStaticFileCache","filepath","content","options","JSON","parse","err","ConfigError","message","Error","Array","isArray","dirname","path","findPackageData","pkg","directories","isPackage","basename","push","join","nextLoc"],"sources":["../../../src/config/files/package.ts"],"sourcesContent":["import path from \"node:path\";\nimport type { Handler } from \"gensync\";\nimport { makeStaticFileCache } from \"./utils.ts\";\n\nimport type { ConfigFile, FilePackageData } from \"./types.ts\";\n\nimport ConfigError from \"../../errors/config-error.ts\";\n\nconst PACKAGE_FILENAME = \"package.json\";\n\nconst readConfigPackage = makeStaticFileCache(\n (filepath, content): ConfigFile => {\n let options;\n try {\n options = JSON.parse(content) as unknown;\n } catch (err) {\n throw new ConfigError(\n `Error while parsing JSON - ${err.message}`,\n filepath,\n );\n }\n\n if (!options) throw new Error(`${filepath}: No config detected`);\n\n if (typeof options !== \"object\") {\n throw new ConfigError(\n `Config returned typeof ${typeof options}`,\n filepath,\n );\n }\n if (Array.isArray(options)) {\n throw new ConfigError(`Expected config object but found array`, filepath);\n }\n\n return {\n filepath,\n dirname: path.dirname(filepath),\n options,\n };\n },\n);\n\n/**\n * Find metadata about the package that this file is inside of. Resolution\n * of Babel's config requires general package information to decide when to\n * search for .babelrc files\n */\nexport function* findPackageData(filepath: string): Handler {\n let pkg = null;\n const directories = [];\n let isPackage = true;\n\n let dirname = path.dirname(filepath);\n while (!pkg && path.basename(dirname) !== \"node_modules\") {\n directories.push(dirname);\n\n pkg = yield* readConfigPackage(path.join(dirname, PACKAGE_FILENAME));\n\n const nextLoc = path.dirname(dirname);\n if (dirname === nextLoc) {\n isPackage = false;\n break;\n }\n dirname = nextLoc;\n }\n\n return { filepath, directories, pkg, isPackage };\n}\n"],"mappings":";;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,IAAAE,MAAA,GAAAD,OAAA;AAIA,IAAAE,YAAA,GAAAF,OAAA;AAEA,MAAMG,gBAAgB,GAAG,cAAc;AAEvC,MAAMC,iBAAiB,GAAG,IAAAC,0BAAmB,EAC3C,CAACC,QAAQ,EAAEC,OAAO,KAAiB;EACjC,IAAIC,OAAO;EACX,IAAI;IACFA,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACH,OAAO,CAAY;EAC1C,CAAC,CAAC,OAAOI,GAAG,EAAE;IACZ,MAAM,IAAIC,oBAAW,CACnB,8BAA8BD,GAAG,CAACE,OAAO,EAAE,EAC3CP,QACF,CAAC;EACH;EAEA,IAAI,CAACE,OAAO,EAAE,MAAM,IAAIM,KAAK,CAAC,GAAGR,QAAQ,sBAAsB,CAAC;EAEhE,IAAI,OAAOE,OAAO,KAAK,QAAQ,EAAE;IAC/B,MAAM,IAAII,oBAAW,CACnB,0BAA0B,OAAOJ,OAAO,EAAE,EAC1CF,QACF,CAAC;EACH;EACA,IAAIS,KAAK,CAACC,OAAO,CAACR,OAAO,CAAC,EAAE;IAC1B,MAAM,IAAII,oBAAW,CAAC,wCAAwC,EAAEN,QAAQ,CAAC;EAC3E;EAEA,OAAO;IACLA,QAAQ;IACRW,OAAO,EAAEC,MAAGA,CAAC,CAACD,OAAO,CAACX,QAAQ,CAAC;IAC/BE;EACF,CAAC;AACH,CACF,CAAC;AAOM,UAAUW,eAAeA,CAACb,QAAgB,EAA4B;EAC3E,IAAIc,GAAG,GAAG,IAAI;EACd,MAAMC,WAAW,GAAG,EAAE;EACtB,IAAIC,SAAS,GAAG,IAAI;EAEpB,IAAIL,OAAO,GAAGC,MAAGA,CAAC,CAACD,OAAO,CAACX,QAAQ,CAAC;EACpC,OAAO,CAACc,GAAG,IAAIF,MAAGA,CAAC,CAACK,QAAQ,CAACN,OAAO,CAAC,KAAK,cAAc,EAAE;IACxDI,WAAW,CAACG,IAAI,CAACP,OAAO,CAAC;IAEzBG,GAAG,GAAG,OAAOhB,iBAAiB,CAACc,MAAGA,CAAC,CAACO,IAAI,CAACR,OAAO,EAAEd,gBAAgB,CAAC,CAAC;IAEpE,MAAMuB,OAAO,GAAGR,MAAGA,CAAC,CAACD,OAAO,CAACA,OAAO,CAAC;IACrC,IAAIA,OAAO,KAAKS,OAAO,EAAE;MACvBJ,SAAS,GAAG,KAAK;MACjB;IACF;IACAL,OAAO,GAAGS,OAAO;EACnB;EAEA,OAAO;IAAEpB,QAAQ;IAAEe,WAAW;IAAED,GAAG;IAAEE;EAAU,CAAC;AAClD;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/plugins.js b/node_modules/@babel/core/lib/config/files/plugins.js new file mode 100644 index 0000000..caad07f --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/plugins.js @@ -0,0 +1,220 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.loadPlugin = loadPlugin; +exports.loadPreset = loadPreset; +exports.resolvePreset = exports.resolvePlugin = void 0; +function _debug() { + const data = require("debug"); + _debug = function () { + return data; + }; + return data; +} +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +var _async = require("../../gensync-utils/async.js"); +var _moduleTypes = require("./module-types.js"); +function _url() { + const data = require("url"); + _url = function () { + return data; + }; + return data; +} +var _importMetaResolve = require("../../vendor/import-meta-resolve.js"); +require("module"); +function _fs() { + const data = require("fs"); + _fs = function () { + return data; + }; + return data; +} +const debug = _debug()("babel:config:loading:files:plugins"); +const EXACT_RE = /^module:/; +const BABEL_PLUGIN_PREFIX_RE = /^(?!@|module:|[^/]+\/|babel-plugin-)/; +const BABEL_PRESET_PREFIX_RE = /^(?!@|module:|[^/]+\/|babel-preset-)/; +const BABEL_PLUGIN_ORG_RE = /^(@babel\/)(?!plugin-|[^/]+\/)/; +const BABEL_PRESET_ORG_RE = /^(@babel\/)(?!preset-|[^/]+\/)/; +const OTHER_PLUGIN_ORG_RE = /^(@(?!babel\/)[^/]+\/)(?![^/]*babel-plugin(?:-|\/|$)|[^/]+\/)/; +const OTHER_PRESET_ORG_RE = /^(@(?!babel\/)[^/]+\/)(?![^/]*babel-preset(?:-|\/|$)|[^/]+\/)/; +const OTHER_ORG_DEFAULT_RE = /^(@(?!babel$)[^/]+)$/; +const resolvePlugin = exports.resolvePlugin = resolveStandardizedName.bind(null, "plugin"); +const resolvePreset = exports.resolvePreset = resolveStandardizedName.bind(null, "preset"); +function* loadPlugin(name, dirname) { + const { + filepath, + loader + } = resolvePlugin(name, dirname, yield* (0, _async.isAsync)()); + const value = yield* requireModule("plugin", loader, filepath); + debug("Loaded plugin %o from %o.", name, dirname); + return { + filepath, + value + }; +} +function* loadPreset(name, dirname) { + const { + filepath, + loader + } = resolvePreset(name, dirname, yield* (0, _async.isAsync)()); + const value = yield* requireModule("preset", loader, filepath); + debug("Loaded preset %o from %o.", name, dirname); + return { + filepath, + value + }; +} +function standardizeName(type, name) { + if (_path().isAbsolute(name)) return name; + const isPreset = type === "preset"; + return name.replace(isPreset ? BABEL_PRESET_PREFIX_RE : BABEL_PLUGIN_PREFIX_RE, `babel-${type}-`).replace(isPreset ? BABEL_PRESET_ORG_RE : BABEL_PLUGIN_ORG_RE, `$1${type}-`).replace(isPreset ? OTHER_PRESET_ORG_RE : OTHER_PLUGIN_ORG_RE, `$1babel-${type}-`).replace(OTHER_ORG_DEFAULT_RE, `$1/babel-${type}`).replace(EXACT_RE, ""); +} +function* resolveAlternativesHelper(type, name) { + const standardizedName = standardizeName(type, name); + const { + error, + value + } = yield standardizedName; + if (!error) return value; + if (error.code !== "MODULE_NOT_FOUND") throw error; + if (standardizedName !== name && !(yield name).error) { + error.message += `\n- If you want to resolve "${name}", use "module:${name}"`; + } + if (!(yield standardizeName(type, "@babel/" + name)).error) { + error.message += `\n- Did you mean "@babel/${name}"?`; + } + const oppositeType = type === "preset" ? "plugin" : "preset"; + if (!(yield standardizeName(oppositeType, name)).error) { + error.message += `\n- Did you accidentally pass a ${oppositeType} as a ${type}?`; + } + if (type === "plugin") { + const transformName = standardizedName.replace("-proposal-", "-transform-"); + if (transformName !== standardizedName && !(yield transformName).error) { + error.message += `\n- Did you mean "${transformName}"?`; + } + } + error.message += `\n +Make sure that all the Babel plugins and presets you are using +are defined as dependencies or devDependencies in your package.json +file. It's possible that the missing plugin is loaded by a preset +you are using that forgot to add the plugin to its dependencies: you +can workaround this problem by explicitly adding the missing package +to your top-level package.json. +`; + throw error; +} +function tryRequireResolve(id, dirname) { + try { + if (dirname) { + return { + error: null, + value: (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, { + paths: [b] + }, M = require("module")) => { + let f = M._findPath(r, M._nodeModulePaths(b).concat(b)); + if (f) return f; + f = new Error(`Cannot resolve module '${r}'`); + f.code = "MODULE_NOT_FOUND"; + throw f; + })(id, { + paths: [dirname] + }) + }; + } else { + return { + error: null, + value: require.resolve(id) + }; + } + } catch (error) { + return { + error, + value: null + }; + } +} +function tryImportMetaResolve(id, options) { + try { + return { + error: null, + value: (0, _importMetaResolve.resolve)(id, options) + }; + } catch (error) { + return { + error, + value: null + }; + } +} +function resolveStandardizedNameForRequire(type, name, dirname) { + const it = resolveAlternativesHelper(type, name); + let res = it.next(); + while (!res.done) { + res = it.next(tryRequireResolve(res.value, dirname)); + } + return { + loader: "require", + filepath: res.value + }; +} +function resolveStandardizedNameForImport(type, name, dirname) { + const parentUrl = (0, _url().pathToFileURL)(_path().join(dirname, "./babel-virtual-resolve-base.js")).href; + const it = resolveAlternativesHelper(type, name); + let res = it.next(); + while (!res.done) { + res = it.next(tryImportMetaResolve(res.value, parentUrl)); + } + return { + loader: "auto", + filepath: (0, _url().fileURLToPath)(res.value) + }; +} +function resolveStandardizedName(type, name, dirname, allowAsync) { + if (!_moduleTypes.supportsESM || !allowAsync) { + return resolveStandardizedNameForRequire(type, name, dirname); + } + try { + const resolved = resolveStandardizedNameForImport(type, name, dirname); + if (!(0, _fs().existsSync)(resolved.filepath)) { + throw Object.assign(new Error(`Could not resolve "${name}" in file ${dirname}.`), { + type: "MODULE_NOT_FOUND" + }); + } + return resolved; + } catch (e) { + try { + return resolveStandardizedNameForRequire(type, name, dirname); + } catch (e2) { + if (e.type === "MODULE_NOT_FOUND") throw e; + if (e2.type === "MODULE_NOT_FOUND") throw e2; + throw e; + } + } +} +var LOADING_MODULES = new Set(); +function* requireModule(type, loader, name) { + if (!(yield* (0, _async.isAsync)()) && LOADING_MODULES.has(name)) { + throw new Error(`Reentrant ${type} detected trying to load "${name}". This module is not ignored ` + "and is trying to load itself while compiling itself, leading to a dependency cycle. " + 'We recommend adding it to your "ignore" list in your babelrc, or to a .babelignore.'); + } + try { + LOADING_MODULES.add(name); + return yield* (0, _moduleTypes.default)(name, loader, `You appear to be using a native ECMAScript module ${type}, ` + "which is only supported when running Babel asynchronously " + "or when using the Node.js `--experimental-require-module` flag.", `You appear to be using a ${type} that contains top-level await, ` + "which is only supported when running Babel asynchronously.", true); + } catch (err) { + err.message = `[BABEL]: ${err.message} (While processing: ${name})`; + throw err; + } finally { + LOADING_MODULES.delete(name); + } +} +0 && 0; + +//# sourceMappingURL=plugins.js.map diff --git a/node_modules/@babel/core/lib/config/files/plugins.js.map b/node_modules/@babel/core/lib/config/files/plugins.js.map new file mode 100644 index 0000000..f3879e3 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/plugins.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_debug","data","require","_path","_async","_moduleTypes","_url","_importMetaResolve","_fs","debug","buildDebug","EXACT_RE","BABEL_PLUGIN_PREFIX_RE","BABEL_PRESET_PREFIX_RE","BABEL_PLUGIN_ORG_RE","BABEL_PRESET_ORG_RE","OTHER_PLUGIN_ORG_RE","OTHER_PRESET_ORG_RE","OTHER_ORG_DEFAULT_RE","resolvePlugin","exports","resolveStandardizedName","bind","resolvePreset","loadPlugin","name","dirname","filepath","loader","isAsync","value","requireModule","loadPreset","standardizeName","type","path","isAbsolute","isPreset","replace","resolveAlternativesHelper","standardizedName","error","code","message","oppositeType","transformName","tryRequireResolve","id","v","w","split","process","versions","node","resolve","r","paths","b","M","f","_findPath","_nodeModulePaths","concat","Error","tryImportMetaResolve","options","importMetaResolve","resolveStandardizedNameForRequire","it","res","next","done","resolveStandardizedNameForImport","parentUrl","pathToFileURL","join","href","fileURLToPath","allowAsync","supportsESM","resolved","existsSync","Object","assign","e","e2","LOADING_MODULES","Set","has","add","loadCodeDefault","err","delete"],"sources":["../../../src/config/files/plugins.ts"],"sourcesContent":["/**\n * This file handles all logic for converting string-based configuration references into loaded objects.\n */\n\nimport buildDebug from \"debug\";\nimport path from \"node:path\";\nimport type { Handler } from \"gensync\";\nimport { isAsync } from \"../../gensync-utils/async.ts\";\nimport loadCodeDefault, { supportsESM } from \"./module-types.ts\";\nimport { fileURLToPath, pathToFileURL } from \"node:url\";\n\nimport { resolve as importMetaResolve } from \"../../vendor/import-meta-resolve.js\";\n\nimport { createRequire } from \"node:module\";\nimport { existsSync } from \"node:fs\";\nconst require = createRequire(import.meta.url);\n\nconst debug = buildDebug(\"babel:config:loading:files:plugins\");\n\nconst EXACT_RE = /^module:/;\nconst BABEL_PLUGIN_PREFIX_RE = /^(?!@|module:|[^/]+\\/|babel-plugin-)/;\nconst BABEL_PRESET_PREFIX_RE = /^(?!@|module:|[^/]+\\/|babel-preset-)/;\nconst BABEL_PLUGIN_ORG_RE = /^(@babel\\/)(?!plugin-|[^/]+\\/)/;\nconst BABEL_PRESET_ORG_RE = /^(@babel\\/)(?!preset-|[^/]+\\/)/;\nconst OTHER_PLUGIN_ORG_RE =\n /^(@(?!babel\\/)[^/]+\\/)(?![^/]*babel-plugin(?:-|\\/|$)|[^/]+\\/)/;\nconst OTHER_PRESET_ORG_RE =\n /^(@(?!babel\\/)[^/]+\\/)(?![^/]*babel-preset(?:-|\\/|$)|[^/]+\\/)/;\nconst OTHER_ORG_DEFAULT_RE = /^(@(?!babel$)[^/]+)$/;\n\nexport const resolvePlugin = resolveStandardizedName.bind(null, \"plugin\");\nexport const resolvePreset = resolveStandardizedName.bind(null, \"preset\");\n\nexport function* loadPlugin(\n name: string,\n dirname: string,\n): Handler<{ filepath: string; value: unknown }> {\n const { filepath, loader } = resolvePlugin(name, dirname, yield* isAsync());\n\n const value = yield* requireModule(\"plugin\", loader, filepath);\n debug(\"Loaded plugin %o from %o.\", name, dirname);\n\n return { filepath, value };\n}\n\nexport function* loadPreset(\n name: string,\n dirname: string,\n): Handler<{ filepath: string; value: unknown }> {\n const { filepath, loader } = resolvePreset(name, dirname, yield* isAsync());\n\n const value = yield* requireModule(\"preset\", loader, filepath);\n\n debug(\"Loaded preset %o from %o.\", name, dirname);\n\n return { filepath, value };\n}\n\nfunction standardizeName(type: \"plugin\" | \"preset\", name: string) {\n // Let absolute and relative paths through.\n if (path.isAbsolute(name)) return name;\n\n const isPreset = type === \"preset\";\n\n return (\n name\n // foo -> babel-preset-foo\n .replace(\n isPreset ? BABEL_PRESET_PREFIX_RE : BABEL_PLUGIN_PREFIX_RE,\n `babel-${type}-`,\n )\n // @babel/es2015 -> @babel/preset-es2015\n .replace(\n isPreset ? BABEL_PRESET_ORG_RE : BABEL_PLUGIN_ORG_RE,\n `$1${type}-`,\n )\n // @foo/mypreset -> @foo/babel-preset-mypreset\n .replace(\n isPreset ? OTHER_PRESET_ORG_RE : OTHER_PLUGIN_ORG_RE,\n `$1babel-${type}-`,\n )\n // @foo -> @foo/babel-preset\n .replace(OTHER_ORG_DEFAULT_RE, `$1/babel-${type}`)\n // module:mypreset -> mypreset\n .replace(EXACT_RE, \"\")\n );\n}\n\ntype Result = { error: Error; value: null } | { error: null; value: T };\n\nfunction* resolveAlternativesHelper(\n type: \"plugin\" | \"preset\",\n name: string,\n): Iterator> {\n const standardizedName = standardizeName(type, name);\n const { error, value } = yield standardizedName;\n if (!error) return value;\n\n // @ts-expect-error code may not index error\n if (error.code !== \"MODULE_NOT_FOUND\") throw error;\n\n if (standardizedName !== name && !(yield name).error) {\n error.message += `\\n- If you want to resolve \"${name}\", use \"module:${name}\"`;\n }\n\n if (!(yield standardizeName(type, \"@babel/\" + name)).error) {\n error.message += `\\n- Did you mean \"@babel/${name}\"?`;\n }\n\n const oppositeType = type === \"preset\" ? \"plugin\" : \"preset\";\n if (!(yield standardizeName(oppositeType, name)).error) {\n error.message += `\\n- Did you accidentally pass a ${oppositeType} as a ${type}?`;\n }\n\n if (type === \"plugin\") {\n const transformName = standardizedName.replace(\"-proposal-\", \"-transform-\");\n if (transformName !== standardizedName && !(yield transformName).error) {\n error.message += `\\n- Did you mean \"${transformName}\"?`;\n }\n }\n\n error.message += `\\n\nMake sure that all the Babel plugins and presets you are using\nare defined as dependencies or devDependencies in your package.json\nfile. It's possible that the missing plugin is loaded by a preset\nyou are using that forgot to add the plugin to its dependencies: you\ncan workaround this problem by explicitly adding the missing package\nto your top-level package.json.\n`;\n\n throw error;\n}\n\nfunction tryRequireResolve(\n id: string,\n dirname: string | undefined,\n): Result {\n try {\n if (dirname) {\n return { error: null, value: require.resolve(id, { paths: [dirname] }) };\n } else {\n return { error: null, value: require.resolve(id) };\n }\n } catch (error) {\n return { error, value: null };\n }\n}\n\nfunction tryImportMetaResolve(\n id: Parameters[0],\n options: Parameters[1],\n): Result {\n try {\n return { error: null, value: importMetaResolve(id, options) };\n } catch (error) {\n return { error, value: null };\n }\n}\n\nfunction resolveStandardizedNameForRequire(\n type: \"plugin\" | \"preset\",\n name: string,\n dirname: string,\n) {\n const it = resolveAlternativesHelper(type, name);\n let res = it.next();\n while (!res.done) {\n res = it.next(tryRequireResolve(res.value, dirname));\n }\n return { loader: \"require\" as const, filepath: res.value };\n}\nfunction resolveStandardizedNameForImport(\n type: \"plugin\" | \"preset\",\n name: string,\n dirname: string,\n) {\n const parentUrl = pathToFileURL(\n path.join(dirname, \"./babel-virtual-resolve-base.js\"),\n ).href;\n\n const it = resolveAlternativesHelper(type, name);\n let res = it.next();\n while (!res.done) {\n res = it.next(tryImportMetaResolve(res.value, parentUrl));\n }\n return { loader: \"auto\" as const, filepath: fileURLToPath(res.value) };\n}\n\nfunction resolveStandardizedName(\n type: \"plugin\" | \"preset\",\n name: string,\n dirname: string,\n allowAsync: boolean,\n) {\n if (!supportsESM || !allowAsync) {\n return resolveStandardizedNameForRequire(type, name, dirname);\n }\n\n try {\n const resolved = resolveStandardizedNameForImport(type, name, dirname);\n // import-meta-resolve 4.0 does not throw if the module is not found.\n if (!existsSync(resolved.filepath)) {\n throw Object.assign(\n new Error(`Could not resolve \"${name}\" in file ${dirname}.`),\n { type: \"MODULE_NOT_FOUND\" },\n );\n }\n return resolved;\n } catch (e) {\n try {\n return resolveStandardizedNameForRequire(type, name, dirname);\n } catch (e2) {\n if (e.type === \"MODULE_NOT_FOUND\") throw e;\n if (e2.type === \"MODULE_NOT_FOUND\") throw e2;\n throw e;\n }\n }\n}\n\nif (!process.env.BABEL_8_BREAKING) {\n // eslint-disable-next-line no-var\n var LOADING_MODULES = new Set();\n}\nfunction* requireModule(\n type: string,\n loader: \"require\" | \"auto\",\n name: string,\n): Handler {\n if (!process.env.BABEL_8_BREAKING) {\n if (!(yield* isAsync()) && LOADING_MODULES.has(name)) {\n throw new Error(\n `Reentrant ${type} detected trying to load \"${name}\". This module is not ignored ` +\n \"and is trying to load itself while compiling itself, leading to a dependency cycle. \" +\n 'We recommend adding it to your \"ignore\" list in your babelrc, or to a .babelignore.',\n );\n }\n }\n\n try {\n if (!process.env.BABEL_8_BREAKING) {\n LOADING_MODULES.add(name);\n }\n\n if (process.env.BABEL_8_BREAKING) {\n return yield* loadCodeDefault(\n name,\n loader,\n `You appear to be using a native ECMAScript module ${type}, ` +\n \"which is only supported when running Babel asynchronously \" +\n \"or when using the Node.js `--experimental-require-module` flag.\",\n `You appear to be using a ${type} that contains top-level await, ` +\n \"which is only supported when running Babel asynchronously.\",\n );\n } else {\n return yield* loadCodeDefault(\n name,\n loader,\n `You appear to be using a native ECMAScript module ${type}, ` +\n \"which is only supported when running Babel asynchronously \" +\n \"or when using the Node.js `--experimental-require-module` flag.\",\n `You appear to be using a ${type} that contains top-level await, ` +\n \"which is only supported when running Babel asynchronously.\",\n // For backward compatibility, we need to support malformed presets\n // defined as separate named exports rather than a single default\n // export.\n // See packages/babel-core/test/fixtures/option-manager/presets/es2015_named.js\n // @ts-ignore(Babel 7 vs Babel 8) This param has been removed\n true,\n );\n }\n } catch (err) {\n err.message = `[BABEL]: ${err.message} (While processing: ${name})`;\n throw err;\n } finally {\n if (!process.env.BABEL_8_BREAKING) {\n LOADING_MODULES.delete(name);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/types.js b/node_modules/@babel/core/lib/config/files/types.js new file mode 100644 index 0000000..8fd1422 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/types.js @@ -0,0 +1,5 @@ +"use strict"; + +0 && 0; + +//# sourceMappingURL=types.js.map diff --git a/node_modules/@babel/core/lib/config/files/types.js.map b/node_modules/@babel/core/lib/config/files/types.js.map new file mode 100644 index 0000000..a2ac40b --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/types.js.map @@ -0,0 +1 @@ +{"version":3,"names":[],"sources":["../../../src/config/files/types.ts"],"sourcesContent":["import type { InputOptions } from \"../index.ts\";\n\nexport type ConfigFile = {\n filepath: string;\n dirname: string;\n options: InputOptions & { babel?: unknown };\n};\n\nexport type IgnoreFile = {\n filepath: string;\n dirname: string;\n ignore: RegExp[];\n};\n\nexport type RelativeConfig = {\n // The actual config, either from package.json#babel, .babelrc, or\n // .babelrc.js, if there was one.\n config: ConfigFile | null;\n // The .babelignore, if there was one.\n ignore: IgnoreFile | null;\n};\n\nexport type FilePackageData = {\n // The file in the package.\n filepath: string;\n // Any ancestor directories of the file that are within the package.\n directories: string[];\n // The contents of the package.json. May not be found if the package just\n // terminated at a node_modules folder without finding one.\n pkg: ConfigFile | null;\n // True if a package.json or node_modules folder was found while traversing\n // the directory structure.\n isPackage: boolean;\n};\n"],"mappings":"","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/files/utils.js b/node_modules/@babel/core/lib/config/files/utils.js new file mode 100644 index 0000000..406aab9 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/utils.js @@ -0,0 +1,36 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.makeStaticFileCache = makeStaticFileCache; +var _caching = require("../caching.js"); +var fs = require("../../gensync-utils/fs.js"); +function _fs2() { + const data = require("fs"); + _fs2 = function () { + return data; + }; + return data; +} +function makeStaticFileCache(fn) { + return (0, _caching.makeStrongCache)(function* (filepath, cache) { + const cached = cache.invalidate(() => fileMtime(filepath)); + if (cached === null) { + return null; + } + return fn(filepath, yield* fs.readFile(filepath, "utf8")); + }); +} +function fileMtime(filepath) { + if (!_fs2().existsSync(filepath)) return null; + try { + return +_fs2().statSync(filepath).mtime; + } catch (e) { + if (e.code !== "ENOENT" && e.code !== "ENOTDIR") throw e; + } + return null; +} +0 && 0; + +//# sourceMappingURL=utils.js.map diff --git a/node_modules/@babel/core/lib/config/files/utils.js.map b/node_modules/@babel/core/lib/config/files/utils.js.map new file mode 100644 index 0000000..f3be225 --- /dev/null +++ b/node_modules/@babel/core/lib/config/files/utils.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_caching","require","fs","_fs2","data","makeStaticFileCache","fn","makeStrongCache","filepath","cache","cached","invalidate","fileMtime","readFile","nodeFs","existsSync","statSync","mtime","e","code"],"sources":["../../../src/config/files/utils.ts"],"sourcesContent":["import type { Handler } from \"gensync\";\n\nimport { makeStrongCache } from \"../caching.ts\";\nimport type { CacheConfigurator } from \"../caching.ts\";\nimport * as fs from \"../../gensync-utils/fs.ts\";\nimport nodeFs from \"node:fs\";\n\nexport function makeStaticFileCache(\n fn: (filepath: string, contents: string) => T,\n) {\n return makeStrongCache(function* (\n filepath: string,\n cache: CacheConfigurator,\n ): Handler {\n const cached = cache.invalidate(() => fileMtime(filepath));\n\n if (cached === null) {\n return null;\n }\n\n return fn(filepath, yield* fs.readFile(filepath, \"utf8\"));\n });\n}\n\nfunction fileMtime(filepath: string): number | null {\n if (!nodeFs.existsSync(filepath)) return null;\n\n try {\n return +nodeFs.statSync(filepath).mtime;\n } catch (e) {\n if (e.code !== \"ENOENT\" && e.code !== \"ENOTDIR\") throw e;\n }\n\n return null;\n}\n"],"mappings":";;;;;;AAEA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,EAAA,GAAAD,OAAA;AACA,SAAAE,KAAA;EAAA,MAAAC,IAAA,GAAAH,OAAA;EAAAE,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,SAASC,mBAAmBA,CACjCC,EAA6C,EAC7C;EACA,OAAO,IAAAC,wBAAe,EAAC,WACrBC,QAAgB,EAChBC,KAA8B,EACX;IACnB,MAAMC,MAAM,GAAGD,KAAK,CAACE,UAAU,CAAC,MAAMC,SAAS,CAACJ,QAAQ,CAAC,CAAC;IAE1D,IAAIE,MAAM,KAAK,IAAI,EAAE;MACnB,OAAO,IAAI;IACb;IAEA,OAAOJ,EAAE,CAACE,QAAQ,EAAE,OAAON,EAAE,CAACW,QAAQ,CAACL,QAAQ,EAAE,MAAM,CAAC,CAAC;EAC3D,CAAC,CAAC;AACJ;AAEA,SAASI,SAASA,CAACJ,QAAgB,EAAiB;EAClD,IAAI,CAACM,KAAKA,CAAC,CAACC,UAAU,CAACP,QAAQ,CAAC,EAAE,OAAO,IAAI;EAE7C,IAAI;IACF,OAAO,CAACM,KAAKA,CAAC,CAACE,QAAQ,CAACR,QAAQ,CAAC,CAACS,KAAK;EACzC,CAAC,CAAC,OAAOC,CAAC,EAAE;IACV,IAAIA,CAAC,CAACC,IAAI,KAAK,QAAQ,IAAID,CAAC,CAACC,IAAI,KAAK,SAAS,EAAE,MAAMD,CAAC;EAC1D;EAEA,OAAO,IAAI;AACb;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/full.js b/node_modules/@babel/core/lib/config/full.js new file mode 100644 index 0000000..614caa9 --- /dev/null +++ b/node_modules/@babel/core/lib/config/full.js @@ -0,0 +1,312 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _async = require("../gensync-utils/async.js"); +var _util = require("./util.js"); +var context = require("../index.js"); +var _plugin = require("./plugin.js"); +var _item = require("./item.js"); +var _configChain = require("./config-chain.js"); +var _deepArray = require("./helpers/deep-array.js"); +function _traverse() { + const data = require("@babel/traverse"); + _traverse = function () { + return data; + }; + return data; +} +var _caching = require("./caching.js"); +var _options = require("./validation/options.js"); +var _plugins = require("./validation/plugins.js"); +var _configApi = require("./helpers/config-api.js"); +var _partial = require("./partial.js"); +var _configError = require("../errors/config-error.js"); +var _default = exports.default = _gensync()(function* loadFullConfig(inputOpts) { + var _opts$assumptions; + const result = yield* (0, _partial.default)(inputOpts); + if (!result) { + return null; + } + const { + options, + context, + fileHandling + } = result; + if (fileHandling === "ignored") { + return null; + } + const optionDefaults = {}; + const { + plugins, + presets + } = options; + if (!plugins || !presets) { + throw new Error("Assertion failure - plugins and presets exist"); + } + const presetContext = Object.assign({}, context, { + targets: options.targets + }); + const toDescriptor = item => { + const desc = (0, _item.getItemDescriptor)(item); + if (!desc) { + throw new Error("Assertion failure - must be config item"); + } + return desc; + }; + const presetsDescriptors = presets.map(toDescriptor); + const initialPluginsDescriptors = plugins.map(toDescriptor); + const pluginDescriptorsByPass = [[]]; + const passes = []; + const externalDependencies = []; + const ignored = yield* enhanceError(context, function* recursePresetDescriptors(rawPresets, pluginDescriptorsPass) { + const presets = []; + for (let i = 0; i < rawPresets.length; i++) { + const descriptor = rawPresets[i]; + if (descriptor.options !== false) { + try { + var preset = yield* loadPresetDescriptor(descriptor, presetContext); + } catch (e) { + if (e.code === "BABEL_UNKNOWN_OPTION") { + (0, _options.checkNoUnwrappedItemOptionPairs)(rawPresets, i, "preset", e); + } + throw e; + } + externalDependencies.push(preset.externalDependencies); + if (descriptor.ownPass) { + presets.push({ + preset: preset.chain, + pass: [] + }); + } else { + presets.unshift({ + preset: preset.chain, + pass: pluginDescriptorsPass + }); + } + } + } + if (presets.length > 0) { + pluginDescriptorsByPass.splice(1, 0, ...presets.map(o => o.pass).filter(p => p !== pluginDescriptorsPass)); + for (const { + preset, + pass + } of presets) { + if (!preset) return true; + pass.push(...preset.plugins); + const ignored = yield* recursePresetDescriptors(preset.presets, pass); + if (ignored) return true; + preset.options.forEach(opts => { + (0, _util.mergeOptions)(optionDefaults, opts); + }); + } + } + })(presetsDescriptors, pluginDescriptorsByPass[0]); + if (ignored) return null; + const opts = optionDefaults; + (0, _util.mergeOptions)(opts, options); + const pluginContext = Object.assign({}, presetContext, { + assumptions: (_opts$assumptions = opts.assumptions) != null ? _opts$assumptions : {} + }); + yield* enhanceError(context, function* loadPluginDescriptors() { + pluginDescriptorsByPass[0].unshift(...initialPluginsDescriptors); + for (const descs of pluginDescriptorsByPass) { + const pass = []; + passes.push(pass); + for (let i = 0; i < descs.length; i++) { + const descriptor = descs[i]; + if (descriptor.options !== false) { + try { + var plugin = yield* loadPluginDescriptor(descriptor, pluginContext); + } catch (e) { + if (e.code === "BABEL_UNKNOWN_PLUGIN_PROPERTY") { + (0, _options.checkNoUnwrappedItemOptionPairs)(descs, i, "plugin", e); + } + throw e; + } + pass.push(plugin); + externalDependencies.push(plugin.externalDependencies); + } + } + } + })(); + opts.plugins = passes[0]; + opts.presets = passes.slice(1).filter(plugins => plugins.length > 0).map(plugins => ({ + plugins + })); + opts.passPerPreset = opts.presets.length > 0; + return { + options: opts, + passes: passes, + externalDependencies: (0, _deepArray.finalize)(externalDependencies) + }; +}); +function enhanceError(context, fn) { + return function* (arg1, arg2) { + try { + return yield* fn(arg1, arg2); + } catch (e) { + if (!e.message.startsWith("[BABEL]")) { + var _context$filename; + e.message = `[BABEL] ${(_context$filename = context.filename) != null ? _context$filename : "unknown file"}: ${e.message}`; + } + throw e; + } + }; +} +const makeDescriptorLoader = apiFactory => (0, _caching.makeWeakCache)(function* ({ + value, + options, + dirname, + alias +}, cache) { + if (options === false) throw new Error("Assertion failure"); + options = options || {}; + const externalDependencies = []; + let item = value; + if (typeof value === "function") { + const factory = (0, _async.maybeAsync)(value, `You appear to be using an async plugin/preset, but Babel has been called synchronously`); + const api = Object.assign({}, context, apiFactory(cache, externalDependencies)); + try { + item = yield* factory(api, options, dirname); + } catch (e) { + if (alias) { + e.message += ` (While processing: ${JSON.stringify(alias)})`; + } + throw e; + } + } + if (!item || typeof item !== "object") { + throw new Error("Plugin/Preset did not return an object."); + } + if ((0, _async.isThenable)(item)) { + yield* []; + throw new Error(`You appear to be using a promise as a plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version. ` + `As an alternative, you can prefix the promise with "await". ` + `(While processing: ${JSON.stringify(alias)})`); + } + if (externalDependencies.length > 0 && (!cache.configured() || cache.mode() === "forever")) { + let error = `A plugin/preset has external untracked dependencies ` + `(${externalDependencies[0]}), but the cache `; + if (!cache.configured()) { + error += `has not been configured to be invalidated when the external dependencies change. `; + } else { + error += ` has been configured to never be invalidated. `; + } + error += `Plugins/presets should configure their cache to be invalidated when the external ` + `dependencies change, for example using \`api.cache.invalidate(() => ` + `statSync(filepath).mtimeMs)\` or \`api.cache.never()\`\n` + `(While processing: ${JSON.stringify(alias)})`; + throw new Error(error); + } + return { + value: item, + options, + dirname, + alias, + externalDependencies: (0, _deepArray.finalize)(externalDependencies) + }; +}); +const pluginDescriptorLoader = makeDescriptorLoader(_configApi.makePluginAPI); +const presetDescriptorLoader = makeDescriptorLoader(_configApi.makePresetAPI); +const instantiatePlugin = (0, _caching.makeWeakCache)(function* ({ + value, + options, + dirname, + alias, + externalDependencies +}, cache) { + const pluginObj = (0, _plugins.validatePluginObject)(value); + const plugin = Object.assign({}, pluginObj); + if (plugin.visitor) { + plugin.visitor = _traverse().default.explode(Object.assign({}, plugin.visitor)); + } + if (plugin.inherits) { + const inheritsDescriptor = { + name: undefined, + alias: `${alias}$inherits`, + value: plugin.inherits, + options, + dirname + }; + const inherits = yield* (0, _async.forwardAsync)(loadPluginDescriptor, run => { + return cache.invalidate(data => run(inheritsDescriptor, data)); + }); + plugin.pre = chainMaybeAsync(inherits.pre, plugin.pre); + plugin.post = chainMaybeAsync(inherits.post, plugin.post); + plugin.manipulateOptions = chainMaybeAsync(inherits.manipulateOptions, plugin.manipulateOptions); + plugin.visitor = _traverse().default.visitors.merge([inherits.visitor || {}, plugin.visitor || {}]); + if (inherits.externalDependencies.length > 0) { + if (externalDependencies.length === 0) { + externalDependencies = inherits.externalDependencies; + } else { + externalDependencies = (0, _deepArray.finalize)([externalDependencies, inherits.externalDependencies]); + } + } + } + return new _plugin.default(plugin, options, alias, externalDependencies); +}); +function* loadPluginDescriptor(descriptor, context) { + if (descriptor.value instanceof _plugin.default) { + if (descriptor.options) { + throw new Error("Passed options to an existing Plugin instance will not work."); + } + return descriptor.value; + } + return yield* instantiatePlugin(yield* pluginDescriptorLoader(descriptor, context), context); +} +const needsFilename = val => val && typeof val !== "function"; +const validateIfOptionNeedsFilename = (options, descriptor) => { + if (needsFilename(options.test) || needsFilename(options.include) || needsFilename(options.exclude)) { + const formattedPresetName = descriptor.name ? `"${descriptor.name}"` : "/* your preset */"; + throw new _configError.default([`Preset ${formattedPresetName} requires a filename to be set when babel is called directly,`, `\`\`\``, `babel.transformSync(code, { filename: 'file.ts', presets: [${formattedPresetName}] });`, `\`\`\``, `See https://babeljs.io/docs/en/options#filename for more information.`].join("\n")); + } +}; +const validatePreset = (preset, context, descriptor) => { + if (!context.filename) { + var _options$overrides; + const { + options + } = preset; + validateIfOptionNeedsFilename(options, descriptor); + (_options$overrides = options.overrides) == null || _options$overrides.forEach(overrideOptions => validateIfOptionNeedsFilename(overrideOptions, descriptor)); + } +}; +const instantiatePreset = (0, _caching.makeWeakCacheSync)(({ + value, + dirname, + alias, + externalDependencies +}) => { + return { + options: (0, _options.validate)("preset", value), + alias, + dirname, + externalDependencies + }; +}); +function* loadPresetDescriptor(descriptor, context) { + const preset = instantiatePreset(yield* presetDescriptorLoader(descriptor, context)); + validatePreset(preset, context, descriptor); + return { + chain: yield* (0, _configChain.buildPresetChain)(preset, context), + externalDependencies: preset.externalDependencies + }; +} +function chainMaybeAsync(a, b) { + if (!a) return b; + if (!b) return a; + return function (...args) { + const res = a.apply(this, args); + if (res && typeof res.then === "function") { + return res.then(() => b.apply(this, args)); + } + return b.apply(this, args); + }; +} +0 && 0; + +//# sourceMappingURL=full.js.map diff --git a/node_modules/@babel/core/lib/config/full.js.map b/node_modules/@babel/core/lib/config/full.js.map new file mode 100644 index 0000000..55e99b8 --- /dev/null +++ b/node_modules/@babel/core/lib/config/full.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_async","_util","context","_plugin","_item","_configChain","_deepArray","_traverse","_caching","_options","_plugins","_configApi","_partial","_configError","_default","exports","default","gensync","loadFullConfig","inputOpts","_opts$assumptions","result","loadPrivatePartialConfig","options","fileHandling","optionDefaults","plugins","presets","Error","presetContext","Object","assign","targets","toDescriptor","item","desc","getItemDescriptor","presetsDescriptors","map","initialPluginsDescriptors","pluginDescriptorsByPass","passes","externalDependencies","ignored","enhanceError","recursePresetDescriptors","rawPresets","pluginDescriptorsPass","i","length","descriptor","preset","loadPresetDescriptor","e","code","checkNoUnwrappedItemOptionPairs","push","ownPass","chain","pass","unshift","splice","o","filter","p","forEach","opts","mergeOptions","pluginContext","assumptions","loadPluginDescriptors","descs","plugin","loadPluginDescriptor","slice","passPerPreset","freezeDeepArray","fn","arg1","arg2","message","startsWith","_context$filename","filename","makeDescriptorLoader","apiFactory","makeWeakCache","value","dirname","alias","cache","factory","maybeAsync","api","JSON","stringify","isThenable","configured","mode","error","pluginDescriptorLoader","makePluginAPI","presetDescriptorLoader","makePresetAPI","instantiatePlugin","pluginObj","validatePluginObject","visitor","traverse","explode","inherits","inheritsDescriptor","name","undefined","forwardAsync","run","invalidate","pre","chainMaybeAsync","post","manipulateOptions","visitors","merge","Plugin","needsFilename","val","validateIfOptionNeedsFilename","test","include","exclude","formattedPresetName","ConfigError","join","validatePreset","_options$overrides","overrides","overrideOptions","instantiatePreset","makeWeakCacheSync","validate","buildPresetChain","a","b","args","res","apply","then"],"sources":["../../src/config/full.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\nimport {\n forwardAsync,\n maybeAsync,\n isThenable,\n} from \"../gensync-utils/async.ts\";\n\nimport { mergeOptions } from \"./util.ts\";\nimport * as context from \"../index.ts\";\nimport Plugin from \"./plugin.ts\";\nimport { getItemDescriptor } from \"./item.ts\";\nimport { buildPresetChain } from \"./config-chain.ts\";\nimport { finalize as freezeDeepArray } from \"./helpers/deep-array.ts\";\nimport type { DeepArray, ReadonlyDeepArray } from \"./helpers/deep-array.ts\";\nimport type {\n ConfigContext,\n ConfigChain,\n PresetInstance,\n} from \"./config-chain.ts\";\nimport type { UnloadedDescriptor } from \"./config-descriptors.ts\";\nimport traverse from \"@babel/traverse\";\nimport { makeWeakCache, makeWeakCacheSync } from \"./caching.ts\";\nimport type { CacheConfigurator } from \"./caching.ts\";\nimport {\n validate,\n checkNoUnwrappedItemOptionPairs,\n} from \"./validation/options.ts\";\nimport type { InputOptions, PluginItem } from \"./validation/options.ts\";\nimport { validatePluginObject } from \"./validation/plugins.ts\";\nimport { makePluginAPI, makePresetAPI } from \"./helpers/config-api.ts\";\nimport type { PluginAPI, PresetAPI } from \"./helpers/config-api.ts\";\n\nimport loadPrivatePartialConfig from \"./partial.ts\";\nimport type { ResolvedOptions } from \"./validation/options.ts\";\n\nimport type * as Context from \"./cache-contexts.ts\";\nimport ConfigError from \"../errors/config-error.ts\";\n\ntype LoadedDescriptor = {\n value: any;\n options: object;\n dirname: string;\n alias: string;\n externalDependencies: ReadonlyDeepArray;\n};\n\nexport type { InputOptions } from \"./validation/options.ts\";\n\nexport type ResolvedConfig = {\n options: ResolvedOptions;\n passes: PluginPasses;\n externalDependencies: ReadonlyDeepArray;\n};\n\nexport type { Plugin };\nexport type PluginPassList = Plugin[];\nexport type PluginPasses = PluginPassList[];\n\nexport default gensync(function* loadFullConfig(\n inputOpts: InputOptions,\n): Handler {\n const result = yield* loadPrivatePartialConfig(inputOpts);\n if (!result) {\n return null;\n }\n const { options, context, fileHandling } = result;\n\n if (fileHandling === \"ignored\") {\n return null;\n }\n\n const optionDefaults = {};\n\n const { plugins, presets } = options;\n\n if (!plugins || !presets) {\n throw new Error(\"Assertion failure - plugins and presets exist\");\n }\n\n const presetContext: Context.FullPreset = {\n ...context,\n targets: options.targets,\n };\n\n const toDescriptor = (item: PluginItem) => {\n const desc = getItemDescriptor(item);\n if (!desc) {\n throw new Error(\"Assertion failure - must be config item\");\n }\n\n return desc;\n };\n\n const presetsDescriptors = presets.map(toDescriptor);\n const initialPluginsDescriptors = plugins.map(toDescriptor);\n const pluginDescriptorsByPass: UnloadedDescriptor[][] = [[]];\n const passes: Plugin[][] = [];\n\n const externalDependencies: DeepArray = [];\n\n const ignored = yield* enhanceError(\n context,\n function* recursePresetDescriptors(\n rawPresets: UnloadedDescriptor[],\n pluginDescriptorsPass: UnloadedDescriptor[],\n ): Handler {\n const presets: {\n preset: ConfigChain | null;\n pass: UnloadedDescriptor[];\n }[] = [];\n\n for (let i = 0; i < rawPresets.length; i++) {\n const descriptor = rawPresets[i];\n // @ts-expect-error TODO: disallow false\n if (descriptor.options !== false) {\n try {\n // eslint-disable-next-line no-var\n var preset = yield* loadPresetDescriptor(descriptor, presetContext);\n } catch (e) {\n if (e.code === \"BABEL_UNKNOWN_OPTION\") {\n checkNoUnwrappedItemOptionPairs(rawPresets, i, \"preset\", e);\n }\n throw e;\n }\n\n externalDependencies.push(preset.externalDependencies);\n\n // Presets normally run in reverse order, but if they\n // have their own pass they run after the presets\n // in the previous pass.\n if (descriptor.ownPass) {\n presets.push({ preset: preset.chain, pass: [] });\n } else {\n presets.unshift({\n preset: preset.chain,\n pass: pluginDescriptorsPass,\n });\n }\n }\n }\n\n // resolve presets\n if (presets.length > 0) {\n // The passes are created in the same order as the preset list, but are inserted before any\n // existing additional passes.\n pluginDescriptorsByPass.splice(\n 1,\n 0,\n ...presets.map(o => o.pass).filter(p => p !== pluginDescriptorsPass),\n );\n\n for (const { preset, pass } of presets) {\n if (!preset) return true;\n\n pass.push(...preset.plugins);\n\n const ignored = yield* recursePresetDescriptors(preset.presets, pass);\n if (ignored) return true;\n\n preset.options.forEach(opts => {\n mergeOptions(optionDefaults, opts);\n });\n }\n }\n },\n )(presetsDescriptors, pluginDescriptorsByPass[0]);\n\n if (ignored) return null;\n\n const opts = optionDefaults as ResolvedOptions;\n mergeOptions(opts, options);\n\n const pluginContext: Context.FullPlugin = {\n ...presetContext,\n assumptions: opts.assumptions ?? {},\n };\n\n yield* enhanceError(context, function* loadPluginDescriptors() {\n pluginDescriptorsByPass[0].unshift(...initialPluginsDescriptors);\n\n for (const descs of pluginDescriptorsByPass) {\n const pass: Plugin[] = [];\n passes.push(pass);\n\n for (let i = 0; i < descs.length; i++) {\n const descriptor = descs[i];\n // @ts-expect-error TODO: disallow false\n if (descriptor.options !== false) {\n try {\n // eslint-disable-next-line no-var\n var plugin = yield* loadPluginDescriptor(descriptor, pluginContext);\n } catch (e) {\n if (e.code === \"BABEL_UNKNOWN_PLUGIN_PROPERTY\") {\n // print special message for `plugins: [\"@babel/foo\", { foo: \"option\" }]`\n checkNoUnwrappedItemOptionPairs(descs, i, \"plugin\", e);\n }\n throw e;\n }\n pass.push(plugin);\n\n externalDependencies.push(plugin.externalDependencies);\n }\n }\n }\n })();\n\n opts.plugins = passes[0];\n opts.presets = passes\n .slice(1)\n .filter(plugins => plugins.length > 0)\n .map(plugins => ({ plugins }));\n opts.passPerPreset = opts.presets.length > 0;\n\n return {\n options: opts,\n passes: passes,\n externalDependencies: freezeDeepArray(externalDependencies),\n };\n});\n\nfunction enhanceError(context: ConfigContext, fn: T): T {\n return function* (arg1: unknown, arg2: unknown) {\n try {\n return yield* fn(arg1, arg2);\n } catch (e) {\n // There are a few case where thrown errors will try to annotate themselves multiple times, so\n // to keep things simple we just bail out if re-wrapping the message.\n if (!e.message.startsWith(\"[BABEL]\")) {\n e.message = `[BABEL] ${context.filename ?? \"unknown file\"}: ${\n e.message\n }`;\n }\n\n throw e;\n }\n } as any;\n}\n\n/**\n * Load a generic plugin/preset from the given descriptor loaded from the config object.\n */\nconst makeDescriptorLoader = (\n apiFactory: (\n cache: CacheConfigurator,\n externalDependencies: string[],\n ) => API,\n) =>\n makeWeakCache(function* (\n { value, options, dirname, alias }: UnloadedDescriptor,\n cache: CacheConfigurator,\n ): Handler {\n // Disabled presets should already have been filtered out\n // @ts-expect-error expected\n if (options === false) throw new Error(\"Assertion failure\");\n\n options = options || {};\n\n const externalDependencies: string[] = [];\n\n let item: unknown = value;\n if (typeof value === \"function\") {\n const factory = maybeAsync(\n value as (api: API, options: object, dirname: string) => unknown,\n `You appear to be using an async plugin/preset, but Babel has been called synchronously`,\n );\n\n const api = {\n ...context,\n ...apiFactory(cache, externalDependencies),\n };\n try {\n item = yield* factory(api, options, dirname);\n } catch (e) {\n if (alias) {\n e.message += ` (While processing: ${JSON.stringify(alias)})`;\n }\n throw e;\n }\n }\n\n if (!item || typeof item !== \"object\") {\n throw new Error(\"Plugin/Preset did not return an object.\");\n }\n\n if (isThenable(item)) {\n // if we want to support async plugins\n yield* [];\n\n throw new Error(\n `You appear to be using a promise as a plugin, ` +\n `which your current version of Babel does not support. ` +\n `If you're using a published plugin, ` +\n `you may need to upgrade your @babel/core version. ` +\n `As an alternative, you can prefix the promise with \"await\". ` +\n `(While processing: ${JSON.stringify(alias)})`,\n );\n }\n\n if (\n externalDependencies.length > 0 &&\n (!cache.configured() || cache.mode() === \"forever\")\n ) {\n let error =\n `A plugin/preset has external untracked dependencies ` +\n `(${externalDependencies[0]}), but the cache `;\n if (!cache.configured()) {\n error += `has not been configured to be invalidated when the external dependencies change. `;\n } else {\n error += ` has been configured to never be invalidated. `;\n }\n error +=\n `Plugins/presets should configure their cache to be invalidated when the external ` +\n `dependencies change, for example using \\`api.cache.invalidate(() => ` +\n `statSync(filepath).mtimeMs)\\` or \\`api.cache.never()\\`\\n` +\n `(While processing: ${JSON.stringify(alias)})`;\n\n throw new Error(error);\n }\n\n return {\n value: item,\n options,\n dirname,\n alias,\n externalDependencies: freezeDeepArray(externalDependencies),\n };\n });\n\nconst pluginDescriptorLoader = makeDescriptorLoader<\n Context.SimplePlugin,\n PluginAPI\n>(makePluginAPI);\nconst presetDescriptorLoader = makeDescriptorLoader<\n Context.SimplePreset,\n PresetAPI\n>(makePresetAPI);\n\nconst instantiatePlugin = makeWeakCache(function* (\n { value, options, dirname, alias, externalDependencies }: LoadedDescriptor,\n cache: CacheConfigurator,\n): Handler {\n const pluginObj = validatePluginObject(value);\n\n const plugin = {\n ...pluginObj,\n };\n if (plugin.visitor) {\n plugin.visitor = traverse.explode({\n ...plugin.visitor,\n });\n }\n\n if (plugin.inherits) {\n const inheritsDescriptor: UnloadedDescriptor = {\n name: undefined,\n alias: `${alias}$inherits`,\n value: plugin.inherits,\n options,\n dirname,\n };\n\n const inherits = yield* forwardAsync(loadPluginDescriptor, run => {\n // If the inherited plugin changes, reinstantiate this plugin.\n return cache.invalidate(data => run(inheritsDescriptor, data));\n });\n\n plugin.pre = chainMaybeAsync(inherits.pre, plugin.pre);\n plugin.post = chainMaybeAsync(inherits.post, plugin.post);\n plugin.manipulateOptions = chainMaybeAsync(\n inherits.manipulateOptions,\n plugin.manipulateOptions,\n );\n plugin.visitor = traverse.visitors.merge([\n inherits.visitor || {},\n plugin.visitor || {},\n ]);\n\n if (inherits.externalDependencies.length > 0) {\n if (externalDependencies.length === 0) {\n externalDependencies = inherits.externalDependencies;\n } else {\n externalDependencies = freezeDeepArray([\n externalDependencies,\n inherits.externalDependencies,\n ]);\n }\n }\n }\n\n return new Plugin(plugin, options, alias, externalDependencies);\n});\n\n/**\n * Instantiate a plugin for the given descriptor, returning the plugin/options pair.\n */\nfunction* loadPluginDescriptor(\n descriptor: UnloadedDescriptor,\n context: Context.SimplePlugin,\n): Handler {\n if (descriptor.value instanceof Plugin) {\n if (descriptor.options) {\n throw new Error(\n \"Passed options to an existing Plugin instance will not work.\",\n );\n }\n\n return descriptor.value;\n }\n\n return yield* instantiatePlugin(\n yield* pluginDescriptorLoader(descriptor, context),\n context,\n );\n}\n\nconst needsFilename = (val: unknown) => val && typeof val !== \"function\";\n\nconst validateIfOptionNeedsFilename = (\n options: InputOptions,\n descriptor: UnloadedDescriptor,\n): void => {\n if (\n needsFilename(options.test) ||\n needsFilename(options.include) ||\n needsFilename(options.exclude)\n ) {\n const formattedPresetName = descriptor.name\n ? `\"${descriptor.name}\"`\n : \"/* your preset */\";\n throw new ConfigError(\n [\n `Preset ${formattedPresetName} requires a filename to be set when babel is called directly,`,\n `\\`\\`\\``,\n `babel.transformSync(code, { filename: 'file.ts', presets: [${formattedPresetName}] });`,\n `\\`\\`\\``,\n `See https://babeljs.io/docs/en/options#filename for more information.`,\n ].join(\"\\n\"),\n );\n }\n};\n\nconst validatePreset = (\n preset: PresetInstance,\n context: ConfigContext,\n descriptor: UnloadedDescriptor,\n): void => {\n if (!context.filename) {\n const { options } = preset;\n validateIfOptionNeedsFilename(options, descriptor);\n options.overrides?.forEach(overrideOptions =>\n validateIfOptionNeedsFilename(overrideOptions, descriptor),\n );\n }\n};\n\nconst instantiatePreset = makeWeakCacheSync(\n ({\n value,\n dirname,\n alias,\n externalDependencies,\n }: LoadedDescriptor): PresetInstance => {\n return {\n options: validate(\"preset\", value),\n alias,\n dirname,\n externalDependencies,\n };\n },\n);\n\n/**\n * Generate a config object that will act as the root of a new nested config.\n */\nfunction* loadPresetDescriptor(\n descriptor: UnloadedDescriptor,\n context: Context.FullPreset,\n): Handler<{\n chain: ConfigChain | null;\n externalDependencies: ReadonlyDeepArray;\n}> {\n const preset = instantiatePreset(\n yield* presetDescriptorLoader(descriptor, context),\n );\n validatePreset(preset, context, descriptor);\n return {\n chain: yield* buildPresetChain(preset, context),\n externalDependencies: preset.externalDependencies,\n };\n}\n\nfunction chainMaybeAsync>(\n a: undefined | ((...args: Args) => R),\n b: undefined | ((...args: Args) => R),\n): (...args: Args) => R {\n if (!a) return b;\n if (!b) return a;\n\n return function (this: unknown, ...args: Args) {\n const res = a.apply(this, args);\n if (res && typeof res.then === \"function\") {\n return res.then(() => b.apply(this, args));\n }\n return b.apply(this, args);\n } as (...args: Args) => R;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/helpers/config-api.js b/node_modules/@babel/core/lib/config/helpers/config-api.js new file mode 100644 index 0000000..192ebcf --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/config-api.js @@ -0,0 +1,85 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.makeConfigAPI = makeConfigAPI; +exports.makePluginAPI = makePluginAPI; +exports.makePresetAPI = makePresetAPI; +function _semver() { + const data = require("semver"); + _semver = function () { + return data; + }; + return data; +} +var _index = require("../../index.js"); +var _caching = require("../caching.js"); +function makeConfigAPI(cache) { + const env = value => cache.using(data => { + if (value === undefined) return data.envName; + if (typeof value === "function") { + return (0, _caching.assertSimpleType)(value(data.envName)); + } + return (Array.isArray(value) ? value : [value]).some(entry => { + if (typeof entry !== "string") { + throw new Error("Unexpected non-string value"); + } + return entry === data.envName; + }); + }); + const caller = cb => cache.using(data => (0, _caching.assertSimpleType)(cb(data.caller))); + return { + version: _index.version, + cache: cache.simple(), + env, + async: () => false, + caller, + assertVersion + }; +} +function makePresetAPI(cache, externalDependencies) { + const targets = () => JSON.parse(cache.using(data => JSON.stringify(data.targets))); + const addExternalDependency = ref => { + externalDependencies.push(ref); + }; + return Object.assign({}, makeConfigAPI(cache), { + targets, + addExternalDependency + }); +} +function makePluginAPI(cache, externalDependencies) { + const assumption = name => cache.using(data => data.assumptions[name]); + return Object.assign({}, makePresetAPI(cache, externalDependencies), { + assumption + }); +} +function assertVersion(range) { + if (typeof range === "number") { + if (!Number.isInteger(range)) { + throw new Error("Expected string or integer value."); + } + range = `^${range}.0.0-0`; + } + if (typeof range !== "string") { + throw new Error("Expected string or integer value."); + } + if (range === "*" || _semver().satisfies(_index.version, range)) return; + const message = `Requires Babel "${range}", but was loaded with "${_index.version}". ` + `If you are sure you have a compatible version of @babel/core, ` + `it is likely that something in your build process is loading the ` + `wrong version. Inspect the stack trace of this error to look for ` + `the first entry that doesn't mention "@babel/core" or "babel-core" ` + `to see what is calling Babel.`; + const limit = Error.stackTraceLimit; + if (typeof limit === "number" && limit < 25) { + Error.stackTraceLimit = 25; + } + const err = new Error(message); + if (typeof limit === "number") { + Error.stackTraceLimit = limit; + } + throw Object.assign(err, { + code: "BABEL_VERSION_UNSUPPORTED", + version: _index.version, + range + }); +} +0 && 0; + +//# sourceMappingURL=config-api.js.map diff --git a/node_modules/@babel/core/lib/config/helpers/config-api.js.map b/node_modules/@babel/core/lib/config/helpers/config-api.js.map new file mode 100644 index 0000000..b88d9f7 --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/config-api.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_semver","data","require","_index","_caching","makeConfigAPI","cache","env","value","using","undefined","envName","assertSimpleType","Array","isArray","some","entry","Error","caller","cb","version","coreVersion","simple","async","assertVersion","makePresetAPI","externalDependencies","targets","JSON","parse","stringify","addExternalDependency","ref","push","Object","assign","makePluginAPI","assumption","name","assumptions","range","Number","isInteger","semver","satisfies","message","limit","stackTraceLimit","err","code"],"sources":["../../../src/config/helpers/config-api.ts"],"sourcesContent":["import semver from \"semver\";\nimport type { Targets } from \"@babel/helper-compilation-targets\";\n\nimport { version as coreVersion } from \"../../index.ts\";\nimport { assertSimpleType } from \"../caching.ts\";\nimport type {\n CacheConfigurator,\n SimpleCacheConfigurator,\n SimpleType,\n} from \"../caching.ts\";\n\nimport type {\n AssumptionName,\n CallerMetadata,\n InputOptions,\n} from \"../validation/options.ts\";\n\nimport type * as Context from \"../cache-contexts\";\n\ntype EnvName = NonNullable;\ntype EnvFunction = {\n (): string;\n (extractor: (envName: EnvName) => T): T;\n (envVar: string): boolean;\n (envVars: string[]): boolean;\n};\n\ntype CallerFactory = {\n (\n extractor: (callerMetadata: CallerMetadata | undefined) => T,\n ): T;\n (\n extractor: (callerMetadata: CallerMetadata | undefined) => unknown,\n ): SimpleType;\n};\ntype TargetsFunction = () => Targets;\ntype AssumptionFunction = (name: AssumptionName) => boolean | undefined;\n\nexport type ConfigAPI = {\n version: string;\n cache: SimpleCacheConfigurator;\n env: EnvFunction;\n async: () => boolean;\n assertVersion: typeof assertVersion;\n caller?: CallerFactory;\n};\n\nexport type PresetAPI = {\n targets: TargetsFunction;\n addExternalDependency: (ref: string) => void;\n} & ConfigAPI;\n\nexport type PluginAPI = {\n assumption: AssumptionFunction;\n} & PresetAPI;\n\nexport function makeConfigAPI(\n cache: CacheConfigurator,\n): ConfigAPI {\n // TODO(@nicolo-ribaudo): If we remove the explicit type from `value`\n // and the `as any` type cast, TypeScript crashes in an infinite\n // recursion. After upgrading to TS4.7 and finishing the noImplicitAny\n // PR, we should check if it still crashes and report it to the TS team.\n const env: EnvFunction = ((\n value: string | string[] | ((babelEnv: string) => T),\n ) =>\n cache.using(data => {\n if (value === undefined) return data.envName;\n if (typeof value === \"function\") {\n return assertSimpleType(value(data.envName));\n }\n return (Array.isArray(value) ? value : [value]).some(entry => {\n if (typeof entry !== \"string\") {\n throw new Error(\"Unexpected non-string value\");\n }\n return entry === data.envName;\n });\n })) as any;\n\n const caller = (\n cb: (CallerMetadata: CallerMetadata | undefined) => SimpleType,\n ) => cache.using(data => assertSimpleType(cb(data.caller)));\n\n return {\n version: coreVersion,\n cache: cache.simple(),\n // Expose \".env()\" so people can easily get the same env that we expose using the \"env\" key.\n env,\n async: () => false,\n caller,\n assertVersion,\n };\n}\n\nexport function makePresetAPI(\n cache: CacheConfigurator,\n externalDependencies: string[],\n): PresetAPI {\n const targets = () =>\n // We are using JSON.parse/JSON.stringify because it's only possible to cache\n // primitive values. We can safely stringify the targets object because it\n // only contains strings as its properties.\n // Please make the Record and Tuple proposal happen!\n JSON.parse(cache.using(data => JSON.stringify(data.targets)));\n\n const addExternalDependency = (ref: string) => {\n externalDependencies.push(ref);\n };\n\n return { ...makeConfigAPI(cache), targets, addExternalDependency };\n}\n\nexport function makePluginAPI(\n cache: CacheConfigurator,\n externalDependencies: string[],\n): PluginAPI {\n const assumption = (name: string) =>\n cache.using(data => data.assumptions[name]);\n\n return { ...makePresetAPI(cache, externalDependencies), assumption };\n}\n\nfunction assertVersion(range: string | number): void {\n if (typeof range === \"number\") {\n if (!Number.isInteger(range)) {\n throw new Error(\"Expected string or integer value.\");\n }\n range = `^${range}.0.0-0`;\n }\n if (typeof range !== \"string\") {\n throw new Error(\"Expected string or integer value.\");\n }\n\n // We want \"*\" to also allow any pre-release, but we do not pass\n // the includePrerelease option to semver.satisfies because we\n // do not want ^7.0.0 to match 8.0.0-alpha.1.\n if (range === \"*\" || semver.satisfies(coreVersion, range)) return;\n\n const message =\n `Requires Babel \"${range}\", but was loaded with \"${coreVersion}\". ` +\n `If you are sure you have a compatible version of @babel/core, ` +\n `it is likely that something in your build process is loading the ` +\n `wrong version. Inspect the stack trace of this error to look for ` +\n `the first entry that doesn't mention \"@babel/core\" or \"babel-core\" ` +\n `to see what is calling Babel.`;\n\n if (\n typeof process !== \"undefined\" &&\n process.env.BABEL_8_BREAKING &&\n process.env.BABEL_7_TO_8_DANGEROUSLY_DISABLE_VERSION_CHECK\n ) {\n console.warn(message);\n return;\n }\n\n const limit = Error.stackTraceLimit;\n\n if (typeof limit === \"number\" && limit < 25) {\n // Bump up the limit if needed so that users are more likely\n // to be able to see what is calling Babel.\n Error.stackTraceLimit = 25;\n }\n\n const err = new Error(message);\n\n if (typeof limit === \"number\") {\n Error.stackTraceLimit = limit;\n }\n\n throw Object.assign(err, {\n code: \"BABEL_VERSION_UNSUPPORTED\",\n version: coreVersion,\n range,\n });\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/helpers/deep-array.js b/node_modules/@babel/core/lib/config/helpers/deep-array.js new file mode 100644 index 0000000..c611db2 --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/deep-array.js @@ -0,0 +1,23 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.finalize = finalize; +exports.flattenToSet = flattenToSet; +function finalize(deepArr) { + return Object.freeze(deepArr); +} +function flattenToSet(arr) { + const result = new Set(); + const stack = [arr]; + while (stack.length > 0) { + for (const el of stack.pop()) { + if (Array.isArray(el)) stack.push(el);else result.add(el); + } + } + return result; +} +0 && 0; + +//# sourceMappingURL=deep-array.js.map diff --git a/node_modules/@babel/core/lib/config/helpers/deep-array.js.map b/node_modules/@babel/core/lib/config/helpers/deep-array.js.map new file mode 100644 index 0000000..57239da --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/deep-array.js.map @@ -0,0 +1 @@ +{"version":3,"names":["finalize","deepArr","Object","freeze","flattenToSet","arr","result","Set","stack","length","el","pop","Array","isArray","push","add"],"sources":["../../../src/config/helpers/deep-array.ts"],"sourcesContent":["export type DeepArray = (T | ReadonlyDeepArray)[];\n\n// Just to make sure that DeepArray is not assignable to ReadonlyDeepArray\ndeclare const __marker: unique symbol;\nexport type ReadonlyDeepArray = readonly (T | ReadonlyDeepArray)[] & {\n [__marker]: true;\n};\n\nexport function finalize(deepArr: DeepArray): ReadonlyDeepArray {\n return Object.freeze(deepArr) as ReadonlyDeepArray;\n}\n\nexport function flattenToSet(\n arr: ReadonlyDeepArray,\n): Set {\n const result = new Set();\n const stack = [arr];\n while (stack.length > 0) {\n for (const el of stack.pop()) {\n if (Array.isArray(el)) stack.push(el as ReadonlyDeepArray);\n else result.add(el as T);\n }\n }\n return result;\n}\n"],"mappings":";;;;;;;AAQO,SAASA,QAAQA,CAAIC,OAAqB,EAAwB;EACvE,OAAOC,MAAM,CAACC,MAAM,CAACF,OAAO,CAAC;AAC/B;AAEO,SAASG,YAAYA,CAC1BC,GAAyB,EACjB;EACR,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAAI,CAAC;EAC3B,MAAMC,KAAK,GAAG,CAACH,GAAG,CAAC;EACnB,OAAOG,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;IACvB,KAAK,MAAMC,EAAE,IAAIF,KAAK,CAACG,GAAG,CAAC,CAAC,EAAE;MAC5B,IAAIC,KAAK,CAACC,OAAO,CAACH,EAAE,CAAC,EAAEF,KAAK,CAACM,IAAI,CAACJ,EAA0B,CAAC,CAAC,KACzDJ,MAAM,CAACS,GAAG,CAACL,EAAO,CAAC;IAC1B;EACF;EACA,OAAOJ,MAAM;AACf;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/helpers/environment.js b/node_modules/@babel/core/lib/config/helpers/environment.js new file mode 100644 index 0000000..a23b80b --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/environment.js @@ -0,0 +1,12 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.getEnv = getEnv; +function getEnv(defaultValue = "development") { + return process.env.BABEL_ENV || process.env.NODE_ENV || defaultValue; +} +0 && 0; + +//# sourceMappingURL=environment.js.map diff --git a/node_modules/@babel/core/lib/config/helpers/environment.js.map b/node_modules/@babel/core/lib/config/helpers/environment.js.map new file mode 100644 index 0000000..c34fc17 --- /dev/null +++ b/node_modules/@babel/core/lib/config/helpers/environment.js.map @@ -0,0 +1 @@ +{"version":3,"names":["getEnv","defaultValue","process","env","BABEL_ENV","NODE_ENV"],"sources":["../../../src/config/helpers/environment.ts"],"sourcesContent":["export function getEnv(defaultValue: string = \"development\"): string {\n return process.env.BABEL_ENV || process.env.NODE_ENV || defaultValue;\n}\n"],"mappings":";;;;;;AAAO,SAASA,MAAMA,CAACC,YAAoB,GAAG,aAAa,EAAU;EACnE,OAAOC,OAAO,CAACC,GAAG,CAACC,SAAS,IAAIF,OAAO,CAACC,GAAG,CAACE,QAAQ,IAAIJ,YAAY;AACtE;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/index.js b/node_modules/@babel/core/lib/config/index.js new file mode 100644 index 0000000..cebfe23 --- /dev/null +++ b/node_modules/@babel/core/lib/config/index.js @@ -0,0 +1,87 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createConfigItem = createConfigItem; +exports.createConfigItemAsync = createConfigItemAsync; +exports.createConfigItemSync = createConfigItemSync; +Object.defineProperty(exports, "default", { + enumerable: true, + get: function () { + return _full.default; + } +}); +exports.loadOptions = loadOptions; +exports.loadOptionsAsync = loadOptionsAsync; +exports.loadOptionsSync = loadOptionsSync; +exports.loadPartialConfig = loadPartialConfig; +exports.loadPartialConfigAsync = loadPartialConfigAsync; +exports.loadPartialConfigSync = loadPartialConfigSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _full = require("./full.js"); +var _partial = require("./partial.js"); +var _item = require("./item.js"); +var _rewriteStackTrace = require("../errors/rewrite-stack-trace.js"); +const loadPartialConfigRunner = _gensync()(_partial.loadPartialConfig); +function loadPartialConfigAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(loadPartialConfigRunner.async)(...args); +} +function loadPartialConfigSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(loadPartialConfigRunner.sync)(...args); +} +function loadPartialConfig(opts, callback) { + if (callback !== undefined) { + (0, _rewriteStackTrace.beginHiddenCallStack)(loadPartialConfigRunner.errback)(opts, callback); + } else if (typeof opts === "function") { + (0, _rewriteStackTrace.beginHiddenCallStack)(loadPartialConfigRunner.errback)(undefined, opts); + } else { + return loadPartialConfigSync(opts); + } +} +function* loadOptionsImpl(opts) { + var _config$options; + const config = yield* (0, _full.default)(opts); + return (_config$options = config == null ? void 0 : config.options) != null ? _config$options : null; +} +const loadOptionsRunner = _gensync()(loadOptionsImpl); +function loadOptionsAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(loadOptionsRunner.async)(...args); +} +function loadOptionsSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(loadOptionsRunner.sync)(...args); +} +function loadOptions(opts, callback) { + if (callback !== undefined) { + (0, _rewriteStackTrace.beginHiddenCallStack)(loadOptionsRunner.errback)(opts, callback); + } else if (typeof opts === "function") { + (0, _rewriteStackTrace.beginHiddenCallStack)(loadOptionsRunner.errback)(undefined, opts); + } else { + return loadOptionsSync(opts); + } +} +const createConfigItemRunner = _gensync()(_item.createConfigItem); +function createConfigItemAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(createConfigItemRunner.async)(...args); +} +function createConfigItemSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(createConfigItemRunner.sync)(...args); +} +function createConfigItem(target, options, callback) { + if (callback !== undefined) { + (0, _rewriteStackTrace.beginHiddenCallStack)(createConfigItemRunner.errback)(target, options, callback); + } else if (typeof options === "function") { + (0, _rewriteStackTrace.beginHiddenCallStack)(createConfigItemRunner.errback)(target, undefined, callback); + } else { + return createConfigItemSync(target, options); + } +} +0 && 0; + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/core/lib/config/index.js.map b/node_modules/@babel/core/lib/config/index.js.map new file mode 100644 index 0000000..32f94ed --- /dev/null +++ b/node_modules/@babel/core/lib/config/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_full","_partial","_item","_rewriteStackTrace","loadPartialConfigRunner","gensync","loadPartialConfigImpl","loadPartialConfigAsync","args","beginHiddenCallStack","async","loadPartialConfigSync","sync","loadPartialConfig","opts","callback","undefined","errback","loadOptionsImpl","_config$options","config","loadFullConfig","options","loadOptionsRunner","loadOptionsAsync","loadOptionsSync","loadOptions","createConfigItemRunner","createConfigItemImpl","createConfigItemAsync","createConfigItemSync","createConfigItem","target"],"sources":["../../src/config/index.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\n\nexport type {\n ResolvedConfig,\n InputOptions,\n PluginPasses,\n Plugin,\n} from \"./full.ts\";\n\nimport type {\n InputOptions,\n PluginTarget,\n ResolvedOptions,\n} from \"./validation/options.ts\";\nexport type { ConfigAPI } from \"./helpers/config-api.ts\";\nimport type {\n PluginAPI as basePluginAPI,\n PresetAPI as basePresetAPI,\n} from \"./helpers/config-api.ts\";\nexport type { PluginObject } from \"./validation/plugins.ts\";\ntype PluginAPI = basePluginAPI & typeof import(\"..\");\ntype PresetAPI = basePresetAPI & typeof import(\"..\");\nexport type { PluginAPI, PresetAPI };\nexport type {\n CallerMetadata,\n NormalizedOptions,\n} from \"./validation/options.ts\";\n\nimport loadFullConfig from \"./full.ts\";\nimport {\n type PartialConfig,\n loadPartialConfig as loadPartialConfigImpl,\n} from \"./partial.ts\";\n\nexport { loadFullConfig as default };\nexport type { PartialConfig } from \"./partial.ts\";\n\nimport { createConfigItem as createConfigItemImpl } from \"./item.ts\";\nimport type { ConfigItem } from \"./item.ts\";\nexport type { ConfigItem };\n\nimport { beginHiddenCallStack } from \"../errors/rewrite-stack-trace.ts\";\n\nconst loadPartialConfigRunner = gensync(loadPartialConfigImpl);\nexport function loadPartialConfigAsync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(loadPartialConfigRunner.async)(...args);\n}\nexport function loadPartialConfigSync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(loadPartialConfigRunner.sync)(...args);\n}\nexport function loadPartialConfig(\n opts: Parameters[0],\n callback?: (err: Error, val: PartialConfig | null) => void,\n) {\n if (callback !== undefined) {\n beginHiddenCallStack(loadPartialConfigRunner.errback)(opts, callback);\n } else if (typeof opts === \"function\") {\n beginHiddenCallStack(loadPartialConfigRunner.errback)(\n undefined,\n opts as (err: Error, val: PartialConfig | null) => void,\n );\n } else {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'loadPartialConfig' function expects a callback. If you need to call it synchronously, please use 'loadPartialConfigSync'.\",\n );\n } else {\n return loadPartialConfigSync(opts);\n }\n }\n}\n\nfunction* loadOptionsImpl(opts: InputOptions): Handler {\n const config = yield* loadFullConfig(opts);\n // NOTE: We want to return \"null\" explicitly, while ?. alone returns undefined\n return config?.options ?? null;\n}\nconst loadOptionsRunner = gensync(loadOptionsImpl);\nexport function loadOptionsAsync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(loadOptionsRunner.async)(...args);\n}\nexport function loadOptionsSync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(loadOptionsRunner.sync)(...args);\n}\nexport function loadOptions(\n opts: Parameters[0],\n callback?: (err: Error, val: ResolvedOptions | null) => void,\n) {\n if (callback !== undefined) {\n beginHiddenCallStack(loadOptionsRunner.errback)(opts, callback);\n } else if (typeof opts === \"function\") {\n beginHiddenCallStack(loadOptionsRunner.errback)(\n undefined,\n opts as (err: Error, val: ResolvedOptions | null) => void,\n );\n } else {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'loadOptions' function expects a callback. If you need to call it synchronously, please use 'loadOptionsSync'.\",\n );\n } else {\n return loadOptionsSync(opts);\n }\n }\n}\n\nconst createConfigItemRunner = gensync(createConfigItemImpl);\nexport function createConfigItemAsync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(createConfigItemRunner.async)(...args);\n}\nexport function createConfigItemSync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(createConfigItemRunner.sync)(...args);\n}\nexport function createConfigItem(\n target: PluginTarget,\n options: Parameters[1],\n callback?: (err: Error, val: ConfigItem | null) => void,\n) {\n if (callback !== undefined) {\n beginHiddenCallStack(createConfigItemRunner.errback)(\n target,\n options,\n callback,\n );\n } else if (typeof options === \"function\") {\n beginHiddenCallStack(createConfigItemRunner.errback)(\n target,\n undefined,\n callback,\n );\n } else {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'createConfigItem' function expects a callback. If you need to call it synchronously, please use 'createConfigItemSync'.\",\n );\n } else {\n return createConfigItemSync(target, options);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AA4BA,IAAAE,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAQA,IAAAG,KAAA,GAAAH,OAAA;AAIA,IAAAI,kBAAA,GAAAJ,OAAA;AAEA,MAAMK,uBAAuB,GAAGC,SAAMA,CAAC,CAACC,0BAAqB,CAAC;AACvD,SAASC,sBAAsBA,CACpC,GAAGC,IAAsD,EACzD;EACA,OAAO,IAAAC,uCAAoB,EAACL,uBAAuB,CAACM,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AACrE;AACO,SAASG,qBAAqBA,CACnC,GAAGH,IAAqD,EACxD;EACA,OAAO,IAAAC,uCAAoB,EAACL,uBAAuB,CAACQ,IAAI,CAAC,CAAC,GAAGJ,IAAI,CAAC;AACpE;AACO,SAASK,iBAAiBA,CAC/BC,IAAiD,EACjDC,QAA0D,EAC1D;EACA,IAAIA,QAAQ,KAAKC,SAAS,EAAE;IAC1B,IAAAP,uCAAoB,EAACL,uBAAuB,CAACa,OAAO,CAAC,CAACH,IAAI,EAAEC,QAAQ,CAAC;EACvE,CAAC,MAAM,IAAI,OAAOD,IAAI,KAAK,UAAU,EAAE;IACrC,IAAAL,uCAAoB,EAACL,uBAAuB,CAACa,OAAO,CAAC,CACnDD,SAAS,EACTF,IACF,CAAC;EACH,CAAC,MAAM;IAMH,OAAOH,qBAAqB,CAACG,IAAI,CAAC;EAEtC;AACF;AAEA,UAAUI,eAAeA,CAACJ,IAAkB,EAAmC;EAAA,IAAAK,eAAA;EAC7E,MAAMC,MAAM,GAAG,OAAO,IAAAC,aAAc,EAACP,IAAI,CAAC;EAE1C,QAAAK,eAAA,GAAOC,MAAM,oBAANA,MAAM,CAAEE,OAAO,YAAAH,eAAA,GAAI,IAAI;AAChC;AACA,MAAMI,iBAAiB,GAAGlB,SAAMA,CAAC,CAACa,eAAe,CAAC;AAC3C,SAASM,gBAAgBA,CAC9B,GAAGhB,IAAgD,EACnD;EACA,OAAO,IAAAC,uCAAoB,EAACc,iBAAiB,CAACb,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AAC/D;AACO,SAASiB,eAAeA,CAC7B,GAAGjB,IAA+C,EAClD;EACA,OAAO,IAAAC,uCAAoB,EAACc,iBAAiB,CAACX,IAAI,CAAC,CAAC,GAAGJ,IAAI,CAAC;AAC9D;AACO,SAASkB,WAAWA,CACzBZ,IAA2C,EAC3CC,QAA4D,EAC5D;EACA,IAAIA,QAAQ,KAAKC,SAAS,EAAE;IAC1B,IAAAP,uCAAoB,EAACc,iBAAiB,CAACN,OAAO,CAAC,CAACH,IAAI,EAAEC,QAAQ,CAAC;EACjE,CAAC,MAAM,IAAI,OAAOD,IAAI,KAAK,UAAU,EAAE;IACrC,IAAAL,uCAAoB,EAACc,iBAAiB,CAACN,OAAO,CAAC,CAC7CD,SAAS,EACTF,IACF,CAAC;EACH,CAAC,MAAM;IAMH,OAAOW,eAAe,CAACX,IAAI,CAAC;EAEhC;AACF;AAEA,MAAMa,sBAAsB,GAAGtB,SAAMA,CAAC,CAACuB,sBAAoB,CAAC;AACrD,SAASC,qBAAqBA,CACnC,GAAGrB,IAAqD,EACxD;EACA,OAAO,IAAAC,uCAAoB,EAACkB,sBAAsB,CAACjB,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AACpE;AACO,SAASsB,oBAAoBA,CAClC,GAAGtB,IAAoD,EACvD;EACA,OAAO,IAAAC,uCAAoB,EAACkB,sBAAsB,CAACf,IAAI,CAAC,CAAC,GAAGJ,IAAI,CAAC;AACnE;AACO,SAASuB,gBAAgBA,CAC9BC,MAAoB,EACpBV,OAAmD,EACnDP,QAAkE,EAClE;EACA,IAAIA,QAAQ,KAAKC,SAAS,EAAE;IAC1B,IAAAP,uCAAoB,EAACkB,sBAAsB,CAACV,OAAO,CAAC,CAClDe,MAAM,EACNV,OAAO,EACPP,QACF,CAAC;EACH,CAAC,MAAM,IAAI,OAAOO,OAAO,KAAK,UAAU,EAAE;IACxC,IAAAb,uCAAoB,EAACkB,sBAAsB,CAACV,OAAO,CAAC,CAClDe,MAAM,EACNhB,SAAS,EACTD,QACF,CAAC;EACH,CAAC,MAAM;IAMH,OAAOe,oBAAoB,CAACE,MAAM,EAAEV,OAAO,CAAC;EAEhD;AACF;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/item.js b/node_modules/@babel/core/lib/config/item.js new file mode 100644 index 0000000..69cf01f --- /dev/null +++ b/node_modules/@babel/core/lib/config/item.js @@ -0,0 +1,67 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.createConfigItem = createConfigItem; +exports.createItemFromDescriptor = createItemFromDescriptor; +exports.getItemDescriptor = getItemDescriptor; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +var _configDescriptors = require("./config-descriptors.js"); +function createItemFromDescriptor(desc) { + return new ConfigItem(desc); +} +function* createConfigItem(value, { + dirname = ".", + type +} = {}) { + const descriptor = yield* (0, _configDescriptors.createDescriptor)(value, _path().resolve(dirname), { + type, + alias: "programmatic item" + }); + return createItemFromDescriptor(descriptor); +} +const CONFIG_ITEM_BRAND = Symbol.for("@babel/core@7 - ConfigItem"); +function getItemDescriptor(item) { + if (item != null && item[CONFIG_ITEM_BRAND]) { + return item._descriptor; + } + return undefined; +} +class ConfigItem { + constructor(descriptor) { + this._descriptor = void 0; + this[CONFIG_ITEM_BRAND] = true; + this.value = void 0; + this.options = void 0; + this.dirname = void 0; + this.name = void 0; + this.file = void 0; + this._descriptor = descriptor; + Object.defineProperty(this, "_descriptor", { + enumerable: false + }); + Object.defineProperty(this, CONFIG_ITEM_BRAND, { + enumerable: false + }); + this.value = this._descriptor.value; + this.options = this._descriptor.options; + this.dirname = this._descriptor.dirname; + this.name = this._descriptor.name; + this.file = this._descriptor.file ? { + request: this._descriptor.file.request, + resolved: this._descriptor.file.resolved + } : undefined; + Object.freeze(this); + } +} +Object.freeze(ConfigItem.prototype); +0 && 0; + +//# sourceMappingURL=item.js.map diff --git a/node_modules/@babel/core/lib/config/item.js.map b/node_modules/@babel/core/lib/config/item.js.map new file mode 100644 index 0000000..6bdc806 --- /dev/null +++ b/node_modules/@babel/core/lib/config/item.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","_configDescriptors","createItemFromDescriptor","desc","ConfigItem","createConfigItem","value","dirname","type","descriptor","createDescriptor","path","resolve","alias","CONFIG_ITEM_BRAND","Symbol","for","getItemDescriptor","item","_descriptor","undefined","constructor","options","name","file","Object","defineProperty","enumerable","request","resolved","freeze","prototype"],"sources":["../../src/config/item.ts"],"sourcesContent":["import type { Handler } from \"gensync\";\nimport type { PluginItem, PresetItem } from \"./validation/options.ts\";\n\nimport path from \"node:path\";\nimport { createDescriptor } from \"./config-descriptors.ts\";\n\nimport type { UnloadedDescriptor } from \"./config-descriptors.ts\";\n\nexport function createItemFromDescriptor(\n desc: UnloadedDescriptor,\n): ConfigItem {\n return new ConfigItem(desc);\n}\n\n/**\n * Create a config item using the same value format used in Babel's config\n * files. Items returned from this function should be cached by the caller\n * ideally, as recreating the config item will mean re-resolving the item\n * and re-evaluating the plugin/preset function.\n */\nexport function* createConfigItem(\n value: PluginItem | PresetItem,\n {\n dirname = \".\",\n type,\n }: {\n dirname?: string;\n type?: \"preset\" | \"plugin\";\n } = {},\n): Handler> {\n const descriptor = yield* createDescriptor(value, path.resolve(dirname), {\n type,\n alias: \"programmatic item\",\n });\n\n return createItemFromDescriptor(descriptor);\n}\n\nconst CONFIG_ITEM_BRAND = Symbol.for(\"@babel/core@7 - ConfigItem\");\n\nexport function getItemDescriptor(\n item: unknown,\n): UnloadedDescriptor | void {\n if ((item as any)?.[CONFIG_ITEM_BRAND]) {\n return (item as ConfigItem)._descriptor;\n }\n\n return undefined;\n}\n\nexport type { ConfigItem };\n\n/**\n * A public representation of a plugin/preset that will _eventually_ be load.\n * Users can use this to interact with the results of a loaded Babel\n * configuration.\n *\n * Any changes to public properties of this class should be considered a\n * breaking change to Babel's API.\n */\nclass ConfigItem {\n /**\n * The private underlying descriptor that Babel actually cares about.\n * If you access this, you are a bad person.\n */\n _descriptor: UnloadedDescriptor;\n\n // TODO(Babel 9): Check if this symbol needs to be updated\n /**\n * Used to detect ConfigItem instances from other Babel instances.\n */\n [CONFIG_ITEM_BRAND] = true;\n\n /**\n * The resolved value of the item itself.\n */\n value: object | Function;\n\n /**\n * The options, if any, that were passed to the item.\n * Mutating this will lead to undefined behavior.\n *\n * \"false\" means that this item has been disabled.\n */\n options: object | void | false;\n\n /**\n * The directory that the options for this item are relative to.\n */\n dirname: string;\n\n /**\n * Get the name of the plugin, if the user gave it one.\n */\n name: string | void;\n\n /**\n * Data about the file that the item was loaded from, if Babel knows it.\n */\n file: {\n // The requested path, e.g. \"@babel/env\".\n request: string;\n // The resolved absolute path of the file.\n resolved: string;\n } | void;\n\n constructor(descriptor: UnloadedDescriptor) {\n // Make people less likely to stumble onto this if they are exploring\n // programmatically, and also make sure that if people happen to\n // pass the item through JSON.stringify, it doesn't show up.\n this._descriptor = descriptor;\n Object.defineProperty(this, \"_descriptor\", { enumerable: false });\n\n Object.defineProperty(this, CONFIG_ITEM_BRAND, { enumerable: false });\n\n this.value = this._descriptor.value;\n this.options = this._descriptor.options;\n this.dirname = this._descriptor.dirname;\n this.name = this._descriptor.name;\n this.file = this._descriptor.file\n ? {\n request: this._descriptor.file.request,\n resolved: this._descriptor.file.resolved,\n }\n : undefined;\n\n // Freeze the object to make it clear that people shouldn't expect mutating\n // this object to do anything. A new item should be created if they want\n // to change something.\n Object.freeze(this);\n }\n}\n\nObject.freeze(ConfigItem.prototype);\n"],"mappings":";;;;;;;;AAGA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,IAAAE,kBAAA,GAAAD,OAAA;AAIO,SAASE,wBAAwBA,CACtCC,IAA6B,EACZ;EACjB,OAAO,IAAIC,UAAU,CAACD,IAAI,CAAC;AAC7B;AAQO,UAAUE,gBAAgBA,CAC/BC,KAA8B,EAC9B;EACEC,OAAO,GAAG,GAAG;EACbC;AAIF,CAAC,GAAG,CAAC,CAAC,EACoB;EAC1B,MAAMC,UAAU,GAAG,OAAO,IAAAC,mCAAgB,EAACJ,KAAK,EAAEK,MAAGA,CAAC,CAACC,OAAO,CAACL,OAAO,CAAC,EAAE;IACvEC,IAAI;IACJK,KAAK,EAAE;EACT,CAAC,CAAC;EAEF,OAAOX,wBAAwB,CAACO,UAAU,CAAC;AAC7C;AAEA,MAAMK,iBAAiB,GAAGC,MAAM,CAACC,GAAG,CAAC,4BAA4B,CAAC;AAE3D,SAASC,iBAAiBA,CAC/BC,IAAa,EACmB;EAChC,IAAKA,IAAI,YAAJA,IAAI,CAAWJ,iBAAiB,CAAC,EAAE;IACtC,OAAQI,IAAI,CAAqBC,WAAW;EAC9C;EAEA,OAAOC,SAAS;AAClB;AAYA,MAAMhB,UAAU,CAAM;EA8CpBiB,WAAWA,CAACZ,UAAmC,EAAE;IAAA,KAzCjDU,WAAW;IAAA,KAMVL,iBAAiB,IAAI,IAAI;IAAA,KAK1BR,KAAK;IAAA,KAQLgB,OAAO;IAAA,KAKPf,OAAO;IAAA,KAKPgB,IAAI;IAAA,KAKJC,IAAI;IAWF,IAAI,CAACL,WAAW,GAAGV,UAAU;IAC7BgB,MAAM,CAACC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;MAAEC,UAAU,EAAE;IAAM,CAAC,CAAC;IAEjEF,MAAM,CAACC,cAAc,CAAC,IAAI,EAAEZ,iBAAiB,EAAE;MAAEa,UAAU,EAAE;IAAM,CAAC,CAAC;IAErE,IAAI,CAACrB,KAAK,GAAG,IAAI,CAACa,WAAW,CAACb,KAAK;IACnC,IAAI,CAACgB,OAAO,GAAG,IAAI,CAACH,WAAW,CAACG,OAAO;IACvC,IAAI,CAACf,OAAO,GAAG,IAAI,CAACY,WAAW,CAACZ,OAAO;IACvC,IAAI,CAACgB,IAAI,GAAG,IAAI,CAACJ,WAAW,CAACI,IAAI;IACjC,IAAI,CAACC,IAAI,GAAG,IAAI,CAACL,WAAW,CAACK,IAAI,GAC7B;MACEI,OAAO,EAAE,IAAI,CAACT,WAAW,CAACK,IAAI,CAACI,OAAO;MACtCC,QAAQ,EAAE,IAAI,CAACV,WAAW,CAACK,IAAI,CAACK;IAClC,CAAC,GACDT,SAAS;IAKbK,MAAM,CAACK,MAAM,CAAC,IAAI,CAAC;EACrB;AACF;AAEAL,MAAM,CAACK,MAAM,CAAC1B,UAAU,CAAC2B,SAAS,CAAC;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/partial.js b/node_modules/@babel/core/lib/config/partial.js new file mode 100644 index 0000000..a5a2f65 --- /dev/null +++ b/node_modules/@babel/core/lib/config/partial.js @@ -0,0 +1,158 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = loadPrivatePartialConfig; +exports.loadPartialConfig = loadPartialConfig; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +var _plugin = require("./plugin.js"); +var _util = require("./util.js"); +var _item = require("./item.js"); +var _configChain = require("./config-chain.js"); +var _environment = require("./helpers/environment.js"); +var _options = require("./validation/options.js"); +var _index = require("./files/index.js"); +var _resolveTargets = require("./resolve-targets.js"); +const _excluded = ["showIgnoredFiles"]; +function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; } +function resolveRootMode(rootDir, rootMode) { + switch (rootMode) { + case "root": + return rootDir; + case "upward-optional": + { + const upwardRootDir = (0, _index.findConfigUpwards)(rootDir); + return upwardRootDir === null ? rootDir : upwardRootDir; + } + case "upward": + { + const upwardRootDir = (0, _index.findConfigUpwards)(rootDir); + if (upwardRootDir !== null) return upwardRootDir; + throw Object.assign(new Error(`Babel was run with rootMode:"upward" but a root could not ` + `be found when searching upward from "${rootDir}".\n` + `One of the following config files must be in the directory tree: ` + `"${_index.ROOT_CONFIG_FILENAMES.join(", ")}".`), { + code: "BABEL_ROOT_NOT_FOUND", + dirname: rootDir + }); + } + default: + throw new Error(`Assertion failure - unknown rootMode value.`); + } +} +function* loadPrivatePartialConfig(inputOpts) { + if (inputOpts != null && (typeof inputOpts !== "object" || Array.isArray(inputOpts))) { + throw new Error("Babel options must be an object, null, or undefined"); + } + const args = inputOpts ? (0, _options.validate)("arguments", inputOpts) : {}; + const { + envName = (0, _environment.getEnv)(), + cwd = ".", + root: rootDir = ".", + rootMode = "root", + caller, + cloneInputAst = true + } = args; + const absoluteCwd = _path().resolve(cwd); + const absoluteRootDir = resolveRootMode(_path().resolve(absoluteCwd, rootDir), rootMode); + const filename = typeof args.filename === "string" ? _path().resolve(cwd, args.filename) : undefined; + const showConfigPath = yield* (0, _index.resolveShowConfigPath)(absoluteCwd); + const context = { + filename, + cwd: absoluteCwd, + root: absoluteRootDir, + envName, + caller, + showConfig: showConfigPath === filename + }; + const configChain = yield* (0, _configChain.buildRootChain)(args, context); + if (!configChain) return null; + const merged = { + assumptions: {} + }; + configChain.options.forEach(opts => { + (0, _util.mergeOptions)(merged, opts); + }); + const options = Object.assign({}, merged, { + targets: (0, _resolveTargets.resolveTargets)(merged, absoluteRootDir), + cloneInputAst, + babelrc: false, + configFile: false, + browserslistConfigFile: false, + passPerPreset: false, + envName: context.envName, + cwd: context.cwd, + root: context.root, + rootMode: "root", + filename: typeof context.filename === "string" ? context.filename : undefined, + plugins: configChain.plugins.map(descriptor => (0, _item.createItemFromDescriptor)(descriptor)), + presets: configChain.presets.map(descriptor => (0, _item.createItemFromDescriptor)(descriptor)) + }); + return { + options, + context, + fileHandling: configChain.fileHandling, + ignore: configChain.ignore, + babelrc: configChain.babelrc, + config: configChain.config, + files: configChain.files + }; +} +function* loadPartialConfig(opts) { + let showIgnoredFiles = false; + if (typeof opts === "object" && opts !== null && !Array.isArray(opts)) { + var _opts = opts; + ({ + showIgnoredFiles + } = _opts); + opts = _objectWithoutPropertiesLoose(_opts, _excluded); + _opts; + } + const result = yield* loadPrivatePartialConfig(opts); + if (!result) return null; + const { + options, + babelrc, + ignore, + config, + fileHandling, + files + } = result; + if (fileHandling === "ignored" && !showIgnoredFiles) { + return null; + } + (options.plugins || []).forEach(item => { + if (item.value instanceof _plugin.default) { + throw new Error("Passing cached plugin instances is not supported in " + "babel.loadPartialConfig()"); + } + }); + return new PartialConfig(options, babelrc ? babelrc.filepath : undefined, ignore ? ignore.filepath : undefined, config ? config.filepath : undefined, fileHandling, files); +} +class PartialConfig { + constructor(options, babelrc, ignore, config, fileHandling, files) { + this.options = void 0; + this.babelrc = void 0; + this.babelignore = void 0; + this.config = void 0; + this.fileHandling = void 0; + this.files = void 0; + this.options = options; + this.babelignore = ignore; + this.babelrc = babelrc; + this.config = config; + this.fileHandling = fileHandling; + this.files = files; + Object.freeze(this); + } + hasFilesystemConfig() { + return this.babelrc !== undefined || this.config !== undefined; + } +} +Object.freeze(PartialConfig.prototype); +0 && 0; + +//# sourceMappingURL=partial.js.map diff --git a/node_modules/@babel/core/lib/config/partial.js.map b/node_modules/@babel/core/lib/config/partial.js.map new file mode 100644 index 0000000..e54684d --- /dev/null +++ b/node_modules/@babel/core/lib/config/partial.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","_plugin","_util","_item","_configChain","_environment","_options","_index","_resolveTargets","_excluded","_objectWithoutPropertiesLoose","r","e","t","n","hasOwnProperty","call","indexOf","resolveRootMode","rootDir","rootMode","upwardRootDir","findConfigUpwards","Object","assign","Error","ROOT_CONFIG_FILENAMES","join","code","dirname","loadPrivatePartialConfig","inputOpts","Array","isArray","args","validate","envName","getEnv","cwd","root","caller","cloneInputAst","absoluteCwd","path","resolve","absoluteRootDir","filename","undefined","showConfigPath","resolveShowConfigPath","context","showConfig","configChain","buildRootChain","merged","assumptions","options","forEach","opts","mergeOptions","targets","resolveTargets","babelrc","configFile","browserslistConfigFile","passPerPreset","plugins","map","descriptor","createItemFromDescriptor","presets","fileHandling","ignore","config","files","loadPartialConfig","showIgnoredFiles","_opts","result","item","value","Plugin","PartialConfig","filepath","constructor","babelignore","freeze","hasFilesystemConfig","prototype"],"sources":["../../src/config/partial.ts"],"sourcesContent":["import path from \"node:path\";\nimport type { Handler } from \"gensync\";\nimport Plugin from \"./plugin.ts\";\nimport { mergeOptions } from \"./util.ts\";\nimport { createItemFromDescriptor } from \"./item.ts\";\nimport { buildRootChain } from \"./config-chain.ts\";\nimport type { ConfigContext, FileHandling } from \"./config-chain.ts\";\nimport { getEnv } from \"./helpers/environment.ts\";\nimport { validate } from \"./validation/options.ts\";\n\nimport type {\n RootMode,\n InputOptions,\n NormalizedOptions,\n} from \"./validation/options.ts\";\n\nimport {\n findConfigUpwards,\n resolveShowConfigPath,\n ROOT_CONFIG_FILENAMES,\n} from \"./files/index.ts\";\nimport type { ConfigFile, IgnoreFile } from \"./files/index.ts\";\nimport { resolveTargets } from \"./resolve-targets.ts\";\n\nfunction resolveRootMode(rootDir: string, rootMode: RootMode): string {\n switch (rootMode) {\n case \"root\":\n return rootDir;\n\n case \"upward-optional\": {\n const upwardRootDir = findConfigUpwards(rootDir);\n return upwardRootDir === null ? rootDir : upwardRootDir;\n }\n\n case \"upward\": {\n const upwardRootDir = findConfigUpwards(rootDir);\n if (upwardRootDir !== null) return upwardRootDir;\n\n throw Object.assign(\n new Error(\n `Babel was run with rootMode:\"upward\" but a root could not ` +\n `be found when searching upward from \"${rootDir}\".\\n` +\n `One of the following config files must be in the directory tree: ` +\n `\"${ROOT_CONFIG_FILENAMES.join(\", \")}\".`,\n ) as any,\n {\n code: \"BABEL_ROOT_NOT_FOUND\",\n dirname: rootDir,\n },\n );\n }\n default:\n throw new Error(`Assertion failure - unknown rootMode value.`);\n }\n}\n\nexport type PrivPartialConfig = {\n showIgnoredFiles?: boolean;\n options: NormalizedOptions;\n context: ConfigContext;\n babelrc: ConfigFile | undefined;\n config: ConfigFile | undefined;\n ignore: IgnoreFile | undefined;\n fileHandling: FileHandling;\n files: Set;\n};\n\nexport default function* loadPrivatePartialConfig(\n inputOpts: InputOptions,\n): Handler {\n if (\n inputOpts != null &&\n (typeof inputOpts !== \"object\" || Array.isArray(inputOpts))\n ) {\n throw new Error(\"Babel options must be an object, null, or undefined\");\n }\n\n const args = inputOpts ? validate(\"arguments\", inputOpts) : {};\n\n const {\n envName = getEnv(),\n cwd = \".\",\n root: rootDir = \".\",\n rootMode = \"root\",\n caller,\n cloneInputAst = true,\n } = args;\n const absoluteCwd = path.resolve(cwd);\n const absoluteRootDir = resolveRootMode(\n path.resolve(absoluteCwd, rootDir),\n rootMode,\n );\n\n const filename =\n typeof args.filename === \"string\"\n ? path.resolve(cwd, args.filename)\n : undefined;\n\n const showConfigPath = yield* resolveShowConfigPath(absoluteCwd);\n\n const context: ConfigContext = {\n filename,\n cwd: absoluteCwd,\n root: absoluteRootDir,\n envName,\n caller,\n showConfig: showConfigPath === filename,\n };\n\n const configChain = yield* buildRootChain(args, context);\n if (!configChain) return null;\n\n const merged = {\n assumptions: {},\n };\n configChain.options.forEach(opts => {\n mergeOptions(merged as any, opts);\n });\n\n const options: NormalizedOptions = {\n ...merged,\n targets: resolveTargets(merged, absoluteRootDir),\n\n // Tack the passes onto the object itself so that, if this object is\n // passed back to Babel a second time, it will be in the right structure\n // to not change behavior.\n cloneInputAst,\n babelrc: false,\n configFile: false,\n browserslistConfigFile: false,\n passPerPreset: false,\n envName: context.envName,\n cwd: context.cwd,\n root: context.root,\n rootMode: \"root\",\n filename:\n typeof context.filename === \"string\" ? context.filename : undefined,\n\n plugins: configChain.plugins.map(descriptor =>\n createItemFromDescriptor(descriptor),\n ),\n presets: configChain.presets.map(descriptor =>\n createItemFromDescriptor(descriptor),\n ),\n };\n\n return {\n options,\n context,\n fileHandling: configChain.fileHandling,\n ignore: configChain.ignore,\n babelrc: configChain.babelrc,\n config: configChain.config,\n files: configChain.files,\n };\n}\n\nexport function* loadPartialConfig(\n opts?: InputOptions,\n): Handler {\n let showIgnoredFiles = false;\n // We only extract showIgnoredFiles if opts is an object, so that\n // loadPrivatePartialConfig can throw the appropriate error if it's not.\n if (typeof opts === \"object\" && opts !== null && !Array.isArray(opts)) {\n ({ showIgnoredFiles, ...opts } = opts);\n }\n\n const result: PrivPartialConfig | undefined | null =\n yield* loadPrivatePartialConfig(opts);\n if (!result) return null;\n\n const { options, babelrc, ignore, config, fileHandling, files } = result;\n\n if (fileHandling === \"ignored\" && !showIgnoredFiles) {\n return null;\n }\n\n (options.plugins || []).forEach(item => {\n if (item.value instanceof Plugin) {\n throw new Error(\n \"Passing cached plugin instances is not supported in \" +\n \"babel.loadPartialConfig()\",\n );\n }\n });\n\n return new PartialConfig(\n options,\n babelrc ? babelrc.filepath : undefined,\n ignore ? ignore.filepath : undefined,\n config ? config.filepath : undefined,\n fileHandling,\n files,\n );\n}\n\nexport type { PartialConfig };\n\nclass PartialConfig {\n /**\n * These properties are public, so any changes to them should be considered\n * a breaking change to Babel's API.\n */\n options: NormalizedOptions;\n babelrc: string | undefined;\n babelignore: string | undefined;\n config: string | undefined;\n fileHandling: FileHandling;\n files: Set;\n\n constructor(\n options: NormalizedOptions,\n babelrc: string | undefined,\n ignore: string | undefined,\n config: string | undefined,\n fileHandling: FileHandling,\n files: Set,\n ) {\n this.options = options;\n this.babelignore = ignore;\n this.babelrc = babelrc;\n this.config = config;\n this.fileHandling = fileHandling;\n this.files = files;\n\n // Freeze since this is a public API and it should be extremely obvious that\n // reassigning properties on here does nothing.\n Object.freeze(this);\n }\n\n /**\n * Returns true if there is a config file in the filesystem for this config.\n */\n hasFilesystemConfig(): boolean {\n return this.babelrc !== undefined || this.config !== undefined;\n }\n}\nObject.freeze(PartialConfig.prototype);\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/pattern-to-regex.js b/node_modules/@babel/core/lib/config/pattern-to-regex.js new file mode 100644 index 0000000..32de02d --- /dev/null +++ b/node_modules/@babel/core/lib/config/pattern-to-regex.js @@ -0,0 +1,38 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = pathToPattern; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +const sep = `\\${_path().sep}`; +const endSep = `(?:${sep}|$)`; +const substitution = `[^${sep}]+`; +const starPat = `(?:${substitution}${sep})`; +const starPatLast = `(?:${substitution}${endSep})`; +const starStarPat = `${starPat}*?`; +const starStarPatLast = `${starPat}*?${starPatLast}?`; +function escapeRegExp(string) { + return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&"); +} +function pathToPattern(pattern, dirname) { + const parts = _path().resolve(dirname, pattern).split(_path().sep); + return new RegExp(["^", ...parts.map((part, i) => { + const last = i === parts.length - 1; + if (part === "**") return last ? starStarPatLast : starStarPat; + if (part === "*") return last ? starPatLast : starPat; + if (part.startsWith("*.")) { + return substitution + escapeRegExp(part.slice(1)) + (last ? endSep : sep); + } + return escapeRegExp(part) + (last ? endSep : sep); + })].join("")); +} +0 && 0; + +//# sourceMappingURL=pattern-to-regex.js.map diff --git a/node_modules/@babel/core/lib/config/pattern-to-regex.js.map b/node_modules/@babel/core/lib/config/pattern-to-regex.js.map new file mode 100644 index 0000000..0da14ff --- /dev/null +++ b/node_modules/@babel/core/lib/config/pattern-to-regex.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","sep","path","endSep","substitution","starPat","starPatLast","starStarPat","starStarPatLast","escapeRegExp","string","replace","pathToPattern","pattern","dirname","parts","resolve","split","RegExp","map","part","i","last","length","startsWith","slice","join"],"sources":["../../src/config/pattern-to-regex.ts"],"sourcesContent":["import path from \"node:path\";\n\nconst sep = `\\\\${path.sep}`;\nconst endSep = `(?:${sep}|$)`;\n\nconst substitution = `[^${sep}]+`;\n\nconst starPat = `(?:${substitution}${sep})`;\nconst starPatLast = `(?:${substitution}${endSep})`;\n\nconst starStarPat = `${starPat}*?`;\nconst starStarPatLast = `${starPat}*?${starPatLast}?`;\n\nfunction escapeRegExp(string: string) {\n return string.replace(/[|\\\\{}()[\\]^$+*?.]/g, \"\\\\$&\");\n}\n\n/**\n * Implement basic pattern matching that will allow users to do the simple\n * tests with * and **. If users want full complex pattern matching, then can\n * always use regex matching, or function validation.\n */\nexport default function pathToPattern(\n pattern: string,\n dirname: string,\n): RegExp {\n const parts = path.resolve(dirname, pattern).split(path.sep);\n\n return new RegExp(\n [\n \"^\",\n ...parts.map((part, i) => {\n const last = i === parts.length - 1;\n\n // ** matches 0 or more path parts.\n if (part === \"**\") return last ? starStarPatLast : starStarPat;\n\n // * matches 1 path part.\n if (part === \"*\") return last ? starPatLast : starPat;\n\n // *.ext matches a wildcard with an extension.\n if (part.startsWith(\"*.\")) {\n return (\n substitution + escapeRegExp(part.slice(1)) + (last ? endSep : sep)\n );\n }\n\n // Otherwise match the pattern text.\n return escapeRegExp(part) + (last ? endSep : sep);\n }),\n ].join(\"\"),\n );\n}\n"],"mappings":";;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,MAAME,GAAG,GAAG,KAAKC,MAAGA,CAAC,CAACD,GAAG,EAAE;AAC3B,MAAME,MAAM,GAAG,MAAMF,GAAG,KAAK;AAE7B,MAAMG,YAAY,GAAG,KAAKH,GAAG,IAAI;AAEjC,MAAMI,OAAO,GAAG,MAAMD,YAAY,GAAGH,GAAG,GAAG;AAC3C,MAAMK,WAAW,GAAG,MAAMF,YAAY,GAAGD,MAAM,GAAG;AAElD,MAAMI,WAAW,GAAG,GAAGF,OAAO,IAAI;AAClC,MAAMG,eAAe,GAAG,GAAGH,OAAO,KAAKC,WAAW,GAAG;AAErD,SAASG,YAAYA,CAACC,MAAc,EAAE;EACpC,OAAOA,MAAM,CAACC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;AACtD;AAOe,SAASC,aAAaA,CACnCC,OAAe,EACfC,OAAe,EACP;EACR,MAAMC,KAAK,GAAGb,MAAGA,CAAC,CAACc,OAAO,CAACF,OAAO,EAAED,OAAO,CAAC,CAACI,KAAK,CAACf,MAAGA,CAAC,CAACD,GAAG,CAAC;EAE5D,OAAO,IAAIiB,MAAM,CACf,CACE,GAAG,EACH,GAAGH,KAAK,CAACI,GAAG,CAAC,CAACC,IAAI,EAAEC,CAAC,KAAK;IACxB,MAAMC,IAAI,GAAGD,CAAC,KAAKN,KAAK,CAACQ,MAAM,GAAG,CAAC;IAGnC,IAAIH,IAAI,KAAK,IAAI,EAAE,OAAOE,IAAI,GAAGd,eAAe,GAAGD,WAAW;IAG9D,IAAIa,IAAI,KAAK,GAAG,EAAE,OAAOE,IAAI,GAAGhB,WAAW,GAAGD,OAAO;IAGrD,IAAIe,IAAI,CAACI,UAAU,CAAC,IAAI,CAAC,EAAE;MACzB,OACEpB,YAAY,GAAGK,YAAY,CAACW,IAAI,CAACK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAIH,IAAI,GAAGnB,MAAM,GAAGF,GAAG,CAAC;IAEtE;IAGA,OAAOQ,YAAY,CAACW,IAAI,CAAC,IAAIE,IAAI,GAAGnB,MAAM,GAAGF,GAAG,CAAC;EACnD,CAAC,CAAC,CACH,CAACyB,IAAI,CAAC,EAAE,CACX,CAAC;AACH;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/plugin.js b/node_modules/@babel/core/lib/config/plugin.js new file mode 100644 index 0000000..21a28cd --- /dev/null +++ b/node_modules/@babel/core/lib/config/plugin.js @@ -0,0 +1,33 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +var _deepArray = require("./helpers/deep-array.js"); +class Plugin { + constructor(plugin, options, key, externalDependencies = (0, _deepArray.finalize)([])) { + this.key = void 0; + this.manipulateOptions = void 0; + this.post = void 0; + this.pre = void 0; + this.visitor = void 0; + this.parserOverride = void 0; + this.generatorOverride = void 0; + this.options = void 0; + this.externalDependencies = void 0; + this.key = plugin.name || key; + this.manipulateOptions = plugin.manipulateOptions; + this.post = plugin.post; + this.pre = plugin.pre; + this.visitor = plugin.visitor || {}; + this.parserOverride = plugin.parserOverride; + this.generatorOverride = plugin.generatorOverride; + this.options = options; + this.externalDependencies = externalDependencies; + } +} +exports.default = Plugin; +0 && 0; + +//# sourceMappingURL=plugin.js.map diff --git a/node_modules/@babel/core/lib/config/plugin.js.map b/node_modules/@babel/core/lib/config/plugin.js.map new file mode 100644 index 0000000..c3bccb5 --- /dev/null +++ b/node_modules/@babel/core/lib/config/plugin.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_deepArray","require","Plugin","constructor","plugin","options","key","externalDependencies","finalize","manipulateOptions","post","pre","visitor","parserOverride","generatorOverride","name","exports","default"],"sources":["../../src/config/plugin.ts"],"sourcesContent":["import { finalize } from \"./helpers/deep-array.ts\";\nimport type { ReadonlyDeepArray } from \"./helpers/deep-array.ts\";\nimport type { PluginObject } from \"./validation/plugins.ts\";\n\nexport default class Plugin {\n key: string | undefined | null;\n manipulateOptions?: PluginObject[\"manipulateOptions\"];\n post?: PluginObject[\"post\"];\n pre?: PluginObject[\"pre\"];\n visitor: PluginObject[\"visitor\"];\n\n parserOverride?: PluginObject[\"parserOverride\"];\n generatorOverride?: PluginObject[\"generatorOverride\"];\n\n options: object;\n\n externalDependencies: ReadonlyDeepArray;\n\n constructor(\n plugin: PluginObject,\n options: object,\n key?: string,\n externalDependencies: ReadonlyDeepArray = finalize([]),\n ) {\n this.key = plugin.name || key;\n\n this.manipulateOptions = plugin.manipulateOptions;\n this.post = plugin.post;\n this.pre = plugin.pre;\n this.visitor = plugin.visitor || {};\n this.parserOverride = plugin.parserOverride;\n this.generatorOverride = plugin.generatorOverride;\n\n this.options = options;\n this.externalDependencies = externalDependencies;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAIe,MAAMC,MAAM,CAAC;EAc1BC,WAAWA,CACTC,MAAoB,EACpBC,OAAe,EACfC,GAAY,EACZC,oBAA+C,GAAG,IAAAC,mBAAQ,EAAC,EAAE,CAAC,EAC9D;IAAA,KAlBFF,GAAG;IAAA,KACHG,iBAAiB;IAAA,KACjBC,IAAI;IAAA,KACJC,GAAG;IAAA,KACHC,OAAO;IAAA,KAEPC,cAAc;IAAA,KACdC,iBAAiB;IAAA,KAEjBT,OAAO;IAAA,KAEPE,oBAAoB;IAQlB,IAAI,CAACD,GAAG,GAAGF,MAAM,CAACW,IAAI,IAAIT,GAAG;IAE7B,IAAI,CAACG,iBAAiB,GAAGL,MAAM,CAACK,iBAAiB;IACjD,IAAI,CAACC,IAAI,GAAGN,MAAM,CAACM,IAAI;IACvB,IAAI,CAACC,GAAG,GAAGP,MAAM,CAACO,GAAG;IACrB,IAAI,CAACC,OAAO,GAAGR,MAAM,CAACQ,OAAO,IAAI,CAAC,CAAC;IACnC,IAAI,CAACC,cAAc,GAAGT,MAAM,CAACS,cAAc;IAC3C,IAAI,CAACC,iBAAiB,GAAGV,MAAM,CAACU,iBAAiB;IAEjD,IAAI,CAACT,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,oBAAoB,GAAGA,oBAAoB;EAClD;AACF;AAACS,OAAA,CAAAC,OAAA,GAAAf,MAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/printer.js b/node_modules/@babel/core/lib/config/printer.js new file mode 100644 index 0000000..3ac2c07 --- /dev/null +++ b/node_modules/@babel/core/lib/config/printer.js @@ -0,0 +1,113 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ConfigPrinter = exports.ChainFormatter = void 0; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +const ChainFormatter = exports.ChainFormatter = { + Programmatic: 0, + Config: 1 +}; +const Formatter = { + title(type, callerName, filepath) { + let title = ""; + if (type === ChainFormatter.Programmatic) { + title = "programmatic options"; + if (callerName) { + title += " from " + callerName; + } + } else { + title = "config " + filepath; + } + return title; + }, + loc(index, envName) { + let loc = ""; + if (index != null) { + loc += `.overrides[${index}]`; + } + if (envName != null) { + loc += `.env["${envName}"]`; + } + return loc; + }, + *optionsAndDescriptors(opt) { + const content = Object.assign({}, opt.options); + delete content.overrides; + delete content.env; + const pluginDescriptors = [...(yield* opt.plugins())]; + if (pluginDescriptors.length) { + content.plugins = pluginDescriptors.map(d => descriptorToConfig(d)); + } + const presetDescriptors = [...(yield* opt.presets())]; + if (presetDescriptors.length) { + content.presets = [...presetDescriptors].map(d => descriptorToConfig(d)); + } + return JSON.stringify(content, undefined, 2); + } +}; +function descriptorToConfig(d) { + var _d$file; + let name = (_d$file = d.file) == null ? void 0 : _d$file.request; + if (name == null) { + if (typeof d.value === "object") { + name = d.value; + } else if (typeof d.value === "function") { + name = `[Function: ${d.value.toString().slice(0, 50)} ... ]`; + } + } + if (name == null) { + name = "[Unknown]"; + } + if (d.options === undefined) { + return name; + } else if (d.name == null) { + return [name, d.options]; + } else { + return [name, d.options, d.name]; + } +} +class ConfigPrinter { + constructor() { + this._stack = []; + } + configure(enabled, type, { + callerName, + filepath + }) { + if (!enabled) return () => {}; + return (content, index, envName) => { + this._stack.push({ + type, + callerName, + filepath, + content, + index, + envName + }); + }; + } + static *format(config) { + let title = Formatter.title(config.type, config.callerName, config.filepath); + const loc = Formatter.loc(config.index, config.envName); + if (loc) title += ` ${loc}`; + const content = yield* Formatter.optionsAndDescriptors(config.content); + return `${title}\n${content}`; + } + *output() { + if (this._stack.length === 0) return ""; + const configs = yield* _gensync().all(this._stack.map(s => ConfigPrinter.format(s))); + return configs.join("\n\n"); + } +} +exports.ConfigPrinter = ConfigPrinter; +0 && 0; + +//# sourceMappingURL=printer.js.map diff --git a/node_modules/@babel/core/lib/config/printer.js.map b/node_modules/@babel/core/lib/config/printer.js.map new file mode 100644 index 0000000..de47394 --- /dev/null +++ b/node_modules/@babel/core/lib/config/printer.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","ChainFormatter","exports","Programmatic","Config","Formatter","title","type","callerName","filepath","loc","index","envName","optionsAndDescriptors","opt","content","Object","assign","options","overrides","env","pluginDescriptors","plugins","length","map","d","descriptorToConfig","presetDescriptors","presets","JSON","stringify","undefined","_d$file","name","file","request","value","toString","slice","ConfigPrinter","constructor","_stack","configure","enabled","push","format","config","output","configs","gensync","all","s","join"],"sources":["../../src/config/printer.ts"],"sourcesContent":["import gensync from \"gensync\";\n\nimport type { Handler } from \"gensync\";\n\nimport type {\n OptionsAndDescriptors,\n UnloadedDescriptor,\n} from \"./config-descriptors.ts\";\n\n// todo: Use flow enums when @babel/transform-flow-types supports it\nexport const ChainFormatter = {\n Programmatic: 0,\n Config: 1,\n};\n\ntype PrintableConfig = {\n content: OptionsAndDescriptors;\n type: (typeof ChainFormatter)[keyof typeof ChainFormatter];\n callerName: string | undefined | null;\n filepath: string | undefined | null;\n index: number | undefined | null;\n envName: string | undefined | null;\n};\n\nconst Formatter = {\n title(\n type: (typeof ChainFormatter)[keyof typeof ChainFormatter],\n callerName?: string | null,\n filepath?: string | null,\n ): string {\n let title = \"\";\n if (type === ChainFormatter.Programmatic) {\n title = \"programmatic options\";\n if (callerName) {\n title += \" from \" + callerName;\n }\n } else {\n title = \"config \" + filepath;\n }\n return title;\n },\n loc(index?: number | null, envName?: string | null): string {\n let loc = \"\";\n if (index != null) {\n loc += `.overrides[${index}]`;\n }\n if (envName != null) {\n loc += `.env[\"${envName}\"]`;\n }\n return loc;\n },\n\n *optionsAndDescriptors(opt: OptionsAndDescriptors) {\n const content = { ...opt.options };\n // overrides and env will be printed as separated config items\n delete content.overrides;\n delete content.env;\n // resolve to descriptors\n const pluginDescriptors = [...(yield* opt.plugins())];\n if (pluginDescriptors.length) {\n content.plugins = pluginDescriptors.map(d => descriptorToConfig(d));\n }\n const presetDescriptors = [...(yield* opt.presets())];\n if (presetDescriptors.length) {\n content.presets = [...presetDescriptors].map(d => descriptorToConfig(d));\n }\n return JSON.stringify(content, undefined, 2);\n },\n};\n\nfunction descriptorToConfig(\n d: UnloadedDescriptor,\n): string | [string, object] | [string, object, string] {\n let name: string = d.file?.request;\n if (name == null) {\n if (typeof d.value === \"object\") {\n // @ts-expect-error FIXME\n name = d.value;\n } else if (typeof d.value === \"function\") {\n // If the unloaded descriptor is a function, i.e. `plugins: [ require(\"my-plugin\") ]`,\n // we print the first 50 characters of the function source code and hopefully we can see\n // `name: 'my-plugin'` in the source\n name = `[Function: ${d.value.toString().slice(0, 50)} ... ]`;\n }\n }\n if (name == null) {\n name = \"[Unknown]\";\n }\n if (d.options === undefined) {\n return name;\n } else if (d.name == null) {\n return [name, d.options];\n } else {\n return [name, d.options, d.name];\n }\n}\n\nexport class ConfigPrinter {\n _stack: PrintableConfig[] = [];\n configure(\n enabled: boolean,\n type: (typeof ChainFormatter)[keyof typeof ChainFormatter],\n {\n callerName,\n filepath,\n }: {\n callerName?: string;\n filepath?: string;\n },\n ) {\n if (!enabled) return () => {};\n return (\n content: OptionsAndDescriptors,\n index?: number | null,\n envName?: string | null,\n ) => {\n this._stack.push({\n type,\n callerName,\n filepath,\n content,\n index,\n envName,\n });\n };\n }\n static *format(config: PrintableConfig): Handler {\n let title = Formatter.title(\n config.type,\n config.callerName,\n config.filepath,\n );\n const loc = Formatter.loc(config.index, config.envName);\n if (loc) title += ` ${loc}`;\n const content = yield* Formatter.optionsAndDescriptors(config.content);\n return `${title}\\n${content}`;\n }\n\n *output(): Handler {\n if (this._stack.length === 0) return \"\";\n const configs = yield* gensync.all(\n this._stack.map(s => ConfigPrinter.format(s)),\n );\n return configs.join(\"\\n\\n\");\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/resolve-targets-browser.js b/node_modules/@babel/core/lib/config/resolve-targets-browser.js new file mode 100644 index 0000000..3fdbd88 --- /dev/null +++ b/node_modules/@babel/core/lib/config/resolve-targets-browser.js @@ -0,0 +1,41 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.resolveBrowserslistConfigFile = resolveBrowserslistConfigFile; +exports.resolveTargets = resolveTargets; +function _helperCompilationTargets() { + const data = require("@babel/helper-compilation-targets"); + _helperCompilationTargets = function () { + return data; + }; + return data; +} +function resolveBrowserslistConfigFile(browserslistConfigFile, configFilePath) { + return undefined; +} +function resolveTargets(options, root) { + const optTargets = options.targets; + let targets; + if (typeof optTargets === "string" || Array.isArray(optTargets)) { + targets = { + browsers: optTargets + }; + } else if (optTargets) { + if ("esmodules" in optTargets) { + targets = Object.assign({}, optTargets, { + esmodules: "intersect" + }); + } else { + targets = optTargets; + } + } + return (0, _helperCompilationTargets().default)(targets, { + ignoreBrowserslistConfig: true, + browserslistEnv: options.browserslistEnv + }); +} +0 && 0; + +//# sourceMappingURL=resolve-targets-browser.js.map diff --git a/node_modules/@babel/core/lib/config/resolve-targets-browser.js.map b/node_modules/@babel/core/lib/config/resolve-targets-browser.js.map new file mode 100644 index 0000000..57b49e3 --- /dev/null +++ b/node_modules/@babel/core/lib/config/resolve-targets-browser.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_helperCompilationTargets","data","require","resolveBrowserslistConfigFile","browserslistConfigFile","configFilePath","undefined","resolveTargets","options","root","optTargets","targets","Array","isArray","browsers","Object","assign","esmodules","getTargets","ignoreBrowserslistConfig","browserslistEnv"],"sources":["../../src/config/resolve-targets-browser.ts"],"sourcesContent":["/* c8 ignore start */\n\nimport type { InputOptions } from \"./validation/options.ts\";\nimport getTargets, {\n type InputTargets,\n} from \"@babel/helper-compilation-targets\";\n\nimport type { Targets } from \"@babel/helper-compilation-targets\";\n\nexport function resolveBrowserslistConfigFile(\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n browserslistConfigFile: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n configFilePath: string,\n): string | void {\n return undefined;\n}\n\nexport function resolveTargets(\n options: InputOptions,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n root: string,\n): Targets {\n const optTargets = options.targets;\n let targets: InputTargets;\n\n if (typeof optTargets === \"string\" || Array.isArray(optTargets)) {\n targets = { browsers: optTargets };\n } else if (optTargets) {\n if (\"esmodules\" in optTargets) {\n targets = { ...optTargets, esmodules: \"intersect\" };\n } else {\n // https://github.com/microsoft/TypeScript/issues/17002\n targets = optTargets as InputTargets;\n }\n }\n\n return getTargets(targets, {\n ignoreBrowserslistConfig: true,\n browserslistEnv: options.browserslistEnv,\n });\n}\n"],"mappings":";;;;;;;AAGA,SAAAA,0BAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,yBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMO,SAASE,6BAA6BA,CAE3CC,sBAA8B,EAE9BC,cAAsB,EACP;EACf,OAAOC,SAAS;AAClB;AAEO,SAASC,cAAcA,CAC5BC,OAAqB,EAErBC,IAAY,EACH;EACT,MAAMC,UAAU,GAAGF,OAAO,CAACG,OAAO;EAClC,IAAIA,OAAqB;EAEzB,IAAI,OAAOD,UAAU,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,EAAE;IAC/DC,OAAO,GAAG;MAAEG,QAAQ,EAAEJ;IAAW,CAAC;EACpC,CAAC,MAAM,IAAIA,UAAU,EAAE;IACrB,IAAI,WAAW,IAAIA,UAAU,EAAE;MAC7BC,OAAO,GAAAI,MAAA,CAAAC,MAAA,KAAQN,UAAU;QAAEO,SAAS,EAAE;MAAW,EAAE;IACrD,CAAC,MAAM;MAELN,OAAO,GAAGD,UAA0B;IACtC;EACF;EAEA,OAAO,IAAAQ,mCAAU,EAACP,OAAO,EAAE;IACzBQ,wBAAwB,EAAE,IAAI;IAC9BC,eAAe,EAAEZ,OAAO,CAACY;EAC3B,CAAC,CAAC;AACJ;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/resolve-targets.js b/node_modules/@babel/core/lib/config/resolve-targets.js new file mode 100644 index 0000000..1fc539a --- /dev/null +++ b/node_modules/@babel/core/lib/config/resolve-targets.js @@ -0,0 +1,61 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.resolveBrowserslistConfigFile = resolveBrowserslistConfigFile; +exports.resolveTargets = resolveTargets; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _helperCompilationTargets() { + const data = require("@babel/helper-compilation-targets"); + _helperCompilationTargets = function () { + return data; + }; + return data; +} +({}); +function resolveBrowserslistConfigFile(browserslistConfigFile, configFileDir) { + return _path().resolve(configFileDir, browserslistConfigFile); +} +function resolveTargets(options, root) { + const optTargets = options.targets; + let targets; + if (typeof optTargets === "string" || Array.isArray(optTargets)) { + targets = { + browsers: optTargets + }; + } else if (optTargets) { + if ("esmodules" in optTargets) { + targets = Object.assign({}, optTargets, { + esmodules: "intersect" + }); + } else { + targets = optTargets; + } + } + const { + browserslistConfigFile + } = options; + let configFile; + let ignoreBrowserslistConfig = false; + if (typeof browserslistConfigFile === "string") { + configFile = browserslistConfigFile; + } else { + ignoreBrowserslistConfig = browserslistConfigFile === false; + } + return (0, _helperCompilationTargets().default)(targets, { + ignoreBrowserslistConfig, + configFile, + configPath: root, + browserslistEnv: options.browserslistEnv + }); +} +0 && 0; + +//# sourceMappingURL=resolve-targets.js.map diff --git a/node_modules/@babel/core/lib/config/resolve-targets.js.map b/node_modules/@babel/core/lib/config/resolve-targets.js.map new file mode 100644 index 0000000..575fd4f --- /dev/null +++ b/node_modules/@babel/core/lib/config/resolve-targets.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","_helperCompilationTargets","resolveBrowserslistConfigFile","browserslistConfigFile","configFileDir","path","resolve","resolveTargets","options","root","optTargets","targets","Array","isArray","browsers","Object","assign","esmodules","configFile","ignoreBrowserslistConfig","getTargets","configPath","browserslistEnv"],"sources":["../../src/config/resolve-targets.ts"],"sourcesContent":["type browserType = typeof import(\"./resolve-targets-browser\");\ntype nodeType = typeof import(\"./resolve-targets\");\n\n// Kind of gross, but essentially asserting that the exports of this module are the same as the\n// exports of index-browser, since this file may be replaced at bundle time with index-browser.\n// eslint-disable-next-line @typescript-eslint/no-unused-expressions\n({}) as any as browserType as nodeType;\n\nimport type { InputOptions } from \"./validation/options.ts\";\nimport path from \"node:path\";\nimport getTargets, {\n type InputTargets,\n} from \"@babel/helper-compilation-targets\";\n\nimport type { Targets } from \"@babel/helper-compilation-targets\";\n\nexport function resolveBrowserslistConfigFile(\n browserslistConfigFile: string,\n configFileDir: string,\n): string | undefined {\n return path.resolve(configFileDir, browserslistConfigFile);\n}\n\nexport function resolveTargets(options: InputOptions, root: string): Targets {\n const optTargets = options.targets;\n let targets: InputTargets;\n\n if (typeof optTargets === \"string\" || Array.isArray(optTargets)) {\n targets = { browsers: optTargets };\n } else if (optTargets) {\n if (\"esmodules\" in optTargets) {\n targets = { ...optTargets, esmodules: \"intersect\" };\n } else {\n // https://github.com/microsoft/TypeScript/issues/17002\n targets = optTargets as InputTargets;\n }\n }\n\n const { browserslistConfigFile } = options;\n let configFile;\n let ignoreBrowserslistConfig = false;\n if (typeof browserslistConfigFile === \"string\") {\n configFile = browserslistConfigFile;\n } else {\n ignoreBrowserslistConfig = browserslistConfigFile === false;\n }\n\n return getTargets(targets, {\n ignoreBrowserslistConfig,\n configFile,\n configPath: root,\n browserslistEnv: options.browserslistEnv,\n });\n}\n"],"mappings":";;;;;;;AASA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,0BAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,yBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAJA,CAAC,CAAC,CAAC;AAUI,SAASG,6BAA6BA,CAC3CC,sBAA8B,EAC9BC,aAAqB,EACD;EACpB,OAAOC,MAAGA,CAAC,CAACC,OAAO,CAACF,aAAa,EAAED,sBAAsB,CAAC;AAC5D;AAEO,SAASI,cAAcA,CAACC,OAAqB,EAAEC,IAAY,EAAW;EAC3E,MAAMC,UAAU,GAAGF,OAAO,CAACG,OAAO;EAClC,IAAIA,OAAqB;EAEzB,IAAI,OAAOD,UAAU,KAAK,QAAQ,IAAIE,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,EAAE;IAC/DC,OAAO,GAAG;MAAEG,QAAQ,EAAEJ;IAAW,CAAC;EACpC,CAAC,MAAM,IAAIA,UAAU,EAAE;IACrB,IAAI,WAAW,IAAIA,UAAU,EAAE;MAC7BC,OAAO,GAAAI,MAAA,CAAAC,MAAA,KAAQN,UAAU;QAAEO,SAAS,EAAE;MAAW,EAAE;IACrD,CAAC,MAAM;MAELN,OAAO,GAAGD,UAA0B;IACtC;EACF;EAEA,MAAM;IAAEP;EAAuB,CAAC,GAAGK,OAAO;EAC1C,IAAIU,UAAU;EACd,IAAIC,wBAAwB,GAAG,KAAK;EACpC,IAAI,OAAOhB,sBAAsB,KAAK,QAAQ,EAAE;IAC9Ce,UAAU,GAAGf,sBAAsB;EACrC,CAAC,MAAM;IACLgB,wBAAwB,GAAGhB,sBAAsB,KAAK,KAAK;EAC7D;EAEA,OAAO,IAAAiB,mCAAU,EAACT,OAAO,EAAE;IACzBQ,wBAAwB;IACxBD,UAAU;IACVG,UAAU,EAAEZ,IAAI;IAChBa,eAAe,EAAEd,OAAO,CAACc;EAC3B,CAAC,CAAC;AACJ;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/util.js b/node_modules/@babel/core/lib/config/util.js new file mode 100644 index 0000000..077f1af --- /dev/null +++ b/node_modules/@babel/core/lib/config/util.js @@ -0,0 +1,31 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.isIterableIterator = isIterableIterator; +exports.mergeOptions = mergeOptions; +function mergeOptions(target, source) { + for (const k of Object.keys(source)) { + if ((k === "parserOpts" || k === "generatorOpts" || k === "assumptions") && source[k]) { + const parserOpts = source[k]; + const targetObj = target[k] || (target[k] = {}); + mergeDefaultFields(targetObj, parserOpts); + } else { + const val = source[k]; + if (val !== undefined) target[k] = val; + } + } +} +function mergeDefaultFields(target, source) { + for (const k of Object.keys(source)) { + const val = source[k]; + if (val !== undefined) target[k] = val; + } +} +function isIterableIterator(value) { + return !!value && typeof value.next === "function" && typeof value[Symbol.iterator] === "function"; +} +0 && 0; + +//# sourceMappingURL=util.js.map diff --git a/node_modules/@babel/core/lib/config/util.js.map b/node_modules/@babel/core/lib/config/util.js.map new file mode 100644 index 0000000..2bdc742 --- /dev/null +++ b/node_modules/@babel/core/lib/config/util.js.map @@ -0,0 +1 @@ +{"version":3,"names":["mergeOptions","target","source","k","Object","keys","parserOpts","targetObj","mergeDefaultFields","val","undefined","isIterableIterator","value","next","Symbol","iterator"],"sources":["../../src/config/util.ts"],"sourcesContent":["import type { InputOptions, ResolvedOptions } from \"./validation/options.ts\";\n\nexport function mergeOptions(\n target: InputOptions | ResolvedOptions,\n source: InputOptions,\n): void {\n for (const k of Object.keys(source)) {\n if (\n (k === \"parserOpts\" || k === \"generatorOpts\" || k === \"assumptions\") &&\n source[k]\n ) {\n const parserOpts = source[k];\n const targetObj = target[k] || (target[k] = {});\n mergeDefaultFields(targetObj, parserOpts);\n } else {\n //@ts-expect-error k must index source\n const val = source[k];\n //@ts-expect-error assigning source to target\n if (val !== undefined) target[k] = val as any;\n }\n }\n}\n\nfunction mergeDefaultFields(target: T, source: T) {\n for (const k of Object.keys(source) as (keyof T)[]) {\n const val = source[k];\n if (val !== undefined) target[k] = val;\n }\n}\n\nexport function isIterableIterator(value: any): value is IterableIterator {\n return (\n !!value &&\n typeof value.next === \"function\" &&\n typeof value[Symbol.iterator] === \"function\"\n );\n}\n"],"mappings":";;;;;;;AAEO,SAASA,YAAYA,CAC1BC,MAAsC,EACtCC,MAAoB,EACd;EACN,KAAK,MAAMC,CAAC,IAAIC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC,EAAE;IACnC,IACE,CAACC,CAAC,KAAK,YAAY,IAAIA,CAAC,KAAK,eAAe,IAAIA,CAAC,KAAK,aAAa,KACnED,MAAM,CAACC,CAAC,CAAC,EACT;MACA,MAAMG,UAAU,GAAGJ,MAAM,CAACC,CAAC,CAAC;MAC5B,MAAMI,SAAS,GAAGN,MAAM,CAACE,CAAC,CAAC,KAAKF,MAAM,CAACE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;MAC/CK,kBAAkB,CAACD,SAAS,EAAED,UAAU,CAAC;IAC3C,CAAC,MAAM;MAEL,MAAMG,GAAG,GAAGP,MAAM,CAACC,CAAC,CAAC;MAErB,IAAIM,GAAG,KAAKC,SAAS,EAAET,MAAM,CAACE,CAAC,CAAC,GAAGM,GAAU;IAC/C;EACF;AACF;AAEA,SAASD,kBAAkBA,CAAmBP,MAAS,EAAEC,MAAS,EAAE;EAClE,KAAK,MAAMC,CAAC,IAAIC,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC,EAAiB;IAClD,MAAMO,GAAG,GAAGP,MAAM,CAACC,CAAC,CAAC;IACrB,IAAIM,GAAG,KAAKC,SAAS,EAAET,MAAM,CAACE,CAAC,CAAC,GAAGM,GAAG;EACxC;AACF;AAEO,SAASE,kBAAkBA,CAACC,KAAU,EAAkC;EAC7E,OACE,CAAC,CAACA,KAAK,IACP,OAAOA,KAAK,CAACC,IAAI,KAAK,UAAU,IAChC,OAAOD,KAAK,CAACE,MAAM,CAACC,QAAQ,CAAC,KAAK,UAAU;AAEhD;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/validation/option-assertions.js b/node_modules/@babel/core/lib/config/validation/option-assertions.js new file mode 100644 index 0000000..0227971 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/option-assertions.js @@ -0,0 +1,277 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.access = access; +exports.assertArray = assertArray; +exports.assertAssumptions = assertAssumptions; +exports.assertBabelrcSearch = assertBabelrcSearch; +exports.assertBoolean = assertBoolean; +exports.assertCallerMetadata = assertCallerMetadata; +exports.assertCompact = assertCompact; +exports.assertConfigApplicableTest = assertConfigApplicableTest; +exports.assertConfigFileSearch = assertConfigFileSearch; +exports.assertFunction = assertFunction; +exports.assertIgnoreList = assertIgnoreList; +exports.assertInputSourceMap = assertInputSourceMap; +exports.assertObject = assertObject; +exports.assertPluginList = assertPluginList; +exports.assertRootMode = assertRootMode; +exports.assertSourceMaps = assertSourceMaps; +exports.assertSourceType = assertSourceType; +exports.assertString = assertString; +exports.assertTargets = assertTargets; +exports.msg = msg; +function _helperCompilationTargets() { + const data = require("@babel/helper-compilation-targets"); + _helperCompilationTargets = function () { + return data; + }; + return data; +} +var _options = require("./options.js"); +function msg(loc) { + switch (loc.type) { + case "root": + return ``; + case "env": + return `${msg(loc.parent)}.env["${loc.name}"]`; + case "overrides": + return `${msg(loc.parent)}.overrides[${loc.index}]`; + case "option": + return `${msg(loc.parent)}.${loc.name}`; + case "access": + return `${msg(loc.parent)}[${JSON.stringify(loc.name)}]`; + default: + throw new Error(`Assertion failure: Unknown type ${loc.type}`); + } +} +function access(loc, name) { + return { + type: "access", + name, + parent: loc + }; +} +function assertRootMode(loc, value) { + if (value !== undefined && value !== "root" && value !== "upward" && value !== "upward-optional") { + throw new Error(`${msg(loc)} must be a "root", "upward", "upward-optional" or undefined`); + } + return value; +} +function assertSourceMaps(loc, value) { + if (value !== undefined && typeof value !== "boolean" && value !== "inline" && value !== "both") { + throw new Error(`${msg(loc)} must be a boolean, "inline", "both", or undefined`); + } + return value; +} +function assertCompact(loc, value) { + if (value !== undefined && typeof value !== "boolean" && value !== "auto") { + throw new Error(`${msg(loc)} must be a boolean, "auto", or undefined`); + } + return value; +} +function assertSourceType(loc, value) { + if (value !== undefined && value !== "module" && value !== "commonjs" && value !== "script" && value !== "unambiguous") { + throw new Error(`${msg(loc)} must be "module", "commonjs", "script", "unambiguous", or undefined`); + } + return value; +} +function assertCallerMetadata(loc, value) { + const obj = assertObject(loc, value); + if (obj) { + if (typeof obj.name !== "string") { + throw new Error(`${msg(loc)} set but does not contain "name" property string`); + } + for (const prop of Object.keys(obj)) { + const propLoc = access(loc, prop); + const value = obj[prop]; + if (value != null && typeof value !== "boolean" && typeof value !== "string" && typeof value !== "number") { + throw new Error(`${msg(propLoc)} must be null, undefined, a boolean, a string, or a number.`); + } + } + } + return value; +} +function assertInputSourceMap(loc, value) { + if (value !== undefined && typeof value !== "boolean" && (typeof value !== "object" || !value)) { + throw new Error(`${msg(loc)} must be a boolean, object, or undefined`); + } + return value; +} +function assertString(loc, value) { + if (value !== undefined && typeof value !== "string") { + throw new Error(`${msg(loc)} must be a string, or undefined`); + } + return value; +} +function assertFunction(loc, value) { + if (value !== undefined && typeof value !== "function") { + throw new Error(`${msg(loc)} must be a function, or undefined`); + } + return value; +} +function assertBoolean(loc, value) { + if (value !== undefined && typeof value !== "boolean") { + throw new Error(`${msg(loc)} must be a boolean, or undefined`); + } + return value; +} +function assertObject(loc, value) { + if (value !== undefined && (typeof value !== "object" || Array.isArray(value) || !value)) { + throw new Error(`${msg(loc)} must be an object, or undefined`); + } + return value; +} +function assertArray(loc, value) { + if (value != null && !Array.isArray(value)) { + throw new Error(`${msg(loc)} must be an array, or undefined`); + } + return value; +} +function assertIgnoreList(loc, value) { + const arr = assertArray(loc, value); + arr == null || arr.forEach((item, i) => assertIgnoreItem(access(loc, i), item)); + return arr; +} +function assertIgnoreItem(loc, value) { + if (typeof value !== "string" && typeof value !== "function" && !(value instanceof RegExp)) { + throw new Error(`${msg(loc)} must be an array of string/Function/RegExp values, or undefined`); + } + return value; +} +function assertConfigApplicableTest(loc, value) { + if (value === undefined) { + return value; + } + if (Array.isArray(value)) { + value.forEach((item, i) => { + if (!checkValidTest(item)) { + throw new Error(`${msg(access(loc, i))} must be a string/Function/RegExp.`); + } + }); + } else if (!checkValidTest(value)) { + throw new Error(`${msg(loc)} must be a string/Function/RegExp, or an array of those`); + } + return value; +} +function checkValidTest(value) { + return typeof value === "string" || typeof value === "function" || value instanceof RegExp; +} +function assertConfigFileSearch(loc, value) { + if (value !== undefined && typeof value !== "boolean" && typeof value !== "string") { + throw new Error(`${msg(loc)} must be a undefined, a boolean, a string, ` + `got ${JSON.stringify(value)}`); + } + return value; +} +function assertBabelrcSearch(loc, value) { + if (value === undefined || typeof value === "boolean") { + return value; + } + if (Array.isArray(value)) { + value.forEach((item, i) => { + if (!checkValidTest(item)) { + throw new Error(`${msg(access(loc, i))} must be a string/Function/RegExp.`); + } + }); + } else if (!checkValidTest(value)) { + throw new Error(`${msg(loc)} must be a undefined, a boolean, a string/Function/RegExp ` + `or an array of those, got ${JSON.stringify(value)}`); + } + return value; +} +function assertPluginList(loc, value) { + const arr = assertArray(loc, value); + if (arr) { + arr.forEach((item, i) => assertPluginItem(access(loc, i), item)); + } + return arr; +} +function assertPluginItem(loc, value) { + if (Array.isArray(value)) { + if (value.length === 0) { + throw new Error(`${msg(loc)} must include an object`); + } + if (value.length > 3) { + throw new Error(`${msg(loc)} may only be a two-tuple or three-tuple`); + } + assertPluginTarget(access(loc, 0), value[0]); + if (value.length > 1) { + const opts = value[1]; + if (opts !== undefined && opts !== false && (typeof opts !== "object" || Array.isArray(opts) || opts === null)) { + throw new Error(`${msg(access(loc, 1))} must be an object, false, or undefined`); + } + } + if (value.length === 3) { + const name = value[2]; + if (name !== undefined && typeof name !== "string") { + throw new Error(`${msg(access(loc, 2))} must be a string, or undefined`); + } + } + } else { + assertPluginTarget(loc, value); + } + return value; +} +function assertPluginTarget(loc, value) { + if ((typeof value !== "object" || !value) && typeof value !== "string" && typeof value !== "function") { + throw new Error(`${msg(loc)} must be a string, object, function`); + } + return value; +} +function assertTargets(loc, value) { + if ((0, _helperCompilationTargets().isBrowsersQueryValid)(value)) return value; + if (typeof value !== "object" || !value || Array.isArray(value)) { + throw new Error(`${msg(loc)} must be a string, an array of strings or an object`); + } + const browsersLoc = access(loc, "browsers"); + const esmodulesLoc = access(loc, "esmodules"); + assertBrowsersList(browsersLoc, value.browsers); + assertBoolean(esmodulesLoc, value.esmodules); + for (const key of Object.keys(value)) { + const val = value[key]; + const subLoc = access(loc, key); + if (key === "esmodules") assertBoolean(subLoc, val);else if (key === "browsers") assertBrowsersList(subLoc, val);else if (!hasOwnProperty.call(_helperCompilationTargets().TargetNames, key)) { + const validTargets = Object.keys(_helperCompilationTargets().TargetNames).join(", "); + throw new Error(`${msg(subLoc)} is not a valid target. Supported targets are ${validTargets}`); + } else assertBrowserVersion(subLoc, val); + } + return value; +} +function assertBrowsersList(loc, value) { + if (value !== undefined && !(0, _helperCompilationTargets().isBrowsersQueryValid)(value)) { + throw new Error(`${msg(loc)} must be undefined, a string or an array of strings`); + } +} +function assertBrowserVersion(loc, value) { + if (typeof value === "number" && Math.round(value) === value) return; + if (typeof value === "string") return; + throw new Error(`${msg(loc)} must be a string or an integer number`); +} +function assertAssumptions(loc, value) { + if (value === undefined) return; + if (typeof value !== "object" || value === null) { + throw new Error(`${msg(loc)} must be an object or undefined.`); + } + let root = loc; + do { + root = root.parent; + } while (root.type !== "root"); + const inPreset = root.source === "preset"; + for (const name of Object.keys(value)) { + const subLoc = access(loc, name); + if (!_options.assumptionsNames.has(name)) { + throw new Error(`${msg(subLoc)} is not a supported assumption.`); + } + if (typeof value[name] !== "boolean") { + throw new Error(`${msg(subLoc)} must be a boolean.`); + } + if (inPreset && value[name] === false) { + throw new Error(`${msg(subLoc)} cannot be set to 'false' inside presets.`); + } + } + return value; +} +0 && 0; + +//# sourceMappingURL=option-assertions.js.map diff --git a/node_modules/@babel/core/lib/config/validation/option-assertions.js.map b/node_modules/@babel/core/lib/config/validation/option-assertions.js.map new file mode 100644 index 0000000..38ba554 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/option-assertions.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_helperCompilationTargets","data","require","_options","msg","loc","type","parent","name","index","JSON","stringify","Error","access","assertRootMode","value","undefined","assertSourceMaps","assertCompact","assertSourceType","assertCallerMetadata","obj","assertObject","prop","Object","keys","propLoc","assertInputSourceMap","assertString","assertFunction","assertBoolean","Array","isArray","assertArray","assertIgnoreList","arr","forEach","item","i","assertIgnoreItem","RegExp","assertConfigApplicableTest","checkValidTest","assertConfigFileSearch","assertBabelrcSearch","assertPluginList","assertPluginItem","length","assertPluginTarget","opts","assertTargets","isBrowsersQueryValid","browsersLoc","esmodulesLoc","assertBrowsersList","browsers","esmodules","key","val","subLoc","hasOwnProperty","call","TargetNames","validTargets","join","assertBrowserVersion","Math","round","assertAssumptions","root","inPreset","source","assumptionsNames","has"],"sources":["../../../src/config/validation/option-assertions.ts"],"sourcesContent":["import {\n isBrowsersQueryValid,\n TargetNames,\n} from \"@babel/helper-compilation-targets\";\n\nimport type {\n ConfigFileSearch,\n BabelrcSearch,\n MatchItem,\n PluginTarget,\n ConfigApplicableTest,\n SourceMapsOption,\n SourceTypeOption,\n CompactOption,\n RootInputSourceMapOption,\n NestingPath,\n CallerMetadata,\n RootMode,\n TargetsListOrObject,\n AssumptionName,\n PluginItem,\n} from \"./options.ts\";\n\nimport { assumptionsNames } from \"./options.ts\";\n\nexport type { RootPath } from \"./options.ts\";\n\nexport type ValidatorSet = Record>;\n\nexport type Validator = (loc: OptionPath, value: unknown) => T;\n\nexport function msg(loc: NestingPath | GeneralPath): string {\n switch (loc.type) {\n case \"root\":\n return ``;\n case \"env\":\n return `${msg(loc.parent)}.env[\"${loc.name}\"]`;\n case \"overrides\":\n return `${msg(loc.parent)}.overrides[${loc.index}]`;\n case \"option\":\n return `${msg(loc.parent)}.${loc.name}`;\n case \"access\":\n return `${msg(loc.parent)}[${JSON.stringify(loc.name)}]`;\n default:\n // @ts-expect-error should not happen when code is type checked\n throw new Error(`Assertion failure: Unknown type ${loc.type}`);\n }\n}\n\nexport function access(loc: GeneralPath, name: string | number): AccessPath {\n return {\n type: \"access\",\n name,\n parent: loc,\n };\n}\n\nexport type OptionPath = Readonly<{\n type: \"option\";\n name: string;\n parent: NestingPath;\n}>;\ntype AccessPath = Readonly<{\n type: \"access\";\n name: string | number;\n parent: GeneralPath;\n}>;\ntype GeneralPath = OptionPath | AccessPath;\n\nexport function assertRootMode(\n loc: OptionPath,\n value: unknown,\n): RootMode | void {\n if (\n value !== undefined &&\n value !== \"root\" &&\n value !== \"upward\" &&\n value !== \"upward-optional\"\n ) {\n throw new Error(\n `${msg(loc)} must be a \"root\", \"upward\", \"upward-optional\" or undefined`,\n );\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertSourceMaps(\n loc: OptionPath,\n value: unknown,\n): SourceMapsOption | void {\n if (\n value !== undefined &&\n typeof value !== \"boolean\" &&\n value !== \"inline\" &&\n value !== \"both\"\n ) {\n throw new Error(\n `${msg(loc)} must be a boolean, \"inline\", \"both\", or undefined`,\n );\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertCompact(\n loc: OptionPath,\n value: unknown,\n): CompactOption | void {\n if (value !== undefined && typeof value !== \"boolean\" && value !== \"auto\") {\n throw new Error(`${msg(loc)} must be a boolean, \"auto\", or undefined`);\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertSourceType(\n loc: OptionPath,\n value: unknown,\n): SourceTypeOption | void {\n if (\n value !== undefined &&\n value !== \"module\" &&\n value !== \"commonjs\" &&\n value !== \"script\" &&\n value !== \"unambiguous\"\n ) {\n throw new Error(\n `${msg(loc)} must be \"module\", \"commonjs\", \"script\", \"unambiguous\", or undefined`,\n );\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertCallerMetadata(\n loc: OptionPath,\n value: unknown,\n): CallerMetadata | undefined {\n const obj = assertObject(loc, value);\n if (obj) {\n if (typeof obj.name !== \"string\") {\n throw new Error(\n `${msg(loc)} set but does not contain \"name\" property string`,\n );\n }\n\n for (const prop of Object.keys(obj)) {\n const propLoc = access(loc, prop);\n const value = obj[prop];\n if (\n value != null &&\n typeof value !== \"boolean\" &&\n typeof value !== \"string\" &&\n typeof value !== \"number\"\n ) {\n // NOTE(logan): I'm limiting the type here so that we can guarantee that\n // the \"caller\" value will serialize to JSON nicely. We can always\n // allow more complex structures later though.\n throw new Error(\n `${msg(\n propLoc,\n )} must be null, undefined, a boolean, a string, or a number.`,\n );\n }\n }\n }\n // @ts-expect-error todo(flow->ts)\n return value;\n}\n\nexport function assertInputSourceMap(\n loc: OptionPath,\n value: unknown,\n): RootInputSourceMapOption {\n if (\n value !== undefined &&\n typeof value !== \"boolean\" &&\n (typeof value !== \"object\" || !value)\n ) {\n throw new Error(`${msg(loc)} must be a boolean, object, or undefined`);\n }\n return value as RootInputSourceMapOption;\n}\n\nexport function assertString(loc: GeneralPath, value: unknown): string | void {\n if (value !== undefined && typeof value !== \"string\") {\n throw new Error(`${msg(loc)} must be a string, or undefined`);\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertFunction(\n loc: GeneralPath,\n value: unknown,\n): Function | void {\n if (value !== undefined && typeof value !== \"function\") {\n throw new Error(`${msg(loc)} must be a function, or undefined`);\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertBoolean(\n loc: GeneralPath,\n value: unknown,\n): boolean | void {\n if (value !== undefined && typeof value !== \"boolean\") {\n throw new Error(`${msg(loc)} must be a boolean, or undefined`);\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertObject(\n loc: GeneralPath,\n value: unknown,\n): Readonly> | void {\n if (\n value !== undefined &&\n (typeof value !== \"object\" || Array.isArray(value) || !value)\n ) {\n throw new Error(`${msg(loc)} must be an object, or undefined`);\n }\n // @ts-expect-error todo(flow->ts) value is still typed as unknown, also assert function typically should not return a value\n return value;\n}\n\nexport function assertArray(\n loc: GeneralPath,\n value: T[] | undefined | null,\n): T[] | undefined | null {\n if (value != null && !Array.isArray(value)) {\n throw new Error(`${msg(loc)} must be an array, or undefined`);\n }\n return value;\n}\n\nexport function assertIgnoreList(\n loc: OptionPath,\n value: unknown[] | undefined,\n): MatchItem[] | void {\n const arr = assertArray(loc, value);\n arr?.forEach((item, i) => assertIgnoreItem(access(loc, i), item));\n // @ts-expect-error todo(flow->ts)\n return arr;\n}\nfunction assertIgnoreItem(loc: GeneralPath, value: unknown): MatchItem {\n if (\n typeof value !== \"string\" &&\n typeof value !== \"function\" &&\n !(value instanceof RegExp)\n ) {\n throw new Error(\n `${msg(\n loc,\n )} must be an array of string/Function/RegExp values, or undefined`,\n );\n }\n return value as MatchItem;\n}\n\nexport function assertConfigApplicableTest(\n loc: OptionPath,\n value: unknown,\n): ConfigApplicableTest | void {\n if (value === undefined) {\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n }\n\n if (Array.isArray(value)) {\n value.forEach((item, i) => {\n if (!checkValidTest(item)) {\n throw new Error(\n `${msg(access(loc, i))} must be a string/Function/RegExp.`,\n );\n }\n });\n } else if (!checkValidTest(value)) {\n throw new Error(\n `${msg(loc)} must be a string/Function/RegExp, or an array of those`,\n );\n }\n return value as ConfigApplicableTest;\n}\n\nfunction checkValidTest(value: unknown): value is string | Function | RegExp {\n return (\n typeof value === \"string\" ||\n typeof value === \"function\" ||\n value instanceof RegExp\n );\n}\n\nexport function assertConfigFileSearch(\n loc: OptionPath,\n value: unknown,\n): ConfigFileSearch | void {\n if (\n value !== undefined &&\n typeof value !== \"boolean\" &&\n typeof value !== \"string\"\n ) {\n throw new Error(\n `${msg(loc)} must be a undefined, a boolean, a string, ` +\n `got ${JSON.stringify(value)}`,\n );\n }\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n}\n\nexport function assertBabelrcSearch(\n loc: OptionPath,\n value: unknown,\n): BabelrcSearch | void {\n if (value === undefined || typeof value === \"boolean\") {\n // @ts-expect-error: TS can only narrow down the type when \"strictNullCheck\" is true\n return value;\n }\n\n if (Array.isArray(value)) {\n value.forEach((item, i) => {\n if (!checkValidTest(item)) {\n throw new Error(\n `${msg(access(loc, i))} must be a string/Function/RegExp.`,\n );\n }\n });\n } else if (!checkValidTest(value)) {\n throw new Error(\n `${msg(loc)} must be a undefined, a boolean, a string/Function/RegExp ` +\n `or an array of those, got ${JSON.stringify(value as any)}`,\n );\n }\n return value as BabelrcSearch;\n}\n\nexport function assertPluginList(\n loc: OptionPath,\n value: unknown[] | null | undefined,\n): PluginItem[] {\n const arr = assertArray(loc, value);\n if (arr) {\n // Loop instead of using `.map` in order to preserve object identity\n // for plugin array for use during config chain processing.\n arr.forEach((item, i) => assertPluginItem(access(loc, i), item));\n }\n return arr as PluginItem[];\n}\nfunction assertPluginItem(loc: GeneralPath, value: unknown): PluginItem {\n if (Array.isArray(value)) {\n if (value.length === 0) {\n throw new Error(`${msg(loc)} must include an object`);\n }\n\n if (value.length > 3) {\n throw new Error(`${msg(loc)} may only be a two-tuple or three-tuple`);\n }\n\n assertPluginTarget(access(loc, 0), value[0]);\n\n if (value.length > 1) {\n const opts = value[1];\n if (\n opts !== undefined &&\n opts !== false &&\n (typeof opts !== \"object\" || Array.isArray(opts) || opts === null)\n ) {\n throw new Error(\n `${msg(access(loc, 1))} must be an object, false, or undefined`,\n );\n }\n }\n if (value.length === 3) {\n const name = value[2];\n if (name !== undefined && typeof name !== \"string\") {\n throw new Error(\n `${msg(access(loc, 2))} must be a string, or undefined`,\n );\n }\n }\n } else {\n assertPluginTarget(loc, value);\n }\n\n return value as PluginItem;\n}\nfunction assertPluginTarget(loc: GeneralPath, value: unknown): PluginTarget {\n if (\n (typeof value !== \"object\" || !value) &&\n typeof value !== \"string\" &&\n typeof value !== \"function\"\n ) {\n throw new Error(`${msg(loc)} must be a string, object, function`);\n }\n return value as PluginTarget;\n}\n\nexport function assertTargets(\n loc: GeneralPath,\n value: any,\n): TargetsListOrObject {\n if (isBrowsersQueryValid(value)) return value;\n\n if (typeof value !== \"object\" || !value || Array.isArray(value)) {\n throw new Error(\n `${msg(loc)} must be a string, an array of strings or an object`,\n );\n }\n\n const browsersLoc = access(loc, \"browsers\");\n const esmodulesLoc = access(loc, \"esmodules\");\n\n assertBrowsersList(browsersLoc, value.browsers);\n assertBoolean(esmodulesLoc, value.esmodules);\n\n for (const key of Object.keys(value)) {\n const val = value[key];\n const subLoc = access(loc, key);\n\n if (key === \"esmodules\") assertBoolean(subLoc, val);\n else if (key === \"browsers\") assertBrowsersList(subLoc, val);\n else if (!Object.hasOwn(TargetNames, key)) {\n const validTargets = Object.keys(TargetNames).join(\", \");\n throw new Error(\n `${msg(\n subLoc,\n )} is not a valid target. Supported targets are ${validTargets}`,\n );\n } else assertBrowserVersion(subLoc, val);\n }\n\n return value;\n}\n\nfunction assertBrowsersList(loc: GeneralPath, value: unknown) {\n if (value !== undefined && !isBrowsersQueryValid(value)) {\n throw new Error(\n `${msg(loc)} must be undefined, a string or an array of strings`,\n );\n }\n}\n\nfunction assertBrowserVersion(loc: GeneralPath, value: unknown) {\n if (typeof value === \"number\" && Math.round(value) === value) return;\n if (typeof value === \"string\") return;\n\n throw new Error(`${msg(loc)} must be a string or an integer number`);\n}\n\nexport function assertAssumptions(\n loc: GeneralPath,\n value: Record,\n): Record | void {\n if (value === undefined) return;\n\n if (typeof value !== \"object\" || value === null) {\n throw new Error(`${msg(loc)} must be an object or undefined.`);\n }\n\n // todo(flow->ts): remove any\n let root: any = loc;\n do {\n root = root.parent;\n } while (root.type !== \"root\");\n const inPreset = root.source === \"preset\";\n\n for (const name of Object.keys(value)) {\n const subLoc = access(loc, name);\n if (!assumptionsNames.has(name as AssumptionName)) {\n throw new Error(`${msg(subLoc)} is not a supported assumption.`);\n }\n if (typeof value[name] !== \"boolean\") {\n throw new Error(`${msg(subLoc)} must be a boolean.`);\n }\n if (inPreset && value[name] === false) {\n throw new Error(\n `${msg(subLoc)} cannot be set to 'false' inside presets.`,\n );\n }\n }\n\n // @ts-expect-error todo(flow->ts)\n return value;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/validation/options.js b/node_modules/@babel/core/lib/config/validation/options.js new file mode 100644 index 0000000..d694170 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/options.js @@ -0,0 +1,187 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.assumptionsNames = void 0; +exports.checkNoUnwrappedItemOptionPairs = checkNoUnwrappedItemOptionPairs; +exports.validate = validate; +var _removed = require("./removed.js"); +var _optionAssertions = require("./option-assertions.js"); +var _configError = require("../../errors/config-error.js"); +const ROOT_VALIDATORS = { + cwd: _optionAssertions.assertString, + root: _optionAssertions.assertString, + rootMode: _optionAssertions.assertRootMode, + configFile: _optionAssertions.assertConfigFileSearch, + caller: _optionAssertions.assertCallerMetadata, + filename: _optionAssertions.assertString, + filenameRelative: _optionAssertions.assertString, + code: _optionAssertions.assertBoolean, + ast: _optionAssertions.assertBoolean, + cloneInputAst: _optionAssertions.assertBoolean, + envName: _optionAssertions.assertString +}; +const BABELRC_VALIDATORS = { + babelrc: _optionAssertions.assertBoolean, + babelrcRoots: _optionAssertions.assertBabelrcSearch +}; +const NONPRESET_VALIDATORS = { + extends: _optionAssertions.assertString, + ignore: _optionAssertions.assertIgnoreList, + only: _optionAssertions.assertIgnoreList, + targets: _optionAssertions.assertTargets, + browserslistConfigFile: _optionAssertions.assertConfigFileSearch, + browserslistEnv: _optionAssertions.assertString +}; +const COMMON_VALIDATORS = { + inputSourceMap: _optionAssertions.assertInputSourceMap, + presets: _optionAssertions.assertPluginList, + plugins: _optionAssertions.assertPluginList, + passPerPreset: _optionAssertions.assertBoolean, + assumptions: _optionAssertions.assertAssumptions, + env: assertEnvSet, + overrides: assertOverridesList, + test: _optionAssertions.assertConfigApplicableTest, + include: _optionAssertions.assertConfigApplicableTest, + exclude: _optionAssertions.assertConfigApplicableTest, + retainLines: _optionAssertions.assertBoolean, + comments: _optionAssertions.assertBoolean, + shouldPrintComment: _optionAssertions.assertFunction, + compact: _optionAssertions.assertCompact, + minified: _optionAssertions.assertBoolean, + auxiliaryCommentBefore: _optionAssertions.assertString, + auxiliaryCommentAfter: _optionAssertions.assertString, + sourceType: _optionAssertions.assertSourceType, + wrapPluginVisitorMethod: _optionAssertions.assertFunction, + highlightCode: _optionAssertions.assertBoolean, + sourceMaps: _optionAssertions.assertSourceMaps, + sourceMap: _optionAssertions.assertSourceMaps, + sourceFileName: _optionAssertions.assertString, + sourceRoot: _optionAssertions.assertString, + parserOpts: _optionAssertions.assertObject, + generatorOpts: _optionAssertions.assertObject +}; +Object.assign(COMMON_VALIDATORS, { + getModuleId: _optionAssertions.assertFunction, + moduleRoot: _optionAssertions.assertString, + moduleIds: _optionAssertions.assertBoolean, + moduleId: _optionAssertions.assertString +}); +const knownAssumptions = ["arrayLikeIsIterable", "constantReexports", "constantSuper", "enumerableModuleMeta", "ignoreFunctionLength", "ignoreToPrimitiveHint", "iterableIsArray", "mutableTemplateObject", "noClassCalls", "noDocumentAll", "noIncompleteNsImportDetection", "noNewArrows", "noUninitializedPrivateFieldAccess", "objectRestNoSymbols", "privateFieldsAsSymbols", "privateFieldsAsProperties", "pureGetters", "setClassMethods", "setComputedProperties", "setPublicClassFields", "setSpreadProperties", "skipForOfIteratorClosing", "superIsCallableConstructor"]; +const assumptionsNames = exports.assumptionsNames = new Set(knownAssumptions); +function getSource(loc) { + return loc.type === "root" ? loc.source : getSource(loc.parent); +} +function validate(type, opts, filename) { + try { + return validateNested({ + type: "root", + source: type + }, opts); + } catch (error) { + const configError = new _configError.default(error.message, filename); + if (error.code) configError.code = error.code; + throw configError; + } +} +function validateNested(loc, opts) { + const type = getSource(loc); + assertNoDuplicateSourcemap(opts); + Object.keys(opts).forEach(key => { + const optLoc = { + type: "option", + name: key, + parent: loc + }; + if (type === "preset" && NONPRESET_VALIDATORS[key]) { + throw new Error(`${(0, _optionAssertions.msg)(optLoc)} is not allowed in preset options`); + } + if (type !== "arguments" && ROOT_VALIDATORS[key]) { + throw new Error(`${(0, _optionAssertions.msg)(optLoc)} is only allowed in root programmatic options`); + } + if (type !== "arguments" && type !== "configfile" && BABELRC_VALIDATORS[key]) { + if (type === "babelrcfile" || type === "extendsfile") { + throw new Error(`${(0, _optionAssertions.msg)(optLoc)} is not allowed in .babelrc or "extends"ed files, only in root programmatic options, ` + `or babel.config.js/config file options`); + } + throw new Error(`${(0, _optionAssertions.msg)(optLoc)} is only allowed in root programmatic options, or babel.config.js/config file options`); + } + const validator = COMMON_VALIDATORS[key] || NONPRESET_VALIDATORS[key] || BABELRC_VALIDATORS[key] || ROOT_VALIDATORS[key] || throwUnknownError; + validator(optLoc, opts[key]); + }); + return opts; +} +function throwUnknownError(loc) { + const key = loc.name; + if (_removed.default[key]) { + const { + message, + version = 5 + } = _removed.default[key]; + throw new Error(`Using removed Babel ${version} option: ${(0, _optionAssertions.msg)(loc)} - ${message}`); + } else { + const unknownOptErr = new Error(`Unknown option: ${(0, _optionAssertions.msg)(loc)}. Check out https://babeljs.io/docs/en/babel-core/#options for more information about options.`); + unknownOptErr.code = "BABEL_UNKNOWN_OPTION"; + throw unknownOptErr; + } +} +function assertNoDuplicateSourcemap(opts) { + if (hasOwnProperty.call(opts, "sourceMap") && hasOwnProperty.call(opts, "sourceMaps")) { + throw new Error(".sourceMap is an alias for .sourceMaps, cannot use both"); + } +} +function assertEnvSet(loc, value) { + if (loc.parent.type === "env") { + throw new Error(`${(0, _optionAssertions.msg)(loc)} is not allowed inside of another .env block`); + } + const parent = loc.parent; + const obj = (0, _optionAssertions.assertObject)(loc, value); + if (obj) { + for (const envName of Object.keys(obj)) { + const env = (0, _optionAssertions.assertObject)((0, _optionAssertions.access)(loc, envName), obj[envName]); + if (!env) continue; + const envLoc = { + type: "env", + name: envName, + parent + }; + validateNested(envLoc, env); + } + } + return obj; +} +function assertOverridesList(loc, value) { + if (loc.parent.type === "env") { + throw new Error(`${(0, _optionAssertions.msg)(loc)} is not allowed inside an .env block`); + } + if (loc.parent.type === "overrides") { + throw new Error(`${(0, _optionAssertions.msg)(loc)} is not allowed inside an .overrides block`); + } + const parent = loc.parent; + const arr = (0, _optionAssertions.assertArray)(loc, value); + if (arr) { + for (const [index, item] of arr.entries()) { + const objLoc = (0, _optionAssertions.access)(loc, index); + const env = (0, _optionAssertions.assertObject)(objLoc, item); + if (!env) throw new Error(`${(0, _optionAssertions.msg)(objLoc)} must be an object`); + const overridesLoc = { + type: "overrides", + index, + parent + }; + validateNested(overridesLoc, env); + } + } + return arr; +} +function checkNoUnwrappedItemOptionPairs(items, index, type, e) { + if (index === 0) return; + const lastItem = items[index - 1]; + const thisItem = items[index]; + if (lastItem.file && lastItem.options === undefined && typeof thisItem.value === "object") { + e.message += `\n- Maybe you meant to use\n` + `"${type}s": [\n ["${lastItem.file.request}", ${JSON.stringify(thisItem.value, undefined, 2)}]\n]\n` + `To be a valid ${type}, its name and options should be wrapped in a pair of brackets`; + } +} +0 && 0; + +//# sourceMappingURL=options.js.map diff --git a/node_modules/@babel/core/lib/config/validation/options.js.map b/node_modules/@babel/core/lib/config/validation/options.js.map new file mode 100644 index 0000000..a1a5185 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/options.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_removed","require","_optionAssertions","_configError","ROOT_VALIDATORS","cwd","assertString","root","rootMode","assertRootMode","configFile","assertConfigFileSearch","caller","assertCallerMetadata","filename","filenameRelative","code","assertBoolean","ast","cloneInputAst","envName","BABELRC_VALIDATORS","babelrc","babelrcRoots","assertBabelrcSearch","NONPRESET_VALIDATORS","extends","ignore","assertIgnoreList","only","targets","assertTargets","browserslistConfigFile","browserslistEnv","COMMON_VALIDATORS","inputSourceMap","assertInputSourceMap","presets","assertPluginList","plugins","passPerPreset","assumptions","assertAssumptions","env","assertEnvSet","overrides","assertOverridesList","test","assertConfigApplicableTest","include","exclude","retainLines","comments","shouldPrintComment","assertFunction","compact","assertCompact","minified","auxiliaryCommentBefore","auxiliaryCommentAfter","sourceType","assertSourceType","wrapPluginVisitorMethod","highlightCode","sourceMaps","assertSourceMaps","sourceMap","sourceFileName","sourceRoot","parserOpts","assertObject","generatorOpts","Object","assign","getModuleId","moduleRoot","moduleIds","moduleId","knownAssumptions","assumptionsNames","exports","Set","getSource","loc","type","source","parent","validate","opts","validateNested","error","configError","ConfigError","message","assertNoDuplicateSourcemap","keys","forEach","key","optLoc","name","Error","msg","validator","throwUnknownError","removed","version","unknownOptErr","hasOwnProperty","call","value","obj","access","envLoc","arr","assertArray","index","item","entries","objLoc","overridesLoc","checkNoUnwrappedItemOptionPairs","items","e","lastItem","thisItem","file","options","undefined","request","JSON","stringify"],"sources":["../../../src/config/validation/options.ts"],"sourcesContent":["import type { InputTargets, Targets } from \"@babel/helper-compilation-targets\";\n\nimport type { ConfigItem } from \"../item.ts\";\n\nimport removed from \"./removed.ts\";\nimport {\n msg,\n access,\n assertString,\n assertBoolean,\n assertObject,\n assertArray,\n assertCallerMetadata,\n assertInputSourceMap,\n assertIgnoreList,\n assertPluginList,\n assertConfigApplicableTest,\n assertConfigFileSearch,\n assertBabelrcSearch,\n assertFunction,\n assertRootMode,\n assertSourceMaps,\n assertCompact,\n assertSourceType,\n assertTargets,\n assertAssumptions,\n} from \"./option-assertions.ts\";\nimport type {\n ValidatorSet,\n Validator,\n OptionPath,\n} from \"./option-assertions.ts\";\nimport type { UnloadedDescriptor } from \"../config-descriptors.ts\";\nimport type { PluginAPI } from \"../helpers/config-api.ts\";\nimport type { ParserOptions } from \"@babel/parser\";\nimport type { GeneratorOptions } from \"@babel/generator\";\nimport type { VisitWrapper } from \"@babel/traverse\";\nimport ConfigError from \"../../errors/config-error.ts\";\nimport type { PluginObject } from \"./plugins.ts\";\nimport type Plugin from \"../plugin.ts\";\nimport type { PresetAPI } from \"../index.ts\";\nimport type { PresetObject } from \"../../index.ts\";\n\nconst ROOT_VALIDATORS: ValidatorSet = {\n cwd: assertString as Validator,\n root: assertString as Validator,\n rootMode: assertRootMode as Validator,\n configFile: assertConfigFileSearch as Validator,\n\n caller: assertCallerMetadata as Validator,\n filename: assertString as Validator,\n filenameRelative: assertString as Validator,\n code: assertBoolean as Validator,\n ast: assertBoolean as Validator,\n\n cloneInputAst: assertBoolean as Validator,\n\n envName: assertString as Validator,\n};\n\nconst BABELRC_VALIDATORS: ValidatorSet = {\n babelrc: assertBoolean as Validator,\n babelrcRoots: assertBabelrcSearch as Validator,\n};\n\nconst NONPRESET_VALIDATORS: ValidatorSet = {\n extends: assertString as Validator,\n ignore: assertIgnoreList as Validator,\n only: assertIgnoreList as Validator,\n\n targets: assertTargets as Validator,\n browserslistConfigFile: assertConfigFileSearch as Validator<\n InputOptions[\"browserslistConfigFile\"]\n >,\n browserslistEnv: assertString as Validator,\n};\n\nconst COMMON_VALIDATORS: ValidatorSet = {\n // TODO: Should 'inputSourceMap' be moved to be a root-only option?\n // We may want a boolean-only version to be a common option, with the\n // object only allowed as a root config argument.\n inputSourceMap: assertInputSourceMap as Validator<\n InputOptions[\"inputSourceMap\"]\n >,\n presets: assertPluginList as Validator,\n plugins: assertPluginList as Validator,\n passPerPreset: assertBoolean as Validator,\n assumptions: assertAssumptions as Validator,\n\n env: assertEnvSet as Validator,\n overrides: assertOverridesList as Validator,\n\n // We could limit these to 'overrides' blocks, but it's not clear why we'd\n // bother, when the ability to limit a config to a specific set of files\n // is a fairly general useful feature.\n test: assertConfigApplicableTest as Validator,\n include: assertConfigApplicableTest as Validator,\n exclude: assertConfigApplicableTest as Validator,\n\n retainLines: assertBoolean as Validator,\n comments: assertBoolean as Validator,\n shouldPrintComment: assertFunction as Validator<\n InputOptions[\"shouldPrintComment\"]\n >,\n compact: assertCompact as Validator,\n minified: assertBoolean as Validator,\n auxiliaryCommentBefore: assertString as Validator<\n InputOptions[\"auxiliaryCommentBefore\"]\n >,\n auxiliaryCommentAfter: assertString as Validator<\n InputOptions[\"auxiliaryCommentAfter\"]\n >,\n sourceType: assertSourceType as Validator,\n wrapPluginVisitorMethod: assertFunction as Validator<\n InputOptions[\"wrapPluginVisitorMethod\"]\n >,\n highlightCode: assertBoolean as Validator,\n sourceMaps: assertSourceMaps as Validator,\n sourceMap: assertSourceMaps as Validator,\n sourceFileName: assertString as Validator,\n sourceRoot: assertString as Validator,\n parserOpts: assertObject as Validator,\n generatorOpts: assertObject as Validator,\n};\nif (!process.env.BABEL_8_BREAKING) {\n Object.assign(COMMON_VALIDATORS, {\n getModuleId: assertFunction,\n moduleRoot: assertString,\n moduleIds: assertBoolean,\n moduleId: assertString,\n });\n}\n\ntype Assumptions = {\n arrayLikeIsIterable?: boolean;\n constantReexports?: boolean;\n constantSuper?: boolean;\n enumerableModuleMeta?: boolean;\n ignoreFunctionLength?: boolean;\n ignoreToPrimitiveHint?: boolean;\n iterableIsArray?: boolean;\n mutableTemplateObject?: boolean;\n noClassCalls?: boolean;\n noDocumentAll?: boolean;\n noIncompleteNsImportDetection?: boolean;\n noNewArrows?: boolean;\n noUninitializedPrivateFieldAccess?: boolean;\n objectRestNoSymbols?: boolean;\n privateFieldsAsProperties?: boolean;\n privateFieldsAsSymbols?: boolean;\n pureGetters?: boolean;\n setClassMethods?: boolean;\n setComputedProperties?: boolean;\n setPublicClassFields?: boolean;\n setSpreadProperties?: boolean;\n skipForOfIteratorClosing?: boolean;\n superIsCallableConstructor?: boolean;\n};\n\nexport type AssumptionName = keyof Assumptions;\n\nexport type InputOptions = {\n cwd?: string;\n filename?: string;\n filenameRelative?: string;\n babelrc?: boolean;\n babelrcRoots?: BabelrcSearch;\n configFile?: ConfigFileSearch;\n root?: string;\n rootMode?: RootMode;\n code?: boolean;\n ast?: boolean;\n cloneInputAst?: boolean;\n inputSourceMap?: RootInputSourceMapOption;\n envName?: string;\n caller?: CallerMetadata;\n extends?: string;\n env?: EnvSet;\n ignore?: MatchItem[];\n only?: MatchItem[];\n overrides?: InputOptions[];\n showIgnoredFiles?: boolean;\n // Generally verify if a given config object should be applied to the given file.\n test?: ConfigApplicableTest;\n include?: ConfigApplicableTest;\n exclude?: ConfigApplicableTest;\n presets?: PresetItem[];\n plugins?: PluginItem[];\n passPerPreset?: boolean;\n assumptions?: Assumptions;\n // browserslists-related options\n targets?: TargetsListOrObject;\n browserslistConfigFile?: ConfigFileSearch;\n browserslistEnv?: string;\n // Options for @babel/generator\n retainLines?: GeneratorOptions[\"retainLines\"];\n comments?: GeneratorOptions[\"comments\"];\n shouldPrintComment?: GeneratorOptions[\"shouldPrintComment\"];\n compact?: GeneratorOptions[\"compact\"];\n minified?: GeneratorOptions[\"minified\"];\n auxiliaryCommentBefore?: GeneratorOptions[\"auxiliaryCommentBefore\"];\n auxiliaryCommentAfter?: GeneratorOptions[\"auxiliaryCommentAfter\"];\n // Parser\n sourceType?: SourceTypeOption;\n wrapPluginVisitorMethod?: VisitWrapper | null;\n highlightCode?: boolean;\n // Sourcemap generation options.\n sourceMaps?: SourceMapsOption;\n sourceMap?: SourceMapsOption;\n sourceFileName?: string;\n sourceRoot?: string;\n // Todo(Babel 9): Deprecate top level parserOpts\n parserOpts?: ParserOptions;\n // Todo(Babel 9): Deprecate top level generatorOpts\n generatorOpts?: GeneratorOptions;\n};\n\nexport type NormalizedOptions = Omit & {\n assumptions: Assumptions;\n targets: Targets;\n cloneInputAst: boolean;\n babelrc: false;\n configFile: false;\n browserslistConfigFile: false;\n passPerPreset: false;\n envName: string;\n cwd: string;\n root: string;\n rootMode: \"root\";\n filename: string | undefined;\n presets: ConfigItem[];\n plugins: ConfigItem[];\n};\n\nexport type ResolvedOptions = Omit<\n NormalizedOptions,\n \"presets\" | \"plugins\" | \"passPerPreset\"\n> & {\n presets: { plugins: Plugin[] }[];\n plugins: Plugin[];\n passPerPreset: boolean;\n};\n\nexport type ConfigChainOptions = Omit<\n InputOptions,\n | \"extends\"\n | \"env\"\n | \"overrides\"\n | \"plugins\"\n | \"presets\"\n | \"passPerPreset\"\n | \"ignore\"\n | \"only\"\n | \"test\"\n | \"include\"\n | \"exclude\"\n | \"sourceMap\"\n>;\n\nexport type CallerMetadata = {\n // If 'caller' is specified, require that the name is given for debugging\n // messages.\n name: string;\n supportsStaticESM?: boolean;\n supportsDynamicImport?: boolean;\n supportsTopLevelAwait?: boolean;\n supportsExportNamespaceFrom?: boolean;\n};\nexport type EnvSet = Record;\nexport type MatchItem =\n | string\n | RegExp\n | ((\n path: string | undefined,\n context: { dirname: string; caller: CallerMetadata; envName: string },\n ) => unknown);\n\nexport type MaybeDefaultProperty = T | { default: T };\n\nexport type PluginTarget =\n | string\n | MaybeDefaultProperty<\n (api: PluginAPI, options?: object, dirname?: string) => PluginObject\n >;\nexport type PluginItem =\n | ConfigItem\n | PluginTarget\n | [PluginTarget, object]\n | [PluginTarget, object, string];\n\nexport type PresetTarget =\n | string\n | MaybeDefaultProperty<\n (api: PresetAPI, options?: object, dirname?: string) => PresetObject\n >;\nexport type PresetItem =\n | ConfigItem\n | PresetTarget\n | [PresetTarget, object]\n | [PresetTarget, object, string];\n\nexport type ConfigApplicableTest = MatchItem | MatchItem[];\n\nexport type ConfigFileSearch = string | boolean;\nexport type BabelrcSearch = boolean | MatchItem | MatchItem[];\nexport type SourceMapsOption = boolean | \"inline\" | \"both\";\nexport type SourceTypeOption = \"module\" | \"commonjs\" | \"script\" | \"unambiguous\";\nexport type CompactOption = boolean | \"auto\";\n// https://github.com/mozilla/source-map/blob/801be934007c3ed0ef66c620641b1668e92c891d/source-map.d.ts#L15C8-L23C2\ninterface InputSourceMap {\n version: number;\n sources: string[];\n names: string[];\n sourceRoot?: string | undefined;\n sourcesContent?: string[] | undefined;\n mappings: string;\n file: string;\n}\nexport type RootInputSourceMapOption = InputSourceMap | boolean;\nexport type RootMode = \"root\" | \"upward\" | \"upward-optional\";\n\nexport type TargetsListOrObject =\n | Targets\n | InputTargets\n | InputTargets[\"browsers\"];\n\nexport type OptionsSource =\n | \"arguments\"\n | \"configfile\"\n | \"babelrcfile\"\n | \"extendsfile\"\n | \"preset\"\n | \"plugin\";\n\nexport type RootPath = Readonly<{\n type: \"root\";\n source: OptionsSource;\n}>;\n\ntype OverridesPath = Readonly<{\n type: \"overrides\";\n index: number;\n parent: RootPath;\n}>;\n\ntype EnvPath = Readonly<{\n type: \"env\";\n name: string;\n parent: RootPath | OverridesPath;\n}>;\n\nexport type NestingPath = RootPath | OverridesPath | EnvPath;\n\nconst knownAssumptions = [\n \"arrayLikeIsIterable\",\n \"constantReexports\",\n \"constantSuper\",\n \"enumerableModuleMeta\",\n \"ignoreFunctionLength\",\n \"ignoreToPrimitiveHint\",\n \"iterableIsArray\",\n \"mutableTemplateObject\",\n \"noClassCalls\",\n \"noDocumentAll\",\n \"noIncompleteNsImportDetection\",\n \"noNewArrows\",\n \"noUninitializedPrivateFieldAccess\",\n \"objectRestNoSymbols\",\n \"privateFieldsAsSymbols\",\n \"privateFieldsAsProperties\",\n \"pureGetters\",\n \"setClassMethods\",\n \"setComputedProperties\",\n \"setPublicClassFields\",\n \"setSpreadProperties\",\n \"skipForOfIteratorClosing\",\n \"superIsCallableConstructor\",\n] as const;\nexport const assumptionsNames = new Set(knownAssumptions);\n\nfunction getSource(loc: NestingPath): OptionsSource {\n return loc.type === \"root\" ? loc.source : getSource(loc.parent);\n}\n\nexport function validate(\n type: OptionsSource,\n opts: any,\n filename?: string,\n): InputOptions {\n try {\n return validateNested(\n {\n type: \"root\",\n source: type,\n },\n opts,\n );\n } catch (error) {\n const configError = new ConfigError(error.message, filename);\n // @ts-expect-error TODO: .code is not defined on ConfigError or Error\n if (error.code) configError.code = error.code;\n throw configError;\n }\n}\n\nfunction validateNested(loc: NestingPath, opts: Record) {\n const type = getSource(loc);\n assertNoDuplicateSourcemap(opts);\n\n Object.keys(opts).forEach((key: string) => {\n const optLoc = {\n type: \"option\",\n name: key,\n parent: loc,\n } as const;\n\n if (type === \"preset\" && NONPRESET_VALIDATORS[key]) {\n throw new Error(`${msg(optLoc)} is not allowed in preset options`);\n }\n if (type !== \"arguments\" && ROOT_VALIDATORS[key]) {\n throw new Error(\n `${msg(optLoc)} is only allowed in root programmatic options`,\n );\n }\n if (\n type !== \"arguments\" &&\n type !== \"configfile\" &&\n BABELRC_VALIDATORS[key]\n ) {\n if (type === \"babelrcfile\" || type === \"extendsfile\") {\n throw new Error(\n `${msg(\n optLoc,\n )} is not allowed in .babelrc or \"extends\"ed files, only in root programmatic options, ` +\n `or babel.config.js/config file options`,\n );\n }\n\n throw new Error(\n `${msg(\n optLoc,\n )} is only allowed in root programmatic options, or babel.config.js/config file options`,\n );\n }\n\n const validator =\n COMMON_VALIDATORS[key] ||\n NONPRESET_VALIDATORS[key] ||\n BABELRC_VALIDATORS[key] ||\n ROOT_VALIDATORS[key] ||\n (throwUnknownError as Validator);\n\n validator(optLoc, opts[key]);\n });\n\n return opts;\n}\n\nfunction throwUnknownError(loc: OptionPath) {\n const key = loc.name;\n\n if (removed[key]) {\n const { message, version = 5 } = removed[key];\n\n throw new Error(\n `Using removed Babel ${version} option: ${msg(loc)} - ${message}`,\n );\n } else {\n const unknownOptErr = new Error(\n `Unknown option: ${msg(\n loc,\n )}. Check out https://babeljs.io/docs/en/babel-core/#options for more information about options.`,\n );\n // @ts-expect-error todo(flow->ts): consider creating something like BabelConfigError with code field in it\n unknownOptErr.code = \"BABEL_UNKNOWN_OPTION\";\n\n throw unknownOptErr;\n }\n}\n\nfunction assertNoDuplicateSourcemap(opts: any): void {\n if (Object.hasOwn(opts, \"sourceMap\") && Object.hasOwn(opts, \"sourceMaps\")) {\n throw new Error(\".sourceMap is an alias for .sourceMaps, cannot use both\");\n }\n}\n\nfunction assertEnvSet(\n loc: OptionPath,\n value: unknown,\n): void | EnvSet {\n if (loc.parent.type === \"env\") {\n throw new Error(`${msg(loc)} is not allowed inside of another .env block`);\n }\n const parent: RootPath | OverridesPath = loc.parent;\n\n const obj = assertObject(loc, value);\n if (obj) {\n // Validate but don't copy the .env object in order to preserve\n // object identity for use during config chain processing.\n for (const envName of Object.keys(obj)) {\n const env = assertObject(access(loc, envName), obj[envName]);\n if (!env) continue;\n\n const envLoc = {\n type: \"env\",\n name: envName,\n parent,\n } as const;\n validateNested(envLoc, env);\n }\n }\n return obj;\n}\n\nfunction assertOverridesList(\n loc: OptionPath,\n value: unknown[],\n): undefined | InputOptions[] {\n if (loc.parent.type === \"env\") {\n throw new Error(`${msg(loc)} is not allowed inside an .env block`);\n }\n if (loc.parent.type === \"overrides\") {\n throw new Error(`${msg(loc)} is not allowed inside an .overrides block`);\n }\n const parent: RootPath = loc.parent;\n\n const arr = assertArray(loc, value);\n if (arr) {\n for (const [index, item] of arr.entries()) {\n const objLoc = access(loc, index);\n const env = assertObject(objLoc, item);\n if (!env) throw new Error(`${msg(objLoc)} must be an object`);\n\n const overridesLoc = {\n type: \"overrides\",\n index,\n parent,\n } as const;\n validateNested(overridesLoc, env);\n }\n }\n return arr;\n}\n\nexport function checkNoUnwrappedItemOptionPairs(\n items: UnloadedDescriptor[],\n index: number,\n type: \"plugin\" | \"preset\",\n e: Error,\n): void {\n if (index === 0) return;\n\n const lastItem = items[index - 1];\n const thisItem = items[index];\n\n if (\n lastItem.file &&\n lastItem.options === undefined &&\n typeof thisItem.value === \"object\"\n ) {\n e.message +=\n `\\n- Maybe you meant to use\\n` +\n `\"${type}s\": [\\n [\"${lastItem.file.request}\", ${JSON.stringify(\n thisItem.value,\n undefined,\n 2,\n )}]\\n]\\n` +\n `To be a valid ${type}, its name and options should be wrapped in a pair of brackets`;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/validation/plugins.js b/node_modules/@babel/core/lib/config/validation/plugins.js new file mode 100644 index 0000000..d744ecc --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/plugins.js @@ -0,0 +1,67 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.validatePluginObject = validatePluginObject; +var _optionAssertions = require("./option-assertions.js"); +const VALIDATORS = { + name: _optionAssertions.assertString, + manipulateOptions: _optionAssertions.assertFunction, + pre: _optionAssertions.assertFunction, + post: _optionAssertions.assertFunction, + inherits: _optionAssertions.assertFunction, + visitor: assertVisitorMap, + parserOverride: _optionAssertions.assertFunction, + generatorOverride: _optionAssertions.assertFunction +}; +function assertVisitorMap(loc, value) { + const obj = (0, _optionAssertions.assertObject)(loc, value); + if (obj) { + Object.keys(obj).forEach(prop => { + if (prop !== "_exploded" && prop !== "_verified") { + assertVisitorHandler(prop, obj[prop]); + } + }); + if (obj.enter || obj.exit) { + throw new Error(`${(0, _optionAssertions.msg)(loc)} cannot contain catch-all "enter" or "exit" handlers. Please target individual nodes.`); + } + } + return obj; +} +function assertVisitorHandler(key, value) { + if (value && typeof value === "object") { + Object.keys(value).forEach(handler => { + if (handler !== "enter" && handler !== "exit") { + throw new Error(`.visitor["${key}"] may only have .enter and/or .exit handlers.`); + } + }); + } else if (typeof value !== "function") { + throw new Error(`.visitor["${key}"] must be a function`); + } +} +function validatePluginObject(obj) { + const rootPath = { + type: "root", + source: "plugin" + }; + Object.keys(obj).forEach(key => { + const validator = VALIDATORS[key]; + if (validator) { + const optLoc = { + type: "option", + name: key, + parent: rootPath + }; + validator(optLoc, obj[key]); + } else { + const invalidPluginPropertyError = new Error(`.${key} is not a valid Plugin property`); + invalidPluginPropertyError.code = "BABEL_UNKNOWN_PLUGIN_PROPERTY"; + throw invalidPluginPropertyError; + } + }); + return obj; +} +0 && 0; + +//# sourceMappingURL=plugins.js.map diff --git a/node_modules/@babel/core/lib/config/validation/plugins.js.map b/node_modules/@babel/core/lib/config/validation/plugins.js.map new file mode 100644 index 0000000..a11be98 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/plugins.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_optionAssertions","require","VALIDATORS","name","assertString","manipulateOptions","assertFunction","pre","post","inherits","visitor","assertVisitorMap","parserOverride","generatorOverride","loc","value","obj","assertObject","Object","keys","forEach","prop","assertVisitorHandler","enter","exit","Error","msg","key","handler","validatePluginObject","rootPath","type","source","validator","optLoc","parent","invalidPluginPropertyError","code"],"sources":["../../../src/config/validation/plugins.ts"],"sourcesContent":["import {\n assertString,\n assertFunction,\n assertObject,\n msg,\n} from \"./option-assertions.ts\";\n\nimport type {\n ValidatorSet,\n Validator,\n OptionPath,\n RootPath,\n} from \"./option-assertions.ts\";\nimport type { parse, ParserOptions } from \"@babel/parser\";\nimport type { Visitor } from \"@babel/traverse\";\nimport type { ResolvedOptions } from \"./options.ts\";\nimport type { File, PluginAPI, PluginPass } from \"../../index.ts\";\nimport type { GeneratorOptions, GeneratorResult } from \"@babel/generator\";\nimport type babelGenerator from \"@babel/generator\";\n\n// Note: The casts here are just meant to be static assertions to make sure\n// that the assertion functions actually assert that the value's type matches\n// the declared types.\nconst VALIDATORS: ValidatorSet = {\n name: assertString as Validator,\n manipulateOptions: assertFunction as Validator<\n PluginObject[\"manipulateOptions\"]\n >,\n pre: assertFunction as Validator,\n post: assertFunction as Validator,\n inherits: assertFunction as Validator,\n visitor: assertVisitorMap as Validator,\n\n parserOverride: assertFunction as Validator,\n generatorOverride: assertFunction as Validator<\n PluginObject[\"generatorOverride\"]\n >,\n};\n\nfunction assertVisitorMap(loc: OptionPath, value: unknown): Visitor {\n const obj = assertObject(loc, value);\n if (obj) {\n Object.keys(obj).forEach(prop => {\n if (prop !== \"_exploded\" && prop !== \"_verified\") {\n assertVisitorHandler(prop, obj[prop]);\n }\n });\n\n if (obj.enter || obj.exit) {\n throw new Error(\n `${msg(\n loc,\n )} cannot contain catch-all \"enter\" or \"exit\" handlers. Please target individual nodes.`,\n );\n }\n }\n return obj as Visitor;\n}\n\nfunction assertVisitorHandler(\n key: string,\n value: unknown,\n): asserts value is VisitorHandler {\n if (value && typeof value === \"object\") {\n Object.keys(value).forEach((handler: string) => {\n if (handler !== \"enter\" && handler !== \"exit\") {\n throw new Error(\n `.visitor[\"${key}\"] may only have .enter and/or .exit handlers.`,\n );\n }\n });\n } else if (typeof value !== \"function\") {\n throw new Error(`.visitor[\"${key}\"] must be a function`);\n }\n}\n\ntype VisitorHandler =\n | Function\n | {\n enter?: Function;\n exit?: Function;\n };\n\nexport type PluginObject = {\n name?: string;\n manipulateOptions?: (\n options: ResolvedOptions,\n parserOpts: ParserOptions,\n ) => void;\n pre?: (this: S, file: File) => void | Promise;\n post?: (this: S, file: File) => void | Promise;\n inherits?: (\n api: PluginAPI,\n options: unknown,\n dirname: string,\n ) => PluginObject;\n visitor?: Visitor;\n parserOverride?: (\n ...args: [...Parameters, typeof parse]\n ) => ReturnType;\n generatorOverride?: (\n ast: File[\"ast\"],\n generatorOpts: GeneratorOptions,\n code: File[\"code\"],\n generate: typeof babelGenerator,\n ) => GeneratorResult;\n};\n\nexport function validatePluginObject(\n obj: Record,\n): PluginObject {\n const rootPath: RootPath = {\n type: \"root\",\n source: \"plugin\",\n };\n Object.keys(obj).forEach((key: string) => {\n const validator = VALIDATORS[key];\n\n if (validator) {\n const optLoc: OptionPath = {\n type: \"option\",\n name: key,\n parent: rootPath,\n };\n validator(optLoc, obj[key]);\n } else {\n const invalidPluginPropertyError = new Error(\n `.${key} is not a valid Plugin property`,\n );\n // @ts-expect-error todo(flow->ts) consider adding BabelConfigError with code field\n invalidPluginPropertyError.code = \"BABEL_UNKNOWN_PLUGIN_PROPERTY\";\n throw invalidPluginPropertyError;\n }\n });\n\n return obj as any;\n}\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAuBA,MAAMC,UAAwB,GAAG;EAC/BC,IAAI,EAAEC,8BAA+C;EACrDC,iBAAiB,EAAEC,gCAElB;EACDC,GAAG,EAAED,gCAAgD;EACrDE,IAAI,EAAEF,gCAAiD;EACvDG,QAAQ,EAAEH,gCAAqD;EAC/DI,OAAO,EAAEC,gBAAsD;EAE/DC,cAAc,EAAEN,gCAA2D;EAC3EO,iBAAiB,EAAEP;AAGrB,CAAC;AAED,SAASK,gBAAgBA,CAACG,GAAe,EAAEC,KAAc,EAAW;EAClE,MAAMC,GAAG,GAAG,IAAAC,8BAAY,EAACH,GAAG,EAAEC,KAAK,CAAC;EACpC,IAAIC,GAAG,EAAE;IACPE,MAAM,CAACC,IAAI,CAACH,GAAG,CAAC,CAACI,OAAO,CAACC,IAAI,IAAI;MAC/B,IAAIA,IAAI,KAAK,WAAW,IAAIA,IAAI,KAAK,WAAW,EAAE;QAChDC,oBAAoB,CAACD,IAAI,EAAEL,GAAG,CAACK,IAAI,CAAC,CAAC;MACvC;IACF,CAAC,CAAC;IAEF,IAAIL,GAAG,CAACO,KAAK,IAAIP,GAAG,CAACQ,IAAI,EAAE;MACzB,MAAM,IAAIC,KAAK,CACb,GAAG,IAAAC,qBAAG,EACJZ,GACF,CAAC,uFACH,CAAC;IACH;EACF;EACA,OAAOE,GAAG;AACZ;AAEA,SAASM,oBAAoBA,CAC3BK,GAAW,EACXZ,KAAc,EACmB;EACjC,IAAIA,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACtCG,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAACK,OAAO,CAAEQ,OAAe,IAAK;MAC9C,IAAIA,OAAO,KAAK,OAAO,IAAIA,OAAO,KAAK,MAAM,EAAE;QAC7C,MAAM,IAAIH,KAAK,CACb,aAAaE,GAAG,gDAClB,CAAC;MACH;IACF,CAAC,CAAC;EACJ,CAAC,MAAM,IAAI,OAAOZ,KAAK,KAAK,UAAU,EAAE;IACtC,MAAM,IAAIU,KAAK,CAAC,aAAaE,GAAG,uBAAuB,CAAC;EAC1D;AACF;AAkCO,SAASE,oBAAoBA,CAClCb,GAA4B,EACd;EACd,MAAMc,QAAkB,GAAG;IACzBC,IAAI,EAAE,MAAM;IACZC,MAAM,EAAE;EACV,CAAC;EACDd,MAAM,CAACC,IAAI,CAACH,GAAG,CAAC,CAACI,OAAO,CAAEO,GAAW,IAAK;IACxC,MAAMM,SAAS,GAAG/B,UAAU,CAACyB,GAAG,CAAC;IAEjC,IAAIM,SAAS,EAAE;MACb,MAAMC,MAAkB,GAAG;QACzBH,IAAI,EAAE,QAAQ;QACd5B,IAAI,EAAEwB,GAAG;QACTQ,MAAM,EAAEL;MACV,CAAC;MACDG,SAAS,CAACC,MAAM,EAAElB,GAAG,CAACW,GAAG,CAAC,CAAC;IAC7B,CAAC,MAAM;MACL,MAAMS,0BAA0B,GAAG,IAAIX,KAAK,CAC1C,IAAIE,GAAG,iCACT,CAAC;MAEDS,0BAA0B,CAACC,IAAI,GAAG,+BAA+B;MACjE,MAAMD,0BAA0B;IAClC;EACF,CAAC,CAAC;EAEF,OAAOpB,GAAG;AACZ;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/config/validation/removed.js b/node_modules/@babel/core/lib/config/validation/removed.js new file mode 100644 index 0000000..9bd436e --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/removed.js @@ -0,0 +1,68 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +var _default = exports.default = { + auxiliaryComment: { + message: "Use `auxiliaryCommentBefore` or `auxiliaryCommentAfter`" + }, + blacklist: { + message: "Put the specific transforms you want in the `plugins` option" + }, + breakConfig: { + message: "This is not a necessary option in Babel 6" + }, + experimental: { + message: "Put the specific transforms you want in the `plugins` option" + }, + externalHelpers: { + message: "Use the `external-helpers` plugin instead. " + "Check out http://babeljs.io/docs/plugins/external-helpers/" + }, + extra: { + message: "" + }, + jsxPragma: { + message: "use the `pragma` option in the `react-jsx` plugin. " + "Check out http://babeljs.io/docs/plugins/transform-react-jsx/" + }, + loose: { + message: "Specify the `loose` option for the relevant plugin you are using " + "or use a preset that sets the option." + }, + metadataUsedHelpers: { + message: "Not required anymore as this is enabled by default" + }, + modules: { + message: "Use the corresponding module transform plugin in the `plugins` option. " + "Check out http://babeljs.io/docs/plugins/#modules" + }, + nonStandard: { + message: "Use the `react-jsx` and `flow-strip-types` plugins to support JSX and Flow. " + "Also check out the react preset http://babeljs.io/docs/plugins/preset-react/" + }, + optional: { + message: "Put the specific transforms you want in the `plugins` option" + }, + sourceMapName: { + message: "The `sourceMapName` option has been removed because it makes more sense for the " + "tooling that calls Babel to assign `map.file` themselves." + }, + stage: { + message: "Check out the corresponding stage-x presets http://babeljs.io/docs/plugins/#presets" + }, + whitelist: { + message: "Put the specific transforms you want in the `plugins` option" + }, + resolveModuleSource: { + version: 6, + message: "Use `babel-plugin-module-resolver@3`'s 'resolvePath' options" + }, + metadata: { + version: 6, + message: "Generated plugin metadata is always included in the output result" + }, + sourceMapTarget: { + version: 6, + message: "The `sourceMapTarget` option has been removed because it makes more sense for the tooling " + "that calls Babel to assign `map.file` themselves." + } +}; +0 && 0; + +//# sourceMappingURL=removed.js.map diff --git a/node_modules/@babel/core/lib/config/validation/removed.js.map b/node_modules/@babel/core/lib/config/validation/removed.js.map new file mode 100644 index 0000000..e1aa740 --- /dev/null +++ b/node_modules/@babel/core/lib/config/validation/removed.js.map @@ -0,0 +1 @@ +{"version":3,"names":["auxiliaryComment","message","blacklist","breakConfig","experimental","externalHelpers","extra","jsxPragma","loose","metadataUsedHelpers","modules","nonStandard","optional","sourceMapName","stage","whitelist","resolveModuleSource","version","metadata","sourceMapTarget"],"sources":["../../../src/config/validation/removed.ts"],"sourcesContent":["export default {\n auxiliaryComment: {\n message: \"Use `auxiliaryCommentBefore` or `auxiliaryCommentAfter`\",\n },\n blacklist: {\n message: \"Put the specific transforms you want in the `plugins` option\",\n },\n breakConfig: {\n message: \"This is not a necessary option in Babel 6\",\n },\n experimental: {\n message: \"Put the specific transforms you want in the `plugins` option\",\n },\n externalHelpers: {\n message:\n \"Use the `external-helpers` plugin instead. \" +\n \"Check out http://babeljs.io/docs/plugins/external-helpers/\",\n },\n extra: {\n message: \"\",\n },\n jsxPragma: {\n message:\n \"use the `pragma` option in the `react-jsx` plugin. \" +\n \"Check out http://babeljs.io/docs/plugins/transform-react-jsx/\",\n },\n loose: {\n message:\n \"Specify the `loose` option for the relevant plugin you are using \" +\n \"or use a preset that sets the option.\",\n },\n metadataUsedHelpers: {\n message: \"Not required anymore as this is enabled by default\",\n },\n modules: {\n message:\n \"Use the corresponding module transform plugin in the `plugins` option. \" +\n \"Check out http://babeljs.io/docs/plugins/#modules\",\n },\n nonStandard: {\n message:\n \"Use the `react-jsx` and `flow-strip-types` plugins to support JSX and Flow. \" +\n \"Also check out the react preset http://babeljs.io/docs/plugins/preset-react/\",\n },\n optional: {\n message: \"Put the specific transforms you want in the `plugins` option\",\n },\n sourceMapName: {\n message:\n \"The `sourceMapName` option has been removed because it makes more sense for the \" +\n \"tooling that calls Babel to assign `map.file` themselves.\",\n },\n stage: {\n message:\n \"Check out the corresponding stage-x presets http://babeljs.io/docs/plugins/#presets\",\n },\n whitelist: {\n message: \"Put the specific transforms you want in the `plugins` option\",\n },\n\n resolveModuleSource: {\n version: 6,\n message: \"Use `babel-plugin-module-resolver@3`'s 'resolvePath' options\",\n },\n metadata: {\n version: 6,\n message:\n \"Generated plugin metadata is always included in the output result\",\n },\n sourceMapTarget: {\n version: 6,\n message:\n \"The `sourceMapTarget` option has been removed because it makes more sense for the tooling \" +\n \"that calls Babel to assign `map.file` themselves.\",\n },\n} as Record;\n"],"mappings":";;;;;;iCAAe;EACbA,gBAAgB,EAAE;IAChBC,OAAO,EAAE;EACX,CAAC;EACDC,SAAS,EAAE;IACTD,OAAO,EAAE;EACX,CAAC;EACDE,WAAW,EAAE;IACXF,OAAO,EAAE;EACX,CAAC;EACDG,YAAY,EAAE;IACZH,OAAO,EAAE;EACX,CAAC;EACDI,eAAe,EAAE;IACfJ,OAAO,EACL,6CAA6C,GAC7C;EACJ,CAAC;EACDK,KAAK,EAAE;IACLL,OAAO,EAAE;EACX,CAAC;EACDM,SAAS,EAAE;IACTN,OAAO,EACL,qDAAqD,GACrD;EACJ,CAAC;EACDO,KAAK,EAAE;IACLP,OAAO,EACL,mEAAmE,GACnE;EACJ,CAAC;EACDQ,mBAAmB,EAAE;IACnBR,OAAO,EAAE;EACX,CAAC;EACDS,OAAO,EAAE;IACPT,OAAO,EACL,yEAAyE,GACzE;EACJ,CAAC;EACDU,WAAW,EAAE;IACXV,OAAO,EACL,8EAA8E,GAC9E;EACJ,CAAC;EACDW,QAAQ,EAAE;IACRX,OAAO,EAAE;EACX,CAAC;EACDY,aAAa,EAAE;IACbZ,OAAO,EACL,kFAAkF,GAClF;EACJ,CAAC;EACDa,KAAK,EAAE;IACLb,OAAO,EACL;EACJ,CAAC;EACDc,SAAS,EAAE;IACTd,OAAO,EAAE;EACX,CAAC;EAEDe,mBAAmB,EAAE;IACnBC,OAAO,EAAE,CAAC;IACVhB,OAAO,EAAE;EACX,CAAC;EACDiB,QAAQ,EAAE;IACRD,OAAO,EAAE,CAAC;IACVhB,OAAO,EACL;EACJ,CAAC;EACDkB,eAAe,EAAE;IACfF,OAAO,EAAE,CAAC;IACVhB,OAAO,EACL,4FAA4F,GAC5F;EACJ;AACF,CAAC;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/errors/config-error.js b/node_modules/@babel/core/lib/errors/config-error.js new file mode 100644 index 0000000..c290804 --- /dev/null +++ b/node_modules/@babel/core/lib/errors/config-error.js @@ -0,0 +1,18 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +var _rewriteStackTrace = require("./rewrite-stack-trace.js"); +class ConfigError extends Error { + constructor(message, filename) { + super(message); + (0, _rewriteStackTrace.expectedError)(this); + if (filename) (0, _rewriteStackTrace.injectVirtualStackFrame)(this, filename); + } +} +exports.default = ConfigError; +0 && 0; + +//# sourceMappingURL=config-error.js.map diff --git a/node_modules/@babel/core/lib/errors/config-error.js.map b/node_modules/@babel/core/lib/errors/config-error.js.map new file mode 100644 index 0000000..0045ded --- /dev/null +++ b/node_modules/@babel/core/lib/errors/config-error.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_rewriteStackTrace","require","ConfigError","Error","constructor","message","filename","expectedError","injectVirtualStackFrame","exports","default"],"sources":["../../src/errors/config-error.ts"],"sourcesContent":["import {\n injectVirtualStackFrame,\n expectedError,\n} from \"./rewrite-stack-trace.ts\";\n\nexport default class ConfigError extends Error {\n constructor(message: string, filename?: string) {\n super(message);\n expectedError(this);\n if (filename) injectVirtualStackFrame(this, filename);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAKe,MAAMC,WAAW,SAASC,KAAK,CAAC;EAC7CC,WAAWA,CAACC,OAAe,EAAEC,QAAiB,EAAE;IAC9C,KAAK,CAACD,OAAO,CAAC;IACd,IAAAE,gCAAa,EAAC,IAAI,CAAC;IACnB,IAAID,QAAQ,EAAE,IAAAE,0CAAuB,EAAC,IAAI,EAAEF,QAAQ,CAAC;EACvD;AACF;AAACG,OAAA,CAAAC,OAAA,GAAAR,WAAA;AAAA","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js b/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js new file mode 100644 index 0000000..68896d3 --- /dev/null +++ b/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js @@ -0,0 +1,98 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.beginHiddenCallStack = beginHiddenCallStack; +exports.endHiddenCallStack = endHiddenCallStack; +exports.expectedError = expectedError; +exports.injectVirtualStackFrame = injectVirtualStackFrame; +var _Object$getOwnPropert; +const ErrorToString = Function.call.bind(Error.prototype.toString); +const SUPPORTED = !!Error.captureStackTrace && ((_Object$getOwnPropert = Object.getOwnPropertyDescriptor(Error, "stackTraceLimit")) == null ? void 0 : _Object$getOwnPropert.writable) === true; +const START_HIDING = "startHiding - secret - don't use this - v1"; +const STOP_HIDING = "stopHiding - secret - don't use this - v1"; +const expectedErrors = new WeakSet(); +const virtualFrames = new WeakMap(); +function CallSite(filename) { + return Object.create({ + isNative: () => false, + isConstructor: () => false, + isToplevel: () => true, + getFileName: () => filename, + getLineNumber: () => undefined, + getColumnNumber: () => undefined, + getFunctionName: () => undefined, + getMethodName: () => undefined, + getTypeName: () => undefined, + toString: () => filename + }); +} +function injectVirtualStackFrame(error, filename) { + if (!SUPPORTED) return; + let frames = virtualFrames.get(error); + if (!frames) virtualFrames.set(error, frames = []); + frames.push(CallSite(filename)); + return error; +} +function expectedError(error) { + if (!SUPPORTED) return; + expectedErrors.add(error); + return error; +} +function beginHiddenCallStack(fn) { + if (!SUPPORTED) return fn; + return Object.defineProperty(function (...args) { + setupPrepareStackTrace(); + return fn(...args); + }, "name", { + value: STOP_HIDING + }); +} +function endHiddenCallStack(fn) { + if (!SUPPORTED) return fn; + return Object.defineProperty(function (...args) { + return fn(...args); + }, "name", { + value: START_HIDING + }); +} +function setupPrepareStackTrace() { + setupPrepareStackTrace = () => {}; + const { + prepareStackTrace = defaultPrepareStackTrace + } = Error; + const MIN_STACK_TRACE_LIMIT = 50; + Error.stackTraceLimit && (Error.stackTraceLimit = Math.max(Error.stackTraceLimit, MIN_STACK_TRACE_LIMIT)); + Error.prepareStackTrace = function stackTraceRewriter(err, trace) { + let newTrace = []; + const isExpected = expectedErrors.has(err); + let status = isExpected ? "hiding" : "unknown"; + for (let i = 0; i < trace.length; i++) { + const name = trace[i].getFunctionName(); + if (name === START_HIDING) { + status = "hiding"; + } else if (name === STOP_HIDING) { + if (status === "hiding") { + status = "showing"; + if (virtualFrames.has(err)) { + newTrace.unshift(...virtualFrames.get(err)); + } + } else if (status === "unknown") { + newTrace = trace; + break; + } + } else if (status !== "hiding") { + newTrace.push(trace[i]); + } + } + return prepareStackTrace(err, newTrace); + }; +} +function defaultPrepareStackTrace(err, trace) { + if (trace.length === 0) return ErrorToString(err); + return `${ErrorToString(err)}\n at ${trace.join("\n at ")}`; +} +0 && 0; + +//# sourceMappingURL=rewrite-stack-trace.js.map diff --git a/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js.map b/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js.map new file mode 100644 index 0000000..25cce7a --- /dev/null +++ b/node_modules/@babel/core/lib/errors/rewrite-stack-trace.js.map @@ -0,0 +1 @@ +{"version":3,"names":["ErrorToString","Function","call","bind","Error","prototype","toString","SUPPORTED","captureStackTrace","_Object$getOwnPropert","Object","getOwnPropertyDescriptor","writable","START_HIDING","STOP_HIDING","expectedErrors","WeakSet","virtualFrames","WeakMap","CallSite","filename","create","isNative","isConstructor","isToplevel","getFileName","getLineNumber","undefined","getColumnNumber","getFunctionName","getMethodName","getTypeName","injectVirtualStackFrame","error","frames","get","set","push","expectedError","add","beginHiddenCallStack","fn","defineProperty","args","setupPrepareStackTrace","value","endHiddenCallStack","prepareStackTrace","defaultPrepareStackTrace","MIN_STACK_TRACE_LIMIT","stackTraceLimit","Math","max","stackTraceRewriter","err","trace","newTrace","isExpected","has","status","i","length","name","unshift","join"],"sources":["../../src/errors/rewrite-stack-trace.ts"],"sourcesContent":["/**\n * This file uses the internal V8 Stack Trace API (https://v8.dev/docs/stack-trace-api)\n * to provide utilities to rewrite the stack trace.\n * When this API is not present, all the functions in this file become noops.\n *\n * beginHiddenCallStack(fn) and endHiddenCallStack(fn) wrap their parameter to\n * mark an hidden portion of the stack trace. The function passed to\n * beginHiddenCallStack is the first hidden function, while the function passed\n * to endHiddenCallStack is the first shown function.\n *\n * When an error is thrown _outside_ of the hidden zone, everything between\n * beginHiddenCallStack and endHiddenCallStack will not be shown.\n * If an error is thrown _inside_ the hidden zone, then the whole stack trace\n * will be visible: this is to avoid hiding real bugs.\n * However, if an error inside the hidden zone is expected, it can be marked\n * with the expectedError(error) function to keep the hidden frames hidden.\n *\n * Consider this call stack (the outer function is the bottom one):\n *\n * 1. a()\n * 2. endHiddenCallStack(b)()\n * 3. c()\n * 4. beginHiddenCallStack(d)()\n * 5. e()\n * 6. f()\n *\n * - If a() throws an error, then its shown call stack will be \"a, b, e, f\"\n * - If b() throws an error, then its shown call stack will be \"b, e, f\"\n * - If c() throws an expected error, then its shown call stack will be \"e, f\"\n * - If c() throws an unexpected error, then its shown call stack will be \"c, d, e, f\"\n * - If d() throws an expected error, then its shown call stack will be \"e, f\"\n * - If d() throws an unexpected error, then its shown call stack will be \"d, e, f\"\n * - If e() throws an error, then its shown call stack will be \"e, f\"\n *\n * Additionally, an error can inject additional \"virtual\" stack frames using the\n * injectVirtualStackFrame(error, filename) function: those are injected as a\n * replacement of the hidden frames.\n * In the example above, if we called injectVirtualStackFrame(err, \"h\") and\n * injectVirtualStackFrame(err, \"i\") on the expected error thrown by c(), its\n * shown call stack would have been \"h, i, e, f\".\n * This can be useful, for example, to report config validation errors as if they\n * were directly thrown in the config file.\n */\n\nconst ErrorToString = Function.call.bind(Error.prototype.toString);\n\nconst SUPPORTED =\n !!Error.captureStackTrace &&\n Object.getOwnPropertyDescriptor(Error, \"stackTraceLimit\")?.writable === true;\n\nconst START_HIDING = \"startHiding - secret - don't use this - v1\";\nconst STOP_HIDING = \"stopHiding - secret - don't use this - v1\";\n\ntype CallSite = NodeJS.CallSite;\n\nconst expectedErrors = new WeakSet();\nconst virtualFrames = new WeakMap();\n\nfunction CallSite(filename: string): CallSite {\n // We need to use a prototype otherwise it breaks source-map-support's internals\n return Object.create({\n isNative: () => false,\n isConstructor: () => false,\n isToplevel: () => true,\n getFileName: () => filename,\n getLineNumber: () => undefined,\n getColumnNumber: () => undefined,\n getFunctionName: () => undefined,\n getMethodName: () => undefined,\n getTypeName: () => undefined,\n toString: () => filename,\n } as CallSite);\n}\n\nexport function injectVirtualStackFrame(error: Error, filename: string) {\n if (!SUPPORTED) return;\n\n let frames = virtualFrames.get(error);\n if (!frames) virtualFrames.set(error, (frames = []));\n frames.push(CallSite(filename));\n\n return error;\n}\n\nexport function expectedError(error: Error) {\n if (!SUPPORTED) return;\n expectedErrors.add(error);\n return error;\n}\n\nexport function beginHiddenCallStack(\n fn: (...args: A) => R,\n) {\n if (!SUPPORTED) return fn;\n\n return Object.defineProperty(\n function (...args: A) {\n setupPrepareStackTrace();\n return fn(...args);\n },\n \"name\",\n { value: STOP_HIDING },\n );\n}\n\nexport function endHiddenCallStack(\n fn: (...args: A) => R,\n) {\n if (!SUPPORTED) return fn;\n\n return Object.defineProperty(\n function (...args: A) {\n return fn(...args);\n },\n \"name\",\n { value: START_HIDING },\n );\n}\n\nfunction setupPrepareStackTrace() {\n // @ts-expect-error This function is a singleton\n setupPrepareStackTrace = () => {};\n\n const { prepareStackTrace = defaultPrepareStackTrace } = Error;\n\n // We add some extra frames to Error.stackTraceLimit, so that we can\n // always show some useful frames even after deleting ours.\n // STACK_TRACE_LIMIT_DELTA should be around the maximum expected number\n // of internal frames, and not too big because capturing the stack trace\n // is slow (this is why Error.stackTraceLimit does not default to Infinity!).\n // Increase it if needed.\n // However, we only do it if the user did not explicitly set it to 0.\n const MIN_STACK_TRACE_LIMIT = 50;\n Error.stackTraceLimit &&= Math.max(\n Error.stackTraceLimit,\n MIN_STACK_TRACE_LIMIT,\n );\n\n Error.prepareStackTrace = function stackTraceRewriter(err, trace) {\n let newTrace = [];\n\n const isExpected = expectedErrors.has(err);\n let status: \"showing\" | \"hiding\" | \"unknown\" = isExpected\n ? \"hiding\"\n : \"unknown\";\n for (let i = 0; i < trace.length; i++) {\n const name = trace[i].getFunctionName();\n if (name === START_HIDING) {\n status = \"hiding\";\n } else if (name === STOP_HIDING) {\n if (status === \"hiding\") {\n status = \"showing\";\n if (virtualFrames.has(err)) {\n newTrace.unshift(...virtualFrames.get(err));\n }\n } else if (status === \"unknown\") {\n // Unexpected internal error, show the full stack trace\n newTrace = trace;\n break;\n }\n } else if (status !== \"hiding\") {\n newTrace.push(trace[i]);\n }\n }\n\n return prepareStackTrace(err, newTrace);\n };\n}\n\nfunction defaultPrepareStackTrace(err: Error, trace: CallSite[]) {\n if (trace.length === 0) return ErrorToString(err);\n // eslint-disable-next-line @typescript-eslint/no-base-to-string\n return `${ErrorToString(err)}\\n at ${trace.join(\"\\n at \")}`;\n}\n"],"mappings":";;;;;;;;;;AA4CA,MAAMA,aAAa,GAAGC,QAAQ,CAACC,IAAI,CAACC,IAAI,CAACC,KAAK,CAACC,SAAS,CAACC,QAAQ,CAAC;AAElE,MAAMC,SAAS,GACb,CAAC,CAACH,KAAK,CAACI,iBAAiB,IACzB,EAAAC,qBAAA,GAAAC,MAAM,CAACC,wBAAwB,CAACP,KAAK,EAAE,iBAAiB,CAAC,qBAAzDK,qBAAA,CAA2DG,QAAQ,MAAK,IAAI;AAE9E,MAAMC,YAAY,GAAG,4CAA4C;AACjE,MAAMC,WAAW,GAAG,2CAA2C;AAI/D,MAAMC,cAAc,GAAG,IAAIC,OAAO,CAAQ,CAAC;AAC3C,MAAMC,aAAa,GAAG,IAAIC,OAAO,CAAoB,CAAC;AAEtD,SAASC,QAAQA,CAACC,QAAgB,EAAY;EAE5C,OAAOV,MAAM,CAACW,MAAM,CAAC;IACnBC,QAAQ,EAAEA,CAAA,KAAM,KAAK;IACrBC,aAAa,EAAEA,CAAA,KAAM,KAAK;IAC1BC,UAAU,EAAEA,CAAA,KAAM,IAAI;IACtBC,WAAW,EAAEA,CAAA,KAAML,QAAQ;IAC3BM,aAAa,EAAEA,CAAA,KAAMC,SAAS;IAC9BC,eAAe,EAAEA,CAAA,KAAMD,SAAS;IAChCE,eAAe,EAAEA,CAAA,KAAMF,SAAS;IAChCG,aAAa,EAAEA,CAAA,KAAMH,SAAS;IAC9BI,WAAW,EAAEA,CAAA,KAAMJ,SAAS;IAC5BrB,QAAQ,EAAEA,CAAA,KAAMc;EAClB,CAAa,CAAC;AAChB;AAEO,SAASY,uBAAuBA,CAACC,KAAY,EAAEb,QAAgB,EAAE;EACtE,IAAI,CAACb,SAAS,EAAE;EAEhB,IAAI2B,MAAM,GAAGjB,aAAa,CAACkB,GAAG,CAACF,KAAK,CAAC;EACrC,IAAI,CAACC,MAAM,EAAEjB,aAAa,CAACmB,GAAG,CAACH,KAAK,EAAGC,MAAM,GAAG,EAAG,CAAC;EACpDA,MAAM,CAACG,IAAI,CAAClB,QAAQ,CAACC,QAAQ,CAAC,CAAC;EAE/B,OAAOa,KAAK;AACd;AAEO,SAASK,aAAaA,CAACL,KAAY,EAAE;EAC1C,IAAI,CAAC1B,SAAS,EAAE;EAChBQ,cAAc,CAACwB,GAAG,CAACN,KAAK,CAAC;EACzB,OAAOA,KAAK;AACd;AAEO,SAASO,oBAAoBA,CAClCC,EAAqB,EACrB;EACA,IAAI,CAAClC,SAAS,EAAE,OAAOkC,EAAE;EAEzB,OAAO/B,MAAM,CAACgC,cAAc,CAC1B,UAAU,GAAGC,IAAO,EAAE;IACpBC,sBAAsB,CAAC,CAAC;IACxB,OAAOH,EAAE,CAAC,GAAGE,IAAI,CAAC;EACpB,CAAC,EACD,MAAM,EACN;IAAEE,KAAK,EAAE/B;EAAY,CACvB,CAAC;AACH;AAEO,SAASgC,kBAAkBA,CAChCL,EAAqB,EACrB;EACA,IAAI,CAAClC,SAAS,EAAE,OAAOkC,EAAE;EAEzB,OAAO/B,MAAM,CAACgC,cAAc,CAC1B,UAAU,GAAGC,IAAO,EAAE;IACpB,OAAOF,EAAE,CAAC,GAAGE,IAAI,CAAC;EACpB,CAAC,EACD,MAAM,EACN;IAAEE,KAAK,EAAEhC;EAAa,CACxB,CAAC;AACH;AAEA,SAAS+B,sBAAsBA,CAAA,EAAG;EAEhCA,sBAAsB,GAAGA,CAAA,KAAM,CAAC,CAAC;EAEjC,MAAM;IAAEG,iBAAiB,GAAGC;EAAyB,CAAC,GAAG5C,KAAK;EAS9D,MAAM6C,qBAAqB,GAAG,EAAE;EAChC7C,KAAK,CAAC8C,eAAe,KAArB9C,KAAK,CAAC8C,eAAe,GAAKC,IAAI,CAACC,GAAG,CAChChD,KAAK,CAAC8C,eAAe,EACrBD,qBACF,CAAC;EAED7C,KAAK,CAAC2C,iBAAiB,GAAG,SAASM,kBAAkBA,CAACC,GAAG,EAAEC,KAAK,EAAE;IAChE,IAAIC,QAAQ,GAAG,EAAE;IAEjB,MAAMC,UAAU,GAAG1C,cAAc,CAAC2C,GAAG,CAACJ,GAAG,CAAC;IAC1C,IAAIK,MAAwC,GAAGF,UAAU,GACrD,QAAQ,GACR,SAAS;IACb,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,KAAK,CAACM,MAAM,EAAED,CAAC,EAAE,EAAE;MACrC,MAAME,IAAI,GAAGP,KAAK,CAACK,CAAC,CAAC,CAAC/B,eAAe,CAAC,CAAC;MACvC,IAAIiC,IAAI,KAAKjD,YAAY,EAAE;QACzB8C,MAAM,GAAG,QAAQ;MACnB,CAAC,MAAM,IAAIG,IAAI,KAAKhD,WAAW,EAAE;QAC/B,IAAI6C,MAAM,KAAK,QAAQ,EAAE;UACvBA,MAAM,GAAG,SAAS;UAClB,IAAI1C,aAAa,CAACyC,GAAG,CAACJ,GAAG,CAAC,EAAE;YAC1BE,QAAQ,CAACO,OAAO,CAAC,GAAG9C,aAAa,CAACkB,GAAG,CAACmB,GAAG,CAAC,CAAC;UAC7C;QACF,CAAC,MAAM,IAAIK,MAAM,KAAK,SAAS,EAAE;UAE/BH,QAAQ,GAAGD,KAAK;UAChB;QACF;MACF,CAAC,MAAM,IAAII,MAAM,KAAK,QAAQ,EAAE;QAC9BH,QAAQ,CAACnB,IAAI,CAACkB,KAAK,CAACK,CAAC,CAAC,CAAC;MACzB;IACF;IAEA,OAAOb,iBAAiB,CAACO,GAAG,EAAEE,QAAQ,CAAC;EACzC,CAAC;AACH;AAEA,SAASR,wBAAwBA,CAACM,GAAU,EAAEC,KAAiB,EAAE;EAC/D,IAAIA,KAAK,CAACM,MAAM,KAAK,CAAC,EAAE,OAAO7D,aAAa,CAACsD,GAAG,CAAC;EAEjD,OAAO,GAAGtD,aAAa,CAACsD,GAAG,CAAC,YAAYC,KAAK,CAACS,IAAI,CAAC,WAAW,CAAC,EAAE;AACnE;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/gensync-utils/async.js b/node_modules/@babel/core/lib/gensync-utils/async.js new file mode 100644 index 0000000..42946c6 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/async.js @@ -0,0 +1,90 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.forwardAsync = forwardAsync; +exports.isAsync = void 0; +exports.isThenable = isThenable; +exports.maybeAsync = maybeAsync; +exports.waitFor = exports.onFirstPause = void 0; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } +function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } +const runGenerator = _gensync()(function* (item) { + return yield* item; +}); +const isAsync = exports.isAsync = _gensync()({ + sync: () => false, + errback: cb => cb(null, true) +}); +function maybeAsync(fn, message) { + return _gensync()({ + sync(...args) { + const result = fn.apply(this, args); + if (isThenable(result)) throw new Error(message); + return result; + }, + async(...args) { + return Promise.resolve(fn.apply(this, args)); + } + }); +} +const withKind = _gensync()({ + sync: cb => cb("sync"), + async: function () { + var _ref = _asyncToGenerator(function* (cb) { + return cb("async"); + }); + return function async(_x) { + return _ref.apply(this, arguments); + }; + }() +}); +function forwardAsync(action, cb) { + const g = _gensync()(action); + return withKind(kind => { + const adapted = g[kind]; + return cb(adapted); + }); +} +const onFirstPause = exports.onFirstPause = _gensync()({ + name: "onFirstPause", + arity: 2, + sync: function (item) { + return runGenerator.sync(item); + }, + errback: function (item, firstPause, cb) { + let completed = false; + runGenerator.errback(item, (err, value) => { + completed = true; + cb(err, value); + }); + if (!completed) { + firstPause(); + } + } +}); +const waitFor = exports.waitFor = _gensync()({ + sync: x => x, + async: function () { + var _ref2 = _asyncToGenerator(function* (x) { + return x; + }); + return function async(_x2) { + return _ref2.apply(this, arguments); + }; + }() +}); +function isThenable(val) { + return !!val && (typeof val === "object" || typeof val === "function") && !!val.then && typeof val.then === "function"; +} +0 && 0; + +//# sourceMappingURL=async.js.map diff --git a/node_modules/@babel/core/lib/gensync-utils/async.js.map b/node_modules/@babel/core/lib/gensync-utils/async.js.map new file mode 100644 index 0000000..595d757 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/async.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","asyncGeneratorStep","n","t","e","r","o","a","c","i","u","value","done","Promise","resolve","then","_asyncToGenerator","arguments","apply","_next","_throw","runGenerator","gensync","item","isAsync","exports","sync","errback","cb","maybeAsync","fn","message","args","result","isThenable","Error","async","withKind","_ref","_x","forwardAsync","action","g","kind","adapted","onFirstPause","name","arity","firstPause","completed","err","waitFor","x","_ref2","_x2","val"],"sources":["../../src/gensync-utils/async.ts"],"sourcesContent":["import gensync, { type Gensync, type Handler, type Callback } from \"gensync\";\n\ntype MaybePromise = T | Promise;\n\nconst runGenerator: {\n sync(gen: Handler): Return;\n async(gen: Handler): Promise;\n errback(gen: Handler, cb: Callback): void;\n} = gensync(function* (item: Handler): Handler {\n return yield* item;\n});\n\n// This Gensync returns true if the current execution context is\n// asynchronous, otherwise it returns false.\nexport const isAsync = gensync({\n sync: () => false,\n errback: cb => cb(null, true),\n});\n\n// This function wraps any functions (which could be either synchronous or\n// asynchronous) with a Gensync. If the wrapped function returns a promise\n// but the current execution context is synchronous, it will throw the\n// provided error.\n// This is used to handle user-provided functions which could be asynchronous.\nexport function maybeAsync(\n fn: (...args: Args) => Return,\n message: string,\n): Gensync {\n return gensync({\n sync(...args) {\n const result = fn.apply(this, args);\n if (isThenable(result)) throw new Error(message);\n return result;\n },\n async(...args) {\n return Promise.resolve(fn.apply(this, args));\n },\n });\n}\n\nconst withKind = gensync({\n sync: cb => cb(\"sync\"),\n async: async cb => cb(\"async\"),\n}) as (cb: (kind: \"sync\" | \"async\") => MaybePromise) => Handler;\n\n// This function wraps a generator (or a Gensync) into another function which,\n// when called, will run the provided generator in a sync or async way, depending\n// on the execution context where this forwardAsync function is called.\n// This is useful, for example, when passing a callback to a function which isn't\n// aware of gensync, but it only knows about synchronous and asynchronous functions.\n// An example is cache.using, which being exposed to the user must be as simple as\n// possible:\n// yield* forwardAsync(gensyncFn, wrappedFn =>\n// cache.using(x => {\n// // Here we don't know about gensync. wrappedFn is a\n// // normal sync or async function\n// return wrappedFn(x);\n// })\n// )\nexport function forwardAsync(\n action: (...args: Args) => Handler,\n cb: (\n adapted: (...args: Args) => MaybePromise,\n ) => MaybePromise,\n): Handler {\n const g = gensync(action);\n return withKind(kind => {\n const adapted = g[kind];\n return cb(adapted);\n });\n}\n\n// If the given generator is executed asynchronously, the first time that it\n// is paused (i.e. When it yields a gensync generator which can't be run\n// synchronously), call the \"firstPause\" callback.\nexport const onFirstPause = gensync<\n [gen: Handler, firstPause: () => void],\n unknown\n>({\n name: \"onFirstPause\",\n arity: 2,\n sync: function (item) {\n return runGenerator.sync(item);\n },\n errback: function (item, firstPause, cb) {\n let completed = false;\n\n runGenerator.errback(item, (err, value) => {\n completed = true;\n cb(err, value);\n });\n\n if (!completed) {\n firstPause();\n }\n },\n}) as (gen: Handler, firstPause: () => void) => Handler;\n\n// Wait for the given promise to be resolved\nexport const waitFor = gensync({\n sync: x => x,\n async: async x => x,\n}) as (p: T | Promise) => Handler;\n\nexport function isThenable(val: any): val is PromiseLike {\n return (\n !!val &&\n (typeof val === \"object\" || typeof val === \"function\") &&\n !!val.then &&\n typeof val.then === \"function\"\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/gensync-utils/fs.js b/node_modules/@babel/core/lib/gensync-utils/fs.js new file mode 100644 index 0000000..b842df8 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/fs.js @@ -0,0 +1,31 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.stat = exports.readFile = void 0; +function _fs() { + const data = require("fs"); + _fs = function () { + return data; + }; + return data; +} +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +const readFile = exports.readFile = _gensync()({ + sync: _fs().readFileSync, + errback: _fs().readFile +}); +const stat = exports.stat = _gensync()({ + sync: _fs().statSync, + errback: _fs().stat +}); +0 && 0; + +//# sourceMappingURL=fs.js.map diff --git a/node_modules/@babel/core/lib/gensync-utils/fs.js.map b/node_modules/@babel/core/lib/gensync-utils/fs.js.map new file mode 100644 index 0000000..ef4e8d9 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/fs.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_fs","data","require","_gensync","readFile","exports","gensync","sync","fs","readFileSync","errback","stat","statSync"],"sources":["../../src/gensync-utils/fs.ts"],"sourcesContent":["import fs from \"node:fs\";\nimport gensync from \"gensync\";\n\nexport const readFile = gensync<[filepath: string, encoding: \"utf8\"], string>({\n sync: fs.readFileSync,\n errback: fs.readFile,\n});\n\nexport const stat = gensync({\n sync: fs.statSync,\n errback: fs.stat,\n});\n"],"mappings":";;;;;;AAAA,SAAAA,IAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,GAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAGE,SAAMA,CAAC,CAA+C;EAC5EC,IAAI,EAAEC,IAACA,CAAC,CAACC,YAAY;EACrBC,OAAO,EAAEF,IAACA,CAAC,CAACJ;AACd,CAAC,CAAC;AAEK,MAAMO,IAAI,GAAAN,OAAA,CAAAM,IAAA,GAAGL,SAAMA,CAAC,CAAC;EAC1BC,IAAI,EAAEC,IAACA,CAAC,CAACI,QAAQ;EACjBF,OAAO,EAAEF,IAACA,CAAC,CAACG;AACd,CAAC,CAAC;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/gensync-utils/functional.js b/node_modules/@babel/core/lib/gensync-utils/functional.js new file mode 100644 index 0000000..d7f7755 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/functional.js @@ -0,0 +1,58 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.once = once; +var _async = require("./async.js"); +function once(fn) { + let result; + let resultP; + let promiseReferenced = false; + return function* () { + if (!result) { + if (resultP) { + promiseReferenced = true; + return yield* (0, _async.waitFor)(resultP); + } + if (!(yield* (0, _async.isAsync)())) { + try { + result = { + ok: true, + value: yield* fn() + }; + } catch (error) { + result = { + ok: false, + value: error + }; + } + } else { + let resolve, reject; + resultP = new Promise((res, rej) => { + resolve = res; + reject = rej; + }); + try { + result = { + ok: true, + value: yield* fn() + }; + resultP = null; + if (promiseReferenced) resolve(result.value); + } catch (error) { + result = { + ok: false, + value: error + }; + resultP = null; + if (promiseReferenced) reject(error); + } + } + } + if (result.ok) return result.value;else throw result.value; + }; +} +0 && 0; + +//# sourceMappingURL=functional.js.map diff --git a/node_modules/@babel/core/lib/gensync-utils/functional.js.map b/node_modules/@babel/core/lib/gensync-utils/functional.js.map new file mode 100644 index 0000000..e8c5ed0 --- /dev/null +++ b/node_modules/@babel/core/lib/gensync-utils/functional.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_async","require","once","fn","result","resultP","promiseReferenced","waitFor","isAsync","ok","value","error","resolve","reject","Promise","res","rej"],"sources":["../../src/gensync-utils/functional.ts"],"sourcesContent":["import type { Handler } from \"gensync\";\n\nimport { isAsync, waitFor } from \"./async.ts\";\n\nexport function once(fn: () => Handler): () => Handler {\n let result: { ok: true; value: R } | { ok: false; value: unknown };\n let resultP: Promise;\n let promiseReferenced = false;\n return function* () {\n if (!result) {\n if (resultP) {\n promiseReferenced = true;\n return yield* waitFor(resultP);\n }\n\n if (!(yield* isAsync())) {\n try {\n result = { ok: true, value: yield* fn() };\n } catch (error) {\n result = { ok: false, value: error };\n }\n } else {\n let resolve: (result: R) => void, reject: (error: unknown) => void;\n resultP = new Promise((res, rej) => {\n resolve = res;\n reject = rej;\n });\n\n try {\n result = { ok: true, value: yield* fn() };\n // Avoid keeping the promise around\n // now that we have the result.\n resultP = null;\n // We only resolve/reject the promise if it has been actually\n // referenced. If there are no listeners we can forget about it.\n // In the reject case, this avoid uncatchable unhandledRejection\n // events.\n if (promiseReferenced) resolve(result.value);\n } catch (error) {\n result = { ok: false, value: error };\n resultP = null;\n if (promiseReferenced) reject(error);\n }\n }\n }\n\n if (result.ok) return result.value;\n else throw result.value;\n };\n}\n"],"mappings":";;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAEO,SAASC,IAAIA,CAAIC,EAAoB,EAAoB;EAC9D,IAAIC,MAA8D;EAClE,IAAIC,OAAmB;EACvB,IAAIC,iBAAiB,GAAG,KAAK;EAC7B,OAAO,aAAa;IAClB,IAAI,CAACF,MAAM,EAAE;MACX,IAAIC,OAAO,EAAE;QACXC,iBAAiB,GAAG,IAAI;QACxB,OAAO,OAAO,IAAAC,cAAO,EAACF,OAAO,CAAC;MAChC;MAEA,IAAI,EAAE,OAAO,IAAAG,cAAO,EAAC,CAAC,CAAC,EAAE;QACvB,IAAI;UACFJ,MAAM,GAAG;YAAEK,EAAE,EAAE,IAAI;YAAEC,KAAK,EAAE,OAAOP,EAAE,CAAC;UAAE,CAAC;QAC3C,CAAC,CAAC,OAAOQ,KAAK,EAAE;UACdP,MAAM,GAAG;YAAEK,EAAE,EAAE,KAAK;YAAEC,KAAK,EAAEC;UAAM,CAAC;QACtC;MACF,CAAC,MAAM;QACL,IAAIC,OAA4B,EAAEC,MAAgC;QAClER,OAAO,GAAG,IAAIS,OAAO,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAK;UAClCJ,OAAO,GAAGG,GAAG;UACbF,MAAM,GAAGG,GAAG;QACd,CAAC,CAAC;QAEF,IAAI;UACFZ,MAAM,GAAG;YAAEK,EAAE,EAAE,IAAI;YAAEC,KAAK,EAAE,OAAOP,EAAE,CAAC;UAAE,CAAC;UAGzCE,OAAO,GAAG,IAAI;UAKd,IAAIC,iBAAiB,EAAEM,OAAO,CAACR,MAAM,CAACM,KAAK,CAAC;QAC9C,CAAC,CAAC,OAAOC,KAAK,EAAE;UACdP,MAAM,GAAG;YAAEK,EAAE,EAAE,KAAK;YAAEC,KAAK,EAAEC;UAAM,CAAC;UACpCN,OAAO,GAAG,IAAI;UACd,IAAIC,iBAAiB,EAAEO,MAAM,CAACF,KAAK,CAAC;QACtC;MACF;IACF;IAEA,IAAIP,MAAM,CAACK,EAAE,EAAE,OAAOL,MAAM,CAACM,KAAK,CAAC,KAC9B,MAAMN,MAAM,CAACM,KAAK;EACzB,CAAC;AACH;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/index.js b/node_modules/@babel/core/lib/index.js new file mode 100644 index 0000000..2c15c49 --- /dev/null +++ b/node_modules/@babel/core/lib/index.js @@ -0,0 +1,230 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DEFAULT_EXTENSIONS = void 0; +Object.defineProperty(exports, "File", { + enumerable: true, + get: function () { + return _file.default; + } +}); +Object.defineProperty(exports, "buildExternalHelpers", { + enumerable: true, + get: function () { + return _buildExternalHelpers.default; + } +}); +Object.defineProperty(exports, "createConfigItem", { + enumerable: true, + get: function () { + return _index2.createConfigItem; + } +}); +Object.defineProperty(exports, "createConfigItemAsync", { + enumerable: true, + get: function () { + return _index2.createConfigItemAsync; + } +}); +Object.defineProperty(exports, "createConfigItemSync", { + enumerable: true, + get: function () { + return _index2.createConfigItemSync; + } +}); +Object.defineProperty(exports, "getEnv", { + enumerable: true, + get: function () { + return _environment.getEnv; + } +}); +Object.defineProperty(exports, "loadOptions", { + enumerable: true, + get: function () { + return _index2.loadOptions; + } +}); +Object.defineProperty(exports, "loadOptionsAsync", { + enumerable: true, + get: function () { + return _index2.loadOptionsAsync; + } +}); +Object.defineProperty(exports, "loadOptionsSync", { + enumerable: true, + get: function () { + return _index2.loadOptionsSync; + } +}); +Object.defineProperty(exports, "loadPartialConfig", { + enumerable: true, + get: function () { + return _index2.loadPartialConfig; + } +}); +Object.defineProperty(exports, "loadPartialConfigAsync", { + enumerable: true, + get: function () { + return _index2.loadPartialConfigAsync; + } +}); +Object.defineProperty(exports, "loadPartialConfigSync", { + enumerable: true, + get: function () { + return _index2.loadPartialConfigSync; + } +}); +Object.defineProperty(exports, "parse", { + enumerable: true, + get: function () { + return _parse.parse; + } +}); +Object.defineProperty(exports, "parseAsync", { + enumerable: true, + get: function () { + return _parse.parseAsync; + } +}); +Object.defineProperty(exports, "parseSync", { + enumerable: true, + get: function () { + return _parse.parseSync; + } +}); +exports.resolvePreset = exports.resolvePlugin = void 0; +Object.defineProperty((0, exports), "template", { + enumerable: true, + get: function () { + return _template().default; + } +}); +Object.defineProperty((0, exports), "tokTypes", { + enumerable: true, + get: function () { + return _parser().tokTypes; + } +}); +Object.defineProperty(exports, "transform", { + enumerable: true, + get: function () { + return _transform.transform; + } +}); +Object.defineProperty(exports, "transformAsync", { + enumerable: true, + get: function () { + return _transform.transformAsync; + } +}); +Object.defineProperty(exports, "transformFile", { + enumerable: true, + get: function () { + return _transformFile.transformFile; + } +}); +Object.defineProperty(exports, "transformFileAsync", { + enumerable: true, + get: function () { + return _transformFile.transformFileAsync; + } +}); +Object.defineProperty(exports, "transformFileSync", { + enumerable: true, + get: function () { + return _transformFile.transformFileSync; + } +}); +Object.defineProperty(exports, "transformFromAst", { + enumerable: true, + get: function () { + return _transformAst.transformFromAst; + } +}); +Object.defineProperty(exports, "transformFromAstAsync", { + enumerable: true, + get: function () { + return _transformAst.transformFromAstAsync; + } +}); +Object.defineProperty(exports, "transformFromAstSync", { + enumerable: true, + get: function () { + return _transformAst.transformFromAstSync; + } +}); +Object.defineProperty(exports, "transformSync", { + enumerable: true, + get: function () { + return _transform.transformSync; + } +}); +Object.defineProperty((0, exports), "traverse", { + enumerable: true, + get: function () { + return _traverse().default; + } +}); +exports.version = exports.types = void 0; +var _file = require("./transformation/file/file.js"); +var _buildExternalHelpers = require("./tools/build-external-helpers.js"); +var resolvers = require("./config/files/index.js"); +var _environment = require("./config/helpers/environment.js"); +function _types() { + const data = require("@babel/types"); + _types = function () { + return data; + }; + return data; +} +Object.defineProperty((0, exports), "types", { + enumerable: true, + get: function () { + return _types(); + } +}); +function _parser() { + const data = require("@babel/parser"); + _parser = function () { + return data; + }; + return data; +} +function _traverse() { + const data = require("@babel/traverse"); + _traverse = function () { + return data; + }; + return data; +} +function _template() { + const data = require("@babel/template"); + _template = function () { + return data; + }; + return data; +} +var _index2 = require("./config/index.js"); +var _transform = require("./transform.js"); +var _transformFile = require("./transform-file.js"); +var _transformAst = require("./transform-ast.js"); +var _parse = require("./parse.js"); +const version = exports.version = "7.29.0"; +const resolvePlugin = (name, dirname) => resolvers.resolvePlugin(name, dirname, false).filepath; +exports.resolvePlugin = resolvePlugin; +const resolvePreset = (name, dirname) => resolvers.resolvePreset(name, dirname, false).filepath; +exports.resolvePreset = resolvePreset; +const DEFAULT_EXTENSIONS = exports.DEFAULT_EXTENSIONS = Object.freeze([".js", ".jsx", ".es6", ".es", ".mjs", ".cjs"]); +exports.OptionManager = class OptionManager { + init(opts) { + return (0, _index2.loadOptionsSync)(opts); + } +}; +exports.Plugin = function Plugin(alias) { + throw new Error(`The (${alias}) Babel 5 plugin is being run with an unsupported Babel version.`); +}; +0 && (exports.types = exports.traverse = exports.tokTypes = exports.template = 0); + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/core/lib/index.js.map b/node_modules/@babel/core/lib/index.js.map new file mode 100644 index 0000000..a5f9ea5 --- /dev/null +++ b/node_modules/@babel/core/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_file","require","_buildExternalHelpers","resolvers","_environment","_types","data","Object","defineProperty","exports","enumerable","get","_parser","_traverse","_template","_index2","_transform","_transformFile","_transformAst","_parse","version","resolvePlugin","name","dirname","filepath","resolvePreset","DEFAULT_EXTENSIONS","freeze","OptionManager","init","opts","loadOptionsSync","Plugin","alias","Error","types","traverse","tokTypes","template"],"sources":["../src/index.ts"],"sourcesContent":["if (!process.env.IS_PUBLISH && !USE_ESM && process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"BABEL_8_BREAKING is only supported in ESM. Please run `make use-esm`.\",\n );\n}\n\nexport const version = PACKAGE_JSON.version;\n\nexport { default as File } from \"./transformation/file/file.ts\";\nexport type { default as PluginPass } from \"./transformation/plugin-pass.ts\";\nexport { default as buildExternalHelpers } from \"./tools/build-external-helpers.ts\";\n\nimport * as resolvers from \"./config/files/index.ts\";\n// For backwards-compatibility, we expose the resolvers\n// with the old API.\nexport const resolvePlugin = (name: string, dirname: string) =>\n resolvers.resolvePlugin(name, dirname, false).filepath;\nexport const resolvePreset = (name: string, dirname: string) =>\n resolvers.resolvePreset(name, dirname, false).filepath;\n\nexport { getEnv } from \"./config/helpers/environment.ts\";\n\n// NOTE: Lazy re-exports aren't detected by the Node.js CJS-ESM interop.\n// These are handled by pluginInjectNodeReexportsHints in our babel.config.js\n// so that they can work well.\nexport * as types from \"@babel/types\";\nexport { tokTypes } from \"@babel/parser\";\nexport { default as traverse } from \"@babel/traverse\";\nexport { default as template } from \"@babel/template\";\n\n// rollup-plugin-dts assumes that all re-exported types are also valid values\n// Visitor is only a type, so we need to use this workaround to prevent\n// rollup-plugin-dts from breaking it.\n// TODO: Figure out how to fix this upstream.\nexport type { NodePath, Scope } from \"@babel/traverse\";\nexport type Visitor = import(\"@babel/traverse\").Visitor;\n\nexport {\n createConfigItem,\n createConfigItemAsync,\n createConfigItemSync,\n} from \"./config/index.ts\";\n\nexport {\n loadOptions,\n loadOptionsAsync,\n loadPartialConfig,\n loadPartialConfigAsync,\n loadPartialConfigSync,\n} from \"./config/index.ts\";\nimport { loadOptionsSync } from \"./config/index.ts\";\nimport type {\n ConfigApplicableTest,\n PluginItem,\n} from \"./config/validation/options.ts\";\nexport { loadOptionsSync };\nexport type { PluginItem };\n\nexport type PresetObject = {\n overrides?: PresetObject[];\n test?: ConfigApplicableTest;\n plugins?: PluginItem[];\n};\n\nexport type {\n CallerMetadata,\n ConfigAPI,\n ConfigItem,\n InputOptions,\n NormalizedOptions,\n PartialConfig,\n PluginAPI,\n PluginObject,\n PresetAPI,\n} from \"./config/index.ts\";\n\nexport {\n type FileResult,\n transform,\n transformAsync,\n transformSync,\n} from \"./transform.ts\";\nexport {\n transformFile,\n transformFileAsync,\n transformFileSync,\n} from \"./transform-file.ts\";\nexport {\n transformFromAst,\n transformFromAstAsync,\n transformFromAstSync,\n} from \"./transform-ast.ts\";\nexport { parse, parseAsync, parseSync } from \"./parse.ts\";\n\n/**\n * Recommended set of compilable extensions. Not used in @babel/core directly, but meant as\n * as an easy source for tooling making use of @babel/core.\n */\nexport const DEFAULT_EXTENSIONS = Object.freeze([\n \".js\",\n \".jsx\",\n \".es6\",\n \".es\",\n \".mjs\",\n \".cjs\",\n] as const);\n\nif (!process.env.BABEL_8_BREAKING && !USE_ESM) {\n // For easier backward-compatibility, provide an API like the one we exposed in Babel 6.\n // eslint-disable-next-line no-restricted-globals\n exports.OptionManager = class OptionManager {\n init(opts: any) {\n return loadOptionsSync(opts);\n }\n };\n\n // eslint-disable-next-line no-restricted-globals\n exports.Plugin = function Plugin(alias: string) {\n throw new Error(\n `The (${alias}) Babel 5 plugin is being run with an unsupported Babel version.`,\n );\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,qBAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAQA,IAAAG,YAAA,GAAAH,OAAA;AAAyD,SAAAI,OAAA;EAAA,MAAAC,IAAA,GAAAL,OAAA;EAAAI,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAAC,MAAA,CAAAC,cAAA,KAAAC,OAAA;EAAAC,UAAA;EAAAC,GAAA,WAAAA,CAAA;IAAA,OAAAN,MAAA;EAAA;AAAA;AAMzD,SAAAO,QAAA;EAAA,MAAAN,IAAA,GAAAL,OAAA;EAAAW,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,UAAA;EAAA,MAAAP,IAAA,GAAAL,OAAA;EAAAY,SAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,UAAA;EAAA,MAAAR,IAAA,GAAAL,OAAA;EAAAa,SAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AASA,IAAAS,OAAA,GAAAd,OAAA;AAuCA,IAAAe,UAAA,GAAAf,OAAA;AAMA,IAAAgB,cAAA,GAAAhB,OAAA;AAKA,IAAAiB,aAAA,GAAAjB,OAAA;AAKA,IAAAkB,MAAA,GAAAlB,OAAA;AAtFO,MAAMmB,OAAO,GAAAX,OAAA,CAAAW,OAAA,WAAuB;AASpC,MAAMC,aAAa,GAAGA,CAACC,IAAY,EAAEC,OAAe,KACzDpB,SAAS,CAACkB,aAAa,CAACC,IAAI,EAAEC,OAAO,EAAE,KAAK,CAAC,CAACC,QAAQ;AAACf,OAAA,CAAAY,aAAA,GAAAA,aAAA;AAClD,MAAMI,aAAa,GAAGA,CAACH,IAAY,EAAEC,OAAe,KACzDpB,SAAS,CAACsB,aAAa,CAACH,IAAI,EAAEC,OAAO,EAAE,KAAK,CAAC,CAACC,QAAQ;AAACf,OAAA,CAAAgB,aAAA,GAAAA,aAAA;AAgFlD,MAAMC,kBAAkB,GAAAjB,OAAA,CAAAiB,kBAAA,GAAGnB,MAAM,CAACoB,MAAM,CAAC,CAC9C,KAAK,EACL,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,MAAM,CACE,CAAC;AAKTlB,OAAO,CAACmB,aAAa,GAAG,MAAMA,aAAa,CAAC;EAC1CC,IAAIA,CAACC,IAAS,EAAE;IACd,OAAO,IAAAC,uBAAe,EAACD,IAAI,CAAC;EAC9B;AACF,CAAC;AAGDrB,OAAO,CAACuB,MAAM,GAAG,SAASA,MAAMA,CAACC,KAAa,EAAE;EAC9C,MAAM,IAAIC,KAAK,CACb,QAAQD,KAAK,kEACf,CAAC;AACH,CAAC;AAAC,MAAAxB,OAAA,CAAA0B,KAAA,GAAA1B,OAAA,CAAA2B,QAAA,GAAA3B,OAAA,CAAA4B,QAAA,GAAA5B,OAAA,CAAA6B,QAAA","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/parse.js b/node_modules/@babel/core/lib/parse.js new file mode 100644 index 0000000..5c4db4c --- /dev/null +++ b/node_modules/@babel/core/lib/parse.js @@ -0,0 +1,45 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.parse = void 0; +exports.parseAsync = parseAsync; +exports.parseSync = parseSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _index = require("./config/index.js"); +var _index2 = require("./parser/index.js"); +var _normalizeOpts = require("./transformation/normalize-opts.js"); +var _rewriteStackTrace = require("./errors/rewrite-stack-trace.js"); +const parseRunner = _gensync()(function* parse(code, opts) { + const config = yield* (0, _index.default)(opts); + if (config === null) { + return null; + } + return yield* (0, _index2.default)(config.passes, (0, _normalizeOpts.default)(config), code); +}); +const parse = exports.parse = function parse(code, opts, callback) { + if (typeof opts === "function") { + callback = opts; + opts = undefined; + } + if (callback === undefined) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(parseRunner.sync)(code, opts); + } + (0, _rewriteStackTrace.beginHiddenCallStack)(parseRunner.errback)(code, opts, callback); +}; +function parseSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(parseRunner.sync)(...args); +} +function parseAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(parseRunner.async)(...args); +} +0 && 0; + +//# sourceMappingURL=parse.js.map diff --git a/node_modules/@babel/core/lib/parse.js.map b/node_modules/@babel/core/lib/parse.js.map new file mode 100644 index 0000000..91434fc --- /dev/null +++ b/node_modules/@babel/core/lib/parse.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_index","_index2","_normalizeOpts","_rewriteStackTrace","parseRunner","gensync","parse","code","opts","config","loadConfig","parser","passes","normalizeOptions","exports","callback","undefined","beginHiddenCallStack","sync","errback","parseSync","args","parseAsync","async"],"sources":["../src/parse.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\n\nimport loadConfig, { type InputOptions } from \"./config/index.ts\";\nimport parser, { type ParseResult } from \"./parser/index.ts\";\nimport normalizeOptions from \"./transformation/normalize-opts.ts\";\n\nimport { beginHiddenCallStack } from \"./errors/rewrite-stack-trace.ts\";\n\ntype FileParseCallback = {\n (err: Error, ast: null): void;\n (err: null, ast: ParseResult | null): void;\n};\n\ntype Parse = {\n (code: string, callback: FileParseCallback): void;\n (\n code: string,\n opts: InputOptions | undefined | null,\n callback: FileParseCallback,\n ): void;\n (code: string, opts?: InputOptions | null): ParseResult | null;\n};\n\nconst parseRunner = gensync(function* parse(\n code: string,\n opts: InputOptions | undefined | null,\n): Handler {\n const config = yield* loadConfig(opts);\n\n if (config === null) {\n return null;\n }\n\n return yield* parser(config.passes, normalizeOptions(config), code);\n});\n\nexport const parse: Parse = function parse(\n code,\n opts?,\n callback?: FileParseCallback,\n) {\n if (typeof opts === \"function\") {\n callback = opts;\n opts = undefined as InputOptions;\n }\n\n if (callback === undefined) {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'parse' function expects a callback. If you need to call it synchronously, please use 'parseSync'.\",\n );\n } else {\n // console.warn(\n // \"Starting from Babel 8.0.0, the 'parse' function will expect a callback. If you need to call it synchronously, please use 'parseSync'.\",\n // );\n return beginHiddenCallStack(parseRunner.sync)(code, opts);\n }\n }\n\n beginHiddenCallStack(parseRunner.errback)(code, opts, callback);\n};\n\nexport function parseSync(...args: Parameters) {\n return beginHiddenCallStack(parseRunner.sync)(...args);\n}\nexport function parseAsync(...args: Parameters) {\n return beginHiddenCallStack(parseRunner.async)(...args);\n}\n"],"mappings":";;;;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,IAAAE,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAEA,IAAAI,kBAAA,GAAAJ,OAAA;AAiBA,MAAMK,WAAW,GAAGC,SAAMA,CAAC,CAAC,UAAUC,KAAKA,CACzCC,IAAY,EACZC,IAAqC,EACR;EAC7B,MAAMC,MAAM,GAAG,OAAO,IAAAC,cAAU,EAACF,IAAI,CAAC;EAEtC,IAAIC,MAAM,KAAK,IAAI,EAAE;IACnB,OAAO,IAAI;EACb;EAEA,OAAO,OAAO,IAAAE,eAAM,EAACF,MAAM,CAACG,MAAM,EAAE,IAAAC,sBAAgB,EAACJ,MAAM,CAAC,EAAEF,IAAI,CAAC;AACrE,CAAC,CAAC;AAEK,MAAMD,KAAY,GAAAQ,OAAA,CAAAR,KAAA,GAAG,SAASA,KAAKA,CACxCC,IAAI,EACJC,IAAK,EACLO,QAA4B,EAC5B;EACA,IAAI,OAAOP,IAAI,KAAK,UAAU,EAAE;IAC9BO,QAAQ,GAAGP,IAAI;IACfA,IAAI,GAAGQ,SAAyB;EAClC;EAEA,IAAID,QAAQ,KAAKC,SAAS,EAAE;IASxB,OAAO,IAAAC,uCAAoB,EAACb,WAAW,CAACc,IAAI,CAAC,CAACX,IAAI,EAAEC,IAAI,CAAC;EAE7D;EAEA,IAAAS,uCAAoB,EAACb,WAAW,CAACe,OAAO,CAAC,CAACZ,IAAI,EAAEC,IAAI,EAAEO,QAAQ,CAAC;AACjE,CAAC;AAEM,SAASK,SAASA,CAAC,GAAGC,IAAyC,EAAE;EACtE,OAAO,IAAAJ,uCAAoB,EAACb,WAAW,CAACc,IAAI,CAAC,CAAC,GAAGG,IAAI,CAAC;AACxD;AACO,SAASC,UAAUA,CAAC,GAAGD,IAA0C,EAAE;EACxE,OAAO,IAAAJ,uCAAoB,EAACb,WAAW,CAACmB,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AACzD;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/parser/index.js b/node_modules/@babel/core/lib/parser/index.js new file mode 100644 index 0000000..690b343 --- /dev/null +++ b/node_modules/@babel/core/lib/parser/index.js @@ -0,0 +1,85 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = parser; +function _parser() { + const data = require("@babel/parser"); + _parser = function () { + return data; + }; + return data; +} +function _codeFrame() { + const data = require("@babel/code-frame"); + _codeFrame = function () { + return data; + }; + return data; +} +var _missingPluginHelper = require("./util/missing-plugin-helper.js"); +function* parser(pluginPasses, { + parserOpts, + highlightCode = true, + filename = "unknown" +}, code) { + try { + const results = []; + for (const plugins of pluginPasses) { + for (const plugin of plugins) { + const { + parserOverride + } = plugin; + if (parserOverride) { + const ast = parserOverride(code, parserOpts, _parser().parse); + if (ast !== undefined) results.push(ast); + } + } + } + if (results.length === 0) { + return (0, _parser().parse)(code, parserOpts); + } else if (results.length === 1) { + yield* []; + if (typeof results[0].then === "function") { + throw new Error(`You appear to be using an async parser plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, you may need to upgrade ` + `your @babel/core version.`); + } + return results[0]; + } + throw new Error("More than one plugin attempted to override parsing."); + } catch (err) { + if (err.code === "BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED") { + err.message += "\nConsider renaming the file to '.mjs', or setting sourceType:module " + "or sourceType:unambiguous in your Babel config for this file."; + } + const startLine = parserOpts == null ? void 0 : parserOpts.startLine; + const startColumn = parserOpts == null ? void 0 : parserOpts.startColumn; + if (startColumn != null) { + code = " ".repeat(startColumn) + code; + } + const { + loc, + missingPlugin + } = err; + if (loc) { + const codeFrame = (0, _codeFrame().codeFrameColumns)(code, { + start: { + line: loc.line, + column: loc.column + 1 + } + }, { + highlightCode, + startLine + }); + if (missingPlugin) { + err.message = `${filename}: ` + (0, _missingPluginHelper.default)(missingPlugin[0], loc, codeFrame, filename); + } else { + err.message = `${filename}: ${err.message}\n\n` + codeFrame; + } + err.code = "BABEL_PARSE_ERROR"; + } + throw err; + } +} +0 && 0; + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/core/lib/parser/index.js.map b/node_modules/@babel/core/lib/parser/index.js.map new file mode 100644 index 0000000..d173041 --- /dev/null +++ b/node_modules/@babel/core/lib/parser/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_parser","data","require","_codeFrame","_missingPluginHelper","parser","pluginPasses","parserOpts","highlightCode","filename","code","results","plugins","plugin","parserOverride","ast","parse","undefined","push","length","then","Error","err","message","startLine","startColumn","repeat","loc","missingPlugin","codeFrame","codeFrameColumns","start","line","column","generateMissingPluginMessage"],"sources":["../../src/parser/index.ts"],"sourcesContent":["import type { Handler } from \"gensync\";\nimport { parse, type ParseResult } from \"@babel/parser\";\nimport { codeFrameColumns } from \"@babel/code-frame\";\nimport generateMissingPluginMessage from \"./util/missing-plugin-helper.ts\";\nimport type { PluginPasses } from \"../config/index.ts\";\nimport type { ResolvedOptions } from \"../config/validation/options.ts\";\n\nexport type { ParseResult };\n\nexport default function* parser(\n pluginPasses: PluginPasses,\n { parserOpts, highlightCode = true, filename = \"unknown\" }: ResolvedOptions,\n code: string,\n): Handler {\n try {\n const results = [];\n for (const plugins of pluginPasses) {\n for (const plugin of plugins) {\n const { parserOverride } = plugin;\n if (parserOverride) {\n const ast = parserOverride(code, parserOpts, parse);\n\n if (ast !== undefined) results.push(ast);\n }\n }\n }\n\n if (results.length === 0) {\n return parse(code, parserOpts);\n } else if (results.length === 1) {\n // If we want to allow async parsers\n yield* [];\n if (typeof (results[0] as any).then === \"function\") {\n throw new Error(\n `You appear to be using an async parser plugin, ` +\n `which your current version of Babel does not support. ` +\n `If you're using a published plugin, you may need to upgrade ` +\n `your @babel/core version.`,\n );\n }\n return results[0];\n }\n // TODO: Add an error code\n throw new Error(\"More than one plugin attempted to override parsing.\");\n } catch (err) {\n if (err.code === \"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED\") {\n err.message +=\n \"\\nConsider renaming the file to '.mjs', or setting sourceType:module \" +\n \"or sourceType:unambiguous in your Babel config for this file.\";\n // err.code will be changed to BABEL_PARSE_ERROR later.\n }\n\n const startLine = parserOpts?.startLine;\n const startColumn = parserOpts?.startColumn;\n\n if (startColumn != null) {\n code = \" \".repeat(startColumn) + code;\n }\n\n const { loc, missingPlugin } = err;\n if (loc) {\n const codeFrame = codeFrameColumns(\n code,\n {\n start: {\n line: loc.line,\n column: loc.column + 1,\n },\n },\n {\n highlightCode,\n startLine,\n },\n );\n if (missingPlugin) {\n err.message =\n `${filename}: ` +\n generateMissingPluginMessage(\n missingPlugin[0],\n loc,\n codeFrame,\n filename,\n );\n } else {\n err.message = `${filename}: ${err.message}\\n\\n` + codeFrame;\n }\n err.code = \"BABEL_PARSE_ERROR\";\n }\n throw err;\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,IAAAG,oBAAA,GAAAF,OAAA;AAMe,UAAUG,MAAMA,CAC7BC,YAA0B,EAC1B;EAAEC,UAAU;EAAEC,aAAa,GAAG,IAAI;EAAEC,QAAQ,GAAG;AAA2B,CAAC,EAC3EC,IAAY,EACU;EACtB,IAAI;IACF,MAAMC,OAAO,GAAG,EAAE;IAClB,KAAK,MAAMC,OAAO,IAAIN,YAAY,EAAE;MAClC,KAAK,MAAMO,MAAM,IAAID,OAAO,EAAE;QAC5B,MAAM;UAAEE;QAAe,CAAC,GAAGD,MAAM;QACjC,IAAIC,cAAc,EAAE;UAClB,MAAMC,GAAG,GAAGD,cAAc,CAACJ,IAAI,EAAEH,UAAU,EAAES,eAAK,CAAC;UAEnD,IAAID,GAAG,KAAKE,SAAS,EAAEN,OAAO,CAACO,IAAI,CAACH,GAAG,CAAC;QAC1C;MACF;IACF;IAEA,IAAIJ,OAAO,CAACQ,MAAM,KAAK,CAAC,EAAE;MACxB,OAAO,IAAAH,eAAK,EAACN,IAAI,EAAEH,UAAU,CAAC;IAChC,CAAC,MAAM,IAAII,OAAO,CAACQ,MAAM,KAAK,CAAC,EAAE;MAE/B,OAAO,EAAE;MACT,IAAI,OAAQR,OAAO,CAAC,CAAC,CAAC,CAASS,IAAI,KAAK,UAAU,EAAE;QAClD,MAAM,IAAIC,KAAK,CACb,iDAAiD,GAC/C,wDAAwD,GACxD,8DAA8D,GAC9D,2BACJ,CAAC;MACH;MACA,OAAOV,OAAO,CAAC,CAAC,CAAC;IACnB;IAEA,MAAM,IAAIU,KAAK,CAAC,qDAAqD,CAAC;EACxE,CAAC,CAAC,OAAOC,GAAG,EAAE;IACZ,IAAIA,GAAG,CAACZ,IAAI,KAAK,yCAAyC,EAAE;MAC1DY,GAAG,CAACC,OAAO,IACT,uEAAuE,GACvE,+DAA+D;IAEnE;IAEA,MAAMC,SAAS,GAAGjB,UAAU,oBAAVA,UAAU,CAAEiB,SAAS;IACvC,MAAMC,WAAW,GAAGlB,UAAU,oBAAVA,UAAU,CAAEkB,WAAW;IAE3C,IAAIA,WAAW,IAAI,IAAI,EAAE;MACvBf,IAAI,GAAG,GAAG,CAACgB,MAAM,CAACD,WAAW,CAAC,GAAGf,IAAI;IACvC;IAEA,MAAM;MAAEiB,GAAG;MAAEC;IAAc,CAAC,GAAGN,GAAG;IAClC,IAAIK,GAAG,EAAE;MACP,MAAME,SAAS,GAAG,IAAAC,6BAAgB,EAChCpB,IAAI,EACJ;QACEqB,KAAK,EAAE;UACLC,IAAI,EAAEL,GAAG,CAACK,IAAI;UACdC,MAAM,EAAEN,GAAG,CAACM,MAAM,GAAG;QACvB;MACF,CAAC,EACD;QACEzB,aAAa;QACbgB;MACF,CACF,CAAC;MACD,IAAII,aAAa,EAAE;QACjBN,GAAG,CAACC,OAAO,GACT,GAAGd,QAAQ,IAAI,GACf,IAAAyB,4BAA4B,EAC1BN,aAAa,CAAC,CAAC,CAAC,EAChBD,GAAG,EACHE,SAAS,EACTpB,QACF,CAAC;MACL,CAAC,MAAM;QACLa,GAAG,CAACC,OAAO,GAAG,GAAGd,QAAQ,KAAKa,GAAG,CAACC,OAAO,MAAM,GAAGM,SAAS;MAC7D;MACAP,GAAG,CAACZ,IAAI,GAAG,mBAAmB;IAChC;IACA,MAAMY,GAAG;EACX;AACF;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js b/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js new file mode 100644 index 0000000..0eb294c --- /dev/null +++ b/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js @@ -0,0 +1,337 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = generateMissingPluginMessage; +const pluginNameMap = { + asyncDoExpressions: { + syntax: { + name: "@babel/plugin-syntax-async-do-expressions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-do-expressions" + } + }, + decimal: { + syntax: { + name: "@babel/plugin-syntax-decimal", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decimal" + } + }, + decorators: { + syntax: { + name: "@babel/plugin-syntax-decorators", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decorators" + }, + transform: { + name: "@babel/plugin-proposal-decorators", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-decorators" + } + }, + doExpressions: { + syntax: { + name: "@babel/plugin-syntax-do-expressions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-do-expressions" + }, + transform: { + name: "@babel/plugin-proposal-do-expressions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-do-expressions" + } + }, + exportDefaultFrom: { + syntax: { + name: "@babel/plugin-syntax-export-default-from", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-default-from" + }, + transform: { + name: "@babel/plugin-proposal-export-default-from", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-export-default-from" + } + }, + flow: { + syntax: { + name: "@babel/plugin-syntax-flow", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-flow" + }, + transform: { + name: "@babel/preset-flow", + url: "https://github.com/babel/babel/tree/main/packages/babel-preset-flow" + } + }, + functionBind: { + syntax: { + name: "@babel/plugin-syntax-function-bind", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-bind" + }, + transform: { + name: "@babel/plugin-proposal-function-bind", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-bind" + } + }, + functionSent: { + syntax: { + name: "@babel/plugin-syntax-function-sent", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-sent" + }, + transform: { + name: "@babel/plugin-proposal-function-sent", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-sent" + } + }, + jsx: { + syntax: { + name: "@babel/plugin-syntax-jsx", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-jsx" + }, + transform: { + name: "@babel/preset-react", + url: "https://github.com/babel/babel/tree/main/packages/babel-preset-react" + } + }, + pipelineOperator: { + syntax: { + name: "@babel/plugin-syntax-pipeline-operator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-pipeline-operator" + }, + transform: { + name: "@babel/plugin-proposal-pipeline-operator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-pipeline-operator" + } + }, + recordAndTuple: { + syntax: { + name: "@babel/plugin-syntax-record-and-tuple", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-record-and-tuple" + } + }, + throwExpressions: { + syntax: { + name: "@babel/plugin-syntax-throw-expressions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-throw-expressions" + }, + transform: { + name: "@babel/plugin-proposal-throw-expressions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-throw-expressions" + } + }, + typescript: { + syntax: { + name: "@babel/plugin-syntax-typescript", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-typescript" + }, + transform: { + name: "@babel/preset-typescript", + url: "https://github.com/babel/babel/tree/main/packages/babel-preset-typescript" + } + } +}; +Object.assign(pluginNameMap, { + asyncGenerators: { + syntax: { + name: "@babel/plugin-syntax-async-generators", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-generators" + }, + transform: { + name: "@babel/plugin-transform-async-generator-functions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-async-generator-functions" + } + }, + classProperties: { + syntax: { + name: "@babel/plugin-syntax-class-properties", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties" + }, + transform: { + name: "@babel/plugin-transform-class-properties", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties" + } + }, + classPrivateProperties: { + syntax: { + name: "@babel/plugin-syntax-class-properties", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties" + }, + transform: { + name: "@babel/plugin-transform-class-properties", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties" + } + }, + classPrivateMethods: { + syntax: { + name: "@babel/plugin-syntax-class-properties", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties" + }, + transform: { + name: "@babel/plugin-transform-private-methods", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-methods" + } + }, + classStaticBlock: { + syntax: { + name: "@babel/plugin-syntax-class-static-block", + url: "https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-syntax-class-static-block" + }, + transform: { + name: "@babel/plugin-transform-class-static-block", + url: "https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-class-static-block" + } + }, + dynamicImport: { + syntax: { + name: "@babel/plugin-syntax-dynamic-import", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-dynamic-import" + } + }, + exportNamespaceFrom: { + syntax: { + name: "@babel/plugin-syntax-export-namespace-from", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-namespace-from" + }, + transform: { + name: "@babel/plugin-transform-export-namespace-from", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-export-namespace-from" + } + }, + importAssertions: { + syntax: { + name: "@babel/plugin-syntax-import-assertions", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-assertions" + } + }, + importAttributes: { + syntax: { + name: "@babel/plugin-syntax-import-attributes", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-attributes" + } + }, + importMeta: { + syntax: { + name: "@babel/plugin-syntax-import-meta", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-meta" + } + }, + logicalAssignment: { + syntax: { + name: "@babel/plugin-syntax-logical-assignment-operators", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-logical-assignment-operators" + }, + transform: { + name: "@babel/plugin-transform-logical-assignment-operators", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-logical-assignment-operators" + } + }, + moduleStringNames: { + syntax: { + name: "@babel/plugin-syntax-module-string-names", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-module-string-names" + } + }, + numericSeparator: { + syntax: { + name: "@babel/plugin-syntax-numeric-separator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-numeric-separator" + }, + transform: { + name: "@babel/plugin-transform-numeric-separator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-numeric-separator" + } + }, + nullishCoalescingOperator: { + syntax: { + name: "@babel/plugin-syntax-nullish-coalescing-operator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-nullish-coalescing-operator" + }, + transform: { + name: "@babel/plugin-transform-nullish-coalescing-operator", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-nullish-coalescing-opearator" + } + }, + objectRestSpread: { + syntax: { + name: "@babel/plugin-syntax-object-rest-spread", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-object-rest-spread" + }, + transform: { + name: "@babel/plugin-transform-object-rest-spread", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-object-rest-spread" + } + }, + optionalCatchBinding: { + syntax: { + name: "@babel/plugin-syntax-optional-catch-binding", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-catch-binding" + }, + transform: { + name: "@babel/plugin-transform-optional-catch-binding", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-catch-binding" + } + }, + optionalChaining: { + syntax: { + name: "@babel/plugin-syntax-optional-chaining", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-chaining" + }, + transform: { + name: "@babel/plugin-transform-optional-chaining", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-chaining" + } + }, + privateIn: { + syntax: { + name: "@babel/plugin-syntax-private-property-in-object", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-private-property-in-object" + }, + transform: { + name: "@babel/plugin-transform-private-property-in-object", + url: "https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-property-in-object" + } + }, + regexpUnicodeSets: { + syntax: { + name: "@babel/plugin-syntax-unicode-sets-regex", + url: "https://github.com/babel/babel/blob/main/packages/babel-plugin-syntax-unicode-sets-regex/README.md" + }, + transform: { + name: "@babel/plugin-transform-unicode-sets-regex", + url: "https://github.com/babel/babel/blob/main/packages/babel-plugin-proposalunicode-sets-regex/README.md" + } + } +}); +const getNameURLCombination = ({ + name, + url +}) => `${name} (${url})`; +function generateMissingPluginMessage(missingPluginName, loc, codeFrame, filename) { + let helpMessage = `Support for the experimental syntax '${missingPluginName}' isn't currently enabled ` + `(${loc.line}:${loc.column + 1}):\n\n` + codeFrame; + const pluginInfo = pluginNameMap[missingPluginName]; + if (pluginInfo) { + const { + syntax: syntaxPlugin, + transform: transformPlugin + } = pluginInfo; + if (syntaxPlugin) { + const syntaxPluginInfo = getNameURLCombination(syntaxPlugin); + if (transformPlugin) { + const transformPluginInfo = getNameURLCombination(transformPlugin); + const sectionType = transformPlugin.name.startsWith("@babel/plugin") ? "plugins" : "presets"; + helpMessage += `\n\nAdd ${transformPluginInfo} to the '${sectionType}' section of your Babel config to enable transformation. +If you want to leave it as-is, add ${syntaxPluginInfo} to the 'plugins' section to enable parsing.`; + } else { + helpMessage += `\n\nAdd ${syntaxPluginInfo} to the 'plugins' section of your Babel config ` + `to enable parsing.`; + } + } + } + const msgFilename = filename === "unknown" ? "" : filename; + helpMessage += ` + +If you already added the plugin for this syntax to your config, it's possible that your config \ +isn't being loaded. +You can re-run Babel with the BABEL_SHOW_CONFIG_FOR environment variable to show the loaded \ +configuration: +\tnpx cross-env BABEL_SHOW_CONFIG_FOR=${msgFilename} +See https://babeljs.io/docs/configuration#print-effective-configs for more info. +`; + return helpMessage; +} +0 && 0; + +//# sourceMappingURL=missing-plugin-helper.js.map diff --git a/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js.map b/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js.map new file mode 100644 index 0000000..b032bff --- /dev/null +++ b/node_modules/@babel/core/lib/parser/util/missing-plugin-helper.js.map @@ -0,0 +1 @@ +{"version":3,"names":["pluginNameMap","asyncDoExpressions","syntax","name","url","decimal","decorators","transform","doExpressions","exportDefaultFrom","flow","functionBind","functionSent","jsx","pipelineOperator","recordAndTuple","throwExpressions","typescript","Object","assign","asyncGenerators","classProperties","classPrivateProperties","classPrivateMethods","classStaticBlock","dynamicImport","exportNamespaceFrom","importAssertions","importAttributes","importMeta","logicalAssignment","moduleStringNames","numericSeparator","nullishCoalescingOperator","objectRestSpread","optionalCatchBinding","optionalChaining","privateIn","regexpUnicodeSets","getNameURLCombination","generateMissingPluginMessage","missingPluginName","loc","codeFrame","filename","helpMessage","line","column","pluginInfo","syntaxPlugin","transformPlugin","syntaxPluginInfo","transformPluginInfo","sectionType","startsWith","msgFilename"],"sources":["../../../src/parser/util/missing-plugin-helper.ts"],"sourcesContent":["const pluginNameMap: Record<\n string,\n Partial>>\n> = {\n asyncDoExpressions: {\n syntax: {\n name: \"@babel/plugin-syntax-async-do-expressions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-do-expressions\",\n },\n },\n decimal: {\n syntax: {\n name: \"@babel/plugin-syntax-decimal\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decimal\",\n },\n },\n decorators: {\n syntax: {\n name: \"@babel/plugin-syntax-decorators\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decorators\",\n },\n transform: {\n name: \"@babel/plugin-proposal-decorators\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-decorators\",\n },\n },\n doExpressions: {\n syntax: {\n name: \"@babel/plugin-syntax-do-expressions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-do-expressions\",\n },\n transform: {\n name: \"@babel/plugin-proposal-do-expressions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-do-expressions\",\n },\n },\n exportDefaultFrom: {\n syntax: {\n name: \"@babel/plugin-syntax-export-default-from\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-default-from\",\n },\n transform: {\n name: \"@babel/plugin-proposal-export-default-from\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-export-default-from\",\n },\n },\n flow: {\n syntax: {\n name: \"@babel/plugin-syntax-flow\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-flow\",\n },\n transform: {\n name: \"@babel/preset-flow\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-preset-flow\",\n },\n },\n functionBind: {\n syntax: {\n name: \"@babel/plugin-syntax-function-bind\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-bind\",\n },\n transform: {\n name: \"@babel/plugin-proposal-function-bind\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-bind\",\n },\n },\n functionSent: {\n syntax: {\n name: \"@babel/plugin-syntax-function-sent\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-sent\",\n },\n transform: {\n name: \"@babel/plugin-proposal-function-sent\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-sent\",\n },\n },\n jsx: {\n syntax: {\n name: \"@babel/plugin-syntax-jsx\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-jsx\",\n },\n transform: {\n name: \"@babel/preset-react\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-preset-react\",\n },\n },\n pipelineOperator: {\n syntax: {\n name: \"@babel/plugin-syntax-pipeline-operator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-pipeline-operator\",\n },\n transform: {\n name: \"@babel/plugin-proposal-pipeline-operator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-pipeline-operator\",\n },\n },\n recordAndTuple: {\n syntax: {\n name: \"@babel/plugin-syntax-record-and-tuple\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-record-and-tuple\",\n },\n },\n throwExpressions: {\n syntax: {\n name: \"@babel/plugin-syntax-throw-expressions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-throw-expressions\",\n },\n transform: {\n name: \"@babel/plugin-proposal-throw-expressions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-throw-expressions\",\n },\n },\n typescript: {\n syntax: {\n name: \"@babel/plugin-syntax-typescript\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-typescript\",\n },\n transform: {\n name: \"@babel/preset-typescript\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-preset-typescript\",\n },\n },\n};\n\nif (!process.env.BABEL_8_BREAKING) {\n // TODO: This plugins are now supported by default by @babel/parser.\n Object.assign(pluginNameMap, {\n asyncGenerators: {\n syntax: {\n name: \"@babel/plugin-syntax-async-generators\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-generators\",\n },\n transform: {\n name: \"@babel/plugin-transform-async-generator-functions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-async-generator-functions\",\n },\n },\n classProperties: {\n syntax: {\n name: \"@babel/plugin-syntax-class-properties\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties\",\n },\n transform: {\n name: \"@babel/plugin-transform-class-properties\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties\",\n },\n },\n classPrivateProperties: {\n syntax: {\n name: \"@babel/plugin-syntax-class-properties\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties\",\n },\n transform: {\n name: \"@babel/plugin-transform-class-properties\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties\",\n },\n },\n classPrivateMethods: {\n syntax: {\n name: \"@babel/plugin-syntax-class-properties\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties\",\n },\n transform: {\n name: \"@babel/plugin-transform-private-methods\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-methods\",\n },\n },\n classStaticBlock: {\n syntax: {\n name: \"@babel/plugin-syntax-class-static-block\",\n url: \"https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-syntax-class-static-block\",\n },\n transform: {\n name: \"@babel/plugin-transform-class-static-block\",\n url: \"https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-class-static-block\",\n },\n },\n dynamicImport: {\n syntax: {\n name: \"@babel/plugin-syntax-dynamic-import\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-dynamic-import\",\n },\n },\n exportNamespaceFrom: {\n syntax: {\n name: \"@babel/plugin-syntax-export-namespace-from\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-namespace-from\",\n },\n transform: {\n name: \"@babel/plugin-transform-export-namespace-from\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-export-namespace-from\",\n },\n },\n // Will be removed\n importAssertions: {\n syntax: {\n name: \"@babel/plugin-syntax-import-assertions\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-assertions\",\n },\n },\n importAttributes: {\n syntax: {\n name: \"@babel/plugin-syntax-import-attributes\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-attributes\",\n },\n },\n importMeta: {\n syntax: {\n name: \"@babel/plugin-syntax-import-meta\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-meta\",\n },\n },\n logicalAssignment: {\n syntax: {\n name: \"@babel/plugin-syntax-logical-assignment-operators\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-logical-assignment-operators\",\n },\n transform: {\n name: \"@babel/plugin-transform-logical-assignment-operators\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-logical-assignment-operators\",\n },\n },\n moduleStringNames: {\n syntax: {\n name: \"@babel/plugin-syntax-module-string-names\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-module-string-names\",\n },\n },\n numericSeparator: {\n syntax: {\n name: \"@babel/plugin-syntax-numeric-separator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-numeric-separator\",\n },\n transform: {\n name: \"@babel/plugin-transform-numeric-separator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-numeric-separator\",\n },\n },\n nullishCoalescingOperator: {\n syntax: {\n name: \"@babel/plugin-syntax-nullish-coalescing-operator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-nullish-coalescing-operator\",\n },\n transform: {\n name: \"@babel/plugin-transform-nullish-coalescing-operator\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-nullish-coalescing-opearator\",\n },\n },\n objectRestSpread: {\n syntax: {\n name: \"@babel/plugin-syntax-object-rest-spread\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-object-rest-spread\",\n },\n transform: {\n name: \"@babel/plugin-transform-object-rest-spread\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-object-rest-spread\",\n },\n },\n optionalCatchBinding: {\n syntax: {\n name: \"@babel/plugin-syntax-optional-catch-binding\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-catch-binding\",\n },\n transform: {\n name: \"@babel/plugin-transform-optional-catch-binding\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-catch-binding\",\n },\n },\n optionalChaining: {\n syntax: {\n name: \"@babel/plugin-syntax-optional-chaining\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-chaining\",\n },\n transform: {\n name: \"@babel/plugin-transform-optional-chaining\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-chaining\",\n },\n },\n privateIn: {\n syntax: {\n name: \"@babel/plugin-syntax-private-property-in-object\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-private-property-in-object\",\n },\n transform: {\n name: \"@babel/plugin-transform-private-property-in-object\",\n url: \"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-property-in-object\",\n },\n },\n regexpUnicodeSets: {\n syntax: {\n name: \"@babel/plugin-syntax-unicode-sets-regex\",\n url: \"https://github.com/babel/babel/blob/main/packages/babel-plugin-syntax-unicode-sets-regex/README.md\",\n },\n transform: {\n name: \"@babel/plugin-transform-unicode-sets-regex\",\n url: \"https://github.com/babel/babel/blob/main/packages/babel-plugin-proposalunicode-sets-regex/README.md\",\n },\n },\n });\n}\n\nconst getNameURLCombination = ({ name, url }: { name: string; url: string }) =>\n `${name} (${url})`;\n\n/*\nReturns a string of the format:\nSupport for the experimental syntax [@babel/parser plugin name] isn't currently enabled ([loc]):\n\n[code frame]\n\nAdd [npm package name] ([url]) to the 'plugins' section of your Babel config\nto enable [parsing|transformation].\n*/\nexport default function generateMissingPluginMessage(\n missingPluginName: string,\n loc: {\n line: number;\n column: number;\n },\n codeFrame: string,\n filename: string,\n): string {\n let helpMessage =\n `Support for the experimental syntax '${missingPluginName}' isn't currently enabled ` +\n `(${loc.line}:${loc.column + 1}):\\n\\n` +\n codeFrame;\n const pluginInfo = pluginNameMap[missingPluginName];\n if (pluginInfo) {\n const { syntax: syntaxPlugin, transform: transformPlugin } = pluginInfo;\n if (syntaxPlugin) {\n const syntaxPluginInfo = getNameURLCombination(syntaxPlugin);\n if (transformPlugin) {\n const transformPluginInfo = getNameURLCombination(transformPlugin);\n const sectionType = transformPlugin.name.startsWith(\"@babel/plugin\")\n ? \"plugins\"\n : \"presets\";\n helpMessage += `\\n\\nAdd ${transformPluginInfo} to the '${sectionType}' section of your Babel config to enable transformation.\nIf you want to leave it as-is, add ${syntaxPluginInfo} to the 'plugins' section to enable parsing.`;\n } else {\n helpMessage +=\n `\\n\\nAdd ${syntaxPluginInfo} to the 'plugins' section of your Babel config ` +\n `to enable parsing.`;\n }\n }\n }\n\n const msgFilename =\n filename === \"unknown\" ? \"\" : filename;\n helpMessage += `\n\nIf you already added the plugin for this syntax to your config, it's possible that your config \\\nisn't being loaded.\nYou can re-run Babel with the BABEL_SHOW_CONFIG_FOR environment variable to show the loaded \\\nconfiguration:\n\\tnpx cross-env BABEL_SHOW_CONFIG_FOR=${msgFilename} \nSee https://babeljs.io/docs/configuration#print-effective-configs for more info.\n`;\n return helpMessage;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/tools/build-external-helpers.js b/node_modules/@babel/core/lib/tools/build-external-helpers.js new file mode 100644 index 0000000..88c90dc --- /dev/null +++ b/node_modules/@babel/core/lib/tools/build-external-helpers.js @@ -0,0 +1,144 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = _default; +function helpers() { + const data = require("@babel/helpers"); + helpers = function () { + return data; + }; + return data; +} +function _generator() { + const data = require("@babel/generator"); + _generator = function () { + return data; + }; + return data; +} +function _template() { + const data = require("@babel/template"); + _template = function () { + return data; + }; + return data; +} +function _t() { + const data = require("@babel/types"); + _t = function () { + return data; + }; + return data; +} +const { + arrayExpression, + assignmentExpression, + binaryExpression, + blockStatement, + callExpression, + cloneNode, + conditionalExpression, + exportNamedDeclaration, + exportSpecifier, + expressionStatement, + functionExpression, + identifier, + memberExpression, + objectExpression, + program, + stringLiteral, + unaryExpression, + variableDeclaration, + variableDeclarator +} = _t(); +const buildUmdWrapper = replacements => _template().default.statement` + (function (root, factory) { + if (typeof define === "function" && define.amd) { + define(AMD_ARGUMENTS, factory); + } else if (typeof exports === "object") { + factory(COMMON_ARGUMENTS); + } else { + factory(BROWSER_ARGUMENTS); + } + })(UMD_ROOT, function (FACTORY_PARAMETERS) { + FACTORY_BODY + }); + `(replacements); +function buildGlobal(allowlist) { + const namespace = identifier("babelHelpers"); + const body = []; + const container = functionExpression(null, [identifier("global")], blockStatement(body)); + const tree = program([expressionStatement(callExpression(container, [conditionalExpression(binaryExpression("===", unaryExpression("typeof", identifier("global")), stringLiteral("undefined")), identifier("self"), identifier("global"))]))]); + body.push(variableDeclaration("var", [variableDeclarator(namespace, assignmentExpression("=", memberExpression(identifier("global"), namespace), objectExpression([])))])); + buildHelpers(body, namespace, allowlist); + return tree; +} +function buildModule(allowlist) { + const body = []; + const refs = buildHelpers(body, null, allowlist); + body.unshift(exportNamedDeclaration(null, Object.keys(refs).map(name => { + return exportSpecifier(cloneNode(refs[name]), identifier(name)); + }))); + return program(body, [], "module"); +} +function buildUmd(allowlist) { + const namespace = identifier("babelHelpers"); + const body = []; + body.push(variableDeclaration("var", [variableDeclarator(namespace, identifier("global"))])); + buildHelpers(body, namespace, allowlist); + return program([buildUmdWrapper({ + FACTORY_PARAMETERS: identifier("global"), + BROWSER_ARGUMENTS: assignmentExpression("=", memberExpression(identifier("root"), namespace), objectExpression([])), + COMMON_ARGUMENTS: identifier("exports"), + AMD_ARGUMENTS: arrayExpression([stringLiteral("exports")]), + FACTORY_BODY: body, + UMD_ROOT: identifier("this") + })]); +} +function buildVar(allowlist) { + const namespace = identifier("babelHelpers"); + const body = []; + body.push(variableDeclaration("var", [variableDeclarator(namespace, objectExpression([]))])); + const tree = program(body); + buildHelpers(body, namespace, allowlist); + body.push(expressionStatement(namespace)); + return tree; +} +function buildHelpers(body, namespace, allowlist) { + const getHelperReference = name => { + return namespace ? memberExpression(namespace, identifier(name)) : identifier(`_${name}`); + }; + const refs = {}; + helpers().list.forEach(function (name) { + if (allowlist && !allowlist.includes(name)) return; + const ref = refs[name] = getHelperReference(name); + const { + nodes + } = helpers().get(name, getHelperReference, namespace ? null : `_${name}`, [], namespace ? (ast, exportName, mapExportBindingAssignments) => { + mapExportBindingAssignments(node => assignmentExpression("=", ref, node)); + ast.body.push(expressionStatement(assignmentExpression("=", ref, identifier(exportName)))); + } : null); + body.push(...nodes); + }); + return refs; +} +function _default(allowlist, outputType = "global") { + let tree; + const build = { + global: buildGlobal, + module: buildModule, + umd: buildUmd, + var: buildVar + }[outputType]; + if (build) { + tree = build(allowlist); + } else { + throw new Error(`Unsupported output type ${outputType}`); + } + return (0, _generator().default)(tree).code; +} +0 && 0; + +//# sourceMappingURL=build-external-helpers.js.map diff --git a/node_modules/@babel/core/lib/tools/build-external-helpers.js.map b/node_modules/@babel/core/lib/tools/build-external-helpers.js.map new file mode 100644 index 0000000..f856480 --- /dev/null +++ b/node_modules/@babel/core/lib/tools/build-external-helpers.js.map @@ -0,0 +1 @@ +{"version":3,"names":["helpers","data","require","_generator","_template","_t","arrayExpression","assignmentExpression","binaryExpression","blockStatement","callExpression","cloneNode","conditionalExpression","exportNamedDeclaration","exportSpecifier","expressionStatement","functionExpression","identifier","memberExpression","objectExpression","program","stringLiteral","unaryExpression","variableDeclaration","variableDeclarator","buildUmdWrapper","replacements","template","statement","buildGlobal","allowlist","namespace","body","container","tree","push","buildHelpers","buildModule","refs","unshift","Object","keys","map","name","buildUmd","FACTORY_PARAMETERS","BROWSER_ARGUMENTS","COMMON_ARGUMENTS","AMD_ARGUMENTS","FACTORY_BODY","UMD_ROOT","buildVar","getHelperReference","list","forEach","includes","ref","nodes","get","ast","exportName","mapExportBindingAssignments","node","_default","outputType","build","global","module","umd","var","Error","generator","code"],"sources":["../../src/tools/build-external-helpers.ts"],"sourcesContent":["import * as helpers from \"@babel/helpers\";\nimport generator from \"@babel/generator\";\nimport template from \"@babel/template\";\nimport {\n arrayExpression,\n assignmentExpression,\n binaryExpression,\n blockStatement,\n callExpression,\n cloneNode,\n conditionalExpression,\n exportNamedDeclaration,\n exportSpecifier,\n expressionStatement,\n functionExpression,\n identifier,\n memberExpression,\n objectExpression,\n program,\n stringLiteral,\n unaryExpression,\n variableDeclaration,\n variableDeclarator,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport type { Replacements } from \"@babel/template\";\n\n// Wrapped to avoid wasting time parsing this when almost no-one uses\n// build-external-helpers.\nconst buildUmdWrapper = (replacements: Replacements) =>\n template.statement`\n (function (root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(AMD_ARGUMENTS, factory);\n } else if (typeof exports === \"object\") {\n factory(COMMON_ARGUMENTS);\n } else {\n factory(BROWSER_ARGUMENTS);\n }\n })(UMD_ROOT, function (FACTORY_PARAMETERS) {\n FACTORY_BODY\n });\n `(replacements);\n\nfunction buildGlobal(allowlist?: string[]) {\n const namespace = identifier(\"babelHelpers\");\n\n const body: t.Statement[] = [];\n const container = functionExpression(\n null,\n [identifier(\"global\")],\n blockStatement(body),\n );\n const tree = program([\n expressionStatement(\n callExpression(container, [\n // typeof global === \"undefined\" ? self : global\n conditionalExpression(\n binaryExpression(\n \"===\",\n unaryExpression(\"typeof\", identifier(\"global\")),\n stringLiteral(\"undefined\"),\n ),\n identifier(\"self\"),\n identifier(\"global\"),\n ),\n ]),\n ),\n ]);\n\n body.push(\n variableDeclaration(\"var\", [\n variableDeclarator(\n namespace,\n assignmentExpression(\n \"=\",\n memberExpression(identifier(\"global\"), namespace),\n objectExpression([]),\n ),\n ),\n ]),\n );\n\n buildHelpers(body, namespace, allowlist);\n\n return tree;\n}\n\nfunction buildModule(allowlist?: string[]) {\n const body: t.Statement[] = [];\n const refs = buildHelpers(body, null, allowlist);\n\n body.unshift(\n exportNamedDeclaration(\n null,\n Object.keys(refs).map(name => {\n return exportSpecifier(cloneNode(refs[name]), identifier(name));\n }),\n ),\n );\n\n return program(body, [], \"module\");\n}\n\nfunction buildUmd(allowlist?: string[]) {\n const namespace = identifier(\"babelHelpers\");\n\n const body: t.Statement[] = [];\n body.push(\n variableDeclaration(\"var\", [\n variableDeclarator(namespace, identifier(\"global\")),\n ]),\n );\n\n buildHelpers(body, namespace, allowlist);\n\n return program([\n buildUmdWrapper({\n FACTORY_PARAMETERS: identifier(\"global\"),\n BROWSER_ARGUMENTS: assignmentExpression(\n \"=\",\n memberExpression(identifier(\"root\"), namespace),\n objectExpression([]),\n ),\n COMMON_ARGUMENTS: identifier(\"exports\"),\n AMD_ARGUMENTS: arrayExpression([stringLiteral(\"exports\")]),\n FACTORY_BODY: body,\n UMD_ROOT: identifier(\"this\"),\n }),\n ]);\n}\n\nfunction buildVar(allowlist?: string[]) {\n const namespace = identifier(\"babelHelpers\");\n\n const body: t.Statement[] = [];\n body.push(\n variableDeclaration(\"var\", [\n variableDeclarator(namespace, objectExpression([])),\n ]),\n );\n const tree = program(body);\n buildHelpers(body, namespace, allowlist);\n body.push(expressionStatement(namespace));\n return tree;\n}\n\nfunction buildHelpers(\n body: t.Statement[],\n namespace: t.Expression,\n allowlist?: string[],\n): Record;\nfunction buildHelpers(\n body: t.Statement[],\n namespace: null,\n allowlist?: string[],\n): Record;\n\nfunction buildHelpers(\n body: t.Statement[],\n namespace: t.Expression | null,\n allowlist?: string[],\n) {\n const getHelperReference = (name: string) => {\n return namespace\n ? memberExpression(namespace, identifier(name))\n : identifier(`_${name}`);\n };\n\n const refs: Record = {};\n helpers.list.forEach(function (name) {\n if (allowlist && !allowlist.includes(name)) return;\n\n const ref = (refs[name] = getHelperReference(name));\n\n const { nodes } = helpers.get(\n name,\n getHelperReference,\n namespace ? null : `_${name}`,\n [],\n namespace\n ? (ast, exportName, mapExportBindingAssignments) => {\n mapExportBindingAssignments(node =>\n assignmentExpression(\"=\", ref, node),\n );\n ast.body.push(\n expressionStatement(\n assignmentExpression(\"=\", ref, identifier(exportName)),\n ),\n );\n }\n : null,\n );\n\n body.push(...nodes);\n });\n return refs;\n}\nexport default function (\n allowlist?: string[],\n outputType: \"global\" | \"module\" | \"umd\" | \"var\" = \"global\",\n) {\n let tree: t.Program;\n\n const build = {\n global: buildGlobal,\n module: buildModule,\n umd: buildUmd,\n var: buildVar,\n }[outputType];\n\n if (build) {\n tree = build(allowlist);\n } else {\n throw new Error(`Unsupported output type ${outputType}`);\n }\n\n return generator(tree).code;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,GAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,EAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAoBsB;EAnBpBK,eAAe;EACfC,oBAAoB;EACpBC,gBAAgB;EAChBC,cAAc;EACdC,cAAc;EACdC,SAAS;EACTC,qBAAqB;EACrBC,sBAAsB;EACtBC,eAAe;EACfC,mBAAmB;EACnBC,kBAAkB;EAClBC,UAAU;EACVC,gBAAgB;EAChBC,gBAAgB;EAChBC,OAAO;EACPC,aAAa;EACbC,eAAe;EACfC,mBAAmB;EACnBC;AAAkB,IAAAnB,EAAA;AAOpB,MAAMoB,eAAe,GAAIC,YAA0B,IACjDC,mBAAQ,CAACC,SAAS;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,CAACF,YAAY,CAAC;AAEjB,SAASG,WAAWA,CAACC,SAAoB,EAAE;EACzC,MAAMC,SAAS,GAAGd,UAAU,CAAC,cAAc,CAAC;EAE5C,MAAMe,IAAmB,GAAG,EAAE;EAC9B,MAAMC,SAAS,GAAGjB,kBAAkB,CAClC,IAAI,EACJ,CAACC,UAAU,CAAC,QAAQ,CAAC,CAAC,EACtBR,cAAc,CAACuB,IAAI,CACrB,CAAC;EACD,MAAME,IAAI,GAAGd,OAAO,CAAC,CACnBL,mBAAmB,CACjBL,cAAc,CAACuB,SAAS,EAAE,CAExBrB,qBAAqB,CACnBJ,gBAAgB,CACd,KAAK,EACLc,eAAe,CAAC,QAAQ,EAAEL,UAAU,CAAC,QAAQ,CAAC,CAAC,EAC/CI,aAAa,CAAC,WAAW,CAC3B,CAAC,EACDJ,UAAU,CAAC,MAAM,CAAC,EAClBA,UAAU,CAAC,QAAQ,CACrB,CAAC,CACF,CACH,CAAC,CACF,CAAC;EAEFe,IAAI,CAACG,IAAI,CACPZ,mBAAmB,CAAC,KAAK,EAAE,CACzBC,kBAAkB,CAChBO,SAAS,EACTxB,oBAAoB,CAClB,GAAG,EACHW,gBAAgB,CAACD,UAAU,CAAC,QAAQ,CAAC,EAAEc,SAAS,CAAC,EACjDZ,gBAAgB,CAAC,EAAE,CACrB,CACF,CAAC,CACF,CACH,CAAC;EAEDiB,YAAY,CAACJ,IAAI,EAAED,SAAS,EAAED,SAAS,CAAC;EAExC,OAAOI,IAAI;AACb;AAEA,SAASG,WAAWA,CAACP,SAAoB,EAAE;EACzC,MAAME,IAAmB,GAAG,EAAE;EAC9B,MAAMM,IAAI,GAAGF,YAAY,CAACJ,IAAI,EAAE,IAAI,EAAEF,SAAS,CAAC;EAEhDE,IAAI,CAACO,OAAO,CACV1B,sBAAsB,CACpB,IAAI,EACJ2B,MAAM,CAACC,IAAI,CAACH,IAAI,CAAC,CAACI,GAAG,CAACC,IAAI,IAAI;IAC5B,OAAO7B,eAAe,CAACH,SAAS,CAAC2B,IAAI,CAACK,IAAI,CAAC,CAAC,EAAE1B,UAAU,CAAC0B,IAAI,CAAC,CAAC;EACjE,CAAC,CACH,CACF,CAAC;EAED,OAAOvB,OAAO,CAACY,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC;AACpC;AAEA,SAASY,QAAQA,CAACd,SAAoB,EAAE;EACtC,MAAMC,SAAS,GAAGd,UAAU,CAAC,cAAc,CAAC;EAE5C,MAAMe,IAAmB,GAAG,EAAE;EAC9BA,IAAI,CAACG,IAAI,CACPZ,mBAAmB,CAAC,KAAK,EAAE,CACzBC,kBAAkB,CAACO,SAAS,EAAEd,UAAU,CAAC,QAAQ,CAAC,CAAC,CACpD,CACH,CAAC;EAEDmB,YAAY,CAACJ,IAAI,EAAED,SAAS,EAAED,SAAS,CAAC;EAExC,OAAOV,OAAO,CAAC,CACbK,eAAe,CAAC;IACdoB,kBAAkB,EAAE5B,UAAU,CAAC,QAAQ,CAAC;IACxC6B,iBAAiB,EAAEvC,oBAAoB,CACrC,GAAG,EACHW,gBAAgB,CAACD,UAAU,CAAC,MAAM,CAAC,EAAEc,SAAS,CAAC,EAC/CZ,gBAAgB,CAAC,EAAE,CACrB,CAAC;IACD4B,gBAAgB,EAAE9B,UAAU,CAAC,SAAS,CAAC;IACvC+B,aAAa,EAAE1C,eAAe,CAAC,CAACe,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1D4B,YAAY,EAAEjB,IAAI;IAClBkB,QAAQ,EAAEjC,UAAU,CAAC,MAAM;EAC7B,CAAC,CAAC,CACH,CAAC;AACJ;AAEA,SAASkC,QAAQA,CAACrB,SAAoB,EAAE;EACtC,MAAMC,SAAS,GAAGd,UAAU,CAAC,cAAc,CAAC;EAE5C,MAAMe,IAAmB,GAAG,EAAE;EAC9BA,IAAI,CAACG,IAAI,CACPZ,mBAAmB,CAAC,KAAK,EAAE,CACzBC,kBAAkB,CAACO,SAAS,EAAEZ,gBAAgB,CAAC,EAAE,CAAC,CAAC,CACpD,CACH,CAAC;EACD,MAAMe,IAAI,GAAGd,OAAO,CAACY,IAAI,CAAC;EAC1BI,YAAY,CAACJ,IAAI,EAAED,SAAS,EAAED,SAAS,CAAC;EACxCE,IAAI,CAACG,IAAI,CAACpB,mBAAmB,CAACgB,SAAS,CAAC,CAAC;EACzC,OAAOG,IAAI;AACb;AAaA,SAASE,YAAYA,CACnBJ,IAAmB,EACnBD,SAA8B,EAC9BD,SAAoB,EACpB;EACA,MAAMsB,kBAAkB,GAAIT,IAAY,IAAK;IAC3C,OAAOZ,SAAS,GACZb,gBAAgB,CAACa,SAAS,EAAEd,UAAU,CAAC0B,IAAI,CAAC,CAAC,GAC7C1B,UAAU,CAAC,IAAI0B,IAAI,EAAE,CAAC;EAC5B,CAAC;EAED,MAAML,IAAuD,GAAG,CAAC,CAAC;EAClEtC,OAAO,CAAD,CAAC,CAACqD,IAAI,CAACC,OAAO,CAAC,UAAUX,IAAI,EAAE;IACnC,IAAIb,SAAS,IAAI,CAACA,SAAS,CAACyB,QAAQ,CAACZ,IAAI,CAAC,EAAE;IAE5C,MAAMa,GAAG,GAAIlB,IAAI,CAACK,IAAI,CAAC,GAAGS,kBAAkB,CAACT,IAAI,CAAE;IAEnD,MAAM;MAAEc;IAAM,CAAC,GAAGzD,OAAO,CAAD,CAAC,CAAC0D,GAAG,CAC3Bf,IAAI,EACJS,kBAAkB,EAClBrB,SAAS,GAAG,IAAI,GAAG,IAAIY,IAAI,EAAE,EAC7B,EAAE,EACFZ,SAAS,GACL,CAAC4B,GAAG,EAAEC,UAAU,EAAEC,2BAA2B,KAAK;MAChDA,2BAA2B,CAACC,IAAI,IAC9BvD,oBAAoB,CAAC,GAAG,EAAEiD,GAAG,EAAEM,IAAI,CACrC,CAAC;MACDH,GAAG,CAAC3B,IAAI,CAACG,IAAI,CACXpB,mBAAmB,CACjBR,oBAAoB,CAAC,GAAG,EAAEiD,GAAG,EAAEvC,UAAU,CAAC2C,UAAU,CAAC,CACvD,CACF,CAAC;IACH,CAAC,GACD,IACN,CAAC;IAED5B,IAAI,CAACG,IAAI,CAAC,GAAGsB,KAAK,CAAC;EACrB,CAAC,CAAC;EACF,OAAOnB,IAAI;AACb;AACe,SAAAyB,SACbjC,SAAoB,EACpBkC,UAA+C,GAAG,QAAQ,EAC1D;EACA,IAAI9B,IAAe;EAEnB,MAAM+B,KAAK,GAAG;IACZC,MAAM,EAAErC,WAAW;IACnBsC,MAAM,EAAE9B,WAAW;IACnB+B,GAAG,EAAExB,QAAQ;IACbyB,GAAG,EAAElB;EACP,CAAC,CAACa,UAAU,CAAC;EAEb,IAAIC,KAAK,EAAE;IACT/B,IAAI,GAAG+B,KAAK,CAACnC,SAAS,CAAC;EACzB,CAAC,MAAM;IACL,MAAM,IAAIwC,KAAK,CAAC,2BAA2BN,UAAU,EAAE,CAAC;EAC1D;EAEA,OAAO,IAAAO,oBAAS,EAACrC,IAAI,CAAC,CAACsC,IAAI;AAC7B;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transform-ast.js b/node_modules/@babel/core/lib/transform-ast.js new file mode 100644 index 0000000..f54b9c9 --- /dev/null +++ b/node_modules/@babel/core/lib/transform-ast.js @@ -0,0 +1,48 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.transformFromAst = void 0; +exports.transformFromAstAsync = transformFromAstAsync; +exports.transformFromAstSync = transformFromAstSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _index = require("./config/index.js"); +var _index2 = require("./transformation/index.js"); +var _rewriteStackTrace = require("./errors/rewrite-stack-trace.js"); +const transformFromAstRunner = _gensync()(function* (ast, code, opts) { + const config = yield* (0, _index.default)(opts); + if (config === null) return null; + if (!ast) throw new Error("No AST given"); + return yield* (0, _index2.run)(config, code, ast); +}); +const transformFromAst = exports.transformFromAst = function transformFromAst(ast, code, optsOrCallback, maybeCallback) { + let opts; + let callback; + if (typeof optsOrCallback === "function") { + callback = optsOrCallback; + opts = undefined; + } else { + opts = optsOrCallback; + callback = maybeCallback; + } + if (callback === undefined) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformFromAstRunner.sync)(ast, code, opts); + } + (0, _rewriteStackTrace.beginHiddenCallStack)(transformFromAstRunner.errback)(ast, code, opts, callback); +}; +function transformFromAstSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformFromAstRunner.sync)(...args); +} +function transformFromAstAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformFromAstRunner.async)(...args); +} +0 && 0; + +//# sourceMappingURL=transform-ast.js.map diff --git a/node_modules/@babel/core/lib/transform-ast.js.map b/node_modules/@babel/core/lib/transform-ast.js.map new file mode 100644 index 0000000..e83787e --- /dev/null +++ b/node_modules/@babel/core/lib/transform-ast.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_index","_index2","_rewriteStackTrace","transformFromAstRunner","gensync","ast","code","opts","config","loadConfig","Error","run","transformFromAst","exports","optsOrCallback","maybeCallback","callback","undefined","beginHiddenCallStack","sync","errback","transformFromAstSync","args","transformFromAstAsync","async"],"sources":["../src/transform-ast.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\n\nimport loadConfig from \"./config/index.ts\";\nimport type { InputOptions, ResolvedConfig } from \"./config/index.ts\";\nimport { run } from \"./transformation/index.ts\";\nimport type * as t from \"@babel/types\";\n\nimport { beginHiddenCallStack } from \"./errors/rewrite-stack-trace.ts\";\n\nimport type { FileResult, FileResultCallback } from \"./transformation/index.ts\";\ntype AstRoot = t.File | t.Program;\n\ntype TransformFromAst = {\n (ast: AstRoot, code: string, callback: FileResultCallback): void;\n (\n ast: AstRoot,\n code: string,\n opts: InputOptions | undefined | null,\n callback: FileResultCallback,\n ): void;\n (ast: AstRoot, code: string, opts?: InputOptions | null): FileResult | null;\n};\n\nconst transformFromAstRunner = gensync(function* (\n ast: AstRoot,\n code: string,\n opts: InputOptions | undefined | null,\n): Handler {\n const config: ResolvedConfig | null = yield* loadConfig(opts);\n if (config === null) return null;\n\n if (!ast) throw new Error(\"No AST given\");\n\n return yield* run(config, code, ast);\n});\n\nexport const transformFromAst: TransformFromAst = function transformFromAst(\n ast,\n code,\n optsOrCallback?: InputOptions | null | undefined | FileResultCallback,\n maybeCallback?: FileResultCallback,\n) {\n let opts: InputOptions | undefined | null;\n let callback: FileResultCallback | undefined;\n if (typeof optsOrCallback === \"function\") {\n callback = optsOrCallback;\n opts = undefined;\n } else {\n opts = optsOrCallback;\n callback = maybeCallback;\n }\n\n if (callback === undefined) {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'transformFromAst' function expects a callback. If you need to call it synchronously, please use 'transformFromAstSync'.\",\n );\n } else {\n // console.warn(\n // \"Starting from Babel 8.0.0, the 'transformFromAst' function will expect a callback. If you need to call it synchronously, please use 'transformFromAstSync'.\",\n // );\n return beginHiddenCallStack(transformFromAstRunner.sync)(ast, code, opts);\n }\n }\n\n beginHiddenCallStack(transformFromAstRunner.errback)(\n ast,\n code,\n opts,\n callback,\n );\n};\n\nexport function transformFromAstSync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(transformFromAstRunner.sync)(...args);\n}\n\nexport function transformFromAstAsync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(transformFromAstRunner.async)(...args);\n}\n"],"mappings":";;;;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,IAAAE,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAGA,IAAAG,kBAAA,GAAAH,OAAA;AAgBA,MAAMI,sBAAsB,GAAGC,SAAMA,CAAC,CAAC,WACrCC,GAAY,EACZC,IAAY,EACZC,IAAqC,EACT;EAC5B,MAAMC,MAA6B,GAAG,OAAO,IAAAC,cAAU,EAACF,IAAI,CAAC;EAC7D,IAAIC,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI;EAEhC,IAAI,CAACH,GAAG,EAAE,MAAM,IAAIK,KAAK,CAAC,cAAc,CAAC;EAEzC,OAAO,OAAO,IAAAC,WAAG,EAACH,MAAM,EAAEF,IAAI,EAAED,GAAG,CAAC;AACtC,CAAC,CAAC;AAEK,MAAMO,gBAAkC,GAAAC,OAAA,CAAAD,gBAAA,GAAG,SAASA,gBAAgBA,CACzEP,GAAG,EACHC,IAAI,EACJQ,cAAqE,EACrEC,aAAkC,EAClC;EACA,IAAIR,IAAqC;EACzC,IAAIS,QAAwC;EAC5C,IAAI,OAAOF,cAAc,KAAK,UAAU,EAAE;IACxCE,QAAQ,GAAGF,cAAc;IACzBP,IAAI,GAAGU,SAAS;EAClB,CAAC,MAAM;IACLV,IAAI,GAAGO,cAAc;IACrBE,QAAQ,GAAGD,aAAa;EAC1B;EAEA,IAAIC,QAAQ,KAAKC,SAAS,EAAE;IASxB,OAAO,IAAAC,uCAAoB,EAACf,sBAAsB,CAACgB,IAAI,CAAC,CAACd,GAAG,EAAEC,IAAI,EAAEC,IAAI,CAAC;EAE7E;EAEA,IAAAW,uCAAoB,EAACf,sBAAsB,CAACiB,OAAO,CAAC,CAClDf,GAAG,EACHC,IAAI,EACJC,IAAI,EACJS,QACF,CAAC;AACH,CAAC;AAEM,SAASK,oBAAoBA,CAClC,GAAGC,IAAoD,EACvD;EACA,OAAO,IAAAJ,uCAAoB,EAACf,sBAAsB,CAACgB,IAAI,CAAC,CAAC,GAAGG,IAAI,CAAC;AACnE;AAEO,SAASC,qBAAqBA,CACnC,GAAGD,IAAqD,EACxD;EACA,OAAO,IAAAJ,uCAAoB,EAACf,sBAAsB,CAACqB,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AACpE;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transform-file-browser.js b/node_modules/@babel/core/lib/transform-file-browser.js new file mode 100644 index 0000000..8576809 --- /dev/null +++ b/node_modules/@babel/core/lib/transform-file-browser.js @@ -0,0 +1,23 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.transformFile = void 0; +exports.transformFileAsync = transformFileAsync; +exports.transformFileSync = transformFileSync; +const transformFile = exports.transformFile = function transformFile(filename, opts, callback) { + if (typeof opts === "function") { + callback = opts; + } + callback(new Error("Transforming files is not supported in browsers"), null); +}; +function transformFileSync() { + throw new Error("Transforming files is not supported in browsers"); +} +function transformFileAsync() { + return Promise.reject(new Error("Transforming files is not supported in browsers")); +} +0 && 0; + +//# sourceMappingURL=transform-file-browser.js.map diff --git a/node_modules/@babel/core/lib/transform-file-browser.js.map b/node_modules/@babel/core/lib/transform-file-browser.js.map new file mode 100644 index 0000000..b632a42 --- /dev/null +++ b/node_modules/@babel/core/lib/transform-file-browser.js.map @@ -0,0 +1 @@ +{"version":3,"names":["transformFile","exports","filename","opts","callback","Error","transformFileSync","transformFileAsync","Promise","reject"],"sources":["../src/transform-file-browser.ts"],"sourcesContent":["/* c8 ignore start */\n\n// duplicated from transform-file so we do not have to import anything here\ntype TransformFile = {\n (filename: string, callback: (error: Error, file: null) => void): void;\n (\n filename: string,\n opts: any,\n callback: (error: Error, file: null) => void,\n ): void;\n};\n\nexport const transformFile: TransformFile = function transformFile(\n filename,\n opts,\n callback?: (error: Error, file: null) => void,\n) {\n if (typeof opts === \"function\") {\n callback = opts;\n }\n\n callback(new Error(\"Transforming files is not supported in browsers\"), null);\n};\n\nexport function transformFileSync(): never {\n throw new Error(\"Transforming files is not supported in browsers\");\n}\n\nexport function transformFileAsync() {\n return Promise.reject(\n new Error(\"Transforming files is not supported in browsers\"),\n );\n}\n"],"mappings":";;;;;;;;AAYO,MAAMA,aAA4B,GAAAC,OAAA,CAAAD,aAAA,GAAG,SAASA,aAAaA,CAChEE,QAAQ,EACRC,IAAI,EACJC,QAA6C,EAC7C;EACA,IAAI,OAAOD,IAAI,KAAK,UAAU,EAAE;IAC9BC,QAAQ,GAAGD,IAAI;EACjB;EAEAC,QAAQ,CAAC,IAAIC,KAAK,CAAC,iDAAiD,CAAC,EAAE,IAAI,CAAC;AAC9E,CAAC;AAEM,SAASC,iBAAiBA,CAAA,EAAU;EACzC,MAAM,IAAID,KAAK,CAAC,iDAAiD,CAAC;AACpE;AAEO,SAASE,kBAAkBA,CAAA,EAAG;EACnC,OAAOC,OAAO,CAACC,MAAM,CACnB,IAAIJ,KAAK,CAAC,iDAAiD,CAC7D,CAAC;AACH;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transform-file.js b/node_modules/@babel/core/lib/transform-file.js new file mode 100644 index 0000000..ce7f9f9 --- /dev/null +++ b/node_modules/@babel/core/lib/transform-file.js @@ -0,0 +1,40 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.transformFile = transformFile; +exports.transformFileAsync = transformFileAsync; +exports.transformFileSync = transformFileSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _index = require("./config/index.js"); +var _index2 = require("./transformation/index.js"); +var fs = require("./gensync-utils/fs.js"); +({}); +const transformFileRunner = _gensync()(function* (filename, opts) { + const options = Object.assign({}, opts, { + filename + }); + const config = yield* (0, _index.default)(options); + if (config === null) return null; + const code = yield* fs.readFile(filename, "utf8"); + return yield* (0, _index2.run)(config, code); +}); +function transformFile(...args) { + transformFileRunner.errback(...args); +} +function transformFileSync(...args) { + return transformFileRunner.sync(...args); +} +function transformFileAsync(...args) { + return transformFileRunner.async(...args); +} +0 && 0; + +//# sourceMappingURL=transform-file.js.map diff --git a/node_modules/@babel/core/lib/transform-file.js.map b/node_modules/@babel/core/lib/transform-file.js.map new file mode 100644 index 0000000..36a85b1 --- /dev/null +++ b/node_modules/@babel/core/lib/transform-file.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_index","_index2","fs","transformFileRunner","gensync","filename","opts","options","Object","assign","config","loadConfig","code","readFile","run","transformFile","args","errback","transformFileSync","sync","transformFileAsync","async"],"sources":["../src/transform-file.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\n\nimport loadConfig from \"./config/index.ts\";\nimport type { InputOptions, ResolvedConfig } from \"./config/index.ts\";\nimport { run } from \"./transformation/index.ts\";\nimport type { FileResult, FileResultCallback } from \"./transformation/index.ts\";\nimport * as fs from \"./gensync-utils/fs.ts\";\n\ntype transformFileBrowserType = typeof import(\"./transform-file-browser\");\ntype transformFileType = typeof import(\"./transform-file\");\n\n// Kind of gross, but essentially asserting that the exports of this module are the same as the\n// exports of transform-file-browser, since this file may be replaced at bundle time with\n// transform-file-browser.\n// eslint-disable-next-line @typescript-eslint/no-unused-expressions\n({}) as any as transformFileBrowserType as transformFileType;\n\nconst transformFileRunner = gensync(function* (\n filename: string,\n opts?: InputOptions,\n): Handler {\n const options = { ...opts, filename };\n\n const config: ResolvedConfig | null = yield* loadConfig(options);\n if (config === null) return null;\n\n const code = yield* fs.readFile(filename, \"utf8\");\n return yield* run(config, code);\n});\n\n// @ts-expect-error TS doesn't detect that this signature is compatible\nexport function transformFile(\n filename: string,\n callback: FileResultCallback,\n): void;\nexport function transformFile(\n filename: string,\n opts: InputOptions | undefined | null,\n callback: FileResultCallback,\n): void;\nexport function transformFile(\n ...args: Parameters\n) {\n transformFileRunner.errback(...args);\n}\n\nexport function transformFileSync(\n ...args: Parameters\n) {\n return transformFileRunner.sync(...args);\n}\nexport function transformFileAsync(\n ...args: Parameters\n) {\n return transformFileRunner.async(...args);\n}\n"],"mappings":";;;;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,IAAAE,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,EAAA,GAAAH,OAAA;AASA,CAAC,CAAC,CAAC;AAEH,MAAMI,mBAAmB,GAAGC,SAAMA,CAAC,CAAC,WAClCC,QAAgB,EAChBC,IAAmB,EACS;EAC5B,MAAMC,OAAO,GAAAC,MAAA,CAAAC,MAAA,KAAQH,IAAI;IAAED;EAAQ,EAAE;EAErC,MAAMK,MAA6B,GAAG,OAAO,IAAAC,cAAU,EAACJ,OAAO,CAAC;EAChE,IAAIG,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI;EAEhC,MAAME,IAAI,GAAG,OAAOV,EAAE,CAACW,QAAQ,CAACR,QAAQ,EAAE,MAAM,CAAC;EACjD,OAAO,OAAO,IAAAS,WAAG,EAACJ,MAAM,EAAEE,IAAI,CAAC;AACjC,CAAC,CAAC;AAYK,SAASG,aAAaA,CAC3B,GAAGC,IAAoD,EACvD;EACAb,mBAAmB,CAACc,OAAO,CAAC,GAAGD,IAAI,CAAC;AACtC;AAEO,SAASE,iBAAiBA,CAC/B,GAAGF,IAAiD,EACpD;EACA,OAAOb,mBAAmB,CAACgB,IAAI,CAAC,GAAGH,IAAI,CAAC;AAC1C;AACO,SAASI,kBAAkBA,CAChC,GAAGJ,IAAkD,EACrD;EACA,OAAOb,mBAAmB,CAACkB,KAAK,CAAC,GAAGL,IAAI,CAAC;AAC3C;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transform.js b/node_modules/@babel/core/lib/transform.js new file mode 100644 index 0000000..3b496db --- /dev/null +++ b/node_modules/@babel/core/lib/transform.js @@ -0,0 +1,47 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.transform = void 0; +exports.transformAsync = transformAsync; +exports.transformSync = transformSync; +function _gensync() { + const data = require("gensync"); + _gensync = function () { + return data; + }; + return data; +} +var _index = require("./config/index.js"); +var _index2 = require("./transformation/index.js"); +var _rewriteStackTrace = require("./errors/rewrite-stack-trace.js"); +const transformRunner = _gensync()(function* transform(code, opts) { + const config = yield* (0, _index.default)(opts); + if (config === null) return null; + return yield* (0, _index2.run)(config, code); +}); +const transform = exports.transform = function transform(code, optsOrCallback, maybeCallback) { + let opts; + let callback; + if (typeof optsOrCallback === "function") { + callback = optsOrCallback; + opts = undefined; + } else { + opts = optsOrCallback; + callback = maybeCallback; + } + if (callback === undefined) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformRunner.sync)(code, opts); + } + (0, _rewriteStackTrace.beginHiddenCallStack)(transformRunner.errback)(code, opts, callback); +}; +function transformSync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformRunner.sync)(...args); +} +function transformAsync(...args) { + return (0, _rewriteStackTrace.beginHiddenCallStack)(transformRunner.async)(...args); +} +0 && 0; + +//# sourceMappingURL=transform.js.map diff --git a/node_modules/@babel/core/lib/transform.js.map b/node_modules/@babel/core/lib/transform.js.map new file mode 100644 index 0000000..6f3e9f0 --- /dev/null +++ b/node_modules/@babel/core/lib/transform.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_gensync","data","require","_index","_index2","_rewriteStackTrace","transformRunner","gensync","transform","code","opts","config","loadConfig","run","exports","optsOrCallback","maybeCallback","callback","undefined","beginHiddenCallStack","sync","errback","transformSync","args","transformAsync","async"],"sources":["../src/transform.ts"],"sourcesContent":["import gensync, { type Handler } from \"gensync\";\n\nimport loadConfig from \"./config/index.ts\";\nimport type { InputOptions, ResolvedConfig } from \"./config/index.ts\";\nimport { run } from \"./transformation/index.ts\";\n\nimport type { FileResult, FileResultCallback } from \"./transformation/index.ts\";\nimport { beginHiddenCallStack } from \"./errors/rewrite-stack-trace.ts\";\n\nexport type { FileResult } from \"./transformation/index.ts\";\n\ntype Transform = {\n (code: string, callback: FileResultCallback): void;\n (\n code: string,\n opts: InputOptions | undefined | null,\n callback: FileResultCallback,\n ): void;\n (code: string, opts?: InputOptions | null): FileResult | null;\n};\n\nconst transformRunner = gensync(function* transform(\n code: string,\n opts?: InputOptions,\n): Handler {\n const config: ResolvedConfig | null = yield* loadConfig(opts);\n if (config === null) return null;\n\n return yield* run(config, code);\n});\n\nexport const transform: Transform = function transform(\n code,\n optsOrCallback?: InputOptions | null | undefined | FileResultCallback,\n maybeCallback?: FileResultCallback,\n) {\n let opts: InputOptions | undefined | null;\n let callback: FileResultCallback | undefined;\n if (typeof optsOrCallback === \"function\") {\n callback = optsOrCallback;\n opts = undefined;\n } else {\n opts = optsOrCallback;\n callback = maybeCallback;\n }\n\n if (callback === undefined) {\n if (process.env.BABEL_8_BREAKING) {\n throw new Error(\n \"Starting from Babel 8.0.0, the 'transform' function expects a callback. If you need to call it synchronously, please use 'transformSync'.\",\n );\n } else {\n // console.warn(\n // \"Starting from Babel 8.0.0, the 'transform' function will expect a callback. If you need to call it synchronously, please use 'transformSync'.\",\n // );\n return beginHiddenCallStack(transformRunner.sync)(code, opts);\n }\n }\n\n beginHiddenCallStack(transformRunner.errback)(code, opts, callback);\n};\n\nexport function transformSync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(transformRunner.sync)(...args);\n}\nexport function transformAsync(\n ...args: Parameters\n) {\n return beginHiddenCallStack(transformRunner.async)(...args);\n}\n"],"mappings":";;;;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,IAAAE,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAGA,IAAAG,kBAAA,GAAAH,OAAA;AAcA,MAAMI,eAAe,GAAGC,SAAMA,CAAC,CAAC,UAAUC,SAASA,CACjDC,IAAY,EACZC,IAAmB,EACS;EAC5B,MAAMC,MAA6B,GAAG,OAAO,IAAAC,cAAU,EAACF,IAAI,CAAC;EAC7D,IAAIC,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI;EAEhC,OAAO,OAAO,IAAAE,WAAG,EAACF,MAAM,EAAEF,IAAI,CAAC;AACjC,CAAC,CAAC;AAEK,MAAMD,SAAoB,GAAAM,OAAA,CAAAN,SAAA,GAAG,SAASA,SAASA,CACpDC,IAAI,EACJM,cAAqE,EACrEC,aAAkC,EAClC;EACA,IAAIN,IAAqC;EACzC,IAAIO,QAAwC;EAC5C,IAAI,OAAOF,cAAc,KAAK,UAAU,EAAE;IACxCE,QAAQ,GAAGF,cAAc;IACzBL,IAAI,GAAGQ,SAAS;EAClB,CAAC,MAAM;IACLR,IAAI,GAAGK,cAAc;IACrBE,QAAQ,GAAGD,aAAa;EAC1B;EAEA,IAAIC,QAAQ,KAAKC,SAAS,EAAE;IASxB,OAAO,IAAAC,uCAAoB,EAACb,eAAe,CAACc,IAAI,CAAC,CAACX,IAAI,EAAEC,IAAI,CAAC;EAEjE;EAEA,IAAAS,uCAAoB,EAACb,eAAe,CAACe,OAAO,CAAC,CAACZ,IAAI,EAAEC,IAAI,EAAEO,QAAQ,CAAC;AACrE,CAAC;AAEM,SAASK,aAAaA,CAC3B,GAAGC,IAA6C,EAChD;EACA,OAAO,IAAAJ,uCAAoB,EAACb,eAAe,CAACc,IAAI,CAAC,CAAC,GAAGG,IAAI,CAAC;AAC5D;AACO,SAASC,cAAcA,CAC5B,GAAGD,IAA8C,EACjD;EACA,OAAO,IAAAJ,uCAAoB,EAACb,eAAe,CAACmB,KAAK,CAAC,CAAC,GAAGF,IAAI,CAAC;AAC7D;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js b/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js new file mode 100644 index 0000000..ec22ee3 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js @@ -0,0 +1,84 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = loadBlockHoistPlugin; +function _traverse() { + const data = require("@babel/traverse"); + _traverse = function () { + return data; + }; + return data; +} +var _plugin = require("../config/plugin.js"); +let LOADED_PLUGIN; +const blockHoistPlugin = { + name: "internal.blockHoist", + visitor: { + Block: { + exit({ + node + }) { + node.body = performHoisting(node.body); + } + }, + SwitchCase: { + exit({ + node + }) { + node.consequent = performHoisting(node.consequent); + } + } + } +}; +function performHoisting(body) { + let max = Math.pow(2, 30) - 1; + let hasChange = false; + for (let i = 0; i < body.length; i++) { + const n = body[i]; + const p = priority(n); + if (p > max) { + hasChange = true; + break; + } + max = p; + } + if (!hasChange) return body; + return stableSort(body.slice()); +} +function loadBlockHoistPlugin() { + if (!LOADED_PLUGIN) { + LOADED_PLUGIN = new _plugin.default(Object.assign({}, blockHoistPlugin, { + visitor: _traverse().default.explode(blockHoistPlugin.visitor) + }), {}); + } + return LOADED_PLUGIN; +} +function priority(bodyNode) { + const priority = bodyNode == null ? void 0 : bodyNode._blockHoist; + if (priority == null) return 1; + if (priority === true) return 2; + return priority; +} +function stableSort(body) { + const buckets = Object.create(null); + for (let i = 0; i < body.length; i++) { + const n = body[i]; + const p = priority(n); + const bucket = buckets[p] || (buckets[p] = []); + bucket.push(n); + } + const keys = Object.keys(buckets).map(k => +k).sort((a, b) => b - a); + let index = 0; + for (const key of keys) { + const bucket = buckets[key]; + for (const n of bucket) { + body[index++] = n; + } + } + return body; +} +0 && 0; + +//# sourceMappingURL=block-hoist-plugin.js.map diff --git a/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js.map b/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js.map new file mode 100644 index 0000000..028e36a --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_traverse","data","require","_plugin","LOADED_PLUGIN","blockHoistPlugin","name","visitor","Block","exit","node","body","performHoisting","SwitchCase","consequent","max","Math","pow","hasChange","i","length","n","p","priority","stableSort","slice","loadBlockHoistPlugin","Plugin","Object","assign","traverse","explode","bodyNode","_blockHoist","buckets","create","bucket","push","keys","map","k","sort","a","b","index","key"],"sources":["../../src/transformation/block-hoist-plugin.ts"],"sourcesContent":["import traverse from \"@babel/traverse\";\nimport type { Statement } from \"@babel/types\";\nimport type { PluginObject } from \"../config/index.ts\";\nimport Plugin from \"../config/plugin.ts\";\n\nlet LOADED_PLUGIN: Plugin | void;\n\nconst blockHoistPlugin: PluginObject = {\n /**\n * [Please add a description.]\n *\n * Priority:\n *\n * - 0 We want this to be at the **very** bottom\n * - 1 Default node position\n * - 2 Priority over normal nodes\n * - 3 We want this to be at the **very** top\n * - 4 Reserved for the helpers used to implement module imports.\n */\n\n name: \"internal.blockHoist\",\n\n visitor: {\n Block: {\n exit({ node }) {\n node.body = performHoisting(node.body);\n },\n },\n SwitchCase: {\n exit({ node }) {\n // In case statements, hoisting is difficult to perform correctly due to\n // functions that are declared and referenced in different blocks.\n // Nevertheless, hoisting the statements *inside* of each case should at\n // least mitigate the failure cases.\n node.consequent = performHoisting(node.consequent);\n },\n },\n },\n};\n\nfunction performHoisting(body: Statement[]): Statement[] {\n // Largest SMI\n let max = 2 ** 30 - 1;\n let hasChange = false;\n for (let i = 0; i < body.length; i++) {\n const n = body[i];\n const p = priority(n);\n if (p > max) {\n hasChange = true;\n break;\n }\n max = p;\n }\n if (!hasChange) return body;\n\n // My kingdom for a stable sort!\n return stableSort(body.slice());\n}\n\nexport default function loadBlockHoistPlugin(): Plugin {\n if (!LOADED_PLUGIN) {\n // cache the loaded blockHoist plugin plugin\n LOADED_PLUGIN = new Plugin(\n {\n ...blockHoistPlugin,\n visitor: traverse.explode(blockHoistPlugin.visitor),\n },\n {},\n );\n }\n\n return LOADED_PLUGIN;\n}\n\nfunction priority(bodyNode: Statement & { _blockHoist?: number | true }) {\n const priority = bodyNode?._blockHoist;\n if (priority == null) return 1;\n if (priority === true) return 2;\n return priority;\n}\n\nfunction stableSort(body: Statement[]) {\n // By default, we use priorities of 0-4.\n const buckets = Object.create(null);\n\n // By collecting into buckets, we can guarantee a stable sort.\n for (let i = 0; i < body.length; i++) {\n const n = body[i];\n const p = priority(n);\n\n // In case some plugin is setting an unexpected priority.\n const bucket = buckets[p] || (buckets[p] = []);\n bucket.push(n);\n }\n\n // Sort our keys in descending order. Keys are unique, so we don't have to\n // worry about stability.\n const keys = Object.keys(buckets)\n .map(k => +k)\n .sort((a, b) => b - a);\n\n let index = 0;\n for (const key of keys) {\n const bucket = buckets[key];\n for (const n of bucket) {\n body[index++] = n;\n }\n }\n return body;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs b/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs new file mode 100644 index 0000000..a532ff1 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs @@ -0,0 +1,4 @@ +exports.getModuleName = () => require("@babel/helper-module-transforms").getModuleName; +0 && 0; + +//# sourceMappingURL=babel-7-helpers.cjs.map diff --git a/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs.map b/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs.map new file mode 100644 index 0000000..241ae7e --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs.map @@ -0,0 +1 @@ +{"version":3,"names":["exports","getModuleName","require"],"sources":["../../../src/transformation/file/babel-7-helpers.cjs"],"sourcesContent":["// TODO(Babel 8): Remove this file\n\nif (!process.env.BABEL_8_BREAKING) {\n exports.getModuleName = () =>\n require(\"@babel/helper-module-transforms\").getModuleName;\n} else if (process.env.IS_PUBLISH) {\n throw new Error(\n \"Internal Babel error: This file should only be loaded in Babel 7\",\n );\n}\n"],"mappings":"AAGEA,OAAO,CAACC,aAAa,GAAG,MACtBC,OAAO,CAAC,iCAAiC,CAAC,CAACD,aAAa;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/file/file.js b/node_modules/@babel/core/lib/transformation/file/file.js new file mode 100644 index 0000000..a17be42 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/file.js @@ -0,0 +1,204 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +function helpers() { + const data = require("@babel/helpers"); + helpers = function () { + return data; + }; + return data; +} +function _traverse() { + const data = require("@babel/traverse"); + _traverse = function () { + return data; + }; + return data; +} +function _codeFrame() { + const data = require("@babel/code-frame"); + _codeFrame = function () { + return data; + }; + return data; +} +function _t() { + const data = require("@babel/types"); + _t = function () { + return data; + }; + return data; +} +function _semver() { + const data = require("semver"); + _semver = function () { + return data; + }; + return data; +} +var _babel7Helpers = require("./babel-7-helpers.cjs"); +const { + cloneNode, + interpreterDirective, + traverseFast +} = _t(); +class File { + constructor(options, { + code, + ast, + inputMap + }) { + this._map = new Map(); + this.opts = void 0; + this.declarations = {}; + this.path = void 0; + this.ast = void 0; + this.scope = void 0; + this.metadata = {}; + this.code = ""; + this.inputMap = void 0; + this.hub = { + file: this, + getCode: () => this.code, + getScope: () => this.scope, + addHelper: this.addHelper.bind(this), + buildError: this.buildCodeFrameError.bind(this) + }; + this.opts = options; + this.code = code; + this.ast = ast; + this.inputMap = inputMap; + this.path = _traverse().NodePath.get({ + hub: this.hub, + parentPath: null, + parent: this.ast, + container: this.ast, + key: "program" + }).setContext(); + this.scope = this.path.scope; + } + get shebang() { + const { + interpreter + } = this.path.node; + return interpreter ? interpreter.value : ""; + } + set shebang(value) { + if (value) { + this.path.get("interpreter").replaceWith(interpreterDirective(value)); + } else { + this.path.get("interpreter").remove(); + } + } + set(key, val) { + if (key === "helpersNamespace") { + throw new Error("Babel 7.0.0-beta.56 has dropped support for the 'helpersNamespace' utility." + "If you are using @babel/plugin-external-helpers you will need to use a newer " + "version than the one you currently have installed. " + "If you have your own implementation, you'll want to explore using 'helperGenerator' " + "alongside 'file.availableHelper()'."); + } + this._map.set(key, val); + } + get(key) { + return this._map.get(key); + } + has(key) { + return this._map.has(key); + } + availableHelper(name, versionRange) { + if (helpers().isInternal(name)) return false; + let minVersion; + try { + minVersion = helpers().minVersion(name); + } catch (err) { + if (err.code !== "BABEL_HELPER_UNKNOWN") throw err; + return false; + } + if (typeof versionRange !== "string") return true; + if (_semver().valid(versionRange)) versionRange = `^${versionRange}`; + return !_semver().intersects(`<${minVersion}`, versionRange) && !_semver().intersects(`>=8.0.0`, versionRange); + } + addHelper(name) { + if (helpers().isInternal(name)) { + throw new Error("Cannot use internal helper " + name); + } + return this._addHelper(name); + } + _addHelper(name) { + const declar = this.declarations[name]; + if (declar) return cloneNode(declar); + const generator = this.get("helperGenerator"); + if (generator) { + const res = generator(name); + if (res) return res; + } + helpers().minVersion(name); + const uid = this.declarations[name] = this.scope.generateUidIdentifier(name); + const dependencies = {}; + for (const dep of helpers().getDependencies(name)) { + dependencies[dep] = this._addHelper(dep); + } + const { + nodes, + globals + } = helpers().get(name, dep => dependencies[dep], uid.name, Object.keys(this.scope.getAllBindings())); + globals.forEach(name => { + if (this.path.scope.hasBinding(name, true)) { + this.path.scope.rename(name); + } + }); + nodes.forEach(node => { + node._compact = true; + }); + const added = this.path.unshiftContainer("body", nodes); + for (const path of added) { + if (path.isVariableDeclaration()) this.scope.registerDeclaration(path); + } + return uid; + } + buildCodeFrameError(node, msg, _Error = SyntaxError) { + let loc = node == null ? void 0 : node.loc; + if (!loc && node) { + traverseFast(node, function (node) { + if (node.loc) { + loc = node.loc; + return traverseFast.stop; + } + }); + let txt = "This is an error on an internal node. Probably an internal error."; + if (loc) txt += " Location has been estimated."; + msg += ` (${txt})`; + } + if (loc) { + const { + highlightCode = true + } = this.opts; + msg += "\n" + (0, _codeFrame().codeFrameColumns)(this.code, { + start: { + line: loc.start.line, + column: loc.start.column + 1 + }, + end: loc.end && loc.start.line === loc.end.line ? { + line: loc.end.line, + column: loc.end.column + 1 + } : undefined + }, { + highlightCode + }); + } + return new _Error(msg); + } +} +exports.default = File; +File.prototype.addImport = function addImport() { + throw new Error("This API has been removed. If you're looking for this " + "functionality in Babel 7, you should import the " + "'@babel/helper-module-imports' module and use the functions exposed " + " from that module, such as 'addNamed' or 'addDefault'."); +}; +File.prototype.addTemplateObject = function addTemplateObject() { + throw new Error("This function has been moved into the template literal transform itself."); +}; +File.prototype.getModuleName = function getModuleName() { + return _babel7Helpers.getModuleName()(this.opts, this.opts); +}; +0 && 0; + +//# sourceMappingURL=file.js.map diff --git a/node_modules/@babel/core/lib/transformation/file/file.js.map b/node_modules/@babel/core/lib/transformation/file/file.js.map new file mode 100644 index 0000000..f20e621 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/file.js.map @@ -0,0 +1 @@ +{"version":3,"names":["helpers","data","require","_traverse","_codeFrame","_t","_semver","_babel7Helpers","cloneNode","interpreterDirective","traverseFast","File","constructor","options","code","ast","inputMap","_map","Map","opts","declarations","path","scope","metadata","hub","file","getCode","getScope","addHelper","bind","buildError","buildCodeFrameError","NodePath","get","parentPath","parent","container","key","setContext","shebang","interpreter","node","value","replaceWith","remove","set","val","Error","has","availableHelper","name","versionRange","isInternal","minVersion","err","semver","valid","intersects","_addHelper","declar","generator","res","uid","generateUidIdentifier","dependencies","dep","getDependencies","nodes","globals","Object","keys","getAllBindings","forEach","hasBinding","rename","_compact","added","unshiftContainer","isVariableDeclaration","registerDeclaration","msg","_Error","SyntaxError","loc","stop","txt","highlightCode","codeFrameColumns","start","line","column","end","undefined","exports","default","prototype","addImport","addTemplateObject","getModuleName","babel7"],"sources":["../../../src/transformation/file/file.ts"],"sourcesContent":["import * as helpers from \"@babel/helpers\";\nimport { NodePath } from \"@babel/traverse\";\nimport type { HubInterface, Scope } from \"@babel/traverse\";\nimport { codeFrameColumns } from \"@babel/code-frame\";\nimport { cloneNode, interpreterDirective, traverseFast } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport semver from \"semver\";\n\nimport type { NormalizedFile } from \"../normalize-file.ts\";\n\n// @ts-expect-error This file is `any`\nimport babel7 from \"./babel-7-helpers.cjs\" with { if: \"!process.env.BABEL_8_BREAKING && (!USE_ESM || IS_STANDALONE)\" };\nimport type { ResolvedOptions } from \"../../config/validation/options.ts\";\nimport type { SourceMapConverter } from \"convert-source-map\";\n\nexport default class File {\n _map = new Map();\n opts: ResolvedOptions;\n declarations: Record = {};\n path: NodePath;\n ast: t.File;\n scope: Scope;\n metadata: Record = {};\n code: string = \"\";\n inputMap: SourceMapConverter;\n\n hub: HubInterface & { file: File } = {\n // keep it for the usage in babel-core, ex: path.hub.file.opts.filename\n file: this,\n getCode: () => this.code,\n getScope: () => this.scope,\n addHelper: this.addHelper.bind(this),\n buildError: this.buildCodeFrameError.bind(this),\n };\n\n constructor(\n options: ResolvedOptions,\n { code, ast, inputMap }: NormalizedFile,\n ) {\n this.opts = options;\n this.code = code;\n this.ast = ast;\n this.inputMap = inputMap;\n\n this.path = NodePath.get({\n hub: this.hub,\n parentPath: null,\n parent: this.ast,\n container: this.ast,\n key: \"program\",\n }).setContext() as NodePath;\n this.scope = this.path.scope;\n }\n\n /**\n * Provide backward-compatible access to the interpreter directive handling\n * in Babel 6.x. If you are writing a plugin for Babel 7.x, it would be\n * best to use 'program.interpreter' directly.\n */\n get shebang(): string {\n const { interpreter } = this.path.node;\n return interpreter ? interpreter.value : \"\";\n }\n set shebang(value: string) {\n if (value) {\n this.path.get(\"interpreter\").replaceWith(interpreterDirective(value));\n } else {\n this.path.get(\"interpreter\").remove();\n }\n }\n\n set(key: unknown, val: unknown) {\n if (!process.env.BABEL_8_BREAKING) {\n if (key === \"helpersNamespace\") {\n throw new Error(\n \"Babel 7.0.0-beta.56 has dropped support for the 'helpersNamespace' utility.\" +\n \"If you are using @babel/plugin-external-helpers you will need to use a newer \" +\n \"version than the one you currently have installed. \" +\n \"If you have your own implementation, you'll want to explore using 'helperGenerator' \" +\n \"alongside 'file.availableHelper()'.\",\n );\n }\n }\n\n this._map.set(key, val);\n }\n\n get(key: unknown): any {\n return this._map.get(key);\n }\n\n has(key: unknown): boolean {\n return this._map.has(key);\n }\n\n /**\n * Check if a given helper is available in @babel/core's helper list.\n *\n * This _also_ allows you to pass a Babel version specifically. If the\n * helper exists, but was not available for the full given range, it will be\n * considered unavailable.\n */\n availableHelper(name: string, versionRange?: string | null): boolean {\n if (helpers.isInternal(name)) return false;\n\n let minVersion;\n try {\n minVersion = helpers.minVersion(name);\n } catch (err) {\n if (err.code !== \"BABEL_HELPER_UNKNOWN\") throw err;\n\n return false;\n }\n\n if (typeof versionRange !== \"string\") return true;\n\n // semver.intersects() has some surprising behavior with comparing ranges\n // with pre-release versions. We add '^' to ensure that we are always\n // comparing ranges with ranges, which sidesteps this logic.\n // For example:\n //\n // semver.intersects(`<7.0.1`, \"7.0.0-beta.0\") // false - surprising\n // semver.intersects(`<7.0.1`, \"^7.0.0-beta.0\") // true - expected\n //\n // This is because the first falls back to\n //\n // semver.satisfies(\"7.0.0-beta.0\", `<7.0.1`) // false - surprising\n //\n // and this fails because a prerelease version can only satisfy a range\n // if it is a prerelease within the same major/minor/patch range.\n //\n // Note: If this is found to have issues, please also revisit the logic in\n // transform-runtime's definitions.js file.\n if (semver.valid(versionRange)) versionRange = `^${versionRange}`;\n\n if (process.env.BABEL_8_BREAKING) {\n return (\n !semver.intersects(`<${minVersion}`, versionRange) &&\n !semver.intersects(`>=9.0.0`, versionRange)\n );\n } else {\n return (\n !semver.intersects(`<${minVersion}`, versionRange) &&\n !semver.intersects(`>=8.0.0`, versionRange)\n );\n }\n }\n\n addHelper(name: string): t.Identifier {\n if (helpers.isInternal(name)) {\n throw new Error(\"Cannot use internal helper \" + name);\n }\n return this._addHelper(name);\n }\n\n _addHelper(name: string): t.Identifier {\n const declar = this.declarations[name];\n if (declar) return cloneNode(declar);\n\n const generator = this.get(\"helperGenerator\");\n if (generator) {\n const res = generator(name);\n if (res) return res;\n }\n\n // make sure that the helper exists\n helpers.minVersion(name);\n\n const uid = (this.declarations[name] =\n this.scope.generateUidIdentifier(name));\n\n const dependencies: Record = {};\n for (const dep of helpers.getDependencies(name)) {\n dependencies[dep] = this._addHelper(dep);\n }\n\n const { nodes, globals } = helpers.get(\n name,\n dep => dependencies[dep],\n uid.name,\n Object.keys(this.scope.getAllBindings()),\n );\n\n globals.forEach(name => {\n if (this.path.scope.hasBinding(name, true /* noGlobals */)) {\n this.path.scope.rename(name);\n }\n });\n\n nodes.forEach(node => {\n // @ts-expect-error Fixme: document _compact node property\n node._compact = true;\n });\n\n const added = this.path.unshiftContainer(\"body\", nodes);\n // TODO: NodePath#unshiftContainer should automatically register new\n // bindings.\n for (const path of added) {\n if (path.isVariableDeclaration()) this.scope.registerDeclaration(path);\n }\n\n return uid;\n }\n\n buildCodeFrameError(\n node: t.Node | undefined | null,\n msg: string,\n _Error: typeof Error = SyntaxError,\n ): Error {\n let loc = node?.loc;\n\n if (!loc && node) {\n traverseFast(node, function (node) {\n if (node.loc) {\n loc = node.loc;\n return traverseFast.stop;\n }\n });\n\n let txt =\n \"This is an error on an internal node. Probably an internal error.\";\n if (loc) txt += \" Location has been estimated.\";\n\n msg += ` (${txt})`;\n }\n\n if (loc) {\n const { highlightCode = true } = this.opts;\n\n msg +=\n \"\\n\" +\n codeFrameColumns(\n this.code,\n {\n start: {\n line: loc.start.line,\n column: loc.start.column + 1,\n },\n end:\n loc.end && loc.start.line === loc.end.line\n ? {\n line: loc.end.line,\n column: loc.end.column + 1,\n }\n : undefined,\n },\n { highlightCode },\n );\n }\n\n return new _Error(msg);\n }\n}\n\nif (!process.env.BABEL_8_BREAKING) {\n // @ts-expect-error Babel 7\n File.prototype.addImport = function addImport() {\n throw new Error(\n \"This API has been removed. If you're looking for this \" +\n \"functionality in Babel 7, you should import the \" +\n \"'@babel/helper-module-imports' module and use the functions exposed \" +\n \" from that module, such as 'addNamed' or 'addDefault'.\",\n );\n };\n // @ts-expect-error Babel 7\n File.prototype.addTemplateObject = function addTemplateObject() {\n throw new Error(\n \"This function has been moved into the template literal transform itself.\",\n );\n };\n\n if (!USE_ESM || IS_STANDALONE) {\n // @ts-expect-error Babel 7\n File.prototype.getModuleName = function getModuleName() {\n return babel7.getModuleName()(this.opts, this.opts);\n };\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/file/generate.js b/node_modules/@babel/core/lib/transformation/file/generate.js new file mode 100644 index 0000000..10b5b29 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/generate.js @@ -0,0 +1,84 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = generateCode; +function _convertSourceMap() { + const data = require("convert-source-map"); + _convertSourceMap = function () { + return data; + }; + return data; +} +function _generator() { + const data = require("@babel/generator"); + _generator = function () { + return data; + }; + return data; +} +var _mergeMap = require("./merge-map.js"); +function generateCode(pluginPasses, file) { + const { + opts, + ast, + code, + inputMap + } = file; + const { + generatorOpts + } = opts; + generatorOpts.inputSourceMap = inputMap == null ? void 0 : inputMap.toObject(); + const results = []; + for (const plugins of pluginPasses) { + for (const plugin of plugins) { + const { + generatorOverride + } = plugin; + if (generatorOverride) { + const result = generatorOverride(ast, generatorOpts, code, _generator().default); + if (result !== undefined) results.push(result); + } + } + } + let result; + if (results.length === 0) { + result = (0, _generator().default)(ast, generatorOpts, code); + } else if (results.length === 1) { + result = results[0]; + if (typeof result.then === "function") { + throw new Error(`You appear to be using an async codegen plugin, ` + `which your current version of Babel does not support. ` + `If you're using a published plugin, ` + `you may need to upgrade your @babel/core version.`); + } + } else { + throw new Error("More than one plugin attempted to override codegen."); + } + let { + code: outputCode, + decodedMap: outputMap = result.map + } = result; + if (result.__mergedMap) { + outputMap = Object.assign({}, result.map); + } else { + if (outputMap) { + if (inputMap) { + outputMap = (0, _mergeMap.default)(inputMap.toObject(), outputMap, generatorOpts.sourceFileName); + } else { + outputMap = result.map; + } + } + } + if (opts.sourceMaps === "inline" || opts.sourceMaps === "both") { + outputCode += "\n" + _convertSourceMap().fromObject(outputMap).toComment(); + } + if (opts.sourceMaps === "inline") { + outputMap = null; + } + return { + outputCode, + outputMap + }; +} +0 && 0; + +//# sourceMappingURL=generate.js.map diff --git a/node_modules/@babel/core/lib/transformation/file/generate.js.map b/node_modules/@babel/core/lib/transformation/file/generate.js.map new file mode 100644 index 0000000..d857215 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/generate.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_convertSourceMap","data","require","_generator","_mergeMap","generateCode","pluginPasses","file","opts","ast","code","inputMap","generatorOpts","inputSourceMap","toObject","results","plugins","plugin","generatorOverride","result","generate","undefined","push","length","then","Error","outputCode","decodedMap","outputMap","map","__mergedMap","Object","assign","mergeSourceMap","sourceFileName","sourceMaps","convertSourceMap","fromObject","toComment"],"sources":["../../../src/transformation/file/generate.ts"],"sourcesContent":["import type { PluginPasses } from \"../../config/index.ts\";\nimport convertSourceMap from \"convert-source-map\";\nimport type { GeneratorResult } from \"@babel/generator\";\nimport generate from \"@babel/generator\";\n\nimport type File from \"./file.ts\";\nimport mergeSourceMap from \"./merge-map.ts\";\n\nexport default function generateCode(\n pluginPasses: PluginPasses,\n file: File,\n): {\n outputCode: string;\n outputMap: GeneratorResult[\"map\"] | null;\n} {\n const { opts, ast, code, inputMap } = file;\n const { generatorOpts } = opts;\n\n generatorOpts.inputSourceMap = inputMap?.toObject();\n\n const results = [];\n for (const plugins of pluginPasses) {\n for (const plugin of plugins) {\n const { generatorOverride } = plugin;\n if (generatorOverride) {\n const result = generatorOverride(ast, generatorOpts, code, generate);\n\n if (result !== undefined) results.push(result);\n }\n }\n }\n\n let result;\n if (results.length === 0) {\n result = generate(ast, generatorOpts, code);\n } else if (results.length === 1) {\n result = results[0];\n\n // @ts-expect-error check if generatorOverride returned a promise\n if (typeof result.then === \"function\") {\n throw new Error(\n `You appear to be using an async codegen plugin, ` +\n `which your current version of Babel does not support. ` +\n `If you're using a published plugin, ` +\n `you may need to upgrade your @babel/core version.`,\n );\n }\n } else {\n throw new Error(\"More than one plugin attempted to override codegen.\");\n }\n\n // Decoded maps are faster to merge, so we attempt to get use the decodedMap\n // first. But to preserve backwards compat with older Generator, we'll fall\n // back to the encoded map.\n let { code: outputCode, decodedMap: outputMap = result.map } = result;\n\n // @ts-expect-error For backwards compat.\n if (result.__mergedMap) {\n /**\n * @see mergeSourceMap\n */\n outputMap = { ...result.map };\n } else {\n if (outputMap) {\n if (inputMap) {\n // mergeSourceMap returns an encoded map\n outputMap = mergeSourceMap(\n inputMap.toObject(),\n outputMap,\n generatorOpts.sourceFileName,\n );\n } else {\n // We cannot output a decoded map, so retrieve the encoded form. Because\n // the decoded form is free, it's fine to prioritize decoded first.\n outputMap = result.map;\n }\n }\n }\n\n if (opts.sourceMaps === \"inline\" || opts.sourceMaps === \"both\") {\n outputCode += \"\\n\" + convertSourceMap.fromObject(outputMap).toComment();\n }\n\n if (opts.sourceMaps === \"inline\") {\n outputMap = null;\n }\n\n // @ts-expect-error outputMap must be an EncodedSourceMap or null\n return { outputCode, outputMap };\n}\n"],"mappings":";;;;;;AACA,SAAAA,kBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,iBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,IAAAG,SAAA,GAAAF,OAAA;AAEe,SAASG,YAAYA,CAClCC,YAA0B,EAC1BC,IAAU,EAIV;EACA,MAAM;IAAEC,IAAI;IAAEC,GAAG;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAGJ,IAAI;EAC1C,MAAM;IAAEK;EAAc,CAAC,GAAGJ,IAAI;EAE9BI,aAAa,CAACC,cAAc,GAAGF,QAAQ,oBAARA,QAAQ,CAAEG,QAAQ,CAAC,CAAC;EAEnD,MAAMC,OAAO,GAAG,EAAE;EAClB,KAAK,MAAMC,OAAO,IAAIV,YAAY,EAAE;IAClC,KAAK,MAAMW,MAAM,IAAID,OAAO,EAAE;MAC5B,MAAM;QAAEE;MAAkB,CAAC,GAAGD,MAAM;MACpC,IAAIC,iBAAiB,EAAE;QACrB,MAAMC,MAAM,GAAGD,iBAAiB,CAACT,GAAG,EAAEG,aAAa,EAAEF,IAAI,EAAEU,oBAAQ,CAAC;QAEpE,IAAID,MAAM,KAAKE,SAAS,EAAEN,OAAO,CAACO,IAAI,CAACH,MAAM,CAAC;MAChD;IACF;EACF;EAEA,IAAIA,MAAM;EACV,IAAIJ,OAAO,CAACQ,MAAM,KAAK,CAAC,EAAE;IACxBJ,MAAM,GAAG,IAAAC,oBAAQ,EAACX,GAAG,EAAEG,aAAa,EAAEF,IAAI,CAAC;EAC7C,CAAC,MAAM,IAAIK,OAAO,CAACQ,MAAM,KAAK,CAAC,EAAE;IAC/BJ,MAAM,GAAGJ,OAAO,CAAC,CAAC,CAAC;IAGnB,IAAI,OAAOI,MAAM,CAACK,IAAI,KAAK,UAAU,EAAE;MACrC,MAAM,IAAIC,KAAK,CACb,kDAAkD,GAChD,wDAAwD,GACxD,sCAAsC,GACtC,mDACJ,CAAC;IACH;EACF,CAAC,MAAM;IACL,MAAM,IAAIA,KAAK,CAAC,qDAAqD,CAAC;EACxE;EAKA,IAAI;IAAEf,IAAI,EAAEgB,UAAU;IAAEC,UAAU,EAAEC,SAAS,GAAGT,MAAM,CAACU;EAAI,CAAC,GAAGV,MAAM;EAGrE,IAAIA,MAAM,CAACW,WAAW,EAAE;IAItBF,SAAS,GAAAG,MAAA,CAAAC,MAAA,KAAQb,MAAM,CAACU,GAAG,CAAE;EAC/B,CAAC,MAAM;IACL,IAAID,SAAS,EAAE;MACb,IAAIjB,QAAQ,EAAE;QAEZiB,SAAS,GAAG,IAAAK,iBAAc,EACxBtB,QAAQ,CAACG,QAAQ,CAAC,CAAC,EACnBc,SAAS,EACThB,aAAa,CAACsB,cAChB,CAAC;MACH,CAAC,MAAM;QAGLN,SAAS,GAAGT,MAAM,CAACU,GAAG;MACxB;IACF;EACF;EAEA,IAAIrB,IAAI,CAAC2B,UAAU,KAAK,QAAQ,IAAI3B,IAAI,CAAC2B,UAAU,KAAK,MAAM,EAAE;IAC9DT,UAAU,IAAI,IAAI,GAAGU,kBAAeA,CAAC,CAACC,UAAU,CAACT,SAAS,CAAC,CAACU,SAAS,CAAC,CAAC;EACzE;EAEA,IAAI9B,IAAI,CAAC2B,UAAU,KAAK,QAAQ,EAAE;IAChCP,SAAS,GAAG,IAAI;EAClB;EAGA,OAAO;IAAEF,UAAU;IAAEE;EAAU,CAAC;AAClC;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/file/merge-map.js b/node_modules/@babel/core/lib/transformation/file/merge-map.js new file mode 100644 index 0000000..1b60d5c --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/merge-map.js @@ -0,0 +1,37 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = mergeSourceMap; +function _remapping() { + const data = require("@jridgewell/remapping"); + _remapping = function () { + return data; + }; + return data; +} +function mergeSourceMap(inputMap, map, sourceFileName) { + const source = sourceFileName.replace(/\\/g, "/"); + let found = false; + const result = _remapping()(rootless(map), (s, ctx) => { + if (s === source && !found) { + found = true; + ctx.source = ""; + return rootless(inputMap); + } + return null; + }); + if (typeof inputMap.sourceRoot === "string") { + result.sourceRoot = inputMap.sourceRoot; + } + return Object.assign({}, result); +} +function rootless(map) { + return Object.assign({}, map, { + sourceRoot: null + }); +} +0 && 0; + +//# sourceMappingURL=merge-map.js.map diff --git a/node_modules/@babel/core/lib/transformation/file/merge-map.js.map b/node_modules/@babel/core/lib/transformation/file/merge-map.js.map new file mode 100644 index 0000000..5afc533 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/file/merge-map.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_remapping","data","require","mergeSourceMap","inputMap","map","sourceFileName","source","replace","found","result","remapping","rootless","s","ctx","sourceRoot","Object","assign"],"sources":["../../../src/transformation/file/merge-map.ts"],"sourcesContent":["type SourceMap = any;\nimport remapping from \"@jridgewell/remapping\";\n\nexport default function mergeSourceMap(\n inputMap: SourceMap,\n map: SourceMap,\n sourceFileName: string,\n): SourceMap {\n // On win32 machines, the sourceFileName uses backslash paths like\n // `C:\\foo\\bar.js`. But sourcemaps are always posix paths, so we need to\n // normalize to regular slashes before we can merge (else we won't find the\n // source associated with our input map).\n // This mirrors code done while generating the output map at\n // https://github.com/babel/babel/blob/5c2fcadc9ae34fd20dd72b1111d5cf50476d700d/packages/babel-generator/src/source-map.ts#L102\n const source = sourceFileName.replace(/\\\\/g, \"/\");\n\n // Prevent an infinite recursion if one of the input map's sources has the\n // same resolved path as the input map. In the case, it would keep find the\n // input map, then get it's sources which will include a path like the input\n // map, on and on.\n let found = false;\n const result = remapping(rootless(map), (s, ctx) => {\n if (s === source && !found) {\n found = true;\n // We empty the source location, which will prevent the sourcemap from\n // becoming relative to the input's location. Eg, if we're transforming a\n // file 'foo/bar.js', and it is a transformation of a `baz.js` file in the\n // same directory, the expected output is just `baz.js`. Without this step,\n // it would become `foo/baz.js`.\n ctx.source = \"\";\n\n return rootless(inputMap);\n }\n\n return null;\n });\n\n if (typeof inputMap.sourceRoot === \"string\") {\n result.sourceRoot = inputMap.sourceRoot;\n }\n\n // remapping returns a SourceMap class type, but this breaks code downstream in\n // @babel/traverse and @babel/types that relies on data being plain objects.\n // When it encounters the sourcemap type it outputs a \"don't know how to turn\n // this value into a node\" error. As a result, we are converting the merged\n // sourcemap to a plain js object.\n return { ...result };\n}\n\nfunction rootless(map: SourceMap): SourceMap {\n return {\n ...map,\n\n // This is a bit hack. Remapping will create absolute sources in our\n // sourcemap, but we want to maintain sources relative to the sourceRoot.\n // We'll re-add the sourceRoot after remapping.\n sourceRoot: null,\n };\n}\n"],"mappings":";;;;;;AACA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEe,SAASE,cAAcA,CACpCC,QAAmB,EACnBC,GAAc,EACdC,cAAsB,EACX;EAOX,MAAMC,MAAM,GAAGD,cAAc,CAACE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;EAMjD,IAAIC,KAAK,GAAG,KAAK;EACjB,MAAMC,MAAM,GAAGC,WAAQA,CAAC,CAACC,QAAQ,CAACP,GAAG,CAAC,EAAE,CAACQ,CAAC,EAAEC,GAAG,KAAK;IAClD,IAAID,CAAC,KAAKN,MAAM,IAAI,CAACE,KAAK,EAAE;MAC1BA,KAAK,GAAG,IAAI;MAMZK,GAAG,CAACP,MAAM,GAAG,EAAE;MAEf,OAAOK,QAAQ,CAACR,QAAQ,CAAC;IAC3B;IAEA,OAAO,IAAI;EACb,CAAC,CAAC;EAEF,IAAI,OAAOA,QAAQ,CAACW,UAAU,KAAK,QAAQ,EAAE;IAC3CL,MAAM,CAACK,UAAU,GAAGX,QAAQ,CAACW,UAAU;EACzC;EAOA,OAAAC,MAAA,CAAAC,MAAA,KAAYP,MAAM;AACpB;AAEA,SAASE,QAAQA,CAACP,GAAc,EAAa;EAC3C,OAAAW,MAAA,CAAAC,MAAA,KACKZ,GAAG;IAKNU,UAAU,EAAE;EAAI;AAEpB;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/index.js b/node_modules/@babel/core/lib/transformation/index.js new file mode 100644 index 0000000..3e4f5a5 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/index.js @@ -0,0 +1,90 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.run = run; +function _traverse() { + const data = require("@babel/traverse"); + _traverse = function () { + return data; + }; + return data; +} +var _pluginPass = require("./plugin-pass.js"); +var _blockHoistPlugin = require("./block-hoist-plugin.js"); +var _normalizeOpts = require("./normalize-opts.js"); +var _normalizeFile = require("./normalize-file.js"); +var _generate = require("./file/generate.js"); +var _deepArray = require("../config/helpers/deep-array.js"); +var _async = require("../gensync-utils/async.js"); +function* run(config, code, ast) { + const file = yield* (0, _normalizeFile.default)(config.passes, (0, _normalizeOpts.default)(config), code, ast); + const opts = file.opts; + try { + yield* transformFile(file, config.passes); + } catch (e) { + var _opts$filename; + e.message = `${(_opts$filename = opts.filename) != null ? _opts$filename : "unknown file"}: ${e.message}`; + if (!e.code) { + e.code = "BABEL_TRANSFORM_ERROR"; + } + throw e; + } + let outputCode, outputMap; + try { + if (opts.code !== false) { + ({ + outputCode, + outputMap + } = (0, _generate.default)(config.passes, file)); + } + } catch (e) { + var _opts$filename2; + e.message = `${(_opts$filename2 = opts.filename) != null ? _opts$filename2 : "unknown file"}: ${e.message}`; + if (!e.code) { + e.code = "BABEL_GENERATE_ERROR"; + } + throw e; + } + return { + metadata: file.metadata, + options: opts, + ast: opts.ast === true ? file.ast : null, + code: outputCode === undefined ? null : outputCode, + map: outputMap === undefined ? null : outputMap, + sourceType: file.ast.program.sourceType, + externalDependencies: (0, _deepArray.flattenToSet)(config.externalDependencies) + }; +} +function* transformFile(file, pluginPasses) { + const async = yield* (0, _async.isAsync)(); + for (const pluginPairs of pluginPasses) { + const passPairs = []; + const passes = []; + const visitors = []; + for (const plugin of pluginPairs.concat([(0, _blockHoistPlugin.default)()])) { + const pass = new _pluginPass.default(file, plugin.key, plugin.options, async); + passPairs.push([plugin, pass]); + passes.push(pass); + visitors.push(plugin.visitor); + } + for (const [plugin, pass] of passPairs) { + if (plugin.pre) { + const fn = (0, _async.maybeAsync)(plugin.pre, `You appear to be using an async plugin/preset, but Babel has been called synchronously`); + yield* fn.call(pass, file); + } + } + const visitor = _traverse().default.visitors.merge(visitors, passes, file.opts.wrapPluginVisitorMethod); + (0, _traverse().default)(file.ast, visitor, file.scope); + for (const [plugin, pass] of passPairs) { + if (plugin.post) { + const fn = (0, _async.maybeAsync)(plugin.post, `You appear to be using an async plugin/preset, but Babel has been called synchronously`); + yield* fn.call(pass, file); + } + } + } +} +0 && 0; + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/core/lib/transformation/index.js.map b/node_modules/@babel/core/lib/transformation/index.js.map new file mode 100644 index 0000000..9f816e0 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_traverse","data","require","_pluginPass","_blockHoistPlugin","_normalizeOpts","_normalizeFile","_generate","_deepArray","_async","run","config","code","ast","file","normalizeFile","passes","normalizeOptions","opts","transformFile","e","_opts$filename","message","filename","outputCode","outputMap","generateCode","_opts$filename2","metadata","options","undefined","map","sourceType","program","externalDependencies","flattenToSet","pluginPasses","async","isAsync","pluginPairs","passPairs","visitors","plugin","concat","loadBlockHoistPlugin","pass","PluginPass","key","push","visitor","pre","fn","maybeAsync","call","traverse","merge","wrapPluginVisitorMethod","scope","post"],"sources":["../../src/transformation/index.ts"],"sourcesContent":["import traverse from \"@babel/traverse\";\nimport type * as t from \"@babel/types\";\nimport type { GeneratorResult } from \"@babel/generator\";\n\nimport type { Handler } from \"gensync\";\n\nimport type { ResolvedConfig, Plugin, PluginPasses } from \"../config/index.ts\";\n\nimport PluginPass from \"./plugin-pass.ts\";\nimport loadBlockHoistPlugin from \"./block-hoist-plugin.ts\";\nimport normalizeOptions from \"./normalize-opts.ts\";\nimport normalizeFile from \"./normalize-file.ts\";\n\nimport generateCode from \"./file/generate.ts\";\nimport type File from \"./file/file.ts\";\n\nimport { flattenToSet } from \"../config/helpers/deep-array.ts\";\nimport { isAsync, maybeAsync } from \"../gensync-utils/async.ts\";\nimport type { SourceTypeOption } from \"../config/validation/options.ts\";\n\nexport type FileResultCallback = {\n (err: Error, file: null): void;\n (err: null, file: FileResult | null): void;\n};\n\nexport type FileResult = {\n metadata: Record;\n options: Record;\n ast: t.File | null;\n code: string | null;\n map: GeneratorResult[\"map\"];\n sourceType: Exclude;\n externalDependencies: Set;\n};\n\nexport function* run(\n config: ResolvedConfig,\n code: string,\n ast?: t.File | t.Program | null,\n): Handler {\n const file = yield* normalizeFile(\n config.passes,\n normalizeOptions(config),\n code,\n ast,\n );\n\n const opts = file.opts;\n try {\n yield* transformFile(file, config.passes);\n } catch (e) {\n e.message = `${opts.filename ?? \"unknown file\"}: ${e.message}`;\n if (!e.code) {\n e.code = \"BABEL_TRANSFORM_ERROR\";\n }\n throw e;\n }\n\n let outputCode, outputMap;\n try {\n if (opts.code !== false) {\n ({ outputCode, outputMap } = generateCode(config.passes, file));\n }\n } catch (e) {\n e.message = `${opts.filename ?? \"unknown file\"}: ${e.message}`;\n if (!e.code) {\n e.code = \"BABEL_GENERATE_ERROR\";\n }\n throw e;\n }\n\n return {\n metadata: file.metadata,\n options: opts,\n ast: opts.ast === true ? file.ast : null,\n code: outputCode === undefined ? null : outputCode,\n map: outputMap === undefined ? null : outputMap,\n sourceType: file.ast.program.sourceType,\n externalDependencies: flattenToSet(config.externalDependencies),\n };\n}\n\nfunction* transformFile(file: File, pluginPasses: PluginPasses): Handler {\n const async = yield* isAsync();\n\n for (const pluginPairs of pluginPasses) {\n const passPairs: [Plugin, PluginPass][] = [];\n const passes = [];\n const visitors = [];\n\n for (const plugin of pluginPairs.concat([loadBlockHoistPlugin()])) {\n const pass = new PluginPass(file, plugin.key, plugin.options, async);\n\n passPairs.push([plugin, pass]);\n passes.push(pass);\n visitors.push(plugin.visitor);\n }\n\n for (const [plugin, pass] of passPairs) {\n if (plugin.pre) {\n const fn = maybeAsync(\n plugin.pre,\n `You appear to be using an async plugin/preset, but Babel has been called synchronously`,\n );\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n yield* fn.call(pass, file);\n }\n }\n\n // merge all plugin visitors into a single visitor\n const visitor = traverse.visitors.merge(\n visitors,\n passes,\n file.opts.wrapPluginVisitorMethod,\n );\n if (process.env.BABEL_8_BREAKING) {\n traverse(file.ast.program, visitor, file.scope, null, file.path, true);\n } else {\n traverse(file.ast, visitor, file.scope);\n }\n\n for (const [plugin, pass] of passPairs) {\n if (plugin.post) {\n const fn = maybeAsync(\n plugin.post,\n `You appear to be using an async plugin/preset, but Babel has been called synchronously`,\n );\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n yield* fn.call(pass, file);\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/normalize-file.js b/node_modules/@babel/core/lib/transformation/normalize-file.js new file mode 100644 index 0000000..ba13031 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/normalize-file.js @@ -0,0 +1,127 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = normalizeFile; +function _fs() { + const data = require("fs"); + _fs = function () { + return data; + }; + return data; +} +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _debug() { + const data = require("debug"); + _debug = function () { + return data; + }; + return data; +} +function _t() { + const data = require("@babel/types"); + _t = function () { + return data; + }; + return data; +} +function _convertSourceMap() { + const data = require("convert-source-map"); + _convertSourceMap = function () { + return data; + }; + return data; +} +var _file = require("./file/file.js"); +var _index = require("../parser/index.js"); +var _cloneDeep = require("./util/clone-deep.js"); +const { + file, + traverseFast +} = _t(); +const debug = _debug()("babel:transform:file"); +const INLINE_SOURCEMAP_REGEX = /^[@#]\s+sourceMappingURL=data:(?:application|text)\/json;(?:charset[:=]\S+?;)?base64,.*$/; +const EXTERNAL_SOURCEMAP_REGEX = /^[@#][ \t]+sourceMappingURL=([^\s'"`]+)[ \t]*$/; +function* normalizeFile(pluginPasses, options, code, ast) { + code = `${code || ""}`; + if (ast) { + if (ast.type === "Program") { + ast = file(ast, [], []); + } else if (ast.type !== "File") { + throw new Error("AST root must be a Program or File node"); + } + if (options.cloneInputAst) { + ast = (0, _cloneDeep.default)(ast); + } + } else { + ast = yield* (0, _index.default)(pluginPasses, options, code); + } + let inputMap = null; + if (options.inputSourceMap !== false) { + if (typeof options.inputSourceMap === "object") { + inputMap = _convertSourceMap().fromObject(options.inputSourceMap); + } + if (!inputMap) { + const lastComment = extractComments(INLINE_SOURCEMAP_REGEX, ast); + if (lastComment) { + try { + inputMap = _convertSourceMap().fromComment("//" + lastComment); + } catch (err) { + debug("discarding unknown inline input sourcemap"); + } + } + } + if (!inputMap) { + const lastComment = extractComments(EXTERNAL_SOURCEMAP_REGEX, ast); + if (typeof options.filename === "string" && lastComment) { + try { + const match = EXTERNAL_SOURCEMAP_REGEX.exec(lastComment); + const inputMapContent = _fs().readFileSync(_path().resolve(_path().dirname(options.filename), match[1]), "utf8"); + inputMap = _convertSourceMap().fromJSON(inputMapContent); + } catch (err) { + debug("discarding unknown file input sourcemap", err); + } + } else if (lastComment) { + debug("discarding un-loadable file input sourcemap"); + } + } + } + return new _file.default(options, { + code, + ast: ast, + inputMap + }); +} +function extractCommentsFromList(regex, comments, lastComment) { + if (comments) { + comments = comments.filter(({ + value + }) => { + if (regex.test(value)) { + lastComment = value; + return false; + } + return true; + }); + } + return [comments, lastComment]; +} +function extractComments(regex, ast) { + let lastComment = null; + traverseFast(ast, node => { + [node.leadingComments, lastComment] = extractCommentsFromList(regex, node.leadingComments, lastComment); + [node.innerComments, lastComment] = extractCommentsFromList(regex, node.innerComments, lastComment); + [node.trailingComments, lastComment] = extractCommentsFromList(regex, node.trailingComments, lastComment); + }); + return lastComment; +} +0 && 0; + +//# sourceMappingURL=normalize-file.js.map diff --git a/node_modules/@babel/core/lib/transformation/normalize-file.js.map b/node_modules/@babel/core/lib/transformation/normalize-file.js.map new file mode 100644 index 0000000..63f7d5e --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/normalize-file.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_fs","data","require","_path","_debug","_t","_convertSourceMap","_file","_index","_cloneDeep","file","traverseFast","debug","buildDebug","INLINE_SOURCEMAP_REGEX","EXTERNAL_SOURCEMAP_REGEX","normalizeFile","pluginPasses","options","code","ast","type","Error","cloneInputAst","cloneDeep","parser","inputMap","inputSourceMap","convertSourceMap","fromObject","lastComment","extractComments","fromComment","err","filename","match","exec","inputMapContent","fs","readFileSync","path","resolve","dirname","fromJSON","File","extractCommentsFromList","regex","comments","filter","value","test","node","leadingComments","innerComments","trailingComments"],"sources":["../../src/transformation/normalize-file.ts"],"sourcesContent":["import fs from \"node:fs\";\nimport path from \"node:path\";\nimport buildDebug from \"debug\";\nimport type { Handler } from \"gensync\";\nimport { file, traverseFast } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport type { PluginPasses } from \"../config/index.ts\";\nimport convertSourceMap from \"convert-source-map\";\nimport type { SourceMapConverter as Converter } from \"convert-source-map\";\nimport File from \"./file/file.ts\";\nimport parser from \"../parser/index.ts\";\nimport cloneDeep from \"./util/clone-deep.ts\";\nimport type { ResolvedOptions } from \"../config/validation/options.ts\";\n\nconst debug = buildDebug(\"babel:transform:file\");\n\n// These regexps are copied from the convert-source-map package,\n// but without // or /* at the beginning of the comment.\n\nconst INLINE_SOURCEMAP_REGEX =\n /^[@#]\\s+sourceMappingURL=data:(?:application|text)\\/json;(?:charset[:=]\\S+?;)?base64,.*$/;\nconst EXTERNAL_SOURCEMAP_REGEX =\n /^[@#][ \\t]+sourceMappingURL=([^\\s'\"`]+)[ \\t]*$/;\n\nexport type NormalizedFile = {\n code: string;\n ast: t.File;\n inputMap: Converter | null;\n};\n\nexport default function* normalizeFile(\n pluginPasses: PluginPasses,\n options: ResolvedOptions,\n code: string,\n ast?: t.File | t.Program | null,\n): Handler {\n code = `${code || \"\"}`;\n\n if (ast) {\n if (ast.type === \"Program\") {\n ast = file(ast, [], []);\n } else if (ast.type !== \"File\") {\n throw new Error(\"AST root must be a Program or File node\");\n }\n\n if (options.cloneInputAst) {\n ast = cloneDeep(ast);\n }\n } else {\n ast = yield* parser(pluginPasses, options, code);\n }\n\n let inputMap = null;\n if (options.inputSourceMap !== false) {\n // If an explicit object is passed in, it overrides the processing of\n // source maps that may be in the file itself.\n if (typeof options.inputSourceMap === \"object\") {\n inputMap = convertSourceMap.fromObject(options.inputSourceMap);\n }\n\n if (!inputMap) {\n const lastComment = extractComments(INLINE_SOURCEMAP_REGEX, ast);\n if (lastComment) {\n try {\n inputMap = convertSourceMap.fromComment(\"//\" + lastComment);\n } catch (err) {\n if (process.env.BABEL_8_BREAKING) {\n console.warn(\n \"discarding unknown inline input sourcemap\",\n options.filename,\n err,\n );\n } else {\n debug(\"discarding unknown inline input sourcemap\");\n }\n }\n }\n }\n\n if (!inputMap) {\n const lastComment = extractComments(EXTERNAL_SOURCEMAP_REGEX, ast);\n if (typeof options.filename === \"string\" && lastComment) {\n try {\n // when `lastComment` is non-null, EXTERNAL_SOURCEMAP_REGEX must have matches\n const match: [string, string] = EXTERNAL_SOURCEMAP_REGEX.exec(\n lastComment,\n ) as any;\n const inputMapContent = fs.readFileSync(\n path.resolve(path.dirname(options.filename), match[1]),\n \"utf8\",\n );\n inputMap = convertSourceMap.fromJSON(inputMapContent);\n } catch (err) {\n debug(\"discarding unknown file input sourcemap\", err);\n }\n } else if (lastComment) {\n debug(\"discarding un-loadable file input sourcemap\");\n }\n }\n }\n\n return new File(options, {\n code,\n ast: ast,\n inputMap,\n });\n}\n\nfunction extractCommentsFromList(\n regex: RegExp,\n comments: t.Comment[],\n lastComment: string | null,\n): [t.Comment[], string | null] {\n if (comments) {\n comments = comments.filter(({ value }) => {\n if (regex.test(value)) {\n lastComment = value;\n return false;\n }\n return true;\n });\n }\n return [comments, lastComment];\n}\n\nfunction extractComments(regex: RegExp, ast: t.Node) {\n let lastComment: string = null;\n traverseFast(ast, node => {\n [node.leadingComments, lastComment] = extractCommentsFromList(\n regex,\n node.leadingComments,\n lastComment,\n );\n [node.innerComments, lastComment] = extractCommentsFromList(\n regex,\n node.innerComments,\n lastComment,\n );\n [node.trailingComments, lastComment] = extractCommentsFromList(\n regex,\n node.trailingComments,\n lastComment,\n );\n });\n return lastComment;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/normalize-opts.js b/node_modules/@babel/core/lib/transformation/normalize-opts.js new file mode 100644 index 0000000..c4d9d8b --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/normalize-opts.js @@ -0,0 +1,59 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = normalizeOptions; +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function normalizeOptions(config) { + const { + filename, + cwd, + filenameRelative = typeof filename === "string" ? _path().relative(cwd, filename) : "unknown", + sourceType = "module", + inputSourceMap, + sourceMaps = !!inputSourceMap, + sourceRoot = config.options.moduleRoot, + sourceFileName = _path().basename(filenameRelative), + comments = true, + compact = "auto" + } = config.options; + const opts = config.options; + const options = Object.assign({}, opts, { + parserOpts: Object.assign({ + sourceType: _path().extname(filenameRelative) === ".mjs" ? "module" : sourceType, + sourceFileName: filename, + plugins: [] + }, opts.parserOpts), + generatorOpts: Object.assign({ + filename, + auxiliaryCommentBefore: opts.auxiliaryCommentBefore, + auxiliaryCommentAfter: opts.auxiliaryCommentAfter, + retainLines: opts.retainLines, + comments, + shouldPrintComment: opts.shouldPrintComment, + compact, + minified: opts.minified, + sourceMaps: !!sourceMaps, + sourceRoot, + sourceFileName + }, opts.generatorOpts) + }); + for (const plugins of config.passes) { + for (const plugin of plugins) { + if (plugin.manipulateOptions) { + plugin.manipulateOptions(options, options.parserOpts); + } + } + } + return options; +} +0 && 0; + +//# sourceMappingURL=normalize-opts.js.map diff --git a/node_modules/@babel/core/lib/transformation/normalize-opts.js.map b/node_modules/@babel/core/lib/transformation/normalize-opts.js.map new file mode 100644 index 0000000..1439fa9 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/normalize-opts.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_path","data","require","normalizeOptions","config","filename","cwd","filenameRelative","path","relative","sourceType","inputSourceMap","sourceMaps","sourceRoot","options","moduleRoot","sourceFileName","basename","comments","compact","opts","Object","assign","parserOpts","extname","plugins","generatorOpts","auxiliaryCommentBefore","auxiliaryCommentAfter","retainLines","shouldPrintComment","minified","passes","plugin","manipulateOptions"],"sources":["../../src/transformation/normalize-opts.ts"],"sourcesContent":["import path from \"node:path\";\nimport type { ResolvedConfig } from \"../config/index.ts\";\nimport type { ResolvedOptions } from \"../config/validation/options.ts\";\n\nexport default function normalizeOptions(\n config: ResolvedConfig,\n): ResolvedOptions {\n const {\n filename,\n cwd,\n filenameRelative = typeof filename === \"string\"\n ? path.relative(cwd, filename)\n : \"unknown\",\n sourceType = \"module\",\n inputSourceMap,\n sourceMaps = !!inputSourceMap,\n sourceRoot = process.env.BABEL_8_BREAKING\n ? undefined\n : // @ts-ignore(Babel 7 vs Babel 8) moduleRoot is a Babel 7 option\n config.options.moduleRoot,\n\n sourceFileName = path.basename(filenameRelative),\n\n comments = true,\n compact = \"auto\",\n } = config.options;\n\n const opts = config.options;\n\n const options: ResolvedOptions = {\n ...opts,\n\n parserOpts: {\n sourceType:\n path.extname(filenameRelative) === \".mjs\" ? \"module\" : sourceType,\n\n // @ts-expect-error We should have passed `sourceFilename` here\n // pending https://github.com/babel/babel/issues/15917#issuecomment-2789278964\n sourceFileName: filename,\n plugins: [],\n ...opts.parserOpts,\n },\n\n generatorOpts: {\n // General generator flags.\n filename,\n\n auxiliaryCommentBefore: opts.auxiliaryCommentBefore,\n auxiliaryCommentAfter: opts.auxiliaryCommentAfter,\n retainLines: opts.retainLines,\n comments,\n shouldPrintComment: opts.shouldPrintComment,\n compact,\n minified: opts.minified,\n\n // Source-map generation flags.\n // babel-generator does not differentiate between `true`, `\"inline\"` or `\"both\"`\n sourceMaps: !!sourceMaps,\n sourceRoot,\n sourceFileName,\n\n ...opts.generatorOpts,\n },\n };\n\n for (const plugins of config.passes) {\n for (const plugin of plugins) {\n if (plugin.manipulateOptions) {\n plugin.manipulateOptions(options, options.parserOpts);\n }\n }\n }\n\n return options;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIe,SAASE,gBAAgBA,CACtCC,MAAsB,EACL;EACjB,MAAM;IACJC,QAAQ;IACRC,GAAG;IACHC,gBAAgB,GAAG,OAAOF,QAAQ,KAAK,QAAQ,GAC3CG,MAAGA,CAAC,CAACC,QAAQ,CAACH,GAAG,EAAED,QAAQ,CAAC,GAC5B,SAAS;IACbK,UAAU,GAAG,QAAQ;IACrBC,cAAc;IACdC,UAAU,GAAG,CAAC,CAACD,cAAc;IAC7BE,UAAU,GAGNT,MAAM,CAACU,OAAO,CAACC,UAAU;IAE7BC,cAAc,GAAGR,MAAGA,CAAC,CAACS,QAAQ,CAACV,gBAAgB,CAAC;IAEhDW,QAAQ,GAAG,IAAI;IACfC,OAAO,GAAG;EACZ,CAAC,GAAGf,MAAM,CAACU,OAAO;EAElB,MAAMM,IAAI,GAAGhB,MAAM,CAACU,OAAO;EAE3B,MAAMA,OAAwB,GAAAO,MAAA,CAAAC,MAAA,KACzBF,IAAI;IAEPG,UAAU,EAAAF,MAAA,CAAAC,MAAA;MACRZ,UAAU,EACRF,MAAGA,CAAC,CAACgB,OAAO,CAACjB,gBAAgB,CAAC,KAAK,MAAM,GAAG,QAAQ,GAAGG,UAAU;MAInEM,cAAc,EAAEX,QAAQ;MACxBoB,OAAO,EAAE;IAAE,GACRL,IAAI,CAACG,UAAU,CACnB;IAEDG,aAAa,EAAAL,MAAA,CAAAC,MAAA;MAEXjB,QAAQ;MAERsB,sBAAsB,EAAEP,IAAI,CAACO,sBAAsB;MACnDC,qBAAqB,EAAER,IAAI,CAACQ,qBAAqB;MACjDC,WAAW,EAAET,IAAI,CAACS,WAAW;MAC7BX,QAAQ;MACRY,kBAAkB,EAAEV,IAAI,CAACU,kBAAkB;MAC3CX,OAAO;MACPY,QAAQ,EAAEX,IAAI,CAACW,QAAQ;MAIvBnB,UAAU,EAAE,CAAC,CAACA,UAAU;MACxBC,UAAU;MACVG;IAAc,GAEXI,IAAI,CAACM,aAAa;EACtB,EACF;EAED,KAAK,MAAMD,OAAO,IAAIrB,MAAM,CAAC4B,MAAM,EAAE;IACnC,KAAK,MAAMC,MAAM,IAAIR,OAAO,EAAE;MAC5B,IAAIQ,MAAM,CAACC,iBAAiB,EAAE;QAC5BD,MAAM,CAACC,iBAAiB,CAACpB,OAAO,EAAEA,OAAO,CAACS,UAAU,CAAC;MACvD;IACF;EACF;EAEA,OAAOT,OAAO;AAChB;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/plugin-pass.js b/node_modules/@babel/core/lib/transformation/plugin-pass.js new file mode 100644 index 0000000..1b91307 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/plugin-pass.js @@ -0,0 +1,48 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +class PluginPass { + constructor(file, key, options, isAsync) { + this._map = new Map(); + this.key = void 0; + this.file = void 0; + this.opts = void 0; + this.cwd = void 0; + this.filename = void 0; + this.isAsync = void 0; + this.key = key; + this.file = file; + this.opts = options || {}; + this.cwd = file.opts.cwd; + this.filename = file.opts.filename; + this.isAsync = isAsync; + } + set(key, val) { + this._map.set(key, val); + } + get(key) { + return this._map.get(key); + } + availableHelper(name, versionRange) { + return this.file.availableHelper(name, versionRange); + } + addHelper(name) { + return this.file.addHelper(name); + } + buildCodeFrameError(node, msg, _Error) { + return this.file.buildCodeFrameError(node, msg, _Error); + } +} +exports.default = PluginPass; +PluginPass.prototype.getModuleName = function getModuleName() { + return this.file.getModuleName(); +}; +PluginPass.prototype.addImport = function addImport() { + this.file.addImport(); +}; +0 && 0; + +//# sourceMappingURL=plugin-pass.js.map diff --git a/node_modules/@babel/core/lib/transformation/plugin-pass.js.map b/node_modules/@babel/core/lib/transformation/plugin-pass.js.map new file mode 100644 index 0000000..888f99e --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/plugin-pass.js.map @@ -0,0 +1 @@ +{"version":3,"names":["PluginPass","constructor","file","key","options","isAsync","_map","Map","opts","cwd","filename","set","val","get","availableHelper","name","versionRange","addHelper","buildCodeFrameError","node","msg","_Error","exports","default","prototype","getModuleName","addImport"],"sources":["../../src/transformation/plugin-pass.ts"],"sourcesContent":["import type * as t from \"@babel/types\";\nimport type File from \"./file/file.ts\";\n\nexport default class PluginPass {\n _map = new Map();\n key: string | undefined | null;\n file: File;\n opts: Partial;\n\n /**\n * The working directory that Babel's programmatic options are loaded\n * relative to.\n */\n cwd: string;\n\n /** The absolute path of the file being compiled. */\n filename: string | void;\n\n /**\n * Is Babel executed in async mode or not.\n */\n isAsync: boolean;\n\n constructor(\n file: File,\n key: string | null,\n options: Options | undefined,\n isAsync: boolean,\n ) {\n this.key = key;\n this.file = file;\n this.opts = options || {};\n this.cwd = file.opts.cwd;\n this.filename = file.opts.filename;\n this.isAsync = isAsync;\n }\n\n set(key: unknown, val: unknown) {\n this._map.set(key, val);\n }\n\n get(key: unknown): any {\n return this._map.get(key);\n }\n\n availableHelper(name: string, versionRange?: string | null) {\n return this.file.availableHelper(name, versionRange);\n }\n\n addHelper(name: string) {\n return this.file.addHelper(name);\n }\n\n buildCodeFrameError(\n node: t.Node | undefined | null,\n msg: string,\n _Error?: typeof Error,\n ) {\n return this.file.buildCodeFrameError(node, msg, _Error);\n }\n}\n\nif (!process.env.BABEL_8_BREAKING) {\n (PluginPass as any).prototype.getModuleName = function getModuleName(\n this: PluginPass,\n ): string | undefined {\n // @ts-expect-error only exists in Babel 7\n return this.file.getModuleName();\n };\n (PluginPass as any).prototype.addImport = function addImport(\n this: PluginPass,\n ): void {\n // @ts-expect-error only exists in Babel 7\n this.file.addImport();\n };\n}\n"],"mappings":";;;;;;AAGe,MAAMA,UAAU,CAAmB;EAoBhDC,WAAWA,CACTC,IAAU,EACVC,GAAkB,EAClBC,OAA4B,EAC5BC,OAAgB,EAChB;IAAA,KAxBFC,IAAI,GAAG,IAAIC,GAAG,CAAmB,CAAC;IAAA,KAClCJ,GAAG;IAAA,KACHD,IAAI;IAAA,KACJM,IAAI;IAAA,KAMJC,GAAG;IAAA,KAGHC,QAAQ;IAAA,KAKRL,OAAO;IAQL,IAAI,CAACF,GAAG,GAAGA,GAAG;IACd,IAAI,CAACD,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACM,IAAI,GAAGJ,OAAO,IAAI,CAAC,CAAC;IACzB,IAAI,CAACK,GAAG,GAAGP,IAAI,CAACM,IAAI,CAACC,GAAG;IACxB,IAAI,CAACC,QAAQ,GAAGR,IAAI,CAACM,IAAI,CAACE,QAAQ;IAClC,IAAI,CAACL,OAAO,GAAGA,OAAO;EACxB;EAEAM,GAAGA,CAACR,GAAY,EAAES,GAAY,EAAE;IAC9B,IAAI,CAACN,IAAI,CAACK,GAAG,CAACR,GAAG,EAAES,GAAG,CAAC;EACzB;EAEAC,GAAGA,CAACV,GAAY,EAAO;IACrB,OAAO,IAAI,CAACG,IAAI,CAACO,GAAG,CAACV,GAAG,CAAC;EAC3B;EAEAW,eAAeA,CAACC,IAAY,EAAEC,YAA4B,EAAE;IAC1D,OAAO,IAAI,CAACd,IAAI,CAACY,eAAe,CAACC,IAAI,EAAEC,YAAY,CAAC;EACtD;EAEAC,SAASA,CAACF,IAAY,EAAE;IACtB,OAAO,IAAI,CAACb,IAAI,CAACe,SAAS,CAACF,IAAI,CAAC;EAClC;EAEAG,mBAAmBA,CACjBC,IAA+B,EAC/BC,GAAW,EACXC,MAAqB,EACrB;IACA,OAAO,IAAI,CAACnB,IAAI,CAACgB,mBAAmB,CAACC,IAAI,EAAEC,GAAG,EAAEC,MAAM,CAAC;EACzD;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAvB,UAAA;AAGEA,UAAU,CAASwB,SAAS,CAACC,aAAa,GAAG,SAASA,aAAaA,CAAA,EAE9C;EAEpB,OAAO,IAAI,CAACvB,IAAI,CAACuB,aAAa,CAAC,CAAC;AAClC,CAAC;AACAzB,UAAU,CAASwB,SAAS,CAACE,SAAS,GAAG,SAASA,SAASA,CAAA,EAEpD;EAEN,IAAI,CAACxB,IAAI,CAACwB,SAAS,CAAC,CAAC;AACvB,CAAC;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/transformation/util/clone-deep.js b/node_modules/@babel/core/lib/transformation/util/clone-deep.js new file mode 100644 index 0000000..a915149 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/util/clone-deep.js @@ -0,0 +1,54 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = _default; +const circleSet = new Set(); +let depth = 0; +function deepClone(value, cache, allowCircle) { + if (value !== null) { + if (allowCircle) { + if (cache.has(value)) return cache.get(value); + } else if (++depth > 250) { + if (circleSet.has(value)) { + depth = 0; + circleSet.clear(); + throw new Error("Babel-deepClone: Cycles are not allowed in AST"); + } + circleSet.add(value); + } + let cloned; + if (Array.isArray(value)) { + cloned = new Array(value.length); + if (allowCircle) cache.set(value, cloned); + for (let i = 0; i < value.length; i++) { + cloned[i] = typeof value[i] !== "object" ? value[i] : deepClone(value[i], cache, allowCircle); + } + } else { + cloned = {}; + if (allowCircle) cache.set(value, cloned); + const keys = Object.keys(value); + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + cloned[key] = typeof value[key] !== "object" ? value[key] : deepClone(value[key], cache, allowCircle || key === "leadingComments" || key === "innerComments" || key === "trailingComments" || key === "extra"); + } + } + if (!allowCircle) { + if (depth-- > 250) circleSet.delete(value); + } + return cloned; + } + return value; +} +function _default(value) { + if (typeof value !== "object") return value; + try { + return deepClone(value, new Map(), true); + } catch (_) { + return structuredClone(value); + } +} +0 && 0; + +//# sourceMappingURL=clone-deep.js.map diff --git a/node_modules/@babel/core/lib/transformation/util/clone-deep.js.map b/node_modules/@babel/core/lib/transformation/util/clone-deep.js.map new file mode 100644 index 0000000..947b6c9 --- /dev/null +++ b/node_modules/@babel/core/lib/transformation/util/clone-deep.js.map @@ -0,0 +1 @@ +{"version":3,"names":["circleSet","Set","depth","deepClone","value","cache","allowCircle","has","get","clear","Error","add","cloned","Array","isArray","length","set","i","keys","Object","key","delete","_default","Map","_","structuredClone"],"sources":["../../../src/transformation/util/clone-deep.ts"],"sourcesContent":["const circleSet = new Set();\nlet depth = 0;\n// https://github.com/babel/babel/pull/14583#discussion_r882828856\nfunction deepClone(\n value: any,\n cache: Map,\n allowCircle: boolean,\n): any {\n if (value !== null) {\n if (allowCircle) {\n if (cache.has(value)) return cache.get(value);\n } else if (++depth > 250) {\n if (circleSet.has(value)) {\n depth = 0;\n circleSet.clear();\n throw new Error(\"Babel-deepClone: Cycles are not allowed in AST\");\n }\n circleSet.add(value);\n }\n let cloned: any;\n if (Array.isArray(value)) {\n cloned = new Array(value.length);\n if (allowCircle) cache.set(value, cloned);\n for (let i = 0; i < value.length; i++) {\n cloned[i] =\n typeof value[i] !== \"object\"\n ? value[i]\n : deepClone(value[i], cache, allowCircle);\n }\n } else {\n cloned = {};\n if (allowCircle) cache.set(value, cloned);\n const keys = Object.keys(value);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n cloned[key] =\n typeof value[key] !== \"object\"\n ? value[key]\n : deepClone(\n value[key],\n cache,\n allowCircle ||\n key === \"leadingComments\" ||\n key === \"innerComments\" ||\n key === \"trailingComments\" ||\n key === \"extra\",\n );\n }\n }\n if (!allowCircle) {\n if (depth-- > 250) circleSet.delete(value);\n }\n return cloned;\n }\n return value;\n}\n\nexport default function (value: T): T {\n if (typeof value !== \"object\") return value;\n\n if (process.env.BABEL_8_BREAKING) {\n if (!process.env.IS_PUBLISH && depth > 0) {\n throw new Error(\"depth > 0\");\n }\n return deepClone(value, new Map(), false);\n } else {\n try {\n return deepClone(value, new Map(), true);\n } catch (_) {\n return structuredClone(value);\n }\n }\n}\n"],"mappings":";;;;;;AAAA,MAAMA,SAAS,GAAG,IAAIC,GAAG,CAAC,CAAC;AAC3B,IAAIC,KAAK,GAAG,CAAC;AAEb,SAASC,SAASA,CAChBC,KAAU,EACVC,KAAoB,EACpBC,WAAoB,EACf;EACL,IAAIF,KAAK,KAAK,IAAI,EAAE;IAClB,IAAIE,WAAW,EAAE;MACf,IAAID,KAAK,CAACE,GAAG,CAACH,KAAK,CAAC,EAAE,OAAOC,KAAK,CAACG,GAAG,CAACJ,KAAK,CAAC;IAC/C,CAAC,MAAM,IAAI,EAAEF,KAAK,GAAG,GAAG,EAAE;MACxB,IAAIF,SAAS,CAACO,GAAG,CAACH,KAAK,CAAC,EAAE;QACxBF,KAAK,GAAG,CAAC;QACTF,SAAS,CAACS,KAAK,CAAC,CAAC;QACjB,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;MACnE;MACAV,SAAS,CAACW,GAAG,CAACP,KAAK,CAAC;IACtB;IACA,IAAIQ,MAAW;IACf,IAAIC,KAAK,CAACC,OAAO,CAACV,KAAK,CAAC,EAAE;MACxBQ,MAAM,GAAG,IAAIC,KAAK,CAACT,KAAK,CAACW,MAAM,CAAC;MAChC,IAAIT,WAAW,EAAED,KAAK,CAACW,GAAG,CAACZ,KAAK,EAAEQ,MAAM,CAAC;MACzC,KAAK,IAAIK,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGb,KAAK,CAACW,MAAM,EAAEE,CAAC,EAAE,EAAE;QACrCL,MAAM,CAACK,CAAC,CAAC,GACP,OAAOb,KAAK,CAACa,CAAC,CAAC,KAAK,QAAQ,GACxBb,KAAK,CAACa,CAAC,CAAC,GACRd,SAAS,CAACC,KAAK,CAACa,CAAC,CAAC,EAAEZ,KAAK,EAAEC,WAAW,CAAC;MAC/C;IACF,CAAC,MAAM;MACLM,MAAM,GAAG,CAAC,CAAC;MACX,IAAIN,WAAW,EAAED,KAAK,CAACW,GAAG,CAACZ,KAAK,EAAEQ,MAAM,CAAC;MACzC,MAAMM,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACd,KAAK,CAAC;MAC/B,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGC,IAAI,CAACH,MAAM,EAAEE,CAAC,EAAE,EAAE;QACpC,MAAMG,GAAG,GAAGF,IAAI,CAACD,CAAC,CAAC;QACnBL,MAAM,CAACQ,GAAG,CAAC,GACT,OAAOhB,KAAK,CAACgB,GAAG,CAAC,KAAK,QAAQ,GAC1BhB,KAAK,CAACgB,GAAG,CAAC,GACVjB,SAAS,CACPC,KAAK,CAACgB,GAAG,CAAC,EACVf,KAAK,EACLC,WAAW,IACTc,GAAG,KAAK,iBAAiB,IACzBA,GAAG,KAAK,eAAe,IACvBA,GAAG,KAAK,kBAAkB,IAC1BA,GAAG,KAAK,OACZ,CAAC;MACT;IACF;IACA,IAAI,CAACd,WAAW,EAAE;MAChB,IAAIJ,KAAK,EAAE,GAAG,GAAG,EAAEF,SAAS,CAACqB,MAAM,CAACjB,KAAK,CAAC;IAC5C;IACA,OAAOQ,MAAM;EACf;EACA,OAAOR,KAAK;AACd;AAEe,SAAAkB,SAAalB,KAAQ,EAAK;EACvC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOA,KAAK;EAQzC,IAAI;IACF,OAAOD,SAAS,CAACC,KAAK,EAAE,IAAImB,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;EAC1C,CAAC,CAAC,OAAOC,CAAC,EAAE;IACV,OAAOC,eAAe,CAACrB,KAAK,CAAC;EAC/B;AAEJ;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/lib/vendor/import-meta-resolve.js b/node_modules/@babel/core/lib/vendor/import-meta-resolve.js new file mode 100644 index 0000000..90a5911 --- /dev/null +++ b/node_modules/@babel/core/lib/vendor/import-meta-resolve.js @@ -0,0 +1,1042 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.moduleResolve = moduleResolve; +exports.resolve = resolve; +function _assert() { + const data = require("assert"); + _assert = function () { + return data; + }; + return data; +} +function _fs() { + const data = _interopRequireWildcard(require("fs"), true); + _fs = function () { + return data; + }; + return data; +} +function _process() { + const data = require("process"); + _process = function () { + return data; + }; + return data; +} +function _url() { + const data = require("url"); + _url = function () { + return data; + }; + return data; +} +function _path() { + const data = require("path"); + _path = function () { + return data; + }; + return data; +} +function _module() { + const data = require("module"); + _module = function () { + return data; + }; + return data; +} +function _v() { + const data = require("v8"); + _v = function () { + return data; + }; + return data; +} +function _util() { + const data = require("util"); + _util = function () { + return data; + }; + return data; +} +function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); } +const own$1 = {}.hasOwnProperty; +const classRegExp = /^([A-Z][a-z\d]*)+$/; +const kTypes = new Set(['string', 'function', 'number', 'object', 'Function', 'Object', 'boolean', 'bigint', 'symbol']); +const codes = {}; +function formatList(array, type = 'and') { + return array.length < 3 ? array.join(` ${type} `) : `${array.slice(0, -1).join(', ')}, ${type} ${array[array.length - 1]}`; +} +const messages = new Map(); +const nodeInternalPrefix = '__node_internal_'; +let userStackTraceLimit; +codes.ERR_INVALID_ARG_TYPE = createError('ERR_INVALID_ARG_TYPE', (name, expected, actual) => { + _assert()(typeof name === 'string', "'name' must be a string"); + if (!Array.isArray(expected)) { + expected = [expected]; + } + let message = 'The '; + if (name.endsWith(' argument')) { + message += `${name} `; + } else { + const type = name.includes('.') ? 'property' : 'argument'; + message += `"${name}" ${type} `; + } + message += 'must be '; + const types = []; + const instances = []; + const other = []; + for (const value of expected) { + _assert()(typeof value === 'string', 'All expected entries have to be of type string'); + if (kTypes.has(value)) { + types.push(value.toLowerCase()); + } else if (classRegExp.exec(value) === null) { + _assert()(value !== 'object', 'The value "object" should be written as "Object"'); + other.push(value); + } else { + instances.push(value); + } + } + if (instances.length > 0) { + const pos = types.indexOf('object'); + if (pos !== -1) { + types.slice(pos, 1); + instances.push('Object'); + } + } + if (types.length > 0) { + message += `${types.length > 1 ? 'one of type' : 'of type'} ${formatList(types, 'or')}`; + if (instances.length > 0 || other.length > 0) message += ' or '; + } + if (instances.length > 0) { + message += `an instance of ${formatList(instances, 'or')}`; + if (other.length > 0) message += ' or '; + } + if (other.length > 0) { + if (other.length > 1) { + message += `one of ${formatList(other, 'or')}`; + } else { + if (other[0].toLowerCase() !== other[0]) message += 'an '; + message += `${other[0]}`; + } + } + message += `. Received ${determineSpecificType(actual)}`; + return message; +}, TypeError); +codes.ERR_INVALID_MODULE_SPECIFIER = createError('ERR_INVALID_MODULE_SPECIFIER', (request, reason, base = undefined) => { + return `Invalid module "${request}" ${reason}${base ? ` imported from ${base}` : ''}`; +}, TypeError); +codes.ERR_INVALID_PACKAGE_CONFIG = createError('ERR_INVALID_PACKAGE_CONFIG', (path, base, message) => { + return `Invalid package config ${path}${base ? ` while importing ${base}` : ''}${message ? `. ${message}` : ''}`; +}, Error); +codes.ERR_INVALID_PACKAGE_TARGET = createError('ERR_INVALID_PACKAGE_TARGET', (packagePath, key, target, isImport = false, base = undefined) => { + const relatedError = typeof target === 'string' && !isImport && target.length > 0 && !target.startsWith('./'); + if (key === '.') { + _assert()(isImport === false); + return `Invalid "exports" main target ${JSON.stringify(target)} defined ` + `in the package config ${packagePath}package.json${base ? ` imported from ${base}` : ''}${relatedError ? '; targets must start with "./"' : ''}`; + } + return `Invalid "${isImport ? 'imports' : 'exports'}" target ${JSON.stringify(target)} defined for '${key}' in the package config ${packagePath}package.json${base ? ` imported from ${base}` : ''}${relatedError ? '; targets must start with "./"' : ''}`; +}, Error); +codes.ERR_MODULE_NOT_FOUND = createError('ERR_MODULE_NOT_FOUND', (path, base, exactUrl = false) => { + return `Cannot find ${exactUrl ? 'module' : 'package'} '${path}' imported from ${base}`; +}, Error); +codes.ERR_NETWORK_IMPORT_DISALLOWED = createError('ERR_NETWORK_IMPORT_DISALLOWED', "import of '%s' by %s is not supported: %s", Error); +codes.ERR_PACKAGE_IMPORT_NOT_DEFINED = createError('ERR_PACKAGE_IMPORT_NOT_DEFINED', (specifier, packagePath, base) => { + return `Package import specifier "${specifier}" is not defined${packagePath ? ` in package ${packagePath}package.json` : ''} imported from ${base}`; +}, TypeError); +codes.ERR_PACKAGE_PATH_NOT_EXPORTED = createError('ERR_PACKAGE_PATH_NOT_EXPORTED', (packagePath, subpath, base = undefined) => { + if (subpath === '.') return `No "exports" main defined in ${packagePath}package.json${base ? ` imported from ${base}` : ''}`; + return `Package subpath '${subpath}' is not defined by "exports" in ${packagePath}package.json${base ? ` imported from ${base}` : ''}`; +}, Error); +codes.ERR_UNSUPPORTED_DIR_IMPORT = createError('ERR_UNSUPPORTED_DIR_IMPORT', "Directory import '%s' is not supported " + 'resolving ES modules imported from %s', Error); +codes.ERR_UNSUPPORTED_RESOLVE_REQUEST = createError('ERR_UNSUPPORTED_RESOLVE_REQUEST', 'Failed to resolve module specifier "%s" from "%s": Invalid relative URL or base scheme is not hierarchical.', TypeError); +codes.ERR_UNKNOWN_FILE_EXTENSION = createError('ERR_UNKNOWN_FILE_EXTENSION', (extension, path) => { + return `Unknown file extension "${extension}" for ${path}`; +}, TypeError); +codes.ERR_INVALID_ARG_VALUE = createError('ERR_INVALID_ARG_VALUE', (name, value, reason = 'is invalid') => { + let inspected = (0, _util().inspect)(value); + if (inspected.length > 128) { + inspected = `${inspected.slice(0, 128)}...`; + } + const type = name.includes('.') ? 'property' : 'argument'; + return `The ${type} '${name}' ${reason}. Received ${inspected}`; +}, TypeError); +function createError(sym, value, constructor) { + messages.set(sym, value); + return makeNodeErrorWithCode(constructor, sym); +} +function makeNodeErrorWithCode(Base, key) { + return NodeError; + function NodeError(...parameters) { + const limit = Error.stackTraceLimit; + if (isErrorStackTraceLimitWritable()) Error.stackTraceLimit = 0; + const error = new Base(); + if (isErrorStackTraceLimitWritable()) Error.stackTraceLimit = limit; + const message = getMessage(key, parameters, error); + Object.defineProperties(error, { + message: { + value: message, + enumerable: false, + writable: true, + configurable: true + }, + toString: { + value() { + return `${this.name} [${key}]: ${this.message}`; + }, + enumerable: false, + writable: true, + configurable: true + } + }); + captureLargerStackTrace(error); + error.code = key; + return error; + } +} +function isErrorStackTraceLimitWritable() { + try { + if (_v().startupSnapshot.isBuildingSnapshot()) { + return false; + } + } catch (_unused) {} + const desc = Object.getOwnPropertyDescriptor(Error, 'stackTraceLimit'); + if (desc === undefined) { + return Object.isExtensible(Error); + } + return own$1.call(desc, 'writable') && desc.writable !== undefined ? desc.writable : desc.set !== undefined; +} +function hideStackFrames(wrappedFunction) { + const hidden = nodeInternalPrefix + wrappedFunction.name; + Object.defineProperty(wrappedFunction, 'name', { + value: hidden + }); + return wrappedFunction; +} +const captureLargerStackTrace = hideStackFrames(function (error) { + const stackTraceLimitIsWritable = isErrorStackTraceLimitWritable(); + if (stackTraceLimitIsWritable) { + userStackTraceLimit = Error.stackTraceLimit; + Error.stackTraceLimit = Number.POSITIVE_INFINITY; + } + Error.captureStackTrace(error); + if (stackTraceLimitIsWritable) Error.stackTraceLimit = userStackTraceLimit; + return error; +}); +function getMessage(key, parameters, self) { + const message = messages.get(key); + _assert()(message !== undefined, 'expected `message` to be found'); + if (typeof message === 'function') { + _assert()(message.length <= parameters.length, `Code: ${key}; The provided arguments length (${parameters.length}) does not ` + `match the required ones (${message.length}).`); + return Reflect.apply(message, self, parameters); + } + const regex = /%[dfijoOs]/g; + let expectedLength = 0; + while (regex.exec(message) !== null) expectedLength++; + _assert()(expectedLength === parameters.length, `Code: ${key}; The provided arguments length (${parameters.length}) does not ` + `match the required ones (${expectedLength}).`); + if (parameters.length === 0) return message; + parameters.unshift(message); + return Reflect.apply(_util().format, null, parameters); +} +function determineSpecificType(value) { + if (value === null || value === undefined) { + return String(value); + } + if (typeof value === 'function' && value.name) { + return `function ${value.name}`; + } + if (typeof value === 'object') { + if (value.constructor && value.constructor.name) { + return `an instance of ${value.constructor.name}`; + } + return `${(0, _util().inspect)(value, { + depth: -1 + })}`; + } + let inspected = (0, _util().inspect)(value, { + colors: false + }); + if (inspected.length > 28) { + inspected = `${inspected.slice(0, 25)}...`; + } + return `type ${typeof value} (${inspected})`; +} +const hasOwnProperty$1 = {}.hasOwnProperty; +const { + ERR_INVALID_PACKAGE_CONFIG: ERR_INVALID_PACKAGE_CONFIG$1 +} = codes; +const cache = new Map(); +function read(jsonPath, { + base, + specifier +}) { + const existing = cache.get(jsonPath); + if (existing) { + return existing; + } + let string; + try { + string = _fs().default.readFileSync(_path().toNamespacedPath(jsonPath), 'utf8'); + } catch (error) { + const exception = error; + if (exception.code !== 'ENOENT') { + throw exception; + } + } + const result = { + exists: false, + pjsonPath: jsonPath, + main: undefined, + name: undefined, + type: 'none', + exports: undefined, + imports: undefined + }; + if (string !== undefined) { + let parsed; + try { + parsed = JSON.parse(string); + } catch (error_) { + const cause = error_; + const error = new ERR_INVALID_PACKAGE_CONFIG$1(jsonPath, (base ? `"${specifier}" from ` : '') + (0, _url().fileURLToPath)(base || specifier), cause.message); + error.cause = cause; + throw error; + } + result.exists = true; + if (hasOwnProperty$1.call(parsed, 'name') && typeof parsed.name === 'string') { + result.name = parsed.name; + } + if (hasOwnProperty$1.call(parsed, 'main') && typeof parsed.main === 'string') { + result.main = parsed.main; + } + if (hasOwnProperty$1.call(parsed, 'exports')) { + result.exports = parsed.exports; + } + if (hasOwnProperty$1.call(parsed, 'imports')) { + result.imports = parsed.imports; + } + if (hasOwnProperty$1.call(parsed, 'type') && (parsed.type === 'commonjs' || parsed.type === 'module')) { + result.type = parsed.type; + } + } + cache.set(jsonPath, result); + return result; +} +function getPackageScopeConfig(resolved) { + let packageJSONUrl = new URL('package.json', resolved); + while (true) { + const packageJSONPath = packageJSONUrl.pathname; + if (packageJSONPath.endsWith('node_modules/package.json')) { + break; + } + const packageConfig = read((0, _url().fileURLToPath)(packageJSONUrl), { + specifier: resolved + }); + if (packageConfig.exists) { + return packageConfig; + } + const lastPackageJSONUrl = packageJSONUrl; + packageJSONUrl = new URL('../package.json', packageJSONUrl); + if (packageJSONUrl.pathname === lastPackageJSONUrl.pathname) { + break; + } + } + const packageJSONPath = (0, _url().fileURLToPath)(packageJSONUrl); + return { + pjsonPath: packageJSONPath, + exists: false, + type: 'none' + }; +} +function getPackageType(url) { + return getPackageScopeConfig(url).type; +} +const { + ERR_UNKNOWN_FILE_EXTENSION +} = codes; +const hasOwnProperty = {}.hasOwnProperty; +const extensionFormatMap = { + __proto__: null, + '.cjs': 'commonjs', + '.js': 'module', + '.json': 'json', + '.mjs': 'module' +}; +function mimeToFormat(mime) { + if (mime && /\s*(text|application)\/javascript\s*(;\s*charset=utf-?8\s*)?/i.test(mime)) return 'module'; + if (mime === 'application/json') return 'json'; + return null; +} +const protocolHandlers = { + __proto__: null, + 'data:': getDataProtocolModuleFormat, + 'file:': getFileProtocolModuleFormat, + 'http:': getHttpProtocolModuleFormat, + 'https:': getHttpProtocolModuleFormat, + 'node:'() { + return 'builtin'; + } +}; +function getDataProtocolModuleFormat(parsed) { + const { + 1: mime + } = /^([^/]+\/[^;,]+)[^,]*?(;base64)?,/.exec(parsed.pathname) || [null, null, null]; + return mimeToFormat(mime); +} +function extname(url) { + const pathname = url.pathname; + let index = pathname.length; + while (index--) { + const code = pathname.codePointAt(index); + if (code === 47) { + return ''; + } + if (code === 46) { + return pathname.codePointAt(index - 1) === 47 ? '' : pathname.slice(index); + } + } + return ''; +} +function getFileProtocolModuleFormat(url, _context, ignoreErrors) { + const value = extname(url); + if (value === '.js') { + const packageType = getPackageType(url); + if (packageType !== 'none') { + return packageType; + } + return 'commonjs'; + } + if (value === '') { + const packageType = getPackageType(url); + if (packageType === 'none' || packageType === 'commonjs') { + return 'commonjs'; + } + return 'module'; + } + const format = extensionFormatMap[value]; + if (format) return format; + if (ignoreErrors) { + return undefined; + } + const filepath = (0, _url().fileURLToPath)(url); + throw new ERR_UNKNOWN_FILE_EXTENSION(value, filepath); +} +function getHttpProtocolModuleFormat() {} +function defaultGetFormatWithoutErrors(url, context) { + const protocol = url.protocol; + if (!hasOwnProperty.call(protocolHandlers, protocol)) { + return null; + } + return protocolHandlers[protocol](url, context, true) || null; +} +const { + ERR_INVALID_ARG_VALUE +} = codes; +const DEFAULT_CONDITIONS = Object.freeze(['node', 'import']); +const DEFAULT_CONDITIONS_SET = new Set(DEFAULT_CONDITIONS); +function getDefaultConditions() { + return DEFAULT_CONDITIONS; +} +function getDefaultConditionsSet() { + return DEFAULT_CONDITIONS_SET; +} +function getConditionsSet(conditions) { + if (conditions !== undefined && conditions !== getDefaultConditions()) { + if (!Array.isArray(conditions)) { + throw new ERR_INVALID_ARG_VALUE('conditions', conditions, 'expected an array'); + } + return new Set(conditions); + } + return getDefaultConditionsSet(); +} +const RegExpPrototypeSymbolReplace = RegExp.prototype[Symbol.replace]; +const { + ERR_NETWORK_IMPORT_DISALLOWED, + ERR_INVALID_MODULE_SPECIFIER, + ERR_INVALID_PACKAGE_CONFIG, + ERR_INVALID_PACKAGE_TARGET, + ERR_MODULE_NOT_FOUND, + ERR_PACKAGE_IMPORT_NOT_DEFINED, + ERR_PACKAGE_PATH_NOT_EXPORTED, + ERR_UNSUPPORTED_DIR_IMPORT, + ERR_UNSUPPORTED_RESOLVE_REQUEST +} = codes; +const own = {}.hasOwnProperty; +const invalidSegmentRegEx = /(^|\\|\/)((\.|%2e)(\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))?(\\|\/|$)/i; +const deprecatedInvalidSegmentRegEx = /(^|\\|\/)((\.|%2e)(\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))(\\|\/|$)/i; +const invalidPackageNameRegEx = /^\.|%|\\/; +const patternRegEx = /\*/g; +const encodedSeparatorRegEx = /%2f|%5c/i; +const emittedPackageWarnings = new Set(); +const doubleSlashRegEx = /[/\\]{2}/; +function emitInvalidSegmentDeprecation(target, request, match, packageJsonUrl, internal, base, isTarget) { + if (_process().noDeprecation) { + return; + } + const pjsonPath = (0, _url().fileURLToPath)(packageJsonUrl); + const double = doubleSlashRegEx.exec(isTarget ? target : request) !== null; + _process().emitWarning(`Use of deprecated ${double ? 'double slash' : 'leading or trailing slash matching'} resolving "${target}" for module ` + `request "${request}" ${request === match ? '' : `matched to "${match}" `}in the "${internal ? 'imports' : 'exports'}" field module resolution of the package at ${pjsonPath}${base ? ` imported from ${(0, _url().fileURLToPath)(base)}` : ''}.`, 'DeprecationWarning', 'DEP0166'); +} +function emitLegacyIndexDeprecation(url, packageJsonUrl, base, main) { + if (_process().noDeprecation) { + return; + } + const format = defaultGetFormatWithoutErrors(url, { + parentURL: base.href + }); + if (format !== 'module') return; + const urlPath = (0, _url().fileURLToPath)(url.href); + const packagePath = (0, _url().fileURLToPath)(new (_url().URL)('.', packageJsonUrl)); + const basePath = (0, _url().fileURLToPath)(base); + if (!main) { + _process().emitWarning(`No "main" or "exports" field defined in the package.json for ${packagePath} resolving the main entry point "${urlPath.slice(packagePath.length)}", imported from ${basePath}.\nDefault "index" lookups for the main are deprecated for ES modules.`, 'DeprecationWarning', 'DEP0151'); + } else if (_path().resolve(packagePath, main) !== urlPath) { + _process().emitWarning(`Package ${packagePath} has a "main" field set to "${main}", ` + `excluding the full filename and extension to the resolved file at "${urlPath.slice(packagePath.length)}", imported from ${basePath}.\n Automatic extension resolution of the "main" field is ` + 'deprecated for ES modules.', 'DeprecationWarning', 'DEP0151'); + } +} +function tryStatSync(path) { + try { + return (0, _fs().statSync)(path); + } catch (_unused2) {} +} +function fileExists(url) { + const stats = (0, _fs().statSync)(url, { + throwIfNoEntry: false + }); + const isFile = stats ? stats.isFile() : undefined; + return isFile === null || isFile === undefined ? false : isFile; +} +function legacyMainResolve(packageJsonUrl, packageConfig, base) { + let guess; + if (packageConfig.main !== undefined) { + guess = new (_url().URL)(packageConfig.main, packageJsonUrl); + if (fileExists(guess)) return guess; + const tries = [`./${packageConfig.main}.js`, `./${packageConfig.main}.json`, `./${packageConfig.main}.node`, `./${packageConfig.main}/index.js`, `./${packageConfig.main}/index.json`, `./${packageConfig.main}/index.node`]; + let i = -1; + while (++i < tries.length) { + guess = new (_url().URL)(tries[i], packageJsonUrl); + if (fileExists(guess)) break; + guess = undefined; + } + if (guess) { + emitLegacyIndexDeprecation(guess, packageJsonUrl, base, packageConfig.main); + return guess; + } + } + const tries = ['./index.js', './index.json', './index.node']; + let i = -1; + while (++i < tries.length) { + guess = new (_url().URL)(tries[i], packageJsonUrl); + if (fileExists(guess)) break; + guess = undefined; + } + if (guess) { + emitLegacyIndexDeprecation(guess, packageJsonUrl, base, packageConfig.main); + return guess; + } + throw new ERR_MODULE_NOT_FOUND((0, _url().fileURLToPath)(new (_url().URL)('.', packageJsonUrl)), (0, _url().fileURLToPath)(base)); +} +function finalizeResolution(resolved, base, preserveSymlinks) { + if (encodedSeparatorRegEx.exec(resolved.pathname) !== null) { + throw new ERR_INVALID_MODULE_SPECIFIER(resolved.pathname, 'must not include encoded "/" or "\\" characters', (0, _url().fileURLToPath)(base)); + } + let filePath; + try { + filePath = (0, _url().fileURLToPath)(resolved); + } catch (error) { + const cause = error; + Object.defineProperty(cause, 'input', { + value: String(resolved) + }); + Object.defineProperty(cause, 'module', { + value: String(base) + }); + throw cause; + } + const stats = tryStatSync(filePath.endsWith('/') ? filePath.slice(-1) : filePath); + if (stats && stats.isDirectory()) { + const error = new ERR_UNSUPPORTED_DIR_IMPORT(filePath, (0, _url().fileURLToPath)(base)); + error.url = String(resolved); + throw error; + } + if (!stats || !stats.isFile()) { + const error = new ERR_MODULE_NOT_FOUND(filePath || resolved.pathname, base && (0, _url().fileURLToPath)(base), true); + error.url = String(resolved); + throw error; + } + if (!preserveSymlinks) { + const real = (0, _fs().realpathSync)(filePath); + const { + search, + hash + } = resolved; + resolved = (0, _url().pathToFileURL)(real + (filePath.endsWith(_path().sep) ? '/' : '')); + resolved.search = search; + resolved.hash = hash; + } + return resolved; +} +function importNotDefined(specifier, packageJsonUrl, base) { + return new ERR_PACKAGE_IMPORT_NOT_DEFINED(specifier, packageJsonUrl && (0, _url().fileURLToPath)(new (_url().URL)('.', packageJsonUrl)), (0, _url().fileURLToPath)(base)); +} +function exportsNotFound(subpath, packageJsonUrl, base) { + return new ERR_PACKAGE_PATH_NOT_EXPORTED((0, _url().fileURLToPath)(new (_url().URL)('.', packageJsonUrl)), subpath, base && (0, _url().fileURLToPath)(base)); +} +function throwInvalidSubpath(request, match, packageJsonUrl, internal, base) { + const reason = `request is not a valid match in pattern "${match}" for the "${internal ? 'imports' : 'exports'}" resolution of ${(0, _url().fileURLToPath)(packageJsonUrl)}`; + throw new ERR_INVALID_MODULE_SPECIFIER(request, reason, base && (0, _url().fileURLToPath)(base)); +} +function invalidPackageTarget(subpath, target, packageJsonUrl, internal, base) { + target = typeof target === 'object' && target !== null ? JSON.stringify(target, null, '') : `${target}`; + return new ERR_INVALID_PACKAGE_TARGET((0, _url().fileURLToPath)(new (_url().URL)('.', packageJsonUrl)), subpath, target, internal, base && (0, _url().fileURLToPath)(base)); +} +function resolvePackageTargetString(target, subpath, match, packageJsonUrl, base, pattern, internal, isPathMap, conditions) { + if (subpath !== '' && !pattern && target[target.length - 1] !== '/') throw invalidPackageTarget(match, target, packageJsonUrl, internal, base); + if (!target.startsWith('./')) { + if (internal && !target.startsWith('../') && !target.startsWith('/')) { + let isURL = false; + try { + new (_url().URL)(target); + isURL = true; + } catch (_unused3) {} + if (!isURL) { + const exportTarget = pattern ? RegExpPrototypeSymbolReplace.call(patternRegEx, target, () => subpath) : target + subpath; + return packageResolve(exportTarget, packageJsonUrl, conditions); + } + } + throw invalidPackageTarget(match, target, packageJsonUrl, internal, base); + } + if (invalidSegmentRegEx.exec(target.slice(2)) !== null) { + if (deprecatedInvalidSegmentRegEx.exec(target.slice(2)) === null) { + if (!isPathMap) { + const request = pattern ? match.replace('*', () => subpath) : match + subpath; + const resolvedTarget = pattern ? RegExpPrototypeSymbolReplace.call(patternRegEx, target, () => subpath) : target; + emitInvalidSegmentDeprecation(resolvedTarget, request, match, packageJsonUrl, internal, base, true); + } + } else { + throw invalidPackageTarget(match, target, packageJsonUrl, internal, base); + } + } + const resolved = new (_url().URL)(target, packageJsonUrl); + const resolvedPath = resolved.pathname; + const packagePath = new (_url().URL)('.', packageJsonUrl).pathname; + if (!resolvedPath.startsWith(packagePath)) throw invalidPackageTarget(match, target, packageJsonUrl, internal, base); + if (subpath === '') return resolved; + if (invalidSegmentRegEx.exec(subpath) !== null) { + const request = pattern ? match.replace('*', () => subpath) : match + subpath; + if (deprecatedInvalidSegmentRegEx.exec(subpath) === null) { + if (!isPathMap) { + const resolvedTarget = pattern ? RegExpPrototypeSymbolReplace.call(patternRegEx, target, () => subpath) : target; + emitInvalidSegmentDeprecation(resolvedTarget, request, match, packageJsonUrl, internal, base, false); + } + } else { + throwInvalidSubpath(request, match, packageJsonUrl, internal, base); + } + } + if (pattern) { + return new (_url().URL)(RegExpPrototypeSymbolReplace.call(patternRegEx, resolved.href, () => subpath)); + } + return new (_url().URL)(subpath, resolved); +} +function isArrayIndex(key) { + const keyNumber = Number(key); + if (`${keyNumber}` !== key) return false; + return keyNumber >= 0 && keyNumber < 0xffffffff; +} +function resolvePackageTarget(packageJsonUrl, target, subpath, packageSubpath, base, pattern, internal, isPathMap, conditions) { + if (typeof target === 'string') { + return resolvePackageTargetString(target, subpath, packageSubpath, packageJsonUrl, base, pattern, internal, isPathMap, conditions); + } + if (Array.isArray(target)) { + const targetList = target; + if (targetList.length === 0) return null; + let lastException; + let i = -1; + while (++i < targetList.length) { + const targetItem = targetList[i]; + let resolveResult; + try { + resolveResult = resolvePackageTarget(packageJsonUrl, targetItem, subpath, packageSubpath, base, pattern, internal, isPathMap, conditions); + } catch (error) { + const exception = error; + lastException = exception; + if (exception.code === 'ERR_INVALID_PACKAGE_TARGET') continue; + throw error; + } + if (resolveResult === undefined) continue; + if (resolveResult === null) { + lastException = null; + continue; + } + return resolveResult; + } + if (lastException === undefined || lastException === null) { + return null; + } + throw lastException; + } + if (typeof target === 'object' && target !== null) { + const keys = Object.getOwnPropertyNames(target); + let i = -1; + while (++i < keys.length) { + const key = keys[i]; + if (isArrayIndex(key)) { + throw new ERR_INVALID_PACKAGE_CONFIG((0, _url().fileURLToPath)(packageJsonUrl), base, '"exports" cannot contain numeric property keys.'); + } + } + i = -1; + while (++i < keys.length) { + const key = keys[i]; + if (key === 'default' || conditions && conditions.has(key)) { + const conditionalTarget = target[key]; + const resolveResult = resolvePackageTarget(packageJsonUrl, conditionalTarget, subpath, packageSubpath, base, pattern, internal, isPathMap, conditions); + if (resolveResult === undefined) continue; + return resolveResult; + } + } + return null; + } + if (target === null) { + return null; + } + throw invalidPackageTarget(packageSubpath, target, packageJsonUrl, internal, base); +} +function isConditionalExportsMainSugar(exports, packageJsonUrl, base) { + if (typeof exports === 'string' || Array.isArray(exports)) return true; + if (typeof exports !== 'object' || exports === null) return false; + const keys = Object.getOwnPropertyNames(exports); + let isConditionalSugar = false; + let i = 0; + let keyIndex = -1; + while (++keyIndex < keys.length) { + const key = keys[keyIndex]; + const currentIsConditionalSugar = key === '' || key[0] !== '.'; + if (i++ === 0) { + isConditionalSugar = currentIsConditionalSugar; + } else if (isConditionalSugar !== currentIsConditionalSugar) { + throw new ERR_INVALID_PACKAGE_CONFIG((0, _url().fileURLToPath)(packageJsonUrl), base, '"exports" cannot contain some keys starting with \'.\' and some not.' + ' The exports object must either be an object of package subpath keys' + ' or an object of main entry condition name keys only.'); + } + } + return isConditionalSugar; +} +function emitTrailingSlashPatternDeprecation(match, pjsonUrl, base) { + if (_process().noDeprecation) { + return; + } + const pjsonPath = (0, _url().fileURLToPath)(pjsonUrl); + if (emittedPackageWarnings.has(pjsonPath + '|' + match)) return; + emittedPackageWarnings.add(pjsonPath + '|' + match); + _process().emitWarning(`Use of deprecated trailing slash pattern mapping "${match}" in the ` + `"exports" field module resolution of the package at ${pjsonPath}${base ? ` imported from ${(0, _url().fileURLToPath)(base)}` : ''}. Mapping specifiers ending in "/" is no longer supported.`, 'DeprecationWarning', 'DEP0155'); +} +function packageExportsResolve(packageJsonUrl, packageSubpath, packageConfig, base, conditions) { + let exports = packageConfig.exports; + if (isConditionalExportsMainSugar(exports, packageJsonUrl, base)) { + exports = { + '.': exports + }; + } + if (own.call(exports, packageSubpath) && !packageSubpath.includes('*') && !packageSubpath.endsWith('/')) { + const target = exports[packageSubpath]; + const resolveResult = resolvePackageTarget(packageJsonUrl, target, '', packageSubpath, base, false, false, false, conditions); + if (resolveResult === null || resolveResult === undefined) { + throw exportsNotFound(packageSubpath, packageJsonUrl, base); + } + return resolveResult; + } + let bestMatch = ''; + let bestMatchSubpath = ''; + const keys = Object.getOwnPropertyNames(exports); + let i = -1; + while (++i < keys.length) { + const key = keys[i]; + const patternIndex = key.indexOf('*'); + if (patternIndex !== -1 && packageSubpath.startsWith(key.slice(0, patternIndex))) { + if (packageSubpath.endsWith('/')) { + emitTrailingSlashPatternDeprecation(packageSubpath, packageJsonUrl, base); + } + const patternTrailer = key.slice(patternIndex + 1); + if (packageSubpath.length >= key.length && packageSubpath.endsWith(patternTrailer) && patternKeyCompare(bestMatch, key) === 1 && key.lastIndexOf('*') === patternIndex) { + bestMatch = key; + bestMatchSubpath = packageSubpath.slice(patternIndex, packageSubpath.length - patternTrailer.length); + } + } + } + if (bestMatch) { + const target = exports[bestMatch]; + const resolveResult = resolvePackageTarget(packageJsonUrl, target, bestMatchSubpath, bestMatch, base, true, false, packageSubpath.endsWith('/'), conditions); + if (resolveResult === null || resolveResult === undefined) { + throw exportsNotFound(packageSubpath, packageJsonUrl, base); + } + return resolveResult; + } + throw exportsNotFound(packageSubpath, packageJsonUrl, base); +} +function patternKeyCompare(a, b) { + const aPatternIndex = a.indexOf('*'); + const bPatternIndex = b.indexOf('*'); + const baseLengthA = aPatternIndex === -1 ? a.length : aPatternIndex + 1; + const baseLengthB = bPatternIndex === -1 ? b.length : bPatternIndex + 1; + if (baseLengthA > baseLengthB) return -1; + if (baseLengthB > baseLengthA) return 1; + if (aPatternIndex === -1) return 1; + if (bPatternIndex === -1) return -1; + if (a.length > b.length) return -1; + if (b.length > a.length) return 1; + return 0; +} +function packageImportsResolve(name, base, conditions) { + if (name === '#' || name.startsWith('#/') || name.endsWith('/')) { + const reason = 'is not a valid internal imports specifier name'; + throw new ERR_INVALID_MODULE_SPECIFIER(name, reason, (0, _url().fileURLToPath)(base)); + } + let packageJsonUrl; + const packageConfig = getPackageScopeConfig(base); + if (packageConfig.exists) { + packageJsonUrl = (0, _url().pathToFileURL)(packageConfig.pjsonPath); + const imports = packageConfig.imports; + if (imports) { + if (own.call(imports, name) && !name.includes('*')) { + const resolveResult = resolvePackageTarget(packageJsonUrl, imports[name], '', name, base, false, true, false, conditions); + if (resolveResult !== null && resolveResult !== undefined) { + return resolveResult; + } + } else { + let bestMatch = ''; + let bestMatchSubpath = ''; + const keys = Object.getOwnPropertyNames(imports); + let i = -1; + while (++i < keys.length) { + const key = keys[i]; + const patternIndex = key.indexOf('*'); + if (patternIndex !== -1 && name.startsWith(key.slice(0, -1))) { + const patternTrailer = key.slice(patternIndex + 1); + if (name.length >= key.length && name.endsWith(patternTrailer) && patternKeyCompare(bestMatch, key) === 1 && key.lastIndexOf('*') === patternIndex) { + bestMatch = key; + bestMatchSubpath = name.slice(patternIndex, name.length - patternTrailer.length); + } + } + } + if (bestMatch) { + const target = imports[bestMatch]; + const resolveResult = resolvePackageTarget(packageJsonUrl, target, bestMatchSubpath, bestMatch, base, true, true, false, conditions); + if (resolveResult !== null && resolveResult !== undefined) { + return resolveResult; + } + } + } + } + } + throw importNotDefined(name, packageJsonUrl, base); +} +function parsePackageName(specifier, base) { + let separatorIndex = specifier.indexOf('/'); + let validPackageName = true; + let isScoped = false; + if (specifier[0] === '@') { + isScoped = true; + if (separatorIndex === -1 || specifier.length === 0) { + validPackageName = false; + } else { + separatorIndex = specifier.indexOf('/', separatorIndex + 1); + } + } + const packageName = separatorIndex === -1 ? specifier : specifier.slice(0, separatorIndex); + if (invalidPackageNameRegEx.exec(packageName) !== null) { + validPackageName = false; + } + if (!validPackageName) { + throw new ERR_INVALID_MODULE_SPECIFIER(specifier, 'is not a valid package name', (0, _url().fileURLToPath)(base)); + } + const packageSubpath = '.' + (separatorIndex === -1 ? '' : specifier.slice(separatorIndex)); + return { + packageName, + packageSubpath, + isScoped + }; +} +function packageResolve(specifier, base, conditions) { + if (_module().builtinModules.includes(specifier)) { + return new (_url().URL)('node:' + specifier); + } + const { + packageName, + packageSubpath, + isScoped + } = parsePackageName(specifier, base); + const packageConfig = getPackageScopeConfig(base); + if (packageConfig.exists) { + const packageJsonUrl = (0, _url().pathToFileURL)(packageConfig.pjsonPath); + if (packageConfig.name === packageName && packageConfig.exports !== undefined && packageConfig.exports !== null) { + return packageExportsResolve(packageJsonUrl, packageSubpath, packageConfig, base, conditions); + } + } + let packageJsonUrl = new (_url().URL)('./node_modules/' + packageName + '/package.json', base); + let packageJsonPath = (0, _url().fileURLToPath)(packageJsonUrl); + let lastPath; + do { + const stat = tryStatSync(packageJsonPath.slice(0, -13)); + if (!stat || !stat.isDirectory()) { + lastPath = packageJsonPath; + packageJsonUrl = new (_url().URL)((isScoped ? '../../../../node_modules/' : '../../../node_modules/') + packageName + '/package.json', packageJsonUrl); + packageJsonPath = (0, _url().fileURLToPath)(packageJsonUrl); + continue; + } + const packageConfig = read(packageJsonPath, { + base, + specifier + }); + if (packageConfig.exports !== undefined && packageConfig.exports !== null) { + return packageExportsResolve(packageJsonUrl, packageSubpath, packageConfig, base, conditions); + } + if (packageSubpath === '.') { + return legacyMainResolve(packageJsonUrl, packageConfig, base); + } + return new (_url().URL)(packageSubpath, packageJsonUrl); + } while (packageJsonPath.length !== lastPath.length); + throw new ERR_MODULE_NOT_FOUND(packageName, (0, _url().fileURLToPath)(base), false); +} +function isRelativeSpecifier(specifier) { + if (specifier[0] === '.') { + if (specifier.length === 1 || specifier[1] === '/') return true; + if (specifier[1] === '.' && (specifier.length === 2 || specifier[2] === '/')) { + return true; + } + } + return false; +} +function shouldBeTreatedAsRelativeOrAbsolutePath(specifier) { + if (specifier === '') return false; + if (specifier[0] === '/') return true; + return isRelativeSpecifier(specifier); +} +function moduleResolve(specifier, base, conditions, preserveSymlinks) { + const protocol = base.protocol; + const isData = protocol === 'data:'; + const isRemote = isData || protocol === 'http:' || protocol === 'https:'; + let resolved; + if (shouldBeTreatedAsRelativeOrAbsolutePath(specifier)) { + try { + resolved = new (_url().URL)(specifier, base); + } catch (error_) { + const error = new ERR_UNSUPPORTED_RESOLVE_REQUEST(specifier, base); + error.cause = error_; + throw error; + } + } else if (protocol === 'file:' && specifier[0] === '#') { + resolved = packageImportsResolve(specifier, base, conditions); + } else { + try { + resolved = new (_url().URL)(specifier); + } catch (error_) { + if (isRemote && !_module().builtinModules.includes(specifier)) { + const error = new ERR_UNSUPPORTED_RESOLVE_REQUEST(specifier, base); + error.cause = error_; + throw error; + } + resolved = packageResolve(specifier, base, conditions); + } + } + _assert()(resolved !== undefined, 'expected to be defined'); + if (resolved.protocol !== 'file:') { + return resolved; + } + return finalizeResolution(resolved, base, preserveSymlinks); +} +function checkIfDisallowedImport(specifier, parsed, parsedParentURL) { + if (parsedParentURL) { + const parentProtocol = parsedParentURL.protocol; + if (parentProtocol === 'http:' || parentProtocol === 'https:') { + if (shouldBeTreatedAsRelativeOrAbsolutePath(specifier)) { + const parsedProtocol = parsed == null ? void 0 : parsed.protocol; + if (parsedProtocol && parsedProtocol !== 'https:' && parsedProtocol !== 'http:') { + throw new ERR_NETWORK_IMPORT_DISALLOWED(specifier, parsedParentURL, 'remote imports cannot import from a local location.'); + } + return { + url: (parsed == null ? void 0 : parsed.href) || '' + }; + } + if (_module().builtinModules.includes(specifier)) { + throw new ERR_NETWORK_IMPORT_DISALLOWED(specifier, parsedParentURL, 'remote imports cannot import from a local location.'); + } + throw new ERR_NETWORK_IMPORT_DISALLOWED(specifier, parsedParentURL, 'only relative and absolute specifiers are supported.'); + } + } +} +function isURL(self) { + return Boolean(self && typeof self === 'object' && 'href' in self && typeof self.href === 'string' && 'protocol' in self && typeof self.protocol === 'string' && self.href && self.protocol); +} +function throwIfInvalidParentURL(parentURL) { + if (parentURL === undefined) { + return; + } + if (typeof parentURL !== 'string' && !isURL(parentURL)) { + throw new codes.ERR_INVALID_ARG_TYPE('parentURL', ['string', 'URL'], parentURL); + } +} +function defaultResolve(specifier, context = {}) { + const { + parentURL + } = context; + _assert()(parentURL !== undefined, 'expected `parentURL` to be defined'); + throwIfInvalidParentURL(parentURL); + let parsedParentURL; + if (parentURL) { + try { + parsedParentURL = new (_url().URL)(parentURL); + } catch (_unused4) {} + } + let parsed; + let protocol; + try { + parsed = shouldBeTreatedAsRelativeOrAbsolutePath(specifier) ? new (_url().URL)(specifier, parsedParentURL) : new (_url().URL)(specifier); + protocol = parsed.protocol; + if (protocol === 'data:') { + return { + url: parsed.href, + format: null + }; + } + } catch (_unused5) {} + const maybeReturn = checkIfDisallowedImport(specifier, parsed, parsedParentURL); + if (maybeReturn) return maybeReturn; + if (protocol === undefined && parsed) { + protocol = parsed.protocol; + } + if (protocol === 'node:') { + return { + url: specifier + }; + } + if (parsed && parsed.protocol === 'node:') return { + url: specifier + }; + const conditions = getConditionsSet(context.conditions); + const url = moduleResolve(specifier, new (_url().URL)(parentURL), conditions, false); + return { + url: url.href, + format: defaultGetFormatWithoutErrors(url, { + parentURL + }) + }; +} +function resolve(specifier, parent) { + if (!parent) { + throw new Error('Please pass `parent`: `import-meta-resolve` cannot ponyfill that'); + } + try { + return defaultResolve(specifier, { + parentURL: parent + }).url; + } catch (error) { + const exception = error; + if ((exception.code === 'ERR_UNSUPPORTED_DIR_IMPORT' || exception.code === 'ERR_MODULE_NOT_FOUND') && typeof exception.url === 'string') { + return exception.url; + } + throw error; + } +} +0 && 0; + +//# sourceMappingURL=import-meta-resolve.js.map diff --git a/node_modules/@babel/core/lib/vendor/import-meta-resolve.js.map b/node_modules/@babel/core/lib/vendor/import-meta-resolve.js.map new file mode 100644 index 0000000..d9e5b42 --- /dev/null +++ b/node_modules/@babel/core/lib/vendor/import-meta-resolve.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_assert","data","require","_fs","_interopRequireWildcard","_process","_url","_path","_module","_v","_util","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","own$1","classRegExp","kTypes","Set","codes","formatList","array","type","length","join","slice","messages","Map","nodeInternalPrefix","userStackTraceLimit","ERR_INVALID_ARG_TYPE","createError","name","expected","actual","assert","Array","isArray","message","endsWith","includes","types","instances","other","value","push","toLowerCase","exec","pos","indexOf","determineSpecificType","TypeError","ERR_INVALID_MODULE_SPECIFIER","request","reason","base","undefined","ERR_INVALID_PACKAGE_CONFIG","path","Error","ERR_INVALID_PACKAGE_TARGET","packagePath","key","target","isImport","relatedError","startsWith","JSON","stringify","ERR_MODULE_NOT_FOUND","exactUrl","ERR_NETWORK_IMPORT_DISALLOWED","ERR_PACKAGE_IMPORT_NOT_DEFINED","specifier","ERR_PACKAGE_PATH_NOT_EXPORTED","subpath","ERR_UNSUPPORTED_DIR_IMPORT","ERR_UNSUPPORTED_RESOLVE_REQUEST","ERR_UNKNOWN_FILE_EXTENSION","extension","ERR_INVALID_ARG_VALUE","inspected","inspect","sym","constructor","makeNodeErrorWithCode","Base","NodeError","parameters","limit","stackTraceLimit","isErrorStackTraceLimitWritable","error","getMessage","defineProperties","enumerable","writable","configurable","toString","captureLargerStackTrace","code","v8","startupSnapshot","isBuildingSnapshot","_unused","desc","isExtensible","hideStackFrames","wrappedFunction","hidden","stackTraceLimitIsWritable","Number","POSITIVE_INFINITY","captureStackTrace","self","Reflect","apply","regex","expectedLength","unshift","format","String","depth","colors","hasOwnProperty$1","ERR_INVALID_PACKAGE_CONFIG$1","cache","read","jsonPath","existing","string","fs","readFileSync","toNamespacedPath","exception","result","exists","pjsonPath","main","exports","imports","parsed","parse","error_","cause","fileURLToPath","getPackageScopeConfig","resolved","packageJSONUrl","URL","packageJSONPath","pathname","packageConfig","lastPackageJSONUrl","getPackageType","url","extensionFormatMap","mimeToFormat","mime","test","protocolHandlers","getDataProtocolModuleFormat","getFileProtocolModuleFormat","getHttpProtocolModuleFormat","node:","extname","index","codePointAt","_context","ignoreErrors","packageType","filepath","defaultGetFormatWithoutErrors","context","protocol","DEFAULT_CONDITIONS","freeze","DEFAULT_CONDITIONS_SET","getDefaultConditions","getDefaultConditionsSet","getConditionsSet","conditions","RegExpPrototypeSymbolReplace","RegExp","prototype","Symbol","replace","own","invalidSegmentRegEx","deprecatedInvalidSegmentRegEx","invalidPackageNameRegEx","patternRegEx","encodedSeparatorRegEx","emittedPackageWarnings","doubleSlashRegEx","emitInvalidSegmentDeprecation","match","packageJsonUrl","internal","isTarget","process","noDeprecation","double","emitWarning","emitLegacyIndexDeprecation","parentURL","href","urlPath","URL$1","basePath","resolve","tryStatSync","statSync","_unused2","fileExists","stats","throwIfNoEntry","isFile","legacyMainResolve","guess","tries","finalizeResolution","preserveSymlinks","filePath","isDirectory","real","realpathSync","search","hash","pathToFileURL","sep","importNotDefined","exportsNotFound","throwInvalidSubpath","invalidPackageTarget","resolvePackageTargetString","pattern","isPathMap","isURL","_unused3","exportTarget","packageResolve","resolvedTarget","resolvedPath","isArrayIndex","keyNumber","resolvePackageTarget","packageSubpath","targetList","lastException","targetItem","resolveResult","keys","getOwnPropertyNames","conditionalTarget","isConditionalExportsMainSugar","isConditionalSugar","keyIndex","currentIsConditionalSugar","emitTrailingSlashPatternDeprecation","pjsonUrl","add","packageExportsResolve","bestMatch","bestMatchSubpath","patternIndex","patternTrailer","patternKeyCompare","lastIndexOf","a","b","aPatternIndex","bPatternIndex","baseLengthA","baseLengthB","packageImportsResolve","parsePackageName","separatorIndex","validPackageName","isScoped","packageName","builtinModules","packageJsonPath","lastPath","stat","isRelativeSpecifier","shouldBeTreatedAsRelativeOrAbsolutePath","moduleResolve","isData","isRemote","checkIfDisallowedImport","parsedParentURL","parentProtocol","parsedProtocol","Boolean","throwIfInvalidParentURL","defaultResolve","_unused4","_unused5","maybeReturn","parent"],"sources":["../../src/vendor/import-meta-resolve.js"],"sourcesContent":["\n/****************************************************************************\\\n * NOTE FROM BABEL AUTHORS *\n * This file is inlined from https://github.com/wooorm/import-meta-resolve, *\n * because we need to compile it to CommonJS. *\n\\****************************************************************************/\n\n/*\n(The MIT License)\n\nCopyright (c) 2021 Titus Wormer \n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n'Software'), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n---\n\nThis is a derivative work based on:\n.\nWhich is licensed:\n\n\"\"\"\nCopyright Node.js contributors. All rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to\ndeal in the Software without restriction, including without limitation the\nrights to use, copy, modify, merge, publish, distribute, sublicense, and/or\nsell copies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\nFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\nIN THE SOFTWARE.\n\"\"\"\n\nThis license applies to parts of Node.js originating from the\nhttps://github.com/joyent/node repository:\n\n\"\"\"\nCopyright Joyent, Inc. and other Node contributors. All rights reserved.\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to\ndeal in the Software without restriction, including without limitation the\nrights to use, copy, modify, merge, publish, distribute, sublicense, and/or\nsell copies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\nFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\nIN THE SOFTWARE.\n\"\"\"\n*/\n\nimport assert from 'assert';\nimport fs, { realpathSync, statSync } from 'fs';\nimport process from 'process';\nimport { fileURLToPath, URL as URL$1, pathToFileURL } from 'url';\nimport path from 'path';\nimport { builtinModules } from 'module';\nimport v8 from 'v8';\nimport { format, inspect } from 'util';\n\n/**\n * @typedef ErrnoExceptionFields\n * @property {number | undefined} [errnode]\n * @property {string | undefined} [code]\n * @property {string | undefined} [path]\n * @property {string | undefined} [syscall]\n * @property {string | undefined} [url]\n *\n * @typedef {Error & ErrnoExceptionFields} ErrnoException\n */\n\n\nconst own$1 = {}.hasOwnProperty;\n\nconst classRegExp = /^([A-Z][a-z\\d]*)+$/;\n// Sorted by a rough estimate on most frequently used entries.\nconst kTypes = new Set([\n 'string',\n 'function',\n 'number',\n 'object',\n // Accept 'Function' and 'Object' as alternative to the lower cased version.\n 'Function',\n 'Object',\n 'boolean',\n 'bigint',\n 'symbol'\n]);\n\nconst codes = {};\n\n/**\n * Create a list string in the form like 'A and B' or 'A, B, ..., and Z'.\n * We cannot use Intl.ListFormat because it's not available in\n * --without-intl builds.\n *\n * @param {Array} array\n * An array of strings.\n * @param {string} [type]\n * The list type to be inserted before the last element.\n * @returns {string}\n */\nfunction formatList(array, type = 'and') {\n return array.length < 3\n ? array.join(` ${type} `)\n : `${array.slice(0, -1).join(', ')}, ${type} ${array[array.length - 1]}`\n}\n\n/** @type {Map} */\nconst messages = new Map();\nconst nodeInternalPrefix = '__node_internal_';\n/** @type {number} */\nlet userStackTraceLimit;\n\ncodes.ERR_INVALID_ARG_TYPE = createError(\n 'ERR_INVALID_ARG_TYPE',\n /**\n * @param {string} name\n * @param {Array | string} expected\n * @param {unknown} actual\n */\n (name, expected, actual) => {\n assert(typeof name === 'string', \"'name' must be a string\");\n if (!Array.isArray(expected)) {\n expected = [expected];\n }\n\n let message = 'The ';\n if (name.endsWith(' argument')) {\n // For cases like 'first argument'\n message += `${name} `;\n } else {\n const type = name.includes('.') ? 'property' : 'argument';\n message += `\"${name}\" ${type} `;\n }\n\n message += 'must be ';\n\n /** @type {Array} */\n const types = [];\n /** @type {Array} */\n const instances = [];\n /** @type {Array} */\n const other = [];\n\n for (const value of expected) {\n assert(\n typeof value === 'string',\n 'All expected entries have to be of type string'\n );\n\n if (kTypes.has(value)) {\n types.push(value.toLowerCase());\n } else if (classRegExp.exec(value) === null) {\n assert(\n value !== 'object',\n 'The value \"object\" should be written as \"Object\"'\n );\n other.push(value);\n } else {\n instances.push(value);\n }\n }\n\n // Special handle `object` in case other instances are allowed to outline\n // the differences between each other.\n if (instances.length > 0) {\n const pos = types.indexOf('object');\n if (pos !== -1) {\n types.slice(pos, 1);\n instances.push('Object');\n }\n }\n\n if (types.length > 0) {\n message += `${types.length > 1 ? 'one of type' : 'of type'} ${formatList(\n types,\n 'or'\n )}`;\n if (instances.length > 0 || other.length > 0) message += ' or ';\n }\n\n if (instances.length > 0) {\n message += `an instance of ${formatList(instances, 'or')}`;\n if (other.length > 0) message += ' or ';\n }\n\n if (other.length > 0) {\n if (other.length > 1) {\n message += `one of ${formatList(other, 'or')}`;\n } else {\n if (other[0].toLowerCase() !== other[0]) message += 'an ';\n message += `${other[0]}`;\n }\n }\n\n message += `. Received ${determineSpecificType(actual)}`;\n\n return message\n },\n TypeError\n);\n\ncodes.ERR_INVALID_MODULE_SPECIFIER = createError(\n 'ERR_INVALID_MODULE_SPECIFIER',\n /**\n * @param {string} request\n * @param {string} reason\n * @param {string} [base]\n */\n (request, reason, base = undefined) => {\n return `Invalid module \"${request}\" ${reason}${\n base ? ` imported from ${base}` : ''\n }`\n },\n TypeError\n);\n\ncodes.ERR_INVALID_PACKAGE_CONFIG = createError(\n 'ERR_INVALID_PACKAGE_CONFIG',\n /**\n * @param {string} path\n * @param {string} [base]\n * @param {string} [message]\n */\n (path, base, message) => {\n return `Invalid package config ${path}${\n base ? ` while importing ${base}` : ''\n }${message ? `. ${message}` : ''}`\n },\n Error\n);\n\ncodes.ERR_INVALID_PACKAGE_TARGET = createError(\n 'ERR_INVALID_PACKAGE_TARGET',\n /**\n * @param {string} packagePath\n * @param {string} key\n * @param {unknown} target\n * @param {boolean} [isImport=false]\n * @param {string} [base]\n */\n (packagePath, key, target, isImport = false, base = undefined) => {\n const relatedError =\n typeof target === 'string' &&\n !isImport &&\n target.length > 0 &&\n !target.startsWith('./');\n if (key === '.') {\n assert(isImport === false);\n return (\n `Invalid \"exports\" main target ${JSON.stringify(target)} defined ` +\n `in the package config ${packagePath}package.json${\n base ? ` imported from ${base}` : ''\n }${relatedError ? '; targets must start with \"./\"' : ''}`\n )\n }\n\n return `Invalid \"${\n isImport ? 'imports' : 'exports'\n }\" target ${JSON.stringify(\n target\n )} defined for '${key}' in the package config ${packagePath}package.json${\n base ? ` imported from ${base}` : ''\n }${relatedError ? '; targets must start with \"./\"' : ''}`\n },\n Error\n);\n\ncodes.ERR_MODULE_NOT_FOUND = createError(\n 'ERR_MODULE_NOT_FOUND',\n /**\n * @param {string} path\n * @param {string} base\n * @param {boolean} [exactUrl]\n */\n (path, base, exactUrl = false) => {\n return `Cannot find ${\n exactUrl ? 'module' : 'package'\n } '${path}' imported from ${base}`\n },\n Error\n);\n\ncodes.ERR_NETWORK_IMPORT_DISALLOWED = createError(\n 'ERR_NETWORK_IMPORT_DISALLOWED',\n \"import of '%s' by %s is not supported: %s\",\n Error\n);\n\ncodes.ERR_PACKAGE_IMPORT_NOT_DEFINED = createError(\n 'ERR_PACKAGE_IMPORT_NOT_DEFINED',\n /**\n * @param {string} specifier\n * @param {string} packagePath\n * @param {string} base\n */\n (specifier, packagePath, base) => {\n return `Package import specifier \"${specifier}\" is not defined${\n packagePath ? ` in package ${packagePath}package.json` : ''\n } imported from ${base}`\n },\n TypeError\n);\n\ncodes.ERR_PACKAGE_PATH_NOT_EXPORTED = createError(\n 'ERR_PACKAGE_PATH_NOT_EXPORTED',\n /**\n * @param {string} packagePath\n * @param {string} subpath\n * @param {string} [base]\n */\n (packagePath, subpath, base = undefined) => {\n if (subpath === '.')\n return `No \"exports\" main defined in ${packagePath}package.json${\n base ? ` imported from ${base}` : ''\n }`\n return `Package subpath '${subpath}' is not defined by \"exports\" in ${packagePath}package.json${\n base ? ` imported from ${base}` : ''\n }`\n },\n Error\n);\n\ncodes.ERR_UNSUPPORTED_DIR_IMPORT = createError(\n 'ERR_UNSUPPORTED_DIR_IMPORT',\n \"Directory import '%s' is not supported \" +\n 'resolving ES modules imported from %s',\n Error\n);\n\ncodes.ERR_UNSUPPORTED_RESOLVE_REQUEST = createError(\n 'ERR_UNSUPPORTED_RESOLVE_REQUEST',\n 'Failed to resolve module specifier \"%s\" from \"%s\": Invalid relative URL or base scheme is not hierarchical.',\n TypeError\n);\n\ncodes.ERR_UNKNOWN_FILE_EXTENSION = createError(\n 'ERR_UNKNOWN_FILE_EXTENSION',\n /**\n * @param {string} extension\n * @param {string} path\n */\n (extension, path) => {\n return `Unknown file extension \"${extension}\" for ${path}`\n },\n TypeError\n);\n\ncodes.ERR_INVALID_ARG_VALUE = createError(\n 'ERR_INVALID_ARG_VALUE',\n /**\n * @param {string} name\n * @param {unknown} value\n * @param {string} [reason='is invalid']\n */\n (name, value, reason = 'is invalid') => {\n let inspected = inspect(value);\n\n if (inspected.length > 128) {\n inspected = `${inspected.slice(0, 128)}...`;\n }\n\n const type = name.includes('.') ? 'property' : 'argument';\n\n return `The ${type} '${name}' ${reason}. Received ${inspected}`\n },\n TypeError\n // Note: extra classes have been shaken out.\n // , RangeError\n);\n\n/**\n * Utility function for registering the error codes. Only used here. Exported\n * *only* to allow for testing.\n * @param {string} sym\n * @param {MessageFunction | string} value\n * @param {ErrorConstructor} constructor\n * @returns {new (...parameters: Array) => Error}\n */\nfunction createError(sym, value, constructor) {\n // Special case for SystemError that formats the error message differently\n // The SystemErrors only have SystemError as their base classes.\n messages.set(sym, value);\n\n return makeNodeErrorWithCode(constructor, sym)\n}\n\n/**\n * @param {ErrorConstructor} Base\n * @param {string} key\n * @returns {ErrorConstructor}\n */\nfunction makeNodeErrorWithCode(Base, key) {\n // @ts-expect-error It’s a Node error.\n return NodeError\n /**\n * @param {Array} parameters\n */\n function NodeError(...parameters) {\n const limit = Error.stackTraceLimit;\n if (isErrorStackTraceLimitWritable()) Error.stackTraceLimit = 0;\n const error = new Base();\n // Reset the limit and setting the name property.\n if (isErrorStackTraceLimitWritable()) Error.stackTraceLimit = limit;\n const message = getMessage(key, parameters, error);\n Object.defineProperties(error, {\n // Note: no need to implement `kIsNodeError` symbol, would be hard,\n // probably.\n message: {\n value: message,\n enumerable: false,\n writable: true,\n configurable: true\n },\n toString: {\n /** @this {Error} */\n value() {\n return `${this.name} [${key}]: ${this.message}`\n },\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n\n captureLargerStackTrace(error);\n // @ts-expect-error It’s a Node error.\n error.code = key;\n return error\n }\n}\n\n/**\n * @returns {boolean}\n */\nfunction isErrorStackTraceLimitWritable() {\n // Do no touch Error.stackTraceLimit as V8 would attempt to install\n // it again during deserialization.\n try {\n if (v8.startupSnapshot.isBuildingSnapshot()) {\n return false\n }\n } catch {}\n\n const desc = Object.getOwnPropertyDescriptor(Error, 'stackTraceLimit');\n if (desc === undefined) {\n return Object.isExtensible(Error)\n }\n\n return own$1.call(desc, 'writable') && desc.writable !== undefined\n ? desc.writable\n : desc.set !== undefined\n}\n\n/**\n * This function removes unnecessary frames from Node.js core errors.\n * @template {(...parameters: unknown[]) => unknown} T\n * @param {T} wrappedFunction\n * @returns {T}\n */\nfunction hideStackFrames(wrappedFunction) {\n // We rename the functions that will be hidden to cut off the stacktrace\n // at the outermost one\n const hidden = nodeInternalPrefix + wrappedFunction.name;\n Object.defineProperty(wrappedFunction, 'name', {value: hidden});\n return wrappedFunction\n}\n\nconst captureLargerStackTrace = hideStackFrames(\n /**\n * @param {Error} error\n * @returns {Error}\n */\n // @ts-expect-error: fine\n function (error) {\n const stackTraceLimitIsWritable = isErrorStackTraceLimitWritable();\n if (stackTraceLimitIsWritable) {\n userStackTraceLimit = Error.stackTraceLimit;\n Error.stackTraceLimit = Number.POSITIVE_INFINITY;\n }\n\n Error.captureStackTrace(error);\n\n // Reset the limit\n if (stackTraceLimitIsWritable) Error.stackTraceLimit = userStackTraceLimit;\n\n return error\n }\n);\n\n/**\n * @param {string} key\n * @param {Array} parameters\n * @param {Error} self\n * @returns {string}\n */\nfunction getMessage(key, parameters, self) {\n const message = messages.get(key);\n assert(message !== undefined, 'expected `message` to be found');\n\n if (typeof message === 'function') {\n assert(\n message.length <= parameters.length, // Default options do not count.\n `Code: ${key}; The provided arguments length (${parameters.length}) does not ` +\n `match the required ones (${message.length}).`\n );\n return Reflect.apply(message, self, parameters)\n }\n\n const regex = /%[dfijoOs]/g;\n let expectedLength = 0;\n while (regex.exec(message) !== null) expectedLength++;\n assert(\n expectedLength === parameters.length,\n `Code: ${key}; The provided arguments length (${parameters.length}) does not ` +\n `match the required ones (${expectedLength}).`\n );\n if (parameters.length === 0) return message\n\n parameters.unshift(message);\n return Reflect.apply(format, null, parameters)\n}\n\n/**\n * Determine the specific type of a value for type-mismatch errors.\n * @param {unknown} value\n * @returns {string}\n */\nfunction determineSpecificType(value) {\n if (value === null || value === undefined) {\n return String(value)\n }\n\n if (typeof value === 'function' && value.name) {\n return `function ${value.name}`\n }\n\n if (typeof value === 'object') {\n if (value.constructor && value.constructor.name) {\n return `an instance of ${value.constructor.name}`\n }\n\n return `${inspect(value, {depth: -1})}`\n }\n\n let inspected = inspect(value, {colors: false});\n\n if (inspected.length > 28) {\n inspected = `${inspected.slice(0, 25)}...`;\n }\n\n return `type ${typeof value} (${inspected})`\n}\n\n// Manually “tree shaken” from:\n// \n// Last checked on: Apr 29, 2023.\n// Removed the native dependency.\n// Also: no need to cache, we do that in resolve already.\n\n\nconst hasOwnProperty$1 = {}.hasOwnProperty;\n\nconst {ERR_INVALID_PACKAGE_CONFIG: ERR_INVALID_PACKAGE_CONFIG$1} = codes;\n\n/** @type {Map} */\nconst cache = new Map();\n\n/**\n * @param {string} jsonPath\n * @param {{specifier: URL | string, base?: URL}} options\n * @returns {PackageConfig}\n */\nfunction read(jsonPath, {base, specifier}) {\n const existing = cache.get(jsonPath);\n\n if (existing) {\n return existing\n }\n\n /** @type {string | undefined} */\n let string;\n\n try {\n string = fs.readFileSync(path.toNamespacedPath(jsonPath), 'utf8');\n } catch (error) {\n const exception = /** @type {ErrnoException} */ (error);\n\n if (exception.code !== 'ENOENT') {\n throw exception\n }\n }\n\n /** @type {PackageConfig} */\n const result = {\n exists: false,\n pjsonPath: jsonPath,\n main: undefined,\n name: undefined,\n type: 'none', // Ignore unknown types for forwards compatibility\n exports: undefined,\n imports: undefined\n };\n\n if (string !== undefined) {\n /** @type {Record} */\n let parsed;\n\n try {\n parsed = JSON.parse(string);\n } catch (error_) {\n const cause = /** @type {ErrnoException} */ (error_);\n const error = new ERR_INVALID_PACKAGE_CONFIG$1(\n jsonPath,\n (base ? `\"${specifier}\" from ` : '') + fileURLToPath(base || specifier),\n cause.message\n );\n error.cause = cause;\n throw error\n }\n\n result.exists = true;\n\n if (\n hasOwnProperty$1.call(parsed, 'name') &&\n typeof parsed.name === 'string'\n ) {\n result.name = parsed.name;\n }\n\n if (\n hasOwnProperty$1.call(parsed, 'main') &&\n typeof parsed.main === 'string'\n ) {\n result.main = parsed.main;\n }\n\n if (hasOwnProperty$1.call(parsed, 'exports')) {\n // @ts-expect-error: assume valid.\n result.exports = parsed.exports;\n }\n\n if (hasOwnProperty$1.call(parsed, 'imports')) {\n // @ts-expect-error: assume valid.\n result.imports = parsed.imports;\n }\n\n // Ignore unknown types for forwards compatibility\n if (\n hasOwnProperty$1.call(parsed, 'type') &&\n (parsed.type === 'commonjs' || parsed.type === 'module')\n ) {\n result.type = parsed.type;\n }\n }\n\n cache.set(jsonPath, result);\n\n return result\n}\n\n/**\n * @param {URL | string} resolved\n * @returns {PackageConfig}\n */\nfunction getPackageScopeConfig(resolved) {\n // Note: in Node, this is now a native module.\n let packageJSONUrl = new URL('package.json', resolved);\n\n while (true) {\n const packageJSONPath = packageJSONUrl.pathname;\n if (packageJSONPath.endsWith('node_modules/package.json')) {\n break\n }\n\n const packageConfig = read(fileURLToPath(packageJSONUrl), {\n specifier: resolved\n });\n\n if (packageConfig.exists) {\n return packageConfig\n }\n\n const lastPackageJSONUrl = packageJSONUrl;\n packageJSONUrl = new URL('../package.json', packageJSONUrl);\n\n // Terminates at root where ../package.json equals ../../package.json\n // (can't just check \"/package.json\" for Windows support).\n if (packageJSONUrl.pathname === lastPackageJSONUrl.pathname) {\n break\n }\n }\n\n const packageJSONPath = fileURLToPath(packageJSONUrl);\n // ^^ Note: in Node, this is now a native module.\n\n return {\n pjsonPath: packageJSONPath,\n exists: false,\n type: 'none'\n }\n}\n\n/**\n * Returns the package type for a given URL.\n * @param {URL} url - The URL to get the package type for.\n * @returns {PackageType}\n */\nfunction getPackageType(url) {\n // To do @anonrig: Write a C++ function that returns only \"type\".\n return getPackageScopeConfig(url).type\n}\n\n// Manually “tree shaken” from:\n// \n// Last checked on: Apr 29, 2023.\n\n\nconst {ERR_UNKNOWN_FILE_EXTENSION} = codes;\n\nconst hasOwnProperty = {}.hasOwnProperty;\n\n/** @type {Record} */\nconst extensionFormatMap = {\n // @ts-expect-error: hush.\n __proto__: null,\n '.cjs': 'commonjs',\n '.js': 'module',\n '.json': 'json',\n '.mjs': 'module'\n};\n\n/**\n * @param {string | null} mime\n * @returns {string | null}\n */\nfunction mimeToFormat(mime) {\n if (\n mime &&\n /\\s*(text|application)\\/javascript\\s*(;\\s*charset=utf-?8\\s*)?/i.test(mime)\n )\n return 'module'\n if (mime === 'application/json') return 'json'\n return null\n}\n\n/**\n * @callback ProtocolHandler\n * @param {URL} parsed\n * @param {{parentURL: string, source?: Buffer}} context\n * @param {boolean} ignoreErrors\n * @returns {string | null | void}\n */\n\n/**\n * @type {Record}\n */\nconst protocolHandlers = {\n // @ts-expect-error: hush.\n __proto__: null,\n 'data:': getDataProtocolModuleFormat,\n 'file:': getFileProtocolModuleFormat,\n 'http:': getHttpProtocolModuleFormat,\n 'https:': getHttpProtocolModuleFormat,\n 'node:'() {\n return 'builtin'\n }\n};\n\n/**\n * @param {URL} parsed\n */\nfunction getDataProtocolModuleFormat(parsed) {\n const {1: mime} = /^([^/]+\\/[^;,]+)[^,]*?(;base64)?,/.exec(\n parsed.pathname\n ) || [null, null, null];\n return mimeToFormat(mime)\n}\n\n/**\n * Returns the file extension from a URL.\n *\n * Should give similar result to\n * `require('node:path').extname(require('node:url').fileURLToPath(url))`\n * when used with a `file:` URL.\n *\n * @param {URL} url\n * @returns {string}\n */\nfunction extname(url) {\n const pathname = url.pathname;\n let index = pathname.length;\n\n while (index--) {\n const code = pathname.codePointAt(index);\n\n if (code === 47 /* `/` */) {\n return ''\n }\n\n if (code === 46 /* `.` */) {\n return pathname.codePointAt(index - 1) === 47 /* `/` */\n ? ''\n : pathname.slice(index)\n }\n }\n\n return ''\n}\n\n/**\n * @type {ProtocolHandler}\n */\nfunction getFileProtocolModuleFormat(url, _context, ignoreErrors) {\n const value = extname(url);\n\n if (value === '.js') {\n const packageType = getPackageType(url);\n\n if (packageType !== 'none') {\n return packageType\n }\n\n return 'commonjs'\n }\n\n if (value === '') {\n const packageType = getPackageType(url);\n\n // Legacy behavior\n if (packageType === 'none' || packageType === 'commonjs') {\n return 'commonjs'\n }\n\n // Note: we don’t implement WASM, so we don’t need\n // `getFormatOfExtensionlessFile` from `formats`.\n return 'module'\n }\n\n const format = extensionFormatMap[value];\n if (format) return format\n\n // Explicit undefined return indicates load hook should rerun format check\n if (ignoreErrors) {\n return undefined\n }\n\n const filepath = fileURLToPath(url);\n throw new ERR_UNKNOWN_FILE_EXTENSION(value, filepath)\n}\n\nfunction getHttpProtocolModuleFormat() {\n // To do: HTTPS imports.\n}\n\n/**\n * @param {URL} url\n * @param {{parentURL: string}} context\n * @returns {string | null}\n */\nfunction defaultGetFormatWithoutErrors(url, context) {\n const protocol = url.protocol;\n\n if (!hasOwnProperty.call(protocolHandlers, protocol)) {\n return null\n }\n\n return protocolHandlers[protocol](url, context, true) || null\n}\n\n// Manually “tree shaken” from:\n// \n// Last checked on: Apr 29, 2023.\n\n\nconst {ERR_INVALID_ARG_VALUE} = codes;\n\n// In Node itself these values are populated from CLI arguments, before any\n// user code runs.\n// Here we just define the defaults.\nconst DEFAULT_CONDITIONS = Object.freeze(['node', 'import']);\nconst DEFAULT_CONDITIONS_SET = new Set(DEFAULT_CONDITIONS);\n\n/**\n * Returns the default conditions for ES module loading.\n */\nfunction getDefaultConditions() {\n return DEFAULT_CONDITIONS\n}\n\n/**\n * Returns the default conditions for ES module loading, as a Set.\n */\nfunction getDefaultConditionsSet() {\n return DEFAULT_CONDITIONS_SET\n}\n\n/**\n * @param {Array} [conditions]\n * @returns {Set}\n */\nfunction getConditionsSet(conditions) {\n if (conditions !== undefined && conditions !== getDefaultConditions()) {\n if (!Array.isArray(conditions)) {\n throw new ERR_INVALID_ARG_VALUE(\n 'conditions',\n conditions,\n 'expected an array'\n )\n }\n\n return new Set(conditions)\n }\n\n return getDefaultConditionsSet()\n}\n\n// Manually “tree shaken” from:\n// \n// Last checked on: Apr 29, 2023.\n\n\nconst RegExpPrototypeSymbolReplace = RegExp.prototype[Symbol.replace];\n\nconst {\n ERR_NETWORK_IMPORT_DISALLOWED,\n ERR_INVALID_MODULE_SPECIFIER,\n ERR_INVALID_PACKAGE_CONFIG,\n ERR_INVALID_PACKAGE_TARGET,\n ERR_MODULE_NOT_FOUND,\n ERR_PACKAGE_IMPORT_NOT_DEFINED,\n ERR_PACKAGE_PATH_NOT_EXPORTED,\n ERR_UNSUPPORTED_DIR_IMPORT,\n ERR_UNSUPPORTED_RESOLVE_REQUEST\n} = codes;\n\nconst own = {}.hasOwnProperty;\n\nconst invalidSegmentRegEx =\n /(^|\\\\|\\/)((\\.|%2e)(\\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))?(\\\\|\\/|$)/i;\nconst deprecatedInvalidSegmentRegEx =\n /(^|\\\\|\\/)((\\.|%2e)(\\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))(\\\\|\\/|$)/i;\nconst invalidPackageNameRegEx = /^\\.|%|\\\\/;\nconst patternRegEx = /\\*/g;\nconst encodedSeparatorRegEx = /%2f|%5c/i;\n/** @type {Set} */\nconst emittedPackageWarnings = new Set();\n\nconst doubleSlashRegEx = /[/\\\\]{2}/;\n\n/**\n *\n * @param {string} target\n * @param {string} request\n * @param {string} match\n * @param {URL} packageJsonUrl\n * @param {boolean} internal\n * @param {URL} base\n * @param {boolean} isTarget\n */\nfunction emitInvalidSegmentDeprecation(\n target,\n request,\n match,\n packageJsonUrl,\n internal,\n base,\n isTarget\n) {\n // @ts-expect-error: apparently it does exist, TS.\n if (process.noDeprecation) {\n return\n }\n\n const pjsonPath = fileURLToPath(packageJsonUrl);\n const double = doubleSlashRegEx.exec(isTarget ? target : request) !== null;\n process.emitWarning(\n `Use of deprecated ${\n double ? 'double slash' : 'leading or trailing slash matching'\n } resolving \"${target}\" for module ` +\n `request \"${request}\" ${\n request === match ? '' : `matched to \"${match}\" `\n }in the \"${\n internal ? 'imports' : 'exports'\n }\" field module resolution of the package at ${pjsonPath}${\n base ? ` imported from ${fileURLToPath(base)}` : ''\n }.`,\n 'DeprecationWarning',\n 'DEP0166'\n );\n}\n\n/**\n * @param {URL} url\n * @param {URL} packageJsonUrl\n * @param {URL} base\n * @param {string} [main]\n * @returns {void}\n */\nfunction emitLegacyIndexDeprecation(url, packageJsonUrl, base, main) {\n // @ts-expect-error: apparently it does exist, TS.\n if (process.noDeprecation) {\n return\n }\n\n const format = defaultGetFormatWithoutErrors(url, {parentURL: base.href});\n if (format !== 'module') return\n const urlPath = fileURLToPath(url.href);\n const packagePath = fileURLToPath(new URL$1('.', packageJsonUrl));\n const basePath = fileURLToPath(base);\n if (!main) {\n process.emitWarning(\n `No \"main\" or \"exports\" field defined in the package.json for ${packagePath} resolving the main entry point \"${urlPath.slice(\n packagePath.length\n )}\", imported from ${basePath}.\\nDefault \"index\" lookups for the main are deprecated for ES modules.`,\n 'DeprecationWarning',\n 'DEP0151'\n );\n } else if (path.resolve(packagePath, main) !== urlPath) {\n process.emitWarning(\n `Package ${packagePath} has a \"main\" field set to \"${main}\", ` +\n `excluding the full filename and extension to the resolved file at \"${urlPath.slice(\n packagePath.length\n )}\", imported from ${basePath}.\\n Automatic extension resolution of the \"main\" field is ` +\n 'deprecated for ES modules.',\n 'DeprecationWarning',\n 'DEP0151'\n );\n }\n}\n\n/**\n * @param {string} path\n * @returns {Stats | undefined}\n */\nfunction tryStatSync(path) {\n // Note: from Node 15 onwards we can use `throwIfNoEntry: false` instead.\n try {\n return statSync(path)\n } catch {\n // Note: in Node code this returns `new Stats`,\n // but in Node 22 that’s marked as a deprecated internal API.\n // Which, well, we kinda are, but still to prevent that warning,\n // just yield `undefined`.\n }\n}\n\n/**\n * Legacy CommonJS main resolution:\n * 1. let M = pkg_url + (json main field)\n * 2. TRY(M, M.js, M.json, M.node)\n * 3. TRY(M/index.js, M/index.json, M/index.node)\n * 4. TRY(pkg_url/index.js, pkg_url/index.json, pkg_url/index.node)\n * 5. NOT_FOUND\n *\n * @param {URL} url\n * @returns {boolean}\n */\nfunction fileExists(url) {\n const stats = statSync(url, {throwIfNoEntry: false});\n const isFile = stats ? stats.isFile() : undefined;\n return isFile === null || isFile === undefined ? false : isFile\n}\n\n/**\n * @param {URL} packageJsonUrl\n * @param {PackageConfig} packageConfig\n * @param {URL} base\n * @returns {URL}\n */\nfunction legacyMainResolve(packageJsonUrl, packageConfig, base) {\n /** @type {URL | undefined} */\n let guess;\n if (packageConfig.main !== undefined) {\n guess = new URL$1(packageConfig.main, packageJsonUrl);\n // Note: fs check redundances will be handled by Descriptor cache here.\n if (fileExists(guess)) return guess\n\n const tries = [\n `./${packageConfig.main}.js`,\n `./${packageConfig.main}.json`,\n `./${packageConfig.main}.node`,\n `./${packageConfig.main}/index.js`,\n `./${packageConfig.main}/index.json`,\n `./${packageConfig.main}/index.node`\n ];\n let i = -1;\n\n while (++i < tries.length) {\n guess = new URL$1(tries[i], packageJsonUrl);\n if (fileExists(guess)) break\n guess = undefined;\n }\n\n if (guess) {\n emitLegacyIndexDeprecation(\n guess,\n packageJsonUrl,\n base,\n packageConfig.main\n );\n return guess\n }\n // Fallthrough.\n }\n\n const tries = ['./index.js', './index.json', './index.node'];\n let i = -1;\n\n while (++i < tries.length) {\n guess = new URL$1(tries[i], packageJsonUrl);\n if (fileExists(guess)) break\n guess = undefined;\n }\n\n if (guess) {\n emitLegacyIndexDeprecation(guess, packageJsonUrl, base, packageConfig.main);\n return guess\n }\n\n // Not found.\n throw new ERR_MODULE_NOT_FOUND(\n fileURLToPath(new URL$1('.', packageJsonUrl)),\n fileURLToPath(base)\n )\n}\n\n/**\n * @param {URL} resolved\n * @param {URL} base\n * @param {boolean} [preserveSymlinks]\n * @returns {URL}\n */\nfunction finalizeResolution(resolved, base, preserveSymlinks) {\n if (encodedSeparatorRegEx.exec(resolved.pathname) !== null) {\n throw new ERR_INVALID_MODULE_SPECIFIER(\n resolved.pathname,\n 'must not include encoded \"/\" or \"\\\\\" characters',\n fileURLToPath(base)\n )\n }\n\n /** @type {string} */\n let filePath;\n\n try {\n filePath = fileURLToPath(resolved);\n } catch (error) {\n const cause = /** @type {ErrnoException} */ (error);\n Object.defineProperty(cause, 'input', {value: String(resolved)});\n Object.defineProperty(cause, 'module', {value: String(base)});\n throw cause\n }\n\n const stats = tryStatSync(\n filePath.endsWith('/') ? filePath.slice(-1) : filePath\n );\n\n if (stats && stats.isDirectory()) {\n const error = new ERR_UNSUPPORTED_DIR_IMPORT(filePath, fileURLToPath(base));\n // @ts-expect-error Add this for `import.meta.resolve`.\n error.url = String(resolved);\n throw error\n }\n\n if (!stats || !stats.isFile()) {\n const error = new ERR_MODULE_NOT_FOUND(\n filePath || resolved.pathname,\n base && fileURLToPath(base),\n true\n );\n // @ts-expect-error Add this for `import.meta.resolve`.\n error.url = String(resolved);\n throw error\n }\n\n if (!preserveSymlinks) {\n const real = realpathSync(filePath);\n const {search, hash} = resolved;\n resolved = pathToFileURL(real + (filePath.endsWith(path.sep) ? '/' : ''));\n resolved.search = search;\n resolved.hash = hash;\n }\n\n return resolved\n}\n\n/**\n * @param {string} specifier\n * @param {URL | undefined} packageJsonUrl\n * @param {URL} base\n * @returns {Error}\n */\nfunction importNotDefined(specifier, packageJsonUrl, base) {\n return new ERR_PACKAGE_IMPORT_NOT_DEFINED(\n specifier,\n packageJsonUrl && fileURLToPath(new URL$1('.', packageJsonUrl)),\n fileURLToPath(base)\n )\n}\n\n/**\n * @param {string} subpath\n * @param {URL} packageJsonUrl\n * @param {URL} base\n * @returns {Error}\n */\nfunction exportsNotFound(subpath, packageJsonUrl, base) {\n return new ERR_PACKAGE_PATH_NOT_EXPORTED(\n fileURLToPath(new URL$1('.', packageJsonUrl)),\n subpath,\n base && fileURLToPath(base)\n )\n}\n\n/**\n * @param {string} request\n * @param {string} match\n * @param {URL} packageJsonUrl\n * @param {boolean} internal\n * @param {URL} [base]\n * @returns {never}\n */\nfunction throwInvalidSubpath(request, match, packageJsonUrl, internal, base) {\n const reason = `request is not a valid match in pattern \"${match}\" for the \"${\n internal ? 'imports' : 'exports'\n }\" resolution of ${fileURLToPath(packageJsonUrl)}`;\n throw new ERR_INVALID_MODULE_SPECIFIER(\n request,\n reason,\n base && fileURLToPath(base)\n )\n}\n\n/**\n * @param {string} subpath\n * @param {unknown} target\n * @param {URL} packageJsonUrl\n * @param {boolean} internal\n * @param {URL} [base]\n * @returns {Error}\n */\nfunction invalidPackageTarget(subpath, target, packageJsonUrl, internal, base) {\n target =\n typeof target === 'object' && target !== null\n ? JSON.stringify(target, null, '')\n : `${target}`;\n\n return new ERR_INVALID_PACKAGE_TARGET(\n fileURLToPath(new URL$1('.', packageJsonUrl)),\n subpath,\n target,\n internal,\n base && fileURLToPath(base)\n )\n}\n\n/**\n * @param {string} target\n * @param {string} subpath\n * @param {string} match\n * @param {URL} packageJsonUrl\n * @param {URL} base\n * @param {boolean} pattern\n * @param {boolean} internal\n * @param {boolean} isPathMap\n * @param {Set | undefined} conditions\n * @returns {URL}\n */\nfunction resolvePackageTargetString(\n target,\n subpath,\n match,\n packageJsonUrl,\n base,\n pattern,\n internal,\n isPathMap,\n conditions\n) {\n if (subpath !== '' && !pattern && target[target.length - 1] !== '/')\n throw invalidPackageTarget(match, target, packageJsonUrl, internal, base)\n\n if (!target.startsWith('./')) {\n if (internal && !target.startsWith('../') && !target.startsWith('/')) {\n let isURL = false;\n\n try {\n new URL$1(target);\n isURL = true;\n } catch {\n // Continue regardless of error.\n }\n\n if (!isURL) {\n const exportTarget = pattern\n ? RegExpPrototypeSymbolReplace.call(\n patternRegEx,\n target,\n () => subpath\n )\n : target + subpath;\n\n return packageResolve(exportTarget, packageJsonUrl, conditions)\n }\n }\n\n throw invalidPackageTarget(match, target, packageJsonUrl, internal, base)\n }\n\n if (invalidSegmentRegEx.exec(target.slice(2)) !== null) {\n if (deprecatedInvalidSegmentRegEx.exec(target.slice(2)) === null) {\n if (!isPathMap) {\n const request = pattern\n ? match.replace('*', () => subpath)\n : match + subpath;\n const resolvedTarget = pattern\n ? RegExpPrototypeSymbolReplace.call(\n patternRegEx,\n target,\n () => subpath\n )\n : target;\n emitInvalidSegmentDeprecation(\n resolvedTarget,\n request,\n match,\n packageJsonUrl,\n internal,\n base,\n true\n );\n }\n } else {\n throw invalidPackageTarget(match, target, packageJsonUrl, internal, base)\n }\n }\n\n const resolved = new URL$1(target, packageJsonUrl);\n const resolvedPath = resolved.pathname;\n const packagePath = new URL$1('.', packageJsonUrl).pathname;\n\n if (!resolvedPath.startsWith(packagePath))\n throw invalidPackageTarget(match, target, packageJsonUrl, internal, base)\n\n if (subpath === '') return resolved\n\n if (invalidSegmentRegEx.exec(subpath) !== null) {\n const request = pattern\n ? match.replace('*', () => subpath)\n : match + subpath;\n if (deprecatedInvalidSegmentRegEx.exec(subpath) === null) {\n if (!isPathMap) {\n const resolvedTarget = pattern\n ? RegExpPrototypeSymbolReplace.call(\n patternRegEx,\n target,\n () => subpath\n )\n : target;\n emitInvalidSegmentDeprecation(\n resolvedTarget,\n request,\n match,\n packageJsonUrl,\n internal,\n base,\n false\n );\n }\n } else {\n throwInvalidSubpath(request, match, packageJsonUrl, internal, base);\n }\n }\n\n if (pattern) {\n return new URL$1(\n RegExpPrototypeSymbolReplace.call(\n patternRegEx,\n resolved.href,\n () => subpath\n )\n )\n }\n\n return new URL$1(subpath, resolved)\n}\n\n/**\n * @param {string} key\n * @returns {boolean}\n */\nfunction isArrayIndex(key) {\n const keyNumber = Number(key);\n if (`${keyNumber}` !== key) return false\n return keyNumber >= 0 && keyNumber < 0xff_ff_ff_ff\n}\n\n/**\n * @param {URL} packageJsonUrl\n * @param {unknown} target\n * @param {string} subpath\n * @param {string} packageSubpath\n * @param {URL} base\n * @param {boolean} pattern\n * @param {boolean} internal\n * @param {boolean} isPathMap\n * @param {Set | undefined} conditions\n * @returns {URL | null}\n */\nfunction resolvePackageTarget(\n packageJsonUrl,\n target,\n subpath,\n packageSubpath,\n base,\n pattern,\n internal,\n isPathMap,\n conditions\n) {\n if (typeof target === 'string') {\n return resolvePackageTargetString(\n target,\n subpath,\n packageSubpath,\n packageJsonUrl,\n base,\n pattern,\n internal,\n isPathMap,\n conditions\n )\n }\n\n if (Array.isArray(target)) {\n /** @type {Array} */\n const targetList = target;\n if (targetList.length === 0) return null\n\n /** @type {ErrnoException | null | undefined} */\n let lastException;\n let i = -1;\n\n while (++i < targetList.length) {\n const targetItem = targetList[i];\n /** @type {URL | null} */\n let resolveResult;\n try {\n resolveResult = resolvePackageTarget(\n packageJsonUrl,\n targetItem,\n subpath,\n packageSubpath,\n base,\n pattern,\n internal,\n isPathMap,\n conditions\n );\n } catch (error) {\n const exception = /** @type {ErrnoException} */ (error);\n lastException = exception;\n if (exception.code === 'ERR_INVALID_PACKAGE_TARGET') continue\n throw error\n }\n\n if (resolveResult === undefined) continue\n\n if (resolveResult === null) {\n lastException = null;\n continue\n }\n\n return resolveResult\n }\n\n if (lastException === undefined || lastException === null) {\n return null\n }\n\n throw lastException\n }\n\n if (typeof target === 'object' && target !== null) {\n const keys = Object.getOwnPropertyNames(target);\n let i = -1;\n\n while (++i < keys.length) {\n const key = keys[i];\n if (isArrayIndex(key)) {\n throw new ERR_INVALID_PACKAGE_CONFIG(\n fileURLToPath(packageJsonUrl),\n base,\n '\"exports\" cannot contain numeric property keys.'\n )\n }\n }\n\n i = -1;\n\n while (++i < keys.length) {\n const key = keys[i];\n if (key === 'default' || (conditions && conditions.has(key))) {\n // @ts-expect-error: indexable.\n const conditionalTarget = /** @type {unknown} */ (target[key]);\n const resolveResult = resolvePackageTarget(\n packageJsonUrl,\n conditionalTarget,\n subpath,\n packageSubpath,\n base,\n pattern,\n internal,\n isPathMap,\n conditions\n );\n if (resolveResult === undefined) continue\n return resolveResult\n }\n }\n\n return null\n }\n\n if (target === null) {\n return null\n }\n\n throw invalidPackageTarget(\n packageSubpath,\n target,\n packageJsonUrl,\n internal,\n base\n )\n}\n\n/**\n * @param {unknown} exports\n * @param {URL} packageJsonUrl\n * @param {URL} base\n * @returns {boolean}\n */\nfunction isConditionalExportsMainSugar(exports, packageJsonUrl, base) {\n if (typeof exports === 'string' || Array.isArray(exports)) return true\n if (typeof exports !== 'object' || exports === null) return false\n\n const keys = Object.getOwnPropertyNames(exports);\n let isConditionalSugar = false;\n let i = 0;\n let keyIndex = -1;\n while (++keyIndex < keys.length) {\n const key = keys[keyIndex];\n const currentIsConditionalSugar = key === '' || key[0] !== '.';\n if (i++ === 0) {\n isConditionalSugar = currentIsConditionalSugar;\n } else if (isConditionalSugar !== currentIsConditionalSugar) {\n throw new ERR_INVALID_PACKAGE_CONFIG(\n fileURLToPath(packageJsonUrl),\n base,\n '\"exports\" cannot contain some keys starting with \\'.\\' and some not.' +\n ' The exports object must either be an object of package subpath keys' +\n ' or an object of main entry condition name keys only.'\n )\n }\n }\n\n return isConditionalSugar\n}\n\n/**\n * @param {string} match\n * @param {URL} pjsonUrl\n * @param {URL} base\n */\nfunction emitTrailingSlashPatternDeprecation(match, pjsonUrl, base) {\n // @ts-expect-error: apparently it does exist, TS.\n if (process.noDeprecation) {\n return\n }\n\n const pjsonPath = fileURLToPath(pjsonUrl);\n if (emittedPackageWarnings.has(pjsonPath + '|' + match)) return\n emittedPackageWarnings.add(pjsonPath + '|' + match);\n process.emitWarning(\n `Use of deprecated trailing slash pattern mapping \"${match}\" in the ` +\n `\"exports\" field module resolution of the package at ${pjsonPath}${\n base ? ` imported from ${fileURLToPath(base)}` : ''\n }. Mapping specifiers ending in \"/\" is no longer supported.`,\n 'DeprecationWarning',\n 'DEP0155'\n );\n}\n\n/**\n * @param {URL} packageJsonUrl\n * @param {string} packageSubpath\n * @param {Record} packageConfig\n * @param {URL} base\n * @param {Set | undefined} conditions\n * @returns {URL}\n */\nfunction packageExportsResolve(\n packageJsonUrl,\n packageSubpath,\n packageConfig,\n base,\n conditions\n) {\n let exports = packageConfig.exports;\n\n if (isConditionalExportsMainSugar(exports, packageJsonUrl, base)) {\n exports = {'.': exports};\n }\n\n if (\n own.call(exports, packageSubpath) &&\n !packageSubpath.includes('*') &&\n !packageSubpath.endsWith('/')\n ) {\n // @ts-expect-error: indexable.\n const target = exports[packageSubpath];\n const resolveResult = resolvePackageTarget(\n packageJsonUrl,\n target,\n '',\n packageSubpath,\n base,\n false,\n false,\n false,\n conditions\n );\n if (resolveResult === null || resolveResult === undefined) {\n throw exportsNotFound(packageSubpath, packageJsonUrl, base)\n }\n\n return resolveResult\n }\n\n let bestMatch = '';\n let bestMatchSubpath = '';\n const keys = Object.getOwnPropertyNames(exports);\n let i = -1;\n\n while (++i < keys.length) {\n const key = keys[i];\n const patternIndex = key.indexOf('*');\n\n if (\n patternIndex !== -1 &&\n packageSubpath.startsWith(key.slice(0, patternIndex))\n ) {\n // When this reaches EOL, this can throw at the top of the whole function:\n //\n // if (StringPrototypeEndsWith(packageSubpath, '/'))\n // throwInvalidSubpath(packageSubpath)\n //\n // To match \"imports\" and the spec.\n if (packageSubpath.endsWith('/')) {\n emitTrailingSlashPatternDeprecation(\n packageSubpath,\n packageJsonUrl,\n base\n );\n }\n\n const patternTrailer = key.slice(patternIndex + 1);\n\n if (\n packageSubpath.length >= key.length &&\n packageSubpath.endsWith(patternTrailer) &&\n patternKeyCompare(bestMatch, key) === 1 &&\n key.lastIndexOf('*') === patternIndex\n ) {\n bestMatch = key;\n bestMatchSubpath = packageSubpath.slice(\n patternIndex,\n packageSubpath.length - patternTrailer.length\n );\n }\n }\n }\n\n if (bestMatch) {\n // @ts-expect-error: indexable.\n const target = /** @type {unknown} */ (exports[bestMatch]);\n const resolveResult = resolvePackageTarget(\n packageJsonUrl,\n target,\n bestMatchSubpath,\n bestMatch,\n base,\n true,\n false,\n packageSubpath.endsWith('/'),\n conditions\n );\n\n if (resolveResult === null || resolveResult === undefined) {\n throw exportsNotFound(packageSubpath, packageJsonUrl, base)\n }\n\n return resolveResult\n }\n\n throw exportsNotFound(packageSubpath, packageJsonUrl, base)\n}\n\n/**\n * @param {string} a\n * @param {string} b\n */\nfunction patternKeyCompare(a, b) {\n const aPatternIndex = a.indexOf('*');\n const bPatternIndex = b.indexOf('*');\n const baseLengthA = aPatternIndex === -1 ? a.length : aPatternIndex + 1;\n const baseLengthB = bPatternIndex === -1 ? b.length : bPatternIndex + 1;\n if (baseLengthA > baseLengthB) return -1\n if (baseLengthB > baseLengthA) return 1\n if (aPatternIndex === -1) return 1\n if (bPatternIndex === -1) return -1\n if (a.length > b.length) return -1\n if (b.length > a.length) return 1\n return 0\n}\n\n/**\n * @param {string} name\n * @param {URL} base\n * @param {Set} [conditions]\n * @returns {URL}\n */\nfunction packageImportsResolve(name, base, conditions) {\n if (name === '#' || name.startsWith('#/') || name.endsWith('/')) {\n const reason = 'is not a valid internal imports specifier name';\n throw new ERR_INVALID_MODULE_SPECIFIER(name, reason, fileURLToPath(base))\n }\n\n /** @type {URL | undefined} */\n let packageJsonUrl;\n\n const packageConfig = getPackageScopeConfig(base);\n\n if (packageConfig.exists) {\n packageJsonUrl = pathToFileURL(packageConfig.pjsonPath);\n const imports = packageConfig.imports;\n if (imports) {\n if (own.call(imports, name) && !name.includes('*')) {\n const resolveResult = resolvePackageTarget(\n packageJsonUrl,\n imports[name],\n '',\n name,\n base,\n false,\n true,\n false,\n conditions\n );\n if (resolveResult !== null && resolveResult !== undefined) {\n return resolveResult\n }\n } else {\n let bestMatch = '';\n let bestMatchSubpath = '';\n const keys = Object.getOwnPropertyNames(imports);\n let i = -1;\n\n while (++i < keys.length) {\n const key = keys[i];\n const patternIndex = key.indexOf('*');\n\n if (patternIndex !== -1 && name.startsWith(key.slice(0, -1))) {\n const patternTrailer = key.slice(patternIndex + 1);\n if (\n name.length >= key.length &&\n name.endsWith(patternTrailer) &&\n patternKeyCompare(bestMatch, key) === 1 &&\n key.lastIndexOf('*') === patternIndex\n ) {\n bestMatch = key;\n bestMatchSubpath = name.slice(\n patternIndex,\n name.length - patternTrailer.length\n );\n }\n }\n }\n\n if (bestMatch) {\n const target = imports[bestMatch];\n const resolveResult = resolvePackageTarget(\n packageJsonUrl,\n target,\n bestMatchSubpath,\n bestMatch,\n base,\n true,\n true,\n false,\n conditions\n );\n\n if (resolveResult !== null && resolveResult !== undefined) {\n return resolveResult\n }\n }\n }\n }\n }\n\n throw importNotDefined(name, packageJsonUrl, base)\n}\n\n/**\n * @param {string} specifier\n * @param {URL} base\n */\nfunction parsePackageName(specifier, base) {\n let separatorIndex = specifier.indexOf('/');\n let validPackageName = true;\n let isScoped = false;\n if (specifier[0] === '@') {\n isScoped = true;\n if (separatorIndex === -1 || specifier.length === 0) {\n validPackageName = false;\n } else {\n separatorIndex = specifier.indexOf('/', separatorIndex + 1);\n }\n }\n\n const packageName =\n separatorIndex === -1 ? specifier : specifier.slice(0, separatorIndex);\n\n // Package name cannot have leading . and cannot have percent-encoding or\n // \\\\ separators.\n if (invalidPackageNameRegEx.exec(packageName) !== null) {\n validPackageName = false;\n }\n\n if (!validPackageName) {\n throw new ERR_INVALID_MODULE_SPECIFIER(\n specifier,\n 'is not a valid package name',\n fileURLToPath(base)\n )\n }\n\n const packageSubpath =\n '.' + (separatorIndex === -1 ? '' : specifier.slice(separatorIndex));\n\n return {packageName, packageSubpath, isScoped}\n}\n\n/**\n * @param {string} specifier\n * @param {URL} base\n * @param {Set | undefined} conditions\n * @returns {URL}\n */\nfunction packageResolve(specifier, base, conditions) {\n if (builtinModules.includes(specifier)) {\n return new URL$1('node:' + specifier)\n }\n\n const {packageName, packageSubpath, isScoped} = parsePackageName(\n specifier,\n base\n );\n\n // ResolveSelf\n const packageConfig = getPackageScopeConfig(base);\n\n // Can’t test.\n /* c8 ignore next 16 */\n if (packageConfig.exists) {\n const packageJsonUrl = pathToFileURL(packageConfig.pjsonPath);\n if (\n packageConfig.name === packageName &&\n packageConfig.exports !== undefined &&\n packageConfig.exports !== null\n ) {\n return packageExportsResolve(\n packageJsonUrl,\n packageSubpath,\n packageConfig,\n base,\n conditions\n )\n }\n }\n\n let packageJsonUrl = new URL$1(\n './node_modules/' + packageName + '/package.json',\n base\n );\n let packageJsonPath = fileURLToPath(packageJsonUrl);\n /** @type {string} */\n let lastPath;\n do {\n const stat = tryStatSync(packageJsonPath.slice(0, -13));\n if (!stat || !stat.isDirectory()) {\n lastPath = packageJsonPath;\n packageJsonUrl = new URL$1(\n (isScoped ? '../../../../node_modules/' : '../../../node_modules/') +\n packageName +\n '/package.json',\n packageJsonUrl\n );\n packageJsonPath = fileURLToPath(packageJsonUrl);\n continue\n }\n\n // Package match.\n const packageConfig = read(packageJsonPath, {base, specifier});\n if (packageConfig.exports !== undefined && packageConfig.exports !== null) {\n return packageExportsResolve(\n packageJsonUrl,\n packageSubpath,\n packageConfig,\n base,\n conditions\n )\n }\n\n if (packageSubpath === '.') {\n return legacyMainResolve(packageJsonUrl, packageConfig, base)\n }\n\n return new URL$1(packageSubpath, packageJsonUrl)\n // Cross-platform root check.\n } while (packageJsonPath.length !== lastPath.length)\n\n throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), false)\n}\n\n/**\n * @param {string} specifier\n * @returns {boolean}\n */\nfunction isRelativeSpecifier(specifier) {\n if (specifier[0] === '.') {\n if (specifier.length === 1 || specifier[1] === '/') return true\n if (\n specifier[1] === '.' &&\n (specifier.length === 2 || specifier[2] === '/')\n ) {\n return true\n }\n }\n\n return false\n}\n\n/**\n * @param {string} specifier\n * @returns {boolean}\n */\nfunction shouldBeTreatedAsRelativeOrAbsolutePath(specifier) {\n if (specifier === '') return false\n if (specifier[0] === '/') return true\n return isRelativeSpecifier(specifier)\n}\n\n/**\n * The “Resolver Algorithm Specification” as detailed in the Node docs (which is\n * sync and slightly lower-level than `resolve`).\n *\n * @param {string} specifier\n * `/example.js`, `./example.js`, `../example.js`, `some-package`, `fs`, etc.\n * @param {URL} base\n * Full URL (to a file) that `specifier` is resolved relative from.\n * @param {Set} [conditions]\n * Conditions.\n * @param {boolean} [preserveSymlinks]\n * Keep symlinks instead of resolving them.\n * @returns {URL}\n * A URL object to the found thing.\n */\nfunction moduleResolve(specifier, base, conditions, preserveSymlinks) {\n // Note: The Node code supports `base` as a string (in this internal API) too,\n // we don’t.\n const protocol = base.protocol;\n const isData = protocol === 'data:';\n const isRemote = isData || protocol === 'http:' || protocol === 'https:';\n // Order swapped from spec for minor perf gain.\n // Ok since relative URLs cannot parse as URLs.\n /** @type {URL | undefined} */\n let resolved;\n\n if (shouldBeTreatedAsRelativeOrAbsolutePath(specifier)) {\n try {\n resolved = new URL$1(specifier, base);\n } catch (error_) {\n const error = new ERR_UNSUPPORTED_RESOLVE_REQUEST(specifier, base);\n error.cause = error_;\n throw error\n }\n } else if (protocol === 'file:' && specifier[0] === '#') {\n resolved = packageImportsResolve(specifier, base, conditions);\n } else {\n try {\n resolved = new URL$1(specifier);\n } catch (error_) {\n // Note: actual code uses `canBeRequiredWithoutScheme`.\n if (isRemote && !builtinModules.includes(specifier)) {\n const error = new ERR_UNSUPPORTED_RESOLVE_REQUEST(specifier, base);\n error.cause = error_;\n throw error\n }\n\n resolved = packageResolve(specifier, base, conditions);\n }\n }\n\n assert(resolved !== undefined, 'expected to be defined');\n\n if (resolved.protocol !== 'file:') {\n return resolved\n }\n\n return finalizeResolution(resolved, base, preserveSymlinks)\n}\n\n/**\n * @param {string} specifier\n * @param {URL | undefined} parsed\n * @param {URL | undefined} parsedParentURL\n */\nfunction checkIfDisallowedImport(specifier, parsed, parsedParentURL) {\n if (parsedParentURL) {\n // Avoid accessing the `protocol` property due to the lazy getters.\n const parentProtocol = parsedParentURL.protocol;\n\n if (parentProtocol === 'http:' || parentProtocol === 'https:') {\n if (shouldBeTreatedAsRelativeOrAbsolutePath(specifier)) {\n // Avoid accessing the `protocol` property due to the lazy getters.\n const parsedProtocol = parsed?.protocol;\n\n // `data:` and `blob:` disallowed due to allowing file: access via\n // indirection\n if (\n parsedProtocol &&\n parsedProtocol !== 'https:' &&\n parsedProtocol !== 'http:'\n ) {\n throw new ERR_NETWORK_IMPORT_DISALLOWED(\n specifier,\n parsedParentURL,\n 'remote imports cannot import from a local location.'\n )\n }\n\n return {url: parsed?.href || ''}\n }\n\n if (builtinModules.includes(specifier)) {\n throw new ERR_NETWORK_IMPORT_DISALLOWED(\n specifier,\n parsedParentURL,\n 'remote imports cannot import from a local location.'\n )\n }\n\n throw new ERR_NETWORK_IMPORT_DISALLOWED(\n specifier,\n parsedParentURL,\n 'only relative and absolute specifiers are supported.'\n )\n }\n }\n}\n\n// Note: this is from:\n// \n/**\n * Checks if a value has the shape of a WHATWG URL object.\n *\n * Using a symbol or instanceof would not be able to recognize URL objects\n * coming from other implementations (e.g. in Electron), so instead we are\n * checking some well known properties for a lack of a better test.\n *\n * We use `href` and `protocol` as they are the only properties that are\n * easy to retrieve and calculate due to the lazy nature of the getters.\n *\n * @template {unknown} Value\n * @param {Value} self\n * @returns {Value is URL}\n */\nfunction isURL(self) {\n return Boolean(\n self &&\n typeof self === 'object' &&\n 'href' in self &&\n typeof self.href === 'string' &&\n 'protocol' in self &&\n typeof self.protocol === 'string' &&\n self.href &&\n self.protocol\n )\n}\n\n/**\n * Validate user-input in `context` supplied by a custom loader.\n *\n * @param {unknown} parentURL\n * @returns {asserts parentURL is URL | string | undefined}\n */\nfunction throwIfInvalidParentURL(parentURL) {\n if (parentURL === undefined) {\n return // Main entry point, so no parent\n }\n\n if (typeof parentURL !== 'string' && !isURL(parentURL)) {\n throw new codes.ERR_INVALID_ARG_TYPE(\n 'parentURL',\n ['string', 'URL'],\n parentURL\n )\n }\n}\n\n/**\n * @param {string} specifier\n * @param {{parentURL?: string, conditions?: Array}} context\n * @returns {{url: string, format?: string | null}}\n */\nfunction defaultResolve(specifier, context = {}) {\n const {parentURL} = context;\n assert(parentURL !== undefined, 'expected `parentURL` to be defined');\n throwIfInvalidParentURL(parentURL);\n\n /** @type {URL | undefined} */\n let parsedParentURL;\n if (parentURL) {\n try {\n parsedParentURL = new URL$1(parentURL);\n } catch {\n // Ignore exception\n }\n }\n\n /** @type {URL | undefined} */\n let parsed;\n /** @type {string | undefined} */\n let protocol;\n\n try {\n parsed = shouldBeTreatedAsRelativeOrAbsolutePath(specifier)\n ? new URL$1(specifier, parsedParentURL)\n : new URL$1(specifier);\n\n // Avoid accessing the `protocol` property due to the lazy getters.\n protocol = parsed.protocol;\n\n if (protocol === 'data:') {\n return {url: parsed.href, format: null}\n }\n } catch {\n // Ignore exception\n }\n\n // There are multiple deep branches that can either throw or return; instead\n // of duplicating that deeply nested logic for the possible returns, DRY and\n // check for a return. This seems the least gnarly.\n const maybeReturn = checkIfDisallowedImport(\n specifier,\n parsed,\n parsedParentURL\n );\n\n if (maybeReturn) return maybeReturn\n\n // This must come after checkIfDisallowedImport\n if (protocol === undefined && parsed) {\n protocol = parsed.protocol;\n }\n\n if (protocol === 'node:') {\n return {url: specifier}\n }\n\n // This must come after checkIfDisallowedImport\n if (parsed && parsed.protocol === 'node:') return {url: specifier}\n\n const conditions = getConditionsSet(context.conditions);\n\n const url = moduleResolve(specifier, new URL$1(parentURL), conditions, false);\n\n return {\n // Do NOT cast `url` to a string: that will work even when there are real\n // problems, silencing them\n url: url.href,\n format: defaultGetFormatWithoutErrors(url, {parentURL})\n }\n}\n\n/**\n * @typedef {import('./lib/errors.js').ErrnoException} ErrnoException\n */\n\n\n/**\n * Match `import.meta.resolve` except that `parent` is required (you can pass\n * `import.meta.url`).\n *\n * @param {string} specifier\n * The module specifier to resolve relative to parent\n * (`/example.js`, `./example.js`, `../example.js`, `some-package`, `fs`,\n * etc).\n * @param {string} parent\n * The absolute parent module URL to resolve from.\n * You must pass `import.meta.url` or something else.\n * @returns {string}\n * Returns a string to a full `file:`, `data:`, or `node:` URL\n * to the found thing.\n */\nfunction resolve(specifier, parent) {\n if (!parent) {\n throw new Error(\n 'Please pass `parent`: `import-meta-resolve` cannot ponyfill that'\n )\n }\n\n try {\n return defaultResolve(specifier, {parentURL: parent}).url\n } catch (error) {\n // See: \n const exception = /** @type {ErrnoException} */ (error);\n\n if (\n (exception.code === 'ERR_UNSUPPORTED_DIR_IMPORT' ||\n exception.code === 'ERR_MODULE_NOT_FOUND') &&\n typeof exception.url === 'string'\n ) {\n return exception.url\n }\n\n throw error\n }\n}\n\nexport { moduleResolve, resolve };\n"],"mappings":";;;;;;;AAoFA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,IAAA;EAAA,MAAAF,IAAA,GAAAG,uBAAA,CAAAF,OAAA;EAAAC,GAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,KAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,IAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,MAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,KAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,GAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,EAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,MAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,KAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuC,SAAAG,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAcvC,MAAMkB,KAAK,GAAG,CAAC,CAAC,CAACL,cAAc;AAE/B,MAAMM,WAAW,GAAG,oBAAoB;AAExC,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAAC,CACrB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,QAAQ,EAER,UAAU,EACV,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAQ,CACT,CAAC;AAEF,MAAMC,KAAK,GAAG,CAAC,CAAC;AAahB,SAASC,UAAUA,CAACC,KAAK,EAAEC,IAAI,GAAG,KAAK,EAAE;EACvC,OAAOD,KAAK,CAACE,MAAM,GAAG,CAAC,GACnBF,KAAK,CAACG,IAAI,CAAC,IAAIF,IAAI,GAAG,CAAC,GACvB,GAAGD,KAAK,CAACI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAACD,IAAI,CAAC,IAAI,CAAC,KAAKF,IAAI,IAAID,KAAK,CAACA,KAAK,CAACE,MAAM,GAAG,CAAC,CAAC,EAAE;AAC5E;AAGA,MAAMG,QAAQ,GAAG,IAAIC,GAAG,CAAC,CAAC;AAC1B,MAAMC,kBAAkB,GAAG,kBAAkB;AAE7C,IAAIC,mBAAmB;AAEvBV,KAAK,CAACW,oBAAoB,GAAGC,WAAW,CACtC,sBAAsB,EAMtB,CAACC,IAAI,EAAEC,QAAQ,EAAEC,MAAM,KAAK;EAC1BC,QAAKA,CAAC,CAAC,OAAOH,IAAI,KAAK,QAAQ,EAAE,yBAAyB,CAAC;EAC3D,IAAI,CAACI,KAAK,CAACC,OAAO,CAACJ,QAAQ,CAAC,EAAE;IAC5BA,QAAQ,GAAG,CAACA,QAAQ,CAAC;EACvB;EAEA,IAAIK,OAAO,GAAG,MAAM;EACpB,IAAIN,IAAI,CAACO,QAAQ,CAAC,WAAW,CAAC,EAAE;IAE9BD,OAAO,IAAI,GAAGN,IAAI,GAAG;EACvB,CAAC,MAAM;IACL,MAAMV,IAAI,GAAGU,IAAI,CAACQ,QAAQ,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,UAAU;IACzDF,OAAO,IAAI,IAAIN,IAAI,KAAKV,IAAI,GAAG;EACjC;EAEAgB,OAAO,IAAI,UAAU;EAGrB,MAAMG,KAAK,GAAG,EAAE;EAEhB,MAAMC,SAAS,GAAG,EAAE;EAEpB,MAAMC,KAAK,GAAG,EAAE;EAEhB,KAAK,MAAMC,KAAK,IAAIX,QAAQ,EAAE;IAC5BE,QAAKA,CAAC,CACJ,OAAOS,KAAK,KAAK,QAAQ,EACzB,gDACF,CAAC;IAED,IAAI3B,MAAM,CAACV,GAAG,CAACqC,KAAK,CAAC,EAAE;MACrBH,KAAK,CAACI,IAAI,CAACD,KAAK,CAACE,WAAW,CAAC,CAAC,CAAC;IACjC,CAAC,MAAM,IAAI9B,WAAW,CAAC+B,IAAI,CAACH,KAAK,CAAC,KAAK,IAAI,EAAE;MAC3CT,QAAKA,CAAC,CACJS,KAAK,KAAK,QAAQ,EAClB,kDACF,CAAC;MACDD,KAAK,CAACE,IAAI,CAACD,KAAK,CAAC;IACnB,CAAC,MAAM;MACLF,SAAS,CAACG,IAAI,CAACD,KAAK,CAAC;IACvB;EACF;EAIA,IAAIF,SAAS,CAACnB,MAAM,GAAG,CAAC,EAAE;IACxB,MAAMyB,GAAG,GAAGP,KAAK,CAACQ,OAAO,CAAC,QAAQ,CAAC;IACnC,IAAID,GAAG,KAAK,CAAC,CAAC,EAAE;MACdP,KAAK,CAAChB,KAAK,CAACuB,GAAG,EAAE,CAAC,CAAC;MACnBN,SAAS,CAACG,IAAI,CAAC,QAAQ,CAAC;IAC1B;EACF;EAEA,IAAIJ,KAAK,CAAClB,MAAM,GAAG,CAAC,EAAE;IACpBe,OAAO,IAAI,GAAGG,KAAK,CAAClB,MAAM,GAAG,CAAC,GAAG,aAAa,GAAG,SAAS,IAAIH,UAAU,CACtEqB,KAAK,EACL,IACF,CAAC,EAAE;IACH,IAAIC,SAAS,CAACnB,MAAM,GAAG,CAAC,IAAIoB,KAAK,CAACpB,MAAM,GAAG,CAAC,EAAEe,OAAO,IAAI,MAAM;EACjE;EAEA,IAAII,SAAS,CAACnB,MAAM,GAAG,CAAC,EAAE;IACxBe,OAAO,IAAI,kBAAkBlB,UAAU,CAACsB,SAAS,EAAE,IAAI,CAAC,EAAE;IAC1D,IAAIC,KAAK,CAACpB,MAAM,GAAG,CAAC,EAAEe,OAAO,IAAI,MAAM;EACzC;EAEA,IAAIK,KAAK,CAACpB,MAAM,GAAG,CAAC,EAAE;IACpB,IAAIoB,KAAK,CAACpB,MAAM,GAAG,CAAC,EAAE;MACpBe,OAAO,IAAI,UAAUlB,UAAU,CAACuB,KAAK,EAAE,IAAI,CAAC,EAAE;IAChD,CAAC,MAAM;MACL,IAAIA,KAAK,CAAC,CAAC,CAAC,CAACG,WAAW,CAAC,CAAC,KAAKH,KAAK,CAAC,CAAC,CAAC,EAAEL,OAAO,IAAI,KAAK;MACzDA,OAAO,IAAI,GAAGK,KAAK,CAAC,CAAC,CAAC,EAAE;IAC1B;EACF;EAEAL,OAAO,IAAI,cAAcY,qBAAqB,CAAChB,MAAM,CAAC,EAAE;EAExD,OAAOI,OAAO;AAChB,CAAC,EACDa,SACF,CAAC;AAEDhC,KAAK,CAACiC,4BAA4B,GAAGrB,WAAW,CAC9C,8BAA8B,EAM9B,CAACsB,OAAO,EAAEC,MAAM,EAAEC,IAAI,GAAGC,SAAS,KAAK;EACrC,OAAO,mBAAmBH,OAAO,KAAKC,MAAM,GAC1CC,IAAI,GAAG,kBAAkBA,IAAI,EAAE,GAAG,EAAE,EACpC;AACJ,CAAC,EACDJ,SACF,CAAC;AAEDhC,KAAK,CAACsC,0BAA0B,GAAG1B,WAAW,CAC5C,4BAA4B,EAM5B,CAAC2B,IAAI,EAAEH,IAAI,EAAEjB,OAAO,KAAK;EACvB,OAAO,0BAA0BoB,IAAI,GACnCH,IAAI,GAAG,oBAAoBA,IAAI,EAAE,GAAG,EAAE,GACrCjB,OAAO,GAAG,KAAKA,OAAO,EAAE,GAAG,EAAE,EAAE;AACpC,CAAC,EACDqB,KACF,CAAC;AAEDxC,KAAK,CAACyC,0BAA0B,GAAG7B,WAAW,CAC5C,4BAA4B,EAQ5B,CAAC8B,WAAW,EAAEC,GAAG,EAAEC,MAAM,EAAEC,QAAQ,GAAG,KAAK,EAAET,IAAI,GAAGC,SAAS,KAAK;EAChE,MAAMS,YAAY,GAChB,OAAOF,MAAM,KAAK,QAAQ,IAC1B,CAACC,QAAQ,IACTD,MAAM,CAACxC,MAAM,GAAG,CAAC,IACjB,CAACwC,MAAM,CAACG,UAAU,CAAC,IAAI,CAAC;EAC1B,IAAIJ,GAAG,KAAK,GAAG,EAAE;IACf3B,QAAKA,CAAC,CAAC6B,QAAQ,KAAK,KAAK,CAAC;IAC1B,OACE,iCAAiCG,IAAI,CAACC,SAAS,CAACL,MAAM,CAAC,WAAW,GAClE,yBAAyBF,WAAW,eAClCN,IAAI,GAAG,kBAAkBA,IAAI,EAAE,GAAG,EAAE,GACnCU,YAAY,GAAG,gCAAgC,GAAG,EAAE,EAAE;EAE7D;EAEA,OAAO,YACLD,QAAQ,GAAG,SAAS,GAAG,SAAS,YACtBG,IAAI,CAACC,SAAS,CACxBL,MACF,CAAC,iBAAiBD,GAAG,2BAA2BD,WAAW,eACzDN,IAAI,GAAG,kBAAkBA,IAAI,EAAE,GAAG,EAAE,GACnCU,YAAY,GAAG,gCAAgC,GAAG,EAAE,EAAE;AAC3D,CAAC,EACDN,KACF,CAAC;AAEDxC,KAAK,CAACkD,oBAAoB,GAAGtC,WAAW,CACtC,sBAAsB,EAMtB,CAAC2B,IAAI,EAAEH,IAAI,EAAEe,QAAQ,GAAG,KAAK,KAAK;EAChC,OAAO,eACLA,QAAQ,GAAG,QAAQ,GAAG,SAAS,KAC5BZ,IAAI,mBAAmBH,IAAI,EAAE;AACpC,CAAC,EACDI,KACF,CAAC;AAEDxC,KAAK,CAACoD,6BAA6B,GAAGxC,WAAW,CAC/C,+BAA+B,EAC/B,2CAA2C,EAC3C4B,KACF,CAAC;AAEDxC,KAAK,CAACqD,8BAA8B,GAAGzC,WAAW,CAChD,gCAAgC,EAMhC,CAAC0C,SAAS,EAAEZ,WAAW,EAAEN,IAAI,KAAK;EAChC,OAAO,6BAA6BkB,SAAS,mBAC3CZ,WAAW,GAAG,eAAeA,WAAW,cAAc,GAAG,EAAE,kBAC3CN,IAAI,EAAE;AAC1B,CAAC,EACDJ,SACF,CAAC;AAEDhC,KAAK,CAACuD,6BAA6B,GAAG3C,WAAW,CAC/C,+BAA+B,EAM/B,CAAC8B,WAAW,EAAEc,OAAO,EAAEpB,IAAI,GAAGC,SAAS,KAAK;EAC1C,IAAImB,OAAO,KAAK,GAAG,EACjB,OAAO,gCAAgCd,WAAW,eAChDN,IAAI,GAAG,kBAAkBA,IAAI,EAAE,GAAG,EAAE,EACpC;EACJ,OAAO,oBAAoBoB,OAAO,oCAAoCd,WAAW,eAC/EN,IAAI,GAAG,kBAAkBA,IAAI,EAAE,GAAG,EAAE,EACpC;AACJ,CAAC,EACDI,KACF,CAAC;AAEDxC,KAAK,CAACyD,0BAA0B,GAAG7C,WAAW,CAC5C,4BAA4B,EAC5B,yCAAyC,GACvC,uCAAuC,EACzC4B,KACF,CAAC;AAEDxC,KAAK,CAAC0D,+BAA+B,GAAG9C,WAAW,CACjD,iCAAiC,EACjC,6GAA6G,EAC7GoB,SACF,CAAC;AAEDhC,KAAK,CAAC2D,0BAA0B,GAAG/C,WAAW,CAC5C,4BAA4B,EAK5B,CAACgD,SAAS,EAAErB,IAAI,KAAK;EACnB,OAAO,2BAA2BqB,SAAS,SAASrB,IAAI,EAAE;AAC5D,CAAC,EACDP,SACF,CAAC;AAEDhC,KAAK,CAAC6D,qBAAqB,GAAGjD,WAAW,CACvC,uBAAuB,EAMvB,CAACC,IAAI,EAAEY,KAAK,EAAEU,MAAM,GAAG,YAAY,KAAK;EACtC,IAAI2B,SAAS,GAAG,IAAAC,eAAO,EAACtC,KAAK,CAAC;EAE9B,IAAIqC,SAAS,CAAC1D,MAAM,GAAG,GAAG,EAAE;IAC1B0D,SAAS,GAAG,GAAGA,SAAS,CAACxD,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK;EAC7C;EAEA,MAAMH,IAAI,GAAGU,IAAI,CAACQ,QAAQ,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,UAAU;EAEzD,OAAO,OAAOlB,IAAI,KAAKU,IAAI,KAAKsB,MAAM,cAAc2B,SAAS,EAAE;AACjE,CAAC,EACD9B,SAGF,CAAC;AAUD,SAASpB,WAAWA,CAACoD,GAAG,EAAEvC,KAAK,EAAEwC,WAAW,EAAE;EAG5C1D,QAAQ,CAACjB,GAAG,CAAC0E,GAAG,EAAEvC,KAAK,CAAC;EAExB,OAAOyC,qBAAqB,CAACD,WAAW,EAAED,GAAG,CAAC;AAChD;AAOA,SAASE,qBAAqBA,CAACC,IAAI,EAAExB,GAAG,EAAE;EAExC,OAAOyB,SAAS;EAIhB,SAASA,SAASA,CAAC,GAAGC,UAAU,EAAE;IAChC,MAAMC,KAAK,GAAG9B,KAAK,CAAC+B,eAAe;IACnC,IAAIC,8BAA8B,CAAC,CAAC,EAAEhC,KAAK,CAAC+B,eAAe,GAAG,CAAC;IAC/D,MAAME,KAAK,GAAG,IAAIN,IAAI,CAAC,CAAC;IAExB,IAAIK,8BAA8B,CAAC,CAAC,EAAEhC,KAAK,CAAC+B,eAAe,GAAGD,KAAK;IACnE,MAAMnD,OAAO,GAAGuD,UAAU,CAAC/B,GAAG,EAAE0B,UAAU,EAAEI,KAAK,CAAC;IAClDhF,MAAM,CAACkF,gBAAgB,CAACF,KAAK,EAAE;MAG7BtD,OAAO,EAAE;QACPM,KAAK,EAAEN,OAAO;QACdyD,UAAU,EAAE,KAAK;QACjBC,QAAQ,EAAE,IAAI;QACdC,YAAY,EAAE;MAChB,CAAC;MACDC,QAAQ,EAAE;QAERtD,KAAKA,CAAA,EAAG;UACN,OAAO,GAAG,IAAI,CAACZ,IAAI,KAAK8B,GAAG,MAAM,IAAI,CAACxB,OAAO,EAAE;QACjD,CAAC;QACDyD,UAAU,EAAE,KAAK;QACjBC,QAAQ,EAAE,IAAI;QACdC,YAAY,EAAE;MAChB;IACF,CAAC,CAAC;IAEFE,uBAAuB,CAACP,KAAK,CAAC;IAE9BA,KAAK,CAACQ,IAAI,GAAGtC,GAAG;IAChB,OAAO8B,KAAK;EACd;AACF;AAKA,SAASD,8BAA8BA,CAAA,EAAG;EAGxC,IAAI;IACF,IAAIU,GAACA,CAAC,CAACC,eAAe,CAACC,kBAAkB,CAAC,CAAC,EAAE;MAC3C,OAAO,KAAK;IACd;EACF,CAAC,CAAC,OAAAC,OAAA,EAAM,CAAC;EAET,MAAMC,IAAI,GAAG7F,MAAM,CAACE,wBAAwB,CAAC6C,KAAK,EAAE,iBAAiB,CAAC;EACtE,IAAI8C,IAAI,KAAKjD,SAAS,EAAE;IACtB,OAAO5C,MAAM,CAAC8F,YAAY,CAAC/C,KAAK,CAAC;EACnC;EAEA,OAAO5C,KAAK,CAACJ,IAAI,CAAC8F,IAAI,EAAE,UAAU,CAAC,IAAIA,IAAI,CAACT,QAAQ,KAAKxC,SAAS,GAC9DiD,IAAI,CAACT,QAAQ,GACbS,IAAI,CAAChG,GAAG,KAAK+C,SAAS;AAC5B;AAQA,SAASmD,eAAeA,CAACC,eAAe,EAAE;EAGxC,MAAMC,MAAM,GAAGjF,kBAAkB,GAAGgF,eAAe,CAAC5E,IAAI;EACxDpB,MAAM,CAACC,cAAc,CAAC+F,eAAe,EAAE,MAAM,EAAE;IAAChE,KAAK,EAAEiE;EAAM,CAAC,CAAC;EAC/D,OAAOD,eAAe;AACxB;AAEA,MAAMT,uBAAuB,GAAGQ,eAAe,CAM7C,UAAUf,KAAK,EAAE;EACf,MAAMkB,yBAAyB,GAAGnB,8BAA8B,CAAC,CAAC;EAClE,IAAImB,yBAAyB,EAAE;IAC7BjF,mBAAmB,GAAG8B,KAAK,CAAC+B,eAAe;IAC3C/B,KAAK,CAAC+B,eAAe,GAAGqB,MAAM,CAACC,iBAAiB;EAClD;EAEArD,KAAK,CAACsD,iBAAiB,CAACrB,KAAK,CAAC;EAG9B,IAAIkB,yBAAyB,EAAEnD,KAAK,CAAC+B,eAAe,GAAG7D,mBAAmB;EAE1E,OAAO+D,KAAK;AACd,CACF,CAAC;AAQD,SAASC,UAAUA,CAAC/B,GAAG,EAAE0B,UAAU,EAAE0B,IAAI,EAAE;EACzC,MAAM5E,OAAO,GAAGZ,QAAQ,CAAClB,GAAG,CAACsD,GAAG,CAAC;EACjC3B,QAAKA,CAAC,CAACG,OAAO,KAAKkB,SAAS,EAAE,gCAAgC,CAAC;EAE/D,IAAI,OAAOlB,OAAO,KAAK,UAAU,EAAE;IACjCH,QAAKA,CAAC,CACJG,OAAO,CAACf,MAAM,IAAIiE,UAAU,CAACjE,MAAM,EACnC,SAASuC,GAAG,oCAAoC0B,UAAU,CAACjE,MAAM,aAAa,GAC5E,4BAA4Be,OAAO,CAACf,MAAM,IAC9C,CAAC;IACD,OAAO4F,OAAO,CAACC,KAAK,CAAC9E,OAAO,EAAE4E,IAAI,EAAE1B,UAAU,CAAC;EACjD;EAEA,MAAM6B,KAAK,GAAG,aAAa;EAC3B,IAAIC,cAAc,GAAG,CAAC;EACtB,OAAOD,KAAK,CAACtE,IAAI,CAACT,OAAO,CAAC,KAAK,IAAI,EAAEgF,cAAc,EAAE;EACrDnF,QAAKA,CAAC,CACJmF,cAAc,KAAK9B,UAAU,CAACjE,MAAM,EACpC,SAASuC,GAAG,oCAAoC0B,UAAU,CAACjE,MAAM,aAAa,GAC5E,4BAA4B+F,cAAc,IAC9C,CAAC;EACD,IAAI9B,UAAU,CAACjE,MAAM,KAAK,CAAC,EAAE,OAAOe,OAAO;EAE3CkD,UAAU,CAAC+B,OAAO,CAACjF,OAAO,CAAC;EAC3B,OAAO6E,OAAO,CAACC,KAAK,CAACI,cAAM,EAAE,IAAI,EAAEhC,UAAU,CAAC;AAChD;AAOA,SAAStC,qBAAqBA,CAACN,KAAK,EAAE;EACpC,IAAIA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKY,SAAS,EAAE;IACzC,OAAOiE,MAAM,CAAC7E,KAAK,CAAC;EACtB;EAEA,IAAI,OAAOA,KAAK,KAAK,UAAU,IAAIA,KAAK,CAACZ,IAAI,EAAE;IAC7C,OAAO,YAAYY,KAAK,CAACZ,IAAI,EAAE;EACjC;EAEA,IAAI,OAAOY,KAAK,KAAK,QAAQ,EAAE;IAC7B,IAAIA,KAAK,CAACwC,WAAW,IAAIxC,KAAK,CAACwC,WAAW,CAACpD,IAAI,EAAE;MAC/C,OAAO,kBAAkBY,KAAK,CAACwC,WAAW,CAACpD,IAAI,EAAE;IACnD;IAEA,OAAO,GAAG,IAAAkD,eAAO,EAACtC,KAAK,EAAE;MAAC8E,KAAK,EAAE,CAAC;IAAC,CAAC,CAAC,EAAE;EACzC;EAEA,IAAIzC,SAAS,GAAG,IAAAC,eAAO,EAACtC,KAAK,EAAE;IAAC+E,MAAM,EAAE;EAAK,CAAC,CAAC;EAE/C,IAAI1C,SAAS,CAAC1D,MAAM,GAAG,EAAE,EAAE;IACzB0D,SAAS,GAAG,GAAGA,SAAS,CAACxD,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;EAC5C;EAEA,OAAO,QAAQ,OAAOmB,KAAK,KAAKqC,SAAS,GAAG;AAC9C;AASA,MAAM2C,gBAAgB,GAAG,CAAC,CAAC,CAAClH,cAAc;AAE1C,MAAM;EAAC+C,0BAA0B,EAAEoE;AAA4B,CAAC,GAAG1G,KAAK;AAGxE,MAAM2G,KAAK,GAAG,IAAInG,GAAG,CAAC,CAAC;AAOvB,SAASoG,IAAIA,CAACC,QAAQ,EAAE;EAACzE,IAAI;EAAEkB;AAAS,CAAC,EAAE;EACzC,MAAMwD,QAAQ,GAAGH,KAAK,CAACtH,GAAG,CAACwH,QAAQ,CAAC;EAEpC,IAAIC,QAAQ,EAAE;IACZ,OAAOA,QAAQ;EACjB;EAGA,IAAIC,MAAM;EAEV,IAAI;IACFA,MAAM,GAAGC,aAAE,CAACC,YAAY,CAAC1E,MAAGA,CAAC,CAAC2E,gBAAgB,CAACL,QAAQ,CAAC,EAAE,MAAM,CAAC;EACnE,CAAC,CAAC,OAAOpC,KAAK,EAAE;IACd,MAAM0C,SAAS,GAAkC1C,KAAM;IAEvD,IAAI0C,SAAS,CAAClC,IAAI,KAAK,QAAQ,EAAE;MAC/B,MAAMkC,SAAS;IACjB;EACF;EAGA,MAAMC,MAAM,GAAG;IACbC,MAAM,EAAE,KAAK;IACbC,SAAS,EAAET,QAAQ;IACnBU,IAAI,EAAElF,SAAS;IACfxB,IAAI,EAAEwB,SAAS;IACflC,IAAI,EAAE,MAAM;IACZqH,OAAO,EAAEnF,SAAS;IAClBoF,OAAO,EAAEpF;EACX,CAAC;EAED,IAAI0E,MAAM,KAAK1E,SAAS,EAAE;IAExB,IAAIqF,MAAM;IAEV,IAAI;MACFA,MAAM,GAAG1E,IAAI,CAAC2E,KAAK,CAACZ,MAAM,CAAC;IAC7B,CAAC,CAAC,OAAOa,MAAM,EAAE;MACf,MAAMC,KAAK,GAAkCD,MAAO;MACpD,MAAMnD,KAAK,GAAG,IAAIiC,4BAA4B,CAC5CG,QAAQ,EACR,CAACzE,IAAI,GAAG,IAAIkB,SAAS,SAAS,GAAG,EAAE,IAAI,IAAAwE,oBAAa,EAAC1F,IAAI,IAAIkB,SAAS,CAAC,EACvEuE,KAAK,CAAC1G,OACR,CAAC;MACDsD,KAAK,CAACoD,KAAK,GAAGA,KAAK;MACnB,MAAMpD,KAAK;IACb;IAEA2C,MAAM,CAACC,MAAM,GAAG,IAAI;IAEpB,IACEZ,gBAAgB,CAACjH,IAAI,CAACkI,MAAM,EAAE,MAAM,CAAC,IACrC,OAAOA,MAAM,CAAC7G,IAAI,KAAK,QAAQ,EAC/B;MACAuG,MAAM,CAACvG,IAAI,GAAG6G,MAAM,CAAC7G,IAAI;IAC3B;IAEA,IACE4F,gBAAgB,CAACjH,IAAI,CAACkI,MAAM,EAAE,MAAM,CAAC,IACrC,OAAOA,MAAM,CAACH,IAAI,KAAK,QAAQ,EAC/B;MACAH,MAAM,CAACG,IAAI,GAAGG,MAAM,CAACH,IAAI;IAC3B;IAEA,IAAId,gBAAgB,CAACjH,IAAI,CAACkI,MAAM,EAAE,SAAS,CAAC,EAAE;MAE5CN,MAAM,CAACI,OAAO,GAAGE,MAAM,CAACF,OAAO;IACjC;IAEA,IAAIf,gBAAgB,CAACjH,IAAI,CAACkI,MAAM,EAAE,SAAS,CAAC,EAAE;MAE5CN,MAAM,CAACK,OAAO,GAAGC,MAAM,CAACD,OAAO;IACjC;IAGA,IACEhB,gBAAgB,CAACjH,IAAI,CAACkI,MAAM,EAAE,MAAM,CAAC,KACpCA,MAAM,CAACvH,IAAI,KAAK,UAAU,IAAIuH,MAAM,CAACvH,IAAI,KAAK,QAAQ,CAAC,EACxD;MACAiH,MAAM,CAACjH,IAAI,GAAGuH,MAAM,CAACvH,IAAI;IAC3B;EACF;EAEAwG,KAAK,CAACrH,GAAG,CAACuH,QAAQ,EAAEO,MAAM,CAAC;EAE3B,OAAOA,MAAM;AACf;AAMA,SAASW,qBAAqBA,CAACC,QAAQ,EAAE;EAEvC,IAAIC,cAAc,GAAG,IAAIC,GAAG,CAAC,cAAc,EAAEF,QAAQ,CAAC;EAEtD,OAAO,IAAI,EAAE;IACX,MAAMG,eAAe,GAAGF,cAAc,CAACG,QAAQ;IAC/C,IAAID,eAAe,CAAC/G,QAAQ,CAAC,2BAA2B,CAAC,EAAE;MACzD;IACF;IAEA,MAAMiH,aAAa,GAAGzB,IAAI,CAAC,IAAAkB,oBAAa,EAACG,cAAc,CAAC,EAAE;MACxD3E,SAAS,EAAE0E;IACb,CAAC,CAAC;IAEF,IAAIK,aAAa,CAAChB,MAAM,EAAE;MACxB,OAAOgB,aAAa;IACtB;IAEA,MAAMC,kBAAkB,GAAGL,cAAc;IACzCA,cAAc,GAAG,IAAIC,GAAG,CAAC,iBAAiB,EAAED,cAAc,CAAC;IAI3D,IAAIA,cAAc,CAACG,QAAQ,KAAKE,kBAAkB,CAACF,QAAQ,EAAE;MAC3D;IACF;EACF;EAEA,MAAMD,eAAe,GAAG,IAAAL,oBAAa,EAACG,cAAc,CAAC;EAGrD,OAAO;IACLX,SAAS,EAAEa,eAAe;IAC1Bd,MAAM,EAAE,KAAK;IACblH,IAAI,EAAE;EACR,CAAC;AACH;AAOA,SAASoI,cAAcA,CAACC,GAAG,EAAE;EAE3B,OAAOT,qBAAqB,CAACS,GAAG,CAAC,CAACrI,IAAI;AACxC;AAOA,MAAM;EAACwD;AAA0B,CAAC,GAAG3D,KAAK;AAE1C,MAAMT,cAAc,GAAG,CAAC,CAAC,CAACA,cAAc;AAGxC,MAAMkJ,kBAAkB,GAAG;EAEzBvJ,SAAS,EAAE,IAAI;EACf,MAAM,EAAE,UAAU;EAClB,KAAK,EAAE,QAAQ;EACf,OAAO,EAAE,MAAM;EACf,MAAM,EAAE;AACV,CAAC;AAMD,SAASwJ,YAAYA,CAACC,IAAI,EAAE;EAC1B,IACEA,IAAI,IACJ,+DAA+D,CAACC,IAAI,CAACD,IAAI,CAAC,EAE1E,OAAO,QAAQ;EACjB,IAAIA,IAAI,KAAK,kBAAkB,EAAE,OAAO,MAAM;EAC9C,OAAO,IAAI;AACb;AAaA,MAAME,gBAAgB,GAAG;EAEvB3J,SAAS,EAAE,IAAI;EACf,OAAO,EAAE4J,2BAA2B;EACpC,OAAO,EAAEC,2BAA2B;EACpC,OAAO,EAAEC,2BAA2B;EACpC,QAAQ,EAAEA,2BAA2B;EACrC,OAAOC,CAAA,EAAG;IACR,OAAO,SAAS;EAClB;AACF,CAAC;AAKD,SAASH,2BAA2BA,CAACpB,MAAM,EAAE;EAC3C,MAAM;IAAC,CAAC,EAAEiB;EAAI,CAAC,GAAG,mCAAmC,CAAC/G,IAAI,CACxD8F,MAAM,CAACU,QACT,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;EACvB,OAAOM,YAAY,CAACC,IAAI,CAAC;AAC3B;AAYA,SAASO,OAAOA,CAACV,GAAG,EAAE;EACpB,MAAMJ,QAAQ,GAAGI,GAAG,CAACJ,QAAQ;EAC7B,IAAIe,KAAK,GAAGf,QAAQ,CAAChI,MAAM;EAE3B,OAAO+I,KAAK,EAAE,EAAE;IACd,MAAMlE,IAAI,GAAGmD,QAAQ,CAACgB,WAAW,CAACD,KAAK,CAAC;IAExC,IAAIlE,IAAI,KAAK,EAAE,EAAY;MACzB,OAAO,EAAE;IACX;IAEA,IAAIA,IAAI,KAAK,EAAE,EAAY;MACzB,OAAOmD,QAAQ,CAACgB,WAAW,CAACD,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,GACzC,EAAE,GACFf,QAAQ,CAAC9H,KAAK,CAAC6I,KAAK,CAAC;IAC3B;EACF;EAEA,OAAO,EAAE;AACX;AAKA,SAASJ,2BAA2BA,CAACP,GAAG,EAAEa,QAAQ,EAAEC,YAAY,EAAE;EAChE,MAAM7H,KAAK,GAAGyH,OAAO,CAACV,GAAG,CAAC;EAE1B,IAAI/G,KAAK,KAAK,KAAK,EAAE;IACnB,MAAM8H,WAAW,GAAGhB,cAAc,CAACC,GAAG,CAAC;IAEvC,IAAIe,WAAW,KAAK,MAAM,EAAE;MAC1B,OAAOA,WAAW;IACpB;IAEA,OAAO,UAAU;EACnB;EAEA,IAAI9H,KAAK,KAAK,EAAE,EAAE;IAChB,MAAM8H,WAAW,GAAGhB,cAAc,CAACC,GAAG,CAAC;IAGvC,IAAIe,WAAW,KAAK,MAAM,IAAIA,WAAW,KAAK,UAAU,EAAE;MACxD,OAAO,UAAU;IACnB;IAIA,OAAO,QAAQ;EACjB;EAEA,MAAMlD,MAAM,GAAGoC,kBAAkB,CAAChH,KAAK,CAAC;EACxC,IAAI4E,MAAM,EAAE,OAAOA,MAAM;EAGzB,IAAIiD,YAAY,EAAE;IAChB,OAAOjH,SAAS;EAClB;EAEA,MAAMmH,QAAQ,GAAG,IAAA1B,oBAAa,EAACU,GAAG,CAAC;EACnC,MAAM,IAAI7E,0BAA0B,CAAClC,KAAK,EAAE+H,QAAQ,CAAC;AACvD;AAEA,SAASR,2BAA2BA,CAAA,EAAG,CAEvC;AAOA,SAASS,6BAA6BA,CAACjB,GAAG,EAAEkB,OAAO,EAAE;EACnD,MAAMC,QAAQ,GAAGnB,GAAG,CAACmB,QAAQ;EAE7B,IAAI,CAACpK,cAAc,CAACC,IAAI,CAACqJ,gBAAgB,EAAEc,QAAQ,CAAC,EAAE;IACpD,OAAO,IAAI;EACb;EAEA,OAAOd,gBAAgB,CAACc,QAAQ,CAAC,CAACnB,GAAG,EAAEkB,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI;AAC/D;AAOA,MAAM;EAAC7F;AAAqB,CAAC,GAAG7D,KAAK;AAKrC,MAAM4J,kBAAkB,GAAGnK,MAAM,CAACoK,MAAM,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAC5D,MAAMC,sBAAsB,GAAG,IAAI/J,GAAG,CAAC6J,kBAAkB,CAAC;AAK1D,SAASG,oBAAoBA,CAAA,EAAG;EAC9B,OAAOH,kBAAkB;AAC3B;AAKA,SAASI,uBAAuBA,CAAA,EAAG;EACjC,OAAOF,sBAAsB;AAC/B;AAMA,SAASG,gBAAgBA,CAACC,UAAU,EAAE;EACpC,IAAIA,UAAU,KAAK7H,SAAS,IAAI6H,UAAU,KAAKH,oBAAoB,CAAC,CAAC,EAAE;IACrE,IAAI,CAAC9I,KAAK,CAACC,OAAO,CAACgJ,UAAU,CAAC,EAAE;MAC9B,MAAM,IAAIrG,qBAAqB,CAC7B,YAAY,EACZqG,UAAU,EACV,mBACF,CAAC;IACH;IAEA,OAAO,IAAInK,GAAG,CAACmK,UAAU,CAAC;EAC5B;EAEA,OAAOF,uBAAuB,CAAC,CAAC;AAClC;AAOA,MAAMG,4BAA4B,GAAGC,MAAM,CAACC,SAAS,CAACC,MAAM,CAACC,OAAO,CAAC;AAErE,MAAM;EACJnH,6BAA6B;EAC7BnB,4BAA4B;EAC5BK,0BAA0B;EAC1BG,0BAA0B;EAC1BS,oBAAoB;EACpBG,8BAA8B;EAC9BE,6BAA6B;EAC7BE,0BAA0B;EAC1BC;AACF,CAAC,GAAG1D,KAAK;AAET,MAAMwK,GAAG,GAAG,CAAC,CAAC,CAACjL,cAAc;AAE7B,MAAMkL,mBAAmB,GACvB,0KAA0K;AAC5K,MAAMC,6BAA6B,GACjC,yKAAyK;AAC3K,MAAMC,uBAAuB,GAAG,UAAU;AAC1C,MAAMC,YAAY,GAAG,KAAK;AAC1B,MAAMC,qBAAqB,GAAG,UAAU;AAExC,MAAMC,sBAAsB,GAAG,IAAI/K,GAAG,CAAC,CAAC;AAExC,MAAMgL,gBAAgB,GAAG,UAAU;AAYnC,SAASC,6BAA6BA,CACpCpI,MAAM,EACNV,OAAO,EACP+I,KAAK,EACLC,cAAc,EACdC,QAAQ,EACR/I,IAAI,EACJgJ,QAAQ,EACR;EAEA,IAAIC,SAAMA,CAAC,CAACC,aAAa,EAAE;IACzB;EACF;EAEA,MAAMhE,SAAS,GAAG,IAAAQ,oBAAa,EAACoD,cAAc,CAAC;EAC/C,MAAMK,MAAM,GAAGR,gBAAgB,CAACnJ,IAAI,CAACwJ,QAAQ,GAAGxI,MAAM,GAAGV,OAAO,CAAC,KAAK,IAAI;EAC1EmJ,SAAMA,CAAC,CAACG,WAAW,CACjB,qBACED,MAAM,GAAG,cAAc,GAAG,oCAAoC,eACjD3I,MAAM,eAAe,GAClC,YAAYV,OAAO,KACjBA,OAAO,KAAK+I,KAAK,GAAG,EAAE,GAAG,eAAeA,KAAK,IAAI,WAEjDE,QAAQ,GAAG,SAAS,GAAG,SAAS,+CACa7D,SAAS,GACtDlF,IAAI,GAAG,kBAAkB,IAAA0F,oBAAa,EAAC1F,IAAI,CAAC,EAAE,GAAG,EAAE,GAClD,EACL,oBAAoB,EACpB,SACF,CAAC;AACH;AASA,SAASqJ,0BAA0BA,CAACjD,GAAG,EAAE0C,cAAc,EAAE9I,IAAI,EAAEmF,IAAI,EAAE;EAEnE,IAAI8D,SAAMA,CAAC,CAACC,aAAa,EAAE;IACzB;EACF;EAEA,MAAMjF,MAAM,GAAGoD,6BAA6B,CAACjB,GAAG,EAAE;IAACkD,SAAS,EAAEtJ,IAAI,CAACuJ;EAAI,CAAC,CAAC;EACzE,IAAItF,MAAM,KAAK,QAAQ,EAAE;EACzB,MAAMuF,OAAO,GAAG,IAAA9D,oBAAa,EAACU,GAAG,CAACmD,IAAI,CAAC;EACvC,MAAMjJ,WAAW,GAAG,IAAAoF,oBAAa,EAAC,KAAI+D,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC;EACjE,MAAMY,QAAQ,GAAG,IAAAhE,oBAAa,EAAC1F,IAAI,CAAC;EACpC,IAAI,CAACmF,IAAI,EAAE;IACT8D,SAAMA,CAAC,CAACG,WAAW,CACjB,gEAAgE9I,WAAW,oCAAoCkJ,OAAO,CAACtL,KAAK,CAC1HoC,WAAW,CAACtC,MACd,CAAC,oBAAoB0L,QAAQ,wEAAwE,EACrG,oBAAoB,EACpB,SACF,CAAC;EACH,CAAC,MAAM,IAAIvJ,MAAGA,CAAC,CAACwJ,OAAO,CAACrJ,WAAW,EAAE6E,IAAI,CAAC,KAAKqE,OAAO,EAAE;IACtDP,SAAMA,CAAC,CAACG,WAAW,CACjB,WAAW9I,WAAW,+BAA+B6E,IAAI,KAAK,GAC5D,sEAAsEqE,OAAO,CAACtL,KAAK,CACjFoC,WAAW,CAACtC,MACd,CAAC,oBAAoB0L,QAAQ,4DAA4D,GACzF,4BAA4B,EAC9B,oBAAoB,EACpB,SACF,CAAC;EACH;AACF;AAMA,SAASE,WAAWA,CAACzJ,IAAI,EAAE;EAEzB,IAAI;IACF,OAAO,IAAA0J,cAAQ,EAAC1J,IAAI,CAAC;EACvB,CAAC,CAAC,OAAA2J,QAAA,EAAM,CAKR;AACF;AAaA,SAASC,UAAUA,CAAC3D,GAAG,EAAE;EACvB,MAAM4D,KAAK,GAAG,IAAAH,cAAQ,EAACzD,GAAG,EAAE;IAAC6D,cAAc,EAAE;EAAK,CAAC,CAAC;EACpD,MAAMC,MAAM,GAAGF,KAAK,GAAGA,KAAK,CAACE,MAAM,CAAC,CAAC,GAAGjK,SAAS;EACjD,OAAOiK,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAKjK,SAAS,GAAG,KAAK,GAAGiK,MAAM;AACjE;AAQA,SAASC,iBAAiBA,CAACrB,cAAc,EAAE7C,aAAa,EAAEjG,IAAI,EAAE;EAE9D,IAAIoK,KAAK;EACT,IAAInE,aAAa,CAACd,IAAI,KAAKlF,SAAS,EAAE;IACpCmK,KAAK,GAAG,KAAIX,UAAK,EAACxD,aAAa,CAACd,IAAI,EAAE2D,cAAc,CAAC;IAErD,IAAIiB,UAAU,CAACK,KAAK,CAAC,EAAE,OAAOA,KAAK;IAEnC,MAAMC,KAAK,GAAG,CACZ,KAAKpE,aAAa,CAACd,IAAI,KAAK,EAC5B,KAAKc,aAAa,CAACd,IAAI,OAAO,EAC9B,KAAKc,aAAa,CAACd,IAAI,OAAO,EAC9B,KAAKc,aAAa,CAACd,IAAI,WAAW,EAClC,KAAKc,aAAa,CAACd,IAAI,aAAa,EACpC,KAAKc,aAAa,CAACd,IAAI,aAAa,CACrC;IACD,IAAIvI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,EAAEA,CAAC,GAAGyN,KAAK,CAACrM,MAAM,EAAE;MACzBoM,KAAK,GAAG,KAAIX,UAAK,EAACY,KAAK,CAACzN,CAAC,CAAC,EAAEkM,cAAc,CAAC;MAC3C,IAAIiB,UAAU,CAACK,KAAK,CAAC,EAAE;MACvBA,KAAK,GAAGnK,SAAS;IACnB;IAEA,IAAImK,KAAK,EAAE;MACTf,0BAA0B,CACxBe,KAAK,EACLtB,cAAc,EACd9I,IAAI,EACJiG,aAAa,CAACd,IAChB,CAAC;MACD,OAAOiF,KAAK;IACd;EAEF;EAEA,MAAMC,KAAK,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC;EAC5D,IAAIzN,CAAC,GAAG,CAAC,CAAC;EAEV,OAAO,EAAEA,CAAC,GAAGyN,KAAK,CAACrM,MAAM,EAAE;IACzBoM,KAAK,GAAG,KAAIX,UAAK,EAACY,KAAK,CAACzN,CAAC,CAAC,EAAEkM,cAAc,CAAC;IAC3C,IAAIiB,UAAU,CAACK,KAAK,CAAC,EAAE;IACvBA,KAAK,GAAGnK,SAAS;EACnB;EAEA,IAAImK,KAAK,EAAE;IACTf,0BAA0B,CAACe,KAAK,EAAEtB,cAAc,EAAE9I,IAAI,EAAEiG,aAAa,CAACd,IAAI,CAAC;IAC3E,OAAOiF,KAAK;EACd;EAGA,MAAM,IAAItJ,oBAAoB,CAC5B,IAAA4E,oBAAa,EAAC,KAAI+D,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC,EAC7C,IAAApD,oBAAa,EAAC1F,IAAI,CACpB,CAAC;AACH;AAQA,SAASsK,kBAAkBA,CAAC1E,QAAQ,EAAE5F,IAAI,EAAEuK,gBAAgB,EAAE;EAC5D,IAAI9B,qBAAqB,CAACjJ,IAAI,CAACoG,QAAQ,CAACI,QAAQ,CAAC,KAAK,IAAI,EAAE;IAC1D,MAAM,IAAInG,4BAA4B,CACpC+F,QAAQ,CAACI,QAAQ,EACjB,iDAAiD,EACjD,IAAAN,oBAAa,EAAC1F,IAAI,CACpB,CAAC;EACH;EAGA,IAAIwK,QAAQ;EAEZ,IAAI;IACFA,QAAQ,GAAG,IAAA9E,oBAAa,EAACE,QAAQ,CAAC;EACpC,CAAC,CAAC,OAAOvD,KAAK,EAAE;IACd,MAAMoD,KAAK,GAAkCpD,KAAM;IACnDhF,MAAM,CAACC,cAAc,CAACmI,KAAK,EAAE,OAAO,EAAE;MAACpG,KAAK,EAAE6E,MAAM,CAAC0B,QAAQ;IAAC,CAAC,CAAC;IAChEvI,MAAM,CAACC,cAAc,CAACmI,KAAK,EAAE,QAAQ,EAAE;MAACpG,KAAK,EAAE6E,MAAM,CAAClE,IAAI;IAAC,CAAC,CAAC;IAC7D,MAAMyF,KAAK;EACb;EAEA,MAAMuE,KAAK,GAAGJ,WAAW,CACvBY,QAAQ,CAACxL,QAAQ,CAAC,GAAG,CAAC,GAAGwL,QAAQ,CAACtM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAGsM,QAChD,CAAC;EAED,IAAIR,KAAK,IAAIA,KAAK,CAACS,WAAW,CAAC,CAAC,EAAE;IAChC,MAAMpI,KAAK,GAAG,IAAIhB,0BAA0B,CAACmJ,QAAQ,EAAE,IAAA9E,oBAAa,EAAC1F,IAAI,CAAC,CAAC;IAE3EqC,KAAK,CAAC+D,GAAG,GAAGlC,MAAM,CAAC0B,QAAQ,CAAC;IAC5B,MAAMvD,KAAK;EACb;EAEA,IAAI,CAAC2H,KAAK,IAAI,CAACA,KAAK,CAACE,MAAM,CAAC,CAAC,EAAE;IAC7B,MAAM7H,KAAK,GAAG,IAAIvB,oBAAoB,CACpC0J,QAAQ,IAAI5E,QAAQ,CAACI,QAAQ,EAC7BhG,IAAI,IAAI,IAAA0F,oBAAa,EAAC1F,IAAI,CAAC,EAC3B,IACF,CAAC;IAEDqC,KAAK,CAAC+D,GAAG,GAAGlC,MAAM,CAAC0B,QAAQ,CAAC;IAC5B,MAAMvD,KAAK;EACb;EAEA,IAAI,CAACkI,gBAAgB,EAAE;IACrB,MAAMG,IAAI,GAAG,IAAAC,kBAAY,EAACH,QAAQ,CAAC;IACnC,MAAM;MAACI,MAAM;MAAEC;IAAI,CAAC,GAAGjF,QAAQ;IAC/BA,QAAQ,GAAG,IAAAkF,oBAAa,EAACJ,IAAI,IAAIF,QAAQ,CAACxL,QAAQ,CAACmB,MAAGA,CAAC,CAAC4K,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC;IACzEnF,QAAQ,CAACgF,MAAM,GAAGA,MAAM;IACxBhF,QAAQ,CAACiF,IAAI,GAAGA,IAAI;EACtB;EAEA,OAAOjF,QAAQ;AACjB;AAQA,SAASoF,gBAAgBA,CAAC9J,SAAS,EAAE4H,cAAc,EAAE9I,IAAI,EAAE;EACzD,OAAO,IAAIiB,8BAA8B,CACvCC,SAAS,EACT4H,cAAc,IAAI,IAAApD,oBAAa,EAAC,KAAI+D,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC,EAC/D,IAAApD,oBAAa,EAAC1F,IAAI,CACpB,CAAC;AACH;AAQA,SAASiL,eAAeA,CAAC7J,OAAO,EAAE0H,cAAc,EAAE9I,IAAI,EAAE;EACtD,OAAO,IAAImB,6BAA6B,CACtC,IAAAuE,oBAAa,EAAC,KAAI+D,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC,EAC7C1H,OAAO,EACPpB,IAAI,IAAI,IAAA0F,oBAAa,EAAC1F,IAAI,CAC5B,CAAC;AACH;AAUA,SAASkL,mBAAmBA,CAACpL,OAAO,EAAE+I,KAAK,EAAEC,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,EAAE;EAC3E,MAAMD,MAAM,GAAG,4CAA4C8I,KAAK,cAC9DE,QAAQ,GAAG,SAAS,GAAG,SAAS,mBACf,IAAArD,oBAAa,EAACoD,cAAc,CAAC,EAAE;EAClD,MAAM,IAAIjJ,4BAA4B,CACpCC,OAAO,EACPC,MAAM,EACNC,IAAI,IAAI,IAAA0F,oBAAa,EAAC1F,IAAI,CAC5B,CAAC;AACH;AAUA,SAASmL,oBAAoBA,CAAC/J,OAAO,EAAEZ,MAAM,EAAEsI,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,EAAE;EAC7EQ,MAAM,GACJ,OAAOA,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,GACzCI,IAAI,CAACC,SAAS,CAACL,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,GAChC,GAAGA,MAAM,EAAE;EAEjB,OAAO,IAAIH,0BAA0B,CACnC,IAAAqF,oBAAa,EAAC,KAAI+D,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC,EAC7C1H,OAAO,EACPZ,MAAM,EACNuI,QAAQ,EACR/I,IAAI,IAAI,IAAA0F,oBAAa,EAAC1F,IAAI,CAC5B,CAAC;AACH;AAcA,SAASoL,0BAA0BA,CACjC5K,MAAM,EACNY,OAAO,EACPyH,KAAK,EACLC,cAAc,EACd9I,IAAI,EACJqL,OAAO,EACPtC,QAAQ,EACRuC,SAAS,EACTxD,UAAU,EACV;EACA,IAAI1G,OAAO,KAAK,EAAE,IAAI,CAACiK,OAAO,IAAI7K,MAAM,CAACA,MAAM,CAACxC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EACjE,MAAMmN,oBAAoB,CAACtC,KAAK,EAAErI,MAAM,EAAEsI,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,CAAC;EAE3E,IAAI,CAACQ,MAAM,CAACG,UAAU,CAAC,IAAI,CAAC,EAAE;IAC5B,IAAIoI,QAAQ,IAAI,CAACvI,MAAM,CAACG,UAAU,CAAC,KAAK,CAAC,IAAI,CAACH,MAAM,CAACG,UAAU,CAAC,GAAG,CAAC,EAAE;MACpE,IAAI4K,KAAK,GAAG,KAAK;MAEjB,IAAI;QACF,KAAI9B,UAAK,EAACjJ,MAAM,CAAC;QACjB+K,KAAK,GAAG,IAAI;MACd,CAAC,CAAC,OAAAC,QAAA,EAAM,CAER;MAEA,IAAI,CAACD,KAAK,EAAE;QACV,MAAME,YAAY,GAAGJ,OAAO,GACxBtD,4BAA4B,CAAC3K,IAAI,CAC/BoL,YAAY,EACZhI,MAAM,EACN,MAAMY,OACR,CAAC,GACDZ,MAAM,GAAGY,OAAO;QAEpB,OAAOsK,cAAc,CAACD,YAAY,EAAE3C,cAAc,EAAEhB,UAAU,CAAC;MACjE;IACF;IAEA,MAAMqD,oBAAoB,CAACtC,KAAK,EAAErI,MAAM,EAAEsI,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,CAAC;EAC3E;EAEA,IAAIqI,mBAAmB,CAAC7I,IAAI,CAACgB,MAAM,CAACtC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;IACtD,IAAIoK,6BAA6B,CAAC9I,IAAI,CAACgB,MAAM,CAACtC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;MAChE,IAAI,CAACoN,SAAS,EAAE;QACd,MAAMxL,OAAO,GAAGuL,OAAO,GACnBxC,KAAK,CAACV,OAAO,CAAC,GAAG,EAAE,MAAM/G,OAAO,CAAC,GACjCyH,KAAK,GAAGzH,OAAO;QACnB,MAAMuK,cAAc,GAAGN,OAAO,GAC1BtD,4BAA4B,CAAC3K,IAAI,CAC/BoL,YAAY,EACZhI,MAAM,EACN,MAAMY,OACR,CAAC,GACDZ,MAAM;QACVoI,6BAA6B,CAC3B+C,cAAc,EACd7L,OAAO,EACP+I,KAAK,EACLC,cAAc,EACdC,QAAQ,EACR/I,IAAI,EACJ,IACF,CAAC;MACH;IACF,CAAC,MAAM;MACL,MAAMmL,oBAAoB,CAACtC,KAAK,EAAErI,MAAM,EAAEsI,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,CAAC;IAC3E;EACF;EAEA,MAAM4F,QAAQ,GAAG,KAAI6D,UAAK,EAACjJ,MAAM,EAAEsI,cAAc,CAAC;EAClD,MAAM8C,YAAY,GAAGhG,QAAQ,CAACI,QAAQ;EACtC,MAAM1F,WAAW,GAAG,KAAImJ,UAAK,EAAC,GAAG,EAAEX,cAAc,CAAC,CAAC9C,QAAQ;EAE3D,IAAI,CAAC4F,YAAY,CAACjL,UAAU,CAACL,WAAW,CAAC,EACvC,MAAM6K,oBAAoB,CAACtC,KAAK,EAAErI,MAAM,EAAEsI,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,CAAC;EAE3E,IAAIoB,OAAO,KAAK,EAAE,EAAE,OAAOwE,QAAQ;EAEnC,IAAIyC,mBAAmB,CAAC7I,IAAI,CAAC4B,OAAO,CAAC,KAAK,IAAI,EAAE;IAC9C,MAAMtB,OAAO,GAAGuL,OAAO,GACnBxC,KAAK,CAACV,OAAO,CAAC,GAAG,EAAE,MAAM/G,OAAO,CAAC,GACjCyH,KAAK,GAAGzH,OAAO;IACnB,IAAIkH,6BAA6B,CAAC9I,IAAI,CAAC4B,OAAO,CAAC,KAAK,IAAI,EAAE;MACxD,IAAI,CAACkK,SAAS,EAAE;QACd,MAAMK,cAAc,GAAGN,OAAO,GAC1BtD,4BAA4B,CAAC3K,IAAI,CAC/BoL,YAAY,EACZhI,MAAM,EACN,MAAMY,OACR,CAAC,GACDZ,MAAM;QACVoI,6BAA6B,CAC3B+C,cAAc,EACd7L,OAAO,EACP+I,KAAK,EACLC,cAAc,EACdC,QAAQ,EACR/I,IAAI,EACJ,KACF,CAAC;MACH;IACF,CAAC,MAAM;MACLkL,mBAAmB,CAACpL,OAAO,EAAE+I,KAAK,EAAEC,cAAc,EAAEC,QAAQ,EAAE/I,IAAI,CAAC;IACrE;EACF;EAEA,IAAIqL,OAAO,EAAE;IACX,OAAO,KAAI5B,UAAK,EACd1B,4BAA4B,CAAC3K,IAAI,CAC/BoL,YAAY,EACZ5C,QAAQ,CAAC2D,IAAI,EACb,MAAMnI,OACR,CACF,CAAC;EACH;EAEA,OAAO,KAAIqI,UAAK,EAACrI,OAAO,EAAEwE,QAAQ,CAAC;AACrC;AAMA,SAASiG,YAAYA,CAACtL,GAAG,EAAE;EACzB,MAAMuL,SAAS,GAAGtI,MAAM,CAACjD,GAAG,CAAC;EAC7B,IAAI,GAAGuL,SAAS,EAAE,KAAKvL,GAAG,EAAE,OAAO,KAAK;EACxC,OAAOuL,SAAS,IAAI,CAAC,IAAIA,SAAS,GAAG,UAAa;AACpD;AAcA,SAASC,oBAAoBA,CAC3BjD,cAAc,EACdtI,MAAM,EACNY,OAAO,EACP4K,cAAc,EACdhM,IAAI,EACJqL,OAAO,EACPtC,QAAQ,EACRuC,SAAS,EACTxD,UAAU,EACV;EACA,IAAI,OAAOtH,MAAM,KAAK,QAAQ,EAAE;IAC9B,OAAO4K,0BAA0B,CAC/B5K,MAAM,EACNY,OAAO,EACP4K,cAAc,EACdlD,cAAc,EACd9I,IAAI,EACJqL,OAAO,EACPtC,QAAQ,EACRuC,SAAS,EACTxD,UACF,CAAC;EACH;EAEA,IAAIjJ,KAAK,CAACC,OAAO,CAAC0B,MAAM,CAAC,EAAE;IAEzB,MAAMyL,UAAU,GAAGzL,MAAM;IACzB,IAAIyL,UAAU,CAACjO,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;IAGxC,IAAIkO,aAAa;IACjB,IAAItP,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,EAAEA,CAAC,GAAGqP,UAAU,CAACjO,MAAM,EAAE;MAC9B,MAAMmO,UAAU,GAAGF,UAAU,CAACrP,CAAC,CAAC;MAEhC,IAAIwP,aAAa;MACjB,IAAI;QACFA,aAAa,GAAGL,oBAAoB,CAClCjD,cAAc,EACdqD,UAAU,EACV/K,OAAO,EACP4K,cAAc,EACdhM,IAAI,EACJqL,OAAO,EACPtC,QAAQ,EACRuC,SAAS,EACTxD,UACF,CAAC;MACH,CAAC,CAAC,OAAOzF,KAAK,EAAE;QACd,MAAM0C,SAAS,GAAkC1C,KAAM;QACvD6J,aAAa,GAAGnH,SAAS;QACzB,IAAIA,SAAS,CAAClC,IAAI,KAAK,4BAA4B,EAAE;QACrD,MAAMR,KAAK;MACb;MAEA,IAAI+J,aAAa,KAAKnM,SAAS,EAAE;MAEjC,IAAImM,aAAa,KAAK,IAAI,EAAE;QAC1BF,aAAa,GAAG,IAAI;QACpB;MACF;MAEA,OAAOE,aAAa;IACtB;IAEA,IAAIF,aAAa,KAAKjM,SAAS,IAAIiM,aAAa,KAAK,IAAI,EAAE;MACzD,OAAO,IAAI;IACb;IAEA,MAAMA,aAAa;EACrB;EAEA,IAAI,OAAO1L,MAAM,KAAK,QAAQ,IAAIA,MAAM,KAAK,IAAI,EAAE;IACjD,MAAM6L,IAAI,GAAGhP,MAAM,CAACiP,mBAAmB,CAAC9L,MAAM,CAAC;IAC/C,IAAI5D,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,EAAEA,CAAC,GAAGyP,IAAI,CAACrO,MAAM,EAAE;MACxB,MAAMuC,GAAG,GAAG8L,IAAI,CAACzP,CAAC,CAAC;MACnB,IAAIiP,YAAY,CAACtL,GAAG,CAAC,EAAE;QACrB,MAAM,IAAIL,0BAA0B,CAClC,IAAAwF,oBAAa,EAACoD,cAAc,CAAC,EAC7B9I,IAAI,EACJ,iDACF,CAAC;MACH;IACF;IAEApD,CAAC,GAAG,CAAC,CAAC;IAEN,OAAO,EAAEA,CAAC,GAAGyP,IAAI,CAACrO,MAAM,EAAE;MACxB,MAAMuC,GAAG,GAAG8L,IAAI,CAACzP,CAAC,CAAC;MACnB,IAAI2D,GAAG,KAAK,SAAS,IAAKuH,UAAU,IAAIA,UAAU,CAAC9K,GAAG,CAACuD,GAAG,CAAE,EAAE;QAE5D,MAAMgM,iBAAiB,GAA2B/L,MAAM,CAACD,GAAG,CAAE;QAC9D,MAAM6L,aAAa,GAAGL,oBAAoB,CACxCjD,cAAc,EACdyD,iBAAiB,EACjBnL,OAAO,EACP4K,cAAc,EACdhM,IAAI,EACJqL,OAAO,EACPtC,QAAQ,EACRuC,SAAS,EACTxD,UACF,CAAC;QACD,IAAIsE,aAAa,KAAKnM,SAAS,EAAE;QACjC,OAAOmM,aAAa;MACtB;IACF;IAEA,OAAO,IAAI;EACb;EAEA,IAAI5L,MAAM,KAAK,IAAI,EAAE;IACnB,OAAO,IAAI;EACb;EAEA,MAAM2K,oBAAoB,CACxBa,cAAc,EACdxL,MAAM,EACNsI,cAAc,EACdC,QAAQ,EACR/I,IACF,CAAC;AACH;AAQA,SAASwM,6BAA6BA,CAACpH,OAAO,EAAE0D,cAAc,EAAE9I,IAAI,EAAE;EACpE,IAAI,OAAOoF,OAAO,KAAK,QAAQ,IAAIvG,KAAK,CAACC,OAAO,CAACsG,OAAO,CAAC,EAAE,OAAO,IAAI;EACtE,IAAI,OAAOA,OAAO,KAAK,QAAQ,IAAIA,OAAO,KAAK,IAAI,EAAE,OAAO,KAAK;EAEjE,MAAMiH,IAAI,GAAGhP,MAAM,CAACiP,mBAAmB,CAAClH,OAAO,CAAC;EAChD,IAAIqH,kBAAkB,GAAG,KAAK;EAC9B,IAAI7P,CAAC,GAAG,CAAC;EACT,IAAI8P,QAAQ,GAAG,CAAC,CAAC;EACjB,OAAO,EAAEA,QAAQ,GAAGL,IAAI,CAACrO,MAAM,EAAE;IAC/B,MAAMuC,GAAG,GAAG8L,IAAI,CAACK,QAAQ,CAAC;IAC1B,MAAMC,yBAAyB,GAAGpM,GAAG,KAAK,EAAE,IAAIA,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;IAC9D,IAAI3D,CAAC,EAAE,KAAK,CAAC,EAAE;MACb6P,kBAAkB,GAAGE,yBAAyB;IAChD,CAAC,MAAM,IAAIF,kBAAkB,KAAKE,yBAAyB,EAAE;MAC3D,MAAM,IAAIzM,0BAA0B,CAClC,IAAAwF,oBAAa,EAACoD,cAAc,CAAC,EAC7B9I,IAAI,EACJ,sEAAsE,GACpE,sEAAsE,GACtE,uDACJ,CAAC;IACH;EACF;EAEA,OAAOyM,kBAAkB;AAC3B;AAOA,SAASG,mCAAmCA,CAAC/D,KAAK,EAAEgE,QAAQ,EAAE7M,IAAI,EAAE;EAElE,IAAIiJ,SAAMA,CAAC,CAACC,aAAa,EAAE;IACzB;EACF;EAEA,MAAMhE,SAAS,GAAG,IAAAQ,oBAAa,EAACmH,QAAQ,CAAC;EACzC,IAAInE,sBAAsB,CAAC1L,GAAG,CAACkI,SAAS,GAAG,GAAG,GAAG2D,KAAK,CAAC,EAAE;EACzDH,sBAAsB,CAACoE,GAAG,CAAC5H,SAAS,GAAG,GAAG,GAAG2D,KAAK,CAAC;EACnDI,SAAMA,CAAC,CAACG,WAAW,CACjB,qDAAqDP,KAAK,WAAW,GACnE,uDAAuD3D,SAAS,GAC9DlF,IAAI,GAAG,kBAAkB,IAAA0F,oBAAa,EAAC1F,IAAI,CAAC,EAAE,GAAG,EAAE,4DACO,EAC9D,oBAAoB,EACpB,SACF,CAAC;AACH;AAUA,SAAS+M,qBAAqBA,CAC5BjE,cAAc,EACdkD,cAAc,EACd/F,aAAa,EACbjG,IAAI,EACJ8H,UAAU,EACV;EACA,IAAI1C,OAAO,GAAGa,aAAa,CAACb,OAAO;EAEnC,IAAIoH,6BAA6B,CAACpH,OAAO,EAAE0D,cAAc,EAAE9I,IAAI,CAAC,EAAE;IAChEoF,OAAO,GAAG;MAAC,GAAG,EAAEA;IAAO,CAAC;EAC1B;EAEA,IACEgD,GAAG,CAAChL,IAAI,CAACgI,OAAO,EAAE4G,cAAc,CAAC,IACjC,CAACA,cAAc,CAAC/M,QAAQ,CAAC,GAAG,CAAC,IAC7B,CAAC+M,cAAc,CAAChN,QAAQ,CAAC,GAAG,CAAC,EAC7B;IAEA,MAAMwB,MAAM,GAAG4E,OAAO,CAAC4G,cAAc,CAAC;IACtC,MAAMI,aAAa,GAAGL,oBAAoB,CACxCjD,cAAc,EACdtI,MAAM,EACN,EAAE,EACFwL,cAAc,EACdhM,IAAI,EACJ,KAAK,EACL,KAAK,EACL,KAAK,EACL8H,UACF,CAAC;IACD,IAAIsE,aAAa,KAAK,IAAI,IAAIA,aAAa,KAAKnM,SAAS,EAAE;MACzD,MAAMgL,eAAe,CAACe,cAAc,EAAElD,cAAc,EAAE9I,IAAI,CAAC;IAC7D;IAEA,OAAOoM,aAAa;EACtB;EAEA,IAAIY,SAAS,GAAG,EAAE;EAClB,IAAIC,gBAAgB,GAAG,EAAE;EACzB,MAAMZ,IAAI,GAAGhP,MAAM,CAACiP,mBAAmB,CAAClH,OAAO,CAAC;EAChD,IAAIxI,CAAC,GAAG,CAAC,CAAC;EAEV,OAAO,EAAEA,CAAC,GAAGyP,IAAI,CAACrO,MAAM,EAAE;IACxB,MAAMuC,GAAG,GAAG8L,IAAI,CAACzP,CAAC,CAAC;IACnB,MAAMsQ,YAAY,GAAG3M,GAAG,CAACb,OAAO,CAAC,GAAG,CAAC;IAErC,IACEwN,YAAY,KAAK,CAAC,CAAC,IACnBlB,cAAc,CAACrL,UAAU,CAACJ,GAAG,CAACrC,KAAK,CAAC,CAAC,EAAEgP,YAAY,CAAC,CAAC,EACrD;MAOA,IAAIlB,cAAc,CAAChN,QAAQ,CAAC,GAAG,CAAC,EAAE;QAChC4N,mCAAmC,CACjCZ,cAAc,EACdlD,cAAc,EACd9I,IACF,CAAC;MACH;MAEA,MAAMmN,cAAc,GAAG5M,GAAG,CAACrC,KAAK,CAACgP,YAAY,GAAG,CAAC,CAAC;MAElD,IACElB,cAAc,CAAChO,MAAM,IAAIuC,GAAG,CAACvC,MAAM,IACnCgO,cAAc,CAAChN,QAAQ,CAACmO,cAAc,CAAC,IACvCC,iBAAiB,CAACJ,SAAS,EAAEzM,GAAG,CAAC,KAAK,CAAC,IACvCA,GAAG,CAAC8M,WAAW,CAAC,GAAG,CAAC,KAAKH,YAAY,EACrC;QACAF,SAAS,GAAGzM,GAAG;QACf0M,gBAAgB,GAAGjB,cAAc,CAAC9N,KAAK,CACrCgP,YAAY,EACZlB,cAAc,CAAChO,MAAM,GAAGmP,cAAc,CAACnP,MACzC,CAAC;MACH;IACF;EACF;EAEA,IAAIgP,SAAS,EAAE;IAEb,MAAMxM,MAAM,GAA2B4E,OAAO,CAAC4H,SAAS,CAAE;IAC1D,MAAMZ,aAAa,GAAGL,oBAAoB,CACxCjD,cAAc,EACdtI,MAAM,EACNyM,gBAAgB,EAChBD,SAAS,EACThN,IAAI,EACJ,IAAI,EACJ,KAAK,EACLgM,cAAc,CAAChN,QAAQ,CAAC,GAAG,CAAC,EAC5B8I,UACF,CAAC;IAED,IAAIsE,aAAa,KAAK,IAAI,IAAIA,aAAa,KAAKnM,SAAS,EAAE;MACzD,MAAMgL,eAAe,CAACe,cAAc,EAAElD,cAAc,EAAE9I,IAAI,CAAC;IAC7D;IAEA,OAAOoM,aAAa;EACtB;EAEA,MAAMnB,eAAe,CAACe,cAAc,EAAElD,cAAc,EAAE9I,IAAI,CAAC;AAC7D;AAMA,SAASoN,iBAAiBA,CAACE,CAAC,EAAEC,CAAC,EAAE;EAC/B,MAAMC,aAAa,GAAGF,CAAC,CAAC5N,OAAO,CAAC,GAAG,CAAC;EACpC,MAAM+N,aAAa,GAAGF,CAAC,CAAC7N,OAAO,CAAC,GAAG,CAAC;EACpC,MAAMgO,WAAW,GAAGF,aAAa,KAAK,CAAC,CAAC,GAAGF,CAAC,CAACtP,MAAM,GAAGwP,aAAa,GAAG,CAAC;EACvE,MAAMG,WAAW,GAAGF,aAAa,KAAK,CAAC,CAAC,GAAGF,CAAC,CAACvP,MAAM,GAAGyP,aAAa,GAAG,CAAC;EACvE,IAAIC,WAAW,GAAGC,WAAW,EAAE,OAAO,CAAC,CAAC;EACxC,IAAIA,WAAW,GAAGD,WAAW,EAAE,OAAO,CAAC;EACvC,IAAIF,aAAa,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC;EAClC,IAAIC,aAAa,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;EACnC,IAAIH,CAAC,CAACtP,MAAM,GAAGuP,CAAC,CAACvP,MAAM,EAAE,OAAO,CAAC,CAAC;EAClC,IAAIuP,CAAC,CAACvP,MAAM,GAAGsP,CAAC,CAACtP,MAAM,EAAE,OAAO,CAAC;EACjC,OAAO,CAAC;AACV;AAQA,SAAS4P,qBAAqBA,CAACnP,IAAI,EAAEuB,IAAI,EAAE8H,UAAU,EAAE;EACrD,IAAIrJ,IAAI,KAAK,GAAG,IAAIA,IAAI,CAACkC,UAAU,CAAC,IAAI,CAAC,IAAIlC,IAAI,CAACO,QAAQ,CAAC,GAAG,CAAC,EAAE;IAC/D,MAAMe,MAAM,GAAG,gDAAgD;IAC/D,MAAM,IAAIF,4BAA4B,CAACpB,IAAI,EAAEsB,MAAM,EAAE,IAAA2F,oBAAa,EAAC1F,IAAI,CAAC,CAAC;EAC3E;EAGA,IAAI8I,cAAc;EAElB,MAAM7C,aAAa,GAAGN,qBAAqB,CAAC3F,IAAI,CAAC;EAEjD,IAAIiG,aAAa,CAAChB,MAAM,EAAE;IACxB6D,cAAc,GAAG,IAAAgC,oBAAa,EAAC7E,aAAa,CAACf,SAAS,CAAC;IACvD,MAAMG,OAAO,GAAGY,aAAa,CAACZ,OAAO;IACrC,IAAIA,OAAO,EAAE;MACX,IAAI+C,GAAG,CAAChL,IAAI,CAACiI,OAAO,EAAE5G,IAAI,CAAC,IAAI,CAACA,IAAI,CAACQ,QAAQ,CAAC,GAAG,CAAC,EAAE;QAClD,MAAMmN,aAAa,GAAGL,oBAAoB,CACxCjD,cAAc,EACdzD,OAAO,CAAC5G,IAAI,CAAC,EACb,EAAE,EACFA,IAAI,EACJuB,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,KAAK,EACL8H,UACF,CAAC;QACD,IAAIsE,aAAa,KAAK,IAAI,IAAIA,aAAa,KAAKnM,SAAS,EAAE;UACzD,OAAOmM,aAAa;QACtB;MACF,CAAC,MAAM;QACL,IAAIY,SAAS,GAAG,EAAE;QAClB,IAAIC,gBAAgB,GAAG,EAAE;QACzB,MAAMZ,IAAI,GAAGhP,MAAM,CAACiP,mBAAmB,CAACjH,OAAO,CAAC;QAChD,IAAIzI,CAAC,GAAG,CAAC,CAAC;QAEV,OAAO,EAAEA,CAAC,GAAGyP,IAAI,CAACrO,MAAM,EAAE;UACxB,MAAMuC,GAAG,GAAG8L,IAAI,CAACzP,CAAC,CAAC;UACnB,MAAMsQ,YAAY,GAAG3M,GAAG,CAACb,OAAO,CAAC,GAAG,CAAC;UAErC,IAAIwN,YAAY,KAAK,CAAC,CAAC,IAAIzO,IAAI,CAACkC,UAAU,CAACJ,GAAG,CAACrC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5D,MAAMiP,cAAc,GAAG5M,GAAG,CAACrC,KAAK,CAACgP,YAAY,GAAG,CAAC,CAAC;YAClD,IACEzO,IAAI,CAACT,MAAM,IAAIuC,GAAG,CAACvC,MAAM,IACzBS,IAAI,CAACO,QAAQ,CAACmO,cAAc,CAAC,IAC7BC,iBAAiB,CAACJ,SAAS,EAAEzM,GAAG,CAAC,KAAK,CAAC,IACvCA,GAAG,CAAC8M,WAAW,CAAC,GAAG,CAAC,KAAKH,YAAY,EACrC;cACAF,SAAS,GAAGzM,GAAG;cACf0M,gBAAgB,GAAGxO,IAAI,CAACP,KAAK,CAC3BgP,YAAY,EACZzO,IAAI,CAACT,MAAM,GAAGmP,cAAc,CAACnP,MAC/B,CAAC;YACH;UACF;QACF;QAEA,IAAIgP,SAAS,EAAE;UACb,MAAMxM,MAAM,GAAG6E,OAAO,CAAC2H,SAAS,CAAC;UACjC,MAAMZ,aAAa,GAAGL,oBAAoB,CACxCjD,cAAc,EACdtI,MAAM,EACNyM,gBAAgB,EAChBD,SAAS,EACThN,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,KAAK,EACL8H,UACF,CAAC;UAED,IAAIsE,aAAa,KAAK,IAAI,IAAIA,aAAa,KAAKnM,SAAS,EAAE;YACzD,OAAOmM,aAAa;UACtB;QACF;MACF;IACF;EACF;EAEA,MAAMpB,gBAAgB,CAACvM,IAAI,EAAEqK,cAAc,EAAE9I,IAAI,CAAC;AACpD;AAMA,SAAS6N,gBAAgBA,CAAC3M,SAAS,EAAElB,IAAI,EAAE;EACzC,IAAI8N,cAAc,GAAG5M,SAAS,CAACxB,OAAO,CAAC,GAAG,CAAC;EAC3C,IAAIqO,gBAAgB,GAAG,IAAI;EAC3B,IAAIC,QAAQ,GAAG,KAAK;EACpB,IAAI9M,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;IACxB8M,QAAQ,GAAG,IAAI;IACf,IAAIF,cAAc,KAAK,CAAC,CAAC,IAAI5M,SAAS,CAAClD,MAAM,KAAK,CAAC,EAAE;MACnD+P,gBAAgB,GAAG,KAAK;IAC1B,CAAC,MAAM;MACLD,cAAc,GAAG5M,SAAS,CAACxB,OAAO,CAAC,GAAG,EAAEoO,cAAc,GAAG,CAAC,CAAC;IAC7D;EACF;EAEA,MAAMG,WAAW,GACfH,cAAc,KAAK,CAAC,CAAC,GAAG5M,SAAS,GAAGA,SAAS,CAAChD,KAAK,CAAC,CAAC,EAAE4P,cAAc,CAAC;EAIxE,IAAIvF,uBAAuB,CAAC/I,IAAI,CAACyO,WAAW,CAAC,KAAK,IAAI,EAAE;IACtDF,gBAAgB,GAAG,KAAK;EAC1B;EAEA,IAAI,CAACA,gBAAgB,EAAE;IACrB,MAAM,IAAIlO,4BAA4B,CACpCqB,SAAS,EACT,6BAA6B,EAC7B,IAAAwE,oBAAa,EAAC1F,IAAI,CACpB,CAAC;EACH;EAEA,MAAMgM,cAAc,GAClB,GAAG,IAAI8B,cAAc,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG5M,SAAS,CAAChD,KAAK,CAAC4P,cAAc,CAAC,CAAC;EAEtE,OAAO;IAACG,WAAW;IAAEjC,cAAc;IAAEgC;EAAQ,CAAC;AAChD;AAQA,SAAStC,cAAcA,CAACxK,SAAS,EAAElB,IAAI,EAAE8H,UAAU,EAAE;EACnD,IAAIoG,wBAAc,CAACjP,QAAQ,CAACiC,SAAS,CAAC,EAAE;IACtC,OAAO,KAAIuI,UAAK,EAAC,OAAO,GAAGvI,SAAS,CAAC;EACvC;EAEA,MAAM;IAAC+M,WAAW;IAAEjC,cAAc;IAAEgC;EAAQ,CAAC,GAAGH,gBAAgB,CAC9D3M,SAAS,EACTlB,IACF,CAAC;EAGD,MAAMiG,aAAa,GAAGN,qBAAqB,CAAC3F,IAAI,CAAC;EAIjD,IAAIiG,aAAa,CAAChB,MAAM,EAAE;IACxB,MAAM6D,cAAc,GAAG,IAAAgC,oBAAa,EAAC7E,aAAa,CAACf,SAAS,CAAC;IAC7D,IACEe,aAAa,CAACxH,IAAI,KAAKwP,WAAW,IAClChI,aAAa,CAACb,OAAO,KAAKnF,SAAS,IACnCgG,aAAa,CAACb,OAAO,KAAK,IAAI,EAC9B;MACA,OAAO2H,qBAAqB,CAC1BjE,cAAc,EACdkD,cAAc,EACd/F,aAAa,EACbjG,IAAI,EACJ8H,UACF,CAAC;IACH;EACF;EAEA,IAAIgB,cAAc,GAAG,KAAIW,UAAK,EAC5B,iBAAiB,GAAGwE,WAAW,GAAG,eAAe,EACjDjO,IACF,CAAC;EACD,IAAImO,eAAe,GAAG,IAAAzI,oBAAa,EAACoD,cAAc,CAAC;EAEnD,IAAIsF,QAAQ;EACZ,GAAG;IACD,MAAMC,IAAI,GAAGzE,WAAW,CAACuE,eAAe,CAACjQ,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACvD,IAAI,CAACmQ,IAAI,IAAI,CAACA,IAAI,CAAC5D,WAAW,CAAC,CAAC,EAAE;MAChC2D,QAAQ,GAAGD,eAAe;MAC1BrF,cAAc,GAAG,KAAIW,UAAK,EACxB,CAACuE,QAAQ,GAAG,2BAA2B,GAAG,wBAAwB,IAChEC,WAAW,GACX,eAAe,EACjBnF,cACF,CAAC;MACDqF,eAAe,GAAG,IAAAzI,oBAAa,EAACoD,cAAc,CAAC;MAC/C;IACF;IAGA,MAAM7C,aAAa,GAAGzB,IAAI,CAAC2J,eAAe,EAAE;MAACnO,IAAI;MAAEkB;IAAS,CAAC,CAAC;IAC9D,IAAI+E,aAAa,CAACb,OAAO,KAAKnF,SAAS,IAAIgG,aAAa,CAACb,OAAO,KAAK,IAAI,EAAE;MACzE,OAAO2H,qBAAqB,CAC1BjE,cAAc,EACdkD,cAAc,EACd/F,aAAa,EACbjG,IAAI,EACJ8H,UACF,CAAC;IACH;IAEA,IAAIkE,cAAc,KAAK,GAAG,EAAE;MAC1B,OAAO7B,iBAAiB,CAACrB,cAAc,EAAE7C,aAAa,EAAEjG,IAAI,CAAC;IAC/D;IAEA,OAAO,KAAIyJ,UAAK,EAACuC,cAAc,EAAElD,cAAc,CAAC;EAElD,CAAC,QAAQqF,eAAe,CAACnQ,MAAM,KAAKoQ,QAAQ,CAACpQ,MAAM;EAEnD,MAAM,IAAI8C,oBAAoB,CAACmN,WAAW,EAAE,IAAAvI,oBAAa,EAAC1F,IAAI,CAAC,EAAE,KAAK,CAAC;AACzE;AAMA,SAASsO,mBAAmBA,CAACpN,SAAS,EAAE;EACtC,IAAIA,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;IACxB,IAAIA,SAAS,CAAClD,MAAM,KAAK,CAAC,IAAIkD,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,OAAO,IAAI;IAC/D,IACEA,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,KACnBA,SAAS,CAAClD,MAAM,KAAK,CAAC,IAAIkD,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAChD;MACA,OAAO,IAAI;IACb;EACF;EAEA,OAAO,KAAK;AACd;AAMA,SAASqN,uCAAuCA,CAACrN,SAAS,EAAE;EAC1D,IAAIA,SAAS,KAAK,EAAE,EAAE,OAAO,KAAK;EAClC,IAAIA,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,OAAO,IAAI;EACrC,OAAOoN,mBAAmB,CAACpN,SAAS,CAAC;AACvC;AAiBA,SAASsN,aAAaA,CAACtN,SAAS,EAAElB,IAAI,EAAE8H,UAAU,EAAEyC,gBAAgB,EAAE;EAGpE,MAAMhD,QAAQ,GAAGvH,IAAI,CAACuH,QAAQ;EAC9B,MAAMkH,MAAM,GAAGlH,QAAQ,KAAK,OAAO;EACnC,MAAMmH,QAAQ,GAAGD,MAAM,IAAIlH,QAAQ,KAAK,OAAO,IAAIA,QAAQ,KAAK,QAAQ;EAIxE,IAAI3B,QAAQ;EAEZ,IAAI2I,uCAAuC,CAACrN,SAAS,CAAC,EAAE;IACtD,IAAI;MACF0E,QAAQ,GAAG,KAAI6D,UAAK,EAACvI,SAAS,EAAElB,IAAI,CAAC;IACvC,CAAC,CAAC,OAAOwF,MAAM,EAAE;MACf,MAAMnD,KAAK,GAAG,IAAIf,+BAA+B,CAACJ,SAAS,EAAElB,IAAI,CAAC;MAClEqC,KAAK,CAACoD,KAAK,GAAGD,MAAM;MACpB,MAAMnD,KAAK;IACb;EACF,CAAC,MAAM,IAAIkF,QAAQ,KAAK,OAAO,IAAIrG,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;IACvD0E,QAAQ,GAAGgI,qBAAqB,CAAC1M,SAAS,EAAElB,IAAI,EAAE8H,UAAU,CAAC;EAC/D,CAAC,MAAM;IACL,IAAI;MACFlC,QAAQ,GAAG,KAAI6D,UAAK,EAACvI,SAAS,CAAC;IACjC,CAAC,CAAC,OAAOsE,MAAM,EAAE;MAEf,IAAIkJ,QAAQ,IAAI,CAACR,wBAAc,CAACjP,QAAQ,CAACiC,SAAS,CAAC,EAAE;QACnD,MAAMmB,KAAK,GAAG,IAAIf,+BAA+B,CAACJ,SAAS,EAAElB,IAAI,CAAC;QAClEqC,KAAK,CAACoD,KAAK,GAAGD,MAAM;QACpB,MAAMnD,KAAK;MACb;MAEAuD,QAAQ,GAAG8F,cAAc,CAACxK,SAAS,EAAElB,IAAI,EAAE8H,UAAU,CAAC;IACxD;EACF;EAEAlJ,QAAKA,CAAC,CAACgH,QAAQ,KAAK3F,SAAS,EAAE,wBAAwB,CAAC;EAExD,IAAI2F,QAAQ,CAAC2B,QAAQ,KAAK,OAAO,EAAE;IACjC,OAAO3B,QAAQ;EACjB;EAEA,OAAO0E,kBAAkB,CAAC1E,QAAQ,EAAE5F,IAAI,EAAEuK,gBAAgB,CAAC;AAC7D;AAOA,SAASoE,uBAAuBA,CAACzN,SAAS,EAAEoE,MAAM,EAAEsJ,eAAe,EAAE;EACnE,IAAIA,eAAe,EAAE;IAEnB,MAAMC,cAAc,GAAGD,eAAe,CAACrH,QAAQ;IAE/C,IAAIsH,cAAc,KAAK,OAAO,IAAIA,cAAc,KAAK,QAAQ,EAAE;MAC7D,IAAIN,uCAAuC,CAACrN,SAAS,CAAC,EAAE;QAEtD,MAAM4N,cAAc,GAAGxJ,MAAM,oBAANA,MAAM,CAAEiC,QAAQ;QAIvC,IACEuH,cAAc,IACdA,cAAc,KAAK,QAAQ,IAC3BA,cAAc,KAAK,OAAO,EAC1B;UACA,MAAM,IAAI9N,6BAA6B,CACrCE,SAAS,EACT0N,eAAe,EACf,qDACF,CAAC;QACH;QAEA,OAAO;UAACxI,GAAG,EAAE,CAAAd,MAAM,oBAANA,MAAM,CAAEiE,IAAI,KAAI;QAAE,CAAC;MAClC;MAEA,IAAI2E,wBAAc,CAACjP,QAAQ,CAACiC,SAAS,CAAC,EAAE;QACtC,MAAM,IAAIF,6BAA6B,CACrCE,SAAS,EACT0N,eAAe,EACf,qDACF,CAAC;MACH;MAEA,MAAM,IAAI5N,6BAA6B,CACrCE,SAAS,EACT0N,eAAe,EACf,sDACF,CAAC;IACH;EACF;AACF;AAkBA,SAASrD,KAAKA,CAAC5H,IAAI,EAAE;EACnB,OAAOoL,OAAO,CACZpL,IAAI,IACF,OAAOA,IAAI,KAAK,QAAQ,IACxB,MAAM,IAAIA,IAAI,IACd,OAAOA,IAAI,CAAC4F,IAAI,KAAK,QAAQ,IAC7B,UAAU,IAAI5F,IAAI,IAClB,OAAOA,IAAI,CAAC4D,QAAQ,KAAK,QAAQ,IACjC5D,IAAI,CAAC4F,IAAI,IACT5F,IAAI,CAAC4D,QACT,CAAC;AACH;AAQA,SAASyH,uBAAuBA,CAAC1F,SAAS,EAAE;EAC1C,IAAIA,SAAS,KAAKrJ,SAAS,EAAE;IAC3B;EACF;EAEA,IAAI,OAAOqJ,SAAS,KAAK,QAAQ,IAAI,CAACiC,KAAK,CAACjC,SAAS,CAAC,EAAE;IACtD,MAAM,IAAI1L,KAAK,CAACW,oBAAoB,CAClC,WAAW,EACX,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjB+K,SACF,CAAC;EACH;AACF;AAOA,SAAS2F,cAAcA,CAAC/N,SAAS,EAAEoG,OAAO,GAAG,CAAC,CAAC,EAAE;EAC/C,MAAM;IAACgC;EAAS,CAAC,GAAGhC,OAAO;EAC3B1I,QAAKA,CAAC,CAAC0K,SAAS,KAAKrJ,SAAS,EAAE,oCAAoC,CAAC;EACrE+O,uBAAuB,CAAC1F,SAAS,CAAC;EAGlC,IAAIsF,eAAe;EACnB,IAAItF,SAAS,EAAE;IACb,IAAI;MACFsF,eAAe,GAAG,KAAInF,UAAK,EAACH,SAAS,CAAC;IACxC,CAAC,CAAC,OAAA4F,QAAA,EAAM,CAER;EACF;EAGA,IAAI5J,MAAM;EAEV,IAAIiC,QAAQ;EAEZ,IAAI;IACFjC,MAAM,GAAGiJ,uCAAuC,CAACrN,SAAS,CAAC,GACvD,KAAIuI,UAAK,EAACvI,SAAS,EAAE0N,eAAe,CAAC,GACrC,KAAInF,UAAK,EAACvI,SAAS,CAAC;IAGxBqG,QAAQ,GAAGjC,MAAM,CAACiC,QAAQ;IAE1B,IAAIA,QAAQ,KAAK,OAAO,EAAE;MACxB,OAAO;QAACnB,GAAG,EAAEd,MAAM,CAACiE,IAAI;QAAEtF,MAAM,EAAE;MAAI,CAAC;IACzC;EACF,CAAC,CAAC,OAAAkL,QAAA,EAAM,CAER;EAKA,MAAMC,WAAW,GAAGT,uBAAuB,CACzCzN,SAAS,EACToE,MAAM,EACNsJ,eACF,CAAC;EAED,IAAIQ,WAAW,EAAE,OAAOA,WAAW;EAGnC,IAAI7H,QAAQ,KAAKtH,SAAS,IAAIqF,MAAM,EAAE;IACpCiC,QAAQ,GAAGjC,MAAM,CAACiC,QAAQ;EAC5B;EAEA,IAAIA,QAAQ,KAAK,OAAO,EAAE;IACxB,OAAO;MAACnB,GAAG,EAAElF;IAAS,CAAC;EACzB;EAGA,IAAIoE,MAAM,IAAIA,MAAM,CAACiC,QAAQ,KAAK,OAAO,EAAE,OAAO;IAACnB,GAAG,EAAElF;EAAS,CAAC;EAElE,MAAM4G,UAAU,GAAGD,gBAAgB,CAACP,OAAO,CAACQ,UAAU,CAAC;EAEvD,MAAM1B,GAAG,GAAGoI,aAAa,CAACtN,SAAS,EAAE,KAAIuI,UAAK,EAACH,SAAS,CAAC,EAAExB,UAAU,EAAE,KAAK,CAAC;EAE7E,OAAO;IAGL1B,GAAG,EAAEA,GAAG,CAACmD,IAAI;IACbtF,MAAM,EAAEoD,6BAA6B,CAACjB,GAAG,EAAE;MAACkD;IAAS,CAAC;EACxD,CAAC;AACH;AAsBA,SAASK,OAAOA,CAACzI,SAAS,EAAEmO,MAAM,EAAE;EAClC,IAAI,CAACA,MAAM,EAAE;IACX,MAAM,IAAIjP,KAAK,CACb,kEACF,CAAC;EACH;EAEA,IAAI;IACF,OAAO6O,cAAc,CAAC/N,SAAS,EAAE;MAACoI,SAAS,EAAE+F;IAAM,CAAC,CAAC,CAACjJ,GAAG;EAC3D,CAAC,CAAC,OAAO/D,KAAK,EAAE;IAEd,MAAM0C,SAAS,GAAkC1C,KAAM;IAEvD,IACE,CAAC0C,SAAS,CAAClC,IAAI,KAAK,4BAA4B,IAC9CkC,SAAS,CAAClC,IAAI,KAAK,sBAAsB,KAC3C,OAAOkC,SAAS,CAACqB,GAAG,KAAK,QAAQ,EACjC;MACA,OAAOrB,SAAS,CAACqB,GAAG;IACtB;IAEA,MAAM/D,KAAK;EACb;AACF;AAAC","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/core/package.json b/node_modules/@babel/core/package.json new file mode 100644 index 0000000..181350a --- /dev/null +++ b/node_modules/@babel/core/package.json @@ -0,0 +1,82 @@ +{ + "name": "@babel/core", + "version": "7.29.0", + "description": "Babel compiler core.", + "main": "./lib/index.js", + "author": "The Babel Team (https://babel.dev/team)", + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "repository": { + "type": "git", + "url": "https://github.com/babel/babel.git", + "directory": "packages/babel-core" + }, + "homepage": "https://babel.dev/docs/en/next/babel-core", + "bugs": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20core%22+is%3Aopen", + "keywords": [ + "6to5", + "babel", + "classes", + "const", + "es6", + "harmony", + "let", + "modules", + "transpile", + "transpiler", + "var", + "babel-core", + "compiler" + ], + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + }, + "browser": { + "./lib/config/files/index.js": "./lib/config/files/index-browser.js", + "./lib/config/resolve-targets.js": "./lib/config/resolve-targets-browser.js", + "./lib/transform-file.js": "./lib/transform-file-browser.js", + "./src/config/files/index.ts": "./src/config/files/index-browser.ts", + "./src/config/resolve-targets.ts": "./src/config/resolve-targets-browser.ts", + "./src/transform-file.ts": "./src/transform-file-browser.ts" + }, + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "devDependencies": { + "@babel/helper-transform-fixture-test-runner": "^7.28.6", + "@babel/plugin-syntax-flow": "^7.28.6", + "@babel/plugin-transform-flow-strip-types": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.28.6", + "@babel/preset-env": "^7.29.0", + "@babel/preset-typescript": "^7.28.5", + "@jridgewell/trace-mapping": "^0.3.28", + "@types/convert-source-map": "^2.0.0", + "@types/debug": "^4.1.0", + "@types/resolve": "^1.3.2", + "@types/semver": "^5.4.0", + "rimraf": "^3.0.0", + "ts-node": "^11.0.0-beta.1", + "tsx": "^4.20.3" + }, + "type": "commonjs" +} \ No newline at end of file diff --git a/node_modules/@babel/core/src/config/files/index-browser.ts b/node_modules/@babel/core/src/config/files/index-browser.ts new file mode 100644 index 0000000..435c068 --- /dev/null +++ b/node_modules/@babel/core/src/config/files/index-browser.ts @@ -0,0 +1,115 @@ +/* c8 ignore start */ + +import type { Handler } from "gensync"; + +import type { + ConfigFile, + IgnoreFile, + RelativeConfig, + FilePackageData, +} from "./types.ts"; + +import type { CallerMetadata } from "../validation/options.ts"; + +export type { ConfigFile, IgnoreFile, RelativeConfig, FilePackageData }; + +export function findConfigUpwards( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + rootDir: string, +): string | null { + return null; +} + +// eslint-disable-next-line require-yield +export function* findPackageData(filepath: string): Handler { + return { + filepath, + directories: [], + pkg: null, + isPackage: false, + }; +} + +// eslint-disable-next-line require-yield +export function* findRelativeConfig( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + pkgData: FilePackageData, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + envName: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + caller: CallerMetadata | undefined, +): Handler { + return { config: null, ignore: null }; +} + +// eslint-disable-next-line require-yield +export function* findRootConfig( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + dirname: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + envName: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + caller: CallerMetadata | undefined, +): Handler { + return null; +} + +// eslint-disable-next-line require-yield +export function* loadConfig( + name: string, + dirname: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + envName: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + caller: CallerMetadata | undefined, +): Handler { + throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`); +} + +// eslint-disable-next-line require-yield +export function* resolveShowConfigPath( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + dirname: string, +): Handler { + return null; +} + +export const ROOT_CONFIG_FILENAMES: string[] = []; + +type Resolved = + | { loader: "require"; filepath: string } + | { loader: "import"; filepath: string }; + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +export function resolvePlugin(name: string, dirname: string): Resolved | null { + return null; +} + +// eslint-disable-next-line @typescript-eslint/no-unused-vars +export function resolvePreset(name: string, dirname: string): Resolved | null { + return null; +} + +export function loadPlugin( + name: string, + dirname: string, +): Handler<{ + filepath: string; + value: unknown; +}> { + throw new Error( + `Cannot load plugin ${name} relative to ${dirname} in a browser`, + ); +} + +export function loadPreset( + name: string, + dirname: string, +): Handler<{ + filepath: string; + value: unknown; +}> { + throw new Error( + `Cannot load preset ${name} relative to ${dirname} in a browser`, + ); +} diff --git a/node_modules/@babel/core/src/config/files/index.ts b/node_modules/@babel/core/src/config/files/index.ts new file mode 100644 index 0000000..7b9bf3b --- /dev/null +++ b/node_modules/@babel/core/src/config/files/index.ts @@ -0,0 +1,30 @@ +type indexBrowserType = typeof import("./index-browser"); +type indexType = typeof import("./index"); + +// Kind of gross, but essentially asserting that the exports of this module are the same as the +// exports of index-browser, since this file may be replaced at bundle time with index-browser. +// eslint-disable-next-line @typescript-eslint/no-unused-expressions +({}) as any as indexBrowserType as indexType; + +export { findPackageData } from "./package.ts"; + +export { + findConfigUpwards, + findRelativeConfig, + findRootConfig, + loadConfig, + resolveShowConfigPath, + ROOT_CONFIG_FILENAMES, +} from "./configuration.ts"; +export type { + ConfigFile, + IgnoreFile, + RelativeConfig, + FilePackageData, +} from "./types.ts"; +export { + loadPlugin, + loadPreset, + resolvePlugin, + resolvePreset, +} from "./plugins.ts"; diff --git a/node_modules/@babel/core/src/config/resolve-targets-browser.ts b/node_modules/@babel/core/src/config/resolve-targets-browser.ts new file mode 100644 index 0000000..89e4194 --- /dev/null +++ b/node_modules/@babel/core/src/config/resolve-targets-browser.ts @@ -0,0 +1,42 @@ +/* c8 ignore start */ + +import type { InputOptions } from "./validation/options.ts"; +import getTargets, { + type InputTargets, +} from "@babel/helper-compilation-targets"; + +import type { Targets } from "@babel/helper-compilation-targets"; + +export function resolveBrowserslistConfigFile( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + browserslistConfigFile: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + configFilePath: string, +): string | void { + return undefined; +} + +export function resolveTargets( + options: InputOptions, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + root: string, +): Targets { + const optTargets = options.targets; + let targets: InputTargets; + + if (typeof optTargets === "string" || Array.isArray(optTargets)) { + targets = { browsers: optTargets }; + } else if (optTargets) { + if ("esmodules" in optTargets) { + targets = { ...optTargets, esmodules: "intersect" }; + } else { + // https://github.com/microsoft/TypeScript/issues/17002 + targets = optTargets as InputTargets; + } + } + + return getTargets(targets, { + ignoreBrowserslistConfig: true, + browserslistEnv: options.browserslistEnv, + }); +} diff --git a/node_modules/@babel/core/src/config/resolve-targets.ts b/node_modules/@babel/core/src/config/resolve-targets.ts new file mode 100644 index 0000000..4991f77 --- /dev/null +++ b/node_modules/@babel/core/src/config/resolve-targets.ts @@ -0,0 +1,54 @@ +type browserType = typeof import("./resolve-targets-browser"); +type nodeType = typeof import("./resolve-targets"); + +// Kind of gross, but essentially asserting that the exports of this module are the same as the +// exports of index-browser, since this file may be replaced at bundle time with index-browser. +// eslint-disable-next-line @typescript-eslint/no-unused-expressions +({}) as any as browserType as nodeType; + +import type { InputOptions } from "./validation/options.ts"; +import path from "node:path"; +import getTargets, { + type InputTargets, +} from "@babel/helper-compilation-targets"; + +import type { Targets } from "@babel/helper-compilation-targets"; + +export function resolveBrowserslistConfigFile( + browserslistConfigFile: string, + configFileDir: string, +): string | undefined { + return path.resolve(configFileDir, browserslistConfigFile); +} + +export function resolveTargets(options: InputOptions, root: string): Targets { + const optTargets = options.targets; + let targets: InputTargets; + + if (typeof optTargets === "string" || Array.isArray(optTargets)) { + targets = { browsers: optTargets }; + } else if (optTargets) { + if ("esmodules" in optTargets) { + targets = { ...optTargets, esmodules: "intersect" }; + } else { + // https://github.com/microsoft/TypeScript/issues/17002 + targets = optTargets as InputTargets; + } + } + + const { browserslistConfigFile } = options; + let configFile; + let ignoreBrowserslistConfig = false; + if (typeof browserslistConfigFile === "string") { + configFile = browserslistConfigFile; + } else { + ignoreBrowserslistConfig = browserslistConfigFile === false; + } + + return getTargets(targets, { + ignoreBrowserslistConfig, + configFile, + configPath: root, + browserslistEnv: options.browserslistEnv, + }); +} diff --git a/node_modules/@babel/core/src/transform-file-browser.ts b/node_modules/@babel/core/src/transform-file-browser.ts new file mode 100644 index 0000000..0a15ca5 --- /dev/null +++ b/node_modules/@babel/core/src/transform-file-browser.ts @@ -0,0 +1,33 @@ +/* c8 ignore start */ + +// duplicated from transform-file so we do not have to import anything here +type TransformFile = { + (filename: string, callback: (error: Error, file: null) => void): void; + ( + filename: string, + opts: any, + callback: (error: Error, file: null) => void, + ): void; +}; + +export const transformFile: TransformFile = function transformFile( + filename, + opts, + callback?: (error: Error, file: null) => void, +) { + if (typeof opts === "function") { + callback = opts; + } + + callback(new Error("Transforming files is not supported in browsers"), null); +}; + +export function transformFileSync(): never { + throw new Error("Transforming files is not supported in browsers"); +} + +export function transformFileAsync() { + return Promise.reject( + new Error("Transforming files is not supported in browsers"), + ); +} diff --git a/node_modules/@babel/core/src/transform-file.ts b/node_modules/@babel/core/src/transform-file.ts new file mode 100644 index 0000000..10a3140 --- /dev/null +++ b/node_modules/@babel/core/src/transform-file.ts @@ -0,0 +1,56 @@ +import gensync, { type Handler } from "gensync"; + +import loadConfig from "./config/index.ts"; +import type { InputOptions, ResolvedConfig } from "./config/index.ts"; +import { run } from "./transformation/index.ts"; +import type { FileResult, FileResultCallback } from "./transformation/index.ts"; +import * as fs from "./gensync-utils/fs.ts"; + +type transformFileBrowserType = typeof import("./transform-file-browser"); +type transformFileType = typeof import("./transform-file"); + +// Kind of gross, but essentially asserting that the exports of this module are the same as the +// exports of transform-file-browser, since this file may be replaced at bundle time with +// transform-file-browser. +// eslint-disable-next-line @typescript-eslint/no-unused-expressions +({}) as any as transformFileBrowserType as transformFileType; + +const transformFileRunner = gensync(function* ( + filename: string, + opts?: InputOptions, +): Handler { + const options = { ...opts, filename }; + + const config: ResolvedConfig | null = yield* loadConfig(options); + if (config === null) return null; + + const code = yield* fs.readFile(filename, "utf8"); + return yield* run(config, code); +}); + +// @ts-expect-error TS doesn't detect that this signature is compatible +export function transformFile( + filename: string, + callback: FileResultCallback, +): void; +export function transformFile( + filename: string, + opts: InputOptions | undefined | null, + callback: FileResultCallback, +): void; +export function transformFile( + ...args: Parameters +) { + transformFileRunner.errback(...args); +} + +export function transformFileSync( + ...args: Parameters +) { + return transformFileRunner.sync(...args); +} +export function transformFileAsync( + ...args: Parameters +) { + return transformFileRunner.async(...args); +} diff --git a/node_modules/@babel/generator/LICENSE b/node_modules/@babel/generator/LICENSE new file mode 100644 index 0000000..f31575e --- /dev/null +++ b/node_modules/@babel/generator/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) 2014-present Sebastian McKenzie and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/@babel/generator/README.md b/node_modules/@babel/generator/README.md new file mode 100644 index 0000000..d56149a --- /dev/null +++ b/node_modules/@babel/generator/README.md @@ -0,0 +1,19 @@ +# @babel/generator + +> Turns an AST into code. + +See our website [@babel/generator](https://babeljs.io/docs/babel-generator) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20generator%22+is%3Aopen) associated with this package. + +## Install + +Using npm: + +```sh +npm install --save-dev @babel/generator +``` + +or using yarn: + +```sh +yarn add @babel/generator --dev +``` diff --git a/node_modules/@babel/generator/lib/buffer.js b/node_modules/@babel/generator/lib/buffer.js new file mode 100644 index 0000000..05b5279 --- /dev/null +++ b/node_modules/@babel/generator/lib/buffer.js @@ -0,0 +1,244 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +const spaceIndents = []; +for (let i = 0; i < 32; i++) { + spaceIndents.push(" ".repeat(i * 2)); +} +class Buffer { + constructor(map, indentChar) { + this._map = null; + this._buf = ""; + this._str = ""; + this._appendCount = 0; + this._last = 0; + this._canMarkIdName = true; + this._indentChar = ""; + this._queuedChar = 0; + this._position = { + line: 1, + column: 0 + }; + this._sourcePosition = { + identifierName: undefined, + identifierNamePos: undefined, + line: undefined, + column: undefined, + filename: undefined + }; + this._map = map; + this._indentChar = indentChar; + } + get() { + const { + _map, + _last + } = this; + if (this._queuedChar !== 32) { + this._flush(); + } + const code = _last === 10 ? (this._buf + this._str).trimRight() : this._buf + this._str; + if (_map === null) { + return { + code: code, + decodedMap: undefined, + map: null, + rawMappings: undefined + }; + } + const result = { + code: code, + decodedMap: _map.getDecoded(), + get __mergedMap() { + return this.map; + }, + get map() { + const resultMap = _map.get(); + result.map = resultMap; + return resultMap; + }, + set map(value) { + Object.defineProperty(result, "map", { + value, + writable: true + }); + }, + get rawMappings() { + const mappings = _map.getRawMappings(); + result.rawMappings = mappings; + return mappings; + }, + set rawMappings(value) { + Object.defineProperty(result, "rawMappings", { + value, + writable: true + }); + } + }; + return result; + } + append(str, maybeNewline) { + this._flush(); + this._append(str, maybeNewline); + } + appendChar(char) { + this._flush(); + this._appendChar(char, 1, true); + } + queue(char) { + this._flush(); + this._queuedChar = char; + } + _flush() { + const queuedChar = this._queuedChar; + if (queuedChar !== 0) { + this._appendChar(queuedChar, 1, true); + this._queuedChar = 0; + } + } + _appendChar(char, repeat, useSourcePos) { + this._last = char; + if (char === -1) { + const indent = repeat >= 64 ? this._indentChar.repeat(repeat) : spaceIndents[repeat / 2]; + this._str += indent; + } else { + this._str += repeat > 1 ? String.fromCharCode(char).repeat(repeat) : String.fromCharCode(char); + } + const isSpace = char === 32; + const position = this._position; + if (char !== 10) { + if (this._map) { + const sourcePos = this._sourcePosition; + if (useSourcePos && sourcePos) { + this._map.mark(position, sourcePos.line, sourcePos.column, isSpace ? undefined : sourcePos.identifierName, isSpace ? undefined : sourcePos.identifierNamePos, sourcePos.filename); + if (!isSpace && this._canMarkIdName) { + sourcePos.identifierName = undefined; + sourcePos.identifierNamePos = undefined; + } + } else { + this._map.mark(position); + } + } + position.column += repeat; + } else { + position.line++; + position.column = 0; + } + } + _append(str, maybeNewline) { + const len = str.length; + const position = this._position; + const sourcePos = this._sourcePosition; + this._last = -1; + if (++this._appendCount > 4096) { + +this._str; + this._buf += this._str; + this._str = str; + this._appendCount = 0; + } else { + this._str += str; + } + const hasMap = this._map !== null; + if (!maybeNewline && !hasMap) { + position.column += len; + return; + } + const { + column, + identifierName, + identifierNamePos, + filename + } = sourcePos; + let line = sourcePos.line; + if ((identifierName != null || identifierNamePos != null) && this._canMarkIdName) { + sourcePos.identifierName = undefined; + sourcePos.identifierNamePos = undefined; + } + let i = str.indexOf("\n"); + let last = 0; + if (hasMap && i !== 0) { + this._map.mark(position, line, column, identifierName, identifierNamePos, filename); + } + while (i !== -1) { + position.line++; + position.column = 0; + last = i + 1; + if (last < len && line !== undefined) { + line++; + if (hasMap) { + this._map.mark(position, line, 0, undefined, undefined, filename); + } + } + i = str.indexOf("\n", last); + } + position.column += len - last; + } + removeLastSemicolon() { + if (this._queuedChar === 59) { + this._queuedChar = 0; + } + } + getLastChar(checkQueue) { + if (!checkQueue) { + return this._last; + } + const queuedChar = this._queuedChar; + return queuedChar !== 0 ? queuedChar : this._last; + } + getNewlineCount() { + return this._queuedChar === 0 && this._last === 10 ? 1 : 0; + } + hasContent() { + return this._last !== 0; + } + exactSource(loc, cb) { + if (!this._map) { + cb(); + return; + } + this.source("start", loc); + const identifierName = loc.identifierName; + const sourcePos = this._sourcePosition; + if (identifierName != null) { + this._canMarkIdName = false; + sourcePos.identifierName = identifierName; + } + cb(); + if (identifierName != null) { + this._canMarkIdName = true; + sourcePos.identifierName = undefined; + sourcePos.identifierNamePos = undefined; + } + this.source("end", loc); + } + source(prop, loc) { + if (!this._map) return; + this._normalizePosition(prop, loc, 0); + } + sourceWithOffset(prop, loc, columnOffset) { + if (!this._map) return; + this._normalizePosition(prop, loc, columnOffset); + } + _normalizePosition(prop, loc, columnOffset) { + this._flush(); + const pos = loc[prop]; + const target = this._sourcePosition; + if (pos) { + target.line = pos.line; + target.column = Math.max(pos.column + columnOffset, 0); + target.filename = loc.filename; + } + } + getCurrentColumn() { + return this._position.column + (this._queuedChar ? 1 : 0); + } + getCurrentLine() { + return this._position.line; + } +} +exports.default = Buffer; + +//# sourceMappingURL=buffer.js.map diff --git a/node_modules/@babel/generator/lib/buffer.js.map b/node_modules/@babel/generator/lib/buffer.js.map new file mode 100644 index 0000000..804ea0a --- /dev/null +++ b/node_modules/@babel/generator/lib/buffer.js.map @@ -0,0 +1 @@ +{"version":3,"names":["spaceIndents","i","push","repeat","Buffer","constructor","map","indentChar","_map","_buf","_str","_appendCount","_last","_canMarkIdName","_indentChar","_queuedChar","_position","line","column","_sourcePosition","identifierName","undefined","identifierNamePos","filename","get","_flush","code","trimRight","decodedMap","rawMappings","result","getDecoded","__mergedMap","resultMap","value","Object","defineProperty","writable","mappings","getRawMappings","append","str","maybeNewline","_append","appendChar","char","_appendChar","queue","queuedChar","useSourcePos","indent","String","fromCharCode","isSpace","position","sourcePos","mark","len","length","hasMap","indexOf","last","removeLastSemicolon","getLastChar","checkQueue","getNewlineCount","hasContent","exactSource","loc","cb","source","prop","_normalizePosition","sourceWithOffset","columnOffset","pos","target","Math","max","getCurrentColumn","getCurrentLine","exports","default"],"sources":["../src/buffer.ts"],"sourcesContent":["import type SourceMap from \"./source-map.ts\";\nimport type { SourceLocation } from \"@babel/types\";\n\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charcodes from \"charcodes\";\n\nexport type Loc = SourceLocation;\nexport type Pos = SourceLocation[\"start\"];\n\ntype SourcePosition = {\n line: number | undefined;\n column: number | undefined;\n identifierName: string | undefined;\n identifierNamePos: Pos | undefined;\n filename: string | undefined;\n};\n\nconst spaceIndents: string[] = [];\nfor (let i = 0; i < 32; i++) {\n spaceIndents.push(\" \".repeat(i * 2));\n}\n\nexport default class Buffer {\n constructor(map: SourceMap | null, indentChar: string) {\n this._map = map;\n this._indentChar = indentChar;\n }\n\n _map: SourceMap | null = null;\n _buf = \"\";\n _str = \"\";\n _appendCount = 0;\n _last = 0;\n _canMarkIdName = true;\n _indentChar = \"\";\n _queuedChar: typeof charcodes.space | typeof charcodes.semicolon | 0 = 0;\n\n _position = {\n line: 1,\n column: 0,\n };\n _sourcePosition: SourcePosition = {\n identifierName: undefined,\n identifierNamePos: undefined,\n line: undefined,\n column: undefined,\n filename: undefined,\n };\n\n /**\n * Get the final string output from the buffer, along with the sourcemap if one exists.\n */\n\n get() {\n const { _map, _last } = this;\n if (this._queuedChar !== charcodes.space) {\n this._flush();\n }\n\n // Whatever trim is used here should not execute a regex against the\n // source string since it may be arbitrarily large after all transformations\n const code =\n _last === charcodes.lineFeed\n ? (this._buf + this._str).trimRight()\n : this._buf + this._str;\n\n // Creating objects with getters is expensive.\n if (_map === null) {\n return {\n code: code,\n decodedMap: undefined,\n map: null,\n rawMappings: undefined,\n };\n }\n\n const result = {\n code: code,\n // Decoded sourcemap is free to generate.\n decodedMap: _map.getDecoded(),\n // Used as a marker for backwards compatibility. We moved input map merging\n // into the generator. We cannot merge the input map a second time, so the\n // presence of this field tells us we've already done the work.\n get __mergedMap() {\n return this.map;\n },\n // Encoding the sourcemap is moderately CPU expensive.\n get map() {\n const resultMap = _map.get();\n result.map = resultMap;\n return resultMap;\n },\n set map(value) {\n Object.defineProperty(result, \"map\", { value, writable: true });\n },\n // Retrieving the raw mappings is very memory intensive.\n get rawMappings() {\n const mappings = _map.getRawMappings();\n result.rawMappings = mappings;\n return mappings;\n },\n set rawMappings(value) {\n Object.defineProperty(result, \"rawMappings\", { value, writable: true });\n },\n };\n\n return result;\n }\n\n /**\n * Add a string to the buffer that cannot be reverted.\n */\n\n append(str: string, maybeNewline: boolean): void {\n this._flush();\n this._append(str, maybeNewline);\n }\n\n appendChar(char: number): void {\n this._flush();\n this._appendChar(char, 1, true);\n }\n\n /**\n * Add a string to the buffer than can be reverted.\n */\n queue(char: typeof charcodes.space | typeof charcodes.semicolon): void {\n this._flush();\n this._queuedChar = char;\n }\n\n _flush(): void {\n const queuedChar = this._queuedChar;\n if (queuedChar !== 0) {\n this._appendChar(queuedChar, 1, true);\n this._queuedChar = 0;\n }\n }\n\n _appendChar(char: number, repeat: number, useSourcePos: boolean): void {\n this._last = char;\n\n if (char === -1) {\n const indent =\n repeat >= 64\n ? this._indentChar.repeat(repeat)\n : spaceIndents[repeat / 2];\n this._str += indent;\n } else {\n this._str +=\n repeat > 1\n ? String.fromCharCode(char).repeat(repeat)\n : String.fromCharCode(char);\n }\n\n const isSpace = char === charcodes.space;\n const position = this._position;\n if (char !== charcodes.lineFeed) {\n if (this._map) {\n const sourcePos = this._sourcePosition;\n if (useSourcePos && sourcePos) {\n this._map.mark(\n position,\n sourcePos.line,\n sourcePos.column,\n isSpace ? undefined : sourcePos.identifierName,\n isSpace ? undefined : sourcePos.identifierNamePos,\n sourcePos.filename,\n );\n\n if (!isSpace && this._canMarkIdName) {\n sourcePos.identifierName = undefined;\n sourcePos.identifierNamePos = undefined;\n }\n } else {\n this._map.mark(position);\n }\n }\n\n position.column += repeat;\n } else {\n position.line++;\n position.column = 0;\n }\n }\n\n _append(str: string, maybeNewline: boolean): void {\n const len = str.length;\n const position = this._position;\n const sourcePos = this._sourcePosition;\n\n this._last = -1; /* LAST_CHAR_KINDS.NORMAL */\n\n if (++this._appendCount > 4096) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n +this._str; // Unexplainable huge performance boost. Ref: https://github.com/davidmarkclements/flatstr License: MIT\n this._buf += this._str;\n this._str = str;\n this._appendCount = 0;\n } else {\n this._str += str;\n }\n\n const hasMap = this._map !== null;\n\n if (!maybeNewline && !hasMap) {\n position.column += len;\n return;\n }\n\n const { column, identifierName, identifierNamePos, filename } = sourcePos;\n let line = sourcePos.line;\n\n if (\n (identifierName != null || identifierNamePos != null) &&\n this._canMarkIdName\n ) {\n sourcePos.identifierName = undefined;\n sourcePos.identifierNamePos = undefined;\n }\n\n // Search for newline chars. We search only for `\\n`, since both `\\r` and\n // `\\r\\n` are normalized to `\\n` during parse. We exclude `\\u2028` and\n // `\\u2029` for performance reasons, they're so uncommon that it's probably\n // ok. It's also unclear how other sourcemap utilities handle them...\n let i = str.indexOf(\"\\n\");\n let last = 0;\n\n // If the string starts with a newline char, then adding a mark is redundant.\n // This catches both \"no newlines\" and \"newline after several chars\".\n if (hasMap && i !== 0) {\n this._map!.mark(\n position,\n line,\n column,\n identifierName,\n identifierNamePos,\n filename,\n );\n }\n\n // Now, find each remaining newline char in the string.\n while (i !== -1) {\n position.line++;\n position.column = 0;\n last = i + 1;\n\n // We mark the start of each line, which happens directly after this newline char\n // unless this is the last char.\n // When manually adding multi-line content (such as a comment), `line` will be `undefined`.\n if (last < len && line !== undefined) {\n line++;\n if (hasMap) {\n this._map!.mark(position, line, 0, undefined, undefined, filename);\n }\n }\n i = str.indexOf(\"\\n\", last);\n }\n position.column += len - last;\n }\n\n removeLastSemicolon(): void {\n if (this._queuedChar === charcodes.semicolon) {\n this._queuedChar = 0;\n }\n }\n\n getLastChar(checkQueue?: boolean): number {\n if (!checkQueue) {\n return this._last;\n }\n const queuedChar = this._queuedChar;\n return queuedChar !== 0 ? queuedChar : this._last;\n }\n\n /**\n * This will only detect at most 1 newline after a call to `flush()`,\n * but this has not been found so far, and an accurate count can be achieved if needed later.\n */\n getNewlineCount(): number {\n return this._queuedChar === 0 && this._last === charcodes.lineFeed ? 1 : 0;\n }\n\n hasContent(): boolean {\n return this._last !== 0 /*|| this._queuedChar !== 0*/;\n }\n\n /**\n * Certain sourcemap usecases expect mappings to be more accurate than\n * Babel's generic sourcemap handling allows. For now, we special-case\n * identifiers to allow for the primary cases to work.\n * The goal of this line is to ensure that the map output from Babel will\n * have an exact range on identifiers in the output code. Without this\n * line, Babel would potentially include some number of trailing tokens\n * that are printed after the identifier, but before another location has\n * been assigned.\n * This allows tooling like Rollup and Webpack to more accurately perform\n * their own transformations. Most importantly, this allows the import/export\n * transformations performed by those tools to loose less information when\n * applying their own transformations on top of the code and map results\n * generated by Babel itself.\n *\n * The primary example of this is the snippet:\n *\n * import mod from \"mod\";\n * mod();\n *\n * With this line, there will be one mapping range over \"mod\" and another\n * over \"();\", where previously it would have been a single mapping.\n */\n exactSource(loc: Loc, cb: () => void) {\n if (!this._map) {\n cb();\n return;\n }\n\n this.source(\"start\", loc);\n const identifierName = loc.identifierName;\n const sourcePos = this._sourcePosition;\n if (identifierName != null) {\n this._canMarkIdName = false;\n sourcePos.identifierName = identifierName;\n }\n cb();\n\n if (identifierName != null) {\n this._canMarkIdName = true;\n sourcePos.identifierName = undefined;\n sourcePos.identifierNamePos = undefined;\n }\n this.source(\"end\", loc);\n }\n\n /**\n * Sets a given position as the current source location so generated code after this call\n * will be given this position in the sourcemap.\n */\n\n source(prop: \"start\" | \"end\", loc: Loc): void {\n if (!this._map) return;\n\n // Since this is called extremely often, we reuse the same _sourcePosition\n // object for the whole lifetime of the buffer.\n this._normalizePosition(prop, loc, 0);\n }\n\n sourceWithOffset(\n prop: \"start\" | \"end\",\n loc: Loc,\n columnOffset: number,\n ): void {\n if (!this._map) return;\n\n this._normalizePosition(prop, loc, columnOffset);\n }\n\n _normalizePosition(prop: \"start\" | \"end\", loc: Loc, columnOffset: number) {\n this._flush();\n\n const pos = loc[prop];\n const target = this._sourcePosition;\n\n if (pos) {\n target.line = pos.line;\n // TODO: Fix https://github.com/babel/babel/issues/15712 in downstream\n target.column = Math.max(pos.column + columnOffset, 0);\n target.filename = loc.filename;\n }\n }\n\n getCurrentColumn(): number {\n return this._position.column + (this._queuedChar ? 1 : 0);\n }\n\n getCurrentLine(): number {\n return this._position.line;\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/base.js b/node_modules/@babel/generator/lib/generators/base.js new file mode 100644 index 0000000..4768b9b --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/base.js @@ -0,0 +1,86 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.BlockStatement = BlockStatement; +exports.Directive = Directive; +exports.DirectiveLiteral = DirectiveLiteral; +exports.File = File; +exports.InterpreterDirective = InterpreterDirective; +exports.Placeholder = Placeholder; +exports.Program = Program; +function File(node) { + if (node.program) { + this.print(node.program.interpreter); + } + this.print(node.program); +} +function Program(node) { + var _node$directives; + this.printInnerComments(false); + const directivesLen = (_node$directives = node.directives) == null ? void 0 : _node$directives.length; + if (directivesLen) { + var _node$directives$trai; + const newline = node.body.length ? 2 : 1; + this.printSequence(node.directives, undefined, undefined, newline); + if (!((_node$directives$trai = node.directives[directivesLen - 1].trailingComments) != null && _node$directives$trai.length)) { + this.newline(newline); + } + } + this.printSequence(node.body); +} +function BlockStatement(node) { + var _node$directives2; + this.tokenChar(123); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + const directivesLen = (_node$directives2 = node.directives) == null ? void 0 : _node$directives2.length; + if (directivesLen) { + var _node$directives$trai2; + const newline = node.body.length ? 2 : 1; + this.printSequence(node.directives, true, true, newline); + if (!((_node$directives$trai2 = node.directives[directivesLen - 1].trailingComments) != null && _node$directives$trai2.length)) { + this.newline(newline); + } + } + this.printSequence(node.body, true, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.rightBrace(node); +} +function Directive(node) { + this.print(node.value); + this.semicolon(); +} +const unescapedSingleQuoteRE = /(?:^|[^\\])(?:\\\\)*'/; +const unescapedDoubleQuoteRE = /(?:^|[^\\])(?:\\\\)*"/; +function DirectiveLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.token(raw); + return; + } + const { + value + } = node; + if (!unescapedDoubleQuoteRE.test(value)) { + this.token(`"${value}"`); + } else if (!unescapedSingleQuoteRE.test(value)) { + this.token(`'${value}'`); + } else { + throw new Error("Malformed AST: it is not possible to print a directive containing" + " both unescaped single and double quotes."); + } +} +function InterpreterDirective(node) { + this.token(`#!${node.value}`); + this._newline(); +} +function Placeholder(node) { + this.token("%%"); + this.print(node.name); + this.token("%%"); + if (node.expectedNode === "Statement") { + this.semicolon(); + } +} + +//# sourceMappingURL=base.js.map diff --git a/node_modules/@babel/generator/lib/generators/base.js.map b/node_modules/@babel/generator/lib/generators/base.js.map new file mode 100644 index 0000000..1bf7773 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/base.js.map @@ -0,0 +1 @@ +{"version":3,"names":["File","node","program","print","interpreter","Program","_node$directives","printInnerComments","directivesLen","directives","length","_node$directives$trai","newline","body","printSequence","undefined","trailingComments","BlockStatement","_node$directives2","token","oldNoLineTerminatorAfterNode","enterDelimited","_node$directives$trai2","_noLineTerminatorAfterNode","rightBrace","Directive","value","semicolon","unescapedSingleQuoteRE","unescapedDoubleQuoteRE","DirectiveLiteral","raw","getPossibleRaw","format","minified","test","Error","InterpreterDirective","_newline","Placeholder","name","expectedNode"],"sources":["../../src/generators/base.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function File(this: Printer, node: t.File) {\n if (node.program) {\n // Print this here to ensure that Program node 'leadingComments' still\n // get printed after the hashbang.\n this.print(node.program.interpreter);\n }\n\n this.print(node.program);\n}\n\nexport function Program(this: Printer, node: t.Program) {\n // An empty Program doesn't have any inner tokens, so\n // we must explicitly print its inner comments.\n this.printInnerComments(false);\n\n const directivesLen = node.directives?.length;\n if (directivesLen) {\n const newline = node.body.length ? 2 : 1;\n this.printSequence(node.directives, undefined, undefined, newline);\n if (!node.directives[directivesLen - 1].trailingComments?.length) {\n this.newline(newline);\n }\n }\n\n this.printSequence(node.body);\n}\n\nexport function BlockStatement(this: Printer, node: t.BlockStatement) {\n this.token(\"{\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n\n const directivesLen = node.directives?.length;\n if (directivesLen) {\n const newline = node.body.length ? 2 : 1;\n this.printSequence(node.directives, true, true, newline);\n if (!node.directives[directivesLen - 1].trailingComments?.length) {\n this.newline(newline);\n }\n }\n\n this.printSequence(node.body, true, true);\n\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.rightBrace(node);\n}\n\nexport function Directive(this: Printer, node: t.Directive) {\n this.print(node.value);\n this.semicolon();\n}\n\n// These regexes match an even number of \\ followed by a quote\nconst unescapedSingleQuoteRE = /(?:^|[^\\\\])(?:\\\\\\\\)*'/;\nconst unescapedDoubleQuoteRE = /(?:^|[^\\\\])(?:\\\\\\\\)*\"/;\n\nexport function DirectiveLiteral(this: Printer, node: t.DirectiveLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const { value } = node;\n\n // NOTE: In directives we can't change escapings,\n // because they change the behavior.\n // e.g. \"us\\x65 strict\" (\\x65 is e) is not a \"use strict\" directive.\n\n if (!unescapedDoubleQuoteRE.test(value)) {\n this.token(`\"${value}\"`);\n } else if (!unescapedSingleQuoteRE.test(value)) {\n this.token(`'${value}'`);\n } else {\n throw new Error(\n \"Malformed AST: it is not possible to print a directive containing\" +\n \" both unescaped single and double quotes.\",\n );\n }\n}\n\nexport function InterpreterDirective(\n this: Printer,\n node: t.InterpreterDirective,\n) {\n this.token(`#!${node.value}`);\n this._newline();\n}\n\nexport function Placeholder(this: Printer, node: t.Placeholder) {\n this.token(\"%%\");\n this.print(node.name);\n this.token(\"%%\");\n\n if (node.expectedNode === \"Statement\") {\n this.semicolon();\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/classes.js b/node_modules/@babel/generator/lib/generators/classes.js new file mode 100644 index 0000000..75272f8 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/classes.js @@ -0,0 +1,215 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ClassAccessorProperty = ClassAccessorProperty; +exports.ClassBody = ClassBody; +exports.ClassExpression = exports.ClassDeclaration = ClassDeclaration; +exports.ClassMethod = ClassMethod; +exports.ClassPrivateMethod = ClassPrivateMethod; +exports.ClassPrivateProperty = ClassPrivateProperty; +exports.ClassProperty = ClassProperty; +exports.StaticBlock = StaticBlock; +exports._classMethodHead = _classMethodHead; +var _t = require("@babel/types"); +var _expressions = require("./expressions.js"); +var _typescript = require("./typescript.js"); +var _flow = require("./flow.js"); +var _methods = require("./methods.js"); +const { + isExportDefaultDeclaration, + isExportNamedDeclaration +} = _t; +function ClassDeclaration(node, parent) { + const inExport = isExportDefaultDeclaration(parent) || isExportNamedDeclaration(parent); + if (!inExport || !_expressions._shouldPrintDecoratorsBeforeExport.call(this, parent)) { + this.printJoin(node.decorators); + } + if (node.declare) { + this.word("declare"); + this.space(); + } + if (node.abstract) { + this.word("abstract"); + this.space(); + } + this.word("class"); + if (node.id) { + this.space(); + this.print(node.id); + } + this.print(node.typeParameters); + if (node.superClass) { + this.space(); + this.word("extends"); + this.space(); + this.print(node.superClass); + this.print(node.superTypeParameters); + } + if (node.implements) { + this.space(); + this.word("implements"); + this.space(); + this.printList(node.implements); + } + this.space(); + this.print(node.body); +} +function ClassBody(node) { + this.tokenChar(123); + if (node.body.length === 0) { + this.tokenChar(125); + } else { + const separator = classBodyEmptySemicolonsPrinter(this, node); + separator == null || separator(-1); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.printJoin(node.body, true, true, separator, true, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + if (!this.endsWith(10)) this.newline(); + this.rightBrace(node); + } +} +function classBodyEmptySemicolonsPrinter(printer, node) { + if (!printer.tokenMap || node.start == null || node.end == null) { + return null; + } + const indexes = printer.tokenMap.getIndexes(node); + if (!indexes) return null; + let k = 1; + let occurrenceCount = 0; + let nextLocIndex = 0; + const advanceNextLocIndex = () => { + while (nextLocIndex < node.body.length && node.body[nextLocIndex].start == null) { + nextLocIndex++; + } + }; + advanceNextLocIndex(); + return i => { + if (nextLocIndex <= i) { + nextLocIndex = i + 1; + advanceNextLocIndex(); + } + const end = nextLocIndex === node.body.length ? node.end : node.body[nextLocIndex].start; + let tok; + while (k < indexes.length && printer.tokenMap.matchesOriginal(tok = printer._tokens[indexes[k]], ";") && tok.start < end) { + printer.tokenChar(59, occurrenceCount++); + k++; + } + }; +} +function ClassProperty(node) { + this.printJoin(node.decorators); + if (!node.static && !this.format.preserveFormat) { + var _node$key$loc; + const endLine = (_node$key$loc = node.key.loc) == null || (_node$key$loc = _node$key$loc.end) == null ? void 0 : _node$key$loc.line; + if (endLine) this.catchUp(endLine); + } + _typescript._tsPrintClassMemberModifiers.call(this, node); + if (node.computed) { + this.tokenChar(91); + this.print(node.key); + this.tokenChar(93); + } else { + _flow._variance.call(this, node); + this.print(node.key); + } + if (node.optional) { + this.tokenChar(63); + } + if (node.definite) { + this.tokenChar(33); + } + this.print(node.typeAnnotation); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value); + } + this.semicolon(); +} +function ClassAccessorProperty(node) { + var _node$key$loc2; + this.printJoin(node.decorators); + const endLine = (_node$key$loc2 = node.key.loc) == null || (_node$key$loc2 = _node$key$loc2.end) == null ? void 0 : _node$key$loc2.line; + if (endLine) this.catchUp(endLine); + _typescript._tsPrintClassMemberModifiers.call(this, node); + this.word("accessor", true); + this.space(); + if (node.computed) { + this.tokenChar(91); + this.print(node.key); + this.tokenChar(93); + } else { + _flow._variance.call(this, node); + this.print(node.key); + } + if (node.optional) { + this.tokenChar(63); + } + if (node.definite) { + this.tokenChar(33); + } + this.print(node.typeAnnotation); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value); + } + this.semicolon(); +} +function ClassPrivateProperty(node) { + this.printJoin(node.decorators); + _typescript._tsPrintClassMemberModifiers.call(this, node); + this.print(node.key); + if (node.optional) { + this.tokenChar(63); + } + if (node.definite) { + this.tokenChar(33); + } + this.print(node.typeAnnotation); + if (node.value) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.value); + } + this.semicolon(); +} +function ClassMethod(node) { + _classMethodHead.call(this, node); + this.space(); + this.print(node.body); +} +function ClassPrivateMethod(node) { + _classMethodHead.call(this, node); + this.space(); + this.print(node.body); +} +function _classMethodHead(node) { + this.printJoin(node.decorators); + if (!this.format.preserveFormat) { + var _node$key$loc3; + const endLine = (_node$key$loc3 = node.key.loc) == null || (_node$key$loc3 = _node$key$loc3.end) == null ? void 0 : _node$key$loc3.line; + if (endLine) this.catchUp(endLine); + } + _typescript._tsPrintClassMemberModifiers.call(this, node); + _methods._methodHead.call(this, node); +} +function StaticBlock(node) { + this.word("static"); + this.space(); + this.tokenChar(123); + if (node.body.length === 0) { + this.tokenChar(125); + } else { + this.newline(); + this.printSequence(node.body, true); + this.rightBrace(node); + } +} + +//# sourceMappingURL=classes.js.map diff --git a/node_modules/@babel/generator/lib/generators/classes.js.map b/node_modules/@babel/generator/lib/generators/classes.js.map new file mode 100644 index 0000000..d764d73 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/classes.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_expressions","_typescript","_flow","_methods","isExportDefaultDeclaration","isExportNamedDeclaration","ClassDeclaration","node","parent","inExport","_shouldPrintDecoratorsBeforeExport","call","printJoin","decorators","declare","word","space","abstract","id","print","typeParameters","superClass","superTypeParameters","implements","printList","body","ClassBody","token","length","separator","classBodyEmptySemicolonsPrinter","oldNoLineTerminatorAfterNode","enterDelimited","_noLineTerminatorAfterNode","endsWith","newline","rightBrace","printer","tokenMap","start","end","indexes","getIndexes","k","occurrenceCount","nextLocIndex","advanceNextLocIndex","i","tok","matchesOriginal","_tokens","tokenChar","ClassProperty","static","format","preserveFormat","_node$key$loc","endLine","key","loc","line","catchUp","_tsPrintClassMemberModifiers","computed","_variance","optional","definite","typeAnnotation","value","semicolon","ClassAccessorProperty","_node$key$loc2","ClassPrivateProperty","ClassMethod","_classMethodHead","ClassPrivateMethod","_node$key$loc3","_methodHead","StaticBlock","printSequence"],"sources":["../../src/generators/classes.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport {\n isExportDefaultDeclaration,\n isExportNamedDeclaration,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport { _shouldPrintDecoratorsBeforeExport } from \"./expressions.ts\";\nimport { _tsPrintClassMemberModifiers } from \"./typescript.ts\";\nimport { _variance } from \"./flow.ts\";\nimport { _methodHead } from \"./methods.ts\";\n\nexport function ClassDeclaration(\n this: Printer,\n node: t.ClassDeclaration,\n parent: t.Node,\n) {\n const inExport =\n isExportDefaultDeclaration(parent) || isExportNamedDeclaration(parent);\n\n if (\n !inExport ||\n !_shouldPrintDecoratorsBeforeExport.call(\n this,\n parent as t.ExportDeclaration & { declaration: t.ClassDeclaration },\n )\n ) {\n this.printJoin(node.decorators);\n }\n\n if (node.declare) {\n // TS\n this.word(\"declare\");\n this.space();\n }\n\n if (node.abstract) {\n // TS\n this.word(\"abstract\");\n this.space();\n }\n\n this.word(\"class\");\n\n if (node.id) {\n this.space();\n this.print(node.id);\n }\n\n this.print(node.typeParameters);\n\n if (node.superClass) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.superClass);\n this.print(\n process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Renamed\n node.superTypeArguments\n : // @ts-ignore(Babel 7 vs Babel 8) Renamed\n node.superTypeParameters,\n );\n }\n\n if (node.implements) {\n this.space();\n this.word(\"implements\");\n this.space();\n this.printList(node.implements);\n }\n\n this.space();\n this.print(node.body);\n}\n\nexport { ClassDeclaration as ClassExpression };\n\nexport function ClassBody(this: Printer, node: t.ClassBody) {\n this.token(\"{\");\n if (node.body.length === 0) {\n this.token(\"}\");\n } else {\n const separator = classBodyEmptySemicolonsPrinter(this, node);\n separator?.(-1); // print leading semicolons in preserveFormat mode\n\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.printJoin(node.body, true, true, separator, true, true);\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n\n if (!this.endsWith(charCodes.lineFeed)) this.newline();\n\n this.rightBrace(node);\n }\n}\n\nfunction classBodyEmptySemicolonsPrinter(printer: Printer, node: t.ClassBody) {\n if (!printer.tokenMap || node.start == null || node.end == null) {\n return null;\n }\n\n // \"empty statements\" in class bodies are not represented in the AST.\n // Print them by checking if there are any ; tokens between the current AST\n // member and the next one.\n\n const indexes = printer.tokenMap.getIndexes(node);\n if (!indexes) return null;\n\n let k = 1; // start from 1 to skip '{'\n\n let occurrenceCount = 0;\n\n let nextLocIndex = 0;\n const advanceNextLocIndex = () => {\n while (\n nextLocIndex < node.body.length &&\n node.body[nextLocIndex].start == null\n ) {\n nextLocIndex++;\n }\n };\n advanceNextLocIndex();\n\n return (i: number) => {\n if (nextLocIndex <= i) {\n nextLocIndex = i + 1;\n advanceNextLocIndex();\n }\n\n const end =\n nextLocIndex === node.body.length\n ? node.end\n : node.body[nextLocIndex].start;\n\n let tok;\n while (\n k < indexes.length &&\n printer.tokenMap!.matchesOriginal(\n (tok = printer._tokens![indexes[k]]),\n \";\",\n ) &&\n tok.start < end!\n ) {\n printer.tokenChar(charCodes.semicolon, occurrenceCount++);\n k++;\n }\n };\n}\n\nexport function ClassProperty(this: Printer, node: t.ClassProperty) {\n this.printJoin(node.decorators);\n\n if (!node.static && !this.format.preserveFormat) {\n // catch up to property key, avoid line break\n // between member TS modifiers and the property key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n }\n\n _tsPrintClassMemberModifiers.call(this, node);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key);\n this.token(\"]\");\n } else {\n _variance.call(this, node);\n this.print(node.key);\n }\n\n // TS\n if (node.optional) {\n this.token(\"?\");\n }\n if (node.definite) {\n this.token(\"!\");\n }\n\n this.print(node.typeAnnotation);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value);\n }\n this.semicolon();\n}\n\nexport function ClassAccessorProperty(\n this: Printer,\n node: t.ClassAccessorProperty,\n) {\n this.printJoin(node.decorators);\n\n // catch up to property key, avoid line break\n // between member modifiers and the property key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n\n // TS does not support class accessor property yet\n _tsPrintClassMemberModifiers.call(this, node);\n\n this.word(\"accessor\", true);\n this.space();\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key);\n this.token(\"]\");\n } else {\n // Todo: Flow does not support class accessor property yet.\n _variance.call(this, node);\n this.print(node.key);\n }\n\n // TS\n if (node.optional) {\n this.token(\"?\");\n }\n if (node.definite) {\n this.token(\"!\");\n }\n\n this.print(node.typeAnnotation);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value);\n }\n this.semicolon();\n}\n\nexport function ClassPrivateProperty(\n this: Printer,\n node: t.ClassPrivateProperty,\n) {\n this.printJoin(node.decorators);\n _tsPrintClassMemberModifiers.call(this, node);\n this.print(node.key);\n // TS\n if (node.optional) {\n this.token(\"?\");\n }\n if (node.definite) {\n this.token(\"!\");\n }\n this.print(node.typeAnnotation);\n if (node.value) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.value);\n }\n this.semicolon();\n}\n\nexport function ClassMethod(this: Printer, node: t.ClassMethod) {\n _classMethodHead.call(this, node);\n this.space();\n this.print(node.body);\n}\n\nexport function ClassPrivateMethod(this: Printer, node: t.ClassPrivateMethod) {\n _classMethodHead.call(this, node);\n this.space();\n this.print(node.body);\n}\n\nexport function _classMethodHead(\n this: Printer,\n node: t.ClassMethod | t.ClassPrivateMethod | t.TSDeclareMethod,\n) {\n this.printJoin(node.decorators);\n\n if (!this.format.preserveFormat) {\n // catch up to method key, avoid line break\n // between member modifiers/method heads and the method key.\n const endLine = node.key.loc?.end?.line;\n if (endLine) this.catchUp(endLine);\n }\n\n _tsPrintClassMemberModifiers.call(this, node);\n _methodHead.call(this, node);\n}\n\nexport function StaticBlock(this: Printer, node: t.StaticBlock) {\n this.word(\"static\");\n this.space();\n this.token(\"{\");\n if (node.body.length === 0) {\n this.token(\"}\");\n } else {\n this.newline();\n this.printSequence(node.body, true);\n this.rightBrace(node);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA,IAAAA,EAAA,GAAAC,OAAA;AASA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAA2C;EAXzCK,0BAA0B;EAC1BC;AAAwB,IAAAP,EAAA;AAYnB,SAASQ,gBAAgBA,CAE9BC,IAAwB,EACxBC,MAAc,EACd;EACA,MAAMC,QAAQ,GACZL,0BAA0B,CAACI,MAAM,CAAC,IAAIH,wBAAwB,CAACG,MAAM,CAAC;EAExE,IACE,CAACC,QAAQ,IACT,CAACC,+CAAkC,CAACC,IAAI,CACtC,IAAI,EACJH,MACF,CAAC,EACD;IACA,IAAI,CAACI,SAAS,CAACL,IAAI,CAACM,UAAU,CAAC;EACjC;EAEA,IAAIN,IAAI,CAACO,OAAO,EAAE;IAEhB,IAAI,CAACC,IAAI,CAAC,SAAS,CAAC;IACpB,IAAI,CAACC,KAAK,CAAC,CAAC;EACd;EAEA,IAAIT,IAAI,CAACU,QAAQ,EAAE;IAEjB,IAAI,CAACF,IAAI,CAAC,UAAU,CAAC;IACrB,IAAI,CAACC,KAAK,CAAC,CAAC;EACd;EAEA,IAAI,CAACD,IAAI,CAAC,OAAO,CAAC;EAElB,IAAIR,IAAI,CAACW,EAAE,EAAE;IACX,IAAI,CAACF,KAAK,CAAC,CAAC;IACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAACW,EAAE,CAAC;EACrB;EAEA,IAAI,CAACC,KAAK,CAACZ,IAAI,CAACa,cAAc,CAAC;EAE/B,IAAIb,IAAI,CAACc,UAAU,EAAE;IACnB,IAAI,CAACL,KAAK,CAAC,CAAC;IACZ,IAAI,CAACD,IAAI,CAAC,SAAS,CAAC;IACpB,IAAI,CAACC,KAAK,CAAC,CAAC;IACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAACc,UAAU,CAAC;IAC3B,IAAI,CAACF,KAAK,CAKJZ,IAAI,CAACe,mBACX,CAAC;EACH;EAEA,IAAIf,IAAI,CAACgB,UAAU,EAAE;IACnB,IAAI,CAACP,KAAK,CAAC,CAAC;IACZ,IAAI,CAACD,IAAI,CAAC,YAAY,CAAC;IACvB,IAAI,CAACC,KAAK,CAAC,CAAC;IACZ,IAAI,CAACQ,SAAS,CAACjB,IAAI,CAACgB,UAAU,CAAC;EACjC;EAEA,IAAI,CAACP,KAAK,CAAC,CAAC;EACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAACkB,IAAI,CAAC;AACvB;AAIO,SAASC,SAASA,CAAgBnB,IAAiB,EAAE;EAC1D,IAAI,CAACoB,SAAK,IAAI,CAAC;EACf,IAAIpB,IAAI,CAACkB,IAAI,CAACG,MAAM,KAAK,CAAC,EAAE;IAC1B,IAAI,CAACD,SAAK,IAAI,CAAC;EACjB,CAAC,MAAM;IACL,MAAME,SAAS,GAAGC,+BAA+B,CAAC,IAAI,EAAEvB,IAAI,CAAC;IAC7DsB,SAAS,YAATA,SAAS,CAAG,CAAC,CAAC,CAAC;IAEf,MAAME,4BAA4B,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC;IAC1D,IAAI,CAACpB,SAAS,CAACL,IAAI,CAACkB,IAAI,EAAE,IAAI,EAAE,IAAI,EAAEI,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;IAC5D,IAAI,CAACI,0BAA0B,GAAGF,4BAA4B;IAE9D,IAAI,CAAC,IAAI,CAACG,QAAQ,GAAmB,CAAC,EAAE,IAAI,CAACC,OAAO,CAAC,CAAC;IAEtD,IAAI,CAACC,UAAU,CAAC7B,IAAI,CAAC;EACvB;AACF;AAEA,SAASuB,+BAA+BA,CAACO,OAAgB,EAAE9B,IAAiB,EAAE;EAC5E,IAAI,CAAC8B,OAAO,CAACC,QAAQ,IAAI/B,IAAI,CAACgC,KAAK,IAAI,IAAI,IAAIhC,IAAI,CAACiC,GAAG,IAAI,IAAI,EAAE;IAC/D,OAAO,IAAI;EACb;EAMA,MAAMC,OAAO,GAAGJ,OAAO,CAACC,QAAQ,CAACI,UAAU,CAACnC,IAAI,CAAC;EACjD,IAAI,CAACkC,OAAO,EAAE,OAAO,IAAI;EAEzB,IAAIE,CAAC,GAAG,CAAC;EAET,IAAIC,eAAe,GAAG,CAAC;EAEvB,IAAIC,YAAY,GAAG,CAAC;EACpB,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;IAChC,OACED,YAAY,GAAGtC,IAAI,CAACkB,IAAI,CAACG,MAAM,IAC/BrB,IAAI,CAACkB,IAAI,CAACoB,YAAY,CAAC,CAACN,KAAK,IAAI,IAAI,EACrC;MACAM,YAAY,EAAE;IAChB;EACF,CAAC;EACDC,mBAAmB,CAAC,CAAC;EAErB,OAAQC,CAAS,IAAK;IACpB,IAAIF,YAAY,IAAIE,CAAC,EAAE;MACrBF,YAAY,GAAGE,CAAC,GAAG,CAAC;MACpBD,mBAAmB,CAAC,CAAC;IACvB;IAEA,MAAMN,GAAG,GACPK,YAAY,KAAKtC,IAAI,CAACkB,IAAI,CAACG,MAAM,GAC7BrB,IAAI,CAACiC,GAAG,GACRjC,IAAI,CAACkB,IAAI,CAACoB,YAAY,CAAC,CAACN,KAAK;IAEnC,IAAIS,GAAG;IACP,OACEL,CAAC,GAAGF,OAAO,CAACb,MAAM,IAClBS,OAAO,CAACC,QAAQ,CAAEW,eAAe,CAC9BD,GAAG,GAAGX,OAAO,CAACa,OAAO,CAAET,OAAO,CAACE,CAAC,CAAC,CAAC,EACnC,GACF,CAAC,IACDK,GAAG,CAACT,KAAK,GAAGC,GAAI,EAChB;MACAH,OAAO,CAACc,SAAS,KAAsBP,eAAe,EAAE,CAAC;MACzDD,CAAC,EAAE;IACL;EACF,CAAC;AACH;AAEO,SAASS,aAAaA,CAAgB7C,IAAqB,EAAE;EAClE,IAAI,CAACK,SAAS,CAACL,IAAI,CAACM,UAAU,CAAC;EAE/B,IAAI,CAACN,IAAI,CAAC8C,MAAM,IAAI,CAAC,IAAI,CAACC,MAAM,CAACC,cAAc,EAAE;IAAA,IAAAC,aAAA;IAG/C,MAAMC,OAAO,IAAAD,aAAA,GAAGjD,IAAI,CAACmD,GAAG,CAACC,GAAG,cAAAH,aAAA,GAAZA,aAAA,CAAchB,GAAG,qBAAjBgB,aAAA,CAAmBI,IAAI;IACvC,IAAIH,OAAO,EAAE,IAAI,CAACI,OAAO,CAACJ,OAAO,CAAC;EACpC;EAEAK,wCAA4B,CAACnD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAE7C,IAAIA,IAAI,CAACwD,QAAQ,EAAE;IACjB,IAAI,CAACpC,SAAK,GAAI,CAAC;IACf,IAAI,CAACR,KAAK,CAACZ,IAAI,CAACmD,GAAG,CAAC;IACpB,IAAI,CAAC/B,SAAK,GAAI,CAAC;EACjB,CAAC,MAAM;IACLqC,eAAS,CAACrD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;IAC1B,IAAI,CAACY,KAAK,CAACZ,IAAI,CAACmD,GAAG,CAAC;EACtB;EAGA,IAAInD,IAAI,CAAC0D,QAAQ,EAAE;IACjB,IAAI,CAACtC,SAAK,GAAI,CAAC;EACjB;EACA,IAAIpB,IAAI,CAAC2D,QAAQ,EAAE;IACjB,IAAI,CAACvC,SAAK,GAAI,CAAC;EACjB;EAEA,IAAI,CAACR,KAAK,CAACZ,IAAI,CAAC4D,cAAc,CAAC;EAC/B,IAAI5D,IAAI,CAAC6D,KAAK,EAAE;IACd,IAAI,CAACpD,KAAK,CAAC,CAAC;IACZ,IAAI,CAACW,SAAK,GAAI,CAAC;IACf,IAAI,CAACX,KAAK,CAAC,CAAC;IACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAAC6D,KAAK,CAAC;EACxB;EACA,IAAI,CAACC,SAAS,CAAC,CAAC;AAClB;AAEO,SAASC,qBAAqBA,CAEnC/D,IAA6B,EAC7B;EAAA,IAAAgE,cAAA;EACA,IAAI,CAAC3D,SAAS,CAACL,IAAI,CAACM,UAAU,CAAC;EAI/B,MAAM4C,OAAO,IAAAc,cAAA,GAAGhE,IAAI,CAACmD,GAAG,CAACC,GAAG,cAAAY,cAAA,GAAZA,cAAA,CAAc/B,GAAG,qBAAjB+B,cAAA,CAAmBX,IAAI;EACvC,IAAIH,OAAO,EAAE,IAAI,CAACI,OAAO,CAACJ,OAAO,CAAC;EAGlCK,wCAA4B,CAACnD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAE7C,IAAI,CAACQ,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;EAC3B,IAAI,CAACC,KAAK,CAAC,CAAC;EAEZ,IAAIT,IAAI,CAACwD,QAAQ,EAAE;IACjB,IAAI,CAACpC,SAAK,GAAI,CAAC;IACf,IAAI,CAACR,KAAK,CAACZ,IAAI,CAACmD,GAAG,CAAC;IACpB,IAAI,CAAC/B,SAAK,GAAI,CAAC;EACjB,CAAC,MAAM;IAELqC,eAAS,CAACrD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;IAC1B,IAAI,CAACY,KAAK,CAACZ,IAAI,CAACmD,GAAG,CAAC;EACtB;EAGA,IAAInD,IAAI,CAAC0D,QAAQ,EAAE;IACjB,IAAI,CAACtC,SAAK,GAAI,CAAC;EACjB;EACA,IAAIpB,IAAI,CAAC2D,QAAQ,EAAE;IACjB,IAAI,CAACvC,SAAK,GAAI,CAAC;EACjB;EAEA,IAAI,CAACR,KAAK,CAACZ,IAAI,CAAC4D,cAAc,CAAC;EAC/B,IAAI5D,IAAI,CAAC6D,KAAK,EAAE;IACd,IAAI,CAACpD,KAAK,CAAC,CAAC;IACZ,IAAI,CAACW,SAAK,GAAI,CAAC;IACf,IAAI,CAACX,KAAK,CAAC,CAAC;IACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAAC6D,KAAK,CAAC;EACxB;EACA,IAAI,CAACC,SAAS,CAAC,CAAC;AAClB;AAEO,SAASG,oBAAoBA,CAElCjE,IAA4B,EAC5B;EACA,IAAI,CAACK,SAAS,CAACL,IAAI,CAACM,UAAU,CAAC;EAC/BiD,wCAA4B,CAACnD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAC7C,IAAI,CAACY,KAAK,CAACZ,IAAI,CAACmD,GAAG,CAAC;EAEpB,IAAInD,IAAI,CAAC0D,QAAQ,EAAE;IACjB,IAAI,CAACtC,SAAK,GAAI,CAAC;EACjB;EACA,IAAIpB,IAAI,CAAC2D,QAAQ,EAAE;IACjB,IAAI,CAACvC,SAAK,GAAI,CAAC;EACjB;EACA,IAAI,CAACR,KAAK,CAACZ,IAAI,CAAC4D,cAAc,CAAC;EAC/B,IAAI5D,IAAI,CAAC6D,KAAK,EAAE;IACd,IAAI,CAACpD,KAAK,CAAC,CAAC;IACZ,IAAI,CAACW,SAAK,GAAI,CAAC;IACf,IAAI,CAACX,KAAK,CAAC,CAAC;IACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAAC6D,KAAK,CAAC;EACxB;EACA,IAAI,CAACC,SAAS,CAAC,CAAC;AAClB;AAEO,SAASI,WAAWA,CAAgBlE,IAAmB,EAAE;EAC9DmE,gBAAgB,CAAC/D,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EACjC,IAAI,CAACS,KAAK,CAAC,CAAC;EACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAACkB,IAAI,CAAC;AACvB;AAEO,SAASkD,kBAAkBA,CAAgBpE,IAA0B,EAAE;EAC5EmE,gBAAgB,CAAC/D,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EACjC,IAAI,CAACS,KAAK,CAAC,CAAC;EACZ,IAAI,CAACG,KAAK,CAACZ,IAAI,CAACkB,IAAI,CAAC;AACvB;AAEO,SAASiD,gBAAgBA,CAE9BnE,IAA8D,EAC9D;EACA,IAAI,CAACK,SAAS,CAACL,IAAI,CAACM,UAAU,CAAC;EAE/B,IAAI,CAAC,IAAI,CAACyC,MAAM,CAACC,cAAc,EAAE;IAAA,IAAAqB,cAAA;IAG/B,MAAMnB,OAAO,IAAAmB,cAAA,GAAGrE,IAAI,CAACmD,GAAG,CAACC,GAAG,cAAAiB,cAAA,GAAZA,cAAA,CAAcpC,GAAG,qBAAjBoC,cAAA,CAAmBhB,IAAI;IACvC,IAAIH,OAAO,EAAE,IAAI,CAACI,OAAO,CAACJ,OAAO,CAAC;EACpC;EAEAK,wCAA4B,CAACnD,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAC7CsE,oBAAW,CAAClE,IAAI,CAAC,IAAI,EAAEJ,IAAI,CAAC;AAC9B;AAEO,SAASuE,WAAWA,CAAgBvE,IAAmB,EAAE;EAC9D,IAAI,CAACQ,IAAI,CAAC,QAAQ,CAAC;EACnB,IAAI,CAACC,KAAK,CAAC,CAAC;EACZ,IAAI,CAACW,SAAK,IAAI,CAAC;EACf,IAAIpB,IAAI,CAACkB,IAAI,CAACG,MAAM,KAAK,CAAC,EAAE;IAC1B,IAAI,CAACD,SAAK,IAAI,CAAC;EACjB,CAAC,MAAM;IACL,IAAI,CAACQ,OAAO,CAAC,CAAC;IACd,IAAI,CAAC4C,aAAa,CAACxE,IAAI,CAACkB,IAAI,EAAE,IAAI,CAAC;IACnC,IAAI,CAACW,UAAU,CAAC7B,IAAI,CAAC;EACvB;AACF","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/deprecated.js b/node_modules/@babel/generator/lib/generators/deprecated.js new file mode 100644 index 0000000..bc1f409 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/deprecated.js @@ -0,0 +1,73 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.DecimalLiteral = DecimalLiteral; +exports.Noop = Noop; +exports.RecordExpression = RecordExpression; +exports.TSExpressionWithTypeArguments = TSExpressionWithTypeArguments; +exports.TupleExpression = TupleExpression; +function Noop() {} +function TSExpressionWithTypeArguments(node) { + this.print(node.expression); + this.print(node.typeParameters); +} +function DecimalLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.word(raw); + return; + } + this.word(node.value + "m"); +} +function RecordExpression(node) { + const props = node.properties; + let startToken; + let endToken; + if (this.format.recordAndTupleSyntaxType === "bar") { + startToken = "{|"; + endToken = "|}"; + } else if (this.format.recordAndTupleSyntaxType !== "hash" && this.format.recordAndTupleSyntaxType != null) { + throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`); + } else { + startToken = "#{"; + endToken = "}"; + } + this.token(startToken); + if (props.length) { + this.space(); + this.printList(props, this.shouldPrintTrailingComma(endToken), true, true); + this.space(); + } + this.token(endToken); +} +function TupleExpression(node) { + const elems = node.elements; + const len = elems.length; + let startToken; + let endToken; + if (this.format.recordAndTupleSyntaxType === "bar") { + startToken = "[|"; + endToken = "|]"; + } else if (this.format.recordAndTupleSyntaxType === "hash") { + startToken = "#["; + endToken = "]"; + } else { + throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`); + } + this.token(startToken); + for (let i = 0; i < elems.length; i++) { + const elem = elems[i]; + if (elem) { + if (i > 0) this.space(); + this.print(elem); + if (i < len - 1 || this.shouldPrintTrailingComma(endToken)) { + this.token(",", false, i); + } + } + } + this.token(endToken); +} + +//# sourceMappingURL=deprecated.js.map diff --git a/node_modules/@babel/generator/lib/generators/deprecated.js.map b/node_modules/@babel/generator/lib/generators/deprecated.js.map new file mode 100644 index 0000000..ceb91e9 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/deprecated.js.map @@ -0,0 +1 @@ +{"version":3,"names":["Noop","TSExpressionWithTypeArguments","node","print","expression","typeParameters","DecimalLiteral","raw","getPossibleRaw","format","minified","undefined","word","value","RecordExpression","props","properties","startToken","endToken","recordAndTupleSyntaxType","Error","JSON","stringify","token","length","space","printList","shouldPrintTrailingComma","TupleExpression","elems","elements","len","i","elem"],"sources":["../../src/generators/deprecated.ts"],"sourcesContent":["import type Printer from \"../printer\";\nimport type * as t from \"@babel/types\";\n\nexport type DeprecatedBabel7ASTTypes =\n | \"Noop\"\n | \"TSExpressionWithTypeArguments\"\n | \"DecimalLiteral\"\n | \"RecordExpression\"\n | \"TupleExpression\";\n\nexport function Noop(this: Printer) {}\n\nexport function TSExpressionWithTypeArguments(\n this: Printer,\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node: t.TSExpressionWithTypeArguments,\n) {\n this.print(node.expression);\n this.print(node.typeParameters);\n}\n\nexport function DecimalLiteral(this: Printer, node: any) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"m\");\n}\n\n// @ts-ignore(Babel 7 vs Babel 8) - t.RecordExpression only exists in Babel 7\nexport function RecordExpression(this: Printer, node: t.RecordExpression) {\n const props = node.properties;\n\n let startToken;\n let endToken;\n\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"{|\";\n endToken = \"|}\";\n } else if (\n this.format.recordAndTupleSyntaxType !== \"hash\" &&\n this.format.recordAndTupleSyntaxType != null\n ) {\n throw new Error(\n `The \"recordAndTupleSyntaxType\" generator option must be \"bar\" or \"hash\" (${JSON.stringify(\n this.format.recordAndTupleSyntaxType,\n )} received).`,\n );\n } else {\n startToken = \"#{\";\n endToken = \"}\";\n }\n\n this.token(startToken);\n\n if (props.length) {\n this.space();\n this.printList(props, this.shouldPrintTrailingComma(endToken), true, true);\n this.space();\n }\n this.token(endToken);\n}\n\n// @ts-ignore(Babel 7 vs Babel 8) - t.TupleExpression only exists in Babel 7\nexport function TupleExpression(this: Printer, node: t.TupleExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n let startToken;\n let endToken;\n if (process.env.BABEL_8_BREAKING) {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"[|\";\n endToken = \"|]\";\n } else if (this.format.recordAndTupleSyntaxType === \"hash\") {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n throw new Error(\n `${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`,\n );\n }\n }\n\n this.token(startToken);\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem);\n if (i < len - 1 || this.shouldPrintTrailingComma(endToken)) {\n this.token(\",\", false, i);\n }\n }\n }\n\n this.token(endToken);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/expressions.js b/node_modules/@babel/generator/lib/generators/expressions.js new file mode 100644 index 0000000..7448795 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/expressions.js @@ -0,0 +1,309 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.LogicalExpression = exports.AssignmentExpression = AssignmentExpression; +exports.AssignmentPattern = AssignmentPattern; +exports.AwaitExpression = AwaitExpression; +exports.BinaryExpression = BinaryExpression; +exports.BindExpression = BindExpression; +exports.CallExpression = CallExpression; +exports.ConditionalExpression = ConditionalExpression; +exports.Decorator = Decorator; +exports.DoExpression = DoExpression; +exports.EmptyStatement = EmptyStatement; +exports.ExpressionStatement = ExpressionStatement; +exports.Import = Import; +exports.MemberExpression = MemberExpression; +exports.MetaProperty = MetaProperty; +exports.ModuleExpression = ModuleExpression; +exports.NewExpression = NewExpression; +exports.OptionalCallExpression = OptionalCallExpression; +exports.OptionalMemberExpression = OptionalMemberExpression; +exports.ParenthesizedExpression = ParenthesizedExpression; +exports.PrivateName = PrivateName; +exports.SequenceExpression = SequenceExpression; +exports.Super = Super; +exports.ThisExpression = ThisExpression; +exports.UnaryExpression = UnaryExpression; +exports.UpdateExpression = UpdateExpression; +exports.V8IntrinsicIdentifier = V8IntrinsicIdentifier; +exports.YieldExpression = YieldExpression; +exports._shouldPrintDecoratorsBeforeExport = _shouldPrintDecoratorsBeforeExport; +var _t = require("@babel/types"); +var _index = require("../node/index.js"); +const { + isCallExpression, + isLiteral, + isMemberExpression, + isNewExpression, + isPattern +} = _t; +function UnaryExpression(node) { + const { + operator + } = node; + const firstChar = operator.charCodeAt(0); + if (firstChar >= 97 && firstChar <= 122) { + this.word(operator); + this.space(); + } else { + this.tokenChar(firstChar); + } + this.print(node.argument); +} +function DoExpression(node) { + if (node.async) { + this.word("async", true); + this.space(); + } + this.word("do"); + this.space(); + this.print(node.body); +} +function ParenthesizedExpression(node) { + this.tokenChar(40); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.print(node.expression, undefined, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.rightParens(node); +} +function UpdateExpression(node) { + if (node.prefix) { + this.token(node.operator, false, 0, true); + this.print(node.argument); + } else { + this.print(node.argument, true); + this.token(node.operator, false, 0, true); + } +} +function ConditionalExpression(node) { + this.print(node.test); + this.space(); + this.tokenChar(63); + this.space(); + this.print(node.consequent); + this.space(); + this.tokenChar(58); + this.space(); + this.print(node.alternate); +} +function NewExpression(node, parent) { + this.word("new"); + this.space(); + this.print(node.callee); + if (this.format.minified && node.arguments.length === 0 && !node.optional && !isCallExpression(parent, { + callee: node + }) && !isMemberExpression(parent) && !isNewExpression(parent)) { + return; + } + this.print(node.typeArguments); + this.print(node.typeParameters); + if (node.optional) { + this.token("?."); + } + if (node.arguments.length === 0 && this.tokenMap && !this.tokenMap.endMatches(node, ")")) { + return; + } + this.tokenChar(40); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.printList(node.arguments, this.shouldPrintTrailingComma(")"), undefined, undefined, undefined, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.rightParens(node); +} +function SequenceExpression(node) { + this.printList(node.expressions); +} +function ThisExpression() { + this.word("this"); +} +function Super() { + this.word("super"); +} +function _shouldPrintDecoratorsBeforeExport(node) { + if (typeof this.format.decoratorsBeforeExport === "boolean") { + return this.format.decoratorsBeforeExport; + } + return typeof node.start === "number" && node.start === node.declaration.start; +} +function Decorator(node) { + this.tokenChar(64); + const { + expression + } = node; + this.print(expression); + this.newline(); +} +function OptionalMemberExpression(node) { + let { + computed + } = node; + const { + optional, + property + } = node; + this.print(node.object); + if (!computed && isMemberExpression(property)) { + throw new TypeError("Got a MemberExpression for MemberExpression property"); + } + if (isLiteral(property) && typeof property.value === "number") { + computed = true; + } + if (optional) { + this.token("?."); + } + if (computed) { + this.tokenChar(91); + this.print(property); + this.tokenChar(93); + } else { + if (!optional) { + this.tokenChar(46); + } + this.print(property); + } +} +function OptionalCallExpression(node) { + this.print(node.callee); + this.print(node.typeParameters); + if (node.optional) { + this.token("?."); + } + this.print(node.typeArguments); + this.tokenChar(40); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.printList(node.arguments, undefined, undefined, undefined, undefined, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.rightParens(node); +} +function CallExpression(node) { + this.print(node.callee); + this.print(node.typeArguments); + this.print(node.typeParameters); + this.tokenChar(40); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.printList(node.arguments, this.shouldPrintTrailingComma(")"), undefined, undefined, undefined, true); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.rightParens(node); +} +function Import() { + this.word("import"); +} +function AwaitExpression(node) { + this.word("await"); + this.space(); + this.print(node.argument); +} +function YieldExpression(node) { + if (node.delegate) { + this.word("yield", true); + this.tokenChar(42); + if (node.argument) { + this.space(); + this.print(node.argument); + } + } else if (node.argument) { + this.word("yield", true); + this.space(); + this.print(node.argument); + } else { + this.word("yield"); + } +} +function EmptyStatement() { + this.semicolon(true); +} +function ExpressionStatement(node) { + this.tokenContext |= _index.TokenContext.expressionStatement; + this.print(node.expression); + this.semicolon(); +} +function AssignmentPattern(node) { + this.print(node.left); + if (node.left.type === "Identifier" || isPattern(node.left)) { + if (node.left.optional) this.tokenChar(63); + this.print(node.left.typeAnnotation); + } + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.right); +} +function AssignmentExpression(node) { + this.print(node.left); + this.space(); + this.token(node.operator, false, 0, true); + this.space(); + this.print(node.right); +} +function BinaryExpression(node) { + this.print(node.left); + this.space(); + const { + operator + } = node; + if (operator.charCodeAt(0) === 105) { + this.word(operator); + } else { + this.token(operator, false, 0, true); + this.setLastChar(operator.charCodeAt(operator.length - 1)); + } + this.space(); + this.print(node.right); +} +function BindExpression(node) { + this.print(node.object); + this.token("::"); + this.print(node.callee); +} +function MemberExpression(node) { + this.print(node.object); + if (!node.computed && isMemberExpression(node.property)) { + throw new TypeError("Got a MemberExpression for MemberExpression property"); + } + let computed = node.computed; + if (isLiteral(node.property) && typeof node.property.value === "number") { + computed = true; + } + if (computed) { + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.tokenChar(91); + this.print(node.property, undefined, true); + this.tokenChar(93); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + } else { + this.tokenChar(46); + this.print(node.property); + } +} +function MetaProperty(node) { + this.print(node.meta); + this.tokenChar(46); + this.print(node.property); +} +function PrivateName(node) { + this.tokenChar(35); + this.print(node.id); +} +function V8IntrinsicIdentifier(node) { + this.tokenChar(37); + this.word(node.name); +} +function ModuleExpression(node) { + this.word("module", true); + this.space(); + this.tokenChar(123); + this.indent(); + const { + body + } = node; + if (body.body.length || body.directives.length) { + this.newline(); + } + this.print(body); + this.dedent(); + this.rightBrace(node); +} + +//# sourceMappingURL=expressions.js.map diff --git a/node_modules/@babel/generator/lib/generators/expressions.js.map b/node_modules/@babel/generator/lib/generators/expressions.js.map new file mode 100644 index 0000000..c9c6d85 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/expressions.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_index","isCallExpression","isLiteral","isMemberExpression","isNewExpression","isPattern","UnaryExpression","node","operator","firstChar","charCodeAt","word","space","tokenChar","print","argument","DoExpression","async","body","ParenthesizedExpression","token","oldNoLineTerminatorAfterNode","enterDelimited","expression","undefined","_noLineTerminatorAfterNode","rightParens","UpdateExpression","prefix","ConditionalExpression","test","consequent","alternate","NewExpression","parent","callee","format","minified","arguments","length","optional","typeArguments","typeParameters","tokenMap","endMatches","printList","shouldPrintTrailingComma","SequenceExpression","expressions","ThisExpression","Super","_shouldPrintDecoratorsBeforeExport","decoratorsBeforeExport","start","declaration","Decorator","newline","OptionalMemberExpression","computed","property","object","TypeError","value","OptionalCallExpression","CallExpression","Import","AwaitExpression","YieldExpression","delegate","EmptyStatement","semicolon","ExpressionStatement","tokenContext","TokenContext","expressionStatement","AssignmentPattern","left","type","typeAnnotation","right","AssignmentExpression","BinaryExpression","setLastChar","BindExpression","MemberExpression","MetaProperty","meta","PrivateName","id","V8IntrinsicIdentifier","name","ModuleExpression","indent","directives","dedent","rightBrace"],"sources":["../../src/generators/expressions.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport {\n isCallExpression,\n isLiteral,\n isMemberExpression,\n isNewExpression,\n isPattern,\n} from \"@babel/types\";\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport type * as t from \"@babel/types\";\nimport { TokenContext } from \"../node/index.ts\";\n\nexport function UnaryExpression(this: Printer, node: t.UnaryExpression) {\n const { operator } = node;\n const firstChar = operator.charCodeAt(0);\n if (firstChar >= charCodes.lowercaseA && firstChar <= charCodes.lowercaseZ) {\n this.word(operator);\n this.space();\n } else {\n this.tokenChar(firstChar);\n }\n\n this.print(node.argument);\n}\n\nexport function DoExpression(this: Printer, node: t.DoExpression) {\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n this.word(\"do\");\n this.space();\n this.print(node.body);\n}\n\nexport function ParenthesizedExpression(\n this: Printer,\n node: t.ParenthesizedExpression,\n) {\n this.token(\"(\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.print(node.expression, undefined, true);\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.rightParens(node);\n}\n\nexport function UpdateExpression(this: Printer, node: t.UpdateExpression) {\n if (node.prefix) {\n this.token(node.operator, false, 0, true);\n this.print(node.argument);\n } else {\n this.print(node.argument, true);\n this.token(node.operator, false, 0, true);\n }\n}\n\nexport function ConditionalExpression(\n this: Printer,\n node: t.ConditionalExpression,\n) {\n this.print(node.test);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.consequent);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.alternate);\n}\n\nexport function NewExpression(\n this: Printer,\n node: t.NewExpression,\n parent: t.Node,\n) {\n this.word(\"new\");\n this.space();\n this.print(node.callee);\n if (\n this.format.minified &&\n node.arguments.length === 0 &&\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n !node.optional &&\n !isCallExpression(parent, { callee: node }) &&\n !isMemberExpression(parent) &&\n !isNewExpression(parent)\n ) {\n return;\n }\n\n this.print(node.typeArguments);\n if (!process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n this.print(node.typeParameters); // Legacy TS AST\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n if (node.optional) {\n this.token(\"?.\");\n }\n }\n\n if (\n node.arguments.length === 0 &&\n this.tokenMap &&\n !this.tokenMap.endMatches(node, \")\")\n ) {\n return;\n }\n\n this.token(\"(\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.printList(\n node.arguments,\n this.shouldPrintTrailingComma(\")\"),\n undefined,\n undefined,\n undefined,\n true,\n );\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.rightParens(node);\n}\n\nexport function SequenceExpression(this: Printer, node: t.SequenceExpression) {\n this.printList(node.expressions);\n}\n\nexport function ThisExpression(this: Printer) {\n this.word(\"this\");\n}\n\nexport function Super(this: Printer) {\n this.word(\"super\");\n}\n\nexport function _shouldPrintDecoratorsBeforeExport(\n this: Printer,\n node: t.ExportDeclaration & { declaration: t.ClassDeclaration },\n) {\n if (typeof this.format.decoratorsBeforeExport === \"boolean\") {\n return this.format.decoratorsBeforeExport;\n }\n return (\n typeof node.start === \"number\" && node.start === node.declaration.start\n );\n}\n\nexport function Decorator(this: Printer, node: t.Decorator) {\n this.token(\"@\");\n const { expression } = node;\n this.print(expression);\n this.newline();\n}\n\nexport function OptionalMemberExpression(\n this: Printer,\n node: t.OptionalMemberExpression,\n) {\n let { computed } = node;\n const { optional, property } = node;\n\n this.print(node.object);\n\n if (!computed && isMemberExpression(property)) {\n throw new TypeError(\"Got a MemberExpression for MemberExpression property\");\n }\n\n // @ts-expect-error todo(flow->ts) maybe instead of typeof check specific literal types?\n if (isLiteral(property) && typeof property.value === \"number\") {\n computed = true;\n }\n if (optional) {\n this.token(\"?.\");\n }\n\n if (computed) {\n this.token(\"[\");\n this.print(property);\n this.token(\"]\");\n } else {\n if (!optional) {\n this.token(\".\");\n }\n this.print(property);\n }\n}\n\nexport function OptionalCallExpression(\n this: Printer,\n node: t.OptionalCallExpression,\n) {\n this.print(node.callee);\n\n if (!process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n this.print(node.typeParameters); // legacy TS AST\n }\n\n if (node.optional) {\n this.token(\"?.\");\n }\n\n this.print(node.typeArguments);\n\n this.token(\"(\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.printList(\n node.arguments,\n undefined,\n undefined,\n undefined,\n undefined,\n true,\n );\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.rightParens(node);\n}\n\nexport function CallExpression(this: Printer, node: t.CallExpression) {\n this.print(node.callee);\n\n this.print(node.typeArguments);\n if (!process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n this.print(node.typeParameters); // legacy TS AST\n }\n this.token(\"(\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.printList(\n node.arguments,\n this.shouldPrintTrailingComma(\")\"),\n undefined,\n undefined,\n undefined,\n true,\n );\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.rightParens(node);\n}\n\nexport function Import(this: Printer) {\n this.word(\"import\");\n}\n\nexport function AwaitExpression(this: Printer, node: t.AwaitExpression) {\n this.word(\"await\");\n this.space();\n this.print(node.argument);\n}\n\nexport function YieldExpression(this: Printer, node: t.YieldExpression) {\n if (node.delegate) {\n this.word(\"yield\", true);\n this.token(\"*\");\n if (node.argument) {\n this.space();\n // line terminators are allowed after yield*\n this.print(node.argument);\n }\n } else if (node.argument) {\n this.word(\"yield\", true);\n this.space();\n this.print(node.argument);\n } else {\n this.word(\"yield\");\n }\n}\n\nexport function EmptyStatement(this: Printer) {\n this.semicolon(true /* force */);\n}\n\nexport function ExpressionStatement(\n this: Printer,\n node: t.ExpressionStatement,\n) {\n this.tokenContext |= TokenContext.expressionStatement;\n this.print(node.expression);\n this.semicolon();\n}\n\nexport function AssignmentPattern(this: Printer, node: t.AssignmentPattern) {\n this.print(node.left);\n if (node.left.type === \"Identifier\" || isPattern(node.left)) {\n if (node.left.optional) this.token(\"?\");\n this.print(node.left.typeAnnotation);\n }\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.right);\n}\n\nexport function AssignmentExpression(\n this: Printer,\n node: t.AssignmentExpression | t.LogicalExpression,\n) {\n this.print(node.left);\n\n this.space();\n this.token(node.operator, false, 0, true);\n this.space();\n\n this.print(node.right);\n}\n\nexport { AssignmentExpression as LogicalExpression };\n\nexport function BinaryExpression(this: Printer, node: t.BinaryExpression) {\n this.print(node.left);\n\n this.space();\n const { operator } = node;\n if (operator.charCodeAt(0) === charCodes.lowercaseI) {\n this.word(operator);\n } else {\n this.token(operator, false, 0, true);\n this.setLastChar(operator.charCodeAt(operator.length - 1));\n }\n this.space();\n\n this.print(node.right);\n}\n\nexport function BindExpression(this: Printer, node: t.BindExpression) {\n this.print(node.object);\n this.token(\"::\");\n this.print(node.callee);\n}\n\nexport function MemberExpression(this: Printer, node: t.MemberExpression) {\n this.print(node.object);\n\n if (!node.computed && isMemberExpression(node.property)) {\n throw new TypeError(\"Got a MemberExpression for MemberExpression property\");\n }\n\n let computed = node.computed;\n // @ts-expect-error todo(flow->ts) maybe use specific literal types\n if (isLiteral(node.property) && typeof node.property.value === \"number\") {\n computed = true;\n }\n\n if (computed) {\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.token(\"[\");\n this.print(node.property, undefined, true);\n this.token(\"]\");\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n } else {\n this.token(\".\");\n this.print(node.property);\n }\n}\n\nexport function MetaProperty(this: Printer, node: t.MetaProperty) {\n this.print(node.meta);\n this.token(\".\");\n this.print(node.property);\n}\n\nexport function PrivateName(this: Printer, node: t.PrivateName) {\n this.token(\"#\");\n this.print(node.id);\n}\n\nexport function V8IntrinsicIdentifier(\n this: Printer,\n node: t.V8IntrinsicIdentifier,\n) {\n this.token(\"%\");\n this.word(node.name);\n}\n\nexport function ModuleExpression(this: Printer, node: t.ModuleExpression) {\n this.word(\"module\", true);\n this.space();\n this.token(\"{\");\n this.indent();\n const { body } = node;\n if (body.body.length || body.directives.length) {\n this.newline();\n }\n this.print(body);\n this.dedent();\n this.rightBrace(node);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/flow.js b/node_modules/@babel/generator/lib/generators/flow.js new file mode 100644 index 0000000..62445cb --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/flow.js @@ -0,0 +1,658 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.AnyTypeAnnotation = AnyTypeAnnotation; +exports.ArrayTypeAnnotation = ArrayTypeAnnotation; +exports.BooleanLiteralTypeAnnotation = BooleanLiteralTypeAnnotation; +exports.BooleanTypeAnnotation = BooleanTypeAnnotation; +exports.DeclareClass = DeclareClass; +exports.DeclareExportAllDeclaration = DeclareExportAllDeclaration; +exports.DeclareExportDeclaration = DeclareExportDeclaration; +exports.DeclareFunction = DeclareFunction; +exports.DeclareInterface = DeclareInterface; +exports.DeclareModule = DeclareModule; +exports.DeclareModuleExports = DeclareModuleExports; +exports.DeclareOpaqueType = DeclareOpaqueType; +exports.DeclareTypeAlias = DeclareTypeAlias; +exports.DeclareVariable = DeclareVariable; +exports.DeclaredPredicate = DeclaredPredicate; +exports.EmptyTypeAnnotation = EmptyTypeAnnotation; +exports.EnumBooleanBody = EnumBooleanBody; +exports.EnumBooleanMember = EnumBooleanMember; +exports.EnumDeclaration = EnumDeclaration; +exports.EnumDefaultedMember = EnumDefaultedMember; +exports.EnumNumberBody = EnumNumberBody; +exports.EnumNumberMember = EnumNumberMember; +exports.EnumStringBody = EnumStringBody; +exports.EnumStringMember = EnumStringMember; +exports.EnumSymbolBody = EnumSymbolBody; +exports.ExistsTypeAnnotation = ExistsTypeAnnotation; +exports.FunctionTypeAnnotation = FunctionTypeAnnotation; +exports.FunctionTypeParam = FunctionTypeParam; +exports.IndexedAccessType = IndexedAccessType; +exports.InferredPredicate = InferredPredicate; +exports.InterfaceDeclaration = InterfaceDeclaration; +exports.GenericTypeAnnotation = exports.ClassImplements = exports.InterfaceExtends = InterfaceExtends; +exports.InterfaceTypeAnnotation = InterfaceTypeAnnotation; +exports.IntersectionTypeAnnotation = IntersectionTypeAnnotation; +exports.MixedTypeAnnotation = MixedTypeAnnotation; +exports.NullLiteralTypeAnnotation = NullLiteralTypeAnnotation; +exports.NullableTypeAnnotation = NullableTypeAnnotation; +Object.defineProperty(exports, "NumberLiteralTypeAnnotation", { + enumerable: true, + get: function () { + return _types2.NumericLiteral; + } +}); +exports.NumberTypeAnnotation = NumberTypeAnnotation; +exports.ObjectTypeAnnotation = ObjectTypeAnnotation; +exports.ObjectTypeCallProperty = ObjectTypeCallProperty; +exports.ObjectTypeIndexer = ObjectTypeIndexer; +exports.ObjectTypeInternalSlot = ObjectTypeInternalSlot; +exports.ObjectTypeProperty = ObjectTypeProperty; +exports.ObjectTypeSpreadProperty = ObjectTypeSpreadProperty; +exports.OpaqueType = OpaqueType; +exports.OptionalIndexedAccessType = OptionalIndexedAccessType; +exports.QualifiedTypeIdentifier = QualifiedTypeIdentifier; +Object.defineProperty(exports, "StringLiteralTypeAnnotation", { + enumerable: true, + get: function () { + return _types2.StringLiteral; + } +}); +exports.StringTypeAnnotation = StringTypeAnnotation; +exports.SymbolTypeAnnotation = SymbolTypeAnnotation; +exports.ThisTypeAnnotation = ThisTypeAnnotation; +exports.TupleTypeAnnotation = TupleTypeAnnotation; +exports.TypeAlias = TypeAlias; +exports.TypeAnnotation = TypeAnnotation; +exports.TypeCastExpression = TypeCastExpression; +exports.TypeParameter = TypeParameter; +exports.TypeParameterDeclaration = exports.TypeParameterInstantiation = TypeParameterInstantiation; +exports.TypeofTypeAnnotation = TypeofTypeAnnotation; +exports.UnionTypeAnnotation = UnionTypeAnnotation; +exports.Variance = Variance; +exports.VoidTypeAnnotation = VoidTypeAnnotation; +exports._interfaceish = _interfaceish; +exports._variance = _variance; +var _t = require("@babel/types"); +var _modules = require("./modules.js"); +var _index = require("../node/index.js"); +var _types2 = require("./types.js"); +const { + isDeclareExportDeclaration, + isStatement +} = _t; +function AnyTypeAnnotation() { + this.word("any"); +} +function ArrayTypeAnnotation(node) { + this.print(node.elementType, true); + this.tokenChar(91); + this.tokenChar(93); +} +function BooleanTypeAnnotation() { + this.word("boolean"); +} +function BooleanLiteralTypeAnnotation(node) { + this.word(node.value ? "true" : "false"); +} +function NullLiteralTypeAnnotation() { + this.word("null"); +} +function DeclareClass(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("class"); + this.space(); + _interfaceish.call(this, node); +} +function DeclareFunction(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("function"); + this.space(); + this.print(node.id); + this.print(node.id.typeAnnotation.typeAnnotation); + if (node.predicate) { + this.space(); + this.print(node.predicate); + } + this.semicolon(); +} +function InferredPredicate() { + this.tokenChar(37); + this.word("checks"); +} +function DeclaredPredicate(node) { + this.tokenChar(37); + this.word("checks"); + this.tokenChar(40); + this.print(node.value); + this.tokenChar(41); +} +function DeclareInterface(node) { + this.word("declare"); + this.space(); + InterfaceDeclaration.call(this, node); +} +function DeclareModule(node) { + this.word("declare"); + this.space(); + this.word("module"); + this.space(); + this.print(node.id); + this.space(); + this.print(node.body); +} +function DeclareModuleExports(node) { + this.word("declare"); + this.space(); + this.word("module"); + this.tokenChar(46); + this.word("exports"); + this.print(node.typeAnnotation); +} +function DeclareTypeAlias(node) { + this.word("declare"); + this.space(); + TypeAlias.call(this, node); +} +function DeclareOpaqueType(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + OpaqueType.call(this, node); +} +function DeclareVariable(node, parent) { + if (!isDeclareExportDeclaration(parent)) { + this.word("declare"); + this.space(); + } + this.word("var"); + this.space(); + this.print(node.id); + this.print(node.id.typeAnnotation); + this.semicolon(); +} +function DeclareExportDeclaration(node) { + this.word("declare"); + this.space(); + this.word("export"); + this.space(); + if (node.default) { + this.word("default"); + this.space(); + } + FlowExportDeclaration.call(this, node); +} +function DeclareExportAllDeclaration(node) { + this.word("declare"); + this.space(); + _modules.ExportAllDeclaration.call(this, node); +} +function EnumDeclaration(node) { + const { + id, + body + } = node; + this.word("enum"); + this.space(); + this.print(id); + this.print(body); +} +function enumExplicitType(context, name, hasExplicitType) { + if (hasExplicitType) { + context.space(); + context.word("of"); + context.space(); + context.word(name); + } + context.space(); +} +function enumBody(context, node) { + const { + members + } = node; + context.token("{"); + context.indent(); + context.newline(); + for (const member of members) { + context.print(member); + context.newline(); + } + if (node.hasUnknownMembers) { + context.token("..."); + context.newline(); + } + context.dedent(); + context.token("}"); +} +function EnumBooleanBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "boolean", explicitType); + enumBody(this, node); +} +function EnumNumberBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "number", explicitType); + enumBody(this, node); +} +function EnumStringBody(node) { + const { + explicitType + } = node; + enumExplicitType(this, "string", explicitType); + enumBody(this, node); +} +function EnumSymbolBody(node) { + enumExplicitType(this, "symbol", true); + enumBody(this, node); +} +function EnumDefaultedMember(node) { + const { + id + } = node; + this.print(id); + this.tokenChar(44); +} +function enumInitializedMember(context, node) { + context.print(node.id); + context.space(); + context.token("="); + context.space(); + context.print(node.init); + context.token(","); +} +function EnumBooleanMember(node) { + enumInitializedMember(this, node); +} +function EnumNumberMember(node) { + enumInitializedMember(this, node); +} +function EnumStringMember(node) { + enumInitializedMember(this, node); +} +function FlowExportDeclaration(node) { + if (node.declaration) { + const declar = node.declaration; + this.print(declar); + if (!isStatement(declar)) this.semicolon(); + } else { + this.tokenChar(123); + if (node.specifiers.length) { + this.space(); + this.printList(node.specifiers); + this.space(); + } + this.tokenChar(125); + if (node.source) { + this.space(); + this.word("from"); + this.space(); + this.print(node.source); + } + this.semicolon(); + } +} +function ExistsTypeAnnotation() { + this.tokenChar(42); +} +function FunctionTypeAnnotation(node, parent) { + this.print(node.typeParameters); + this.tokenChar(40); + if (node.this) { + this.word("this"); + this.tokenChar(58); + this.space(); + this.print(node.this.typeAnnotation); + if (node.params.length || node.rest) { + this.tokenChar(44); + this.space(); + } + } + this.printList(node.params); + if (node.rest) { + if (node.params.length) { + this.tokenChar(44); + this.space(); + } + this.token("..."); + this.print(node.rest); + } + this.tokenChar(41); + const type = parent == null ? void 0 : parent.type; + if (type != null && (type === "ObjectTypeCallProperty" || type === "ObjectTypeInternalSlot" || type === "DeclareFunction" || type === "ObjectTypeProperty" && parent.method)) { + this.tokenChar(58); + } else { + this.space(); + this.token("=>"); + } + this.space(); + this.print(node.returnType); +} +function FunctionTypeParam(node) { + this.print(node.name); + if (node.optional) this.tokenChar(63); + if (node.name) { + this.tokenChar(58); + this.space(); + } + this.print(node.typeAnnotation); +} +function InterfaceExtends(node) { + this.print(node.id); + this.print(node.typeParameters, true); +} +function _interfaceish(node) { + var _node$extends; + this.print(node.id); + this.print(node.typeParameters); + if ((_node$extends = node.extends) != null && _node$extends.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(node.extends); + } + if (node.type === "DeclareClass") { + var _node$mixins, _node$implements; + if ((_node$mixins = node.mixins) != null && _node$mixins.length) { + this.space(); + this.word("mixins"); + this.space(); + this.printList(node.mixins); + } + if ((_node$implements = node.implements) != null && _node$implements.length) { + this.space(); + this.word("implements"); + this.space(); + this.printList(node.implements); + } + } + this.space(); + this.print(node.body); +} +function _variance(node) { + var _node$variance; + const kind = (_node$variance = node.variance) == null ? void 0 : _node$variance.kind; + if (kind != null) { + if (kind === "plus") { + this.tokenChar(43); + } else if (kind === "minus") { + this.tokenChar(45); + } + } +} +function InterfaceDeclaration(node) { + this.word("interface"); + this.space(); + _interfaceish.call(this, node); +} +function andSeparator(occurrenceCount) { + this.space(); + this.token("&", false, occurrenceCount); + this.space(); +} +function InterfaceTypeAnnotation(node) { + var _node$extends2; + this.word("interface"); + if ((_node$extends2 = node.extends) != null && _node$extends2.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(node.extends); + } + this.space(); + this.print(node.body); +} +function IntersectionTypeAnnotation(node) { + this.printJoin(node.types, undefined, undefined, andSeparator); +} +function MixedTypeAnnotation() { + this.word("mixed"); +} +function EmptyTypeAnnotation() { + this.word("empty"); +} +function NullableTypeAnnotation(node) { + this.tokenChar(63); + this.print(node.typeAnnotation); +} +function NumberTypeAnnotation() { + this.word("number"); +} +function StringTypeAnnotation() { + this.word("string"); +} +function ThisTypeAnnotation() { + this.word("this"); +} +function TupleTypeAnnotation(node) { + this.tokenChar(91); + this.printList(node.types); + this.tokenChar(93); +} +function TypeofTypeAnnotation(node) { + this.word("typeof"); + this.space(); + this.print(node.argument); +} +function TypeAlias(node) { + this.word("type"); + this.space(); + this.print(node.id); + this.print(node.typeParameters); + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.right); + this.semicolon(); +} +function TypeAnnotation(node, parent) { + this.tokenChar(58); + this.space(); + if (parent.type === "ArrowFunctionExpression") { + this.tokenContext |= _index.TokenContext.arrowFlowReturnType; + } else if (node.optional) { + this.tokenChar(63); + } + this.print(node.typeAnnotation); +} +function TypeParameterInstantiation(node) { + this.tokenChar(60); + this.printList(node.params); + this.tokenChar(62); +} +function TypeParameter(node) { + _variance.call(this, node); + this.word(node.name); + if (node.bound) { + this.print(node.bound); + } + if (node.default) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.default); + } +} +function OpaqueType(node) { + this.word("opaque"); + this.space(); + this.word("type"); + this.space(); + this.print(node.id); + this.print(node.typeParameters); + if (node.supertype) { + this.tokenChar(58); + this.space(); + this.print(node.supertype); + } + if (node.impltype) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.impltype); + } + this.semicolon(); +} +function ObjectTypeAnnotation(node) { + if (node.exact) { + this.token("{|"); + } else { + this.tokenChar(123); + } + const props = [...node.properties, ...(node.callProperties || []), ...(node.indexers || []), ...(node.internalSlots || [])]; + if (props.length) { + this.newline(); + this.space(); + this.printJoin(props, true, true, () => { + if (props.length !== 1 || node.inexact) { + this.tokenChar(44); + this.space(); + } + }, true); + this.space(); + } + if (node.inexact) { + this.indent(); + this.token("..."); + if (props.length) { + this.newline(); + } + this.dedent(); + } + if (node.exact) { + this.token("|}"); + } else { + this.tokenChar(125); + } +} +function ObjectTypeInternalSlot(node) { + if (node.static) { + this.word("static"); + this.space(); + } + this.tokenChar(91); + this.tokenChar(91); + this.print(node.id); + this.tokenChar(93); + this.tokenChar(93); + if (node.optional) this.tokenChar(63); + if (!node.method) { + this.tokenChar(58); + this.space(); + } + this.print(node.value); +} +function ObjectTypeCallProperty(node) { + if (node.static) { + this.word("static"); + this.space(); + } + this.print(node.value); +} +function ObjectTypeIndexer(node) { + if (node.static) { + this.word("static"); + this.space(); + } + _variance.call(this, node); + this.tokenChar(91); + if (node.id) { + this.print(node.id); + this.tokenChar(58); + this.space(); + } + this.print(node.key); + this.tokenChar(93); + this.tokenChar(58); + this.space(); + this.print(node.value); +} +function ObjectTypeProperty(node) { + if (node.proto) { + this.word("proto"); + this.space(); + } + if (node.static) { + this.word("static"); + this.space(); + } + if (node.kind === "get" || node.kind === "set") { + this.word(node.kind); + this.space(); + } + _variance.call(this, node); + this.print(node.key); + if (node.optional) this.tokenChar(63); + if (!node.method) { + this.tokenChar(58); + this.space(); + } + this.print(node.value); +} +function ObjectTypeSpreadProperty(node) { + this.token("..."); + this.print(node.argument); +} +function QualifiedTypeIdentifier(node) { + this.print(node.qualification); + this.tokenChar(46); + this.print(node.id); +} +function SymbolTypeAnnotation() { + this.word("symbol"); +} +function orSeparator(occurrenceCount) { + this.space(); + this.token("|", false, occurrenceCount); + this.space(); +} +function UnionTypeAnnotation(node) { + this.printJoin(node.types, undefined, undefined, orSeparator); +} +function TypeCastExpression(node) { + this.tokenChar(40); + this.print(node.expression); + this.print(node.typeAnnotation); + this.tokenChar(41); +} +function Variance(node) { + if (node.kind === "plus") { + this.tokenChar(43); + } else { + this.tokenChar(45); + } +} +function VoidTypeAnnotation() { + this.word("void"); +} +function IndexedAccessType(node) { + this.print(node.objectType, true); + this.tokenChar(91); + this.print(node.indexType); + this.tokenChar(93); +} +function OptionalIndexedAccessType(node) { + this.print(node.objectType); + if (node.optional) { + this.token("?."); + } + this.tokenChar(91); + this.print(node.indexType); + this.tokenChar(93); +} + +//# sourceMappingURL=flow.js.map diff --git a/node_modules/@babel/generator/lib/generators/flow.js.map b/node_modules/@babel/generator/lib/generators/flow.js.map new file mode 100644 index 0000000..b44691a --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/flow.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_modules","_index","_types2","isDeclareExportDeclaration","isStatement","AnyTypeAnnotation","word","ArrayTypeAnnotation","node","print","elementType","token","BooleanTypeAnnotation","BooleanLiteralTypeAnnotation","value","NullLiteralTypeAnnotation","DeclareClass","parent","space","_interfaceish","call","DeclareFunction","id","typeAnnotation","predicate","semicolon","InferredPredicate","DeclaredPredicate","DeclareInterface","InterfaceDeclaration","DeclareModule","body","DeclareModuleExports","DeclareTypeAlias","TypeAlias","DeclareOpaqueType","OpaqueType","DeclareVariable","DeclareExportDeclaration","default","FlowExportDeclaration","DeclareExportAllDeclaration","ExportAllDeclaration","EnumDeclaration","enumExplicitType","context","name","hasExplicitType","enumBody","members","indent","newline","member","hasUnknownMembers","dedent","EnumBooleanBody","explicitType","EnumNumberBody","EnumStringBody","EnumSymbolBody","EnumDefaultedMember","enumInitializedMember","init","EnumBooleanMember","EnumNumberMember","EnumStringMember","declaration","declar","specifiers","length","printList","source","ExistsTypeAnnotation","FunctionTypeAnnotation","typeParameters","this","params","rest","type","method","returnType","FunctionTypeParam","optional","InterfaceExtends","_node$extends","extends","_node$mixins","_node$implements","mixins","implements","_variance","_node$variance","kind","variance","andSeparator","occurrenceCount","InterfaceTypeAnnotation","_node$extends2","IntersectionTypeAnnotation","printJoin","types","undefined","MixedTypeAnnotation","EmptyTypeAnnotation","NullableTypeAnnotation","NumberTypeAnnotation","StringTypeAnnotation","ThisTypeAnnotation","TupleTypeAnnotation","TypeofTypeAnnotation","argument","right","TypeAnnotation","tokenContext","TokenContext","arrowFlowReturnType","TypeParameterInstantiation","TypeParameter","bound","supertype","impltype","ObjectTypeAnnotation","exact","props","properties","callProperties","indexers","internalSlots","inexact","ObjectTypeInternalSlot","static","ObjectTypeCallProperty","ObjectTypeIndexer","key","ObjectTypeProperty","proto","ObjectTypeSpreadProperty","QualifiedTypeIdentifier","qualification","SymbolTypeAnnotation","orSeparator","UnionTypeAnnotation","TypeCastExpression","expression","Variance","VoidTypeAnnotation","IndexedAccessType","objectType","indexType","OptionalIndexedAccessType"],"sources":["../../src/generators/flow.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport { isDeclareExportDeclaration, isStatement } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport { ExportAllDeclaration } from \"./modules.ts\";\nimport { TokenContext } from \"../node/index.ts\";\n\nexport function AnyTypeAnnotation(this: Printer) {\n this.word(\"any\");\n}\n\nexport function ArrayTypeAnnotation(\n this: Printer,\n node: t.ArrayTypeAnnotation,\n) {\n this.print(node.elementType, true);\n this.token(\"[\");\n this.token(\"]\");\n}\n\nexport function BooleanTypeAnnotation(this: Printer) {\n this.word(\"boolean\");\n}\n\nexport function BooleanLiteralTypeAnnotation(\n this: Printer,\n node: t.BooleanLiteralTypeAnnotation,\n) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteralTypeAnnotation(this: Printer) {\n this.word(\"null\");\n}\n\nexport function DeclareClass(\n this: Printer,\n node: t.DeclareClass,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"class\");\n this.space();\n _interfaceish.call(this, node);\n}\n\nexport function DeclareFunction(\n this: Printer,\n node: t.DeclareFunction,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"function\");\n this.space();\n this.print(node.id);\n // @ts-ignore(Babel 7 vs Babel 8) TODO(Babel 8) Remove this comment, since we'll remove the Noop node\n this.print(node.id.typeAnnotation.typeAnnotation);\n\n if (node.predicate) {\n this.space();\n this.print(node.predicate);\n }\n\n this.semicolon();\n}\n\nexport function InferredPredicate(this: Printer) {\n this.token(\"%\");\n this.word(\"checks\");\n}\n\nexport function DeclaredPredicate(this: Printer, node: t.DeclaredPredicate) {\n this.token(\"%\");\n this.word(\"checks\");\n this.token(\"(\");\n this.print(node.value);\n this.token(\")\");\n}\n\nexport function DeclareInterface(this: Printer, node: t.DeclareInterface) {\n this.word(\"declare\");\n this.space();\n InterfaceDeclaration.call(this, node);\n}\n\nexport function DeclareModule(this: Printer, node: t.DeclareModule) {\n this.word(\"declare\");\n this.space();\n this.word(\"module\");\n this.space();\n this.print(node.id);\n this.space();\n this.print(node.body);\n}\n\nexport function DeclareModuleExports(\n this: Printer,\n node: t.DeclareModuleExports,\n) {\n this.word(\"declare\");\n this.space();\n this.word(\"module\");\n this.token(\".\");\n this.word(\"exports\");\n this.print(node.typeAnnotation);\n}\n\nexport function DeclareTypeAlias(this: Printer, node: t.DeclareTypeAlias) {\n this.word(\"declare\");\n this.space();\n TypeAlias.call(this, node);\n}\n\nexport function DeclareOpaqueType(\n this: Printer,\n node: t.DeclareOpaqueType,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n OpaqueType.call(this, node);\n}\n\nexport function DeclareVariable(\n this: Printer,\n node: t.DeclareVariable,\n parent: t.Node,\n) {\n if (!isDeclareExportDeclaration(parent)) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"var\");\n this.space();\n this.print(node.id);\n this.print(node.id.typeAnnotation);\n this.semicolon();\n}\n\nexport function DeclareExportDeclaration(\n this: Printer,\n node: t.DeclareExportDeclaration,\n) {\n this.word(\"declare\");\n this.space();\n this.word(\"export\");\n this.space();\n if (node.default) {\n this.word(\"default\");\n this.space();\n }\n\n FlowExportDeclaration.call(this, node);\n}\n\nexport function DeclareExportAllDeclaration(\n this: Printer,\n node: t.DeclareExportAllDeclaration,\n) {\n this.word(\"declare\");\n this.space();\n ExportAllDeclaration.call(this, node);\n}\n\nexport function EnumDeclaration(this: Printer, node: t.EnumDeclaration) {\n const { id, body } = node;\n this.word(\"enum\");\n this.space();\n this.print(id);\n this.print(body);\n}\n\nfunction enumExplicitType(\n context: Printer,\n name: string,\n hasExplicitType: boolean,\n) {\n if (hasExplicitType) {\n context.space();\n context.word(\"of\");\n context.space();\n context.word(name);\n }\n context.space();\n}\n\nfunction enumBody(context: Printer, node: t.EnumBody) {\n const { members } = node;\n context.token(\"{\");\n context.indent();\n context.newline();\n for (const member of members) {\n context.print(member);\n context.newline();\n }\n if (node.hasUnknownMembers) {\n context.token(\"...\");\n context.newline();\n }\n context.dedent();\n context.token(\"}\");\n}\n\nexport function EnumBooleanBody(this: Printer, node: t.EnumBooleanBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"boolean\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumNumberBody(this: Printer, node: t.EnumNumberBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"number\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumStringBody(this: Printer, node: t.EnumStringBody) {\n const { explicitType } = node;\n enumExplicitType(this, \"string\", explicitType);\n enumBody(this, node);\n}\n\nexport function EnumSymbolBody(this: Printer, node: t.EnumSymbolBody) {\n enumExplicitType(this, \"symbol\", true);\n enumBody(this, node);\n}\n\nexport function EnumDefaultedMember(\n this: Printer,\n node: t.EnumDefaultedMember,\n) {\n const { id } = node;\n this.print(id);\n this.token(\",\");\n}\n\nfunction enumInitializedMember(\n context: Printer,\n node: t.EnumBooleanMember | t.EnumNumberMember | t.EnumStringMember,\n) {\n context.print(node.id);\n context.space();\n context.token(\"=\");\n context.space();\n context.print(node.init);\n context.token(\",\");\n}\n\nexport function EnumBooleanMember(this: Printer, node: t.EnumBooleanMember) {\n enumInitializedMember(this, node);\n}\n\nexport function EnumNumberMember(this: Printer, node: t.EnumNumberMember) {\n enumInitializedMember(this, node);\n}\n\nexport function EnumStringMember(this: Printer, node: t.EnumStringMember) {\n enumInitializedMember(this, node);\n}\n\nfunction FlowExportDeclaration(\n this: Printer,\n node: t.DeclareExportDeclaration,\n) {\n if (node.declaration) {\n const declar = node.declaration;\n this.print(declar);\n if (!isStatement(declar)) this.semicolon();\n } else {\n this.token(\"{\");\n if (node.specifiers!.length) {\n this.space();\n this.printList(node.specifiers);\n this.space();\n }\n this.token(\"}\");\n\n if (node.source) {\n this.space();\n this.word(\"from\");\n this.space();\n this.print(node.source);\n }\n\n this.semicolon();\n }\n}\n\nexport function ExistsTypeAnnotation(this: Printer) {\n this.token(\"*\");\n}\n\nexport function FunctionTypeAnnotation(\n this: Printer,\n node: t.FunctionTypeAnnotation,\n parent?: t.Node,\n) {\n this.print(node.typeParameters);\n this.token(\"(\");\n\n if (node.this) {\n this.word(\"this\");\n this.token(\":\");\n this.space();\n this.print(node.this.typeAnnotation);\n if (node.params.length || node.rest) {\n this.token(\",\");\n this.space();\n }\n }\n\n this.printList(node.params);\n\n if (node.rest) {\n if (node.params.length) {\n this.token(\",\");\n this.space();\n }\n this.token(\"...\");\n this.print(node.rest);\n }\n\n this.token(\")\");\n\n // this node type is overloaded, not sure why but it makes it EXTREMELY annoying\n\n const type = parent?.type;\n if (\n type != null &&\n (type === \"ObjectTypeCallProperty\" ||\n type === \"ObjectTypeInternalSlot\" ||\n type === \"DeclareFunction\" ||\n (type === \"ObjectTypeProperty\" && parent.method))\n ) {\n this.token(\":\");\n } else {\n this.space();\n this.token(\"=>\");\n }\n\n this.space();\n this.print(node.returnType);\n}\n\nexport function FunctionTypeParam(this: Printer, node: t.FunctionTypeParam) {\n this.print(node.name);\n if (node.optional) this.token(\"?\");\n if (node.name) {\n this.token(\":\");\n this.space();\n }\n this.print(node.typeAnnotation);\n}\n\nexport function InterfaceExtends(this: Printer, node: t.InterfaceExtends) {\n this.print(node.id);\n this.print(node.typeParameters, true);\n}\n\nexport {\n InterfaceExtends as ClassImplements,\n InterfaceExtends as GenericTypeAnnotation,\n};\n\nexport function _interfaceish(\n this: Printer,\n node: t.InterfaceDeclaration | t.DeclareInterface | t.DeclareClass,\n) {\n this.print(node.id);\n this.print(node.typeParameters);\n if (node.extends?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(node.extends);\n }\n if (node.type === \"DeclareClass\") {\n if (node.mixins?.length) {\n this.space();\n this.word(\"mixins\");\n this.space();\n this.printList(node.mixins);\n }\n if (node.implements?.length) {\n this.space();\n this.word(\"implements\");\n this.space();\n this.printList(node.implements);\n }\n }\n this.space();\n this.print(node.body);\n}\n\nexport function _variance(\n this: Printer,\n node:\n | t.TypeParameter\n | t.ObjectTypeIndexer\n | t.ObjectTypeProperty\n | t.ClassProperty\n | t.ClassPrivateProperty\n | t.ClassAccessorProperty,\n) {\n const kind = node.variance?.kind;\n if (kind != null) {\n if (kind === \"plus\") {\n this.token(\"+\");\n } else if (kind === \"minus\") {\n this.token(\"-\");\n }\n }\n}\n\nexport function InterfaceDeclaration(\n this: Printer,\n node: t.InterfaceDeclaration | t.DeclareInterface,\n) {\n this.word(\"interface\");\n this.space();\n _interfaceish.call(this, node);\n}\n\nfunction andSeparator(this: Printer, occurrenceCount: number) {\n this.space();\n this.token(\"&\", false, occurrenceCount);\n this.space();\n}\n\nexport function InterfaceTypeAnnotation(\n this: Printer,\n node: t.InterfaceTypeAnnotation,\n) {\n this.word(\"interface\");\n if (node.extends?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(node.extends);\n }\n this.space();\n this.print(node.body);\n}\n\nexport function IntersectionTypeAnnotation(\n this: Printer,\n node: t.IntersectionTypeAnnotation,\n) {\n this.printJoin(node.types, undefined, undefined, andSeparator);\n}\n\nexport function MixedTypeAnnotation(this: Printer) {\n this.word(\"mixed\");\n}\n\nexport function EmptyTypeAnnotation(this: Printer) {\n this.word(\"empty\");\n}\n\nexport function NullableTypeAnnotation(\n this: Printer,\n node: t.NullableTypeAnnotation,\n) {\n this.token(\"?\");\n this.print(node.typeAnnotation);\n}\n\nexport {\n NumericLiteral as NumberLiteralTypeAnnotation,\n StringLiteral as StringLiteralTypeAnnotation,\n} from \"./types.ts\";\n\nexport function NumberTypeAnnotation(this: Printer) {\n this.word(\"number\");\n}\n\nexport function StringTypeAnnotation(this: Printer) {\n this.word(\"string\");\n}\n\nexport function ThisTypeAnnotation(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TupleTypeAnnotation(\n this: Printer,\n node: t.TupleTypeAnnotation,\n) {\n this.token(\"[\");\n this.printList(node.types);\n this.token(\"]\");\n}\n\nexport function TypeofTypeAnnotation(\n this: Printer,\n node: t.TypeofTypeAnnotation,\n) {\n this.word(\"typeof\");\n this.space();\n this.print(node.argument);\n}\n\nexport function TypeAlias(\n this: Printer,\n node: t.TypeAlias | t.DeclareTypeAlias,\n) {\n this.word(\"type\");\n this.space();\n this.print(node.id);\n this.print(node.typeParameters);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.right);\n this.semicolon();\n}\n\nexport function TypeAnnotation(\n this: Printer,\n node: t.TypeAnnotation,\n parent: t.Node,\n) {\n this.token(\":\");\n this.space();\n if (parent.type === \"ArrowFunctionExpression\") {\n this.tokenContext |= TokenContext.arrowFlowReturnType;\n } else if (\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n node.optional\n ) {\n this.token(\"?\");\n }\n this.print(node.typeAnnotation);\n}\n\nexport function TypeParameterInstantiation(\n this: Printer,\n node: t.TypeParameterInstantiation,\n): void {\n this.token(\"<\");\n this.printList(node.params);\n this.token(\">\");\n}\n\nexport { TypeParameterInstantiation as TypeParameterDeclaration };\n\nexport function TypeParameter(this: Printer, node: t.TypeParameter) {\n _variance.call(this, node);\n\n this.word(node.name);\n\n if (node.bound) {\n this.print(node.bound);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default);\n }\n}\n\nexport function OpaqueType(\n this: Printer,\n node: t.OpaqueType | t.DeclareOpaqueType,\n) {\n this.word(\"opaque\");\n this.space();\n this.word(\"type\");\n this.space();\n this.print(node.id);\n this.print(node.typeParameters);\n if (node.supertype) {\n this.token(\":\");\n this.space();\n this.print(node.supertype);\n }\n\n if (node.impltype) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.impltype);\n }\n this.semicolon();\n}\n\nexport function ObjectTypeAnnotation(\n this: Printer,\n node: t.ObjectTypeAnnotation,\n) {\n if (node.exact) {\n this.token(\"{|\");\n } else {\n this.token(\"{\");\n }\n\n // TODO: remove the array fallbacks and instead enforce the types to require an array\n const props = [\n ...node.properties,\n ...(node.callProperties || []),\n ...(node.indexers || []),\n ...(node.internalSlots || []),\n ];\n\n if (props.length) {\n this.newline();\n\n this.space();\n\n this.printJoin(\n props,\n true,\n true,\n () => {\n if (props.length !== 1 || node.inexact) {\n this.token(\",\");\n this.space();\n }\n },\n true,\n );\n\n this.space();\n }\n\n if (node.inexact) {\n this.indent();\n this.token(\"...\");\n if (props.length) {\n this.newline();\n }\n this.dedent();\n }\n\n if (node.exact) {\n this.token(\"|}\");\n } else {\n this.token(\"}\");\n }\n}\n\nexport function ObjectTypeInternalSlot(\n this: Printer,\n node: t.ObjectTypeInternalSlot,\n) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this.token(\"[\");\n this.token(\"[\");\n this.print(node.id);\n this.token(\"]\");\n this.token(\"]\");\n if (node.optional) this.token(\"?\");\n if (!node.method) {\n this.token(\":\");\n this.space();\n }\n this.print(node.value);\n}\n\nexport function ObjectTypeCallProperty(\n this: Printer,\n node: t.ObjectTypeCallProperty,\n) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n this.print(node.value);\n}\n\nexport function ObjectTypeIndexer(this: Printer, node: t.ObjectTypeIndexer) {\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n _variance.call(this, node);\n this.token(\"[\");\n if (node.id) {\n this.print(node.id);\n this.token(\":\");\n this.space();\n }\n this.print(node.key);\n this.token(\"]\");\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ObjectTypeProperty(this: Printer, node: t.ObjectTypeProperty) {\n if (node.proto) {\n this.word(\"proto\");\n this.space();\n }\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n if (node.kind === \"get\" || node.kind === \"set\") {\n this.word(node.kind);\n this.space();\n }\n _variance.call(this, node);\n this.print(node.key);\n if (node.optional) this.token(\"?\");\n if (!node.method) {\n this.token(\":\");\n this.space();\n }\n this.print(node.value);\n}\n\nexport function ObjectTypeSpreadProperty(\n this: Printer,\n node: t.ObjectTypeSpreadProperty,\n) {\n this.token(\"...\");\n this.print(node.argument);\n}\n\nexport function QualifiedTypeIdentifier(\n this: Printer,\n node: t.QualifiedTypeIdentifier,\n) {\n this.print(node.qualification);\n this.token(\".\");\n this.print(node.id);\n}\n\nexport function SymbolTypeAnnotation(this: Printer) {\n this.word(\"symbol\");\n}\n\nfunction orSeparator(this: Printer, occurrenceCount: number) {\n this.space();\n this.token(\"|\", false, occurrenceCount);\n this.space();\n}\n\nexport function UnionTypeAnnotation(\n this: Printer,\n node: t.UnionTypeAnnotation,\n) {\n this.printJoin(node.types, undefined, undefined, orSeparator);\n}\n\nexport function TypeCastExpression(this: Printer, node: t.TypeCastExpression) {\n this.token(\"(\");\n this.print(node.expression);\n this.print(node.typeAnnotation);\n this.token(\")\");\n}\n\nexport function Variance(this: Printer, node: t.Variance) {\n if (node.kind === \"plus\") {\n this.token(\"+\");\n } else {\n this.token(\"-\");\n }\n}\n\nexport function VoidTypeAnnotation(this: Printer) {\n this.word(\"void\");\n}\n\nexport function IndexedAccessType(this: Printer, node: t.IndexedAccessType) {\n this.print(node.objectType, true);\n this.token(\"[\");\n this.print(node.indexType);\n this.token(\"]\");\n}\n\nexport function OptionalIndexedAccessType(\n this: Printer,\n node: t.OptionalIndexedAccessType,\n) {\n this.print(node.objectType);\n if (node.optional) {\n this.token(\"?.\");\n }\n this.token(\"[\");\n this.print(node.indexType);\n this.token(\"]\");\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/index.js b/node_modules/@babel/generator/lib/generators/index.js new file mode 100644 index 0000000..331c73f --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/index.js @@ -0,0 +1,128 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +var _templateLiterals = require("./template-literals.js"); +Object.keys(_templateLiterals).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _templateLiterals[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _templateLiterals[key]; + } + }); +}); +var _expressions = require("./expressions.js"); +Object.keys(_expressions).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _expressions[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _expressions[key]; + } + }); +}); +var _statements = require("./statements.js"); +Object.keys(_statements).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _statements[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _statements[key]; + } + }); +}); +var _classes = require("./classes.js"); +Object.keys(_classes).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _classes[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _classes[key]; + } + }); +}); +var _methods = require("./methods.js"); +Object.keys(_methods).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _methods[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _methods[key]; + } + }); +}); +var _modules = require("./modules.js"); +Object.keys(_modules).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _modules[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _modules[key]; + } + }); +}); +var _types = require("./types.js"); +Object.keys(_types).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _types[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _types[key]; + } + }); +}); +var _flow = require("./flow.js"); +Object.keys(_flow).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _flow[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _flow[key]; + } + }); +}); +var _base = require("./base.js"); +Object.keys(_base).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _base[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _base[key]; + } + }); +}); +var _jsx = require("./jsx.js"); +Object.keys(_jsx).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _jsx[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _jsx[key]; + } + }); +}); +var _typescript = require("./typescript.js"); +Object.keys(_typescript).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (key in exports && exports[key] === _typescript[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _typescript[key]; + } + }); +}); + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/generators/index.js.map b/node_modules/@babel/generator/lib/generators/index.js.map new file mode 100644 index 0000000..e8b0341 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_templateLiterals","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_expressions","_statements","_classes","_methods","_modules","_types","_flow","_base","_jsx","_typescript"],"sources":["../../src/generators/index.ts"],"sourcesContent":["export * from \"./template-literals.ts\";\nexport * from \"./expressions.ts\";\nexport * from \"./statements.ts\";\nexport * from \"./classes.ts\";\nexport * from \"./methods.ts\";\nexport * from \"./modules.ts\";\nexport * from \"./types.ts\";\nexport * from \"./flow.ts\";\nexport * from \"./base.ts\";\nexport * from \"./jsx.ts\";\nexport * from \"./typescript.ts\";\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/jsx.js b/node_modules/@babel/generator/lib/generators/jsx.js new file mode 100644 index 0000000..be7c512 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/jsx.js @@ -0,0 +1,124 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.JSXAttribute = JSXAttribute; +exports.JSXClosingElement = JSXClosingElement; +exports.JSXClosingFragment = JSXClosingFragment; +exports.JSXElement = JSXElement; +exports.JSXEmptyExpression = JSXEmptyExpression; +exports.JSXExpressionContainer = JSXExpressionContainer; +exports.JSXFragment = JSXFragment; +exports.JSXIdentifier = JSXIdentifier; +exports.JSXMemberExpression = JSXMemberExpression; +exports.JSXNamespacedName = JSXNamespacedName; +exports.JSXOpeningElement = JSXOpeningElement; +exports.JSXOpeningFragment = JSXOpeningFragment; +exports.JSXSpreadAttribute = JSXSpreadAttribute; +exports.JSXSpreadChild = JSXSpreadChild; +exports.JSXText = JSXText; +function JSXAttribute(node) { + this.print(node.name); + if (node.value) { + this.tokenChar(61); + this.print(node.value); + } +} +function JSXIdentifier(node) { + this.word(node.name); +} +function JSXNamespacedName(node) { + this.print(node.namespace); + this.tokenChar(58); + this.print(node.name); +} +function JSXMemberExpression(node) { + this.print(node.object); + this.tokenChar(46); + this.print(node.property); +} +function JSXSpreadAttribute(node) { + this.tokenChar(123); + this.token("..."); + this.print(node.argument); + this.rightBrace(node); +} +function JSXExpressionContainer(node) { + this.tokenChar(123); + this.print(node.expression); + this.rightBrace(node); +} +function JSXSpreadChild(node) { + this.tokenChar(123); + this.token("..."); + this.print(node.expression); + this.rightBrace(node); +} +function JSXText(node) { + const raw = this.getPossibleRaw(node); + if (raw !== undefined) { + this.token(raw, true); + } else { + this.token(node.value, true); + } +} +function JSXElement(node) { + const open = node.openingElement; + this.print(open); + if (open.selfClosing) return; + this.indent(); + for (const child of node.children) { + this.print(child); + } + this.dedent(); + this.print(node.closingElement); +} +function spaceSeparator() { + this.space(); +} +function JSXOpeningElement(node) { + this.tokenChar(60); + this.print(node.name); + if (node.typeArguments) { + this.print(node.typeArguments); + } + this.print(node.typeParameters); + if (node.attributes.length > 0) { + this.space(); + this.printJoin(node.attributes, undefined, undefined, spaceSeparator); + } + if (node.selfClosing) { + this.space(); + this.tokenChar(47); + } + this.tokenChar(62); +} +function JSXClosingElement(node) { + this.tokenChar(60); + this.tokenChar(47); + this.print(node.name); + this.tokenChar(62); +} +function JSXEmptyExpression() { + this.printInnerComments(); +} +function JSXFragment(node) { + this.print(node.openingFragment); + this.indent(); + for (const child of node.children) { + this.print(child); + } + this.dedent(); + this.print(node.closingFragment); +} +function JSXOpeningFragment() { + this.tokenChar(60); + this.tokenChar(62); +} +function JSXClosingFragment() { + this.token(" 0) {\n this.space();\n this.printJoin(node.attributes, undefined, undefined, spaceSeparator);\n }\n if (node.selfClosing) {\n this.space();\n this.token(\"/\");\n }\n this.token(\">\");\n}\n\nexport function JSXClosingElement(this: Printer, node: t.JSXClosingElement) {\n this.token(\"<\");\n this.token(\"/\");\n this.print(node.name);\n this.token(\">\");\n}\n\nexport function JSXEmptyExpression(this: Printer) {\n // This node is empty, so forcefully print its inner comments.\n this.printInnerComments();\n}\n\nexport function JSXFragment(this: Printer, node: t.JSXFragment) {\n this.print(node.openingFragment);\n\n this.indent();\n for (const child of node.children) {\n this.print(child);\n }\n this.dedent();\n\n this.print(node.closingFragment);\n}\n\nexport function JSXOpeningFragment(this: Printer) {\n this.token(\"<\");\n this.token(\">\");\n}\n\nexport function JSXClosingFragment(this: Printer) {\n this.token(\"\");\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/methods.js b/node_modules/@babel/generator/lib/generators/methods.js new file mode 100644 index 0000000..01b90aa --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/methods.js @@ -0,0 +1,207 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ArrowFunctionExpression = ArrowFunctionExpression; +exports.FunctionDeclaration = exports.FunctionExpression = FunctionExpression; +exports._functionHead = _functionHead; +exports._methodHead = _methodHead; +exports._param = _param; +exports._parameters = _parameters; +exports._params = _params; +exports._predicate = _predicate; +exports._shouldPrintArrowParamsParens = _shouldPrintArrowParamsParens; +var _t = require("@babel/types"); +var _index = require("../node/index.js"); +const { + isIdentifier +} = _t; +function _params(node, noLineTerminator, idNode, parentNode) { + this.print(node.typeParameters); + if (idNode !== undefined || parentNode !== undefined) { + const nameInfo = _getFuncIdName.call(this, idNode, parentNode); + if (nameInfo) { + this.sourceIdentifierName(nameInfo.name, nameInfo.pos); + } + } + this.tokenChar(40); + _parameters.call(this, node.params, 41); + this.print(node.returnType, noLineTerminator); + this._noLineTerminator = noLineTerminator; +} +function _parameters(parameters, endToken) { + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + const trailingComma = this.shouldPrintTrailingComma(endToken); + const paramLength = parameters.length; + for (let i = 0; i < paramLength; i++) { + _param.call(this, parameters[i]); + if (trailingComma || i < paramLength - 1) { + this.tokenChar(44, i); + this.space(); + } + } + this.tokenChar(endToken); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; +} +function _param(parameter) { + this.printJoin(parameter.decorators, undefined, undefined, undefined, undefined, true); + this.print(parameter, undefined, true); + if (parameter.optional) { + this.tokenChar(63); + } + this.print(parameter.typeAnnotation, undefined, true); +} +function _methodHead(node) { + const kind = node.kind; + const key = node.key; + if (kind === "get" || kind === "set") { + this.word(kind); + this.space(); + } + if (node.async) { + this.word("async", true); + this.space(); + } + if (kind === "method" || kind === "init") { + if (node.generator) { + this.tokenChar(42); + } + } + if (node.computed) { + this.tokenChar(91); + this.print(key); + this.tokenChar(93); + } else { + this.print(key); + } + if (node.optional) { + this.tokenChar(63); + } + if (this._buf._map) { + _params.call(this, node, false, node.computed && node.key.type !== "StringLiteral" ? undefined : node.key); + } else { + _params.call(this, node, false); + } +} +function _predicate(node, noLineTerminatorAfter) { + if (node.predicate) { + if (!node.returnType) { + this.tokenChar(58); + } + this.space(); + this.print(node.predicate, noLineTerminatorAfter); + } +} +function _functionHead(node, parent, hasPredicate) { + if (node.async) { + this.word("async"); + if (!this.format.preserveFormat) { + this._innerCommentsState = 0; + } + this.space(); + } + this.word("function"); + if (node.generator) { + if (!this.format.preserveFormat) { + this._innerCommentsState = 0; + } + this.tokenChar(42); + } + this.space(); + if (node.id) { + this.print(node.id); + } + if (this._buf._map) { + _params.call(this, node, false, node.id, parent); + } else { + _params.call(this, node, false); + } + if (hasPredicate) { + _predicate.call(this, node); + } +} +function FunctionExpression(node, parent) { + _functionHead.call(this, node, parent, true); + this.space(); + this.print(node.body); +} +function ArrowFunctionExpression(node, parent) { + if (node.async) { + this.word("async", true); + this.space(); + } + if (_shouldPrintArrowParamsParens.call(this, node)) { + _params.call(this, node, true, undefined, this._buf._map ? parent : undefined); + } else { + this.print(node.params[0], true); + } + _predicate.call(this, node, true); + this.space(); + this.printInnerComments(); + this.token("=>"); + this.space(); + this.tokenContext |= _index.TokenContext.arrowBody; + this.print(node.body); +} +function _shouldPrintArrowParamsParens(node) { + var _firstParam$leadingCo, _firstParam$trailingC; + if (node.params.length !== 1) return true; + if (node.typeParameters || node.returnType || node.predicate) { + return true; + } + const firstParam = node.params[0]; + if (!isIdentifier(firstParam) || firstParam.typeAnnotation || firstParam.optional || (_firstParam$leadingCo = firstParam.leadingComments) != null && _firstParam$leadingCo.length || (_firstParam$trailingC = firstParam.trailingComments) != null && _firstParam$trailingC.length) { + return true; + } + if (this.tokenMap) { + if (node.loc == null) return true; + if (this.tokenMap.findMatching(node, "(") !== null) return true; + const arrowToken = this.tokenMap.findMatching(node, "=>"); + if ((arrowToken == null ? void 0 : arrowToken.loc) == null) return true; + return arrowToken.loc.start.line !== node.loc.start.line; + } + if (this.format.retainLines) return true; + return false; +} +function _getFuncIdName(idNode, parent) { + let id = idNode; + if (!id && parent) { + const parentType = parent.type; + if (parentType === "VariableDeclarator") { + id = parent.id; + } else if (parentType === "AssignmentExpression" || parentType === "AssignmentPattern") { + id = parent.left; + } else if (parentType === "ObjectProperty" || parentType === "ClassProperty") { + if (!parent.computed || parent.key.type === "StringLiteral") { + id = parent.key; + } + } else if (parentType === "ClassPrivateProperty" || parentType === "ClassAccessorProperty") { + id = parent.key; + } + } + if (!id) return; + let nameInfo; + if (id.type === "Identifier") { + var _id$loc, _id$loc2; + nameInfo = { + pos: (_id$loc = id.loc) == null ? void 0 : _id$loc.start, + name: ((_id$loc2 = id.loc) == null ? void 0 : _id$loc2.identifierName) || id.name + }; + } else if (id.type === "PrivateName") { + var _id$loc3; + nameInfo = { + pos: (_id$loc3 = id.loc) == null ? void 0 : _id$loc3.start, + name: "#" + id.id.name + }; + } else if (id.type === "StringLiteral") { + var _id$loc4; + nameInfo = { + pos: (_id$loc4 = id.loc) == null ? void 0 : _id$loc4.start, + name: id.value + }; + } + return nameInfo; +} + +//# sourceMappingURL=methods.js.map diff --git a/node_modules/@babel/generator/lib/generators/methods.js.map b/node_modules/@babel/generator/lib/generators/methods.js.map new file mode 100644 index 0000000..d448e32 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/methods.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_index","isIdentifier","_params","node","noLineTerminator","idNode","parentNode","print","typeParameters","undefined","nameInfo","_getFuncIdName","call","sourceIdentifierName","name","pos","token","_parameters","params","returnType","_noLineTerminator","parameters","endToken","oldNoLineTerminatorAfterNode","enterDelimited","trailingComma","shouldPrintTrailingComma","paramLength","length","i","_param","tokenChar","space","_noLineTerminatorAfterNode","parameter","printJoin","decorators","optional","typeAnnotation","_methodHead","kind","key","word","async","generator","computed","_buf","_map","type","_predicate","noLineTerminatorAfter","predicate","_functionHead","parent","hasPredicate","format","preserveFormat","_innerCommentsState","id","FunctionExpression","body","ArrowFunctionExpression","_shouldPrintArrowParamsParens","printInnerComments","tokenContext","TokenContext","arrowBody","_firstParam$leadingCo","_firstParam$trailingC","firstParam","leadingComments","trailingComments","tokenMap","loc","findMatching","arrowToken","start","line","retainLines","parentType","left","_id$loc","_id$loc2","identifierName","_id$loc3","_id$loc4","value"],"sources":["../../src/generators/methods.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\nimport { isIdentifier, type ParentMaps } from \"@babel/types\";\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport { TokenContext } from \"../node/index.ts\";\n\ntype ParentsOf = ParentMaps[T[\"type\"]];\n\nexport function _params(\n this: Printer,\n node: t.Function | t.TSDeclareMethod | t.TSDeclareFunction,\n noLineTerminator: boolean,\n idNode?: t.Expression | t.PrivateName | null,\n parentNode?: ParentsOf,\n) {\n this.print(node.typeParameters);\n\n if (idNode !== undefined || parentNode !== undefined) {\n const nameInfo = _getFuncIdName.call(this, idNode, parentNode);\n if (nameInfo) {\n this.sourceIdentifierName(nameInfo.name, nameInfo.pos);\n }\n }\n\n this.token(\"(\");\n _parameters.call(this, node.params, charCodes.rightParenthesis);\n\n this.print(node.returnType, noLineTerminator);\n\n this._noLineTerminator = noLineTerminator;\n}\n\nexport function _parameters(\n this: Printer,\n parameters: t.Function[\"params\"],\n endToken: number,\n) {\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n\n const trailingComma = this.shouldPrintTrailingComma(endToken);\n\n const paramLength = parameters.length;\n for (let i = 0; i < paramLength; i++) {\n _param.call(this, parameters[i]);\n\n if (trailingComma || i < paramLength - 1) {\n this.tokenChar(charCodes.comma, i);\n this.space();\n }\n }\n\n this.tokenChar(endToken);\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n}\n\nexport function _param(\n this: Printer,\n parameter: t.Identifier | t.RestElement | t.Pattern | t.TSParameterProperty,\n) {\n this.printJoin(\n // @ts-expect-error decorators is not in VoidPattern\n parameter.decorators,\n undefined,\n undefined,\n undefined,\n undefined,\n true,\n );\n this.print(parameter, undefined, true);\n if (\n // @ts-expect-error optional is not in TSParameterProperty\n parameter.optional\n ) {\n this.token(\"?\"); // TS / flow\n }\n\n this.print(\n // @ts-expect-error typeAnnotation is not in TSParameterProperty\n parameter.typeAnnotation,\n undefined,\n true,\n ); // TS / flow\n}\n\nexport function _methodHead(this: Printer, node: t.Method | t.TSDeclareMethod) {\n const kind = node.kind;\n const key = node.key;\n\n if (kind === \"get\" || kind === \"set\") {\n this.word(kind);\n this.space();\n }\n\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n\n if (\n kind === \"method\" ||\n // @ts-expect-error Fixme: kind: \"init\" is not defined\n kind === \"init\"\n ) {\n if (node.generator) {\n this.token(\"*\");\n }\n }\n\n if (node.computed) {\n this.token(\"[\");\n this.print(key);\n this.token(\"]\");\n } else {\n this.print(key);\n }\n\n if (\n // @ts-expect-error optional is not in ObjectMethod\n node.optional\n ) {\n // TS\n this.token(\"?\");\n }\n\n if (this._buf._map) {\n _params.call(\n this,\n node,\n false,\n node.computed && node.key.type !== \"StringLiteral\" ? undefined : node.key,\n );\n } else {\n _params.call(this, node, false);\n }\n}\n\nexport function _predicate(\n this: Printer,\n node:\n | t.FunctionDeclaration\n | t.FunctionExpression\n | t.ArrowFunctionExpression,\n noLineTerminatorAfter?: boolean,\n) {\n if (node.predicate) {\n if (!node.returnType) {\n this.token(\":\");\n }\n this.space();\n this.print(node.predicate, noLineTerminatorAfter);\n }\n}\n\nexport function _functionHead(\n this: Printer,\n node: t.FunctionDeclaration | t.FunctionExpression | t.TSDeclareFunction,\n parent: ParentsOf,\n hasPredicate: boolean,\n) {\n if (node.async) {\n this.word(\"async\");\n if (!this.format.preserveFormat) {\n // We prevent inner comments from being printed here,\n // so that they are always consistently printed in the\n // same place regardless of the function type.\n this._innerCommentsState = 0 /* INNER_COMMENT_STATE.DISALLOWED */;\n }\n this.space();\n }\n this.word(\"function\");\n if (node.generator) {\n if (!this.format.preserveFormat) {\n // We prevent inner comments from being printed here,\n // so that they are always consistently printed in the\n // same place regardless of the function type.\n this._innerCommentsState = 0 /* INNER_COMMENT_STATE.DISALLOWED */;\n }\n this.token(\"*\");\n }\n\n this.space();\n if (node.id) {\n this.print(node.id);\n }\n\n if (this._buf._map) {\n _params.call(this, node, false, node.id, parent);\n } else {\n _params.call(this, node, false);\n }\n if (hasPredicate) {\n _predicate.call(this, node as t.FunctionDeclaration | t.FunctionExpression);\n }\n}\n\nexport function FunctionExpression(\n this: Printer,\n node: t.FunctionExpression,\n parent: ParentsOf,\n) {\n _functionHead.call(this, node, parent, true);\n this.space();\n this.print(node.body);\n}\n\nexport { FunctionExpression as FunctionDeclaration };\n\nexport function ArrowFunctionExpression(\n this: Printer,\n node: t.ArrowFunctionExpression,\n parent: ParentsOf,\n) {\n if (node.async) {\n this.word(\"async\", true);\n this.space();\n }\n\n if (_shouldPrintArrowParamsParens.call(this, node)) {\n _params.call(\n this,\n node,\n true,\n undefined,\n this._buf._map ? parent : undefined,\n );\n } else {\n this.print(node.params[0], true);\n }\n\n _predicate.call(this, node, true);\n this.space();\n // When printing (x)/*1*/=>{}, we remove the parentheses\n // and thus there aren't two contiguous inner tokens.\n // We forcefully print inner comments here.\n this.printInnerComments();\n this.token(\"=>\");\n\n this.space();\n\n this.tokenContext |= TokenContext.arrowBody;\n this.print(node.body);\n}\n\n// Try to avoid printing parens in simple cases, but only if we're pretty\n// sure that they aren't needed by type annotations or potential newlines.\nexport function _shouldPrintArrowParamsParens(\n this: Printer,\n node: t.ArrowFunctionExpression,\n): boolean {\n if (node.params.length !== 1) return true;\n\n if (node.typeParameters || node.returnType || node.predicate) {\n return true;\n }\n\n const firstParam = node.params[0];\n if (\n !isIdentifier(firstParam) ||\n firstParam.typeAnnotation ||\n firstParam.optional ||\n // Flow does not support `foo /*: string*/ => {};`\n firstParam.leadingComments?.length ||\n firstParam.trailingComments?.length\n ) {\n return true;\n }\n\n if (this.tokenMap) {\n if (node.loc == null) return true;\n if (this.tokenMap.findMatching(node, \"(\") !== null) return true;\n const arrowToken = this.tokenMap.findMatching(node, \"=>\");\n if (arrowToken?.loc == null) return true;\n return arrowToken.loc.start.line !== node.loc.start.line;\n }\n\n if (this.format.retainLines) return true;\n\n return false;\n}\n\nfunction _getFuncIdName(\n this: Printer,\n idNode: t.Expression | t.PrivateName,\n parent: ParentsOf,\n) {\n let id: t.Expression | t.PrivateName | t.LVal | t.VoidPattern = idNode;\n\n if (!id && parent) {\n const parentType = parent.type;\n\n if (parentType === \"VariableDeclarator\") {\n id = parent.id;\n } else if (\n parentType === \"AssignmentExpression\" ||\n parentType === \"AssignmentPattern\"\n ) {\n id = parent.left;\n } else if (\n parentType === \"ObjectProperty\" ||\n parentType === \"ClassProperty\"\n ) {\n if (!parent.computed || parent.key.type === \"StringLiteral\") {\n id = parent.key;\n }\n } else if (\n parentType === \"ClassPrivateProperty\" ||\n parentType === \"ClassAccessorProperty\"\n ) {\n id = parent.key;\n }\n }\n\n if (!id) return;\n\n let nameInfo;\n\n if (id.type === \"Identifier\") {\n nameInfo = {\n pos: id.loc?.start,\n name: id.loc?.identifierName || id.name,\n };\n } else if (id.type === \"PrivateName\") {\n nameInfo = {\n pos: id.loc?.start,\n name: \"#\" + id.id.name,\n };\n } else if (id.type === \"StringLiteral\") {\n nameInfo = {\n pos: id.loc?.start,\n name: id.value,\n };\n }\n\n return nameInfo;\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/modules.js b/node_modules/@babel/generator/lib/generators/modules.js new file mode 100644 index 0000000..b787d42 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/modules.js @@ -0,0 +1,290 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ExportAllDeclaration = ExportAllDeclaration; +exports.ExportDefaultDeclaration = ExportDefaultDeclaration; +exports.ExportDefaultSpecifier = ExportDefaultSpecifier; +exports.ExportNamedDeclaration = ExportNamedDeclaration; +exports.ExportNamespaceSpecifier = ExportNamespaceSpecifier; +exports.ExportSpecifier = ExportSpecifier; +exports.ImportAttribute = ImportAttribute; +exports.ImportDeclaration = ImportDeclaration; +exports.ImportDefaultSpecifier = ImportDefaultSpecifier; +exports.ImportExpression = ImportExpression; +exports.ImportNamespaceSpecifier = ImportNamespaceSpecifier; +exports.ImportSpecifier = ImportSpecifier; +exports._printAttributes = _printAttributes; +var _t = require("@babel/types"); +var _index = require("../node/index.js"); +var _expressions = require("./expressions.js"); +const { + isClassDeclaration, + isExportDefaultSpecifier, + isExportNamespaceSpecifier, + isImportDefaultSpecifier, + isImportNamespaceSpecifier, + isStatement +} = _t; +function ImportSpecifier(node) { + if (node.importKind === "type" || node.importKind === "typeof") { + this.word(node.importKind); + this.space(); + } + this.print(node.imported); + if (node.local && node.local.name !== node.imported.name) { + this.space(); + this.word("as"); + this.space(); + this.print(node.local); + } +} +function ImportDefaultSpecifier(node) { + this.print(node.local); +} +function ExportDefaultSpecifier(node) { + this.print(node.exported); +} +function ExportSpecifier(node) { + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + this.print(node.local); + if (node.exported && node.local.name !== node.exported.name) { + this.space(); + this.word("as"); + this.space(); + this.print(node.exported); + } +} +function ExportNamespaceSpecifier(node) { + this.tokenChar(42); + this.space(); + this.word("as"); + this.space(); + this.print(node.exported); +} +let warningShown = false; +function _printAttributes(node, hasPreviousBrace) { + var _node$extra; + const { + attributes + } = node; + var { + assertions + } = node; + const { + importAttributesKeyword + } = this.format; + if (attributes && !importAttributesKeyword && node.extra && (node.extra.deprecatedAssertSyntax || node.extra.deprecatedWithLegacySyntax) && !warningShown) { + warningShown = true; + console.warn(`\ +You are using import attributes, without specifying the desired output syntax. +Please specify the "importAttributesKeyword" generator option, whose value can be one of: + - "with" : \`import { a } from "b" with { type: "json" };\` + - "assert" : \`import { a } from "b" assert { type: "json" };\` + - "with-legacy" : \`import { a } from "b" with type: "json";\` +`); + } + const useAssertKeyword = importAttributesKeyword === "assert" || !importAttributesKeyword && assertions; + this.word(useAssertKeyword ? "assert" : "with"); + this.space(); + if (!useAssertKeyword && (importAttributesKeyword === "with-legacy" || !importAttributesKeyword && (_node$extra = node.extra) != null && _node$extra.deprecatedWithLegacySyntax)) { + this.printList(attributes || assertions); + return; + } + const occurrenceCount = hasPreviousBrace ? 1 : 0; + this.token("{", undefined, occurrenceCount); + this.space(); + this.printList(attributes || assertions, this.shouldPrintTrailingComma("}")); + this.space(); + this.token("}", undefined, occurrenceCount); +} +function ExportAllDeclaration(node) { + var _node$attributes, _node$assertions; + this.word("export"); + this.space(); + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + this.tokenChar(42); + this.space(); + this.word("from"); + this.space(); + if ((_node$attributes = node.attributes) != null && _node$attributes.length || (_node$assertions = node.assertions) != null && _node$assertions.length) { + this.print(node.source, true); + this.space(); + _printAttributes.call(this, node, false); + } else { + this.print(node.source); + } + this.semicolon(); +} +function maybePrintDecoratorsBeforeExport(printer, node) { + if (isClassDeclaration(node.declaration) && _expressions._shouldPrintDecoratorsBeforeExport.call(printer, node)) { + printer.printJoin(node.declaration.decorators); + } +} +function ExportNamedDeclaration(node) { + maybePrintDecoratorsBeforeExport(this, node); + this.word("export"); + this.space(); + if (node.declaration) { + const declar = node.declaration; + this.print(declar); + if (!isStatement(declar)) this.semicolon(); + } else { + if (node.exportKind === "type") { + this.word("type"); + this.space(); + } + const specifiers = node.specifiers.slice(0); + let hasSpecial = false; + for (;;) { + const first = specifiers[0]; + if (isExportDefaultSpecifier(first) || isExportNamespaceSpecifier(first)) { + hasSpecial = true; + this.print(specifiers.shift()); + if (specifiers.length) { + this.tokenChar(44); + this.space(); + } + } else { + break; + } + } + let hasBrace = false; + if (specifiers.length || !specifiers.length && !hasSpecial) { + hasBrace = true; + this.tokenChar(123); + if (specifiers.length) { + this.space(); + this.printList(specifiers, this.shouldPrintTrailingComma("}")); + this.space(); + } + this.tokenChar(125); + } + if (node.source) { + var _node$attributes2, _node$assertions2; + this.space(); + this.word("from"); + this.space(); + if ((_node$attributes2 = node.attributes) != null && _node$attributes2.length || (_node$assertions2 = node.assertions) != null && _node$assertions2.length) { + this.print(node.source, true); + this.space(); + _printAttributes.call(this, node, hasBrace); + } else { + this.print(node.source); + } + } + this.semicolon(); + } +} +function ExportDefaultDeclaration(node) { + maybePrintDecoratorsBeforeExport(this, node); + this.word("export"); + this.noIndentInnerCommentsHere(); + this.space(); + this.word("default"); + this.space(); + this.tokenContext |= _index.TokenContext.exportDefault; + const declar = node.declaration; + this.print(declar); + if (!isStatement(declar)) this.semicolon(); +} +function ImportDeclaration(node) { + var _node$attributes3, _node$assertions3; + this.word("import"); + this.space(); + const isTypeKind = node.importKind === "type" || node.importKind === "typeof"; + if (isTypeKind) { + this.noIndentInnerCommentsHere(); + this.word(node.importKind); + this.space(); + } else if (node.module) { + this.noIndentInnerCommentsHere(); + this.word("module"); + this.space(); + } else if (node.phase) { + this.noIndentInnerCommentsHere(); + this.word(node.phase); + this.space(); + } + const specifiers = node.specifiers.slice(0); + const hasSpecifiers = !!specifiers.length; + while (hasSpecifiers) { + const first = specifiers[0]; + if (isImportDefaultSpecifier(first) || isImportNamespaceSpecifier(first)) { + this.print(specifiers.shift()); + if (specifiers.length) { + this.tokenChar(44); + this.space(); + } + } else { + break; + } + } + let hasBrace = false; + if (specifiers.length) { + hasBrace = true; + this.tokenChar(123); + this.space(); + this.printList(specifiers, this.shouldPrintTrailingComma("}")); + this.space(); + this.tokenChar(125); + } else if (isTypeKind && !hasSpecifiers) { + hasBrace = true; + this.tokenChar(123); + this.tokenChar(125); + } + if (hasSpecifiers || isTypeKind) { + this.space(); + this.word("from"); + this.space(); + } + if ((_node$attributes3 = node.attributes) != null && _node$attributes3.length || (_node$assertions3 = node.assertions) != null && _node$assertions3.length) { + this.print(node.source, true); + this.space(); + _printAttributes.call(this, node, hasBrace); + } else { + this.print(node.source); + } + this.semicolon(); +} +function ImportAttribute(node) { + this.print(node.key); + this.tokenChar(58); + this.space(); + this.print(node.value); +} +function ImportNamespaceSpecifier(node) { + this.tokenChar(42); + this.space(); + this.word("as"); + this.space(); + this.print(node.local); +} +function ImportExpression(node) { + this.word("import"); + if (node.phase) { + this.tokenChar(46); + this.word(node.phase); + } + this.tokenChar(40); + const shouldPrintTrailingComma = this.shouldPrintTrailingComma(")"); + this.print(node.source); + if (node.options != null) { + this.tokenChar(44); + this.space(); + this.print(node.options); + } + if (shouldPrintTrailingComma) { + this.tokenChar(44); + } + this.rightParens(node); +} + +//# sourceMappingURL=modules.js.map diff --git a/node_modules/@babel/generator/lib/generators/modules.js.map b/node_modules/@babel/generator/lib/generators/modules.js.map new file mode 100644 index 0000000..c642e93 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/modules.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_index","_expressions","isClassDeclaration","isExportDefaultSpecifier","isExportNamespaceSpecifier","isImportDefaultSpecifier","isImportNamespaceSpecifier","isStatement","ImportSpecifier","node","importKind","word","space","print","imported","local","name","ImportDefaultSpecifier","ExportDefaultSpecifier","exported","ExportSpecifier","exportKind","ExportNamespaceSpecifier","token","warningShown","_printAttributes","hasPreviousBrace","_node$extra","attributes","assertions","importAttributesKeyword","format","extra","deprecatedAssertSyntax","deprecatedWithLegacySyntax","console","warn","useAssertKeyword","printList","occurrenceCount","undefined","shouldPrintTrailingComma","ExportAllDeclaration","_node$attributes","_node$assertions","length","source","call","semicolon","maybePrintDecoratorsBeforeExport","printer","declaration","_shouldPrintDecoratorsBeforeExport","printJoin","decorators","ExportNamedDeclaration","declar","specifiers","slice","hasSpecial","first","shift","hasBrace","_node$attributes2","_node$assertions2","ExportDefaultDeclaration","noIndentInnerCommentsHere","tokenContext","TokenContext","exportDefault","ImportDeclaration","_node$attributes3","_node$assertions3","isTypeKind","module","phase","hasSpecifiers","ImportAttribute","key","value","ImportNamespaceSpecifier","ImportExpression","options","rightParens"],"sources":["../../src/generators/modules.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport {\n isClassDeclaration,\n isExportDefaultSpecifier,\n isExportNamespaceSpecifier,\n isImportDefaultSpecifier,\n isImportNamespaceSpecifier,\n isStatement,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport { TokenContext } from \"../node/index.ts\";\nimport { _shouldPrintDecoratorsBeforeExport } from \"./expressions.ts\";\n\nexport function ImportSpecifier(this: Printer, node: t.ImportSpecifier) {\n if (node.importKind === \"type\" || node.importKind === \"typeof\") {\n this.word(node.importKind);\n this.space();\n }\n\n this.print(node.imported);\n // @ts-expect-error todo(flow-ts) maybe check node type instead of relying on name to be undefined on t.StringLiteral\n if (node.local && node.local.name !== node.imported.name) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.local);\n }\n}\n\nexport function ImportDefaultSpecifier(\n this: Printer,\n node: t.ImportDefaultSpecifier,\n) {\n this.print(node.local);\n}\n\nexport function ExportDefaultSpecifier(\n this: Printer,\n node: t.ExportDefaultSpecifier,\n) {\n this.print(node.exported);\n}\n\nexport function ExportSpecifier(this: Printer, node: t.ExportSpecifier) {\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n\n this.print(node.local);\n // @ts-expect-error todo(flow-ts) maybe check node type instead of relying on name to be undefined on t.StringLiteral\n if (node.exported && node.local.name !== node.exported.name) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.exported);\n }\n}\n\nexport function ExportNamespaceSpecifier(\n this: Printer,\n node: t.ExportNamespaceSpecifier,\n) {\n this.token(\"*\");\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.exported);\n}\n\nlet warningShown = false;\n\nexport function _printAttributes(\n this: Printer,\n node: Extract,\n hasPreviousBrace: boolean,\n) {\n const { attributes } = node;\n\n if (!process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n // eslint-disable-next-line no-var\n var { assertions } = node;\n const { importAttributesKeyword } = this.format;\n\n if (\n attributes &&\n !importAttributesKeyword &&\n node.extra &&\n (node.extra.deprecatedAssertSyntax ||\n node.extra.deprecatedWithLegacySyntax) &&\n // In the production build only show the warning once.\n // We want to show it per-usage locally for tests.\n (!process.env.IS_PUBLISH || !warningShown)\n ) {\n warningShown = true;\n console.warn(`\\\nYou are using import attributes, without specifying the desired output syntax.\nPlease specify the \"importAttributesKeyword\" generator option, whose value can be one of:\n - \"with\" : \\`import { a } from \"b\" with { type: \"json\" };\\`\n - \"assert\" : \\`import { a } from \"b\" assert { type: \"json\" };\\`\n - \"with-legacy\" : \\`import { a } from \"b\" with type: \"json\";\\`\n`);\n }\n\n const useAssertKeyword =\n importAttributesKeyword === \"assert\" ||\n (!importAttributesKeyword && assertions);\n\n this.word(useAssertKeyword ? \"assert\" : \"with\");\n this.space();\n\n if (\n !useAssertKeyword &&\n (importAttributesKeyword === \"with-legacy\" ||\n (!importAttributesKeyword && node.extra?.deprecatedWithLegacySyntax))\n ) {\n // with-legacy\n this.printList(attributes || assertions);\n return;\n }\n } else {\n this.word(\"with\");\n this.space();\n }\n\n const occurrenceCount = hasPreviousBrace ? 1 : 0;\n\n this.token(\"{\", undefined, occurrenceCount);\n this.space();\n this.printList(\n process.env.BABEL_8_BREAKING ? attributes : attributes || assertions,\n this.shouldPrintTrailingComma(\"}\"),\n );\n this.space();\n this.token(\"}\", undefined, occurrenceCount);\n}\n\nexport function ExportAllDeclaration(\n this: Printer,\n node: t.ExportAllDeclaration | t.DeclareExportAllDeclaration,\n) {\n this.word(\"export\");\n this.space();\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n this.token(\"*\");\n this.space();\n this.word(\"from\");\n this.space();\n if (\n node.attributes?.length ||\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n (!process.env.BABEL_8_BREAKING && node.assertions?.length)\n ) {\n this.print(node.source, true);\n this.space();\n _printAttributes.call(this, node, false);\n } else {\n this.print(node.source);\n }\n\n this.semicolon();\n}\n\nfunction maybePrintDecoratorsBeforeExport(\n printer: Printer,\n node: t.ExportNamedDeclaration | t.ExportDefaultDeclaration,\n) {\n if (\n isClassDeclaration(node.declaration) &&\n _shouldPrintDecoratorsBeforeExport.call(\n printer,\n node as t.ExportNamedDeclaration & { declaration: t.ClassDeclaration },\n )\n ) {\n printer.printJoin(node.declaration.decorators);\n }\n}\n\nexport function ExportNamedDeclaration(\n this: Printer,\n node: t.ExportNamedDeclaration,\n) {\n maybePrintDecoratorsBeforeExport(this, node);\n\n this.word(\"export\");\n this.space();\n if (node.declaration) {\n const declar = node.declaration;\n this.print(declar);\n if (!isStatement(declar)) this.semicolon();\n } else {\n if (node.exportKind === \"type\") {\n this.word(\"type\");\n this.space();\n }\n\n const specifiers = node.specifiers.slice(0);\n\n // print \"special\" specifiers first\n let hasSpecial = false;\n for (;;) {\n const first = specifiers[0];\n if (\n isExportDefaultSpecifier(first) ||\n isExportNamespaceSpecifier(first)\n ) {\n hasSpecial = true;\n this.print(specifiers.shift());\n if (specifiers.length) {\n this.token(\",\");\n this.space();\n }\n } else {\n break;\n }\n }\n\n let hasBrace = false;\n if (specifiers.length || (!specifiers.length && !hasSpecial)) {\n hasBrace = true;\n this.token(\"{\");\n if (specifiers.length) {\n this.space();\n this.printList(specifiers, this.shouldPrintTrailingComma(\"}\"));\n this.space();\n }\n this.token(\"}\");\n }\n\n if (node.source) {\n this.space();\n this.word(\"from\");\n this.space();\n if (\n node.attributes?.length ||\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n (!process.env.BABEL_8_BREAKING && node.assertions?.length)\n ) {\n this.print(node.source, true);\n this.space();\n _printAttributes.call(this, node, hasBrace);\n } else {\n this.print(node.source);\n }\n }\n\n this.semicolon();\n }\n}\n\nexport function ExportDefaultDeclaration(\n this: Printer,\n node: t.ExportDefaultDeclaration,\n) {\n maybePrintDecoratorsBeforeExport(this, node);\n\n this.word(\"export\");\n this.noIndentInnerCommentsHere();\n this.space();\n this.word(\"default\");\n this.space();\n this.tokenContext |= TokenContext.exportDefault;\n const declar = node.declaration;\n this.print(declar);\n if (!isStatement(declar)) this.semicolon();\n}\n\nexport function ImportDeclaration(this: Printer, node: t.ImportDeclaration) {\n this.word(\"import\");\n this.space();\n\n const isTypeKind = node.importKind === \"type\" || node.importKind === \"typeof\";\n if (isTypeKind) {\n this.noIndentInnerCommentsHere();\n this.word(node.importKind!);\n this.space();\n } else if (node.module) {\n this.noIndentInnerCommentsHere();\n this.word(\"module\");\n this.space();\n } else if (node.phase) {\n this.noIndentInnerCommentsHere();\n this.word(node.phase);\n this.space();\n }\n\n const specifiers = node.specifiers.slice(0);\n const hasSpecifiers = !!specifiers.length;\n // print \"special\" specifiers first. The loop condition is constant,\n // but there is a \"break\" in the body.\n while (hasSpecifiers) {\n const first = specifiers[0];\n if (isImportDefaultSpecifier(first) || isImportNamespaceSpecifier(first)) {\n this.print(specifiers.shift());\n if (specifiers.length) {\n this.token(\",\");\n this.space();\n }\n } else {\n break;\n }\n }\n\n let hasBrace = false;\n if (specifiers.length) {\n hasBrace = true;\n this.token(\"{\");\n this.space();\n this.printList(specifiers, this.shouldPrintTrailingComma(\"}\"));\n this.space();\n this.token(\"}\");\n } else if (isTypeKind && !hasSpecifiers) {\n hasBrace = true;\n this.token(\"{\");\n this.token(\"}\");\n }\n\n if (hasSpecifiers || isTypeKind) {\n this.space();\n this.word(\"from\");\n this.space();\n }\n\n if (\n node.attributes?.length ||\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n (!process.env.BABEL_8_BREAKING && node.assertions?.length)\n ) {\n this.print(node.source, true);\n this.space();\n _printAttributes.call(this, node, hasBrace);\n } else {\n this.print(node.source);\n }\n\n this.semicolon();\n}\n\nexport function ImportAttribute(this: Printer, node: t.ImportAttribute) {\n this.print(node.key);\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ImportNamespaceSpecifier(\n this: Printer,\n node: t.ImportNamespaceSpecifier,\n) {\n this.token(\"*\");\n this.space();\n this.word(\"as\");\n this.space();\n this.print(node.local);\n}\n\nexport function ImportExpression(this: Printer, node: t.ImportExpression) {\n this.word(\"import\");\n if (node.phase) {\n this.token(\".\");\n this.word(node.phase);\n }\n this.token(\"(\");\n const shouldPrintTrailingComma = this.shouldPrintTrailingComma(\")\");\n this.print(node.source);\n if (node.options != null) {\n this.token(\",\");\n this.space();\n this.print(node.options);\n }\n if (shouldPrintTrailingComma) {\n this.token(\",\");\n }\n this.rightParens(node);\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/statements.js b/node_modules/@babel/generator/lib/generators/statements.js new file mode 100644 index 0000000..ab139b3 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/statements.js @@ -0,0 +1,297 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.BreakStatement = BreakStatement; +exports.CatchClause = CatchClause; +exports.ContinueStatement = ContinueStatement; +exports.DebuggerStatement = DebuggerStatement; +exports.DoWhileStatement = DoWhileStatement; +exports.ForInStatement = ForInStatement; +exports.ForOfStatement = ForOfStatement; +exports.ForStatement = ForStatement; +exports.IfStatement = IfStatement; +exports.LabeledStatement = LabeledStatement; +exports.ReturnStatement = ReturnStatement; +exports.SwitchCase = SwitchCase; +exports.SwitchStatement = SwitchStatement; +exports.ThrowStatement = ThrowStatement; +exports.TryStatement = TryStatement; +exports.VariableDeclaration = VariableDeclaration; +exports.VariableDeclarator = VariableDeclarator; +exports.WhileStatement = WhileStatement; +exports.WithStatement = WithStatement; +var _t = require("@babel/types"); +var _index = require("../node/index.js"); +const { + isFor, + isIfStatement, + isStatement +} = _t; +function WithStatement(node) { + this.word("with"); + this.space(); + this.tokenChar(40); + this.print(node.object); + this.tokenChar(41); + this.printBlock(node.body); +} +function IfStatement(node) { + this.word("if"); + this.space(); + this.tokenChar(40); + this.print(node.test); + this.tokenChar(41); + this.space(); + const needsBlock = node.alternate && isIfStatement(getLastStatement(node.consequent)); + if (needsBlock) { + this.tokenChar(123); + this.newline(); + this.indent(); + } + this.printAndIndentOnComments(node.consequent); + if (needsBlock) { + this.dedent(); + this.newline(); + this.tokenChar(125); + } + if (node.alternate) { + if (this.endsWith(125)) this.space(); + this.word("else"); + this.space(); + this.printAndIndentOnComments(node.alternate); + } +} +function getLastStatement(statement) { + const { + body + } = statement; + if (isStatement(body) === false) { + return statement; + } + return getLastStatement(body); +} +function ForStatement(node) { + this.word("for"); + this.space(); + this.tokenChar(40); + this.tokenContext |= _index.TokenContext.forInitHead | _index.TokenContext.forInOrInitHeadAccumulate; + this.print(node.init); + this.tokenContext = _index.TokenContext.normal; + this.tokenChar(59); + if (node.test) { + this.space(); + this.print(node.test); + } + this.tokenChar(59, 1); + if (node.update) { + this.space(); + this.print(node.update); + } + this.tokenChar(41); + this.printBlock(node.body); +} +function WhileStatement(node) { + this.word("while"); + this.space(); + this.tokenChar(40); + this.print(node.test); + this.tokenChar(41); + this.printBlock(node.body); +} +function ForInStatement(node) { + this.word("for"); + this.space(); + this.noIndentInnerCommentsHere(); + this.tokenChar(40); + this.tokenContext |= _index.TokenContext.forInHead | _index.TokenContext.forInOrInitHeadAccumulate; + this.print(node.left); + this.tokenContext = _index.TokenContext.normal; + this.space(); + this.word("in"); + this.space(); + this.print(node.right); + this.tokenChar(41); + this.printBlock(node.body); +} +function ForOfStatement(node) { + this.word("for"); + this.space(); + if (node.await) { + this.word("await"); + this.space(); + } + this.noIndentInnerCommentsHere(); + this.tokenChar(40); + this.tokenContext |= _index.TokenContext.forOfHead; + this.print(node.left); + this.space(); + this.word("of"); + this.space(); + this.print(node.right); + this.tokenChar(41); + this.printBlock(node.body); +} +function DoWhileStatement(node) { + this.word("do"); + this.space(); + this.print(node.body); + this.space(); + this.word("while"); + this.space(); + this.tokenChar(40); + this.print(node.test); + this.tokenChar(41); + this.semicolon(); +} +function printStatementAfterKeyword(printer, node) { + if (node) { + printer.space(); + printer.printTerminatorless(node); + } + printer.semicolon(); +} +function BreakStatement(node) { + this.word("break"); + printStatementAfterKeyword(this, node.label); +} +function ContinueStatement(node) { + this.word("continue"); + printStatementAfterKeyword(this, node.label); +} +function ReturnStatement(node) { + this.word("return"); + printStatementAfterKeyword(this, node.argument); +} +function ThrowStatement(node) { + this.word("throw"); + printStatementAfterKeyword(this, node.argument); +} +function LabeledStatement(node) { + this.print(node.label); + this.tokenChar(58); + this.space(); + this.print(node.body); +} +function TryStatement(node) { + this.word("try"); + this.space(); + this.print(node.block); + this.space(); + if (node.handlers) { + this.print(node.handlers[0]); + } else { + this.print(node.handler); + } + if (node.finalizer) { + this.space(); + this.word("finally"); + this.space(); + this.print(node.finalizer); + } +} +function CatchClause(node) { + this.word("catch"); + this.space(); + if (node.param) { + this.tokenChar(40); + this.print(node.param); + this.print(node.param.typeAnnotation); + this.tokenChar(41); + this.space(); + } + this.print(node.body); +} +function SwitchStatement(node) { + this.word("switch"); + this.space(); + this.tokenChar(40); + this.print(node.discriminant); + this.tokenChar(41); + this.space(); + this.tokenChar(123); + this.printSequence(node.cases, true); + this.rightBrace(node); +} +function SwitchCase(node) { + if (node.test) { + this.word("case"); + this.space(); + this.print(node.test); + this.tokenChar(58); + } else { + this.word("default"); + this.tokenChar(58); + } + if (node.consequent.length) { + this.newline(); + this.printSequence(node.consequent, true); + } +} +function DebuggerStatement() { + this.word("debugger"); + this.semicolon(); +} +function commaSeparatorWithNewline(occurrenceCount) { + this.tokenChar(44, occurrenceCount); + this.newline(); +} +function VariableDeclaration(node, parent) { + if (node.declare) { + this.word("declare"); + this.space(); + } + const { + kind + } = node; + switch (kind) { + case "await using": + this.word("await"); + this.space(); + case "using": + this.word("using", true); + break; + default: + this.word(kind); + } + this.space(); + let hasInits = false; + if (!isFor(parent)) { + for (const declar of node.declarations) { + if (declar.init) { + hasInits = true; + break; + } + } + } + this.printList(node.declarations, undefined, undefined, node.declarations.length > 1, hasInits ? commaSeparatorWithNewline : undefined); + if (parent != null) { + switch (parent.type) { + case "ForStatement": + if (parent.init === node) { + return; + } + break; + case "ForInStatement": + case "ForOfStatement": + if (parent.left === node) { + return; + } + } + } + this.semicolon(); +} +function VariableDeclarator(node) { + this.print(node.id); + if (node.definite) this.tokenChar(33); + this.print(node.id.typeAnnotation); + if (node.init) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.init); + } +} + +//# sourceMappingURL=statements.js.map diff --git a/node_modules/@babel/generator/lib/generators/statements.js.map b/node_modules/@babel/generator/lib/generators/statements.js.map new file mode 100644 index 0000000..b01021c --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/statements.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_index","isFor","isIfStatement","isStatement","WithStatement","node","word","space","token","print","object","printBlock","body","IfStatement","test","needsBlock","alternate","getLastStatement","consequent","newline","indent","printAndIndentOnComments","dedent","endsWith","statement","ForStatement","tokenContext","TokenContext","forInitHead","forInOrInitHeadAccumulate","init","normal","tokenChar","update","WhileStatement","ForInStatement","noIndentInnerCommentsHere","forInHead","left","right","ForOfStatement","await","forOfHead","DoWhileStatement","semicolon","printStatementAfterKeyword","printer","printTerminatorless","BreakStatement","label","ContinueStatement","ReturnStatement","argument","ThrowStatement","LabeledStatement","TryStatement","block","handlers","handler","finalizer","CatchClause","param","typeAnnotation","SwitchStatement","discriminant","printSequence","cases","rightBrace","SwitchCase","length","DebuggerStatement","commaSeparatorWithNewline","occurrenceCount","VariableDeclaration","parent","declare","kind","hasInits","declar","declarations","printList","undefined","type","VariableDeclarator","id","definite"],"sources":["../../src/generators/statements.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport { isFor, isIfStatement, isStatement } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport { TokenContext } from \"../node/index.ts\";\n\nexport function WithStatement(this: Printer, node: t.WithStatement) {\n this.word(\"with\");\n this.space();\n this.token(\"(\");\n this.print(node.object);\n this.token(\")\");\n this.printBlock(node.body);\n}\n\nexport function IfStatement(this: Printer, node: t.IfStatement) {\n this.word(\"if\");\n this.space();\n this.token(\"(\");\n this.print(node.test);\n this.token(\")\");\n this.space();\n\n const needsBlock =\n node.alternate && isIfStatement(getLastStatement(node.consequent));\n if (needsBlock) {\n this.token(\"{\");\n this.newline();\n this.indent();\n }\n\n this.printAndIndentOnComments(node.consequent);\n\n if (needsBlock) {\n this.dedent();\n this.newline();\n this.token(\"}\");\n }\n\n if (node.alternate) {\n if (this.endsWith(charCodes.rightCurlyBrace)) this.space();\n this.word(\"else\");\n this.space();\n this.printAndIndentOnComments(node.alternate);\n }\n}\n\n// Recursively get the last statement.\nfunction getLastStatement(statement: t.Statement): t.Statement {\n // @ts-expect-error: If statement.body is empty or not a Node, isStatement will return false\n const { body } = statement;\n if (isStatement(body) === false) {\n return statement;\n }\n\n return getLastStatement(body);\n}\n\nexport function ForStatement(this: Printer, node: t.ForStatement) {\n this.word(\"for\");\n this.space();\n this.token(\"(\");\n\n this.tokenContext |=\n TokenContext.forInitHead | TokenContext.forInOrInitHeadAccumulate;\n this.print(node.init);\n this.tokenContext = TokenContext.normal;\n\n this.token(\";\");\n\n if (node.test) {\n this.space();\n this.print(node.test);\n }\n this.tokenChar(charCodes.semicolon, 1);\n\n if (node.update) {\n this.space();\n this.print(node.update);\n }\n\n this.token(\")\");\n this.printBlock(node.body);\n}\n\nexport function WhileStatement(this: Printer, node: t.WhileStatement) {\n this.word(\"while\");\n this.space();\n this.token(\"(\");\n this.print(node.test);\n this.token(\")\");\n this.printBlock(node.body);\n}\n\nexport function ForInStatement(this: Printer, node: t.ForInStatement) {\n this.word(\"for\");\n this.space();\n this.noIndentInnerCommentsHere();\n this.token(\"(\");\n this.tokenContext |=\n TokenContext.forInHead | TokenContext.forInOrInitHeadAccumulate;\n this.print(node.left);\n this.tokenContext = TokenContext.normal;\n this.space();\n this.word(\"in\");\n this.space();\n this.print(node.right);\n this.token(\")\");\n this.printBlock(node.body);\n}\n\nexport function ForOfStatement(this: Printer, node: t.ForOfStatement) {\n this.word(\"for\");\n this.space();\n if (node.await) {\n this.word(\"await\");\n this.space();\n }\n this.noIndentInnerCommentsHere();\n this.token(\"(\");\n this.tokenContext |= TokenContext.forOfHead;\n this.print(node.left);\n this.space();\n this.word(\"of\");\n this.space();\n this.print(node.right);\n this.token(\")\");\n this.printBlock(node.body);\n}\n\nexport function DoWhileStatement(this: Printer, node: t.DoWhileStatement) {\n this.word(\"do\");\n this.space();\n this.print(node.body);\n this.space();\n this.word(\"while\");\n this.space();\n this.token(\"(\");\n this.print(node.test);\n this.token(\")\");\n this.semicolon();\n}\n\nfunction printStatementAfterKeyword(\n printer: Printer,\n node: t.Node | null | undefined,\n) {\n if (node) {\n printer.space();\n printer.printTerminatorless(node);\n }\n\n printer.semicolon();\n}\n\nexport function BreakStatement(this: Printer, node: t.ContinueStatement) {\n this.word(\"break\");\n printStatementAfterKeyword(this, node.label);\n}\n\nexport function ContinueStatement(this: Printer, node: t.ContinueStatement) {\n this.word(\"continue\");\n printStatementAfterKeyword(this, node.label);\n}\n\nexport function ReturnStatement(this: Printer, node: t.ReturnStatement) {\n this.word(\"return\");\n printStatementAfterKeyword(this, node.argument);\n}\n\nexport function ThrowStatement(this: Printer, node: t.ThrowStatement) {\n this.word(\"throw\");\n printStatementAfterKeyword(this, node.argument);\n}\n\nexport function LabeledStatement(this: Printer, node: t.LabeledStatement) {\n this.print(node.label);\n this.token(\":\");\n this.space();\n this.print(node.body);\n}\n\nexport function TryStatement(this: Printer, node: t.TryStatement) {\n this.word(\"try\");\n this.space();\n this.print(node.block);\n this.space();\n\n // Esprima bug puts the catch clause in a `handlers` array.\n // see https://code.google.com/p/esprima/issues/detail?id=433\n // We run into this from regenerator generated ast.\n // @ts-expect-error todo(flow->ts) should ast node type be updated to support this?\n if (node.handlers) {\n // @ts-expect-error todo(flow->ts) should ast node type be updated to support this?\n this.print(node.handlers[0]);\n } else {\n this.print(node.handler);\n }\n\n if (node.finalizer) {\n this.space();\n this.word(\"finally\");\n this.space();\n this.print(node.finalizer);\n }\n}\n\nexport function CatchClause(this: Printer, node: t.CatchClause) {\n this.word(\"catch\");\n this.space();\n if (node.param) {\n this.token(\"(\");\n this.print(node.param);\n this.print(node.param.typeAnnotation);\n this.token(\")\");\n this.space();\n }\n this.print(node.body);\n}\n\nexport function SwitchStatement(this: Printer, node: t.SwitchStatement) {\n this.word(\"switch\");\n this.space();\n this.token(\"(\");\n this.print(node.discriminant);\n this.token(\")\");\n this.space();\n this.token(\"{\");\n\n this.printSequence(node.cases, true);\n\n this.rightBrace(node);\n}\n\nexport function SwitchCase(this: Printer, node: t.SwitchCase) {\n if (node.test) {\n this.word(\"case\");\n this.space();\n this.print(node.test);\n this.token(\":\");\n } else {\n this.word(\"default\");\n this.token(\":\");\n }\n\n if (node.consequent.length) {\n this.newline();\n this.printSequence(node.consequent, true);\n }\n}\n\nexport function DebuggerStatement(this: Printer) {\n this.word(\"debugger\");\n this.semicolon();\n}\n\nfunction commaSeparatorWithNewline(this: Printer, occurrenceCount: number) {\n this.tokenChar(charCodes.comma, occurrenceCount);\n this.newline();\n}\n\nexport function VariableDeclaration(\n this: Printer,\n node: t.VariableDeclaration,\n parent: t.Node,\n) {\n if (node.declare) {\n // TS\n this.word(\"declare\");\n this.space();\n }\n\n const { kind } = node;\n switch (kind) {\n case \"await using\":\n this.word(\"await\");\n this.space();\n // fallthrough\n case \"using\":\n this.word(\"using\", true);\n break;\n default:\n this.word(kind);\n }\n this.space();\n\n let hasInits = false;\n // don't add whitespace to loop heads\n if (!isFor(parent)) {\n for (const declar of node.declarations) {\n if (declar.init) {\n // has an init so let's split it up over multiple lines\n hasInits = true;\n break;\n }\n }\n }\n\n //\n // use a pretty separator when we aren't in compact mode, have initializers and don't have retainLines on\n // this will format declarations like:\n //\n // let foo = \"bar\", bar = \"foo\";\n //\n // into\n //\n // let foo = \"bar\",\n // bar = \"foo\";\n //\n\n this.printList(\n node.declarations,\n undefined,\n undefined,\n node.declarations.length > 1,\n hasInits ? commaSeparatorWithNewline : undefined,\n );\n\n if (parent != null) {\n switch (parent.type) {\n case \"ForStatement\":\n if (parent.init === node) {\n return;\n }\n break;\n case \"ForInStatement\":\n case \"ForOfStatement\":\n if (parent.left === node) {\n return;\n }\n }\n }\n\n this.semicolon();\n}\n\nexport function VariableDeclarator(this: Printer, node: t.VariableDeclarator) {\n this.print(node.id);\n if (node.definite) this.token(\"!\"); // TS\n // @ts-ignore(Babel 7 vs Babel 8) Property 'typeAnnotation' does not exist on type 'MemberExpression'.\n this.print(node.id.typeAnnotation);\n if (node.init) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.init);\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/template-literals.js b/node_modules/@babel/generator/lib/generators/template-literals.js new file mode 100644 index 0000000..b0c029c --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/template-literals.js @@ -0,0 +1,38 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TaggedTemplateExpression = TaggedTemplateExpression; +exports.TemplateElement = TemplateElement; +exports.TemplateLiteral = TemplateLiteral; +exports._printTemplate = _printTemplate; +function TaggedTemplateExpression(node) { + this.print(node.tag); + this.print(node.typeParameters); + this.print(node.quasi); +} +function TemplateElement() { + throw new Error("TemplateElement printing is handled in TemplateLiteral"); +} +function _printTemplate(node, substitutions) { + const quasis = node.quasis; + let partRaw = "`"; + for (let i = 0; i < quasis.length - 1; i++) { + partRaw += quasis[i].value.raw; + this.token(partRaw + "${", true); + this.print(substitutions[i]); + partRaw = "}"; + if (this.tokenMap) { + const token = this.tokenMap.findMatching(node, "}", i); + if (token) this._catchUpTo(token.loc.start); + } + } + partRaw += quasis[quasis.length - 1].value.raw; + this.token(partRaw + "`", true); +} +function TemplateLiteral(node) { + _printTemplate.call(this, node, node.expressions); +} + +//# sourceMappingURL=template-literals.js.map diff --git a/node_modules/@babel/generator/lib/generators/template-literals.js.map b/node_modules/@babel/generator/lib/generators/template-literals.js.map new file mode 100644 index 0000000..59fa221 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/template-literals.js.map @@ -0,0 +1 @@ +{"version":3,"names":["TaggedTemplateExpression","node","print","tag","typeParameters","quasi","TemplateElement","Error","_printTemplate","substitutions","quasis","partRaw","i","length","value","raw","token","tokenMap","findMatching","_catchUpTo","loc","start","TemplateLiteral","call","expressions"],"sources":["../../src/generators/template-literals.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function TaggedTemplateExpression(\n this: Printer,\n node: t.TaggedTemplateExpression,\n) {\n this.print(node.tag);\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.typeArguments);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n this.print(node.typeParameters);\n }\n this.print(node.quasi);\n}\n\nexport function TemplateElement(this: Printer) {\n throw new Error(\"TemplateElement printing is handled in TemplateLiteral\");\n}\n\nexport type TemplateLiteralBase = t.Node & {\n quasis: t.TemplateElement[];\n};\n\nexport function _printTemplate(\n this: Printer,\n node: TemplateLiteralBase,\n substitutions: T[],\n) {\n const quasis = node.quasis;\n let partRaw = \"`\";\n for (let i = 0; i < quasis.length - 1; i++) {\n partRaw += quasis[i].value.raw;\n this.token(partRaw + \"${\", true);\n this.print(substitutions[i]);\n partRaw = \"}\";\n\n // In Babel 7 we have individual tokens for ${ and }, so the automatic\n // catchup logic does not work. Manually look for those tokens.\n if (!process.env.BABEL_8_BREAKING && this.tokenMap) {\n const token = this.tokenMap.findMatching(node, \"}\", i);\n if (token) this._catchUpTo(token.loc.start);\n }\n }\n partRaw += quasis[quasis.length - 1].value.raw;\n this.token(partRaw + \"`\", true);\n}\n\nexport function TemplateLiteral(this: Printer, node: t.TemplateLiteral) {\n _printTemplate.call(this, node, node.expressions);\n}\n"],"mappings":";;;;;;;;;AAGO,SAASA,wBAAwBA,CAEtCC,IAAgC,EAChC;EACA,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,GAAG,CAAC;EAMlB,IAAI,CAACD,KAAK,CAACD,IAAI,CAACG,cAAc,CAAC;EAEjC,IAAI,CAACF,KAAK,CAACD,IAAI,CAACI,KAAK,CAAC;AACxB;AAEO,SAASC,eAAeA,CAAA,EAAgB;EAC7C,MAAM,IAAIC,KAAK,CAAC,wDAAwD,CAAC;AAC3E;AAMO,SAASC,cAAcA,CAE5BP,IAAyB,EACzBQ,aAAkB,EAClB;EACA,MAAMC,MAAM,GAAGT,IAAI,CAACS,MAAM;EAC1B,IAAIC,OAAO,GAAG,GAAG;EACjB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACG,MAAM,GAAG,CAAC,EAAED,CAAC,EAAE,EAAE;IAC1CD,OAAO,IAAID,MAAM,CAACE,CAAC,CAAC,CAACE,KAAK,CAACC,GAAG;IAC9B,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,IAAI,EAAE,IAAI,CAAC;IAChC,IAAI,CAACT,KAAK,CAACO,aAAa,CAACG,CAAC,CAAC,CAAC;IAC5BD,OAAO,GAAG,GAAG;IAIb,IAAqC,IAAI,CAACM,QAAQ,EAAE;MAClD,MAAMD,KAAK,GAAG,IAAI,CAACC,QAAQ,CAACC,YAAY,CAACjB,IAAI,EAAE,GAAG,EAAEW,CAAC,CAAC;MACtD,IAAII,KAAK,EAAE,IAAI,CAACG,UAAU,CAACH,KAAK,CAACI,GAAG,CAACC,KAAK,CAAC;IAC7C;EACF;EACAV,OAAO,IAAID,MAAM,CAACA,MAAM,CAACG,MAAM,GAAG,CAAC,CAAC,CAACC,KAAK,CAACC,GAAG;EAC9C,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC;AACjC;AAEO,SAASW,eAAeA,CAAgBrB,IAAuB,EAAE;EACtEO,cAAc,CAACe,IAAI,CAAC,IAAI,EAAEtB,IAAI,EAAEA,IAAI,CAACuB,WAAW,CAAC;AACnD","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/types.js b/node_modules/@babel/generator/lib/generators/types.js new file mode 100644 index 0000000..cfe9618 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/types.js @@ -0,0 +1,183 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ArgumentPlaceholder = ArgumentPlaceholder; +exports.ArrayPattern = exports.ArrayExpression = ArrayExpression; +exports.BigIntLiteral = BigIntLiteral; +exports.BooleanLiteral = BooleanLiteral; +exports.Identifier = Identifier; +exports.NullLiteral = NullLiteral; +exports.NumericLiteral = NumericLiteral; +exports.ObjectPattern = exports.ObjectExpression = ObjectExpression; +exports.ObjectMethod = ObjectMethod; +exports.ObjectProperty = ObjectProperty; +exports.PipelineBareFunction = PipelineBareFunction; +exports.PipelinePrimaryTopicReference = PipelinePrimaryTopicReference; +exports.PipelineTopicExpression = PipelineTopicExpression; +exports.RegExpLiteral = RegExpLiteral; +exports.SpreadElement = exports.RestElement = RestElement; +exports.StringLiteral = StringLiteral; +exports.TopicReference = TopicReference; +exports.VoidPattern = VoidPattern; +exports._getRawIdentifier = _getRawIdentifier; +var _t = require("@babel/types"); +var _jsesc = require("jsesc"); +var _methods = require("./methods.js"); +const { + isAssignmentPattern, + isIdentifier +} = _t; +let lastRawIdentResult = ""; +function _getRawIdentifier(node) { + const { + name + } = node; + const token = this.tokenMap.find(node, tok => tok.value === name); + if (token) { + lastRawIdentResult = this._originalCode.slice(token.start, token.end); + return lastRawIdentResult; + } + return lastRawIdentResult = node.name; +} +function Identifier(node) { + if (this._buf._map) { + var _node$loc; + this.sourceIdentifierName(((_node$loc = node.loc) == null ? void 0 : _node$loc.identifierName) || node.name); + } + this.word(this.tokenMap ? lastRawIdentResult : node.name); +} +function ArgumentPlaceholder() { + this.tokenChar(63); +} +function RestElement(node) { + this.token("..."); + this.print(node.argument); +} +function ObjectExpression(node) { + const props = node.properties; + this.tokenChar(123); + if (props.length) { + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.space(); + this.printList(props, this.shouldPrintTrailingComma("}"), true, true, undefined, true); + this.space(); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + } + this.rightBrace(node); +} +function ObjectMethod(node) { + this.printJoin(node.decorators); + _methods._methodHead.call(this, node); + this.space(); + this.print(node.body); +} +function ObjectProperty(node) { + this.printJoin(node.decorators); + if (node.computed) { + this.tokenChar(91); + this.print(node.key); + this.tokenChar(93); + } else { + if (isAssignmentPattern(node.value) && isIdentifier(node.key) && node.key.name === node.value.left.name) { + this.print(node.value); + return; + } + this.print(node.key); + if (node.shorthand && isIdentifier(node.key) && isIdentifier(node.value) && node.key.name === node.value.name) { + return; + } + } + this.tokenChar(58); + this.space(); + this.print(node.value); +} +function ArrayExpression(node) { + const elems = node.elements; + const len = elems.length; + this.tokenChar(91); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + for (let i = 0; i < elems.length; i++) { + const elem = elems[i]; + if (elem) { + if (i > 0) this.space(); + this.print(elem, undefined, true); + if (i < len - 1 || this.shouldPrintTrailingComma("]")) { + this.tokenChar(44, i); + } + } else { + this.tokenChar(44, i); + } + } + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.tokenChar(93); +} +function RegExpLiteral(node) { + this.word(`/${node.pattern}/${node.flags}`, false); +} +function BooleanLiteral(node) { + this.word(node.value ? "true" : "false"); +} +function NullLiteral() { + this.word("null"); +} +function NumericLiteral(node) { + const raw = this.getPossibleRaw(node); + const opts = this.format.jsescOption; + const value = node.value; + const str = value + ""; + if (opts.numbers) { + this.number(_jsesc(value, opts), value); + } else if (raw == null) { + this.number(str, value); + } else if (this.format.minified) { + this.number(raw.length < str.length ? raw : str, value); + } else { + this.number(raw, value); + } +} +function StringLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.token(raw); + return; + } + const val = _jsesc(node.value, this.format.jsescOption); + this.token(val); +} +function BigIntLiteral(node) { + const raw = this.getPossibleRaw(node); + if (!this.format.minified && raw !== undefined) { + this.word(raw); + return; + } + this.word(node.value + "n"); +} +const validTopicTokenSet = new Set(["^^", "@@", "^", "%", "#"]); +function TopicReference() { + const { + topicToken + } = this.format; + if (validTopicTokenSet.has(topicToken)) { + this.token(topicToken); + } else { + const givenTopicTokenJSON = JSON.stringify(topicToken); + const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v)); + throw new Error(`The "topicToken" generator option must be one of ` + `${validTopics.join(", ")} (${givenTopicTokenJSON} received instead).`); + } +} +function PipelineTopicExpression(node) { + this.print(node.expression); +} +function PipelineBareFunction(node) { + this.print(node.callee); +} +function PipelinePrimaryTopicReference() { + this.tokenChar(35); +} +function VoidPattern() { + this.word("void"); +} + +//# sourceMappingURL=types.js.map diff --git a/node_modules/@babel/generator/lib/generators/types.js.map b/node_modules/@babel/generator/lib/generators/types.js.map new file mode 100644 index 0000000..9f27ab1 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/types.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_jsesc","_methods","isAssignmentPattern","isIdentifier","lastRawIdentResult","_getRawIdentifier","node","name","token","tokenMap","find","tok","value","_originalCode","slice","start","end","Identifier","_buf","_map","_node$loc","sourceIdentifierName","loc","identifierName","word","ArgumentPlaceholder","RestElement","print","argument","ObjectExpression","props","properties","length","oldNoLineTerminatorAfterNode","enterDelimited","space","printList","shouldPrintTrailingComma","undefined","_noLineTerminatorAfterNode","rightBrace","ObjectMethod","printJoin","decorators","_methodHead","call","body","ObjectProperty","computed","key","left","shorthand","ArrayExpression","elems","elements","len","i","elem","tokenChar","RegExpLiteral","pattern","flags","BooleanLiteral","NullLiteral","NumericLiteral","raw","getPossibleRaw","opts","format","jsescOption","str","numbers","number","jsesc","minified","StringLiteral","val","BigIntLiteral","validTopicTokenSet","Set","TopicReference","topicToken","has","givenTopicTokenJSON","JSON","stringify","validTopics","Array","from","v","Error","join","PipelineTopicExpression","expression","PipelineBareFunction","callee","PipelinePrimaryTopicReference","VoidPattern"],"sources":["../../src/generators/types.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport { isAssignmentPattern, isIdentifier } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport jsesc from \"jsesc\";\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport { _methodHead } from \"./methods.ts\";\n\nlet lastRawIdentResult: string = \"\";\nexport function _getRawIdentifier(this: Printer, node: t.Identifier) {\n const { name } = node;\n const token = this.tokenMap!.find(node, tok => tok.value === name);\n if (token) {\n lastRawIdentResult = this._originalCode!.slice(token.start, token.end);\n return lastRawIdentResult;\n }\n return (lastRawIdentResult = node.name);\n}\n\nexport function Identifier(this: Printer, node: t.Identifier) {\n if (this._buf._map) {\n this.sourceIdentifierName(node.loc?.identifierName || node.name);\n }\n\n this.word(this.tokenMap ? lastRawIdentResult : node.name);\n}\n\nexport function ArgumentPlaceholder(this: Printer) {\n this.token(\"?\");\n}\n\nexport function RestElement(this: Printer, node: t.RestElement) {\n this.token(\"...\");\n this.print(node.argument);\n}\n\nexport { RestElement as SpreadElement };\n\nexport function ObjectExpression(this: Printer, node: t.ObjectExpression) {\n const props = node.properties;\n\n this.token(\"{\");\n\n if (props.length) {\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.space();\n this.printList(\n props,\n this.shouldPrintTrailingComma(\"}\"),\n true,\n true,\n undefined,\n true,\n );\n this.space();\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n }\n\n this.rightBrace(node);\n}\n\nexport { ObjectExpression as ObjectPattern };\n\nexport function ObjectMethod(this: Printer, node: t.ObjectMethod) {\n this.printJoin(node.decorators);\n _methodHead.call(this, node);\n this.space();\n this.print(node.body);\n}\n\nexport function ObjectProperty(this: Printer, node: t.ObjectProperty) {\n this.printJoin(node.decorators);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key);\n this.token(\"]\");\n } else {\n // print `({ foo: foo = 5 } = {})` as `({ foo = 5 } = {});`\n if (\n isAssignmentPattern(node.value) &&\n isIdentifier(node.key) &&\n // @ts-expect-error todo(flow->ts) `.name` does not exist on some types in union\n node.key.name === node.value.left.name\n ) {\n this.print(node.value);\n return;\n }\n\n this.print(node.key);\n\n // shorthand!\n if (\n node.shorthand &&\n isIdentifier(node.key) &&\n isIdentifier(node.value) &&\n node.key.name === node.value.name\n ) {\n return;\n }\n }\n\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ArrayExpression(this: Printer, node: t.ArrayExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n this.token(\"[\");\n\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem, undefined, true);\n if (i < len - 1 || this.shouldPrintTrailingComma(\"]\")) {\n this.tokenChar(charCodes.comma, i);\n }\n } else {\n // If the array expression ends with a hole, that hole\n // will be ignored by the interpreter, but if it ends with\n // two (or more) holes, we need to write out two (or more)\n // commas so that the resulting code is interpreted with\n // both (all) of the holes.\n this.tokenChar(charCodes.comma, i);\n }\n }\n\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n\n this.token(\"]\");\n}\n\nexport { ArrayExpression as ArrayPattern };\n\nexport function RegExpLiteral(this: Printer, node: t.RegExpLiteral) {\n this.word(`/${node.pattern}/${node.flags}`, false);\n}\n\nexport function BooleanLiteral(this: Printer, node: t.BooleanLiteral) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteral(this: Printer) {\n this.word(\"null\");\n}\n\nexport function NumericLiteral(this: Printer, node: t.NumericLiteral) {\n const raw = this.getPossibleRaw(node);\n const opts = this.format.jsescOption;\n const value = node.value;\n const str = value + \"\";\n if (opts.numbers) {\n this.number(jsesc(value, opts), value);\n } else if (raw == null) {\n this.number(str, value); // normalize\n } else if (this.format.minified) {\n this.number(raw.length < str.length ? raw : str, value);\n } else {\n this.number(raw, value);\n }\n}\n\nexport function StringLiteral(this: Printer, node: t.StringLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const val = jsesc(node.value, this.format.jsescOption);\n\n this.token(val);\n}\n\nexport function BigIntLiteral(this: Printer, node: t.BigIntLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"n\");\n}\n\n// Hack pipe operator\nconst validTopicTokenSet = new Set([\n \"^^\",\n \"@@\",\n \"^\",\n \"%\",\n \"#\",\n]);\nexport function TopicReference(this: Printer) {\n const { topicToken } = this.format;\n\n if (validTopicTokenSet.has(topicToken)) {\n this.token(topicToken!);\n } else {\n const givenTopicTokenJSON = JSON.stringify(topicToken);\n const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v));\n throw new Error(\n `The \"topicToken\" generator option must be one of ` +\n `${validTopics.join(\", \")} (${givenTopicTokenJSON} received instead).`,\n );\n }\n}\n\n// Smart-mix pipe operator\nexport function PipelineTopicExpression(\n this: Printer,\n node: t.PipelineTopicExpression,\n) {\n this.print(node.expression);\n}\n\nexport function PipelineBareFunction(\n this: Printer,\n node: t.PipelineBareFunction,\n) {\n this.print(node.callee);\n}\n\nexport function PipelinePrimaryTopicReference(this: Printer) {\n this.token(\"#\");\n}\n\n// discard binding\nexport function VoidPattern(this: Printer) {\n this.word(\"void\");\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/generators/typescript.js b/node_modules/@babel/generator/lib/generators/typescript.js new file mode 100644 index 0000000..ca9edb8 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/typescript.js @@ -0,0 +1,726 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TSAnyKeyword = TSAnyKeyword; +exports.TSArrayType = TSArrayType; +exports.TSAsExpression = TSAsExpression; +exports.TSBigIntKeyword = TSBigIntKeyword; +exports.TSBooleanKeyword = TSBooleanKeyword; +exports.TSCallSignatureDeclaration = TSCallSignatureDeclaration; +exports.TSInterfaceHeritage = exports.TSClassImplements = TSClassImplements; +exports.TSConditionalType = TSConditionalType; +exports.TSConstructSignatureDeclaration = TSConstructSignatureDeclaration; +exports.TSConstructorType = TSConstructorType; +exports.TSDeclareFunction = TSDeclareFunction; +exports.TSDeclareMethod = TSDeclareMethod; +exports.TSEnumBody = TSEnumBody; +exports.TSEnumDeclaration = TSEnumDeclaration; +exports.TSEnumMember = TSEnumMember; +exports.TSExportAssignment = TSExportAssignment; +exports.TSExternalModuleReference = TSExternalModuleReference; +exports.TSFunctionType = TSFunctionType; +exports.TSImportEqualsDeclaration = TSImportEqualsDeclaration; +exports.TSImportType = TSImportType; +exports.TSIndexSignature = TSIndexSignature; +exports.TSIndexedAccessType = TSIndexedAccessType; +exports.TSInferType = TSInferType; +exports.TSInstantiationExpression = TSInstantiationExpression; +exports.TSInterfaceBody = TSInterfaceBody; +exports.TSInterfaceDeclaration = TSInterfaceDeclaration; +exports.TSIntersectionType = TSIntersectionType; +exports.TSIntrinsicKeyword = TSIntrinsicKeyword; +exports.TSLiteralType = TSLiteralType; +exports.TSMappedType = TSMappedType; +exports.TSMethodSignature = TSMethodSignature; +exports.TSModuleBlock = TSModuleBlock; +exports.TSModuleDeclaration = TSModuleDeclaration; +exports.TSNamedTupleMember = TSNamedTupleMember; +exports.TSNamespaceExportDeclaration = TSNamespaceExportDeclaration; +exports.TSNeverKeyword = TSNeverKeyword; +exports.TSNonNullExpression = TSNonNullExpression; +exports.TSNullKeyword = TSNullKeyword; +exports.TSNumberKeyword = TSNumberKeyword; +exports.TSObjectKeyword = TSObjectKeyword; +exports.TSOptionalType = TSOptionalType; +exports.TSParameterProperty = TSParameterProperty; +exports.TSParenthesizedType = TSParenthesizedType; +exports.TSPropertySignature = TSPropertySignature; +exports.TSQualifiedName = TSQualifiedName; +exports.TSRestType = TSRestType; +exports.TSSatisfiesExpression = TSSatisfiesExpression; +exports.TSStringKeyword = TSStringKeyword; +exports.TSSymbolKeyword = TSSymbolKeyword; +exports.TSTemplateLiteralType = TSTemplateLiteralType; +exports.TSThisType = TSThisType; +exports.TSTupleType = TSTupleType; +exports.TSTypeAliasDeclaration = TSTypeAliasDeclaration; +exports.TSTypeAnnotation = TSTypeAnnotation; +exports.TSTypeAssertion = TSTypeAssertion; +exports.TSTypeLiteral = TSTypeLiteral; +exports.TSTypeOperator = TSTypeOperator; +exports.TSTypeParameter = TSTypeParameter; +exports.TSTypeParameterDeclaration = exports.TSTypeParameterInstantiation = TSTypeParameterInstantiation; +exports.TSTypePredicate = TSTypePredicate; +exports.TSTypeQuery = TSTypeQuery; +exports.TSTypeReference = TSTypeReference; +exports.TSUndefinedKeyword = TSUndefinedKeyword; +exports.TSUnionType = TSUnionType; +exports.TSUnknownKeyword = TSUnknownKeyword; +exports.TSVoidKeyword = TSVoidKeyword; +exports._tsPrintClassMemberModifiers = _tsPrintClassMemberModifiers; +var _methods = require("./methods.js"); +var _classes = require("./classes.js"); +var _templateLiterals = require("./template-literals.js"); +function TSTypeAnnotation(node, parent) { + this.token((parent.type === "TSFunctionType" || parent.type === "TSConstructorType") && parent.typeAnnotation === node ? "=>" : ":"); + this.space(); + if (node.optional) this.tokenChar(63); + this.print(node.typeAnnotation); +} +function TSTypeParameterInstantiation(node, parent) { + this.tokenChar(60); + let printTrailingSeparator = parent.type === "ArrowFunctionExpression" && node.params.length === 1; + if (this.tokenMap && node.start != null && node.end != null) { + printTrailingSeparator && (printTrailingSeparator = !!this.tokenMap.find(node, t => this.tokenMap.matchesOriginal(t, ","))); + printTrailingSeparator || (printTrailingSeparator = this.shouldPrintTrailingComma(">")); + } + this.printList(node.params, printTrailingSeparator); + this.tokenChar(62); +} +function TSTypeParameter(node) { + if (node.const) { + this.word("const"); + this.space(); + } + if (node.in) { + this.word("in"); + this.space(); + } + if (node.out) { + this.word("out"); + this.space(); + } + this.word(node.name); + if (node.constraint) { + this.space(); + this.word("extends"); + this.space(); + this.print(node.constraint); + } + if (node.default) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.default); + } +} +function TSParameterProperty(node) { + if (node.accessibility) { + this.word(node.accessibility); + this.space(); + } + if (node.readonly) { + this.word("readonly"); + this.space(); + } + _methods._param.call(this, node.parameter); +} +function TSDeclareFunction(node, parent) { + if (node.declare) { + this.word("declare"); + this.space(); + } + _methods._functionHead.call(this, node, parent, false); + this.semicolon(); +} +function TSDeclareMethod(node) { + _classes._classMethodHead.call(this, node); + this.semicolon(); +} +function TSQualifiedName(node) { + this.print(node.left); + this.tokenChar(46); + this.print(node.right); +} +function TSCallSignatureDeclaration(node) { + tsPrintSignatureDeclarationBase.call(this, node); + maybePrintTrailingCommaOrSemicolon(this, node); +} +function maybePrintTrailingCommaOrSemicolon(printer, node) { + if (!printer.tokenMap || !node.start || !node.end) { + printer.semicolon(); + return; + } + if (printer.tokenMap.endMatches(node, ",")) { + printer.token(","); + } else if (printer.tokenMap.endMatches(node, ";")) { + printer.semicolon(); + } +} +function TSConstructSignatureDeclaration(node) { + this.word("new"); + this.space(); + tsPrintSignatureDeclarationBase.call(this, node); + maybePrintTrailingCommaOrSemicolon(this, node); +} +function TSPropertySignature(node) { + const { + readonly + } = node; + if (readonly) { + this.word("readonly"); + this.space(); + } + tsPrintPropertyOrMethodName.call(this, node); + this.print(node.typeAnnotation); + maybePrintTrailingCommaOrSemicolon(this, node); +} +function tsPrintPropertyOrMethodName(node) { + if (node.computed) { + this.tokenChar(91); + } + this.print(node.key); + if (node.computed) { + this.tokenChar(93); + } + if (node.optional) { + this.tokenChar(63); + } +} +function TSMethodSignature(node) { + const { + kind + } = node; + if (kind === "set" || kind === "get") { + this.word(kind); + this.space(); + } + tsPrintPropertyOrMethodName.call(this, node); + tsPrintSignatureDeclarationBase.call(this, node); + maybePrintTrailingCommaOrSemicolon(this, node); +} +function TSIndexSignature(node) { + const { + readonly, + static: isStatic + } = node; + if (isStatic) { + this.word("static"); + this.space(); + } + if (readonly) { + this.word("readonly"); + this.space(); + } + this.tokenChar(91); + _methods._parameters.call(this, node.parameters, 93); + this.print(node.typeAnnotation); + maybePrintTrailingCommaOrSemicolon(this, node); +} +function TSAnyKeyword() { + this.word("any"); +} +function TSBigIntKeyword() { + this.word("bigint"); +} +function TSUnknownKeyword() { + this.word("unknown"); +} +function TSNumberKeyword() { + this.word("number"); +} +function TSObjectKeyword() { + this.word("object"); +} +function TSBooleanKeyword() { + this.word("boolean"); +} +function TSStringKeyword() { + this.word("string"); +} +function TSSymbolKeyword() { + this.word("symbol"); +} +function TSVoidKeyword() { + this.word("void"); +} +function TSUndefinedKeyword() { + this.word("undefined"); +} +function TSNullKeyword() { + this.word("null"); +} +function TSNeverKeyword() { + this.word("never"); +} +function TSIntrinsicKeyword() { + this.word("intrinsic"); +} +function TSThisType() { + this.word("this"); +} +function TSFunctionType(node) { + tsPrintFunctionOrConstructorType.call(this, node); +} +function TSConstructorType(node) { + if (node.abstract) { + this.word("abstract"); + this.space(); + } + this.word("new"); + this.space(); + tsPrintFunctionOrConstructorType.call(this, node); +} +function tsPrintFunctionOrConstructorType(node) { + const { + typeParameters + } = node; + const parameters = node.parameters; + this.print(typeParameters); + this.tokenChar(40); + _methods._parameters.call(this, parameters, 41); + this.space(); + const returnType = node.typeAnnotation; + this.print(returnType); +} +function TSTypeReference(node) { + const typeArguments = node.typeParameters; + this.print(node.typeName, !!typeArguments); + this.print(typeArguments); +} +function TSTypePredicate(node) { + if (node.asserts) { + this.word("asserts"); + this.space(); + } + this.print(node.parameterName); + if (node.typeAnnotation) { + this.space(); + this.word("is"); + this.space(); + this.print(node.typeAnnotation.typeAnnotation); + } +} +function TSTypeQuery(node) { + this.word("typeof"); + this.space(); + this.print(node.exprName); + const typeArguments = node.typeParameters; + if (typeArguments) { + this.print(typeArguments); + } +} +function TSTypeLiteral(node) { + printBraced(this, node, () => this.printJoin(node.members, true, true, undefined, undefined, true)); +} +function TSArrayType(node) { + this.print(node.elementType, true); + this.tokenChar(91); + this.tokenChar(93); +} +function TSTupleType(node) { + this.tokenChar(91); + this.printList(node.elementTypes, this.shouldPrintTrailingComma("]")); + this.tokenChar(93); +} +function TSOptionalType(node) { + this.print(node.typeAnnotation); + this.tokenChar(63); +} +function TSRestType(node) { + this.token("..."); + this.print(node.typeAnnotation); +} +function TSNamedTupleMember(node) { + this.print(node.label); + if (node.optional) this.tokenChar(63); + this.tokenChar(58); + this.space(); + this.print(node.elementType); +} +function TSUnionType(node) { + tsPrintUnionOrIntersectionType(this, node, "|"); +} +function TSIntersectionType(node) { + tsPrintUnionOrIntersectionType(this, node, "&"); +} +function tsPrintUnionOrIntersectionType(printer, node, sep) { + var _printer$tokenMap; + let hasLeadingToken = 0; + if ((_printer$tokenMap = printer.tokenMap) != null && _printer$tokenMap.startMatches(node, sep)) { + hasLeadingToken = 1; + printer.token(sep); + } + printer.printJoin(node.types, undefined, undefined, function (i) { + this.space(); + this.token(sep, undefined, i + hasLeadingToken); + this.space(); + }); +} +function TSConditionalType(node) { + this.print(node.checkType); + this.space(); + this.word("extends"); + this.space(); + this.print(node.extendsType); + this.space(); + this.tokenChar(63); + this.space(); + this.print(node.trueType); + this.space(); + this.tokenChar(58); + this.space(); + this.print(node.falseType); +} +function TSInferType(node) { + this.word("infer"); + this.print(node.typeParameter); +} +function TSParenthesizedType(node) { + this.tokenChar(40); + this.print(node.typeAnnotation); + this.tokenChar(41); +} +function TSTypeOperator(node) { + this.word(node.operator); + this.space(); + this.print(node.typeAnnotation); +} +function TSIndexedAccessType(node) { + this.print(node.objectType, true); + this.tokenChar(91); + this.print(node.indexType); + this.tokenChar(93); +} +function TSMappedType(node) { + const { + nameType, + optional, + readonly, + typeAnnotation + } = node; + this.tokenChar(123); + const oldNoLineTerminatorAfterNode = this.enterDelimited(); + this.space(); + if (readonly) { + tokenIfPlusMinus(this, readonly); + this.word("readonly"); + this.space(); + } + this.tokenChar(91); + this.word(node.typeParameter.name); + this.space(); + this.word("in"); + this.space(); + this.print(node.typeParameter.constraint, undefined, true); + if (nameType) { + this.space(); + this.word("as"); + this.space(); + this.print(nameType, undefined, true); + } + this.tokenChar(93); + if (optional) { + tokenIfPlusMinus(this, optional); + this.tokenChar(63); + } + if (typeAnnotation) { + this.tokenChar(58); + this.space(); + this.print(typeAnnotation, undefined, true); + } + this.space(); + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + this.tokenChar(125); +} +function tokenIfPlusMinus(self, tok) { + if (tok !== true) { + self.token(tok); + } +} +function TSTemplateLiteralType(node) { + _templateLiterals._printTemplate.call(this, node, node.types); +} +function TSLiteralType(node) { + this.print(node.literal); +} +function TSClassImplements(node) { + this.print(node.expression); + this.print(node.typeArguments); +} +function TSInterfaceDeclaration(node) { + const { + declare, + id, + typeParameters, + extends: extendz, + body + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + this.word("interface"); + this.space(); + this.print(id); + this.print(typeParameters); + if (extendz != null && extendz.length) { + this.space(); + this.word("extends"); + this.space(); + this.printList(extendz); + } + this.space(); + this.print(body); +} +function TSInterfaceBody(node) { + printBraced(this, node, () => this.printJoin(node.body, true, true, undefined, undefined, true)); +} +function TSTypeAliasDeclaration(node) { + const { + declare, + id, + typeParameters, + typeAnnotation + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + this.word("type"); + this.space(); + this.print(id); + this.print(typeParameters); + this.space(); + this.tokenChar(61); + this.space(); + this.print(typeAnnotation); + this.semicolon(); +} +function TSAsExpression(node) { + const { + expression, + typeAnnotation + } = node; + this.print(expression, true); + this.space(); + this.word("as"); + this.space(); + this.print(typeAnnotation); +} +function TSSatisfiesExpression(node) { + const { + expression, + typeAnnotation + } = node; + this.print(expression, true); + this.space(); + this.word("satisfies"); + this.space(); + this.print(typeAnnotation); +} +function TSTypeAssertion(node) { + const { + typeAnnotation, + expression + } = node; + this.tokenChar(60); + this.print(typeAnnotation); + this.tokenChar(62); + this.space(); + this.print(expression); +} +function TSInstantiationExpression(node) { + this.print(node.expression); + this.print(node.typeParameters); +} +function TSEnumDeclaration(node) { + const { + declare, + const: isConst, + id + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + if (isConst) { + this.word("const"); + this.space(); + } + this.word("enum"); + this.space(); + this.print(id); + this.space(); + TSEnumBody.call(this, node); +} +function TSEnumBody(node) { + printBraced(this, node, () => { + var _this$shouldPrintTrai; + return this.printList(node.members, (_this$shouldPrintTrai = this.shouldPrintTrailingComma("}")) != null ? _this$shouldPrintTrai : true, true, true, undefined, true); + }); +} +function TSEnumMember(node) { + const { + id, + initializer + } = node; + this.print(id); + if (initializer) { + this.space(); + this.tokenChar(61); + this.space(); + this.print(initializer); + } +} +function TSModuleDeclaration(node) { + const { + declare, + id, + kind + } = node; + if (declare) { + this.word("declare"); + this.space(); + } + if (!node.global) { + this.word(kind != null ? kind : id.type === "Identifier" ? "namespace" : "module"); + this.space(); + } + this.print(id); + if (!node.body) { + this.semicolon(); + return; + } + let body = node.body; + while (body.type === "TSModuleDeclaration") { + this.tokenChar(46); + this.print(body.id); + body = body.body; + } + this.space(); + this.print(body); +} +function TSModuleBlock(node) { + printBraced(this, node, () => this.printSequence(node.body, true, true)); +} +function TSImportType(node) { + const { + qualifier, + options + } = node; + this.word("import"); + this.tokenChar(40); + this.print(node.argument); + if (options) { + this.tokenChar(44); + this.print(options); + } + this.tokenChar(41); + if (qualifier) { + this.tokenChar(46); + this.print(qualifier); + } + const typeArguments = node.typeParameters; + if (typeArguments) { + this.print(typeArguments); + } +} +function TSImportEqualsDeclaration(node) { + const { + id, + moduleReference + } = node; + if (node.isExport) { + this.word("export"); + this.space(); + } + this.word("import"); + this.space(); + this.print(id); + this.space(); + this.tokenChar(61); + this.space(); + this.print(moduleReference); + this.semicolon(); +} +function TSExternalModuleReference(node) { + this.token("require("); + this.print(node.expression); + this.tokenChar(41); +} +function TSNonNullExpression(node) { + this.print(node.expression); + this.tokenChar(33); + this.setLastChar(33); +} +function TSExportAssignment(node) { + this.word("export"); + this.space(); + this.tokenChar(61); + this.space(); + this.print(node.expression); + this.semicolon(); +} +function TSNamespaceExportDeclaration(node) { + this.word("export"); + this.space(); + this.word("as"); + this.space(); + this.word("namespace"); + this.space(); + this.print(node.id); + this.semicolon(); +} +function tsPrintSignatureDeclarationBase(node) { + const { + typeParameters + } = node; + const parameters = node.parameters; + this.print(typeParameters); + this.tokenChar(40); + _methods._parameters.call(this, parameters, 41); + const returnType = node.typeAnnotation; + this.print(returnType); +} +function _tsPrintClassMemberModifiers(node) { + const isPrivateField = node.type === "ClassPrivateProperty"; + const isPublicField = node.type === "ClassAccessorProperty" || node.type === "ClassProperty"; + printModifiersList(this, node, [isPublicField && node.declare && "declare", !isPrivateField && node.accessibility]); + if (node.static) { + this.word("static"); + this.space(); + } + printModifiersList(this, node, [!isPrivateField && node.abstract && "abstract", !isPrivateField && node.override && "override", (isPublicField || isPrivateField) && node.readonly && "readonly"]); +} +function printBraced(printer, node, cb) { + printer.token("{"); + const oldNoLineTerminatorAfterNode = printer.enterDelimited(); + cb(); + printer._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + printer.rightBrace(node); +} +function printModifiersList(printer, node, modifiers) { + var _printer$tokenMap2; + const modifiersSet = new Set(); + for (const modifier of modifiers) { + if (modifier) modifiersSet.add(modifier); + } + (_printer$tokenMap2 = printer.tokenMap) == null || _printer$tokenMap2.find(node, tok => { + if (modifiersSet.has(tok.value)) { + printer.token(tok.value); + printer.space(); + modifiersSet.delete(tok.value); + return modifiersSet.size === 0; + } + return false; + }); + for (const modifier of modifiersSet) { + printer.word(modifier); + printer.space(); + } +} + +//# sourceMappingURL=typescript.js.map diff --git a/node_modules/@babel/generator/lib/generators/typescript.js.map b/node_modules/@babel/generator/lib/generators/typescript.js.map new file mode 100644 index 0000000..5e9bd15 --- /dev/null +++ b/node_modules/@babel/generator/lib/generators/typescript.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_methods","require","_classes","_templateLiterals","TSTypeAnnotation","node","parent","token","type","typeAnnotation","space","optional","print","TSTypeParameterInstantiation","printTrailingSeparator","params","length","tokenMap","start","end","find","t","matchesOriginal","shouldPrintTrailingComma","printList","TSTypeParameter","const","word","in","out","name","constraint","default","TSParameterProperty","accessibility","readonly","_param","call","parameter","TSDeclareFunction","declare","_functionHead","semicolon","TSDeclareMethod","_classMethodHead","TSQualifiedName","left","right","TSCallSignatureDeclaration","tsPrintSignatureDeclarationBase","maybePrintTrailingCommaOrSemicolon","printer","endMatches","TSConstructSignatureDeclaration","TSPropertySignature","tsPrintPropertyOrMethodName","computed","key","TSMethodSignature","kind","TSIndexSignature","static","isStatic","_parameters","parameters","TSAnyKeyword","TSBigIntKeyword","TSUnknownKeyword","TSNumberKeyword","TSObjectKeyword","TSBooleanKeyword","TSStringKeyword","TSSymbolKeyword","TSVoidKeyword","TSUndefinedKeyword","TSNullKeyword","TSNeverKeyword","TSIntrinsicKeyword","TSThisType","TSFunctionType","tsPrintFunctionOrConstructorType","TSConstructorType","abstract","typeParameters","returnType","TSTypeReference","typeArguments","typeName","TSTypePredicate","asserts","parameterName","TSTypeQuery","exprName","TSTypeLiteral","printBraced","printJoin","members","undefined","TSArrayType","elementType","TSTupleType","elementTypes","TSOptionalType","TSRestType","TSNamedTupleMember","label","TSUnionType","tsPrintUnionOrIntersectionType","TSIntersectionType","sep","_printer$tokenMap","hasLeadingToken","startMatches","types","i","TSConditionalType","checkType","extendsType","trueType","falseType","TSInferType","typeParameter","TSParenthesizedType","TSTypeOperator","operator","TSIndexedAccessType","objectType","indexType","TSMappedType","nameType","oldNoLineTerminatorAfterNode","enterDelimited","tokenIfPlusMinus","_noLineTerminatorAfterNode","self","tok","TSTemplateLiteralType","_printTemplate","TSLiteralType","literal","TSClassImplements","expression","TSInterfaceDeclaration","id","extends","extendz","body","TSInterfaceBody","TSTypeAliasDeclaration","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSInstantiationExpression","TSEnumDeclaration","isConst","TSEnumBody","_this$shouldPrintTrai","TSEnumMember","initializer","TSModuleDeclaration","global","TSModuleBlock","printSequence","TSImportType","qualifier","options","argument","TSImportEqualsDeclaration","moduleReference","isExport","TSExternalModuleReference","TSNonNullExpression","setLastChar","TSExportAssignment","TSNamespaceExportDeclaration","_tsPrintClassMemberModifiers","isPrivateField","isPublicField","printModifiersList","override","cb","rightBrace","modifiers","_printer$tokenMap2","modifiersSet","Set","modifier","add","has","value","delete","size"],"sources":["../../src/generators/typescript.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\nimport { _functionHead, _param, _parameters } from \"./methods.ts\";\nimport { _classMethodHead } from \"./classes.ts\";\nimport { _printTemplate } from \"./template-literals.ts\";\n\nexport function TSTypeAnnotation(\n this: Printer,\n node: t.TSTypeAnnotation,\n parent: t.Node,\n) {\n // TODO(@nicolo-ribaudo): investigate not including => in the range\n // of the return type of an arrow function type\n this.token(\n (parent.type === \"TSFunctionType\" || parent.type === \"TSConstructorType\") &&\n (process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n parent.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n parent.typeAnnotation) === node\n ? \"=>\"\n : \":\",\n );\n this.space();\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n if (node.optional) this.token(\"?\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSTypeParameterInstantiation(\n this: Printer,\n node: t.TSTypeParameterInstantiation,\n parent: t.Node,\n): void {\n this.token(\"<\");\n\n let printTrailingSeparator: boolean | null =\n parent.type === \"ArrowFunctionExpression\" && node.params.length === 1;\n if (this.tokenMap && node.start != null && node.end != null) {\n // Only force the trailing comma for pre-existing nodes if they\n // already had a comma (either because they were multi-param, or\n // because they had a trailing comma)\n printTrailingSeparator &&= !!this.tokenMap.find(node, t =>\n this.tokenMap!.matchesOriginal(t, \",\"),\n );\n // Preserve the trailing comma if it was there before\n printTrailingSeparator ||= this.shouldPrintTrailingComma(\">\");\n }\n\n this.printList(node.params, printTrailingSeparator);\n this.token(\">\");\n}\n\nexport { TSTypeParameterInstantiation as TSTypeParameterDeclaration };\n\nexport function TSTypeParameter(this: Printer, node: t.TSTypeParameter) {\n if (node.const) {\n this.word(\"const\");\n this.space();\n }\n\n if (node.in) {\n this.word(\"in\");\n this.space();\n }\n\n if (node.out) {\n this.word(\"out\");\n this.space();\n }\n\n this.word(\n !process.env.BABEL_8_BREAKING\n ? (node.name as unknown as string)\n : (node.name as unknown as t.Identifier).name,\n );\n\n if (node.constraint) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.constraint);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default);\n }\n}\n\nexport function TSParameterProperty(\n this: Printer,\n node: t.TSParameterProperty,\n) {\n if (node.accessibility) {\n this.word(node.accessibility);\n this.space();\n }\n\n if (node.readonly) {\n this.word(\"readonly\");\n this.space();\n }\n\n _param.call(this, node.parameter);\n}\n\nexport function TSDeclareFunction(\n this: Printer,\n node: t.TSDeclareFunction,\n parent: t.ParentMaps[\"TSDeclareFunction\"],\n) {\n if (node.declare) {\n this.word(\"declare\");\n this.space();\n }\n _functionHead.call(this, node, parent, false);\n this.semicolon();\n}\n\nexport function TSDeclareMethod(this: Printer, node: t.TSDeclareMethod) {\n _classMethodHead.call(this, node);\n this.semicolon();\n}\n\nexport function TSQualifiedName(this: Printer, node: t.TSQualifiedName) {\n this.print(node.left);\n this.token(\".\");\n this.print(node.right);\n}\n\nexport function TSCallSignatureDeclaration(\n this: Printer,\n node: t.TSCallSignatureDeclaration,\n) {\n tsPrintSignatureDeclarationBase.call(this, node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nfunction maybePrintTrailingCommaOrSemicolon(printer: Printer, node: t.Node) {\n if (!printer.tokenMap || !node.start || !node.end) {\n printer.semicolon();\n return;\n }\n\n if (printer.tokenMap.endMatches(node, \",\")) {\n printer.token(\",\");\n } else if (printer.tokenMap.endMatches(node, \";\")) {\n printer.semicolon();\n }\n}\n\nexport function TSConstructSignatureDeclaration(\n this: Printer,\n node: t.TSConstructSignatureDeclaration,\n) {\n this.word(\"new\");\n this.space();\n tsPrintSignatureDeclarationBase.call(this, node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSPropertySignature(\n this: Printer,\n node: t.TSPropertySignature,\n) {\n const { readonly } = node;\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n tsPrintPropertyOrMethodName.call(this, node);\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nfunction tsPrintPropertyOrMethodName(\n this: Printer,\n node: t.TSPropertySignature | t.TSMethodSignature,\n) {\n if (node.computed) {\n this.token(\"[\");\n }\n this.print(node.key);\n if (node.computed) {\n this.token(\"]\");\n }\n if (node.optional) {\n this.token(\"?\");\n }\n}\n\nexport function TSMethodSignature(this: Printer, node: t.TSMethodSignature) {\n const { kind } = node;\n if (kind === \"set\" || kind === \"get\") {\n this.word(kind);\n this.space();\n }\n tsPrintPropertyOrMethodName.call(this, node);\n tsPrintSignatureDeclarationBase.call(this, node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSIndexSignature(this: Printer, node: t.TSIndexSignature) {\n const { readonly, static: isStatic } = node;\n if (isStatic) {\n this.word(\"static\");\n this.space();\n }\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.token(\"[\");\n _parameters.call(this, node.parameters, charCodes.rightSquareBracket);\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSAnyKeyword(this: Printer) {\n this.word(\"any\");\n}\nexport function TSBigIntKeyword(this: Printer) {\n this.word(\"bigint\");\n}\nexport function TSUnknownKeyword(this: Printer) {\n this.word(\"unknown\");\n}\nexport function TSNumberKeyword(this: Printer) {\n this.word(\"number\");\n}\nexport function TSObjectKeyword(this: Printer) {\n this.word(\"object\");\n}\nexport function TSBooleanKeyword(this: Printer) {\n this.word(\"boolean\");\n}\nexport function TSStringKeyword(this: Printer) {\n this.word(\"string\");\n}\nexport function TSSymbolKeyword(this: Printer) {\n this.word(\"symbol\");\n}\nexport function TSVoidKeyword(this: Printer) {\n this.word(\"void\");\n}\nexport function TSUndefinedKeyword(this: Printer) {\n this.word(\"undefined\");\n}\nexport function TSNullKeyword(this: Printer) {\n this.word(\"null\");\n}\nexport function TSNeverKeyword(this: Printer) {\n this.word(\"never\");\n}\nexport function TSIntrinsicKeyword(this: Printer) {\n this.word(\"intrinsic\");\n}\n\nexport function TSThisType(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TSFunctionType(this: Printer, node: t.TSFunctionType) {\n tsPrintFunctionOrConstructorType.call(this, node);\n}\n\nexport function TSConstructorType(this: Printer, node: t.TSConstructorType) {\n if (node.abstract) {\n this.word(\"abstract\");\n this.space();\n }\n this.word(\"new\");\n this.space();\n tsPrintFunctionOrConstructorType.call(this, node);\n}\n\nfunction tsPrintFunctionOrConstructorType(\n this: Printer,\n node: t.TSFunctionType | t.TSConstructorType,\n) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.params\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n _parameters.call(this, parameters, charCodes.rightParenthesis);\n this.space();\n const returnType = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function TSTypeReference(this: Printer, node: t.TSTypeReference) {\n const typeArguments = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.typeArguments\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeParameters;\n this.print(node.typeName, !!typeArguments);\n this.print(typeArguments);\n}\n\nexport function TSTypePredicate(this: Printer, node: t.TSTypePredicate) {\n if (node.asserts) {\n this.word(\"asserts\");\n this.space();\n }\n this.print(node.parameterName);\n if (node.typeAnnotation) {\n this.space();\n this.word(\"is\");\n this.space();\n this.print(node.typeAnnotation.typeAnnotation);\n }\n}\n\nexport function TSTypeQuery(this: Printer, node: t.TSTypeQuery) {\n this.word(\"typeof\");\n this.space();\n this.print(node.exprName);\n\n const typeArguments = process.env.BABEL_8_BREAKING\n ? //@ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n node.typeArguments\n : //@ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.typeParameters;\n if (typeArguments) {\n this.print(typeArguments);\n }\n}\n\nexport function TSTypeLiteral(this: Printer, node: t.TSTypeLiteral) {\n printBraced(this, node, () =>\n this.printJoin(node.members, true, true, undefined, undefined, true),\n );\n}\n\nexport function TSArrayType(this: Printer, node: t.TSArrayType) {\n this.print(node.elementType, true);\n\n this.token(\"[\");\n this.token(\"]\");\n}\n\nexport function TSTupleType(this: Printer, node: t.TSTupleType) {\n this.token(\"[\");\n this.printList(node.elementTypes, this.shouldPrintTrailingComma(\"]\"));\n this.token(\"]\");\n}\n\nexport function TSOptionalType(this: Printer, node: t.TSOptionalType) {\n this.print(node.typeAnnotation);\n this.token(\"?\");\n}\n\nexport function TSRestType(this: Printer, node: t.TSRestType) {\n this.token(\"...\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSNamedTupleMember(this: Printer, node: t.TSNamedTupleMember) {\n this.print(node.label);\n if (node.optional) this.token(\"?\");\n this.token(\":\");\n this.space();\n this.print(node.elementType);\n}\n\nexport function TSUnionType(this: Printer, node: t.TSUnionType) {\n tsPrintUnionOrIntersectionType(this, node, \"|\");\n}\n\nexport function TSIntersectionType(this: Printer, node: t.TSIntersectionType) {\n tsPrintUnionOrIntersectionType(this, node, \"&\");\n}\n\nfunction tsPrintUnionOrIntersectionType(\n printer: Printer,\n node: t.TSUnionType | t.TSIntersectionType,\n sep: \"|\" | \"&\",\n) {\n let hasLeadingToken = 0;\n if (printer.tokenMap?.startMatches(node, sep)) {\n hasLeadingToken = 1;\n printer.token(sep);\n }\n\n printer.printJoin(node.types, undefined, undefined, function (i) {\n this.space();\n this.token(sep, undefined, i + hasLeadingToken);\n this.space();\n });\n}\n\nexport function TSConditionalType(this: Printer, node: t.TSConditionalType) {\n this.print(node.checkType);\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.extendsType);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.trueType);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.falseType);\n}\n\nexport function TSInferType(this: Printer, node: t.TSInferType) {\n this.word(\"infer\");\n this.print(node.typeParameter);\n}\n\nexport function TSParenthesizedType(\n this: Printer,\n node: t.TSParenthesizedType,\n) {\n this.token(\"(\");\n this.print(node.typeAnnotation);\n this.token(\")\");\n}\n\nexport function TSTypeOperator(this: Printer, node: t.TSTypeOperator) {\n this.word(node.operator);\n this.space();\n this.print(node.typeAnnotation);\n}\n\nexport function TSIndexedAccessType(\n this: Printer,\n node: t.TSIndexedAccessType,\n) {\n this.print(node.objectType, true);\n this.token(\"[\");\n this.print(node.indexType);\n this.token(\"]\");\n}\n\nexport function TSMappedType(this: Printer, node: t.TSMappedType) {\n const { nameType, optional, readonly, typeAnnotation } = node;\n this.token(\"{\");\n const oldNoLineTerminatorAfterNode = this.enterDelimited();\n this.space();\n if (readonly) {\n tokenIfPlusMinus(this, readonly);\n this.word(\"readonly\");\n this.space();\n }\n\n this.token(\"[\");\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.word(node.key.name);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.word(node.typeParameter.name);\n }\n\n this.space();\n this.word(\"in\");\n this.space();\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.print(node.constraint, undefined, true);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(node.typeParameter.constraint, undefined, true);\n }\n\n if (nameType) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(nameType, undefined, true);\n }\n\n this.token(\"]\");\n\n if (optional) {\n tokenIfPlusMinus(this, optional);\n this.token(\"?\");\n }\n\n if (typeAnnotation) {\n this.token(\":\");\n this.space();\n this.print(typeAnnotation, undefined, true);\n }\n this.space();\n this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n this.token(\"}\");\n}\n\nfunction tokenIfPlusMinus(self: Printer, tok: true | \"+\" | \"-\") {\n if (tok !== true) {\n self.token(tok);\n }\n}\n\nexport function TSTemplateLiteralType(\n this: Printer,\n node: t.TSTemplateLiteralType,\n) {\n _printTemplate.call(this, node, node.types);\n}\n\nexport function TSLiteralType(this: Printer, node: t.TSLiteralType) {\n this.print(node.literal);\n}\n\nexport function TSClassImplements(\n this: Printer,\n // TODO(Babel 8): Just use t.TSClassImplements\n node: t.Node & {\n expression: t.TSEntityName;\n typeArguments?: t.TSTypeParameterInstantiation;\n },\n) {\n this.print(node.expression);\n this.print(node.typeArguments);\n}\n\nexport { TSClassImplements as TSInterfaceHeritage };\n\nexport function TSInterfaceDeclaration(\n this: Printer,\n node: t.TSInterfaceDeclaration,\n) {\n const { declare, id, typeParameters, extends: extendz, body } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"interface\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n if (extendz?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(extendz);\n }\n this.space();\n this.print(body);\n}\n\nexport function TSInterfaceBody(this: Printer, node: t.TSInterfaceBody) {\n printBraced(this, node, () =>\n this.printJoin(node.body, true, true, undefined, undefined, true),\n );\n}\n\nexport function TSTypeAliasDeclaration(\n this: Printer,\n node: t.TSTypeAliasDeclaration,\n) {\n const { declare, id, typeParameters, typeAnnotation } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"type\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(typeAnnotation);\n this.semicolon();\n}\n\nexport function TSAsExpression(this: Printer, node: t.TSAsExpression) {\n const { expression, typeAnnotation } = node;\n this.print(expression, true);\n this.space();\n this.word(\"as\");\n this.space();\n this.print(typeAnnotation);\n}\n\nexport function TSSatisfiesExpression(\n this: Printer,\n node: t.TSSatisfiesExpression,\n) {\n const { expression, typeAnnotation } = node;\n this.print(expression, true);\n this.space();\n this.word(\"satisfies\");\n this.space();\n this.print(typeAnnotation);\n}\n\nexport function TSTypeAssertion(this: Printer, node: t.TSTypeAssertion) {\n const { typeAnnotation, expression } = node;\n this.token(\"<\");\n this.print(typeAnnotation);\n this.token(\">\");\n this.space();\n this.print(expression);\n}\n\nexport function TSInstantiationExpression(\n this: Printer,\n node: t.TSInstantiationExpression,\n) {\n this.print(node.expression);\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.typeArguments);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n this.print(node.typeParameters);\n }\n}\n\nexport function TSEnumDeclaration(this: Printer, node: t.TSEnumDeclaration) {\n const { declare, const: isConst, id } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n if (isConst) {\n this.word(\"const\");\n this.space();\n }\n this.word(\"enum\");\n this.space();\n this.print(id);\n this.space();\n\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.body);\n } else {\n // cast to TSEnumBody for Babel 7 AST\n TSEnumBody.call(this, node as unknown as t.TSEnumBody);\n }\n}\n\nexport function TSEnumBody(this: Printer, node: t.TSEnumBody) {\n printBraced(this, node, () =>\n this.printList(\n node.members,\n this.shouldPrintTrailingComma(\"}\") ??\n (process.env.BABEL_8_BREAKING ? false : true),\n true,\n true,\n undefined,\n true,\n ),\n );\n}\n\nexport function TSEnumMember(this: Printer, node: t.TSEnumMember) {\n const { id, initializer } = node;\n this.print(id);\n if (initializer) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(initializer);\n }\n}\n\nexport function TSModuleDeclaration(\n this: Printer,\n node: t.TSModuleDeclaration,\n) {\n const { declare, id, kind } = node;\n\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n\n if (process.env.BABEL_8_BREAKING) {\n if (kind !== \"global\") {\n this.word(kind);\n this.space();\n }\n\n this.print(node.id);\n if (!node.body) {\n this.semicolon();\n return;\n }\n this.space();\n this.print(node.body);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n if (!node.global) {\n this.word(kind ?? (id.type === \"Identifier\" ? \"namespace\" : \"module\"));\n this.space();\n }\n\n this.print(id);\n\n if (!node.body) {\n this.semicolon();\n return;\n }\n\n let body = node.body;\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n while (body.type === \"TSModuleDeclaration\") {\n this.token(\".\");\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(body.id);\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n body = body.body;\n }\n\n this.space();\n this.print(body);\n }\n}\n\nexport function TSModuleBlock(this: Printer, node: t.TSModuleBlock) {\n printBraced(this, node, () => this.printSequence(node.body, true, true));\n}\n\nexport function TSImportType(this: Printer, node: t.TSImportType) {\n const { qualifier, options } = node;\n this.word(\"import\");\n this.token(\"(\");\n this.print(\n //@ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n process.env.BABEL_8_BREAKING ? node.source : node.argument,\n );\n if (options) {\n this.token(\",\");\n this.print(options);\n }\n this.token(\")\");\n if (qualifier) {\n this.token(\".\");\n this.print(qualifier);\n }\n const typeArguments = process.env.BABEL_8_BREAKING\n ? //@ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n node.typeArguments\n : //@ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.typeParameters;\n if (typeArguments) {\n this.print(typeArguments);\n }\n}\n\nexport function TSImportEqualsDeclaration(\n this: Printer,\n node: t.TSImportEqualsDeclaration,\n) {\n const { id, moduleReference } = node;\n if (\n !process.env.BABEL_8_BREAKING &&\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.isExport\n ) {\n this.word(\"export\");\n this.space();\n }\n this.word(\"import\");\n this.space();\n this.print(id);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(moduleReference);\n this.semicolon();\n}\n\nexport function TSExternalModuleReference(\n this: Printer,\n node: t.TSExternalModuleReference,\n) {\n this.token(\"require(\");\n this.print(node.expression);\n this.token(\")\");\n}\n\nexport function TSNonNullExpression(\n this: Printer,\n node: t.TSNonNullExpression,\n) {\n this.print(node.expression);\n this.token(\"!\");\n this.setLastChar(charCodes.exclamationMark);\n}\n\nexport function TSExportAssignment(this: Printer, node: t.TSExportAssignment) {\n this.word(\"export\");\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.expression);\n this.semicolon();\n}\n\nexport function TSNamespaceExportDeclaration(\n this: Printer,\n node: t.TSNamespaceExportDeclaration,\n) {\n this.word(\"export\");\n this.space();\n this.word(\"as\");\n this.space();\n this.word(\"namespace\");\n this.space();\n this.print(node.id);\n this.semicolon();\n}\n\nfunction tsPrintSignatureDeclarationBase(this: Printer, node: any) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? node.params\n : node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n _parameters.call(this, parameters, charCodes.rightParenthesis);\n const returnType = process.env.BABEL_8_BREAKING\n ? node.returnType\n : node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function _tsPrintClassMemberModifiers(\n this: Printer,\n node:\n | t.ClassProperty\n | t.ClassAccessorProperty\n | t.ClassPrivateProperty\n | t.ClassMethod\n | t.ClassPrivateMethod\n | t.TSDeclareMethod,\n) {\n const isPrivateField = node.type === \"ClassPrivateProperty\";\n const isPublicField =\n node.type === \"ClassAccessorProperty\" || node.type === \"ClassProperty\";\n printModifiersList(this, node, [\n isPublicField && node.declare && \"declare\",\n !isPrivateField && node.accessibility,\n ]);\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n printModifiersList(this, node, [\n !isPrivateField && node.abstract && \"abstract\",\n !isPrivateField && node.override && \"override\",\n (isPublicField || isPrivateField) && node.readonly && \"readonly\",\n ]);\n}\n\nfunction printBraced(printer: Printer, node: t.Node, cb: () => void) {\n printer.token(\"{\");\n const oldNoLineTerminatorAfterNode = printer.enterDelimited();\n cb();\n printer._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode;\n printer.rightBrace(node);\n}\n\nfunction printModifiersList(\n printer: Printer,\n node: t.Node,\n modifiers: (string | false | null | undefined)[],\n) {\n const modifiersSet = new Set();\n for (const modifier of modifiers) {\n if (modifier) modifiersSet.add(modifier);\n }\n\n printer.tokenMap?.find(node, tok => {\n if (modifiersSet.has(tok.value)) {\n printer.token(tok.value);\n printer.space();\n modifiersSet.delete(tok.value);\n return modifiersSet.size === 0;\n }\n return false;\n });\n\n for (const modifier of modifiersSet) {\n printer.word(modifier);\n printer.space();\n }\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/index.js b/node_modules/@babel/generator/lib/index.js new file mode 100644 index 0000000..e8b3bcc --- /dev/null +++ b/node_modules/@babel/generator/lib/index.js @@ -0,0 +1,108 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +exports.generate = generate; +var _sourceMap = require("./source-map.js"); +var _printer = require("./printer.js"); +function normalizeOptions(code, opts, ast) { + var _opts$recordAndTupleS; + if (opts.experimental_preserveFormat) { + if (typeof code !== "string") { + throw new Error("`experimental_preserveFormat` requires the original `code` to be passed to @babel/generator as a string"); + } + if (!opts.retainLines) { + throw new Error("`experimental_preserveFormat` requires `retainLines` to be set to `true`"); + } + if (opts.compact && opts.compact !== "auto") { + throw new Error("`experimental_preserveFormat` is not compatible with the `compact` option"); + } + if (opts.minified) { + throw new Error("`experimental_preserveFormat` is not compatible with the `minified` option"); + } + if (opts.jsescOption) { + throw new Error("`experimental_preserveFormat` is not compatible with the `jsescOption` option"); + } + if (!Array.isArray(ast.tokens)) { + throw new Error("`experimental_preserveFormat` requires the AST to have attached the token of the input code. Make sure to enable the `tokens: true` parser option."); + } + } + const format = { + auxiliaryCommentBefore: opts.auxiliaryCommentBefore, + auxiliaryCommentAfter: opts.auxiliaryCommentAfter, + shouldPrintComment: opts.shouldPrintComment, + preserveFormat: opts.experimental_preserveFormat, + retainLines: opts.retainLines, + retainFunctionParens: opts.retainFunctionParens, + comments: opts.comments == null || opts.comments, + compact: opts.compact, + minified: opts.minified, + concise: opts.concise, + indent: { + adjustMultilineComment: true, + style: " " + }, + jsescOption: Object.assign({ + quotes: "double", + wrap: true, + minimal: false + }, opts.jsescOption), + topicToken: opts.topicToken + }; + format.decoratorsBeforeExport = opts.decoratorsBeforeExport; + format.jsescOption.json = opts.jsonCompatibleStrings; + format.recordAndTupleSyntaxType = (_opts$recordAndTupleS = opts.recordAndTupleSyntaxType) != null ? _opts$recordAndTupleS : "hash"; + format.importAttributesKeyword = opts.importAttributesKeyword; + if (format.minified) { + format.compact = true; + format.shouldPrintComment = format.shouldPrintComment || (() => format.comments); + } else { + format.shouldPrintComment = format.shouldPrintComment || (value => format.comments || value.includes("@license") || value.includes("@preserve")); + } + if (format.compact === "auto") { + format.compact = typeof code === "string" && code.length > 500000; + if (format.compact) { + console.error("[BABEL] Note: The code generator has deoptimised the styling of " + `${opts.filename} as it exceeds the max of ${"500KB"}.`); + } + } + if (format.compact || format.preserveFormat) { + format.indent.adjustMultilineComment = false; + } + const { + auxiliaryCommentBefore, + auxiliaryCommentAfter, + shouldPrintComment + } = format; + if (auxiliaryCommentBefore && !shouldPrintComment(auxiliaryCommentBefore)) { + format.auxiliaryCommentBefore = undefined; + } + if (auxiliaryCommentAfter && !shouldPrintComment(auxiliaryCommentAfter)) { + format.auxiliaryCommentAfter = undefined; + } + return format; +} +exports.CodeGenerator = class CodeGenerator { + constructor(ast, opts = {}, code) { + this._ast = void 0; + this._format = void 0; + this._map = void 0; + this._ast = ast; + this._format = normalizeOptions(code, opts, ast); + this._map = opts.sourceMaps ? new _sourceMap.default(opts, code) : null; + } + generate() { + const printer = new _printer.default(this._format, this._map); + return printer.generate(this._ast); + } +}; +function generate(ast, opts = {}, code) { + const format = normalizeOptions(code, opts, ast); + const map = opts.sourceMaps ? new _sourceMap.default(opts, code) : null; + const printer = new _printer.default(format, map, ast.tokens, typeof code === "string" ? code : null); + return printer.generate(ast); +} +var _default = exports.default = generate; + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/index.js.map b/node_modules/@babel/generator/lib/index.js.map new file mode 100644 index 0000000..e6a7901 --- /dev/null +++ b/node_modules/@babel/generator/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_sourceMap","require","_printer","normalizeOptions","code","opts","ast","_opts$recordAndTupleS","experimental_preserveFormat","Error","retainLines","compact","minified","jsescOption","Array","isArray","tokens","format","auxiliaryCommentBefore","auxiliaryCommentAfter","shouldPrintComment","preserveFormat","retainFunctionParens","comments","concise","indent","adjustMultilineComment","style","Object","assign","quotes","wrap","minimal","topicToken","decoratorsBeforeExport","json","jsonCompatibleStrings","recordAndTupleSyntaxType","importAttributesKeyword","value","includes","length","console","error","filename","undefined","exports","CodeGenerator","constructor","_ast","_format","_map","sourceMaps","SourceMap","generate","printer","Printer","map","_default","default"],"sources":["../src/index.ts"],"sourcesContent":["import SourceMap from \"./source-map.ts\";\nimport Printer from \"./printer.ts\";\nimport type * as t from \"@babel/types\";\nimport type { Opts as jsescOptions } from \"jsesc\";\nimport type { Format } from \"./printer.ts\";\nimport type {\n EncodedSourceMap,\n DecodedSourceMap,\n Mapping,\n} from \"@jridgewell/gen-mapping\";\n\n/**\n * Normalize generator options, setting defaults.\n *\n * - Detects code indentation.\n * - If `opts.compact = \"auto\"` and the code is over 500KB, `compact` will be set to `true`.\n */\n\nfunction normalizeOptions(\n code: string | Record | undefined,\n opts: GeneratorOptions,\n ast: t.Node,\n): Format {\n if (opts.experimental_preserveFormat) {\n if (typeof code !== \"string\") {\n throw new Error(\n \"`experimental_preserveFormat` requires the original `code` to be passed to @babel/generator as a string\",\n );\n }\n if (!opts.retainLines) {\n throw new Error(\n \"`experimental_preserveFormat` requires `retainLines` to be set to `true`\",\n );\n }\n if (opts.compact && opts.compact !== \"auto\") {\n throw new Error(\n \"`experimental_preserveFormat` is not compatible with the `compact` option\",\n );\n }\n if (opts.minified) {\n throw new Error(\n \"`experimental_preserveFormat` is not compatible with the `minified` option\",\n );\n }\n if (opts.jsescOption) {\n throw new Error(\n \"`experimental_preserveFormat` is not compatible with the `jsescOption` option\",\n );\n }\n if (!Array.isArray((ast as any).tokens)) {\n throw new Error(\n \"`experimental_preserveFormat` requires the AST to have attached the token of the input code. Make sure to enable the `tokens: true` parser option.\",\n );\n }\n }\n\n const format: Format = {\n auxiliaryCommentBefore: opts.auxiliaryCommentBefore,\n auxiliaryCommentAfter: opts.auxiliaryCommentAfter,\n // @ts-expect-error define it later\n shouldPrintComment: opts.shouldPrintComment,\n preserveFormat: opts.experimental_preserveFormat,\n retainLines: opts.retainLines,\n retainFunctionParens: opts.retainFunctionParens,\n comments: opts.comments == null || opts.comments,\n compact: opts.compact,\n minified: opts.minified,\n concise: opts.concise,\n indent: {\n adjustMultilineComment: true,\n style: \" \",\n },\n jsescOption: {\n quotes: \"double\",\n wrap: true,\n minimal: process.env.BABEL_8_BREAKING ? true : false,\n ...opts.jsescOption,\n },\n topicToken: opts.topicToken,\n };\n\n if (!process.env.BABEL_8_BREAKING) {\n format.decoratorsBeforeExport = opts.decoratorsBeforeExport;\n format.jsescOption.json = opts.jsonCompatibleStrings;\n format.recordAndTupleSyntaxType = opts.recordAndTupleSyntaxType ?? \"hash\";\n format.importAttributesKeyword = opts.importAttributesKeyword;\n }\n\n if (format.minified) {\n format.compact = true;\n\n format.shouldPrintComment =\n format.shouldPrintComment || (() => format.comments);\n } else {\n format.shouldPrintComment =\n format.shouldPrintComment ||\n (value =>\n format.comments ||\n value.includes(\"@license\") ||\n value.includes(\"@preserve\"));\n }\n\n if (format.compact === \"auto\") {\n format.compact = typeof code === \"string\" && code.length > 500_000; // 500KB\n\n if (format.compact) {\n console.error(\n \"[BABEL] Note: The code generator has deoptimised the styling of \" +\n `${opts.filename} as it exceeds the max of ${\"500KB\"}.`,\n );\n }\n }\n\n if (format.compact || format.preserveFormat) {\n format.indent.adjustMultilineComment = false;\n }\n\n const { auxiliaryCommentBefore, auxiliaryCommentAfter, shouldPrintComment } =\n format;\n\n if (auxiliaryCommentBefore && !shouldPrintComment(auxiliaryCommentBefore)) {\n format.auxiliaryCommentBefore = undefined;\n }\n if (auxiliaryCommentAfter && !shouldPrintComment(auxiliaryCommentAfter)) {\n format.auxiliaryCommentAfter = undefined;\n }\n\n return format;\n}\n\nexport interface GeneratorOptions {\n /**\n * Optional string to add as a block comment at the start of the output file.\n */\n auxiliaryCommentBefore?: string;\n\n /**\n * Optional string to add as a block comment at the end of the output file.\n */\n auxiliaryCommentAfter?: string;\n\n /**\n * Function that takes a comment (as a string) and returns true if the comment should be included in the output.\n * By default, comments are included if `opts.comments` is `true` or if `opts.minified` is `false` and the comment\n * contains `@preserve` or `@license`.\n */\n shouldPrintComment?(comment: string): boolean;\n\n /**\n * Preserve the input code format while printing the transformed code.\n * This is experimental, and may have breaking changes in future\n * patch releases. It will be removed in a future minor release,\n * when it will graduate to stable.\n */\n experimental_preserveFormat?: boolean;\n\n /**\n * Attempt to use the same line numbers in the output code as in the source code (helps preserve stack traces).\n * Defaults to `false`.\n */\n retainLines?: boolean;\n\n /**\n * Retain parens around function expressions (could be used to change engine parsing behavior)\n * Defaults to `false`.\n */\n retainFunctionParens?: boolean;\n\n /**\n * Should comments be included in output? Defaults to `true`.\n */\n comments?: boolean;\n\n /**\n * Set to true to avoid adding whitespace for formatting. Defaults to the value of `opts.minified`.\n */\n compact?: boolean | \"auto\";\n\n /**\n * Should the output be minified. Defaults to `false`.\n */\n minified?: boolean;\n\n /**\n * Set to true to reduce whitespace (but not as much as opts.compact). Defaults to `false`.\n */\n concise?: boolean;\n\n /**\n * Used in warning messages\n */\n filename?: string;\n\n /**\n * Enable generating source maps. Defaults to `false`.\n */\n sourceMaps?: boolean;\n\n inputSourceMap?: any;\n\n /**\n * A root for all relative URLs in the source map.\n */\n sourceRoot?: string;\n\n /**\n * The filename for the source code (i.e. the code in the `code` argument).\n * This will only be used if `code` is a string.\n */\n sourceFileName?: string;\n\n /**\n * Set to true to run jsesc with \"json\": true to print \"\\u00A9\" vs. \"©\";\n * @deprecated use `jsescOptions: { json: true }` instead\n */\n jsonCompatibleStrings?: boolean;\n\n /**\n * Set to true to enable support for experimental decorators syntax before\n * module exports. If not specified, decorators will be printed in the same\n * position as they were in the input source code.\n * @deprecated Removed in Babel 8\n */\n decoratorsBeforeExport?: boolean;\n\n /**\n * Options for outputting jsesc representation.\n */\n jsescOption?: jsescOptions;\n\n /**\n * For use with the recordAndTuple token.\n * @deprecated It will be removed in Babel 8.\n */\n recordAndTupleSyntaxType?: \"bar\" | \"hash\";\n\n /**\n * For use with the Hack-style pipe operator.\n * Changes what token is used for pipe bodies’ topic references.\n */\n topicToken?: \"%\" | \"#\" | \"@@\" | \"^^\" | \"^\";\n\n /**\n * The import attributes syntax style:\n * - \"with\" : `import { a } from \"b\" with { type: \"json\" };`\n * - \"assert\" : `import { a } from \"b\" assert { type: \"json\" };`\n * - \"with-legacy\" : `import { a } from \"b\" with type: \"json\";`\n * @deprecated Removed in Babel 8.\n */\n importAttributesKeyword?: \"with\" | \"assert\" | \"with-legacy\";\n}\n\nexport interface GeneratorResult {\n code: string;\n map: EncodedSourceMap | null;\n decodedMap: DecodedSourceMap | undefined;\n rawMappings: Mapping[] | undefined;\n}\n\nif (!process.env.BABEL_8_BREAKING && !USE_ESM) {\n /**\n * We originally exported the Generator class above, but to make it extra clear that it is a private API,\n * we have moved that to an internal class instance and simplified the interface to the two public methods\n * that we wish to support.\n */\n\n // eslint-disable-next-line no-restricted-globals\n exports.CodeGenerator = class CodeGenerator {\n private _ast: t.Node;\n private _format: Format;\n private _map: SourceMap | null;\n constructor(ast: t.Node, opts: GeneratorOptions = {}, code?: string) {\n this._ast = ast;\n this._format = normalizeOptions(code, opts, ast);\n this._map = opts.sourceMaps ? new SourceMap(opts, code) : null;\n }\n generate(): GeneratorResult {\n const printer = new Printer(this._format, this._map);\n\n return printer.generate(this._ast);\n }\n };\n}\n\n/**\n * Turns an AST into code, maintaining sourcemaps, user preferences, and valid output.\n * @param ast - the abstract syntax tree from which to generate output code.\n * @param opts - used for specifying options for code generation.\n * @param code - the original source code, used for source maps.\n * @returns - an object containing the output code and source map.\n */\nexport function generate(\n ast: t.Node,\n opts: GeneratorOptions = {},\n code?: string | Record,\n): GeneratorResult {\n const format = normalizeOptions(code, opts, ast);\n const map = opts.sourceMaps ? new SourceMap(opts, code) : null;\n\n const printer = new Printer(\n format,\n map,\n (ast as any).tokens,\n typeof code === \"string\" ? code : null,\n );\n\n return printer.generate(ast);\n}\n\nexport default generate;\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/node/index.js b/node_modules/@babel/generator/lib/node/index.js new file mode 100644 index 0000000..58cb15c --- /dev/null +++ b/node_modules/@babel/generator/lib/node/index.js @@ -0,0 +1,81 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.TokenContext = void 0; +exports.isLastChild = isLastChild; +exports.parentNeedsParens = parentNeedsParens; +var parens = require("./parentheses.js"); +var _t = require("@babel/types"); +var _nodes = require("../nodes.js"); +const { + VISITOR_KEYS +} = _t; +const TokenContext = exports.TokenContext = { + normal: 0, + expressionStatement: 1, + arrowBody: 2, + exportDefault: 4, + arrowFlowReturnType: 8, + forInitHead: 16, + forInHead: 32, + forOfHead: 64, + forInOrInitHeadAccumulate: 128, + forInOrInitHeadAccumulatePassThroughMask: 128 +}; +for (const type of Object.keys(parens)) { + const func = parens[type]; + if (_nodes.generatorInfosMap.has(type)) { + _nodes.generatorInfosMap.get(type)[2] = func; + } +} +function isOrHasCallExpression(node) { + switch (node.type) { + case "CallExpression": + return true; + case "MemberExpression": + return isOrHasCallExpression(node.object); + } + return false; +} +function parentNeedsParens(node, parent, parentId) { + switch (parentId) { + case 112: + if (parent.callee === node) { + if (isOrHasCallExpression(node)) return true; + } + break; + case 42: + return !isDecoratorMemberExpression(node) && !(node.type === "CallExpression" && isDecoratorMemberExpression(node.callee)) && node.type !== "ParenthesizedExpression"; + } + return false; +} +function isDecoratorMemberExpression(node) { + switch (node.type) { + case "Identifier": + return true; + case "MemberExpression": + return !node.computed && node.property.type === "Identifier" && isDecoratorMemberExpression(node.object); + default: + return false; + } +} +function isLastChild(parent, child) { + const visitorKeys = VISITOR_KEYS[parent.type]; + for (let i = visitorKeys.length - 1; i >= 0; i--) { + const val = parent[visitorKeys[i]]; + if (val === child) { + return true; + } else if (Array.isArray(val)) { + let j = val.length - 1; + while (j >= 0 && val[j] === null) j--; + return j >= 0 && val[j] === child; + } else if (val) { + return false; + } + } + return false; +} + +//# sourceMappingURL=index.js.map diff --git a/node_modules/@babel/generator/lib/node/index.js.map b/node_modules/@babel/generator/lib/node/index.js.map new file mode 100644 index 0000000..bae168f --- /dev/null +++ b/node_modules/@babel/generator/lib/node/index.js.map @@ -0,0 +1 @@ +{"version":3,"names":["parens","require","_t","_nodes","VISITOR_KEYS","TokenContext","exports","normal","expressionStatement","arrowBody","exportDefault","arrowFlowReturnType","forInitHead","forInHead","forOfHead","forInOrInitHeadAccumulate","forInOrInitHeadAccumulatePassThroughMask","type","Object","keys","func","generatorInfosMap","has","get","isOrHasCallExpression","node","object","parentNeedsParens","parent","parentId","callee","isDecoratorMemberExpression","computed","property","isLastChild","child","visitorKeys","i","length","val","Array","isArray","j"],"sources":["../../src/node/index.ts"],"sourcesContent":["import * as parens from \"./parentheses.ts\";\nimport { VISITOR_KEYS } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\nimport { generatorInfosMap } from \"../nodes.ts\";\n\nexport const enum TokenContext {\n normal = 0,\n expressionStatement = 1 << 0,\n arrowBody = 1 << 1,\n exportDefault = 1 << 2,\n arrowFlowReturnType = 1 << 3,\n forInitHead = 1 << 4,\n forInHead = 1 << 5,\n forOfHead = 1 << 6,\n // This flag lives across the token boundary, and will\n // be reset after forIn or forInit head is printed\n forInOrInitHeadAccumulate = 1 << 7,\n forInOrInitHeadAccumulatePassThroughMask = 0b10000000,\n}\n\nexport type NodeHandler = (\n node: t.Node,\n // todo:\n // node: K extends keyof typeof t\n // ? Extract\n // : t.Node,\n parent: t.Node,\n parentId: number,\n tokenContext?: number,\n getRawIdentifier?: (node: t.Identifier) => string,\n) => R | undefined;\n\nfor (const type of Object.keys(parens) as (keyof typeof parens)[]) {\n const func = parens[type];\n if (generatorInfosMap.has(type)) {\n generatorInfosMap.get(type)![2] = func;\n }\n}\n\nfunction isOrHasCallExpression(node: t.Node): boolean {\n switch (node.type) {\n case \"CallExpression\":\n return true;\n case \"MemberExpression\":\n return isOrHasCallExpression(node.object);\n }\n return false;\n}\n\nexport function parentNeedsParens(\n node: t.Node,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"NewExpression\"):\n if (parent.callee === node) {\n if (isOrHasCallExpression(node)) return true;\n }\n break;\n case __node(\"Decorator\"):\n return (\n !isDecoratorMemberExpression(node) &&\n !(\n node.type === \"CallExpression\" &&\n isDecoratorMemberExpression(node.callee)\n ) &&\n node.type !== \"ParenthesizedExpression\"\n );\n }\n return false;\n}\n\nfunction isDecoratorMemberExpression(node: t.Node): boolean {\n switch (node.type) {\n case \"Identifier\":\n return true;\n case \"MemberExpression\":\n return (\n !node.computed &&\n node.property.type === \"Identifier\" &&\n isDecoratorMemberExpression(node.object)\n );\n default:\n return false;\n }\n}\n\nexport function isLastChild(parent: t.Node, child: t.Node) {\n const visitorKeys = VISITOR_KEYS[parent.type];\n for (let i = visitorKeys.length - 1; i >= 0; i--) {\n const val = (parent as any)[visitorKeys[i]] as t.Node | t.Node[] | null;\n if (val === child) {\n return true;\n } else if (Array.isArray(val)) {\n let j = val.length - 1;\n while (j >= 0 && val[j] === null) j--;\n return j >= 0 && val[j] === child;\n } else if (val) {\n return false;\n }\n }\n return false;\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,EAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAAgD;EAHvCG;AAAY,IAAAF,EAAA;AAAA,MAKHG,YAAY,GAAAC,OAAA,CAAAD,YAAA;EAAAE,MAAA;EAAAC,mBAAA;EAAAC,SAAA;EAAAC,aAAA;EAAAC,mBAAA;EAAAC,WAAA;EAAAC,SAAA;EAAAC,SAAA;EAAAC,yBAAA;EAAAC,wCAAA;AAAA;AA2B9B,KAAK,MAAMC,IAAI,IAAIC,MAAM,CAACC,IAAI,CAACnB,MAAM,CAAC,EAA6B;EACjE,MAAMoB,IAAI,GAAGpB,MAAM,CAACiB,IAAI,CAAC;EACzB,IAAII,wBAAiB,CAACC,GAAG,CAACL,IAAI,CAAC,EAAE;IAC/BI,wBAAiB,CAACE,GAAG,CAACN,IAAI,CAAC,CAAE,CAAC,CAAC,GAAGG,IAAI;EACxC;AACF;AAEA,SAASI,qBAAqBA,CAACC,IAAY,EAAW;EACpD,QAAQA,IAAI,CAACR,IAAI;IACf,KAAK,gBAAgB;MACnB,OAAO,IAAI;IACb,KAAK,kBAAkB;MACrB,OAAOO,qBAAqB,CAACC,IAAI,CAACC,MAAM,CAAC;EAC7C;EACA,OAAO,KAAK;AACd;AAEO,SAASC,iBAAiBA,CAC/BF,IAAY,EACZG,MAAW,EACXC,QAAgB,EACP;EACT,QAAQA,QAAQ;IACd;MACE,IAAID,MAAM,CAACE,MAAM,KAAKL,IAAI,EAAE;QAC1B,IAAID,qBAAqB,CAACC,IAAI,CAAC,EAAE,OAAO,IAAI;MAC9C;MACA;IACF;MACE,OACE,CAACM,2BAA2B,CAACN,IAAI,CAAC,IAClC,EACEA,IAAI,CAACR,IAAI,KAAK,gBAAgB,IAC9Bc,2BAA2B,CAACN,IAAI,CAACK,MAAM,CAAC,CACzC,IACDL,IAAI,CAACR,IAAI,KAAK,yBAAyB;EAE7C;EACA,OAAO,KAAK;AACd;AAEA,SAASc,2BAA2BA,CAACN,IAAY,EAAW;EAC1D,QAAQA,IAAI,CAACR,IAAI;IACf,KAAK,YAAY;MACf,OAAO,IAAI;IACb,KAAK,kBAAkB;MACrB,OACE,CAACQ,IAAI,CAACO,QAAQ,IACdP,IAAI,CAACQ,QAAQ,CAAChB,IAAI,KAAK,YAAY,IACnCc,2BAA2B,CAACN,IAAI,CAACC,MAAM,CAAC;IAE5C;MACE,OAAO,KAAK;EAChB;AACF;AAEO,SAASQ,WAAWA,CAACN,MAAc,EAAEO,KAAa,EAAE;EACzD,MAAMC,WAAW,GAAGhC,YAAY,CAACwB,MAAM,CAACX,IAAI,CAAC;EAC7C,KAAK,IAAIoB,CAAC,GAAGD,WAAW,CAACE,MAAM,GAAG,CAAC,EAAED,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;IAChD,MAAME,GAAG,GAAIX,MAAM,CAASQ,WAAW,CAACC,CAAC,CAAC,CAA6B;IACvE,IAAIE,GAAG,KAAKJ,KAAK,EAAE;MACjB,OAAO,IAAI;IACb,CAAC,MAAM,IAAIK,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,EAAE;MAC7B,IAAIG,CAAC,GAAGH,GAAG,CAACD,MAAM,GAAG,CAAC;MACtB,OAAOI,CAAC,IAAI,CAAC,IAAIH,GAAG,CAACG,CAAC,CAAC,KAAK,IAAI,EAAEA,CAAC,EAAE;MACrC,OAAOA,CAAC,IAAI,CAAC,IAAIH,GAAG,CAACG,CAAC,CAAC,KAAKP,KAAK;IACnC,CAAC,MAAM,IAAII,GAAG,EAAE;MACd,OAAO,KAAK;IACd;EACF;EACA,OAAO,KAAK;AACd","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/node/parentheses.js b/node_modules/@babel/generator/lib/node/parentheses.js new file mode 100644 index 0000000..b7e1f4f --- /dev/null +++ b/node_modules/@babel/generator/lib/node/parentheses.js @@ -0,0 +1,298 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.AssignmentExpression = AssignmentExpression; +exports.BinaryExpression = BinaryExpression; +exports.ClassExpression = ClassExpression; +exports.ArrowFunctionExpression = exports.ConditionalExpression = ConditionalExpression; +exports.DoExpression = DoExpression; +exports.FunctionExpression = FunctionExpression; +exports.FunctionTypeAnnotation = FunctionTypeAnnotation; +exports.Identifier = Identifier; +exports.LogicalExpression = LogicalExpression; +exports.NullableTypeAnnotation = NullableTypeAnnotation; +exports.ObjectExpression = ObjectExpression; +exports.OptionalIndexedAccessType = OptionalIndexedAccessType; +exports.OptionalCallExpression = exports.OptionalMemberExpression = OptionalMemberExpression; +exports.SequenceExpression = SequenceExpression; +exports.TSSatisfiesExpression = exports.TSAsExpression = TSAsExpression; +exports.TSConditionalType = TSConditionalType; +exports.TSConstructorType = exports.TSFunctionType = TSFunctionType; +exports.TSInferType = TSInferType; +exports.TSInstantiationExpression = TSInstantiationExpression; +exports.TSIntersectionType = TSIntersectionType; +exports.SpreadElement = exports.UnaryExpression = exports.TSTypeAssertion = UnaryLike; +exports.TSTypeOperator = TSTypeOperator; +exports.TSUnionType = TSUnionType; +exports.IntersectionTypeAnnotation = exports.UnionTypeAnnotation = UnionTypeAnnotation; +exports.UpdateExpression = UpdateExpression; +exports.AwaitExpression = exports.YieldExpression = YieldExpression; +var _t = require("@babel/types"); +var _index = require("./index.js"); +const { + isMemberExpression, + isOptionalMemberExpression, + isYieldExpression, + isStatement +} = _t; +const PRECEDENCE = new Map([["||", 0], ["??", 1], ["&&", 2], ["|", 3], ["^", 4], ["&", 5], ["==", 6], ["===", 6], ["!=", 6], ["!==", 6], ["<", 7], [">", 7], ["<=", 7], [">=", 7], ["in", 7], ["instanceof", 7], [">>", 8], ["<<", 8], [">>>", 8], ["+", 9], ["-", 9], ["*", 10], ["/", 10], ["%", 10], ["**", 11]]); +function isTSTypeExpression(nodeId) { + return nodeId === 156 || nodeId === 201 || nodeId === 209; +} +const isClassExtendsClause = (node, parent, parentId) => { + return (parentId === 21 || parentId === 22) && parent.superClass === node; +}; +const hasPostfixPart = (node, parent, parentId) => { + switch (parentId) { + case 108: + case 132: + return parent.object === node; + case 17: + case 130: + case 112: + return parent.callee === node; + case 222: + return parent.tag === node; + case 191: + return true; + } + return false; +}; +function NullableTypeAnnotation(node, parent, parentId) { + return parentId === 4; +} +function FunctionTypeAnnotation(node, parent, parentId, tokenContext) { + return (parentId === 239 || parentId === 90 || parentId === 4 || (tokenContext & _index.TokenContext.arrowFlowReturnType) > 0 + ); +} +function UpdateExpression(node, parent, parentId) { + return hasPostfixPart(node, parent, parentId) || isClassExtendsClause(node, parent, parentId); +} +function needsParenBeforeExpressionBrace(tokenContext) { + return (tokenContext & (_index.TokenContext.expressionStatement | _index.TokenContext.arrowBody)) > 0; +} +function ObjectExpression(node, parent, parentId, tokenContext) { + return needsParenBeforeExpressionBrace(tokenContext); +} +function DoExpression(node, parent, parentId, tokenContext) { + return (tokenContext & _index.TokenContext.expressionStatement) > 0 && !node.async; +} +function BinaryLike(node, parent, parentId, nodeType) { + if (isClassExtendsClause(node, parent, parentId)) { + return true; + } + if (hasPostfixPart(node, parent, parentId) || parentId === 238 || parentId === 145 || parentId === 8) { + return true; + } + let parentPos; + switch (parentId) { + case 10: + case 107: + parentPos = PRECEDENCE.get(parent.operator); + break; + case 156: + case 201: + parentPos = 7; + } + if (parentPos !== undefined) { + const nodePos = nodeType === 2 ? 7 : PRECEDENCE.get(node.operator); + if (parentPos > nodePos) return true; + if (parentPos === nodePos && parentId === 10 && (nodePos === 11 ? parent.left === node : parent.right === node)) { + return true; + } + if (nodeType === 1 && parentId === 107 && (nodePos === 1 && parentPos !== 1 || parentPos === 1 && nodePos !== 1)) { + return true; + } + } + return false; +} +function UnionTypeAnnotation(node, parent, parentId) { + switch (parentId) { + case 4: + case 115: + case 90: + case 239: + return true; + } + return false; +} +function OptionalIndexedAccessType(node, parent, parentId) { + return parentId === 84 && parent.objectType === node; +} +function TSAsExpression(node, parent, parentId) { + if ((parentId === 6 || parentId === 7) && parent.left === node) { + return true; + } + if (parentId === 10 && (parent.operator === "|" || parent.operator === "&") && node === parent.left) { + return true; + } + return BinaryLike(node, parent, parentId, 2); +} +function TSConditionalType(node, parent, parentId) { + switch (parentId) { + case 155: + case 195: + case 211: + case 212: + return true; + case 175: + return parent.objectType === node; + case 181: + case 219: + return parent.types[0] === node; + case 161: + return parent.checkType === node || parent.extendsType === node; + } + return false; +} +function TSUnionType(node, parent, parentId) { + switch (parentId) { + case 181: + case 211: + case 155: + case 195: + return true; + case 175: + return parent.objectType === node; + } + return false; +} +function TSIntersectionType(node, parent, parentId) { + return parentId === 211 || TSTypeOperator(node, parent, parentId); +} +function TSInferType(node, parent, parentId) { + if (TSTypeOperator(node, parent, parentId)) { + return true; + } + if ((parentId === 181 || parentId === 219) && node.typeParameter.constraint && parent.types[0] === node) { + return true; + } + return false; +} +function TSTypeOperator(node, parent, parentId) { + switch (parentId) { + case 155: + case 195: + return true; + case 175: + if (parent.objectType === node) { + return true; + } + } + return false; +} +function TSInstantiationExpression(node, parent, parentId) { + switch (parentId) { + case 17: + case 130: + case 112: + case 177: + return (parent.typeParameters + ) != null; + } + return false; +} +function TSFunctionType(node, parent, parentId) { + if (TSUnionType(node, parent, parentId)) return true; + return parentId === 219 || parentId === 161 && (parent.checkType === node || parent.extendsType === node); +} +function BinaryExpression(node, parent, parentId, tokenContext) { + if (BinaryLike(node, parent, parentId, 0)) return true; + return (tokenContext & _index.TokenContext.forInOrInitHeadAccumulate) > 0 && node.operator === "in"; +} +function LogicalExpression(node, parent, parentId) { + return BinaryLike(node, parent, parentId, 1); +} +function SequenceExpression(node, parent, parentId) { + if (parentId === 144 || parentId === 133 || parentId === 108 && parent.property === node || parentId === 132 && parent.property === node || parentId === 224) { + return false; + } + if (parentId === 21) { + return true; + } + if (parentId === 68) { + return parent.right === node; + } + if (parentId === 60) { + return true; + } + return !isStatement(parent); +} +function YieldExpression(node, parent, parentId) { + return parentId === 10 || parentId === 107 || parentId === 238 || parentId === 145 || hasPostfixPart(node, parent, parentId) || parentId === 8 && isYieldExpression(node) || parentId === 28 && node === parent.test || isClassExtendsClause(node, parent, parentId) || isTSTypeExpression(parentId); +} +function ClassExpression(node, parent, parentId, tokenContext) { + return (tokenContext & (_index.TokenContext.expressionStatement | _index.TokenContext.exportDefault)) > 0; +} +function UnaryLike(node, parent, parentId) { + return hasPostfixPart(node, parent, parentId) || parentId === 10 && parent.operator === "**" && parent.left === node || isClassExtendsClause(node, parent, parentId); +} +function FunctionExpression(node, parent, parentId, tokenContext) { + return (tokenContext & (_index.TokenContext.expressionStatement | _index.TokenContext.exportDefault)) > 0; +} +function ConditionalExpression(node, parent, parentId) { + switch (parentId) { + case 238: + case 145: + case 10: + case 107: + case 8: + return true; + case 28: + if (parent.test === node) { + return true; + } + } + if (isTSTypeExpression(parentId)) { + return true; + } + return UnaryLike(node, parent, parentId); +} +function OptionalMemberExpression(node, parent, parentId) { + switch (parentId) { + case 17: + return parent.callee === node; + case 108: + return parent.object === node; + } + return false; +} +function AssignmentExpression(node, parent, parentId, tokenContext) { + if (needsParenBeforeExpressionBrace(tokenContext) && node.left.type === "ObjectPattern") { + return true; + } + return ConditionalExpression(node, parent, parentId); +} +function Identifier(node, parent, parentId, tokenContext, getRawIdentifier) { + var _node$extra; + if (getRawIdentifier && getRawIdentifier(node) !== node.name) { + return false; + } + if (parentId === 6 && (_node$extra = node.extra) != null && _node$extra.parenthesized && parent.left === node) { + const rightType = parent.right.type; + if ((rightType === "FunctionExpression" || rightType === "ClassExpression") && parent.right.id == null) { + return true; + } + } + if (tokenContext & _index.TokenContext.forOfHead || (parentId === 108 || parentId === 132) && tokenContext & (_index.TokenContext.expressionStatement | _index.TokenContext.forInitHead | _index.TokenContext.forInHead)) { + if (node.name === "let") { + const isFollowedByBracket = isMemberExpression(parent, { + object: node, + computed: true + }) || isOptionalMemberExpression(parent, { + object: node, + computed: true, + optional: false + }); + if (isFollowedByBracket && tokenContext & (_index.TokenContext.expressionStatement | _index.TokenContext.forInitHead | _index.TokenContext.forInHead)) { + return true; + } + return (tokenContext & _index.TokenContext.forOfHead) > 0; + } + } + return parentId === 68 && parent.left === node && node.name === "async" && !parent.await; +} + +//# sourceMappingURL=parentheses.js.map diff --git a/node_modules/@babel/generator/lib/node/parentheses.js.map b/node_modules/@babel/generator/lib/node/parentheses.js.map new file mode 100644 index 0000000..0120e9c --- /dev/null +++ b/node_modules/@babel/generator/lib/node/parentheses.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_t","require","_index","isMemberExpression","isOptionalMemberExpression","isYieldExpression","isStatement","PRECEDENCE","Map","isTSTypeExpression","nodeId","isClassExtendsClause","node","parent","parentId","superClass","hasPostfixPart","object","callee","tag","NullableTypeAnnotation","FunctionTypeAnnotation","tokenContext","TokenContext","arrowFlowReturnType","UpdateExpression","needsParenBeforeExpressionBrace","expressionStatement","arrowBody","ObjectExpression","DoExpression","async","BinaryLike","nodeType","parentPos","get","operator","undefined","nodePos","left","right","UnionTypeAnnotation","OptionalIndexedAccessType","objectType","TSAsExpression","TSConditionalType","types","checkType","extendsType","TSUnionType","TSIntersectionType","TSTypeOperator","TSInferType","typeParameter","constraint","TSInstantiationExpression","typeParameters","TSFunctionType","BinaryExpression","forInOrInitHeadAccumulate","LogicalExpression","SequenceExpression","property","YieldExpression","test","ClassExpression","exportDefault","UnaryLike","FunctionExpression","ConditionalExpression","OptionalMemberExpression","AssignmentExpression","type","Identifier","getRawIdentifier","_node$extra","name","extra","parenthesized","rightType","id","forOfHead","forInitHead","forInHead","isFollowedByBracket","computed","optional","await"],"sources":["../../src/node/parentheses.ts"],"sourcesContent":["import {\n isMemberExpression,\n isOptionalMemberExpression,\n isYieldExpression,\n isStatement,\n} from \"@babel/types\";\nimport type * as t from \"@babel/types\";\n\nimport { TokenContext } from \"./index.ts\";\n\nconst PRECEDENCE = new Map([\n [\"||\", 0],\n [\"??\", 1],\n [\"&&\", 2],\n [\"|\", 3],\n [\"^\", 4],\n [\"&\", 5],\n [\"==\", 6],\n [\"===\", 6],\n [\"!=\", 6],\n [\"!==\", 6],\n [\"<\", 7],\n [\">\", 7],\n [\"<=\", 7],\n [\">=\", 7],\n [\"in\", 7],\n [\"instanceof\", 7],\n [\">>\", 8],\n [\"<<\", 8],\n [\">>>\", 8],\n [\"+\", 9],\n [\"-\", 9],\n [\"*\", 10],\n [\"/\", 10],\n [\"%\", 10],\n [\"**\", 11],\n]);\n\nfunction isTSTypeExpression(nodeId: number) {\n return (\n nodeId === __node(\"TSAsExpression\") ||\n nodeId === __node(\"TSSatisfiesExpression\") ||\n nodeId === __node(\"TSTypeAssertion\")\n );\n}\n\nconst isClassExtendsClause = (\n node: t.Node,\n parent: any,\n parentId: number,\n): parent is t.Class => {\n return (\n (parentId === __node(\"ClassDeclaration\") ||\n parentId === __node(\"ClassExpression\")) &&\n parent.superClass === node\n );\n};\n\nconst hasPostfixPart = (node: t.Node, parent: any, parentId: number) => {\n switch (parentId) {\n case __node(\"MemberExpression\"):\n case __node(\"OptionalMemberExpression\"):\n return parent.object === node;\n case __node(\"CallExpression\"):\n case __node(\"OptionalCallExpression\"):\n case __node(\"NewExpression\"):\n return parent.callee === node;\n case __node(\"TaggedTemplateExpression\"):\n return parent.tag === node;\n case __node(\"TSNonNullExpression\"):\n return true;\n }\n\n return false;\n};\n\nexport function NullableTypeAnnotation(\n node: t.NullableTypeAnnotation,\n parent: any,\n parentId: number,\n): boolean {\n return parentId === __node(\"ArrayTypeAnnotation\");\n}\n\nexport function FunctionTypeAnnotation(\n node: t.FunctionTypeAnnotation,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n return (\n // (() => A) | (() => B)\n parentId === __node(\"UnionTypeAnnotation\") ||\n // (() => A) & (() => B)\n parentId === __node(\"IntersectionTypeAnnotation\") ||\n // (() => A)[]\n parentId === __node(\"ArrayTypeAnnotation\") ||\n (tokenContext & TokenContext.arrowFlowReturnType) > 0\n );\n}\n\nexport function UpdateExpression(\n node: t.UpdateExpression,\n parent: any,\n parentId: number,\n): boolean {\n return (\n hasPostfixPart(node, parent, parentId) ||\n isClassExtendsClause(node, parent, parentId)\n );\n}\n\nfunction needsParenBeforeExpressionBrace(tokenContext: number) {\n return (\n (tokenContext &\n (TokenContext.expressionStatement | TokenContext.arrowBody)) >\n 0\n );\n}\n\nexport function ObjectExpression(\n node: t.ObjectExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n return needsParenBeforeExpressionBrace(tokenContext);\n}\n\nexport function DoExpression(\n node: t.DoExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n // `async do` can start an expression statement\n return (tokenContext & TokenContext.expressionStatement) > 0 && !node.async;\n}\n\nconst enum BinaryLikeType {\n Binary = 0,\n Logical = 1,\n TypeScript = 2,\n}\n\nfunction BinaryLike(\n node: t.Binary | t.TSAsExpression | t.TSSatisfiesExpression,\n parent: any,\n parentId: number,\n nodeType: BinaryLikeType,\n): boolean {\n if (isClassExtendsClause(node, parent, parentId)) {\n return true;\n }\n\n if (\n hasPostfixPart(node, parent, parentId) ||\n parentId === __node(\"UnaryExpression\") ||\n parentId === __node(\"SpreadElement\") ||\n parentId === __node(\"AwaitExpression\")\n ) {\n return true;\n }\n let parentPos: number | undefined;\n switch (parentId) {\n case __node(\"BinaryExpression\"):\n case __node(\"LogicalExpression\"):\n parentPos = PRECEDENCE.get(parent.operator);\n break;\n case __node(\"TSAsExpression\"):\n case __node(\"TSSatisfiesExpression\"):\n parentPos = 7; /* in */\n }\n if (parentPos !== undefined) {\n const nodePos =\n nodeType === BinaryLikeType.TypeScript\n ? 7 /* in */\n : PRECEDENCE.get((node as t.Binary).operator)!;\n if (parentPos > nodePos) return true;\n if (\n parentPos === nodePos &&\n parentId === __node(\"BinaryExpression\") &&\n (nodePos === 11 /* ** */ ? parent.left === node : parent.right === node)\n ) {\n return true;\n }\n if (\n nodeType === BinaryLikeType.Logical &&\n parentId === __node(\"LogicalExpression\") &&\n // 1: ??\n ((nodePos === 1 && parentPos !== 1) || (parentPos === 1 && nodePos !== 1))\n ) {\n return true;\n }\n }\n return false;\n}\n\nexport function UnionTypeAnnotation(\n node: t.UnionTypeAnnotation | t.IntersectionTypeAnnotation,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"ArrayTypeAnnotation\"):\n case __node(\"NullableTypeAnnotation\"):\n case __node(\"IntersectionTypeAnnotation\"):\n case __node(\"UnionTypeAnnotation\"):\n return true;\n }\n return false;\n}\n\nexport { UnionTypeAnnotation as IntersectionTypeAnnotation };\n\nexport function OptionalIndexedAccessType(\n node: t.OptionalIndexedAccessType,\n parent: any,\n parentId: number,\n): boolean {\n return parentId === __node(\"IndexedAccessType\") && parent.objectType === node;\n}\n\nexport function TSAsExpression(\n node: t.TSAsExpression | t.TSSatisfiesExpression,\n parent: any,\n parentId: number,\n): boolean {\n if (\n (parentId === __node(\"AssignmentExpression\") ||\n parentId === __node(\"AssignmentPattern\")) &&\n parent.left === node\n ) {\n return true;\n }\n if (\n parentId === __node(\"BinaryExpression\") &&\n (parent.operator === \"|\" || parent.operator === \"&\") &&\n node === parent.left\n ) {\n return true;\n }\n return BinaryLike(node, parent, parentId, BinaryLikeType.TypeScript);\n}\n\nexport { TSAsExpression as TSSatisfiesExpression };\n\nexport { UnaryLike as TSTypeAssertion };\n\nexport function TSConditionalType(\n node: t.TSConditionalType,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"TSArrayType\"):\n case __node(\"TSOptionalType\"):\n case __node(\"TSTypeOperator\"):\n // for `infer K extends (L extends M ? M : ...)`\n // fallthrough\n case __node(\"TSTypeParameter\"):\n return true;\n case __node(\"TSIndexedAccessType\"):\n return parent.objectType === node;\n case __node(\"TSIntersectionType\"):\n case __node(\"TSUnionType\"):\n return parent.types[0] === node;\n case __node(\"TSConditionalType\"):\n return parent.checkType === node || parent.extendsType === node;\n }\n return false;\n}\n\nexport function TSUnionType(\n node: t.TSUnionType | t.TSFunctionType,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"TSIntersectionType\"):\n case __node(\"TSTypeOperator\"):\n case __node(\"TSArrayType\"):\n case __node(\"TSOptionalType\"):\n return true;\n case __node(\"TSIndexedAccessType\"):\n return parent.objectType === node;\n }\n return false;\n}\n\nexport function TSIntersectionType(\n node: t.TSUnionType,\n parent: any,\n parentId: number,\n): boolean {\n return (\n parentId === __node(\"TSTypeOperator\") ||\n TSTypeOperator(node, parent, parentId)\n );\n}\n\nexport function TSInferType(\n node: t.TSInferType,\n parent: any,\n parentId: number,\n): boolean {\n if (TSTypeOperator(node, parent, parentId)) {\n return true;\n }\n if (\n (parentId === __node(\"TSIntersectionType\") ||\n parentId === __node(\"TSUnionType\")) &&\n node.typeParameter.constraint &&\n parent.types[0] === node\n ) {\n return true;\n }\n return false;\n}\n\nexport function TSTypeOperator(\n node: t.TSTypeOperator | t.TSUnionType | t.TSInferType,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"TSArrayType\"):\n case __node(\"TSOptionalType\"):\n return true;\n case __node(\"TSIndexedAccessType\"):\n if (parent.objectType === node) {\n return true;\n }\n }\n return false;\n}\n\nexport function TSInstantiationExpression(\n node: t.TSInstantiationExpression,\n parent: any,\n parentId: number,\n) {\n switch (parentId) {\n case __node(\"CallExpression\"):\n case __node(\"OptionalCallExpression\"):\n case __node(\"NewExpression\"):\n case __node(\"TSInstantiationExpression\"):\n return (\n (process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n parent.typeArguments\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n parent.typeParameters) != null\n );\n }\n\n return false;\n}\n\nexport function TSFunctionType(\n node: t.TSFunctionType,\n parent: any,\n parentId: number,\n): boolean {\n if (TSUnionType(node, parent, parentId)) return true;\n\n return (\n parentId === __node(\"TSUnionType\") ||\n (parentId === __node(\"TSConditionalType\") &&\n (parent.checkType === node || parent.extendsType === node))\n );\n}\n\nexport { TSFunctionType as TSConstructorType };\n\nexport function BinaryExpression(\n node: t.BinaryExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n if (BinaryLike(node, parent, parentId, BinaryLikeType.Binary)) return true;\n\n // for ((1 in []);;);\n // for (var x = (1 in []) in 2);\n return (\n (tokenContext & TokenContext.forInOrInitHeadAccumulate) > 0 &&\n node.operator === \"in\"\n );\n}\n\nexport function LogicalExpression(\n node: t.LogicalExpression,\n parent: any,\n parentId: number,\n): boolean {\n return BinaryLike(node, parent, parentId, BinaryLikeType.Logical);\n}\n\nexport function SequenceExpression(\n node: t.SequenceExpression,\n parent: any,\n parentId: number,\n): boolean {\n if (\n parentId === __node(\"SequenceExpression\") ||\n parentId === __node(\"ParenthesizedExpression\") ||\n (parentId === __node(\"MemberExpression\") && parent.property === node) ||\n (parentId === __node(\"OptionalMemberExpression\") &&\n parent.property === node) ||\n parentId === __node(\"TemplateLiteral\")\n ) {\n return false;\n }\n if (parentId === __node(\"ClassDeclaration\")) {\n return true;\n }\n if (parentId === __node(\"ForOfStatement\")) {\n return parent.right === node;\n }\n if (parentId === __node(\"ExportDefaultDeclaration\")) {\n return true;\n }\n\n return !isStatement(parent);\n}\n\nexport function YieldExpression(\n node: t.YieldExpression,\n parent: any,\n parentId: number,\n): boolean {\n return (\n parentId === __node(\"BinaryExpression\") ||\n parentId === __node(\"LogicalExpression\") ||\n parentId === __node(\"UnaryExpression\") ||\n parentId === __node(\"SpreadElement\") ||\n hasPostfixPart(node, parent, parentId) ||\n (parentId === __node(\"AwaitExpression\") && isYieldExpression(node)) ||\n (parentId === __node(\"ConditionalExpression\") && node === parent.test) ||\n isClassExtendsClause(node, parent, parentId) ||\n isTSTypeExpression(parentId)\n );\n}\n\nexport { YieldExpression as AwaitExpression };\n\nexport function ClassExpression(\n node: t.ClassExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n return (\n (tokenContext &\n (TokenContext.expressionStatement | TokenContext.exportDefault)) >\n 0\n );\n}\n\nfunction UnaryLike(\n node:\n | t.UnaryLike\n | t.TSTypeAssertion\n | t.ArrowFunctionExpression\n | t.ConditionalExpression\n | t.AssignmentExpression,\n parent: any,\n parentId: number,\n): boolean {\n return (\n hasPostfixPart(node, parent, parentId) ||\n (parentId === __node(\"BinaryExpression\") &&\n parent.operator === \"**\" &&\n parent.left === node) ||\n isClassExtendsClause(node, parent, parentId)\n );\n}\n\nexport { UnaryLike as UnaryExpression, UnaryLike as SpreadElement };\n\nexport function FunctionExpression(\n node: t.FunctionExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n return (\n (tokenContext &\n (TokenContext.expressionStatement | TokenContext.exportDefault)) >\n 0\n );\n}\n\nexport function ConditionalExpression(\n node:\n | t.ConditionalExpression\n | t.ArrowFunctionExpression\n | t.AssignmentExpression,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"UnaryExpression\"):\n case __node(\"SpreadElement\"):\n case __node(\"BinaryExpression\"):\n case __node(\"LogicalExpression\"):\n case __node(\"AwaitExpression\"):\n return true;\n case __node(\"ConditionalExpression\"):\n if (parent.test === node) {\n return true;\n }\n }\n\n if (isTSTypeExpression(parentId)) {\n return true;\n }\n\n return UnaryLike(node, parent, parentId);\n}\n\nexport { ConditionalExpression as ArrowFunctionExpression };\n\nexport function OptionalMemberExpression(\n node: t.OptionalMemberExpression,\n parent: any,\n parentId: number,\n): boolean {\n switch (parentId) {\n case __node(\"CallExpression\"):\n return parent.callee === node;\n case __node(\"MemberExpression\"):\n return parent.object === node;\n }\n return false;\n}\n\nexport { OptionalMemberExpression as OptionalCallExpression };\n\nexport function AssignmentExpression(\n node: t.AssignmentExpression,\n parent: any,\n parentId: number,\n tokenContext: number,\n): boolean {\n if (\n needsParenBeforeExpressionBrace(tokenContext) &&\n node.left.type === \"ObjectPattern\"\n ) {\n return true;\n }\n return ConditionalExpression(node, parent, parentId);\n}\n\nexport function Identifier(\n node: t.Identifier,\n parent: any,\n parentId: number,\n tokenContext: number,\n getRawIdentifier: (node: t.Identifier) => string,\n): boolean {\n if (getRawIdentifier && getRawIdentifier(node) !== node.name) {\n return false;\n }\n\n // 13.15.2 AssignmentExpression RS: Evaluation\n // (fn) = function () {};\n if (\n parentId === __node(\"AssignmentExpression\") &&\n node.extra?.parenthesized &&\n parent.left === node\n ) {\n const rightType = parent.right.type;\n if (\n (rightType === \"FunctionExpression\" || rightType === \"ClassExpression\") &&\n parent.right.id == null\n ) {\n return true;\n }\n }\n\n // fast path\n if (\n tokenContext & TokenContext.forOfHead ||\n ((parentId === __node(\"MemberExpression\") ||\n parentId === __node(\"OptionalMemberExpression\")) &&\n tokenContext &\n (TokenContext.expressionStatement |\n TokenContext.forInitHead |\n TokenContext.forInHead))\n ) {\n // Non-strict code allows the identifier `let`, but it cannot occur as-is in\n // certain contexts to avoid ambiguity with contextual keyword `let`.\n if (node.name === \"let\") {\n // Some contexts only forbid `let [`, so check if the next token would\n // be the left bracket of a computed member expression.\n const isFollowedByBracket =\n isMemberExpression(parent, {\n object: node,\n computed: true,\n }) ||\n isOptionalMemberExpression(parent, {\n object: node,\n computed: true,\n optional: false,\n });\n if (\n isFollowedByBracket &&\n tokenContext &\n (TokenContext.expressionStatement |\n TokenContext.forInitHead |\n TokenContext.forInHead)\n ) {\n return true;\n }\n return (tokenContext & TokenContext.forOfHead) > 0;\n }\n }\n\n // ECMAScript specifically forbids a for-of loop from starting with the\n // token sequence `for (async of`, because it would be ambiguous with\n // `for (async of => {};;)`, so we need to add extra parentheses.\n return (\n parentId === __node(\"ForOfStatement\") &&\n parent.left === node &&\n node.name === \"async\" &&\n !parent.await\n );\n}\n"],"mappings":"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","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/nodes.js b/node_modules/@babel/generator/lib/nodes.js new file mode 100644 index 0000000..8754a38 --- /dev/null +++ b/node_modules/@babel/generator/lib/nodes.js @@ -0,0 +1,19 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.generatorInfosMap = void 0; +var generatorFunctions = require("./generators/index.js"); +var deprecatedGeneratorFunctions = require("./generators/deprecated.js"); +const generatorInfosMap = exports.generatorInfosMap = new Map(); +let index = 0; +for (const key of Object.keys(generatorFunctions).sort()) { + if (key.startsWith("_")) continue; + generatorInfosMap.set(key, [generatorFunctions[key], index++, undefined]); +} +for (const key of Object.keys(deprecatedGeneratorFunctions)) { + generatorInfosMap.set(key, [deprecatedGeneratorFunctions[key], index++, undefined]); +} + +//# sourceMappingURL=nodes.js.map diff --git a/node_modules/@babel/generator/lib/nodes.js.map b/node_modules/@babel/generator/lib/nodes.js.map new file mode 100644 index 0000000..6aa8283 --- /dev/null +++ b/node_modules/@babel/generator/lib/nodes.js.map @@ -0,0 +1 @@ +{"version":3,"names":["generatorFunctions","require","deprecatedGeneratorFunctions","generatorInfosMap","exports","Map","index","key","Object","keys","sort","startsWith","set","undefined"],"sources":["../src/nodes.ts"],"sourcesContent":["import type * as t from \"@babel/types\";\n\nimport * as generatorFunctions from \"./generators/index.ts\";\nimport * as deprecatedGeneratorFunctions from \"./generators/deprecated.ts\";\nimport type { NodeHandler } from \"./node/index.ts\";\nimport type Printer from \"./printer.ts\";\n\ndeclare global {\n function __node(type: t.Node[\"type\"]): number;\n}\n\nconst generatorInfosMap = new Map<\n string,\n [\n (this: Printer, node: t.Node, parent?: t.Node | null) => void,\n number,\n NodeHandler | undefined,\n ]\n>();\nlet index = 0;\n\nfor (const key of Object.keys(generatorFunctions).sort() as Exclude<\n keyof typeof generatorFunctions,\n `_${string}`\n>[]) {\n if (key.startsWith(\"_\")) continue;\n generatorInfosMap.set(key, [generatorFunctions[key], index++, undefined]);\n}\nif (!process.env.BABEL_8_BREAKING) {\n for (const key of Object.keys(\n deprecatedGeneratorFunctions,\n ) as (keyof typeof deprecatedGeneratorFunctions)[]) {\n generatorInfosMap.set(key, [\n deprecatedGeneratorFunctions[key],\n index++,\n undefined,\n ]);\n }\n}\n\nexport { generatorInfosMap };\n"],"mappings":";;;;;;AAEA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,4BAAA,GAAAD,OAAA;AAQA,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,IAAIE,GAAG,CAO/B,CAAC;AACH,IAAIC,KAAK,GAAG,CAAC;AAEb,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,IAAI,CAACT,kBAAkB,CAAC,CAACU,IAAI,CAAC,CAAC,EAGnD;EACH,IAAIH,GAAG,CAACI,UAAU,CAAC,GAAG,CAAC,EAAE;EACzBR,iBAAiB,CAACS,GAAG,CAACL,GAAG,EAAE,CAACP,kBAAkB,CAACO,GAAG,CAAC,EAAED,KAAK,EAAE,EAAEO,SAAS,CAAC,CAAC;AAC3E;AAEE,KAAK,MAAMN,GAAG,IAAIC,MAAM,CAACC,IAAI,CAC3BP,4BACF,CAAC,EAAmD;EAClDC,iBAAiB,CAACS,GAAG,CAACL,GAAG,EAAE,CACzBL,4BAA4B,CAACK,GAAG,CAAC,EACjCD,KAAK,EAAE,EACPO,SAAS,CACV,CAAC;AACJ","ignoreList":[]} \ No newline at end of file diff --git a/node_modules/@babel/generator/lib/printer.js b/node_modules/@babel/generator/lib/printer.js new file mode 100644 index 0000000..ffdd45f --- /dev/null +++ b/node_modules/@babel/generator/lib/printer.js @@ -0,0 +1,782 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +var _buffer = require("./buffer.js"); +var _index = require("./node/index.js"); +var _nodes = require("./nodes.js"); +var _t = require("@babel/types"); +var _tokenMap = require("./token-map.js"); +var _types2 = require("./generators/types.js"); +const { + isExpression, + isFunction, + isStatement, + isClassBody, + isTSInterfaceBody, + isTSEnumMember +} = _t; +const SCIENTIFIC_NOTATION = /e/i; +const ZERO_DECIMAL_INTEGER = /\.0+$/; +const HAS_NEWLINE = /[\n\r\u2028\u2029]/; +const HAS_NEWLINE_OR_BlOCK_COMMENT_END = /[\n\r\u2028\u2029]|\*\//; +function commentIsNewline(c) { + return c.type === "CommentLine" || HAS_NEWLINE.test(c.value); +} +class Printer { + constructor(format, map, tokens = null, originalCode = null) { + this.tokenContext = _index.TokenContext.normal; + this._tokens = null; + this._originalCode = null; + this._currentNode = null; + this._currentTypeId = null; + this._indent = 0; + this._indentRepeat = 0; + this._insideAux = false; + this._noLineTerminator = false; + this._noLineTerminatorAfterNode = null; + this._printAuxAfterOnNextUserNode = false; + this._printedComments = new Set(); + this._lastCommentLine = 0; + this._innerCommentsState = 0; + this._flags = 0; + this.tokenMap = null; + this._boundGetRawIdentifier = null; + this._printSemicolonBeforeNextNode = -1; + this._printSemicolonBeforeNextToken = -1; + this.format = format; + this._tokens = tokens; + this._originalCode = originalCode; + this._indentRepeat = format.indent.style.length; + this._inputMap = (map == null ? void 0 : map._inputMap) || null; + this._buf = new _buffer.default(map, format.indent.style[0]); + const { + preserveFormat, + compact, + concise, + retainLines, + retainFunctionParens + } = format; + if (preserveFormat) { + this._flags |= 1; + } + if (compact) { + this._flags |= 2; + } + if (concise) { + this._flags |= 4; + } + if (retainLines) { + this._flags |= 8; + } + if (retainFunctionParens) { + this._flags |= 16; + } + if (format.auxiliaryCommentBefore || format.auxiliaryCommentAfter) { + this._flags |= 32; + } + } + enterDelimited() { + const oldNoLineTerminatorAfterNode = this._noLineTerminatorAfterNode; + if (oldNoLineTerminatorAfterNode !== null) { + this._noLineTerminatorAfterNode = null; + } + return oldNoLineTerminatorAfterNode; + } + generate(ast) { + if (this.format.preserveFormat) { + this.tokenMap = new _tokenMap.TokenMap(ast, this._tokens, this._originalCode); + this._boundGetRawIdentifier = _types2._getRawIdentifier.bind(this); + } + this.print(ast); + this._maybeAddAuxComment(); + return this._buf.get(); + } + indent(flags = this._flags) { + if (flags & (1 | 2 | 4)) { + return; + } + this._indent += this._indentRepeat; + } + dedent(flags = this._flags) { + if (flags & (1 | 2 | 4)) { + return; + } + this._indent -= this._indentRepeat; + } + semicolon(force = false) { + const flags = this._flags; + if (flags & 32) { + this._maybeAddAuxComment(); + } + if (flags & 1) { + const node = this._currentNode; + if (node.start != null && node.end != null) { + if (!this.tokenMap.endMatches(node, ";")) { + this._printSemicolonBeforeNextNode = this._buf.getCurrentLine(); + return; + } + const indexes = this.tokenMap.getIndexes(this._currentNode); + this._catchUpTo(this._tokens[indexes[indexes.length - 1]].loc.start); + } + } + if (force) { + this._appendChar(59); + } else { + this._queue(59); + } + this._noLineTerminator = false; + } + rightBrace(node) { + if (this.format.minified) { + this._buf.removeLastSemicolon(); + } + this.sourceWithOffset("end", node.loc, -1); + this.tokenChar(125); + } + rightParens(node) { + this.sourceWithOffset("end", node.loc, -1); + this.tokenChar(41); + } + space(force = false) { + if (this._flags & (1 | 2)) { + return; + } + if (force) { + this._space(); + } else { + const lastCp = this.getLastChar(true); + if (lastCp !== 0 && lastCp !== 32 && lastCp !== 10) { + this._space(); + } + } + } + word(str, noLineTerminatorAfter = false) { + this.tokenContext &= _index.TokenContext.forInOrInitHeadAccumulatePassThroughMask; + this._maybePrintInnerComments(str); + const flags = this._flags; + if (flags & 32) { + this._maybeAddAuxComment(); + } + if (flags & 1) this._catchUpToCurrentToken(str); + const lastChar = this.getLastChar(); + if (lastChar === -2 || lastChar === -3 || lastChar === 47 && str.charCodeAt(0) === 47) { + this._space(); + } + this._append(str, false); + this.setLastChar(-3); + this._noLineTerminator = noLineTerminatorAfter; + } + number(str, number) { + function isNonDecimalLiteral(str) { + if (str.length > 2 && str.charCodeAt(0) === 48) { + const secondChar = str.charCodeAt(1); + return secondChar === 98 || secondChar === 111 || secondChar === 120; + } + return false; + } + this.word(str); + if (Number.isInteger(number) && !isNonDecimalLiteral(str) && !SCIENTIFIC_NOTATION.test(str) && !ZERO_DECIMAL_INTEGER.test(str) && str.charCodeAt(str.length - 1) !== 46) { + this.setLastChar(-2); + } + } + token(str, maybeNewline = false, occurrenceCount = 0, mayNeedSpace = false) { + this.tokenContext &= _index.TokenContext.forInOrInitHeadAccumulatePassThroughMask; + this._maybePrintInnerComments(str, occurrenceCount); + const flags = this._flags; + if (flags & 32) { + this._maybeAddAuxComment(); + } + if (flags & 1) { + this._catchUpToCurrentToken(str, occurrenceCount); + } + if (mayNeedSpace) { + const strFirst = str.charCodeAt(0); + if ((strFirst === 45 && str === "--" || strFirst === 61) && this.getLastChar() === 33 || strFirst === 43 && this.getLastChar() === 43 || strFirst === 45 && this.getLastChar() === 45 || strFirst === 46 && this.getLastChar() === -2) { + this._space(); + } + } + this._append(str, maybeNewline); + this._noLineTerminator = false; + } + tokenChar(char, occurrenceCount = 0) { + this.tokenContext &= _index.TokenContext.forInOrInitHeadAccumulatePassThroughMask; + this._maybePrintInnerComments(char, occurrenceCount); + const flags = this._flags; + if (flags & 32) { + this._maybeAddAuxComment(); + } + if (flags & 1) { + this._catchUpToCurrentToken(char, occurrenceCount); + } + if (char === 43 && this.getLastChar() === 43 || char === 45 && this.getLastChar() === 45 || char === 46 && this.getLastChar() === -2) { + this._space(); + } + this._appendChar(char); + this._noLineTerminator = false; + } + newline(i = 1, flags = this._flags) { + if (i <= 0) return; + if (flags & (8 | 2)) { + return; + } + if (flags & 4) { + this.space(); + return; + } + if (i > 2) i = 2; + i -= this._buf.getNewlineCount(); + for (let j = 0; j < i; j++) { + this._newline(); + } + } + endsWith(char) { + return this.getLastChar(true) === char; + } + getLastChar(checkQueue) { + return this._buf.getLastChar(checkQueue); + } + setLastChar(char) { + this._buf._last = char; + } + exactSource(loc, cb) { + if (!loc) { + cb(); + return; + } + this._catchUp("start", loc); + this._buf.exactSource(loc, cb); + } + source(prop, loc) { + if (!loc) return; + this._catchUp(prop, loc); + this._buf.source(prop, loc); + } + sourceWithOffset(prop, loc, columnOffset) { + if (!loc || this.format.preserveFormat) return; + this._catchUp(prop, loc); + this._buf.sourceWithOffset(prop, loc, columnOffset); + } + sourceIdentifierName(identifierName, pos) { + if (!this._buf._canMarkIdName) return; + const sourcePosition = this._buf._sourcePosition; + sourcePosition.identifierNamePos = pos; + sourcePosition.identifierName = identifierName; + } + _space() { + this._queue(32); + } + _newline() { + if (this._buf._queuedChar === 32) this._buf._queuedChar = 0; + this._appendChar(10, true); + } + _catchUpToCurrentToken(str, occurrenceCount = 0) { + const token = this.tokenMap.findMatching(this._currentNode, str, occurrenceCount); + if (token) this._catchUpTo(token.loc.start); + if (this._printSemicolonBeforeNextToken !== -1 && this._printSemicolonBeforeNextToken === this._buf.getCurrentLine()) { + this._appendChar(59, true); + } + this._printSemicolonBeforeNextToken = -1; + this._printSemicolonBeforeNextNode = -1; + } + _append(str, maybeNewline) { + this._maybeIndent(); + this._buf.append(str, maybeNewline); + } + _appendChar(char, noIndent) { + if (!noIndent) { + this._maybeIndent(); + } + this._buf.appendChar(char); + } + _queue(char) { + this._buf.queue(char); + this.setLastChar(-1); + } + _maybeIndent() { + const indent = this._shouldIndent(); + if (indent > 0) { + this._buf._appendChar(-1, indent, false); + } + } + _shouldIndent() { + return this.endsWith(10) ? this._indent : 0; + } + catchUp(line) { + if (!this.format.retainLines) return; + const count = line - this._buf.getCurrentLine(); + for (let i = 0; i < count; i++) { + this._newline(); + } + } + _catchUp(prop, loc) { + const flags = this._flags; + if ((flags & 1) === 0) { + if (flags & 8 && loc != null && loc[prop]) { + this.catchUp(loc[prop].line); + } + return; + } + const pos = loc == null ? void 0 : loc[prop]; + if (pos != null) this._catchUpTo(pos); + } + _catchUpTo({ + line, + column, + index + }) { + const count = line - this._buf.getCurrentLine(); + if (count > 0 && this._noLineTerminator) { + return; + } + for (let i = 0; i < count; i++) { + this._newline(); + } + const spacesCount = count > 0 ? column : column - this._buf.getCurrentColumn(); + if (spacesCount > 0) { + const spaces = this._originalCode ? this._originalCode.slice(index - spacesCount, index).replace(/[^\t\x0B\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]/gu, " ") : " ".repeat(spacesCount); + this._append(spaces, false); + this.setLastChar(32); + } + } + printTerminatorless(node) { + this._noLineTerminator = true; + this.print(node); + } + print(node, noLineTerminatorAfter = false, resetTokenContext = false, trailingCommentsLineOffset) { + var _node$leadingComments, _node$leadingComments2; + if (!node) return; + this._innerCommentsState = 0; + const { + type, + loc, + extra + } = node; + const flags = this._flags; + let changedFlags = false; + if (node._compact) { + this._flags |= 4; + changedFlags = true; + } + const nodeInfo = _nodes.generatorInfosMap.get(type); + if (nodeInfo === undefined) { + throw new ReferenceError(`unknown node of type ${JSON.stringify(type)} with constructor ${JSON.stringify(node.constructor.name)}`); + } + const [printMethod, nodeId, needsParens] = nodeInfo; + const parent = this._currentNode; + const parentId = this._currentTypeId; + this._currentNode = node; + this._currentTypeId = nodeId; + if (flags & 1) { + this._printSemicolonBeforeNextToken = this._printSemicolonBeforeNextNode; + } + let oldInAux; + if (flags & 32) { + oldInAux = this._insideAux; + this._insideAux = loc == null; + this._maybeAddAuxComment(this._insideAux && !oldInAux); + } + let oldTokenContext = 0; + if (resetTokenContext) { + oldTokenContext = this.tokenContext; + if (oldTokenContext & _index.TokenContext.forInOrInitHeadAccumulate) { + this.tokenContext = 0; + } else { + oldTokenContext = 0; + } + } + const parenthesized = extra != null && extra.parenthesized; + let shouldPrintParens = parenthesized && flags & 1 || parenthesized && flags & 16 && nodeId === 71 || parent && ((0, _index.parentNeedsParens)(node, parent, parentId) || needsParens != null && needsParens(node, parent, parentId, this.tokenContext, flags & 1 ? this._boundGetRawIdentifier : undefined)); + if (!shouldPrintParens && parenthesized && (_node$leadingComments = node.leadingComments) != null && _node$leadingComments.length && node.leadingComments[0].type === "CommentBlock") { + switch (parentId) { + case 65: + case 243: + case 6: + case 143: + break; + case 17: + case 130: + case 112: + if (parent.callee !== node) break; + default: + shouldPrintParens = true; + } + } + let indentParenthesized = false; + if (!shouldPrintParens && this._noLineTerminator && ((_node$leadingComments2 = node.leadingComments) != null && _node$leadingComments2.some(commentIsNewline) || flags & 8 && loc && loc.start.line > this._buf.getCurrentLine())) { + shouldPrintParens = true; + indentParenthesized = true; + } + let oldNoLineTerminatorAfterNode; + if (!shouldPrintParens) { + noLineTerminatorAfter || (noLineTerminatorAfter = !!parent && this._noLineTerminatorAfterNode === parent && (0, _index.isLastChild)(parent, node)); + if (noLineTerminatorAfter) { + var _node$trailingComment; + if ((_node$trailingComment = node.trailingComments) != null && _node$trailingComment.some(commentIsNewline)) { + if (isExpression(node)) shouldPrintParens = true; + } else { + oldNoLineTerminatorAfterNode = this._noLineTerminatorAfterNode; + this._noLineTerminatorAfterNode = node; + } + } + } + if (shouldPrintParens) { + this.tokenChar(40); + if (indentParenthesized) this.indent(); + this._innerCommentsState = 0; + if (!resetTokenContext) { + oldTokenContext = this.tokenContext; + } + if (oldTokenContext & _index.TokenContext.forInOrInitHeadAccumulate) { + this.tokenContext = 0; + } + oldNoLineTerminatorAfterNode = this._noLineTerminatorAfterNode; + this._noLineTerminatorAfterNode = null; + } + this._printLeadingComments(node, parent); + this.exactSource(nodeId === 139 || nodeId === 66 ? null : loc, printMethod.bind(this, node, parent)); + if (shouldPrintParens) { + this._printTrailingComments(node, parent); + if (indentParenthesized) { + this.dedent(); + this.newline(); + } + this.tokenChar(41); + this._noLineTerminator = noLineTerminatorAfter; + } else if (noLineTerminatorAfter && !this._noLineTerminator) { + this._noLineTerminator = true; + this._printTrailingComments(node, parent); + } else { + this._printTrailingComments(node, parent, trailingCommentsLineOffset); + } + if (oldTokenContext) this.tokenContext = oldTokenContext; + this._currentNode = parent; + this._currentTypeId = parentId; + if (changedFlags) { + this._flags = flags; + } + if (flags & 32) { + this._insideAux = oldInAux; + } + if (oldNoLineTerminatorAfterNode != null) { + this._noLineTerminatorAfterNode = oldNoLineTerminatorAfterNode; + } + this._innerCommentsState = 0; + } + _maybeAddAuxComment(enteredPositionlessNode) { + if (enteredPositionlessNode) this._printAuxBeforeComment(); + if (!this._insideAux) this._printAuxAfterComment(); + } + _printAuxBeforeComment() { + if (this._printAuxAfterOnNextUserNode) return; + this._printAuxAfterOnNextUserNode = true; + const comment = this.format.auxiliaryCommentBefore; + if (comment) { + this._printComment({ + type: "CommentBlock", + value: comment + }, 0); + } + } + _printAuxAfterComment() { + if (!this._printAuxAfterOnNextUserNode) return; + this._printAuxAfterOnNextUserNode = false; + const comment = this.format.auxiliaryCommentAfter; + if (comment) { + this._printComment({ + type: "CommentBlock", + value: comment + }, 0); + } + } + getPossibleRaw(node) { + const extra = node.extra; + if ((extra == null ? void 0 : extra.raw) != null && extra.rawValue != null && node.value === extra.rawValue) { + return extra.raw; + } + } + printJoin(nodes, statement, indent, separator, printTrailingSeparator, resetTokenContext, trailingCommentsLineOffset) { + if (!(nodes != null && nodes.length)) return; + const flags = this._flags; + if (indent == null && flags & 8) { + var _nodes$0$loc; + const startLine = (_nodes$0$loc = nodes[0].loc) == null ? void 0 : _nodes$0$loc.start.line; + if (startLine != null && startLine !== this._buf.getCurrentLine()) { + indent = true; + } + } + if (indent) this.indent(flags); + const len = nodes.length; + for (let i = 0; i < len; i++) { + const node = nodes[i]; + if (!node) continue; + if (statement && i === 0 && this._buf.hasContent()) { + this.newline(1, flags); + } + this.print(node, false, resetTokenContext, trailingCommentsLineOffset || 0); + if (separator != null) { + if (i < len - 1) separator.call(this, i, false);else if (printTrailingSeparator) separator.call(this, i, true); + } + if (statement) { + if (i + 1 === len) { + this.newline(1, flags); + } else { + const lastCommentLine = this._lastCommentLine; + if (lastCommentLine > 0) { + var _nodes$loc; + const offset = (((_nodes$loc = nodes[i + 1].loc) == null ? void 0 : _nodes$loc.start.line) || 0) - lastCommentLine; + if (offset >= 0) { + this.newline(offset || 1, flags); + continue; + } + } + this.newline(1, flags); + } + } + } + if (indent) this.dedent(flags); + } + printAndIndentOnComments(node) { + const indent = node.leadingComments && node.leadingComments.length > 0; + if (indent) this.indent(); + this.print(node); + if (indent) this.dedent(); + } + printBlock(body) { + if (body.type !== "EmptyStatement") { + this.space(); + } + this.print(body); + } + _printTrailingComments(node, parent, lineOffset) { + const { + innerComments, + trailingComments + } = node; + if (innerComments != null && innerComments.length) { + this._printComments(2, innerComments, node, parent, lineOffset); + } + if (trailingComments != null && trailingComments.length) { + this._printComments(2, trailingComments, node, parent, lineOffset); + } else { + this._lastCommentLine = 0; + } + } + _printLeadingComments(node, parent) { + const comments = node.leadingComments; + if (!(comments != null && comments.length)) return; + this._printComments(0, comments, node, parent); + } + _maybePrintInnerComments(nextTokenStr, nextTokenOccurrenceCount) { + var _this$tokenMap; + const state = this._innerCommentsState; + switch (state & 3) { + case 0: + this._innerCommentsState = 1 | 4; + return; + case 1: + this.printInnerComments((state & 4) > 0, (_this$tokenMap = this.tokenMap) == null ? void 0 : _this$tokenMap.findMatching(this._currentNode, nextTokenStr, nextTokenOccurrenceCount)); + } + } + printInnerComments(indent = true, nextToken) { + const node = this._currentNode; + const comments = node.innerComments; + if (!(comments != null && comments.length)) { + this._innerCommentsState = 2; + return; + } + const hasSpace = this.endsWith(32); + if (indent) this.indent(); + switch (this._printComments(1, comments, node, undefined, undefined, nextToken)) { + case 2: + this._innerCommentsState = 2; + case 1: + if (hasSpace) this.space(); + } + if (indent) this.dedent(); + } + noIndentInnerCommentsHere() { + this._innerCommentsState &= ~4; + } + printSequence(nodes, indent, resetTokenContext, trailingCommentsLineOffset) { + this.printJoin(nodes, true, indent != null ? indent : false, undefined, undefined, resetTokenContext, trailingCommentsLineOffset); + } + printList(items, printTrailingSeparator, statement, indent, separator, resetTokenContext) { + this.printJoin(items, statement, indent, separator != null ? separator : commaSeparator, printTrailingSeparator, resetTokenContext); + } + shouldPrintTrailingComma(listEnd) { + if (!this.tokenMap) return null; + const listEndIndex = this.tokenMap.findLastIndex(this._currentNode, token => this.tokenMap.matchesOriginal(token, typeof listEnd === "number" ? String.fromCharCode(listEnd) : listEnd)); + if (listEndIndex <= 0) return null; + return this.tokenMap.matchesOriginal(this._tokens[listEndIndex - 1], ","); + } + _shouldPrintComment(comment, nextToken) { + if (comment.ignore) return 0; + if (this._printedComments.has(comment)) return 0; + if (this._noLineTerminator && HAS_NEWLINE_OR_BlOCK_COMMENT_END.test(comment.value)) { + return 2; + } + if (nextToken && this.tokenMap) { + const commentTok = this.tokenMap.find(this._currentNode, token => token.value === comment.value); + if (commentTok && commentTok.start > nextToken.start) { + return 2; + } + } + this._printedComments.add(comment); + if (!this.format.shouldPrintComment(comment.value)) { + return 0; + } + return 1; + } + _printComment(comment, skipNewLines) { + const noLineTerminator = this._noLineTerminator; + const isBlockComment = comment.type === "CommentBlock"; + const printNewLines = isBlockComment && skipNewLines !== 1 && !noLineTerminator; + if (printNewLines && this._buf.hasContent() && skipNewLines !== 2) { + this.newline(1); + } + switch (this.getLastChar(true)) { + case 47: + this._space(); + case 91: + case 123: + case 40: + break; + default: + this.space(); + } + let val; + if (isBlockComment) { + val = `/*${comment.value}*/`; + if (this.format.indent.adjustMultilineComment) { + var _comment$loc; + const offset = (_comment$loc = comment.loc) == null ? void 0 : _comment$loc.start.column; + if (offset) { + const newlineRegex = new RegExp("\\n\\s{1," + offset + "}", "g"); + val = val.replace(newlineRegex, "\n"); + } + if (this._flags & 4) { + val = val.replace(/\n(?!$)/g, `\n`); + } else { + let indentSize = this.format.retainLines ? 0 : this._buf.getCurrentColumn(); + if (this._shouldIndent() || this.format.retainLines) { + indentSize += this._indent; + } + val = val.replace(/\n(?!$)/g, `\n${" ".repeat(indentSize)}`); + } + } + } else if (!noLineTerminator) { + val = `//${comment.value}`; + } else { + val = `/*${comment.value}*/`; + } + this.source("start", comment.loc); + this._append(val, isBlockComment); + if (!isBlockComment && !noLineTerminator) { + this._newline(); + } + if (printNewLines && skipNewLines !== 3) { + this.newline(1); + } + } + _printComments(type, comments, node, parent, lineOffset = 0, nextToken) { + const nodeLoc = node.loc; + const len = comments.length; + let hasLoc = !!nodeLoc; + const nodeStartLine = hasLoc ? nodeLoc.start.line : 0; + const nodeEndLine = hasLoc ? nodeLoc.end.line : 0; + let lastLine = 0; + let leadingCommentNewline = 0; + const { + _noLineTerminator, + _flags + } = this; + for (let i = 0; i < len; i++) { + const comment = comments[i]; + const shouldPrint = this._shouldPrintComment(comment, nextToken); + if (shouldPrint === 2) { + return i === 0 ? 0 : 1; + } + if (hasLoc && comment.loc && shouldPrint === 1) { + const commentStartLine = comment.loc.start.line; + const commentEndLine = comment.loc.end.line; + if (type === 0) { + let offset = 0; + if (i === 0) { + if (this._buf.hasContent() && (comment.type === "CommentLine" || commentStartLine !== commentEndLine)) { + offset = leadingCommentNewline = 1; + } + } else { + offset = commentStartLine - lastLine; + } + lastLine = commentEndLine; + if (offset > 0 && !_noLineTerminator) { + this.newline(offset, _flags); + } + this._printComment(comment, 1); + if (i + 1 === len) { + const count = Math.max(nodeStartLine - lastLine, leadingCommentNewline); + if (count > 0 && !_noLineTerminator) { + this.newline(count, _flags); + } + lastLine = nodeStartLine; + } + } else if (type === 1) { + const offset = commentStartLine - (i === 0 ? nodeStartLine : lastLine); + lastLine = commentEndLine; + if (offset > 0 && !_noLineTerminator) { + this.newline(offset, _flags); + } + this._printComment(comment, 1); + if (i + 1 === len) { + const count = Math.min(1, nodeEndLine - lastLine); + if (count > 0 && !_noLineTerminator) { + this.newline(count, _flags); + } + lastLine = nodeEndLine; + } + } else { + const offset = commentStartLine - (i === 0 ? nodeEndLine - lineOffset : lastLine); + lastLine = commentEndLine; + if (offset > 0 && !_noLineTerminator) { + this.newline(offset, _flags); + } + this._printComment(comment, 1); + } + } else { + hasLoc = false; + if (shouldPrint !== 1) { + continue; + } + if (len === 1) { + const singleLine = comment.loc ? comment.loc.start.line === comment.loc.end.line : !HAS_NEWLINE.test(comment.value); + const shouldSkipNewline = singleLine && !isStatement(node) && !isClassBody(parent) && !isTSInterfaceBody(parent) && !isTSEnumMember(node); + if (type === 0) { + this._printComment(comment, shouldSkipNewline && node.type !== "ObjectExpression" || singleLine && isFunction(parent) && parent.body === node ? 1 : 0); + } else if (shouldSkipNewline && type === 2) { + this._printComment(comment, 1); + } else { + this._printComment(comment, 0); + } + } else if (type === 1 && !(node.type === "ObjectExpression" && node.properties.length > 1) && node.type !== "ClassBody" && node.type !== "TSInterfaceBody") { + this._printComment(comment, i === 0 ? 2 : i === len - 1 ? 3 : 0); + } else { + this._printComment(comment, 0); + } + } + } + if (type === 2 && hasLoc && lastLine) { + this._lastCommentLine = lastLine; + } + return 2; + } +} +var _default = exports.default = Printer; +function commaSeparator(occurrenceCount, last) { + this.tokenChar(44, occurrenceCount); + if (!last) this.space(); +} + +//# sourceMappingURL=printer.js.map diff --git a/node_modules/@babel/generator/lib/printer.js.map b/node_modules/@babel/generator/lib/printer.js.map new file mode 100644 index 0000000..1576929 --- /dev/null +++ b/node_modules/@babel/generator/lib/printer.js.map @@ -0,0 +1 @@ +{"version":3,"names":["_buffer","require","_index","_nodes","_t","_tokenMap","_types2","isExpression","isFunction","isStatement","isClassBody","isTSInterfaceBody","isTSEnumMember","SCIENTIFIC_NOTATION","ZERO_DECIMAL_INTEGER","HAS_NEWLINE","HAS_NEWLINE_OR_BlOCK_COMMENT_END","commentIsNewline","c","type","test","value","Printer","constructor","format","map","tokens","originalCode","tokenContext","TokenContext","normal","_tokens","_originalCode","_currentNode","_currentTypeId","_indent","_indentRepeat","_insideAux","_noLineTerminator","_noLineTerminatorAfterNode","_printAuxAfterOnNextUserNode","_printedComments","Set","_lastCommentLine","_innerCommentsState","_flags","tokenMap","_boundGetRawIdentifier","_printSemicolonBeforeNextNode","_printSemicolonBeforeNextToken","indent","style","length","_inputMap","_buf","Buffer","preserveFormat","compact","concise","retainLines","retainFunctionParens","auxiliaryCommentBefore","auxiliaryCommentAfter","enterDelimited","oldNoLineTerminatorAfterNode","generate","ast","TokenMap","_getRawIdentifier","bind","print","_maybeAddAuxComment","get","flags","dedent","semicolon","force","node","start","end","endMatches","getCurrentLine","indexes","getIndexes","_catchUpTo","loc","_appendChar","_queue","rightBrace","minified","removeLastSemicolon","sourceWithOffset","token","rightParens","space","_space","lastCp","getLastChar","word","str","noLineTerminatorAfter","forInOrInitHeadAccumulatePassThroughMask","_maybePrintInnerComments","_catchUpToCurrentToken","lastChar","charCodeAt","_append","setLastChar","number","isNonDecimalLiteral","secondChar","Number","isInteger","maybeNewline","occurrenceCount","mayNeedSpace","strFirst","tokenChar","char","newline","i","getNewlineCount","j","_newline","endsWith","checkQueue","_last","exactSource","cb","_catchUp","source","prop","columnOffset","sourceIdentifierName","identifierName","pos","_canMarkIdName","sourcePosition","_sourcePosition","identifierNamePos","_queuedChar","findMatching","_maybeIndent","append","noIndent","appendChar","queue","_shouldIndent","catchUp","line","count","column","index","spacesCount","getCurrentColumn","spaces","slice","replace","repeat","printTerminatorless","resetTokenContext","trailingCommentsLineOffset","_node$leadingComments","_node$leadingComments2","extra","changedFlags","_compact","nodeInfo","generatorInfosMap","undefined","ReferenceError","JSON","stringify","name","printMethod","nodeId","needsParens","parent","parentId","oldInAux","oldTokenContext","forInOrInitHeadAccumulate","parenthesized","shouldPrintParens","parentNeedsParens","leadingComments","callee","indentParenthesized","some","isLastChild","_node$trailingComment","trailingComments","_printLeadingComments","_printTrailingComments","enteredPositionlessNode","_printAuxBeforeComment","_printAuxAfterComment","comment","_printComment","getPossibleRaw","raw","rawValue","printJoin","nodes","statement","separator","printTrailingSeparator","_nodes$0$loc","startLine","len","hasContent","call","lastCommentLine","_nodes$loc","offset","printAndIndentOnComments","printBlock","body","lineOffset","innerComments","_printComments","comments","nextTokenStr","nextTokenOccurrenceCount","_this$tokenMap","state","printInnerComments","nextToken","hasSpace","noIndentInnerCommentsHere","printSequence","printList","items","commaSeparator","shouldPrintTrailingComma","listEnd","listEndIndex","findLastIndex","matchesOriginal","String","fromCharCode","_shouldPrintComment","ignore","has","commentTok","find","add","shouldPrintComment","skipNewLines","noLineTerminator","isBlockComment","printNewLines","val","adjustMultilineComment","_comment$loc","newlineRegex","RegExp","indentSize","nodeLoc","hasLoc","nodeStartLine","nodeEndLine","lastLine","leadingCommentNewline","shouldPrint","commentStartLine","commentEndLine","Math","max","min","singleLine","shouldSkipNewline","properties","_default","exports","default","last"],"sources":["../src/printer.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-enum-comparison */\n\nimport Buffer from \"./buffer.ts\";\nimport type { Loc, Pos } from \"./buffer.ts\";\nimport { isLastChild, parentNeedsParens } from \"./node/index.ts\";\nimport { generatorInfosMap } from \"./nodes.ts\";\nimport type * as t from \"@babel/types\";\nimport {\n isExpression,\n isFunction,\n isStatement,\n isClassBody,\n isTSInterfaceBody,\n isTSEnumMember,\n} from \"@babel/types\";\nimport type { Opts as jsescOptions } from \"jsesc\";\n\nimport { TokenMap } from \"./token-map.ts\";\n\nimport type { GeneratorOptions } from \"./index.ts\";\nimport type SourceMap from \"./source-map.ts\";\nimport type { TraceMap } from \"@jridgewell/trace-mapping\";\nimport type { Token } from \"@babel/parser\";\n\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\n\nconst SCIENTIFIC_NOTATION = /e/i;\nconst ZERO_DECIMAL_INTEGER = /\\.0+$/;\nconst HAS_NEWLINE = /[\\n\\r\\u2028\\u2029]/;\nconst HAS_NEWLINE_OR_BlOCK_COMMENT_END = /[\\n\\r\\u2028\\u2029]|\\*\\//;\n\nfunction commentIsNewline(c: t.Comment) {\n return c.type === \"CommentLine\" || HAS_NEWLINE.test(c.value);\n}\n\nimport { TokenContext } from \"./node/index.ts\";\nimport { _getRawIdentifier } from \"./generators/types.ts\";\n\nconst enum COMMENT_TYPE {\n LEADING,\n INNER,\n TRAILING,\n}\n\nconst enum COMMENT_SKIP_NEWLINE {\n DEFAULT,\n ALL,\n LEADING,\n TRAILING,\n}\n\nconst enum PRINT_COMMENT_HINT {\n SKIP,\n ALLOW,\n DEFER,\n}\n\nconst enum PRINTER_FLAGS {\n EMPTY = 0,\n PRESERVE_FORMAT = 1 << 0,\n COMPACT = 1 << 1,\n CONCISE = 1 << 2,\n RETAIN_LINES = 1 << 3,\n RETAIN_FUNCTION_PARENS = 1 << 4,\n AUX_COMMENTS = 1 << 5,\n}\n\nconst enum LAST_CHAR_KINDS {\n EMPTY = 0,\n NORMAL = -1,\n INTEGER = -2,\n WORD = -3,\n}\n\nconst enum INNER_COMMENTS_STATE {\n DISALLOWED = 0,\n ALLOWED = 1,\n PRINTED = 2,\n\n WITH_INDENT = 4,\n MASK = 3,\n}\n\nconst enum PRINT_COMMENTS_RESULT {\n PRINTED_NONE = 0,\n PRINTED_SOME = 1,\n PRINTED_ALL = 2,\n}\n\nexport type Format = {\n shouldPrintComment: (comment: string) => boolean;\n preserveFormat: boolean | undefined;\n retainLines: boolean | undefined;\n retainFunctionParens: boolean | undefined;\n comments: boolean | undefined;\n auxiliaryCommentBefore: string | undefined;\n auxiliaryCommentAfter: string | undefined;\n compact: boolean | \"auto\" | undefined;\n minified: boolean | undefined;\n concise: boolean | undefined;\n indent: {\n adjustMultilineComment: boolean;\n style: string;\n };\n /**\n * @deprecated Removed in Babel 8, syntax type is always 'hash'\n */\n recordAndTupleSyntaxType?: GeneratorOptions[\"recordAndTupleSyntaxType\"];\n jsescOption: jsescOptions;\n /**\n * @deprecated Removed in Babel 8, use `jsescOption` instead\n */\n jsonCompatibleStrings?: boolean;\n /**\n * For use with the Hack-style pipe operator.\n * Changes what token is used for pipe bodies’ topic references.\n */\n topicToken?: GeneratorOptions[\"topicToken\"];\n /**\n * @deprecated Removed in Babel 8\n */\n decoratorsBeforeExport?: boolean;\n /**\n * The import attributes syntax style:\n * - \"with\" : `import { a } from \"b\" with { type: \"json\" };`\n * - \"assert\" : `import { a } from \"b\" assert { type: \"json\" };`\n * - \"with-legacy\" : `import { a } from \"b\" with type: \"json\";`\n * @deprecated Removed in Babel 8.\n */\n importAttributesKeyword?: \"with\" | \"assert\" | \"with-legacy\";\n};\n\ninterface PrintSequenceOptions {\n statement?: boolean;\n indent?: boolean;\n trailingCommentsLineOffset?: number;\n}\n\ninterface PrintListOptions {\n separator?: (this: Printer, occurrenceCount: number, last: boolean) => void;\n statement?: boolean;\n indent?: boolean;\n printTrailingSeparator?: boolean;\n}\n\nexport type PrintJoinOptions = PrintListOptions & PrintSequenceOptions;\nclass Printer {\n constructor(\n format: Format,\n map: SourceMap | null,\n tokens: Token[] | null = null,\n originalCode: string | null = null,\n ) {\n this.format = format;\n\n this._tokens = tokens;\n this._originalCode = originalCode;\n\n this._indentRepeat = format.indent.style.length;\n\n this._inputMap = map?._inputMap || null;\n\n this._buf = new Buffer(map, format.indent.style[0]);\n\n const {\n preserveFormat,\n compact,\n concise,\n retainLines,\n retainFunctionParens,\n } = format;\n if (preserveFormat) {\n this._flags |= PRINTER_FLAGS.PRESERVE_FORMAT;\n }\n if (compact) {\n this._flags |= PRINTER_FLAGS.COMPACT;\n }\n if (concise) {\n this._flags |= PRINTER_FLAGS.CONCISE;\n }\n if (retainLines) {\n this._flags |= PRINTER_FLAGS.RETAIN_LINES;\n }\n if (retainFunctionParens) {\n this._flags |= PRINTER_FLAGS.RETAIN_FUNCTION_PARENS;\n }\n if (format.auxiliaryCommentBefore || format.auxiliaryCommentAfter) {\n this._flags |= PRINTER_FLAGS.AUX_COMMENTS;\n }\n }\n declare _inputMap: TraceMap | null;\n\n declare format: Format;\n\n enterDelimited() {\n const oldNoLineTerminatorAfterNode = this._noLineTerminatorAfterNode;\n if (oldNoLineTerminatorAfterNode !== null) {\n this._noLineTerminatorAfterNode = null;\n }\n return oldNoLineTerminatorAfterNode;\n }\n\n tokenContext: number = TokenContext.normal;\n\n _tokens: Token[] | null = null;\n _originalCode: string | null = null;\n\n declare _buf: Buffer;\n _currentNode: t.Node | null = null;\n _currentTypeId: number | null = null;\n _indent: number = 0;\n _indentRepeat: number = 0;\n _insideAux: boolean = false;\n _noLineTerminator: boolean = false;\n _noLineTerminatorAfterNode: t.Node | null = null;\n _printAuxAfterOnNextUserNode: boolean = false;\n _printedComments = new Set();\n _lastCommentLine = 0;\n _innerCommentsState = INNER_COMMENTS_STATE.DISALLOWED;\n _flags = PRINTER_FLAGS.EMPTY;\n\n tokenMap: TokenMap | null = null;\n\n _boundGetRawIdentifier: ((node: t.Identifier) => string) | null = null;\n\n generate(ast: t.Node) {\n if (this.format.preserveFormat) {\n this.tokenMap = new TokenMap(ast, this._tokens!, this._originalCode!);\n this._boundGetRawIdentifier = _getRawIdentifier.bind(this);\n }\n this.print(ast);\n this._maybeAddAuxComment();\n\n return this._buf.get();\n }\n\n /**\n * Increment indent size.\n */\n\n indent(flags = this._flags): void {\n if (\n flags &\n (PRINTER_FLAGS.PRESERVE_FORMAT |\n PRINTER_FLAGS.COMPACT |\n PRINTER_FLAGS.CONCISE)\n ) {\n return;\n }\n\n this._indent += this._indentRepeat;\n }\n\n /**\n * Decrement indent size.\n */\n\n dedent(flags = this._flags): void {\n if (\n flags &\n (PRINTER_FLAGS.PRESERVE_FORMAT |\n PRINTER_FLAGS.COMPACT |\n PRINTER_FLAGS.CONCISE)\n ) {\n return;\n }\n\n this._indent -= this._indentRepeat;\n }\n\n /**\n * If the next token is on the same line, we must first print a semicolon.\n * This option is only used in `preserveFormat` node, for semicolons that\n * might have omitted due to them being absent in the original code (thanks\n * to ASI).\n *\n * We need both *NextToken and *NextNode because we only want to insert the\n * semicolon when the next token starts a new node, and not in cases like\n * foo} (where } is not starting a new node). So we first set *NextNode, and\n * then the print() method will move it to *NextToken.\n */\n _printSemicolonBeforeNextNode: number = -1;\n _printSemicolonBeforeNextToken: number = -1;\n\n /**\n * Add a semicolon to the buffer.\n */\n semicolon(force: boolean = false): void {\n const flags = this._flags;\n if (flags & PRINTER_FLAGS.AUX_COMMENTS) {\n this._maybeAddAuxComment();\n }\n if (flags & PRINTER_FLAGS.PRESERVE_FORMAT) {\n const node = this._currentNode!;\n if (node.start != null && node.end != null) {\n if (!this.tokenMap!.endMatches(node, \";\")) {\n // no semicolon\n this._printSemicolonBeforeNextNode = this._buf.getCurrentLine();\n return;\n }\n const indexes = this.tokenMap!.getIndexes(this._currentNode!)!;\n this._catchUpTo(this._tokens![indexes[indexes.length - 1]].loc.start);\n }\n }\n if (force) {\n this._appendChar(charCodes.semicolon);\n } else {\n this._queue(charCodes.semicolon);\n }\n this._noLineTerminator = false;\n }\n\n /**\n * Add a right brace to the buffer.\n */\n\n rightBrace(node: t.Node): void {\n if (this.format.minified) {\n this._buf.removeLastSemicolon();\n }\n this.sourceWithOffset(\"end\", node.loc, -1);\n this.token(\"}\");\n }\n\n rightParens(node: t.Node): void {\n this.sourceWithOffset(\"end\", node.loc, -1);\n this.token(\")\");\n }\n\n /**\n * Add a space to the buffer unless it is compact.\n */\n\n space(force: boolean = false): void {\n if (this._flags & (PRINTER_FLAGS.PRESERVE_FORMAT | PRINTER_FLAGS.COMPACT)) {\n return;\n }\n\n if (force) {\n this._space();\n } else {\n const lastCp = this.getLastChar(true);\n if (\n lastCp !== 0 &&\n lastCp !== charCodes.space &&\n lastCp !== charCodes.lineFeed\n ) {\n this._space();\n }\n }\n }\n\n /**\n * Writes a token that can't be safely parsed without taking whitespace into account.\n */\n\n word(str: string, noLineTerminatorAfter: boolean = false): void {\n this.tokenContext &= TokenContext.forInOrInitHeadAccumulatePassThroughMask;\n\n this._maybePrintInnerComments(str);\n\n const flags = this._flags;\n if (flags & PRINTER_FLAGS.AUX_COMMENTS) {\n this._maybeAddAuxComment();\n }\n\n if (flags & PRINTER_FLAGS.PRESERVE_FORMAT) this._catchUpToCurrentToken(str);\n\n const lastChar = this.getLastChar();\n\n if (\n lastChar === LAST_CHAR_KINDS.INTEGER ||\n lastChar === LAST_CHAR_KINDS.WORD ||\n // prevent concatenating words and creating // comment out of division and regex\n (lastChar === charCodes.slash && str.charCodeAt(0) === charCodes.slash)\n ) {\n this._space();\n }\n this._append(str, false);\n\n this.setLastChar(-3);\n this._noLineTerminator = noLineTerminatorAfter;\n }\n\n /**\n * Writes a number token so that we can validate if it is an integer.\n */\n\n number(str: string, number?: number): void {\n // const NON_DECIMAL_LITERAL = /^0[box]/;\n function isNonDecimalLiteral(str: string) {\n if (str.length > 2 && str.charCodeAt(0) === charCodes.digit0) {\n const secondChar = str.charCodeAt(1);\n return (\n secondChar === charCodes.lowercaseB ||\n secondChar === charCodes.lowercaseO ||\n secondChar === charCodes.lowercaseX\n );\n }\n return false;\n }\n this.word(str);\n\n // Integer tokens need special handling because they cannot have '.'s inserted immediately after them.\n if (\n Number.isInteger(number) &&\n !isNonDecimalLiteral(str) &&\n !SCIENTIFIC_NOTATION.test(str) &&\n !ZERO_DECIMAL_INTEGER.test(str) &&\n str.charCodeAt(str.length - 1) !== charCodes.dot\n ) {\n this.setLastChar(LAST_CHAR_KINDS.INTEGER);\n }\n }\n\n /**\n * Writes a simple token.\n *\n * @param {string} str The string to append.\n * @param {boolean} [maybeNewline=false] Wether `str` might potentially\n * contain a line terminator or not.\n * @param {number} [occurrenceCount=0] The occurrence count of this token in\n * the current node. This is used when printing in `preserveFormat` mode,\n * to know which token we should map to (for example, to disambiguate the\n * commas in an array literal).\n */\n token(\n str: string,\n maybeNewline = false,\n occurrenceCount = 0,\n mayNeedSpace: boolean = false,\n ): void {\n this.tokenContext &= TokenContext.forInOrInitHeadAccumulatePassThroughMask;\n\n this._maybePrintInnerComments(str, occurrenceCount);\n\n const flags = this._flags;\n\n if (flags & PRINTER_FLAGS.AUX_COMMENTS) {\n this._maybeAddAuxComment();\n }\n\n if (flags & PRINTER_FLAGS.PRESERVE_FORMAT) {\n this._catchUpToCurrentToken(str, occurrenceCount);\n }\n\n if (mayNeedSpace) {\n const strFirst = str.charCodeAt(0);\n if (\n // space is mandatory to avoid outputting ` line comment\n const comment = this.skipLineComment(3);\n if (comment !== undefined) {\n this.addComment(comment);\n comments?.push(comment);\n }\n } else {\n break loop;\n }\n } else if (\n ch === charCodes.lessThan &&\n !this.inModule &&\n this.optionFlags & OptionFlags.AnnexB\n ) {\n const pos = this.state.pos;\n if (\n this.input.charCodeAt(pos + 1) === charCodes.exclamationMark &&\n this.input.charCodeAt(pos + 2) === charCodes.dash &&\n this.input.charCodeAt(pos + 3) === charCodes.dash\n ) {\n // `l>@m!;PsT}@m;QyLF@cWG( z_)YR(!j^42JpA{3FZf-YbsFRUxjn{zJu?ow`s9vty6cnqdLBtSm-K-h%-3_r^US5^ zd_7;pGnYvx{$1|nJad_JJx}48%cQg4JNGJ{xlFpAXYpGnYx%^9r81O!`?oKfp7WN!Rnwc;+(c#LUV4CC^+Y zUC&SQ%w^K?L(YAgXD*Y@b5C99F?g>0OTFvQ5z=a~@AalXuO@B#ASVs|%ji(tE6yP{ z0BNy-PFl8;#=T->xZ^I;EH`belg7Pbe7NJsq-CGs2+;IzOVQhT{mPt+; z_lnCoN1C+a{!UuhN#kBI1znl6@=PafhLgs<;;L}R4@j%&=cIkxN#kBIoAYK!+m4;j z)c1WSjeErn;f`6P#jxd>v|=ZXd&NBbr%1Ehv_(!D_llds9aoT+%^n?-?=~lmd&M2$ zj!Q@jW9KtzOPw_C6?cU@CXiN~;-r;3Y1}JTaGob=<=FX5zWbas?iCN9kCRptaMIQ| zY1}KIpRbUXoHsq@q;aqKCFgmP7IWuDHBK7$iYJM?K$_*I{mRjgxzBx?@r$(2(~rkb z>C%rs@$A=bLwEnY`9MB8TcAJsK9`|y>8?HIgN=0__|hHtxX&fef06ci@C7~a{U>tE z)fe9|{!d;0KbrgaxxDk=9L54KeCy5pw!CgM@pXW=G)K?Gw;9c)=k=P;5bI_%mr2+2 zc%HdTy5=+6na^OU4Z@!5XWaUm;0`SIgVo4jOKFZJv-^6p1Aqv&%n(;od#}x zTiDfi|L(|i7eBUtSaT}4*1RA52f6f|uje5=bD4D7?LUXOIm39zHH!a5_$}bO z?CD>{CkRAu0?x2#TJvKoKV;^|+z(j6(&f;{dP^};>2K`phu%%dYwNKViSK=O3rq zb^@Mqj(FOpHoEjald;%qUu$6AMJ%8`!o1oWTmy|5t}=2(U?iv_tbCd zRr~ubx{>!8?HTL`I*&Tr$lve$Y039(#G^3pfhGN{@FVGq7MbtUKkl5Zb+HXrYJD!c zuwZ+G`HEo6`0Z^v-{EKj{ieMiN|PSFg0vNXUAq7NaC&qkFa_BcC75O+Q%3?*Bj1h! zrWE1=Yfh7=`Rt;RlN1MLhiD?aypI1DK=-p7fm7eqf|p#rNdRAv^dfLoOZvz~xswI~ zpWsm51mBOOU3Q&;_B>>SzH!T}5sgs>e!A_Vk=#Yulf3=m{V(159QkU(hx&iE=l_?@ zf5|BPKRy2kng8;+^+yMo|B9uO67A>tpJx7Nm~Vof|31(EPiLuKyPS{Be|?`4J>mKP zq4{r@e~kaGZ6-M{>fyt#x$KOBE}5=*lDh}U^;MtJ2mNQ5@vtkNTA~n}EcSBk%WAmH z>QJ9l(`VxGDM#+!uYG0n;fbm6#8h} zd^?SAr}6DHzTI@!v~{mp{;JnVdkr3X_2kO>Cy(E=Up!~qrW9vHF_(SO!T$%FJ$pkM zuw|J&Cg8r2xoQ*h&1UACn!6IO7kmAd#cv;Rc6`Xv8U zT>VF1_~~I^%4hxTUmqsUZcyj$be)SihxLz~tye@oYIo`nbk(mqV@{n1d&sl4Y{{Q4 z`&9$&Z3O?FSyr9ok7C^7uRBERpo-~142q-uus>{r?~38C#b32%-@9nxq*l^1I9uW% zwynIyH%>ap-pHa)0!y~T7s~T8bE@Xst;iejjO-nXzdD({mBpk_zL>pl+^J)4Gij~J zzzq8R0DkK}+AsdSU**7y*~m-z0f>gTVK>zI)wYj99{U6AJp~5;Zu|M}#nbq%k~r98fDI*ZuO($>2&$fyLJS{GqIxku9Un|yc2))ZS!CI%>B`~_^(*F ziqrNW@U(H=%h+;&eUf4JJ04&^rNv$8+6UqG&0x_Eysq{7R_vCdcj7i;pG}XB6U^dc zY*vzAt=OdI;Y+rnIFIrz zt&0cLCdFH}h)b7t8aR|*^9gpv&*uXh#(NA7?f-Y0{~Cktd2XrsuW=zI`eXiop3HAy z?M!mz&G4zROnX0FxvxD+O`iGL{YIbdejaR`JxC3+tPXc9)wo|6^jFP0anGYGPTsx0 z55|2E%y9dhJH-w#womTrd+opSjyo-! zaq^UvR$rE59i7D<)LDu{$p3cqu|wI?3H!Hizz){QJ)Qe*zC9cmP=EO3gR39122>41 zmOr@Y=1GSa-#lqgN;q_6@okg#W`sjW7cZH#e?U0&!Q$H|{o%}T==kD0CjIfOaOlIu zKc4ibv%{hPUi^=fet&K_^xooICJpoth`#STlWTDFVgJDBvs`cM@^RkrxtuM?_#m3s zxz7XX+bw5J+y8!GP;|>)(gSBkx76uAIJ#xM?n9zm?$`aS=$0kAe>uA42Lq#9^3RBd z>9->Iyac;fDeY_zWY%YXQnh-^fbD-df6=%T>1SIJjj#G9fo)4Mw-@srV^n=V;-a5t z^{diZFgg<^!MGLrv~z7Mav+`k{1vPniB?QpaOkQTy3)BYZP3v{=s-F^9DN{xKCmGv z3+(e?d+m=i=@0tA^auZOs-Jzx=;-tZI=AT$?q8%oeouc0-_QC6Iru)~6#Qy_u;u3q zZ2W#l_yfNo@R!qtzXY&!!(YbsAA-N%q!V9qkAuGwbo5qu@3ZjNMtm~uOZ=kv)B3k9 zOHajLJNP{Wu7!W~$6;{p_DPGkKcM?K=Uye~Pw6PyGpBwpM9#YXex;$23_~NO^s#+L zmfiRNF4&#EpL??Ng}&gi-`nR*c>CG?{&M+&nQ_4%4SD`wV*X3c_K#l3f87<&V65kx z^F9C1^L#(X^Zhye|2!Ej`8;>>XUpfmID7P6`P7DO+Z*p)x~*(o7Wy4~ZI9v~Jo{yQ zX9{jhi4+iDposCd9D8;V<81@$q{JQ28Xvx4{>a;Z#csklw?2*Y`NFiK(eeMd4J;U)u;5+x5Ao3?A*V?)-OHH;v#vIyhKjo?YYt;US)qZpgxBWY$qmxg2mbWAK)b>x+zl@h|n$zwzZo4Jh zdbay$k34F#ff6n&Ql4TiKUqxAg_u>cTw-xb@u~ zX;V9nV;B7pTzJ=Wub_Ud12!Tp-z&Y+8X_5zJDxL@Oe=L#2|%--QS`)`0pb9*m5Zma}@pMVEHmW`jAfXDDT zI)!{um@Bf5_Kirs_DGfwiws%z$=aUp2KIax9v11>%exfbiI>H%|M<;M*Pe?Ubonul z{`cCmpBP)d?}``PHMdi3P7BB%OG8FxhCAfnD&0drx4buyhu-;~)+6`$trxeWe^}T% zHNQOjfnMjA`0`&7ncLcZe);%YUF)WTf0|Q&BXt`eid=gg&qs_?cb&A!(>@!XE`N>7 zt{}ek!om*Si#dOn{@7YP&fg)LDTZIm9eypD;5Yli4Zjwj83`u)$Hs|Z$pse8C*AfR zE%cf5>ld3dA_gaYM5HrzUTB%K=C)_qyj$}wyvsYC2k#>udc%d`j?2)&)K8sd{c1bQ zGHW|a;BCcnWdFR>wpI)?Od`>Xp~^yND0GvbJ&P ztlAO%t=f@8e6{fs;BjKPhvj!+;qPAQkA#lXwo2?AjHA@~vly{(8m_hK;K0Hrladp6Y5UIf)MVQ$owiGk1X=%XTsxgO05fXm4Y6t$oa3vN@4-CUo&hf1wyO`~ z316gxxO>DbH|3i8XqUz~&3zh}6VIb<^J(YkyYlx}V|!doAHG7}PxcR1EyursnErJY z#IZUKZLMUlY(=_Nca;Ca4=|rMkN7Jw{&&;M3myMU#(LS8&VgRt@msXI^a`7Az2`$5 z4Wt`-ZCj`Kk^T1m^GB0wtNm6)vUe1|UK^P|Z<~QX`Qy--&X1n%(>dJic}$61zjVIw zD>t?&=t%xpU3Q3mMuy2xL@;cmy^1;WaiMc|ZKZwhyo|Fu)5@M}F3bp}^6hr6m+AXm zeBWS?FYN{3rnyKo($(L~)Zay)PuoN3Z{k)*6@PjM{W~(RdM`!TRB%njF$9A^7BG+vh9F_L~x_4IR`Z_DXpmHWhrvi-L0-*0Hr$nb#Oeta!D zQjmLUyT(u9M{|4EramFaKJA`3+TfgDo3QVloJDJJv?2Wq;b`J%;^_DIN1Qf}fX(0t z*t+3pOfNX%+e=ReN311{08jF_9T^NS6OUYwYW>WMM`ZPpIqRlKW*?bbZQn~aOo11& zqN98Jw#xbTVdvXN?Qe(o`1Tas2OQiNI=JTy&Sw0mn*%oPcRBR=I`rwoj)MNv{)9uH zvNL&UbkCnpk4A5C@UJ;WYdEJKQZ0mvwM*@pGDU_@z&XSF0rJ(%7slq z_$o;=wE9Kxwc<4KHR226%gF9^Kf>SW@4I-q6I$zur;@Zt)#u5c;bmX1W;+H6vfA=FczXFtFP`rD z;&|#D3_T60?R?h3QzH0<@pQv!;^`yS5LZ{KJ?fO&QD7TcU)=4 zzkclnvU{PQ>5LNFzG?KdJu8?C4D61xJ$=nVwg_j8d#a1`L(F;Dthbo)uwfQsBD!|J z6sw~!qhC@#&-IzP$sSifj}Io6+nDdx&K+dcE*i<)WF0;-$at-lF%}ve8vVR57&+6y zqg%FHH~Skp3K<&DXPlqH`zG495&TO(6#iF`S21Qg zJI{b#2iA73f?mN%^M*iZ8sBR?eVwx3;JZBVud~W4z`yikd(B<;LY;Hp)d$b~shb?^ zvk$JK4+K}@+Wb(X?9lXs&agG(M;UXOJMrP6k63f+7@d((^%{EgYv|EB=Y=_5A!Yk(L|pyXNh#;lcoN6m3l=xQ!VQv=Dimy z_Lk;M(!&Q42VfIrO{e@%fz8`*ZLB$~-+oOj{6_kSepyy+4gZHG;&SQC1^3Ld28Tv} z5a_P2ddtdVU0P*5Nm;S$>Hlkd;P>;({0~3#=Ig_J@5GjK<`mwt+wkL6*$8yz$ z7c?I=vCAn-b(-_}4BcwYF`f9gsqF`m8x5@cZ3fmI7Hd$H^)bF?O~59*hD7TsH-Niiw~2R`XinMzkWnIzT?X-vnK9rc0gpK6ZV6DEs5IOO^f( z>8_8U_9!XlqL(H&f7*GG=2vf!|KMHu`?Gxg+Gk>;oPq2gJ0QJk750&|lyDvE*L5FK zR$2!CGpxE}rrds}eg7q2A?gx;{>AhE9nb$ih_0~3v{F|ab-n4-^#*s*vW^6#^$Slo~b#Ak4kLs88rd@X1|Hb^*`g>Y*ou|Ezng6zL>d*QA zGpJo@s}NgF2$QMDrSE4&7#tW{?L7}5e~@+2)Pe9MdVpfFHusKXimCD9y(l` z?9yeN&r_CB+lh?pN7^iOysOaht|om8vZUHKpxuw3$-&9eF|>v~0Q~g_e_cAp&;Njq z!Fs7_Jhwi_D7dRzHEZWWgFfEej53a%nvm{mvQMttPi9*bomf^* zuDQo##s%rVEoNOn@=pCLS=B|C@9&2$yVgMZq{|2KsfkP1!e-xmp~g&m4x)1zvEz3% zKpToBeGuJu3geJ#Lk{|kU9L;_&7EG`Hf~1kDs2tD zyg=%gjcyg~l#Q-6kZN>a)&pis=Usu$%h+?ta_Hq1#)2TUvm6?FmH$to7mF4dmoAo{ zk!VqLDf#WC#qzrxT6D&ojg(2AOP_FP5k9W7bqvW$dtJ$lVU;!wrWjhX#~A--(Nd*N zKR@V;ek#MEe{^WZOD}KW1O8d`^0&~++|Qwvd8bJ$euq~6|DY3RuDVt8eKSr$Ckqs7 z!=XXZ$^R=Fk<8ItF^(=G8MPU@2|IL=hfO;j8P(E1y{ZDbkS@~f(M6gaU8IXfI6D-+ z^U}y&@>7$pgDhIc|32l7LnC`G=|jdqBg>!>cYQg7e)O&{2ia59^sE(Xe98(nOn`2O zTOBvcXBvMG&C?p6LQXwv$1-V{5U#@?#a?F**z4?b`PSCY9KX=sWTFG(=Ffof&mP%# ziu}WGtS3D;KI&W6zm~=c_GO2eg)dK>u`$8AZsVi*%evVBM1$8e7n;zg4Pfg+#$#gx$en>4oX-5; z!VX}|L5~f

zfqP^_v;{>7-APo=>`0^9Y&2l^t}hQ`q(?)+&8d zN@r@~m99znQuF^j{!dOM_CEhFA;qf5W2VPlNk< z&XZbhpT9?QOL~d+*?W2!5AFvW(Sx|xOn25(XI0pa8{aZVo?T@7Jq8_Bl8_Xa z$ZOw)y*!mJ{z27CeLX?y9Ue*cl9D$GT;+Qj&$4yeG-%VXo0>LSXk!CyG!CJ zct>@g6-gda-K0nLdsrk1+_Vw2`NKACEVuQzscB;=ZQQDU*mq%@25lP$RX26URd;zL znbL1k;BG%YWb3qP(57KGHEo1xW2X8s)aJEm%X#K^?>^Q2p-A#&)lIrrzlTPWz} z{9&6m4zcyPscEB}Hb$r)_FdRZZ5w-3H+Ak(-9sYD7xbGHxZ961Tc=HfHVwO}X(Jv; zcclXKW3bI@)A+e=KX$0@vPg29>L%^b@4=BIaJL^ef7qstgKRx+YTCe0tqZ@ko}hh) zZ<>k0+GyK&LUmK;X4O3?lH8)-q`=*N477FHG-y-&$W)JMqmef7A?s-@wRvq?W!u=O zx(7y*8&o%GyMC8OlEB@5*!*FeHV&}$xT$Gl4sFa;KkU1(muIBO+uNeLsk2#i4~Qh! z={G5Gw;v_8PMZ=##L$7*Bbj~>TcB&a`cZ82+O*!bu~v1LM3VQbZqhaST^vaQcl%-U zhuyTd;XKauD_t5Lb<$n$XfGKF?A+F#pslk>bx}v7>MDvPSL!z@aMhWKGiu|G8d`Kv z*ACT1tkH%MtvxLj24D6m>L`pPZ&e+n%k;Y-k_7J7rF$o0cPkz#_fV!TWc04Js>_X4 z+7q^QEma+qU7|YjBgvcfn-uu5jxmvD#~JeOp?_|Dx88ZN^e*mWtDF~m*J#Zf6-mw` zWnE0pC+(<=Bb>SY$B!4$@@vcH%Ys1#YaW@;&q+HE4ijFot#VF%DVIp_UH?EN+#5_7GD%<-G8Ce zdfkjtm3wTNv3KL(%Wx78oN^S0}bced1}zsGm)WrHxIn7glab?kF>>~VGMb#-aU z8wJQ3``C*W%QQvV{kMJj_|B6vnkKwkvu4^q@ojVV=x@-TJC4}Um^(t(rpAmTvW&hZ zr@JTF+w{cUJ+pVQ#xKZNX#7a)^*fKT@OT0}%G_CTPJ%3C>Y7YlQ&g9GCg0O&>zWr# zCxUs%I;4%rK6CY(6u4x_u8J#=eXcZhc=C_AFPa2RIFSJBV!j;z}gg$^-qJ}&(sc86DYb+_z7ceG}M1w7;7x|Mqtu)%j1(?pkL;<~}OQZ-?L9M?E(B!LuSi zf92h^Q$OJxUH~r|8L%;XA5}!V{`;uzp!@xR8$X2n7VPu=fOhVTIiJ-%adZRog5P_Q zQKOBn&4{u6>ch9PBas}Q2mg2a_}7b>9EW$~tWj}zH_kd0hj-)6UVW$YZVcY-^zp7a z7v&6s^M*)lB`JI>yEJ0&Mq+|1JbC58_SS7Yqxv)^nd;$Jt64 zoox*3K^%Q<5#L3q=l(g2tY637yY6Pqc`^0}@=gR(Nbfk8~$+Zt<@1j!X1e6Wkvx;0`&)TC8|lQSdf8EWf`=jQ%)l3wO>D z@x+Q^=SAJoCMiRl={EIIxvVo!(2qW0_&r~`UiLmQI*oCK54`mYd?KT{d-LuQ;YalU zKqR!+@TU33@)!S;^BC?BALMQ!GZr1LE*dMXYmJvrH|tv0v``wGh}M=Nfz~K{fU7g* z>a4=Q+K2z&EZ(kuYUj@w=|8#iN8jFvvA3J~`lNe*oQJ)XnXmkI=j-surkA13Hpagr z#MzqrosQmK_H@46Asuh3)$@w!pVo6PulQ`*t3DXNd;PzuPkBBHELv3%!S*!$j{c{g zIkt~_N4~?n%h*2pzq4V>s;(-p{ua((fyY&!#k~_)g{i;KH!qZzvahIq&KQhs+%TWr zp>1E~OI6<1{U=kG#dV^)MwoZh^|b2Z+`-g!N&j^nhX=g6e($eqd~RKvR2SzJrmm50 zU8Ya8Bb<_|2j0)Mb#(jGqOw)CY+e6&{LP2QT0b7lQ!}2HKC4w%rLF5pi-(Uk+x>Vj zmrYsw{!W!;Z83eg-G_(9M*Se)xxcg?t6ET_kW6S)_j_~?qbpsWA8JOdOO3kS*3GP&M#l-HT&On z$Yb+#epR$=Q+z6Z2~Kd=y5)iHU$DMtO{pD*4Ugzol^^-4a3S^Mau2v@AFZdJWz>U> z+e=;4v)n1zRY^T9>E3IH(6+l~*fo*8%B81!9;^AF@6FUm4xwxwYpcF(v5Q#tdn7}E z+keO&jWeJpNln=z){Rof$O#pgJ#lIynYCGug|KdtNA?Ys?7AW@B5yrV%p;yCiTVO zKx+G|d|rQ5Pfv@@7q|ILe&AJttDOO~gPcx2Q_d zoKEg>|6e>ioOY0xowtg>jH?D1FeqORUUEU+3$i zAN~cw$seQt=LYz{Uz;d9M`lx-Xle!)38TtJHJocRO{eeC( zCcCwkEhsW`oOS7($aQ5QZ0CowAB-TqmXvQHtsG2RM*2C@xugS02a$e;bWW?{!7k5t zTE9CGnQ!H6VAt?}UhDGwAiuBX_b2&39~ibO=FY??`&zz(XLm~%m!HjgpcDK4t? zcy{;bzPdo4vX|uY`)VJ*zi-*mlwD}&%0seMdC;|wd}=&6oS|LOz3&}N<2SSWi+2a} zfZb=z`rYW>zg)>Z%c-*AnLQ>pi}7c__wHLdk*zgu?!Fb;6lWgZAie{h;gwm8Gw^Q% z_wHw+Ve~fOx(8VyzR_>V9Ke>_-v)1FR@FV#ly$#L6n$dtOUpmD{z&Ncy+@Xp_Z*RL zgY%)gUs^t7Rm65O8oK2g0r?C2|a%DNVLjHFE70JrReGh zk385xzPl+qp8kNVX&W3Cs%`H#_d#FO@45E7GQc~7%Qk(C`6igFW7~U{3=Pg}yU<75 zN7)laPqSaMpPec@J4;I=-?+9VlCgF7to!r_rE4Qkcs8H1`4EjI%fz9D?v_O7!O%o9 zhGbNoNt7UyNbU(rf27P^w=Fn6gJ-={_}plxz}QAr4sp5=+?ZZ*dvOK=OvpmNhbM@#^pRl%4PTQ04V8$LZ=-og0>@hu< zk5;j7Wcl#7R(|l?VD|Pp=tBWx4^@YL-{=I}X51aH(>UClHE)2U>%`X>L;KJ~c(Rbby zo2!#=ZYwsIVsGIikom@=;GqcaMMTRa^;`mgZuMe>4Pi(Q|JcDKT+`0=om7%j@3K0 z$sE;Lisoqr^Ry~6PZu69yltVGr?t#e-PKR?&C_^rOj|wkw4QIR*N4KZ>PPVm;VI_H z=V6{UFi#)s=gcFDj-|F-dzEFIN@Sz_9_JnJ-jbb<*ZJi6?0IBmX8mfOid|&I%rx@y zV+-&JW8JI-q&@y;Uy%xl?C$hRY(IXkXx z#Y@-Ux9!OEfBDZN<8D251poGfckf>FQnK^$BftFYz9Y~4?42XEPT`3{&Km1Ulbk)S zP|Ez|zGT-k%uUKX$GXSdDtIm+|2FDp4n9Y@Rjdim$(}qwdt;nn7RI~`(Eb=FKMP}C zO5XHMM{CdRp8xDbMmrYHJ^wjYg}tQjUgfvgUrARvhK}loKW5=m86U03RoG3-Mpg0R z#3OgZAB%5WbbLSbExvPdq~u$Rj*kx%(XS$GSqt0nvQE;%6j!tCiA|E@^+u9VV@cus#!I96weTzVxD{+_+NDl_Sdl`TSv4aWaP>y zc?y(g=DjvR`y%J}_jzl~wJe~E`#G0;2H!s{D)SmkLru?&*PcF|I=F&i~aqo0~Yr6OWy~sIlW&&*Jj%5m-=*M zX?CsX&p*WNOGReA&{^*M_Yx@M5`noz4Vu%zmtAbD=tsF+`sK>J9{qIh zAinrYKQz>R#-={|Nq_z}*eD%#oWYUQkoWhu`HXF+KYxd;yq&#I&^{PsjT9efoz)sU zo%Qd_-0h}V|5D2*b6Zt|)AV=ezh>7c&F81#L9f4O;6Kh#heT$60RG!#>pm0zwHjZW?D{7f=D~lSFN*l@ zdd7DK_66|YYM1}&GyE6VUElu&|JAtbEBzQ9Ig5TQw7xA*X?-14ZuK>-hk>?^{(M`) zmX?zo_x`QdXZOtbU!bvv?=s_S_0gL&HWnVAlpWvOeQ=H0efmAwwKp~VLm7?tVBp3V z5Sd-Ld3193)!gwFFMq~2wx{{qG`j2ay~FxBznGa_SNqOG`A7&S$seAceVOnAZsrl^ z6P|1`!v{CI19XrsaDfl5GY&8R#|5vl^-!PS=%hwRsOaaNqK8T zcByLrzXYdU(btdHn|<<+=I&kjcl+Re`gZ!@rk#^%Lx_4jP5t#d^L>xOGyAEG>ykXDv!y5L~51YOR zJB(fNiOBK9zId8@t@Y*%qiR*{*`WudgJMJez%TM^n`DC_KIl~+SAG&1K`~28NC)U{ z|@z;*&^N-lTUK?)vfaH&z`%wGHLeQ^$POL%*Y+fS^EtgCt8^uT7E)pKfyej z5<(XUZEA6rzhv(IkSEpW1@u{Kt8||j{gvL~T$tBn#-XBam-a9ApiS31`SjCSwZa+2 zQ_yx7eSA2-u1Vh#*1q+O+5y)LAF3|kx+B(ESSR{J=TvZzoP$g$oBMMmi?Nn*zZZ$J z<^|6t<(=a61swcK!F&EAPWN-zXBc0_Nyvvzu=_gJ=tU=I?2!)l3(f@#(DT-h?fB^m z>M=0n$}bNKJ&+GP75w%l;&JaYU}vGWTX?ycW3kgJv9c=Mi7S`FYb2cWgOlKmGks-hW7UWUF;QsQ2c7dp{Uo zQ_lNgt$sR2!NKTy&~N=HZ$4N($(*y_v8hpZQTG4kzW=|&{~A|~iPj~}o4@?8?7X?$ z?&sZ&=bHP*dlkREu`>6*u_u_0z7tFzt}ntDr!rD`$DO~b%*#8-x8tup7B9%rt#;9# z(bem7?^vGp;P8ZBhu`MG>vMIq-&^=ww0VrPU4NNN>=<;?w)PtF=^XJ9ZJK@pS6{CY zjP?wScYEDpk@O&)OhvBES)tYH5 zOW!}K50($qhi6S6Mx54%pL+FTTiJI^*Ys0w%#P1j&M-b-Hu#@&T05Gbnj>#v%iFh| zZ+Y$Xgw0u+=B}X=d>&^mNX{F5@{T=YS=+|34|VY!rsRmwrtPfFtjV0^j9WFDcXzUO zj%CfgGry)OHj%jxoiAqXh*q%YvNv3Y>}=Kr%ZHts+teK&QL`(~`2hMRF@XYRUmNXI z=^U_a9Q8fqtM9|Auim{A*P5-nN747e$}G*nJJG?kUwL&1pQ|*?+#v{*%Z4GoLoEBhEye@mhrLyJGBQb3n>Z;-Wk9hCL|Li{a8Tr%Kzaf3z5A5^1Sifn5 z@iH<_O!E=`@^~N*IVU)zVUIHe+hgn!bRH>w;BIIaaU!^b8MUfb{o>vw%$Q#%IcFl} z8Q&k8v9~Ap8GT-~U_qzwf>{_~z`sIMrt}Wb+|MYt`7@;eh)u^9hvbvkiSB1{HtuND;pa!6D!h-v zqh8o@yhP?UpO*q&;BFPNyJ}i`nQ)Be0BYiQ8WK` zqm4~8Vwh?`=sy&=gu&C9P}NeIS$OsNAj3= zR=4?@# zqi%x>?dl!2yXM|Gr%qe0&b+gGPlwgd=!?qz)!$x+D-U?>eblsP%k^n*M?d8xqdjHd zR=)6PV($aT_}&>lhaOs&AJ3`F(;wZty|aAp+%m4txxrUghK5#uEcU%~%P?-V^HX14 zF^>+cOQJ)M4v#-v|%CFk?N1ydB)HOr>t| zE8l62hq1X2Qz!h9n2B!`ywEj^bT$wESTX#uqVvc%KaftsSIK(P#r$5vyPJ8I^4v<^ zWz^X~-bT`uJWV|JlXneuuO)vo?>JW-%ihfS{%V~+eWNtzeE%`;eBV7!Hs?>PPmirK z$Xx@`vto?J7;G5g@S-^f)m&q|8#I2LF~*=pfA7mQ?!0%{%PMbhy78}IZL{_x%q!W9 zc-;F>t4Y-kG!$Z`KwFAvdCEB0lwbvQTolEq4hu3=*I7iHH0?lPBTW|u<=Y+o(!~B z5?|XZQ?4@5GivOYCPd2kz4xE6`TGZAd42}FmcS^^>dHg#exU6de&>bw4V`E4zuCWn z?m3>|cx7k(OD`16bd-bIYdr)_-CLdD@E#$~dsVN;SAmvcXKsw6Qk7Zb-RMU2at#IQ^e<5KZ0^A+!s z_?E=Ad_eIn6H0rD+l?JSiujgAw2>md<#^8FQ^dDS5kE6Ue9H~=DMftCmBa{55##a- z&YJcU<8nX#6Z?sA*$VtXRiOGc)`-`}2ddks=e3EX)ce|`Ky@j7KR7v1ePBwUdIDt+ zObt}u2fnXQ3sheXp09^#Yi6K&hwzw1y|V+=GwD}q4lt#2`OVsrnir@phCY0Eyt)|q zNw$-nMYr3yqQz~O?~$#zd)})t*{&Fzj7fsCH;u_y#Rb)vC|;<>gczwBlkFNK#$*M! zB^Z+gxFr~qhruVon2Z&jc365bCixmm#^hm@XG{`|$09H0sOn%m67t(;JQgWtDdX`l zpt!3^@daa&q~0WBk`&)CCNrQ{k}*kQ6Ov?1o>6|rgnAxGGA0SeBT1~%BxCXn zICRQzDk`SF3lf)FAmF14h z?w4c_hHV7)3SG>1#X9X`zTd@s?_$2+#e84Kd|$_WcV)=zS-IxnJzsIxpYxcD-g?vB zSZL(I1EY0bQk)|X#wuiM>~se>gF*+Z-d?D9rxnP2uFtFF!`_B-cs^`=Y2x4%?_kdZ zr}z$1aEh}}W@SZuTZ7h@wv>IMqmVlg(jaLODSJ*Fco2R}jQApPP`^Oz@OiB_;G?M+ zIE#kmx$#i>{;lGKt|X4-im|mOR_J14Gb|d*duWs3o3QTtTHf1OqGJQCi;1h8bAQ=b zY}RS@GdhC4t_XBLg`K1Nx(>VQh5R3{3V^@sU#mE;inTCKXMBz9smzxccQbL$t8Qd$ z78Vizll?p^0}pLYRMn&#w-Y5oR*&t0B!Y1a4m{O!cW zMSnE3^Tkk&p*#9x#n(f>MBg~7L6;_qgE0cSJT(BiARBqHSLOd|XoOtTt zm{_VsilyrMx+>;s=TY}QNqZvlNksW({7w3byXQ;qh>|DP;Y6N&k@$1}?sT^@&iVfy za^tBoPU{(eo@_i-^2;tWPJP?(EzvmS!=qh2ZXA$b!Gr5BAQlKd#)<`U4}6% zVb+%TvC#v^dp68xu8TEy7&e=R&VD%uc|>c?SC{0AtZrXv4LaqqIH z+WUe(u-}=!u)d0CbiO|jUi9yQvg^}%zGR-y|JCLf%;vw=gL!rEZUeAqu;bOegnMtn zT&Mh%z_ph5U8f~4ihk$%=;x15+8ws{nWj%!dlT7-csjLoY-2|p7XRn9{ZV$rvNf=A zSLH_;n`7f|H9CMKGVU(U+WOu(3LoR!v$nnu;=hxz^<{n< zxfebY@0z}OFv}zATk@tXZ|t&rk+&a7K0L#HJbJ{~NWE}@-tQHE^?6%=fA{g-9qxTv ziR|?{a_`eTf6YARrp{V^U}^EBiN89OJ2uxRvvV8v#L82jA6cjMU?a5U-mSNnIN$g= znD?v?;w_E4VpYl?PI1U?WzF&5*O|Pm70Ro#-Oi1n^w-E^VzG9(u~5TI)T$ek6P- z+XbBxyfZ$@oVn>NE&)DW;L~!3SgdnpH%^@~%IloX@Ekg#;Y0eLiN#94bKd#*vDU|r zw|+o=L=QXcEFTxyR`mY-_>uSIN7vqOr?C+knz0{?HbAdN{OBz&cE8}x%LOJLs~bm8 zcfOqsmKR&{A}3!KZxR2>^Oe*)A0L`EAs&eQjj`%%boa@u-2*m|yp#P=9`C2&fBGvg zE-QHx$Sfu<>&@ULof(*`FJ$>^tl=w-VP0GGX5MqAY3@3gGLDSB##erwl9>+34sxm9 zlaH~^vGG7gGPbsM{rNI9_SvpHHu{lV+m#m9pwrF{Y#l~tw`=ONH)hwJhpax@-QmXj zKQLD7L7#a4aVOoGqObcjzc~->Mc(Z_$M_&DW4_iw+h#LwIhUeeipkml?Xo`H!&~EV zUtHFdFD`3ULF5*bH@mKwyo|Tjf`sz&|2);tI&-7Rn_Xi}UOTqev3{6*tTCI7-j=lo zh*QtPzWJE5t=@h|8MA)@`xI?dN^a7ej&rUEj_dl#cLbQfU)OnfQf`fD-;L#{^~$tw z*SAc*s=Ua(UcG7yzEFI_OT6~^U%us?^t+*-d@p(Jd;Rj-r`%H0es+Dz>A#nc_3B2i zUbUt6ferE6=YP|G+Mn;`6O6o?Lz_$+S>5<~f9y!gMA`S>)qE8#RX=5A5B0ED7yr9; z1=?nMFb@yj)p{_KPvejm`Jo3>KG6m|J_c-KPTQQ3E%Rbb3~wC+ z?q=%zHaeGx1yvor7(c zc{Js>p(%82G%|N~{m3a#JImA#<0n~atXH1jUiqb_e0Kh)h;dRu8S@_eqVUjgubg<- zjAdTr52jppPHPT(y#6KL8D3I;;NqpvdoYuaImWw3Jecx9E9IN*huN}kKX2<(S+!69 zyFHj_VfZ!B7V^sS+sii<*d~9U=)2~8%q#EFf-?7b9?#d@k!p{%ke6 zp3fdza{46Z@_5z*WHFsZG{fW5NuMA+Q@q#JfBE3?Uhneq(jUzq6C2i!PZx5wKi=!N z$@@X#z24yKr`9c<37i)1wb6c`fODf$Wgp7O!*w?9X&!N4qqoxkIPqSWNvHMhmGw=+ z>^YG5MCV+I$;h6Zb0yIC6P$C&#?OBiWX`6R@Gi`qSUqVYzE_J$JFuq*&UqGb(5@m5 z+AO})c4h0moblX6{DzhA!C3g9Yq1;i)jb2U-_;?WoX&v8La(kR-g}(^)tc|_=nUwt z3-HMRpAQ-v_B-hC2`@J6t;o#Fs5}1uGB#|Z_2oexk70xRAog@mRw$O($0HBvn>|mK zM^--6e{9&dzMSRRPGZAGJbAitk~vSl@$))QzBK1NxpP_}=PrfVL>8vw;X>jvo^Rta z+B7)c{vPM1K?@JNX=Y5H$T#QSUE7EO2n~}Ripgrrgl*dB{l3W5)w{VMoua)|J88$b zNNOV~Wm3R5OpJ?(2ZN9Kg;};ru z?*`hUjnq2fP!&nF2!}C|6!4y)EgQCJqxXBX#lfZ>Zfe?|NZXTWd$MBPy76jzI&2#B z%GtJ?)lb@5BOFFYQfr07s7MO9>gwrm#l zJ-W2AX@^a#Z2R}Cua%M1O5s7;Bs|WGq=1|Di4SSYci1%O)#Jv~>->Ckc8%Zq_9wQ^E2H`;p+_Z1wWA-$4Y-(d9_H@`- z#X%Qt+9zIO7qJqP#7XSIHr5?`n=fqBdfWc3>Tg9Pb+hpJa3r-BU8II7sTePRt0SJ>olwCzt-e`#;B z@FVTW}J8b-5Vg|c-*c2NE_qP{c*iB9UTWEg+?YGmujT_uUJYW}3n^xKO zC#k=KBB}AhgLI6TJHSN!%ec7ng_Y*&uSix@j z3ryNurT&&iQWe5uKqOTuJV=3?_KC@2@;BPF!~1Px|903k=)z6=<+RUzA$P>c5|x=d z&7QE$TW{MQp}v+xQf0!SIFc$C4n>g^aMhE&M^#*5_a0UEtELTfwXPTN%h)4%#f=NB z`_`VIt-DnHpst|WD2$|v)J8!h1^ig!q+Gio>;YxB)H|_|ycb1MN6E|HlzK;HNP9?G zuT#CGtedGI`B=YFMWjK}Qc~t~s!Zic%Sqwy)Cf}eELB0uc&92!J1&5>q|hKWo)mmj zwEI@eMUlREea+&Pnm8k!Iz-!BrliDaCnY;9EBl=eMNo zf1pq43^L4ldICH%aek-HNWX)vqu$L_oZl%kkX>e^JEzS^$HOzyk}q}tE*YfP#`@h) z`I2ufKK|OtnN3#_>vuk}eie@&A5I(V*Rz*Y+-5gMv+kG8m~-CSwURM!(wKYplV!vd zbLAq=YN2mF<3<`J?I8^Z88IotgHYnujojNcjk?3C+l>P(dATQS>pq%K ze~^I>l6D{iA0iEs0ylS^=3B**fv+<4NeEO`Pb&6YxCx82m`OgA|@m02l4vi|2LE+X>Id`|x~k zFYDEB1%KkV#?B0FHN@oyTm^gnGZhYa?Z1i;E|HX=l|3^&C zOw1jd-<$jD$0%PvUd-U{elPGwo#%#gzsD85pFXT%J?FcA+56}0-Jt(2P-i$(c|^nS z(icO^`=QwyjknYG;!Yoo-{11`)N}TzJmh_rJW-Va_I1&NeXkhajWW+N^-=aF-pPI< z1dmnv;|RAf-zclPe&e+l*O_WwgVjn)UUkM{~6Uk#n$hSBdq#) z-$}lIQ+ZqW3_q@ubL*O>x+dGYF0nCpef2c?@!-tO;9=iiqOy~0SsOPv^PawluFJfB zs&AC5qD+QXmiGVZ;YywgKduvVaUG`iID0d6^~d=2;XB`}3s|wguJO5b1yt8~Th~cn zykK8lSNrOE>p9}_tl=4>~df7;pZ#Otza(?I65>|DG*Z~yKaZ-c$yF=zSE$gg^PjJ>z_ z`(gdIxCDkoUs61)%9H4%*zHxG%;O2RdU=1My!81=bBBIm_+QBWSGK>#))(8~8M4jA_V;|*;bQxn zEXO_<+uxPIWskiBdl1=U-+;aHer$iQz#ex$w!b&XCK}t{E3wx-fbH*1lz$D|-&N$7 zJ@#|pB75wQU~4UV>~?I=WsiLjzp{ha|6Wb`*RlV-ka}g4{W`YGvdJEZz1-{A{|>^| z{0(e?-(*jF6FcCqVITb_cEG>Jj`~gPfPYQBZ(;}hYiy9;#18m*?9AV+C!gLgHosqb zb4j535VqWhZVptJVLyCmDJk~lhi(m2PePtJw2XEez(H*{2C5&yw(s?of$Bd&&)1tM z3vP$*4^%%!-G|o%s)v%Vdu^b)8{E2^1J##eC*8d+Q2ll6q`O;qPutxa0@V@v*4<9s z8?jH`9H_37ZTA*z(VqxZ-wT}%Y@-de*+Cxcp?qWU&pO|y~z2b}SZ0dqv#zDg_@r&%j;g{*) zDSqkVI|$+zVt`$GQ3E>)D-eh z4OAC`qwK|#*sjZ7yoj-o9sf*dBs>1(Y#zofIfqodJeT(1$>conn;)nyfPcH{1J&c; zhpxqe>gn)D*Am0$52S9k{s2n@)r;kqa4Wy5E45613E$q7YJmTt!Tv^k0l;nl%0Tr_ z+C9+3IN#3$Zzt9;-r$6P4>s!jZVt$n|E0t_Y}k!&0Pr&66>ZS_+czcJd9Qi9k@xbI z*bJUq_@8zXPtfi*^2vXrgM74=*b%5+B%AnMf$Htxo_HZpoezByd-z>I`ZE3Ai$B9Y z%FPV9w(&lGxs!Wm#omyvS-{#T+xT^?jm93HwQ(J5qq|;Z<8Mgj>R8~e&wu3(UF&go zM~S(=*m(i+R!3>h{Y9+NwTEAbzQesx_1FQ<vi+Zn`konwVRYUNp){8(W2&Wjh~6x3A@{ zE7aO_NlojG==w`IKUs|4b3L)jSByfhQGRHhSgQQB#unerA2#`AkAFR914}N+=FicE zJ4(%7DVj#{C7VAiuRFlqp6Dvu`-kK|+@$lh?75gZFFWX@GdB3)LbG0YHuw%au&~(q zO%$Iszl}q$Y`3I0HeriDP~Tp`7JneNGTb3+y*YwC!01BCai%EQA-b4Y)Mv8Aw|GYz ztSvryv-GNgULpGIK!bkhh0d6m@6js^eRK1RUW-R%>1E^t*r`zi1Tbk#$Jq+ER8VKDu zhxOaE8eOEpacLRPi~LA7`<&T|wwp_wAB0L|v!6YmGCKS`C*3)(#@M15S*yd9^_O7N z*z<&y6?$ws)yfLXtgL{35Tz_Sd}J0lP0J5--w6NY=hwJ4{fzf%HvQz6d>*Hr6R)y% zFrN9$ov!*CdyZAx+IC^M^^wcmJKg&(bMJIlF<;ih|98Rv=G=>VemOFXjem&zHRP}5 z?$>Eu#ka=p2mdg!Jrvd*?DP zYPUsmC$EjTKWn4RtN!{J!!AMR0qW~Z*vmxcK^Ok-{WJZ|+W#{yqa$~p>{%N_E|Fj9 zLh;NiIrjgnGxq;M&z`_%|L?&p-)IbzU&``JU;B?U+5cmg@R;N9?GfRkKB9l|JsCGv zLWj#AqO0nE-qzo*{eNSD+260!_s$xNa`t!Qi`A30xprhT1T7qV1-y6&nf+)lw0_6h zUUw8kF5L?aQyLT3MWSV#Fox z$g)1x+>?Bd&7UvfO!h|W*Gz3^YZegp@tAHhD>AI=b>{1&eABk=HD zAv`(L=mHPpN3ah(D??d70`NSOAHj6lhEr#bA3p@uO06SJKnPxKgz_& zHy@m)6$i4u2Gmih-}OW2g05%MBjVv2 z?!4T!B{8!m{ayZ_r}Fhhk(X7jADP>fL4KJ^K2wJOO&MhH=S*8!n_^GiHf1cYWPB8m zx$nSUus?Y-4lbwpDsboXujDs-FlEgi4D3cw9DYEyUsyV1jg{|!CBW2~1?F!E}yu2ow;zkcJ(h5YL);1P{W(CdeAR(-%u{mIrR{Gf&Cn)btNeUE!>h+go%=yk};Cz$eq&ls;= z(OT^S@AC4gA1X`RQ4ePFxn-MaBRb9MvTJAIr*JiX3ZHC!ZR0hkpA$4#y`Q;}7%>z7 z{44O!zq0kUNx41`=1gIp?~Gt=E%k<}w~l(JpI$F_IXX{pWn}wZFT0i+Jp-BU^IyoW zr_wPz{lbf1aN{V+bEn5IkYB&P&+UD?+aG@*@+r-rf(h?-A=D#hzDD zll6h9DvbO;)V&LsRMnODeX6RjG}nNF;-qOBL`0*8D0VQRx*G&E37Mc_GQRHs7B|I= zaY#mIKpJQ+N^7LV44Lld9UvVvRUJp75Z_?t1#Ly4y_0B0XJTEtx@lUYh>5g~*7y7G zb57N%q9Hh$yx;fr^YpXNIknH)Yp=a-d+oLNDN;So0`Q(|kZyJAIXW^HC=8#_{KDB2 znoc`=Dz-ZH96gZT6QMmS><@LvDCw+$FqWTZjI;;dyN^D-JP!`-E|(5(m7E8n3tc$e z8$JQfD8cDt&hSsH)sEy{yB=p&HT%NXyYF*to&)DDgGY94G-tj zq%(b^57I54b>Gj>rZD`MEg3X<6SQwX7)<(+Yz_E3xjudxNQkfo~!+sThFB> zzYTTUck3}0uetT~%;0H7!(MpKvwL`^vk=T)iJ>*DdDoIFF_j#lX*v5IW?sOz?k197 zg^b&KC$47i#PmpK^NdJW%gmGO&T;C()5)P<0q$3U`!(QR8<|NgvX*b@O(Rw|omg3N zxn0-x$(^$)Jbu`A!1##S-TF?aV)PZi{%%?3r+UtBwi5o>s0Uqw$f! zp8x6ArH`4qT;HJgsO#Nd@eRcgfNS~~$c-U*<1m9geRbn7`Sa_etxi6Hz8Tq?n@`~G zv3QEPL`-_Bval-NtU0awy;o=7*9OHD*rVm$dl9nNNDGKpw%6(%&fDPJpv+$JDS8JT z$lSKQlKh$y&0@0 ztv&C~Lj_9~9DjyAC_9LWHm{g_NHVUur}W9+YH!9{LGz7<_N~F5L^EwwPOGxdG4@N& zqYHR46&wPa^+MiseW+qCDLy&0>O z3uFxokNQF1do#ZO*IAy|-i$S#`Nzm%YhFDXn%v!d3*V;j5AME+a^#pbuYM4k-1fgd zniARSx4%7>Y%b|ZY%S@DZ7J!AHJ7v-?)6B?fW&S7{YK>g$ucKymp4s54vwo7bP&&Zps5xt?w4a(6?4=sVNRpC?_C2ge!Q34~y z^WN6WZ5ROuX021!+hzJq_M0?+!LE~Z%1Y;*kX@!9FEaSGZ_(bAiFRGiwl?{}0q31s zyG(DUPI8L*EnN&Aw4X{B_oQee72uxtQ#|htecpb**(sAwS!u&f-wK@C%j`P!PTA^| z0lRMcS_d!kXnQL!wd;nQve_wZ(*4t(J3F=fj zxV;N5w4dsvq>WTJCGV$rZg6X!V7HfaO7fEpZXvr&Zvj^Qh4!;nrzBU|)Ty=0^fCvx z+0+e-hMalaqo*Ue1?HughdZ%o4%76_s zO^$nSrL&hQ$JF0`L|iIO%_hbVbJ z#dCvO(%HLI>Fj?BIc2k5rr9&qo421SfB#du$<8Nk*WRY)(GK2DS?TO;3fX0vJy5*? z2e&qGq5V`VC2gdhrR4n-&kb(%6*eqqFH`>Br}S*~)7gL2?378TthC=vv+v2!Z4h?bnq*4t%zIk1|~v7aTKveMm$WS437D;c^?qHf-vqTakcNa=~f|0T_ftGKxP^w>?KV4Q(kUxP*zdDXsW)#AQ7`*}4F1lZqjb05#!dT)DxLj5A*XD1 z%A{SU*>}`i@8H%1F0`N8Oi3H5EtI^^_n2+m0>kWfYMnA~uTi=gSjo@Wbt;{GLm{VZ zwoBGdY~1E*ug?$%Z|5EM_1NQJm+2dXzk}O-;6nSU4V1KzYM|u(6weLang`qOCY`d< zfgQ5TH2aHs^Y;GqvX95KS8JE)p$=}xh!=*OeLKxgnRLp^LFSz_`-OU2C)?Nc;6nSU z<&?CMs-xun6weKAwFB&S>YbAPJN9_lFw1 z)+y_qvehor?%oCbpnISr;Hr@@rXc9~`kzqi%S zndl8Tb!(ln-Y(OV9o)2kCoj)J-+>prG;xF8fP>RgaG>2(h!WVT#gxs(;S|q5C=P}n zSd;tRgvsRmnf*2m_yPRBgPgh4Z22lv!l^m(4JdD*#1^LJQet;fAxd<7YB44HG_{lx z-IcnP5?8QcZ?l&DyQ^v=&#|6;koD~6S zPK~sBp1flTdv%JV_3W)s&ZpU{L;u!pv$Fejnr8HjV^4>EpQimfTV~+9&cKhI(UWYR z(IdZ8e)fg<;2pfXpLd_-o0mU1F|DD5y*lO2UY$nT6tC%A%bfErk7-`RUIy(SaL)sJ z$)5Lc2C6;3@thTzX6>c7`HMC`&4p*`ix_{(P$A<_SIR6#dDM6(DW7NSYKt1^)=>Lv&`Oxb>ygPKhNFlOK%`&$DL=H9EVxc z&v>4t{HxULGq10_hq2Im&3T;B&zM+@NgSG8ul)lWKgAlj{~7xS+S+f7!^~RZb`+%9j@+~;u@vQLuyIG^1%zmK9PtLdK z{bp{y#nD##yx7RuiXY^~TPw-qVl8hq@dM5gxl!BBbNvf|K_X1$4+ zLnc?kUDsS}w-=u-T(bM(%zBK8W0XhI#pEv465C6&9$BfFm~xqjTk3gvwX;{~>%^&M zIdQ758kth8YC1BdSXJ#{VpR=xtjg>i3XpR*EXdxWYR=cAmYrXxIn6TedrS9Mzt^MJAqbQXY{VOLJvN z`{Y6~a_4%Ty+ySp;aen!^xwz?_s<^QwRG0S<7mO(}rxo*Yetps$Jw^9`TfNV4ZSr5w=@$w;H;nly^h?M%M|h`;tG& z-emYce{a#3J@J&I0q6WalY^Aa&xyfT@f*Z%C+FxWzCJ#0pHY4+{T=N;P@MLLV9&YF z5D(7ZZxpa|ZQ>0x`Bv8qC!Tt>;k&NI*yRcv>;oEV%Ti2h@#yVe@>^z~ z#CauVkA)rEvh2JHPuub9J#_ZaSNTAZp?UiU3_lME&pXz8M)~0tL8lLz|pep1gtI$g}5L4ppu6KN;dVdFsi>wHyDf=9gGS5++hE6As;0E zEP3B;z#$hr{t_km^6^8|5nitgf7*M~SCxK?YfoNy@6+imPhjt~?`1XLr8jo2xuB;I zy_mq})mUT0%E$T(a%^n5u=B$u`&Yq}a~)okg*Evb^-jLcXSLp#dw#5m&#t;GyyyMi zliPgU)8;n2O^Y_Y`@H{{jWRazRCY@1k@%Yl>=f(CJvuWm@en0;D#3HDN1k^~z7q0| zZBX8q@)I9HcgD8Z^7>QHb;NW1AlLG#tF=#>x>L}xH_OJOmu=fJBzz}*)|!EP{|~y~ zoVDdXi|f3-N^af1Roy1DSBV^)i^4a1=;!lUmn)`DT-?O(3w73g6FL5zSFRi(t!rVU zdX#TdFiPu<>=$MIGfAxfCp_~9`7Q6g91} ziW|hYOW@lj@a?K4CC^xWk!#T<1YMRxmv-z)i0@pchC^3u{QNr>9Z%55pZQ*tW9;!?Aj_iPXyEIc*OKwt>ptGnFVEi0Bp*KK`y|HR3<^I@KfSp#tEKart*Q#? ztcRE%NQbppRX%im{1K~aJNg$NwknRji9gPB-9KSfk$-(Z`^>B2==^vq?@JdxOMQJ$ zsEyyH+g`G&R;%72>anLP{yM)4KKq<1(BraaarQgKv1i+Lk3E|&c-XTi^*;8jLhoVE zp2Q}_v1b+1qu8@*>2&N_oNpB2$5yS@eKC470K77Es_+@)=+>d=TKztpd%+or?#E`u z%Y9W9vIUjse(B(G=KfW_O;lB__b)+jtDMO1!h4b_?~hOBci}mOQqOCBRW-mR@2x7q z-n_)M+@tpsvwT%+(DkxwH|l;4_}u^wvI%p!ZbsIf@0Il1(}#}V>e08cF-FJ#m>d#Y zR@M2N&7sWt zf|9ei&On%ij@B6nljVc)y^JaH89i&Kb(|?)&l+indHixpe8=`WXU&x7`kusv9q8~| zbM^YiNA%3r>mPZpKlEIGz_s?k8of^4DeTL?kUco@jGh=2E~c+KZ_m~ngTevbFSYfA z@Ryzt{(Se=;4e8h`%(Fhg!|4P-s7ERu6`dMexG~SCi|q{Z+G~YBK2~I+1qqmtq7`+W$bM!X9A0o#<KYkjV&{Jd#Fcm)7Q~mMsN37&(YhPyn6d_M{n-}{w_yv|N0vrZyDz3 zZCo?+=gwEU@J+n>8@YX1`xvhC^w*Kwo%0^b$nDOWQMTMR(vJ30$=}& zem{nueE|Lb0ebdweD2?)Xa5Pfe?ZTEh>!gtdiF~6>2dVzKQk}rLC=1Gj(r1L^$|Mu zZzw-O$F8LAC+OHO1M?Gf>`H9OC+OLK!C(IbJ*)AY_mKTvZEOj#7Uo9eJe>1bdW-C- ze!r35Z@^C14zn5xu+P=Q3L2Dq{Xcf4x9p@&zRq35*!_U#?s&~)uhu7nMrP-i=P5ol zAbj{;=68>|bPh!3%idy7e}tV(U{7nHO9Fdp><9KV0UZKq*1om_^b})fGt$_v!?CDd`J%K&-tHhqJ(eK#Pgx<%V`c-02{jx`lvmbgV80Q4E zOEAtq(mmtM{j2!fRW}MR#(6Yz8)8#cHwqr(e4~D6oPVTt7-v7@mtdS_OX*jJwog53 z?3t0v44<+lTPXhtde`i;?b&-Rb&Dhe<^$) zG)8abw$r!7PdTdu6IYZcqWYQN-hA2an=&K}g z=p@hKkMKR@N5x-4f1z>`nO!Uj#jC>RqdPH}LIWqa!QB(>?StwrZ|pt7bd4>V`a9 z#qS%TRgSHq?mC|NH5Z}&8m^740(aY1aW*V#BJ3$NcF1d^a-Mr^(+R*X8my*zpr{88vl-a zmj^}TBs4U3XqID#pjnO`;`hrO8YihEJ9M#!z87*WnuMTp`QZ3n-FRu#3hncs? z(AaSmOc7c+ylKJ8*P9wB)%SH=w{WfgKge|(*Ea26H?%)pUze^NVPM>{@;AU6VPM?L zbqm*m@vmIBaV=WD!nMYYKDF$(1~4828IK{SrPtDx=LlxYEi3;W_~#gy_j29BwP5}$ z*KJ%g?!f=|rY_(!4lSL)FYygztcRSI=1W(eE11B41Ni3}nD=ts!nI)jE7xsYYwTa) z8lGx||5{3X1AsjcJ{t08A2;@UvK*ZKE6KZ8?qv2?%W~uPm4kzku_HKxt^d9^*7CoD z|NZi;n>$-)Sx3jPMsq%EG#9W&^Yy90$n39IN3Q>?nn;0vZR1$~ zy2eHR^^F_+8ybJ&zpL?p|L(>DU=}f#DAD=f!)keVD(_C?-CEwA%DdA}^KO853wXEC z;KcmA=V)0FTj|3WU3GsGd(RduM=vAKx?WTl?3uuM0~cRO->kB3Gba5^Q_1@OMLbj8?~01+k9I1 zbLIsj-&#@~IhTCezTmmzlaHS}zNeGVKZh>rOYelxIcw25JJ31%(K%k4zYC2M8c)V` znSbcP2mHeh?)IN`@HPM02S4-=KR6;V;$T(aoP&QIIQQUEU)jNXeEknT>>F_KMc=@K z?=j|siFtj*Yu2O6i1c=9K^tsh`R{;6^Ls3(8&p|z!PgztxqGcS1Z zCsn?GZv1OsW25RXwHg}lvFj?g!rz`8jClF?|A#iVamb25Q`w3^ zvXLzpt$e9z!pgzMCQe%UGS>r)t*Ko30@nkLUAS!Ji%pmL%Nx-L*!THx%!mpLCeefb2pTZ6iPh#&9^^x+%U zK;sV_8(rTxta5GR<(2CizgfAyam~Bw-I7I@|4+qV%lW>T!(Tf+{IxTmzg+$GY5j`- z%J|9`%pc#re2}om2YKA%gZw7P2N{A7G8{i)#D9rLO7J1`d899YCG7E69{2bwzsd1e zhJeR#dG@3lZa$y&<=cckzRlwv-{v;ivT>gB#x)ff$2VQ*`UVYKw z)qFc5KK0rX=|FpaZ^x@kM`%4VH(niYLO*WBhhRU7zNz?5OR%S#8021`b@ZJ;LnCJz z9F0+mzh&=L%HCTA0}jraSA#9CjmYmnX1m*cBR)z6&iSawf9|Q~HG7sq`#NAJt@_3S z{Eo5s9arOb$QSw0U*9+)u(q)(u&(j11M3? z5I?CpGJ<`{hsk>9^r9GNt4YNTq(w8&t7uN*uT-;T3Zt>F8&WBYz+{jl*D z);~ACVKp{l19mR2|8h7q)YyZa%gM7`I5J4xx|8akTGb1~=K6a>vc4{M6n09Iyw^}o9`LI~KC7n}~8 zY(0@b=h)3}^1r+NBU}0h2JN{xP`>ADfx$*5(*EH4-TsEg{(*ZMFAm(>__e_I8!z(@ z-?*i)ZS(&we17x47rwChi$yPPcKuyC#2Gi#u z5uKOs>a#uO`Db`OG{e8&GS6)Jc$Dke=)UX0?Gdhz9r^}5I6D$F*R~#f2RqZ?9~yn$ ze^zv+jYEmedMzS58GDsg~!j%0FR&f!lZ!@*?8>G3}DWToMYO_)$7B| zGh45_^xDY3uXL4Boarf6CPL zQ#Zi*=Ik?1I%heM?=GKOy1DDxkGEXs(ao;^qWr$Dyz|?1c3ZsG>RJCK>%IN^#)tQx zcVvFUsc5gG^Zyp|=)y4TsQ^<|%kF4;!d(Ks?R&f@4kMA~X%4=qwrPW?%@m|M@ z!L>|l-=B@{q>pZl;^h3v?D==Av>s^*zw+qTgS}gt=+}+psjRW{(>Bd}BD4Oosb-(O z{_;KYRIYrX*Iw_bx8o~nb2DvrICOQ_(+(JVX4^A)Kj8Uxq4hv)c(BJu{?q8MSm6M9 zO*cMY(-2@?!IaRzl!NWE=ESl?A#y*e3j$4My@dKT&sR5S&7|VF;Qe~$xLMi}y5xcVU|s_h|-q z=a~op3d`SCL7&wJ(egXac%QB>fxN!F zJKtbLegQ?EKi|xLN!QLdU0LtToc**}&z)}AABH2fd;-NBzfY z3&TGwupY?VqifdHz4W za3`D$_jC`A9F^@{{2X72I+M?$derHaqkM&R4x~c~0I@cHGGE z$c%~8$B(J69N3_8LGJP8j+;vd;7szug%0m>pWz4eKt9|~!9^zhn#%o;jx)nn|G@7Rcw2d-9HeA zALg#&Tut^B>^l#ePHxV(J2~T){1zYjdb{?f{L(&mZ$2@Jij(%H*m_wyH6)vY&KF%O z=LL_4epP!&I^W#y<34uvA(NA)-!H8`9(um|kZh3oU3&ERR}K+ZF*(ul6>Qtyhu$X_ zOSb88Pk-HYqWyXLe>{0Y-tQg6ua!-#jufz#)V_sp|J)ad_^~$$0M|#F2BI6{Gx$I6NIEzaoyz#3xZAlX2C%me>w>`?dBZ-sF2I7ed!$tuGw9 zW8U!vtUlf3+5;|d;9Y_Pk+4jGyuPj;eV|aIG70d+tynC zjo9^r#%B>Pb6p89%P$+lzv^Y`$d9ponuC>&PorE#y%PeC>K5SJjNuu6#lcFh1Mv44 z{#`hFF5Z{_W7^_603VLwUv<_1r&e{4hfzGUIG1J=*KSw6yJad%A8 zjKgH*W#3l=KZ%C|QTgNln|PhR737YO#wG^;exC7}LM&3_jBiTba`1l9IKlYULKpn_ zwn{6ov7Nf>xZhz_Y;1=AV$+FVJ!Li$PLIF|O$r!D!JjQfStSUsiunO4{W{}Kf7X7KjUXtuW04jvzzPreKGao@=NK@YE!p$b2HBu@O-tN z)1U3m^H%S3`tzjoeDs0f{jP88j-@;QI@)UIhm9xS`IA9IvNE=eF};-h7 z$RCmnXU`QkxZ+pqyvrHj<(+?--{d3nd*WHy1ZSKze`rNM`Hh^I2fRAL`_32KeyZQR zqx#EK-=jCodF1*XpGWVSdeBI+%04Gx=js(xpWpt%g{`p%H^KfN2DYXFfKE z_!H->lHW%hJhoT#z(?Y}w`G6eqxfF?{;=*Df4z6(<{Bfv<~LwZ1GbSzu79g~@+&;^ z+?;p7PxH|$c}ISR_9E9{pVYth7U?zH)~B#nJFL+ge{2;*+p(GLkBG+pjVbI}<~eq> z{W0hHEYI^nkST z{U_`vFj{`)AGT*Vxc+>_!OZ>df%`6S_4~WNVS9$HENePzWn0r`?jP|F+VkBNWli5( z(FTlxOIG()59E1qnkZVP_Q9`WM; z8~^D#AF(0Mj79F`hg3Y@y1AmHxJmJ}ii5-pUpTN?zDb-p$b9bCyzq*BkG!qsKJmgK z`yM%+kI&B2jGO%v{XvS~WME%FuZsX1PE=w{wq%6k_vzT+9+jlO;@%CTIE4BbNgd-=bIccMJM zn|$4`0OzYKo@@GB+PoEhf8N)>>(eRR%k>RDA3jI0@09a;OCU{62ZnZW;7 z`2RNl-{*hn3&DnaUZ`$(_=TE=7hkAt_yPF*J-9?KJiBS*=d8#*SNI~||BO9{bNRWe zSo%9R9-~-9GqIS^s=@D(If4`7?7M6W_$wGcgS2cRJT& z*WO<9O;PzgG5o#NKI;ngRrFH)y@u<#mals?Ff@-+tU=#m*L6Rqgns7U_KWN|jQ6^n zb1-7Vw>I`N9>naziltI&I_32n;rGb@ zOcQ^|(o1wHfF9brp|f1-titZN`UE``+p@nqQ4swO^a%Q`NyNBbR*Y*`f^SQ(CrCW; zq`ob&VoF$RDE9e4zG#S?#SpQscF_--c>AsRkL>Iy+6#@qr@&92msyv}jaP|x2YCAR zqSL3$_~)JHF_IWfI_--PL*lzkqd7;1J|J8Em=&&J?JdE&l=`Ooc!)VWzT>)PWCNTm zaPi_P9jo@=nQF^UvJZNen)Q(^J*(mK(ZldFSeH}$M*3C#tT~UkD1BsoY^S?ErX1x_ zBakupMAxJDv8M)lJxuP07Z2G0d!6lz;rZkNRRjlxudB1q%N2e*!0$gixM|E?`rO3% zVBYnmM~P2}r?;6{iuQ|zOH1a7#b8US#)J5zHP^n(N}gbHqTHhCZ|}} zx9P_^)`WHtr`igS9)RxWbHAVag~aftSVi3>#O6Nh$ej34a+n0(Le4uDyr(HU1HNv2 z){lsny1>7_{jam)G#+1d#>34K zcF)X8;Uf?aG%^lPZ?gVsGUqteJu02+j{o=p8voqyi6!vYwJyE9ihV_cYI?wvz2KUM zO85Dqm&HzOiA~J@o&_#>_s4s;)JxY`p9w2|Cix1n{#=iow@;C7vvl6ZFh66Rm$UReKwxRSTs`=Aw7(s{$;7nuJ-cC-89j)c zp8SpbR>ybC=)=B!xmRklwpx1pUdGrR&%5*Xm&ToO620dl7u&IiqSaH-yI!<_-ii%t zpT%HsPfQXWt)491b*8uS3Va#br{2;xvh42>nY;nfeUio+nxQ+zm$C~j;&EpjE90Bb##$E7yDZF3m@cm7^b2smF)$$y^H}Aps<~^SEbKW!hg8nS$Y}uP8 z1S8}gzPy~XV3$q|a_(Xw=PwpTO7V;2BWXS8X08`-y^!l2JFcF}lMnQ6 zMR+?7}+yZLKv{Sn{<4-3|EKWAU@6`K`;*D~4`8Z}o1e z&icALD_*`d-`CxFvajpvdix9~*;RL)&h{bt*8SheqwT*sJZ}82dOJTd@)ydF&yANR zljMrMi+*_%-TXSf7;Ba(!Q_J5t~b{?~O4u2?JZsRx!e(iXd zb32Z44(^B0s-ADovc}4LRqbi6M+EP0Py4FYTK~uya-2`*o)6nBzmBtA(!^%()3x)R zy~T<%I_Fj{*R}JV4fJ5<8>!pPy!TUpFo?%Z;kaO?k%Lfi7hC}1pKsc5Rg!jr9YF1pFI5;uM zCv@LR?hU^aCk;QsnNIpHv-xHY^;&e#d-A^%+}G)z(yhOod-YBK%u9$zuMzI z2R{c7)`Xy`)R%d%^Zrc5q-@%E$z<98=u*kdn>xa+rIkj zjLARJmV0)pJyyQ(zkNviZ)(jw&^>x*ePi`>VU60@v9Ew>vz!iPW1j^{MQqw`u>l}C(O=A zT^;t^Z}n}?<*x4ES+Qhvj_!X`>karA_`;jq^9A*6-X-?@^eL`u=5g)?bSk7zwhpuB zjlz2jc)!($J&u_8Og7#aqo2wJF?xNX9p8K=3~$hT^FK2OGk#9; zKd{A&mEu4N_%x2cmcSN2jGy89HJ=BE)MU;?ni`bvX!u9x9j(WwRBnoV4aGOi{EPd) zC!a*}D?Vt4m-GDpjDMrGX1{kH#{FX6{i2sgXjeQ^!875N#4j*sk$~qa#%w!u%fz0X z{)^9Yd?fdIG5sr}pM#){BcI~yzwKk(B#$fvW@2mZe8A-Mn(@n?|D(B<=3JVSNhkIb zuZu4D?TWwZTVe}>K@&TP6EiV6K;muqck>=%Zp;s2Tzh5XBi^Y-PBbS|UWoF4r@^Zo z@UdvCGenf*BYxjrNF0j#UmOLUXivPXSVoZei8=Gq8C!Qe|IdHIQ^3`l0J$sRnbisN z8B^t=1f1~mo@Ig0K z>>C*Vmwz-dlI*ip1H=EE|BSi813VKwb7YP2^5>108y|7!2jlrxnD;y_$v_dbD~5)J z#O>;cBdtcSbEXA8WqEWceRXx{?a*d>cCNq4GuJ=ae|Grlnk7rFEMf2XcwfJ0omJ9( z5B}u^e-S)%xWxK`WKr^$kwv4A-0>?$KNUqsV>ee7!vpa5KFiv@8dCb@=Z9!IY;pNIA%!dKDPB=Qxyig~!h z1DW{>{E;)C=YAFAnvrK@%$d(;2!D%UT8-q;LDfod5PxhzUVE`Q86)-qllhadki_I z)O~&&?C3imZ}Amllb~xMd?o&Ri<~g6RZO02y|?Jisq#tRTl^M#J$QbA_}E_f4%>8{ zWM+z<5vLbi>HQt}pVKU>N^+;)^;|N16Ee(NM%C4v$;JNhgVPE)w~aA=5I(l;n|zR> zXf-ik(Q+X)SGfq9P9Y|-n)YOeU7MWIJ-qYXU-WLVdWt6*eaU;$N4Cw++Q8iV;G?a| z8G{eSYx_Lc|K_>g!}UpWi@uev9oonE-S3(InDu&a_OADA8XD~RI!NxBe+s^2B+B*K_TwXa$J45`zo)3~%c&mR%_iE0P_@L4X5A$0+T^{}^HR}yo ze@5-UtXMyGQgP6HJo=HZVDJbybj#yi_50U(xFmtu?&4GFGx+#C_@q4eMEan|dp>Ko zmlof0acIq@h1&kPr|oXHO@{_?Pn&P^o9vwX=gN~!kF38bdTbIsWLKnT^2X(}@Z#yl z<$e!7ihXK7kat|FJveoGaPrGmVY9TJBR|K*FaLY>ee%ny&xf!3Bm8np9$tSIegTh_ zE*_`hmzjCE{I~K8IK1HE&Hmg)xitK~i^pmB<=^sf`ETVHXn{=jNek(hfAO^aXXh7iDf%P)@{b;T{uF+Z4VyZ6 z-x~#fYggf@ryE)OJi3GZ2kVJtb_V|8(GIJqZQPjsjc@V1gXiO%I&rS2bDf~v#u|Si zxi0~7U&dO6xvqYl znYaFJat4?y%7>}^@#;5}TRF|&h-qgDBjvg{@h0VV8*x99^d*t{3gcuuB&qO>s=mS zKr-O+XXFgV`@b^Q+xnmRSXccQ#(Knmajd`mDaK&vpD@;AK1Dk{;Zs$m?R{ zbszdiaf_!M{qr1sK>xs(MLB%w%I=xy3h}h7FE0Abne$IX^dpuPN8X@eRRTGzp(Gdf zp!UjX4t*vv^Tgy_ndxhP+TDhp+4-^N#qJpfnjiOvrURhqKxld^*KS<)e6Gjw`~sfO ze)&Z?LDPwbk zJ^DV-n!)U&fcDw<3!)#s*4MiQw9mWHQtxWLbnU)+{J6sIeYD>>93KP!M(1*@dGF3c z=38*YTIHXpzKe_2sXE574nh1WIg2%(*}MZC%-BPdB(%^tYJMy|qf)%6Qn?=KX4Y5n z3v^Do$)Rl4+Dk!{{WGSW0(fXDe4;qH_`Duo5r5Rc2jX*Gx8j!zC)-bQa@LBWdl~-5 zAo_tF{rMMjb;3%ACtUq{xAE_?@s26*!F#B_?3F*;Kh5Hw zWc(EKQoJSxKWsDk8CQm_-w^kPceGxCKl-w}24-@^h<|E~v{tG(<}`9p%1vB*)%{w( zm~ZkYzF^i;wO>YZIQSH~*zWp*@So$sUvm-ZkyrER-<3yy6R!hr;lH=kdZ322FRfQ8 zFJJ2fitiKS+Z1Z4R;+K+f=8GG^KMUO{xluHG&C7%Mwo=k6JHbe_>Q?zi=v zXNX~&=Xl(n$_Fi$bZ<{`Dq>mf!xbe7R_u|d<*72WfJHQ0L-kT_%AJN}?0pIhbN&IrKoM*)&^ZXodkB zwg#HX9*Sn7YdN{M_d?g1^lJ?J;TJ$NQZf0LS z^7u*wT9sR+-GVu8$@nY(K!1-wtBrlo>Rf1L!z_(X@X#xx!yKEu)}dV-JLbw#zJGJH z-p<#%X{=(%+4J-k!dr{rE%er|4V0|M?@r8xt~a0~=AgHsvw6-O?JnxxgnsJc8yOoZ zkMPZm^<~y>jUzU!J4SwH`(oBSk;gLX?zM`$$t%IG6-O_CriZUZr(?_J6GzV4BHNbD z{xyBQ0sPU~$tl<~Y?|i8hp!D1gH~I?s&42jyQcG>Vskj}6_^RxHuOOjUU4*d#<0lU zMSloZ8X3A}-v-XTEa{#HeyPdWt%(-LAHs7-W$Vh|v6AS;;xX#y;BZ zZidz+(0VItD57;YvL#xlp!Hj)p!M-zd1xI%uR!BYXr7_7=nk!AzuG;teoC}PXJu(! z6iuBmtg@(bk43w;IOF`5C)YQY`-ta2Yn}CVxE5b$l1pp8r;K0mDmUona?$jE4DE?-T#7`sb|=fJm~c+Si2I4h1L+quS>NBuqRAtzPZE2DAD zg{OS_g6Q^70q;iOrI3wv^4+1UD?5^v8gQ-$=O8#&gR|Djg|qs9m)bzi&IIR~c{u07 zlk65mzxyfRT@JiB_^ozuwtaTnKl>*8_r3SAV)Rg%by8l!j4N$h;njCq>)h|;1-bUa z&L_#*kFn4}b2aVbDyAHTKAwUs>AOXTIb)@C$i6p9Dh@PG@%fIHT(-6G!VPYLw~E}*e#TBJW@pA&@8m9RA zb%(fL_i=i+eDoN4D1kiK<6_&n1>cqp7p%hQI>uAi^^|M)7roqZlU@JMN!hW=&quh4 zvyQ#{kCW(I`FKY{{wmq^PIN*Sdh9SdSo&CYUpk@%Uj8ZLht1k88jJwXxhK}bVw&UgKz z%*Ro7P%mcDm}K0q2e(>cyveP67a1AE2da{fp?!by zU2amYBJ?rz;`u`E6VOa&txTmKG3YgqzQ}jhevmr#1^&&a`CR&<_cVXgoK)|vVlE** zCa(v0xi)bsxE2F%n$eX71{dKp-q4c$7>wOIa9A%K7%LYC@%~aPnRiy{cb)MxQgovomu|y# z&vV7Cl&e&(eA1EJLlfl_jO0GY&+bFlX|IVlN3sh)=SWE3r2cHQ*dtf2&(~M3r1m@< z2~}5B;%8dUpY)>}@0e-Mi^;}2I+w#w$v~B26dlallS{3hIDUrqxe?ES9tGr=%ik`A zF8vtW!sw;+wLQdnMU2fl?C5&*>juW^0`9fGa3S{-xPKd)b8lg==li~3)qSO`l@H(y z0OWcd@u&5r_?ZI?PwaH3h8X>yM0vLr~~=z z#6R1Rm5B^(B@l`W9bI|G0mv$IgRJa<9HBmV~@r zw-6dGf_AILBZh`P*1_9*5Z8R<@tKj z$s)yQiNT#`_7!v_i`YL=)V+-{)O>Lk-P3_?=-k4XFqWEobjfB+s_s!7&CEOC32cl5rzraDX<-zB4=~^l z!BBqL{(bA1ZxnYchq!AFS)H766jj6OUay>5VBn@>%zd;03@4bW@zY3Nm(ORwdp zh2hW(9ncrOG?zTQfqu`}5!Yc>b84pB+hs3YkX} z8`#RYw(u-j!rFqbr?;{+TvumB(jo4La^GBH-zST!(gFSM+=sY7CRm@P4Rly1I;>W_$Y~+=v@3Qy?=G`?61M_pDf(cmuPPNP4%_y^ z2Y=i9zK&pzW59|7JCQ62CqpIS_GEE*oZ{bGs;lOmD83>FPNrSY?*`WG@X#{G>Q=^T zDSpD%>Z)^`_kNB3$iP*fz`LFIQ^4;4ekZsb2L3xv{R7m$8@z9F`ZNGJ>#M%)Lj*ED zL=qq3KLjI>Hg4Q5MZC|AQAyuKMqAgB6WYVvrl*7UA3V#tLVP5CksqwQ zEo0!h6nbXIKxk7KDp|$^T6yL#kJOR6h}D#{s$@3#OUmJN@;XFu)3Dx zd)Y?yRhzv!LVZbR!+;MzGE zJnP|yN%o%DV#ltzYr}3lr5L-`Wqjje=q>wJ68$o{CyIA!Otp@I{WEKfiuXzebf(8& zY9A7`*~dDG^uN|`Ld;WZow|Bvd}?U;B72Ww+?)9ceLTXuUi!wcA^XTds%E^DD||I$ zH=S`r9;*}!a&dS4Nv&_lCi}r%d-k=qIs}~M!>$D%A22Gw#mD>efvK2~@mGK=y@(HF z;5zZVovtq_xblw#S1?boW^d1zOU=HMCrX}fT(qU2DTS;muYE1w*;7nkc2qolljhsZ zNv@O3!N2P7BjDA-dwTa4-u?DD#Z61cmhj!I;H!dT@9!Ldoh$)ne|Wzvy7rUw?jucn zpE`sdtV3t?BHzcd^JK-Hw&GV^2!C`e_VS!PPk#R;co;c%X`HG<#umd1A!y%JT_qiB z;(?4s2lz_vIzCi8*e~>Fdl_~-P)&^3+AVn$f2+MCefV*&_tBQyj&z*c&H>tyymS`h zqm=o8@8c8L%wN&jN0P-=G4zmP|MElkh+oi6rVrfzT=&v_)JgFC|Cqghx&8YW56!;; z&7~9E_=UT+(>@#>%$zGav2Wk&Cm(0$R+?g&`BlCBJ*T_-_?}a2i)Hw=u%C5BI>{O_ zd<% z*M4ODEA6o@ivErARjHrhu?a!yz@yARlJH}v>>RX^EJKH?6ugIA>`EnTv=87_Hx{Pf z63{7eEjba?Eo3b?9ST&Xv6t!ez(_0<2$xA$TuWQvnPxtluGequ(IvK&o~`SC*!qBx zSF;x`r2U}f(cR2j$S>GAUwH@oey8*m=X$g=@BeX$HOcS?eQ2kCIddBMcZ$ImGCuJ+ z&~`SunCG`3(^{iH4;hG~hcyS&oMw9;vM>x9Yfh*+SPFdQ;~4&@9r-|JK2vVSWvAwo zB`4MQN0n13+UmTR>C9zh<5tmD`$%|b9Q=VjNSLwE87)Q8UU=P%#W?yhl6KMiK6IuN zKi{M^V0^U8Ih)C&+X|!4kVg@R7SfT@r3Qv*2dz7P53Rt#)_n!`nS{_Z=e`(x%D`oi zEmOb#e6CDghCI6QTg7F)`<2{$#qmX2`)3UWnkz?9IZl&V?_IRC+LViLwaX>Ts`GN6 z`VqeeX%KIrkR%NB4tc-Ce%h;N|Pu19gw`Vc}tVXB%}Ibp5>Vw*IRB zOSjIQkCr*lSMkmoUH``ZP5qLcuZ#I^Tg_R5?SU1KS_AOaUqWxqm5;CeO4b!A#{7Kp zBK8L_4NLwjp^bc+`J9VCj~s;fGxL$6ETox0?2Yp$E%xniv`e$$@izUp7ie!=~# z0%qQkg=6OqrO>$@n=NxTxM`C;dj)3S04BMA_iG5n| z%|r0bkLathXLCg(#ixp+W8j@w19g${#6;=~Z^pF)Tov=#&o|d)^Bw~4&i><>hhRha z2D@So>X(n)E5StWhNaVIMQ&uDWexi*6OULuHPEhRRb@Ew82Z$l12!yt)qe6{pm&0K zq-_@i(bn&MV)JWlko}RA9Zen z=B|hy-&zVpH$20ca^P8EofnQjZuP{T;GcPe@^bcNe*0oLzL)2%S==@L{ayUQt!8j} zxRP@N+nWpVaqGwhD~!JU-Q2$Dozd*e6ORSq$M_Uq)poy~Pc@hMP!zrhSpGH>w`#C` zgSpr)=y_d|d-=s%_gS|+Nj=fU=o*Jk`d#BKTdh($+qB2NJhwgNa3&eYsaBvNH7VG` znPd&p!JL8G5HBG9iv7ID@TQ%2GX_}g*V1p7z3>#*RviOYhlcn(e?)URo2n3 zINz1ge##hgo%m+qB|a*TenV|NL|eDg7XFQRS33E0?U*_Jt-z=k9_8%IwT|B7w!xT~ zHnwEjs8Sovw6T;n>dvqY<_9LuU6$`#Od)w336>z4?y0yMnc983{cY$@=1?+`hyUKc{U`eIP0m_+kR9e4~ zZT$YFxxP`da@8-YSmSo>^8s_dgeSiiS(D$bctRXmv2&EjM$a&`^#u(ij zNB1VAdyyUa;3k&M`1G88dVfPcpZpDbzo!+gCih6WnfTzlL|=OkzMWIy^+Benw%GyeDqVz}S z1<2MYKP|PCIS;zDa~Ux+bb!`%wFY;=U}tZ6t<@vB?qr#X6J(^)^F@YSFz8op#%6=^IHdPw8M|>;KbR^ zoa5~5tn~PsB#1}Umm-2E&K8;b3RuB z-K9Ja`HPAlNJq?4ZtZmNmA*oU36`xd?Dexuer~;eZ=Z=)L~K$qw__0d)`WE$Dsnz zm(6u?^hL@S_?MjI=y%4VFFp|e59x#d+lRwzBN=aWjbbi318Is!W+kt#JluVDZhq%U z@-U2e#gME#OfSpI!&drui!H~+vC2;yPn-~Fgxxi$pU4|0!w0q; zIqw%lUq9Wu&|7nJ$x;dOD;ZQQDb|NP#ru$_tNM_qjglw$T>0Q7oP*I$8|#ph^WiUY zq}rZ6v0>w3c)!?J+|Y?kE#^1LZ3>xE-*)Jpdi$x@iA)*UV;tGD*XH6NxeBXo#wb{V zy#=0Z>t&K14{h^gDTk(E4_!n*=}yf@J+hRc;rg7qXD&-ClrQ`#WJ$Jut0Ncky9)0J zW#mHrl3biDj|I_z@IJZ%e7_j3(D&c=Rfbbb@VSid8!*3XzE{vky*H`%Y2>E%bGbH6 zcB3!3x!hx4b~S>xl~4U`?k)Cpu(mLaJUQma_>Wv??0mgt z=83G`y)qYCJxrYf^6?k)zZd-$#NV3&tqveZKAzpkzjUr*|1R7cPXkvvCQ8oF>1ZPT z;X4f-o^o`CYu~%fc}<@0v7v91v$0p$&mSx2mH+lRj-5mwd+p@c=)3B6%tbzKaBSs7 zqw5WSzI6cIfSyjyW*p|AzivQg=Ayqs=x}tt_-2XD>qXZ~zNH`APh%&WBvlwoX@0tHw}vfV{Mf z9gxnDO+0MIN$1OG9_QF0=Uw;NEahhzKKDnj;#%@?4du)~GKL-Kkj_fRfwBDl#ebZq zz2_rG`iPe%(U~2y$lbS!8|IQ1REdr6WZX0_*F3@fUGoL4^S8qT+TB1gl5zueM6isYPuS=v1G@w?iBr=s@SX=a9))>VhWMI(pUQ(@n6)zl*U=!VB_O z6stHTj_}QI;QieBg+Kb5a%u1hv@Y7swaU0DOQLU4o=(=>aZ-OYR+VQkRRFp5-g(p3j-5d&ym?FlE2)I5~T7-^WWhTt=kGs!rg34V4SKzUU7{SLl;7QR$}en)?V|GV^0aHK;dlkM!w?O=ay zeqXg#ueL?^ds*Xo@s7pE-?aw7&x5+_@$b`=hw)9c&i*cRIEb|B-LgA_RPj|!g4SJHkr$@CHQT=zJuheN9#P(L*$8Y8V63;q&(Ho-p(zgF_@ zUSFU)wC~==sRn*Qn+x9u{HL+iH$wku4$ru-1jqJI1~~I^TgPi(cE{zC{{hjrDa}4@ z=l-yB|66l!f777NTq|bhk3MIvi@6>Y{ZCVOQ1lSxtNiEqJJy(RWYL-XFQOEGp|(%8}NJa|H} z&iMuP4dOBR3eAjP9VPs7ono`Bv$ic{jLf_g{4_5W&&wxoMVGhJ-og{rn^R7k;_C|D zbK8}FeG~2F>hVByg&B`P^dBj2<6rBWw^IHw{Vm$=o^X2F{>;(WI)ClYLBApYAE4hw z4*f2qtZ?X8eung0c!u;l8VH#D)2?x>=LHIL@=q1RPCf>&?L}`9kDpv+y?4``noJH> zy2LuFHHrP?iJ7qv6dGT<3trh;u%WwkjCEbKU_;vk^v&CWer>mWe9y*Pto{x6@+{5o zp-OT-L&(!~4)>+{6kBqAwFC=z2ET z6Kf^!yKq(8kw8gX_cG4;|9IoZx6xPYef=7W3s$u$|F0Z=e-4{2yKop8>R67hdxZ5C zpVfAuWwn*T|J}EO1F|4I-`T=m7GM8{r1bc7zGG3Q3~i|TtdT_I$eb}I_|H6(yz zkisAcB2V>f}C|#g8viJEBJ$>92v*ImMxI49jgOR;Kjku#1?CVMo%bD zQ1(qSo8*1zdi6~@BS~9H;3`g(1nxJ0tGQ3IReB?k>0gMLUi(t%g@W!@;uWTUv*@2y z&=#A-`}A)ebZlnNa*F;nTY-k;?K}scG1O_FNdKIEb}&92;3I!u=NBAi91nw2*Ycok zgC;{?aOy^9$rfGg?JN3B`*mWsJAFm3n!ZkQ`U(v7RdbM}`U?!xU)nVNrA_s>oi^Kn zeYRi&GY0d_5jsd7Hkj@|8Ad zZ8Qn}+ku~|rGMbp32ukMD^4ER82Co;J6eHXQq*0^ykJa8QCs_L#d3n-}ZR=XbxhNlR*cc?H61&gp8CS5rt#cW?!JPjFo!J3?abQSh4&$G) zSGK|6)=gb8S4oMBP%2Det*(^6QXCm!oIe$@|*(!OBAk<$ozJ!;}Tl-%|dX|Nr3s5dUxR zZ=Z8h9DO}=T@d{h*X5rg1~~Y_)7vE1-beHHJKls3=l$N1{71#Srxvldn^^H&tGGLf zo!35x8I&_DjeSYmLB>~OUuu;$Ou-kZWWLrp5&bwFT>%WOb#@h7MyBw2d%EEHQM{{o ziDb#^4^)-gx?-EwD&bAd^)*+&7#~jZ&o|DEZ#a!MjURx_upZPP+mBz`CizOzMmud7 z9RhsW{iVP)y1&)uWj3(L{L0P!`!&qTunC$4`Nbn~_uBPZ!C{yXt6t}$_q((a!Uzv~)xuyHQ?eaEpk zcrW8Dze0OTT1O)d`4U=#pHdL$t{MaOBOAMMz$0is+)MN2z~XafWV39UwK`AVh}FjdK+ zR_dipb!H%9K}~H%I(0^;+lT*XU{Ao+g(wf8>R=WqhlPAAW^pX{^u+H1Y*UGIIp zYpwL)GVvkrRFCRY9W7hrSNcsJM=SKC7-$Gx9;yt)&P}%-^D*A;8Jwb76C;H7nBOw- zB-vhW%$aosdxH1O@4k&O>x3>#iHVdj&#|92Dt!1Z*b7=O(FL8(^JO-7Ty4ds@V|XL zIu-f$8{k|cTMc^VT-KWX3y~>KY|h@#!#+2s4ZLJPJE5iEXbQNR3eP$7t0qs7etG-( zIC?^`YhBQO>Xz(REUXh9TX2I2;ylQ4McqR$8D(?M*B zL&(R&Q^6l?mQs&mL9OLh?8qYEm?oI>(ZT&0J3ldtT;{QI%sP+=erVKR5c~u1^a*=K zBJ7JyS;mYuBWe?UY4mwHW3Uij91q=L*EA*7Y5GcCBfz6#zh3-!aU=b1%J$L6Bh(=} z6i%Y_!`Qi1!eN2>-gP7Tq8uId0Cw{cY=D7`;pHbES#y`KpoaOB<|=Dom*Vik1#`=T z?R1$fG~(A%0=Ufj5%RYb`6Noy9qU#mla$jV#8-S(Qk$8aK@|(zc2FdgX-l zSF((F`wHbf3=CGOJbSy`4UG=E_wMdRjB^Ox;pRcSLAl>^X}#?0{I_%5a)ZA!&$PdK zPVg1(XL81`-Zz=&xxww`e-`hvgZ~=8&j|jCd(oV+z4M^a0gM5<(v2r2$0a`*d3rtP z+7eS7TS7X|=)0Zvelf3^`NYKdq~eZY=vQ&Z5Of(quCzj<57Gz4zSPG;a%@BJPnz;f z;6w4d^oC&flYbH&M~)&gL@^te7w=RqD70vF1@sq1W+@(74~}y_!+O>Q2`F$jrZr){oVbq*A@Eub#)S(``nUCy9+b2x<+$<0Qq>? z{7btl($NXbsr2ywRcrwHfCu1T>46aaEVr_Z?PC!WE3&K_jp0me+z{g!WgJ@>NBJo7 z!}b?iu^(In4okoXFlpYqG#xsO^-TX;(K~$m05qqy08bvbNI5k@)xlP3oZjGtK(ssaZ!;KGh$yg6suMCi%ho2Q;QMlL#kIW$#~jt)D| zntristL*d}yY@kBj{5YKUHFsJ+u)yYHMoSgTGvtM!_>VHT(9CD9{UsDwygut51aGL zn>8=p0iDU8%aJb!t;?57PbW4}ZTnf-@~y{FA3PbYuworEptn^4otfD@k}I3-<*W8if5SLS58~xdlPW~x)LI)T=cJUIK zf?NSN?d9N0cmYSFK3Tm+{%w&jyGC|Z6gXOdp_TT9r^Vn&b*WzY;0^d@#s|L|A3;9& zP2f;IIQToo2d7@+gI78}cqwB}o30POR(wI-(MsAxF0{fMYDabL=Ud~0gMZ_L&#-;) zkd<2#THyHLjJaUcd0)m4rVjbwinkjdTrkN8r;WG|KF#sLY18=N)El7>#s^=(dT@9B zzw_LzkuL|fDK>1+xcgl=bUpw+luw<{|9)I~Txnc6T(*u(4`y=z3HdN*;@3$d_$Eu^ zudxR&gTTuW+8!E+o#XPW-}c`+FID_8$$wkL_`zT4F`t zVlC^9Keu)MO_CWoU0cvW_;*`f8Pe0a8n1|M$Xzf!(n8BJD2D7^H6g6vEUdUk{>5sF1r6fYj@}J99pStg?*mn zANjGhT96M9rl;5JMwX7^>R?<7Gcvo{wyws9wDrhr#<_w1?CWEkm$`U?uibHO1GmbH zXdBNOe&ywj>BXz&OBN-6GX}mLk8DK-sjSLqe^vQ+ZO~5zGR%+NW%4h8vyk7{;@5<3 zMm{I`jjhNG&GocHI~}~c7Q0XL|JqCDD0qeER>m%N$*u`RSf?hbqM+7GMxQ0)_)p;uG`5j#h{~;3<=WnCzKvNgxd1m~u zg}g_eE3W$%`1bl&Z8s;@oyND4jo4P4VOLOF#`+KA-z;MP#g(kZrhVa4xD<}s;f)># zM^SL}Qzs76gPr#(@eGopm&SPXh0p>jw&qy<|jn&xP!rS@!ZYcR0eeh)6 z4)URfGPcyy3NK3bDxXQYWsi#=hj{rhBlxhlJmn%o7<<~e7#%Z=wSYHszPY;>*>Lnt zI`t^$TDkb&Bp0QSaejmTh$nK;1+#zkleZ$ijqk0XtZ3UFV>gy++s2nv; zVoMX3U0C~1+m6S_NA~eNXDps{Vx(Sw@gb9so#-z{k<0QK6~lOtv%%`IHNwEw1pceA zwU%>l;Mr;W0cpsGR^H*S?a5+aZSscp%n)!i9G6g*TuLL$lk$?0owA)}+dhu$kRBK<`E?WHGoG=P zJ_06hUtS^KeEGSPYr@Esk;wiEd`szS#bUn&EN#dU`OZz8Th$AXt*`qFCS-wupMEHh zMRPr(9r?G41Ds|C;_S}JC&1#Pbq#- zp4YeeKc7o7ZZ7{%Cvy}>5v@O6(zo1E?gi(|ne`e+%k6l{L-;`_2Mp=;2ceag3hF{H ziuOy9GcN5bza~!m9ae5-5EWCq`7mp{bXMyHgpqCIlKs0 zwv_&C{hndsU9U~Tf8LpuIRDuL4QX$dAwKd(d@)yl-w6Km`{mdCod0+B>tD0am)}(+ zTLk?sAHaRzpE;7>I`1V9-8oO$VVWoN@y%sEY%cCM8QJHqt;;eovym5C&#%0o*LS}I z8%<@&B{lP*708_Wnd&8-BIrnQ= zPkFZVbb)AO0DIjX1JB9yggotqD?KrE-cCZ)6AAp|zftbtzGxwLv9C^Rs zCgvi&xKJM@cipk=fX7QDJLrFLioQMpY+r(m|kG1TyX-qiniw~#M|I_hd_fqDJv#i=B#2M5V;r9@}&|${r2yuy{_@&3to9{Dr zA228IA>;ZHbER&7y*v)$(KtbKcfJ@mppP}oY6|JPNi0dIsT>&5{p*}F=0wLHhTZKIxc$^mN@enQ6rV&Ze5 z@!jyyLgtSb(Whp6y|bIs7>d#k@6A4e@Y;TCUh$jOt7zV)-S7Z04eHXK*NVBefwwm} z+f41WQJ?Y-I=Ap`ly)dj&LVqU+j~VzU&-D!Fw%Z2aQq0p(as!`i8Vk|Pl1Q_Dl7In z^JwBdV(1(xY|qu!JGOi^<=pjT;yKyzy}Hn*9sOQPPE_~eBs!>KzMOZW1<}DV=-_Ca z4*Ed{d41CXG@vmM9f$@*@3(#2GyQ|7tk_5U81n{bpq?>*mocw{zutxh)-!(VnA2O_ zHx1nCrGa(eWj$l}woL=!hpA^Tb<~`O1}Gcmn+V@V*ssjsw}yHirk=eX8mMP%8W@{* z8JjxB@F{3uUm&)PF$k}so!`+;HSO>|B@OU>oCc`JO9MB!G(dftQ!r~IekU48g9dyF zG|)oZE*-Q2!+P463@Nqxb>(0?Ubf`+Zq_J0|2f9F-q+upyZv+YJ+{F9V&wA{-;Q?{ zAa~}U*N?Mja)X!o66LX1R*xVK=#|yVlkFsr>r8fXdx>T8SUblsZeuMwzn(Lu#^Wq9Jp#IoA8on&o|pXvh$m@pZ5DZ6Z4xp;l&olqa9jmW&E|S zrww}Ak4)(5VvL%B51Nw8Qt(50<#L6mF=p_26~4)B_$Gze^cL;fI#%*BJs4D;CgtPpP6dD9 zr1d87XWG}f3+&S>yf300a!RuQh79~h56;xzo)Y%6-J(5#&S^CF`tSa3NT1My4C?6_ z)YzkY{_ht)dDbPI)?3(7qD#t@@V-W62U3s94s1MFg>2y2LB{al!~AC)wN5Nl!hX69 z>FoKJUc0x8v-QZ!$Rfs>t^F|QSNLY9Z@_N!8U6Y<_IOLsU-WGrbd>N6*c5YCo`w1y z1}~Z`{JFkeOkLBUu^BFo?7eJF90;5WN2?Dz`FlGvjD26MxEbq!I?)Z6E}7N67J0H3 zxv>_xvHUz=%~i-8J6@j~Y#sIKx_j3H9)7V8o2=Z`$&L@^{BA+sgc$c?U0_qy3+{v*<7C3d}1fM(Y_sl1bg_ikVxra479%9}uw=0A^ z&|FgI)mE$>{<8PkRenltutE97N&RlGp}*zG)2o4vzF(JN#jed^&X+Tw=ds`7Joa0h z;&Ws9I$I$tIG8AP!BxBUaM``jjNIQD#PAcyicqz6rUT=nNn8p zYszh5-x&Pe!JU=lFXV8}8RL;l9#iItK+UcbW$X6wJ2HZJY9;+*9CbEM$9ib;o;lq) zjAtivYn{lCTwfsO%V2IPhjoL%_X_a+8u)Y`ObK(Zn#XGbrk5R<+&zSM0F&Znw#?8P z>dfF+;F4{cAV=uiSJXG^>8o#v^<)Jvbn59`7l>T~d}Dy`Qs7Id7yPw@zYg$cpJS5; z4E=%+zE92~-xV`1!<=!6@9oIAB(_DaXCE*R7tGYt7tD_%Gwd_Itl&{{7qka$Cw;vH zyQt!vz32-dC_jZR&iUe*pg08LV|JMMhLvv6kvU zYz1^t?a+lgkM(ezRz(K`f}ql@?77XYW^NN2`Tc#O;ld#B4c2^f6dIikjWYjf z%DCUWPC3PrXF{{0@h!-l5V}yhM}CO*fZlG|`JN5nRIx*o7hY=5@7cachCQbcmwOq( zuZxF}w}+6it;pM)llSf24-D5WncqDEni~ntje_Rvy#Tb&wER8IANR*@7!W*gEJ21@<8J+^3 zKhC=H&|+X*1m5edKH=fO#zg%MJd31T=wq1vMd+uOe?s;2Z4t6)G3UFa`1TfkTgSHx z`F26lx4`YL=RQBhw_iJ5yLEiKkaia^zn$V+>BA%7&c%!HB)kY$tO>wI=okDi-2hcZbec8?I5wSaFJo;3WbM6o+`77;oz|TMpDnj>2ocLBzN%Qh8;7oOj zU&HiI`09l(lW%;%+kj7U#EqA~UzuoMehVIweJPoH!0&I?_(h))4s2hsMg5^|<*c@Y z8?EazbjLH%-9i2z68#7^WaX9k0ikDr=Q-fo2F<@jUEAr`PGEit{Gvx%;q6oEqaD?E z05}dpm%~-hOVqQSdUjF|^f*kom}|xQr&~3Lpt-~J<;apdyN~AguQ`hBD$WeVhUErg zdx@zonoXbPFX}$#8&q=(&u`_q;(G1C(g7@9-f`PhOfZvn4*{R*4lVgy_n|uMp$zPy z9CXKA=D(qR>80l5J<|_WF=oKM4?oAIH)8+rk=CEe=bdHyya{xc$#{sLBH&E=TH~He zc{A@erI)@=Y@;0SOt~qdCtvUo@0F9FSk&R?9j=;zm=;=aWC^UZ)+0%|x!)_77)#?U{>xKNsIx`+;;AnWr_swoh*2Zq<3l zA9tU9_F`;yKbToKr8J+np=c;LJm z{8L`?bvd%CD881`jw$~9m+0|v^nE<^do?&SvewC$rjKrZgZtg%$>oQF<00q@cu4u$ z%F)Zt=Zx8VMs}M#;39l9+TBckN;YR4c94_0vdG%A`o!ur!tK0y^SXP`_m%i9qxsh5 zRrh=>&6kRg&nj2I?=!qRnsJ*q@0P2wi+{agJA9&ZZl7R3U!7m8`k#jHS0W4c5$}AJ zcC)G9&99ixyDV}kv{%1$bf)qE>6>zc{pLO^=;MC@*Xd|OG%({dG_acbNjr%D+3__y zzv?>H#U$rfMQ?`Q=322ez#YUNUBF!Cf{dxb1vy*;xr({UxR&epj&}|)r>XOMZ#yry zM)=cOX~larml{IvbS{D>e7Rl2$k9{1?bt*e3(?!;EIh$=J?-SOMtckY7xc@ksiJH+ zNnUEceHcE9ZFBY7s(O9_&)eoAn-?IP7b4ddL0`xr=>uawqu0XlT?9Vd@ARqpQ}jt| ze3Y*kMbE20$~k0@+vl^n+&<)ClQ%nkD1#Pl-^gBf*sDu8BLlb(F&}02P7uDh?0nNq z;LgGiwf9zS)tnXj-Rvy|-`KKM-*aXy{MJ4eT#k_q)~j12XWcq}OdNWnk2BUhI8csx z%UEzU2414>c6hRbx?kRp&kXJq(@QAtX3pb?dv^3f64s1fQi%;0ky;;fMXmpX7eIu$Z|=E)eqXxI=?ph&`w)gXWj|V?#G|#LgpQqO55=FA!NYeo0k3R$jGt@N5_;+keq1a zd-jCEUP}+g=VYnl5NojyW9PR}zLoEekpFRzc+UaqJ4(IBsQ-Q1G4|5U!0f=TJ)x3e zZ*gER>u0@i4z#%aMeAv`Uvv%}i+%Zmbg_l>abo=3SCxYxOC=dASY(f#&0*4?Xl z{@HK(_WTFGW#6BZ-urG8aO``8GaD##&VO6x8;$>Gzhjy5qK^-T1fJcVmf1BCdB1o1 zpgQ~>_U0_;nuYCiXsmC7y}#5zCG89$Ply zFykVeDi`P=`s*mTP(F}y3CO*y4MCf%gB;=;*gO8le!UqQaK=gXt6q)MLB>gS9%1Z{ zLIduY)iLKiZ%bKB|8IMy3|}?73t5e>vgf>Y4)v->kFO6gK7UTVwhpuRvj4Nby9wP) zAAIEEEJP-XCN?o1f^XKii3ZNu<0rZYK;6i6%A{f3iM1E%4}TtYt)g9W5DHyUOTBa?e`t`Qtyc7!_)+65S`nRyK13@nExZAZ+;rm!Qb+PQ3x`?CBYj61K8RE84&TmI= z{&L7^^ky_L;Y!c`N=K`0efiKZ>C4Z=^<@a%xB{J6flllwvZik$XOcBI6ZAYR-M7k$ zEwg6-Gq&WO2=dj>zR$8(KhoK`(2$iL2wK@(1zbg30j_2Gz2luQc50EuUSZ(QI@ed@ zqn_e(XI@lf-Sf|!)y5erlO|MH*0+lXFWV4C4hPJfsE_BqVAXTPSyn-(tlJo7rL8F? zeyIG#5^KjhmDDYoTUoSI@x-GmS$|lFzahK7b+Nt2LKuE*UuwQb)=Hn=`|Lf?Tn4iL ziR`8gw(V!<s;s?*`+;fOuPlz)k*!zK~>I_y{?Y^iN(JQC{O!ZTmA#`nKT!r zXNuv7r!DYP2!4hkt8bY%^D60(ncynSSkvb#dB0~ndGgo~(|?NIxn*9_RVpvN@Hn)h zJvP(XUt%U}7KBSXZsYQIM(`KpJ83Q7dguQS`A=LPJms=BFuUtF&-U zpX~K{)SpfL8S`(Ye)ciLN0t7QEp6vw`hqV|pU%Kj|Nk%jGx#4=_3XE}|BchmgS3-7 zZ_HI{U;9XuYH!)@p6RdCUPa70sO;HKu;% zlc;~Pxz}D4X~9x+&wkQ84{#4XzNvlinOkCxa(HdYS5nBRYHNbxCz4GMe>O=rRR?%S zyat(M?0089dk*vTsn)Y=j;I6LZEvt*ZS~Z-&SD=2>-qi9SnPdh#k!t@w(G1Ixk!7w zdA;@Ytp%RjhaEo)9uuvW@l5~a%SNFSt+j2#-|K+xTfiN1<#}u-;P%8cc~30=vGxXR zhkEz{p3(jdUFc5PvC4^!AS-4=zl!0~u8BP?bLd;=BPm{D=+{|CExPR_N9Tt5W3ED0 z)mCP|x}k?S#T~@YtI$)I@qZMsEamy_4`b;sD{})&6z1#2KS-19+^1a{B=~r_{dVaI~ z_E!z8&=T-80-s{7Ey$+mLgeNm#t~U%a_7(ihwHG%*iW<|Ex&oKFTaMX`Jlg``HfG$ zzvd_~UY3^6ULIcGJ0IV>AAK#bW8fMu##Q@cntZ+IIPZJL|Ba-?nY_8$!tPxNZO!EtNJt3?I071((8y@pC*l zP!6;3b{BGfEwu5ojP7mfLk{cK4xsBEp$}K&7t|bG%$_An?&`h-*v0^xawS^OO?Et6 zd5`Y-@CCtdphFKV4#d_D#P$M~pOeeKojlyg!Jg?_KY9S0uO51Qn*FkBX|uvNuuJED zuA{9*?=koFxV2{-^InUl8uAFGqN$&9J?Doe$KN-+#641Z@E+AiPh*n z#d#EykjxXDJ>oZAvN!x`wJRwjIi@+Jco}Sz7G0ESi~4HqIRVaarHo>XY(jwTTgX^x zepC4%>A}YL&K&nqpY!_YvutP6pPf!T=Q8!DcRwQW)Esz<*v<2W>>nYz7koMN%R6sm z}70&QNZB7YeiQ) z!FW6Yjs6-qn#ehPfLLrP^7m)Zj@nQ@yyjc*od#=;yR{Np#b*d(3)u3hH_!D8q6_?j zc>Tyo!55)j(Qt@MeubIq8E52wM(y{o0U^hNPKwIj%6Dvu+=SW zVt;&YUHfYIgF_@or_e6?!-Yj~Xiu-GzIzWW$eOUz1(uW}EpA(Qq4QNuRU&-PT`P*!sR8XM@P zE1PrDwFmb;_FA&gdD=@sbH?HE%aI5qd--gH2cP|{+KH5t`b(BHRQygA$ z&rW~xp5fhF!J*YYz{&FufsJD;NYlju_VwaSW_oN3P9>qH*4R$J_s4*xJNU3FHh z<6&@6MOo-iIjv#Fs%-{iRwG>7dt7TTQ0{6G9TvJXCztW*3XL>=+`q49>7O!)&U$2(IF9#GwqXIZR^=|C{Rk>}4>|akV zlGYew|F%mmLudLf3@xdwk(0oswQ^9+{g}%cigLS_Txv~IS*0TbhnV1uF z8=40Gp}l0hY*l}!(grjXEvGIQKhw~E(4lPuYQ3cFIPDFU>EsC8a3{b>n=Mtq2pp2( zW(@%F%2(97y$jv-Zcd+VSWKMYkz(uO+VhBuYJAUzZp}OrGEnEoh=#xSnNwv)DjJT* z^~VKbH^%ANmM5dx<15vC`;+~NbAm(dZ6f?`M5ncIUYzn2CDSF_lm{l=t2y*~%51V_ zdjbu9O}GX}!gDJ)(Y$yBT9l0{xo+ZlBfVpk9=tZyHzPGp&^%>B$PwjtaJCp@Bs*Ji zMU9ijt1vhdS`kh)?&V_0Fb0TUMxyw?CpM^|6u?m_+!` zO(+Y@W5l;fdqyyZEsSLdo^tn$=noHRzY*m$Yd&0kN`_g_WD9+tF&K_a&sgG|VG4c} z1I9j^F8L|{)!WyGp~iP(YsPA1$~2#n(7f&O85~tgl+E+-AiH6^H0#uiF-Ehv-sxdX=r4q`UNutIwq4 zq|2n&idhdLTgvnWowY%^jTN@N5JoPT^=gc%Uu&8e-*6V+P8HJ_78@ z+lv76*MT|2xCrhRhxgO8m*UOZAFH@Kv=|=r1NIur_SYlV+tI6_%q_1v?&gYnd+NzXdZspKZE|>1Rlm>>o9JmwLY`ov9TK}(S28A55lX8oderrile7`_fvGD zXlCZs))B|Hd(*7_sR+dWW1-C(M)%)juj6s!$C7!9AK%JaAotv6$#3?Lo340;^s*Tv z`WuGMBu68RRmdGD#z;BwQO0OIV`S)-Z^D$<+>B&^D_cj{ZDI$q31W2z;p=@;dUm z!d2j+CJ-yJn4`jf&4BMSk<(MarRH)TDh7Y>pm?dZ6yCp@x+_inEw%tNeuO$U%Z9>0Nw|fGp;8V@Y=cb8JKRp=hp5g@3ZQjx^G9FY-;?t zJvviDXT&Jyv5UUWXMNcLVBSc({fITygEPq>?J?g0J!o%t`Q&ZTv+LI!fR^QtH)q=Z zxMYreBGD_h$@D0Akj&9~*=wxynl{?p2V86D=S<6b;TmwKerj&*Dc*Nf%ihoGD(|l~ z%voKV$-&L?rL%8ZR`VKceshKtuxih6#i+`Ozqg_T+NU8CD!G8O)qzvz2<@;q)9WV2 z966~Nf_N_iyzn%2_WMc?o=N)PDe(a|v)ofJbxH70A1t?6Do9ACi67 z>b^2y^E-VuyaI2#{H~m4wJEtA0{`R}#KN>|WHs$(Iqe#Jjkoc2J^XEKdD=5$hg=aX zyBWK7;$FKsJ5#b)W%OL}yPt{nfJysc7lPL?cx_*V{lonx?$^>U<$%sWN88UWb4IkD z^;=TZ{S}_4l!Z43VvpYG?4R%W4vHTZD;E&ELh|Jz?!Ulwsd;AS>0S}P&kBBydwnCn zvcx>M=idv=bHz%WM9FX@;mH3=5vEb&h72PL36KjPyE6C=3aAlLxdycn-`?Hma zvYDSGw12JhyK z+z|AvSjt9?9rUbsk-5mk1;|9`rxiMDTMXW5s{@)e^AONt7dRLHC_heh;Qu_PdAKg> zkWC?eXFO{Q)BAS?q50WMW_GV2uP6j;=;SvYoov?H9=(IMsY~Cgj`w=$HKAODcH1ax z^x)1vFBbEg{%1E{+JDI6&x}`frddxpf3en6W+$wt46#pLlzr;j#mA?e2hj7vd+zLBNWZru#~Qw4$NN>TopL=+xkHruol{P7(Z7hi4Prb!kNA#mLB9UL z%4+Uk(7jE%;kCQb9apoT!&A^o1M`dzqc>>3m3`L)&w(kvScv@}4o>yO!tB8oVUIPz zxWCj#zOyfO_(a*>!|$@r27B;sbiv*1Eqgihe^;cDD<_*TZIH3~Ud9){%Wn<7iTFQu z+aunX&ypZ^FZ*Xj3duh%DFYVhWDM&-$FdHz0XiAaT9B(*4_?X|x^mXgO<`T$RMy!% z%pC8#146_LMR zI7DC7&zY>xGjk5CwU!N+$M<@!_iFo$IFr2q&XVypjJJUWeA7We&Gp0uv)1xJ2 zv13yiW4=qM6FiCL?cDtV%y$%!>y^iRWxnZ)`hO7oY1|L-?Y@jDT~A~CyqPhD{ZtFO zs{es}(sfqs$lF#-^!Qx*l$v9Et=M?&xt`?wXG03GAJ8D6}Cd2P*c|AI4xi}^mpUR`q~@6To&Qqk@@ zn|6=Thog(3r@iDN&IrUl=nBL>{9PdSQJr8=`+?ZUz*pfP+;#0V>|FW1{)@V*ziLf? zCu2&@!nE_755s3~9=m_4icsLTHq%2$v>(9C{eeqZd!ZY%cj zPV6w`Xn*kaTfRHA-HILa_ir9_a^0G})}WeWJ>(vzPicOP{M`3nvSMGLjQVQlVV(ya zf0nV)`Q(Ebo573?=al=;39>H7)_1@hraymVPeZNcl1;by2J~`0`UaY~B!~O}AGQ)S z@coQ_oHuBn1)qkE`t>x<*e15xgzoOyM&1Mb+|`g#yPy9B(Coog#GSNH%2Y2;=LhFE zB0r!*wWl^zw`^+Zl>Nx~5HN|RpT>XfiW1}Id*xJYGV>{%*Q1-+rxMs{mAB%-)6v%mh$$4rr_#GJhiSYYr z`DBs9Cri}^_t1YmYkNyZS<~U|=0&1Y+WEjgsQHHuPs7j6f8hB?(5iIfhtTgnCnxzo z$w~gzz4vr4L5J=`H?3x#zK8mv_>hNhCI|Li_+c7yq8&bX+lmcxz%$Xd~2h`xmB zo8Z%YUa6zIN29xQopU1OONtgcIJ-H#zL$SSgYPbA{Pv7I_@|%IuMy@7-=nU2mw%qK zVh7-x&T5-~OkPbjd86W=DPI2R7yR*N_-8#dM0=|DKs9_M-kAa|0jJ>o8NAcEk2*`? zAHH91#x^H7LSw7GINx{fgZBCEKxqozx!L6%o!cbeGdK9#2)uI`8mokk7tlxa!v3dh z-cg=H+ZOimL0-AfLx*Xr5?B`ySIf4JUQfJMb5Gd&gJm;pC%?0SeP5zmpjq&$cccGg z^B8(=x?nXt1-!=pqR+{^rTCkCzH(???Sz5b_;UEQYQHa@jH280op`bZz1K3*iv2rr zBk`nxnR+yy-)F2;ZxmclN-u9#UJH32&C-RxKJmbscG_Uy@0!*u&IaLqHni0NKk8hw z)!x5DR|Q@;rOK7$P^c_UiekH4f`KgA3t!%HKV z*z2oZ+*RUBxOjW_k2c;e1;++{@GJON%a3K8`osh9yLgb@9|aHhIe6HCT!=7!Va8ZE z?O+})O1-C?!At#Ta|Z7_s<$K%v#=|pjIHR<<|)=8I6P%?bcxky9fHeK^Y9@glj5>n zF_WRT4Z0_sXb&wX&&jqS$=w;DeONB8{rY6(kfjAz@NP+p_kYiO<(FyixVw4p;{D+M zo&>y4V{GR0-Yq-F+}pfS$^C3DUQX%V<$XqWj8Ah8-hk6&5TP=AlC8{w6fi%m38#H{TZG^kL`7Q(*>;`1E+JLt%Z^a z+J_)JD89SxwI28`C#ZGHtut)Bwwbs}^cf2pv~}B5hkl-hrlemDz0^}5v@BiS7vJ5= zn5sR^!5O}T{sc##^p=9}Limq{?*u#bh;H8y-%;-=e7D=-JK8u~zWWj|8oW@qaHUw` zYw!0=F9IK(@K~vMY)8-Z5%Aa)hsP|&LNxQi;7`^c;7X>co!5wFatzJ1@ZPN_|AWMO zG&U_7?j)uN$` zg2!@!F-!C!T4CG)#N9gNIkzdA3yZu zfD7aEdw~lS&o8dMW%Kd%%UQ?cBWI>bXR@yTOs$XkIK%Iup|wl3j_T?(`FL;6#!p*; zpQdLsOVeVSH=E7<#Lz(209nCJb%38v@UkDA5pwv&4)Xu<9td=g-T9$VJ5S}T7MiGPmb{z;-;*ppv2b5`(t06dDrSD}ZO zu})zo>j~U`+%kB@<~bMGaDPm>v%p`Mi>FW`{yuh}d+_%$`1`mI{F!&)?_=;snI!x% zwte8ww4a1O({>X6;?F$zvta~(D^A5X*7=iYp(4N)LS2K}|^>WYeBtNBv zce+6dX)g@-dDhy(?lNEYm6I>%Y244d>wVe5 zcD{Ly`_aBEyBxfnGirO|EXLycOHVf5@cFXFZ5O|?;iI(d;M2uBH~fhEKcwXc*K+?| z?q5jj$DR~BH%#aLv9!G4wcHP${_l;f`E4u)FNdIkY}##gXtx4>R(>M#>dHyLn9e)F zyc`~xG`OcReem|iVql;T&rceBvT^bSWjy=$#>@-s`b1NrJy&ML<-CKV4(u@(FHNjp ztOifh;fd8Fc5ZlV*ee^}=i4}rc>en$!3~aBOEnli);k+VO`G*@7ti(n1MWMxe<3Y1 zIC%Q<&4SU!(aW1}_BzB}(8x9CHf;{_ehcrf_oZ+74fk(wzrfe;#h+64 zl1ptFwhTJC=G>PzPbsQuOjUlZFYm=ee0!L0f9uPCvEY7x-9Xj_6{HP#ad;Z_T)txS z=K{98ILO$__i@Ko3gHy^8Q&rY{t?W#&b=?AZr**ruG?j0nLdngWwH7&s%i6xO9PE} z+?QK-`+cw1^_ETFvH)1t(hq&Nz?c2vO72HEeVU1ESO2FJHEkX}D$qEZ{@=-(;p=_< zUtD-!R^6D(%ZzTj>%Qzd>A>&Y_iEi^^yLm<8STs8ayRf?kIwrp=X#GGwH#e}&Wnrg z+fCU)FOIo<`R0|BmCS8Ze?7FU{<`@@*Adt9?g#V;^!@kvDgp4FLBD;>IqN)f&5tQw z)WSXuIY&9ul6@ZB*puczX2~YGV07)v&z`Vt0B7%v}0l3x$xzfv((Rv+e6W*RxC2bGC5w#PY9Reb7IpJU7+<26Ij!# z`8ef=X9g>Oa(w;9fy{xHGH-M)eJEEBQ|TXkgZa%KM-$oasQCSfHO1TyJ5jz)b4iu> z7Mj@U6!t)mJn0ZF{Q$EK|`7YQ- zZNSz(l0C%wt!nRCS!~ zvvkup=!m{YpoJ*7Sw>rl^``~5D36R-jPf8ib6;t^_=DFUaOd17K@+!F_IfJK!AycS`F&+NISz_1D4+5b@|SK&DtAkYax1CFYqzHh z&xVieTpIO#8FhQhSZ3cZ6K{C4I54pGOA}M)J*uybDf;@V(@)7F{ki-;AN%IyfWkPx z=i(>-kPBJ-*cL7WLwT=%@hEj4^~j6YOz!RZ@$X%_9}L~kl7I96uC85?z3i=W_K@&H zZ_E2bKk^M6e$92ut^Q)XTo@hIoOFg$&Z1ly>tl;==~o-cyB}G2-?N7)*OW^+ z$y%5Hf9jN*lpinGO1W@0<%q?(%y_x9c)6P>=b@KJ zL@)n`avpklq zm;IDI9lbmnF!CjVhQ6QT+3FO}s#84s9?x8QIh=9!^l}$?hF-Q7pSY~{@j*7dR4^XN z@@0-&?yk$@<-SI_WP16gUG9*@#mkjZE}34gb=$qb z7cV!Sa>?}aWy&Sc%W9imip$VZwm$lc!XFbcj)DI-8=L$pL;_u zRcEG`Z&CJi^pcrk%zY`IohUt(u0Bff>^+{j^it`emmU7z*rdguYY%mrcyO=(6JmZ- zJ`Z+-(F1>a9D5#{Sh{-3Ys^(*dxX)m5uTOvyQjoAp$Ge>rzfLPSb7n-aAPb@9(%46|K#L=-t{i>mmD%P`vy_J#_L_- zlKE2AFtzv0r`M9~}e->@Wn4@-gX<@g^FXeAk!6H}DkL>x}I&^Uc}xA5Z9 zif!w=eNjJt=;_B>9(yi+p17fz-t)xI#s^~k#0zd8bLgY^$o-w6J~K9=WgEXvE++AZ zi1-aVzK65%dYBjL>B(wLGh^uwh8ldeufIuOH1=LT6n`@Q;;DZS4KQEswzYqgjo-)+ z)@SM+b<6*B>0_AagLi@_g6(}hW!!Jy)wjT?Zzt(nVDo-ENZ&GcDwEI;hYvO1sW~v= z_)8ufi&iwZm5N?+*u(1NfOF&imewCc;ZMmA$q~tuJIJG-O)M?L^{b(8t^bHZvn|Yp zZFK3DJwl8e9Eoh(__ww4U$hP+O4%=QUYg~7&bLv%y;A4#QAYf76Z{fVOorzn-cJ?( zxNYIjwD3%8-Lw{7F^3`emG-{siW%9@?&KST8wVDb?p)loFjm6P`~E~;a_9bD^wMK> zKl}XWrOK!6pO8=6c9?wCcYU#zc5+#}$g_N#+|_;Lv_^e#TA0gthTiR^jY|D~yZ3hm zza!DISQ)%H%Ok7YSb$gdg|=8R--Xr-h4?}(?}CSRo!ODmwUJzj2N{=D=!H$xvzh<< zm~YWKDA8yUvNZgZ73(-|#rK22KSTHQ?g#OUdiEN43j8|tb{r>`1U|*f(k-Da_MZF0 zoHGjC?;HC3j=hh|8AHBPjOse}9MC>%JBSS^hpl}t@v2o;Y?#UMQ9gTi@Gt44?NwJ5CngvtyOxm#!$1Uz!#CX1`C?KY?6&fLNJu6n+~Vbt#`DqpJvc zG6Ecp1UH+(QKP|8wu2+q0f3{91}oP25jke$H~E-%aQi462#@pVtLlt2IPg(-=SMc4 zIy`tPknU0r6neh5j_lyqPy0RiDz)*Yb>-LZSPi~%%voz~)r?&wIQyM_*0H_ETTbv= z7hk|+@C7_=)xh&R=4mV0y9u0)NWvL;Dkio#%)!|J2WRXDWpLJdm^0`cd}V^KtkdDE z9(*0^8($Z={jGQ4qwdaQr@QX5a<7Ft zAAr7Y_3-iol;?M%-EonJkKeWVcqTNO%*R?+qIKmu3v`(HxQ@OZw)xnhQ3qc(jc)&E z_!xN-t#fcr-5rN*oO^j$xq60|k@GIjx1RP}zrAmy;b(u>e21Sy@N?TzhJ8b@#p1n#oG*zqa$7XNrqLNu@3Nvp0nxJ z-*ubA=bGniTg=$b0FOHp>GtnjJVLi|JOWqSV&K{d?aoNx^*AoY>%!#-2bb;Gx0+M= zjKO7=!KKUhg~;e-;86Nq^8?ze=34%5C+A3dMDkTKvV9#ewqpx1_mPVJ3cdYbXXCJ= z-PYIIx2Dz6C6bX5=@RUVUi@VR2b}hMe^Besg}WZ+cINL`wP7DRMKq}OMp|pvw%w&c z?X8g=>_NU6o#MsaBH-B$?xrE%;Q0)P=Wiw637>u;)4^MY!JF2832zy}SIC1A{^UpW z#s59g{0TifeX-*u{cEeLtj16@AD=5NxaZf{HP2ypyj>Qz12^u%x2vT5bChq$x64;j z9vLE9e?{LsllaX#eG~0B0b7+eoNuE2YQykVqH{tG+xX%TEAZDk#kw#Wp0w3(|hfu zBY)0)pXT^;^5a51$c`zN&J_DaljzKYpGRH+t{%p^5;ztK_B;c-AG%DZZPBXPKLuPF z8-;d;k`EZ7Y?yQ6B1<_Zj_*5wtAjd1mB5e8mfXGr_k@;B8*R{GPm}dDl>?-R42IqI=|b2KO$dpP?>o?(%>;?LQlEc zvFiv$b85rrYVq<^)iJ=SgRz+6tz&>)$7jv>QO7vJk>iXXb?`nyJ1>JLonH*@je9e^6>f?9pSG^Z6!Q7;w~Dz!^x4oKxQWuI5$+t1qZ4I| zdH3GbSpDL^!4+*1vx-F={&UZQ4LLeDV)&0edU8HttgHm={hCFe=J3DXv5U1=q_K-1MrK44?BWES(DhH~Q|eQ_ zZBb;#!`PIJw{)rI=alCf-zN<}$(3b)?DM;iRV9UU*bSnDaZk3j27 z;Kb}BWbeQ6TjaIMn>FaDKb|>VCHX`qg*~UoFVoD%KD# z!#{a|ad^-fhq?UU?u>)xD0Q}AxCZ&X&mM;+aN*)ncow`5fls&2_I`ATrEd9zCJU2X7f^R?(|?@n+Io@}{P7Mmg*JF+9f7?ktd;FD)F z!JFbBw;H);=fH}WRQDg>Wh^K&3woHHL=Q6^m}VP#5KLBZpn-|_MZ9f)a4WFH$J2TK zk>J?^d{Oucxi?1e>Nj;rjt+I->o@YN-uoVzSm*tXY#l)PcpFYVe^MQyJKBu!%xh1l z^4(j9GDd~yMSOU_1#e{WZ64naV2lP~a|~gOhcZTmwCBmuRebDdx!?Hn*KtP6`{fx4 z{=9T;7(XjgLEYH1=FIsz{&Vhps39F*veza5NqvG&qV&&=={!vzyl2pdN+@3eOwid| zDvyrymfu8qVm`>4p|#&4$0dxv7MV)?gR;qb)eqfNCh64>cA{iCF*owzd*RsmGH^8b zC-f{8+yj8yU+dQWue=LkBZX%OF8MCL;1=35^fe8<@!aLtxzN}==xsUl_7MMjlKFKk zwsdLV{Q8qR_|>UXXPk7QZpkh7w@VxOqN_zSAkyPJMw!Ng6UvrU{IwM{D+A*HK z!0+v2Tzfg2HgbY1u+ubO?zZ1PhW5ux2UxMW4sW=*HuF5ZVe@Nt@Otu_#3QS~J37_) z#nlcjB**N1j@Sc~zG!X7$#>9Y;O=a6**N7+VM`nS0Y5X$nDDK}ADucyw1N(BY2)pG zf;P-}`GNtxyP9z=VSKCd8+A5p^d@8iu-z*CX5>Qeo}>02ZQ2J68#XKO?C*gyBpJ8R zibdRS>0=A^wLn8FWVe(+FZ4ZT+5#@_BRp#aPQ~O(Xa`z+L3uc`=}H{hv>cl*1WpQF z8-qHWDY0*)S3UHtyEuzcKP ze=iusbKm|8>uYoB^Y*O~mPQj{Q=N72kWu>dR^a zJnFe(+ICz$!^Crv^^bJUoRh4}%A!2_#ML?TS$AXfi*r7~eAX!?pHI+=E@@d0&#tp# z5%@Ta{1To2h!{3>KAzb4BPM1J44Mmy0@FgyQR}IM-{IGup8k!YO7Uml*$e51=Fxhh zY4|XD*RQdslKW}8&u#39GMB;F_4H&nwyXzM>TF#{z3?sZ>Dso+wA%J)TCL=8W|7UK zW=@MXqmqP~2X*o{BSv#@a9{C$O~GI{G@fq@Bq2jzXQ=)LZWW)__L~ z%O+HRQhH^SZ?p%Nd$x~}5#UWcG4Nx%T!dJD@)#=qFB?K*dF+!@$I`VQ)_UgFyz{w@ zN%^*6@Sr)1C}XL3264K_CNfu&eu0Bm`sB`mEQ{mQo>vTk7awvvjs1p|yVXLUv?tje z@i`2qTo&|_NBsk6XOIp1D=A=q+XJ&ZA2=WT+dID_TSW7iJw54M8C;o-bziiORFeCZ z4h^o{@#WeU*;nXh^PC(Xo^M@Qlvb;p>nQy-&&lO5l+OtvpH_w@~H{~r~Z3{FW zh1R1{`67kEEa;?VDEo;9$k81Xh-qD_J-+PUSio9a;$UI*kMWs>d(*;#2#tVTH67X83KOciG(>H+OlH<&fb=uxgd@EcOBeqOM$N(Grqm+xBQIba4zK& zD@NhwZ|WS6af^v;>(4oXW48$^Y4WcL`+-Y&%b#2c6~_!;l9SFTGut zln<$Sg=*$nuR*?VCzpALU^4x+oLIC&GvGcf+#?5C7;}AhJ~%D&2VzCw@niTz_Yvft zWVLJ=0ii)*+3!-Kov(I?qszg_$8r%wsCXLA*B6>$Z)mg)D7cRI*# z&GKb6x1F0A-(!C_Ycblj2IBoG<{auO&Y+%24!rW7qEo>?W8lrDuw|Fd9dY+6R=nL8 zoD{~!L2kIYO!~&`uMS@K^;^}IFFTfTss!fQTyB2T>pSqrG=|6{t?{s9Ny>dn3x2d- z>z}cAMX&tUH^Z zeS#C|+z`Ar0-Yh5@vqR%Cf4yt_q9Nq%XuDx#|-TB?|I%c2V;2cUi7JAL$)roeS67q z!-srl=#g&=Pe+f|z}l;m>5*qwo`D`EgEsYn1JUBk4jsDmH=i{*$@a(>k>S!c@<)n* zJ0#r&KBO~9IQn3o`j^V99b|vHfpHkGZxKWA(0bj2xZy zpWM4T>kaNtkzvrukR&=;>XA_{eRP_$&U@E?OoA@1fwq~OGw0AK?l2izn1gSd>BJor zib_ z%>%A%2QJMSXQy@lvPf%5*aM)Fv7F`X0kB+WH|)6BtkpMqFf^2P0OH+5Se`%@KS6sd z*>7`Y`lR5>Y_0;XBCY_}GX1t?aXNdFt~@ux$YPz-lmU!Spre&1bOW|^3w8a}oSkyZ zY0pk+N3LU&HNSFhdb}>xkxw0NUoNLFO-^4nX&uYzQD^Ln;cLexl|9;kuBb#;G`wG4 zQ^|c4zPbguE!p}2zM|FwKdyCm$VJ;`u;uszKVn`6*;2vUzE0$6i~oDiVhc`?@3x%s z;uH3?F>CZ#4`}R9$&=Qs^yVjMk351$iJjI+#>-|8p+`2NH?-ze^8?lW9x(e?wZeBl zW&f&HcyGCtQ4=bcEcFL}sIu_c2Iy!KbR=0Tds_FBDS}P2C{E=>W$6jl8 zlw7n^_(gsYJahfWr|Oq4z&9?xJY?*-UVmj0G^zPJjlXEp%_Z}$D{FxVq%XYXG#|w8 zg!N}XrJguFI{r&Be$6@fr={S&g>#;lS%J4~{h8?BczxCLQuN_X5AVxHar=`4jU}&V zeG}f6pKYIIVA}`2k+L20YJW-ope^rH>uKRI7CRM(Ewt}lzv{!Ebl0!8dhq+_!ZU*X zx6TC5fBXgTTxampYd>hc?<3lq2)?qb`|_9JJf}1xEqs6^5YGiLt`_O;OTJTAogL_M|` zRr}%bGt=9IB-qS6nG0WuJ&yk)^bb69&VnD$`3vCrRP+yA_qcGK1^plFP9ZP;H|SsE z>B4yi`hTSl82>8t4_vnpd+k%sL;o9-;Q3#n|7B^lSDpp^FG+&!uSWmC^W<5;^R>SK zo=-*p!1XUKTxUW5m!*R5e}n!to@Yt_>3zWXSD}C4`l+jz`jG#jj}m3Z{{sELS!{i| z_8*z+IFr5ct0dU|O7w5wX*&yee)t!_^C{@xz}4--br$r0M=JRK`t)y)r^}~jkpGkV zfbp+D{|2rWmoNLE|Dq&#J}v!^PGSFFj=eaPeF;+7jBggho1@PXXCHl-$fJf27}s!; zEwssFGYX$x|D-d8y?7V)qTut`j0UdtXTaIsBzW3gI2@aCmd9okKHXTZ`QL~Am6DP9I0MI_Z>0LaW zK9{ravgtz(ec8_Xt2AOrIZHUBD7|~z{-RwQ_F2B8*I!Y;;rdwMQO^1a<}A6mn{&2m zD_DoXep}N!hXkIzgfoY8{mh*Ve|f1l6d!5 zAN0z-Zzt0?`1i(JG)GEamzh^VRy0?i>#rFO{FPRE^DV^aRuVs}e1DQ1uOluuTk|Z$ z>(oBucf?}e|0lJ?=a8$6+nyHUX{>>Q9s{v9;s+WB^;Kh#J+I^{jYB(mdm4lN%w=z8 z41`Da4H~SuqbTRT}L;LZo$#8e-E^bp^DQ?crQd6ZbS-`-c2`0kP7Bg1Qb@Eoz~H;a>F)y|kC#L}H-ufvyK zdUWH0ZXD+`9(=j^RFc!rJ9O&m5LbWL`w1lCPq-7^&H#S_@aN*q559&ouA(jB{T7|Y z4UUu_-xto5tE=#$g}zT#8(KoO%^!B?rT-DQG};DBddB zg7O&b;&AS#z#(hkYUcrGBiCpjc@e&x=FCsXn_|AY-ZN%RjM)I@uhrL7cvozDfpXRO z|BW+@!7twLl@H!AXz+}Ii~nSOBR!$BA*3^^!H33LbF#`)O6PwD&oaT)KJsUp!CgB0 z%r1Ay#a7j1#`A&M_ z|0u@>*ii#RSKv1mM(h4JOGfBiCSg=1mKYMC>LI^iS zrPlT+6-`0{DDlF8Efr47&4>wJC~B$o{CfdzLpa-Wtz%C3_Texs{ zx+00sr4I~OF6~eQ^16Gxjt=yU*W~|?8?)<^e%&)}@%4dT`1yY_{uV2t0vPK4r{mA* zWBe6gVEm7ggEKzAjO5`6a-zF(W6_h$AM(lOmGqDgUdiHjzsII5ho`jvhh1XqO6|pJ zZ}0}|tB>`KylsvypwWacSGOhkb2+^b|2kF`bKY$1hzq1sH5wn7AbB6r+oZww15VVN4l} zBdj<;V4OvtIg>Qyc3OeQj;v%F{>j0Z9xA0= zrgG-nI9ciD#h1;R!2Cl4*ayr%-**$UpgfDuu$CuoW2Kv$UuziY8B>;L>6+Im8;?Kj zPiqaPF-a%M-YvqusKvgZ{q4FdDUbOP&P7-2wWo~^Q2eXplXR8VInos)Pg(2ASu12N zPFz=fp4Gkp`z;gM;kS;}7t&4+@Ms{V&3E?g1DH=MW=vtHtP#7sM8@=3*GxH8bO z*KE0JRo`T2BC&cZpRRn@ygb`Mos?kg-#oHJHkyy|W-@+gwJzsEUxn_uM%LEF$JY#J zy`X(B$shlfpL{nws?1=XI`0Jy8v4-v6XLOj(24PD zP+o0?X*>K;tjGtlIfT8AjG_rsU2ExQ!^elGv5=(;zpq<1Q<)D`-i^T3D`vS(Gkn;(CRru21A=mW^eWr8o(_O4_pMT(r6L<6b3%-68kNF1FJEt;0StQZaClwww0do#)$dhAVyE^K@A(BserWgDm~UUhsCD|@py zf2&vr*_%!u8skW4M*bL$vxt1~lHFxH%hpPEG-Dsa+xzu<8SB0{W?P+_yn75nKz)PEb7Z{T8|x4L|yf16k z>yBK1_07zYZSN&jf6F}UeNy#QGmmyWnn$tYu}W`^(+6GWRd>d{;!C;k41e;Uwiw1+|$2e z_Y1)p@h~Rt%(mftZDq`b*4yG~-5Vyq&!fa-y~F=h{0CR~`qhnwALLW2f#0;YPGlXy zy6}T0%W9+U2cp$R?%`@8PdIl^RhMFq3g^ENtn}-(#bwu>gqC{ao5^u-zv*2wF?jqE!f?I~BUWloJ;Mdo!P^Ex}vt7@c7qn@{L?n1WDR-3n6nfi#< zyZk0w*4z^oCr2-J_$5ji-IGSnJo;vCUq^mzL3V;)(f2bu%hxs`)3kQdIruR0dWo|( zR1EAu@vBpB1m|SzIZFx=yJg2!bN8HdiR8_;I9y3rojle}m%s7QhD#sqd8y_+@S~iu zIG)$9$9dogc^|?veB`%J>Y;}Y(~rT|X!1i$A}0g+9E!>H(MY*QzISqOt-%>NA0&@l zoTaj!ZR9ukYfP+f9M1MVhKzv*qLhhJH%wdM8JrcrCC9Yan4M$rR)g$#2D`6mQcf4% zP`*9zwoCl$sVf>f4!?W#>2F*(G|$|(d$P=dgK~|0SH6h`?%$Q{Q2kB7qBy()^eT7t z-P(XHn`7oGvHBaH{uKMxI6*m$I0GU-741k~b?e%M>YobM@#F}gtZTulodM%JPzdDAZ&+>gaK`BjQeVQBKBRD1FJ<};e2>y8u*?8J=|j7H+2r> z4|11j6o2gibdcjOcl4C*-6E%f@H&Zl)c-s^HApcy(o>#(G*;=VtN9#7f7Oh+$`_1n zO~d9u&le&~^Z8veaf)mo?tb3I91q~TY!ul;ckv(QF5M{iR89i-M;ZSn+BnLXHqzdU zJkOxa&D81i*>ctO$4IUcR~_2DsOUt>Pw<~ui50|D*S*0SIEp+hcI2ub9-z(#<;YdZ zSIwE$TavA;y{fUDk*fo$^Rd~5OIzRBxd|J%>#kC;8~!uvkCmC$xuM1QbtBYiVBEjp zcP|~dK1`J47Xhi#wwz-VK`Jp&FD*LpYlbPl%O9`M)7{UI&f zCDM=Qd|%4e!_rN@e!s1FC}rIOY_%_e>w6yByYB9X2CUn{?{9H`Ny_Oxs}+|lKV^6R zGTZ;L_ksB*UR=C)-3yBctQ*MlQSK;tm-fajnt$R4552c;;X?!0>D@UA=lu4lHDK#> z?l~FA-BH`${> z&RR!_x8?qZ`+zU{%xd-|^ZweYpkxt$~*} zpQ$tNVEkP=6aCiNd4847I7-)bzT~V$Uhb(g6_4D=Z$|zjN4w>rz4o}d!nQHZ{f5+4 zzQ=G4bhZULLr3b&vh;~-J2q~$*C5iPl9`g1norqmImi&z3Fjr5y|ftig=C&`JVy1N zcK3C~b9L)b*l2O)sJ(e{jdZ3VT<)chWCpdPYH&eN=WRXqXxQo_NT=<-%E?# zew%gS$)ZUWM&DAt+)4~J^1kyx8gi?ozVZDu?3?T!ZTua0%v=?x#yV?hhIS#Tx6VTRW*o-H+Y6CsSgbJJMq7Zt>KmY%}jVU#D&jbvIAwQ8(U(_$Zf z+f$da&AjV;iMlUSw`_cmy8GR_pCq%kO^Xe?*;ALY&AjW}Ox-PMMmHZX8rP%#F1P+d z>aR|VO`7hhPuXVPb*`cQI;Vc#*dFzN<<@UYighjrXE%B3Q?{9RofXu7(y5;{x<~zu zZvA=Ge=sff;8ah2$~N<^vzYp2PJMq?kNP3Eel#)Gxe&Zh@zkemGw(X@qyGI){pe*q z>X*9p3#ea|7JK~$PkqWZ^R9Cq^%pqxYcK9m|6aHLhyGaSZOq;Ep8Aw+=3VFQ)Gu)A zZ@!>M{X)0?ZPcHZ7CV{isZZHv-gVBP{w+@ZvU7XX|F&EIKmzt8^Pl6XPuXVPb>>k& z->F}8PLKLIZv7e5AJ6<}d+JlRnRlHNs6WZ6pVzNP{V%)q>#zeyGymW4)TeAS?>fg) ze;l+czWrU#{;zcF59t>p_ef~>O#1vV&3?9cKIlAe7!YcXI?q9#Tb$=`|4?(A^IXF7 z$IkO`oHws`Jzo;NU7zcYp)&neDxI4#ti?mU<9JkWU_&a=k+ z;f;(n&E$)1LFc@M+$h4`*wy8!QHI1K2 zJ2%E!CIn+|Q8xp7srG92hOpl*v~A**cD#e`H}zG&_b57mvJKR6?Y9p(^W2-CVT0mF z&eEsOa*pA@6J4CLYx&x@7=I@J8Q5IX7Y#;Vq*ni$vAg38v*wcixLbA;HiFi7^0PEb z*6utfqg*JerDDWu;;Tz}|?emvlyJdVGza)N!2)|{iKWsCd&(t|%jo01J z=_^h|v}53+egn90<3u)(wBtn1?SVJ$M|N>W+nR`x){9#EHD=vt{4`~kFdo`6HrmDVZ7U|m_C?(wcr$L~yr^gGH0;Li zwNrYUSvv)V$8@_~BW*P@CXLbU&%nr8KJS`vybEJ3cFaIvywn3DWy8Gd9Fi7m7>d4i z=5~qZ)>#+c1#Fv~b>VLu*vxuxsNmu(CHJN`P~Ta*IB+FY4;D;A7^`C7`4w8nLnBG#uAqItFfH_!EZ(VYQdoOo_yd9%xyDsRlvGtGkziAUi~UwNwT0H_%S*F`Jp|}RQb)2 zN%DvHV@=7LtoJy7 z{!WXPwnCp<;{4q!u~Dyt=iBJ_rbRRHbEoz2b5C1j@3De6;~&@l=w+1OpV{pjxR~!Y z?H-M)!ebYfrL7b@c#q; zzr%l!|1taz;{OB!FwFm3{BPs`=lqxOKcD}b`Jc%DaQ?ge6DGc^dp$a7lC^Di-3>8) z7QS~wEc-&_A8S_W8RfvOWN&azrnRp!JT$bFd&#tCv}7lHR=g|XT>|ksg71uWE@9t_ zb?h1K1TPFN<*qZ+PS|OOcgKhe=(U}Rj0ZY8qaBNOCc5MC+2i5eU;AnY+Ec8q+L;Ml z8-QyjFj&Jc43&J{9gouv?|x4^#!paYuZ77iv;9fMCZ!i|f82Zqw^x{0rQ+?6Iylf; zw4v?Pno8)#H=py_;4+7Gp6|oe^&5x(reovQ1099;$2t@@71^-1zVy9kJ90+7*^zV0 zkq+(gMmDXh_npJLu{%35$98mRKQeQ4Mg6YG|LyRt`_GO@WkZLLeY?!LrS-lOH64-P zztK_HOkM7L%iOf2-k1JDN95+WJ4*l5-l4mCBF97Znd_hL*tqM>j?%)D9lBSp^!TIo zIR|%iZ1lg~vGKoJJ9O_HI`6z}@T{@syz*#$>6M#1e6igf8<*1#W8Jluu}=C`$F8dm zbYw36$c!~-iYy9U47k@J^59lket z2VQf&vb=uR52`yhzERt;tL`&1)|~U#)Nfo_*-@GeK4vzVvF1Frw0`5nZ5^erzu6J_ z6L2!tD;TRU^XdB1`~NR<^_Py!oTFxpg)L9j=RCcwW8=O*c0}%?P3FEZX?=ZZeN9Ks zJ%8=k^*Hcr?*9r-qFXz1w*0jtQgz&(`|qx--}UdWc0^{p)3Gb_uo+{d?D6_t^BB+I zy&W580yFq5d|^#}=KPwD!moYUQFx5`VeT`>mDlfDxTzy^^M7>s7Ppx(W-RVs)wTax zOKhCh=@)8`=KQXhn{WZNgsfe1QHf$G@G<&AW0s?%3)mNd&ey~1&%s;kp?7@ox6V1| z@%mAZZRmi(jO-O+(X+Nv6;#l^EhYBO?hrxz7xuy zTCmb;AHn#Wvf&TeUYQF^6;a1^b*j z*dC?HJ?o^pb+9XJ*r>zV>VjiV9c+roz@G4&TxQQf6LyK+kN?CR@_Q5v^4aj9-%Gh0 z(+kf>ZXNWv-H-o7;Y^cDqWvxWUZV#2*dI=6%LO0GKPrzgL%j z#isS{Zz>M5U=V8{=s!`s0*~whKK4;wn+u;@4xg~swO}V}Nby6D-{1-T78Y;86Fq)| zFZ7%CdJKQD?|=>dn&G`88#?dk`Yq1gk5))cp;b+6|96Xx8F z$tU><$iXGHF)4A57RU_ulI*|*G5@wTg_QK$*gqf;)W*nvE(BZu0dA+o+=R7Z2HV?%m&*49&arZl8zg zK5w$~Qsp+eB6JmfhruQFw)^H=v46)Wuv0KvLqm!`vU$w5t<=v`^wZ|>lEvTWwSQh$ z`^BbxoyR;|`-}g<_D?Ny#*f{n@jv!C?a%%P+i!H+PqD}Uqt9vornvT9`*J3*CSVQT{v2^wO^o4L zbU^`o{rTILt!=??kP5Fh`;(DV%T|!TrXrj5X$gI`N)Mn{8i+?8Aij+2OKr8_2WW*) z)mJ%tW{L2l`YNTq?*C8>h0f$Xlt7$3^)vY0J6^Yq0^&6C7-tcCjo0%}zWlmo#*=9! zSNNrq=u0`@)HVrmZqb;7Ebm}N3)owVV2#vfC4i0qF zh-gE4YlCR=J>z!9>%g<;>2vadXD_q@<@oBKxkPu4 z$;M8p4zYLJxP|c}_vR#7uXc7O08@8PUve_VEbJ7;9+a?lGSA4`64p-U8QE3BI>ZOq!n0cgn-dFJ9!7hnHWtRL=w2rqKRm z#`<`gwcqah?h`M4x_9-*-`e}m(Tl$I&XeD;_P@7i;fZ6J@2wt`{N6hQFPrhs%1f>N z`xgCx*y%wP#LQGYnPZoE!8fp?d+eM~B~Atg9{THKEA-hCDvm$e;_VuUA|g z@luMR%Q4UAnCEYLo+o*pCwiX0=6U{#=XsoYw%fdl=e}%~rOou6f*wwXM+d^ALxQo1 z9$vBdbM4zlvDf0)=lF#8&0c+LU?h3k<8@3|ykM=pRvB@&ykA3XIaS!pc*1ex@s3wG zEdr;rt&&*kRl%FAOP`ybd1=-3+)Jyc7hSq_`c+pQyy+VLA4?lP{RRHt<^N;;2lX31 z{mcCSFaGc2U%4EfqTJ6HAG~SlvLn-P2>S1-3?|((I+$=zQF+t!q};*xJYTx=-P)3Q z@7}dy&buSaqtmm>XTJM1B*E+ z`TU@DPbTH(2oQk^2>q4qWsdF0ry-( z`JI$MM)@V>;prvih421?@}riwp8;=W&N=sdoAQEpum|2>QhxICjx*qWGiTsEKcu|i z{R-t>c-K>Y&hk&rfVU}U&^@aicyFP+3$MZd@*`)!>*8PV3jZ#=2LH>Co&m3mf59vK zyYL$PFaPKacwPJpUg6)JUxWYUAD;oQi+{l@{JZeF_>Z4o7yp`H;opVV#ee+#y7(8o z!oLfzi~sofb@4BFg?|@b7yt3}?BZYW3jZ#=F8<@`*~P!$75-g#UHr$x>*8PV3jZ#= zF8<@;b@4BFg?|@b7yt3_y7(8o!oLfzi~o3dUHl7P;opVV#eY1!F8&3t@bALw;y)f< z7yp7+_;=xT@gEPbi+{l@{JZeF_>YIz#lPSc{#|%o{Kv!V;$QFz|1P{P{^Q|w@h^CV ze-~aC|MBp;_!qpwzYDL6|9E&^{0m;;--Xx3e>}V{{sph_@51ZiKOSBe|AJTecj0yM z9}lmKf59vKyYRaBkB3)qx-hypkB3pPxp297j)zO|xUjgmjfX`rxZ{^Bj~~0n?2cEm z`)p&CtUlW~C7aJS#?+*~2% za6u8ikb@J0_p+{+AFNI1k&+%5@tbz+gVYk0NnNl68|88ntCHOIC7!F;AGza!xev&G zBWKKlGVJSuK=5Ae(NyA}8to&G$CxDfquLHpzA_jLsZH&_D2I&Rzpb*J>+AJiXV&$u zmNB?z9=!fo_uavxvgzbk;{2ZH`EB#8*s#Rv-JbWg=2>gf#Oj?qpJA`Drn$JWr>(Zh zv5Q>%YmeT0zE5kS2J%YlJgx2|k$=5Z`K8DBLc=(pX|E@pGsP*apVDm`%<}Yeh(6BN z{*t)%3zgqwOk&7?miAkt-Eer@x6dPY=i@bg71qeR{MIYVU0({$6%(WVs!`C4pFGRZ z#Mg-B4m@K`yteq1|6U(+NGw{Q);ICmO&Qk8+}~Uil236X`B!xIIy^KOJ9R&K;PJ<7 z!l#})bBww3M0aZpqD{Ab#p~sQtK1D=4e9QKjXvtLzSo|{kv{4}d#`2>x6jJz{DIg>-rrZZjJy_=!{1oT{!F`aV>B!G$~DW@ZW!~%+TPmhVYfqP zC7$`wn&9USooOwgKbIcfHvHc0@0O3-^>;@+bLQ?Zj_za5GMzb#dgn|y*PJ;xe^NMi z{NrZN5uBMlM|`oL__MBggZ|CD$^VV-|W<%rQsuZ+02K0UGUq* zXKAArUtEcEujl*{_LHCk^~Zk1D^dEG3-8|mz1VsMA1d;#{$ci;DWl(of6<$sB} z*`(mJ(Va+=h1yG(|4;jsr}l7<1NvweeiPj(!J2kuUw0$@lo+Lh=I&X^aL;`QwO*dJ z&-j`-b>7dNUpTSZe|dHC{LG2cb=tcZ&uVPyTQSDF7~flr&z9E-#@`TTjEVy|@DGgf zE@zCxh)bLG$@MWi7TKzPqSB7X4bz`ufy;<5wPk3qUNN5HAwRJ73RfIW-rvwI!zCjM zJT&Rbha1u1@%cn%v;RAroM-r9SC!-IU26I3YLJ;>WWcTj<`%x!xur(<&B#gS-8;ws z%p7aqW;XM$9O~sG-{jtBJ61E1u`8E^;(3vI%x`czVSe@*?L2#abQWyh{CN`}q3={* za$U>tx3~w@&MlY1+{|a5Qb*ZsDxaD16Y0G>XZ;nAjZF5+;~w(U@nejO!;kzbzjbib zg&*vfzYpw1elicPJW~vi*&`F*VGHG;hyF5-yQjf{SFg*@c{yhmb*^4^l!-l2Oa}5% zax)v7MfQ-+Y$p-#S-^hcxA2!Wfp2@?UHgOn>axqNZACM$LAD0BpG$kXx4~^o`5f(i zFu#-Q$D#Q++Bg>JNgL$<>hisM^~a&O``DyE3RA3C^r<~l>5>t^(!dy@0b-{vHfON@ z{1EL+9yt0yxDuQXv!^wSJE$^(zV;QsTKV+T^-G_Atz+ra|G|HZe2c+#N$eR^o|?S6 z@>EHk_7vge_ABsbwt&wj{HK+vNfk-`lj;s)Z^)n7gg;gBR>DIKWz*1k&3^JxP`;V+ zH7bXH6B~PfGi7D3hWY&x>WI%G)br*E^~(88vQJhfg)}E#+4_ecBU_DZG4VCTiaNTE zci#FML->JFCpLhiCUBvBlNW$HEFA?t%w96GPO(Q5z|HS0?h1fs1UK<7ZGI>J!RL)L zgR*1Lh3F9M4L|Uun7v@-zVnVpzw6y_VD?gj`>aTyifGJ_wg*5 z*n_9ANp6p$sf8Yza{1|Pli#BI{IJdp%bt@hhFmi-?79n2cOqt^-v=;n1>}AS!-x8Q z2XmW5&ch|(N%MHnO1O6?Hs`bKZM|_xV)b0%`E>RK*@?{Ew%pdsL&~2KVV}>oRoO$* z+<{|k%YC`bn|QQK@B8i8s-_2n+jZ7ZIaO@l%c$1AfpV!dBlpm`+j9GV#n45LN9Rtb zZRH@cWt)k6*=M15Wjl&TZQks8w@_DG@RVr_o)T?L@{W@>dK)Ko_vOwewjTa7b>TVL zzgKzd_5ouUI(dRPuQTS-k&i9mo-#u6@d=N7Y_GNBDeqw4AwHhc-n+B$T2(H@ zi-#civyOi=6e0fP>Hl+j&1TU(&o}UXH}91XlQPGwr?Nt_=?tG>k32!yQGBP|vEBTZ zmB!sKc@}4LXdfPx%+c8g(NH7warv)Kn|rfl6X{;RZ02;AS);&n*~p{+eR9q4L~DY6 z)BUlXooQ8J-iseU{L#rZzeA?wa(ADx(WcQpJS;i>2k&n)cz+A|mWDIl)Z|dk0LGh@ zzzLM z+4K8l&9Cqe4Z8C?Q}cUaQmBx*%4E)JlgabR95h1P=4=#mrFBCQ<%%dbn{uyjW3I%j z@V;cZ<|-4JX8HoIATcjd_SL54JqD=gs>ZFAs;t;dW~;^3cAowmZLP7`#Xxy61U} zO@Qq4bCzdzxo>|t>&Er7t$VM)E}fm&{k;l3F?%O@b@cm4e%JSZbH1lq_f}y?%zoba z&ONGE@V&Uix;M;TUvaB-?*@Gyx9**(&r{aD!}a+bzmu=G_~-o2=kK)6_`yiCR?i_` z&t0nz2B*@6y~|VE{_xUEKTOP!Y6+g|u?#M@` z!+&}&x+8Xx+-jMjD<8r?fc#hNVk!8^95kUT_7;3>%O&o%H@Q8A@uWO3<^l4Xk=Hk| zPIpMQSjDUGcUA1>T{3IIE!fYpajw8WCfoKod?qQGDHX-o5DCn06TH+?V=ZcC{EduV zwqX>T@C{^EId>&&W&FBJQFe#M-cl1>r1&u9e^=R)H+41+6NuCVpmM05!M#IEgqKWgLdp2Jh4(dF=sLP2Az1`U5e+uDzS?vBnQm8=|O{^m6h;^!4L1f z_zB|+*4jVHy1L1XL2I9M=CEIna-xkUfB$OTop%`hQ*5QTO(o7h+v?Z0S3YX&#s2f} zoH&&j3H@GU&1`=M`}?uXr0T2w-udbgbd8zQOYlL$M}?YG_)7NIhd*@Y6ulAEoT6)( z(`}X5V!h2Nc;A=%qk$o_E+Q@@l1Dq)oTYZ#fhN94J6-gEelqkRy94>Nqpx=Qps^Za zRTjV}BqpkU9-e1>$8s0rD;etKB}}3^NCo;?kgtzbl4^&r^J!As2>N z*gTh2|I=T4%5m9|r~ZECdb7ROiD%<{&hgsB9`Tn=FT>kAz{h6f+!os1%GlQ<_g>-? z__U5mPsdtRjKfJ^AOe3jbov7B8eKf>=Br+!HQkY{P{aN3uxxkeH++9ERvuO^zWx1YEd_!9}yGl&eC~Vd2 zo2~Z#*fiPKSnWaRFnfyCZt0WvJ9#fzmOayIKf=6af5(nP&i)=bm$kNI&UAh#`!1_} zrhb2bb7FiJ^1kI{PGC8zead@&A*;r z)3{~^aeg;fwQl(~F@F}%KAsb*qRe$8cx+;>oAby&s@UCAov)}(+c$&Wb=vmAqdZUA zAMn2GVMoG4^0T>lg2Ydy|9K`qx#wx+H~12~uJv|%?L|i4KKftcr(r$#DZIuXi>&jL zQ^g-^+Uk!*H}ky(yhg#_YIyA>e+*y5E1Rq-6Qny^FSk~vZX6g&2X}`SR}RpiAE zKbaS6EBjvH$nx(6#7`~6SUsI$J!R~C_)z?)J`G(SXC1cLXUncF>UaD|k)i9? zW{yOj0A~a^8-O!PyL+)QDo5Ds&V0j1DQ$NR$JU^Xa$cnK-14MZ+e`>w1`krtTv-c6Hg;tR*P2_B8c#m9p2goD%zAt87D!csap-A32p=q>X@Pn;q@KZ}1 zuk-tC@Y4(qo4}=u+mv4LxxwIbQs_IBcgwvdyP0~8)c>2?hj$K!X$%*Krcp8I zo%Vt|CUlyCdyh*O*M%-OaB$Yu1JC!#f6xFtQQ-NdTh|MZ!NGN*p{9<#=Km^VUhS4O z^9lX&Y17|zq5e)klRf?1N35}nw{VRw7O7?K_V{8uFC*@t z-E;6~Z(A?Z)(+Zw-P2atfKc68+G_N)rF;}F{Qu&@)C>IYQ^%#lhd3=_Bi*>2*1=eA;F&d0VEDQ{WLj(L+X|%jCc4^4ZopvMWyhyr6s-YoMuh z%=dcc&7Tx#Dz{!eij4izxz@Ff$exdowUSxuSy$~O-?U5X2YuELKZf6r;hQ=(c;(vm zHSE153~tNBUO9$LZePb9dxHJ06u-|g^xDnn0sL&&YOiYE$zaUvS#=^Sk(n9Dvt6=H zkeeC!XEtDiNFFsJmn4twhMtYjjIrpQe$#u6p@p_Pk+XN9Bh+RQ`opx1?$F+DspK>5 zrqOQLXH94jUbpoNH7xLvTM=2Y5WFtPiM2D&2Cvu@@;`;?rw3kXSNh24EczX_2wQ^Sc`IEzXsL_V>iA9;I(}V^2K>#5FEN$B79vnIMi^T&$e^# zr;Yn^VwInRFPBytvyrjPvF6~bsn%0@_gL3v--Q0aCOQh;kel(G+F}raZJ=wnH&AeYL6g_*&T+&j_F3SGbYguQ-v9pzU+m zmwwj=JYByPZ$HW$h^N_?M80>|Nrc|SL+{d->OKJv?4@oK^kd5Fcjo$x-&5@0j~0MC zi!zM0hPeA(|7^oh<2$FVkZ1f*6F%}!4!rA2c;}<3g8@50Mkhi{?)`sBL@0*m)~u=UvQvHDY7v?BQhE<<6SA zRL*Lol1o0BdxSJcvQGw4ZkFsA*%*0_jge13c{#D@7wCt*XmZ1HhMbs#*A+)kZk5^i z5HDw6QEM@KpFzCmtG=HY5Uod~bK_;u+v%nCSB!eGBiolU)`wqe&t=xO7Hho0=dO#H z%jK*$Sm$NJTP79&{BFV4YXT3*2V{WV|6KZ?OaI*0W7c?;L9Ij8zt+I^-EjZJILuy? zWE}4_rXKQ;^+tsDb-&<$r~PkyPWz&v%=28DNiZ;OXt*BvM9eg%`@5MEul1gr4s zg(vfK`kV6WpVmM3vn_^pQ`uj9`?ss=Z+!7NgX5DakOV*F% zu}k2t1k0SKP39b2rIlRKl%BwSa8_N@zy!{1B*Z3h=cC|Njyr7Zuc^dtPk05y?zmg|k@nf4)rjY#@7jI9%qkm73U1;;vFVj5s{Z{M?>fXV* zP^K8dVpc&=HMI{vyVv?-9PcV?1ic zqV*Ly9_V|jr|&XgHrI^9C4NFS#2Vit~z@ir?6Ze0<3l+rW6NuU;0~ zh5gY$IpJGt$xko&J9(n8Z3j{=Jtr2TuDuo+WA;tl{f^(5vDkQd3Ov0MH?}O#*ocWZ zFJlg{FgL>WgFf`}B-Z33!TlC{O`dR*=D}BO*5|{SH+b8%PXw#{KrjA8y3dZKmEYK_ z7pLLBF@7V;%Ewc|xHT8poGWM776%d&tZSEngWcAoklxMhOfj-aac0Zm1KFlC{kGgq z;5iq4sJ>#vJ@}DXZr$cKX!&DkuZ?&gY>qwO3kF1cX+F;ITMw?n=Dl~c?~%3YTXu)^ zn{=Jv?zU64e=Ylk_&0R>zn#TqjmMKNDwd;&`>P(;xdGSB)qfQR+Hq>Az zE#$w2xd*3)M#1X{;EXKfU5yQ=S5Ic7**>C-^R4zQ;M{`^xCMXMPWaN=Fp%{s=S+d2 zi^gbo!~>_-Bs}1u(?M3d~rc$C>bak@0uj&-fR2kAD-fY%YyxPBSH=1|^1m zv_yV?@Sg(i{W-Cf;NHwtA8W7?TF+=rJdHY96VIUDw4B%yw;nc~(I?od-Z{{k%Jmz@ zud9sDkU4O9hFleAtfjum{D?m?zXwe4gM5GCgWwIj`S|8RJdDgFHGc^gO@k@I6!CNAvqw z{tq%%cxiH1+t-C6<9I)wf8fsOdXEgAz`IEav7PV-5l^9rWH961Y?ahY20t|n8GH-4 zybV0wk`udzx)Itia`tX&_V+KC#EPt$dv_IA|)*ovf=Z_s4?~fgx;E%OU^2d%u zFA99>zc_Tf=)xZJJ;|BxhHTc}_xWR=mJKE+lz~MIOS))%gDuy>M_iL7goth1Mi0kvB*LCj$%W$B*Yrq z5@JmsC&ZdR!7lwQA=Y{_A$F)UA$HggyeYt&ccBe$ZO=U2o#-jicSE`jZ}=Ac+PCG& z=dyCvC&u@(vgkA6J)sS{FnU;eO|b&ceH-6SDt=3BXVI|crj>K~Ub&@xmgFCxW8Y^! z4_L8=GIR{<&nD_0%c&DgBFORoHf zbnp z?ipLbJ{59De#Y=^;AaN7fv%O)LNvbtx{gp!c)c5Y)Jq432DU&0TcLrMpn;d6fgRAm z>(D?AG*Al-?12XApn>-iVr>T!Vn;S#5co7YICMPg{2ny_uuB8)=f)ZqB4g+iAI+?B$ky zmCLSfDqa{z8@J`gnr_bpuMgu>v3;Kj;;Y{zg}y%X^qPF-F{(W$5ZQB1prP)ZK=i$H z0*wcePf^xfEv&)Xe6iM|fq_Hw1_n;no)em_byS|ajv8pzQQD(x-Qr`PE}<&?KJwR{ z%dOZp`N+9jSi3RiuVSC(bg*9sje7aj*gn7&?f9Awu;#rG`?Lxk6%biGE^$?%Q*%%p$d>MlO?@r+!|Gilo z$p2^WU)gk+Ts^(iU2ABqCclY3 z7xT&2nnC}=a$-OGoc^yqOaHp#T4(3dz@0u*oX^w54lN}$?n}gvUDB^E=7iJ=oxB-wy_^92{IV z4IBIl--D~Neb&8q_*NJj{BWoIZtQD==MveD=t*-hBC)%y$7iJ^=jtImd9ud{;R0{UrFV$cbIo2fhveG0ysup7R~9L&iL4 zF)n}gSn8VnuLq%f=%Bd{Ipf?z`V4d7j^%M@ET2mYs~uWc!`N2m#D;v%*tW)x?LEd; zY>zF`9b2(8w)eWn_7G#U*L||3Bg$4ME7|~?sg;=t@}Kz+ctNS1sd~xfu?D` zK=TY=poKnK>EjT69G=AeJW*fZNDF21asuV78`b_B(3!^P{!eDjSIM4k4Qqh;=+iRt z(%b<3Xboh`7(3_2ncv+UozCwmz?%-d1A(v13N$Xa0_NZlZHgVfETZcgAe@bAX! z>-?_wylMirBIl7}n-kdw0sn<&O`gCSk3DmI5%Tv(!1)Nu45w@kYYF|)G$R!hBg73kVO|6dn z{g}87d+kZQP(J#98u3EtpnT}26(2zw^65(CQ!4T)1Nk(?_o$Iiho;%_Jd#cF6-Z7= zUg^7@^-kmKNBsi!SvVtiYZw^BYl>}xP7EAxv38wrO}zF>pRKob-uh0npVb}5G~#aP zGmm=N)Q8T)70}OrF zvg$JV*WN`Edl${r+sXMLH>StTbD7_c@t~cqSR0<@llT4}odM2o0k#>80~m!f{BZ0& zXM`pyK8f*VV~=MITEBJ|v74E!@iTe$;hV%~yG{2C7ovas_^oAICU8FOC(NnzvHId% z*1n>dad~!~vE4)roarxx{#{-k!g%0cZ*0$sKg99u5by+_x@Us^7qn~f=kn*FF{0g` z@z0%|iNro7@t<6!acU1he%qW;)+@7g=4JRb*bTw$uYZg9_AF=}*^!Mu4IOc7Klrw7 zz!UWqSHIBFws&vG*vF1`6!_B3UhHA&9F}}x3@Tp;uW#-DWPSP*FLaE(`}ZAVAOFad z-H1QZltm7;As5q6b-rrror^<%CB`C*ENwvED93=x{aNi@Ww&SgfBv!hx)+}Bn0EE= zJ1V~9^iP}p1_c*Qd+D)y#RL1an>gEv6l8^IH$6JiOf<^J0}{{tT>qPIJayA-rGp ze8<)&_I6ZEZ&BU0!^A+TUD1&~WgAT$WKB>!Vn3_owTi1Bt8cr>?#Gk`ccv_#Dtl*t zYl4HDMGIcE@tJAE6)4#6ySG$h6J6E%0{>g%y2@&oY}2P1AD`GM2DfATKhaHVkJ+^5 z6U{;wV~^T6$`Kw#7q5Y9`Y~;fwdt^~rJD}F-U}UG>&%7rpEM_C9DJH_@agc!YxW$! zXmD%#XO6}`=Fph>*BoiC-Tucp{YSg|zoeJ`FHrx`lIfpM(?6f4e?E5^oWq|lJYGNc z@fSO`KEJmk{RtZn5%AbgG}h$7=^kIeN1MVyC-Jss9@+EB9E1;md&})S&kwH(5|cG$ z(CIZk)-z$`k;|)}5U(O$jUaz~$Ura8a=*5rp*)>U7_QvgJ}39~L#s+?FW2}Df3p2= z=Q!uK_Bke}8K^n&91ft_|0*%;iO~{aDY`2yP*ekWfx9-Ua z;A;ukI^I2>@X+>8{vw~`!`s{W^vYW4{;wYBmaD&_4_AKPNZfzC{TD_q%f2)^{-m=O z?v!5gw`~N^bH0TykUGCeIn|W@Ja{G$# zsnYJgSt+_F*6uf-azS{{)9=2b4^4afW*zKq?;DgGeokDuI;Y%w-Q~tp&VoPP_Im8E zT!_sIEo(nN2;F6Hj%G98?R91`_gL#ZW4s-!eJ9;Tm70h{1@+cl#FSJBjD`@f7exyoWv3zQ>bk#?$*)BhY1UWBojQ>MVJm z_4oHQ$0q^K*prjG8y^90`YA z^uu^xjvMd$4($r%?s)Bd7-!~t(AkcrY1qoF8^j-4vt(-Q=n3hvR_34uJGvSAK16S4VKQ&_emJ3GK$|b-kJy#BlO~A7WACc_+WY#%N z)6jd9(0i;C59Oh6%-&@hG@6J{DwVuK32l3!%@pvaeVp~=0hq;EP1z1MZ#icx6`w$z zD_!35;wFwx?})>b=*6YeUpqK+@%8_w`JEIu?)dp_&$G`nrz$Mf3^;osha*16+K<~awvhnYL~9LfgGa6|=b&b%@^{hp&w_~VQy74+eY&ET^ z(%DzF7o7y$j8QS4I_qNk-|P#`G&uNj=r`niP&vWTcsnw;2%D^caf1)xMD$iP(+bJI zoN1+0NDk>-qy_WB9TfRDC3fm5Cdvt9z&$@A;#&gOdkV>ck1@>67ECAT$T=cJ}ub*=qV>ntB}%t^?$G|8*vwoSgQ<;O7nS^d|X!be?SgWcI+&k>M@t*BUrnKbGVjaAX39J~QIrkxc%sXZ-Q>ulw5H zW=vjvEPLNa-wE{XmAT<`;U0Q}#`Qke$YVS9M!I*nWmVYnrQ1j8?Z45H6Npyx*Cj6u zzIyswrH`e^!R=b- z%7<>9nzB0Ml&_sLmbdnJXC?fKGymwNZo8y+eDt)B#J7#uQ))~5i1F=rz3Xb<&Yd!9 z{_u(R{!U`sozR!!4l9X`tt3vi#`3k3lVp1(Ip*e!dDGYlkFd|vttaexl$?0J~Y2w=esjRW8LSwXP$4plE~c6w(##EE404lF3kY3h1bg7)cRKIhQfX)e%*0drBXTSX9Tl@~*#!=4 zJ8cAUX|jiX)!P@qJG2>v9vUYhLwIk;ND;TaFlg?ppEU?u!(IntJnG%I%db?A%H`R21Q zE8nc!@rkbN%_sV`KLcYnFv6n^=)zwWom_)&lsm`*p~h*zy1x zQK}EFBAijtoNc7Otq*ORu|)A#!zYDo8E^Z3f8JXe`tz0%3^N(KJ_~`xUgx;^9PM^S zX#ZLHBxewF&DzU7-~S!czS(!(*OiYFTzlJBPKieU$m+!TSrd!kTiMvk9~VKsh4Y{X zbXpw~DpD72N&| zwn;g6vv4888l7=y0w2xAIf31Sg4>ltE_wdwiIO4u*Z#NJXMoOjbEmJ{UP3SJ{U`0Y zZMp5#aF)ITd1If~4Q?MqJ8m1lGw-{{v)8Gg#Tb&H1)D}}TST(E5`9r~%5U_A+lI!W z93Eb{UZuDGXL@}m=p)5^C;32$oWta?UG-$OAmFA-D*F|nn1eX zS#-fcbOC#R+jn#Ci~3(SW;go4*S5sTDbftSz2kUV_+=a>j|g}^jJz*DmA`s7b=OM{ zL*qQ}7Z01fCiBNk)c3jn)wzTF8R}a4Cs%aRXDfZST=U4|gXp58s4iCn8r?$~RGnoRn{(G*!GVJKd^Y1>g5(>vZ8Q z!{*=Cy*B^$inokl>^BbH;_aCm4ZgbV8QGWFz@ElFdjfWDZfZhBHo94MvmZUqI;H}B z^{VJiu~X7tqUT)bOER>;p|1vXfqBn6aK^o932jH=yF~INO4o@GFdBx+7En7~zJM}& zPDQWck@Ze{A5k_;9pU6#Mi$!mnc5qEprdEv@X=eo#IE(_VA(%C<(t-(!b273Pm;mI z?$l(1hqt-EB?UaN4yc$59J2egf2=d0I`br$cQba$jf2kEm8(E{sTr9m*|{9rkuFm_ z%$1zConmUTA$TzL%a5*oYs_0~)5t-S8dzdpKrgX2 z`%iG($h;*mE{$J4w-=!2k94eq~qXzSO1>gK(dc|IHO zNnZ7fqcgAXh5ML{E_L;()^k^|*B|fS6fFqn@|77rf%pEu%pXQ9**=puY#=#B6iYS) zx*doQuTXZKv8lG5VN*G4v%k$e!}i-}S>LejI(IJs*)1I){QdU#-EwP3Z}>9n-|qFN zi6LSPQ~sTNdk(a&K7ZlqQ)@)&C0BnuYSz2m z{zT;lYQP?pjUCQ1dt%#k-?Z?Mi$8zGe68*6=V%tX9~)YC0pCRYg`YSP*WY62`f|?o zmDxVN_j|*YYo9q~r02TyC1bxQZtV3A&i*^&U&8pm>x^H|-tn_m``qzw`EQK>n`arn zE05ns=6dC^@$(_yls~QEHt>Ngl^m7*W%IsrO-bHmRR8Yv(`ynRxNQIWx45SoK1$wp z>HZdETO`#AZ6SB?ip*4%hPq-*0&1h38GkUP-A7-GtH z@3cb6*jdR|DmKU^`}c6a-dO4<2Q&5`)L7BOk~N<@R?2IvEsLl8zc$tZXB%tDWoE2V zY&hAqvMEE*hHx!?=auzKv=*D6;pEdIf2;HzviH*hTW)A=Sk_yfraZ^*=cRRIj%(vc zPHd~|mJ{MxubjQt!@pOMU)Y48+m4xic>Bl1 zIteE|WK!Hb-Efw9!kOJeAG+~;Y2!6#-SK=)72x%L=IlY{u9$gSz`PYOZ`fo#=ZrPc zZ_xvcNwI0vWr+#*E4m|Fw*bUF@K2=(`1)guguP7dGfyY}?Q!4hr+v4@h6O-#& zi}6$X5^WsbAB>#`e&t(eLGCm|OUgSYzmT0n%<%h4t!cjwUgP_2M((sAGg`5+l$);s z8SyBxpaofwGXIK+Da@XBX$LyMgi9<6Tm>XYu4d$9n_g#YSwKg^lKp zFMeDXXudt;2+sqr$gEc6sq$(z(!cy4er)tNc%IEz8Wsd&;oE_;AQ=1M4r1cr9gQyv ztrs!IXQ0t?XtW#}Er&*zE)K4%M2=R1Q{@0(#+bRY)PZ5C!R@n*)#L$B2NOfo+ImxDhjf`z6G%y+b+4x*i_w3^9`^4vD@X1=; z(143SJ7%>TZ$D*RUOa`1paEoI3-U`epm}#`;F(@%U>7`=H8@o7AN;Eh|KR=nw|C5D zjMtNsVlwOBn)Axr3c-!+o{iYB@^5v?p(5>zvcBWfS&tZg`2k~+zvcS$l6v)R^oSFC z*)R=$cW9x2wa&L#hii{u7i}x9=%6d(XjA!@)V9`N-uAzv_T$Ff$UGQ4Kr71QB;Us! z$niAv@@2G>>p$`9f3%-(e!+gKoPOkU5eyo$e1XePO-2qasjED%oO!g`E4M9QI}iTZ z!k%1<`E6-kCNyz|Ucgql!k6Och2?eq9=dVeRC1C{g?^`=ezb0CTEB`blls+NfxbAD zm{up8&C(p93tOhT`FTvWz05@EjK*Y3Xe$!S0aPW7?EY-F{8K5 zoOX{bI>)AC@sq|N+D)Y2GiaB3UV1v4zFPZs-*&}qjxW?*zqRKLw)69qlAkYcNYDIy zoXv{d$N8+)@Ya*ybs_qyc1WOc&yYY<-H<@@dqV;(#hm*p#_9 z1%8K*S$X@k9)AWOP&skT(%mQLBYPLZH>-m&`&|AS2O@C-IBViJCaEm2+F{ zvtNbaPd*aOtNg{!<`IK7o>(aKqw03GH^Htq$BtWDIhVLKogIs>|1;|Eyy`6V4>t{=ZV+$~a5?I;Z}7cKysa_~#1#VZ^k0V3#htp0gh7iJ7|s z-}ZW9-8NutNQ6&N?`6i1AyxWn<(VFGo4T`en7yw@ z`y;@^Ch}Yt;13)Qp0zgKpu8AX3hUv7>OHgJC2Tj@%fskD%(x7_@%@!TzSqV}Bq=Kg>vf)m1NpGiEWp26*zR<8(yko}>a`&RZGn=y63}+d-Z#}V&t;BKCw6+kEhv#!*N< zp&s)aSMO=n8)mI6Cnuxo?ZO`*UddwaMlg59;6bsU?32cX6YVQ&4W)hN^&8lO;P?$jQua*DD67?ZtqWuuVio9_;LJOJ13dFP0^lB6E=O=cBy;~ zjxVPV*yjU7Bl)$<$!#eZGRe(1!hvBVFpMJZp`k`P0-oIi&(<+MlaD)_d<03MM{e(h z?lw&9F<0^Uo@V2FTRFKI4ZiVzc=6U)ksFhY3xc2M0xQcpFa z5-Zr7-RIt4hK*~^j8zWr&gIntt|V7y5r5KP&ud$j1*KoPi>%=}Yt z^E~tGJ?2^Ee&1WUuKiw{cXb|p6gV+wwZ;cyO}BB!!OUQnoOjQwzkqy~jc#%@+^?Jx z#ITVUi+)T_tY|vt)dzB3eF*2($)(XU47()*yCn;|Wi)onSk9{#4Gw%-#(DMVz#iw- z>xtvoAB3FCnuH>}Quf z5#SjiSb--9Jm~ya6bIpjQ?zMdtpnEg==Xq~gSPQQ&Zu)vy_s|BEu2$t<(&GVkA1Pj zpZH>JpZQ`($Qx#0B}eT#%Nlh0<8M}-F0%Hoap5?bV_*&E<;EiUxv>w?KeIj|AHDR@ zXVO94`5ExBuvg@-4(4!%fSiJ&5BZjQ@^VJ?hJw>;jE#bAB3V8X*=F{cZU-l2@GN@v zb?91W_#0TO8yQt58;HEY?v8tk*rvw_eObIk?of2q%X-c4lGxV()InaI%w4W1e%eygfB>%>M zcfQD-*r&bnS0lG%k9WnwkPp#~bFujrI@vcHdqpyPqvjetF^c)V96h1^wtK(J8Fplg z);yZ$=1J&_ap;Zvpao>6dv0Am*>hXSbNuyq+~+D*GGCH8s~t ztQ*BYIWp?XPL-`_p-^A{?gSp6w6X?zTy_L z@GC^|Q3%JPL($`3{skHo-50~t1(bsZm%21qWXBkWi=e@I(BJ}Sa3M5!AM|iP^zb0` zP%L_Y2A4yF70}?5&|q1An+E;qJ!o(vGF&pOku&ps(O}7p(`zc)p}{O@a5OYH78)D} z4Yn~iALGmVgmw03_}OYxIRC`^HQytr#rMf=@h^t}M7JBT$wuG_gW zwxEwB*S9jaTgWN=&*WrM%!A28Wb=pY@*6nJhq+@|;f!JSPR|`n zjHOt2C=s*5nCyHR>xrk8FMl&*S|5zP)5nuYM_+O^#jLNJYV!k=Q>fpG93_5o zDgL4w)=JM||HO}VgJ-PrpJ;77cHZeVQ@@YgSpcrEleONB(iZVPv7NJc?}0<>oduFn z$gK$SNj9n8g|U?*^H_WGo6Tpw>M-(3zV#jXr`PP14d7`<_)rXm7uIimL0I2RvSD4y zJ-_NZ-yIJ&gK#Z>f;&Hr^lALEPTw;f__a?V*ky~qG*|N%-2S!rv14yM@&(6!*%uhQ z#w9wbgmx;S9j(W{&UiHDDC0A+Yz`fXZe&-@J!yZ=V?Jt#&(C2^WBa{Q7=KcA>o>8l z2IKc}=*(?L^NvqspVudnX<%oq0Nitt=|$<*wZU|2LL<2{ujl^UZ0OTMo@|mFn}UD) zN#a5!GgiY3PqP2_9a~<_LYAGmHnwT8p@7^Z_}C_^J;#Scd;4;KJ|U!aSVZk%(y$gI)<(bES=8_wC1OU6Ete2zUiy^UQUBmp;!F9#>KyqLv(H zy)VXI|4qPRzLRJ0sNrv4>qh;B#%nz^i9>JsJce$fIlrF;?qqU6G>l(kp(EV2!6MZU zaqHbR2e1=%z0+s&-cQxrSM1^o=YY@5G2X`*lQqMm$(jrKT*PNYG}&P#>OW-dt0xCo zzFHZ%U?qdX(b2=pqGOB7qvOX_Q15qmv}?qL(e9FqqDLl-h?W$=!#vk9SybUw8WsE9=C8?8MgDbwFl~H$w*pyTl=Ob9O-o{nt@5rZ8;Jy^7%3LEx=iK0_t) zUqfD$VoG(;s|NX>es=kfU5?GHwCfYI?m00Iug0;hE`5Wd?@iG69LMhJHR0~J)IyUF zsJwj9+uc{T7+Pu0xD;BsHOF-}oZ=Ldpqp)va$Eg_tf!U`k4oD!1ilwDZ|sH!w;;#e zz$<&v4Lw+=`f4}%3Wr&nRW9&hXf=;9jl(W}jy5soC(1{3c~kE*xg*H)A?X8Pokv~N zM)0-_-sy(d4s(tCK?DD-)NQ$yx-C|L&1?QLo7egRvx~1ElY68bAj9wQp3fQkES_b~ zdxiFzF)qXJe(@^5-z7IebMG>ANSL{m_DL!J9cQf4nX2_Tnsw~h4Sa`3+R69rn5ea; z@Rm;k?|k5$DSuV+MH@%HR=WBAk}vtMu6((*w|{TmYqeG>77wiQr(OQ^@}cSi9lqT2 zZsk_8XVmOlaqxB#a9j%>#|4uo0dHDW{N!xQ#`A@;tJEP#+u{VlE zbX_W3TGT(n*50jkT>o8tn2)|t?|U`>L*WC|lfJ8foR$}YJ-;91T+jd5<8?4^86 z{ap6pRsM<+;Sez>==RWp+5L|%8Bdy z%`HA?Qii@L{&FC7{tx~E=Ne?3FIr*i$trY==)6%l&O>(k;XAYDX)^=1 z4(f#GpW}DArSl(c9W>0yh0cS^Y1Mw3I6g=xcxMe|>r(1#ZDfA2$NKt~7HV)aFSx7A zy5H2-Is`AtN7Vd4IcVA^B7XP&R*XdJq{{h{9LgtI^GD|E)zrkgg_>CN*{^jcHL=jS zijy9~NAAXNr}kIqNM0b+zT!I0i@TmV`?Y-fMcY^O=l6hUM@dDfb8JPZYeGfn(4`fj z?)lgz_~i)v{QAA{Oj||h4|^&?G4zJ?N&AFw;`^LSGs=?-Dx2ii8Z|N(2-@|qE(HgZ zE%a6xnC-orvKzKvYxXx2v-3s%_)pNeg6qgrvDOjL8R}25A?4f2x0C#?Ra_TePq9(O zXVP-^+;@6;Z3z5EuHAp`%;2LT;lzEO+%1cLW`9td%`Znd12*&gM|)30pU7utpgZVS z_RhyX=dk=4YeeK4uA6J#VANXf;)muSBYkv_soa@V9I@JgtZ7ye@ zgyiymekW`C;h*)7?ii`sV4Niu2t+1*fwRE*UCwXiZ^^bwXV0*#V-?g0TQ6B;u2ISN zLe_%~FCVb=sE2>|RsY7;rMz=r`P$sbZM?4*9=B>on;c-_wTpMv5l^jVy{ZE~R@}J* zKCa52e>Gz3b$RL)Pk&Xpk!|#6bdGaAr{w*&J5DwB z%Oc;}uVClH_vGKpP6qj`VO_nLIbr~tDZ8n4S?vSY^_iM8f&=Xjw_^!8t--6P!9)y4 zIH^Ksb(YwBz?Y!wX7Z6wQH32APDSIBpLn-X_F2Decr9B;I{Hd*ZvyUE9{R0sIFVV8 z#m$Gm6U0FZeuHc#4_Z7LN-?mH^Mv40wK)0ne@f3wXvG z{PfUQ__+-H6gl|ufge9~6&=U^k2BwL_Ej`xz%kW<mvtVzXfL8`KMa4F z_xJ2S)BA7atOeEFaA*{gtVWHGmc9Pai}3V)9#~So(-50p#U4Is9~d^d<1rV;W*f%E z_?0g0bl$qlKT+aJ?++|Y)gBRio2k3DmRLj#n`ZmWHg8V%z#u*eIPd+V`>tyHUB$$o z-FInUn-?G2XP3#ZZwA2!ddnjBM)EcT8Jor4b;;pm;t-bB^U)33b11(-w*N4?QTx?9 z&=qPgAJ_IZd`6CH*^BG!IW+Z59-v-ZA-+YLKkxA5!v6z&KJI}>_`LbAz~_-H z`gF7875?0T&d^>-?T^eiIzxLRl{cd^%~VTCyqVV;!4LQH;)5QzGWqUfS@87x48AM& z$gXP1c;$&blBdbjjmT3NS@Hp^A6VO=iEM!UW91V|mSO|3U&xbkc8X}D*og89RMV%J zd38H-Rl%HBvS3;M2KlTttn*Jmw!LHfyk~5}`TIY&q|NJfR z{a6ORFY&;XiSJ)K@Ok$U|NjZ!fBtlj%n9G?KOnweB!|dbZ%6umC2?5s!dm9N@)?Xw z!_%GU{{Z}=y|VUR{+^mLscV*9Q%1a{wxh{)*FNbQ^tN5|C6Kk|OOC1e5;&Tz=8Nr9 z`CI$GaH?^eXS|uTtj8PXRt&ru`d)yt5u+t~od`a#3O1%5Qn#7M&(Ju(rGKIks}AN47h%z;`QkW-{&NW%;%~3R5d3 zh_9K0{7Nq^W3R%pv>E`xy$^b70CbWMQO`WHo*Dq9zMyJi9ea`SPi3FLb}R4bdUEr- zi3zG*DK!9~I}B8mK0X>OSS*pGaS*Ce;l5+$^?urEGDTVvE}U ze^T)_%`MpfzvonAnFm*yG=BYOr`zRcT^u@gdEH-nXuQqAp{rkB%;Mkd!@t>qerJ_2Bb24lhYx$W8|M$k*HnPsy&9 z@R3a{({KEN5s`MWQgvkH3llT$}4k#nB)RBWP^7)^Y0`$FQ; zI@c0EF?o>sseIICPCx6ZoZ++`Y(3S^JURzGrg|9L$u++YokYBOrQ*$BBQIyBa~>sg z*v-ZF6qHW?;&SN`7Rw6GvWT*OXT}6S*r!FRdf)q{?D3ni#WPqd zyp;2^8IR(CtlK}kA#d6KT{r*mIKJ5Y!}t+h)s6eRzWyk`bLPJQkI!DZdVl@PE#|&- zRtdPS<}BXH=(r;C73YyF5&W+e`z!C-=xy_6wbjpVGlG3Wv{8TSCNM|8khOTuYt{3` z{1%`6+07lTv-iN~+;IQ?=SM{i49+|0ufKU_?Qm<__4N1r#2@S*-KW*GkuGZ{7o(c^ zp!%K3`4Z~4Dx+VGaq(Dp4Ed(5MIO{d`YXNZ;r*RkHSXYqYZ&*O((mujdF8PT82XrJ zsE`_vTvBQe|k+FsckRJwbt?gNx z+N?8TJF$Ca9f7qeSLQdsqaDP674xqS*t*cflr7|+>v!!sWnz!|u63!7>;HD^Qg(i= zZF8QyiChPCm2|&y>D>IZ!@rZjEK#waZ#+)=pG=P3v)5 zi_<(u>u|Eo-rsH){1tCma1&diZ{&)@0%PeX?~PzTfQOd)7v5zJJm?=1Up#<$PGD zIV=4y|6ufg`}6jgpE(EmcjEi7W{8bDFLD*RM9RBy*49@Rk95}7vF|=?xaLci+1F4U zx$JH7|KOF>yeix;GJ$K}{>IW@vC|*%_BV@1j96$dXt$8l#r7>)&tKT2c8#zN4}{YKMdlN%Gb+p zo%;b`Op*^F7=J?E!K}im33KK7b`@h|Ln zy1#WZKUE%o z(+_^+b4oT!fVCR@2p^T;fqI%oHkf;c+Q83@BI{T`+UZO|;b^dzUmcjg1rKJ9V>b48 z>3`pMU=Cv)O`g++qF^g@NLb*p5WelpGw=-iuD-FQp4#rk*yyF?9c{->7o(fIjGbP( zx)?hRFC_%WA@P$3KMT$QKi8fE{|pxY1bY1OQJy{8Ui{4Vr{kx?2YyO9&lvnjpQvrX zXI-Jcb>Pm$+4&C6G-nhJ(`4SkVQn%G9&~KEbM0JksArC4;N=PrUViTIjT;ZJ<9$8r zac(|a0NAwmL%Bpj=%TggTy)7?^ym!iDSqL!yrQ-HYl!2$gpaFwr@8PpbJ|yP;P0+L z&fXT{gDuqZT*|yn{O-=j7_YJEnonweZ145VY3(LY#-4xXwbn~!sFB(-GSIr~-N_S2 z^GpgK6;A8`+!z$MUmnCas$w66{Mi!rK`3UT zwL;rIa&|f6`mbs9kNwbGPdW*`7imtiCm6fbiH=wk_8q$zyk*unvTM@>sr55u)vi;435O{EP6tYEgRo zP}?Z}ZhhGIs@li6@9vebeaMXYWS#xn^l@L&Ny)BkqHJLh9in^+jZ@>D$5>;;!vw4H zE40p2NUWiRI3|-!!}s2INCzB7Zj|Fy1T3Q*9qGmtN*K3zQt$gGV>`llb<@WPY@r+6gS#gk+`0DK#a{t){mghm3V)1K_}k1r zyl|g%{QYJY_!C~z@weG}xFk}{b9){Jf0p%BDc^I5-L-Jt?AcK6)QL}#$4(7=#w`B* zDQ!FX-Nn5Y?p13|3cSa_xz7ER-ka{h_d4{s!8gx8aS6FM&R%1ihaJ3ubJ4(@?}=`@ z`w?oXQA1PynXc(xj5eCj=&#$hx?k->n%i~ZV~*k((XbX8dg+Hfxnc>lldV`R+8N#H zYhA6Jh?FdxBmF$|`q48yp9d^`!->p#a>m~>ygsrg_T!CTk+UvYp8~B6uOsX7d$84s zDXbN3d~@NdjVE@m+TQQ}qdQp#9D`109q-ldKyYt2wxJu_P-5jZbf6>G$$vtBbfQO9 z4>vi|y6aK&!FF_18Tgxu9bL=s7WSOYnKx&W^5?sYcCYT{xfUyLc?-Tm3rT7z-b4>6 z_C1<<-z`?|Uin^A@WIdIf0=w67njcSnf-bFjTs)?ZT0ZF%kRS9i^!>WJ*~ak7gAih zgZH!_v?8x-o=r?8PCT`}x-5hbKVQ6-qUl-SXs@>Ge1FmdOM7)V6#KyNke?4cyZ=V; z3_nMBZp8+A>-QR813zO9ax9q;zsnbx1AW&J_v>UYBlGL6mCPsVu`k+x(1NW&9((+y zwhaHk{q69*n+Gmk|EH&W_}}E=uqX7l;Li02GS}Av_(DP8+W-vJz*P!d#Es_j{?lmI z6X!)wBPR=h)94GArh8fb+Z@QfT;jC5iPNf$-eEuA-+rDtH@URgO`LWNaay&B zQ~#x&GYZ{WI6FCWMRnG;1Cy`FUjI?8YQ@rk>1d4D@kZvrk3hS{__7c1S8E^h4c&aL zs#oXMah#0K*@>>fpWA1je`24VQvG?m{V{%N+-JX- z?HSr0LjP+nJel?Ff*p%jC#`(@+!XYy>`?dR_&~=N9k6SK=C@vhotC|D$E3P?-IueL zgH70I#}+ob^T|iB`?B%tO>7~rbuc+Ui{VxDO6dDs7mdm;aOs$Da9o6c_!##_6T9vr zc1;@-yPiwzI+xgWI$iphXKK;u@cqzSV%KwtT_3c9CU$MpuCGmB<_V4VJ14AzjyCV) z+Rr2VE4kM~?0PA&YiMVlx7*~|&!az=(Pk;J>!rl5)7#i^grU_pX_G^2a|*FdwJ9UM zZNo9Z^s|$=5p$NUh4^}kU$`+neRpDdn^Q48=u0enr6;Dh(!}(*{&VswG*|E7d+a9s zgz0>4I)|9v^bZ!(vp!2q4}Pv-zU9I^m-zer_<4d^XRkA-+N?R%MtlRsnFRCPfbI7? z`$G)eW`79xR{*=>#rB@HoK}rP&nX^%=mtL5hZ9#5o8Cig`Y^HS0?uOZCN`ZUHa*t& zfQd~XzQG=c_Eu@1i0amh*Sx=}fkB)}`>gU>e?)9DWy>l8cFr+6Nxo=1IGoE~yBNAV zJ_BAx=bzS={*BIbpUwDf%bCgb*jK!xUnKWU6Q@LOooluIB0jDOhpz2*^?xV+hVn|J ze{X;4bUUEfk#bDFPYlwv2M@Al=Q{eHe#!>>?InTfIYY5fx4v&ocX=|8rfE=!m7;*S=PtMUH8 z5vln_lKSAI^LP9s`*WTZPj&Ti@;3US8(2dzc^lYRWXHr$)@pr%yp88*G7kVcM&e)2PN;mH~JDCO9b_6%COz#pbI07)e!S1ttM)v} z!;71X*;BjqPad5)#CleAEph2OB>e2kUg$~9TIks`U(|YHvc?Jp#)T6jsIMrWxnqG9 zYUVuYAlJI^otB~-lQn))C8&Y0<71Id=7WkQbs{&K4=OJdUpG_&KZqvpAY)a^9bRCs zG2ky=S#+}Ip%`u6L0^XhVRDF_GY%bJ`=>|WJ>B>2i{I?zbNu1Sbe{c1FXPM1pDNSb z8F)uAma7;avAR%un-vK|*MYJ{#Km^8m$kljg7HJj;2Y&}6)~1L^JRFz&`EoYs?dEU z@P+iqD4uU7H^b0~{-me9-#_ipM|Al-xy{g9^*nQcwZ!cl* zCjO?0tuT)uuPxDm4=P;-U%aV3k{fQY&!3vj^Rszg^Dcbnp>xQoYB}GQ%{e?Lo32{h zGmw!xuwAZ<6d@ySUR754#2+|U`TQsFBD)}-*ZUO5nuDC8*RK=|bCDgvAURcx)rBE> z<5}d?1A{9!lGBee&N4?%UAyv02ZoD<1KwH2`}E#hkXg+u)~94vHO>94uFNXFy%bzZ zZc{l`&NvPs<8fkJ-OK?x=+Epw1?SM}?JFWwrWwKBoPDwc{d>^Nj8( z?@;HWmNH&Huml}AR4ZT>eFe}p;$c6!=J-!eHI_n~;984)zRaCRBG1q)Sj69w@=&nI z7b*cZU|A_!3U6K!0FI*Js2z%VS*`!WcSC!4)9k~gW`&u{>Z}D|tA-!J z#ZzAXhKDyh{@~_f?ChdH8XwWU#(te)k^8t-==Bj5S3#~NUtL=~x`Eh=*7(L{k+)+N zPQDcNTfFD3_<(6<5&i%^w&r|qGZ&BF01mmXal7_tGGmrKDm7y*wDSg`{W@pN73hsh z#0icKLt8mU4*_HiQi@AHY~I9_D;R{Wvf-U;s`oAf9Hd%yLTv$!a6#BH0?Q$HOLuO^~6YmL#(Y@Pwz&b+qR}> zP5s-Sg}32V>6ZHb)>G0cOGlwo&`Cz86rQG2;K$-fU-;3ZQ}%gm{$^wI>C@3EDI80l zv)TM>T)tvXt#y6DBc0NfMWl6dS>o=t7l$9Rae;N#4ogx@2({xI(b*uw}^u-zV z3c6Ww0Y|S8i(#K7dgV^=*oBOx^olc| zOVzV(!0%J6)ytQj4e!l?2iH<#a3(yd_5V5O1)b@-$Fex5F7GIEG;JKb8Rc^%P(bYW z!R6hwSL~yMn80|;+B=!K&Zs9ISlz;RtsUl^TDp9lX_I$!Exf1k<_T8dRNs;x*`Q9w z-Hpwk0vyVxoq~P=uZiK{7rk$2v=|z>H6)Df89Bt{rQo00G@>t;PrNh=(nq;NqaBRb z=#&aO#$L&o70VV}s#j5J+wqmz?D!KI&wBgW!&wO?CeB`upzq`}Q^4WX;P4v8lh2-s z?ab>Avu1W3?^wn@5$RHV`zuRnGn%&BSsN@MMsIWhzYp?zJo8ZEH%H5udsfgc%=JoW zLXIUm+xQzja5}nrRM?6v%Yf58EB#r{$KkeJwbGu*)IbfCPNd=FBdbv)SOs(G0LB4v3z@Tz`^tS3q8dD zqv8K%_+R$Htv`fKHS0e*V^B751b9-Oc|HD^nf?%=V>ET@f$Kj8{`Fihk4-Xu%2s}xu{gfFc;*1` zzUIK_!WT93rJnsLTJu#tbp<|GwKX}S9Aw^U_W$d806r??qx{cH@p-D8bx8S2vRjgM z>2vAgvD{yau8`kY1s~4Df6%?ze4oYlLdEZmZna~0Z(Q8VeifIWoUx?E(KP?apu>xd zQFA@5!H4BLG7imOEYCl8{F(D9&86=68a^HKGSNB)Zg1sxdtb?q-_-ME9T&gMjw{JO z5uX&|=fqeW^5T3BJU<5B&*QV(%6qBa()>B6bp|;72r?jfUW{*2j2e9Kp}`&UZ~dJoZ-eDb;3@zo&c<*=H1mz1P9J{^Rm9}DSDd*F8Qd4#zB`vZrk=6hW?)9-Zpx(U9*|5QyN2>^J#O>xbZfq37d_1AgB(i}eoG8qxQv%i+HX++$p`;F<7X; zXB{7$nwm$n_tNJv`ZIhUu-o-Nr~dmz9?$3>Kk*#k>Kj>?@!ZaHdah4oRmO9+owm<2 zkRR81sZ*c88HaoS^m(wMOr2RU{WPndFnnVuJw<~w=_*CQ&G8-F#EFiP(l38?g zC$ga$pfUQ3=PlgQ-fTr~q`tap---4cu-CG!ij6DIJOCZ0d36`OafrEb47!W|#}O;q zjX#VY-+P!?dH$&fmbY-;rF;kJKh==a{(tEfy9QVge>lh4`(v-Q{E2)V@vp1bOuQ=t zcbA+2cU!=n)OJe00FyUf8)M9hft915D+c0c3h&@z$}q+QZmu4|n842dT|Kz=?c||LE65e-Y(n)Ukl6C zXMklCunQj>fkE+kt#!>HUhuV3C9seQ*j<2VEl!d@1Us?3hN3P(2Du*W>1{N=2K{;`LEvZ&dGXmpXip82Y;w+DL|%FlX-I_p`udWVp@NW6T|~=bwla zoB9L8A~O%0`DEI)FLTYdcUJ2i&{gzw^P1?nq z^v(rabpOllwI{ju46^={aALZ94clhtq5E53hhuY<2*Ycm~4EGdhD@AU|8YA z5^Fj86aIP^J-p!FiIJIo!%<(p6^*ZO$GFgpG1eGP?EbS;%X$^hj+8DBMiSSt4@$A1 zs!@@#SK8pmSB2959;)%>0kvli&g4<2klDET1lRfnDn% zkds-FmL|;4A%}#`|abb$LVcp=|d1?;U>e+6UM7`D&*9HuII9`e0gTV@z9R z|MtL#%G0*zEH(`ctaX+RKlV8V19qt}VA1~ZeE7lFI&~~Eqqzq1dD>h9IToG_?L2dhFm!X~ z8v8WYSkm{s#&<*H{4m$}-Ba)_?~|_;c4`Kc)80GR$b9~*?(@!EqmQ=_a?%9D+4`92 z_Q71^6I**=sB-2S?(^!vs+I2lX*bU(I zCTz}hcfK($(wyteBibDQi)Y+?^$woVxn1r&WfF5jua0{Y-|d{tA2;?OjX?TS|r z_h)_)>%d2#j&&`$VTbWG$n_u|7~Z1TU5qw6*(a~qt@eWSq1H|Ojx^gDEat69HzD+fOEe|tJA8n8Du2TMv<{3Yq68f_ExN|S>GimgP-iJ4()0;hQDczPvUo#)- z(WkcTj)|np?ij^7_7xWmjm+xvUL(3~W!0UPc5OaKw~EL1^3Ke9j@M@E-x{0VKfg`? zRYN1!x&7aLdjC(JYyaVl{`qbCUpqANF}MGFPw&6!T>G!h=%3%F|JcyTMQ;BKPVc`i zOaBk{m3`^iuhmh3ZJCNanTUK`g?+)UXiZpq#H)x&`QW2be2U>A#r@W?=2CIr%#+o@ ziq`6UK7;ra@d@*()$bjzX-^_Ge)d)m_cbuDFubgJ;_Q*swqmY1`$T0!J>NBd-`=nO z=r0xHKUJ}+9l4#s?^*o5jOVm2A-OG*-$AVTch?~2$hcrqJs;&=XpLO8h;-ActUqZWL^1j-U_feLAuUF>WdDd+FW?P9pK27;-Jh4m9KK_ zF%tt;o`Kc+kN4T{(HzXkN1bgOe#LXLZE12c1YD!1#JeM*O)L++)EA#?Ahu@+V?qA@ z-Q$0_`+sg_&Ck34N9S;~&tOb9qjTre=PmSEEuDa@g6BN&(+yo;Fm%jowR{d8!5O$E zXSA?Yb0y7Z=a36zS+x&|PFhc>l5Yb)T+VOFT{Se)-`NJo_8N@zj6GI6&LsUx%w=e- zn(^Gic;+)6@T|OrS*+d5SFuJaFJ?sKHfY#2o!nJ?-*$Y7{r|#!{1?|YzIKOx(+{{+ z?Vy*;edjmtS$$`+QR}N48OvPHST-=0*%@OAbN=N7!38XFU}?V@xMqYCmtgaEvVTeO zS{JTL;4-m8-f{lDz<@l&82i6}1^V*5)@@naZjI58=A`1yZYNHyxn`~6xA;^BZuuBeXm1@0NBbxzC= z+G?Mi@|op3XVNMgKe{=+_qJx|N#*o@Ig36&R$-8#ovPDq0GI2vxDHZPIy+ei;~TOP;!B6_`qn|c#WO2$8!G)@I#w;4gJUe%_L-p(hN_(ymRi2G7TVMRVPwx{vI-_kW`M@c*m8rTEN7WTIy-MxVg3!<7SM zT6sph-L^&G8GIi`9=g%nE`9Zk<|}sYavuDh->N>;e+%u}FU@F+jI8B;4*j6Jp3=Nm zx(pvo`|z*yJG!hLUDi(imU6GS{*+`v?Z}BV?R-wVIPKOsdL#|U$iF-8MH)A{NO*al z@1l8X?aZO!X*9~?`M&VlKnvXtj}L>#NA&o|-;4GxYx0k?gmLU+Hh1@@T^vY+wGEo0XWez5D!*!9Z$s!!GjD_iUH`3&My#3#(B zR=;<=X6gZ1!M%0E11Y=i+VpB{dNnqEmh3pPY{ztnVW5X*PGPLVCp>0iD9EGWGBFhB ze`NZ5jXMj_1<-aju+4#H#86*t0jB!<=A03xL--oIfT?~s@h!$}@&wQ)T6>e+Z^Y*7 z{u*e8-k-LezemXPI0QYB{ZKcxY}QaSp_3f&UD$Wm9_+Zf7hl7~TirEE+t--+opfIV z-(sH|lap^DzMExy3&ka^)&#i_($O`%Zx&;n0Zi@8v1T3D`Iq<=!UKF(Wu1IR^8Ibu z2L8s;Ws(QOrvXRbBd=+{p}+Wc137rv{15pa?>%}t@3H?ptG_-TTzS`PYpFG7)eer_ zC;Y(A?(ci_8$Q=NeS>2AeavGDncEbe^6~NW2}Iqtx2i4jP^BD#+K)u$@Y}_ikA16g z?2Vp}58*HPQ+*J{nOOfAYWRoykAg!VIF;WdUB7|f{xH93yN>TRPHbOHW8T4-_j<;d zinnCs6Ih(DW?2_T!oY-&y}5YDP%~F^;akict%?0aRSSY9w`2+5%XgHR9ELjHtMOMt z|N0$c@pTVA08d>(JYt^{Q(<0te&mw8_Zrp5Oni1?EBmU6OBCr$z?d&GOX~r|!Ks1o z#1AZEBQ%B;jA6es1{eNYv(jf^WRP&2qR+rcKmB&-6R)c>IUMmCXFUcTDEt~)4RvWc zFp?x!sfSMEBk%It#lyMM=~EeW`h=H51T$0ME(m{41H>Q zq0hY@`mD9-GvXZS^L(yDALeX^KE$02eRlXFth>Bf9-AC_0Uy%vSX&Q$#%7^UWN$tTz|bU1;L3=6l`ABtGl5)&0OAKk?dt;s*N`v|VnV zH{a_nH_rzK1-YLS&4e%c$m#hs+3`ChQtRS3+zWp1_TZP;k@Q*{xfkcc|980fWzKEz zOKi~Kcdf(!MgGWFvf%d>;Lqg$f~@@CKXN1R_waxJ$fxz&<^LL+|K$TnzZ5R?Il8HT zq+IP%x~U}cDSm%Yo?i?eyt-)-zg^w*4ZdgUrvG4Ez3rdKPM<-M;lO41-|B@vcY5ek zWz*;8bEHp>OCMq`hCal84Si}I{%0LOKMQ?s$wHrNO+ADj`L%68apZ6%XGK!;SNJc} zStBP08a->)fQVCR&N&kwMYwm*)YG*p{D>Uv0J&o;%i$OC-Dt+;_Pd{c<9%z)IBt4fuE{h^knXB$rL}NY(b3&*D)K{mP==kekcS# znf0&jcz;hk#`sCVr#MUpzPa|!%h#^YE=JxL3(N=Dn#o{SLjgv?uVZ2)4KgP8TU-;gBUx^{_)}+tn*--q0>II zW)J>TzONJeP=4+P-dTO$>@&uR4&%E8e2NnVQ~qQPYYU$yhS%Zvq`S`Ile+$&*C$mU z{prIU!)F-7PG<~0owM`6xU-I-1YfqASXIf13gg!*Ph~c~t^D|xkH{1f?fNAN8=*%N?29#U*)G3}L;m(O+WnJ52(+L`z_h4`v@!BqXH zb>x9-A8H5wp5{$h|-zVqHL<_H^3)i2jPX))`unwM!!_Gz`nw_VM= zwlculD|4lH@DcUh#0-E;7}=bfJguRrwot``5~9~}z}Gwa(gmgv013)9xO4^0jv zVq*i$7Xsu-1rnVT1LRl+-~p}^f3fqR@>|!lpFEdXm^l~i6@Q{*kDoToR~ffrGMqJ- zSWK+0>(YwEdUQuKbMn}Pio`zR4LixNkNwV{IMJMwmIrnO9Gg6_iM~Yg4S(X@x?z!; z8Y|jGyDokw-|{C$qx-x5;!hl+uU+c1nsZ5CDJRb$oakVVvv4#0Gk;gkhW1I@v8?cx z3&CYd-vlm9trOcg&Hnol;?-t9H+uuv)BPIzz>ktk_F6IWX!chG^7eLH1+Cqz~_X@ z)HB8aW8A|Sk!9sgRA`LoV#RG0vvtR4)}fF^@0ea-4BC(0$5(LlbzmRI{tw1v#_)Qe z5BYBFbNBUW&G%^x`HUeieGGg3W^Q&Oa9-LtzUhvm4VZ@n67Mz-H?%rLyF>g=4hyi~ zyLSJf5rITEyb#0o#GzSx-EeX_D&VUM_^TrE->frAPn_uJpVt3exBtoXpGW@{PXDw! z#P4KZr~iRY|L6qMe+m8XEl*IV;$iW~Yv5=qIxL3XiXF6Zs+ys3+Qoq7SF9_m-A=AW z9#1yD1FTomJ}o|VuspGY=XVloi2Vj$r~NGP9(}|QlqcHgL)VlGUP~Vx^zn@%E25Z$ ziT(br+=>0F2A^`2bC}QPvfo~Lgn6w+#Mx&eOXfLrmG<_;e*?XZjr18kXYQeks(D8h zuwVn8I?+~;hO-M@oc#p(c^BU5aCnP$UHm2=&z7G6vJJc&=qqiUZNnm`fFC+lK23<`%1{+D%E z8Q;yvsMbe9={^lSclH(;`(Vg#okV*O`Q8iE-UQV!Xer|hkk5BE_U($=hYu= z6|1R(pS*4H6ZScIPMeEs2S&yo?AareX#*b4g0r7^Y=ApIe$dqS?a5!4T^$1qCaw*B z4x`)hF3dCMPaL*#_ZED}ij04+W>x;%*EZzyeNDdyjy5odDtNDgx?>L7KTkf0{!h;yR2Qv_CR0b3**zY^V~FK!o;reWe#B*S=$&xoi9=rg z>KfW!N89n}WVP2BG^$r;*XBTf@Vn->no|fTIjt{{8zlYNn@mZL24>+2SB@5Xc*B*S zV{LLJFCbkeSq-^n}u$ZPHX&b#TKc$e1i z;&tf8iXp}?lTQ+0t?(W0$ybd{E;lmWEd5xWt{-1@-}N~9aR%=S*zfA1T^GNT)sB9= zh4JtX`4?&WvE#hR)*ofJy(Nx+k#!BNZAi-Bux+)o4w`XYv2FK#hS!|?{~H@##6G#$ zRSxbe(*3P(yZD#@K5haZ&F9%RoOXx!ot*BsZTQX58T`h;hrxZ_d6AA)<%!P5@V`Z-^7`+fvJXDWSHIDOOZ5WkbxJAK~(u9sn7(S_II6KBPH$$61n;hpn6 zV-vBz&_?z*eibm_zq`L<6U%|`yvT2!$hcN9B=VZtabJ6~<`^DTygR%_I!X5FOmuVS zgD-|9cMD96pjfeo!=uc6(4}b!bK7cS5OzHQ$9_6ATykI4N#(;##YdD6`5f~(blPhc zzGOGLwmsnAix1gajxSkk`Ii@xTP$Bv^F7%d7lubOVVGBP&M>rtH)FTJ+ZP|xnjEt0 z*hJw_zJfxeM{22UkiSB(Vb zRV&@v4O%M-5Qos*%B%_SyIDCE*rSdLVj|#RDLm2wj~rru=<}=()$@G=Ye7qy+pE@c z{fQ|i4`qqgtiYdb3+y$ktqvUSda35(sWq#q;lw9D_g-T>4_|?IsZO5k?QZ&4yWRZ) z4c&ZC*l%K` z_FdLpJ5|@1cht~d0pGP&MElSo>}N~q?$rlb%hEX=qlq~PHu*6z?4;T$J}?G;n5ld> zu4(V9{$|RO>gq7J+sYcn=5N$hCRV?l+!_wBE)J|}|0uRbeY!eMw6pb`?GxRPjA*Y8 zK7^U0970x*86zW_r>Krqt}nNBw~>+Dl#FQqisBd-fy*-9C)}9a5Uv$F<5>MeY{X>d zPTV*0i7()uH*eR+R$hkmZ*FT$@ESke$*l%vFPzdBab)AS@C~$w4^0mG%3^C!WXFH^ z?wehbMFx7yXM7Nu_pYCr^M#$7#ooP-`5GT_4Ex*!dtRYAg>n&Wf5paaZ~lSnbIVW2 z$pWA2C%FFhxt{+SHTlmy^@+^+!{~3#%Psg=YxHZu^Vwh&TnE?nqC24bV1Lg!*2SLl znpLyj^=C96u=D$R;>qTGOvNGa7mW@?z7(ek;E#LpS>?jmX0O-uhDX8qRBvz+`_cKX z23Gu8oh@DFIUn+%1FIKa8-MBW>U?YR6%78Wf%A;80Z$|Yo+BABoaub)0>ghj`If@h zKG|R5UCLqCJWBH^Z+?KGWnFeW2|ssaz|%pWoi0qxHeP%l8g_Bdov+yVNQXz~S^FG( zxH>Tt2EF$N=e_c!4Go-ko#{MlTmI7VKS=VI!7rW6U-FncdU?jxAqJMV?D+87NWnNJ z8*YgGDu+t4r~T|+{@Lj{clUSP6YuDsi?0`r{H4Rc68eePgAUH>fxGrB{4Lm$YfqOy z$(I+NG7sId?N4|yi$2?zMV}qQ&KDG&j!)?{<@hL8ayFge=F7xBoPHY3$g5#U4BC)&rNnVB_bn zvo}vV@BSe6#+KJ~daOi0cA-zQ*_=*?r=-JOo^tbv&(-d@bF*c=;L5c^S3vcUI2?N0%7sMGvu_BVD{fM4+#zMs~zq`##TUw3rkb;arUwd*Yx zw1)o*J9I>IOn7rbmhoh>MMu!d`&_&`dVlddJ!fLS%Dr@ar|ZZ6tv&Lc0nWe99;M6E zO5|O>Nt8oa*%UQ1`%WP!H~A9571 zDkhSGpE%ttJ|6`BJ3a7ctMB9Px4xAnONT6?UMP4EUEtpg}_qdnC2-sWm@Iko#gG?W@T@8?~qeE(!}0Bw-RM&?m# zS!1XUm^MRcQ}kZmmF2v{to7IAMa`KxHGOH{FKX`>$mjWjXmYyUzc1`#EzuVV-DIE7 zXZW&>+UvmB&h?4YsjI~IGTvkEm2g%B*FUQ3o5G2kso|vSCWoLVCmQ3v&cC{ATC#C+ zEjhl#97{GYS=~un)sk8ZA1VHzxQzBjj6haY*Ed-ch{p8ZI`XOYEU_Nhu@0V_y^u4p ziTAWvUq4W9<+RRTXoYN^wfC#rK6Q>KPHnZWBkzd##!AIEeA;8bGTH#u#VRoeZ~1|1W5 z`HM;A*4oeVTm9e4v)UJG>hm!#vG>*U-fCZD6z$9Uuuf|Dje0ds{>Sgw^E`8fvv%8N zMQZ6od-f+Uq%H_`mPCtcXi+_K>H&>IbFmKca%Nk><=UG;OfJ!4l`I#HN)@L>*XZ78 z{-&;z>k>q#nCtvaT_@HVl)S1ve^b}VXW{%2`#OJ{>7RXettI4`lng41jvgM4cEg`t z!>wos`J65hQ0ho%yy-6#*TfWC%2FI`kTe~^)<0=a>nfX z8KQYF&$jdIOk`a7W@U=ae{b?xpN$O(Z#hiPjNr?R>xi$*Jbc|gknvzgK8?*a6K&_e zl>N={FXT_iuTXuqtN4rp56bz{yDkS8%HxpUQ9aPb{9S?$X&+|apWxo-n%c|%Rc_d5 z;gIKS+@;Sa1@HMDcu%W;XY50de~=YE=ly-%_j}-zoi;EIv0?PPZCn_^jp_}Z`hqhy z#%o|_e1iSYTt5@+hrZXNLo&}tmp^{%+2Hr!?{_W?8So1p!Fa&E@50WtLfz&9KLcyU15?`Jn{Zw7*9=XsoCv$u!L`;{TsXDIbFl;KoxtkWib^6g9o(C#_V{YE zd0uqWM>&ng?s0t<&!nys%XhDT*?S${bFY6<_~3aPAE(RC)gF9o_sF>9`&eC$Sq~pi zPU4BWytMUj@)HvAcfmsv8EthLd!bV_+lNv@-8?@vIfH$Ca>eK znEhQPd68OjRbvNbqp&qjexdLjukab4@k=`q;={1O1kecjw5U@+oe=5k6^SEw2Gu zHH8x^`Q5&z$4A3wio|*5IsB^*uFpb_4R1Dco#%e4>pUkp?BxCuhsR^p{>W4AJ$TzZ z%U|#QwUoaK9J&^EuhEzMzINVom3xhMyVw5N z>CdKN(Dw84;N8C9SFsalwKRiP|KZFpk2&;-{(pczL5;&hpK%&1cwPWaQ?vj#qR~Hq z)0BA@RLcSPrLWPXC{rNWY8#n!|5~-*4eiV|4~^b&uX$+nOQ*jx z(P(4_jlS#ARdPveePzqji>&khU(3^XH6{p%|nxwPJd^j$uq0dbzEkBWLJJvv-F-Q5`FsXVe&EQ7EgyD$QhSfVd8zuO@dem}do%1tn$794Azu3J zt8HIdHs-i{ow1p==;}Xm&8zc&`B{fHJl|d&PQ1wP6#hjs*<$r`uWgUQ*d9}xfc~ZT ze@1)V3-b=uT9ppe^@Hk{>qh_0=lnXior}|3i0?XWY@9mh$2s;vw&DH%=;86lJvztW zv%)@)L;jKXJPuQz;0ExC?R56Yp%acxT6n)y9zr$w8-r3F>w?2KAji&#IMr*BjGga!Re12oGQlX z#sj7}v49O$P%$r)x2(DS6ekv7t~1{)bz%WJn?Q4ZbDdZ~sS^vB;=}^Xbz%WJPsa4a z-&A|%`{K1y)~L)q{-*A+Kc$qMBXgay&R7G`)?8<- zsq2h20By~6#=49C74KQAkkhVE^%B5I@a0W`POxJCC_VnVuXxeOYtQz@9bj|rqo2I~ zL7sQ~jCaI)-m$Ovzx(vgf6hDH7||i&t%^ ze`sHZ@U@OOrpxcHE$-x9lUa9&iRQ?K)*Q4Z@t*Pp;a}bFYGZBT%|#D&wUIwMxh&K& zH2hH4WM8Po`orIJKVaKRmnL@!Up?}=ulQG2^o}p**=%v!1C6Ka zj^{GQZ?Ctf$3v4zAMpae(O*V4RBJx&ZyhH5OAh&ckLbd8o7cT-C#UPvC%kZY-hZsk zsV_`@wi9jX>s`cr5+^#+^Yoj^4O9F^Hqx~uSyE@t*HEeY$H-Nn&~0f0G0M=FFQzuDUPs{C%a=&|$rwGeB=+ z9cd{waVGZ*9<62`Gp1i~?^Hg@U2i$HZ27^F*0F2ISHG6$<=2%LwXLp1UhG_1`;1)K z9@ejpt!E!|&Z(;pSD1BDy{c-IdQZ@`d;27u&hax$L2Np1qkZS_`pq8kSODGl%xVgVut# z2g{GH=Y9IU^tPf&T7%WtTP*+Ho@?PPIaZ)SwIkk!CYd;V!oi{8qCami$qVmHYBovYg)&6nm)uI zv1L|5^`fQo2aErf!M6?gBp&{gJ&!^|@BZp!(pl4V*3t~GIr1RB|CqyT4`O%y@Y)P` z?E!Rd>Z}H5oy_&|>qk}|*f6hT5;`*?z4AKzqdn|VXjs8M_@L37zGKfpyZV0UiViEH z_Uvnnxc559DI5V!#6$h~8>h{vd21(C6cHC5S-GlwP;l=k&c2&9GQ3LrC`!0DYtWJg zU89E3u?F}tw(RO?`-&;}C6&=bYbyBU^Syv;eWI~teeGH&t}elL#o@7TbAfBC9|$6s!0KmN+1{!N<~t=_-+2b+%HSpAFR zH~NnrANOT}{{1?xX&p4Yx6lN9e1IaWwk^+s66xw;iR;XBPEqdVJA55Xi(Fuz;hk&bc2V{{+w-seIh)j9DPw)!%HLLQ_1VVWht*?&>F~k+ms8jSqC{Z}qk7Z>_WZ%gaq$f2(S}C)=!u?3sM3)8qsG*IM`0d~{a$ zHGG8Eaz4yqHtn);4YUr^a7l1sMOR<<&a7$}|27>_?}$PF)Sp_$#cO<)uEg=ejd~ ztq*H&Q3vA>FfZ?5{Mvs6tc-sYxH|LrRcpN(8LvaetC8_$WPCPq|2*UAVm!|?p640Q zMtJNI#{CH6p31nVGVa6h5_@AdNmm@qxDvwhDUuv8g^SlH`QDH zw&nT;AkTyB{-IN)FStqX%ZK;$o^SD#l@IYp z^VC)Q1NT3Eyt?Ft<0W^;41cuzqH%xA`|FQS`Nqq~m;OEhfB2go!G;{3_t5@F2R(ND z@I7tEU+}$iykL>Psn4S4nkK{+?{8T3=<)fVeD3((+7rib=NdX>6a2BQ(+X~557z42 zXnVT7>GOf@&6CjjSLo&Qu`lRA^!fRlj`#|;jq&Gho9z!8KDiX$yldgWrYHGqg)ZkW z8rXCJ^t_jkbol}QkZnA>?F4YmVq6!%r@zE*-AlW6%imD$^Ea&L)9o+Vw9)Ce+!}27 z@^$p*XRtG$!_Huzj19aAn7)9GnU0Nl0+_n3VVgEG_EO-P<@cNM%f8%&y?Bz(Q`nAS z*q7mq1Wnh6{M-V^uvWP|wR@(DClU~}%r=4e0Pqv+r9)&=i$ z^OxT#oeS;IpJSKLLNB&^bZ$Gc)#hIJ$W}W#H{f&HJF>;RKH*2_Dn{f-=eDDB{peie z71R3gT`1^av}GJbAK53FW~<9+#kyQAq~o*Djqe6`vbW@fcyQq-;eu!x!Cz2BEG<<{9x8de2LhCvcxl|_`a-+IYK#e10$7=2q>O zGyfmR+{X$wbulMynYVsYoG~g#RCy63DnA@!Tza;h>vK;U91#=Ajok8Q)>MdV&&nsK zi9StUDeV-GeVsYBVkH%)${VUrm945_F4)YTi!bobQT@uItT&i782OZ)jeWpx-{>e} z*X_4ZXZTy?(b9+QHJbK;{iB`321G}da*uVoQT?Xyteq3pzG5JB8WbHxth*gt8aTmq z4mGMw9w;zg0F3VSq+sX1U?1eUp731nPK8rAYXfJBPr#RU>^#uV&fzd~)&*OhR{oOn z{YkzHpKfeSGBE&|aL*06%83O?pY&W|iVM$AI> zX=^8)CVy`|lp%k0$R%B-;5X7Nz{D*ez4I zJ|)p!Gle!&xE|iJ#?AMhKP3^niD!~SiQAnYO+I7C;NvAZCMRlLKDq76_pUjQ`2CP* zvKgQJrYZKCGd!%ksqfMzM&4AwXAS+CbinkS#G7>&kUM;Fr0|=IA1(CzjuK~^7U%sj zu3w`#Jn$&4)1MmpZ&PpLM2VFqyAvGQjR9{wuxLxbv>R|*yJELpVVH2fHIx{}tF_dD zX{XN$Vj0yV!w1@^Gucr$ATpcZ?DaX&`F`@_;sae{t}#??^&P#I2E+H@0qKPk&3S3p z|HHYSyp%X&U3z_#749>{vYI?K%f974^Oni^T{)XI&!yx9FDtTTx4UFmv}?rhXgzY< ziT-2#V&!b|f|s%;w9Ls1?rOR)+TDDS-G*GZtZhb&jCPlN$Zo^Ch=)tUZUMqPCsrN z>g()nAs>5#72I1pvTRi$G1K+LQSkv9I-&W)Ljw(OXW;ke4o=K_;n8;PKPBDZyxYXB z#Jjw&Fynnoc^CQJ4eq<}GtT&~<}B~}nCD%c(0?go-OgCQMLcckpOdMvT6*{NDP}FH z1K8}g&68ByVmELQAK1HAV@B^RA)ePUaM6~b`GKYrH|HeY&fuM84ji2~Pf66HYdhhg z)c9#T3+LqoCE9V3>Or7WO)#NdB(hj@dVD4cemc>XpFZ9~{H-BAvwrdv@5x;2 z_!oD)1L3U>yG_!;Al zIRihxR@)5xjBwj#!Ozev_(|~&IO-CP#5)d-UiaYW=vy{_7~Y|smv_G6#Sby~6z^og z&ykfqvg5^%)+g-Tte*8b?WJg^{;KvZWZI6=>{}UI2&(PPW3z)RiO>27RPH)q}3c_P%5VI5KXbMw)WoyeWZ31^MK)Yh$D9O~R&8`4_c zCCFO&$f>JX2Y9HQ_bX>WYmooQb4CVP|I$3i_3hfL1=ojL|J{Sj_UhV@n@?oqvBJ)G zd(rGs8IsC(J5il3Gb_lMGrER+Y33Z8?^(s1quNTmozX7ov{Q~+IdhJ7+Pl7>){3U$ zN7?$q&Lb0i{{no!Pw596o(Ihu^xz(NI?~~p@4|DZ2cEluC!^i(TzKww;Gw;AqVbQw zHU2`Rka@>#tU<+~9lq_p^4d>DI+*V;XKB*9lIZhqItz#AbY6skzs<>mLmuopgxYgw zwZ7}{ztI8EjPqlsX+N^Y`Eka%hwt*O_0RRMU*xPKZ~jcthg7F(RAejrSjDe1@t252 zFsCVt;txcFLw(U={3##&d=_9QR%rcz+WqbD z{E|NWW=+36$lpCyXjDGe_wxG{`aEET$~d1e{u{pcUAQIwJL(`GRJT_48%Jl0Z2_(ElU_+7~FX60ttXWw>BNj9E_yJa5S71_9Jc5!DFMsD=rE{?n# z+Z9$H9FZyyFvu;@~?D zuHz1_4W7YqTsRhf!L9HbcX0|ng-hX4I5hYJcfy-+X7B~BGV#=yZA_~?W2&{s^bhWs z;M-irBwn1wK1%7Q4_9WvOM|D6u-(Ts^kM4;TaQU*Zdq}vk*66C9d>(h7 zHFfn_gZ)V4&_~{FB#yPRm>O_q&8fs*bMn$#dzuxiB6o7AKTK?b-{ai(x7qO`SC0yg zDZt^*k(DFhm0vqwrYGM_HAXA&byVNGG7n!E9npvPbOFbD%i3Gar;D0?Ij5E`KQtjs z9hjU3?eW*Xzny+-tMX}pl7$@c^AGYH(TS*aUP}s-~KA?FGiGetynh*(-OvCdY~~AO23ynB~9j z^5`z__@f!|xwV|LX@#jvT^-)C3VlCLP1Ivy$#oj$l_O5#CyOLV0e zld=FjR>eDW(Q9hZ^Wi=E^GG~%&FU)h4tl>2085m`H?=W*(0*pU4LlDy^Up`rvpK2eg*Mc8OSH$YA(3S1Xr3j=?3QG;A)q_Rc6gW2UqU1 zw+*f`YlN#^4zBc0$CczHqde{JJ;-NG)ZX3?_dq*N+m(B|^Ku&pg}_jpWzCN|durFQ zSBG`)gm5hLVfL|CUew&kfuF%|>`Scv6^vEDh+pcO0AsY`nU`4cSJz`BWrDxHd%&i9 zOMr{~(=Vs{tgBj)Yi1oRbxS5)eF)hE4=bKkG^ChY?Ozh5Z?+1T$Icv=THEhO29#Eu z8*ZIW8Ml&GMC;0}i^H)pe|Tp8@m1z|bW}JF9%jO$hBn!2p7X2GC@-wq z-N9ZDozP9ki8YVP&+5gYin)viDpc z6#0|WH=;@94)ZY=rM$+{uSH*N(4qFcyX@MN#1;L|@HFEM{GF$v$E2}g82pXQse3$m ze30$?mlXeo?6r9*@<;gsuOL5PC^M9}_5PEm$en4Fdjz>-a;-JlIfd2{uO(mVaKDv! z&yh*4yv<69PmV&{G3dM%xsc8ro@*z`hpxQSYsGiYc&f2A&bUyubv$~$E%$9&C<>eP z|CaSNdE>Bv0ZpPyxD-R3y(&EiNtmYNc9K5BSq^DKV4-i90? zN7m+<{Fr;GIn(?ynVvQbl%K`K3!3r2-yT>0-mCmQ@N^ydd&n(f_S;a*qc@MW;vAoF z?Lo(OojmgN{>-LnoH z)&sk8{7NUQ0Ee;xr8Bx~Jf847<7S`k;O4CzKyUES#!m)li)iDw4s9gS2XT?!SPz#D zv?r$RkJS1vJKp%I@wVJ7#-^>JodtE)-dfIO_f#oQ4E)`|J*_j*zS#}df|c6$XB|F1 z{JcF|)kfeHuRNw0QTkHfN{^4`DaW-H*$R#Go`J&J@kLX z(I>jkPu3^8YRNrVkKTKqmFT$NN^~xOr_n2IH!MKlJ-YMIy99*5BpW-p|5 zv>{#(FVJsQ%-_q_*I1=_quLXJBNK?NZo8E}M-Pw>vxK-+t$~xD8(BZ21iN+cTPId6 z#;%OhUgfz~zvnCONHj0}57&T~skW@GaPpJvDm=cbb+R32;Eo-O89Umi!pDjmFf?PC z{e#c?j`VKD>-!=B;661kxUB>9_w9p>x4y_|`ZjtS^0uh^(=*B{NYQ;aouxkC~>Ha{iiiIbz7+aTL&L@AKLYW$UWTz-&!0~>rOwzy0xDS z@gb2O`sPqzP~v~eQeK!Z+G~K$ zq;DjHMJM&YBNrKXPN9<(`QM%#{?*mA1AQZg-s09-EIKJ3fKH~T&d2TlwEqwI*cL&fN1Kv;{&V0fU z9BcB04<2H^>FtnN(-No5Sz8ycZvQPj6b~iHjou@jxtunf11x0t8f^XV6RS!C$uwxzEgiZh zd?_?IE!URYZW%w|TjAt%bR*p*>m%soVXyoy`-GX#*)>M=6>>{e!Rg6J0N`_rR0(H=WPh-`ljKF)lsw zrGaQ?*hS1UU(6hFZu9X#Fg)*4i+TN#{4ON#8L=s4nSJ!L<308_0y=>6Olt47vf*j7RnvLd#z8g7e*bv z;-=Ds_*n2t_6$`$s@sG6Z0;Q|3p%)Wj?8D7J_y)-V7}oU7xzmIEaagf7hzKU%qiRo z?j_sYoOXh%bpidXJyyyB;R2qwt|~RME5IB{l>K!~?z&pmtf*aO{_rN+CD|mHO>RKu zvRGSX*65k?kSmfM!@tAW#XD_0kFjTqz9~Rwbn_QPS*xnN0H1+hT6tb-WSSqDws>_M z7*b`L%F%pis$Ba(G;q9@T#3W&`6+PTOw5sV)-@b0XDt)5ZI5KzH-Cv;lX7qV0Qc_V zo+|^_{r1GFQ7PlFPy2FC$p|03^2DmFi)|U`miuMC{U{mOk&Dh*fL{q6TVv-zY=a)g zfkP7+2?iDz?9A9pPtQ-7Y6enO&E& zUs3_GcA{NwTdrMC>Yi~c=^G;l8-29d!zaj=Ff@jq{ZeY3%$1onAV;f`<-kL3S${!p zNTza(^3D_Aho>ewGWAMFrUnAxm#<2ZhrD~mTI2x!vv@K5Ab%bAn9qQ(Y?(Tq=kP;V zd;hfZ&JPDDBUkU}yK$-ued6-c#0BoXA>12A*&|95=eYMqaxa&A1*M6h+%tJ5Yi-_D z9#Kyc&%sX~I$t0Ww{NXPiW}hPV@{1m4PbKB@!Y|lH{q^uw8}KYb<|tRF z;M&W(G3CJTB^Ik7IZkVWi%a&xjPfiNC{2ucmpT6W6kdPOmKhZe9bvN!w`IkGO;KR`&ksLvc-W?`)P8sQ%H`oD+r^tcqo4fj zzic_<)sfLp4(E3jgacQ?w-+Vz<~RBFf5Mw@J^Hut=7j_3yZ!!+e*a7XK7llT^2^B2 z;>X4;z}B?*Dc?pp_r;r9@BRpQ^GlC(dDHb1WYQub zkuRMF=KnZ%fPO(1KJ0;CHii6K#wQcEeRtbDd8r3lpFhvc_4nr&F#aR>qyoRP+NHQ0 z;kyl)tbMCx+vFL2xZm&b<}Z+~|i|5X2cqVTa% z{XH4@uqESV_(bqubm9vLF<&?c++>5N9B>oG=I+8y>Bg_$!5H6Zd~SaB$55!EP?2t@X57G`)pfiTKKAXs%{<4SC);&bbHPfR;NJgf_{R z`*-&_eiHK>Uy0&I#S5BOlAJT&-{(BPpE--c*306L+0-!yobDiA=NV#e*FP}l*!r~V zBI|?vhVskf7vfi^>#c8Ty*g`VTGpSJVfG$Z9nY{Y*bZ#I^+&I7T+jJB_5~X|f%u=P z%xeJOA$(6U=(!y}c4=DrXmbJd49yl3&zyxV-Od~XYt)P6PZ~=dJAp}ddN2EHKF9n_ zFSrPB92K!q*$5!qnXB* zHSvqw$J%=s)c;EBh zj~jZ=NO_(S8LW6aaHu`12XSue{F#wn#YUk&yu(p_{!upZlt)fKuG|bwyYzgcSwG)D zUdXq6J#@Piy4BiM=JopMc8){0a~-kx9wQ8Xow4eU z&oHkyoxEZkXWcqLKe%I>r+D%h{4I z{qqxX^!N_s=neGAqx8v*^a=BvrcczydGv{ncRGD?kUlB)4KjUVp3^7hxzi`E&r`C* zJf~00bNZxkkS$BH(&@h}e(BcU=a40Z->N=Vn0{lVFpJ;W{POvg@LQzot#2Jfmax{Y zW&HU;BTKYCJ9VF3?XO$t%WNsW%sP_B7}}|Efp&EvPg3ciQgom_L*T{ooFzRz#+WJ4 zKs&rky!meC11=$-$KJFPQ8azAeC>L)@J!7rgbLr|xn5XzZ6fJpA@njqUzO`p3|m*B;au zSn?6{=iS4o+@VG9_-^m7+)t01C(DEuyP(5P#v8?lJ`0Tmzcu$*F#U!|FpJ;W{POvg z@LQzot#5ThBdq&x$z(5P>6n`P?_!JzBKtd!-q6^|c_-sd?*!ry>2K+N^~m5V=3a{} z>&Py~3+gR0V+`l)&s!8nM(VwGWa1dgl-?jcLh@Vp`+Ozb^Ws(gH{0p&IY}}Cn*+O} zji2}ZdGynu>Z(c8;D>1o%lA+Br7xHKJru}pdCV7BUc>zw`nAEA9nm}2@jT9WC7uH|=*qX%g|+ue_{4OnHz$sZ~id-+wwU(lcK{?*F4)CC`QGp|~M<8t6)cTV$V@7_%=7H>V;H(Sr|JlT77CFRyK zkJyEcG1?bkj7e*m%NX;z8DoNmt^~IaxYCRRLs08nOaA?i#(XGTSeeu9XI_ z2GIE#!>L34Kg?-|3)dRpT8E#^foo&_o==}KTm|?gr&9NGmanlpMOGCetIlLR8|RT# zS(jPigUG09MqW)b@~U|7BRxL?m+iE_3%ZP<7i&-W4)~!JS*Cq}kl}|dOSYdsav%>q z89mg~WA^DM&a+HncQUI-nY=~g zEOcY!bUC@Hmcv6DQ`u{L#@|twbl*ZN*it-rNza>%%f-ITo&x!5;pN>{R^zn6OImu+ zvun{QX8vUP>K!>t8u^($Y&%XYCD(}6*a`p2J_x}_-SEF+ex$oTEBOPDtIh4SQFV30 zpBaOfG`^uSpoas*F1)^R$?A6WyD=x1EMHG~9ngdBZv|F&{Qb74EXh4v#@li(3QZl$ za`g2++++enR^&6p1=?~lD{{Hw4(W%B%rUfSq&Wu6b<$W%JgBv00RKUXjValAXTzzo z(>q5w$l-C9zcu&dwIAE3!`J9SvXx`-xAb9+UDBakUG483z9@#j{RK9E&vN*?8vd65 zq%|LUqAb_emMxk#uaca8_|jAOeHSrg1M$0TBiXI(jE$^=$7Z+r(!c}n2V)}{hcssn z@6+cKfU6C<7w=ak@xJVK`2SP={J%*2&o=|rVYfA4=Hey8wFb;9pS};g1IdAb%5rUj zt^we^A;)?-h)lRs@gvB;>=Zq>20gbXeR`xOi{IJ&^7)nUTcqo)ZyiF1Y4l~cRD1N? z>Bxngi>&Zt$c5nhH#G)1uO0koPY$-SY}pvRq%rFtvOvCh`RKK#&AZp#!c6Pi+tGKW z=iE4qHI$B?vy9jeWM>iM-`*o&&zWfdg_V8 z?B&?S+Rrz08XALx8?d1=;M;~IzU`*Ji+w@kSCdS?6ufuS|8`6SF(h0|235ePI#!lD zx^cZdF8{61qS)DeI*b?z?jH-`fokotT*4M^G=%46MN7T%kiIB$k30%Ym%Md;7&S7 zm*SR;Zh$Um&L#hdyXRcT!{(kXFaKc9ZN2a2)&-J@{qfmdwUk%GSh@gyxeZ>aVoWJVw%u=;7^}8>ke74e zr{S{U?7dxMHN+n>K9}OZ8g;a^F`t zA6H{FpsYYkJKsNJr8RD&?>fadIgj)N@de(%buM~9HTC5B zd_CLYS;g#1FP2W+#W*T`AWya&c|Yz{T-pM`D%rXa`vqBwoVE2K>C1u0R>g@q@90?^ z+dT&Fu?{2BO1svkKEI#m_c+gi(>w?ER^%9n~&x>N0qr;HX^B^=p{;ig*jAO45C%9?-=v}LeeZC{> zuUNA>9h(fFM^XD^cpjLxb^VF~-_>x)?g~@1Kcf+5C!a=V!x@!od;6 zw-{e|Fp^>J1tTZ8cbuQ(VyaCiyCXHGO8i;8_~ZFge%kZVSqy*HJN!9X{CRHQ`iU<1 zumc|Kybt<@hq~d@R`@e^2Xqf##^Kj?_&0hxar@`keW`s$WArh)?@ua`!Lms;&!c0M z`(4n2>odxF|Hj5b#?gb&efi*JJ**v^(Q}7rCA()Ev0ORm^p9mRU&FJz$O$_E-_qmQ z)8)RwJ%txrGY-Ndx6HeH(t#uX`HP^>fA;xWe#7%t=%d^k(z6{KtCx4jbG(_dHVj_Y z@+`FZ4mS2XCm&yaoo{gCWjV_lpW*)FM;7jX4!^~77aV)#9cXI9m^W9$=SQ9+FYC>| zP|*h8_~jcI6YkEmu8tu~4k1VW2=BiO?@J%+D)tq1O9sG8(#bUE5ep14v6XGmwI4cG z9G1rZLh|}ZZq0(Gm3x>x4$Egjv(lTGJ28I#cqVwxrX1Q59Rl9rz1DiG=OtKA{HnN)jmEJ8sWt_gKgeK#Y$>Wt%-;z%oi0L)H&mW#>Sl&(_(x>P*^(`8k zW;2ecT=EQ?F+7g#Wy<84_LC%;v?3GKnpvBNV5*vTAV zXWGty!`42z_CQT z?OGJs_PX>XEBhf#0w&EzsiE~>tHPQ7=Udb4`SM=+!NJS(iZ-Oi&oHg<9@|Nf2hs+kMP zYUyO$Vcy`UAFp58wq`HmOr+LzDd?)K`WP}qf=+`qraP(=b8Skd1vG!sX0H(%=3`bHgcEaAF07V zQp5RyoW`C-_(iIr_iUd{?|QE`-TFxnecW{qeF@#Wa#k`|bx))2Y3b7<)3W%T%`cx{ z3BN_U-uhM#@(jDZ&R0wAlH>U-{nhfC~rXGL$26YZnQX?0~V zav^??avfPORXOrPey=z@AbMZ;OM48t-WfyU$k8_BvShO6Kf2(NZqGQ9&N$+2%bD5} zm!1K=$)1=E&G~>+>jU!{pVans^k?Y*)AiQ36r(s3`?cge zpP?o3tZU=vW8>#DKII`(BzIl^Y9aLFT|cgP75U-g7Z9Ie-Y2u0gDK*3AKz!Jm8W=;$Uc3BHUyoXnTnUsri| zjO_zl7I1mT4h<)6dv=-ibp7#0F=!w)uBwYQp~2XB=(@q4ZP1g(6!M}W|I(0kntKbP zH)y<+{wF&>82O?r%N!q49GX(uin~$yvRxG0w9TwZ&19b3w*93y#wkm7go(kK4(_0< z&yl0j#(^VCy*L;~S>W4ilS*Dam4cUnVzYkXl~?t)yy_;V*lUlO| zIC3|#O8Sp2yX7BJ{E078a{>Jdj^vwZ)wly5`o^6*LWw_3IJs((;#oL1?|>^~gUtnZ zHS`hVO()-UF;`N@+Mhh+!0F?R9Q{UP6yMnTkjGz9->?4+IL0~8JCf)iBl01!wRXSR z-|uQ&vM=lW^}@-e#P&Nl2^yUExR%Y|0e#I;yTH%P?c_-i?Laf~;gmVN^iSN^^)&c> zIy7_>J|u%9jlbZd9h`N5k525FF7VL}K8(JH{F?3RbZ(m{^M=%VfI&Q4`ah^=dP+Um znJeVOS;V^DSpU4^iu_~jf5*B=S7$J5u(36b@2-#cZTzL;_n8#@ew=I-U;O97WO*?V zUtH_(g=B^P?D5=h;`8yN5TBpC|FGm-J@G?|QLS}ix)^IVR)KdNXEB~=ULBvrCe0Zs z7STMXf6R0GD9Ceneg$8e#>$OV^s#wGcCdKYkH|6-o4sMIe};S^!ha{n=o6uY*2Ik(itiKo<9`3}fZzG>^Yh&>Xo~M7@5i&w&dfnl zw|qC9BcX3(m>++TJ-?YAxks_3ysy33T{w)cIFfs{d{YmvfQOm*bJ*j!$PXX1!YkU- zPPsNjPr|wASUv-L3{JD>c4?Ew2l;SsEMe_W0e%5|0j54=Z+x8HZjEPyn0ts7Scwqh zseDW>&ZSeXEM-k0IDU+LY%YE8x&ZoSuN@yg%592mKk;{7Kgx6ypns98y}hh^Z1NZN-l6ksavn35iZ7e|;S5cxK~DBo3;SYxwOUH0~c{* zMyccixRCCw`F|J2wZK@(Izb1Wqd3MgkJ|fJ+Cy+1L0EIoJZ`33)h3dwXPqoJ^5Em z_(-^1n;@xgGcCr@iz9D8Wb^si@N(aHPh3Fi{BR6BYAlXJJL+F|jyF#{Q8zLC1z^&+ zZObP+HbnfXJ~J_`;6{ES#m=sQw((V(I9}0UEBMh^zC?bcsq_;v*|mSxGUg{eyOd{v zhs~P6zGw0=={xXl#xCm8vnXYYhx^Lc90Ko|@8H{Z=vwi+X8eO+gr|#vS#xsB$N_%| z{@CR?R#EZE!2E5*p)VsRytx;&@8#*Cj(u^Iv z8{Zyt1iPE7$D8;&%}K1mM|d;27<$p426KE<`z;xpEHm;6V&`(tz{jrsoa^*wEE`-5 z0q4jQZ!AD3xLNAeXUc-Myv9e(+QsDcRJZ!De^`HX8|#_w@R@Z=y}x3ty|skg{=%0p zQnm~pyHsm#lJgwj2+U?J)Hq+Fcd{>WJZ`V;i}7BJ>)v7?`Yn0e*rToW_7ci3L2rTn zSt}L0tt9b>rMsuWhl?S>tZiTZAeVxXhW}W3$baL#TuylRN zaK&yBS6nm)AMDXU@*Zv%x$ri@pXB0o*M(~Dv<|L&ukk+y2rLU;*Z; ztZ?^Z@G#f60k=Co+5Be1kvit8uTCsDb&MrPQ_^}CcYgB5OU0A@^OKs3^j$%o71n+D zpzC7B(|mM9w_pD7DC;aI_vglvA1}lnr&_nt#`)qp_GAb4SBM?a8tpP<;S|b&4v)+m zXU(Xfe}6Sl8SIDJSH@bqjAxuOO88#o2-jJ}m{ibjuceeB9h9h3<#-sb^HE#vGQOi2 z7U;yl+#9IzjVR5$X>Uu(bT2yDye6d(+1*;Urc-cYw7@P$@A1fESK7HgHwkYSIF6HDfX5YrOdfXIxZUHLto@^DmN>*kvXsVBOW>FN^?B$VSmh{dg-; z&%U`XezEzlt{Y8k4}G{e&xU1;>A%`dIovaJzumC~koRWXEe<6nQLl7}3V2d=%T8Gg zy!F7KdGbq`4=-h$tRD?sk0-waa24a1-Gy(+j5~}IvJ2h*diA{HW}MVGsyX53J_`?0 z{-`uxV<~g7rCZ4%P^P&of1~D11pjR4W43ZsRgXGm=NM6}t`&KoxB=7m4qe26)vf0T z)FZn}Ffvy)L-D0)z?}|0MMrZuD*ov%qeGHkS+tFuQtmMI?Kbqc==qAl>(?Dmo(tdQ zBA+Q&`LEi6L3(AI^v26WiNTcN>W%KVhX?$IITh)Qe51LPspLUaeC1l|G%-Hti;4|w z1s|?oyH&BEye}Vvu@@Qp6c1_gJF-s;c-o_!dX?ab*g!+u{ygp9X~)n;ge!Qp5?P8( zQslnBi1(Ebj=6c8zd0Wjviafre6v=230ot>)4-?Ecj&W`Hm#fb^u2ud&`08H$U*sw z7E`bK=W)Kj+Z{_?+QPpu-O!yKQzCw_bsZ~mopZm;IhJ^yeb%{mt><15=k6FQ+5DXc zZP~mgb$(|1XnXx}5##0dvB~4*fi&hy#udeT(h{wmX^B{zyp7^TWOEMvq4Fm8??)-TGfZr?{W`w-?xW=Dj%Ay$hWBYpMTs z$}6|)Klq5Je(A*2|DWFad9Sbjrh@Qp)qiVp8-7O_eQmmJO5!@TiDT>z>H+?FeA5b^ zC7RVR*w{wtz)LTZqiXoJ3UbV4dwZ`;ZzKbGH zqcv%XnUwu9Wk+j(o%i+b6v~@|oRRFAg{+!|>2~daR#UkQN)V?^lLQa`}{kDq} z?h6;=Q*m(X05~9KU3Tr6;-Ek{U<@*Kt2`G6jK9Kx{0d$iEC2^F-YXCe_|C<_7=wd! zlaJNKf#wkIbMT;V^geNYtf5ZE19h0O+4j#_k?J3MJu#d0$gXx zYd+zVvZkQxM(0BJfpe4O%QR%Qky~ZRtrwyDrZI-@W4ssRy7!edTlar0tzQO;m+HqD zIq-k#p#C_f&UCI@64sm;x*M* zFeZE)`z6Lb;UJD2CeHPmR@GZ}aZg@=%8L> zvoP)&n}wr^vn%t3y zmyHc?Q#)znZ;-3Ge8*Tj!}LFG?_gX#Q+tXwUL;Q!&+Z@K z*)2TF9msxdvh(f#>;ZeMO|n^=*n`b8_FDWI|6;(&zdv5~(D1%^u;^U$*BbPkd%*R5 zw%_aE6XYj^R+r#&{CD_kOaGe16?fOzW6D?Wv3-tz)cR-NS+37<#oblT^SQRqk$pWQ z?710{-6CAweV_CEesr~S?6{~6)Uh6VGqJVIEp1>Q?G5QSM>b^fJDXoVzY>0nbiMVh zKQgyOoN>$g^V7}TlGeCvU_NOB^VRE*-fY%CD^67FJGvX~c6B{sw@vNrs3oSGHugM; zjyIjSuT?e!$h%JV(8}P zdvqneqx-g>2s@IsM2b}!1&y~7$EG+`a&(&a>eM#*+t4G+887OwccgE}k+ss%W4udF zPxG$uARA#6e1k6IQ-&#*htzt{!w_0Y-X1ry!WHR@xSY75x zTAm|zG@U(M+wnQR$us;nd%MbL12kd$sOZ+38|}bEJ!h zg^uDK%|B$FW5b$9oTA>9|4{Ms(y5E_4{eiuaR+7Grh4pomwPpya6ZI2y7L3Z26Ow6 z=kEPDaZYW4vz)bsP9GzmgsXf9S9!t}@M;VmPb`{ZUfnpEomP5_Sw{#SGFhkA1w6#> zGjGfQ0>20Gdr1yV_l5S=5U*&~EVBOaCM(;lWt_&hTHC1m zrQDllU9!9(?K5HM#So5e@UBTOe@2s1+Mf`7j3n}a1 zrTDH{vsmaW;5TY{aXNky_(^_R;WU8XdI@?=5ZK?KZBJu!YMxxV=GR)8jlL|=i)W6@ z!ReXu&tzi3KEqG+rI@~{{B~HGyBjR+W0FqXz11_pSzEB^!qEPF=rfPFeEET-zZEE! zjQ2F(H{P7f*2#^G;rv2#ZO71OaXz4o9f52ZiLAgL?L?2!+7HF4rRHb)$NLA6!6Ts4 zkdDJ%NWd zWlyn+)*9b+L0Iu!TKD$*(d4&eFArpjv4xZDT6h&$9leTqR<64gdtk=FqVRXrCh?Ke zrcu}xZkt8{7yFR(wdsezr8doW+SHy+t_s@J&i)(ev`P7~GicXTeEe!x8g0s@J)OXx zNqZgz#vpB~yFmMRI`H%DkAOcm#GX@;Ef4$~-Q4&w`Yj25u3rUy`ecP=Wrt@AerUsm z|7l=z;eR>>{?S|u{`SlTo75*`>5~lL&!kT>fnTxsLEvv@Uydx`KL~7tXhRS1XVZ>D zv@eHtWYdNX+WU{b$)#V^Cx6U-c+*)oq_mCizCqh6llx|)yGMfNTZmWd?;EZcdD`|# zwGG;L+cqkrzimylMfBDNy`@2KW4KPIZ5^~NgSL&MZJD$!NZW$6t(&%G(Y6R}8${cB zXj?XII|Ph5wCx?*Hkh`F=6+1u&T`t8L)+ek&WEJ5?P=cm>_@c?zDsHw*V8<0`^zxe z25wrO{_5R}6g?pk3?fk94Qc z(&)2xbhPx;wvmr*Z^5bb=<-?|nTZ|RPmf&xfjE;SenqZrrHtGYFu!rs6|G4R8>g(7lO7Wu``;Kt7$ zMSgJO11~Y~-~%tY;3OZO@PU&UIPrm#MdCGZBH1YU<--0XFvpNr9vNw5OiZvdUI=b| zGnshA%AILuzTUKfXWs+4A*`-EZ%t?+pE;U&CD9RTzCG%;N~8?T)}DZQxOPH z_LSS@DK|#B`Ogi2^Qr;h#lGmnd7cgL7*DzTR4(*pXoTF_`D?E|6%V%!Q10!Xa@YC| zeusF<{Wr>uF+Mo>U6Fqx{nT=&4^S?8d>_0OcDV`STU^?EM&%B%X_|i9nE${zr-FznBUop(TrYY)T=|>p z6U9TB<0CFX?a_S5dfKxjk39ZsM}(KKN1AZ8xXudKbFYefKc-F6El(+DIP*&QwN*|9 z<*cQgI=->CjtJKccgk7ol*7I6xwvs+6xSka%jw@JGUv-2Rfq8P)32XcrF>|{-mkag z?V3%_v;Os8#_mK9UQ9l6TL<%npBu`&#O>IJTeWV`xUEio z?e{p}=kR?F`$e!ueiV2i?r*c?sP~%}-EV4~Z-(*>ae(C&&Np+ZCv#y^Jn37v6fl>wZ(^e8c`pv$dB+o%2n(+N1p7{q1?o{ifXc=0d)?kZ)Ev z-`qiaQNY0O8DS;3y5*wm%qBZmEKeCQ7TaoX?Y`%JXE^{mN+loH$ zQ->ckr!RUP1ieNxLx~yCto&5&pKA{ln)Mg``OV}{E{6wOz)2dk+6JxS@7+8HdL0YB zGJjVS1Lg+5HE}feUAkRkrPoCH#+6$SoXwc&m9u;7oGG#!w=y>L#ZYaxV}#2$`i?Nx z&6qXRyPw6wE5}sNde!g(e1bo}aW*)RpWluZe|Y86>e;XEfLAi$745Y=`-;;%hkwlT z&}p8-ALjYzPV*dIFwZMa^BlT2&+k3Wb7vain^t*f&!jPd~NKcNXXL+qVDy_R4LsU%Ur>Y~J?WAFT8p+wvZ| zG{aV*ss2~FTaHMsH5ca zaRQ%CMY8O>V*{cD@VV=jMb3`*MX#q4W1HoS4Dt@{zby(%hxu$X_K z|GfPn{=EP^zT=EH%3oWE{1~Xb?>Xfey>Y9r=sCMw^vr?FO{3hNl>VrM*Q3a4wIz!D z^|mProq4a__U&R_l{X$Qj(m(E$Bh4VqGjT;zN^^eiRi7!J^4fPEq^2WyNMCP$8=;c zvRE>?i#RW>X_#gC$XS=xa~<<-@(+nGw8zb8)_49AUWg$N71K}wZWVhf8LWJV`;mRB zN6%G{$}&D8cp?pXEZ)MV(!Af1627%%b|7-LpSALQhacmVZ#6z_2R_C5@jZD$@G)v1 zdHjp{lqY>e^>k>>6!q#oc=gEh^pkSGn3ynp7q7QHxUv|mzji85KkU$u(TBF%^B;E3%>Mm;qu4?5 zMrh&@@LO-w#BgZh{U%@dXf1gSENke=cR$;FvI<`{^=p1E%6*F%fhcxDl=p7XUNDb@ zh@mZMjy{scF`azfWkq$!koHH|^XOiD?Tz*rYsS=ie82Qflw%y4W<1>^z39QS7*BaW zimlTM-V_VdWLb^IH(tOv&ATPS;eGT0ebNdJZJxCK(WWkNf7-g>8@H}m2!T#L-8WnHbrAeYCfC5c{uWH>bgWOOXE^*$X#`wmR7>xRc|S zsCDFxD;`hK#13*sw8I}u58u82nKY|t>EYS?p9$*t<^9iK|1UlKh5gT9 z|1Uj!^ZsY>0W3Xy-Tr6r0W>h5{zH5Kb}R>Zk6DLf=3n67CFB6=tqlNUT5}z`hsC&$ z?{;$?IQ)IiJiq`mQ-I<{UlNoR@KqernFAa*p0<&Zl$Em{ez36YJ0`&AnT# z&C$%V=GGxopt(WNTz0de1xM#Xw@1F3dBzp_);ZzHKSHL%Q}c+O^n;h%IT~Ive1CD| z+4;~FJpUcHzshWWnP+UG{{6beBjOeDjbg};Kgrqv_5nExUcJ1smh#0by;YJcn$rjr zMR}(Xoaq>YhgwDd(EGQYd*5VSh&6`TpQofbmK|u04@+x~p@U7f>WX67WzDfh>id%w zuFMXZdMmRnyUk_Jd<<>rTQi1C_?pwE*huPvUy}9%tGCx%%ws(g`RtS8kz!9-+H*Xq zJylM7(&$^_*EVO+mznfokiN^J&j!&~+4PO(lNzj?#`V@n;~U;sW%>3VBBzV;PCe#(aAiL4mvXNh`PqZaJcNCA5#=1hZYnj$w8%U3-5;6D zc$f7?hnXKE33KF6tg}B#j_vn(|90NPRs%M4HT059^pPNXNEZ6XAoPxG^bMOn>~#T` zJ#g2n8?v^3>5sJY-@i5CRpyDpYf9LkoOz(f-+y?2c`&CZ3ts&(_sgxbdTwO=`!RVt zbiRzatqp^9KDg&i)+XFc-H$WhW0!UJt1n#l_^^#PKR#@Tf5`3)3#aYh;2X00iNCY< z{^ncvyn6VeCx#ul@rhwq_=oO(cVXH7cYQ;5ueiwCyXRZ?zPbTC@owW2CHA{I?}LrJ z9X-JIbLjJ@8CLi&4}Rm-`+XxCj{*Pr3%>E{#K4Hg?*a&e2L= z{sSvx`IiD0@BRhHw*nXJE(%=G_<=vO@h|@K8{ZF{%bJr6_7PLQsC4pHWtp{i-Qc(_ zFarDOg2)!X@5r4;dS{$_{-eW2T=wX&Kl{(!Jz} zhrii7C86W}$EPH=_|NUBA}@I~a1OTExskgRBgcHA;zsA0^RvwP9M5@`=bZ}9PdDyu zzW3B|?*?bwL)9~Xu0E8S?_Ii(d=Rsqm{EkybdA-p{A*U4{L!^T^FIDY(BW`?r968L=9SM*ME!%uE`gL}WM$V|Gwt6|eE9o%oP zNK3lk-SFZqk8po!MS9ZxWeqQxvY)NUNV?zL@bYQO|LJMUf8{jgzj~VTH=m~bpPi=s z*G^OZzun@+i`voL@bjd5yBdCxblu&sCFxr7%xZZ0mi&gMTgv{_`?B?%b<;rlcp{ z-C^h1*=im8spj=M#-Zn;TWaruq0nruWgWR07?GiS^}HDUI*aj7@9nIfJ*oF9YyMjN z3jyBk|K5sZGDodkSJKDJm>1W2Gk2X?0XAyYuf|~`)NcCepH8k)yl@BOkz$SOsjE}5 z3|2;dF)l%H z6V0M6IPm9#C&sv*$7%O$a_ULm9;mbChnUAdFxr}Lag=SfOnp#2TKV|Ge*$LR zLpQ}HO3nqX>q3JAJD>Zxr@_O$DR|gAfP6esA29LBHx^4DNKeuSqOU+xuR&W|q{}Fl z)nbhBo4kX9LHfDLY5y8F)+^A|7S?YlfA0(Saqjc>vHC^qFXC*PCX)l3I17_c4ILmz zOon1Xc0hN<(8Zm!Rry@B22wsf$>}J1m-4cK# zGBbO&PbA+RG&Yu>)=e?KwRE0Xwmj1^^@g?nK;Kk3u+DN|pAF29zJGGnGh?i4y67)^ zua5w2R*pigr4B~e&t_G00l0Zyu{?|g*hQxPHBS4V5-(-+JP&V-r~YErY6Y%jzi`Wk zUgT@pjm`n?qQUqlp(o0`c?f#(vy`hC`?}2V{2Z>Eti;=_ zdFY#$d=`FWzDvGve~9@ku3u5y2W7{oM|A%D`S3!M)==8tYCfq7zkZ1MCdmuUB}Mej zeeeb_3f{Qj!94c~Y*3EXjrMWgldS22hFDuNqYxVE4rDodaD-Oo z`+|+F^miwAc`q?gq9eg5KY(o3hryTX)AK0)6jLtcix%~s@@ndt?pHbW&2s9WO}#3^ z&|q;W@dUC=@6F-)o7kvsxoeTF@+~W;ah&%j!E3qXC4O!cv3T6SgnVp@L&`qcxcm^$ zYkWD4F>)BIth?9PxZL3LHx{E?Mu5Mael}&1Pjn1r73A5rU64F)pQNlmPKPh}UOw`! zz*#NNoqQDf$!=7FHBDtPY!ULEg+zLk^iG3fgzz9B8e{=q$uvM%XG^w*jG z!7T@UgP?DYwEL0|moF!`d1J57Z|GaF*)eF!EjKiB&S~Hg99|ei+xm7Id1ZBe5E~18 zUE{^q?}#xHzqAs!b|p5}I^xYu-_XbEo4q`b(H{9@vjx(4x(?Y1XG=;Ix3XLbHxN{A9z4h5PH%0*zHC%AORRk3Lb#by}nG`xqNk zITs`!$&WRN`G*2%16-5mHbK0g;WKw_Q62NiS`W6k!d)|CMgH(jd(8}UXe%m!VG-+x zv~I2acKWP_vQ`1_Wgo7JWhJ+5wP`#2`3mp9Mtiq7V-af@q??FWqqjoOxA6>GUz^Qd zo5j$@L<`)|Zs3(qS+c#2xJ~(pl*38+oDAK=_d3o6UpiLTQx5V_wAv2NCm%hzYHTd? z8m%E}LobQnZzaC+-bvP+gV#GK|5EC|pZdpz5?|zge|@=;e?1R5v4;1MrE%a?EPUHj zd~*li(C3O1eS&vPd;oB+HL*xng=5g+VDc@;??YaB$D~xe~S-X6N9lL-;OibSXq!fra;ddE1(O>W?~FBmNMt2F(RKnF*=i@4@(aY0h{)p zKT~+N0#9XsJjI^;U*(+&&oE!o7-!%a;p>NIZP37Tk~#QPcrF|Oo+AN!zvgDvuO1B~ z@7Ek_fvxmU_FOzJ?H;*5?<4MXEPoRfME;NDjs=OevSEFjHHvQ8ZO91aSBO3joG*kDtuKZWtF%^0 zGI^>akKeV|Vz|6-=ZDlf!?Z{+w?B7#J~<(y@K_8P=;D7yq<2*nd-=6Z1t+WcNw!S} z#@gY{?Y!H;yY1*e9nT84tUCvnl1~RWBEKF124tiyugE!kK5+}yh2d2};Gc+`dW5>b zrRq{#{v_eIo^P(S5~GNxZ!M?HzHz}HS;lwbN0Wo2Uf|>N&zV%77BKVd8SJ@mJ@2p239W3$-aEkkINums4mdu97tDS~oFC`B71<;D z-GFawY4yxW2Q2@5>0DDOLt}dDblQsCZoi%Wyn}Q4Ch_-tH=TAM%Y`d5jsbrs_>CgJ zC1X2?G3W$O2OhKL-vo`zM)F}3&9szjkhn?89uKc*Pl&D&YgTJ6;lQKT{0hCxH{0MR z@rRzhN&k=1^TXEsL%{atkI3J z9@@y_d-dsZ`cSmz^%Y3ow$&t$1>}_Ilf9C`W1O>vHsD z`X1k+(T&yr+0|C!&aCXlY2@3PwvP1#=)bb3?xfs7KI`g(m*3cYXyUZyOD?mTCtU4o zJ_s+chTW{)u81Nw|~Zk0Pw-Q9e9@OJv$(9maStGyrTB|hanL=OU& z+7m(f1h>84JEI5QJA_PMbGCJ)gzLL_Zw>34Vn;dW{Wa&X#!Kf}_B;8U*9-=agIPCL zWF2|#Ppp%;lyv~e=QwlYRo2k(f(L4jRRnVXE33lB-#pqm5Bv@KCo2(#*0Q3CaT|nh zS^3+tBIAWeu9xfC7gN5OVI>-Le{J$NBb{#+@=SYhs$X-Up~2{eTj<}XP5cI;6fdfSnk(vDZ0cAT$vFn4MCgL%Ng%nP5cKm2Yx z$m2nO^tXd~aP`O2b#^<}{;lmGZXu;VPHD$G$TDw#EOFY=$^Gn*(~fIt$CT5zV^4-7 zFQ%ll<65U3QM(;q{af1+`uKLdmeP*foOZmdb|42$e_$&P#;!SCfBe90hi!-U_Xl>U z=?`SKbnEqimCZ!!eciNH5eOFJAj_~%pejVY2$5!mq51e?1U1m?v{&t6tsY}qR!;<-;rS~{nm0@eHNP`ClQBQo{5*8tgO1sQY(B(z z+{+#dmE^zDnp^yd!=Fc2Xp5tFQfJqn>^fWDMko0#`op_69E`Vn?D1CilP|J9opzy* z#1Am$Ixs1Za#P3(YwltldWhnF+T-*iI`uo~nwoEkqm#^HJW@`VaY1sv=43W%KB4Pf zbR5Qs?mw}f&>n~ONDo-f7;&%%J>`LM$23OAIiCrxZCflO^2*5%R=tiKFGY^W(J^Mi zlaiTk&I0);-a_`yuCr-dW7*&Hz5C66o^|{-lt32_x4zvUdlTQ!dQ0kya+D5~hVP`o zDhxkGyVWM~yV^Gz|CZuC8n8X*SZR%K(1tf0_+5WhMfK=on(wgpO3c9Ck&bLdt}rxX z`#a=6GP<18ryJ-`$s_6A|NO1HkNxI>yN~sp`)!qM{8ouHD!u6^=Ip^ z>1MuT-YD7YnMv~<@lML1KicU#{6HJ$^h`C!x$oM?>OW0QykB62j}~Mm#Yn6`z9{CS zySyaPT`PM>cDcQG%4FsU;v>jaHnJqqo?D{w_RN81b({R4SC8nE04Q_3B$va%^_ z2xSd3Wo?{u+<~#z9QRZQ1}q^R+=#+J-Qx-IA+IZ!_WtF6q^)5cx_@C&9zt9iI?QiE~J7o=V${IFsS)WWP>-Q?F zm$CxDmFd7W(kUy~DXU=MvPPzqwTrU4rY-xN+_Q zhfd=5an9QV(~IIfz4U_r)c9?b`}hUbQ|zf{GWBrnsb|mJTOHVMvyXG858Q@>@Z;&~ z`HpZy9=$f@(R&ddgI>kcov*<=$ltCPLWy*Ew(Z3b^eq0)jBH^(avF2b?Jq#%Tac&E z!>7-}kFQzewJK?5oqcoLi1UeIx}aHk%3{b|+vkxN{#`ou%qzAm)BF;4{nhOwztr4W z@Q=-zc~*1!dA{cMx2Y5PCcEC)xn&t)S5ANTVto%yJa5b5)@MDkZHpbNALZzkZL`wk zTSBh!omZ~0KX;>SWc+Rk;@^yXoeNBi9pw2MeQXOd!Xc6)wx894@yZcmb={1$7-NmhjnZhtbQ zn3dr%)rnk?FJ1pQ;LtVS{WWymKW6vSb(x2*qm95pzbF@s=2Ya@YNekQ%WCHokbg5RqCK}o z^Ix2MV%1d6U7C023zUPy8(&d(fqWZRh4YC=k)P++nY4K%eFi;@B2J|Ahv$altdVu! zTTO0Qwbz-;F}e>rB0#XXvGS6qV~vvAW= z%9CF_4SrWY^{rtWV;x?4UKRIF5<789c^mEWzGli}{dY=v_-0qEpLI!6 zc>(4{s<_u}mxs>De3cE~#?rg&c7G+gyp1k=>3qBXSB0mR$G!g?sJut*@}{Xg@*+6! zZItdP{7n)5wqBEjzcS&Ed)o#oZ>wG2HOctvD=!WB8mg1~!?c%s8wM)x_jY-sQrhdn zXUhB0B}wp^^0@cifyz5(mv@$FZ(o1(!Dr}Y&!nXC3e;ZiEg7i1J=Yj|`G99?*DiJrGJn zk2~W7?|I*8cixE}=N-le>{kc2pc%_vJo-VOZ&+}a17|cdl=vO6p6w5jw>KDG<3GD6 zh73H4E@hI3=?(6!ugDEAcqsJb4^JF_v^Ef^>A=6Qxq#GnUOQ24o>w9}e|Tc# zqvS++S??|-etawCSd{bB_7kgmd()ZHgbwP?!^UEaRJ}ZtEf=rChclfc@&bFcNPS%S z>~-4b_$A~4W7jp|)+T@Wab%eC(+>s?^G?%s3G%6K3KJl7`1$C#@2D#8^p-DjT(=@#nmCc(VD9%dA7}{xg5#yUw&0OjTQL> z&)oX%p+0Y2@iO2lW}Q$C2jLUaTHwY;*y}apXYfwd_vw$6?_B?g8{^yN9AlwITD7sYeVL*MZ3{~|uW0=+N<-#rh#+IF-ZCn}!&66GFo`LT)kb@*`| z{tuTQ-%BmutUWoeFZWsRWE&T`%mJxCX2Ek);5p4tw?nHtxVJ;R0?)l+crLA`)8V<) zciuKUmsSIv&3MD%Ila3Rp3^=fF5mt9b#O5i{i-+6OrJ0g<%QK}zof1P>S_b`_-w+O zkJVV+Mqj0cLPf~niQ4~x^#^>L#+n({!%V~{0llw>-q$d%<^zB7!Bp{{i8+A|4gWUz zibSJr@VI!}rI$WBDe#5w$U45t&;|Td23=G@7q+anX+k_FJtdX?T-tnoLjU(u_`WXX z``>==xFcVk{KlDr?czw5LmLRAQ}m~gqK9z<(8GVt`s?Un8M*Ym@f_38VMPaS+@J7N z(Ufj=Aj6D{rn1iea**t&39r24H7R)ttU z5J%2bU^}!S7nX2Tj_OK&xzJ__?fb$1F?&>AqqS@Kb>yYvy;6>>x!j%a#Ieb~lRWpr z?aCF=%R=DSI4oJRFNMFCVbgfw7o6|hg>0w3vXElRu-TBQzyJLQ=3Z%?dr#v)XwzG~ zd%AkdJ@vMEXjS@(pV~Al&`w=p8Mza zXW;Pi*3)_0zfLeS<|voaSf8DrRCZiGwC2+~d2(E69>GhKQQ+en^f=aP zx!-{6eBk371FI=R*V5})_jXDdwA=M1CzVZGz4ZHylzvrz8hyOXUhh{(UdYt_m0DNX zZJcA;ozW9w-%Yi7j_LD^o;>_47W*TOJ5jN}t9Q*l?KQFp|KHQBd7g@VyaCy`3!D`C zJ`>Kxf4>Nt=;B@{&oYqLiZkotr!m+)C%*fou6irc$(Y<*mU*oA#mr;sTlt6L`+fL9 z(Lu;b_m8ZnvSY2F^A>;jY}W0z;vnIj7q z-nu`J+??o1M@D_tVt*Uv?tpLF)t7~*&8wKSh4l=hkn;y`MV860r1%!(nB+0>3VXEv z`-2aUuQIt!Z)aU8A+V5d^HYyrNGzo5%BFx zflu}I3;^Qd~4U;mYi%4X#><8Jh>LSXUEPxqiyEaer!=Po1c zf#sc#Xyg4U@N~o1f=TrsfW1EW5I1};b`*Tr{gnWBSa8o1$%XrOiEUx({IpG=|i|3@^?%ACw!Lj!yM z2XLK^1{Ra+Nidu#4ZM&F!~YTud^e@sGogV(-q@Zf4~Dn7wzhX-vvi1ze~PVBj1YQ_cHkX22<}%`?IOH27cE#P(vJMFg?4) zh2?d0zP|>RFZ`9TxG)5>f{o+Tg8lWvcZ$X6FgWn_%tVjuaBz?+-zQOL2kmxc+i2Q3 zhxMS6-Fnxn-%D5g*E{7aduY?YILB{0$Cb`;g>(F8=lGa&T<#nnb&gA&V}o;C%uzBv zNuNMZZ$qDLM=zE=`n!r`-NLma+R=#*p0s@$M*j@h`sXs%9Uf(^#P>faZeHWJZ3E4B z#-C(<4!tPTs#_W4r+J-&;Hwioq07t}4vOrOjgfE7Zuu<#ta&>q7^!<5e6W-l@`1P@>MSoQ>Z-E) zTQn|t8!Zdr2gcsJ4c(e}@@biM`|f1iE%XH%FG(j)Fl`hrO7X92-ZT&Rh)K9gdY5#q zQgGBU_w>5f8tUzsTTC|0QeTmVzbS|AsbqXfCZ|I|YsB12^NDa2! zJ+jA$$1Vtjkqe3LGLCl;mwi#`{zBiv{XO`_=gpgUtk6fSbb4szA@a#K`m$T@9{kY$ z8scUP$F!{8LcWW_Ppw(qU2G*T{kzcq9@YfZriYBqDgM3e?{353X)e>r3m0;j$b4Y8XoX zH()5S<|7-79J}h*UL8~zdX`cvzrKH>kP>MSsPnijzx-8dKjQn{7cQ-|MDvQ+VRrLxBz zx#+beI*%V;~-`pB<%C_m*w*Ax09G&=JH}a-jasYaW-UlrA z!+#6Jf7#6k>jU9~<-{d5ajdcuyDu!=KTZ4>_lNJCcjvKb@Lx;Xsr)z1;lF9{-!yoy z+-J={h#y9HP+uul^O6&p6Pau1iwX7mm)x=8@5@g=HZ0)VRDaAa{0`oHb*=Ee`hAx1 zOQiMWk#|RaS98z!CenJgLJLv+XzJ4`^xJjnKl*eBa{`jR@{87;<HM+3`0G)+*sONV!yzVo!fwV>xgHOuSfnio8Rm?n{s^B+rTUH0h`;%Th>+_ z+6*nOkZ)9TrNVUs{$|Asc*|Gr1o4g^x|(;IvNcC0`pAQRZiYr$kqLq~FNi-pJDuNk z&BQu2k0Bn)y3~9aN@6n=e*OvlSCizwCM0tDKsMe^Z|!XAVu@nM~}#t4~OLT z%}VCD6L%|;9(eDm?i+p9vR^Q3Z9?gT&lsPGi%PyFVYw_H(Cp5e}0 zt|*Ou+RQgDR}72u&BTGesq%bdU1`2q$TtQbjtmmq-vjQqJv7uuKj7XApXTpZ_^p@g z7@L@vVs8NE6PXuOjKAbtsbX(AY8>*`@gF_Ou{U)Np0wYZiM@&2bNwZ(Z*b@OI|qR0 z|I&6o@Kse;zCSnj<{ycI1x1aT#DIXPXi?!dwz>HOh&Z(~Fpp_zCkYow5G|#=siydv zV4zkJ&8^O3M&27hR7})LRjLlt0;cs(u@#{+of%$-dvo&-f>kJvT%*nV{`NU1Irnk{ zIDIdlPd?|KbM{$#?X}lhd+oK?URz^8Dn8eOPZ9ViW@QK;f7?gMpcjW1Q*fwuaL~NT zi^CQV4ypP#moe;*BMS!QDLTdCd>m-NnrJcqia#l0om}~2be?1d^iiIuF2{#y>oR{E zv0vN6H%*FsC)@SqyW^A1N7EhLIvg6f{jrquf4%lYabroMS|CU26&@V;O!b7UZ&vfIs?2hL-4TU z=5_5H9^SE&z}p#WaQj02@&tXs-jsL8)sMg1+mALs5An+2I+-&zw0%8A{~)g`;31cP zX5+K=u2*ZHPc!{ojeT|tc%sX2X`%4!&&J%sm_ zPJepot$qLMAN8kA4}YKH8C{%P@f*9emaS;$F~(}Z_w!OW^N1MsLzDJ%H*wBs;$zMw zcFw7hjdVwzZ6h(>>C7$f_@(&-XG_^OX$^K5_Xmkf*fO5@nwrZv1DCbXY00_e>{t{# zcZA`4zs>i;gZ>%BqahWK&G|MS@c!B0@#-1yh|6Z8PPg6Ppgz|1O?;3~akHP4e5Q8) z?=#fbl~P|h^%W1%nfxg!Se zdH5*T)aRU|qQkDLYbj*cTR@s=sAFws?FCGVon} zo;y0dJupxiVC_9XejRL2;#DP!ioG9CtaoZ`^`+24@hpX#t%Pz0%BD~ZPzUoj*#*wYR_?sM(r zqfA!^fv9PgIe%OZW!OXR8Z zj=MUu@7WfM*zU}e1K5AhUK?sSy3J~M_WDr6Cf|AAKAOGhv7>W+LES$XoO9sl^X|I~ z?05L#?XqL-dwkmV{e|{D{zm)$BKsacw0&P-->-D1uwTApX#6l%~ocxaUKJ``%eZW(iEjB{TVYS3I&wm}wq_Mg1T;9_DQ3)zdG z4Sqe?64~&B=D~|SILJTZ+7ud>qtkqe6XZJg?pdgC+C4BZx|LW_6PxL0J`o_tL6ovT z%d#Hb!`vp7Ue~A4%Z-;eeOGDkE9)Q*MSJBILWjTkfW5sbb#HKBbUZS*bz#fs)*9sR zL;5AP+|ovYjRrQ(=(3Xb;KtzI0*fS2m@(qx76UB-i_ug~P& zYYqgZH;;Z5o_rYH)La#;_1L?%ejJ*w#fUo$z*_IaUc9+Aq0f%p;V>7{Z4SWkOgM6C> zey@XnmczGR9K^S-A9+y@e2b3r&h`D`P4xJ*Y|a%y&ooJIXIU?GptluU=<4m!ACa3G zpI$$C2WuzKN^~^)B6fUwVdMn+Iy7GoKzGrvn7vEI|LeL)1$NGQKjQ>Gy>i=+XLLJ$ zqZ>kuE5c2_zgvm_>cobua>gF{J@EDP@)4idnk)l1 zF=k00t}3)H99UL*QvD?z=IX#D4lmWgOE{nhb>I?*m+Igp?SU1qN^fPuKLe~Cu)aJ` zdMgKb0I|%-D`MLT(u|qhIPIgGG?BZ9xXxkz1YN{R5@r-;zk{f*F;zRB?)qb)ewVz*u zC)LlTqwIc`z2)+!(UZ-#Zk>UQRnm`PaIU2PQsHcO;Pjtk!}$iRPdSFyf96h*E+av%sG9VjUBjc2$z8mQ*g;~a7kka zY7c!9{kbnogUdpf{(;lul1lG+&UdRa?C@ia%Lr z+xuVoE6S`3B~D`BFT&7p|6Kciw%KnyG=60ux78j!u+Y&1;S@cv(9r{7j~>vN3{8`mYpQsI+$nE(TR=7*9iRD8OYd- z`tbCp0^j{%H)~XDv17tk<~s4P)&qaZzAnk?!hYLsTRbp>Igq`7&#VUuFX}jC`HyYE z#$z1^|Ftdmvf<3PlkIVO@f7xHINwV5n|B`l;=c3eSvx9?uAqL$Zgh3UBJ_~zv;C#E z54$Am%;hy!y5BV8C((MV_I$ZA^yjI3dvuH~LyTXi=nZs965nzkAs*=zz2MMV_Q;uR zkyL!H2A@4cGQGWc)RfPJ&z+~ir%US~_T1jg-9DFE*DKf9bq)Cv2Ip?t)05P8?*HO6 zb!jett}9R3wmjWF-yVanO*j6wkFfLOaHiCW_WY!HtrPM5BpdYWz?EJ$wqmw*W8m(J zhE3R3TUg(U7G|Wihwfs``*3RxdN#OV=DpX}{fYCA^|Y5#aVT}(+4He{ z6Ccr0Sdpki{;IHBo3UFf>HliRc<c_q=$+2$qLo;%Vuh_$yq1K38doL6G2MUR| zXHU}>*8DXdOBQ7(E<|Q^4I_)Aki}}=#i98wuJv3itjxVSYx40=?tNg9m9dWe9K=Kf z`f8*f>KDGk-X7ut>^)QqwXR4#(o?!>{}lT&2j8=Y_EqHc)ee;d?<8I3tc|&IgoV_V z&i2PneU&w9zV*xjoNv_*(bd?$gLJjmHD#0B1#f?oe={EB*>wKL{|24&$RnDDf3=^l z)zJIm!S$zsfvi^1yV<4px2zS##B!WM?}3a~?J?aF8lK+Dr!RU}(qE$Yo6x%odh5Kv zC&&X{Ybgi3FVe`n-OyX>PIjEqJukGtU-Atl(VjXD?YVYtsNz4P)qUT&p@MsVtD!w@ zNTPkSJJ*6|;PYW=|1f8zJ*;m%w0FKuOMB;?Xn!GeAL-J5q)qz;qWwtb_|RVbeXP$;5`D%TRXGdBdT+E421qfh6VaezD> zPtaDaIZmgIUFdVg|G4u+KemAJ$ByP4M9L1(AKE7`-=o$C6ho%@Tb#DX<;&Qb5sZ(% zrM0VI4moIMxAtt!B)>pbYuCo?)_9n5&^O9_RC{VVSWAevM%=RI*Ff>TGFi2TL! zIhgk?&igse``cz3d&-?lYQFX~>(n}j?Ff7B6jQtzyfhDenzcf=To&v3tC?fnYtQYs zyME;+=Kr>RCLglZHb-$VUfK8CdLzjeAABZ1e)3sEMn_;L>spJQY{osOym^i=MPSb~$A0%wwyv#y#r_j^AYn5X@T+D{mV1}<(rz!M(&RQG`E>+{(@*3RSp2G@W1g!IwC>Ge^a zqmSx`(MNTTKB^x^A1RJa@}ju4bo!{y(MR=;K9Vm;dv~Re#2Y#vvf7trbdmNhK7}rF z%VeLWE}E!#9j`8GcKKarYUL#JJ9zqowUtF)J9~XD_Me=I%Q)P`cdL=3dx4QI#!Gz=cJ$dI^qET!#p#;1 zI(G4o-F9Z%ZToaCZOaZN-bpha9ya6QP`s;RN@WkYv82ko^Bnt-HSTrK;@mB(qQNVZ z8OUVMi^(#6K0K_lJuhMtz_SyPL$|}xA^~j&C zt74Dj_mhs1pG@Pr@KO8@`4{-c>RZb1r-^CGVGNL*2&djaMnloL)(+0mGX60auKZI& zaQz0ZVzD$omOuS1;&)tM_H6w&c;VN^ch31+roP$ye!70qD>ciHZiK;jp$QJZHM@47^r|Ob$bAkD-Qa=@7(DJY zc-Zkf;IXebF!eLx@!Xm4NU877sc(yA$4QxXpRn`noo%}#XQ;0;h0ZsqeU6Nq`hJk{ zncDX^XQ;1(`m|@orRPPd^|?CbEc^AVXQ=Od#WW&Eqq%;L|MU1CWu67v&gFWJ`R#AZ zbDrgL&EdaLes;zfZ;YfHXH)YR_L!5Ze>$8o)g4b~7i&CC)<4o6lILGBb{;N7XW-*r zi;w#k*xHMXk2{d$<3@J(EyBmGtLx*|yh?s>&1ZHw{_QYw>)K7SW6XDxjcv2f^>53c zVxHSNVV`8w__pbfHDiZl+3~0Cb99m^r@Ev!+&b2}iTHTa^WM{lup@4i~r>qVC^>-Ey< z>Lc5}vUNjRy}+0x9p&7lc%Z|)iD>%^AO9yhmrAN@Y1K35N6 zQ=HO1#*U=%h5Kn|s84>wdZkz?RKLg_2FxY0Kx}*^%uw>`BbM@@RJ% zXDQsy85?Dv`j2I>{&^T%?+CVDUj5SPjjz&1))ptT@28QyK)=Kgo8P#`z@MU4>g{@ZZUimW3oa)o>KY-6? zotd|wgUPYD-Ll3aC{)x}R#y(BEH)D4j9lFx#ue;P=_WV^jth{_+ z%9T3h%7!neHf>>C>!5DUjl#4m3O*)2bSn7q+wqwgzWmWq`erI;0W!Dw{wFs-@_OLA zFJ#q^pZ+AYdm^AXn^Sr6Z20}}fcszJ_dDt5tLS%~*>aR~xWsF0o}O0?Z@$KL9nbUY zZ=c@C-nYkD&pyKZx<8IZkJ+Thj{NhYTs~uz}(_!V|h?#a=CJ;{?j?3%BeM@>e)osh5Tks^=RdZZ`TpX3>qedPd^NHyd*C7XhyB{e_WIU6c6I%orZ1`| zS;wwo9rwY^@9uxLIN#*H=)=!>gfaGxbF7yhvhvsc8k$vG=l1mhr;%%zIG;nD>D-QP z`8_&i3g=XR3pp8;Wxe}>f7IURK5cp6YU`YJg}#w}9q7)Z=$!YEU->0t{*m-$4t<#~ zUzp)lKYe)^UOkG=cn`VkMX$Y2-^oYuK6;=RUhrGF_%qMp+kE5Ge4X(^{>56_tu=~4 znLs{d+bNH%mtT(b^=}w2{g1C#a-emNuFA?_cO80bK6RtBd0}kt#kFfHqUuKa+vpi=Y94t?;RU;;gn(CJGSpa;yY67XFuPL zr?H#mr-&gZHjRzH(a^Y!_IJ`ox4mu~+o1Kowmi1N_kSEYcF0~}youuHmi&>QW&^QnJG3tMR2pAcH~Y}M`t~oN zugZ3_|4egud{Ow6CfxmGiZ9Hp=@DD*{kBryvJdV_zPp0&IGYt;lt({T+H{pqOKZiQ z$V3M+5vQ+foIOMj98I#>_6_=@=yTa@8$EkqHI`(0{ZZWilDGu?I20i!w2U z$fOys930Zk16^JCyDtyZ4+Wf`>GXr4zu%7EJj}ZI34d}tdvtWgT>W82$7}DDh8e_*4G6`|lHP4#lh4b`G(& z6>-ab5C7y=d?kL?|J3(k;(E6#t`|Q|_@#>@$h_GD zZR{WC*=%?~d?|P?9QjrR_jcgL@j1Eh-18VZ`F73UeIe=m1XBmkZUCNeNC)q~0k4D@ z9N-^Hh+UsD?T@vKYm*sqfgUe@XGt4h;ep1mu0dFk7G9N&}9 zK}n^b>5qNJzcR=#rayT0Q{a`5Hzyr_{~>t8^~c0C`0=b&@EDKM!TaUu;Qb~|fAH*Y zfft6y(!u-5>EP9*!H;LFfwy%Sc#i{bSbqL`8h+;4oxqE;KAaA}hfW8tDGfZHeO2(r zrtjbHs=dSY?+0o6muE8s5BoD6eoIp5C;j4QPn_|SzEWuXq)~JSc2P^slQHvO74IB9y+biwqM9^V(T>G(rjH+5SdM##n7L5tI=r-sq=Akn&HQ* zN|JP%`)rKbAe{z07Y??4f-|xr^6yrr*FoFYJTWRs#(}pz%ri^y$bFLzUh(PR-IE3$ z&yEuNp!KbE@Xi5V*n^*|!@*@=nD{fV4tJmZtKg~6(zG|hn32i@0k_Y-GTrVoXk+@U zB&E-IzX#Z+&n)_kazEw1N_|#9PN`W=f30)+tLc)+@8q{49w|+K?F-l3cq;xpd)m+g z{DEis3pmPu%~_9;w+#OG4C*MC9wq9Vmr9f1xz8Ro@aX?E@OA*NlK5R$=Xv0L5WcA> z6`pz4BzWroH1M_vKjb+Lyq55T7o@^7&+ahz(f?`Stp{G%gP%L*R%wjYIQrm0enS*kBFLJAAH9hv(48Yx9Q8dNmRhi&{ z`y1eHVN4JYJ*!Uf@gsP?>ip2_W(EM#IRS0z7sDzmA>S@ zac#&!`qtTS2kBchHS($l?h?Vp77~4ng>TMqz@6rWYt#2G58QDc`j!jd>+L-Y zN&HZn25y-LZq$Zb>w$YNaBCep0Jo+1+8a*AcV!y5cX{A$w(}Ux@xVRVD>=6JW*K~6 znRY7Nk~DB9c;FV<_}<`w+X38KN8VOT-`x87Q{gU419!OxZjFs^p$G2Uz%3qvyS=#S zvQy#CO#^qn2kvG&2UM;H?oWWb#es|7X{o64ohla#Y`95!$H^@P|H`h#LL9R0A_ z19yx1ZM$XgttI}$(UUE;a}3;lvTqzc*-~@cAimg4Hom_D?rxo%i2i*5xO=i}{jf*$ zecPr(65N6`a0@+fqqbbU;eq?#g|AmGrk9?IZ)F;|vpjH%Y&7w|yCmBS*T#1va4#n(mCn+LF&~cIXP?K^ai6h87@rCw|A?L9#!R5g3~gmQ zVvp_%?+YZ2&F-_cz%{lb@M=u|6-Jc1LvWu0p2wEj=h_bD+wEUE6&}x42%c<*H1K{X zcti7RFTCyHmZ_=m%(HJ8{IDI;!22HXN``DlFT4-JcVC_g&pewAJYzegfpWj{!{&R zCVnX;zgr3MbE)Sq)v{h?<`4Kqw8p47<(%CgZ`iD}0_eUTZpSi&URdBct8Iqoe8ed00mO4oQ%u0zZL}XBx$00})hF;f zR~-3xgX(f+mHd|pVyTSJK)>%T(w;-BZ9DNI%3V^@5|95RzWufA(Op}_+84i@E&ZT|{HXXaA0KDt zhx?YGKbIimn=i5B-5-zII6Mpvo$$x%B8#(et#>o>1M7sl;^Ws+zJs=9+&%83iSyuh zv%%TlCO@=G&vwpi^pi_5O4|Zf{1xh7r~Q(H&!D581)$+h&X`=op|0Y`D6|uN(b48F zoBzR)b<9g67xtjXSbt$}3-@CqW4KSEE8l|Gpf5)8T?djPV_EU;6)mK8qas{2laZGPL+&X(08w9gQa@q8@!WH3LD^KJ~kWAK-cGsBa&NMzYVJ`zrKg2tC8P^`oY4XWxYC>bUun4etTlK5x}$&UY;K zobRZ-_TKv5O38Pqbp%&`bg<60mbLSb;m^(FTOMau5GM05Y zddYoPVDwVPvRZVt-_c7dvlyK;gUV#*2$-mu!xzyK7E*&uClB__BntrHgS$ zIbs)c#`qHA#1*%sbCMRL+jfypwd=Q=9_u2H3j121X`n6f26|h4t~Jd<8^2EG*@dk2 z?&XYeSN|-8Zm*$#l*?80^jjUTgslvte+HjHFFg~jq<_LjzWi;wq1Ea5*p2JE9sY91 zIG2|@!R?M=_&L{{A3C&Np|vWV**ma{{7yUB6YuB|og<3RDQPUq9A+%C``kV^G}Aj4 zK|`&7sSb@v&p!#S$hy0JHPGmuA9`KH^cDTq$vCdPF-P73-?nBa_4%j4|&t-#apWgFi$GSYyY?=Lh(l@UI z?-($QzS(-_^JL#jvDdU`c^vAFnR%fEShfQ}2I_o|cVc=R(V{b81gUZ@@p~SxD01 zsr~hk2N%iPf28zRF0mHgeC6)`jZMS?)v~V^e|e&FKJg?Akd52G2c53{9lHx;W91U_ z;%obxID7-1vH9S{z58yto+BG3t_hv4HT_BGwivoCE}b_f)Vk!7^489=nXTQ0S*?rE zXNohB4XE+A19><%KCt1K+K-M{6!5RJV+zSd$JsRBXMgIRfE9c##|kdV@$c0>u{M>-c(;QJxp9`E#Hu@Da<>B>&@v-VBxqWy0Z zH&$~A?ZgIrvy*uq&wbbi9k*etIOCXWzvw&JPyE~Vi^cxD=0IYfdm`Xn zC+FUxY$x;!U{iK2fS0kg^o?sfcG0#>Y*xX~*o_Ur{U3-=2u$SJRmt!>Xln*`nkiev znd02{QdVoZO{~FN*ge-O*Gzw7>ww>m0l?0uonMI5D&J?*gvf)d)8x}04KL7l?z;R( zGm~{ed^B{1mf9my@9>#y1^v19$mzj~p;rGWt2OgNUu$+zMyvQuG!Ra!)xXd| zJf)bP^~7k5%kiy~UHcSv`qsM_o%}gG^9DS_9+O12-M`z_XN#~4u{G>D2llmWl1HJZ z<{RSWcE;qN!@B{ypNGDo?^S=GNwHypw)@lv%+qb#!)n{jda?CvF!Hx|S&zm(9@rsW z)=cc;qHE#H>oxw`^C!h@ti><=WOO{a7&7}p=n6g4`iS-g*YI5}xGx0viVpI7)80kM z12K+?C-MV(o4}p+i=Vc;bC-K*pJM!0hg`c$xfW%2S#93{PsO1}>Bs;0s`co0`Z5Zv z)O=j2x@KhxKQw!Iz{F>?+wn2?6QA+Nkwfvc9d(=;Pn?r`7U*ttyxGHmPEo%vz=yx& zV7a;09kQ?W@p8slk4|*Og zC9|~$e(S+b$)#XzOe|T2$tcT$(BkRavNV=X_*cdeKAhz)@u}@?l#wwu~ zdd|o^{Ban5QT*U*j2lnn=bE~tzcQ(-tDuUU05e*dcembGo@jC}_8>Ib`xJV<9e#gro-&*9np3l-~Pb)c5v>&w^@98{xVTJ|7?Oty@yRczPXURd0YC13Bb};@#!MhF1kL*4<8wRI*|D~VAcaOm+waKT{X{N z!}h8Hp7MZT4+XEFt{UKF03!<+b-?31gW#3GPO{Z$gZj1vxwm7Nvf7HwZ#@sRT{`$Y z&~~xs`B=~MF`nn=4L;9qJ9qGTc3a-ybNpxgHuI_!*;zOvc}%&{(IKw9%q~i{SBS4S zGGO?f{ecsam$&kB*0tYVe{x(Vamu;2Y&_0>!CA=0oB5oFdUxH)Y~JPYE*IV!VR(zP zV)2DdhPURNlehN{-rea7C6-Z6d%io^4~T5-oqbO3-Ya=`4euuLZY2FZ%JlcBzJn z$m*=d;SM9Tv+E13+r9V{Vo4x z8Rsu!UO8_?Rw(!g|Bb+^B<}iYc=Ubh8}MDY>`h>o@V|+(Y}7XG&$tr&HifKXF}{^v zU1IQc@|8L^NhZx^|N&}q_$XU;3%&{Vc6YaUhJDdUe@W8W?Fn^96M^(+?~0D<}`pKu#;UbBs-*94fmQOMURO@(P)JIOs&3xz-rP z)_NpFjvM8i%*+no0u~dmorYTq+j8OIQ-BBFUbCrd}^<9bTj8o$}WZ0 zDi^2!JL&%}c%cj*(w(w};1TVs&MpeI=1weU9OazD$$72WvH`;I88(cWdo94uU%9%W z8{E3U(YEJuOuo*}u7M3rpJdUC3tD0@*4YPW4kfMs?*44Wtx0FDRYP3%H;m?&K>?19vam5Cci-P`h;|)&cCW= zkEe893Fm}|*?-meiEl+5-<{bnj?d1NL#L`-lyXg$wWBOx9a9;6&0~ajJANMJGLO+W zlEwd^|2E?TixS)A9V1;>_WZ%$R|G$J@z{)hlMP8dJ7hlGWD5T&xp5i(|V!AzF@>4Ec>8 zwyelHcBg1ZtfJOeHRqQPRB%71zTj%wxy~C z`Vr4F2cNIud6;Ll#Dr(F->=c)Og_fIAMo4cQUX8rB`vGr+@dITYu+`u&%&v%=aTXR zIhU3nuz(ZecLu+ir!FfW7?|g?vep&x+>4*^jiFwqFN4S51HaitqeI#DDJ|M+}=}fc1FV5!D<&ClIM+jeF`z z<`o;9XH{9|*}vcZseQ&HFlw3myKOVy-IHO;yi1uf-gj_rf#&w&ulR2_J%(><+8{3A z3~i=GH-v(cWj(I}#~66{*oT9x+*ot6@rO}x`m^sQ`wZh7t)N9Ll@3yFa3N zf3)2fx$ka#SkS6`I=cB#C=rX}7h_&@FLc6h@=`JKxh2E8(Z?K-K2KD0mSzloxSX>V zz_=_ znnrz`zd@e?dk;FH3fSY{UcZ0stv@=BFUQ#3Gl1QF^?L0qHTL!lVDD=2tsqCoJbfqF zx(c?gtHGxW{C)v`g5l%73K(7BXJCR;6)-k|AG|P6`NbN?!0XVllKKM=t=~WH?dOg& zHktY>M#1l$>{nJ<#=rq+|7Jr!J~wE#%-N^Yo@M9Y>)}}+<@-cFzlW zmspSLT|4i>p-Us-PY%5qzspM0PA4V<|5=S09}3MGqz4&C7naO0HeGnajKm$t6zehj z<9FdJLta!~-qDbEVD z?K$V6{oA1JAuD@XE&CatqF-j+@z8$V$MCg3>GbVtekaxG;I;_dRA&`+7ID5tlsbLP z8#AsVMuB~k)#$vd@PU*t?;S_|8YfpXFT|#Jwd$(%`+p8ks9!a&QrXq;(B;TcvG|*^ zF=!6ozxoia1DFngGOkWbz%6B@1zvf!4PHcXjcQ1@EuZiIKY zICz$);JL-Yvy8Ts^E-xYxp0ezf$PQZ!r{u`e|6!E9IlL~ompp5=2P@cG>xoyX?kLq zGEwjm|Er%x`y<1Y>q6$bk*Qti!`qQ>jsF@0w_+FUw*2eL<+rc77P+8(KVfYdc;eCB z8ZY^_oO1Gex6g!@ebnd3=WC2l6(Qp2h!K0I+IlpUXHC2Gub7vHwQj*0ir&|hM7Co8 zv6k6lStXG_C;y;yW(?n;1s^KsKu4I^0{EFxYU-e!8q3|BD6-d-`|U4P*3lg*o^|QwdB?EeftX7~`b-xFmD?(NarQ`XXT36F>bwPh`e|~4Uaw)jq zafWhncq4pdH%fCdiuL}1AD3O!~eSudz*dVqVEV_DDlkI5AV-=@44g49{Tn1 zy;mPSUQONzpWdApYIx>3>@8oO8Gl?}T!!DhW*j=t;Z5mw+3i~Jf9o*ia<*6z<#|w! zhuc|W$h$7odQPysweQ9ATi@GxL2KT5?62QtCHm;Qqc8tu>+g5{x7MT6E^PgM*+s2K zck%3il{o638N36XsB^Tc>DQxgkQ-nxdi7HHj4^0EeD%#AJ+%LucRYK1m+xG|pAY4R z8lKk}?i*=rt%ojRz61|#f#;5*H{av@wdeNaMX)u;{OH%~_h0k&kIc7w$n(9PZ?B<` z1go6;2l;l>k9{kO=)W&fepfMLG``pek(Xb+w|@WnUq5^Nz2|;?{8#Ib9^XVRgeY~a z|MEloub#s5tKL3-^{?JD&tv!@k205}?(NSV%Ze-`4~8pWeeZ-4zdwLoa*=H-ev>xc z_M->)Kl~$jmNvwIxeUC%46cpfB^$O6UMT>dKEC@s-)}-zv7dNe*mge8dzT{%6Bswx zS8wM_$ZMOmgEjF(p`g~x;wu?%4w6&3j&bU@9`BnUOWTU(5R^dH;Rh@8bQ>Th=@#|CPSk#C)TPdAQMi7nvZ?AuOboh zqdSQ6>A=2?Gq!j3*nSQlwv@_hZkvkxZ@!aW7ZroMd?dnsZGA0gf%r@=qix`J2;90_ z);^ZS^EY_j1AcGve1PX!k?%jIoJVSh<}JJB+n|5N2kLwAg3B8&Pb`6^raszr<%a|F zGJsnNT(!LlxQ)QQx8>f);>c6@(W@h2-lwBw1?7#uk8xVG`bTu{J;arXX70Si_@PE? z9!~!6FP-X>`1&WO`lF6j+UwJkkVkL+hRQtbnrzxsX(bk7?`V9)#%ZZNFe6cjnf@*}_NC5MLNGme*8 ztN~bwONhUyVIPN8uXWc|FH|+tf0fuV)SY&SO(9Yt|^~b%1j`GF>4K!x9D&9`*t@-VY#9y!YqaEvm z?KjX!-uzNaGTl*jtWGOMQDYIBP=dCQVkxI(=88 z?@DOD##Q>k_M6%5cHs-&U>(Dh{fOA9ZvMqrqE{*O`bi4CT1_lN;b6R56#r+1!!PC7 zv8?3>ckQ-Tw4-Zwby_Qaz*V-4{B-9br?erl%E_UD?z$nwdUH0<#WVfH5oqpj_nRFv z=lzY((a7#Oj3t@mIF#T25Op=9^A1th&0H&3^L%nQK1*cgan>TcszWbS6GJi?dGFx2 zZ0<_*h;X`>x_f2EICFco`9HomBs=X++mrak`WyrTreG5!@V~o*{JUarO z=)smXMbn4XgPG{ZbUH}7(bhEqBlBhRurnQ6>MWutdfd>)-B$q~n&)*O7ZpE0H=;cz z8@`Tx$=I*5AF7@3K#ab>9G^l(Q&yy%eQys@MlsF?XX_L;0OLsO||t#6BN-Z`0}TeG7VkX^;#b(LZJqsLDVGtgEC?+9iS zye9eAevTOWs|%l#;$ju&chMyLC!#yDD4ir3^w#P2gW?&Jo;x&hb-9U0K}U!$|H?x% zZyd2=&y;iB)o1q``5ej*8l!E>OKfte(^ka~JVhHMkM11v9O&hi^U_Ik*Y8gLl-MZ6 zO4;jsu~OPo7BVr|THjNfi<#4E4YUY7v{k-F+8l+?WGBh@?~Vs%eNehbG~pfo@eQK+ z&zYzG0vPS+`S0<}ritxSb@?V8O-7%FCd1`}v2ztAudj8@g~s$_CwYC;6SZ9eX8z&tr#p zwsrgW9~&iU& zGXAr^N@7-aIqM)ZS;v@w|53h13p!~Z0cVF8UF?0g1^K_3^@758trffZZG4mT*-V}t z`d8rdn|zazMk}i?P7DjNOMBzs&_nL|*FU-MftjpFNmk^Cd5}8n^?rZbwtbB4JX3sJ z7=KhadZnG~$)%&;?)ye?dJws6bnu=5-dBLP?8qAMUJ6W=iQ(s*VKoJJJ>gq%E8~f` zoZ2u8dOWah)_rLj|!DTgd7@F+HkB$z0 z>LL4iF*cH^hv&O##}|dK{ICW`@ZINIaR)R6)~kY*_0UttP1~5WnfqVc_fc$~Yxq{> z1lujgTA!&a%PA*2=_%%FSDf>_fm6hNk?Lg5Az9=5g!{hx)?XjL;@S69t}n_vjg5^H z!40~4%Vk~j_VFcm*yXke#;8!kQxDpGV9T#fH`i8Ce;ZkF`p~88m1jv;`Iod-JHTAy zN^p6zzHYkKM$7gvKcfD!E^7t)W8VEafps~1tao!R4IRkI%w2aF8>Nu>ejfHpC%=`m zUG~v7bhgWbdL}vPWo%V!vSg>8@kVtq?qG*xwSDE!tViMN9U5aaMwlFAhBq|lv)4^e zZKLco>3Y$^=Idk{=&Tff+nvO$X^(;O&3%pEg+-^%LprzGIpx|))98k+q2MQJ<5e=u zdRgmY*2^jbN$X`@Tdl<57tzt1XzvDe^fTCQ&!c}fGEaXQ-TDacn;DNA`KJwbPFGi_ z;-e&oS^R2iN6)5EVgTOVLZ9?*Bp!~r^#k}Tu6*#h<2wIGywUMI;}f)F4zNAEu|ji! z?Ta>5c=V)mene%!J_C>PvMcqSV3q;j2b^5^ybV6S5!LlRZ=iA|DmEA&4%3S!l4SrTV#oX)LSQ)ff25sO8 z=4!7#0WRafMe8M!shb=;iorv3Irn`hc#H!N${CsZyn}-e+4q(UfWsniP`P4c-46~= zfP>&~L8ggwZLylJi|qJU^dz+Ld2Ig<`k@*e(K$DCJ);<4XCApR&^QFu3Yo0TXk(7NB{k$Pyh#mQ4r zuDl;_UvKt?$8Lj;HXZi4dxX1yB|2#Clp#8B|1|A)Wtg$4B^=F59-AEAHTxi%@*=lV zA2eYv#1*C<=sW};`y-RSGw_Rm&wY!5uh@RYetB#R2d-$ER+l*M2W>+7yBmEIZKUrW zLGCt$5?>8jkGgUiA8GB_gYUD8K6#Qp`96Je1%0CN#i!@A^%v(_FU2aY#FP2N6JYN~ zms^P?wB_~C_=v`ZVt73cohzB2)?s7T(`QTJ_qT{&G5Kn-xfDlVa2;{*mEcfH-%?(% zT{uR6F1P)8^0#3dV7C>T+|r8EsiVFg_ABfnc247>zHg?!dg@zBeYaEJ2<}a;TvQ3yt5@{y1!v{6okHF9)ScrSN8LGndz`x4scR{9-%j1jsC$m7I}g2>OWmAj zbryBIaEHf1?I-3L9C~Q4jhD>}!cDfnOTTpQ57(j3$xYn506kua~m2Tl*|j&tA1eHU;Q|K5DP z^(gbf{lde>A*;=W`?%mB2VK+nE{wf}4X@wW=J>hf!^$+dv-M8%$0%3X1k!nH$fdG| zeNBh{xqpKTPx7vO*KS?gu&;ZM-g96{{lt@Xqq5gY-_)~L0Xyb~7`o;G>gz$*$QIF= zU%m97^vSo0ud(fyoHphKV_i8ZMDAn*r_ywSLsK98KhdGZBiQUX?=IA(+F{_|Hy5W7z@eX#9N-joms@Y5g>`&VBEm19kP2PS%ggF|>B~ zh4?bbJ59Yg#V)OLkZGINV+U!S+ja$ITzya|J(GsklO0-@L+eQnt*?aEzcjQaM>x9Y zwJFK`>*DOf9**W?QfZD{r_%hLsmc6&D(vBD|9kAw;rLsA%XGA#kcRedJ5u|gl|HzV zKB%w1^5oJ{xuy?phu?{9xB=TK@oVazG}s5Z&fXkf+fT|}ejm~H3(APUy>hwRdFINQ z_uZ?!JCmL9<$w9p?2L!N&(+JPvoo&Z+;Z&bmfCh>Pq);(QDOW>#`cj;l^#Z?5}P$> zOGRZ9p=({6s03V%{bSpaL-q-}R`#Rp6Y-B?LF&Ov`&u2Fk@yTdCrLV6=^JO+27Bzz zPjByJgKHjb7-=QqqZ!x6T4vvA9>!nV{{;r+A;LpCrdJkiMY(97{;~%=kca{gk7P&8Z9|w+giEQ+1B8~rSavW{1 zXv&N*{%UTrPy3@^(-_8hsQHfK34P8SB}29|&-a9!yeho=8NW65x;DMLXS!oPwx+Y6 zHlxY5xnHF0zi;jbKibdxF7VP`n;5o}aQCyXYauvPG>vCpi?6MmGd+r%zG&8m{1*{3 zXq_7=#77W<=8{?FUOS?UQ$&@v76V=Q6j2e|MZ2KO+ReuGzR)A}m@5108 z0N*v>+XZ~#c*k9T+@LszJI3=5-UawB?>JPESb82d?)mTnb+@zj!3lQQ4Bva9>qX?~ zW#nilaa?Txbv+} zUAL(3$ zd^GY;zgoT=;*P)f!zle4h3ClTkSO;%b4A|o#y+zYm#lXikrUoovO`xPH_gaEBW=FV zT?@>#V_BEO&$DP#rRitZadRWT{ta=g3v66X``EksA+$OHtv6cMs88SjQtPK->)oHD zBbB3FaY9#K$6V%Gdq1`4+QBnRd)b>NM;;)*S#$w}ANsI(VlKTIF4D zNnel2*bE)G|FrCr4SllD>8JdVUH%Tr<7>U)DE*gzlS8*C<+(pb`AL_;vl%B}t|sOo zhW}!zFVye=zDMI{(LFH_WqW)peEg0shZdFa$SmgVMa+en7d{)b9yR>SGre>75U8y9 z(%ugs-@I&Ej}D}5W(}lTHZXC68l&!muJm2}|54wm-_(D$@6GPJnv1mV{)I@n=IFa8 zL~2&pzWK+#i9Vpe^^N*I^}FHLPh8*qYd4;L98wH}#h<&rbeQ?2cfGuPB(j@F-IL*| z(aedm!C?YxLX6`Y+uif#V-vt}8oWJ)|FF)QXT2Oci`JdQ2S`Vc{aOEpCSp@Qo;<|Q zHVvG$I>ycKfbZ|HMNNEtbGGpp-hUBCPq5m zpdEYZ_mZrL`aT-=N4DKz$KU&ibq=AwEUVOfzgXWhj-YFhk;@{-4w!MHrJ||Cj2j)Z z%1wTajyYUy-_G{IJR6neCO^ZV?}hv8;Q#0|jG=RRM-GP0`CQ4BfzCC#7^;xrj@y96 z_|Y+qD>*je=nr^5(fNq2hcst1;|k?21ztuJeN5Sl^_zC9{8;@i;y2%n;rBq}W!Mdc z!s<%w8XdE&iqGKOwLE;dsCd}vdd5vg%#Q;dJDMtLr* zizClN2XriX$%G9)5yYGFhzmRp>P3qUNtp<-!Q6#nteA~f2 zo*9Wv<#&lMa-D;FIpgLP(Cw#pB6H|A*+H?L@Vj)Fa*H(Q8a=z?4DX-gy}lI;eJdE= z@0V(y?91S=6Z$<*-@Qm4I}gls-*j)Xa|86ZJN@F%HT^R%S-gJ{ynk_P&u_6s>DQij zutzD^dw}+Zv(n1q^*`<3U}3Wh-jc#lYd`SnCxqBTSwJl8C9U0)Ik)|NY{wpa40+Z| z-Qiimnb={clrOxDc+*0=Jba@#wbU}=r6q+nFV#=5?6UAvclOP}C5&_3+qiNbnd*4` zWcH2n;Z~ww{3EQFLhy#~^Pg<6cpl}s>KVj`MM^0T{WS>R8 z%ZpClTk+PQ48nWLk>cgWufSX8ycBp*zE_oZ=NKJZQ+Sd4D#|bWhyD%!Q+V}*=RnBl zq$vFxqkktlJmK<_c*DyR(L;O_7tc^0zK|{}aK3T*A@!TlXW%o>n6j^UcTQyQa(hfU z-I(FdWi*GGdc*0*4tEaow~Qf!;|JrhH=n1QuP>B`eZyGtwQTyio~^J^A|LcK)o>#6(zWNc&(NM@ z?RI=ju8CP2$|s}!2(d7_qQoDZ2_0vRHMYsOe?IEI$7Vv)Sq1pW^&8sG8cm#qewSb$ zGfvN%fIcX(5;qrOvl$yX2j7F%&ul;OOxZY7fY10o(8xaV#@yC{xyVr^&t_5Q9Q4y| z=z$W>08`Ex&9%roV`AkR*>es2?y0=@XGFTEsT}vEd`JJrDJvO@HZ#uBmt+5lxIXQT zn4;J=>m{G&fRk-I!sY|p4jAN5;_K9BE1+SNw#8_BM>rJRfsDEQcDnvAVc&=?V?+J_ z*Po&Pk5$_1m9z09r>@D59KHbR?F64CR$y<}a>lM%+|R)d|A;fb7%McdQ2rgwo85OR_s{5K`g0Jr z@nt&obd&+75;)5kzZ7c;Z)iR%oC|KZ_4F3jYTbFNS#N?TI_H9?_!YY3GG2CkIIu%= zr&zP-d~WM+(DCvQL>npBOdYEned??yyv=*PQyINe8N&z}R!xh~pyvqGRWNtNPBdpzRkF{nihXvkb)OYa(@E&tj^PTKJ?%nTx=;BD8^)Pc*=Hg?-N5$YA-Qdhm>*$BD zmDtHX#f5pSgK!OxgvVJQsYPEZZlL$Mk0t9j)-rAuGv5yZ&#IXmk#9X(M}LILZ>sh8 zKg=}Og&)o2d%ww9_;1d)rHawD3mI8uB`!V#9~=IKcNJTvvs0Tn zi_fLWJ0_N8(C2XqO^Tt3(XQ-IJrI#)5pX}=vqt6gttxRJKAHugP(kS zSLyJN+7x%%(u2HvvfwHhnm$d^|qI+`eLTwBnXR%#jo)XK-B!es@WCX18_H-f)fe=;HC#z9)%??y3aN zEO03WzcMSKSQG;MQ{tTd%bY`YfmL4BcjQ7P>9Y z{pVDc{&&Wjp|bR^#+pI>#(g$rg|}&|t>aAjMbeobeemfQN*6Y&iY*$|^U&>PSiZ@=^%we!8ZXS!@aU^p^^!&f0|7QAWr%$#r@&eDt z(3`u_lLk+Gjl2ET|DrmVQ0HN1esHYa&X0BYa@BF((4Lk?bkcqBO*49PgO%ud1bgpc zi#0CJw8iFF#=3)@eJbkSKN6Eppj~Q{@{uZTMmbM9q$3%d$R)y_ z2@C%p{m2;6Ux@wqOjY7zu3xLv+E#|~4TL_;zR`tacyB8G4_)NvdyD)OuK{O|U}y|v zEMJJfXeMKp;=-yG7lthwjb}tU?t^DF=WPxpKF=6s*0DpEMe>1V$`cc(^0mynQ_Ek5 zjyL74!pLf312xuaOmq9>JHzxzybipUCHG6Jef4tC?vJ#3U=DrZ)wkR~L;17qx6PD2 zQ@@$D9r{vx8|0_=_Nl95zeM|tO_5H=(!Z&Er@4aGL(Mn=Psq3YKfuMM*Oh+)y_S7O zdR0??SiLzvh1a>Cdloda_flAG`I4n{anWOu57`W4IM28v=w3g&9;S#ql#yA>Hj-^|N6QEAHT z;kWcxJNqLQe=gftb6U|&-)SG3oyRY$O?u(ah`Y^VkK7w;?ESdfi_3g}p1VI+_xBr{ zGplXj9`YRUn>h~a#-SHB%TK{u6DkAr|>C_)uqBe8|;tR`@(aZW%8=lk%(` zCsrn()n4P^(jT_han#ozQsz)|^oB(ouLYM*OkjpKTqKXX_x|xpmvROW!EQ zT6 zF<@qls0;+9a}QmEELTF@S2c6>tt{oQ^+Qh&!s2UvRvG(@ul_{0K<6aIoE`riu9(q#kwKw?#aJq|2z zuF9)!?~(E&hmtSGAFJ$NeC&B*{MfFz2Ol~_zV)9F&-YQv|8_s))_wHh=-gn(!}L)} zZm@GgZm?@|Zm@ewZm?%+Zm@S+Zt(D?KtsXjtP49C1G*-ZCk~#c-=!yaa_!B-nKccA|`vtjmSGv3arYUsi~jQ%0}#t-4CR61Ybd~@_b1-XR+iT)hx!lU4G zkn4L~3(S4#$^LBJGj_rUv8^`;JLba=FWwyNd>I^fg5xf5YzN0Tz_G5XL1VS{et7vH zmESf@8{+AM0h`};I@dpi-&`J>0(_&7r(oMm#kM&Bj}Rl&NgPoZaYB;m?_7;cPa)1_ zYB}#|6EQEH#JqG7mopmqy#fd7Rs2`*e?9+S;9vTi{k+yo7`pDCk?+d$jeIY?TI+{n zljXZ4kcf^&whNH++X4+Inv>;wo=Xe#z=EqC*>kSL$#?k`9{JvE%Xh_F$ah&rA~v=v zQDe@L91-~iXGg^fs+d<)(B{S$0+f{uzj2T`V-dLnc)o~z!>a?kzZNU-F@GO(jCG)S z7Ui_($JHUyA6EiDR!|Nc<{sRWx2vytJUY8HgZB9b>s0;Q+ z^Zw5z@$YDt2JsB?(w3X`rTWW}dwq|-knBhK=HK3hpI=7qS0eY=Me%0j{yyY>9diFL za{mZ&zX7>_C(uw@;>bPy+kd$&_XoL3?r*_v6uciFK<-~WRqpE?d{z}Zaz72Z$96hF zS+CrE!zmY=R*@(zvgJOC4QOn&@YtlXf8mrZD70mC<7K)c_ZyM>(%HfIR^)!p>|obz zvxD7pX9s)c&t^Z>?BL<**})?(I&u#V-ul1jz+7;NNA8i+o=*oh6k!{D2(P8mdZP2q zQF81ah35(`w&lM6B3tfDxgG_t0&|btHzN1`*};zckde`|gPmi+u>c$k!LbA!CxGLI z6uGY)YxI9Aum3$Ue`YMB-v0A#UO(tuRgdPqx34s7PurK>r5wPnou|FbnhX0Fe|(HT zK4Twh9$@s$F!lWpPkpNx2Q-IT;9LjmTjtca{7B{qxla3>>;I4XW_apbh3+@) zbFQlIGmqQD&~dV-o>ImI)uZu2*Z-IGoad>h-x&|w@!?OYN8>^pF;3DWPjfxf*zmsQ z;=_y$Yw+WIiLs!H|F7|XEB}ANzs80|j19l>j13wi?D3(*j1RNFtnp!d()iFFo)YZr z$z<-GNp4fdszaHH*ul(1*GgaFMDwI1d4CJsjr<(QObp!ROO$@u?t}iyktRma_yJxX z(_rhL@k!r)-l6TzTdfOw8Q(XWEB%K*>9@qvzrp;lC%imZr`W${8{RhJ=X(|fBRzlc zC3?vB+Vc@t`5JgXit(YpWRw#-YF|xx&IRkq&alhpWh9;kM$Y13q<19GM)S`&)XR6# zLi`KzIp7=UAZ9nVmpH-sjL-NZI^XdT!&KOIwQSWC8vG!I1_d*18c284gl$=_tz(aW zA28qdC91-Viw9;j9O+}Me`Zdwj_|7@O&RuhYUF~y%eeV^7JAhb_oX*l7k0~DHCOlB)^;d(ep=`iml|?YYINr+YzVqI)aj?sfL}{nzRn z>~5~zeB1Me4_jjt<91OJo?mdk-&&REhOP^yIQ755xpLRo-1r#I`DT+w&89x*A#lf>xxzHg4ZjsG1Ad^7Zb-FMH=ojePKhD8}t6;3cj#R%a;3^n>zx5@Kgpnio%*YqKCi#kn%gKu?AKR$N z1m>scqn3rXFS8|#FHk+QkQK*(su05D0THa zHsy!tz*HIgiGz3aWpo|m!7A)Z!C1gmKF_Ge2mHmFi@M{3Z{eS&3pZkCYRq5dT-C-J z+g>AXtKyXL>Qa~Iz;7pZW(Rm}VHGm{VBRy`21h$-UYnM>dOCr z&pEjg5EK+OZIckLf?}%{QfzaQfK;@lEmYbvGf4;#khTuv%=n{d69^VHUO3`3txOv( z0wz|as8zW!zav{VU6eGIp%ygj-r<+aKwP) z-~L887W|Fh_pJ5BmuK647+Tw8^!u91t?#F`l?nZdu02KmLX5Q~aHW9l4Oduk*K(zcl^^@b|C$eT%=#_`8z7tNAPCZw7z=#NTNCti5UX zQ@z9)Mfi%6?9E6keoyAhu|4=b*D-f)WbV9)x${=$&W|v6emuMA&}(VSN%gKmMl_KiN7L_a|9@Fl$2WHPISSm{>N$ldc?`XXId@yMit&W?XTp z+D{cJ^u=%3WOM2$_B2vh5)WX9nlZQYvo)2>&#YZ$_vXZ2o4Sm6jH_bnt}Uwblaqhz zwMAw8o~}LlsAbn&O*_~#w(hkqJvAiP9i{Ghe&}P5DRM@{gyKXH7Oz=qw{9zleN>%ZO1fBCe#UgE;xlYNzPn5~rx^ zCa37o6la-et#vH4mMOdi`6kFWLB1iUb$O6)$Z1_2Mci4Ojp^*%bdD3uOk0}UMCGZ?~KOX4l8V@0c&=ft$jPL0g z%q=povohjGV-u2ab}jp(j1DQzh%d@7Dayj8UljC*=Az3M$L1EXM*7Jv_-cT!>zNtk zxYT;Qxqr9(4&4uUH}?+CL44}7`TLbZqs*9Gj&&h}@ z_fQx1&e5UC>q3{fu)7{ic2Ju%d3> zHIloh#jGPKpOMZc9MC)rx(IJABVLHJtuYk=vi%MPwB-O+{4JqA3f z^)GYlmk;{b&|$n!hIy&`o;9bZjt;#r3AcYCp3LC3j`;@fj`DpXz0PyL?Z`O?A9ry3 zp~2@Y(^{zK?^e8f>UjOptCR6EbZzISYpOIq<=bAmYn@D4(;V(w4nxSR4&NmuLcl?NX>l@%qxO_7Kw{L;VHr7m)r&PG@#I`@k z8Jb<>S+aK0z>vv*PwxCi&Vlov?3sNdu~iFQ=QExv&H<-*ye zMb%#^Ei!Yylrhr&K#kGCx-v8WIf$(i1OBb}FOE@f>fG)Pw{A1HqyF&I>G+OwilRHy zm&NLG@EzyiJI=v(oP+N;2j6iHzT@;|>n2zqN!QKbLv||nU9@$qZcHc@{@=Q79DHjk ze3VXkY>!J+9$S}R!MNPq^L^PzS%(>u)c;?2->;n(KX@H}QRY4J&uAW`I-WK6%q`9R zl;byMJ5P464a5)OJ1H5Y^}igGuQ$9YVEhZUW^ZzC=$F61_g`LO_TEZ9czY7sHW|Cs z*sk)2#ke0#j8Gf=rM)dG>+OGRhwro}Qn7e`#dvX_Mp^mt!|RX{%&RkqE7mv45%C@3 zDPpVHzd`)5i3_Xc8}8qkc&cGNc_EzI;i1S}=H_e5;%`2CLVJmxlFzDZU76WW>Svu$ zYYRc7y!%7cF`oFpC6R$4ogGmEuZ(>jy+|LrfH6#crO4dKx@q{< zufw-K4c|Kco|)I-TgTTk2Vc)zd_CpY;ai`!EX=rUXFlt&|20yN4`2@ZPJ7l|SQ2nc zA96!CC*yXThueeTl68|L+&)9!1y`2E?Kb6Wx)VGJPWJyL;r3C=DreIn@H)Wabz5(~ z1@M>yUd>pzc-=sG zkHKR@SzI_%-aHR)YPXwq^sTkc%GgJ5ahmwfw1w?r+QN2GJG=f@XGGd|Vzkqeg^s2T z@B2UDHx-^E$e9?pt|iA`9e)t6FFXre|KnNU`b%et>uX$Gr}q5~XwmflxAeb} z{s;&6mBlxL14njBV;>HF01n!q_ZWDY|DscL4E=r-oFwX*7WhjtuI)PF|Iiy@#v{VG zjDX%tD+Y!VWxJ`1`cGHaqi0c9f3W=EG~e5p8gGr)>Mnb}N=|bNcv?5t-GBTDcI@L$ zJoA%O5$x8-gOtIy_%u4=S>lOz5;GYnTlN(5Bh8Ec zfU%-^k~cs471#Ut(?8936kq-lc}o-b2Zx8#HfLD0=p0MV-OI>kZ{hG@d@gyJ%UXzC zmj4po37&tdVaf&gVtH2qk5ZG~@3X-BoM1cvKIU@<;i`WqElL~2Txy~d&tuM~vn3-vw%?C6!_ztBCg$u6q1~zd zXh?f9RF7g;BgCLafF}Zd^G#95`Q&66!+jy}ji-;rKfJ$e=YJh(?KyDd)uG^<@8)a2 z6MK;sBKH;Z6$ZD8`%?Zvook~UL}t$s_DMT(D*N1b8^~Kdscj52!uJm`UTuZ^CXCrC z`ly`r8{Pdb8yPp|L-89F!$W_SZ|US$%sHX#2~|wAU1K!*O8dE7ncp#yeXKf{k-a5t zLE4+jzINJoke|ZyiL$=EJ!U-1+&#^18#iXzGae0{QP-AX+V^L_D-GB^V~O8+?}EH@ z(0_^VPIo=%ACu2UNs9l4ratY`l-W-`I2iv1wB_;3V(jije$oE@%ZVEbGLK|m?*pdI zy1xC?1E}k4_S0XRQoqiy6TV;En!H!rqyO_^#2%)=A&4TST^??i0!Nb>Qe zFPcAjCvm<(>;SD3Yc8=-`**+c33EQ+?lQMOtuD_&qo#k}z2mJi<^Y57n%i@5kY z9I*RK7L&97y}`qJ`7d0}cT1q}o8SY}uD|)WoO@8q`Kii36ed(89r(0AU=%s<1!Fts z{K}TmGsR5jDYlx}xAnljnZ4DXY#l|J+nL|l7>psI8=k|SqfYG!k(}{tju`b&U!Tpv z{W@Y>#D|L8F#QbJ{TqGrgfn|Sig<0oTs5rjLB(^+hy8VO_{ZS;_G)OFeUxTjBD@=5 z-$)hbI7%m}o$W8<%bg2;rn_a~E#ehJQDh5pbFXqBi5?zkIoZ&Dh3e5>#fi#HutF0{AKVW`7IdJ zc^Bndy;pmRKgCZHKZs1~1lCSu8U7M{yLrtTuPoL8XE2W{XMJw~`$uxp$!FyY#xM2d z)IZAeo$ozuJo+_aB(bFdaG$Ag=Lb*9b1 z8bO|hk>^H6o4i%Q?Oy+HrT@|+CI_oz%_PPF8mk_XQ6F*fp!}>*&z7?M^GO&EIi#%>ib2NsPyE}TpLADo~u zvpOM(mR+8W4z_&jPvG0=VD>kV#U-Th(XjQ&jCAJ%prc}$__SUKZ%9lXp~i7%7# zI)E3Ae-~pljO-(NQscb1A+x?eEYYn=Izf z+03H{;D`AN{VXSE#694y+?UmT2Qk6d(MBHgnpVEa@(tLNMY-1lS$meed-q-Ap*QKO zL$skdJNa;w`}iPyWpiK;XdYAOJdn>Grk)!1r_~H<>baSBRq$dp{X2m#&*q#-Xj*%!w1>-~K8O0m7x?u;Z~hN{J<&6? z7lo#EUV8+%1e0KB^!UX$POkY6d;Z8~ zQ;+;jSWVywrSU%0Z@FWXf5l zykyE*)_xsp`Qv@YrkalI?ra$!>ck!!1HOXXJKRU|*xwT#849nU&GD=gT*o>Ac0cP; z+vdjO0~{HCtGmL+yM%UD9<(s{ zQ9kSdI(SzB@r|>l$8{bHd)#KXUpJk0rW04(C;^# zXy|G1?TGR$I-Yq?&bPP6CI*(ZO`jfbns0hq!~EpKRF7z7+g6%haaY zQ(J07<+blLTs6(i@4Y%DPt1F_jrk6-K;Sf+=c|#^TRHPYdFt~xcSo?~{g1V^RHpMI z!TmbRW|zh#FR(1ipZec1B_kvsLeK9VbKYoAE`8_Eyt^VJ)G-%4?T4=Jn-;JBLTS-z zY@L%;6zcp|2#9NvAh`loPb-VSwMSXt;zwe~SPclCjJm}AD zStZ$_gN;1j#2c^93<^&I*EZ5cfYef=wRp;+43oN4j4xzpn9`>}2C?RDniODx3q z1(xzntVci z_8<4T#ILmji*hC-o7eRE^MEtyd>(1m5h*`CLLU8Y&`OtiiUV* zWye*sS?=Z9y zfmWi7^)X;ctuyG3iD#o6Lsq83JjpA={3vxyf9k@NI2X{qkv8OJ;&|HF(d039@L^~k zAbaK>?Jbh*EJudEiv2O1*ubIayVdlmEkIdG-lH~D*o z>u%&y4QJy%#@X4^M>Q$4fq;f(B^=lhmMSc7<@aaqx$ zCwsI6K1}8RfZp-o7^&P7_{oZWY27QRuMIw!Iw+YBV$gkAw&j^p>^j|l9{M>*e>xeL zj^1&x=ZWlO|6EM4BCo@YP4FD&DIfFE{^WKEZEi+x??i4#pqF-FWnOos#?$x$7~ch= z8FZ7*Ka(Cye0M$X!oU*&?k^%seE9p1vX?T^M|j;?(PVP0{nfoRc>y$eULQ>kh8}B> zIXTjW_IxPOHnj9>e900u~*SXHEGnponVZPrh(+^D!ci;UrG#Pu9{2#;_ zq|&*+pE}#hr`Z^SIxDjh@!lW3zX2_*{6F9LKgz+ToYN8JZYQu;*DIb9I`{^>5Uv9^ zxt3p(Wd3So{!nE8@Dligc_eLjzb0Oo#yodW_XPH-eHyxbi+bL`-d8=|d+pOb1n%EN z=Gwhh#EACO#!g>)_o4Ql*`1lt>~i#1z!w+HhtM5eJx=`1i5W$L|HQ0mCKsdEhYH|7 z);jThHsMEIoXHOxdxUl9N3MxSw(^HP5bnX&Mz=%**qqDJZJETnLaVjpP|~{2x5$lK zp>ptcsxK`cpII2)?J)M~X~ClBS=(u&-gecG%+3?d^FBfwm5inKsY<6t;Q{;#+dRL* z57@&N1&5M9w8eTuUNgFnxh?t#yngY!oD0Q!c*?ZbMH`1`L-45nF6uu-AMBbZ=U7a< zrpWY%zI4#1A21%0CvV`V_x8DJ9@xdb=FIXfh2H`XH&2VlkP*?7%&XpU;*nd@<86QD z8l1|;di8ncCckmw$7YRwACC7TXQYdIV`a)Nu`v>btY1<-k58zx79;7t|rak#LU&`@5%?=c$(iZmiU!QID<;~l&oue2YS9`T6`kqJp1D3KReN& zGO{oHoKsc$qbqFgJHAmqHQ5nW_!a8pU!e}=y_0>HCcifKng`3ba*DVI$&I!~#&;9z zhjtyy*dWNgtJ0VY%C1bWbvRF2-=rHFmmlH{^R4yydU9NI(Eea=r(X*=2QGXwxPOaz z%FtQMcBZi}pR=TP4kK=ddGyYICN}`*{Id3l4RvYgcKR4@KtC}~r7vNp)q~T*>`-M6 zHmCXJzRJBfzrm(h!?Za0LYmf}PY&I}OWk;P``hz0w&GS|^;u_Ve}v!1)8id~R<07} z(kBz<(#U)>m*&@uPcG;3GWX3UPi8-J=`~t=n9AJnWYwj1Z$0fUBzJG`ocif$W==g2 z+=OpJW_L5E?lg1iZM}19zPX5VHo`X{pSqbxcR~l~qSmgSt73Tzi|V?1uC%s8@_PJO zm*%Fz3m!eULeDMinNpu3^iMX*)$aS?i>$pDe(Zg8et}!hu|nc@d7ntvgWY#Qa2f@s zQsueM`==tm&v9W&j?oRcfoLyoB+KF@6W!@q5i3zt{R7zh{U$lzjOuGRx!b-9P>N@OJv&z}tTr zBe{^w+smO}55^xR!?-3@{!HP#z%!9Q|7+SwmOuJdbD$5CKfg|fahvSOF9BnPIVU7H z^lyJB7@znXV0@?_7{?{Rc>UiA#=HIo7?<}0V>|lO=v!n+3>l(1v2=0^YrNsr=+Jt2 z;64Yvir=XLdA<(6QzQPB3JvEBsPTmu~(0kVk%)A?h zf9DwArI^eFUHs6yPMvGll#I=mk1ppvhw;;zwemZutb7f-(A|+jo?#0_#_)?Cm;U!x@D0!3 zV=dp0PLJ{Kq}KJvQ*H|7$e)^2$0VL%6OfO=~B8`tl&@U zebFm|%l?xwaT5M{1pS4~}%&l^rmjtZe#?GPp)=hs({clm{xqj$ulg)Ep z$vTl@sE7HTcz^4ihs$ifh-_?^qh-nYB1(X>6nZFw7N#;r(-^Pm;Hz^txxazqXjO79 zoS!n5hL+iXXMBJ7D9g!ZcZ_nWaohzi&3103KFS}1UQ_G4&?_^T+<8mHAIUMEKlIvb z<$K=2Z%MqB<$b?|{c=zEiOKWFBhRw$d#67h2Td(8(*vV_qubF_`Qc54#r3M7HxI=<2{oyips!gY!Cbe zUfb|VP6M~?ufkv8vjaQ+=%(Zx6$`vRcKVZeZW-|P)Z~)d3tkK6hoY}J@e%M(DLg6t z9&P1}5w#D0MrrqGVRC%x7rlDN0NZcC!yagIKd`+DT-~Md_P0v$#g{F6>!@rl;$NYm zM7!$8?)PnsUmJBC3uICzxs8XtGGoZiQOEeD^zAYa2Ksi4cSorsv5oI}-`BD3@G5Y= z#`qnePcg=iZ-mbi<4fbE@I%mxV<5*yOQ8IBk=Y(E+WYXc$bp^U#f=9#{1L|SS^B+` zeh12y-IE|6KPX6*2|4Z`;-ZP$(bN=8D_iYSrJ~F~-Iij;#s$InzczDLQKfPVqT`gi zm$jX@tM-^Rp0_K0V}IxGXDz3JIV>{mAy@uZAb%^6b(`?>29UX$Gi@YZg2lH7biRvX zmK3Mt$;C>_Dwauej(NyuyY}of{|Dcg{D^b;=E}bEMvkuK*<|;d79X)rtXK2w4)YCh zqV!wOtb9v1c-FabJvGA+jn1|L=skk2Hs{3zICDjK11}M9<}>~iU-PjqyxXvn*lT}6 zoQ>eGxY~(V2K(R<{PU(-SSs`VZrqjDs-5QfiW8|1#$TT7Jn$*{7sFqxc4Y!SMNcOl zfluHS2VMzRyZKn_Jp2aZ575tf6P!=(B9##3OC5gmSc6*09_!Mq zDa4n3d;7!CSjl@mPllH(R+Ked{ICZubPl&%?94v!5%T=ux7@^9Q`?|>_pQ3@(IYzJ zd)HW=WwB@E*Z1txeTnWb3>MY=3LoYeXLcEDKrwQHRh_C?Tjkt(zt(&eccVO~^1=Mv z=L|cbv&~04vp3Ra>!o+^+w|y_FA6mYM+ zgO75?xz0i;15T~g&EQ^fXXeZZ`~$TYac%`Z(C~7eDTZh@{HNI5S!RSZb@ z7XFMMRrwlCJOt}=p9&3p#(uleEaX&MVImH&Md1 z$L}kkw-v-qv@9w(els#t^!y;-|1;N7@D>Ed5^%N)Tp~xF66}k4*Nf9S7pF7dkJE|| z!f72ioq2kk`Vw(U*(haChtpp^{~xv%zsXVT6gKgY(7tC_51eFe-$Xiy+{Ck9*@oQa zemHPT7Hh7w0$s7f)fL{Hm{@FM%dbRNh<0))FFoUZqd1>G;!jxh#y$JmzVRsiOj{Cx z&L5(mThF<7UnA?)_-$twNG7O_2~HgPd}YPu&{M#-rvSN8VC06c-h;Ignynja_1Vgx zFZ3p{1!||2cB&q`dtc%8kI_zG3BFw;o8}L+vZ+$>VP)7=)DO?c^9??1ESV2FkUpuQ zk8M@NozTyD^och2dhxu{i`HkXcr2%RFYQVvMjIX0$g%g}moT{cgxi0Ob;(Fyk;eN! zflc>8_&tp6kN)24>hHa-{@z=O{tm*MC6>SUdb+!eF~Kez_9X2E(SPJAeJa9vCn@@S zucx2-)8CstSQRsaKK?NM;UJTCI!^cJh$GT@t(nM(U5l!Z?;hgRchZNg=#+!taqOZ+ zlk;}4*ONJpY-!Z&E7>A_&A1sD z7&D`{1rOI1;6yO=!gU2c0LD}MC=_EUm={40ilMsX+^qWP=|*nu_2SJkIm@|V@tET} zYskh44siX^zUFJG+s1omHb2UH?R&`;eFmM7aGU3(bsr)oROdFu*12c()L_eiTg5#V zqjzuA`W`s-;!{>AhJhfsMonIsowpREgtC{);=`Bm(qu~3)Wl~8sV$mcl5pw?!!vj zQax3}X>Vj-dt>>w)5*Fku`l1F&0V%1JEp&R&%V`{S(#d(XULk>$OXm5Yyc*$^>;9~ z&*%G!G-ofK3=JZKgoA2uu=|Z49a;V8ua0b;_NKwX23yCDtrPCuxAiewuTRe|3@)p_ z_g+)4XxR2OxP7SlKifHsE!W$Bo9mJ|A#8zyyPeQRa%DeB|6`0{4LCA(c0c2|k@cuv zc)#E;l3p%x`?>X-!1JTcg3W&!`UI6J6=oZGXqsyYJq&`x_Qc1H0mwT8O_(7&o0&FS;=8^K0th zH{!Ox8(p(?+G9ty-u>$%otN77eZ1S8&)WK$l>YpKzeswyw|~g%;kt)DCgNXI%!1Ba zQSSEv;Aksx%_g2{m$S5vI`i6{rJv<@EOCvUEzl@2O`U03^#{v?+tK0OIg0D$S~{^5 z`$@bf+qDxKJh*MegQCM1^U)vN$B_^D(Dnt$j{n!~W(U8&@7kNU9?7~bd!2!SIj3Ow zJurj=w{1T*;{Oc{mE;YQ95G{eHRsC=4sPGlvf{x`@X*0L*o*`C{)yl~&g}<|Jmx8p zFPtQ|QOX<#8{Uh(KldVJc_y+mCm6rjJty7szkSgBe?RBFr25_dbm5uL|Fyqh96B=5 z|N0ub{ag54yt$b_i*YYRZ;j{Ah50%1G;7|`fDF*QBR}K#(~&}A{n4p;#6z<; z#%kISop|SeX#B{{Mg1S?+nWJiRL8>;-)&&;+?vvG5&GKSy#X5pnQr0~)X$6H>2NMI zIGj09u3#7(I!P=;1pe`XNA&gE1w)40^EYxe2etNt7k?KWE}P!*H%y(Whc;5b&tn z{6;PbpSfP2pw}og;`Qr!(=U5Y82#E-@V#?vzo6OFe#r+PNbDE)>GZ3Bb_?i}u~EQ> z^~Wan&5IvaA3u`NM=xf0cR%#;LH!;2iNCJDchcVt#KOAcxUJyzOV6smFXf+of5XH3 zWY`Dw*UGa#dW|u@qSuiht=%{CGMDaCXeJS_FZ9z+B0rq2{;B8G?wfQ5^*{Dk*55|` zd1p}ncR!&1!*zDOF1t+r*yQ!P$ZP1AZYSRH7X0uke7hDJKfqk5=RD5h8QNszc4w)H zcS>Wvtyp>OLDAZCg?w!H@eRJ2Lg={4$OL>-$lfTjwRC-P=*bZF+H$nOQq}mp{@OV!(8fp-;@k<+i4jcda%E5&LeK=Rd{hMGG&71H^J?1 zgUj_p;O({SA!RNVKEV8welYj>q;#tC@d@X4j|}q$zTbK2yA8w#ty$1GU2&>w7H+b? z)$67+XB^I+kPDl7_An<>Tr=mY9ekEGR=zv9(}{Psg5TZXm-oa&gxcqT=Q4k2-sfx{ z!V=ag4J`8Ey0B>dHvePJlg!1pd1tL(Oe|Ko4qPLTc)o@Z$k6$EcC*H67-MyQQ_s_8 zPQ0y@Gk2m}8OJ*2K9A7ez-WuUH$!KiGtK`p<3}~Y+ot4y%??C7eZCv217?gezK;xhcqRb#*&!1n1~&*b?I)zL!zy!#2)f2_g&p)KaK z!+!XAJEu1Jj+isVHhFfDT_gT3@AXb|-bg?1MepH8@Vm*0*SmFj<@BA^-L@`|b_47o z7tL3&22pA0cUx(TKlBdsP|yI^g3lLbOtQt#SdW< z|2H^v8Tdz!c{+1j!TM2F)>6*ZEoMAqkLWwCBg=jij$_<^6a1)8K46f3iO{z&eVd(t zC*eqaOzc}KEy|{l597P*PBgFw>XUkJ&NO8_@;&}XW-Mpl#ys?{eyav2pK1C8eQaUQ z<^YS%GA&@db++kw(yQt>bs}fXnWp+p%oq2N`|Zie_Doa#_MU0#ew#RUANjDcdo@`e zybf>I;y+BRBgd`7!%yn?tE^{S zEpj!2Y>KkpAemZ_%|4kS&f&4p6twXqF&(op0Ea~=n@`!A{ihm6yxa4Xcq8v&-(l!) zcHl+dD>c}?i}4kiIJO3dv6XBX+Vm>?ExJD)Z{)HUU29Js?cMi8|Fmal33`4X{ne+? zANMa4kI^6fJ(&QDhu=i{^KjejmOC8}ntkxg`(U02%q7eddu`1BEljmd`uJse3cTEJ zJPo{ed^bhXUnw>4^oDC zE^Ylcz6IIqhwJQl?u#=u2f3ivW;gLU6N%43zI2W!K4U04w$O=ROC4S4vKiEK9rgG0 zWWt|WP2JPkGh7V(F>)!O=e)U58*5IQQ}6mubFTVR;qlM|anS{wZ@TS)6Ajw$q_fs# zKT4ie&Yf=MTe*joD7o~|0#}OP33%%gAx+mY;hC@@J~%;)*Zl8&7U~ za{PSZiFP$d)_cjd1%JNA{7Qyly@nt9 z8O5eB&YvOwu*IL9D+zy3krM(z-aA)L#NSKwC2_v2{0wVYb10$DrSw<$6YeH3rlwwZ zj;wkcsrOClH8Dpq8*{{(aBs|!;*r#r{u%mp^BdfWPdGKdfoN(EbLjST#v#plG83KH ziA>#zKd^v!y4XzkWfpt`J-0#Yo=m=EJ7Wkh2Y2FNOMT#0l5hrwOzq; zJGb8Eom(55l`;qAem-T>fnhT?f*A|!dif6RTC41QtN#s7yu1g{y!Kuz<|0;29po9) z9{mOR@G>;H5PQ3$%!yaY<{smieL1z*JUj8Jc5-&I>Nk5G4>(1{t8Q~@KNC9gWBLa@ z$PXCBzaEuvL+lG4RwJJ+z5`P(I65Sqt#TE7Tf=&Ozx9Pjg|wEDRG%|C#9U&S*6(}U zXc-m4=QPaLT^O1N|7!1y<}Tqmj0Ljp{}-@VSlG>8^WwffMCU*&;C>!!oT6_pp0aH^ z^mU~hN3-5%=MOyl3GqnU>vMaCYyJBze=DGM1U+mthic3vwh;n&!z~A27qv2;> zoSTaS*;@Q1%74%H5dLQ+;9ze`f318@H}Q;jUV}d*keL*pc6R`sUd`B4!B0<^IH)yM z%gb2zwAb@%%Hqmvu}=Pg;;GgjP-cItr%z@4?cUFJ{Pll)4}H#hoyyLeY0FfQhfMND zc_Av03!)|2@sWmL{Ma4HK;DVZ^{aQxP3-rRrpD)i=ThiI@>8}ag^YX=BK! zC--twk~u-IsD1|Ro@Kr>Ye4*JIDSmnk&56{a#x4_u_bzC!z%$ovz-8@W}|i z`Q=mNnnM>LTeaR1sRE8Cz!UL-n}`oABtGy0-@6SeTT#rpZv0l3rAaQV@pPY_&6}QP zVin}$na6!;{)o^+xo!+Bahan1vCJdFYn}LL{oV%-H4fn5u8Ee;!|R-QfNRN^B)qRf z7F z2_FW(GcA5ie1&{M;K)2D=ceZK=6Vv>_qo?o(&Ex{2JgWUA;l3)qds%LzQCM!T;kog zaL;$2R(sHwscRN>L4W3YPG8#_wHaBq~ zMh7p)pSh^wc&yHej~wE!Z+pav-_BUIV=Kink@GoD`~}vyI#}cS6Z|B*H!sckaS+`Q zDMq)jmQ{@1y|{q&_&WSroX>cGd{M{%BPU!rxy_3skso#fd*0gNEy)ahqk0rC*A5J^ zIlv7}b&INwcRZqeQP53U!05jlkg1X(?R?kk>*W6T)EBOS?vd>t{k8&g448im%+e>= zLl)*KeK0pECrHhi!Q8_>FArwv34PaIPn)uL<=d6QP|Xs<=aAN31zr{NRHZV;j_dH*z`enbP3wvrV!l!(3Q_pJ#AK1t2L0QYZ zxb;Ls+OU$QjE@A#33O3Y+whB<((oI%QLb(H*Le2TrjEu7n%WwMH?_US^WChsWfCj# ztecN$XVAn>OYUq$?j+*jzrcfHP}7Np>;UiNz%uevaXnjsUwNe38IyE!NlEs}2VmoS z(wk=)*wd2X-otqQhVj`CY^{vhZpy#v#M@K)sYg^I> z?3KQ`6ZiS_B@FC}QEdbMHsEh(tlNRTgK_RS4gB}^3;)-E|Es|6(1$+w4`LUl!oL#u zqdYG)>)ZbBZ^U|L2Z*ci&TehwJnyl@Cs)-vp}?XMlm9|rcL3`%{O#l~&#Ya1ta;eE zry6$SNAc`AYwx)6_{3Hn4J60oi!XZC$xrB*SbUS;s%Jox>eE=vBM*8hHi-3|1h>ye zZ?38>2+h4UxVG-p$vbKS{w2!6Cwn2a%(_$M<~?$DcHODmJJyjaU1b%^u6A$7Zm6I> zhx%^#ru>CDO~B2VO$^C?@!o~2C?6wk9XP{`OBh)1C6|L_dIfe7Hp`O%_+ECA^xr1# zqsY4md@UR5T%K#6f!8l|nHNa|@!^DQkz zw>K{GEj@_eR%ITgUiquuL`DjqbA{JJcnMh-$%LPBoOlcJ7@QP+Zgq+dDeRNSi}4pp zE}e-ES@&NF@|ZgGT~E&td}!x3k;U2Q&iUXO*=%Hyjqz7}ZCdlM$fKAxEQm}hLGBDe z{+w%N65q8oe3APvAeYWTRt@GoG621_fiqO2w}9(0j^a(>U&WjHn-}~D-GeO?yP0yl zH#{P$JSS_q_CSSDbMB4vOeG6@96KZ!M~Artv0`C_C@l) z_2nltdHb+!IQzONx|+T~i#>VlLCWy?5ZqTkqnJqn_JYZ~hMY zdNqDwD=Rd|*PK6-7+KL!2J`;R=E9TKW{pmF%UyvDNB(csQ7fFvc>)q-mEvF`W$K&e@W?R3Z#I`;+O`u7 z8mHd9;=oYBx~$q0JS$t&rqlc-+H1K;G;u{peoEDK?D6Dp4gC1;dcO_ZZ_D_$y$m_& z;!)$FaXEn;@MLs2x1`9>cx%AS)6S$!M=|lNjxW@K{B1#2tNjjO%Oh@a25V;F@yLy0 zC%y%H>fwd<|Nph>weaBfc@wO?nO?~au<(2KCY>c|lD~2~b zoVQJ}^(&XPu@Sld3-KN=avzpHJOh0F?iyrK3JyK{zIVN56X)X~I|A@hI1{?hp)Z5! z_fX*76f7F&^4EvSqt<_UzdU;RoU@ZhmUl1gUHe&a9&`*pViW9jYB}!^TCw!1ysDf< z#9UZ1H<$gP3$R(*4PP32W$&t%ywL4V?3v9@pk97e*}d2?_Bl3+p5KmrqO)AW?>OYs zIsQr0&bGdG-po8Ddt-0q;Hes~y`ppZTZb@avOUt6Z=|-L&K}!^eDebB?{?as=_EE$ z?I%5_eLdgpw!hnV{F9NBPLYwh$dbPPW;P#Nid;C!c|?;K56R1f`Zwr&fOmpL75w&n zlZd0>_8pvGo(f|UF3u1~{o!ZJY4GzRd(Hoz_^Adz@*64-yYiy<^_4vZ!cPzQfj`8P zD~K67Im>5q%=93W<-4dL#(an?3wwQt0lNlg;xn*mtbVr7HY49UsN?xX`IFhB@QQ4n zVtn~^*a@4y|NVV+-`{bh?)(44U;N1YTX(Hnb*gOt?OAE{qtep%-VSpY79Nz z6~7LLw>*Bmobpb>KhJ-A=LOP*$?=bVcq$5w$+y&p$3&XRYo5>#&1i140J`1`U2k#P zo_WDZGjyHw9JJ+`u4_{sA(M^uAFV`sFPV@?74m5sM3$`V^l}fXTbbqFN zwOV}j8hnNA(%09_=6uo2YeAkT^HZhx>D6FS{s-_=yPLB#QRXD!;0$roA71ulxbmhS zyu3xu$Nuo*M;=r$E>(=n0w;>R^P6!=dT!*MzkY!`E~A8(16JPj;e~v_{|sJOcaxkc zfsf=v)3}H}W$$=!V6Ys0!LleI^f$l;0xTY?unyfu(JK4J+{@K}P_X&_g zvwju(1Xi(6U{zXrJ$i9_BQf6EClGe`36wcD#<&fh=#bvagl@5$jqZX6ZWz?Z1JYSK zuSRTO?Lois_sd6hv^6cs->>)v$$=oeb*xouO4z%ztb8%P1>%?Y5Fe8eTe7X-sB7aQ zXA}#g@$a=`XF*4au~^*aTmUXq7E5 zSpAk~^qckv6i9a=_XM8@+e5%s3GDK1?2@g0@a$k~Bj(^tU~|^@<*IyxoM4&x!KUo7 zB~6`$1Dm?W4{FN9uI;>;c*pvZWj&npM^4AtJwa!w*2z1UuwHNzd`w>MY`%>lZ#u9! zWiNM@)0esQ3Eh4>w(7yO+8sMthgiXU7{C^H~BpVug zlDQE!N*t#Sp&a~n;WkuWb`(3#zeI^CD0IGc|5RuB_8P}ox^l=$?rXTONw~j_`)?=Q-^%@Mz4ryq zzusTw+`66mmR9n86uK#6i~`v8KISYD=*QSy^p9u53TmCuD(FhX~og(jfehS1@p?qu+4@m$u;lkxh6Y$X+pgKc-wd z?|Gj0N8ZB+%1N)>f_a0Sr4DuFoy+-|Jny0IO~j0BW-nVh{4ZPK1?abj`Ar?Zs zG@^OzLx!%tO)O((^9HW9XEo24(S6rndS*AVFZRx!o-1|6StfHxkH;3`UruLEt9>pR z;FbM6)Wul^(3;j$p9K!HhZf)cM#?0~{-MZf=<9bm$?`uo)b7dm?4OsANAC^3sCPaQ zhEFB;THv8up0jd4hTJtV(dKNm!J*GVXZ^~3`0{-`27M&SeeUl8?hlr&)_-vTy%Qi7 zD~4>?gbdVt#>@SxJ(6Y&#ShrM8q4dj$yx)pyzE5z5KLYJ#wVh2!uGXm6T+eO)7kTX zv^JeddCpT{zi<&UG)8-tKCFJSyzKc^tnNvCcG|KjxO?y6)99r$#NB7k5O<;ljsFeq z_^*OKQsv9xfYtxw$k}l;kgWgP8ql@t!0T%0p&lHAU+G#eU#WO~m8<)-_ID|=`cCv- z{pG=??kfhN`_5^)6W!Of+=+KRQnIXAJPJ=1f6?l`uA9ldbql%&-Pfet9O%5ZYV;nm z{Gjw8a=ohx-Hm;tvmnQ(2Y1x?26R`#-}rlZ1V#qjA6ja=u&(ln~`0zvED#Vz=wN1U3U$B+|Qy*XG{n-U5_thzyt^1 zuCFO;q`zt4m4PO$;kHZ9p|>UHk;&Vn>%O#0a6y02U=;nPJpcwKbY2GiDn=%;R*jys z_?7-;KD}na6Q%MmuUYtXsiE!LbENB82g4@NTIIv=Mqy@({;#t7AD_;XT9Z{@qUgPH z`cs7r)q1Vq3{L^ZS=7V5bg|L(#MiH4f5UrQkb|^i&V9j-i_9`>Ua#zCovUKenBxnF zWXJ|E``W9KPrHz>s`G_>*|b(ZnY|3~*IMFD?Ao2xk%CF^2oCw+lwYr{8ov?W9Rv>L zAeLTlUq>1A{32+!4f`R6OhUh}(Vn@>80Q52zNS~dBO_edv$xmgoRcDZxc??FCCDD) z)>3RvmlhKF*^6B<{GRmQY5o}en3pi`?DZK9hktURWAw53@LvbKUk)e6AN8mIz4O>! z`j}*N-+62rJLwraODh|G z3bZ5rq4BLE|1#@Ahqd2X`XjaM<)SlWp5XcsaM>}*YhK265Ai#9qL+R_+dZsp>wNL& zsjr8ak8G}AWUo24^xu)b`Ie zTNvAz!=+u${Ej(p+Lin=r%jv8?|y!-=9fOKqRqxy$MiwImA*bmkFy?4UGhr`_Dd7` zU~Fif>AAH9tj|RHO14{z*~>B}w0tY;ui#E|lvLVngPxPtV7cFU9{zIlSQ<7#8n%M? z(2L^{UnT7i<^BoEOBNBAyv6eU8O+NM#W3KtIe^J5Ys(j~_ z`z=&o&*L&Hv%6ArFPlkAV57+ouwyT}FiZ3IET-RSQ*Y^3B&9$|E zza;*HC!)xB4-Z9WiHF;ShrIsr5JSc!?I-1aDdhvuxaK^vOINnkaW)#`h77J@&3`?8 zmrRsBcQ5=LmfZUwykV36^>`DnIL$i^-kiR<`cNw;Zp?naoJfq9d#PY}d$L;TeCrV5lyqQ~pr-%8*$~!l< zFf##Gz|uAze&dGnQP&3=#5o5Aj>+BS~{>a6v$Fm-On@oP-WPgKvYmF}Lh!!j9yX@6##k1(NMm+Dfm{1f253VvvV2eze-6?(vnU6RZVZ;Y+qbfWJ>EW_LMx(~j5dH$FcX=fcqwo3NLb zgYR1`zOyLXQPyM?kZPP~VzH-bsB=J%Mqx`{tWAX6|3bvo^tjjnhheQ6$G7DrAi+jj^2u|93#U2V9sp zQ+Cv%k(0I7F^cvN0P{v*&dhQ`p9PkT+cFF+F9FNuwCp{${Fuql_kLHi9VI#}bD%As zP5E)RUBCa5>}<*p=q=B>KxoWIgZndY%gpTr{?4q-`Z4L5dpfCS%%V|~(}91>t!iuL z{ug*QS}+0sD#xj>1@1g@>2Pi_Fu4u~@$E2Uc>VqtpqGsFj6F4!8-bj)V_In1nFm~=*DC6)V!V4{r{4kkJ&%5t z^WBS#t8~wnAA5U7EMJ>_VB}T0l^ClCzc(t@N;VYN)#jQrnz)|tzMq%ytlWL}kM8eW z_xG!&4Ef9W?gn$sehIE;x$nQ2@a*&Mv+Ld88T_U%8g1mOY;&!TN%oFLo^1Wd)cto5 zOOBl)sr_54Bnr<7`d7jF!@k3`3^sCNcS=P#Dk$V+3{Li2v7His_ArMKwWbk8=bqf{x97lQ2JBk>67(ix z*v7tzcHYS!mrmP@fJyeQ)<|^TsDTYVu5}$B^sikKYYp`Z}8gWUh@OiD+ zh+JmAC|xTU!^r0-bD+`WiJDH%+pXYri<42mJIyJoq2HW2KDz@N`IzaqbNCJLAiOu? z%kpzA-R_-pY1@Ja-L@9GZ3))I_Ke=AP1<o0#>?TemkY z8aw%6#)}J>g^hG*rVst+jaMJ+=cmBVdCEJw zu#pbUEJ2r*65341etG`Ao-400_2>-KTep{+derw@xBmmziF1N<<^;FX$0NjCr!yzmiR}~l zSwejJ}f+9^USVr z<(}+EJ5GV-%H{4J^Hw`AQhC{jvX4sOmqz+5zQK;&R%z|nZS%2X8?oh7pLo#54dSoF zZv7nfSzi{mYM$9YGf8xzHY@3)@>fhvX;b(%ZPDh3wIzR&+PUI1?MMbVw4*%}YHM6d zTY|;da&CWnMQCP?knmf_V6IFno-&uAo%Ie z2De?66JA6gg2UdMb1R?3cW>rVmHdj%W>QAu7sh|nNZEX7+Tg~>wZ1t^;{2n=!LP#F zFMGK5onXvlx1ZG5NnW~h_DbUHSHPbHv=6U@Ka1hXUCh%f;ZI%5&!IVrbd=h!aM#2B z#J%9~0p9}fkMFn$-*M3*gMWV#{yp4_hr*k{J#qZCz|Fc+QO8m-k{J9><9X&%{X zWvyr1Nj}TATkxT_U7E2e`fR&2W7{bU`CGVvK}&s-0($4rP5WBg*S@*T<}L7teswQ9 zCBXX{%8QRPSO?7{{vnI__5;)qE@Nb6oux<9H_8lv7X9>1 zbg3Mo)m%p%|6Qf{2_EJ;)0cTyC)YiWe@O-X6)qF&k-SL0mtBj<)FEBMnsd5yF7ZlvVS$7sB`9GV33Di5%JQ4IbKSGp&ceIftrp^QGlZ}956R%wE#J@=H2*qY#t3PS>x>h+RwzY&gpVl@! zStA}9(TJ>}Y+JdNH8)V-MtoIO$eSwsR#Um}z$baN>O>wrM}JPPbz_~e8>)zFk=~Co zUS;eluc{bhb1R@n>^Y&n=GKwKBCfw2*@ivGIDeWwpk{2{zQ4e{zLPpT78Oorz2Ft? z`zmLA>)_Rgh<#o~?DHyOpH~t4eEY4>t=mlO^A>ys*WjzF`GSpoW}t@Yx)eNw>96`d zm3rH$_aW+C1)M9Lz#isfoQJaNt__NTj`>1A0TxeIgsZ>-HpyPm2=K4qn{O$e%)P#a zYx$z&<2YU4GE(~H$>$nZKHm=QC(OO~_BZ!dANu68oqNmXG4h!;-f)#abVomM|Brzi z*-V-14czwnTCT-2os9qPp5jU3yJ}($L|d|%GVn9r#J9Q^o!#>WF;p(CRl{3)&o4O9 zJSDC9D(ds(zIZ3(x4bijG9JJ5$|DnRm%LupGs)Q@yFfYzdnB}peWtPt3Y@e($m%_- zPThW2Ext9$s!PxhCFC$Fcbvo8Genyy_qglsyWMs7R=e)5xuobju}#G`Cw^y|fhetG)`P5$eV>QC}~PyU`LFDtt{fd{^P>ZRw#Tx^UNIB-ecK zy5^VOweX>9wWoJsbb;_<=FrG<`Dv8zK=Jmnn`BGecpmdq@TPbj?SnAuMZ8zpZ{;}; zY#hQ~#-7G~d5p>R__Jfit_XBHJnW$=$F~Px+Mdy;zH`?d^gA}td2$stLL+$Eg%7U=9r{^FN|gy7t|_x+2)Gy9~2GKS&L*Z*Ly zC10K9ubOKsTfUi4W|pp52T++WBs~9|u5)bM&Nt*?~pR2lpO zN9CXgY~0_GD?&2Z)8|ddp2YK1!>k2M9*94s!zEjP4Sp2EPy_#lkvTQ+p5o@fP164H zci7it^pZPwc;A?K&)rxV*&6?z0Gr~_1)KhP@F^zY!{F0AS-t|vmoV^2h6=vw6!?Av ze4agVIyk*KX43lvcxNQQ`)UfjUjET>9~I1f`9~vjkp*-3^J0WpCykPaq5I!$UZ)jl zI8X7W|C`0b@O&j#7`D_<|d3;0M8L_z&LhF72e9)JV z_`6E&(a*ok?iJyC?a?Q`ZjBd9+Ce=T>;;g1@xwpLS@0S$6&|k|yt9_Hs$vjxH#={z zIJWV2tOekEOz*ygvHazt#gn_43)gTi%qD2BhI3&S@tehZ;EY|)D>GR8`)oS-aq$G?=X8eG@sO%O(z}%{VyN0YzQykV9`71x9h;0a0t$9f5(J!=x+yj$bf#d zjwJdJ%_wI4JIq%)u2YP+r5O`*!TsmyBQV7?h~dX=VY&ZJjdnfAah^m7ZaG{_W1{7-$AFz_8l~(+)?JNO#ET^ zVtUX2kWD3jxp=Pv9I21;k*DM9lF#cq%;zN|&3xL;VQBL?*xU})P2RlPn~x;N(E#Jy zNj^kR7b0gQTl3t0y+WUQ$EPNN(L{WSPr4<*4^3W^taZF(^9`s`N@78eEwBp_*Z+y^7B$qYi zd?$4BQ+A&ueyXd`zwX()PID`)+jfbbi8gu`> z4}jIvlZo(qxm4ic4IHEX5%}H8<#$7_j==Ax>j-vEKDdz2UhRA1oo(!gzWL62=*jQ{ zaIyccm)5O6R=(K0=2x=a*jbNWd1m#5&0}Wp;Jt&^yt(9(1U!UYI0TFS2_8@XUW+Z9 zsDESVKglfZJ&_)kK2E<99-JJ6H)S{3+$T0BHn_cMS5HIL0OzS<=2*MH=O8Dz>@v>j z-RV1Li381+z}LmZ*R#(i>78&tIE!_*SMV`#t@84R58~O*|6zY1*Kf=T#vl85Fn$^P zbsxVp7=Md#QO5il;@;_`9vo&?;x=& z+Ltv088u^BR;U}Ec|CAWbEG_o?FK*0g(kB&;~M)~wnOk@(fviCt?N!Sc)YX%TGpD9 z_(?k3$Y1W?WdFDw3(tRR^|NTmj7y!pkJ67II4l8&MVw6=fv*d~m#~&g`zd90uX&JS z9TMyCXgqOGi0J+ByM6Q?Wp3`R%itF_wC9btzKs)@}HrH3wH47S^ z$zDHbS+A5Ypp}Yu#ZQghqcFT+V`AF)e^1R&1G%$vFXLK09Ix{j6zK;T*`e|$>V58kvvdNQq2-pTJ8h1R4T$+My zF|geUY+baUozC82V9P3CZo<8VFROXG3zzUDyy&@^pHRPW##$bJa{TVVVDr~yGo}M5 zlVxRDt1BN}J>|(V$%vh&-Y>`IxiZYqU%;+6jl*Y^nD0LV?S-qMgIl1#o1ls1&_a#m zPBQ(;7g4Yt9~rnS#}{!Aey|wyqO*MuLQ`GPl4#}<_GC`DvV^=;+2o}f&~yp5=b^de zGr?9p#JFp{2j6&H_ILywC=ZpFbMAzZ=NZlGMPuMCdK2#$r?y)dzvX;W!`OlMgN#EL z_&TKW)xr3TlbN5yp9$?I*V!>wbZdQ!sXn z<{V?M@9MYqlP@A4+T0>%TV-o$T)!2&OXCID_WATH4D1oc!q}FzBSJ5J9~}waWZNd{ zVCi+@llpWp_k)0^owl_vTxFH7?RNU0c8P87n`3kDr)=*WTkCS+9C$B52M6qWWZyZ@ z;-$pBz3%%I`fVEy-Q_}ed7`_IH4p5Emc6*Ajy%?s`{=$(w_Vvip6=^U&qN&pY)pNQ=&&jVK+!v!aBW^sA;(^qD zuYG)(c)QO&HvSxVvk+R<_wep3fidnH2YxH9any}I{Dzt$~UWAA(Lp+qsc;OvLw)(17=&n zgiPz-;d}Xa66sWRCHZ%_uOcqQ(w^4g*l!E{t%ClneW#<79P9g<0KAGhS&@7E z>HJ>)ce*R^`wR9O{9iu&-SUaWMqsnx=P%=TB>2+$j@iq?8lm7~&k5&n2e+$iYd*0M zg~(3mR`a_c>j&tvJq6^+Do{D_76xw>z!3&-16;g0S;v2(7+d-L!F_iXdx}RmHpiC3 zw=vpr9M+imKFas&-S1BSYkLoBS_HVS4v8NT7wT6))A072P=VaE0 z3mF^u#rV99 zb9cDwD3bO1XXg`sn=fqg`}2iGHX%2*qEnwhZa;#2dYl++*S}DWe_<^C1G@-ep7%h zRNGsyS-tox&Be@mA-1fCUvFPUKInSG(aLvG`o+W0^vu50iOF~^di&ZhU z)r>RGJI{9rt!Jo8{@jk$KPe9iv zmeqKhvEA$XmiXQ`Qn3N}mNedluG}OK;-#G17Q2c5-b_ERVu3HGU;V(2DB1h3d^6?#93tuz-+Ph@@!_$$~W!QMKL#WTr{nJ8Y$V(lb1D`NIj51Ht zIWdL!yQ{J94kAai=dK6-+yH)7<>{Odd-j^%$s72mTJ!UFLr3oS zv5~}$;@3@@QzpQHjYN*2i$g21B^uaw^%L_guwN+LeJV8I3eKy}@5?)zI3G-$U;gXy zKHZw=^Y#3xWBbv!CVz&>Pn#T%7#Yv_!51;)s(is^%sZ#%aBk3GE8};8_e9w$Ijp@i zf=6`wZl839&n#9F7pP5T`CNh><;mxTX9;KXS;G0lL^#9AaEd<@`DM?B zlMRRJ#cO^1@|jPZo?qmLxr?(wyjY$@KDj!@|6=UXGHZ`2hx5_0m=hn`}sMuc99nP74u%{5$62N@9bIS>;29oGq06x zg={Y{YYcXM&3qU3hknj?732jr<@nymI@mgN#kcmC#{VyM?*bonb>{znXC@&*K(J6n z(I(*{TD0nVfrxD;31Y2nZC7^Pmi9+3Ah_5n>vpZhHG#xi(VD6DmtE~HK}1Yy+Z6Gy z*6tESMWvUB+uE($A9G2#h+4d~HHbUE_vf7NnfcCS0zu1f`}g(2$#>>_&w0*sp8NBh zbE+dYc9sxacamG;{3&wWZQkEdYfjGV#XqFEXJJIA(Jj=@HWABF?Mh>J>pl8TXKL(h z;oe%}+~gtWnOY9yKoWUiW4PKY%Ka+nP}K)WS0-mjHs7#8?-6&{kb0Oq1YR8Rb;TM} zn?jXuH-=;Pav9KjzxzbzdyU=;m&1GSP4QlkzDuAVlb7>J+XOb>&ZWqktNC}W#9ccf;aoAD^OJezd@kpO}F612- zZ{rdU;%(XUZ**VpHPBcT`TxZd=HSzq%|qHfF5;_=^ricFj|sB|YpI(LAG25athc9l zu?b;sK=m+Q;6FFs9+NxD)jvVqqkN9=tNqedoKHLwT~W$;re*kT9=f88yl^>juKahP zjW;TYg>02ib^0CKmwf97#;2-AS3Of2y?*^q?=bfD3g+7YPUGP8XykY`>!_MT#h^{? zj;~Mp;YU-C0$sYeXISZtj zV?V`tHg}7Gr(^#L{~11#40rGM`|s}b--AxO7e8@z3! z&GgquOf}G--dp(a)s;_imQ5HttD5~`Zf>$q%o;{)y@x$lE%!U|S$;d=O8lt33c>!w zpE{#Rx>vYLFedXcZH2cLX6#~vSJxIhf-}QZmwD)MEi8T=%|T$+9`qN|L+b!%Gr2tU z$vzLLwlk;?oZY0l>c8^&!=0CSF)|={Ug9g)aUUykW{+%s+4IOX$+um|vz^Gb{zhcl z0`$UsEANKNqwh5P*G6@*(YRgp0je{U-6(t-ADS2pb$XmzN}gzObYSn&DC4rGmxAxh zq66!Zhh|M{3+L2=ISI{wH?njOvi+4ayn(%EGY4!v@p9t#g>_^QC%chFdyxIFK)ZXP z-B(%nM*}?W`1?xEO$pwgE}fE2kHDud=}bT$vn#nv3_nGm_4q0JY`{;cQZ64mQ@Qqf zY%JOTRnU>a2YA3o-l#T`uanVV>81$2Pf@4h{izf=cXV$v?;G0ye(uJuNRH*4^5f=o zChr`++v^jrt~Vqgs9JQT*n~vFUfAv(a@C^hAsHgKhkf z>X`>p$597jk!Au9uB)?aIV zh1MGQRV$|bkSXXrMq6wD*!=2kCcm29&lg|CyY0~RYUui2t*0NONssMJ-@+Kkn&e&Z z0PPZYa;FY!s&fPNsdEGMxrjAhPYoHi%z3GH==@&f#%kmDcGo>&{N3*QP4=^4OSQ>8 z2iwJ00WbpI{3&I0!9?`7>i^`lj?b-J&@ z)_HAhD7HE@W^Wvwu#>&?yR@gCz4d$8W3L(p=@j`w@yHl(I2zmMD9$87m&1e3Ckeu| zvy7bjq-y%8rjP1Mjkohf`hAIhU#8z3?A>R~U3{YS7dVOyLM8G3?Di>u0ebNU#T7{ogUelzFh0XnpQD~7Vq%{@+3Y! zj9u#OjcVL9d;RXb2wwOkXZK$WUyR9|<1hK6ySf}5TDf9#o$tL0Zy?i@i*vkDM-5XB zZ@lgE2C`ugZy>*Nc!TE->VXE)Q9h6O`y-8=4Nhd2rdXps;OL*p-_Y}hx1ncfI00V7 zgDK>b>b?7CMh7@cEn|aN`nLBoYVXL~wYm2*_HSW+4>QK2^!o&3fJ5o6C_bL*c@o6p zc5Y={+Vv=|=1qx}fdg}|#iNY<1Y=h*_7=w83f>>)jA_aBJ8QskHTc$DqN9;VV>**# zkM0!jC6_ba*w6CaXZY>Y<~{}8?U%gsn9k&Keuw9hcYdDtx!Z5`rJcLsmk}p9TT==V`396w{VD#H^7lyoeUiT~?%cVSoZ)D%^Qj4; z&SBw(`dYiUyZ~-WfMt}{3Az{$T^t7uOoBhlc!vHyB>F3f7CcW+dH$UGm0DXrHPYC? z+4GlWJ2+dR3LUowJGO|p!fHQHKtB8Nn~3!m6YFJvs)_ZQXX2@Pu0Wn8@b}79-@LFg zraXb(Sw{>u_>Ot@-&rAD>E3y$GG^*8;4x%%@4_7y4mf)1I9|F?b=^f>Gaj(_;ncGy zpnpDlycX*Gu;%S+x>w$lm_iJ7fxj;rpHurAsF#ZEK=vT>=k?77htQ|+{G94i`7Ht8 z>ixdi@C^Owohtf#mRdg1sba~F2Iq(_pvl1gitdW&u{H-+3$MWcYw@+U&$5ve?jg+tJS{FRz9{KJ30!Ts+MAo^tGW$)wLFNT~FohUi_EJ50>QICzObUsE-K^q(+7CjY0!AQ(GiEqyBp}#@?v= zVW75XJ>y=+dE4d;{YkMOwGl(Q3_l-vCZEaW=lj>^)fVymhj+obPdAymqVd(abwxbC zN;~bRE`HXlv}v+0xz6IA^3e%5j zVL!(_!gc)3Z=d1sK48-s?wY^bSJ4N|MZ|=SPtr_Vo@>;WITdl&P7qi9qG|4mF>QNj z%kxa(YB9WwJ!Rx0GWD|$Vjr|veBUHF0Zu!hsdUqc_+uw^rr%PY_rv^sY-jvo+O;6x zzK70?l*Iaf$oy-IV+rJ_vqQu)eZ&MFyZ+tw@}s#gb?leX;a@_}ACDb$LTB}QHlSI_v#m!kuTm#B|o-^|nKfpzd*l~=silP7!nVe@ z<|LvpD&npF+2+b`C2AS}I_3#Y%RYJiX7fAoBO4bABlGmW zV2D?RD%D;!jXLwNT;FA759>ZD_U$`!WKV|I3dx?AsGsO(t^B&i3|*VG3ffq#)lb#7 zs=Bhc$E!qV^;R%{qr(M+A-gj5BJ1)C?rlYWtn-Rv*b#eIAU{+m z&0Py7x9jR2Qx~z0x8RQ$Ti_((AIHH?ZH+p2MFlzVZ*d+VV)+1t-7wR*LOHS_9b z#1imt1+x7^!sVUdwJB=o)zNJObgNj0==M?nUFdmV-L`8?7a%$RmK9#m{d>irE6+XWS?p@3$O|Aj{ zGJ49!SJ`jQ99x--k;}`$H8h-nZr9+~oDVI2gU`9phtsQ~%csCsD>QCvCv^rOyvDn( z4RU-)-78x=F%v$(Cha@J8;D94XS)7<{X-o5UIy&3NM&h6N<_{OT^ksKF}B)=3h z5(mzhH=r( zMH8z#ljD!;?4LBTljnitwg4oll)c$wQWEuDk^A~-jz?tUJcPVpij}C|?68tScxr??r z_UCxk{y6l~q^vKudLMLK0u8~d$+7e|9vOKYeNAFL%Ay1F-y3XCKL;P?=TF-F{7E%^ zD2L*7l)-I_Z!=^6HZq>}2L^K})qxy}@++SIpNp@4knt{hALCtY{Dl)Tdwu4Bj|;)a zT<{TPZq?wbhI!V4EAjg`(lrAYu@-S~pMnl`Cf7RFT)b`KGt*fY=$A9~bK;=#Vak9{ z>#Zrf`6~YttOrlRx3axC9xbsN5QS!krG$=X9Kv5MNha_G7f|5@MH6KmYf_p13rU(K7Y zKIEs<#`e)%S@r@ohtLB3J+A&n;;ZZ3INzCP{BAwh@yrA#sGa(E?SRvaH_~snnRcqd z(jFgsCLei$TIld1a65(i4DOc)ryIq`hOTODJlXI)vFoqj0nRxaL;A8_b-6$F>s7&t zUzePbX({j!3EC4pKSq6tu_N$(jUACUjyu2RO7P*voUbvn=O46Hw3S-h7MKT($y{>A z@ptm>t{YB52GXy7OXg;wNIdnC2hMv&gqGt5b3CNr; z@@Z&2BR?fewO6Ou>>UsfDDL|n~Ap9lPY zWIHtYHbkRuLnQrvjQ``--`^kO>~}+ZZqG~!yg3S7jb$DM1%*2{rW-reBn5ygnoO(RKbEAL+tQ+DZV$dS(b zJNioS9EW!%16NJyY;@L*8~$#zcXt(W((W4DbmKb|MGMup5thi!+0;*ZPtD_c2})nZK4XrDq&04puJ!>#NXJ{_jcT zjdFDRX{Y&MqZwOcE;6W$7~8^={hEp`ehd!%)c*Rr?OzPY3&qo}gfH{;|C!SNCD;o` z`T5y^&cA{_bl+J}=dTIq{5SLZzb!AHnqtnn2jwaDxwU$y#agKeD5A!ISkXR@XMCAn z`40y^P5u*lPBG6WVyaV#v(}R@(ptZp=1!_6kDO6aCow2~7 z*N^&8eD+p9KPwtCxk`9Iu~6kIA0QU`40O0-p^b&EYsL@c%r50GwFV2JE9n!B<3)xcQISlRc@-M6!=2Yv{gzi%v#sRk&h@2cS` z={qCaTI?M1@tALm|Kzp7I1Sq3L)|xZs;Sk;o;NMop#1`MK0c>YQ={jd$U0-6B2Tog zL7Z*H_b~hvz}YF_On9m@c(T5jWa-J^NOGhPS*80(CD%-h1DbKTd~S>{2MWc($793h z`62&!h`B!vZ8`hc%7?uDl1F(P$^Q)8&!^<2=y~EV)9sr_@(lmW&PZ4}->sT+__A9y z=c-=>PsoAj2JPhx#>Kw7cz-*09Bz-pmkH##Y=c_rpy;nxHMRfsP1*SNESd`0oBwpQ zRX9#nzkKY zY@BO*0c~f|me^%ZTjHChZ5;VSTb-R)RGw|q${MGbLu9IF{qu6_8F}7MeFSzdXLI=R zGv;gP*0--Ei|p@}vHKLKZvLqCW8Cj~Hjw1Q$O7wGNIn>SV$K7~UC$n3np)3RKHYl8 z|0CVLhI@(E#9#Uhsy(B zbhsP_4_xZn4g>FVg!khH^FR{%4hMOF=StdU_2Ott-w~?|t*)$$t%3F{9PRtRNv4b5 zKjY&#cz$>f@>h6V$!8Sau4aBc5!GMWe4_sL0{`W-hrg?t?Z|YO}?!4pWz|o!K}mPp5_1?F-1P|Jpm4Pu2%)n)ie6IY&2d zpF0G;Km8}b_o~Chchh0u`|po1zMGE#zWc!UE1|;lz3_ncit-CAgrp5mC;sfp2A-#2H&-Kq!%*K0581ogM zhnf|;`1SOd_LNJmIexO^W$jldm*hJ&+L%yV12G}xfaL0Q)lND6T=um41+wwMvc8zd6wpg z$(NUWM{#-O67Zq0gNw<9>D}WUo|qCM+Dq?;I0uo)cNx;a9nVzfg^t&o9V~;K30d8YwdIHM77^L{rQjn zdfi(<-r8F9tbGy!mN2lGx`n!lW)BiE8t5Wy?u^l=Vs#1p^J>h|r6 z9(u^sx+&k)$bOEZZ+&Y!HB(FLdDeOqfdlgXZR^b5D$c6~2QBm^-jJVG!Tg&#LT`v? zn!Xz{b+~c-oZvj)KQ2#*?Y{AFad|@Q~SL8m+6my7b~(v9<5f1F)`HB8Iwg{m;dbGvGrwHcsk&H z;ur&^tf{LnTjDXAkf7YmI zGZ){v&kkODo?}*D$cB}iB399>ngM;P*2Veu8dr50LEnB|V`1H4VqDDS3xT;PFPaF@ z-*YD3lC`&+sb80k?bez#?yY!=b1u2-Qe%G+oGDlS05W_%`e8A&Ae~|4=dH7mpEq)6 ziS8cNIrLipvaV(RJL{pN2cV-&`;5HJw!OlwiErBulC}Q#j@BppbNgw4)(wI8L@R^% z5Am$ncY<}1ObI;|trQMj8@C?HhXwVgbY}t|B<06#P0ZETBheF7Q&dSEY$$g34T_%- ze08e&^!o(;rabSQIPo;suj-WkK;LolH3n~f{7rbe zA3SXethvL-mDKqM?LGPT)!1lt(6M*_#MlWT@9rdiv}*bUpZ5PWVh2WvH;J#Ri8o1B zh(;H`@oxL}U$aM@_I1R)>TNu$w~lw}c&CAQmgcgMc$U@EMc|kF4tUSz$aT+6bi>z( zy%}8a-b&s}&>udn8Bc#tj@mIV;XO+qSsPGuz0#)%?K?HJ&HprCcmA*TI|tAIO<#ho zbUAsnv{yNad8V66J8L}Iz0`R^$J)~s#{M<1M98ZN$CqQ1LN7YYB0=6j^SSgZ^+OT&z{%z;=FCA`A7b<6rSQ+luC5mkwD*khX7*v)TgMHl!e`(K6ZI2hz+Af67$>W@7`98YgUU+Mf;jN;jJK-0_W8H7d z4NqbFV9PA>c}i{O(AQk;6~{(ZT~mrUw_?9vxDdQz&uTn#b^!8MW2#Pekx#p#!&qP7+h-@+zqiZE!r*@AgXQZuo7V294CL#+K_7>cue;dT583_Hp4J~anf156 zj`jO?Fs}4r9BRL`-A_3&Q;Q(pOT$Cy)m~*9UH^$9^4{23s`*MFt2}e&&*<1Ys<}BX zlMCy0xiI-PA!y&wZ8LPv^T%21IDHwM!q3ua;zOMs5KOvLES9=%Dx0zc1Yy%NOrfzj+|RJ>bs zotZ0iuD$$bu2JU7b9k6z^?gJ*$s50faYn&c$kYk`y2-x#4stc4Kl0XJ`{`Xi_$6v~ zg7R7YBzF#FyqsC|qYh+ClC^O44I4OjE5UPoL3BW8h^=@py)nO^8qU^C zQX{b<&`&w`q3b7d4t^=`J6pO&a4q(6+)`xdu7Z94=uYk}cFO@KE zwRj1+Y4v!hYYDY3#%~55yXM*X>5e~l9w&8hW`4w{D>wP`+vLx0lRv*rIrA&-ss|s_ znBNHQ!rbA{Z-+m>9sc}w`18BT>{Tk>yJb4{WbkPGGH;;90)Le1;xjj8$Y9sHkyUXsv%JhFU4oOLbqPU zG}d=*bfDSetkSFLm-Px^<82woeTf%w51Z;w=u0&?jT60jPk}qlg}Vh2 zTRWk;FVTQ%z_3MT5|;qx;2h%MF~K-Hp{1?ZFt>2$fcES5VOQzgfCly#Aj1rOt$@Dz zXxEHgqV>_=D?2Qm^-^=7{#D!1hriI@NbZ^6(@pHj*12G-IFA54?^@29HPLqqbH0Uf z_&C-@>uCg z{J5pqOvqQkt9tM&fR{BhbGEr}uj>Kev~|YCU6RjJIA^SpbH*Awycbr0bG<7YIzpX7 za_r~W`*CUK)CpeapTuO>T+Aj^W-BozdWExRrHmWgSJwE8z`d zMwP35URv$*(rTZVRtI=VbsaS?r8mxDJr_~CBL0)C5dTS5i2o!j#D9_%A7@O_tMUII zA_k02C_d@C1bgyM^u^_@Eq0faC&#tyw{_uGFLk?pNr}s?&Jt}%M#!%H5_ocQM(eyH zPtG*^I(wxrXFjKz6W|ZZ7B}v|%IrC?D-`?rsjb6w{U44TJ5O}x%eCNGuGaP_)%3}J z2QMZ3{Ri5MKX$<%yI7Z9tjjvilWS#N@ZT%b{<@_7bxHf{k`Ank?qO1l=ob2UaLM9X zWh?BulufhiQg*6cm$Gy1x(E;Qw`6brj&sjU4LESTXmF%ETf<#({{993e$GGHw9fvT z+z4x(6uRS6Xovu zCc&S+T+kf>*2dPogClZkcbz_#U2ve!!X^9Sx6qyO*J=yjw=B6;!yMLtGva@hO|9NC zWSF@h7P*v>b2^V%JnUqW^rd7|74^`gsAW!GYUwvF`M7{H5s8H;RA zAg_~WL~t=M?3&7XpY4)m#qJ~i}IYtI;P?|q8*>ftNN3izzI z;a|hujFTCuV@{5pP`d)juQj)on$M`mXxedHZ*8q1Jze{JE zGx3>&_I)%^Z#RN|b`*t{O`&FU$CA*p-3PE2X#2e8taZe1jl=Kq|K`%a(RtK#p_8el zE8g2eOeNiP6!bBwGmT8&$(;~8Tf&t_KA=nIq7SL(9_&iyEM5<;os|XQt`d0b4~&OgCJ(_~9l$IbY#}v)t<(grUTA9q z8HOUUqqkd4NiGx9aKAD>!`wA|4E;YXEXM9fIm3+V@Ug3c`NL+jpclvG2y*} z@sSF@uR{ARI`i^j@_|CEkMv}OScH6X@ewkQJ#^3r@uO+dCCIgUbclQ+-2s=F4zD0L zgg@z>Uw;e#8o8jF40ku7>K*UvX}PC`zO>)O*&2PwQr+3D7{)EET?>5PkGzqeZ)z6k zPiJnv1^(sdCnR%d+dm$gfPQ4Vq_kH7y!NB7clx@;`Tu>;htWmlvMq|b9;bdI39VUq zZ)1&-=4jTivTkxZ2_M47~J=ARNZg-xOsg=suve;OIo^@?tiA>`sCUpUpsaf>r?BmkJbWtl(RnIL2H(T zPqgRFtPgUdj@-6lNJ;o0XMLEPnTzW)0Q=7au)pZT9;B~}^XN-_qBWC_R&2-RJw62O z_W@TwaD|YkNzs643%~QqFQA8jv&`fEE#NEONNqAO6(Khj7cxACepjqh{Pa`wxO7ww z{(YEDjtiU!@2dl_yWGk4Jp4b$*@MCSj%x8u9AqYa)OuR4_AqdW_iYUSe6t7h)*B_8 zY3tL1>?O(E3c+mTA3o!3^4{qBF~}^*b)9Xd{TPyKVeSK$ua^RD`FnlfLa~;UeOxqi zCvKcIlk6{}k56F_or0{K>UrBTemDJW!B-WoB!guCJc-@Xk4#!W&RZot08O_!nl56G zCiiW>BRjzOv*?(=fTpFtp!Jx(S3i1Rbnq4?@#fY^yC=eL(k1? z^}+_e3l$fj5Bbsw`fOqjHM9wji>#WH2iHR2Vo!k&m*UmMU88|Zx~q}#C8J#*&tkJ# z-ym1#xbL>}o@8i``P4bkMP0w-Z^_&z_|)%ZzP}*bBSp-y7&C~R0OzokoTE?>Ibey4nu{m$83 z(*G{E8RXwn$BX`R<&X3fbo@fTud%}UBfihqcDZ)OTS7L2DAVW+iVqn%AZ z?tS&IIJNr8k(=OL@*wz~@c2RFgB9KwqwgUND$xO+QSK)`LUSykeKnlK_#=5NWLdYB9k;t1O;zeqQ ze_(i{lrVMex}=c=ZZ=nN9dLTiROgxry)H{-^bP zuRT!xZ8zPccIea>vG14m7+u8O;mjcpkEzB+@r%a_&E3~a1M%GXOGo$cp7_%J=kQ_c z_j2u_dh#+27LlTyUzfQq#T1uiA?Io*sR?|ITQo;)UieMfgni z$1TW3#fwV8eTnxVbzdb*8<NO? zmKML|)_nC-hY&V>hL<+-Zt^;N*6q`#=0IbGmtM*DY9qQJhVao%p7(drqLshN@UF9c zeVanI#O;AK`)8kCUB3O|4-d|_r#E@_?C$Q5#MV#)^hxfnUz6F-TB_(-Y;b?Yy`NAnme*W1W?ix#AhKFV4?fSfmX!=MN8E$5~C?7j6D zm4;V6!+L5T;WI@gt9GHoIm+UBwAH27IE_+%RU>lC%JT;B={2$Zv zR$}L9yd6J*2Y61%wvwK}=4?eqw2CK?8;a|5=R|BLvHknJ5v!E=51p2mLDURc>LW?atxsAXKY zw^eZgjj4XMAJ*#mqOO(HKi$SZ$=&tG<>t{v$G_R}Zu{qb`aRTs*VXRc4PR#J{Vv`= zocy_sw`S|vRR1hnn*FYAtx>z*^(k@%+PkOkP5gs4?APNguG3=GIwz=OTI_;PQ1ieV zI6G81j@5hJy&&28n0%Y=Ux8QgVEJCo2l&sx{0H6F?(Yw}FR(x8`uEs-3-8oIAF|== zv{y*-5_#UEb1vC0H|`(dJL)k**tQj_C+wYI!S*-}-m`vYTcQ1OmqIU7 zX`8oS&e-n@$;Cth`{m}iw(O$`?3c^74eXbz6dj^tipq2Sfh4jxJk{D=VeOaW`D3(A zK))R(rklH0$bMHDTcQ1Q1@;OF_o9*N0L~u(*V1WDpN%|TvNBu$pn9Q9ocbdEh7PQs zbyDmJYUq?->zJrq(V4MFRZ|Cl+y`tmbw`<)q;$Q`A+fT&tSf{Znu83x5IoL>e^w(m zbT?NYJj~y~7u^u?yvk;NcfOmEv3{MzPWn>(xX9bReLeHsMI31pvMR(GpH~ofls@JC z36c$q#$RY;u;h;7f;aiKM3Q00(q<>JNPI{ve4p1`9J>YhpJ2a1MrJS<$qd=OMrQE* zbLtS1vPoHsH9D)ZXBuZBDgHs68rgjlcMzHQqi9b#zvij2Wx^9OrtAi<6CK{>HBXCO z#dlW69A)Uxjf=f-uH+d$t+~fm`>5roD*n-b5%QlnvCbO}E9ODFF5n4A`5RfYUVqo| zH|_7&-`GSc-dQ7-cPuzB) zACJ@b>%jdwYQM{f)osSUS0Bz6IRW@&t4IenpCBBJjh!jl$nsxXMX!IBDDqJ?BX0gH zl!JvQHDBS~%!lV|n1jakX}{Z}_MRN%KtFR`OAf~Rmo^t1q!&k5WqC9u8hAhLGJX#6 zHSy9{|4**``dA)6J%#~i591VFX_z$_?^PsW&7Is`f;fe3;#!a`2WL) z+w=c(@}Sey8)xm?`RvL5#vf}2Y9p+Xw_BFuc%9Ovo$^M-CmcCF!`>KT^usX7eFu{ibVvTG~Kd+w>gj*;Gy zy`Qpe4Gp`mOzka*mcd|9*&tShBTXQP5pNqMyMZPQM zvV_m#Qg2nOA9rajDkcvX-Jp2CY|S`-Ydz&Vv;^ddaIU#|qOUNvb$a!7`G#Mizi$!$ z3&LCt%;kk(K8$%Cdj9fjysokEm~edVhgsh|9BJJbv+g(N$%89_Iau!;tXG>c;PMKV ze$>Z#^f6p}E_0qz-hJ)5kM5N_xqo6l_fXu$-}p4TpKf;*G_w>MT8wU4PW=iw=)UXV z->Z=g*YdsOhl!Pr=sLi8;46+n#-G7E*P$PlN6A@}XXW0#^0D3{!b5`Z)E2%<;@hUstI~7f9(-H+3_ryuV}!AhLgm17Eq|Y8 zWuH5ncK6lfoKCU!d^n12#Pcp{3)H9lHP!V`#tux?(szmXNQYnowhnYv)dcRmAdZoG zgM0oKGnb{zh4y``kj1R4>ZRfrk$<3mu#VVN;xceCn}2-w*H1xj%qKCM_bzjJ6Pr`l z@452Gey=g8f9f**)3?Ser;gP0eJTB78|d9C*Y`}?TspkIH9z%lVUKj}ybC-qhQ`x4 zHPmcs98(8%i5+K}8|Q4sxny|bBrfM&=*Gx@|1PXJ>t=XO_yCUN<#~Pay_MBIeoCO7 zQC=pd+lQ`j=K*pzL*-ESrF`eVa&@e17};O)t(0%w72!^Z>4Wb}nVlzZ-|*`>Mt(*- zn7wZ!1?~4W0ZR-1D7>P&FjJcb4~qp-c31v7vkX zOz5&2y4PvNQrk;y6)w}ZfC#&5p zHoiGjyOF2T_H^{pG2Ep9?av5BAAjiQcWggx%n#pe3XNWh9W!qteJ!Zq9w%fHzYn=*CGmeQ~|IqF16IB1$J(m=F zFDwX++B>qE->zIbtBE_Mp!<1E+$j}@5BuON<)MmC;%s|(b2I&08*(HuhNHS#*oV{D zaaODk*?-E-*fY>;-(}p115Wn9r*Uv1TX@hrar@4sA>P>!pMNp}K9Mm=_AKGng-ZEi^G4SBFv5HNZZj=Cc`R2IC-yG>+?Eww&1`>%)M2+Gx&T zq_6ujV~sFlQ9JmEfsuat=*P%1aOL1X8@|5}c$45$a5R*MDs{f8Y)8c-t?lCTYJu-U z_{d>=W4IN~@D?d4=+UM2C>k#x}+C@)};jo%^b-YWSqHurlY35#roc_F% zW3rc5qnk2g;J-!q&h*_pCAJc~XurR9s@XRFFLSH~_9h?pT42}T>Z2Ce8-3WDeAvx* zKI~0C?B+WkcC{1i-HpS; zad+cj9CNO}rH=rPyBo7O=5HUz;8c9-aBS#AHpju|&|QE|{@>3b?#}^zDI3PkA&*Xa zot>qc>_K$Gcehg;5}=dbgVD(f)7H=lv5yR$bo+Dy4yMG;gibDlP7a2{C}%!+byiL| z-Z0Rgv?6+XMQtY=S*l%jLMq`YNUjHEWo9Q2YJDu1@6|vPl?CID_UAXQJkE6TO+zsBr z=X&O!MweClcAH{wjo4AnX4Bn6KW^b1d+0)WN6}=ajc=o=&5!&xI+Ii}L*ckaHm=WC z`@w5X1U)t#ywjKBzu0TN#$H3;#jy#c^LESUIh&XTc3XS`_7wai8J7aL`8L;g|2OuF z;t9T8=J;U5P<((*<;SZsYbYNxhYxt3%Nh>m1DhYjck2DdTQznrz*GlqCC;$2qYx~q zf5?fQ^;W#&^W-pLnQ{Xw-yB7)Dc?&!kNXa`8-E|f?)mf3XVIy~?#bve zV2=87*6kIqM#d^vK1VWE_OR##8|P)}928Sr5RkVEk+%zwwWhsfEi~)e|H5zY&BPIJfo5(+1}(wA zP;OX$S?Utr=MFr3*IP-~qrV{D(io*LcoJJvGF10FNIrBqmp>bWz9baL$&LMKTFv4`vt#r5PX zq`+;y4tn=)Uk70?1Z}ZJtkbYAlG5!KHp33fBP=v zK7aq&%l+~^xev_4mHS@?KZhgtKkv6cnB4bP=gEB^-$A|&{+%QD-P&Mh?q{rn$$H88 z&%ZRZod2dT<6VAf4|O=f{F3ZI$-D)`5#rcwvQv|?fv~$Y?xGW;FZNe?k5?2oZ?ECJ z@6=nm>-feErT+q*V1LP;lHIca*{K+Y`l-OiG;w!gd;P?Q`e$<&E}u#AeyNmw|DEqb z>*xlj8x<>yW6O)*ob9##@7YI5EtYbH6`Y$@@#(Xy4>F~I?FAp^&^^z)c38S^Hv3C_ zA0(5rQqIQJ7#7GAws@7o?fzfo;kG4O`F-NZ4xjcsxNJSHneR-0zMS!udeP4JCxzx) z#(bG`ovAk%8(SKfugQ(N`Icqo+nw>bz(LM@dH!CZ`POFVrujVM&u6If;D$S&TZb{9 znICXI*9~Jn-#)~A^7GZAYt@2Hfv!c9lcBGXe>l+I3XQay`UUR#z}Fc>o0C{8{7$!4 z-cWO!RA8-+%Udg+qlM;1-nJ*Q;8(`qt+n*`MMr1OIxwxYjwdEU0I*lc$E%GheguSPx*M2v%#?{EEOt}MGcKu>YyV!69G!I{gVLE{fZ?0)BqO-(}fJ|1rjF^$C@FhbYh zSo<-tAI-i*!J%B2V#2@p8Fxm@X2lM2HDeLZKB(o4iO^_lB<6MVXV4>;1E*{(+FgjB zKbJPzA583^x3TVYlkbVAsA<6V`gs#`m`{83l#2`1`1_-4Kg}AAXYVe12t~&$u$wC; zo=Keu`HlJ5Y3Qnc=DDtKhB<$6*X7t}Gx?4_l}9tQPrD@T%-GStFk|=APJ3g1NIQey zh|P(3%;B#EzkCbqZ}}EUaIXAy3cSw&u0HlYoOCd_c&Cr{IdEMDT-ckNf^eyC+U3AS zJKfE4TRvRq%AE5}eRzd0(ZPj29o&*0EKg3w7RWh|j$D=7Z|kw%9q`o)+w$r-!LPMt zyo~(PI5YflRBP|#l|4@>TR$XyuYG5tr52raJDvL?$+K_PT?ym)&6m6HQfDMzN}mf4 zaaY3UFZJ(A7#~GugSSc09Cs!3n7!0fW3j)JJ#A}0(X+i3`-ZOl6t5Sm{p_UJS_xILA`HK-kMoRO>Faabt}<578WgI-6|dC!xX-V@y$xLz z!-!D1M_vQGup2-266x+JY#0N6EE+IRVct=Lp@q9G6$mji_&iQB_O+D|^ zl#>T`KY3Oj5aTg-ZA|s+xj#mneKY#P$pJ@89l#c-BW$a9_Tz_5OFO6|DRe(T4m|~U z^F`Vh;!UIL^JwH*+KLX0UWZ1EUgtSTE21H%w>#ituY6WPTC#mq#*FMQz{8@S-WM(J z=If{?Wb+hvSRD@tP0FuQwkij=wPkjtlYO)dt6Z zT0Xqd$76Ru_Q~WH&Vu)5IQqSP!cU?Fh}e^^Dj(IKl)Je+0^=D`#ivVL&5HRy`W5THnrB}iS1c?pd)WR z%4HV{H`x9Q@ZY|#*iV!@S@~4I)}C%MzJ#9Z&@;LRR=!2lKV#dYM!1al(>Hl%GJ7{y zrqk#Ao^d9h!dZg{BFl6a@8r|$-wF0@mV+bR*DHR^&;x56+z;IWTqQnS?hNb^_!Gs- z9~wWZr0ci8_3c+jlfWk$HvSuJ3_jd%KD`Pb*9Gtq&%;Ls9#h|+-9IILtr(AVwrpJa zMaQrwu#tUhDfq9B?-KBs_A5?Gg_nB0x}#&#z2Z&fJTKgnYkvpZyY+K6 z-KPRDi?@E2hrd&eeUarSXOEvSCpz$B>c_CRyT6gTaNsxKb#8>SU9h`Kxeq9Nu1X0p z0iCxe-?Y@+10JL&&ZM$uZbq!Uct3sQ%n3eH{$J}cK5uTW4%F52yZYzb^6H;ej?uOQ1mb$w}UFEZ!V$QbZ57Cen0f9U-Aqr0AYIo{;nl%aT#k(AKI6cJeR*Kh4V4c>Cs*HLldox#a_vRWBo{dRcNKfIiP?UWc_vVUxuV*II5sZQ>BHWooXcLkfoc^ zM^6%yiiDuEV&p!wbft?|_%cXznlt~*8d@3kB>VJgsMngmP&u5EF86#n&t>F9a_|Li z-ssI;x6Og|dM+=XB0V6zDH(7EesT^CZL#qa>4kdcAm89dbVUvg`E3M))@8dtc3%MZ zPCvT(CKBN2$ZUO+YMWHkGzK`vAlK9Bl1}pTZQoyUYV0-WC=MOs z(coROPVwDc{Bv^dD17-(4UCBGCBO5kp|z}x%F4PiU8{b>9hedC5$&BIuG;N+XT&~6 zJ)CS9m)B5?4*8JvF?s&le`2e`vn{~e%KG|oRb%%ol+TYHW#T8;a(_$P9DLQ<9C?OM z-81;hw?muq)=~Q82R>di^la8MOV0)Q58C@=L~Cs8sQ(oFH>&__IeQ+4;=eroo|FGz zy%ZaLj+`&~g5F`~KYCRk*u&id)qZZy#L!%>3R~8%i^{C2u}g#Xfygw^tdsHGuy6d_ zoa0Zeji3KG!OeS!{D+MvX7|gfR!%tq@o8VxKX0FN?fN&TdPS>l`ocH2U%2$)H;dnX z`px3@-EXeDVa~nl4t(jZwFg?aX^*&K3HRaa-V82!xI@L-_1e#B{Roo}m~QCS%)fc4 z`NO+|=8w&mldI#ohuR!sbG_QfX!N1635da{hDfm(-$pQUs>S!UW=0L1N$d&51LqH8 z-Hh!yBMbLm4h8p&0&qi9IdJp*ZQ%C(iR`*L_B$Ntqp`Gwy6{KC)Z zvp{}<+VtG~LOboOUdrYdJ|Xy#*9Xfl6dw#O)BZl9|;lWU6Ve9?`cV*lyeQ$jiSZ@&%C=>F~Gb>JA8O9JC$6LzM-m&N!@u|We_aJl z^1I@}Q^u{nN3ub2g(Un|^Yv2c@B!@!6CdBpSq7OpeqfOvRb68^su~6SH@>@vS`zi8 zJfqbK(_%N#Z!vKNy`QOjBlci)Zig4UgLicQvwnB62+gC2*r{Y&IL^5PJh#x!#7fI^ z+sfXF1Y=G-f1S4AfO}v4+y?fBm4%i!a&&x){m$X!_&+gD{;B{@TEU5O4{pxJ4hi7o zle|-QL!?vwbK~k7t#S9lduvR*E$1EPZEcrOZ1y4M?BmR zynpX5_DJkztWtmeOXySMFY)s)Bj~Rby0EdU(yn5^pZFAf6y7WGX=O3*E#{pZI)Uy6 zRP%tJti8scZP?$AF7B?0e>A4tdV^0pE?!p${xlwY*BDPQdR=>X-`4e-9I#JA?)*VZ zD^9kXI0-QY>8$k67#II37>9f%uYPJ6@yG7`_+yW$?}@~&)w;1hA=XDWf{QsToMcr)*1?1enoWs{4Kb9}LY4RLQ^Jv#FIoAUo3#~=Ug*Y7X>czFOH@jQIU zKXLxvsqEz~=%QOjS}GKCaV=+qCW*KBF|KaadfOORlZ$cn7K(9= zdnwI1^48ajACK(^JwD7GOrjU(>!oHR_n|ZC2+_Nq_fs>FBio(7=IF#d`*h;?*Tn>n z4&W#lLwT$KzI2|}|5QBXshXUu!+mFLY~LLwGHI=ojfx7IFP$tNL!b?b#08ynuKkH4iOEyx{5Ct8Z^FX zw>P}}KJ83?zip`e{t|z^^Yi$5b-whYLLYYr2)3x!+!iXz{B zbbg9*YB~JR^A`%?w)UX;?!o-;+UMyh(dr@}&p|u0P`=yk$FgVeW%pwR_h7kwSv&D- zcj4de#?NiSZw=wYeg?nw2h`JkjC$Hlp`(|sz{lN-%-4BrP33lo7dSV`Z4y2 z(spkJe(zrLwcN=#LFW>z!N(1@J(|6uUuCbT+HU5oz0a^$^atz})i~8We-AxS#aScO z)QgSbtdVb>1{}A4-@-A5yD)%NFeewoze|x}_`hTX13uwS!%*3m= z*!XqT@zh9@`!KjX{f_Nl{nif*E-UoiNO1qtI}GmE5TD+S548t;y~-YHot4rb8P)X) z{?uOM$JyBZ*I&!eJ=k$_Y%hOo!9t98U&WVZa*s578t?=AI45Q6-y<(BVePOTd$h-$ zdzj8&!kt@H_?ze@^oZFfcN4suBLA0T>+#$~-G_;x>25z0^Yndz%(ymw{9R z?)VQhpJR`}eC{}m`D~}=poYAM<`X9GRddxjA80`UU*aLR zM1$nhdOdG!?2DQUdTuzhwwk$!u3QabGc@c$!^R(XwB*y5_)amEoZkX;)*YBf@P3#* zCjUG5{Mb?0_A{ux7>%BP72hPC9?{8NVQsf>J|Xt%Omx6(bivwCY&3qr81lkdUv#wd zMcba~DY3pNd{RoC#U5fSuORDE)Jdq$;tbBHGd}3q^k>dqt%!XH{5alQA-P0+J4Y_@ z`~`y-)dRWML|zUt;y)LVJL0*o1aJ}bLAjgR)Go;(q;^O0@AdSvYh z_(%LfgJY)03>Z_(jjy9Mr6YyJFMHvA{E$OG9^F?!h1Xoo6kdCjB*Z z>vwA2_;ZLKu0Y1G#9voTl*2i-*Qs)o7g`pVuCI$$-cOBJ8TrY&(aqmhjZej`2Xbqu z4bOR9%b`QH)7&3p{QUDmUA*T?Q-eAz?y?R=8c^ukE4i@nOe{LPsF~UjW8~#fuz$UJU&O&$GSam9&w6b!U(8?~t-Q zCOlLz#+!NceWj@#$=W-!Im4hXRbygN+T(i%_9kaERBErBR}`&`-|JO&9`$Z}v-TkU zx-?e7JqIt0hIiQGRy*q5c2D1bdSpzs1Kafdz0t~#^ZjZ3dxG~e{nJ-9XS-_s>o(1= z^sxKy;`ccFb-dkPY(;7F_9uA%2Yjdfg}2+^+Pv0Du{G?w+Q@I~`EDG)!Pn;f7M_7? zpLga3u>^2^k2e3xcglg?z-JHV9C_o8idBzj-hMy7weww2-w8*5*!ph!;{o||v8e~i z-Z!r}f@IovKV@r$nt|Voo`HYc{O$CN1MT~XH`PR_CC8UBeYa#~oa#|D#%~$Jk+gCq(AbX-FkPf*Lr8`A(oS`S-xdjtga;58NbEr{Ay#m{blW?nm-r$6xoaYIZrZ3 z`DuN>aDl!r+KXGpHc!=tY^>x%u`j6BwF4KpGp-=O`eD|xPo9v{1o+7APN#{~^p7oL}O@e5sG~%L>4J zSsu*IC&W~5V{l%Z#d)IP2-8fn=hMvcEX^$N;cxWeUt0kF#X0bI*OX6+y+Ta@@OLk7 z$-@653xDqrG~as|G@ohf(|oU?`KW{c21hg9b=MlWyX&vBpI5wP;P0->(tLNr@;vx^ zCdGd2;NOykf5ra<{I~erR!+)YrKcl!`*vg#lx*z)RKWsl2rV7CS zXde6>C&fMr{E|6u*Qbr`D0z*n&d|Ouy9?4Wa=5#0i$CsG``L8%ShMafXQws|+w#VZ zek3-Uamg>YDbM$KV>UNoVi;|<4n_3i>Q4ky-Alzr=07QU-|;cCM{fVm>Br;?D`M;E zXN_NDh_BsUGhvpgXK6sE)etkHk9`eyg$LBHyEjzd)wPFxUE+1o_r98r39-IFzcInb z8TyLD)MJlSJXB=j&%~m7EBt=zm)d><@b0U-+V*SutQ&9O{du6@<@8(487b)_WM|%-$m-zzmt2i@NmIwgNH`oZS>)7+-CcAwz9#)F9Q8?FN$g- z?hEvLDgCbS`>jxX@7H4n!+UK3c&`ie+hO6oJDZfkA7IqSCG z_A59Ij>|tB`-eckQv!GZ-tG$U5W;uJS+^Gp!241VUWQLDO-qNHQs-&&IdO1rI?8O?$h+=-cJxWR9)>E^fLwejo5f!x7G&V z@7zB8sn%EjA|}5_H5Mke!gq~)cmAM$nl_wtuzs2g^uu?j0w` z38}xJl_n@ z)9yWT_KxSfsQ1aCo#?THX=ix>+G)z8o%s0Ju0X$c(=WA~j^}$T{w6$_c3KM1&Mg7j zDW70?=!HPPH>%&UHV=y|;hfYH2KT$FK)-he`mMA5J`w15Nj@H)B5n%3Gz4Ye!v*m0 zXdWIqJ{(&Y==U$_w;ta|GHQin-%n-?hWCjA@NNpg8~?Du!=3bdEIcG0ar)t1@)vcZ ziY#68cTKe1v~8vBs6uVW2HMuyw%5~kzUt=oR_lI&?uOr04>V82Z}U{+b;E}0I_eG4 z_eE!Vl||?9Zx;V9kpF+f254?yeN~BQZ(n_FiO~(JSyT=}-_^}7F|Zl=(o<<*`|?4? zJDIWiB6h5@UhnHV->En_)*1d-XBQZ2MqsR{9joRbV~xritB?F!&b-R}v8LFua%BCa zz*s%A%)F)_WUPG)h%Jrw9`EyUw(wHh_rl8x^nFR7@96oa?{V~QgC*NGDIi&nKG~Q{)XuPYy7^{Lfy1>j~D`R|C zdx)m{I)?L^Yo0xd-)`K1t{`4NEq1;+UlzFpZ@cdjKqUK>}^e@6_DuclB9Dn+oasKpTIo-kQhGi%C}A$<~GH9A%Kt6MoU6}a5o{+n|<*AQRHz`%Wu%8dnK z{XK0I#|_FAQzHyaiv1aVNxb%I#&!M5PE@?!jBjEv*bu@G^V0lXyZ=MqYr%nZxcg3Z zm`SrXBhA|Uk~UkG7i`mA^H`CY&rj8c7*xT29<%GVg*K6+hG=u^l-OEy@sDZKICF?L zui7?0qD|_UA=+@4q564{HZ7BeXfwgKSxuWMHw@9H^k_5p|4o}MV}@w+)G21HJ8085 zR6oy-HT|?|ENsAh{FpTvXK8Y|#wxrP-8Jvf4|MZ)v`Gcq1nI@6{VQqX(@UG|$rSXe zH5HACwxCUKz$Qx>tpkdnl7tcL@j_9_!tPN6~tJA4fF@8sH{T8Dm z+XDVUZ{606j_j=|w|3?;fqt*0-^5sJgM{QCJUhwh-fX}37U*|%px?N)6}kicewlt( za6Y4S`Wor7X>|&ntO>~`z#p8Wqgh7+`ngGbhd<% zH$M!(SZD2yW%O%fr?w_XG1Imu-)-NtKbv23wPP+$`ak{b;D5&O9 zXND-wO5A&1gnZ1&{M*6vW@7k8rXpWe2ctV?r_S2nu9&!JS9?XxSps}E@Xks6hOIcE zP#(?2nCF16cuCaMx(Dx9-D7Hpv+@3d@R8G72Y3 zK77CDxAG$YH*!V#?Iu3!Cy+PepYD*X08a}pK$nmMFnv&yW7_dqe;T?lOb z%;^C>cMwYtfuDuI^8o+!yn-D5!t(0M2l&_Ojd;G*i*9ER`gskfaX05F%z=OR^S9#g z!b2zc%HV+*euKKJC|Q*|aq{1YBmK&z@# zm&_>Q-!%SS0L^U%zs2OePv+k`=zSgZJ`KJuJ~8_E$^6^Fp1L*gadCO`<0tb^&lP%} z%J2L$zZ?G5{ezrAdfuUNJvspY3*g$(Yd-%Ll5Z>E*Pwh8|LWYzlldokEdGu3FdzPH z@gmPRG9Ps3d6B31j(?5JQQy_-yJz{1f9|`r%sWeKR+j&W`NRXXuR7Ica3?zJ;8nNj+jYbpsLBHN-k@Pxo#;Y<@YrpI+l%!#V$T z)Msma(a}@D(nk%4_GxRpmG3mYn54!J-w+>4F@bPb+n1;Vz^>D|NXoxbOEjSayV%5} z*b^bU&(#o_IYg}OP`u>iSrwc^R0aJW1uhmXsh@Q+{jWc9&WokkXrD zqu(yRa?z|EMMZlj)2@W~p5Z+`rm8J4uvtw$%j@i@3@5RrvCfeV| z-(mj#(Pwk<_+=lDk2*X~2^l=r|1pclq4u*Bx=-{P>a1iRuYb{Bzd+7ewo|n~-tXLa zYwfz#bN-TBw|)M)Nml7U)rYU7ZmSkORD%w}&Yz$>vV1TrL+w5l+d8W+ZiBCb^+Q_k z&p~ghmlTX$+jD8G&_2Bn2WZ;WSM7GN`!u&AKy#wU47}*W8g$_Yg*QdqSnxjSaJnTo zkMH&+3BP+bWqEM8@H+k&3SVyg{~pHp&mF<>&;O4@uUF?07~j#$w}(M5w|#)|55`X~ zy0P>4=_~$te-8Zgs}~NvKGp97KSzq6UUxV>2tR%JeZV_he){Mz`04lme&qQ1ieZfZ z%Ofzp@;>l$r16o*ayyW;j~S0`sd&p*Ep z{2VEMn(J_SF#dlZ@D7)sRt{tQ&m6(=hoc`(KLX=BemZs-^fKlHj6c%&!`XUX`6s>j zC*}-a{7;>|lfqXCXryGAR zg#Sgo^*{x1lozNamfx|>ANRGqu_^+7-JtVyhdX~_5W}5+=aHO0a11s7RY!9E#9xLx z|0|E={DEVr`Csxr=D)|#TUqApEYbfy=q-+~Urs#4`}OqLX7X_+hEi*N-W7hWyNd&z z?vK0I(OsjZah>7p;t8+vn~M$T)6x6IdHE5;f1DX9{?}Q`1RgdjpVv6b=Jghi)tMHN zOk7*_R4&e=a~D5Lj4T+l`s)C!ne!jv6)$g%{>#Ch^7->X7WUurn}hdC!!LR9E96C; zA3sz4O7S3*?|WPOTyNMgu*jYBW@Aui1z-~2{`LtgFLpT?T>K}1KgBx=;m^v8-1U>Z z=wSUa`5=GY#^;T@$sac(FZ^{on7lZg@&0&mZk%iF`xwvex5$lGeokkKs^-9_kz!vq z+w-S%CR9;Zhm(<83dd>sh$jm7H~KII_X263jpBE~nC6NAJtPA3@LYlTR+}H+Qk+~e zyA}AF4*`#0nO^`F?FR|MQ5~QO(Tk&r41E^RA7?@jQF4E4oo(J?aiTFl!kBNkG1gkz zUlY(5gZ2j1%FO)s&T<3IZzno&cC0)CJ>cdiNc{)FCDf-f$bm91EV05`x7Y}rMxqjnt z-)LjLo8QgKotF!(FS&_eJXJAslS_uqTz+c}GS%^i%WsvQ8^|dV-#58JK7;u! z4ZQO?emhkD?z#ZX{}EUV@m!cbLdGVrac?&tdtSit8GRaumeT1+XF6TPzv52$Dax^E zzvNxy0U9P!v*ev0lbsnyo~5d6{#@&_D)>9PP_@fRey?TR8pf|d#@Eo7&LmDjyFJuD zc}q@;Rj4*9#ePZZpmfgTf4=ATn`UWMYf|OUFPJa0@;0mALW~oZ&7oT9<_WQ*$N|-P z@C)m$-1;E9IFdWY$^IBa>92#1=Z%lO4h{}yyrT{=UZFhafw|=0KN@Zgy-;&v^u+}Wy=A8&cfv*4=T36J z;U3TaKGj>c#INP(i7fb)&T@qw=2da#O#&GZRv+EovQN@Sq}6+&k>{o&Z<+M+f;Mki zvp)aHTUNuT&TEP6_S=l}mT8;?SA~|TzXg9ET2>zz$MpLX#%2t?|E$`mKV++(qkMi! z{XLW&6Xu>5*_eGE$zIw8^bu!l&S9Id;B9YNDSu~R0M3zukMDcv|2*|~Ap8EUtaTN4 zHr!6X=6+rE!?W_$>bFBMz3N%`!GYjUXm7N}I^ZqSxo?um!keDsJR2NN;CvsA%N}*p z2YneF&?cvk-MM{KP4wPS`zrP?)$_jSK>fuT(~NP0kIQ#*ajEtd8n4yD9P031s9>F# zOU~N5emwpYy}SE7Mt)K{FMA(lVktbk7+H8Vat|2X`9G59De|oH55|;v^Y&cGURU&a z|K*{|K4j#GC5^L6yvV9umvC+p?aIExd^zXnic;l+N9?`hcyHbklN&DG`&_LzuXM?h zStB=lFMRYQXl$B=Rqd2(9(7abg{6Go^x^FHI+t`*arXOC?krdPQ>(psBbHn-Ya29u z74NL3FVXzZ;DPV+yoo+Ui$8-0-18}%-L$~JTiK2M8fWn6?)fo{?b?Yh$9y^T!t0!Y zq2Kp#cB9}M0~|SRe(UA55sldPWnHHNLsf;hED21UuMRFo?wvB*o7cqWt>=65MlNam z`VZ#ZyuFIEp4M=d(;oJJSN+n`%$0sW3*g5!qIVxpn&WtW8wsqYf9Cigu#N;){id!d__OietufEirQ{ z-Mi&%&8c+nDSVbPr%vWn78<#91#sp2ZI-RDyde2*?;s(6k3QYb86%0M z=v>Z`O3g$Ma9&XV<<*tDE|I;6ZMYbH$=G`DfnslFEA(^)<9`uZUiN)&*&4=L03Y?k zi&ya5JigaD8~y`_6^vgN3NLG71{Vi;A}0Jo%kR zcU{g|=<~TxBvi6(2lRaha(vfptN))YDqW?!(6f5Kr0WltQD?$Cx~D=lPYvCz_arV; zJy>Y3WTEcMc|*087uhy_mm_bm5BldLqb`%2qCUl^7r`QVCHmOHyd|f8Hqo1R+ewlS zjk9(klhSv4%R>K`xO0K8s=D+2K94+j2?`b!Gzke$wbG(Oic?M!6ogi7)N60)lt4g0 z>?pM}qNoWZfD&6d$dne^@)9J+M^l6mYMp>63Upc?ojOyd!#R0l6v5V(2%7u-t-W{7 zK8F)PuXArcpM3T{d#}A7|Mh?W|7$JwP}AIrcg*T<^Nu&+9WBC3Xh*d0CbZDZ@Af`6 z|9R7)g*Tyvgy#+|===_s&piR3%Y+|!d7J9=(&|jcCR!DJd1=%mZOhm`Rts-7kMwZw*b3L&Luhu%-#X+lYN=33&8Ov^seSfzWgYBAjbY;b?jZH zeLX7Cxhl!=`3-Qdb6_Z16YQGMxtb>xc$orJKAT8zOIiHz6vem5arQcXMMTrGxlZvr|ip2a>vyd^-24D|Gjt@XEd74)XQx&y;=jb?iG3wpp!K~w z{NeBkY>1?1Po{XbIK{ICJX7x0a^)a#U1qL<$WpEeb%xTy51O)p$Xch2@cQT6+jc=_ zq^je2m&lJho_C2XG|$r`^UO6f@{m*RL9Ut?*N!$Z2JE&2|3Y8zPq;p-tsmR=w7Y+# z==+nN@%DBFJ8T@DR-=#V?m{wJft&Ge#@g(hRy3o3# zp@MzG7z^`p+_u+rHoPygxEPzw8Ix>(wIiI;SR3HYZ{QcxI0w{JtjvP9TN;DjGrmWZ zPwK!#-!_1c!n;YL39gdO;(;3&k8tw`=su0u=uOy-88fFtTku762&4A`lNfzHLR)o| zn*seTcJc|8XV?6S1szHD`6IvL{HG{Bk7zFQLA#PO1IW=|kFBXbRLsmC#a@fyrdLAw zZ<4dfUQNd{KfKE1EUF(*U>hu+IdD`OI_++97}ICnJ<2?X2QK1yI=YBEF3q)p%ivI( z`Xs+hJ@*Zadm;1f?StrDys?q?(`jEYa$(y*-?d-3>QH^!_e{2d)-BZWysgBwckMad zSu0vfi_|*TSGoS$-0KX0Kx8}jg$Azv*6%VWX)~vess+b{SCfI^I-X6Zt%WlOjQVSP zdtcrEg{!yC|4M38{ub4}j=FWN3p~8}S?*KOSKC(lml3D0q15f#-?slCzTXb^;1=zL z<>t<=BL`JJxBi?9BK=UlvmkU512^QqDRF#mD%YDbb-+7U>-ycZVZgs8aMz3l+PuIW z2RLrqTAuwM-Der1YvO-SzrFkM%`)ew#{K8=3kr{gyDp5cMoy*!;|`r-8um$h`yCy+ z1i!2C2}=htx<#Hf=cw=*87m#=$QIicII<0y%iI)x+`d)0u-ZS+wax5xEbe}vw*UDE z_9eNvcYs@4*EoAX47wd16~BXzwM{u%i?yk{S=%JN)#m%0i3+?bS(k-u08ah{pW`6Q zzYl(P06DU6oap5Aq9y58dX*g;Nbl&6*H3vqeLbHtE}zz1%=F;U&ph}u^aAnbGyOLM zw9b3YRp^JI%^SY>vAs_LeAoE)oH=`ra~TUVh>byGQ*^E{IAvrDd~JA|wcJYM8T?0n z>@}BJHQJx`U~zn3YjUHP<~%;ch9|m|k3B8tdDe0_j3NJ;J=lWahM&FJ>-l{Vxiaz< z2RZvgW!*K%W*c-inbX6z3t@^A_4XlKJ#8XR*GF zmAQ83YqrQ`@_-E|;CTMIY z{Sl41=j7~QJ!>Ykm~c)HbftV7ozY|VWgcK{Rh(RFB}NSXctsuc6gc&0Z7lG-E<`;6 z>XE&F1>b6|tonWruoi!2()#4WGaJC263))6qyIV5ougk4rw=0@gq>~HOjEbY%Wo4E zEmM!-Ta?q7M_%#qiY)4Fz_;O+AImzI2HuUG=F1;Q8`4E8u28#@$7vDObD>k8x2|bd ze{ATr;#wOf?m1KohTD6nEG%c8Id$l~tfR#8HJ(<+lSYpI2JGTme46sH=(%K_bT+f+ zKd_=7BNq}kNh7ylzQY6E`pX^uw?O<4cpX%pfOH+cm;5n&s{_Xh^8FWEBTc{83^y>i zo_?F($aBHu4_AKN0q-3bp8OY$SA0nAPse6yq)Z?BS65$;`q_)$@^j-N7Mz-8T}C+W^evCuT2D!Q-I~H-ru~H7-0@Yo*V2 zVUngcfQ{O7;WMy{{aq0{bzUa;fZQSexo^YivZps#Wy>rptx7tKcf8W^e#RKfeJ5Y8 zLoVt3#LS-ffaqJHW$i1Z9_DFZ;B>{3M)+4Lb*OFKM=5X1bYKhq)-yM@{+$+?3vU!H zxO;gtGR8H?Ai+WR8_ScJtmDineXsMc?uG`|!uMqFtV33b=A@fUqP*sK zJvK)JcqDjge&n~bbxG-o!Gt-lVBSi}_1MSU1i&>DZvfZo!8O5AybYSWUUOej;>+)d z2~p2|oIMd`&g0J#@hQr+Z@J&@=i3Cm>a8y4{5Gyn zrzOBZbMzmEF3L7H8JH_Bo)$U8eS$t+s=YL>hzxuwE+gwoL-`MV64$5q;QRWdXX1X* z@~PQ0G{Vr({L9gYz>O$4=0|44Cc?kKvxC9UozUQpw z%{~)dJSp+LViK}j-ouWQT~%xO=ZN>p$7gt{;V=3w5LxsSaG1WSed)Kx78p(6p_gZa zz60&(;!ltR@@%DjKUDYVz{Lk!39HTsX6tU{OaBtx}G%Yy~FIejCGax?z<21Uf_@?|4-y}~( zd`0KxscZ+|p&e}LxK7OPud6KdomOt;4;5}P*0at3Io~taF~+a46f%~n8VkB_4E`%z zbjNdq*t>N9Gsc7NoiHAL=h4TkM|{;;^ijG>9r)wou#sWsiMzJl6pZ{A^@*n5QN8rZ zs{>xWIZoeQ9UagczdM>I8jr{C6uXn`5f5cwr~FFf^=jg<(i_A>rDM1;zOl$^FJ3&> z-{=^>Ttj?JzF+xAHs#oSKs+D_50KA24Lv3o`5v4(ZPaS;-sok(v~i*(ztjQc_%tEg zb|c$%TcKsUkxNatqleQrJQ|wMitIMm(B{{<7Mhre{P&^Fe@`E>gC}1OiWkubttHJR z)+Zh{5PsB1-5Y5GfBwG8(~Flh)1MalQ_GmM(RCXVC2EP8*$GbB&>AaMc?jiX8_+Rjcx@47u`!Xw`&35-Izj_w z%T<C%slw|1OLXV=yj(KdM9!6$_`}Jlp$Cs(MmAQ|!q0Yo|vd zH<}zB&W9&Q=Pvp@$!a4nw#NGD4dDWKVcmKgC&c^zd{j9gw%;RFy@H#G1u?eqXB%6} zzH6U?V5BSbr+GL@o=Y8PA4qm}#ZNnI*3?mxi5p6;Oaw3On5AMX!N`df*n{u@#ig3y zUj`p<#g~si?;YxDmA?u2t8WvCcTXn9B)K9OJ_tPv-~N%Sc=$WC`&wJZNE=34&mM?O z`4ljUoC8LRvuI3vp_4c9Nwqt&ay(;_+%oH^>Bp}blY9>HSu{>$T#Q9=7sZBLI5#_T zah5ZdgU(o#i?WSzB=fOTHE}++A05T={JHk5ayq>EcgCLv-AnGo^N>TE_y4VZg&+FR z+Wz_2g04)NjxJj6oRhmCYTFpw$&(R`dwyj51Et$24y<{OLSGvOeT06E9YtNMha}du zI?pop(}HZ-L&Th^tA}_5^QrO+JmnYCb{+LC;2Y^g<{N(hM0q-VD;Z|!WtZ)rb9JbM zXBmvO8+@`SvKig(MGwrB+xRcQR$z1CRh_iIjNlc>Lxv5(hlSp)Hl>$KCl?IJfmv?G zP2YE7v%6*WPGueju2bO&@-u6kx@!NG>Dl7Lc1%xWNfQjf1>yglz)$7Y_^pwuBS3kd z%EONf(3Pe+wtEcP$%bEA*z7UdOBlD)zm3Re@ADGIGKH~tpGh_fHZvU9yb4TQc+5(I zM_q3RcYurLPx7x6TvuG;2l(>qfwO!g%0sOs$7iN=JMxg;lJ16%w+6qgewT2SY^WuE zY;mu(UefK9Z?uS2=Y(S#L= zZG*n}W~B5)=pvcE{%xR#zQ!ijwL0X`mu1K9e@k5n^yMkvL0^1h=u6)Kvz>hNS?TK! zzligsRP=ST@h>L&_X8pDdu$5&0tVk9=8!;NPFcZ6w6PAjogQzi+d9ff?{xdL zkUrH>ca(Z#v?agVP3+;APJAy~2JDG3X+NjJqui}^I3h;m@oRbHSH4P z6Wf|b&hhk%tu1LK1?(ThzCoVn8~X5^-==(aygWK!e7;kR_s_JG0Au2#8gG*sudlTb zJkWThU(~Y?E90!u{10QC8l%bW0=D(|(RR%oI9G7j95gWp0s33oMS5x=@>g(OFt4Kz z>zsL>?9B7OdHNt+eADtJ;9{L{5gQGa2oi_yE_%d+n%FI*H( z2Ea$#250XiM+VAI`X+Mzv*71SPruKBp9W@snvjT}xyC>9@aEvmT!Wth^2vS7VS!>; zz)ZTn^d-S96@C0;Qu~9Fa8+=N-i~bt3}V<*!qr5$rAM~WCoir>ZwGGZ!h)NNul3ZM z3T_Xb1#Y6ZH^_yMT@V{%wM~KM($FX5f8IfCvyt~387nzJ9r)PZgAOk+uwLMSwb~LLn*5_ljBgCT!Bgrw(1PDkIX{w1 zDknX|l&7t9{3-)v-#R|*g~SoeZ^utFa1j38z{!_2Kl+zFm&{N6NpnOlsG%?MF_(uK ze&V66+nqVt4NbwjI%rCKE$Z}NeRSJR1-B!N!wa{;N&I~sxX~FcjiCJmT5{SvA6ohg zGQBfe5>BK|E6AUY-jsGN_wa^Pa9hK?M>G!(@7Fk7`fBW$dtd8R;WzZ_o%f(;-pzNi z6=+v{X|U$IZ)o$TnS)0KXkX`ax$Q3m?<50CXj?u7;hWmrD4RPK{~rNf-)hrT4BqJS zqK2Cp{|Ia^cw-0uzt!PG@F3BY%m1s-1uJxgg=c}$UFQL#!W1xig+97+Qa%C~J~_Z= zD)}_)X6B4~5!w}OQt|6+J?+{sviY?uBkR=WMBsCc&3jVuot5;#3!~^n=I9#e624Oh zjGBQ}XMAUp;0An+J|VpVdE@F6Mn7Oo=(qb~%%ALqP0VRLAHw#N6f)nxe44#(`6oY$ z^(-bYZmII(_BETlxP)iBQ#{+5;@PiLJbO9Cv&|`P z&z|C$<~o`I9I?;ZpSN{u`~w~KnSFj`e0`wS1*V}-Y46j!@h2W3u68B5pH4|5B zfp@iAnX~6(uS@szqs!#NOWk}P>HU}A1)qU08ysZryMR}t$n#=N$O*+p7g_UH5^r6a z1OFXpm9LCaCIkL41OAZ#{XR>)DFYhLf#=Rx*>7o1iH ztzU+Kjr^fS!~h3c!F{Zu+_#7voDBH#K;Wl!5X$?R5AA4;WDNeYfqEOW;2D&4{jp7y zZ_0&6fZwgOp{rz99b;9S`n^DLPTDHPC$rGl%xSH=u&)Qvu4JD4uN&~cBCD$Ot=3^F zZ%;8#`fB3E8Tg-@v5niYf1B|?>$&PzzVu@J5AvtUN1-^7@*tb&XCwWpp#A_nlX)ZG z#ZL}`Z9jcwz(*@gPGc@Ko&~Lo?=YXLQ}s-t&-3|qHF`b%X%pYA02Y<_f1C0BHsg;F)mxz~TT1Um4>L+=KE6XF!EFUrB)i=28p+fQH*I+wS8?Q!Z|O*i36Nz@)yRw%CdTW{Qg&~KQ6TnJOWHV&Lub5%-_Y#hZP|g zgm_q9cp_(Oq_*od2Z?!U;yE3Dv)(rUIr3bhZC~Fz)b?A)?sefc3m=eoJh|`}@t8b# z4SFWJRiJezH0RyFw1D68v)MjLd(YA3Iruoh=X&OM3j9pI!E&zJbMyziTLWI!^Q;70 zM)?E_xw`u^*IJ4DDSwE)FMQV6lWll+{x^BX=3VdG1zh~3XX5@Qy@p8Bi~%Fr?}PY1!u(FrZ}Lb7@$c>{yNmfsp5uPZBXI1PV>6%3@l@*R!@G0M*=Wz4 zC9ijO;dhkvU+2Qd0^&tpeB4P6s%&I?tv36e^E(%tD4l0W2Ji(8;@=&AF1acJWaJ?J-DefVv!w41;$PqSkPEr!mg)TK_k3hS?pS{FZ{G7e z8HRhaKUxt=kHgSQC%br8qCLMwLwy_?;<|uw{F-;=+T&dB`aAEqE?`VsdAEj~Zu2hB zdB=4D<9m^JJ6yU%#+&xIE?^AL@-FJm=P2hL*9DAc4evVUI)rX0+T}WxvHgU1=bGys zkvQ*p!o#0unf%oF`ftTF>ygn-WAL%Dj`JvUd$h=(Z{l~nYrx*t`<)hR#JlhK;}t$~ z8c&xT%6VjdZ~r6Zy`x2i`PezvE52uPe&885N|s*9Z=Q*VDBnr@Ev=t>_sMt+B_o3V zvs`(M=pA8w+oU>>g>iWijHsThZ0p1XK#WSQ2m@&|Qt+zO13_RBuhLMNS#CZ{K2CaRy_yvYCrp0q- zoNVb!n5BS6&TzpYGq)J^ho9=qUGDj-Kn4InuYZCxvvFW^|Yq z=I>~cFJHRw4IX@upINd^K2&1GUuB$3EMVU8G9E$a+`TRi|0e<=YS-->en{pCe_$MWuV+P#r_H*n9M z&)X{1F7@g6Kz^%FZasA~r*0#^Xzu|2gT2aom-22J<;KpMwr#po$3o|u=}sLRoZqGN zrIfOzvr4yVe~SYCmD4W~&e%#E)HYUS5@}%RaFviZ3Kt# zP3_zLm&XoOX765k#PXe}9KL#`^k(VAmr`#YxqySwQ5$*%Bb7mabkTBa5X+ zQ@#is6|D`qp0z2yzTqzHr@bU^&&n}A--(;Qw0fm-8{Xk;wu!949GbIlWf{+h^1PY8 z?Y6o^+RL%A=%4n!vGM!i&DT0OEnE#(pIWiSBijW(-|71g4cKArE!g4P>&GrDuzY)c z{11Q^)n{p4%9;M==vzD@JDO*6<0?OuC){+60 z1$zrBeeAhn?ftBMINvdT8n_Jr_C-5vrEedg-cH#c^rG_I{CosCZoghE~GQHc^A8a+!oIHTbpruh4FjiudADE z`?e;-ySre!itpthi*n%Mq666yJ;BAX;CiLiEv)>zL3wYitOZZs0IxTI$4%+w2j3)L zWkdFxD}}!scwP!F!ha%VQ5zSvcT0OaYthUCw+Z?fdha8L1`d2uPjG&zJe zg9BeTV-qcJpw0P=t)Y~2)#ncA;0bC|cI741FS}^{wKpBwc)Iw|?*4NRp<_ihp8gK^ z_aEX61n%$Qex`ljzr=a=HJ*Lbx&J2jx0(A5&rds48pS@Hn{(3eDaJPp*;dDxi{?(* zrhY8sy8eE}E9|v(;vY7DvvVxRU5|{ghK5`4AI!>o%fN34JR=icaunb8Fkkw<%$&U| zCj-|^o=fg;ureb@cG&ax8}Sk&AN`RW^3_twNAZ@2Hz7weuzSH*R}OxIZ#($2v0vi) zQ32}+zVz2qE7p+t=Ka?TMi^-CD~>ZXC3u^;^o*f5e>k_aMGfdroY9C}h@K zekF_#gmtz(!Y|jMJA0p%_XuxJeirHxet~DH;P2H>1f#ww=EAF!=)43QTK_-cCEr_W zcwKo8c+F0R4e+`<`5Ew5(#7|3&W(6Np~-*D zNy;O1^kTlzI<=C^#2<(uHH_i*?|2J$|He?OlN$oNeJN<9Sgw>wtN_Fxxs{ zug9buIQUN;<$_`5_!Wh$11et_BG(dJRDIv2ObDE_LKlZsr_1M)>8wNd1(zz5V6(%6 zJHnyP=x?ZzRdITk-6NYv^jCF}O@GfJcLX=RlRr|h6MoB1sSq7Po4c?pv@hX}{H~?U zRQ#h2;El@7cWkHMfiGU$sh)95|C9U@Jg3c_=CLj07Ys(O;2W=fAsBk?Bcn6YpLx)D zQ1(&CIxztII}Q72`poGkWtZq#0N#I_+Mzv@XNRq@Ywk?i6U@^hLAB%BV)V;y2j3=r zP#Y1ajRx!&e6jm#)eiRc-OTqJbEltd#)fI(c~*gSBA2$VaoRF@iul9UCyXsUf}OKM zXS=v|Q>t+-Ng7ujyluJ_45u@;jWh2~7@Kl-QrUhR1#{^N*kuLD_8wys@B3%vEjjng z%)RzJcx3Za=3f4_M>ap{Df5Kqei8TZ#Qlo9z$a_OC%+prd@}wFx}TZ+47xAn+4=Cv zf7^I=y8pUIe%ZQLYJ7gq!RLLS0iPG7z~_FQ;Io-?@Y%*M+gB9(7r_&?1s=c$|bTWPwg3r^z=VbgU0-uLF_-tque4d8g9`|L~ zv^wHb;Ix;HUK3tJLru_-d;{&!md4f@PM@Hi&T(4)f=4z-m1hOab^j-GZ{zwOJ@;>$ zdmGn(?r^TFv$&VkckOXAsIT3`ewc25rIUQH!KSs2{k(JSeLFkb&s)AIufKcMDC_vNeK)n~ zI^}mawP~H+QTP}!h?FYjVP4V`u zN7AZYUxehLvDb=hdu^8S`S$Iw*P^!~>yQ%*x|JWa^*vws`GQj`*8kwigX;&a`GEN2 z_WE1N%e6w=D>HX|D@eQ3f}!mTxo0iS_UW0S?fP~ycwCBH)O{Dm**MwSE_~E^$z#zY zm4CIDdR15B|mNUU0wXxpHXg(779t`BCEaLB744`H(zNj7)J>#o6wM z&zmvRP9wfVd`A1`)Bn2BcK*vQ(ePEu1^3amuT|rY77^3cxbdIrz8>Ai?Z=b!p%EYC z24vHqZ0i8$mYqz9ixt^+(I?=8_Okd3S1+E9ckuLw4xMz+2mV{H|6Vbo$@q=57KfP9 z_6^M82Ig?Jl{PyHe9N7E8Fm!L*I-Z48thG(&KeUdk}X|~H6}*?+GYErCg1Nnu@-)r z$GjUH04MUWQ>QbQM&i8on$pLXEy8cOn|VzKNASBZcqU;X|pd_Xa4qhDKn66RF=Wix#ee~Ch;UVae;j^5ucz8y93 zghcyQd#q_~eh_-7wER^;U>byOR$JDIA3&e0MW^6tJ@h7fw~@LxLQj+Nl8*TRF9~^1If3G^SD3hul&?}+vs$+6O_;Df9?f0#XZ z{Sno#ypek7P3x*-*bDBQFKBppSsnUz9c|Xr<{q_494Urwf@gDIlpG(etqz?oUt&>K zc0q|{RgL9c9ph3PnlttDb>y7ds;F7GG6;+W7mIPJT^lZe$c+wM^sQo20fWo3^Uqx4 zZu?*Tk#}DJmPQADc=J*2gWOtz;fC_$cqb2y9|iq3T$-V72m|1~A6@2ekgoZ}ZgIp*EA-z}2=FwbuKQ z4!(MQNcjcQ|KQzxZ}wfDMBCt0kbGQXLWZ|%-~LmyYw{3*z1Fka_NB8=B6!kaUovMJ zd+U12XV7jp%J&4e@RQd({P%<-Plp;Ge_WnwzrsoI(0RE-!_)eP?EBK8;k&b(`}IS^ zGY32O^+Ut=TobBp=o_qV%1Wzl8Ju4I&NcWXp%u|nBfiWH(8>mQ)JAN(K$r4^Q>^rT z+-BH>pNF8+=bmPImiB4?PY=La^yyIgtfgKUJqSwC$C^T>!`PvBd4Qd ztnJZ^qUz}4F4YEpj@(MnABjN>`EPs%_~*Xj;+ALunEpsG1(r1q9HpD+&kN^5Xkx$= zYs;O?U$9STXnOyGp-(;%din+af6M>-{136pw;$!&@2Ta*livH)_bRP^-72ljZbO3Q z+lTtnCk*wabsg%5U&3pE|xN-v3L^(f`*TFYcGVHQxXJXYc>$HOq<*Z>o*=Kl|+c@7M3?;(o(li1$D5 z?EOFW;m?a#&HQD&|3l8+|HDr#zo-NDSDn4@hyS*+c-57^jQ4%`+50{zZ$WXt?|J%u z?b-W2@5|uAOSSR7k2*)+=R96K`gdF6u)pE#{U03!7p||4_a7WT8}10#g-7r3Kk50( z;={WZhLjTx3afrq2J6O75B^B79S7rod6wFJKt1O zwwZ4tx_*0cZ_&f(301|1_j%}nK2CrZo^ZZ-g0j2$W{Ixj7xflRO#1N0#fPtdH9jtI zd;;`v)cHnZ*uXa$$A;kxdy6h!>9(Nw)EgeU22aj4o_R|a6t5b;CO#hEea`Xh|7r2) zKCi^*2zou&c=|oGx_I74zmAUwoIlri4*&Wm#iMU{CQc{d&bh{O_@naTQ+Ipj2i|k8 z@tmreU;N6-e~pg^`aRcpUisOA;z`eKijN06IM;Yy$^KdKyc@R0#{(Zd*LeDsEiXRx zGY|d1i_SHk(UX9|d(X$m15KZ6Jd?st6i?dV;R6Oo&yH_Hz)8`_q#=uoC$-nc#|8Xs z8cefg$^Df^Hi&*k@Bex6=wmf;d^7w>vL|TEkvkR}xgffkl=o!uD=)neA4do8$gpKd zXpxZ#qL)>^#l^4u+QWm5Oq0w>x8+CPLL<*aC#%N)toZPXE%E+#$eR@X{qQHnhv!wt z`)g!D>i+h-_le?pZ+q~lgHNB?-+n(_QGDv{mlN>EmXT-n_wau_RXnfvhIoIOo6g`n zslBpz^c@~q4gTA*{Y?12(rXd8^{Y61;eWPVKeNBDtf?sO7hV(ZuaQ});X675nevra z;{ENADQCj>l^dQeo_F}yarhd3-wAwIKUF;GFYDv|g?>8i?{AhAuli??PGMk{y1zy* z3Je~$YCN!8=#d9zuG5AIenuynS=sw&V9+q(@u?417f+h*(J2gW1}U3ni*8VYi04NZ*7Rf*U(ZY@crJ(;=}iQ z^ZQp`bFcLp4U^d)5dVN}2jM5g9-VXpzLj~{kJx6)dx_poeG{=I zZw;9}c_(AbmloLTD;DgSzfx-$%Pgz4oH`Xly_Ni3eII=g+jC54yX>?^$}~-uZ-sLx z#?Uso63<}o;ZN1Ni!eUdHua~DfB7ryd*uN5O&n1D3J|v{Eg5dsnHWCS_hXg}E_&UkO49qn!ZH*7fV5u3waIpcUX2H#1DJg=kq+K+z5 zsH|66Gf6B(Wp=W^kKXSYMJ#nY`%CltCg+@vHH>%9NOC;M1!<=Ze0g^?GaltkF5w+{ zWCyga>Zhzp)Ldi_XAR&8@>iLQ9{3&v6JnHG1y}7IA|H_0BxSlIAJ*8u_sTtqa&&TJr=Rw1#M-NqLsckLJnD5pZuBK|h!) zv-i9i2j`DmML(IV#+gG#X>7`k)0ouvH|V?OPyKJE-CE$@6(7%Q!x%ezPqza<;h8(X zsm8G59Aj8botZ-t$B<>=L#5uW=Q)Pzfz};woaY$ikMF@4s&mhO3{RcM7+SJZkD>BB z#-Otd7O+=k$}s@{R&Yc3rL`ft2A!+&YV^AiAKy;RIc1Nqu4paydY(<3RnM9(WKBNv zIf(VQb@=D>teH7&VNQ>LlbX{yoz=h|-l7f7sq&hdzyoN$PjdoZY7c&2WWssCMCa0Y zanqgGF&>!I;TLrAQ+e7=9{kkV2n)!IXku=glJN6e>K8O}n*DRMR*^jjw$?MoU97ng zzKWksh7SLYv6R9S%d}@S_u_|He5*Zwy|nfPjR*SZjMjvwVqNT|I5rO@byVx0W?(^)ukNrO@PT(N>`KE%|LJTSi+$xL5v_ ziP@|d-ws4}YMrV2=*jg<7mbPf>Zz}R`b4+n-c?PeFY6h%*1voC=mK({ z#LFKySLJd9B9C(aee*kL^3#;VJBGge+h5uZpEc)(fL9@Y>x_n(!lx_2r}wS=7TP-s z+}{E2V>o+5G=%_`&c0#&x4|jpq8+tyiWq{Ae48!?r?!6O-2AQ-xTKnc z2)Vj0zf+Dy0#3aj%5P?V%()Wuvz`3*J-{S=*3eO+1sB&}r(gCtAsLY`J8&4q)!wV4 zOXTW~`}D{#=lyW=OnLelk%8O`Mt6ae_BUyfY^U5HQ%-Skf25zeSG+qda*6Z)3eWrA zp7*_+_g~=Z${SY(MTpJo+!O7uRn7X_EY8bNjCTlm(Bc(3E9EHjq30T}o@ZXp*)Gud zTI8ShZ@2yKnUTLLZ;3JJEQvpx`}D{O=h^$t^*wX-M_QftTAR?qy{^Z&dVTfssTTa4 zIy1ocZlSh+W$mlQpBt~a*{q+7=Z7e-N$XY>dz5~#1An_{W(;)kbz+*@7b7DWY8%(y zzNOF#5dZM+n?e4KVjyeqDd+GE{b6Y-Yg?sTyx9HY6^t=4Cz855;%NAzrKcst7U**y zPoL#m?`(Zi^8QN1Frf3+V0> zsb?j3rP(of?hDrpGx=}Ix6!-O!G((B6SsG+rS|uVO4o<247inMdKoj3_;u~Ga1^T3C zJiZY{KQ^(YjCq^k?S{9k$v?HC^nxE8%)RRT@&)Sn*3B2tz4&TUzCexg1^$(KKSjQP z`R14IH=cZf>AlD?C~98jG6FjtqCXzs6J?!`yud+@J1X?7;)01)wI`S8Kk$=FPnKC7xF8?4VzMTa>?u~pz zMoukB%s=SJJz(#1lY2nCyp!Am1Is&s<$NdiAm?&;-8Z|Q6_yFS)`?|q`)OQ8xUo#{ z`39dhuOPOwVp+k%+dl9Cr>xV7xkg_3vj;uGo1YTB%sOsa1H;*jNx1ia+pd$_u+$>v zn9NJ(F=m}Zr2dp6E4==K&hi`V^E^7qZ-5p}egpHS*z9Wb-tWR2R>LF6F}UNb`3>OG zx$+xs7v8`JQspI>{07=I`3>NU+MEyHx6fKrKB7O88*p+Pc%P~c*~LZl_k402s?Y_z zxeabk1ACJ$Z@`vl?5n<{ab6&MLV)Y9vrlg&aogs>^xq0rz0Nz0#m#4U-J8b%EK=n$ z^mfMIk;h=@;_P`0zfxY5lgIEf_bxw6j^&?Rbte8-IJn{B>xm-Ue`M#-_wMi?#U8+( zz;9HK|LDWgGxHg~E160@Ls08|u|1-c8SdmYoa*fhPw8e=$BGJ0DxW;|AUO_q z?2l5}3=cRt4qV+FhYIkO+%dz~KOTvkV17-G1K*n*2mDhVIS#ZT7%bqM*XTjWft&Li& z#ag_wy^J%m%UEaSp816=Z0cFQjJ;Fx*JgtQ*}fA);Q6)KPMfg#wC9%c8`!%Jy;FOA zELyUNTm^C+!cFXj$C|6EMaRE;h&+h=MdUJU%+&So4{hwO>z#)-_R{t1hc@=n^~OUR zFR}6~$%%M|Tn7U?^zL-!J760wgqEgb!=8GHeEu@4x;;xacxbyt?izcanA`_*uRI9y zAI!aSA;^I+_sWMrr!e>U2vtu>M#$tvi1$Z5cYX@|yzEorXVCSnzelO@MZRm%8?C}O&&J>OY!!F zQR~2l{-LLho(s;(R#F+|p$%dU-Vyd$)%t|NZefi=g zGkuwnA+v^!8rOgEk|R-TPJp@xQLkA`NLy3!xwO*$-S~rc_g}aq-IpF2M0vAL_IC6~ zd`NXitb8B!DsN6YoA^LA>)YFP{(Mo|N%_S~RRZ!*?u);kZqymCo9 z?+VHL>%w`CZ{oA9W?i)Vd;t2Pp6})yx(!Y}71+xqv}7hYn+ zV0u5Ry3zv!=~c4PH?mH&u>Uhl3R(BKj(rO)`jQ1ax?&&K0guADCEEhPql~dm#i!H= z9Q4gN1D|J>uzyixBj4T4cY;+NaC{bj^>|>EdHFL-GJF}4XX%^HWHqp4eD?eC3GYjR zliH|YZvf>AM;DKUXJl4Ki*7s_1#b<{2)O4^1R~0XKB}B4{2jV)^4!;(d%H~3+{^Fr z=;l9p%KXvXXP9r__T2y8Q|5qkuWx_Ly_XLSTWRy5JckcSR_f2SPls|YxA#0K;c4$eX~wtOchqVH%uqt?r^uYTkm_-89{c^8^|4}Z!r-hG*O_-$zq{XNs7J&X3N?FOzD zwl8AX+*#WublLGOgm3tshlXw&ioa|O>zMArS2OIx#|}--?9zG^pDODyvH7~S4%K}Z z`+n9J@U`{Oeb?5vDE~a|{f=@qR{D|?*1#pb{1-;TfkqSd+r0>|1xu7?_+_U#AcLxp26D8UaZMaXRYRikt6hHBK7C0{vOtW z_o?SN_4K^wzHJ9`tOH-V;ITs&Qs?`=3-=z#Px?*S-n_fd-*fN#k3QAA=RIHA_S>`c zv8TUh)o}WC8~xIK4gHGusi)JYUXdf;uueP&-VXSD`?UAC)oZU8W~M*i|JlLehhI2* zf7X)cPJa{+`5a*sp+8H0$$T=033I7_EuHrG!KM9Q{NR0GuYH}u=>%&D{~y8Wwl@|Z zta)kU+51!Av*82{M_C^%9rO3=#8bMN`vac)-PUYn4xp z_tLxHvb6G-w>&dE{W}A!Uf-FLImDE0xMaw8YIy#}@Qj4#3wgeu=S{0PjKboEabk|-;s+hDSfic3by)?UjcN|JpL71QT%T~*Yblo7o2;4 zr|}-VZG?`EJ>cX!bQ!8P9?7ow%^h3THgh&3$n2t@kzI$_i8Ol3o)&_aBfYw}$ z`2)U^Elt?m@-0X&Rs1e`4dcf@*N8pXJd(K82;w-CLv1=wMEUgo9R+P^zb-$)y4(G}Gmx{I;%)u!wa+2{4d zPM+y!?=zBiE&GY`z2c492PKbuhw0seRq)CE?%9zgbMsD0U)0(Yt*vb)j;QiKUn5_x z_IAiH`%^#Sz9%R#awS>U+XuxPb0Rdy|_$Yfk#JQCpmrP>h0?vM|}3a zKH%*ucZB_Hj}?*q!@D zDyNtMWp$2L-9(GC29R%h#{9Z;(Xh^P3=16 z&%0gblXh!t7~1Xrfp#?>#osknTfRH~EZ}VHb6}PDya&%Oh^%5x#VcGrKrxQL{wOa0 zf03lGxc<usjw+5C0`YeU6vV(_hUvp(~h@Hbhf zjP1U(l)VJFDvnvBJxwc!L+bkg>kyTn;>VAs-#=Y_YDM`4^b?+0e;;-C3bpMpd$$Y; z*X{C!uNtNLLivFn*2q-vx3C|kXo3X}^xYYV9obO=G;;yJ0$GzZ<@K1bH?U z-OlXK55HEPhrRw>YxQ*I0_Us|tF5&DF8ps_CN4!C>$=k# z?mMWvkT{%Z=o{RN=B6;08khVf$i^DU#yZAb&$wSlKKgkVWW4hkw`8UG&s5~Q{FL&y zYK(d2T#?Jd%QZ&mW}VZojxjQKnkReTUn}xu+HRmff|ZYPWHTm>FNf>=x!I1-(8lj< zXP*h5_L;CQ2_M@3(Tap;JNkxy%d=!0|2q$kPiVJw@=%8G)m{%My~Xw?`py1bdyt=h zDGDC=*+*llSNpB7e1);68RJvpL$(je^!X|9{t9bLLm6i=8~!9&6o_me#QrUpTU!Jp z=@PY9ksAe^7V`V0V542bPPV}IKy+RKSdVGmF!?u9ml|#s< z?BkmggHHy5`!w<_D*0Y|z51Zv(XxVk#dCC?fMP9@_0n-H1E*Ec+=)804x(+-yv2k0TT9Mz7k03d!{2jxOjhqccUcAIwzLU0N^Pq<@ z;0F9${rI)|0l!{j@)6R)_p0qO+J;vRpx@#Vd5pt7b4zuP$YakO);gYg+HYb4;uTZ6 zY3*Y-=Nb1^nf#szAF<1r`tlgZ5Y?sq&m(T8x>Jbyr;d4eee1iUWiP{2{%xm_K1}&A7GEb_28$m z@hhzG&;Cps)NMgOF3&Rk4cPuW^`l`qaCdl{d=9Stm7MRS_SME%`p`goCD7&+Xmcuc zzueba?v<;tzU*fOT_|Tp_X9)^@ai|ni>T`d|37V2tGx1TO6V_nkIp&lS&?5;Cb^HV z(8oVIeYEX0d;g7U@^F*)OH7kr{A<>n@%Wx=hm%tZPplnp=TeI9FCq6??|nLxli&X- znS$K)^5I>tvyY4Rk>-7D67z%X{NWh!HP6|Z6}E4=#MuYpt6wI!0Kc+i(N5)24Y|PZ z4Z+>d8s;<38g;&}z0H~v!Z%<0O|FXJ%_R?O9#faIl`dHatb=fx_>^ z%cK{-|C>(E19e~`xPKXVvqswRWWn9oDO|7WWFDj!nA}h3CPlTlTMuH|Qp&9&A;!jmR&q){^8$Y)pY`fB)kaHRqKXex= z;aH;UX=q>9O}xj4T=rw$b9LvZnE8o0cu(GAP0qdcx$ozqSK(&WS5xx>cdR|YK{HnG zSQxA6D`Rr|@Fn`NHcorTbGBV~UbLq^+|x-PqPd)F-HrM6$eOCBp{3jq&%s$o*1U+U zarym;UAF#uRQl_#MEy0o8X86{h?T0@xd(j*I%(tSMo1j6h0ojO5Qhqe_(6$NLq@4UZ*&6tD+&ziJhwS}? zhKA=}gO0#==dw4xKn|32ua0xXpb^>9UFY85~$%WPJPcz@VLw5}K{3G!0&O7V{oh8{WyG8Gc z__j=EiH0`+@K2QC>;dWYvK#8qyJS!IA(kLrv>twX`QVRMVCU6TlE2Y_O%zod@SLdD z?Eu@g%v&9Bb^TLO;A?z?T-Anc2WN!4F=qoaeO1QavW7jNkT>WPOJysjvqy4M)@|(n z@r~+@{jKUvdA{nVrvPEZ$*nA%RzYADS1eTM~gCrwv7#!XSUV6{GzJ8x%ob7uOo_g_{IX5=)mzeVc zzLU;SpnSwl7a978HflPf4fopt!k75B`*VK!cjx_WZ@!%$&naD+Q#1UW-@3jZ!&lH7 z|7jUK1zphPDaXA0q{!wc)x>y{?P1x%vWe?fSZ#kHH(-_LOqu(j3E9klS?^DHKFfI? zErtK^ZuWnEvLgEe>-uBN>#?rzhncnF?0fTNAO3i6x4k!EnE z1^m>yg?GT6*4smE^6S6n&Uul|)7*L6at(9t<%c(PGq6w9ezntnjP}hM5!!E{edRbe z(S9@Sx6uAk+SfXkR@#4;_TMu+Aa37kKhy?rT<0q^!3Ud(AG8oVI7$rj9b%WQf$ov+ z;M|ijXRk7+&#C%U`9A=Y`+&)mxE!p>`P#Le!erY2XP6|@!Ip3$9faT+lB@1thdo7J z>nAF5suv+Wjk5Buj^-nXf zGBMY_;3xQP+p_WbXPrq+sk;xIWBbLh4|AX+3p>NDy9aes&t~x>>aNK-+2b?U{Vma` zY^dJQ4*indm#|Nt(+{`pV_!_r$Cl=dz2Y;qt@)8%dy6wKYdV<^d#|nd{&3p=E|v>l z8jMV;x5CTFZ(OgndA)g#E@fipJb#ks6~w^2x`);Tv%i^%#Yz6kPh#_Xd(S`jnO)94 zFCy9vxby@rz{gwm)6|=cix(#0;v0U z-+Luc-TG3n`sj0M)mk@pl)gpb-!b@i9elB#b5|PRi_#yA-6Edv^4?t?HoB3wcYi_u<;_UdS_p7t7OuaWkeXwSsk z&cSOlpuJ|7_LBPZCHmuYKwv2niJc=~g5M}J~fLHhJR-=7}zXNm(K=>K?5 z_Vu3r0Gocm>FEHl2?D48x&9>M^`xbVJa(dorVV}v0>=N|6X!#+mE%$>Z9Zz+?I4OP~YEXzjPBt2b}6jQ0_I zQqRsUJ^48QTI-0+xWm*n+OBKHm~q6%@$Zu_r*Hp-dQOeBmQIBtYV`{*;rr+~QrU_E+Apd&8BT1bBXM)?&1*$uXxxEy}5M*ISLnTo8_y8_wU<(GzEJp_;F=Df?+ zx~@Q&G1st1WcXir7lnVw&oY4Tim>HMiMNYC$|jI(oQnNvamJ?fa`_yxEbGMA@tqAo zp5k*j@g8z>&870^Uljgd^xxDaJs$a%OP#VAG#21z;uwqtKaLey#TZQgX-n|83{1M) z>tY-@xpFH+y$L#e^g^3v_zu5cr*L+^AFl7?Jm7fF<0C%R_t|`(6Q|kzIel_I)%U&h zeOw={$=PDt=Z+uboc*`>KGy9qqcdRNAJ2L6vh!-c6kG4Cv@p@3g z5qMt@{x__G4(_tdUK3g`(te-h)&~q#IA-GYV^ZSSv$Vf6Zm-qkJbB)8 zv{bR!73x3d-Z*;Q(wvrj?;I`dj2D2T=KIC^zGqo{j&}?`ukX(>$NQ(vHgmjx#(nl2 z$IyE<$2tQ+^IL)bHKyD;0bi5;Yx**czD)7r`}2;BvgxhUu?)%;4B$zWQyciLu>G@> z;ceQONE;s8x+dp8ZunfrJLO7yyi>0k2Y*U$ov-~y>B|Vl+rW79Z2z(8!!W@dzl`G> zsL9E6_enNUUB6cTB&>7#US#m47w-C;h(0YU@W{toV8XG-~$og(h8DRgb+KfM(fm!NhKL z=7OO~^t;Pf$ggY5vCFs*iiRn#nDZC-ZRnWqdUH>%N}J}a5gsJpRs*`La{r=5@E%9@ z{X6^zU0|eqSLD|AQ9gu`fs}E_e)>SXOr~1~8KrvMGJmEFIVT4LU8zfTAPc?kTX~-i zpNsJ>4?Slg@27iYCGr1!V)bXp$``=DJmlc{mcJUmHtUMdyZj62If~t%Z~a$!==>h$ za()~KkLUc@u?NpV=jG@R7P&Gmog3RK3BPZrZja2`pY!~s=Y`)T4i73y{=R>L%FRpw9#q`{>&Z4F4J+j^kzyI&pV9cj$D=LT7?OT8K zE$&M>p3`!<8Jo}9&%vfO#~)c_$APu~#KPhpw4BFzh|G!cDf9)` zp%LYe&W66lLqC9~(@qyXoqqh$WxF}QXSZeTE9+j~%DSpMDp+Gw>Z}hd)wyvxPfk3* z_(VPXX*+$ebDjbb3);%^+1q8T7hDKQVK>%k>k7Hh<@B zY!T+@BXqX00dSo;+7Nx{;2QD?%voCKf08BT}~UlRY`DEuE>iX{67)!u4j$!AFsTscI2b+))&Q&;(6t+K`Ayk+)?+qe>uZjBjs%Z^iNQ^N-$o8e3-*TIW$GR9F}4K1Pr!?_F0oGdsHX{dsZ9Iz zlwlqWKjQbdRfhfM=aYjnxff^3!B4e^ix2&`5&5e9>7ww7CS>Ok_-!F_w^=ZMnmXuz z-BVmm%*xIWH95-VL&G-?iRVsA2kI<$vYvdJx~G_zr*!E7|r>&Q5p)K+81bPYtZ9JhJ*{!zBx1ULO zbMrz1b^3I&|DZ$kkcwE+z7t+1@c$UcvS!(h^peN-_X5*`K z^FpNCDW|0_7yb2h@hz1^R0mxs*Q6Mqi7MUvlp` zawFFhql$`_?y_UpJL%s>a9|xcpm=B@_$eQh+Ou=gFAeV*%zRT`v1{-Atm%N6_Oq}e zGk}@)qf-5AfpH%BB(Je9Lf=dW*651Y?OPppSnSuWwliGA~>p#frNwA~FyLx1598#{ci!W*5ORa-1H#zvy zFb9~^C*=V|ZwFuCb+sORndTkSIq>BL`mFB_zEGEoF9WoeWO8CIgN+C2t?LXP*traX zH}Q1x0KXExNw~l_4leBPjP@JI1?k9PaQbiOFmRq^uV7VyO@sS|7Yo6Q1?*WCojKqn zxjF_ne$V%VxDOe>T28ne_~yiQm8CgLvmIRpe9L97T;I1tqvwL}lV12v1im8@;oBYf z`pL&nqQ{z4^mwP>%l8Jp)Rh3=(({9F(44pRmGH4az?W~%1>YyV@OAosKJYz2{9Ls6 z2;cvfdl$Y#guij$%l@44uJ0u^d=q44Z)67Ya`qB?O`vLFYhMf!8)7XO#ca zj{MesD`p(%F5f~Ymkr?VIe3^gv-ixqNxuA=*=08wxeXsere#I;LUS$fB_C_?lnd?V zr^u&Z@)D8l%2g3Pf-mH^WQM1LFPcyBI_2+`%pGzv3NAJv=agfobC;zfnL2sy)+rus za$dL^`o`w0EWa##3-t{N`l>QdJbEZ|igloim048}ez`dZ!_us_E4vsuu>T%t7a4b5 zVCImMX^g?n&F>OvBxghNQ2lmuxs}Il@`V`JvmUx$^102M9q-f{#dwZwrdbCT&r9f% zFxN}wTVdOm)UCBEdw0G|p2F9Cp|)GnLTwYeps!&cPG--}o#fIPKQ&{_fj^J2GL7$P z*h5oJ{*M24UsvOMdY5r!vHyV9MWVCzO`s9zW7iXj^f8(;mh)%y$qJi3hW1L#H#TdH z(92Bz@cOvl=PvwMYdrS3=tDNTOA{l2Z9$x85@&bq7tsBRMd#owT>9bX1*rq?}gc2M=(rFf{vR`PR~j$3h>9?K0>15`5twW8(tr>r<^= z6uuf<m(iPE(0?Mo;(0tZCp%` z6gs#lI&k6g-k{G87q^c8`oE~d=0)ORUR+JHanpf+GVWZPggf8&;Eqtp;Lk26U%g-F z{IwpvvY|AP--r&>guc^^uG9Xum0$k=wECcQALal)V|beQ*lj z%5P_{n;3SQ<~@r2_7c3VoIL_$t7-j@{5|qVMky1kpxj~noZZToouFI^{z|KT~X2E~JFYzJq){pAh{|OuW7`n{Pf&RAFhWe%3?!OP7cAxar z9KXTI*L)Y^&#~8}{erv)#h98e$W^= z*ev{m{}(-;$p57uHLMR&4jY`gZO#p~UEt8QEf0crzQI4?U#Lh=$Tx_-4G%sHFFseh2MX|$K!qfL%n~R_qW^c+nFQp`$c;H z6z^}f-;>wcr@j5+>S#ZYz48m@;3eZfIMZG!O$!g*;aL~+6yt%Pz%z{xL9%Jx7p$#o zp;ff2=zaR!bLJOM z>U*tEv}JwI$T;$MjNW-3^HRvX2yWj4Za!?U9Q^Jv2W}zdT0eeySoVA!@KXQedpTSy zxY==CwHeQ|)1Cu%?vfX(mSQtK5k#77)_;r?A@D=fyczuD$uFt7{ zH!s-sfx7vb7eLFBV=irrp1paxy&@+Pa&<3E=(FqJdhb~K9jW|V+rDetA=3Aw%!zQy z^>2OCfwlYmIvZE_8{688t229rr^v_Sf%#*f6HE$-R|+q)k@JI-GK0|&#`;>f!j&9A>wtcWS zxo1yIXI~28hz}g`Mc&P|_A3|K&ZACGg15cSjCU#5nSC30OK&&p%$^3`=mYU}W*1lg z*JXwuB*S>=8U71kJanZql96}-aN!7GX!ULhZw@x#v60$->^oFFDfiF{l0KQ}=(r_50lL&LkZ9 z@LxY4x^%~W;zDcrSmJTV9&q^9eIC9Ae>Z%KtHZbU%P&?wz{9t0@8DZC34DvOb?`0j zUA}cGcyk8d0!}v0u;-3Po`{FK^5;T)D_)pQ{uD6V^f|%oeCX;@(bYW5#4cRAdQy2Z zqf^k;yd=8f_kkaNo^)mV=|xwm_}HR*J$$SRSdWPFF~K@LHH=fz)vX4`4qZ8QdFjdz zT@6~;uH3|}vP}#vQSLL*65olIHeZCy74A-UaCf!`cUL>O%hij!2XZ{POFtZ$n~1yA z-+{Z_ySRG~b8`mnLN6V<5O{3!JA8T`+?`5Jg27$t5{zpuJ(FKq=gJK&l?Yuew+8LRGb{i zN7}J{UsmfdV(M?soHA-EzNZ=O?br5)pSPC>=FB7(*-jkearDI*e(Ty0y0iBFY_|e) zqIyS}HC%h?Su`-`Ey}g;2+Xncj^8`@Eq_4!@xUDX19!Ba44AWt>d?QmKDhlf^{}>9 z^CtPBxS;f_o0+@%zMPj~jSknx^@;t~_%7kKNwVUe&uQ+WMc6zQR-0njT9;nG*sSy0 zZLa2vgfC6B6DE-sA}AJI?p^kevI=$hq%VeQZqs>aLe!o3&z-9-{5Hfg5r0`2*N5 z)(4;OVx7p*eH!-{TPJqrXdhYb|Is=zh5HFT@C&nd>*T+;PHf6%?X}iBSr>-q&AsPj zNg(SF_4UA}8GEpm@lOIbWCNFC=T^z)y|6mE3twnakbIrTHn;o+Kj{$sSMa}KlzX!aexx3D8Fx&((;WX$PA_!I^vHiuZtunT zkuFUvx938q+UJZ=Bys}6B{4Kt=0a@187V3Dsyhr{MTM9V0i!*!ru3q`Xjvo2i zizONUtEn#rKH-~eYpA~|zmd6UVlJAQiuPC_O+M4(c{h+-t-zDJ81Kn6olx&T{(+M(o#< z0Gq7Hca!^rFGu@LHr@yRz9Jm%TOB3-9@~Xq2HSWf{mSk~Z0i+pu{P8;OR%Rumrzfp zFO;9iRA+uoVIg% zgs-98-4_dXoKcnpyDR8}yMc|lt} zIQj0|sdO8BT7F z?eDPtE$*}K_+T7gb4NLyQ{tZe=axJ3+mN${zJz|P^~TbM1ikqODf%HFn6qz_)23V3 z*Qsl#x31rR@vL>Z-;Mc{-`T#W49BnFj?t65AgE~c6k0vSmV~e=3VN_d zthNazh#HrS&|=kd00A*kD@Cm2XMZIaiwdnG_Gq^wGg*PSfZEC^lKTB*-y7wQN94%#yS9y5e{Rn+G z(6@e{eGYU^pR@j!7oGj5JX=%ok9qJ@LYp6ck{u}9+~yVA8iRIi{+ppYhPu4;H^WO+ z9lZ2MmzUP`GQ2cUyac~ky9!tqz~}JN>_7RU_h6?z(L2SzMdt|rCWS8og80U z^Y`%em}$pXb0OFE-A0ZmXI{7CzqFV3s}4*5!gGG+BFmIk(+7P zM_4m`oM-A-d)>$S$Wvb?vwq_0TJBxRy{sf>yocL!z|qo9`BRmB?T}NFKbimJdwss* zd)?`|$>@ZA>)`K=oasqz8BZqU{R4lnR50sJt^spy41^>TdNb!Bc?gkGc)8s2@_3In z?#YkNuE@8%T$X=IynN4@E-&9>?5s{+F0=OO6HZ@48zYWK8x{VO^73mjw9(h4je4$m zc-uDgtKm&+l3I5>YpM0OHsWVF?w`#UINkVL)j!7Hs_)yy-)h+Ck4Dz{qv6&5Xcqfu zow6~Z)%0(2YFFn+BTpmu*6|I!MmF-zdQ+sp(yQ`s{)imU`T_Rc)7Zq%1*6T+g9q#d z@?oQwxVqn4J1-!PE_?l5H`t1i#~4sCQqk^M`bAt-Ci^xe8X6 z4+=HsI8__6{GlGuRk#qk;`w3MVkcd3_{Dtu&tca((V3j>dBx?<^g4HM^EAN=Up3p^ zhuk2Wh4z2(3iF!6Sqkh6))?0#&$Umii8jlxBX5_n>i@gK)UxAxh%u{`npjSs}S_x`j_U{w1)xTJs9B_hc2czXE-72mT4X;O*nS`5)0$4*R%0+8V`J zvr}Sg1i5=Lu(6I^Gw*9{E!y<>YsiP~tHN*kqLH_K_|-mqAz!p-tLre0p z7xisl<>kj1JQY}4{opld=3Lgar_#n%v@tChJq)~5&&T<9U)1*lt8Y9X#b4};ra%L! zzBJaawJx7(Y*pFay%>x9?!X*$()IQ|kIoZsvU+WAPl)+y(*f<&3kEaS~s-^#ka0HT1a-`rHV8J`H_72Yr^GmfP|o^!XC> zxefZPhdy70K6gQ%C265g8+&%4&mSU}MW64pMjl=SeJ+MRZ_A5To$0KUKU8#uU_G$9 zy?u}!Q%O?jOwBn1UgUnk6?~}W|7pSLUD|yWT&dmm75?bo*PRYuq;KXrfo(I(yv)9!aaBA!8CWmj8xdb#&Yr`tN)%hn+03|%FfdNQJ? zCBRqmNwJt&r-4s=mjdKlDSK5OD8SBzcDAEeYc!W0z?R=@`TZonv#`C@-!h)xh79!O z6T5v;cp<-In`*d0ck9p%+kByNWa=%#54nI1+wyYnLPoW>p9#E%^2x0Jv@yNQyq9`# znZn$-7ygX;YS`rAR$pzHHa$7sSK}JfDbGF~LXMwXZ(zIDcmL?-KAu3Hd9twiUwHQ& z-i^4mjqs5+W#8)7XFY{}U)8&vIoMU%6GmCP>;&(c7?;7N>&w<#+3d|_v)Xj`m=l{>r;2a+O&C%;KDi8f(vsym_1?Q zN#Sz5@lE=t$JZ_1%=pd|{9^t06nBrx3FhqKElcC+#CcWrk+V)ZH}Bm(yt}rO7pXt! z#!gP5U%%ds#nbRpr?pSWGl_J*doX*=sn56RUwHR_^lqmNsLDRrAp=fI<2(L^cVFb) z;!Zek%AW1UXHEgmPyG|`Dt4Q5IzDT?blw2$3&~>}-`TVS{Y;(Da6LNeRdm*_VDvL= z1#*F-k&)=&G3elu)ZC`?(ZS<=?B(=DzX+t7vpBveNDa*yOx^wR)X?=~_|8eOXLXdM zaNVi?VqFT?o$AJmu=z55(Ro@wPevD~p^MY=qT3(C-YRfRzJb+gzM3`WY>mdytpSE)~S#>ZZ7C_t}X6pX4~Zj)l7I$Hz1mdLu3|IWN<5^GP}vGujqHjA}Q#e7Wc zbdX}FzEJx>d_ztI3kF!ZM5B0gi`jbW;j1jGM^7N+cz9;8PD+7~}fhpa})qb>@-ARL0*#k~4 zCp0!FNHLBVWJk2O55^W4V*Q!Mq|hIJ2R?~yg!e*AjnGmncxvOhM~@miXK9eSMmwaG+@JTjB298ef@Nf&Yn21s+$C!*AB_vqLtgEz{)8i7s|*Ji2Nr>s2Kg ztf8H6Yjn-TChghB*55kSdR@;F-yKE{;Hf@;4s{-M9?7Xb|15i~hq2%GRG&YGTKxDZ z2OVcv=rZ78=EfdeokODi$>M$G3y@>crDoWJ%b=r?)D>ecddBnpbUuh;9R8paTE;Uu zqg20zoZB4ofT@4uQ2$1Gs80;Qe}sNiL#muuNjb3+wbQ{j#7dOkb{DY{FHU(2?a4>D zi$0sd!IQwH)Nu|~4{)aIUGL1Z$;5Fq2Kf-PdFO7PU&^!VfXhU1wx2q^vCr2tPZO8P zazfYg{FB4klg_wBi|oPBJ|-ileBw*D2C=a>ho8W%3UuW2n|D7ZH)L&Wth4C^_JjLw z<9QCXwy5`G@bj%ugf_a;>Cj{7bO?0HI?5L0E;Rn_&>xR^C+C=V(s`%R?9FCP<~;ad zj9a5KZVuaN%a>;D?P6nZ_dmYv75DCD&7U(1Ws{nBA4ea6r*7qf`|e%POa7mTU9hgP zmVNfhsR)m!jzMqWVEhKos4{-OEA!m;KEdhr>?@xKP0wRpSos>Ft9j^M zeqZQw>*+<%Nvz)<`U5#Y%Uya&fo`?Oj&pveH}p&~deDoFG_t=@^<92X4oOptE?dGp zyU<9{w@*4x>4Sbp(JkQM7&-3FDGZ-P+IdFbvAV;%j~=`U+EvcM0`sl)HK%4i|4Y8b z>w%Z==&A=c6W5j)wfQf$zQ(;5NrrZw57|I`TjwT)Z*z2RkfE=OnQxdJ6UFr!i0fJT z8AoHpR{rzJqpBnOLgNg3j*rd*WBqIQTV@r z{VaZk6Lj1$wdKmYzJGAQarodQ?^}9KaBFE69ez#cS-Q0}4IHVZY2Y|fwdE4pve}oS z`FssH7G1#EH4~7-)cBl0efnbHlMRh4_M$xWeDVrqn`qrn@8qe@^34~7t~?7Gk^PFC z_vT;6_#@Du_*gR3%R_I%X2ni5YxBm|<#!^yVQBRPa4~Tc`czH=c;4htM<^EVC!IHS z6Pfp>d8Te+LYr!gXbx8}?_y-Q_NUAm3vD7xXOBbQpzj?c&j*DbU@pcckjz7$G*Vlj z#PN5PkJtpSZaBJ1dPcGKENAtj5omZAFwFs`*}znAlTNc|j3m^|2skU_VLU7j#@X5v z_ROfzr^A6Uv3cZKG;1Jwm|TN-f-$<$h4JnV7*C9YF~6TFw=jO0J!QwEy;vAKs_}^J z^A%vcX)bjO4UA3QLe8V5Hl<*Ew_prxm*V%-^_LBCQD}l-T7pd_*?tV1v`@gbsSLaX zw?GXt1GoC>Q7_uf{G310N} z;}nS|oPk~N<Mq8%vB!p*`X57NUO(o5A)mM_tK%n zI_n07zVjz*7a+rTmo(1E#s0fcF@z?5S2$k_Epr;TZov1~`cIeZM`qrm>&uP|zUQU( z_7{HV9KO)BeQ+G~ZhhLn{)g5H1JyDooZx^^crY}j{_DntREIW9ZLKilm94^gJGmE4 za1Iu=a&9|g*Bm}a_5}k$bN+I;zpIA}Y|XXneg(b6UDMj~gTSg5`s#oWcHGhQp&hl~ zt1^Poao8WhWbBT=vBvR5sn#*g`k~(cA@3jJ{XYI+^wV`tXtlpj+gj=^e468g`ud%y zYX5omk^JLo1OLwYd#2V}DRCNio*&bP&OE@zrRL|*P$UEX=Uz52K;}es9zg`S$nK2r zULj}E8(iRPm4hz}lLT|tVxzHf{WZgYQ-0RS(0O;+HIf+JNL9E^#;GC6K5@$ zY-&B}|B^+Mqw?8`Sm$y6G%6&YWyo4;@}SF93o5(_d@r_iuX@b^+7DxUXf4*%vjFCT zyXwlMa<3WPwIS$)S_;SsAl@fBFgBXrQOs`)I%le6r@!q=YMV9`(0&Pa1oBHY!DW*S zdGg4rdUR?So3@B?$bVGcnyIaT+%@!)bBXz$Gx8F6(&h_l-S!8J9h$mO@9Mq3@m?64 zBZ7?lv)bs;;jFb{8{OW}ZecP5n4s?rOlAU;^9@WkIR`IfFY8Y?zq{ths-^P9u(_oB z1ZUyu3E42guQN~WbIq(t#5W5ztELe+5o{Po6XQ4$Y)qSsU9r&vE=&X?!72=F*h?I3 zxW>V@Vjkm#3xCZtcrPAC`jC5|J2cviSU$(Qxu6$e%j;aeHcnKeg z=osak$S&H3jfvfgziR!|&iJ79A!KvOUK0HoKCHLb8?m#BpcBQ6XF(^j&sEdw0nUTd zSyb}Re9T*CI%N|B@$7z`J+)4?SJsTf=CyHPQ|C+lToa7m!d}ArHyl|N__F2j!PeBo28F^#skiU+_T_d??(7!M(vXyiP3->@M)Z+ypcE z-4}rSHPE>1f5kqO^VrN>n)!b%{ph;4r$zS^JJ7dil>IEk+Y>`MeN`WZGp4B>)(Q@i z=Z`p?*gH}2g5Aos#7_Q(atl-!>kZo8kOi*zZTGGv*1S|^_qDvrz0UkiD+jEevM})M z1HpXHZC`Z6ao4%9_uw!6^g1z%-xnY-oe|$|v+{@QOwn z&{wKe(l8i!W;#*%Dq(bFgj#gM)8aq3uR8G5kyXS9w}@|(fsx^5=t^)}_0f@4*msAT zHm-hDFgJ5@^||of<##ger_oxoEDpy1^Z{>VhIa^(aWA7me!Y;#Wd?btR{9?OuRQd57;r+ z0Q4l<^25WDo423gtW?fa5wXT%_-qz1zLjg?(~!T=V+2}UW9<3Cp%42q2IwUjx6+>G^(3R+N7IfvsN=HCb zij|hKb|ktUCVay~L2&EwgXC1z#Ya~;$%lWPrF#5jfzWG=OV9hzgX*K>3~1gB&`%TZ zB%m85gZ-jouBXwLzl?gRz(8Y6Hhm}57@r6_U&fp&m{SEjvfg+2#SKelAKs8~NzH~7 zKE3&5@d@%N)9<>!wBQSIrs}Ts0}?7F8%0y))LT}~hw@JgDoglZI%U?8f)x$O*Rb(D zy|kH18$DmxTnZrfw+@=11GWjlMyk6H5%SlQ~mdzawip8K#} zb=;2(GI5_1y=%|X3r4@_Vf;+|vq7Ni`&7k7h(A6X0CaQ*}FFy5IMy84)R;^JYvQ^`AuA*;5hi4!63 zBoki7m+G)Vq$8Bia`CyL`YdD-vRrb(gV%-XCrA8Y=xCD{!%&^10JKG{$l6x?zN7Su zRVRX@*Jd_tda<`W#ZTPW+o`;Jdi=Zh+t~Gq-kk%@7DKyp;l*t|E7~5wo*1dPvETUy zHEZ9R126tg-|%BIwOlqppBt!2vcd65_HXj??B@W350F=uH>sz}6~^|9NB2ipr**6}z?(|9fIn#iLDugk7&3skpDgaVjTr ztq$8Fd=<2Z44$l9+^dkKw9y2=b4D%pqT&vmp$Sh*FK7-Od7;SvBIaAnT*do}U)&Xh z4|ykz`P@~c|9v$nW^V94?Rfs6k?$@I+r1!xn!oT|CN`g^(_-cQ;Q#E@ZJxZpJ0?CY z{gxVczMR&g6yuvX+&MH~F=Xr-$2l`JcuBF@6Pcww)W5;^$|&7z$76jM>7Q)HJ4X$- z@(URM?+?}<2{&tX|Uii_mczL|t+I_M;^k?*Oz17F5=KQrzf6UZ0DK~yW)$Cnn-%Hh;Hz!Av$ZJR@ zr$KfgvZ3#eFtQ%otCaPC1Ne=v4bQ9IIX1ug_ZI}&Kbyw+RXy2Dds_8t=rq-R+BcJY z{29dde2Hz@`0NL0r;K)FZ#Ez^Rl{fj?IcXdizZ&Ie!Ln}iO^|6&4P4iWnF?ZUb?se zS?ASljND3|2)@&P?8UPa^P{8L+xa?rU;BPL?bOVg%heZs8hP0BoRE=|w56DMGw|Io z;cKB5Waoc*u&=kerI~iuyq_0cdoVBh#HZv;5aTSlbrkq2-Q3c6WR>hFLkGJDnmC-n zkNa*hu?&|MsFx4UYlm_==nU}ZA7NrAX$KX5Dx9$V4I7Z>7=$DP`(QG zr_R2+#7AB7MAq|Ci3uKQ-_n9kZ$*zZV<)N2Sa_(ujE%7;){LYdok!bpK6_iyAM(*L zSh1b`HUEci?LAbzOvNC_+{@is6X>0F=$lEz5zhX>(HOhH7kV;N zIz({w)#RD{&T*lJH2KZCmRa-OP<#sDBblsgkxZj^&6>Ds$eJ38?a9@7j4hk~W$`+DM{z_y}6u?c6^;R4jS3PWddh7IneaBdeaku8O4xpOKZRq2DkL z>H4+Ycl7>|R2wrb=<3tN%KyjW@F08tzrlqkUrhXsJ#XFlH(Btj-`LK+8rixH$Xi24 zSBy4%CBM=0akI6CedD)7FEU2MTdq%%CE3gM4jJzGDlWZMbIf&;D&?z5=e{8t)Bijt+gW>j4Uh7_c*W9$=XY5=jHbPm`J*R5w{PtW zB<)K1vUCM|n;veY?yg%O%JFESE=ax14 zuHt-qeXrzvdwp}ReHh%gKhAx9bKZTCzMtW~zPE5+>pQ>UzP>-@zP^ueU*Ai7wg$+Z zK2rmvz07wD@zCk*@B41a()U5`BRASV<-WcTb6?-olv+yrww8FHW-tEiesX!1BIEV} z6U7J`{@y;l1^l(bEBmhT<(fDazDb4S3k?E~E#SnQpL|VT?s{nEWH?!m4bDEi+jqb_ zEi-(%Ei-+&N%Xasv1l%L1N)@;b0_Hc8pdwo9mrP2J|f7NOzbP|{cW7V85ZzrGyiWr zj4z(x{7Q2@S^r_=M+AS)$a>_t?7ow|Q-(Y_i!p9(>74p5E=aoSH21$(qTXXrZR$ z?|L~~US;f0F_!&-lwG6Yfzj~5*}kO8Hhl2Xd!1VxaDIR>mEPjJ1>8^H2CWyN7k13Q zeuCkPvCb_)(a|`b<$HOGb3yxXXk9ck!MTO}C}`1l%WLpQHnbzU$>+Hi=%v}r9~th_ z%me9+jk&SUDE9#K9BJ@9a>7$7&RdMR!{4~vmst5G^i+C|<$=<#Sso}|YI&e^ndO1f zFTn|P(@Z-X;JIx>7#DpvPjG)vf(P~ce)o6Sj=T9*pM4(QOkvKk<8Gbi%iRa9#nSpr z#@#wCkL$#m8TVQAmpuQh2~VB^&7X{3PIh0uv(<~#MgXVRol2iEa{UNvSK(ynK8^iu zM_v72Z}tE6Ip10A5&isSSmL2B<;=Xom3gIzIByqncPDhXb17fB4Uq< zr(0Vo8QpJd=R85akA;nVGs_$Q18iuE9H*qVoOEcF|3~3ZrX*VW-*M#L`;yQrGqIQa zq8nll`>+LCjD05mE*V%GdNpH>^nzZA87Nk(y4V`GYR4&Fx}P!M&^xsfKUHz1jxmp7 z|M*$bkWwUezJXhgR*F=lJq zSf5lrMhU*F=vaR7+01PYw%J_TYe9a=7HUKv%N|utCDp8zUFN~f!qL^A^|l`)XFVC@ zUTfFcfW+XRnm=!XYLMK33}~g#UZySPO^mf?e>nj^qedcm_(WXnv9q4`NX z=fwQU{*}FTFFy6r^nsnWuV4ynWXFb~3&r7dep2ILU4$zQ8TeNLs63{Gk)!Z6g#WUmeOp;(Yl6D58 z3vz%RZCtsZwIc3yuA5jNUuS%KeNIR+cI_r(*NW%Bv9U|<$#Uzg%C40i9jIAa(@iX{ z-i;f0eKQyNUD8jM?%eyXO!4em_&KUN%z}60EuAvPi*GdbXMW5@c0mmIJMyus;m@P# zgF4_JL1!iqV@|{ezJzlint@dlFlzuWx~F(tR~*=NwJpG?$T|FL`Pw~zq2M+fdT9oR zWz@CbZt}FrxdaCH0&im6d&+^i{D&~l2=1~igY=z8-v@uxzN&(Aeq{5tfxm!LmRo{u zDZSBmOCz<4bX_rA^=D{Bctwwk7lbGARSx~Dj<5QZ4D`luJ^ia+*{teY?dY9ZjOX*4 zsaL3VO~&%YcJ_F-Csc3eOla2DH)SI?BhaJh5?j8?8Gd?bJAObzPA6`Abcfq=7kBh! z`V~)3MDKdI_3mpf(6{Qo8JxS<|Ll%qb@$`g?Iesc@u%2v?5pmE#=L%FX$ZRcZXDgn zhmG}5uQ%s4boDQcZ;B4mx96|QSG}A(!1840LIWpwKx<+J*gn{hwWY`mA390<*%ho?zf%j@9|kO(JvQGaCR@OFU>s{deHwjwkI3C@6{6I z+QFLwHkSM$_PxnFaX9PK*ej>i{3m%N4b(_$E2bV{PZ4xsZnx zZF$kot?4;r6!ZKLT6-TnX?_Q$G6wMW9Q}R-&9_r~Pc*$dF&NcZCt=PJh%jEAC2&y> z^w2u^V|H?$oA*a=`Z5{y@X!hhCNh|Z9J9Q?7M>W5u|PEx+7~og5D2G-mPZ; z7xdBF-=}gM>m@Ut-fflir+yDImmK=+IA3fL^9lT9bHifB#d%|8X1@S?;7S6azXi0e z;MCNy#^r>E+t^Eeg2{V21Wk@hazg4~eQOM{^#x94>}I@USQlVyZvhLGR~J|uPW=~Q z!59y@@W>=5>pqj;+X?H&K<}CWeMo2D!neuiEpVcr1K&vjaKO8YcZ7j^1h{KmqX`(V zzK*(z?DGnLmdw6yYFf1S=EMH|r+E&1otqFNb4sC)az5ZN0uD#U-doP~O5i_*z8>Pc zfbSL5;8a|F>+n#X@(&xyBTcq8#S-PKg4+gzGuF?+S@PCb8ky8(e->U9|i0EyS-20+wIjkKxx348Nw;+(!;b13b_O z{VTTHHVvM+iaM3>>s0vlM)>9d_;msNS_;2D?YrOb>-*SF;@384T5)^vtoT*m-n9eg z(_SXLc##vmiFQ6X4PHx4U^ybb7UsbcGGx!@yB|qqfJSSpND2 z->1S?+4y92hm*V1+>z|_<{^B2RT{220Zd<3jvDkL{8$^@%D49RGUTdpV$O=Rez(6yV{Ap1DZZt+Zo+k} z9~R|B1J|<0+x6X5gLClr@oUqa@hv?6%KW_O?{3VC*3ZuCJm(2H*z)f>tH2qrd1`NA zGq_ylI4>lg{^*`L&YF+)TW1$Hvv*uEMcK*QbS^LUqJD>g5!be~u&Qr#u4Bu|RuTu@!@M1pKa1UKODfS+E zG<*j+R^r=mW~i8PG++aHeEW-E9a*KZG(%U-*bB|jRd_jlqQ7Hl>mgr<{O;si7k0;+ z?+@eW3yo}qUY>wnx|{EJPB7o}*g3_`HzoF7=X`fNH&XM6{G{0V{@@hnJM9GX#ctf> z6pajR&n4fc>?~_Py0FN`k2mzfTE4#LvzGrlbg~nA5q)UyS+V>bU|vvmrOr#cu%P0~ zT>Ss>4d8(M`(yZe+zH0wwNs9bQm}P}t^IzhW#bcZ{) z%VX+!tL>>@3szs5n^%2RUVe4k`Davra8bYNj|%!%PaTMStw%;bhm6H`R1Ht%ASh0O z-OyLIL!^ZI2mDqHWB}J%ra^aHi$H_+y02yu`?4yWb3#?AU#$8ou+~0kihYh|Zus?~ z)zsqE+{Q4sbC}zCn%nbzsy}$?^y-i5GpfgEZX21~3g-5Z=9X;cCO?Y!P2aOw51UIn zGl_F5hHdjE?3vBpe6C|Y8l%S15f^8iuYk82F#naKJQ`XZjtGLP?izGVjxbGGpwV(HicX<_n0zG&Z~_9P3Z;6t~D zy_^+jk(lrPQNilAae37rOvta^KV}Ftb0#!1w0b{!Y5y1K_EvOrqupP$z{S^%;A;Uc;5Q-*|W-pS`}*OpVg8#_$Qg=4aTGUj(DC^ZQwz z-$o77ozUQex8HR5%_TQ+Mrbedd@1*Z|A+X_H#oG^?yAG!%bF9V>RfzZw%OE-I=n_bY&t6h0QbBd4$EVv!S7CBMh+E+c1F@DPT z@$4npLl50}e0%7%FT1gK%58k(^|MspziWIW@|Y8ylm;BpF_)yHr;)#tlhNPMMke}r z?CI!9#$Lxdo_-f+*_d^Hf5zbIuf^05DW^`Vr=uQo$n}Me8fFq>%gT@D4bP8G8kG-S z*UCFGy&iOBnh0k@|FXH~}&if1E;8P&@+;~A~J$Wo**6}!e#hom7%hr}QRV>lpt7El zIRyG)FYQduejt`TeP$55k8fl97~jk8DL$Y1)q@Xnu87+g@y|`p?u1Z8zDW!|rpNWw zxDL8n4KAQ-FRx8Go-HNd1z9KA+OQ58`WUo@PcuNU1{aOc$?OUF(c+8qqqBm7bwW)a z7Z2v%B<@|xy({d!9^7k$MrXM+3Jx}vJf0C!?ox9JI6zL%qwY#;+2~FjtQ{1pF*J%l z97m(?ab7_g^$BBXRJ1kU+eiIX$-x0pU&b%}DAOp``aI6gcowt5n5HS8- zD*GcoElBL*->F`1!;7@>60!Vk*u~f~Ew2*a-GwfE6Fv1dKIps1^1ot(5SLaiTlhKp z2Nzn$Brde6^rgOni`+xn56SikCNxuxsN*eSMXK$mw+ zDJA~U_@1`zSb*A>Vb)a~&W^d9d_T!)^Si8PXfnUC&31cv`^}66-EH=WnwToTA6Ts1 z8Dxp<*ivvoKEh;j#PyzM(*=1)HfJNcXDQFi=GB@-Z?4Jy7rYc(#lA9Yj>^rIohq39 z%*T0r0p|tvtv+ntE;>v$;rZZi5p?=C@doNqX+6b`eQ2mZV^=>u`VK?G`ac34N1$V^ z7e>wp2aC|{Zo92-5+|S?!G0{`Ivx$5j2=#QUoi~P>a2RhFI6S4G7eWK*2$N5GED8* zkG^Exld*`0>RFF136DV6Yu?@(ndPYx_^Ff_%MIAx`N(&Dj0JGW4?^Bj^G^j9n_}VQAAD=xheZD0(a1z@=f-+wCCl+v@V7=$cOm@ z_G2Ue+x>RQHG9c-&>l+dw^P50Bd9OcIA0GfsfKlXdq#Bw^wF@&!SBGYeoVeVIF2M;f?^25`|rSOI1-tlbQrK9X=l(hEnG4`QCE!14f2#Pn1V4xTlF&AM?i;XG<_-x~&nG|s2J-V;GE>OS zPbD|MNA+C%oR%5j9r{tuBYx?o`PR?bbUl8~UVIAqIs0k1f_4QTV*|s}>bEfyn&O)D zgM8JQ^mipRr#R_Z#2S@Lku=K28lU33dbslclS~eY;#xg<&-!htChqvXz3>#WP<*eP zhYlDCU)UZkN0Kk}U5!4P&NDgCwd7^lfY6;sqpOrp+&CC}hBJ{mc|p^4y8KI?%c*B?&1{rbbDz8>beV(y~@LjS4fyRm^z>xLID z8r`F14YLB2P@s z>^rok?^H=vHBEz#uR(UqfR<&_Zl`&B)zLuweuj{l5XZsXfzkBtJ`2I2$Cjx`DnL z&p((()6+B+b{Pr=o%b3@G@SdN>m>K`&;Nk!{pPEb@jd>TOGY{y=%Kfw& z>Wi!j4kH#?VsdYy>$GlW_OcENwUD0@Yk%pPAoh&bM)kk!sdLB&B4@|cHj<2-&3*kY z;Zs`WJ9HXxFh_niYXo~}Z+mJ-t?Yx@*A6uM3)iww&g^|fE@B%S+s)fo97M0Gzx*t_ z&#w>t8Ti**xfO=?BIU^7WcE)XSDNOr*O$H%p@A~DE!7yQBaXS0w!%CsS(3#)*%)`3 zc6~KpkeAZHb)6@9nE$)=# zD~#zC<%%)BM0b45%gj~#8((33zHY|ncgOd3%=mW4jjxHZttK86Bp$R{@t_RsBF32q zK9tiNRIO3sy4oil3Q#MMdl6_^xln$d_1hTe?v8jb^GzfU8UQ|m#}@i)UaXv7Ylm%Q z{7=Bgin+dwt_UMrte&%RSI<^DN?&^K3D+j__M)y~-omNuLebFUv~Tw`AZupYv5^x@ zd^V}F0z0b$JL@hd*_`{7=eFh1M|l45!!tEb+PRN*u2Z|nyN>yf={o;^^X5Os&i`d{ zIlTFI)Jb5@Nz7kk)ckKX;|tWZmVkTaF1uBJfM~$V$D|t0X*0A?@8Z<+J%};exy}&3 zB-9kg!17i076^_{(Wdg78?d2eueKns6i?8)p8Pitp2~HuX8f{OJMwa`VhqSA$+*^u z*r3S!W+!RaWqfu3zx{z!vxi{BX-W6(U>}X(Bs;pywZZKgVq(o0&OB+JNIT%`62{z2 zA3B>xH0{xaVsk;}XXt|e&t)#Ld=mS=Vl@Z2ukU?)XU5o;l8rg@I%Q*Bj4kN!CwXZ0 z*P49OxP0Fnf9@=79np){F(yLy%Hx#nW^$T=K?GRD=W{NVj42uy`upFo!I)b^PJXUn z5oXToXm12-0rDwmd;0fiSMA?T-iY9H7w_ituKWPmgNfwOzw|bF4w>MJcBBs_OFHb2 zdYi-P1f7udpkfHm!Y2XnoB$8KLc1;W`7$<<_;x9M&e47q?IS`@Du=cazHNYZrGsSm z_UNYl4*SOKPkTsY6JJj3e;#?)?VLX>*szx*qOI?>qy=^Kw*gpfo9*0k4=_|;k}aNZ(F9#31kl02+{lvxf9Tad zw99jTp7Utv9Ok2Q+Go=id*$C=O?#uTT}#TGP+cgL@~LGiYmXzSC$z+VK~dJ0-1m&MSM_A6?y;{4;ly9+I0*Iw|i(h|6N8W?(GQ|`2ANqi;wqB+Xf zosA3)Iti7?+TD`1%BBCsUy--S81G#Zn*ayvk$-c|y1A9P%XwextS!hW$#T)X)?iDK z$(KW`Q|6a+$g}yttdmx?A3RVq!-ZW7GOR;>3D@*p4eZ*TR0F$KVAn3b0e0%g==hHQ zi0_G3%RO36s%h4|xqk)YLB4HKthGa~6<8az1$o_o-j$9+SL}}07321hS27KnKwlj1 z8ME$%3_gozl|Ln2v{rmE6L?Hx9*m)jj&b`gLC0hRkG1%Df5PBb!Ocd^mGpJ(%z9`;8FmM=0JO;x3bp~SYlU%Cb9QXJgZoqrLox?Q`&S?!wuu>4BGqQt%0n3y$aWd<2>|x*i%*%=6WR{OD^b`O$qBSzeIt z-#?R_-(qSRj3;hFe8SKRv@ZRvcNBwE9JYor%fD+C-9QIT;J6tZbIMHoZF3f8Opao? zrQde&t{lY{z8l~f#RgbX{Nq6AhQo>pJ2h)m*Cg!b;ka#xZm`4K&VdGV z<`+#Ub>&+E@Y48=tra8N7fpq)fP=1^xGwP60H2mRiH1*0;L}q0R60d)5})c@azXS4 z9LI+neW5Sen<)O2&DH=PMy|3v=EXI2??(1`h1;<)fYWShUCg1@g>v1*Q_AIN0k*He zM=ih>zbzDQCwG-+6;qf)INR+Nn{xpx(P zYQLP?X`+3#)dC;4o(Ei|hv>s^_7c1AT*b5S|MmD0WnUy;sBw9DX$|hZ-_quq&yz0{ zy$Kc?ztN8!I5_s2c)9`D8k_>}c%1(Iv*Y9RpXK8$gA;4ZJSKUO46M@_M>;f#j-52S zE3Xc4`P6a$Jo|sYsddp=-?RxFgry(gE9szR_=e=<0Z-z#$SlF*O4c;PgSjvI?H`Pu zvxvUnkve2I{`Fgm1Id3Ey?Su8Hios?k)?0>$muE|HaO=I>S#Pp-XJ_X@2NafyI=d` zK4ZLEFO&|_?@#!x@6MR77nihcYQJSW^85hu_o*fG4&TEXiE6oOO(T=*H(@_-Tr&4? zJ9~1Akuk~m7cgZ1`SgE1{VOM3Jf!RDOWzxpj5xd+`5uJdu}9xhZKunT3p2^h>48m{ zM$HlBN)fM|uD(PsvGeSLlMHAZIC^^n|5nl!KeB>rNZ4@i8yYSykP zinCXhyg9}2m*inSwFji5Wb2)ce4W%czj`t;`%8)0Up}^=x@EPmdf!HWbosoTRI}#KI$YA*snq(B>|xutWBO6w*LL)6uX%kx==Log>GiE|tAFhN z?R&}h>8>7SgXA^5+Jx+FE(qkdEJB7a#-G29_3t}a|3*i(l|$DvpzCW)+`X#gX$$Mw z&rLy2QFoqscrwz)@_i;qrhcDIc#yg_VN zF!tKiT3>vdYOC1A{VZ^=alA=CHmB7Iy{)_rcvpJQ$o+C?3OU$Wi@nqCFX#^*oZ+D! z4{{~~`#Ouvx$_C3m(>P*ul)tXSO>|umYRjsukqTD-52Y>*mhLQD7ogd2ac{ncfX)o zV@1PR%N|8s3g3`%Zz^73*D+=W*j`JT6TGVLUrcJ$l?o)bL8!ySC+!ZiN3g)#Yi$bpSN91 zXR2o?T{Mr+eEwJ6sUqIdGp5cf{b{_mJ#-lNR0n-OA8*Y=&-US>?DnCp@ZLcvJ}< zGocx^t8oe*8(et!TzE+4ZfBjQcs9Bcc~lH-h;NjGBbdy-V~Y8nQz{xwY{O4CZJmg| zcGBM^jPq_jdwEAREB!ya2>g^ehqCCyv|Z`8{m>NFoqS!|UIU+6zU@l8Cv3YertQbv zwpZJ>BQ6YjFphAVTfgmuIJCSMKaam78;Y67M8|i?$hUM?SGa9uBP%V={6<#h^e(7A zi?z6sS^3qYN9C~=XV>9c*Cmr@ky5Q1vQ5YXV_!^^4Vcsx!Df;!>JG-zIeU@Ag2Qrj z&QpB6Gdv=UEqtCQYc1Tm)f4qj?upieub6cl{ZSv}J!~NCocO&VFUG_G)u-?~Ylg)^ z$xP8spe+x)d%j_bt52TgS^{|om+uZQtg?z0{pIawOJn>B7g@ zNhQTyd2|8&$X3yxM_;eU*>{=v$3@U)=5Y1|@f}g#CwYtcTSk~V@|u@yapQ+&%BM`I z{=wg)tCkKBZKQY9Lm=Pnpwslt(9*bi2z$sIRs2$ZP!n<@V)Qw&m$dF}y|24-_+!l2 zHU2E+rC!W=!PJP0<(K{BZp7NFXJbFiJPn=2T+U{1NDX>j-5b@yQ!5!sf&F(;B+s90otvP7Ezo4ZlXM>)JhylYimmn0DIq zv3}#PW9Fsx^qnr=jeT8j<2%;A?z(>7^bof6W7yKGt$e&`m*w$=Z%#43mG<~*uY>HH zXMMhq^`m;3eJRheALUn9=2dU`Zm{~-KPagF^xYoShu%zMuR+i1f9yT2`Xh92rju@b zmA1v?kyhq1Z*G-~$_9`RU5Z)3{q!;Sa1} z{L}3C+rU{VG`kkLd@pMTw7aROZBlgFiZ55m{#ptx`-xx8e1$q(;4@qrjNbWahmQ{} zkFavV?OXS?ey%);#!C3^A#8~i__C|e)6>w?tH~PxZ`vbV`ftvme9k%4T$Deh?;FVd zDaGf^ALvZK?DhqRFYC`5H~XKKx*$BoM1oEi0{0sNb}j?}m?dSp)UnIo|Ud{u=+h>If)5ETx8cWtX-VKDcbpgE#;3 zWA?#}S;}~;$@?4an`q{d4Na|v4kE^$PN{i!^HCeG1#TVs#l^8>{HN^Df0$gsJG?Ww zH)YQsZ}KlBXOVO4GaTHNHrRLVjqM}iQbwP+Z9cf5e9s$A8_n3ZBUf(%#?Sh)7~5%W zdHn8`7>uT;k|*uMW`_p^?^a+)T}LCo6w_#9-pXOO`Mb(bRIak>&8vn*dQFdaPCln^ zF{eE08~9kWUW;DIzS%w7{y1~;+HU_Ox~iBlXFFM}Q{Xp3-@lHVvQLm&3NVGMv$BGSxfl+dvDC-#0g$DrjXDv&Pit6 zoxg)87bf%&p@^EGoi_sp~)SrMLfkP z#g}xSYQXO2{}KGZgY|Q*r)DX}NV^A^OPF|w>fv9kygf^&1}?815}g`+o8PbS`*?Kv zKsRvO>cUC1sy`3kujdM0o##U%r_Ema6!H*@J7wDL>=b);{aRBOZEy(Lv#I!bYMAHR zbCK`D57V`x7ag-V!q5NtYZ9@moSI9NXJgiIGD9DKfi3Qyi(QP}p1tHuBmdQox5t8Z zs*3j7bGT@SvqVRjcFw0AZ+v0e$-{P+%#E;jCHv+K(@vN1z0}S4w#AGuY{z#d?XD-k zS-z{zYilnhzqOP+*V3fwc5EoFS2@nbp?dm^B;UE&$5|qG(KoT%+{U!BhpA3h19JDq)reXn(Lldf}elZ%|(@8TbwG26*aolk!^@_n07wA)yeJs8^%-TQkmYs2EIb}~0@EU7 zfa9FS8F0ivnbUe|Hw<>lay#h2=X@iQR=^&fN!87RFR5 zf$9kQ(w9a4J2ta)U4vw$&IEBT2#w;Lixc7U>i>^%nI8QAA1>2Rf=i!^$3KI|D0qy< z;jsaF|N8&Sc>Fczft(1B?|ptOPc}e@{uCz{`((4fr{&2f;6Z<1_?0mR1~|FH`JFJt z$!&%w6SJJ$5%6TvaA+Q$OdbWV!jmauo!n}8GIgAjdjOv7ae;XCr<>CzIJxh`lRYnn zFTmro(C=xJEKj~c-@UGYcj3uiS6iMegeQAl>*NNmb8-`kIO7nW>@^!6n@@i?@_jS> z1W)$5)yefQf#>ezQzriZ$>v@amM8u9^L`cYuY^Az;ho2McMZ?2hd-ZU9M8aSo8Zqa z{J#|*{Eg+wwT#F23fEra-tT#SH|HR6u8@bz?ch@D%JRWIo@}6gzW8z*=k>($WaKOG zq~4btFK$eTDqbDWpF!|yWVX z7{c-3rEz)VUG2t@wFfDOaXWm5oAGqQFY^@OH#ufZdt=7r!7n~OrSnp&*jrsjeJ2Mz z5?9`>^<{k@Z+-ay<35%3<<;b>X#GWdRm20a@vU%mOunG;M+5E}u=QbPALz9I1nb`J zyyTDc@$2kXpE(h$MX?=Q~<{h&> zEng*e+?$U(ZfhrB7&q>Q8J3=PrluXYJ#*GaKEkIt_RQJ;<(@a*d*jZVHTX#ZKb-9q zfF=^4iA2V#!szg^8<{Kew3K5h()+%fF;#?a`VAIw^yhfDc5vGjLY zH~n8t|3Uhf-1LD<$;<$FRldv*Te^m2s0dwAwN6y^9AoAJ1{C%G3;?SyX5R)Mw->TH!F@M-W@VDWcr z+_P zyY-s6|K0t1O*oIS#(e+J$s>Yo@J zvd+fXV*CGdT>s1dmHy-PwfK|IaA-|?%4SMW%g%s5M)29o@2>WRa^yH~cDJ=Jw9Zxx ze>Y-h6!ATach2G7$?Tx%?i^$X{TbRE<^*fu)mr*rp#J;`Wwkkc$N^oDr{5{TTI>e% zdpq`)WJ)%liR9XZv1e?I&8~rq#y$GB=j(Ou|B0}k5N7?Of!KUP7IPj>tw*gL5Leb( zf&APEu|CnV&M;UO%*(yR?~Gr{Gi9tnWD^_8;<*U-bQWnA*Yf$uPBXD6#w1&?6`s}J z4xK+8=6TgQRU3EltYV|(Jg<17a&VgAox6FjWiUQAaV*EVD6|D0(mI}UDU^S%ec5K; zKXBGK>(KGaVG2(X44k$c@M^|OA9vHo20qG>Xmp%i!}#nA1a_qyx#zz9=Q9UiN~Q8b z*U*mlj^?(WcTLVCZ3?gI$IxNDm3gblO$#EIWc%K{^7G@yul|>FAUqq_i!pb1zMeUc z!N|YPc%N)o;l&YN7*ppMtnBmbQAFsWi9jCoRwAr83uR|yJp}}Fj$W^|E zz0$Pr2R5QZ=>_!>xdvL~dKT9WEz&Uk=`#az@(Yoo6HVm&YuAnz&?;35N zjDI4~qv?Z~k^0C%$18_Tb;H(kj&Bouvc9kJDR*lxYz4kxQvugF=Tmzg))%ox%b~s$bBo7@NocAGrKK6m;akK1<1J5=VbjF+A9VThz7?H(Dcb$~TFZ;` zV`x`2?9p#3Yq7EG`HJreuZ_YTG(df|gR;MG{RcQlE`Cn`c>#+9S^Acd5 zH-xzWyI@#r@^&A_3*=bny&&&7;Lf~9+)psqzUm^qH{9ZBQkKp@VBesNrzd$=Yirs! z*=XuSv$nU_39TV_LG_{Y`{?Y482SgUqA%kQE2c$Axdutb3KVIX)Qh5}YKu4>|b6mD* z*`t$zfpWsJ!OcF{+Ov5{f_=AwcQ0}DZem-ViD?La3A~e7 zb0hEQ`API6A4opqldOZhitXIuB<*~1e%1tU4Mll@moSDrp4A#kJw9?K&rhPC*msww z9p_!fkjJy$yXkrt`4&W8Nhjpdw&q&^&xl9MfWsQ?CsExY#%TG%>a4#2_doMl(_i<= z7t+46x;~-0hdcSCBR|B|C+E04BiqE&Ul$yQe@2`2w$AlW)zxU<=HwO(#h=JJBh<)m zL%UoHfWHLBpU7M!!%Km)4;&d;37yEU`VKJ=_~Am~2bkrmtv+6!PQcFT4-b9r#wh5I{E#dITq|JI z?OF~j+PNO!dMk9Qb2|4T$Na3pO2#Qa-o_LIM?ndp6AcvhCqv?XL@;_t8 zxtx8-%H^C7j8o^&-@3y|t=!4~Y4dN`nl^vb*3|iDZyn`Jt4ulbr*Eflztu_EIg&lf z!ofD|{+_@);Pj@i-mYGD?KZ|D8U0ssy}Iyyuy5$)kZP(WBG-`1+&=~%$bcqbtbHuX zpAZ~J$KfY-FN<;}NM7rJuiYQg$sdYG>?R&k2MsG8Cw}?!`fmB9O8hb`j$gjt+|~C? za>t_mAtug{W8)0I7+=3RW;~+}{dC&b`DJB$e)oHKPqfPuvGU`??{&(LczgFyy|qtY zH#HT`=&(;CCBSTv6P-z3eRfakycdzLhMd?oj{2a`M_4uuF~<^e$nuaAir*J&&G*g= z%({S)$>a^09GVV(b#upO+O~x!lUvoES{=^uhm`Nr8n|<_a)CsnEzqRul^Pp~-+^)nG!tPR~h2&th*$FPeO@#nebn{^@4zRV`&6Iq=C| z#$OIUsP7Yfuw84zX z+j^T*yYCLhR_fFqD0gbxmOHhLt0uFLX-ajVuTz~g#8(~LC;nnBzG7_!eFTO(wTYvg z+Jv!AZC6?2!pwztvU2v4?Rp9D-ju!d+>^pP0t{pq4}mvK{a4^T@D%xEW(@6kdehtU zB|cdMT}qeePx9zcz|FTDE*rFKy|$*?u%D=#Dn9@Hu&y#md)lc-@z%Z6BAMv3GHE~f z-^cGvUqagxS&~UQGcwhcNy#~d8Kc2R--G+QqPq9%dC0FlVt&$fBCz9&X(lxq}*2rIO8`SaY89s z!P?}3Qz}O}b?h5YX-mP*E~ed9?AYXRLT-2-_HLOIYMtRktA_+1u5nU#&Gb2k&cU82 zrB-wfXLRo6yPR5f`?1A!c8qGKHBCV-;ZrrrPREakAnOmL@jIP+$gTs(F2xa~BmGs> z<3eAyBHzp4hwwaf-BjovTfAus{>H>0Z2^}V(!Kuc-6 z3?AwWoIjoBL?3gU-d}$7?dmT}oVVVciEWU>8K7SR2hM+u314I5Dn+6N;PMP@$zG4}zvK9J zMQAJQ5y#q^E)7ggqD~0oZDj1TepUWxcXNK!opTdo_r|Pu>>5Hs&BOE~`yU_SkQpz} z2|pUM+AXfDd^EziB^#Q+ePayn8^OKo&3N4Vzv;^%am=0uw(nv>Dj?);ROD!w|C zIoLe%#F{}d|M%yAomDG%_U!mSP^0`c^e}NP*Zy{Tgu>XcXJ0>WLM3O4-r(!8^X&N} zC$ys1+p&qKVwV|ybrN?a1LG3DTZvz7JhJ@0Y$v&L3cs<>ptq!5)tv2G0lkSwGuzwy z+Zs~-n!hQB3jU8U=0p77rT@CrP#yhuxmK1MdWma-tEUgW7*o7GaMpKeI~iJt@eg9< z-0Q3^r!D!nZGjQXa1g*zxJo> zeCInq&v=*XpZGH>GcNYkF824`xp>x!j9dL@RQ?bDzcBY_8D|82wS6b~YBMhN)lPeI z*`8@*pQEi*+Uo7LbsBA@x^1P}wyro%TUXQ8blSSsSG(eu8rQS5)q}SBxNY^KtsZV$ zJ#1Uo9jC1#+L}#U^L@3SATKkTkeA52563&TAD!>i9z4&fJv7Ft{SWy3laWrXaQ5H8 z?|i>gx!6B+C-o4_wH3hgJzz8x7`+qdSNXO-W9Rt^?mgiAJ?8v9=KPL-puLyk-UI$W zXAb?C!#nq5I7>XyMcG!P=ks`&T}%zOe_w$o34{ z{Moo5IPYbzk8_{DAPD?|wSV{dfzuf~&%eOEJ|PH9gSBV)lkD{g?)8g%C}Wb6vf8XU*BL}?HSYaYWvO4tL=YrUhROZ z^J)jq&Z`}CMPBXDqP$xFrFpf1>+)(7C*{>9U7J_?tDX<->2vNgACL1VSM~-rz4NOw zGW= zuJ@~a!`ILB^BMgN2=w1MVBRAce+~?)92W5J%n#m0`d{zLzXW>k{Qk5@GyXj=url8n zxHG@#u8iJ(f93aeecq!PCD0vy*UlZmyE8W6e?8}N^m_x^PU{nwY z0PBFk!)L(ybN?U%qY`J3y^c)lxDJejpA4sayqW7f|08JG;M3sD#SJ(UZjOgDbDi-B zHy+M}n?de)IhLSw7=h~}{gyWJ+%||=9n8+MKIy5nq1Z)tbAQ1} zsC>tF#?E*0f1YuTuV3X>2YyEmyx<>z4(zw{omoGJ*7{jmgQh6BU-`Lj;Lh(CJeu)S z^g~l%K+R!isCh?x@y!4k0`x!k=NbEWZ#+8decE}C@x52@-x)2u z_iNwK$`1kqYjTlSxzm2ZI0sf9rTzCx{yXCx|Io@m`v>mKo%ahfm*46-?|nZowDMYw z%blaS&hxrHfU#@5`vYgxyx>cs?Ey7g{b@S~6g)zE0~qU|n!osy3{U^cKdAB>$b(D7t07J(5h;Lx!pg<1;pBCErJG@`3aWK9N_;Cq5m|pToMvXtc@*6xS+vYQW z0`N^S{nR>wVS?%7Q~Fp%9|wWQ_&{&Q-G65y<7?%-&wb4QefHLTfc+}pu?5()0Vj>U zbd+Y4(YWG_#;*3_ zFB!qjq@^SHM^J_(yx{&oa=)yq@UzStJ@b}KsgK6vEv zr4vJy#LpM_@X?&I+ME8ize~L8r`5qLg8PfEtk~CnWynoqm3(G3j6t1mUTljLt6NQZx>k4}g8N2YDA?GYC9CGf$MMKV8czg>B28F02|dYT>Vjj9$2B$k_`&88T*J!uQ5rbrzq=eCF{< zm^^mTS$rn*naAg({rNHrpXKugpO5&YEPJMK^s;9QFJJb{!UfBo>!!bv^f!|JM$+F% z`Ws1qBk6A>{f%6-hWTx0ehtj8ocX0Qr?JfOO6ItbImXZLa{5?6pDFY?nm#u%ueX@j z$INpD^Gsw;Blt|=Gn-E$a~i>C3ZL10oQe&F*%eO~=2vViEU8#u_|chJ3-3QOd*QQZ z4qN!fnK=vZkDK4g`x{ArBk6A>{f(r*k@Po`{zlT@$VD$CIdA>_Q2Ps4gX5LpS2%Sl zHZg`@F^0{I;rYTxT)ZCv@Ba(lD=M}WZm4*na7V?j3tKB*WUgD8Yb`MTKg|85!uyx~ zrtsNi|F`fB+WKhOw!+>MmKOF|vb69!6UqyxEh#TtIbm7h&z3AJd}qS)!grS}FC372 zZ{fh(?=Ad(Ze`(&+batn&wZfqzixk^@V(rJ3isarP@(h9J%tHB-cva0n{OA6{qfs{ zS7+_LV(B;EDO~pBcM7Y&`EKE}KYq7xI@kOc{iQJJj=vP1ebHYF&%NWXh1YVe{G#^? zm*4ST;nNrGEqv~dy@l6tt@qHZg$@G-u(stkqYn96EgA3q#LZ_|DJ~ z3qKn=a^VGB8<06_VQ%K=|A)7C0k5h$^Z)lgCpRF0P_R%zlMoOPZ><-|&^9LtinrEw zq@z>XhlGHDsFdoAP_+pp2qtyR5vR1$HbF#9tTjcgt+qpu)?3<&+UaGSDd&<9LO`L~ zsYjssf4*z)owIW|LFn}V%k$*fXYalCy1eVXt#`feyKebn!P&RmQ843{Sv>nr!8y15 ztl->R{#bC{E&T=O-||U)`w`KO^^;~h(09{ba>1i(iSE2VZ#_62duXb>m9DFOjsAX{ zRFK&AtF7?QwZEx7PiS=^`_9^XTYwzif;~d}720EwO+u zH}z?+j{S^R%PsBa1=|X!YXs|T@tiW^nAj6}z3|QjZ@#THbT<9LuHdbI#c!5={&;@V z>GBqh(Hq|~lTTs@e;f9^@R>b)uJ#yce*<>p_*JxpJ);|2?ju%4=K}Uo=C)(wK@Z7^ zU<+bhQGfJq*7(@^tc<=|?AbcURQ8=1YkuPoj2%lhjM&^zB947ab@c$ZeHXIdMw?y8 zW3|U&sjM-w`>Kh1EnvS{wgG34KhX97@b1#Ld{>8UL4Gv>uEgqgK76#kLAi{#P>*~Z zWIL0MDT6w+M?BaD>*(3CL$e2Z|7Fy%hcPQxY7Jv6X6z7nZq!)`*g+cCVtcCQKTf}bN9!8o_prta4)iOAjWejdMaGK_e4b#j z%?bk7%)WB=ce8+LcQCWF`slibYSs{?vWv;aMSp}Bf08dDV^mH+jZ<}1P(LKy_hERTQ>STx8KX}f;6&Dc=qeh9gkpHUc3xu)JDp;P z9~xmjEx3p_rqidh=@a&}$G2I-pCd=apgQ#}agUA4|5F{ZUhf45ryr}?INiSU{^{7@ zuH>0w;dHLJ&Qpk2+a_OI1egoIw4Ww?*M6gL<~kp)sjPe*y1{o7hYStuV{cRSEoaZ~ z0C;|oIjXl9ua#%UdpCWNKBYKt<+JdQ@nn8~bbXp)eqR`^S`?#kpK8Q^lKaM5Apsh zhx?zFFA};Vb5GnGJ|lh{W4+hz+DO}rYV*RI8jOu{(6jr~Ji9l|vkg2`U()gNKVNe^ zjgh!uU~fkJ-1EnhkL5aY87zi>WO2RQ%KD&(SSswWAHWO#Yc4ob4$hG4yR+B|HsoYl zuV>ns4O^{XTalH~kU^a68jCz1R`Bs6EAX5jKHhKkSrYoKeL+udMxZtCxBBDJllGGR z@vc$iN7r>$qNkd@j}=xzdyZScw}Ulb+g`w#qL0DbUiWA@=ik?1$+8<>iOp43ExQrW512q)6Y}SHh(dNe_Ubog=Bnhy75*4lY%nq@KuaE?}O$y z4)*W()4}YHKWY5?cy=%6j~P63$A3gIAa7lo&~?$COB2!`y!EcX+#ooGMugwJCj}p^ z5#hIarnyVSvy+9>KmLty8Y&)on1NSv|6RT{8Te1uljlVKYw}0@PjaA2Zq_58A7)>^ zzdz6_-d=|OQ3@~2ffq*LMfxs-{5=D?I*<)7@~s0SM=lJ45x(1Pz~dMA52ZeTcnCNN zS4O9S!7o$j(Zl~<`u5jR$??hGNbr{*hpt|qqq~q}#LB7f-#)(2O)j4yAJK^LT`7H2 zpALLB$s?50P3<49$T8xf7H$|F7~Ocd)J{NmKkR_U9upo}`F)lA);zo$%x^mlUifG0w8kBQ{JyR5 zq0>HPg=H_^5#XE-&TR6|7n08ZUOYJHET((FA?=N-?=k!uG>;L=d{5`l&a}~8Ij_}y zE}tvyUCOuh?DzW}dYoC7$i{A-!@hUUU6;Md-gxJ*$efaUhFdcWGRcXIoxMMUGZ^R> z`);rI-1)UPwbzDh8f*5bwHLvCbaokM9B}Tm^g&>4+5y)2Zab-GNZsuAyZ;UcAA8W7 zbFBZke?$MCKke&}{s|wRhMooRYjn$=MQ7eGzTI;bzn5@j-&N-jMd~#QsD%`Q8<68zVgdUgd%V$i+xoodD%DFsHtKd#bC z$1-@HU<~ zd#9t@evSW*v+fwxwoAS|%$aceW%FD)Yl3Y*554D=S+7gpRFK1IA2fUrI@h~i_`w0_zYl((a&h=X40@09 zy*ZDJGqw!=Zyk*PuK=%u|2YOj6?1$d= za4%Z!62j=%L=q zY>@t(?U$a_YafAN0v z?yLM(zq)`&?3yxkxj^F<^mNI^?rY0T&QmtD=52)^M6QC?poamz%l$`tp#x}N->Qyo zXoP*bKF+9|*A2gpz#|`lpUNjiei?JwqtCXo8+$Ia6V1?B6?N~UpZV15{m$dJo|&AX zF2C$$o!BtPdVK_Qqny)qe0Mg#7vMh1E#+duEBH6_>m`rY`4KQ^bf7Ktrx8a z+J1vClxz#Ha!utCTTGce=sw51|G&_B;BTb$93QRw_3KunU;Flh#>3z6-Mfvr-za$x zq@(Xt?EQaV;`x#_>D)EJyXvjX#AaU}7(J`plWF|mWBe|UoM-&%e~ABt;i2d#(($El z?B?u^bn)EN*?;=$sAPO+7i(v&->EMVpKT=;vF3_^dp7Hk50I6G_<|FC0G=T8!POA= z+S796sNLq__S5@5FlS_R8(TkRnR~|A=6(X-v0jzWc1-gR?W#`M3Tmmh zYXUTjogu=S)w7F8PV1c`BOD#^M0{Lh4>R@?@#~+t`j_IRdQTTTPEYz?0)vcm;3?Cv zC3J*J+ey4I1WhO0mxSjw8N1^V;iJ*2an@qxGU z`(FVa$)7+m2{HJS{F1bW(f9IC%M97!ZurOz=*@Ha#}~7612JaPu+_KvH$0#kffJEvM!r}+2qqYVu&Tf-aG4|8rPwu>&!G5yOP z$yr#;lWd0C9}zADSd$Klk)j+ihKWL+n;0qPbaEjvQj;}z$H(jG+=W5qvC*6;rV6|w zPG(%Vjj@_Ar?$c<0P%R@)!t z6AGQEJ@XxPsC=nq^~KmvldZ@Gf6W=V7dSp~`&i>l1E0v>lIY=@O`m%3(X2ED65KoFI*HLXSdG}GOl~3O`#g=OI8^eRA>`vQaNM6SoBXkZ z;$|XlJrmt}{P8nheCIuehbQAZqv(9G1#PIUZxh0c5q#Dh#%*tn+f}I^U>oThNU^tWQVi>O^=jl+evn3mWr(gan zo<(ON?geh)@BVdDA^w&f%z<>Fj}wpY#W9r0XXK}6yM8BDTctVI$jyP89>%+^oZRpl zd`|o@9-rFxF!K&?IhQt{unXyXUf&kx{WH+SXQ7E}knLKl%f5{58J~rMwkqk#_%Ucb zsobZM7hUjZ={S2CPY>hS$9QBb_vcRC*^wqks@r#O%CpF3zPtXl@faTu@a%8XvD^6hm#2%0*GnIT2k&0|QU$SlnSD`kuf@cv<%Az*O!PA` zUwZQF%gl9QsdKHaxGeFlmyT|7#&%jb3ZIvqL2`cK``8Q6zlx-1!o$<$Hbe8c?F5=Ei_5mx|R}{}M^yc!@$@h_aS^6(> zN_}4F_PN^a^CJ43iQeGoi)vr`K!%A)Z83a&Y&eQcTlh!t26^R;=e&~{58o}K?r!OK ze5>=^6tm^zRFJQJwvnN#-@rxngVTb8c)oP;R2^J$eg%GU>EyidMY!?g701hZ$+9&* zdB2Rf2mkzMe3COXGsdozoxM3XXXVS#Xmdu+%0hUb?kl-2gif0?@>kZHGWjbzbmbe1 z>wNQW{K|d$E_dw8i1~i}$}RBzok4QS>3#0_l~p`n!@c4JGV=>x-$uJTayY+{=UaF# zUeG+TaAlNrc@_7nYpMD`yO*2x=!L;d+ht2=9`D|hlTLb?`dG$yqLW3?iGx4d%h&w5 zYXBDql^6cZ{{er99Vn{(R9Ltu8bVIBTf~l4iJ!!^hwI3xm)0nkjN-YR7*yebAE#B{ z@KdPosSl|yGR9ghyeSgij0vs2Jq^ET9X1$Wv{n_*=pa@k6Mx7@$TR+;@{C(q%hv#x z#qj%W*b&7)w!l9+m`mlnO9!7D$nAZ%a(i2uGt9ThxouXd`F1BVtybSM&*{Fso7~$k zD)%C*(`WISTzR(o}{+Da6|^Cq#U4nNv$Sr?i$QH=Qy zeT>{nyc6z)(8aCs_)IVt4>K1(XD({2jO8|VhiYI_ZRUcU$gFq8OT|AH!B?x{srY}s zzSVyJ*?P{6sn3|xR-eOvKL3UMhxo76eaC-wldth%)-iSCgKV?w97Av&JTQE<;4)*& zh$ucrIL^C!yFS>YchwUd`LKvGT@}bQY!r`7WDkm1scr9F*0_z|iV53$YuV}^WQAvg z_)pqc1a8!W8;oU!jh{_5xKV9zBiOeF9v0`Dn*7|ARm4^mGA`wGEn-~JYaBae9rRh< zF*Ur1Gg{`5H?o#{ozYT6T)WO_dG8VC1-YbHDX;8o_7fL!X3E3p-1UXZ`R(My{_YEj zO@%q^zonEnupFZP{~oG-&P1t4$ExQ{6tDhu)L)sAzW!?J52oq=&wcfqesku@R{D)^ z4fO{5ilBiN)C)hp#Mq2#$A_OH7PqPcy~MIse*_pGw{N=3x4%sJM^(PXDX(?8SI-tb zuXUbB;a&3cn&G@hznm8Sw(q_9KEqmV+Rfn_;=5dHb(B1&G5*isyLxE(=g@Mq6`Zk! zeis|O6)ijC@Y=1T-l(<4^xtb&JbS2d4E4Ob8a!kzo5h}&c$wA?Ngjdy2^;mrybNuwUo~x&IiuOE^PPJ9eR9s|7}j?-Iodeu zaMc0yiW)n2c^Q6j%4b;3y19sc#n72c!Q}?@>!ns`^)l$>#=_9*(!6!Xu0|YM+X8#o z@*rcwKZzJN&az+}T35xd#U}Nn=1b=@WYbS%l{=1?7)SitkXgr@SWIYg-;<%$y^Kk^ zPLy^1+3YvutU7zu|InXao+*c%uF9F^_#|bwDYsGtStK1;JoB!(jy#f%%XtKY*Wc&| z{{7>~M!rMOi!+bf8*gL30D17V^tBhrLl@r|T3wTyyHfPfPu$gH@Q*!;)r)jpV6Bdk zM>qbI6_)-Hhd&wq##KJfCZ-V`tpxvz0sWNcW)6ameW4zBHCutc26U6fs}`*i?vU?d zthW~UZ5KF84o0m7qFTG(R%q58Rqz1WogG`x;5vm%rQp)J#KdQ>x?$BmbVp)v&AfVN zdW>4#^VNTv^KJ)i2RmQkTEa*Q{5YT z=WQ|aJ_<}TSs!fUoWfG%y<|>AGP8Y3cni5vk~GD6=QZwHslwqgm+f5p##v`U zu=@qJq;1%eR8NR{#TWLT_RTl$&U(m{DFQbyfx~WVsU0pOpR*qhpG|4guLDK%sONOm#03W?We*ZJF^P z`;1IAvMz5}-vQqmaN~awj{|Shc^>j{RW7|+ zqXTAzqtex@g*%R}{@-68jL&|36rL-6lzDXY(JkO^H+qI-&JD;MaHHLNIybxpzTn4= zms09fA0Gjaw}F$|pX{bTEwXWSd^B97bH{xB`EiV@igCuYm!%JT%Hb!!&>U*ng7d}CiAJe+vz^~=cDLb`%ER6k{ z=i8|x5Ms^7yC?arHT>Ff>>V#di3CW_ORX&XIGP*W2kcgfmDU_u`A5>dzRN z3m%|1#Nek9*0*0)JMd=h)5$Mg{t^RiZMDPOzI$ZTT5RM&U{`I8HhSM0!^FyrD!|%ty31~(z^K!In-<_C(SdGIrGMXj38KF5;TmulVDw6yfngzT`gtw;yH(XyVAkCN6E>QDFi*6RIZ*lU;U z!dLqPbWHJG+X}rQo0#bv^dy+FE?lj1=l736Cq{RSf{Rm+X3x}KuyUtqe$3pv`|ZS_ zn7kZUlB0Y7s%7tAWrtQDKu419TZHcWKa5wo7g9a_I<9nM^~Yad zDjcOddG=Sq^bd2AwCcgszenWHpL7qpKx%wU;(%}%+pk&2=eXyKS!VxY$hPCoe$I0z zYC9e((fYv8UtdAi4APIG@4a!mq#N4nVy@%RNcVU8H^t&*CFRhZXV;Wp&wbxGHjp3H zp*4s0{bl~OF@2d28^?wZ8OLsS92$%MJb7_4<2m-=v9#lve-h&<{~O0M?{6H>bohiH zKRnutF;9hO!n@dmFHyb|(Fk-9pGvO4zQH-i2f-Tr{CG-V{Q0w9NrR7md%J0~V_f*0 z4{2k3N*gDgpB6ilg+6hj{Is@Pw?AK31e;+8`+E*HB=O-2<4-fRKe=Sfjza73LB4;Y z{oV(OV}%cl>??#WB$xVbCFjrWtZA3P_pVCHsh(=im|yPr;75$lt!%n^ZGV(}5bt*7 zgVwt})x--d2~i%NwE{ioR?ddJJ(S2}tRorg6CZ=GLGRt>!6+YYTnZGX33s_ zeZKD?>uk}-z2t}dHFUA(1zZ(AmeyK_E%Z9U z4Vy%}d~B{4e28z6-4}lo&KVxC`?foFU+ov;9{@e)3x~n;i19a_9=<}~vMwrMzhMAg z)b+e**1)TvZ7uj#j=f9#cc+Wjv2n@ynWZ|$9go*>aDCAHaDP|o{4m#=pJuhk{0%if zW#D&_!EgC21luO0nU9a2#C)td!F+r#Wj>CRudFY1o`d`-w7xX-hiyZ;qx59a%QClq zzkD6w@2T?Is}DVHsQSL}x73I2Z>ajpPEcR!dQ$5J#a?U7^@WZfw;8j$HXgJ#K(EyJ zr>BAMQ2P4`+rti7>%sU0?d6?9d(+K&HEEBK9YS>U{V@JJhL&c8*WrU>Y;_%z%-)Hg zPivhd8k1gOY;@eefcj9{vO-~3{(+^{3 zgk}sMWZ&a!{|TKzlZB2Au}S9v)M7)F{FvnSYf>ThLhiTHuUaD~#t-6i>RStaOMAXj zsyu|>L`&IUL{Hm$E&7_)Fw)(wfo3bL#K9G;6zf8WcMx&CF1B5+5=b2h-_&s%x-~!YSMHvQt$hY-Jo>2o8@=>l zKYi;1RtFfzLB{ZH@W;$!#15}PXDF(jV)%{a`}6Q?Sju`oa;vqvmVGR%_JZ(h^5wZT zv>M!A9d&ewCadL>gY84EkIpQozpGR8&0leX`kz((*yPY{N=~+&Gu?L5@dwXeWtdrm z`}|clD)&nsX0Va`kK#YSwf{cm2AQRO(?~oJuD$-Ro7jtO?cQA0+OxHywfFJz*7(LO z?z8!w!!z3msmpuMOz1D`|m+Xz?iISP*zzt{hdSB?iN1yqk-cL?>KiPd> zXovq%@291_$N%3Mj~%{J@6SnjPaKBRe>+^R_ZOtRCqBcxueHPfp!XL6k6Fale3Jd2 zS-|6y*5LkLbsQ)(VzAdHRRc^f4eamY%Bm8^5 zD}Ib}->02+%6^}A+EdCu=9Uj-hJUH@PgDNK=z>3`{EwldpE~8ebCH5iyX9Ll!yS~5 zK+~e_58(TuATnJ%19{+=F{1l{{Rekl_uYSGKP#o2r)&QD)6|=dtnlr9N-TKtAXR@g z=Uw8b65^Y`Z1MKo9Q{>1>Otx|41Y3bC2V!hMcjfN<-KC(Y|=sT8M}fezrixaJMYRI zl;5ELNyhpVW7)yAAW+iZKO8%(CSSbirl%8|S~xe3{q@}oU%ND+ zYgOl^=8S{`TEne?_fn=-d$l`|pYSNzf%LnAIjga-_hdIexRv(~?*-<;1-~`#;h_d! zTppTX^0Op)sJTz!p&@u;1f6Cbd{n;FzXVp1CE}f<#5h!_vdzX2Ak}F8-l!&Q#eE z_%#3r8#wG7ZapKqs~Q3QL3h<-Laoup9Aw`xu9tJYf~&>VZk>wnQnXQWu>!d`2bp+j zYjnhD&Y=GYXV8z~4EnLHinEJ8ZY8iA?6#~k!vFDBVv}HL>=yV-M92IiWj{~ZYg>C~ z%;T(jtJUVr`s~6$>#%8@S^qfwg5Tz-zvzk5J7N_X;X?c?Eo)}@Yww}sqQ?n#U5sH3 zbhpN(JCBZPp}Ru9Uklx74SSIN{)yc0rTk0Cq!*D%k06uZ!q?;mbS7Pw%nd!ThYgpk}HMmy8db*4E3)|}-^zcrwRm@!ocqia>5&9QlzCL&| zNxQ=951vZi`|+;7Ccm}JU9U##&ZgBpD2)PsbkHAa%3tFpkt*47qX!>OIqWGKO-+VhU#eV;iLUbeP zMcV6s;u2ta9dYaP$rtb@dO34F37Hm<4=(!TFGMH2D}*OZLPiuLABv#0D$d9*VD0Gf zmY>6W#7nxV;}LYU7tzU_{8jEVc#NJs;_7K<(GU48$cH%gnrI`dZ96cGUc(yUHE{M? zu8cX_Fa6O@OaK?6{X7enB_c;$xl!lD)qDM@hR5xqA3^%jML*VAadgF?>Bqn`!|Q^L z>)d{LJZ>XxtBhbFUqlby$8H*K5wW_vTA-y=#K?%p~OX3(Q+# z4(G4JGpsY=Yv}R#2@J%;$N6p%vVAdScTo2|=UMaW#yjVPt}7INWVO}LIJ#-?^zCol z{l+VQDqyc;IebFx8UF$GgYN@;Z=oARnZp=!2rebsP5?`94&{^d0&^H(E`*PZtk{q1 z@k26xLEbawP|p^*b6Ag@io8Ty`0f@lkNq_hUHLPcH4SjnyB_)x1a|PE2r}z0Uv*$t zMr@+KtuWtBaN%AOj=tr7w}ESezyfbc>`m{xe!?Hg>GO*V^0OPR}>!) z+jCQ3yZ71V2i4A5XIkDBHaR$hJ!~d&Y{=ZQC|9A9Tb_QgI_&f1i zW*wxstNgwro663>UsrQY|JSmoA$x`=m&6xt|2=wFC$#rF=3s1DYxVe0Ykads-bA}q zxOUyqe%6F@kewCC&T`h3m$n|M7#3bqY_%S#8x~$Xf$Oee$Y8GIzgRW{xr;oFlglMS zKWmW>kxuBD-$p+2TXN9x(X-noBO~jPk@wIKLtm_aG6L4cYNHCd?zF*`HkK4~HEo2D zzZP=XCxgjLVk3h^(~(`^fOw9P!@~yT@VEYi9NtA=;5mZpWbk(iaFLxyHeb!{1$_Sj z^d{cp@gXDgTpsl93Eqj1b-8@3mvY|sseH`iIgt~T`NIj?=>djatlN4RN1Qp8f1!zo zV@x&p`o4;NUGpqoUBN>9w~IMmUl?k=XIgn{;{_G1_s%M7JyM+G%wu&<_~zNn-_{&6 ze@Egu;pG=vt&~snOtlkJ;Ui1Hy=?eM4}2tI_(-;~2gD1=0aHwVl&NKjRc9aFR5WGB z8_}IV|5KS2foIr#`-xYQANv-Adx|%-`>LhiF%MeX>nc6h!-H(_U~;bASbylQH|q=S z*E5hM!i&Y=MW*nAJ};gC9?<6{!Uy`gYzEh@>T{@d9lF{2LYpxL7;CUq{aOcJJcSMs zk^H#|+?ea90eljubF^>+d1QPNpeyZLM(MZkR(;&c{aLJkCb{b$ZyjIA`X_^NOlooT zwi^5{3c)M!V6B-VE?!Bd15%4edqRAUG{)3bteAK zKYMMkE;U-~CnM{vwn_3=bAK1`TRhjZVQc;Kwb_ndB|pixjybv&>eWfwL48XtJzN z8{5>Gzx!a5(ZjF0%NhNY>N$$@E+KZMxv+UOxxLqFk7aMNvG=o1z&bi?ZD~3fDH6E%-RT zcW?cJi+dHJl63JB=KOE7e~|R|h!;Z-1<(V2p0ZbKzfG|uf>S+ksv!>NUUF?#DqxJM`c0S0p-m%r_Rl z5967Qp1|EsiCx#NID>rjK>we~{m}?z#SssLMpp%ENowUGr*YF>K z7e(Pk;x*11%r?ARb=piwtb0@b2B>-P^$1DTU;7<=9Gn*Kp2YYC)A&^6ANWuR z>^vIt!!X@5Cx5k*Pu*YkE&Oz=Hk$Q!)51-fC(n=8nGeNdJ`^Db5;*!W_!fai)R*{F z<*^C&?PqUJdn)1)9&8kA@@K~P9`m%>cNX4*$P(qdyL474kvYpU@>1~k#=3}eN=*Gc zldi@19NGM?NB%YTaZYVY6pohn0mOOi4K|Lg&L zKfEi;*vrU~hrKLkki9HgY$r0WXDry}-b2UskM(uh&{(^9u9%ESft?6o{|#OaeqZg3 zM{!zzVa;O~TbHm8vAPG{V;|!or#bsxWr>UM@wA~Qj|I4z{!4ZrE%)PepSSsyZO^^=#dzh+o#|Fy=})0DIGyzoBg zI5LLVV%nE((St6jJ+6I}iJb$DUBuj9z(4donY=$`r#tnjyy-t>hY`15Iy!eHd!qAt z=i>V^7JLWiIewjFC#k_@x^<7FV@CIUm$+tJdCf>Kg7Ykg(`$A}6aSZZBh$5#n|J5n+ zzm;zMukFSEZUQI3bJ^3pvJ)f|iH)lF#s3!JAMo9$+%v5MwQqa^x=j5}?Rjy=sqOsN zQ0)*GwFsW##R03GIeyjq7c}}oFc21Bcj(f=xedhXzD%sH=AsPQmrbm0kBM{2?%N5! zATR1q`iZx!gJw+|;1jteo@t?+{9^9^ZSuS#lZWLo@4O-Kr~3Hq!ty?lcAUf-6hZ*HvSPWkNoewy(&kSr4{#Miw(ioZ)% zRi?nl;X@uTbLo`tB_mZ{^`w3y9uR`&2WWpE+vIMmYkYX8Y?D47@adI#sPpuk(kxiL=G zI@oyq&!zu1v641&7})PF+Ti9SItAD}dg!peE7284tgc#>3$Id42r_qG1MOeECY1Qh zI{dR4>uhY&H$86lHQH}}@=|1WLECBIlCCct%f3W*Bd>4W_;}cE?#MOD9dz}?6T((F z`xtVj9GSX+yhkiP=l$F2g{$`1BbHa8x9M5z(dGyDQpUg5Db;>(HgIIEgT2hiDa-vU z8y8w#UK}b3LbGvbxX#MCWGx1J!L);Yl>mB0DRjrPdDT|_CEj!OMemdMPI=Eh?fADP z&v)?jy^2xjX=8{zpf8t^8-(1bZT;k1sKg&-?|tMALGCGD$Sc1EIrI>6sMhfJkB4Xd z3Z6-hkO0p-{jdxgE;9Kj?7k?x!}wSrV|%~E+I=4XE)Fhnad4@NgUf`2@b~_$)@p1f zO;@hDD7>Hh{r81d@8_BLSI8!|Gn3qi!-Ri2J2?mZ;|#1~JG>KFc0B$$I*_NU`gM+Fn9iWT6lta()=8*bK*s<`*-u#rKJUEqD!eA%6`mvS%P7~w*m_$F8JeKU?a&mY_2 zQ~qb$*!Q=4~mesIg=T_d-f%HG>az6sWOMa1=qH%6q#pyyXI zHkPb;V;p-#Tso8!^ZoV;mw&qB^=SOSZ<72Ixpb(=*r3&~ zB+vK5qz9OI{AT!Hh(lv6ed^1_tSvq++tG-=DC@RpF?tp{NhFvHtcSOK^a=V4iB^NB%dN!T z+pWZ~2gqYV{?W(+=y?V3yVZHVuf{3Ub4PM6`gL}_E5|NpP8KRY5#MF$tY%J@Go}^D zfLlX}rMxd6XYDSxW`|?UON2Rz+|K(ucwfWZ`QM|5My}=G9jknXc9AQw`Wt72CzA`Y zoB7+z{;YV=b6-1Z^n2DL?b=(ZfEQ}L)D54zfoCs<&J1t9Gqmv+M~`f%31%$s;Y=xH z*4WfCZ(*<3`zrY5FR_xT9R|q;Zdq9h*ub%q6eITv>wZ}8?JY_Fvifvt_T)|Q3 z&FhQyzpa0Fe5#e#*P9cEA9-}_qwQTj+r|j%gfU0rU*FZ9k1L1#wt{YOb}w|-1Kuje zXh{mbnf*v~K!1E&5WY|cAMkQvHfueHJg$UZs-TyJ@QzD=k`mv>p77xHo?{bn@WX05 zEtFj2slO}T{-(>n+-m&elK$_?@01C@%woT@;avgm7E=Ej&QL4;F=t4r4Q$(&b1kxhozPq7!lP>&>d?EY zzmbQ28fY}Qgzl!XSkzGl9llj3n}^OBaB`DkBiZfGO^WZ@p`wdQ!qU;RCKwiuj&f~SZhNNuVSEp@?`!&#I@|z0r1dX(mJDOdko79+!|CyqXDE(6Tv zg4?W>QTSfR1orN(XFoE##<3x$%=ZE_-#UXO{e15Pjz#UW!msQZJl}%L9AL7Lb>=6y zD%aCAu8y7R>)WUB+YhfbF1()YPXjN;>Zc!r%g}TXeZ;`$E94>t*K38_8|=dypa<>c z2$n^bWpFzHZtoI29=PZ@cnGhjXq@2SP~$Xs{d6FFU&=T~Fpl!v+BXvTXqoZ2eBm=1 z5B&4BbmM{d`Sb5;pIhs`B6vq3GQ;4bYXjEWKzydet?!iL7sd}=-;@*7caP~`(jPxQ z!@`d1^ilrVwO${0xjdOZ`r}yD-#oW|tz$g-k=@S{#Wzoyn@8Nb z5BPA?(-)2W9;&~rFNW%GI8A>gt2-n++&_>1O*g*d$^0+UwPd>shQKrYXQkK42G1VS z#R2?ohoK*3Vxx9)$Sa4c^0a2PeGWe+ojIwsp3&7@z0}L&deO7i16ptV7y89z!BCNbcKhv#7t;ve^^6Yx|#}Z$p>Cr2O~eeAhUKPOnLW z7hU7<0R-0G_*+xr@w6tC-mrx|3!C+_e8tTgh;@TApSj`1%x59z_C>U|t}VnjocTrv zTfp-ca=fsH;rY0M=l`td*qLMKspS`hRxilOU5QP1o^%v%Ej~!@F<1V3FDFvSqjgs< zXioj*QtvC#_Z7=nMvO}lIf^#jl8j{(?q$31`I!$M%M3mw_s=505_`?l>?aAnJ-5t^wzM+y|bR+)V3bh0Xa*T&RTXSXS&?A zzG138_0?@wcEcXxH}?aN^;TBrH2!twU#XSTcRA~|TG5dn3@gDEkN*$g1>^0!a4=um<)b;_!{G|YU-zDJ_8%$+ z`|HYobpg6E=l{$*%LXi;Vbbh>$93bN&I>6gfdIUa`x4A7VGNl&K%CNY(*cL zX6KkQEcV@JC9dFo@3r`v2oJE^vnHRnAG%radCTOnbI!Z=PKr$0x1C z=ajeRN%pD0SMAG4r{~PXw#ap%MD$wl@jk7A3fkmv*IUCLF*<|x=|r~$Ho5gm!0lV1 zll4|2wl#^{iuHNoW!A*(h3FhnvzDPQ`MsF6F?E>pY$z82AJes`m}udH^2NL=obc#m zJ@sr2CH|fIJ92$=;y%BR=YE-z0q)KVpp+IjVSua>gzFMKlp*{aSV* z{RJ0}fs5Nj8dh|ZVF(Gf~gUhzso3F?wM~>_$oDb9o-fMpI z&{H(d1?;z7egXS!x3jKPTbqF^aA?t(sY@`HUXyb^^Y?5haV2Mq^gSO++{AVLX`E-y z{O2D1M#DkAdCbmjyn<)qXFb%d{r7!5-?tH41nd0X`Pj~A=gQG;JG|GPxMMd%4o$^bRmMWao7b z`zUzM*bZ^lO8c>^@Jkjy6HS*>((e`lm+?h*oSafz1a{BG+P~z9N)p(vYvh%gO7QFcma^iqJvfD$i5(X9wRG= zM+EQQY2=@|h|tGF^!4+!^=@!<=bOhiHr#5DX?z#`TJ67$-RAHpEAcjX)eSvFIiFE; zEPUAuUC1^j-oGDuILKVbz@ZiFdA+?te)A*yDw#|1NaLs92oCaF-+$y3VLuoCm9uo= ztXKHYv4_1{ZHaee^(=Pk)jI9Rr!v$VT93vrwu4c~Z^eA7m@Js`g`W3wIE7Us9kq*%|D++(i~ zqup1RE}PW{&h+6Au}m?3)a%%+j^la9;rxE&tn!g*f1;NcO&OA!- zr#rkW(>WjYbMlAC9_$Z+Phigk&PK)8A(m|?y2o&S;wU>Y3|(Ltx+!PqHP)~{@B(w} z*dx8X$C+)5&E~7e0>4mU4AKT!*Alh@8x@(erz#vp-}VZh%Mk7b-^PuI(E-)<39m6+s80 z!Af|!@{Poh>E{Ex*jtPl8dKTsX6TJNRgb>OXB_$+nZO+2OXA3X;bpMx`+Kl+U0^+P zqVFS&c^bU4Xf$h>f3Tk37iSJ1wG!&D#?iBxF|W505%}ERPNVa&PRT`<=d@kGxGUkw zF?2EMw!3EIpMuBHw~mjoZh{~7_gk&~@V(dId%s|esXT9AC;J!TdyKgc+&Tbm z9UP}~7Du(6&t6#MCHiy+eX5~Py!!#T_4cjsTzJnRdt~FG>)@;Op)`>1%<)X-m^uX; zZ;r)l&3QCDU#q#kgSoDOe^KAtx1xinuIrHDh9@)kFVSy1zi;V9*1V~KQJgE6-MR1B zhK8k_E4Ksxh0F0b+P8;x?*l$>B8#5FH!+WScn3T;x|q)JV-J(@>}4!Q52G#V8In!Y zKF;1L-}Iob?xXD->g~M`J=M;ktzc&kXV~rEgDzs{G^)-R{q3SpMvtc75y?6F8+ns= ze0Kr*IXW}=$lCHzp2g9*e!&`&vzB6;g@e{J2bq(H4E*mRZtE@+>!)Yh_vmWoo43$; z&?ok2je#9ndQ@x&^n*^Nc#+7H4*d7h-$$*i#(ltCdN96(^Ll}+;s0Dsd>Am$*=!!) zcmkLkp24@h@QQu3sXUSUo(IRC1%B^Zi9$Q8F$%oIH&((2DI-MEz0P(%LHu@3uJ?&sz&c`n2x} zJeeP(1FHU9>u~QR&OV~uAD}Djr|r+8D=ffvtN8NIpfgBERGzp4^z$Bc^|#Smf6e;s zNpShs_Na!JI6L%m^hedNeZz-%9!DN^?O-04K*!6`X@EluI(i4V$~mx!A54LEfa{*q zti#1;at1W;JY|%4bdE@aR#7*7w3^dw|_O#?TACJ&sOs z06D6&r@Lq)2HdSc>2DvQ9glB$c=BoRr11149oKPwuHsrEkN^GX_*3sd$Gd?2?bP`= zc2&_z5C4q)ZTkGq?V-eObgNo&b01n@B_@pQcyP%sYcuD#cJ@>gs}#s?jILn*7{@f^ zl>FU#fm11Gvx=`14>C`2AF?MTX&xNp+1;Jc`wH-zZ+ohtw`)TQugyaXgpc?zV>{T# z9;=>*{v4yl+}6F(MHnmk7(?I?!~8S?2NuD+E!Ud2h&-8 zBj7W`+jh!VSM*N1qIb33wTC(1n(RYwBmICDGa>?xg%uGnu6@7w>wh6g+C zK;sO1L}y=cL}%x*#)d}PKd=kmPJ4ut50Unw;FQ{YSZz{=+DzA$+K_ETx`ymy!V6E| z@yp`<&`!hB3ufhKvCa+HeXIxPRilf|=3DWSa%?+Y%%NH1GKW$4M!eZs=MHL{GCjyj z&9kEq>MS_tj5EW(m7&j)c?9|W5_To_P{J=m?>b{_&rwHrOs8jn8|{8wanCa8ieKL@{pFD3yR-dm zU6BI^%ynd2K)$D@-#KmlJahQ_u(tR3y<^b_W-sY5zX#Qgj`uQkYi~(-%(i zWY;)&_ylBm0erXEGG~=aw;X-G=@U99^DzoIj{%3q!KWsGvjxm!F?2JP{o)jTQ}$-Z zo}IJ@%lEiz26GFZZSkF#nEMBJkIA*cs@-?bJF@9**QRFdX}d-^`s<&hzvd0nUjrTZ z$@~-<`8Iac9h`d)P6V(;l#K**l3){+ksQlO*>w!Y_qv!EctA4XAq3gomappAr(^^hCYc{wX zealM7X8hh`)B!EYM=^4~p|eZk)U)Vn^vZeCVL6Y9?^I9a<4%25Pr_r|??q$6WB5CL z9~ZujKGDuIQRE{&@MHacT#Vt3HS#^99kqE8?*&iqTjeH^K2S{^5%~jg-$h?)iANIr zWZz#0{PgXb4l6O4@7G#c;W+nS#GgfQLvJ4&xdwlaY;~^v&3tp8orrE^tw)_@jJ*OF%whZ?Gk&YD`nTrHway*r z?vH@8+uHAbu->wOM@DA`@TdYF5$cota_}{?Z3Mi~;(QB>d?-=c+_V$?m}@7@enF&| zbwLvUe#01qJIrBwJ?~QIkhU(4%`Hnj#5@*x^T_?H_+*?R+?l}`YLd8f8~#Sonl!jG zBL#Q3{|R-R3hpRgy#?N~1s>zaox5|bnKkpQl^TD|^_HJP-FL9o#_yoJhWTC3nwxjRMd73$AGf}ueS*x+JzNPXXNJK~%?J7;@kh>l$d>&me12d)=);94n2)dgjq`DXHy^}iM(#+?N51Ccjx_Tz zHDx}y|H3KG#}z}&$3xIwY!iEp(1^|s+rqpA3pczW+xz$Vy&Sv=TKAayJZyCGSNYd$ z=&#zPyG_`)fssRZr-x(LFs5taI5gViZ5|1x`_f_T+J@h!f zjNknrzRZ1$I!=YQeoOguv^B8reN|G9-p;sU%u&TyWB~Ilc_x`E9v;df-spbo8ObTh zqUMg_CF`K0TKL&E_|{&&+kyS+A^4celwto_2fw=;I@|W)=_tDM`k!X(Z7lFL!O=w53AZZCsDz*ntc%I7)6hB?j`F{ z_3eM?TZC~$u?3{c;rkg=2XocMIMVXKH(8hac_8=qc=IG%80#Kyo-Wiptw=LZ*nbAi z6Zfl5ah`4(VxCI#Lx<0)L7p+rbuY^g*?MO2M9%*FlC?5)JLetgH$1Wh*zNe7!z+RP z)6L(p6L&+Wd!W-Qe5Q85Kdpae&-S*m#D+Vu-B~%E{lHv%6#8E43;A8jpXVMAp4fg; z;rZzggXc>r@Z|nt51!aNBdjMqc%rlvq7%oS@8nev!80s) zM)YExOO+G0KI`z4YWT^eyxYdR0`$?M4f1z`pFjhzWV-z1(c|a+>mN4nkEYB!_y0m4 z4d0htXLfSl3pDSu)69EM%Di*Gh&oPX-mj;8x_S3#yvZ9QcBWJszx2b#h;3mI&*c7- z-WX-8EKQDaFFpd%(llf2OBo~gGfr`g1t%C|6dcBf;sL)t>5cvK-q@c!e(YHvHufh| z#?JjQ{8S8GS0FRrNsj$djlCkx*xyMRJNE~uW3q{79JJorJ=A(DLiu#_EB;nh3SY}1 zKRGs3*2*Q?j}UEdJKee{o^6-Z;wKQ0PYnF761&?1d}nQZnJX1nZA}iZrr(hYtBnQ@tL(qMao))`$t{4Mvs6~*I0^;I;3^%=LOem2H?7TU>$oT1+LtG^AzFQFa%sZ z+<76x``?8Vi zlH=Q`@m-f@e8CibiTmGE$Eom>Us66DKk@J$_&GZEj^pwEC*Bwb>)6RL?noIU_wC*o zvl-+3*8^EP5)0(-(%@K(GaCbF!$RPe3n_WBZX4j6}jGeajOLk&3^+fLj zZX2P~*{m}^hJ2A-cQf(15!RZ}Lj~VD`|bE8&n`=xO<(1=Cm*XWWXPIIJF#{V`5{;r zuBBd2w@a1lvU%c5l2+b-!JEUa$Is#L51YfSDRaoZ?akp#WMDiwhmW%-ADx+I4&y0v z$o(PwNlt}6yC{Dm`kd&Eao6! z$^EmZIL606WQ_5EON*VykMUa{Hpb4BF>-&OH%5GMlpEKRBPAN+k~Cu+lQKr`zkZ5i z{OV9+gcf8kBhit=Z(cioj0-+&jIX7Pk^6u0#)yAUWO;Iomd3a|%^2Cg9waNdzw{Kx zSTe*IqrZa>%s75r(-{{w-V^VY%m^i-zZX1z?LOI`F$?k!@63PtP zE8%_={T$dUDF8mVCgJmA_T}X-BAr*fZa~K@NP!Rc$1XTET0Ts9^;6^V^D*sLoXz|n z3FbNb2^G$@|0z3BPHbWMEY3UM3P032#E%Yb|J;gxKLz{R3HKJL+i(AT51xiC8~vZX z1=_ED9(c|*dkalP$-M;w^Pm0Hug?$KTS&_MxheWQ_fIiy!&A-&)^$l(e_61uO9Sik zQ((>gL#GJqZ&E%T-*jlbC@lYrNU5Eua&u>FQSAEIEVI@rVm;=aG2i0)n|<9KyTiLD zq+iRFri`8Y+q|*QWbBQ}v7f22H>Mf;%#^WnUww*Wzix=JJ8^^o*9Xwqr<>-|!b0{6 z%WEfxfB776K?m~gU*^7mGV%{Pjq61Il`r9Rt{>xH`{1G{J=1&HfFs$+M>iMT^;3D5 z4bGDbZt?rcc%EL?oqrvbJg+(Mow7tZ{saN+mkUDJgwe|)$XVGXtC8>CyzTxu{ezc0 zM2uvBHR>eM$DMW<|Aa)kdCO0ox0&SZa`rTnI15bAC-;A5e}6#Mr?k5W`&sHXUm4Nt6a##~1qYGj|p2NnP4XG~eQeXYCvW&OWX%Smtazc;WOK|e=X_*?LgKg5$~ zxi~r^G~kDkdLCS>foIa+La}p-!OLJTM0?wJvu7wj-Y2k=R-}dH zr>C}vhc({>Lc_zcaoj^^(t+1+J-R6dzErSpB0q&`_~eAHhF_Td`*Gnh!Z~2(%A|Hr zCdGkg5E{rp-!}XA++Pn4$&Vz++(8e!iy|L0Hkrsc_BS3TKcG7|1}3gg$ROR?eP;H6 z(5=Tq2O&2;jr!V)LRsN=DwFYPss7SmN(0L$U0)N6zkzr@e6IZTKZX5_?ovzfix=%^ zvdy0FUiJgC^7Be$W8O<168(lOSGL~OJ8W0-Okvx#8Yx?XOBIU6OMC#7{41M2a`Nyx9nP*<;RlbDFgGX zc*|6t5}^*--EI6cQra~%<|ed#KCy+1OpcMj@^12mC{ERTcZbO> z5-_<%ln-3FMN}q09pv+vDVovT6L(f3y7@Tq=MiAQy0Rn&e)rd8w1O*5)yz>`ya+gB z;||9}tKd?M{#6o-MIM7h6h76jGfbG5@?gmLqKYp?;Zue-T$p_2%lN9LdG6=I%|2ND z*as^=zNf}B`_C_Vo^d#BTE=%qJn2U2Je7RA_u%{D&p#TN%(yr|W-b0kMbK6$>-rY< zyCT7_Iynn=IegZB0A5}jI(#L56|&#kz*;iLO5^^A3YVw9B7U#1UNzT#5 z!-)xk_r-v57jmT=_=b#)HWwXIaU&URcS9qU_$+DAE{z5bq@EX*wNQmYad+rE&O@VQx<&- zJ*8#T;V06-wCK)^&86($#(;IGW6gtRZe4h%!haBN#eeZz3w*rQ)uFO|_*Fj?ex;H3 znxo9Zt4lJopg-s)^BZNH=Rp4brm{rNhO$II@+v?~L^re`{lJN7Rcv^mZ4Nn#6nml= zpb0zi?}je+!A}%_qL?_@tYXmKK5)SJH9}LCo!JnjGFJyHOo_ zPaIg+ZE*P1+E6aE8cMXC>(VmvTKvGktir+30X=0}h(7xC6mSU_SRd6k39CNwePJO#7N}eF^tnwzSzc%sn z(b!dM$Rrkmn1Fjfb@`jW z$|UZ=dp?X<2y)2&a+p z#Q*q|Zzj6mM3Ud!?0!>lPEvQ24p(r2TUI%q(7}b{3%#-zrIelJ@XB@Bc^bbe}w#Xx3KmrW6$^_ z#018uBL(Z$Nj&jOL zjo38~J^-(rQtZkQY#Dxk{il36M+f8yaP#xy@@(aANAAG`*J;fS54@DM+Z@(u$ciR! zzrO-I2DXf`duL#mn<<~)V0g<%wGV%Kc=TFVPjuyh`V^T2-uZL_@p8Kd_vqRb$Ev>=p_eZ%;w z7lX%B_1=lck^NnM3lVrs2%aTbFMUWlli>3Kyzx@_QH#DW2=R{Zp#?`radHF-hQjkM z-!}t1Y>03ESvWYvyHp*q zVMi%hb%)9U`0?tIi8ApF|^wQpcX8zJV*W3xFA9LsG zsTBH5moLh{9-NtGe)blf{QMl=<>+r$d|LEBdVv08>w!rf@T+lbMv)rER0kfd4<#~h zD@$a3r7V%XinRg$fvxz7mZCr0h|Z(=`CsIH?O*$!7M+N0JRQ}6ha;24S9cK87yJj- z6nx)}9+r7*UBfT1hdqKn(u+U+%A1dp3*^PZ>^5?Lmhil-8+zRl3LX9o^4A_-`^Ksx z{hRvxb1`M+wFE^60`y%$PYQ~Jb@_gMKJMy@219G54x=A&<4RCO6!iEo{r(E2H&hc=EFGhm#+3_M3KNze#CVvOm=(yomA-5hJmc7>RT+ z_s?NB@OmWQ3THEynnTCeH>=N^!*wS)hXqz{iSQwtIvhXItiG+TfA?Z5yD>{R0

q zKd3mHn0l^{O-E0<(@y-t$~N=feRN$z7VAOTaOK~f%|3oM^$wdxxn+xI?WnX4FD=B+ z0D9hwd|0HIBWqlE^Qy(~R|X4y3ycoc7mf*Eifr7*IpG_Ti6P}(tSt(^#@>CrfHP}V z#>x+OgOk!F3(YytGs7?W--kYG-m~r;>*;z?`h$J&kX1V>{8P#rUC25uoJE-qW5>84 z{3Gvq9wKYHz0v%>%8Zztl6@k(DiHgxNZaYVR|vWnq>W)77XjtpzP6f%2$ z=Z5d}-k}FCAP;(MCib>UtHhM8#lC9V516rkg73`OTTUAo`?)-G#&ceH*${ON%vI$m z1CK(!ao}7O{*r$jEzVqy_ugC6!}I*_Yd>PX&mVYS5Wd>~zGI|$pEL0Oyzrbs@5h+; z(kZ&8Lc{Pi>DOAv&0)PPdq?D_@bm@n4CHtW{lny^00wR7W8LuoM-*FI3g27+-$Vz9 zv##ktKC}ez9fFre@FmKSegaSRmod5r-&g8A`k!<>`MGGXO=}|cL3+NQpGInsKiI9e zet=FQK2~u&AG;p@ctSo_k;2Egzh=72$I#7W8~6BFg1vOv(U6ZuCmrBp=tYC<(A3dK=3}3r{6i<;V;bi&Z=7?FALp4LHqN;z=b2yrN9)jMk)8d>O!9-2^cU+o+~{i=R$h1=F}>?%STi5VvBFxDEJ1&JiTvBr z{qJ^lf93j?Eo-yU)f}DwZeJeoM>zu`-Uz(WF+6=k@*JJMy;^=}$nYR-#gXH2$!hvy z^m_WEvFaZ?MEk<(IgZb9XjZs_c#Og+_;^4MT1TjFH)xH5Ug_ko3vGXkK0a#tm^H9I z@!mae`kH0*%13?c6V>%HI;Hr5)*@%z1zc%E=TXTfg*<3~(Hb7!3qRk6?fF?3hkwL**pz+7l%*c8>=!AkK1QX#^1abtsqZ7`O-1N4 z-TdB)y}FxsTd-5B4-au4LC?L4Z)4DwXkPj;^neT;7oMxO_|~k4sk_kG%WA5`URz6N zBG6JH`%07eeo}~iCGI~Bo}bCR>;Mt?q(@u(*l(9TER}~Czit0sB|PL@>Ol6k7e!7F zchT+|w_Wj_D%!1e_p;WiO?YJyG36Z67$eNf2P=~HBjNc6 zwcT?W% zJH!992FCBFagqzq2(XlW;QtCs(QoBeV^3_adK6mvJI#^mDFj~>*P}V_AhySXhUG{6 zf0=vLD_eB;-=Q847f%-N)b^1}@H1OpVXg~TRDhq%gZcul`f>C#|KzSW)8OwQ88JpY z^~|=_XAYJV@(WnylNAtZx@y^)0b~*O0S5B9_OP<%E zGu(`v!?xwcE_W!-P5K>tS31{4oPAt=n)OUEv{!AN&0a;Y54xGB^&&Ehy=mDZ3)-rb zr)B|u6(P3z{oFugUB(pv*>8^2I#m+a@eeoki$j8 ztq0=Nhm10O$+KBjO?1vJTo@r=l;N3n+mG-A5znq9XA&~xnMz7H03kHmwjT$ zvHJrXLo4vjP|&gYi}$6%OSXaNU$8+K9$6IrEPjeH&cb$mz?#bUU2J^7Cdn?qS!l*i z?ZRF4IdtT}UUTzn>KbZp^!~*Yyq9c{PeBwpAo!M{yFN$xe)sIan0RZ2%5X*APNL7{ z;8qMiFP^J?j#~T;t&ExBBK!|y!N7pcV(dR*vp_a${gDa-jVbPp2{`-5SV2tHGPxjHZPkimi|0om;U-$@(H=-q2_%3@TQbEqt=K~V zff8-WQGBem{c%-PdXA~~ZqJXI%p?Kg1r=LI(fmK(wfCOcGfcRt&-3SbcxJL^?X}+Z zuJ``FYprzN{t|s1kNnt3ZR;m}llSqu{A~CV9J~A+#10zVS7*>rPxUCZlh9l_HH8a; z)RL+0O}J(KYRTyaxHEC*Ust{w+w{b{+%G%36u!0PzzACokQ-MHY(sYFoiCl2`i`E7PDYAOx^p(FRzdM)Lo4tjXCWN0zC#R4 z_tve|d3|X%yR1HX}R z+3%P(Zl?IxW3*4HiS*z>zPoo_?jv^Z{oAG6XU?|i_D)w{IQi|3g`%m{{I;zx@;7E} z4%SF7Pn$i?=;i5i?7Qxy6Uv||-P1Rj`icFl_l9{>KiF#pYxZHAuHx=ZALn+-zt=gL z;kleO&iQJQ`Q*BxJKsTk{}0e3hmdjjf9J2V9*)f=C&al2imS>m?J#ixo!PG%${fxN z%WeLov%4`ipS)3Ju%zM?;_19I7~4l{ru&=%=nlmXV$jWebVr5J9f3rRmHV3=V-FZ# zsKU`5su&56lfN$x zqMvW|7ov%J-Bz*zTK>SR-#5E z#`-T{?PcGd%zUHh5R>mt8&l)S$MTLT-%{{x#fP^(Snwm`8+qW&^p5mw?mrn%G8MVx ziJKeQ@!J-AZA?u7b2?0J;QOud$_@U03OpIPfsBfv7u~h_H?7U^!`CKOo)(AU?=|$1 zkQ-^^W|A8}p}i|N+iPbIzK%!VT{B3sDK)<)TSE9#K1{WX-2?d~-zMIXtyYDtrti@3fgHgMJ%tw87B0FLQz=jOmJrBGw zp2mt5NRDK0q~@Sy9p^PD{~JRN#>mmBc2M#v#$0rVs5_tVz+gh38$6Q#mEP6wuI^DA z*|j!(y0(zr&KD<4`%^)7XC{$dlaWIR`qR+SzQ{R&e*EA(OqFft(@Juf46OG?IY{> zuDsauY2XyRMyTrpH<{scDAf~a0&zM64wAbvEVRA=+=-b3Eyzo|h`-`vwNVI9v*K8|tgXHL6p73T$P!@kj&ENfkaG`{X})n}Ur=f{d0y(79j*7i%`Rn=%M)+aO*Aor9-?nyQD${+pUo$d+ulbbE< z?mnTlTJQ~cT{M+p9c3ek-`!dd*}0FOmE?Oj$9|S$^BxobL;r{IKYbn#{|_S{>aCAg zPTf!3w44}YRh~7b+9H?E{xtFL^T_vfov#>ePr7~`G1{tZYqSqvuZaE@5^Hnq=hJyl z{sFnBhta{CySuYC2FY1iGcL{p=U zY-mHz>+Cl5RYi`ZlDrAN;bt3G4(}o_v`*eXWhoT z!JismqgD1?CA3%isAcM7gW)XO4l;JH)x3`S3DHm(9TBv$OHKxs6B*n0Q)uo{(G{|8 zD6(k}_L@h=%RUUdH0S7=f4|X*wWY~@cdgf)Y0HQQJZr5bch~z!^*38s3!6@p_QAL5 z?^xx-J9YMb1N(+>UTa<2eFGoCXWh)P`wWxUQ9P#_nvNAwcfEu8|I7Z}oULN`)8Bm2 zH$LX9Rpj7P{I;AnfvnJ)>#0LW_D(6F{^KKJbjo{n+x%CH-Cj6Qdq#DiMnUtWpW;tG z!~3ig&&gkm3f-b-n*_%o*zRnnM(0bRwmppTOfcRSWt>jztYXd)?cy`a=WL!u{h>N% z>}|yJ3QeB6f9O@}HH9`rzq|7^u3AiypzrM5sRqrrOjYFPS^UG_*(R} zSiaWd$kP9Sjvfz!r?YHdtM-CW5MIyF3u&EWsf3Wy^d$4-!Kx51ZI$s~blwC5|Y)r5J~OADyrHG3uV|91L|w z&rvVQoF5~eSV26o9zVQ-cw)Bm&dCRnFZ3OKj#^9F;TLR_#l##3A+lL>XtKXc`08? zHr4+ehd*^Uw3jX~2h-oN%FCnG+fB;Qf3M@{pL?)Oy{&yGU-G{B(p=UPyQi!_a~=x4 z4}>=HeJYs0e4ik=2oJa7=OSC1uxk=`w~q&R7xC^`3wbCRt9>|jeMpSjwsz#~_f~yq z^26bw$U)(r7|pE4c%$rg)uIhXKNq5(OC6g@dcR0}sfOD!TsEHkd%Yi7>kEC0cWoTo zF;3aRFAe;t@x>nW8wq{vr{sRvQsxxt&s@#=GB@U4^RqayPXETRenU1aeuTO$e2NHo zAa1%j3|^eLOoG3(pH()bzmR-7bq)q5<}d$GFg*rL>GxH?QWgotcJL?*JW}`(0?CGYld#ke>@qwsm2U``>3<@yHzhmj^$?)`F>p>q&$}w z=3MlVV1A#u9OQTJZ;;idDhPLVa8hA&78aH5%y)5 z_^7pj7HfPh*aMrPx08^QeXY2!vb2QQe~H0!9qsPm_wVrgKz<*@@5FrBqg~^>n&;PH zL)^e`@UQ%qDE#ZIG=DugFlPi$(lzv?({d$PAo~daNfBBJF%G23;)ZOow zZRoTdoK*;Cv{URU2YK*95MLF2KZBS_JDAkI~lW$WDqhXU`gk86Sp zLj^Fb=Bx<8;N!gMBIL@kz!2?T#a(`ZuImPq&)LMQSU^mlwG7YY zH`Xh>Oz;Mu{0_fO!9G#ET{!^!-J0lHtH#!olI8QCluz@cC(-w7g$w&{_xJDX`6}py z{;Hv=Dd1KywV(87Z~IExi)YscYs~rh)N59=Z>+Ai?vdywt0u-fiyz?bmD*r@X+8Hx z00;hY!}P~Z4x?elCi`>RQ{%V?hk6HSv=e%@>t>5WacWp}Zvc1n)c8hPH9^_<mNn&X``zs3^PG1p3VCmcJ)XO_KDG+_aBRhjFz@lVJLVaQF@sN5 z1pOry!R(TDWZSq3yAStVp!StK3p!&{M;_&GckEoJ5AEw8cZ2Z6=Y-VvqqCv=>ulR| zTqW=Gw`#gRpk~3v+d41aZUb+Xb{`46-Rj_NtMb1|ymiutu_wWKMP*ir*0m0vSPV}r zLDr0Gvf@`gmV{>-xGaCvmJ{Rfq1}1>$?2#4THa}49@q1^Ir*MhgSk9=!ofo&IVk>i z-+$hHe-m}D*xQOJzKN{rKsH_VFfjboqSnmBkx#u;coWjHty~iJI=_>4g97yrR>?bU3VCt-21Mn#F)Q0 zfLi8{2adUY1iZ}MkGHd~v(ZxvxKC*fHl6gqz71B5?)7XlcUc9W9AavtzY_Wxcx?x- zYrv;jJNTcq8{Gsh+Zuz|5*GIu6E}9gj|Qi*E3^h)obKBYtl5vu)?H;&Sfk<8Ctg!C zeBQ3^?tvZ9`YvSoix&6sI%__&93M+-Kc1Kq@K5c>nx3JxQJt*rsLXEupB?1xhFVV_ z?fnkmf4-2r+3?AB4oU6fcl5EX(0W?6+u7i33-UF9elfK9oI{&i?9b^t#>KPeLF@M> z`API2xX0GN{-!|aeQF#8_q4Yintjjytm?WdUXJ~HwD;S2Kl_PbJg3Fxy_bmhtV5q{ z!Ddiw#LzSR^L(~-sey4hFtM&v(2;)DG@G@ZO#B}iJwddsx_G;`FT2@Y(;?!ONx^tK zYbV{(zJj&HZcu;K^rslSzE58^F5Z+CSXTGJg4Yz|lYichoQ!IH!B-vYsDA1k+DPp6 zU%@lz<6@UC_vVLh3_ovpw5$?oRjrF`& zh~3p08HgW#Nht40O)cMttwA&|Bo_qmKt`0+v-1y$BmOkM+Nt z&)zmaxa+U|Raw|x!lfVEE6U#&flKB6BugH9(TYFzd;1+X4%D>MZoj6`zGJAE_Nvd0 zEC|NWq#w!TL|rc5jUDUUi|xwU7l1F4d#{nRrIOQmXCITCwRMPRFNV{vau3pr@~Ng` zPfFHlUyjLj45I(SQK5_fFSgqp@QSVP!tt2kU>zmz#jlAy6?4FgWzSQ(KFZ(ws8iAS z{v+7N#{x%R!ErZm;BUBaED{{h(P41hodySg?>YuJ>>Lj@MP_a6yVUOEdl7m{cKH{7 z-#wvM&6Igv)X6OH^_pEuP0Y=obPu$D@7?t>G8Y zkmR54>d*S;2IK#G$f@^q;@=OB&K&>l?m~ujGk@el_ebQ(spZc?*2kzf)f$M-9z#~w zDQC_;tiTY9yFkg~7WzW&Gx4r$*m`gwyH0WQf=XY>Z>blR%!$Gi+b^=77LEf!a9Dv1 z{TKB7om5(0dxxzL)>H;UchOfE+K8~;qUWEJo7dgz`|0bY5yWw^#oLF{H-1IOP1rW@ z-rh^#y<&Lqdfpq(ne6P-FXMlAcOT;FeK&S5wc_OHTZWbP3+|YxQ?FTRW;k*6dL_U?;><8cQaN_%Z>Po__S&`~s*jv{I?b@|N1QuJ5G>m{JJpXx%_nt=L@-bT%%afarWiM z$1EeyptCygw~T(%JS4v~hGJU_&%vHy%x;~Lt1*B(asqIhcs2ARALxU>*#4d3aiUkh z{5#~{6zq~}?2>8NC1WeCck0NStgB=n2D$!qhZd|@mv!Hd#@1Tzl%fNc%$)YY(!CG9 z+WGRvcRR0s`Q4@Ghu_^peSm6s)kghl?@AGE$<=?bn6~Y-ZKv(xyzslq{cB&e+NoBz z?26!Pld%bWwAXyIYi--*7vSY8_S_HQzuM|I?eT;DCirPHIj{F!5AeM@K+KDp(fl{b z|C>FnMWO$o&Sw$6yXpxS;WwA%eZ|xhBAZ%FeJ!{Qp8zi1m`8+~goEW-DKV@+!5@lm zg_p5T=xC#(y7@%6M;mztEpql3a*fYbe2(FBEuZ)|kqvwn^Z7WRL;2jq=S_S*#V7hH z@(iDs@cA5YGw$jApotTthg$6&MPFV3j*uq}u1r^6MzIC?6-K7>_dV48NYCmF8RX-%bXrQS>@@0g+`Zu1uhTXI+)U(iwiSo}Tg3lu=v(2h?QTnT2@Q#w zYT{n*KJYDHrKb7>*V@Q2e4!LMHktXdrYX;I?|br3;J*O7FM197S8b}&B_dA_AzgN7Pc*N*0smlXj2Z{ zikDSYfCKDj@4cJ)-L`A7v&NuLp`UTIUl08@fw$+e?X)LKHnM0pf=)xPZSDf*JAN6A z-}ztqy`Xu7WawzIR`WjE%D=VOAj{T$Jactl)Uh3PrjlwW zI{DnofBQY_GkMRpvrg`6KGmA=L+r4=__KR_eT^L!MxMR_PJVDMcV90oEBSVoHKxyq zVEl)ii{-~J4iw@ySoks(md^g62G@$O$wvl(*EQ#`hkR>ED9G~}`5vCKx zfnr#1aDQ@v)yLG$Z>p*MfP2FKI}0&8QJFV-?f_jf$=j>aLvSf?*&dLKhdYF*T>xx zHsj~~*dMI}do;tJX?K$W=XwHH!ENGfoz|&38v;|E|&V7h%C=`E*rZ0o0 ziTzF=Wz+QO-S8FqFv4$xY1=m6iWg_`TRHav(^qUfdF62M+4dRMvxWHgR_&mW?^j7* z)cAtf9#d8>d3D=AfAel>>+A1MsoMK)+YI>Y-m;ZNhrY3*=+L6w{QYc^%``#`HlQtLJgDg>shzQV)*rYZCO7ZduO`hgkj6X0oGW$!_8{GfcElxE0MoB!~pkP zXT7tC_=)&(%9aYlpVObKh>zvGIGtm+eP-olZI`?8Ugc8!&A}(owacCON9}2$7k^1y z0(-#Zk(r-hc4HCymj~m$ygoO7_XY;}M3O(ZzhlL3f8T!R4q&FncXZ{OHq29}*f3kP z4+C>=VE#e2^@lBAv)&m@O^z4lI}OaeyN0o6a6ju)dJ1~`G<4LN!T43*493U*TQGk0 z6zczH-EmnxcWl*HTof9Iz4L?R*29Wx*!%ockFB#*of=BUy!l7ib<0@uDl2Y$C)%3# ze}AEQ-`?-;sk`Kz4??`Nly@fa&P4n_o?Q!_hl%YDyP4P#_F@FvDa`!OyvTZZM;>S5 z)LHT9P3Xz7*m&rJWUK}I?rytQK{$vkh3+Qt`$XuCw(b1(55c&AKCfrIYm@6Tm34_- zZ`;5+TZj8S6SiB%YD+lEZ&jXXFRS#ZalR{YMpQt7&CmK~RvS{evlD?Fp)jL*XRHvMI` zX(ano=I7#*_uM$avDibdeWExJ_Q?mW=z#*iZJ)?jeT)9ML%#XHk&|w$sU0}o?`?b+ z9uy;roCLjMPhZ)W-?5ElPha)1U4!e|)7))Jy~?13J*_>Q=VEJ|H?p**6C0tM`hn;B zEq;V^Mr$}Dqo$qzIml&WyS|RE1r3^W!f1Q_AIbkxC(?Ei@s3*JpZr#y=PL>J3)BQh zX4Tj*x^YRTu9>#mIG<|dKKV3(jo`7SeNDV^F!5A#7kL3ZSWMjvd2(yOmqQD+4=|b> z_lM)1eSqaof1Y`F_esusC-|~F|LpvIjQX+ij8$$dnkes2$ncv4U7tBeANL#GO_lW7b;nt`+{8 zHy)=g@87)D3cZgFIY@iekgMhRz6W=t)_QykUXbq}dz{?v)wWO2WbQoY4$r`8&26+V z;?4~97am()g08$Y28_xb>vJ({rL%c*s6$v+h)qwdPxLYQQ0_*J>z>^?`7$ThxmCGp z(U{_V+0748zam*%N*@;SS4xFUF4V96#Fb}-{(ZXjaMS6?M#f)=>^E&VTgv@iHt;Ok z6tb7x&n`Ot zOSUn;6*Og)WHG<`5y(h*`y%$vyzW2Lec!qi?i+zOp{!{Q51b+r+!0N@>jlgPwPmTK!u=>DX zVlBX-+I}CrhVdga;rwsVe-ry@x@dRDDfk{Ia~3asZCx0wnS%bF`ZfH^8?nW1hTiyn z3D1_ENuHAL8~NVM_wSRN5xvcZ&X=Lr3?C^^=+Nn+t%^%n&2Ld>qxiCDv`n!a$q@G3 zr^=4Qahrl0V;ea4xf};hy?uDUXIfXuSIO3nlWiIE1~CeccuCZ|=Tm#JTt>0RwIr{Bf-j#k6e%)M= zZ-8azmYRe^U-M7FYZ3MVaoKpW6|5=Wth|}+dz-mBF%gU3ebDCb*;`4>vqAMrC6C7& zxAROf&oW|3Wlt2Dm}i9bg5RmH8kBN=wyndmO)g`}yeS`$v#u%dXYTKkE{{G%%nLc%wgow@*gP^x_Dwx|wiZpa zo(?dFD(iH!2OZydf@GO+ZQGB)u?c>B4te|x?-RQj!uss|2E6**}|tGB*De_0vN!&puHHpU%ci&^7!*OiuJ6GK+c@m%^nk65_+%^n5aBX7O(H$Z+^ zaQSPApR!iov2SE-zs_1mCMDx*HV>%3Qf%Z(&wBlLGiO7hC!O_bEj#0s%kF%K%8&mIL@vj)>h#ISI}FO+>k9Na+|j@R-yC;eR$V#&;IVl?H2hg z_(nV#u0r-N55`Yn{7h@BSibU=?izP?pfB#`omFo9)LuW$!KTZzn3qkLf=Tpb!-frt z%~8vm=!|{szdxJb+UBy}%&(R;TbRc@fOieJx-t)Y2N*T(?fKTjzRQ>kwoCea9%nv_ zE~Taq+r%Be1AVXg$rtFvFLCFX2jArRz65-EhHv&E*94zFRm&I|X-(*4j6J~bLO;l?_+a3a53gK67V=H}qdhKD(I?8U8~&-ZLjQIeXA&~6^}GZATZ=d^ zQZNPJ=PKkw41U(W%K7NRh2$4q7&Q;UYK8gV%QExCY;KZ6UD;=4kE!pwHj##4Zrc_Vv{~xSbp%bow^B_rM1ByiT=B-tJpk z)Av%V#_WTnUmrQJa_G_M4p)xMVeTs#o8Kew_~oKkY#ZHg>TTz}gXBZTD(l0z1N|kc z>wSL*HQcO^*CzWJ@=*5M+u-xSHQW`-9h?VVr~Y;iIE%vLovc|G^!qkz_8x2aFZlK& z{MBydaZBS}{VQtT;Qq}wp@Fx=cleMI;%&Qr?D*u@0{8X6eG_(aQ@ru*fn_D#4+icM zzd%1NMd88_@e$p{V(j1VvKBt}Hv90)BfJB>+I${9BeeG^otF@de=(alE;OzG1&oG;pjUE!s@-(q{N1~xD4srD$v)^XM~ zh8&7Ia!Bj`e0yd&q+C-}G7B7N{h#ZhoslE-^Ax{#FF0ePavm~()X1F`+gQ!5;Q&w;HAnn>8BjQa{U>36U>d$L3Ae24UCKl~eT9q8MZqsv4j+)}{hn%TAreI__uO>sa$*z7JvSbFp`m`3vGR z#Bmp@7G`fjXbrmh0{mp@hl0YupCo@*rTJp3unma$3|Qp&V#63K#a46qtr1+$w(+fX znG8PLW`jp?8E(W+MGp<;>>JUBTa#mIz26uVy6$P>gY%)^@s?^~jGedT7xjb> zGsMu&nH#$ooV8JUUHiS-p5yZsK8fp=S?sBNjqi0l`wMea{J=d|s$BH6z{D-?FHfbX zjCvTj+Z?(Up0j&^-3xQ3enj_z{r#Be-ho{(3-)LDOu&A+4f`gZ9Rc?1j{$a@Zmj0p z5;SBrf7A2*7SH#a_%51sZSqaMY~SV_Vn)Uu57_%16mvcp$WD!yY_Q^e&~s+2| z0_ryh+RBB0^N^Rl;fa&6J^Bz&E@&=9)`sWOb_FpT#@Y+)XPrYln)lk~@a{5X8oVW$ zESpR<7>Rbw#k8A*{DR(M&|`a*WI*sqb0+CT=e-%cx72>Glm0(M506*>H_<;l6}g^I z*{R}zrSv8FG=u(D(BE?Un+x9VCJ%vZIBRh5h;!0>G?yUxA`85RS6cB7=Jf*O{vF+a z72_ss4iC(NSN5y>ULu|>7{F7We2*tz3n zq3(FeYTiTJ+|hO$*ALDvaoTKCo9yO4tF}P)CjSk;2D0rubS`v*KmTsNP4g8QT8V-Uyf~YK0YA#0j--*TGGzB z*zM3qc2l5a3GH4ONe+wJ68YY5M#=v=dvU+DL9xC2pOj3VD&PA+f7>@2j6Ts`T%*I> zn5y5*Mg3~5J@{pJQWu}oR9+Q#|Gp<@FNilb5uel;ZvXvd zbMUw3y~#80vo&v?Y2JgWQ!P7S*I7l5Fz+SEou$C=ViPbt3Vo9s?7V{i;FVhA&7Fhb zzcE&PZvk?F^?#SKCGT8ZcdzHnduQJ>wXqFFH(YLNV_jHN#s+5jP@*ICW%8mtlYGC= zGmriB>G5q_${GeAb^Ywvglv=4buAreJuMvXU|ugUubj;`|G4}RXmMi**`c$cbJI4+ znpDspA0{`5%~%1AhJ7I~9|f-98FT5YcW$L$VhzIOF66{EWK=2mQ(rIg_Y3?@ET^jy z+gNk&!+UMzmXWQJtMA^=x|Ju_*Z7g(MfQx^YaD$R^|LP3Si8tIc4jg7M{Ow2J3qRdtWA`&b#h9=0(3t*l%R}LOIR1V~YKl@rnJo??2(ZpToN^5NEDu9(C6dH=ID+@CNKm{L3t7JvA3s-nnb}DDRuv zaBwa9G_tPTmJi~!Kei=hOsQxz*XA`NWB!qIR2o$uJ3M`iq>t_17|!?4J!&7W98QNX zG7$c}gqq%yYhP_<4AX8Pdh!xCPHxZRg&^nB5HnRw;j7eZ?m*AIWT{3cw@dlJwqkVN zSkY!aI0!Uf3vC9ecagk_jG@2cB%OAQMNSMt?-yXtD=tZ!1m8P2=&Z+gC63S3WAuzS;y%oCtlevW4u!N=xxLW4r~g>2W%%Ff=#78 z)?WYnS>%HJZ?!q)tJq&_8T)R=!X9ax4=mUWF>HwTrPwIgNuA5V;|lz5Y=r$QsbRXi ztVT5}Cx4xqrEd^VxP|&p?7IW#m{U#-#{2gnwql*qB{)P2ip6~yepDPKJdyv*OLBE6 zw9vhPJ8;-5-Zqi3vHKJ=G4+qe=0D%;9dDyw*?lQCe;`@+xG?DE3?1DM&nDuk&b|hl zU!30=U-X{qq4#@O`$ar+^b>n_huicneT*}+EuhmoUQGf5`*H&>}a_OP&3G&Z$PM@Xoy}9SZ_^tG>+?)0o{b({V z4CF&}JZtcbXg{lKYD@hik!yp-4{UlrSn;hoBd7LDp?vWv zyskLBV#7t~6Y;ESj3qnWGfapdni!&Ns_Xhuv%`3c(M{Rx`Bi*oy>t+IDQA>bvldyr z9yz=Ld7LwV7{M87I-#Gdi>*)zeJPf{gm;$mPEH~1horSX+i4%RLKmogCGD$eKa=(& zXpfFa(OKs^?SsBh5$!vWTfi0X7{sSXzbwIj@3@3#=y>U1>Ha8x56~DR8DkVk|JhjK>Sb{#Pub}-6^f$q7FWpnG7%aNA=~m0=GC#WbBkB&;Y_;Pi zAE*WazLtFQ>LS$}M2AD;;95L>VMKKRIqc!c-KaW(Hte;w;e29SLnp0e#6sJU>5|>D zJK*t_gkQf_xog|6e_*W39y@y8uKm=PXFJ|D=j>HaEc-Qu53?{ z%b~j!z||<6!F$N&`S|&@Cs|JuH*B!DvuDO*#Bkx|$ns!(6ufW{-gv*xpCW7j4|-d& zb};m!dII@|rj7_X*ABmTR3TqyAYW%AU*{lS??%2Nhu@gby$SD?*1T26J~HTRBy@H$ zwCT=UvPS-o&P{E{2kyXD>qIZ^#Shy@&C`DT;V%5)H}HqwBqpXho44`9f1=teWXTlh zc`9@c4Ys)aQrX*H>#3E=807t|v-~{yt4-j6_-R8Ca!dL*I@oG8@%QV4@kg{_&S@gq~lNVA*ZlR8k9Cg0=8AH1bgH)+NWLpC_)cUO z_wfbpw(k(Hv+K+Cn`Bz#nN{{(*Uod-2AJr=;>uHUoXU3&`?B(#y;A5aGRa2_jB`^a za(8rVp$i2#_IXw@Ykf$xN3C7d#VdjOgV3g z6+++QpXag%L$%3y%^kciKkowS^At0QZlDg5HB`>88ks9RRK8Y0+pOk?w^H+f&5^_J zyP&sj^wl=mV9?!8=nfmMwaDVmXZrJ9g6v+)ei_=9)0gBocH1A;_&#{1iZi0CvdWvQ z^7!A6|AqVy^1oJpZ~c2L@VzJNtibN6XZV-NcaVJ`ntqu3>KBq*4X=eiHo+J0!_?k6 z%Q_#2H~18ty77q0dFOqgy(ey*{7=*ciAM8*N9}G$e%+4z+DE%*Squ3w;$P+TUN&v5 zX5Ce&oJx3Nsj1z_3fr-3#b@H2=i@iBiM#lA&}NsBOAXe&C7~(0doPfTUr+st8*l7o z=v8sW$oyo#Z|xz53on}(?kYQmyB#~j8^bNqnITschF;%f*LX&%i1RpSi+p`8{ueSr zc8TVu{MaJJaN$SrmyF@^_X_3~vF(-CguPN{!_~<=_YP5vr>tZn=W6=$6Sd`>d!1Ta zZfY-=BCEC_5AXw&PtVflGw9$mMT=h!oex~D?AQi8Z#+jG9`L;J44=pr?K70#)fr`X z0$1-^>K6E|4Y@RnzYh|#_1dJ3$QjAW?)T^eSXHzC%ZrhLf3f0kF5~lcK9};jhtDm1 zMlHLpzm#_4h*R$7`77Z4H9n#HE!-w99r4CMpWSbNykN!KzWaW30GjIS z@4M{nr)UrTJp!zXtqh~SH4hrfyOH=`A8T{|DZyu(hyV1|muoh@JC?nh%yYs%=wg_! zcc{RZ-&M&zkeR%D`wtht`p|cN_3mU}{&3UgOtl$n+Tfo|m`t08X4k#?a%_Y889s$O znKzn#3Qd~`K5++nw&ON?jc2mP4}jCX@WEbmvh;jg6MC1w&jNQH=;aRdweYXDz%V+D zt~c$1wtntMJFWLw!-DZgkZX!(Mk~=V)yQUS5arm-{`M-#5<53lNxhKhq>cB=MnGSt zMj^NPzu7PM{@UEb>ac$9tXYJ220QPRgFjP;MSJi1{>W+T)?sbM-b>Nf4xLKpYHzX2 zmtTN?OwJMgVeAaI9eP=DTesZ+wL^DC8dKXz9!`PZdh@%o~-+qc%H{)tQ zz-(&nEkAJXh8JF8eBO=yg*AB{nYRa9Aj+C|vQAyt0&imryr=WUx*OHs!fD9dS@yc$ z$-3Xky4Oyzb@n2kVik7YFhuQ*^wv82r5@Bd(|*j%1tJBS`#+p%pW^n)A_P5Qi)qg{O8^-Z$Ld^NUQJ3sU;IrqpUe2eq(Ek+WTfe*6MaDlHf+Ur}477lJIt;wq7 zY@%}7WBYq?5xptMULyw=7B($^pU*qW`41T&nP{K?q`U<(-Q2sNx{t3SJ7(ZxqKogs zMxoXt_#_8Y4(zskcSWEh#dF`69vfrDi@7fWopNdWL|+N<-IBqD^m_?<%baa=CA3k{ zd{GnU9*n`KWL;vHU;|+PO~ux8VXbCfvH`ui^^@K|Kf+~ zz}!JRdL1=E>-j81wpq33hgN~hqFUl9oSjhAWa26{MO*pIcPTKM+=+?B`I`R*Owuh^@*86vusDygp0TDlV@+|!n&OV7=Zs}w=*Op? z4{%^O0~k(X-`){mD9!-GuN@c^GoHq|K7vOvV>5T|Sgkw)JQ42IJJNWv>C)%?s574A zjMv}lxCkE>c@tqhb>^_~2`-mB%3=SJuj?UnjeN3&I!lMMvt;vT|AsmrY~JuqULu2)|SB7?T zR-@Xlan@0B?Df!86YFTh=A4^j;Ix`&Fei!^R)nd z=fXcHiASkD?;ni+@rd=N$$EapOTGo~{av-ntSfcw@u2S6t<4SXpw=Z^%rj`Bh<1Zn zFU3Z%-5Ix_S^KQZ0-_CHvuX)!IPE(7*dX>R5=)2yOP&0PV!fyMldo$(et=+a8VDdO z=8bLJaJlb&pSekfC1cC>?=F6Y*MIqwcx_=VaPt%Yoe3({6RW>D9?rm&7Oc18!BMqL^+4m@b_Tm5I}z{__cLcB{4~}-ibC=^G%|0#ur{I z`Cj1Bv%=@vW56eeZ{uHk=u@^8x^n^c^b==r?;G-B?Lcz}RlMp&o`c6C_P!DOiHm+; zrRF`zego0$VB%3hX!dvGKW>ab$BGvPgNEiB+|d%PxJ^4^X?S%u777~2{P53sVW*3O+>)0Z>O)s4^9MUmwZ8B zcHi^C!;3f@g}x08ddJI?;!~}q_n99!#fLuTr*k-?;K`lm7R?hnNtq{mH$MI*W8m8h z9?_TfYY6VXS>RrKH28ib_SG)E%KJTibkWBeC$CyY%%-gJ3z^r+ zfyIU6PEQ|yr;kOzCjSaJ8p=kdo<3fpkHOH8`T&jtWlaS~g<~~yxz^Li zujyl|cP=mH9LH4rbV^ijsy)1jNCspgcg`B>-S5xv+_sHo}_sD5omG{%e}-%W+a@ymhOx(MvFpNB zRy=}_CZ8?V2;O;b3GLUxx3bxrXoH`E>=_ffl(`O}_8C9Dq@bTQuN~hZySG)+!F#)S z??vA0gvX_`+VIuvafqkVhue3p`c|7NbPw-GvF|m8`5pPwJ|F+XfuUn=QeXA|G5Tu0 zqp#)yoAfgJ>c(5qOWH3e*m-~bfzp~Kerxpl?@;F^eKCWvSf9qfCuL|B^BC-!Qso6u(!@v+6=X8mui_=c^vz2Vm2to^m}Kh}UXx^Dt{GVlaTYtF;| zT?1S?KW$vV8db;p)2~yWR5&hZzJfD61ZOF->rM}xfB!jrm!z$RvR|KkL^zG^aA01< z7?TfK+UJ>|d18wOKH2yE1)t^-qb`j(ErC8>p!P=mIK$z~nGRpx#+(*GORDh}?9n;) z8ZBlm+dXU4{4i_8x|lQ4=Fkp0P`pR6wgPna6zxOQdN_1=7O|wk=!lqnLUV3e5BsW+ z0h)&!FAB5P_~<6~pznU;^ZT0rA9WR+7bLsaxj)HXKjBzodhuiGJtso<(3`yJU#u zi8-H;J|s^J?BGS~>)O0}$0r(f3D~BevZ8h17O$Sn)%|Al6i>R=1$pqTL7lZD$b9IPf@+rQtB+mThG?vM^z$g!uZ-#vY7AnR(vHg zscKGHJcoSp3)ZPde{RFiR$lp<8t&f2m*O1u8sUKZbDwSEEYh#YmcZ|gTn`O+elvYl zxqbCb>Fd%AeTDtCuMR&_Uo+gk`la+$oT)GBV0FGuk8sU)`#Qz+wa}SkzYKj9GDrEB z-nj|Sfh&m1S%KM=eYxilUua8Z=CgLE@~-!+-EGAFqR5VE$d2{keI0AC4!R=m+cK@( zmsFtNLZ*y@INi026|!+%Y7EOs7sL@SiCfb@FV=u23#@X1Gg zHu$YoXY%GV4(FcNpqFc+L-B**H*+>G`a`h0=iq1`mUvQp=Pv|q{{AX(yL_j3`uZ2G z`1;@5@6BM&GZe4f$(b4A1?ODeD|x4gzawMd`^mrqPUYLp{VO@AG0@{=H|LaPYzz1I zIsA@~*B~G7A1m?kIH%XK`#ERwY_HyLNcb_XE@2GWIRD4f$8P%Y*z7H3oAZvTkFR<9 z_zit*cka*j%l~-di%0Gw7u@1&7Jfo*IyV@BNPWU}I5_HM$;~># zI{Kp+TR-fXzOYeoERfo=q zSGAUnvhQg(v9H1KgnPz7q7RQfmw1-lEFSo|r{7-3O227+eBaYYocoy;C1E>I_Q08$ zdBD?$?D+YfKK9Z_S+bATvcLAgi=IBV;e+4q>Ekc-F*q69Xek?T#gXBFH%hT-zv=1Y z1^Q@9`V%c>_`ZH@jh^sKj)gnjdr_yFYwXb%InN;9i{P6h8=%{!xbhx~%%ePW!E&O5cfP^;HIO zsGVG^dw$z8=e>OTmj0G+V4pdrJ+}GH#?Hgu`vdL5_;qef!@$TpIi<{f9Pcu2wfaZL zx3iZi5o4#1f7iQ{d3QYX!;aXCPcg_>Taxd~3z;+GG&V4sy8wVw_PNIX$FA;1jiY(E z<3uK6m*9)YH!??|4yfWYK%A+ojeD)F6R4?)9n4m z+qA#oh&hgZRV85LDJT?bDjcP@|Nc%3{t>oQuzE|+>xHF*vy<0Kbeiz@R z6W?Voc1nPEw-S?g=jEMGru8ZIt`BQ}*!mcH2sF=f+WEdl&B%>5f4Q}K)-}*7y2D>; z*Cp*&%?9r!eE0HzZ8PCdMX)8q%ttz=5IzZ)2Tjd^;g=rTo!(PB`Vr6e@$l^YpAo-B zXUYcK4vxz5dXSawSWX`w|0&7$w;yjGxt6h?T0gS+yO%fKx5KHoXMe~ieNRjBH}p!} z($G>O&jWt&d5PJb9vatxoeiC~fgjnQzr#11s(2Y^tkqjX@G~;UTtuI|H$nSZWrHnl z;`32rMaYn${JnvA>hr`|+KZ_#Ll$%vupX?{*I7UL9jZz z=O)&js0}X`J=wM4zEMtWW=DqFaOWAZ;-`z5=Md)E&iIdQPSXP|uI|VVm8R3E(?^@+ zBsQ(!moA?R{9$ymaD`fk`oSB4;wFo&}$9hh7_A!Nr5+}G^xRo!T(|qP# z@kUGgn6OcW!x%EAy%-x8nb=uCE)AN|bFGDPi#jXNyB^Q~6ncQx6YJsZTS{LKZ~S?L zLy!N*OONID`AoCe51W2|o}tGT;Am@UNjbJ;Il8`T1Tw`r$7m<@-rJmLHpwqU;8o_ese50k{Za)9%vy^$CrgfMP?v^_1;IuPm{soC8 zRzN>14gcVaogVt`a)*Cbf>Zi<6aQ!tdT=N4oOyo0^b>c%W}Mqep*NDj0e zhnt(yPUD3p0RI98~cA4yUpZ1J@G_$p6E3jrZakkNx3}Hbk<4M z=HknsZ|t>m8CUbl!rsZY?HvPiHNI`Yv3Im@WGQeKvmQf6^3EvQGnZ`Jrb@PVY$}~& zHJ|oF;2{$~G@W{+SVe|o$=Z>@N5~+ z9yc;0c}_%B_paMAn3xK8dFv+2y%JN9=oJ~HonI_u*M#r=vxozy1!p+D&p z<4cdYAYlV;RW8Hzahx&CSvq%H=BxpCKGVJPxf_@@AI&Q;?a4lySW|uAu1aFnV|(KpDp#kqWuBLN=Kc%j zzCG!?w3dxX=2J7xU1x1Z=2-D|_+%~g`51g*;^l+bPjc%;?E9>Jb$>z5&TzukdGJhl3p*&qF5w)?h_T~(HNXBV(KZ)Z1TBZ_u)VO4%Xn^b8}P5>tgYAjh5oq~y}f`nn@x<{S$Ew( z+%_Az!n#WyBx>>(@C@He_Kx(R_EG+d8XD>9OgJ&}16-7)$)~UV5cwqfRUeX3%5!t( z&$1h>hilzDNP=#?wp5Z&Lcz0X}}g(jM2G%zIofC-wtf zcFYLIw<7O4u^l1@!Pf`$d5HZg;PiQLdiTB7!yT8C$7G#fL`IG!2SZGg7_+@6b%*2& z-({P~<_M4HKYhtIsRc)}OS-#zZB#7M*df>Qd6O$=*qb`hGX6l@q%=8Gm9$O%ez7BG z0*;;Ql{3z>0@Xy3=V@a;37r8fmWdsn9(w5q&;#=@^Z+b|9`HSKp$Drk_B`*&Pw`y? z{e2Cc46nF83w}yV{eiK@Pq}D5ej06k-$Y*hn@zh3JN;&xZvCrmJKchAkI-jp{SCJ7 za~6Gu$FPpW!38$sUhrppAI7;Bm@@fRi#eN2a2Vf*_UXP)&dvCB-{kjy<6J=CFZ%7J zp*CV}d-2O&-3INVZ}#!N@qc(f-TyJ~jJndi(}AtlIUN57TWSaITGSr7bh8aPvmH6J zY2Irv{p%LYF+;dHTt=b#I3r-HwS+Xy_7~j>Lm+y^0LF z1o|B7*d{%+i}ldXjup5*68S&m)Zb|9^6ypDd<{;CXQ@UF**louRVP@1?ID{`vQ%fKyYh6ZY!zgwVl$%q+rak_-chc4 zF)^q50oW`3SeF6zJ8lffdv4(Myc4UUeJy)_sm(9W!_LVH#u&tOI(bD9l-kjBRuu zJf-uChha~bayE&98+?_YZf&;L@4`^C=8xQq5Cim8a_5b+mQnCr4W7rbK3B0eWvr2@ zU1CoAka;?LT6dIauhEaOHKG&YTlQTSQGYoFJw5mo;n`Or{%NPrwZNQWBeY&v=D5``k1Bct^g{Hq|w7 z#-HL!CjJGi<>-ns=Fn#23Yyh@=`T0`}C_Kxwc z@;`dV?9oMMD0eKMQ@W`0dSo?cIYo)X#K6Hq=y%Z>sq|P2UCV}8RBPwjeon2B?3HrH zjIy565yocltY^?&Pn``&zuxtH8hdA(@i9F0q;;-7^4Jf~vlu!~y4j7z{O%9fOU%*O zOE=l}lHyWcd&$I{9_|%tUX6@EcSX~diR z|B|Uc10Ew6o#)cY5f@(Un-IU7*b%UL+oi~Bw@>W7M2+ncpB;`TS1x|@U$$I)&ar(g z{@L+cJHB%bHmvtN1<_g#YuN$)=3>8WyMl8`gQf8u6{YxW$R~JJ`_{_8hi;XP1TGbO zuxWW%=q2hMq+=8x$bnWm&~G}kAYE_it~Jq-sik54P7)nKe}<0WGtp56V<{Hl%7tGo zbL0Z{h2kz|jiFodSuu1}ieD#MZnE-19rU#g__t3$hu(?~y^Xt-wqwKd`+E3fS5|q+ zQ1%49cn|uQ*wS9w_heI;_~SwQevj-L>=gR&EyPY)Z042N`)l3j%qe1@FaGClaPQT_ z!O0Ek4DU(SgVk=uP{? zry?^KokMId?QSi_#3IGeIdpB}>)^Yd_SLknr+q!`YvGv>(aRS8T67@w`Y~*<0^S?M zd+TzJxyNuBJUUrE*T$*cCZLZ2C>K$M!Jo!&Ydh+E>!P zn)WkkKZ5on)7qc!v=4H|7wy}J(ry$wvY1ahR%2jU%zWD6*KFcDhUbazMESc9?-Zkx z&P6AmhfdDEjWH_I#<^oe!0uS={`_u*$ogIAE z7pB%{Bsy&rbHd*7Rao)ttL?GeGbRE-XDrJf>Qqeua;@$P-U;$f1@GLzI}_60A*X0? zR_PD@op%;mL375n?#3&G78El!dYL||=pzcv_@#%D?egvQyX}Wq&Etk3o8Vt_A0BPo z`|zU3&?efZ$P$O2q;n3v;^-Wg$B-qFlb}`P$=}|$vnuyV_P6Ava!?FQJ1LpcM_My)-dwZzk+?B%11Y>ZN8zV4o)AZ@j$Xq=g^*2cD1$1-pE9{M{1-$lg_O~I0B>}k;W zs;8J{WiQ(U42tu+FhqV7Z`_6q7Yrtj^xHFggu&$t!SF?3D05&?z0G<2t#PI^hUhsL zc{myQy9k<6jz%_u@&~cg6}R?iu`yAUREW3jmBe&+ws}&U*N_~9DPoII(LF~Y$@X2 z%?B>}FeU!<*Ml|>PIq*=>@V@lKEr>>`$faz3GgxaP~~f~`@R+Yq%jQbMZm>Gz8gAs z_iuRkG3@j&9^dDoXWf0~-EY%9)Or>kd{%pIva_HO)@(~Z>z#+tneyEfd(!;?>-w?3 zkTri^pWrxgf3kJ|kLp+>twTa*K(CU2qQytRzv^Zyu%}d$yOA0{>Htb66GPg^UY;dc z!IBq#`<>UGugq?qoX0cnD_N2kELm4by)p4z?SEX-J6Q5O=asbsYkdy7x(8S#3qK94 za}2H6uoeL8OUSN8z^ZsxKHuwrwF+3LR{EO@fHfaJt^?Mx!a#EYunvQ#>VS2s1wVq* zA;_z?p}}XN+h?cN`kM!XmoR>4%9;Ul%HQm@mdxu1KZT(!eLvZJx1aYi-|d)YuD(0% zvpns6p7x(4=-+Doi0=i+DER@dF1W=*CvzQIbnVM`cG&r~Ykp6DZAa?;Cq8J!53NYv zo%?^0a|OQm!DwoJ?CZdxctUq4@((??IG_DAjNiS5I@>MCLt>}xf8qIyeD3D&JS(&X zyuJ(%xU%Utp`?6VqZ~N$Q9jsqE2>G)?%MC^ zZ$16FvTm^URUzwo>QD7<>T5M{>FkS+U6N_(Qog5R@CdT+qSA>0dJUwcX@ww69NNXIRp21GI5>`)jSmWaoBKRZ}f zGLHMH49=djYSvlU-gA8=!rfvAciG_Hoo_nsW*;Z+re(mLcP%C!BkqnDZ~K;~;qAG@ z@n+~2+_<=^!^Wlv$N9R5T592-|Ion>$C8CQkJiL0a0S?^=S zmDc%q@%8g`d_8kGzPcCmx9QBv4aHVMXRADPwj;~X*(w)zw|Q{)lvOiLxSNrRyTu!O z#@!#N?{ICH&w@vPM}MCekA6KJcTZ))-KiU~Ar9z_h}a5n*XY4rosGL2T-+6wmq2$m zk8)ncG-BKB#09-U8_gFQ5(tm+Q%;6On=`_#a)9(z8%)zanN0> z?6vM6rtv9fUmPyqPH}KIIuu(5?v{ISS8n6Z=i+XjhwdInzKQNQ55|kT#Siz4yGuS} z+!cI|xNAwr-Q$^X*U!eCH9Qon19wY3xC_|0d-5xeysP)%ZUgcT`@Q}8RNQ4h)HCj4 z)OC1x_EXbcEB$$R_A{lsDe1V|kO_Bv9l9$F#pZ*%1s>e(2pD-+<>IcgqGVhzhiBJX zHQB`3+snZnwpsgl&LcvfzB{l_mY`$Z z{yMQKOnl0=PfVZp9|s=VPkeT7HCfsG=6%h)Ju z*|RkByo8O?X>61}4jm2*nLAVFdT>e1SvE>P7ne;QI$VWa7r6Jy_OYpSxcHu)>9Fj0 zaCl_<&fxFD%6rD$ zAE@{FEalMe=*e5Xa7ejjyMDm&(d%s7-QeP`_Nt@|XaDdx(OutE z+&$0zl^J|=!()p+W88iFbHrWuvQ(b!WKU~G8D5tv!_OVr^Zd&`HU43BwmH{Yr`SGfCED()7a-81esd2mNArPY&5p>AkUDAI#3-4pIs zdT>Y1`GCilZbFnNid;`t1^L6LiY@y>7Z^ zZ3(s22g_5>ME*PVbS9qL-xrsy*3R9g-EVXDj(iF}pXZ&uzh@!bZ+Kgv8f_JQM~WbTQYDAuftdB4qn;$)p;?R{bU$P?=fgLe8| zO`mP_-SM6sn_ZId7JIlJ=?J@8PTFMFBR!Q^0=`*?CMSCMylo&BS3 z4eZrUo<(Qp2UXLeTHYN zGdz1V!?VT=&wiBQ*$*;2dmzKJx(v_m&+x2XT*-28R> zMS@c>3O;J9$z$hpzOUfuMQ&NJaDIK)?H*Vz0v1=-Ws)UcSiE`cOu6(s(qJh>-e~M1 z##L^+m&tAWy0#;4_6=0)?(z%<_D2CX>-^&oV~M(yMU7}bmg_PhRxF%QaX3s z%h$b}9JXIMZ2G+hSXMLU8fs$JvL3O({3n0$FMBVdsh!w5Cd9cltS@UU9ZUZaWU`S< z#s1K`l20fd%iU{rES6|@%M(QkBJJ)`Wv4+ME@s3yJ58Y26M&97hZ4FHRbGq#K&CpcZ@8!^b zru#8X{+xT7KIwZ_O1(yDE@ywCuk=3~x?bnhXFSiR_5!G$BLWYoc0u(K3z9V&hQ@#P z&{1f7%(2t>pQ$-o2*t_A=}QYP?Q#{m=Xi*Z-CiT>lTKMftSrKjsA1f6)WSzW(D+aQ#m? z%KAThUaAbpKf?O!P82Wyi@!w!>(57@K&$IUAot*P*+S&~2NYpHj+IS{+}Jg5$~@6X z_Z+LHGi&R&I{7qbReaL@bS`pt>B*cu0o~^!Cpw9lb*omvqkopOMy@U-58C3%vWFtH0r3d=Ro%)sfPLY)MZfPV82HVso8rCKdGKl_0zfN!=>m$ z!J-;|!J~Uo(Ju+xdbWpVGWjpZ1J5sx0?)7DMZvNcIHVu*jegAQYC}KT`|>#-1N+p; zM;O`CwGB%p>sI)QUj*_>Z)(zyo;JI&Kf!|&!Z#VGq3WIAtA=Jb!2{XE%5z- zzmFtGhNjWc+%8*=+{Jr|`l~ekVdO_4^5g6immm2ay2xlFd1Uv|Y^1B0=ZWZ#y$^hP z`7xBSk5_;EJ8OKb`eO`s&WY#`A8;LM-8Y__DnH`;d)6N>!9OYT1KXei`JtLo-Cu2N zsNl&V$&eWG#H~k(7W+cij**=euzhyU4vL{4RZprq*6<)`+O6}6TA?6qQ((@uZTnXp z*!}@cst(Kj=hA0B=VN*6QNzF?_!hrG{rLgLVob?4-R%(pcGX=zhRw5{daVucWDJ{M z`#3tW=eieUJFsSlG?xzaug=j(*pB7C(CNS#gBKT9at;%7Sctp~!?QXgdo23}y0|0M z%!7D@vEQ6|G&%El)tQG2|GrH81#GK<@p$#KifcTw|xP4 ziyhE$Cv?2`Zt7RzOXGLc_6x<}hmI=fIE^=}Fa4x3a(D1q`6~~OhNhw4#kJ5h{Ap;K z=b~@X^tC6^!zw- z|3v8dyTElMdOjzOp6_(lJ(ItonqTjElA`7AZojQ3s3&iShHaX5{bugHg#K)qncSbC z{RlTX<9O?}Gs?@qA}{}V;_|Y6$!AAjgHMpYb^^nvrLVvV(AU?GgTDHoAbtJsJ4dFk z#l@-e@=tqvwnvUgU$w;^`f_48Ypu|*9_Z^iXB?Nl-YK{Ddu}x6c@0d&Oq8QBKGRNO zB`+rZrBji~+BacjE%zWx4!5uMh1!wD3EKwQn=ko_kFrGa6}c+;8pCD?Ur%57GV-_f zV+Y8WlAPXU1#4c!26zekHe6j zlZSig9Dl6A^~cr_$5#F(3OtTKmN-ACCx2`vYnphk2Y+m627l}!>`51%To28gJ&aE6 zd7|GVz*BAf!z^+$wtrZW0#CN_4}XSUIu0Mq*bfiY_uzv8i+r#cKG={{A1r|@`C#`l zra!1SC3kHA(>(q*vaQ^<2h(kZ7Y3)&{^<@)-o|^bt*g%?>R0GwHS}_#_Tsw5pPl?` zJ8)w9wH_Egt^C`;*vG41`>@`}>W{sKd_58U`g7nql71bRMgu?YJW=^a+&iIPlk#uh zC7Jc>d}kb2{`D9yq?Ty)uTPx5PW}w(>#HY7UvJcZdiolE0`&DCb;nL$m!BYgWgmsU zep!?%V?ORULHfeKO43)-e!H;;`ieT^cJA^{=+YJ^k2)-;*r02+vq?0y&m*mPw_|>p79=$@3$^u0Q@L{&-W;A4fSK=8qd+8~ZI`6V~=IHep9G{z+Mn&x>?3ta9$M(xpKW3viY?Kn_Gc5* zZ#i0Q=`U|Nwu0!1ScA@io<9pLTpJTTlMr5SV zpN-5c|ArqAect2H=e*C4KA&2cl#`#9J`Ye+@M-CDIqk3WCHIlvk0v%4`C8upa2k;H9U0^ACV4jlNo(d~<{H z&7;%kYjN8N+Gn+S9{Nh!XMejeGkwi=#_`fukM`Mhj{dvhbJ2f>2Hsncq(k&yVh=xh ztR*eJ({Qx-&PZ^cc<=b_GXu{nz~j;+`Y&+?K%!q{o)d36Dm=Z90?%>kKSR6ML%Z!m zwJ!Lx$5wCF&{KRTMvX%T{g*GR?q=yQkDzn4C*`Tw|k z7w{;nYw`P?%uFs^1PWeJ69_1Xr(jhu#Ws_KtJtF!T5D-bAb?=BO0k91O9Ba?#vU_b z%Q@OM0VJAHD@8cgWB&z=f{LvOww~T(lF5xrD_FdYsPq4={l0r<&oGml_G`|t*hm|+B=Hf6jkFx_ z0!J~(Z?U|j>)8?^bw1fb*UTsYWx7#ZpO>h9G+qh zS`H zMxG1Wawu86jLm)Gsj>Qlt|QcWJ1VhCIU82KMfgZ!d>0T~U0-bZOW>7NR(kcLe3o-> z&KT}dZW(NaZ#xoMSL8yTaK31m<=rE7(<Jhl$wdhRUA1gFI-3LT9#?*j%!z7DtMN9tSd9Pr{H=kyq21%jnt`;y6h{7 z<*wqld~ndgotMYmF27mZzZ6)ivzs%lu#z$4ZbjHHT#Z`?ANE~j9{Y@=^X#v{XCMDH&6qV`CBJH@LqAdzQ`dX_ zz9T1fy!dm;uif#bl=-z^bzr&*Ug}AH?aK#j9{!y3YZWcu0KW7-Vp5roe0Ji|UCQ*I zk?)~(es|74X_~o$Idm%1jX9Vy-Hb;sW9**#J1^YPeSc>SJk}e3=Q`%qnZFZ0J4Vw& z$I~6$C;HRJsL`39Ht_J`2C3KC=Z#-{l;2RBX8DEhn@U{N0C9zfS`~ThRVf)mebUR1 zBkxQ(Au>kVyV%nj0Dp%{U152*`9?lzyF=A1ALhTBdr_L_6of-11>s?m!z23(?Ef_1 z$g|P{Rli*BId7^&&a7dNsM-q8p|0#r$YPQ8edv1APT z_o2qg^|6Xjw3ic2qCuA=+o0`TRTW&XI_*e2@{4$>07gW!Ayn4Rxsu=07A7zibk-tm$`$@)aCJ%6Xu_v!T^AQ*hXDoo)WT z{$ld5cXXXREUK zbi1&pGpI>WzP8;ee{i>jj%96950`tvw@Pi^EWb5N>hdnGk+bu@vR&Y?jj?uJ$vxs9 zyO*p`I^VaYp7{$drAEPH7h^|ar__x?Z;un5O)b}tBD0#+zNfP5YpSfT`d|7nc0KUg zFpm4+4OrCyqh|8r#D@?Z>F;xamGrOft4x5?hB}wRm5meMmh-^}wX?^Epyx_xJF-V` zc6JPBMd|+29h^1MrU@JBL@3K&UT!s<$n9f)me`+Czgo`qMy3LrjV^z1sw*78b`P#e zdoDT7bnW5fI1IgxzWyR}qSkEWE#_4|v>~(ypN8kH`?<5n!JF7{f;+)m6?kiTog97n z+;8%5`GfO?hgqNC%?-T^-tJv#@UzyFNi zedj%{xy(o2A@GN4wfl z))KL~WbJc@V0Y8Uyd7yaEvoT+Tkhb!;F-L~Z}W+XR-K8gMTS2u zX>EH<#wwMu`p4Q)CvO(*DuyuDt>kG8vBz4R##qxV#oIPaym?i!R`6Uv4Sw}3$DJp* zYz2pH;IbW@M!?(4_#hqNt%F)8kE{9`8Py%&Y|Uxb)>SuK;nlac~=iuAni(pGq9688X5 z^BP#36F+RD5IU;JIb-;p^o$9~2f)BNv_ z`E=b5YGt;T;9vBy$J|dJYRtNHV@%(ccG?E1g)8fq^EdY{=^J8->$?)%y_8H8Lw$o`NHBCa` zz46bHtv~1Qu5{M_|9_8{_fjLL?fuBs$TOa@$fd6EiH){iX?q7g;kS+te5rNwzZ~8C z0eU`BH-j6I@e7fe!XsigiVU2dY0LTsWNss}z64nxVr=2hAo#OoVwV2~@F+4-@L0rs zMQsz1E9m+9m+e?w-HX(|cuo9BmpV@@V@x8)v8rN>|1ZlOUHw{2S2K^x>t3|&nGHGV zD(1JG+@19=V~1V}{XH|Oter7BCKiN8BhN27c*p+qMHekkACgtQI}=&a&+bddejAAq z{2D*;1>%Pb=|^JEUDJ+Tum60>Uqg?G?L3t4>#M9V=LFsmdnJAOh0ELEtJU0TATVj4 z0}gJaX1!q_New5Vf9lV^(N;oS7W=5}MvEHr>3eozAML_EY9s#A2JZ?E9>b?6)p&#JF-;7HEMhI^m^a3QeVa3V6RZM#(_@bt)C($u?Nt>Jl30z4}mcv^BNu@x8r z9NMUF|5_4Q2p^uWp4%|^yW~wdF!+n$VKeim?zX@|!2o%-3mBk_ZCi0B^vJW0*`3hi z^$tDGPC}2!PJu;z5?DlSMaHV%?7-zo;Ih@Gui?N%;6aR6*@A@{9$ORO@uU_018dw+ z?6qUcV7<@@dMLY#%jM1zMWb4+!T0n zD!e-FEbBRKqhqsOUe$5Oe)pmg9|pk19rW>d5}ZUbfHn6Ki%lJ~qcZ&y1jgd;_2tfI zWLYAQ%kxH|Q|h0c*l546@RXYgoaB)>v9ldLRRWb0v&JGO*K8)Euv>>cu zWA-C3*$XVj^S;n+;@U(nUm|qs+$VCBcEUqKvnv11q2EL5xh>DyWiHDT z!%I7nXSX`?Y^h17jy%IAOexREDN^tx$7sWy@Ixo^?CTn?cP7B~b_cF?_Pu;Z$sOoS zo*num#={K;4C?tVwk&bjt&vBtQMl_ph@GqGq0!^tFdCZTKE9?$h&k30ONV|0_OGqt zJzzfn=j^*YO5LG4Y-(s^4!OT+$ZUOQsJfF>>>A(?tsJf5-1T{SO^>QIsk?s_t^C|s zQ_z;t&$A|}11Ir%m7hBUfAUfp%l2bd4)j(Rz(>$Y^#0&YNABETv1sInd!P}C=ZLIt zQ2n?9yHe22Mqso4+5|elM~Kov2s$|22_3XMbZ|Hc9pHzgq=Rc6I=C7-n3a+a*qgc1 zzxPLu+?f?yuY%dtn!oIOq`%(<9V{~F;6j5AMhG3?f8}B$N4WnXvJ6@%AJ7nb4FCCQ z{7QaXrR<}aPpN##C#*2{+`rNCwCOwhY~LAQPxMBKde65-VrI&&!k#J--;!~H_IAQNzZ!Wze-@k)so2oad9!Orq>b z{99zvX$sD^ocTRtN*j?yud461F5PWBf6;ip(|Go` z2lJo!>Y%^SE(2ca3k(O~QxEoqAOGm&^NGhQy(->%?|%|+t;~pvx0?4Ot@;UY#%?~o z(G#~PlMcMo3p{7sFW?dWQ`n+N~>sN^Kw zwk#H-Cl@4o)^(+G*0p&Zw1j*LegG{NO}6hza{6k6M&-R7Sf-b4c7N0**2BS|BoNSi^w5Wf0OyNQ%7Ib5#9(Mp!v31 zD=fG{o|c*GC!V^kHO2bJo#OSM`#G-vsl@f`TKLBLz1JG_Ku!Dwa<9zTczSqgWomdF z`O&GRhySI&&x;-wC&EM5#y8-h=z*H}COwS&aq9Iyd5YKnpP%FUM<=eITKI|l;GI>F z=hb(XJmB0}G8B41-l{tHhMaimw$yN0c#7fj_0JJ5q1)r-M2oI-Z_tJ4SYq)=iY$bOS4nM?&TkzT6wgU{yr~x zG&vD=)VWvpT*bjo-Se`y%J+8C zuoJy5wnCzAU+_7??){|+JWGxIlVRuF>tRhuey<0x`!LtxSzkdJa?gexb%__G13T*J zw?TL6jwbA)T~oND3A=z8S@e!3ZO2^H1K3I5ZP-Su<&Gw&zjk1#?`YC}p56oasXLnJ zOWn~#U)VazHc~l-$~Lm^XwtS(J@8ZWz&=trg~+WIY6Yu1njHFT$3BXbJNJ9+xFGrc z9>DN14MWSgqt2|WZ}2YnaHq7b{(SqX<=vO)@AKl_Zzj^8uB#u%yUzU{71_z}_W*X^ z(y$}O5S4q&oO@-cb#KbORhJ}%-CnWF?=xUG&p3mR9j(sN_rNY!{rxB&cF{BR$@=TA zU2ew}T>gwi*ey%OyXroN%~clqb_P1*8bfCkaVG(=%hIqrYRJ8%4)3{nhbX8K8MX!J2)p_1nj07uyfn6`=8;C+*@SO9kq`Z$lZwK zYsb-@+=Y<>c1M=Rcy_LFZheK+?Bk3|Q}_Krg^T~CKZ9paDcvnjgdH`9PSzP2V&`qH z@=>dDBCyLhVAn|Q19VsFz^;{8o9Ku7WOrczuU2HR=*ISEM7DSHE(~{iobP@nxrEAh zCuSvjUG|&Fncyyr@-1zAz9e^HjHQOv7)#YDY~47;z6;}Z#@>%!Ce|luP7Lo z8!&E?oK)wWe-vkpta~^A(FyGnh^dXGX6_j0E)4ozPoK^7Eq4N{{hc`fTgMMw{{9ZU z%|5g*P7Z{97sl)O;`=T75?wQpyD$bdMAoWUSxuGiyy*Ru?bWRD0V~|WZ%z6x47bOR z&+pFwA1%9qcO&afb{7V7mV1!|9>D{??%jpK+NTn;oI>oMxaH<#cVXQ1w#0do+=Wq@ z5zSrF`NnZ~VMKpVxC_I1UPRtqom0aDoTwTeUl=H3WdyEF@>^eiOKhK>qzn}l;qjlNuK>V$+I_;JbRsI!V5ZIJO7V%9PRQG3HjPzlpOO| zzP98tPtJfA;Fq4x5mZEV_=qp)G?)JZb zv`*_;$<0&sF5tn$dn%^0PnXrtzN13!s*rms0>+$HF{jRCX;0?#LW()%5Vw^%4C~^) z3a$Gym!Q8A))Kw10vILUS7GvA;(ZmrU`~nmReb!m+*je;E8+V}{Jj$Nul7sC?<9{c zob#!gOMM-6|FBngNp2sXLE5F0<9-2nm-9;LL-}Nl+U~#4fbqqr5bujqz&M@rO6;|% z^GY%YIkP0bf{E)srx4duQ_LfJZizXZbZ!a#W1m|pclM85{-50D;2Pbbd<@{)ft}pJ zJ+S)RlHgZzL}ia816eEij%hwQKa~*}$vieqE69_(pIZ6v1t$yCnE)&BZQ6Ok%_`24 zdBKh7x$W!~Tx8(pr6n<*OlF%jGatz(mpOEGem0G{=zMZ7_;`stSUqk!_z)dyj$O~# zn)j0FSaWPMk9-8{nneDG?1$;|W1+vY zt|6B{2OhI?&h7IpiF)cgr=6^Su21sp>pU}M{)YXw%&%fE*)sm=^A(Bbv5WeGYh=Il zA^(Mzx_dv1mhqQ#MNbpDPfy?1@a<;396g7DUD1^>2a~QYf_4fWy1It3FK}pSAvKj^ zyqtb`rPy-0HZRLLGcC6tzLkB)q3BNNL7zF3a}~|BO}w9F4t7x}8+u?aW<4g&XO-}J z5V}mfpJg=jGS4R@(#jkC<7r@+Lj#HD6H?Y&%z<~#wP~O?`2Y27UC0vy_Fc)7fBrQl zPXvwvTahaZ9JwMgMeYa^xgux5!2f3P^J|!cAy=a3@s*uu)C2(5HL39bI%D?$|LkkK z{O9xl{|AtjDe$k(?WDqg1M^D2zdB#Y+SGac>k{z4exEG^lHtG8^Ugccjq}d2dR*_F zpZq-j8fP5yymO*_5xa6DzV!O}y`nFL+q2{8Ywxhzv(sL!)Ow1^=6fL&@ECo3JBW`4kz` z+6VgtJH^Y{_aJ_UvKg?SWMAE}7ZmOv2JZUo8@9^HxW{I8Y!$^rIcBDTNQDgVQm=Q=t?_UBKsPn1p(`$XA?N~U2RpCuk+*e6jLmS~^+lJS(RD6-G1qbuTM#gqhG{_G7~R@9IuVwelj`p=!p z3u=MH>chn9cN{z~xxBc;8LLZqLCkmkZM~Nl{kx)>m_F)~X09@5rYHL7$oD_HycomS zJ=I4)x~2Q_Vj^}$Z{&qn(^zG48hfg5yuA2iZ)$y%R9;l|US9kMa6eV@V$Yv@CNFO7 z3g_LB7r$c6p2~~x&Apcw4>De7^5V-0xV+E7Wh!~GI7z*ediD_I{s0w6;8S7dfD`JOTf!UhkoNCm*A?_TU*^;ogw3UHJkt4csUCn91zH z4{q*44j5ynvIoaAW>4k&3UJspNa7_TUb)USP}~Trf1b zJ@~;NY`QV+!Ibqse4LLZ2dY>1>v8Tj{(e1YZouTL%&i4Iu&TI+^*@}sf1dR}&_6X2 z+qeO`GvwW7!~d<3y<}Z$@DZsUK+L!^ALwUq^;q7iIb31T{!ZD?j_r+}GzXLRO?kJB zv3nrz$Z>G_U%09J@@@^fEt$O2a7h(kxsG`y$h#V;cQ{va>hW>HnejX_-NAj2<14;? zN&Tf?oRgeC#wOv9&iRjfG0(J4y6r=B%5`#{#~XK^r|Efop=T{sKS}T;{>_La z^^?*?mggGvlN!mR*-mZ@@5}k63ROR8g8yUg^k{w-nen_Y{D$O7==w?9dDh4|L1Kui ze$s5-p94>pSjp=r@!NcL=09OPn!pr603?(kk{k zT2()>`bpEL+4Ykergp!6(r9E=+&n5esh=cssYslQQ$I<~CBA-=;6vB#@Cbf_cI;*Ul-*jy!&K6Hl<1(h; zYn7UJY)o}tkTKPH!MHJf4^~<3>J~MoZ_7sZ;$_Tx^VC>*o@uT;_N_Sw$oWJ*@qJWI zSCIAF=gZyx57E&(T%1#-%?fG`MIv8lkh83j$PoT}`A@B(e0ZRQT)SE;T=QdSc7iLu z&QPV-$**$iPDKB9YDYPLhbq~V8O=PNrp^%gW0A<9hEO^1=6UOyczDZsJvrB|;9cp! zdyPr!4!l{DoD&szt22_9aE_h4gNAW2cyq?GtYjqTZ$oZ--9;Y%|H!&WSmTRzogwlF zn`d)h5q=(YkynyyO-TGr;=8h+@0L14Puq2dUZ(Dg)Y?(?V5l>+UTU2{Q>^*_E zS%dt({w(N-=ks#hcI^}9Ah|F9$vmu~&>z3eXTNIFIo7r}VL~7_Dt8AEA?!4A&BVt`YJgW5|%hX=W1mAZ1O z-c>7bdUTwO?G1cO#-^T7h0xDy)Zvl(R0(q!2L7|1{0OP3)Y;fA)RKrB=cubJmoa1= zW<9I!u49s}XT`pnT1UT_%x_~IFZo<$s=gZE;nA%x)HyY#G<{)v?Vv`F@QbWl);yH? zm^FcfZca!|AU@|6JN42WzSzh6KF-evd0&1np5@9DJgBx6CJ&Ww*-hJGYA?ud^V!4k zaQ2xqW8td5MYdkfJAy~s&(d=0|7(ADE>{IcVq>g;zw|lhyVZC5`5ngd<;L?L8qa^g zcaawxrOw4QA}ji++GyA(@Go+uB+Y*daL$n$7c=1%sc`|k>xqr*B>$<7ILU@-cK%Z{ zIV*zq`KoTgME^Sr@jYm}VVaT=vAPAEGxva>4V*JaPX&HL{>b`CNorhN179+x)P~VD zF3|naex%058^nO`;{DgnbLU#`Ft*%RtKl@kSodYd_e<1w8)jcLo{uq}k20Q*@ICBOSs+txJCk}u$FyQ*K@XxA^c_bg72?pd2>$6LvDJYE!E%U5uxa?fX4cJ6tR zFD$j(+uV0;Y2$Mw?*!){n?eQlIqwO;4L?lhoXa`y9nQJ&<{RVug1tJfqGAtnPGAgj zbS(d|3)FcM`cir3^w)N&k>{2z@-~|1RwJ>KrGoEl+DXnF?@MiT_K~k>nt)9^(c*of zFOTH)*HrBo;rxgSG$g3}R$sp|vrrAz2w$c2WI<&htjJcDF;=J=+Mn{1!#=7jNkuurCFf9nD#W)A(Q+9wmb({@tgKH1fbAKfRb zNPaiK)2BOlue9-=NOOnX@iaHlp@+K+dgzqitn-X`UM!yO*W;4u#ra16 zv3N~civIg1=|5$>khs`9=vv+XdAkh<(QEi#-Mar%)6~NYyP#?MbmE0w()3&8pD3C} zUUes4sOM0|9E^D3Niw?Gn1e~zX1wq>jNOBHp`u}R|EEL8I=8eZ@xn&rV2XI5f>ovD zn%r3{CoHC4oA8}QKT0iZ&4c(x zmuKH;HDurEYRD#r;35Vrbqt&Fm!v&)RaN{Z=Pb$hyug1yb!bJ0gi7#vB(F%vZ*JsS zsS&>!impR9hR|)gR$Vr!>}0|rS9AueDE1Ex2%RxKJ(&vEA*5y z=27JM;8V@HmD}-$e1VbegG>CO0iPxx-zSSt9rI{myh^#hAmrRFP?YBXGx{rtjZb`{ ztX%wEd=-gR{0TV~!5)Z|d+}Et`!m<&|Gl&)XCj0>uo3$+B6bAv3E_3yUv>Fkq>Yc9 zU8#2^a=$qZe^uJ2+5YO0A3&RoF&A8G8ki3a6jS>#9X!lqKTi9r2gxrGf3*esa|HD> zPll(ijjip1uKw0_Idyy6)?BOT$gXo#!}nA+<-y%Hy_+`WB*%`>IdodzPsevO@AI%@ z?*ga0i4nL0e=7NC-A1copPN{QekQaiHj-`A*mrb@&9aAa4>{wAojV8G4N{+2V)~!O zo_$gHJ=c0eYTnA4TcJT^&t~-8p8ev2&Sm9iv1hjft8Uw~)>l&6vpWa>zhlo%kUW`Q z*t1^nlPH7Vbj9dXXk(H?lZp21y~JJ2d|dG*R8DTOFK<&{YrL{Ksprrt@c}+1H+Lj4 zCCSZgl~44zd4@>q#I5tY(98G>-POy-$T?7Y85!dO$>9d9Y&>7LZ+(`VnA>>$e zJju(QL;q<$881EX8^)W>-wNI*xciI$0_&HYJZO~yw&pjATi2M2b>#?6^K03dqskO?N5mPBKsXJ(6rEYtBSq4 z0^=3@J>+|P15JamP1vswVNpI+vQAb0PK@;$1ah3e#9;*!5#_Gwo*Q6A9B0* zlu&=Tgu6OQtTgJ6TH$%@EvP=kzM-Eg>=b!Fx@RJF4(X$W&-gxk(LO|fZ*cZ6vZ!HP zKn%W#xk1avny5cJjJ+C(H%hw|Y1BDnoC0)uQ@Jm1h1hV#qQ`t&ytKjgSkiCt#`MpY%c>7C;Y){5#N!(TM27ikEEuP1J{@ z(}jP}j`D91UMkGMK7}s|&hkCiJn++X%|g@X`ko8IM{o1D?7uEB=lhbzm#(FbbbqIY6Y-@f)V~rs?m>J>(ektNVmd#m z9-0u<`J21aL&wSe&^o^x@g+6>I>z5gjVKp;^W^QEtoM!aO}(EizVv3o_}z^!Y2G_m zcu#Bre7sKLOHqB07+>1T_|f>1H8N=)_L&;*mC5zk%t$yY7lr0GzG&0@T?Rc&C)WJw zfb*mDF0@_%J&b~`6-`yz{)LWNKIrsu)X{s1{!G&RoE&VZUYsA*_S~>jNLSx8@YedQRJv`HbD&{2Wb3_Z8#Y!tX*$I>saOj^=}j>>vlE8T;WHK<5eh zIf~yZC7y$i9T(5x@3WbgjqBuewDZ$=IvV8AK(hSCr1&2K{)zR8juxA?yXVI>?AOmd zb#moxa*MQF=?VTTm_u)5i;4g3jNMcG_vr!tUq@f|2LJ!XygI{wK?45$jkX*~hX2JE ziaa?hDo>hbK%c~-oLHWccaxIjWj!G@NQ@zSR4ld^BHkeH%ROge=j}M#s9TnpTxsVJGvV& zLW$)R5%ZEb-1PJ8JRph1-FvPzYk>#f`?t64f3%o7-sCvk%UxItGJSbfIo?1%cRw_o z!{7aUd5>D2fQS1P%IQPrD2eSYd%7h~u9U=>Px*YwZy{cor{+uS_N4ieQxP{`ax0?q zJ=c1Uxv6_-RK8b*neS!!e}_&ZuVfsM|8`=n`giAkiz^gg+xJ^suD;tb*e|K?b_{l` z@%&=r`Dpp>^mBoFZugUGw9hfxpJ%i`$7p}1(SC^0eh}YN`I|SrV9Q3+-+YeTna|>H z&S$)2{$@Qj2YcXeZkE{CALhjAu^J;bwprC36ng@CmVAKj<`ZD6?3H|iIp6DnziACl z>2JbW+#SJBQd1gKaRJVT6WrWk?3zuPqN=Hv?cL% z`QNDzMy%`r{3~Z+v6U2lzX^Wz9zQuj$GMTMIn2t(4RUV|;xUR*yfv z3;Ht0@5%>TnlOIU2XkVC8BQH1RjU{O*si1H+oI|5`R^w2!N_spEbJBfEG#j(8Xc2M z^ucB_e$)r^CEw%!@BZ3PirUU`bnxzpcseL_=%6Br|8%U#&NmueA~w{SQ5#BXxJpc3 z?gg(e_T??)E=ffr)T*v$Z>Wu0)j}t_?%KlQlk2W&{QTj2G5RQ!dn3pJ!Da~0qh4Ym z`9vXXsCoQt!i9USlGfYn3w)yQ>3VzU%=Eg{b=UMfo@5@{o_;~@!*K4ei1ycmc^o9~ zAo`v$k0`x3bv5GX1^uk+u4#H1EA+zr+tB^WXJ-x_)WX~;$zQulHh|{C*8$I3G=9*Z}1B>3a3yPzwHBC zu4;a%pPU*$X{QiB`6=LH;>WBp5HRF=@VlpuU(QQ0kDlVEBpH4Z>J)ayFDJ+gQT#&P zZj)bDUy&LgzXT3izkOEu^;gDECO1rc>_T>!btAR>y7Ls``=qWxTvy<=(HNv~g zFYA~`J+Yc8+_|gp@&NipY|QL<{nB<(YW$2ph4@*T0xsRb&ydf6pZV+oH={@FJvl3I zUEDmpc3oNYL{IUvE(w0*&J?pYhpBfH?UAv}LvobZ%iLU5F+$anY$e}E`HuL3p^(e} zU|;-4^p@zcdg888Tymev6k_9T+^1slT3eDDt(wLgzjNw%&5DDeQ=7M&w!(Vmk-}D} zF>RJRoO6FFPsp)Z5^?!9c@Xft{T_R)szz|naJgB0oe{}!$sH~xF3tHQ;_|o5L*fkJ zl3c!X{NlT};6EHvPZ-HE`rN?r&dmz)ZHaVKxEbde0aw% zAZ9kqf31N_{DRGfUr?iJ1VA&Ak0EpJ$}ji{bC3E34i0sV98+H2Wa}?A{x}1N>y7#V z`tAD+^}Fb#}f6%xpwziTZzCE0$5hD&9N{jTpauY~=MI6m|y@W?kD+$Y=b7_IU*WBERl@Y5ra zv<5G7eG}&bTFDz|VILwY8#Y@0hAc-mB=E;XXB?A1Mh}u$z&Wv40D3}V0rl*swh<55 zgpO}jvF7Z6#Quj78_Ab@D^9a!?Or~2xw7Nf({JZIWjmi4=!^DGBik~_-&;cs@FwyJ zGSC_AQr8Tf@v0%S8^0Z+Lu~EMMy$ZrpU{BB3QRqhDpp_t^O)YX^?wt4nyvWSZRn5; zVg_r-8J4+ZvR5ec$#!KNK4i?NmicI!+<*=-Vg@~)&)>+6=xjc6hrGUGcu+JhN(9f85j#^e=EA#sae|JWwvp>Jme zEqTFxxj&12<8|y8KH>}iO>!9YzHu$jHX8fJ>{mC>V6T|CtDMDG=j}OX8=1|ssn{el zplR&oq-R5TPn`|n-PoR>vj<1Ndhb*1SLVu@3C>j&x&0N`C2raGWPWenE9x=JgRRl0#qRFI!94JC6ST8|0{MYhgR&z$|xC~kWC zw?1QT<5tFN{5Y~z-)F9Dd*-8Hw9)N9ge=by7~KJ$6}iJee~jlE%z}``GL%xU95V*4&aQKn| zhsz8&T%x`^=l_l8WB9JLDB-(1Iy;2!k^>-;Rh@r7K>kzH-|mnhJoBSg6&-2 z&+_m7_}aA@9-d3C5c|oyKc2RhcvIdS$rZv6NbkpY&I=r*Mo2wv(+BeR5YGLnzo)HD zAHv^fk@G?AkRZI`Jxgj8c=zn${J^eE--Ej>tGXRJ>tO8%S^GhJ23f!4?_|!k*A}q) z?3vu(dgBo9-So+Q_f2u7vsUiaBDbWE*B9>VqFxK@XrPwN)t_9u_BGbAoproIJ(a6J znYQ*d=D(f!A0+?!$$r)wb6ounf9==zKm01|IO6WN=l)O1*WT~-J$OI;mh)RNa$J0? zL)p+WeozxI>`=Vi54*fCXDa#!`eLI5krU$g3LIO{gm&>Y)LM`k2gN4O_JwEk=UxG; z@8J#M$gCl(shQYeGxj+0YOk(a6~xa;=Qp8Uu^XDXXK4?)9?G}IrxJX{pUZP%AIzl* zp8mPy%%Lk){SWosrr*2OcbmWOknb6Go8^43V{cd5|4_BLTfO@O)y97JR`uL&f3x~- zKVPiA+kGzNyXFbugBPB&`5@JK#Cy*a`j6eu&;&iqIoCRN7I5!&&)fxElAU9z zQn0blv5Xk#%Nsd_oVLF$-~Xu36Bv1xox8RQnxA8NOIMJCTyidTdpNVQ37Xpk&5b0d zbqdeqjB_*aYloLQpt(Vc-yGdgq+uNYcL}t(i~on|@2XF#@7rYcslM0B+A{+B%=B7* zkK4NJ0Q@im8fqX1DnP#7RexW;e|kYyAV8kobXQj3B52}()u(hLcETZdpNsf@xbTz6 ztlPRVzU0p|L6`0Db2Gfs0iF6(y@`qNbtda^1&Y5x>;ig}x*43=30ET5O?slTy%)ok{0r%-Ey&R7xgqU_Kc#Q#wIJXI@@w99y|c=39miQ zdL?Hhi|-Ardo=4FRgf8wcySiI*TDKmxiSNpte?4FB=>K+;bF-;tb_*cf&cGC4jh6< z54-#9DTOaf;mcB&m$5Pr5654pUeuo9{WJHBqRljT=_-ep7EzOL5iuF;pfGZ5NQXM} z)He_&Cn5w~4lvdW@SyxAwv+OGqd0cKN9loAfq}qqGoL|nyml!%%Lx2d{&x7QL4CJ* zpWVASMV9gJv*dFfW$a}6Tnl@U&sFEthxzt5 zV?HNwx@heI6=x=&qnGE0umN5E!?V!k(3m>UI0stotUiqIqLleu|L}ai`CP&`$?~~M zB-aL7X+l;vtJ*hS=ghRu{Y=!`_VY`?Pq9-U1~{tvFxJ1~ec9U_8Zq;^v_JdG7f$wP zug&mpF%%9dr*yx2n7@MVFJI zOPTjE{M~)qgMk#jFt=Jk%k(tZ5r}GY9_(-`g{Etds_@8Th;diQmzhymS$N6mECz1B% zz8g<_zkb%1PbG#-GUd^|$m_&<8d4`CREiIOs}*itip{hP{d5PqsoV-5ti+C5V}%d1 z&La<4;eV{P!vBO8-+9CeA17XI!sd6-j>s;xZ&{J&m-C|Uk&k`c?T%~rB?pErk03W@ zq7QY=DEd3-cH-ZS4j*RldtY?r0NY-dK3mb9>V7=YpV)SCPxGO%%n^I!$OPs%kvU>R zzf)w}_xC$6F=e)#acxCcsxw&V%MR>7b!X~W@PJ)-WCD1Y2p;mmLy<51bRs;R_|$0X zVK4LCG<}@jny70_NV)9e^G8Xd{+js)>CN_Y?J|Bh8>+u5~gRYxcm)rr_#=P67 zN*qD$0TVwSr}lu`LN0$BYm@VWa@VTB?H9o7cu_o!e#gOs)aO*V*zr|$-+L>#XuSrU zRHpflvqlqlzjxk|oc4NZb+_?ua13)oZ>sSaVJO({&(yZR&>*L^IvjIy{n~FXw?fSi=N1R;0SKzk^IEjyN^Dt}HN5C!kEO0Gi zJ-~Sib67pl$x9)>PUSsD>^!d3&V94>Ir0170b70%`{Vw|`$Uk>zG?N+517v3v%Zi^x@($4+MtL+3xP#NHM<)%lO}o%#jud>wrcoE4sVzg=W2 zb7>*xE@5vx3ZullhSkjHcuBl0_%-r2Dl@EXzsR8XD&5EoZ@{F_kq&(d{jK&fk0*qe z9NMJMzowDf!hB?ovc4%3pkt}y$$qxnLp;UE?Zf9)_XjN;5Kj}1PE&a3YtY0nqi%xI z`PfcU|Jl*0>iisW*_3z3O=I0!r|S6$EnJX<7Va}>;n2(&EudGUXI7KVAyKbRiqq?! zz=cWX&{G=tekvLuudll_;8ipbUlVbhNdpzs5=4H!SLr&51|D_V2@O<111+T{4Y>T@ zh6Zf8W7h~ZzoR$zIyn}qj>FocVX@=lp8W^UwB0ZM@Y~yLUHZR9EGR0k+%C00!9E`P zbVzg$_9JBY@ld>8{E#)rXnY8=(+bZ*H@xSLhr`W!edwhsWUyTm+M#j!9In^rcH6Q0 z3|qf#b>{gON3QC4)j@nR^SoUUxj6}0JsI9;We%c?&K6xHdIz3gg^XQ|E?R>wlAINZ ziMFF}q=pkVQq3ld8vV%IHgF@c(J22Fx%?+wcJ4$KxCq8BFZ;Kw-$o$qbPr;Ly&+eWV)$;XpcuMDpCgp2j(_Oy)Iyozv zuO*HoXX(7~^@0@l&FVQE|9TgEZOp;sYcqf1QpWCX{)Cp{cVCAu%^W2@Ao9D7c!7$4 zfqP|7fm?lExCmNIkw2m2U1f^=iT=#X<~uw7lE`D*-ihZiuY>=@{E1^lHh*QQ9EZU% z{$j35rgQ#9)g9tf=-?%MC8;~~(rNfg=nyZuP1hc}%8;o)1@@idAA7vJ_}@oPhQ|L# zz*KPWMW)Nxa@Vk~KV<5aA9jU%V|)|$;wvS}^eqYFORk%YExaeblD^Aa&cF!2>zYKG z9zMF(_Tgpj%8zGk?Z@jgF!)MQeV&f5ByoD%S4s~&$oR)|<7L?Y5&Y*mK7ch!)h1A~ z4jEzU^Gh6=DEU@O)|DVnv>!m9?Uv4wvt?Z(9pxs_(bBE9tTyu-UP+K2Mc4)f@M&*l zM|xMZWAJUFpFKHFAA18u2JU(yJ6f;%?6PA7WA{{c+zPF9S9V+mZhIp;J|zdBGucu9 z&v@DK{xdets|?+t^>fPm%0Hw2SOxq$l^;Ezffrb>mLEN#f%&I^1~xKwPif$v*L0r- zo7( z8QDjU!dCe^oxfe!YVzI)VoYgHdw!oF^=;S3<%-z4+;xT6a&|2**QB&O*Tu%)zO=k( zT)xt7FMhunyAgYDw1Y1*7V}UN{yo;{*w;CN!$DE~-&6_w<_HY?H8h9F_dsX-hV}Yb zCpId31I~U=qpdeWCBASGHA^G-3Xur;I#cD{EW0kg^S8(;Rob^kdq)aIwO%j4WX&%d7igj6QA27{i%8ZBOgU(wa7gz?RraWt2g9squ3oDz6aHPN32oc@F?_~EqluB zW8>H4wMxItx8?eRJjPXZYNeg5cOLs0ViTx5BdE+w z|6TeDeF83#L6YyJ=FC`X%tn|0eQc&2C+DeE@_87qew>q^0k3YjEIyw{)9vzqcj)#q zwa*x(w>olngl;z!+xa|a2;GwNlSsF1$h!6-=7tQM0$oo{pnsjulg|5b`8*DtCR?}2 z*x%7!a3tTKSKsZuy5I0!t=*9?B3A})v26j7D@T*~>!J^&&W2fk(ahgy&A@NCkbAqZ zo26Fbyn)2h28*mu3)r@&%m2~W(AR_QoQvt?Dzs+Yy#<-0axNCLXDT@aDu=?!w^+=c zX+8NC*v%^6LSpY;@-5^H@ovV6;1{=VUiEN{hVOpR%ii`*Y*kR-%$lPUb>v8g1WMBEDJOsBRrIUoQ@PfepI|}x8 zF2M~3PQGd2WTt@=!N=3Tw(+qZ*{=P0d+#ATCd+}ZkvCA&Ro=jl)H>|E0m)gZW{-Xn zwM{(iknTt$C&(~-_%FVvH8+uMd@0Cc-545H1%_7Umh19tM&fgAw>AeS8 zSDCXeQ-8gjRDbpEevsRMqu3sa^^|u>{1RVxWH;^yAb#b!=TUJu z-Y+@2*`|GS|5xPC;!f&$v_Xqq)>Xvrko*iMo}q9&7aSY@$X;XbSK(M}QzxEL)0I#9 zOJJh?5s48=j5^(nQ8T`->7i+?pbHu^$Jc!5LvAIDXWX4Ie)Q~~6VK3l6cW#nc$Kc{ zp=om0)zBpKR(pELEwO(koSd-TG3zBnJ^cM^r;Z-ZG4Rn%|5VN4x6DEBVX<#8rpoK4}MDn6-95#RhH^Gb+O#Nq$01pNR0XcN*UyuZ6jl^LMJ6bdnn% z+V0CMcWiX=uf%qiygAX^!WY7iQqS$npMGN7>0{X!z;AWIJ98PYiTSQK{nsLG=V*Pe z|F-SP5zx8xo6KLm%fX+i?^E4xKOK9-ystsqjrwken`S_Bees*H8TGUHyinWj5IbWI z<92pm!>O=mr!b#5dzQPS{-3mGFA^K97xwIN@(4bQJ^Q%iXF2(Ro78vP&fTEC+cZ(j zcTE$5j}yPL`Pj5)B~S9x0m<#z*+#tqSBgB?7t}gp_H18xWCVGaRn&JJ>C|)_NnO1v z%Nv*s&(`7-%!S6ho!GlFuGX`rz5AHtUUX&e>ez|4hm+X9&pB`~`Qf*x(Ei;F+>_bA zt9xeu)`fc;zZ8SG#3aa{fXds<5S_o~H z|98y(?WVn>=1{>Lw7rvz&dfPz-V__yw0E{Mb`R_wMT32y!S32Suftc#>>Ul4RQAq) zF|P!BCl2=o3Apz^Wy{H=_KvEbA3F~(`N!Jck$H6K|111B_71TFeg6e9>uq9}h;1_o zyQD>8<9sIGQ<2L(+j8ay8$q>~SZbPMQv@rCpJP{y#J(q9JHClnj*4}2N0P+QVd@=^46!!Xewv3kgH@hIl#=4_Q`6#L4=?qqz)!|N}$&`I$cJEx)z zTW}3=)fZXQFnp#qE3KONkUH}}M$Q#Y1!mZ4a;|7TXM?=OzC7%@@!lNv2|V8F`9mbH z&kC=U*cbMj?dRI(jV4Yfw;o+BFj-8^;Z4qYqkR0)d#O1rHlmJw<;z(k?hewiFIAVA zyPGBU)lBSp3hT-ze$&8tlHf#(y>ctB9(+yZx%ijun^!-q&!9cdIhS2l=6$<3XEY62 zk?l%9oFj2D;#&53iHyKmqPHgkBe5muU*;lX>}EZ3Mqv~+hc{X2dt?l`Pqdx$51Cd* z^>o(1m~)xaS^ojnbuaPji^5aa_E~h{72;<%kb7`JxO{)Q*UBT$z-KrMAIg;*A<7_mU4P@$v#> zUIFn+;dLFaWZy=`Ng$>h-ps9n)OO^{f@8$bNUzxW5RR^Az`EbhyS7L2Upth#_6L(rkoLrvCi(9j6IKWv`;DL0H1&dy0A%0U7R90NS$samI^+!1B4o&D z&QQI|-_^*G!k%39ixGa}Ph`dogY16?bnc9fPU z*@2q`@94Z%`V!lq>vd)XR#T5a&b#da_te8twQ*inG9wciY|9Kca=4wjMv%q*khK-a z@O#Jk!uKJ^3phiV?{XbpDR@PGD!E<+ZozLe^2^yTu90)}53{CL)+FcXWeswUzMi;~ zoTFE=6}}g_qrZEyWCi1o&o{_o8*~6QVv!XLcgKyEdB6nAyPwzpm9t8HnqZ>I_NlaqM zA!P4C_Q2q&z|G9-S>~u^@K*KRmXp8cyOxuQxd(louw|xcoBdkL&&J;E*LaYZ$^6x} z0d_pUJNq>i&UwA>PmA*-qUZILpViCrdc?+|HJ3j!r3e11m6g(8b$#%;`>RRM>n)SK zkzVZAOokqO&UroHsLtyRX^r<+s{%G%B>JljN%m{%k@fZctnu}i`O4(J^<5&*_)N!c zX>)2VUO?@vR_tuaHA<|xsB!(Tsd0X5jrLnLt_`1YZ&!ZnIAGK1z70Nr-nY@??`M3& zXFZA5%<)a1HQBz+z=ZLm`!)$@OXBx!%C~6R{FcxrHgnv*4fU|hGX==2z1lxa+_yQ( z-hXu8#>e>qY+1E$qtA!ry8JWWkKeaRq=^Sw;%VYQgH026A#3#hb<+3+enxNZFVc8e zati6-SHMBjK@)bm#0I=|sq@kG9IovpEtv6(2N=5t@e3uB{xTVT#vBFrUFDP6zlhSOD@D9_io(yy@e9dixCvV{8pDwN z8GNu3KI3B;a$l!Q#V`uet*vfkQ7-$lqVGcZWco~FEjsx=r$6zdqB&jksqUm1Y8m@A z&Yd*)dy+?#OO8~&=w$3Q<=bP&l%R{nc6DE7m5DBn+5}FXNE$Y`(zy~tp^rDw5#5fV zFh7MKopa*&b=!fJj3d6!Z~2}|r=RZN%hc(~@(Cs0@`~DTi{URW-jbP+|1&Bs|A&|t z`9G8J6M(b8=OE`kTe&j_c&NLMpXKG}5G&C6 zK{@aHzcmruv1y+%E=ecG$l zciX3(uD;uN6@Jiol|7aXkJ~ag75)}ulXtS;(k1^bWSvppc9eCj6nJ;#+wO$^N90hW zWCV3day-?ON7?%@EA&1Lf17znlYt5QHTOyGk?1U~JI%eANs>d<)4dqYC!OrgeBFVc z$qTc>=KhEk{)F7<^~i>%b-wWM3Tk`} z?6)Kc-2{=B);V%!cY?nH_-R}ZOS3LN&YaD&F2}*Q_z2u@9F~4WKQukUC-JbRT0V)1 z39rhT8>ulAL{7`Pb^k%`nUMQkrS{!6@=1zvEWcf^0biefHuEgaNBsi&dP=?*^PT@%mKj1hxHRra+nVXyyZ$gg9yyR@U%u8@5Igzs0e(S*aIs}48iA~tL)e}9B81=c} z=U+W$^RuSM4Gs>X_7r);W<9MSe!2@e)P&z$lx96t@db&~lhb}FGAyTGUJ$>(A>DeY zIGy;seqQWS&r33_hkRaSIBlNn%ex-?`=I{TLp!LsCuh`GT;}!5@6F_G3VrS4w+eD| zgZ#FCWn|q7@_MCRZJkH;sblWac4j~8p*nP~T5qG4iv|pwXXfwS`7ZOh-OC)g%U!-h z3lCY&_aCzkY9ZQl_r%YAEc3C1E;SsOvxd=|{I(9Bo~=3C7k-@Y4SWyqz5WvGA))(H z;uh7!Ed)=#<#sGe;J9*!Th(*RgbqdSimWfhR*)D-(Z{v-#Pjp1gK4+mo`Fn)M!gP= z&Q2j8Ug@O%XwyeCZF8H|M}$G1ZP_+?`y=9zVOJc+}X6*7fwIZ+Lk-cR~CBSDjPc9s+o7ql(57H zv19jI)>pB&vIB1xezZ=0E15AR9J-bBEqtF(JE^VF`n<2KZ2~;y%+cqPd1MDh$b3rS zZPpNE9tG&Fw<{v}Q3D#Jer5Ag_@tcmmGW6ho-u1GWKGR$cy=StkQa5FNw+)`{KK*; z_BDqD*X3JUh(BI&-~{+~WH)0ed_?OQitd*(eFm&U_vO=mFM4$Pom z4YSLDmBeN{rdr{)5@M3z%l<7r&_YZ~>QmL0MpRAAx(cfdIWk^od}F37ZzDQm<3M*= z-8fHKka_Ap<6+_r?98m#cejH7X$?VQ&P`K+@eE)1xi5#;4F}hS))oHdW#H-##wVA- zdO6QOj5|A;HwxT+3hsY-J2l*)H)=x=H)O6-XApv%bt5&viOs3F+IB0e6gXqkrUl-E z7beqQ?9VjpoTh7tUp{MBL_0p)ay@HPceq~Wf3gUB1X$$~R~>$_FFbc80K-zn{XPWw9AKT7*6Y41yDe}&V2hs(c>_AL`>Hw_;S+3mSH*0u^hkr=sWl4YOM z%}Miz`1^5r2iRA7B#+M*_Fikhqxaz4v-En?{J)@WCG;)xjsE^EJ${=1r~KZEZ18?3 z*2gN5{k7nz*csP?Ci(k5+OD9lFY~{^?F;8%!xg}rb@-SX9x~@<=H>&gs#YN1SLWE~ zO@7S#qBqh+R`FcLHfH<6?-8?={iCKLXolymJ{9|(E|1v$ViE1;_`)WC#b`e(f%Y?? zeQ#j9mDxG%Ka-sH0|f@{KjSMqh^#ef|8Yh8qZIA8K%=c{|1d331l`Bkt>~eWP4Tu; zV*Sx$jcKahMAkR3R~zH&VFzm+y9qg+ zhnzbMd`aLz-}46&)8W}F_-GaUWzv%D)5#oUd@aWc#XEp+-r>G$OWMxW54RLy`|wQXBkc0r^u+)p4h=_aowJuq|TiFL!M zozMpUc7y+phuDW9p8YcLZ!eydm+=i(o;tHMjZc0L`FK9b7rqf*<{rdw#u6LPdLPbx z3v!HkrOkEw?;$5faG=_aWNy44gua@fujVU}^S?m;tw;WCg124PLo2aeg+^B~_Il)@ z!W(qF5IU|y7Rq`zAPZ&wl5f+>`0KYOwA<{otMICJH`1QI+svJNy|$->ZBjzITYur)>*uMYdG)zUb}({2K8Y#D*04Q?k~UL-Wzw z`S?dWk!?DbAnjYv3rp;Hg7Ava?{jxW)(O8W-syYimTmm4cxO#KJxl%R%!0{zFJpUm zAUE6>b1%y{U$_r)CTlYL|I=;xpmSl}1&&SQO7j;pS5?27F>{bluCD=)>*(Vf;Nu41 z^i-wZnK15l{sh-rVkg6ygV^Ooi-=|1Y>%z& zQQv&~{8M3$4Kp9(OIwkV62r|cMu*b3=)+<;%V%ARuJi;}UqQ_(0%F@TKat6mFIsuJFWtvL-mfaH-1lP3W9t2# z#JEHFEG1Ts{l5I&$@?2w@7%ccUgDo2YXz=NrL1u(YXla0jXs|9_j4OrVTjAupRtJW+q^?!TU}_m&#t`|BtD;ky+IUhs{Q^taiXG{(Qv6W`xW3H^O0yLGk| zZYO4t;InNOpY7wXLT}aBS#!{T*sKRlpAGxkv|Bsi>4Vq@hv4ff?CvJ)4dK%pp;@s# zZgDwz9>Y^-bvM=8)JWwm<&< zU&J4`m@B!Ej3>6MIp-4Qd=>dZwbT#qPaT9(=65r5t>tbj7xv_#3xNUp^+>K=+q8}I zzjh9U)UeM8TyRzxp9fiqE@?u?H;+N)pkD;9ttHqvoPBK1mNk=416~hZ=+rjNW$%c+ zDHk=_`jeA&+SgX^+wMB8bOm=;)DE+b74TW=@`d~TtMtXl6~{*ZnphAi!6FG6IZ zftjRsF`lNHXYViA^xlBKWaeWAuNS=oo}e3<>--t^oEKa(S?t`J zh1Ik3geIl_p7=qMKeC%R$gYclHEXJ6zUsZ%&UaZsj0jfPYy_5xQ)vRaOLi7XaT9;43^jnD>JG z=0es#e222b(d)zf8Tr`ZeenrxJA8AY=M2*}-W;{VD;;?RT(Y67n~3w)FE3u6vE#md z2ds?J0%)ZIJP9tpywLVzg?|Lb)Zi(Tcufg&D!~US#HTH{(n<@7!O5I=#c%n^*H|0-OazJc>!>nfyaUS)1sq_1-_V1D#B)?Zv$7DF)1rDx5 z856koT6ACfggj{;46dk^^3>_y_vJDw+StJ0_R+6JrpD#HN?Hl zL3pbPeIPom_-x4y9_*h7{+rG$$a7h)Jdqtb*3)v0FI+)PQ~YoFzA|X@Ks~t;_I*t|UwpT~3cf3Oofkt# z?Tp*OxCa^cBKDoQ2d1pt)u&W^fxJlYO%X2)5?xKM%$?c;cr+j|9eaAIfx%z z@KO30bUrfld35!5_;U~S z@ZVyrbI`#&zvK+^C!PQ%PXoVafaMdw_EzLB^A&r6^AXtB8Jq#i2>gTp|K$HWJpVp> z_m{P3qYCs-3+q?~9c)By)dROpz+^Rh8LPgNKu5D2I;ul&OY~16 zHUFfI*dM`mm#Td=4}Ot8ZCcnCUaYKI06Lj&)?L;r$@K7fZ# zz(Wyu$n6Rr%y5Md^>uNdf~V}rU{|=g-Ql6v6L`oSkIN?=T5K6yker8Tzmz*iq`wyE zQ|VJ=;7jChXr7vAoH5fpH93x_*vn+^-{7geil<&zJXIq+_3HbPb>!e|Yh@gRr}jEL zRik){_8(%C4Li%)wnN2i&-LGVC3=~6hJzQO*GV4W2Mx-;WEyf^=BD?x&ArLrF`tpN zmpQ?+(f%d34_;>6e*VA9SVPGBkp96_;nf9s8>ly}#-@J$cg?YL7+Y{Xs_U_9yBd4P zY5w0a_IhgOtFfVvZ_D^@UpNE~ilGmQbIAU56S7liNS@DUe1Ts*uy_o*eVpfZyw9Uz z3if_-2Kq2F;B)2wX)dy<0vlbu11!|KgJ-aJod}ckfY|56rnV7t57#r!E@(i`k(81r z=#zM~^>6;Ofk*IJY$nb@Se$D(UEl*xxX9aVa{qXXi*tdhe%`b2HMl8Yze?~E&AA6> zB9A9m*fx|ckG+AJ4(+J1S-b2dZN#P#-*`%~m51H5x8!+c`|e%1-Tu6>adLPHdTc6s zOvcdnW)`8x#9x_$9<%#T4@`9WSL?c(^-Zz1w(XI6Z_o#_C`YYlB0424Fzd_sZ^-ER z(3#k1tsjyl<;kE8`|8U??STRy`ltJ(5fn0FQnWk+rx0{i*E5_L0p@*7b@Mbf7cMiI2_(j&X zqqG@x0ea~wV#?f&^aOdnmyoY=N!l6sV1tt9;5=`Ihe0RDi~7Xrk<*a>N)J}Ls6kl} zZktmOK3G~1KC;Z_w_NCc9CUni2J-A0S2#4&#rFaQ!>;sSlY3y`DGxf3ysHqpwFF+k zhS(}=bVIuy@Qi0fMu&|2i}Qs!^K;w|8XY*(<5+?~)` z{A7i9@-VQ`O+1+2n|Fi%W&CGuk^}VjW#j;rpVJU2AKK8o3|iX{jqK+0Eh|iXwWiR5 z7yrsL=HGlk#lDV4bAT$-v03aKpb39+Vxw-G)^v=hnR(0no7UOmdcoVKi}^44Pt4(K ztHl=Rcakk|o`aVr;Bc}n&@T>$UvS!LTL9U(Ey!9V_fo?~Xl5kq*<=leMyRWT&D?^% z7JE`Yg@2kj4=#7(ZUX1&%(ERi){GqUtn`%y9|6XyU3#DnxmUy;U5EKSnoCFjujA9) zb~^fLQ1bjad0+NRgf2wB1>FMzOLDD;q@TGrkOTEyTTa}Jt$8!CjpA?EvS{&ou?_WJ zOIBc9y&cz9of{kt=M-qF^C*w zsL+?t-=pUegJtc4uR@_I>@^$j63b6haFTfoob2@jr)Qu=;zH6#8nSQ>vM>ZZhjT_M z^el2oY;kl^tH4xf68da{KKslfUyifEl1mnHbSDS~E%KU71p6o-tw=vUy9GPs|Y? z*q`r!({^aQ0~$XFjjJ3q+Ufk8V0KZS?5{UNXSZL+x~YfTR0}N1ZFtNjZngnptk8&N(}M= zo>`WX+rrl&{+>#HPZQsBklE2#p(7i4w$~~i;BR70!}(oo&k(S@=s3KIA0swx3oxw3 zSCnzI|67Z%D7s;#W7mFBa)^Y-_;1R1^ZO=ZY}<)TzDg{8_3{PF+o5$GmlQhqudhee z%{vxRI!WmK24G~qFZ?-+XBq}O^T-*plEt&($0F57sES(|+EeM{Gauo{y8n3*GkpXVZxna`#o7zZZm$Ph)Lz@817q z?p?sEs?PlXeNOIxTm%KhnuKr>L7_#3NIN-6KvZm@6>B@RO(0yw4l?vtNwG~JL6m68 z0sBv@o#C#{(Q4|Yma+W-qNvc02%X-X8O|jq2?Q0Woq80_@AF-I?~{EF0WUMt=bz^} z&pz2_?X}l>@9(?b^{#%K917U1cRM z9!3ry{Br}gzFiMQXJ#sYs1N$g|L>yrrm6p%>3=2dW^iS$k`J=a6pxADsX20PFSHX`%kK*rTNAhgw|N6H zs9b2ux}u5&To&|Y3B^9{SL8%y$^v}1^wt8%ax)Ryy=X`4yknV-(A zwyy9Qx#hO^ecET_iGNid?R}w(X`6F(YMbn0r_CO<$qo&mO{&bvO6~+;9&_S}Kw^-ea}uC&oi+E6Cw_N7JS&~0HUqu{KS<|; zC*@B?!C?%1D<3BguG*lPc5vCT5gi21jzO=T%gd^dZwn;O`*I-B_wNIVe%}Zrev3_K z&I^Sn2lkb08qle6xHj>%qHXw4YlE7XY@7GKB|E$icKCVCTGNWchvFUietzl&lySCB z6#9?O;NDVWhaXJZ;Tg&+vF-3%4m-9D@xI*|73`t%*f!2RBj4TMdB5zI*Li=XQr8#lOUiglu}C)u&FO<0T*0hGb0;mhZSEv$bnLI9exYbj>+)lXt>+^X zu?Y{?v+h@aSH%pGpnFD?G27djJDFgXHtE(Th<+FEP`WEQcORq<% zS(Q$&iglFDEG>@e{0L~*hpg6I@H?2t_~1Jei9wX}KE`c)7v%9=bldZn5W8g^B|v-m zDi*RK46R3?1JQ%vBzo9wz4P;|cfN5r`^5S~Bme7PPCd-}$`&iTA&d2v5v;eo$p4&) zexMDSeMvG085~Cj$HyUycxMN`WycI++SvD6k8t_brN3O+ zW9)hBRbBbc67H4z@G-Jjo5>T*dw2Skt1y{7g^Bb%0a$`VTQ91PQ{c(W3#}8XccR)& zU%v(&3%=sx;2*|o#s>`_ErEX~6K9?X4>`7{^l5kkdy}$yH~f^kCO@UF$rq?y_3JDv zu|Lnqx`Vgj8?kr#>heWbyz^UdW#^yu4Rw-ZAez&816?)!;iCb3&gV0*xeK0d#ZRGa z^$W;ptvj^l_^abHVeV*uXC~$BSk* zA02aZb9`Ix=GewQ&5?%lnvXu(w^=?xqy`wo{K3DBupZdPo~xAojNqhXjP*dgT(twN z#8x{dc+iapZSG^s_^p-QInvKEAIW55OwR~zyP=sESdYMVYALK7WcGGsz$=PL{ucXe z4>XWsGr9cT1Dg>Zzw)5=Gbnn44;*($e$mWx49hq+Phn=5(1LtkLU7nVo4h&@* z2!w}1Bt7c*W1u*`q|4P(KV9I!-$J$Pm=Vi*2`Ow zi*e*bTNU)Q5L#aXJuQWvmP1Q-LQ^X_%lFTv)o<1X663({c<}pa@axJ#(TQp(x1!JD z*ne%39}YR!XlWW#L?nEF+cbze=_ zzvY>ZocF9fIQMKh@B9uf)8${8gIBNoyEiHSGVS$D@ z5}40HF3v^%9vI4AGw{%g+?n4evjM*<$$ynAhQA}3s69-|`Lg{3EA+c9k}28HN=_(3 zj(RroRPp8r`9N9Fl?7e;(3yoM2hrDAI?kH4m3L0%or?dHi}2c3-#gFlSTXmV9hp-@ zJ97E-=TpEZz^7LK@BUL8ap@P4=Ua#P8}K9T^%=&pU;}Yb)^FT#?*TW;ZwtSQ&47M> z^B-k1oZqZ`u-I6$ZwxzuSSh?0hWE%*Yq9Q_6r96evuIs+9^*}~xi&(!9T$cV6{mCi z{R90b^BLi(0D5W|@ALY}r8=K>#Rb6^%fQn@a5oWnJNCmQa^_S|#_^L6YVE`L$?$55 zpUnT?1;+A|Q|$_STqD`X+s<4&hU4Gd01r@CtP&o`A7GuFqZ}FVA~-z8c-?nj#Jm07 zwo7B#ePhpJyV&n=`_H5QlJl&Sy~z!rUfI*WJZJ}6njDV-?)X##M{!T*&#svNFy{Lj9i6kGP|$Qu*O-plxao3TBh z+2|vT6G$u1_)EZTN7?539X2xL;$&j`T4Gt)WEF<&o#O?&5#=Z>4zT zCir}&J#M$2SonG;_7Sk-l(~#8_Gj?+SLE`0T(3eNOiFzwHeR}c`PKS@r^zdbb1_XA7$PeC6esGDCQ<4Wgj`ooQ zO%5ONpjqehzT3!qUPs$!%7fEwp(BduFtc zcqnZ)J9IY(8td!upZvQr#!`+vC_^s9;6Ld;`0t=~U$5YnH2%B&U@HHKzAqjfNPLI2 z0r{P=O5ipR9k(a|+%u7V*&*q^R&yn>etfocPM^+4$;~>>{Azvl^AI$%iShAF z>m!WsQOBlx3fw)*n4d!j??MOfCH_0MtEot~3uDvXKY|Sqo{9bG2lx!Rz;I-V|jJ4n@(HpSd1+Dpx>p*+Mr>^Wqg(1R$@AJ zB2-TxJea)S4C{e_@-+B_fo^Whk7oI2U?DGlly;U$hzZ<4^Ixt;mCF_H%xGK>EeYLpxd9gbK z-Fq?lzS_*0^UlZv(O%4Xm9>X5*@r3HPw}8Ee3dohebw3%vZjUgC}6kdGCO}pc97&) z1pa>W4x{%DDmFcvcSZ-+n0!@oLr;{wFwU#@4kmqe;vb3&*m2a%&UGeVbxumYsvmiz z_sCwpf3_W$b#t?^=c_fwOvYIC*}&mV?8T@;Mrw|#`MZZ0^2?raUCp?LIXSDu5>9w? zRxR&-HfLOB&Q~$lNvw@xYoUW@Z70`rxZk=;bN-p9?@KjjCr6h#A1s?P=$vzA4gG}b zI=TB-SAPchGj3yZd-ksicW(T*r~Rul4c^%E4jf(rRvnq}C-VOh`IQ0+)SfKpATEX%Nf@ip4r8oP33XUZ!mcXjSJRKmAq?NNUr%>?S(}K z#b>Y|l6Q7MSM6gpuKW=BG=qfOJ?GUPy43^c7bYZ{o@eih=J}8_&rMU!JY+*FmT`pm zkn-0x&!3Q!ebkw&X!}m)DjB5b7uq??jf==x)^98LO;-ambi_h*#Ht~-eptO*^2!%_ z^`FrXr@NkB4NjxP%1hykDDy5QpK%p9sN;SW_ln4;TE+JQ#&GHDr<=6K9zgf0Z#U

AWLk`TVrQdq!0$S79=RIoAz3Pdnobib+LCjAqdRE@Q`cjNFHU>RCT{0qv_hb|2BkvtJN6=;Q zl~(m?^2N!utVT~aTD4<>SMff@Q-=YA@)wZ#FY|nj_Ri;rjxomAN`21=&9|(pRKvLy z*;_>0`8P4wnKo_uz=`7T|G{sX-!^2=-XYdi@j9!zP`>jtYp3nsXN4-I!^iR9eekM&8tX&01!$UZ($d^Z$<+W6eBk zS*3pambGjPc><9t_zs+y92|IG_z=%mIlMn_n#SF|k7)Kq)RiKaO7Xt0&3wN}Hkd7s zCIpXv2Kd~{8a`t!%q7k_$ba%4-laIf_WrepbZ&vxKD7Tx>(pDhHyl}}IFyEXDb826f44y}_P zso3iv=uq`OR7*m+5sJI)$wa0x*1e3mmhYSK5myiPw4c$odpJ`8{yMs1&O2j#_8tW7 z0g&F%J}1>nSS4H9yfeqFHRrKk;OJVj2d42hdk;+G686AI7WL=3<6Nm@Ze;Rpjy_r9 z=#xvF-|u4&Od;O|-`)FjCVnwFp5A5;%uUsE-npOgyvh5uKTq@09vI}xLG6JFUx+_h z%O05CzTivvJ{ES7cq~2xp2QzeTYG-JJJ$inp87j-mj0gVp+D8obM4}Z57>6`=aTz7 zv+ekx>SdMZro;y`krQi%BP+-`ev!T1+UxT0Z?TX5Ae~{y@ltrUJlA8B=5$g7eb&p1 z=1j`ZvX;#O1`oILY?%H|*fla&A)EIp-rdiakbl@FTY-Ly9N6l+;RmN*<3qy}!#q5( z{?n{+b=x$JWj`6;GfyP@@UEBGBJxRB{el_+6`+8#NE$JBSYQ?r1(_>pPx(0;Ces#|7st&D3EycJbX`RV-shRM8K)$ z{>>5iv#(Ou@CNKyC*HS9@jl-34~%&m?|7U(u6Voa>4Eg=zWbjvZ~9Niy?FQ-F?_`` zdchOlWKHXFc$P2miLxtf8LIkvOVGuE5w=};eW9IuVy|`OhQ|NcUhBHv>D!Fq*H@;Dq5B=V zq3d~v$#KB;h+=niFs?kF?KOw}PV?Ev1Rg}UTCdZY1>1=Y1cf2;q|hRAS~fr{ZELZ2Bg=skc7WDv;{2v(MqX$=px=$J126A5j$H}wbP=~- zP2B!OZq9+0KK&02$R_8-uXz4|&Q;)DIMv$aJcqv}Pg`XV&0u_@b#&*LZ=zRc@Lp`7 z6yA4!FXHz~vp!oGY#fhIiac=qnG3t01sVw+nh;*k;%XF58h8sFtjod88@JF4E!VB znaTQo|7`0u>w6W4pEkTGKQ}vc1GK6f)ahKYcUu%2_bHD#FgSSSZ@S}Wih=#}23yB0 zlJ52Vx$!KWdz4;3R6a*^6tsY?5Rkt?4GTM;Hv^i<49yuueUU8o$w0q~9|fS%I%qgr z1nrCgNBLYw1rpEx{&bVpvb7J=$7&es(F}THZU2lB7T#| z+)g|t%bJ)8OxCQxzQTVEFQw1fR-zUCkcEDTBP+7eTW$CpYab)V{xoNvw2-F+?CMl& zk^R8vloO^tB`~vbYws~1d*!=L`pwj*L^tcZsZTl0O2nU_)*>)*dHR6i>5R}8Vh-0r zqc-o_c5Dhv%k6td!BP8kWEgfeYlSDQ+N**;9*6%_h5vLJKIT~RpvT)W;Y>Rw-01op z8N`G643bZMgxrs!0BxrL4`RRgK*>FM-aR`1rgk^cZYH_avuH~kK=lJt+Orm{e*K%R z;45nX7231jJff2J!)bq6T6^L+rak`Kuhjlqv_LaWi&(!|M zwBJno?X+iIBrA~C9)HX9zuOnwLHkzd(9{o{$n~b~w)N;3`SB?=i1`19dIme74*bjK z%bICFgM27jex$K16B!2jQ& z?P~h6b)!G@?w8r`qk2L!p!>;|VrmDgHk#Pl!Fk9}#U1vbAKbXG`2DrsPCX&UFTJpX zI-QxKG5(KGPiPDOn>f-8S5G*!hF**#E46R1owlkc_dIyn3tnCTFZP&nL+{@}-A~$W zuBGk)xk)ab1j{J8ZY#8*_iYUmC*uF9%&8|jcITvV$zNM}mT}3R|HO4Xk&W%9K0|jM zPvQoqM#G&~;BQyhdbyq23?1;Ln@b%jPp#vrTt(#`>O8ap$#&$BMkTUkQv%C0^XjCyk!hA z=okHbLi_fPbb!ZvY!P6*hG%PecE=Fm$+i__o5&t9GJYsB6FKj;y<2UKEVuV^1kC#9 z#NfIs6HUXd+6~~ZIKRKOqID>|LGAuH?=bt>cy8Y%HZ4S{pRRW(p1WIik9QnuBOSr> zG4zDS!M?&4)ec|AJ4{>NzXLg%Mcm)W%Fd}qPR@VJzApIlRQ60GgON9)u_SLHs|;`9 zcRWu1hT^@75o_PrjsjqaY{^FEq&x#nnrEQNEz0>o_pRo+vd!cZ6Q4BSuP-h36E`;B z$Cp<7S$~LDaXsOyu0saIkh`mZ^BQ2_#ZfW%L7$s_$5Hg5^ss84N%uXD%~eQEZ}Gvr z%{tfEO4i;{{3n7PGiS3^TuJ|v@y*mOz`mNWM?d@%_x;4pRqjUt9iUgce{o7x=A-u1wf2nSgDfdCet0lEs{b`_+}m2JZizaN*VcPXF#0 zzwH@g?243il!IlN#pfKO+sAxQABX7U`R+JSV_9a=x%+?@#hdD@6#wQ+^rcz{s@bCa zjwrT)YDh$pGcJCj=y=UJijJ-wianOB7cC#g&QX2rWoP}{oiBWp+<)WTGj>4oclk?h z?RgsqDZe9+B1KlUWYT$!woHl?1*-qkkxQ=q*nGKUQTKTu87=VlW9U&nBl&&=eS(~y zl|7cY7PiD?Tt{;~!ntpS+|Qkf&vX;{^<2kt&Bt$@15NctN1TVQxRUEQt~I{Com=o{ z`_|(t)RKF~bpqETz5$&PXmY@2a^CoC^1FK#^NE8gF67i@$nY6DD?|1}x1E>M*8?l& zu6TyeF8`n<0c`H{w(^e@zp|g<+(n*=(SCUK+!d+`_u203bM*CJi zo5W)uI<~&%nT+quT``Z(*~S)zpCj1kCndX?o8S{03?BiLlgL%s?2@q+_#o@RO~#MG zB`~cZZw{Yk)|BIS9iG2v-aA$O{hY%He))Zr`8}s|HGcdH{I-wZ_VHT{{-^K~9Sp7G zpWC&+GD0_IQIqa;&ct+BXCSw+F{?G-N}kjDb$`a^9~3Zq>WBA-rubgLo)rDA@e?Nn zzxH~-RrG801F}-{D7ONKs+8yD_ESJV$n@cSM)3V?{S5oCekRe+RrJGW1mDlrPyciD z(@*o7LO%ie;WL8oZa*5YcU~W4CYtas4!O8-=cHOL8G*9m;e5z@B0tcL75GdouCg*y;qy!S{{{W?8Nv6n^}p#X{Y%Gc{mB0ZY^UF%8~F_9 z`z8kt(m%2dB!9n8A3os^KiSAvM-JKRYB`}V|4{l$vN|(#GvD*^`(+EtCzb4d{QHjV z?Tt<1u?fBY=qtlh{ZaXyehYnpziDhi{7+vcygU!v6yFhB5W9(e-9@&KXY4@iR!g}9 z*nwYfBOj;`e;%70J~BS+6!@-4eWk#6Dm9DQN9fi8b4g|h4@b|D`I!XeGL-?Bo)YMTf`Q<#@$+ML_Th6mncy_A$ z?3AnRXYrHT$MNh0{6wDBIWC)x?=muY=NKoyoj!&Q2afcq+?J_Vu{UlKw)bbrk@_)l zmCdYkZikMH-m!CykAnl%$A}X*yP^~OmvvS7>8r5)g-6#HsKuttgm;ZS32Z~;F2#A@ zmZ$A@$^8W_cDt=kZS2jo^YV-Mqzpb$&V|cw<-=S)84!%}ZZDtw0y}VziFtYKGABNh zV$VAFq7yAUhmWzT9`^2q_-@#bk!fi@IPJ`yAlk`y|M^F3_t;t5rN)xZ9Baz&IgAk* z_TBq!8Fn~be(km6X^SUFeho;*(jQ}r{E$b99S4-x zUfVl(lAJ-wWFIv{eDkbgd_Pk+MAy004bgQTbwgA)MzJR0I~l+7_vC-ITyTl)WO-_aOdE~Azud`J;P*JTlVntxa(=k#yMf1EJ07xoi2Up^ z!50~C7`jl6@2f6hzqh}(_yYWw=zE;|5k~f^?_uyp8T#*eWbQEDQ#M|@&N>;*+4P|7TFFxX6o0YZuB^Kqb3db9 zfOg;|y2MHpLEFQj?be0ev@KoNQ0UNixKB_y(T2Vk!iP)HEzo!2Q1+@A7+e{w7YuF% z1`giLcx&;UIUjKtSLwuQJ@m^m z=zlu>Aq@`O+@sJ9S;keTf>fED@3F|7%qOIJa&s~wt6$|z{o$f#Q7Oj-XL=>T{TZ_I&*qcZ|KE5MD9@1n2rO!|VC@VU%Bk1F>Vh3 zdrCtUwQQ^2sX1K5S-UlTR-5{^VQ}dqrg0m!Jp^m>Kk{<{|3|=QA#+wvP62b1&NH+Q zO$uJnWn@oiD4PNn` zwU47Qxqjy2MdM>UWsJuwW8Ao{_ud}*VJ)Fi>qL=4#gzsJx9@{q(`aT&8c#RDKk&i9 z!h*ik2uIVa-?&e-aqOT}1A@UvCx^ltFF7QEgAUQ6)b=HgqX*Ax&e z+&uQ{fP=TDz$@fQxHSb7LtjJee$Dtaz0G>SuZg4TEPLVNmpt>bSu@l4vO;$O1L+Sp z&iaQ2TPJA z{xN)wtQ21x9Kn08O>w1*Bkh5MW(*xdmtkbbwnglLy8zppKGN;Np6ua`_hY*pnZ zpJ@ln{>}*f(P`)VyhV+Fdmc$U_y)%gE={ek^A*jdXFK>{{fUw@?BF}xcYKw1d_CFDe zRe=pfKEy0PcGg_%gUg7s?zYgi;5})#WY~6#ktNReFuGN_Hp&Z-{24aiu{+UY=V~|P zZ0)@A!+l4NW$ebc*4aFI5qxa>yE$h4@y`E1#a+gi+K1em%+p0ZJsS!gl%;@Hqafw zRJz#a<%3C^5BJdTv)9`Jhd~eCjl6-Uld~W3Zo$#o$XaBoV@)YoS zJ9t-~k9g?_+x8uuRbD*WXHAq3cKN??|BvuF_>wJSU|*hRVw@>Bbne-CcX^$c6HA=F zxN=gBlLvMVzGk3g4?q91mkA1a6&ZbfH^#^T7#PHc_#rO+F4 zN4XC%?8Vj#l&3p6_|QmvvuW_mQv5~6aCEuNqn+@P>VZfWN)D>F!LKv38}4KO`+e+x z|EATa;n6HBu_MpMziU@5Tr~C_<>%QsL8{53+{&ELXmDt3HS~z~!pkpjoeYiQm-xVq zoBOq;r+tkpfkh4apw7-2Qw(4rG4h2-k63V_YY2ZRd)e5b5MPnd@6z(Ls?v za|K>SWL9#Y@MhN06o=N@u54oA>^J0Kn0@;A=ovHD z9xC!}KDBL#wbQm?l;3Q}Oxj1#4%h&fL=|!^&F*e=?CwU{-Qgt`dz6_w{dcc3W}5ZP zJ>;0imq343V5e;3sh5!V&bW=QU|oPcVbk!d*ji`U$>-p?6x%4-&W=}m`PH1$fm}83 zM5g|x%8{uRt}pNKbq+L#Kizz8~+6PzX|!@ zK%FGztxUNPKbty?zDnd7aw@v1TTWegseEf-wh0(+3?#l!TwoZrQ%{g9-`_vv>~&(+ zTM2UWXHB+hi?2cs{-rK8_tNjs&3I_+1oV00Dc<`m^!6P7&@TL;z3}i$@b&?C`&D@R zFueVH;zzHO*L8%vt{8b;?c{ZJ+T&84lTjzonbbqjI5VJ!sgahkj(r)@;ksq>>+4_ca^eUcpbFSRWpbh92YbT zC(&(IBKi>5N4PrgGkcO7xc3BphxW_5>xCIQ$IV_Z+`Px#FYDB1hG)fpHeK5HBFHS| zIGT6k3yl(8E{BKeT)MQ|d7sgEwNKX_@5Mchx5+!+Awe@<;CQa_e(NKQ*TuJD2luh3 zwI`f^?PK8li)lDN!#<+!>F$h*->F_z_|9%P{l{G3bSH3Hn+hjt^>F?NK2d*b*3=dA zRPy(XVU&fl*346`q$qz^THw7w4RBf$S9`VBbs0InL@T{CVj{$`n{ zW?UE_FX=BjV+^atATlsMqcpJ%KHmC&M#_n1z zA8Ms+T-$~-HWmM0OFoU{S5GjB0*g{$Q4TC(9+~&YOOScuAD)ZBW5zBcZZbG*+ht*% z``Y{7TvC^ZJhrm~_Y~e>{<4{GVgBj&h2I$-{Qi zTUV^`=n9KJcm4hq@cTi(A>F?2G}*4eqsU6yaI(Gnqx*)TkK@Rg9n{Ur$B&<5)?ri6 z<=%oklTG&U?a&Z*@@2$@MuTV05jAdGQ7 zBD*;{3S5j+8?F<$8aYSpu8Dll=icNrIak%47qMWsBj+;g90z-?&8_8Y-^)iA?qS?* zy!&F;W^#B`FU_R%-ILw7jNFt zz0WA@$F7Qa?!aibJyQ%f18cl8-&8;=zQAhPN3C+@*@fwgTKXZab(`3#C%0I3s^P^t8=tPN=e_63 zo!{%dcD?h&9Lc9U&JUU~0AuwN1GiPwag#h0{Jni>PE~dGoaU`X?m4uS{{D~JPWVse zEtlJQIzoDwha5Im*kNVGE zf0#IHaTVW*-4@5dr|kLp(8LaCV)iwx(a}~{W6vW8s80dSWrp@5J5|p}>wWUsmRo73g&tm-NgMz^ZeyRaBf7t1Nfz$s&o^xw-#wI{hj5p4E zUjN|zrXu#1lNXf;Lyw!CnC=&Wo#;7I1V1pQC~_=0S8S1AG0(^-=o4Cwl3@fhORD5@(OhO)w^w(>GH`JpH1U0dA|POFBHX)+3m>biNANA$ssb>l(Y@o(``(2VVNE2v}_cRxx0;7g%irRxx13{SD>7 zDh8~$f2bT-#ekLaBV!e^HRV6&hm=DV0ZuVsKLXcy1vH`!AzyllSe89z^~Nu|?=((zO7oR4Po zdH4BfvDuc%^U20$IMSH0Y!74T);D$?gK5BT+GhiYyQni?q`XFCwEThn``NRDY>S}h zqvgmfU|mStBlodJM>{v)PWkf_n70{!xifx)8~cpUJJNoOAs-btn*y$;f~#_H#rVuS z?cBgDJLem@yjnOz4%G=~$S1|Fgg5z4zka`KRwlNY9b0i@jQ&t9K7@BH5oB;2`=SF` zz1i|NsOFq%D||yZ;2l-YJ8F4{`j&i-7C{>m^&YG93f8EMjl!50Fy4iX`+6(8p@h8E zVT>V4zor%udPp=O+E>lIOmv)T2&f*(^1^qU+VY8EOrT$6o3TOQOTFh0;8M?-8Uwlq z?7ZU-7jdRaZ(ue7-98X}4rV^0cldU+=%OgV?~Hi@F~NbrXE5(TCVa=C5yQXKz*an{ zxrBI7Movn+Ty-E8pc~z@DOHO?x-kTff3jksIUjTtcGBotV$Jn|L}dVC-BtqqUs(qqLV? zj!kE*Pk?X!SFA)eBV2sHQy_iqV@$}1>Cn>?@D6;Wn44`63dfnD|0}%?P0#I*odD0d z@>A;pPpJ>)T7$m7ml$4aPT)z|L^bI6X6hieHc@K=JBhtz#Wm>n<|~Qc41pn_viKc=g zZ1hK%=QL;zxIT<8pxOYE6&dhF{Lk3w-@-RqflYr`0Q!fw=&LvW{wmfj!W*sXKU_-< zeDKHF0oAHuWXm59ooD1E*D4I%JO7)U0pO^Zz|E71iI6)ey=Y_^agjNUza2fV^_3&! z4YYH{YzJe^%j2A0D{ucJ7h4lqr`-wMt0lv_Y6cT48^Y%zKAg$&I(*CcUt-R$U?=TE zmb5=-C64am{$4(RP5bR7emlVZSNS{|NVFZs2Lea!zvoI{e)c`b_GSfzE7?L1et@62 z2|AeoE|5Rk7xhKX7;YoaLF27u{1L6ecjurqD(7;y@-y5V6rPbCPP>E3LFwpZep%#> z`0R6f#S4oZo>&Y|9OHB2fIvd~j1{kNeIU0cdiW9O5qT6KucVxKjBu`f@&&;7dGws@ zP3`X#j(oDwE*TXZ&VIvi6Jr=>{4Qh5H8Dm{?m~;3yAW%_M)Ag7`2XMU!{#;PAIe@U z=}p&fw(+ht^6)mthPEaJYw26{?#0K$pf{a=5+znyRS(M%2Z-+^M^qz6aCn??yRy6% zI7Ps@?BmVgO)~mlkrjG}-8VW48d^g;y|Zoreg$K#va$~>>~Fosp7jIQpT1{Zo-eCm zB=`1nuao&Lfo5vX<9runZG{ipo;Z0se9{STKf36$NflY#L#L0*vWgcDQGJ3Or_N=~ zhS9!^hW*^rb4NL&NxE!4KEVi|RjlWZVyjKX&aY9PMa!B8i|8YU4-mr_w`*nAY$%|Q z$ToXkk_SIxPMVKhJHgheUY>Mq`N6_J_0U9{rPNO;WPiL*KKMECd^W!Cs=2T^j?8!% z*zJH9+nz$!JZs`OE!N9pgFbwQC~F2Wt@i=KL zAA10xXJpes#W{5CG0x${55oEAX7v18^n5%0?WGTR@W4KNQ+)Cbs?A={@1n^ta%vB2 zbkThHpL;e9_(P9=?)|1J>U)0Fcc#R4oN;{AXU~A=&34RX-|8OVd2^t;#bc`rti~Rz zv+c1w*<*F7_L%tK5#S(R*v0v?(??RT1=!}FXDurvzyIa_ffcXx2^3#GKxfbN>U?yV zHLHtj(Pxn%)bgmCOsx;(%khlf2kv{nX5)Rn?`^oxm))?#$~*7|pT`GqhEPV|12f)V zzwQM0e@5GqUaSG;vj>YfUp{u*z|RE^*UWY5b$!FK>vi$}Ze&C&^0H=uW!LNawzbSh zj#T)s=(sM?6>G%Qp+0)El{ki6?!47X9N)!0BkY?uu_4}C$od|<-97^yimr`UQMNm^y3g`staUx6h1`-!RN9ubOv6n-@DAB}$opsX{O5T7?HQ?OVB7?s8k-WEtVf%Y_Qs~1jr_#M2=l+kraUMg zqUuunJw|`dW*#pwhl#)(8`Nu4j>fL7b=HL*C#M8m*Qh#pb*zcRm{%ox_RT&?zON40 zw(#5J)@bkVT!3xExWRz(vnVC)PvD z_);ftfR?p?bvw4~e13aavO{to{2alyjX~dvZEwQ=Slx2>gWLJunvv<)uYnDw& zt*_nywi@4D$4;ojCY2xF`W*9HG#E>;62NU^|wEH=Wv8(2i=B`d;5co!(Chh-@1K9Yo?+^2#&P>X0zvs8t zxqpNY^wk#Qik;ck&UFS?`inA_7s64-y^&51w zA3E9x9m$S!*HOcpN{hAUNc))-w`k-0pljGigYEA1kIK^4OpT2*vw!gFF~~sdDfvGx z-hQGyj>)!PA^G6i?$M|47rnMS|Gz<#yi2TE&ek7O&_{Yyo@6tdqBcQ{{!Vf#Z^iXY$?>6Ib!%GNkd#0^qO* zxH&d#W8v6g=j0cAjQOE@&lne*@882t>lOMQ-|hWjIiclzmmWRCRv65fheDUcZvLgV z2YX>Ka&~AS@mG%x=GtGQsoUnYzZ45D$L7gKe)^zcKQdJQcWRv8GQPEo`_Y=SS4P}5 z+L^PnZUyX#!MB_lgSY!hpO5BoPY?4r?6G-_y|dRo&!ib!fx7xB@uyaFnEYh<-oj-E z_CgF@sXUg*Hh69?@%Hjmo%$W%Yjo;HJHFht$*R5_+l4dctB)-SB=)mc>{wkOaT|L^ z;?Td|aqLdyaUL>)x@X6rCl@BIpGq{%p>CzS~g`XLNQsebTSJK4!g7vkf6(vZZ;7=Jb1l78yTxH9AOOmJ-qx| z#&9lP_Kv}gJ82A;Glnu}3`72{Qm~) z`X>HUXRqZ#L&PYr4en9gvUYIr2RplINc0i^o=qQh>GHqMUZ2Xt$Moi#D33%mPzEim z`TqTf=3n{nsra^xU(C<0KNP3NwP+&Fo?+3%eD;DzpnI*U3r^Ve!CgbFlWedTJv7P& zUgn_(>P)tjApiT^S8oxF1^)Q~b3YG^p)xXhuM zhk1VvG?NR>Xzj)iea4Y%${jN2o3P#$%Q1SPMgHWg7n3iKoa%sXbY`t+Ck$-dep|Pd z|Kcb$#4{I<_(di$%X@RJ>TKvH2b%H1PPK`}OPK-rlG;-(UdjwrXuQBO4Bh;iy|LnN z!G0e291cF`gU_j4P5uNjc0Tyz%stlBlKgG(`To!p{%$Gk*3In6B%Vy4;%|+~t@nO5 z{=U|X313KZ7W&t^_c))yT^#e zc+W`Qp>>vp4u5YIe;ZtZBk%x!8ypF5^Bp|7{OyiiIdE;rWYy}6(Vray$N>I|i`wh1 zBa!)vmuv5+;d$^ao_Aqocz${s&-4EYash0fx7TvhdH#pLpf+-v9N5S`;aK*e3KHw$&Ico3eCgsTL-1Qfr z9a|QruK7x~t)czH#0-wG-_ws=c#i#^x3S+-*Co`Mt?*@a9tGZu7tfy*gASC7=Jso! z=gxURli_i6x%~GplH2K(e~KB&#$O6PQ((Y8$}f3ffDcMc6<7>pE`ymPdd$_Qg3ogf ze9~jDvi)5>`ed5^#OO+apWr1pt>Szb*%=F&cNg>Cil3nQYM-mF3r&69jLv4@A^7SU z!CdfdI`!zBs@X81c?*Udh9|2Z^)3OhN6UiV+`dV!Kqi*{`@ae_arc-yghPuOBk%@*5 z9Jt<x6Hu3q9Ps__j&xgFIM2c6e}pTCL%Or_<+T*YbT6K1rv6*PiX>11}9|E`Qg< zTwe2xKaYJ->G`+X`xFIFG5918TW$(Et-gLDdnCJSm#7}{BaAW3d?VnOJOSD}ZGStK zT&kL6ofEY^O5Kkz_%&-};P;0->#qArerugF0-mGz2KL%d4>>8&wdR!9!<@AD*7E$h z{;PdnQg?o_=GKb-kIzoUllEixgr^&zf2~8i&p0@1tRJ7p9KV|~$13L3Rg>L}jdkKi zUqMhll35!)5C04pN%kk#kkC=FBH%a9mO;mmmp5L-{P7pmPPJ>4XQVaLW603yp9-Wt z54!0334?$MCa4p zgZ<>zNs!&>$8J&ls)D=}b+kyYT#4`p?du>}YJ=Wlb z!IE>pV0RDn=hn;2Giz9>^)jOs&_fllSqN-^%k{lE|GXbGFc4hl;KM_wuJ3sq9TWz4 zoVN)MbHOp|?BKJNS~78b@Tr0yaCX=HJJ2uMqp7+)-`+z$m3R~y&L!U|S_K^~)Nk}v z5it449ney)Xh{6&p&<(zQj8v4HP+9}b?DvJhtgX*?>Ef5BIq>n?Ka|$DQjGHJ@c>^ zrvJ6_>~xiWUYGRwz2^M0?)+h`YCq`F8p3hH^w>s+uKiAZ-en>TotI867Y8aGR z{m6~h8cN_v#WvJ_3;HP^8^W|(=(g*hY&S&h$QerMZ;9J(K(d`;13E`0rQK4u-TBFO zqF0+o?btw(&$^}@eUX$4@JFSaOXjQ*x_-v3b63|m!g0^B$MD_4*I zWm}4mjmmM;TX?vB;OMU_9HPThZ|pE8~Fjq=qZ^6MlS{|J#TuEjWGmy7rQQ zSwqUVvOB~7#aZj%TYit?uh%2jWxJ)wGWm}1>0j#49T#?OL~qPxyq8XpOEKh{L`d8)SR}Trww{JwiKGF0@gEtHS{EXdUOf0&(XuOGp_gLG;}~W-8P}*oP3k) z(9R374Xc1J_}@g{>}A>uf=r7pMX!=)w(j)0bvOE~hR!9b)7h(Yx8hokzVibYqZ@fv zd@enUZ5EvV{`3arG0c0vbff6BBD0~h2peGf`=y5~vTp3Gf(PaSgI;@PJo%=!U4}i2OcXyKVcfEPkI{c8@12@8{lGES1dl_%>)v0t?l^td`Fb_X z=1x-m!i+`3CY7<4syv{Z z$iqn0{k@@sUZLgCf&8?^T$R_b^kdS6d)B4o$WOj=cDbESAF^LMne&|<9hsCj(7ktk zLGlB6cfzXWyyzjyNh9~AHqXd8e8_`IT@J4*cAnJ#{9i$CiB13AvQK0Et~1tH5AV1A z!*2Uf^eS2v&5AD5X;yZl==S;?a0G6rL${)nB<{`LLz`}UyL8LkMYs2$YrHhu%j%V+ z*|2C9ns(`SmU3*N17$_h++f(s|#D z<9?q2$7kph;~#aOSL)B~^IDnK(=x4P_kw%BzLRSg;d>!#Nj~3@Yii*yD?B&|y^udu z^Q4(mosCoT+wQ?Z<#%tfY7d?98)s!p{(J9-sn_7d4-XdZz96{fX~$n0NRDQ2@C=Q- zT@Abk2KYaaaQ!3Kep61HH-6X#Z5&-`%d)uS*h1(8y6LzR{2f8hLO-L(acM8{(uHjE zoY0>xAU?7boFdC>;MGOoU3nLZXX#2DhBXUcFcaEQTqa`LGDguxIq%Xv0>Aj^*P zF4+gQ*qMfgop;%|b8JTkM`w#`xH?O8D?G0D;L)33=8bWxFi_crkSe zy!%a#uE*Y~1HTQdM{QzV>LDu;udx!HP2dAMh=KR$a$tkJ2)|`jzhvb#Xq`9-L+DYs zpDp;W2gbnST)1DOcEYo1OaI_VwdD-%8-%0G&`rX99k>Uc2KV%t#67yg;GV0C`#aR9 z(>}`BB2J%4+}GH+zefEwVe?auEdCHVG?`fqZJWqzp?-;M!0tKuL!(3!Gc@l2^Jd?i zmnPnuYSToQeO;6RO@MRh#a8Gn4jmq4e8(8S>ZKT(nBmaGa+@Y1j3df3(rNc#_fNHa z2i`(|jyt`6U6{5pbiQJ@i}0^H(B0!KU&HlQzXK;Sau19@-MDUn)xY5wbEse~{~q*t zE}t2`eht%2o8AXzzTdd+71}75@nz)H^?daE7tHT{&F^D<{Ttq3{+!*`*@28&#ODdx z%rI^G9cZDC{{B7|JQ2~uq**RyzS37#w&@*d`yEE9UkG~e>?5cZ|w`bN* z`-bl4yM4cJXtlX-`|4}WeY^JSUCH~op;gKIxuI{H`_KyZ_e#Di{=JOr9ej-3XK!X? zu$71og^u!}p(1E^6!bg>JqOQppu3JvMBgD_I-!Z<(8e3!S-kYb3dYDD&d6Z!Fcf&_ zLvKakZWKCbjAN&upQM9a-aZa4-vDQ0J-Sw58N*-YPQA^+;;-)WYr;?Ys^2Ca;;nb_ z&y3%!wFAp<%D>edo+_JWwoUw(O zzlmE-20qZT{0rIb%F$_uMmuhXzL%F)E3fMq{sakqw}{QstD^%kPBOYw>?uq2D#E>uA5g4(=P95uVgO zc=@5`_m)8QF8F2`@@oygbuG5mS=-`E*V50~eqVhV?;B2=0`}gM6Q&r^7WPL-|3tAp z;?SL|cMc6ipYVGe9EirF{1$_mHdXD8urhP{^$f132-rEltAs@DY3)df6Y}Sj;j4x^Z zSNo}S4sRTMw1E%RB2X^J(Q@P`wA5LIT!5BZi%P3E0qZLCf#Mxu##s+c-7!jr32(Mu zuvdx7+)j>u94sT$!vkaTEW^wAbXJ4Xv>%f3HJ! z7WRkYdER$^ET3SnRefAE2nDz28{2wH^8&x+-N9iSV_)y4f?YV z+3N78yB6Wb3tS(qVLp`@O*aPM$HgzV`UrHM%}HAAEzS7&6)T*fW4BGC6)L zGI};Lx&j$pg$`SY4qJk(UW#1bTU!0bo#4&DP4L#fe&s>t0MlIHnMa*>)vnWIy=P zkMiSNm-D=l6|%uI9GOd9ZDd9m`K)!SLS(c2aCdFa_;JYcqz-W3ae?eXljqb@Xk8eb z-O}^A?nmPJy}n}cy!icB|K}6(``%Le2qeDi(T~m858ilPfm3H={J=!h7N^cesrGO# z>T9n}7~j_y+RGljGiuW~>l+&51B|iVBU4=ca6{U9k7DHET`axq>S*a} zOZEA!>|h>av*U=D+G7G2S_hOrs{wBJ)j&EAsyh zbhMAPMiYyywbvCtt7n!6s(p8GzPPvlBHB7OjNh?gKCQN6xR1RP8OL>OTK}WChfQS1 zIl&i=<<&lCz&LgaBNZ64my_(_^}5!uDm~)VdqybF4F$~)coq`dgjuATtG&I z*Rrm`yd@{DW1el(t;96usr^{j4+g%yS@+CA{~|-C50nnJ5;p<6bhJbvm3zIP!qpkHoa=fQ7&|Iqk1etN3Q*MG?> zWs(fr<53k#xst7#?g<)vqkf!pMLaX#;5=3 z=Lr4mp`WgM^+PUQC(ayxUXctCr$QO$tSB-2$t}4d0k-T5|F!HHQjBA=F#8KLhgpLo5kb7C8b#RUQ4lIK0G^shY4 zFjrH%(i#7c^)8+@IdJqfg8eiL*av<0q7jpJ0HYEchRY` zfm^4e7iYlhj9vM2CSQQ@9%Fu;j6b}bIXHbAyLX9W_j>N99-6=KA*3-v!W#`ZDxQe{JxI{Pi;WlfSMtWG{WU_9Is}-^QQD z)4nuN{nDZlD-=gj{J0I-KpdjFYl#B~u3k7~QUC00a2Vl%!xo*}hx%7L=|H{Hd0vA@VpmGbMz|Q0} z@q2`vxLCQ5eDD0w=3UySlBu@jrIZAtMNZpM%w28CwX=EI7yJQjmCvtyrEQ))DcWD6 zyc5}&aquZRk$syFUOT{R`ks^>>`4(%sb4#%GzU3h#|Ug6(~e6XRi2aA7A5EY7e6KT zmv-+d?&Ujci{if`hyO-(cytZ%C)w()(4OKV7ik_ttwbC+Y)8jG3``#( zrqv29xb~f3iw(s3m_OJGY}LaW81qID1&U`$y_{_ek)T zMcnbj_K%?R4r*QVU;Cmrhf2O7QyBNT_K$2t=9>5xwC~+N;=-lwEc-{k&bSOcLm#^{ zDt-suwm5zjxdelQS!r~8i-Y_0{UeHJ^oW1vy9L_(r1+2b`=7)Auuq8p7Z}5T7ylWb z0RLb382BIf3Gx3QF|7#vgm0SO|%;x=c{GZ%w$3JcuBKx4b9%G~m8C@Z}vb0#V zsG0)qAK>FWsWO4ALW;oOijobb434^RDf>@~-as2sIn# zVed*#OTT6CF6tGXTudHV3GaG^*b)10s_S`IW~NnL!*4O?{5SQFe=t$jh+v&Is9X9(ELMw{p&eXeD`mBe4Ye^IJD-50e!d56x~Nt}r~) z*HC}ryNBy5t=Ig(HHJ;uhE8w4nHtIDJ53{Q;q515(eQV)@40~ImA8^UzX&)LKEl*A zNS(J`+vj)6@c{;c<6-mNzJJhj|2KR$a6nh4?=KkX@Q&B!{}hz z|8@8!_E&F9t%E07W^C*ldyTOx-&d_Y2l2`N;y7n+#7nr|>e$*#xfWt$!Z&HQw$ZWo z_3f6i*xCm@wswoLwH23`&F3X(zP#MFwVl2c3-s99roR>R=gLcL?M9ESeMW!A#-uM} zYtvU7_)pr}(3Qv5Haam+G$K5UmKjfbeyMG1BP%2`wB8~3ca8HG>*Iw%TzkzmZs>3q z{O0%@X3Wz+DGcbVCm2lpBru>a$+ezgKs>^+3tsM%27_^B#rPYOBrjbU7{6<%&-S~x zdf~wO_gQHn&jW{^?5)Vhq=mnn*G&sO*-qa6J}xcXod$>4&{Esq@W8?N8}QD}D^;UD z&-Nh#p9yN6EDHTZZ-&PBJ%SvHRr!s-QU6PP2!5M|y!i{hv^Upc7yK>0E4ztjpM%Hi zxUNMPHJ}sL!yg;LUlVls5b^O%tY2-zkADO|{!!M-o*+K=6zf9IvM%&oz`XaCUvR#{ zY@UZ#d-PYJSII=tnBoAR++WEy_T8_P^Oa`f-4`MT<5X}eQ7lCMTZ8`?Lo7?X>tR*^D|7W0v~iJb-|>UwZA)4=jS5Jy*#!68WoS} z+;-V&vg`D$^e#C&jh1y)@K(-L36Be;2@k>SG~XE*r~!9 z<2H6G-;;JKZ6t$N{mQXZ)ebvVHI(R&`fvFm(Sr|}9H#A4&vAYfXCW$INid3Fvk4|@ zCz$A}{5C_&<&JMl|DvIJ%GKj{eV^m`{tffpZZq3+|0{fV`o;swod0IhP^9`4kH)r&>nzM%Z znsW;L&3Tt)G?y1plNSFk+u+R#x&8lKXEk8!#TZ{c>m$33Pp90TyPj0O$(N8vGINh|GT&q%ONB$ z`H|gqG*@nDXP*10pJ(=f5o6XGhR)D!tHPF0UJW=_UXtwJE#SKH64q?V?-x9jCw1`! ztTT*aE+xd9@v)-xAA?p*fAqZ>I4B==ht}9j0%m);DOcxyavCJsw*Z zbo+l=hf*BWowN6M7k(>%-zq284xA4bZl9RGzI|3WxqP`&c~j&NX|1i%z$UBt>(>p(&)fyiWx#Xc8u)dsm54(>^7HjrVE(Y&sEa4czuR zG2|K4oGA1KRg>p3_F08%z)c-^SPT9d&>@qt0iiY3rqB1~bl!-5>3}~~A7C%M_2MO^ z%`XoxYu-P$yg4?oS93hScXP+6KF!C*o!7h<-ij@^Y#M+TMJuyn?=)4O&bj7n?`dNk zlA+nuxIU6;{cJbuteQ_Q^EzVXbUu&nQ%>{?eX<)e&(l6ZY8>=HkKZ2DO^;@eBXiJv z3_UWxT4=5ndQ@!N&?9iM>Cw*lD*?`1;Cap8rnmgiOb3?iaXu$Z^U+s6)}R%msPxE( z*Qiq=U4AZnNPb0-hcVzk*Ydq))+CJ0j68-OugZhQfW7tz%%$&E=Cmfj*@V-W$8_c> zK8Ihw_w&=HzDJEk9Ow7sUguNukhXV2ORYRB+L9bF@PGy+*Tu(%*SU(lxIffw#KtKjr88SOd^GDTQXR&)9Wk*DEJPH5V(d zhNmP$9iC3w8n%sT@a5jifo70V+a0+5+>uMReUM?te~3H2U6+*_|JlWJ2aq){DGrpD z`wxCh9B3)O|LDD@I-RKroFk+7A0AbVByxbW()evJHfs9w-}gLka)aTuD7ry;izlGx zIP~ns)MQT_osB(Ffj?V?Kf6%*Cit^Uq1$JXfzN4v{m>8n9leodd`?&IYHz5q*+=n? zF@eP2bB^^}IlQMgAM6#gW_~B*UP(X5)>hRn}`Czz2r@ zs4MN(U{L)(@s8{lt+$$3-JQTZnG;N13ux5nu-R5(#p(B(0)2_Aqeo1gA!tBrh1tl7 zBV)-WLXPO%=|w-e=g{@*LZ>c!<>gbCE$%qg#rZC)knxZ74^&@v&$>hWzeF9QAx>2#| z&K&IS!_cVs(4nD@ZjZ5u1U<*aSc^vdcZg{AJ?N zwjR^EvRl_IH?-ngc3eVdBXuAT+u@ZkeD@gm)OVf#qWiK1s?d-6P3LxyUtw|$^uOe| z>TxT+PTY_=TpRos<{;XSF9j!z+08Z4m^G(XbU|MK%!ZL!_Ba)PzZ;oYfBde)S&a2Q z-fypg=dl(kIhYmtycw%#Qlk79Q}0gj&n$Il}3 zod?1i4OE3ZmpZ)NOp#@@!* z+ZlTYV?WB+k1_U6#(tc!zronwWbAJ-_7jXf%$Or)%>B{(!skcJ-+zPr-Z#_cX_|&O}nQ+y9@d4EV8H&c_CSpd*ix8m%V~4x@Z5XpX9b0Syak;mSoYQ=6j4R z+5;UMSv1dQ&cbPh7yCogN5pAsn#&E8AlE>(v}5TDYC$v{ka6%g8pR3xw7B|laqIC@Y!rz7PKvaUM7n-?YuMh zo!cE*Fe=N)f`gJ-YaLmTjV#dKbypU&8`{YZ-AGQ0auKzEW~*eu0bu>A_VW`v`hqp9 zlJU-AymPVdM!oSt)1IrbRc-~=%&QW)tTPekB9~YAtp~!thc90zCh=*`sK1qY&tk1{ zCTCBKv7VmaKd|%RF+V)Cue$lvE-QOUA@Q-ToaI%(al`xE6eW&7r&RcwF!vQ_4E^R$@TP#S**=sTms8|FtCs-mB2NtySO;eN+ps zhsmCY$F2ePVZ}nL0*L_lR(%J>XvXV)ziyl?`iM9=0=@k$WQdECvX6+9oqwZo-Mysl z(7x733{HFlty%NofgRNRtHG{WMI5dUde^xuQ<2R(tc%P!&^~evMsRN=zl{Pfs*=M!enp1s$4)^lIade*b*&_y-q0@^Mho*;YkPltQzo2lLV zXZ+1{zp~B6;h(7S|0irj9DDWm+Ub)OxzVaBr_pbhJ(~U``wZp(e~G3ZTw8$ajO71+ z8Lp+kRp8du+D)yqf>W1d)Jr|&iT!WLX1bpKby~lF!Z$jKZ}hkLb>g)ozEKL_Nc9I& z-h8&y`gG}i{?OOwpYX?y(&yjmOB(*B&m?^&=rfttr~KSz*JmzPTnoESu2AoMWVs2S zc{e(DIp1$*j&uWaqzTNCCNM`rUw0?4f6MVpCNM{my_7wyWscOq90}ifw#ReBL|b=X zQh|KuA6%P}wo85E{d;9nzVo)X@!d4Wbl>^=r+Vr);KQW(&eXt}5-s42N5AiUaP8^7 z^S}6D|Noos91G(+5BMTS3nEz=@n7H@!~dK3_hNwCl(&ShsyWP8xz1PYeFXO17lY7x zrt*;$i+F9p>9Gi{gSL%}^#1PT!2a<@vsZHP{_*5Q+NGUWIS+Z=Fnn>|Q`|2(G1B|4 z*WRozAyznswVeY=UMydG8g{PM*tt-*_6$+vbky|ktU1`$Gw@6; zeqpWg3q#!z?3Z#5H{G@B;HJ-PHSHA3rs2!f8eb-4>i!Rk@3HpS9GvrWPi8&{&2|s? zY5NPdk2f?^ym~$SZEBj!cjvpYKkoYmpNuWZ*iwvb#L+kF3$g}$poz4bz>aDjOP<5g zg39-uQM+cINneUb#4_0xiENTIN85;nInb-Y9;(m+$?` zq|@WOeSdNa+nDFH@u?WjORQlFKYm=4gLBo34^N*!Z!31s7o_2<38|2FTMRz9i?(kfY(!V86$YlHtB8=Zo{9Q5$DDsNTEs z7yGp)TH~X~GT(k2aADgVz(xO=zGd*P*7?(M(F{EO??Dg2Hs7U(`d6KI zZx4?jhPi|3(Z7eMzpWu)P@VU57#h-GP%e)8-ptr_USgSiV{B&KVOoPkN={}cEoS7p!g^BU| z>9oqqjiJ*;J~}P+?H5|-?iW%Fs@TfSwzu0a@o`|$I=6pJ8n0+IAHO}FRyuP7`89C- zH8>zU0pC8OOmO&fq}~l3N{}7JYo^fuyIi^`KU6jOMHk5lYj}n(+K1)QW0{X0t@m*@ z0=O>+_j6s`d;JLal8?DYKAhOa^ke4+HczD4-Ma&<+q4Jb#kIZl>Gzs4-1|@NiC)s7 zvV)i1ZguDOA@bv1DU|*ksE1z0{LQJJ5S4!|oAYh_u{d!m*%HCqIy%z36n!CIu&9>& zRp_1=?evZ#KHG||scpU{T2ookqZ&^y5trOl?L^l*fw~nV19f}x6WcFz;8Q2&^`jVZ zIIp)}>tjJ=RXW70AER|y`s_`i?@g`)-w%@Oa+vRWPCB=ic+hB_z4vNJc@d+sxGpK1 zU}(3GXQ>msS~c$VIaf9AN0HB(#OZC}tlGw4~)4Vlb*wB(&> z&mPL~?8W5kzlUcpPJ8xnhG&7H>k1c!d)@xKGdxHC3om#3_nw2PPa6|`cTINt_MQud zPJiw!+QVKF?4fS;#X}%=N@i7Ah}5zKi-Rdt`K>xnDDT;F*=P2S4+eeWtwOGldEAx%7Pb zhR+l(^{%&krm(=fe(E!Y_y$uF_z&VI^X!wKG3`kP)Mt6UX>VIu-RQz+@sZ-_=D>-S zk0xeOyAAv#pKzkpoUP?lUmyKvtp(6lfU_*)y(=GO&HjttZ+b3)-k$DzrkZv#J@WzI zGi5_ObB*trF=fjRW@_g$-!qXRo+qw$JHYoSpbSPf6K_;?}$PjLS=a$fEhF7Uw< zi&i{Joi2-u#|CgQ+}Cb1&yeFVfD4|}x_6fEnKHqb;hA1yU>;8W@acWQSN;nhd~1P^ z`!52YXBU=aX?+HoSig3E!N}ppul4ML;nT;gF4DQK%Uu2}tJj*K(J@C$)`pBMe9zbJ zZM0k9<^^N-_7{A5?CI@p$k6Ty06{of|pvGf;S<1dgJKR+a>j)YGlM@!_-C>VUg^@LfVXyWM!q z3$#=6kxAwZBhM!?@?JAox9eWnN(-OHi{3t3GA0!Ll&{?!U%R^nU+bjP$NhwD*Qc|N zmNods9k=72M!Uwo)>!*G3f;n-;^}OC4v#z?GT+Iu<#R1{Y906fo4gmNrtK*{b^ipP zvahnOx6C_H{~p(_dh-#xe|BI#IS!krT$AzmxSETo#zHwZa~yNWZ2k^A!Nm!Dmf%Mt zg%kMG_j115Tod`=I!h)L%l&mv{aSRCcv&FBcgT^wJF{!Ry6?=4d;|C4Es~YCv*hlH# z0ba?Za%qylTjKgn%99mr(x=Kh8VbIX6$9}7_8$!2q<;W>hyEYH*8m?BK<9DP4hiwc z_r>eLqt5Fb&tDkYj^$6!d3057s^*QtZ_n@Ep1x21e+b|HGk~w=4B&eOoV+<=pdR(= z^I7laOvGlLTSz|oyWZ)YyJKS_|8=ZqkpH{L?c+80=iICaxl2y8A?w`kz?*%uUmxd0 zM`e+}!*3qHzg>TCUO2eF^=bY6^FOw~FaGh0!TqgB>+hfb!To*w%EA3DO6%_(|JeR| zSETj#&uRUgm}_;w8Pm_`t2BP$>?`f}z^<(>Pu*4+kX}OfB=O6xzd!O=)~S;ZRs{o# zQ|KklhrQoMpPFOt;}6cxIyL&iC;Iw!=$TRy&!;te_Qdj?H{bfH3$OImAbz8cfyZyZ z^YPo{4Dep4t)9^1h(gajXa!dwWifO1Z-Pe*b-^5 zt@FW_8)W83IZV;DPRavGQ;D%L7n6p+7C zdj)gA>Vr?PSI%#P4;>vWt5v7L7cjE=R`BJaL;d#2=!Yz42exOs$!Rrt6~WlN-?)73 z#y+?E`cB_Z@fi;eH{O_H%&i{IQm+1ZV}PD*K6-W;eU;x|4_5FT1)ezi%EVg@-+6hO zmUp5?Eb;90fkf0;Ihr6&jI|0{m;@N4NmSpVE5`qPi% zB-$IMSgUw5LhiYhhXEbZ&x^qGd>TBex98U>{`I*h_CtVb-5~4Cm2*VFrG?8h(oaU(x1MuKu_Dt}!OdPShXs#n~( zfE0On9pu~NbLZwZar?+({df^tQcM|>N;gb&w;n-#=FNcbqn&*vz^aJIOD13+1%cL zJCt|yk%N=}@}I{W1I@>C!9gd_>i66)L>}$r-9Fw+@;%i=U$SpkSv)>?lQX6DN!q@~ zwyQI=<)7I6yvWn}A3bS&^^^Y-GPyB*#6eQjjhL5Jeee|H5iRn=Upih5y(eXlnZlV5 z2U@wWxzY6S)l-y1r1_F+87aSOB6P{+-W=9Ukb~K6;57wKJE4ttF1AOHuR{;vRyFTB zp@&!7D9Jmjci90wbS}0%zb_d3^cm114*nxPT1t z)9LovX5iFW5;`w1yPtPH3#@Ixs51&Wf%gc!(}fNZtX;r*1Xv@6ZE)6OI()|<8NS%L;UU0%fsDGf(M>l@3z@rBZaYRjX-Nj zYNvztbX^SZvKQ#U4LQ{Zv#Ajw{_3k5-q^Qic#rte!M81k=Gr&Y+3ZBS_GCpTEi9Po z@J<1L9gL}OlFe6DzV=U`?WS*hHgH-5!m@A1v|&v-)n7WbYieQfWkl`Svl za-L5px25Q#&anz~<-gFjuGdqawv9g8>Eor!f~nJ?$rdNj((zFzdLwj+K$nMrWn3W8 z(iIH0Og{C{D&@E*ef-ol1HIwqwtF}U`S?j~cg=uS@Vm)xhfW>PDGr@fN56oxhO{q1 z^(FT%8Z6^)MJvS~MW-lumF*D!vM<5X3HU6X%v#ib)$Tfc((<^;k%eB2aji>xoAY z$E9y|%RcCv6Uu36aOrz#&>5xcta+?QU5`F0B?c%u)7MLtCyTj;dK`BNZZ;k+YKGMpmis> zku5NGz|cCUuG~lKnSTSV{c?H18Omh^aGi-<2GZoRoqV5ux$HZy@%qm=@9bNAeUJ7k z#aY{|aAh-hH?p}Qglvv8vMKsW4vOAJHn-eg{6q(9fE~zY$El?)ow+%6laS3Smv-B- zIE$0(x&KODC^YM!kG9HjMmD!P!Il8@^2_FBfgto6*0LCS@ zukto})WG%E69e>8n?vc*uhO1hkNW9#@)p;2K86odYU$oU%LOxLA4 zhr_2!4PL$vUOd~ZwvW7pE-m)S*WG_7y*_w`^r|~UdQDEJ7dcdtFHfhMJ+{~2D?ORP zFAG;4kL>Crjz8cl{p!QkPwJ~0*?3>X%BFG-x8iJex3Rk=|-OSd}P%z zmTh}G8Eqyn;!I@poHL~PcWBQqqkdoKP^s2I&~TA{YIzK z$KR?`n|RZ)*LO zfbmx@&)~1f{&{DPd-m@$;6yTFY#?n9?XQH9E!n`J@lEspPFi)%ACN8WecjA_Z9;hD zlyY}YQ8IW=Vdeh}>2{E|C1+|^e(VH%kbU?sIh7Npo;=@`v&GEeuA+{~=Od5qCBDD! zf4+6F<7c~$FX-BPeBygMk9XXE!xJ6Ues4duqD5=FvX_&f!43F_yMa-2fE&Q~Vdg&; zR@K@z`*01cd1nagmJG0VU<(ARUDwTu`RC=+PW4^*ig=81_<5`y9y^?7vrp%-8{n~Q zm&aBZ9^32Vu|k)}mXV{sS3E`^?eLh!{PN$(W9=Du?8P3}CzhW@+e7nM_8=ZxA=~TI z2VRUrvO83a<741e^nctpHyMdMdvlYseb>W$*E!}oXy!5@-*v!Ths^yqXGfT-$bz`>y|FuI;<8`K~1on)7J!}L!YMqoJfDJ zbLxEj1UCllozr|1`RmsP9Oo?lyniO%Rb%VPJo zaXImsh3@*8o>A;9&iqS0!(}G+7>wQf9OJ@2mHjhuDf;x<>8m=ck$u*yKfLsV=vQD} zfZYjVSAhEnFdPBaMd*+@#DX05;R}}@tQ%Py3lTq<@3ijHIS!gPneV`+@AKWYF=8Iq zdTZzJ{ZC+lPp|6ksb^p4=UT}FDdBvK5PL6cU%Z+<9JOmIMmDVR`WWxSM;y3?lRO_z zv`5?muC4-hd;`*H!Pz)Y|spOR*Kj*R+RS zbq=biQCo>D>+FvX=|twy_)n%blJX@@jDR_*?7|Dlt<@-CsD8e*q`U|m)Lv6qV! zFSF+WDz4$#jQxK_o_S7j4Dk%PWW7n|)gjKxHRobfK}TTx8nTn(nO54a0iGmt#${s$ z{I4*zx8k$dYfr7*exLRhVBnse;}WOjyV?8Ay-$&o(nh~8v0g?_{(*M-d8u;#RBY^$ z2x~(H=;wUkooj4}(?7?vW2IglaO-@h^)3wkb1M2bu_^TpZX)!f`Z&5?3fv|>MK09s z`02}86R9Saz6qXNO0M%V>R8o`v9+sI7cDu*%Fl_#_%1=7W&OnLah?-#>vGtdO6Nb; z%b6RDE$x1~9+2EeZaZD>hr6+F$@rPX*KdQL{Od_-cNp!SNqpUF-{$*V+^;)yCaZW= z>*v|jvDtg-@PjLmCDTvP=2FEcinii2?O`9-!{6|2oo7OgGJcCs6pgE%{<(Kfm-lXt zgRTRoX*yA`pZwJ6IPrAh&wRM?Gf68fWL$`&=KfmvN?9Hes zHJ@`Al#(wN=vKaw)+H_N*famL9_@{ulDd!_GjNnZ_XbWiJSf>R>pt99-(IerU@dzx zZ2C@eT@ty{NH zWuX09C)^T3N93!{x9-tCd%C(85ieePR`o&Y4y^;PGx5q$tVr;%eiGt20}pWJ@LnHq zR6Wx?IdJTDoE`b}@!9_K zFRZLdSBVD7$t@#pD_twvR}<$_-7fKMUK;+%wOn1%RIJ?C)#c9@_XgZHyuAoP+6an& zXhZone%cv+e07GApSdkFdP~4z31gNnZ+IO2Mm$ORi7(UV+6z=G>;2KC+UF4oN9)b+ z?5*LqUHs*{K9Kk!%J0uGY5Xy0ByBLE0<5x|6^|d^}hH6( zBRr@!Vm3A<-=#$*^sI!QI)gyGX3m;pJYRzzm$H7UzUI4q-A-SIA6-8{YYZN|4r2=t zBavL}LB3@xEBS7kt8JCWR7hQVK zb?NPgU2qDwewm&I?gVcq`rGgyd?3A{wes;!R!d@dq&Ep)NPmpqR=Y;JU^y}vMh{$y z{@6s`iRhFAy>i~@+b()db3%2*m0Ki--hQ`qx=m6p402&(n}cy|{UBRs&=0@o7YMf> z@Zt8m$cQH&uZ$k7A7!6kARo&=X6ed1;IjZQXZd){+oLF06*mkSouM3D>5WkAB>4u? zAHu(Z%d^q_a+P-9)y011;FuqwWpVH&`HDWzkxohbHv+kC%?nfY3=Gw z;aIsd(s2)g--^n4Q)`(=$#0aODE({a#y%Xo?@EU~N4p*lH0}%Baqsi_bDn-$2(S3Z zn>C)CBy70!?Ob$m5T2?+2G0f#(Wh*KwV&l%X1H@FYqRI@%$MP*68ItuIEAYu{%98b zs_|qo9`R9#_N%aQCA2qD!#BSAm;K`j#+IjzCvmH#PE^`9Jnlc*~0l#FU7yu6rz3x z>*e2N?8C#6!a0HAi(lrt$r--5hEJUfB>yIy7b$FVvX-Q{ZaS5VGmg z+YC=02F4cP7S7NI24~FA@m)eK1^l54TWZibYtbDy)}E+0`_Q3*<|dk}2zJ#*HuE8P zBnKXW&kr=w2kRlTTj@i*u5)`O`$ z-5hYX&&g?N!Z-a6Ijz~qnwifCf7k-aXr=3SF2wIt9J!x<{k)RZy_L9}Z0R^Yb?&nC zMGm}^>+;S`PIk*>{B;NOTK2MT@e<=gr)~4>b-Hix%Q>R2a-nj_p~)i_nQQVZE~5Xo zal~e@U5fF)0F3*fb2G5O*L4B%O^nRJH~H{UC7-*2=O)K7eGjK^3Ut=7nHj!Sylfb8 zv*D%>8^g3~PUxuMmh8do*cE;A_%*A)kvp!3yotv$MHy$wjK^;my z?=#o-oocQ<+w=vlJ$;%ebqb|Zn?LT_lF~?_pMPGVuAHBL#5={rsVbS%K%4#UoM6A^ z1Xb`xF|w3`Hxk&HBr#^`t5#!+wQnc{&u7QF_EUSCz4PLWW_)q^LLKm3C;m_V`d88JH`(;b+J-q-z6f3R2l}4CIT+^twd51=U2ENvakXDSK8WZ$4&7w^uhaXJ zeJOAn)|Bw)@Ylw;W#`iCBcBf)n6vJ8=dA3r4@Zxz9@#F3HbE1iBz}Iz= z-t)L$jop;&`h9%Kuk@PctlvNB>JM;>e>*Bj+pRpmoKNi!w0>APR))Wv;u-2$*ZJwA z=gl*2pF=(8eRyNCT3Ab{`hu(TdK<*Mo&oB-2P;- zjWs+~O#CIgTfUH|ldp$w;nyh|o9p{-^X6aj$>r}abLTWK|C_6`=~Mh_^efluOTLwB z&-&k&{?VK$JZMf7jy+2|c1|Q;*7ff_zDD2n`-JeytN-fCu;!E_BE9!y@F%*Ae>AW^ zR5(+;A@%@Ty$k*nM`}PH2eE;D;GhB>COMu2oodjbt^85%55TGU7@uqZ+(U!oIhVux*4NI7%|`#)xoaqP6W9Iv3fp30 zwT$<%wDJ1=K?hhf#rJHzr2%>I{Qr5>6$t?I(mZFo_D2XGlJnFs#*QqRxDB*ZOy16k zEIkD8TFnE+@4TOn4*U@^u@2ux{8ZlJ^3$u-0uD1L)%?%chH&>VK3CA!O8UZf5I4;2 z4!ZFj&J>*e68GAI;g&G*oObNha>XssrLw&V=;7rQD>q`cbiMQ%xKF}o9z58omgUf3 zsbk`H{rt8pWap5zV^n9v&c8<+UensUjivi#q=7cPxQPFL=6i$rRB;jM{a?_&%?-$o z{fz5F{CRYhuFH4n`Bk6)@(@0Uzdnd^E92-m>3OYtwKLW|jBzY~I!7e?)QVM_OPd;v zM(+}1g1?ost@=Va;5!#OHIgGbhq&6!;CUGKdl zLyI?-8{a{`b~ALg@!Y)F>+q;*q<3Lw#76~zK%M-Mx!B28?#tGl3%o{$!bgK*2>hOj zKC*Yq`{@&oJ@XmXrkKNq;RVrI{zYC--|PuI7epUx93Mu93+|WUEsd{a+e2$oz^?gn z@Qs>Pn)hm+8wd8JYnNYgVOJbV@eIvtbncVp#}Ow)tj<3#bJtwJt=(r3w6?a!yPwPb zaBLp5t>7;XZ|ZxQkJkM<3;#fLUpITO-qMNY zYoI?5eD`~HSGwN%AL2_g4JkR1|X-&b@)0syMdM>(Y9OIh@ z@7p!K5ber;3dD|+pP;z$Xnr^A8;oTbGOarJH{$!}267k=*V`Uk(}~{xFyD`mtJ^{D z=S2K&#lWrH+S>5h;(cI{ziH$a97=9KPrNq8ec5fvL`ZVLI3;s8y*?mwiXBZu=K7pr z-FuA84M*nc){F}bGcs3-%mrEN?w2`qi|EoR*`R%$0U_LpZ_Qp>BXik%VX3DJ#(rEBLc^AvadTb$)v62zh(ymcjBy&b*259xJuy7w2)V&zmDI9N@uQ z(2KV^$e8eeZHJEfp5VULyMX07cxceG@UM3sfWN&s>w0?c6><+Af!l`?i0G_Z43qh%?%laEkGY zr=|C+@qyBLTk~%5wr6)g2v7IZw151v!A?vz#oAkomxs_z$^#cZ1-s@znP4u829ACB zMBnTcz$gFWL1aXDJPe=K;A3|@)B}wd>dWTusU$8 z`7eDt3QqNH*BLqTYbtzxav%020PlApZ=FTtf*2mxx?FDT-h zL4}RJ--Nzb{KAXjC$JB)T)kdeU_U1<~Uh9}ze=n^KL{%qHYZjeGr-x!+B1dE(rjZ|ezxt-V<=|}v zc-zE$Lw@zy_-Y!{{FQc0x7W<*UCDSJ9AZ5AfxJQEX}b-*fll#{XK(s==(p`Q#&g}^ z@vLyi<*5hL=Rk zrqB)De?V`F$M#V3O@3=BpOfGv%{Q`luUK;<*PY1!rc)0h|KU2|+%6j;pZ!C!C*Z{N zt3F(Mgs*UV^BGIn?e{S4u0yZL&u((EyMID0_8h0@(Zkr=JGkCMt-C6Cx;6Our)!*= zHB~&nzPVs-7Z4lqG?)hr zf<<{6^B8*-W4AFOcpiCahhClz(&v11(o%S{8d^En8{Knb3;X9HYx%$}`siKh4pX-R zUvDh@sC-oMzs|Ub|1M|B@-$hhf%m$o`?L(+`yTMMbKNi%UBsvK+j6(xNLs%O()v~W zJc$iYEZ`4$lniD`9u^?q*cQPM|5eVErD^>yqyJavYdQT}8y1c|3>+_VPwz-ZD;{z6 zPTh>Z2@fg!i8ky=yaha9GYlTE3v2&7Gak0kr|@tG{cq&j^u5paJ#Wv9-T=5T@{)!N z(Lj7E8fbnaT%_=6TJbNWSDV%Ut@MxYVC*pCDnPG=TwL_$u7C^0cd~$CCNQMifc*Qz zjp_GZfG5T>mzV#nIm!!D?VRHUXgCL3`&sVIq|L*8k0bAcZOUL9(^dh@*j$bK_9yJP z7c|T;v8!_Qf)~3IZR;3QHU78qP=wc|=pM}@m%94L%d3)pU+U_hWzs=>A7#cCdAhna zQ0RxJ72DiafnN;Y$p-8O-_48y!7D$;PKwqyAkmFVj6y50>4HV z8eR*>jw>$#dih~Me{6GOsH+Q_!_jZlp+m5}qGLHa(dZHM$?eFn^x{_G1^;mYzHC_t zeSprAjTy@y=MECrdT`ZlCse0-Mx5AASy$gq;cGc-Ur*1jF0 z=Z{l;v(5RU_-Reh@+YimoPaN-yBiD+!?ADi`M7(%hR>*bUC-xN_!BObi=nykuRqFo zb0WRJeIs-J9*N8NCIk6<8ds_&pqdL)iWRp7S9bocJV>4Yqjrk!i&$_8We7Rk_$(?rns;f{*0sd#?ZFb1roeJk+%DY#j9-_3$<2b6&i*&j1fs`EcJKqhS1^!@VvYOuo(t>_`o3pZJN6`_GF{Oy(SzLF={efH$cZ z^ZFmap z18%#&_qDrJXZLj4Iy6gFx7TgA{7Kucm$PZweag0L+ARAZv~gmieeJ$XyT$B52rw5f z))^NYFEh0d2etcHhIZ?H?XLZRX*cX^_i5T)H_-0>g7H_M-tO}m+HLZ+8@KTONqGP+ z9=<6&xaS7!79Pe-IlbMM4DG(^Yq#t}2Hs!!+FhY`-P)J5yT9PUb5C#gP=8`Sf=8WN3GvuiY`W-S7I^{gmK!Yw;&Uw|W0`db`hLXm_Wt z-L)3K^}cqe(QY~Q6T}a+%NbE0I=$VR4DGJ;wL8Z0!%|Zttqz^tni}m*m z@_!R+CVu(X`ijF`OYsmduKvle^SIGl=*5W6CvYa1+Os>IUTS7CPsSz@)9%;Z{=Osp z-XD8(;qi35|2e-N7rZwDuYX@pru_9|d+h$5MziKSa2~YI=2ISA2%Y?T#o)77KZI=S zjGLR$QC^%_>zvYA@hW^L>F7Jrm-yTX*(UIjyi+z^b|DnIy{E4}MEs_eXQnacAm2!QI2}*jyraA@Y2oMuJfVKqkEHKh=GffV@51SLezW;7@=>6lvDa=qy)*;v z-FtrA8=SlM%aC~|_u^<`MAg$?o{iSv&snKGAvzmm=zhrki7HNbK}wa;fr{f*YRAztmaMOg*WNQq5J#D|(0K zu)*%s1^7>_Q*`K$Jpv1e>9jl9b@Ht$=vVx$IZ1-~Nc%0w4d3DSZQ}Qbj^N)iFKNF8 z{4r;YS3u_(4)YY{6a`}+Lnbwc6fXzadm;Zlh(DhdaiUN7_BAFd@ab~x{3XTpX!3`W z#C&$MRxV%mX5yY|qgSzT&RY=ew3l`-_}K#ewnE4JKz8>s@r>ds%%602t$$rI#r(yC z`!?XV^mlp%hhiz4iTAGshU6Uafn(x+-t}LV`*3T7HW@49*BOh6>jZ-%7!GvePj#}F zRs2&7u0)p``7}7hFE)5)T|+QW1kbyjoVrF}jsg2jzIO+Qn;IUA15RBLbv%;L(bQhL ziaqDEG!E6#QZ1yMe%xQi7*q$T<0|%?&x)`=P_>Yj>b^(1LeG3y%&P7{5mcje8xsz>FVy>}34k;=6Drd0EFeBs+t2kjw8L&;H@BUzlz7juTM!Qf$z`36AP7B#=Ba3__(*u5vSUc0hT1PBbx4k zK6q>a8bUbv->e*R3N;wtIj%g<6!a4R4a8QNpeHk49O%IeZM-S4M%KTQ>0* z*cg1@9j(aHa(-{Z{#?Nt-b<{fktcYlX_vF4fU&hP_T~7U!gCw-+1hEh6aA<2y;Uz( zcE>!&UbCT|)BZQTtKap02k$C2DV?KszXOhUqsL6YUVGTVq1t;<{bJ+P?VhpFR^g))G)jjhS#(gN^N<# z-GI;iNwv#aAH}{gl!GU7g;^6G7^~hmZtN@ zTkzTkUEaWso;GIbjkm*r?Ec$5a}%+4$v|-7#HlHC5Ppe?ea^G-wr%sZp5uhN6X4zC zV&VgP^AD}PJh+#2Irds=&QpHKteNWDeh(oSc98z}XwGPhA!0*yL&){9YIKF|#%AAj!Pv(4#S-$A}*H|yVo8MLvs|0@u z*0kYzp%eV5JTJyQw%-m!Hts@PXt53Z{aKiIp^87Ci`TyWh!NM1J7{p1IG?#ctCY^5|*3`ka?< zKj)8|)|-9sWc}?ID94g#@kQIPJHG<|$@82kZFA5a*b3on7x+)0)3h#?yfs4Kk={74 z2}adJ?%-YrI&I6vJv%#qDN#!Qi}{1cjGv6`q%LBe;>Q!Ct?2o$|5Wn=cg>ylKl&H# zo#(yFq1$4f#Ruu98#wwgXK*S{UA~}x+b2JMOz?p8>E4km*C;;J6oVu9K4Mv9QI_Y1!K>JL$;`7#W zUYEwPg>%%U6XZ*p^c7sj=Jw|It?KEI!@wXx+4yHdDYnXgqvxr!9@& zCw3N0Y-JcsjKJAE$`(D3Oo%SovV@duI6<>RpF- z^WW}W_$ZUSD*ueVDBWjM*K$kc+^Ll4hI9oYqu_^wXNvC-4UUeq#LL0w6vh#f>b}f8*n%+m}f91o2 zb^Z#UzE{5dLX-bIkpJuXw#xBU492q|rNlb5_Az0%-M``ld!Fs<3pU2lKVDAxtKhEU z0`!=3J!d@eJ~nnOF<0jf&OarlnM`TTLwS3_*r_j{tbc;%6UbRL_;%nYGp>F+=i8^` z-SfdCdvnb!O0{*(3O zZEY{Yx2KQU+1Rkd_}69V6Lam_GtE=W`Ca+EI?q6#iZjT+PjRh&{qT74vh!S=H2ZKd z2p`NR-W+jJf2=Hy9kTHsbRy$y*zPRRnHrKg_GOaN%+K_eY=i#_8mE%6UbRbOf9woJng~H zTH%YIburG;Q#sewgaQXDXs>FXv*cyg35EB58#FEuorn&37qJ*K?mg~WooAyqP=|)! z&rAE=|E&Mo<8ATLOE(S32uwX_{b4r)qp~|sSy|J9l zoLgfFvSzv*I&IQ((4-PrYO9?CssTUl&7A9&Loe^Qt<-epw`e!NDaJ26Ngvg+Pqx;% zGFnT0mk_mws`>8l9e-$B!P?8Bf7t@=nWrV->EForS#SgRwKZxY(y7k1_=Ta^_7gqz z@}&d#(z{JQj&dXikH_dj+Dg*a_zdIqXzuNonBk+l{NWmx_MW^P3+5Srcp*CE_2BS9 z{_r=+_r-qi_tr`Td)b0)qYAXL$E#_>_+?D~LYfI3wTq(}x=0 zsBjJ}!4}K6Zsm8uF8`$s*f$cFRBe;B$YB0Aonyn~*N(=H0&slkY6t z=%1%wyU<&2jz~LSMeFR)NP1TElAbkvlv+M5{KepNX4-DF@+aOgXDU><=coA2RM2@t zrepU%um47P)gO-v);b5O?hP!dFmhvcxA-tI0>7AXJBovU=lbZWXQ<(dZ<^ZDu%=&^ zx^fX8?mQS)jIll9|Ak!v!?G4-30E0K{W9p%O1v**W#L;JDFM9JE*(aAsb!S*DwF$bD6 zhcJ8Qt|88Kt}})4nfK1-J>ge=llT5bZ}5U>vg;2hVpf=jq(z^ahCwYkf-i*PPn3sq^LU;+Ljg1y{6@I>hH5K3l9#5!@-@ z-r&Nm+_`G#js6-0_ip4T4$OjGK6}#DrPf~$MDGK}ByGoOH$h)x@y%2CDM56h=4|q7 zCcFin3Vi*wfhV&*M_(NVPxhQ>vmVjF9LC^DHD1iRg^Q=`*r$M@jWH@$)U4Ar(COwrw;IxV$PEZPosq=;YWB9zI=F6F1GazJ-;Q_$annw;@-$G=AZQE@k@L}aqq)F zI9Xqv$DU-a6Fk%TpF{J<@2TzX@yC$kX1){OGW57FP9OIc#(j(BkM_42_wUfDL-9xa z!eZ9+ob5sRbKpS!TWYb>TYZ6SiDD7jyAzDPoMJxPHO7@L66mDh~;<(==d)^47Cif0$#zx{&z)R41%12AnuAKoCnPHZ!Y?rggo+U@5JtjO|7Eb}VyB`p}$mzc-&<#+-6o z<=CFzpgSwc*HIiG$vcVX>C?!aWKJ=QU@ZQdeqVgQ6S*e3kvbfy=Of6rwM(sxy9T?| z3cpnYe=Fn4C!V%yGPVg`)p;fJ7@O9W=gLMs!@7@Wzrm%}f%i~1P4P0t2_(bq`y?~Y z_6~H7Vy0^)!|+x+-`mkWy05rLTMc7HzS8Bn1pEnSo;%W zk~vH+>tpKM>wg9Pt8aK__Pgo3gMKshH8-uVJBH{>eW<^2^w)0cjE|cdzY|-YpC)t9 zM0%e>x5VF#%yFIInc;6CbH}Oi?#bMcI{67`I|KNUA5SM+ezH2b2$%-w^IVQlHTMz}ONXW(1>^54i^KIsMgnz9+--s^XS~+oQ5P0;vzI(7N z2NuC0x|4V|O8l0ofB6v_i}L@|;pk2d@LL=G3YI3GZ3Pcre}c(_rxD(01fCzcco9zg za4hn}aWQkfL*Uccl0f$|=?dtS;%rQJRLTT`sDH{^j&iYlcQmMiq-N-Lb8LdzvLgE`Z9B1#?D&j zb(!!xk+%K#_1k2PYe4S>qF?jj)Ek?BT!Q^lXgh-#E@PYO!T+z~IUle2@p_}^@6xv% zT=?;t<>J-D>3^i*Gy%?&$VD9a5FTy3)b7u^9$V3Gha?+5`@7xbxcXxluKg8n8(r_T zB;fZV_+=|RHsB-M=Stwux+_l9ui;N?&2iumA1-R^o4uTMqvfg-*qjypa&@m+w^o0{ z$bB;XJ!s?XO?L&B6tFH%48D6SIUCf)V;^u<%cbneUgw1BGSUCrF8&n@myCTFJa)s| zuYn8i%r5b^iJLzn-DS`0QZBtm7oFcV0@{erbyk--r%QJ55%76Ec?Z1T4V_+tPSw=n z`5E?ZDB1|dO#b7Y!0Feq>Gnpv;^)=wgirp_FXBzvnU%wB{d47NcytgCi)W>SBs22A zwt#!l|7CJADhwWjZ;3~6-p|L22J!K*0sU|tHlU6_ay2~M?FP=&b=X62C%h%bAhd1F&G4bi(Cd_{0 zcJjK@`LV02w?6$|EBCCA6pWosE?@fZzs>N@FSsY!^Va?P$Sq5M@25P29>YHic7K@M zrFezYEBQX1nT==+`c>MJCN4*T>5UmZE)W$>3!d3`&NIG z=r6l+($sc%$mlWU69{1S(?Gk>hx^ZWewytY0=Ti)Ih)-m@NR8D%!w!HUd@!oD^S1>Hq zdoLEe<$G@h!v|=q+`kSujWsahuS1Tyb}~e~Nb=E6uU_8SIIEy)1f^g3(uacANd?}P5jdY_Uy~#L_5?hke-OoVee!L zeBA=QuThQ+`$|86-NOcyVo!)Uwv4AfcH33Oy&LiG6hBeS(XKNL=}+-C8{;6)M7-v_C;F{F z+qHz^pmSY}cTD_`Hj=!P;(hPA`oHwltIj?#m2F;}zZIWVadfSfshqXC-8KFIEb zX(zFgIsC4kdSYA$^?OB@bDj5o0-KU_+gt$r`d#?}jA6C67NEQu;OVW0x6By$9-n!l z{xQBcyZeV8j)O~b#U%^K(CUKKqh0>BwQnj|&!|8qZCo;q_J+pc*xkEM)@z+}H?S*j zzUejV0|`gU7h>&Ve?@7D)-d+Zn^DpmKLoE}ulm=uN-Zzx`M$n)5mO)C`1*#NLGij) zaIbhB4bc7iNbj4p*E;ib8YP~>2Y^PZfof>P_j{m`*0}reL_4WD@YAbaO$>`K z<(WqCVH1oa!QPShbq@Hu82nw*7^mL^{r=$RJ@w1TpD$tFm+WBt-Td+1*ZS|jE1LWh z_x^`jyvjJ<=g z&%tj`;#VoIr}ZL@UHb`yYkVs+e)(B9f&-1ee;wgT=sW{HOYkKw}fF>GNBrM@vd zKlB)Wi5@tOrqA0kd_ZH+ex}1YQ(D2Ptv?xRX@}1a6T{xh8e$u5YhP5qtk=^ovLYG1 zKr%WmgN)L?WK{JAjEwSK`8G+uPX|AvC!MIjj6eKE=Pz;_lobKtI1Jb z$2=eo9{g*!^S7U@FCZ_kXbgGS@FI4ncjLc*<>1CkzjJ)vzyJ97_$&W#yb3&y0gpxG z!WP(Pp4&(a@;`}45P2Ti{LziPl=_HrY#F4ns6*y#6mFy9Y3-){zY&G^Gf#-ES9pTwGfspA;`D!x=KCj<4c z;NdCXwJ6f7${Y3mmyC!FIJ}f=$Z|kvP z@<%^Q&2Qz|hsjB4qWxxaaQ(eJ_s2kUItMgnI`)4#h z#a4*3Y*U=&jVFCEmRabSTaa~hecP=OrY3gHuoQd6dK&G9ySu0!lZK9XR&_r)uSO0cR0=*9@F91*7T|YX6+}dkw((Js+F~XETcnO+!6g-mSpVubY8Qy15d(>0FQ++R|KP2Jq^< zo-Aa+vrGOq-l~1+>3XR^02o4JPBQ;MIwo49*H+T2-ng1z_7;=K;` zAtv#OQlp*TQ%^IGqE>6-LU?E*fA~X*(fD4{GxS6C5z|i#`n|uO*O{a9{jK^rPM%Dh zJ`(iNM}OxQWWIgYw!!CZoOwAU+jKK`os z1UQ0amc9Tvjo|6oUFPke2JTRCWUXIJYmiG8xHyA z9Po+!j56h8Ig_L1#9fl9f&AdkdrsE()7!NXR?aO?q_8&$^r`%rv7um#>b=>xoUNPn z(cds9fag@Ns14n2ZA^YF*Wg_HoxM4$ZO_)yqb3b=jqj50H<>us=F0M^9mu_6_mYzd zjJE;4mru1ByRr{_DgRY_nqL85`@ngJ)(3=J#=h^!F|=0qqe$j z6Wy&gU#88xOCpDg+%{jP&0N0cUtrsO*=_S>+8lJ>ZBsS#v(F_jp7o0)^vx!h=?37Q z2%S_9TK8W7*8cnawwwF%1xy|Y@Bep~=Dw%n$jdYPhVtUH_6AMAX0GjC*vEX=tIf4y zFQM3%&2=bNXFkKRhsbnoUQwKk+ zLBE_w`oMXX+DnR>8ZMQ!vwqnsVd89WQ$#AiAtKBfIzT1ypAC=W0G2y^?3i2v=s zJi4Aa@0Yiuzu=)H^C`u%OzzA~)h8w2mS-pO4)cc9Hdi$(_5$F<&u?M;*ALu#?jSL++qj1h5T6t2-NE;z z>}e@bY~VJHH^5#gC)P}y#;G0_z3ChDcMI*Ir(zKqoC+S)5cgbUajaT_y=&bfx z;2ymq|4@2K>-VV&`dz^N3f=S0t+M;o_L6snjmF;$bpM2T!3*^BBl;@}WOZvTUh`=a z?_kYWzHH)|p8AN+`JKfzH1%LneTj~1h#g{M)%OwPOY$K(IdLEJuAt(MML$=)JHcV} zt-EI~LI33Vn{$2a+4IIHB#-g^(aFE=t@rv+yXM^aTOInwAI1+Hj~|moej2r43{QJ? z4wRpk0$%bhd!Ui2J^Nobz+2Ek@^-$Dw^Z{$>*-U{_^SdsR6vJ*{)ArZzAm~CjH`rk zMTQy|{#{aWuq|HF9(;?0M?fZxaXg$F+lJb%xum7FiWd3WsD4-V+7mK@}M`^Jm_`olYf1j6CIW1^eXpW zD$#5IA#}Vy|5|dTvnZR<84i06o$9es;;XC6o(~(oe1YqdX7mWZRq)$f@NMnt01Qik zL3!e?>NOum|JGRjdlPf3*J}pv4~^HOZ_&Sf`O>-Bjl!d6LvCJlvc6n3p{sHm1At!O zjEkBWko0gcD{Auh;uVJ*Ydom=9-D% zT~904CwnWuAc?HS;dRCQERL-##cBKIBYpK{IW``t_4On=Prl)Wopw#Eg#Ab*5xa&W z|2E7%mexia9~llUv=2dh!8fs&EKICI=T{!a-??0SAc%7}Jj@)Gb3!-jT6qDw*4a?( z-w$vte|jzQB;RE>vXPj`IYI2bEP4FusQjhIttac7PxL*TLIzUkX~pnckt0w4_UofP zf$00cdZK=AZ_ahCmvgoVy2sQK=e-2)T!X)^efe=@J5go!S8P+AV)$X(T=pj`$6+`6 z^QN8DL1a&kM=!}@l6RC_JQrRSJw?|O*pGf4fesOV{kSc`#+85<&)(j5kHzPX&m&Kw z1@HKu_vA@@-}-?8Ihqg59)G`;{7hVY@-+E*ns&}qe!Tt8jhqRUzTa7XgnWv=!;axe z4>xNTdc2%%dAa&Z&W3^4;I{GNy!m+<`f3kWKQE&*4KE`b zA?RT6xk(jUMdnecV z#9=O@hD!>$Y=!?C7`Nst3mJFOmzhf=bBgJyANjdm)8RGux}EEMbk14us2^TGZ+_6n zo1b&_;+gPg6?)I|`+#m8_BZgSnLje`@Yl1vp8Y;^?(St4Zf74 zjg6^Bzoae{ZpdT82F0;gnj=NPQ874r7~N3)X5S7wW;+KmZP&SNKQhp^@rl#kznVB+ zlKx8QPd2a2*WZ)ynZI4h_iNYNwJT#x_|L=NE& zAU0sN_R&g*mCwvF{)AV@QTNJbWqEtBh;g4sjN6GdlGDI%tIKny_ZCE!K8KvVH$kq! zdj1NWWou+J%l{g5&vGb;-b~+KEy7~u0es?Gv-UZt?^4^hw=Qh@p5g0zjO}|BefRtN z!TU|^tt)?vzYQ(Ki|GCRCEG?tH{kPo&-MPXr@oZBA;GjcKr1$)cG{&;^g{m}Af-L~ z+`G%)4|Fm1Bv*9{A9%Wr_FBnB@a7cSAFv7k;8Nz^n?_w2Wj@j0-Z<`6aPQNZ+M8IbSk+@2bonanP0KvqZJX}6bP#-o9^5EF>_4>=(oe<+q_=vzrX1pdNjHD1>0)9EoC-raO`{2=&BxmUrxR@xim?a%Pq z8)e7)Nwo*By6x@v=n*D^uh3%J&7CPziGfy3oL$m zc<}uoQ+vB?d+#;v*%}V;OMiPI@)T;fpF5~M;9Fh6y{(zrd)c;k3GMm#xxc*^na9_D z{e6Sl+rzyI?meEVyFup9d8g{FKJfHU z1mA#uG3|xe>suh*dDn$TcgEqd=doF3JHzJO1H~rBi5L03n6}sRTglohqbZ*IAm7vN z$EV+aqW*5?Ret-?U;mNVslWbX0Q>g(hQWTkdkys{tRG;{{)}_4 zM0qdx9*R}Vk4@sU;@fObUT^D+DF;D5u578D8@N6iu>tLmt;G(S*b=^t@^%(6CzyZl zyq?X}?%y-;Uv|5e|o9Ur008Q24Ad`WyV*{iwZrkl@-iPL+3z+OM*9S0RR z*S^FT<*x(d3;5i|-v(y+?Pk4C@PkL?L}>1y{a^BDWQT`=$9PVpcbn_S492IszDGRR zzrMHDt!=TAeY*+jfdsHi*u`xHXN@$p#dkBcEsTx5#n{FDKD)TO?ACs}$X*g_7hf#l ztj7yg3pzi##I$R3jS|RL!Kf=uyOM3M9m6|&!p2S+ULn^YbRpcSxY+;f8A4mTAxk6XXEfEeSX!~X9<0l5A=Do;PWdgz zzP=FaqhbE+I_ah0auaod+u)Hld|{n~uooM;_uUqQP6tC z&BQFB%~7ZN`sgsmr@CaSg(m-7bbETpI5_X{+(5gPssh5jL*=@ zXK*$ayad9!@(-nEuJJ! zZ|)TlQ{}gLrS^0F4EA9~BFBQP+a|%I+GrRPIo1|j^7Q)V+BM~4BBtKfOmu?w!QZEM zX}5Mv&%Z`MjxYT ztHK@UJa^n0ukPOtyod4kbBPgF(2ipLCEIG&Y~Whw-R*JDhcDuOGw>(z>9uz&4?IY3 zsD7i`DW{!cCs1dv^^6-s*<PocQsGe9*X6_k&HkxYkqk)>op!vR*EN> zgLX4!;cTHxk44a@ff|8ZS+~>g`17+T2Xb5LsDJeu=Pu{I@$jk}1G#nL9i6|`&7b1M ziVLZodGOINYSNe-9oFO9-E)yuhxO=4=W(6UmU|H~+b(4A4{mIw)XwERyJqFhyQek% zP^=hyncP#>_NNSiyH@6vlFtV+;IEZ=rE(91FX2vj^zfBu=-7?OeFA;dicZhIr260u$aavirQoS|;UC-(#I{3c4k zM*AvrV$H;@728v+LwO~taVXke4D9`Ng&Cvj!0m@7f^#mq%6wuM4E^2l<$bYi*RV0! zb=}C^vux+O9iYM(=QCRB|a9 z6_1J6(&e+!@Y}%omkqh0V>97_X~5^n=X~%ceB6#)QnRQ|`7jmOhFoH|dH8a}-Y9vj z3OT)T-GgiLs3|O&oxHnt%_5$i6Ugaa&-#we9xvj(PVzKb$culCTFF3=S~Jk##CEWb%8!g-bQ{F?Xaf&G1hXoRo*o)?0g20e)X zx*xtj7982~u~X4i-*?WfYj8$(SHfQnoJILE{B@MJFQDx?&e`47yf+fsjf8e1oso4P zoBF_^k&Bk>(ioROw~<-rwloDsc7FssY&+TatkKcIbKt8HZYa37CpZA(Y zcTIhK;ayW3vd&)|VNFT;_$YL)0*)WC#*lxWt@rp|;4I3H9Q!daXw5%AE3f+q{S3>p zxXR*L;p$J=H?3>^5&NL)6!`c(G(F1q6tDQO5niYvh!6l1piPcz4auwXvQ}l@Gu0 zEa!36@2TaTYMx)pdsePpdyH?dJVw9W8<}A&hZu)3Za(`q*~AwIn@kH1tzjn^lk zah4N#PC9HM<1EQ-{?w+wK7Mf1-VMiZxIa94@BOn5-R?NgO*o5vkPE2m}^WRZ7)9H3uh3;k_a{Su1ZZ|IvF z`##&Pd?3wpLOKa+0x>6FuTi)h-${HQ4dKI~bagY$JfJtDuTqp#th^uQ`)HYY;v zTdu?Y%dBI=_+G#ssG{sem8sF!AJPw>Vwmf^<|D~dIw@(Am=Eb`~E(pF1(d~TWL$M zRbgYQuOOdbm|Ks{^*aphGF%JR1-Du~TrtOf&P~J52J~YtZK@WK^7yUX;tye8zM11Z z-T~|S5p1>G1$I-L$ zmtP*aqD8#;6L`_I2~7I5_{{F!gD(&VU&5p6{MmNGv7U3C$5j(T&sO^0QT_it(7(&j zAdBaPf6<$qH|%-`Fswrd#2HI~XU0K?0_ZTBcFJ8kcynIeOQ!>SeCz&9j*Na24gC1F z`I@=0-HcJ!O?>_re?R2!2mE=uPjZp#%0&q>ARFuXalhm`&fix4cJa53KmF_X?`BBf z4V=g9$;NzeDVXHjZFaI-4!<*W>_^yzY-9wUy3W8EbaQ@ZIGh{r9MJRg7dz&?`MhV| zr=7!2xO;f1Gy6p++|ochtK4=rzt5R6?Q-(!)z4!4+)rGe(&MGuk%M(3ZH?BN2zjx{ zL@u8*XiMix=&aBj{GXR9=kMBtKHH2w+l)Tjbbt2fP3W^tkp~WS@>>^l%3~guhn>xX zkMcO{R{bsl&JW`&O}NS`O&Sw9Aip7ZUBj9@=7pwD+8)cfwE5(F{21O+4vEfe?_$0wKXfhlX<+^N zEO=Pol@r~BzqW`^oo%f-m}>ex!&+LBxKSJY`aJ!Y(Z4>+>0kC<_m%G|_}b{x8-sF2 z{QZrg9|ITTnscsmY%%?-UpQryK8x|mny?>>(MA2w0mFCjx%7KAHb?gt+=g6X7tFP* z8|J#Yp^~<9@t@86;OxWrR5yMyw@x~4Jviu`<2)zZkizcNviD0h23H(e z^F_Idhd*!7T-wTjs$?tm3h|&F_aNI#2toY&u_(HL; zjyrAsx*xyJ--+Kf9)1~nzdYPoTqxeigkKM@bKwUw7MB+mz}Is|MoiuOjo?gYsC1Bz z=<%y(|NZ$>CwuVEc6R8x3f}Z&*Mn0q3I@?-lPhQQ!H>>A zXkw1D&fwgArY5WK+r-xum-;53dhd4V)XqK#U3)Zm09V_+6O3N2Vmt)3~t|z&ap_Nom6|Zr$SE3IoFCIF1Q%YN=^20&FJ5HK5)mH%W_T0kRXzbrOz^ z&HMh=-dox_2q)>ipZ7lR^Ddu{*!%2Z?X~{%wAP|d!|iJ-y$JW80{7m2ioXwF@80L= z*(&tzCG4d|_=u+Oj(n+tF1j4OTfwuJ;79ml@ggg&{d^#!{rtr(TgIVxBP$+iiKMsv zab#`S_y!T;5EZuxg?6@7ELhlYK> zu>0ZSTRQaxo|A6a2z;O5PvflTxY{{i!IAg`wVj`h6Q9_Z9gD=j@THOXgzTfXn{B`0 z5cBF}A3e(7N&Z|rNpXla{*Lh{8_Bhoc5tqEg=JqFA*Zr4v1 z%)I~H@gGkazdLsMR{8juikI{nA1gRm%2rYJw9vZ9Hr@D^)733>F z1D&`sHPxq*Om+Ery=C)r7CfSNhHYxc5C19GT{ws?KI@GA`&Y1=-7yc3*Z9{X`_X#G z>*XK$8~VKr-FF7wd4#dccD@^X4ZS(4PDi>;xu1p4f)n@?0{D4e_ek;(%uJXR3X^3I3p!j^SmQu!4d21}7s z&5T)baMf|j=aOw{$F#L4iW4hw{7n5;F0~g~QO-J>T61lTG@Q(;-{IsEmJI|;GAnbu%`4SPuK7~DDiEu+6( z@7wzd7}@Fc%Z~fl>m_)vmw8~A8n@Z$z|+fHrgqJdDXH|OwW+=G#D!&<)38{RVv2dVJQ^yjN-a ztXti+C3I~mc8g*`LG(~Da=qNrTs_73LW#SfE7{zdJCaXd^lj--9o1(8r{O$PO5Q2W zj_Lf710%(6Ivu!(zJ`kI{B`>01e1~ZsqS1<&3Wj?2k1dhBmehV*7fm&)0uY!4HW+i zc~NN1-XGDIaPNO!*P+p8XW7r$dczmLL)W2C_x(<@w#W_f-`4fHv_D1dXT<;U4QdSF z)5Cm6^;`k==pfEB3@^p@u^Eir&<$J^@B2VGdZ#_*mes%OQ`+6FcA@VI?t9yH_exef z_@SfP9q_d4jx(In?q8~1$yDlzyzRR9)gGe0ly*f(o1n+lYSLqpz(~V{H zVuuA8zw9G_7WOZ{5A)uuz$N%kTyIN(3%nd`ah_)n^B#V`!tamWt(^DXkKQ3qt#M1|EF~rtBVVpDuWyshZzVSHTqibY zbQSG_vh=>Sj6bp&#PI@*>8pTq6CH{c^PqTc~>Cji+{XPB8a(?sv@9j?G+P4 z?MtT=g3l=UEC7!dIQ4;3znL>J0ypKheTh%2&*Zs>`wUJ^pBG{+U{LA6#pQin6I_gJ2QIE`mn;{|-!R`{ zt{Cwn^L~X*e~NGEw`_ECL=Fd;Q&CBL&6S0f@FY5$8n8+6^6Q}mowt1~UJh-V^BCvQ zW)Whq*FpAYTi350ZTubMZwG&m^5^|GY=4@)yhrj~n%AycDCOy}vkg7EvU`2d&Ve*Y zUzz+tDDer#*tEvCmwj@QO=m|x-}I&<>r2rI$h~nqn~9AxRkWXCCz)&5N#a-6PSTnN zdhY{jF37vF*N0srA)jOp&n-b8_?+0Qu9-IASBsp<#Gv(5HqR)3=ZCla@Romv=0ZPW z_Bnc9^6*-00(|WN@=WXSbp^h>f2Xd4n;!11rk~}=2OVqS(bWNK%IebjjkUGbUUSXm zU%uJx@OU{q{=R?YIm0hb{;w06K8$C4r@6u3K;?ffFvs#=E=V?60Tb_%+_);iUXKyxN20d{L$9s8 zp1s1oc5)%ULR7v1&(0ToXj@0wtUIu)ZF`ydKH!ZykYRh-&Fy0IeE0XkjozOIjTK=# zN3osTSbtA_te|ghU)64^J*{i5f9BH3H0b0p)#dO_eb;L7%LnoP9-a?(B^!H; zHibv|zN;Pl{WlNZTpn}rvl-vXJ6{F8XZ8#c*ZF?M);% z(McX$a@Ee2IpcEt&Q5$Yja9yh8IOBCg~om_g~onFU%m9BoU_+ol8;DTEo+zK(~P(M zKrg&T(eNZ24tXixP)*rb^CdNZXWYog>WKY_h_G zKIr3FBWHIH%h_P!pH#m9Z`(P|P+}|dm4^9sb)n(g@>=^?QCFBO z{lz6@rZt)U?XC=0U~s}2gR5t>zR}yk4C?}aR%k?L2tGprpS|DD=S4Gzzss1)mqp_Df=3ercbJj+tE?WD0 z9jYaKlfOy8@B2)W9$`Bw7# zRt9xad)Uag6&rs998RbH<9TA;XVIJN zbH_gH;da$7ZUCQ}?{C)nVB9utW3A-KN8x!H^mYLLI7XgU&n!i*=~#;Xq5ftt$~Stz zdG`W%0{v^(Z-x@rVPkaRPj)Xrj)F6Hy*RDqVarK-UV^)q@IS&=_mE4?t)6RYa=NJ{ zHSv7*+dE#h{EkJ$`)jR?LDsNaEE+raxN>Qtfed7?=peeklKBA2x6VD0e7g5>a)hEI z{0GsDSxf5if;_X%JU)T!rq1Q`4S3nLJfXz1^x+Nqa6|QtEng>R+6~<`K|>kf{Js?r z-|;)94_BK$yvcaqTJ82hHEg5%km2nEv~2p2KSI;zABZLgD`Ks00-v{57vv3nIoA49 zN5{B*`*-^0<%dD&pW<=$7|^#=H)4;!>p|o{{prTeC+TfyeL3_fJXJv}XQBUGf22K^ zYj*95*3M!dc;a4t)MNaTbs+nTSX+egh4~wxFK6l705vM-R_d7E-v5Wxy3$w0cq{NP z6(`YpKK--}@3(gH+lzw}$Jx`xX-7U-=ki$VEb?II9*^!nLe0W5YOlgRtMMqgnX}-B zJnzcaiNPM9XT@`&-(GO1ddFS(ttY6J$p^hJC{w;CI{7+g#={kOj`Z40*;$QleoU`Jg3ojtAUO-+w zyf$O%*O3EXhu1|Xg5@K?GNWo<%Xn%lU-X3=U%bkS|3%1Zz4wC>Bgg&%8TKOYyeRo# zUDfzTDAqc$>X8<`yNY+mSKZKZgP-@n!|S}~wrSe(O=#Ek1Mu^`KY*Y8<5yhY*Xv2y@wAVb6!UlZD8+%1%@Bl_YIlQ ziA?CPb@?%k_eb;NOz3e0hRV^}_MG80=ui7tUP(qp#-}x=gG=E{vX^~(+viwYPcQVP zH$r=>a#a%pK9!TaL@vFN{>oC6Lst7lzs?~?}{b$^<0j9eY|NwDWs`>9&N zeryfdNQc-v1(=TVL*078{>*6dJ@SF6e&{HB%*>q{vB#8)n8|uJM=u1hf6@jYf~U2I zs$xcGrDu(Nh$MFUFWesGxl6!(7j-i`;XCc+kVd_d=6|T3r;hp=*-$;KDYwoFx9{e! zm%XuHy;#4c!U{HO9kH{-5oIrwO4pb3wVF8>4lm;-7+%)*enww2tFte-_r=TJ`vcBc z#Ebgp`ZLF&e{X(KIhp`|o%pcQ@;7ST7Sa6fef8VL`+n-% zW~2WUGpK_%Hd%r8h5U);S3vW}(W|oiir|+STt9#<+`Mno_7V&GFA!n=$EGb^@J&8? zGz;48!zWVhr|84T;~Ui<@B&Wyrc+;Tg&Jia%6}o(m>2+`I&a1gc5TN{f0OXCT2VI`)PB{zCYcZGhdAR zS(2*?t>9CBH~6yfN}Qhln!Y;m zj(T)Q2zr>o{u3c^-_#ix>IR>!q;9Md{thw_1kV~uax zvBsE*9m?jg67Q?lfOj*AHG0QjY=7E2aEpDvi}RN`ci|}bO?2Rwx}UY|wN!ZZ67$MI z)@r=S;cf?(ip_{;6`Qf` zurPJhp@j1F9yp%-C^+tQ;3)azOM#^qu4?ydz_FXYR(asrC0XmxC0x@%Gt!ekB@qY1gIwX5wrv?N?w!&4*7!x2&P|vY}`6x9E8(^#DC{;mKLp zOvtd`fUYmYN5e2(hZ1+W_&}y~&q5Z?#V-LbF79&#D-Yg(Q+(f$0wb4S{?q*~_&v+H z%P(GgP`p#%;ut&0%|%>E{_LG9ej2g&6n}Sf3O&F~bN!`TL#07-R-weY^w{awL}SSQ zf`26*e3JRhKg4fG&Spxcv$nQ$g4PTSftR%OaN|HQTC<#eOOGJCGOh3+dCA4k!4uB| zqciBC9&q?F&-Ni#_E5VcTW%M%nR<3M$NChTX#kkZUQ+wB)2+rxC|a|rD(eo}EynJr z{j;=xj`lOrZEF9ocs8H*a#{P$`KvpR8+LL>r6# z#MjE49p;zX`d06#y;*`E{nJ>qo~>yUI8@S};W0NBijDh6(9V4~Sf?JTns>*&rR!Q1 z!??H9ZubZ=uQT&l3yyfonc4oKl51k8PhcCEF`}>U;d?7-^G(yo@q@?E!BhD5BF6dx zW4(993nnIV?~1uC>X*iQ_xqP#G4Eqb2u2Cuy95}CcQs#5H6phd+D=RSwmD`bZgPHq z#vI2d<~hITaJ-MYdeiqmbo%~>p1uRqM!s`q3b|}@+iu^>xi-j}FsXeH(09S`C19rg z;y&hlXQDYqOy90@u8rfEVa~&e2uJy|VRH;8u6K^omDf1WD2DPOwLbE1bzSd|#j~>G z#J3ORjXL4Nij& z8`C3=EBWTa8RN`1!>`iLF^0|9{cudHA;kW7S3eYMbYCz*jcU zTrZrbTQ%tY8o_w23*+fgu0?BDtYny<(oMW$q`uYI!PpI5vK#QddTzGNdi415f3^!B zQfrNrO|0Lp{P7pb`APSe1%s!wru$Cr|ADUIf0V&*?zP|5wVSy%(Z1GA8}~Zb^o;9w z8aeIc1-p<5b&+sm8M;&7Vz1k$m1m?~QyZrDYS9~-_ZRFP$yHIavu~Nh_sijX>AZ4y zzQ4MxMf1{%kk^ah4Sh4nvB!L$xGR2J0DT@rpKE;$KXg~e`r+Cusp(>1s1#i!`LGAx zX@-Xe0)aX5)5^I{9aa(>Gg-0biH?I+71f8WKw~-mzMnjtyS830_CXVKOLt&5Hjy{# zq~A>?)B~`#p=#LH@$CllZEJ8Z{QWHYR`~BGR_W8&k%gt`y?+IFsn4g==J4~t>gVJS z-RF;u@%#$DJ^VcD(VX)<|4%&c#lv4hhkwD}*9|?|e&A+vZs(OYm~(qAq`Kkj;Y5t{ zv3S0Bmz5`){Nb$2`M!5oH1Ci3zBeAQm$7;Mod9-i9rmx+ZZ>&FY_$UPs%YiAj7Pb~ z<<7B7b}G8>C5@Bwp1|}(8L~mo==xr+k8012F;>`pebL+3ifEqJNs&Hs^NS0!)yL8K zMdb)1^tFn8qz3AUPu3FS;acymK%R1dCD3s#w%K}cVaHPy6CRGmo>YG3@ZsdsXT9;) z%P+F%YC)jpyVSDK>y#w4%$QR@W|V1 zJCu7!6Wv4qvZ2HSde;5Di+c3|zLS&99;n>MpFy|U&)IZg=cAsX#&P+B#Yr8j;InhQ zGp9A0ocqs;yJwPXv~`edt0r`oblLCJe6!^*(Lq0hf8K_VntT(CZ8;%heB;m1L2uo9 zwb5mBUZb7kb~{>^LAuP_&i%CW4ceI)V(&hm+L<_b2)p1W+L;)R)?EGB38o#@hIQow zdt_J-G4Fu~f!zb(U;+OB?c}BATgmDF&RDxd2X>rWah@df(8qXo!0*pu50qnLDE{3G zFaAr2xxd`={Un<7cLKKsteXRW_RR<0w<8zr-f1QulZlK-0RQv6vw&}v@GaTx z`YnHA;6Zf%1AM=>Adj^dZW}~SW)hEm(a;4s18~#5t0<2>u%6a;yTEU^@KqO0KH$=A zz{ZKjrZIw(lPkfE;<`TUYw_Vd=c37W{IVX}B7XO0J@82{yf0ZU8&rIw`D|`~)IYN6 zlg+(+(Fb*byxUb2O|BwG?|rTpT=s#}{s=Y*_!tLX($h6Q`u|1xdq3~rBO7O2VmmbI zr6YTf;)#jJR6l0+E1r;8#kqXlhgN*^4%t-lt0d>oVJDr(UQ)hm8otTGn%ynP`>hYv z8ar?6%GJfmucM2W_{I-Lu&qC3XqUCGIBuc6l`D4B-neIa=~q5&3dZNKna;mzw|R)) z!)?CgwE03Y-^&;b(4K7NUihp4{dQR^Kje=&gk>LL$fRQba^;-^dvKK!P7*E)El0UjCQEjyQ*4c+Q~ z4E|b|!e76j)~b_x!~6yROaFCOIC2fT{3y95nI>6g>i<~*{-0y}r4Il7M7rg!w{nC3O#u;XuyWs=*_090X zG0u;3euQ)JOt*Ll8F8L(YM$&MvBZApQ0obtg?7%t8y&#U`%UlpWqB|3Xe#Xlehu15 zUH^C?@rBfQyXNe4fx{5I7KZ2g(YFWReWFA1YJ=$dM#cmzx`9Cm-U-7)-e=aPJR^Ka zhF8FYOR%l3Qrx||q9x2cZ1mI0Y2d^4gXE)4Bi?WnpG>~j(drp3S~Fk#qd)2{+K;aJ zgN{p9aA-X-hBW#Zp^rznb_Dxt@6Fae*650}M>qa=Fn&G|o}(E0A@bw8f3|8*i~Osz zRWn=mERH^T#tN?T^Zn+?6oFbPl6Y<-pCGU`&s(FlfLizzI}hZ z_*Ak8nPk(cJ-Bkj-h)0FFn`aHRrM~tM?BLKa-aD zDd%I!PRYszGcK2v%xfKGKb}jWZ_#xx@=LWbvL%a{PwUdV>?&RFL&oVD<(@>l%87Z$ zsCi_Ep-s`hc%cve?uEa_6Q+IznIJm<3*@q5h%=$}bZGsIm2PNVHksC}KMYT;!(Wh} zBY&X?xp>Y)>*T50=dAsMjwQa}&>?6&m-9JmpXhi2+FS{ZKg3+zdqctaTY>R&4zRA& zLTsS^xmN4>Syt=08?Dwlo;B?|{>WU~$KPp{uOq!#=IG4|^kyc$)HM90@~RzotjB&d z_rGlGz>1ajeLwM%3f2T}b@w;0A z`EeChl`YIS8iv8&0)y4y%}XOu=r*6f&+{jmzLVp8{yxiJCpCJ~J-3^4@kRCiTg$&d756JnDYJGFF4aCkl89yZ3TG z=I@;M%ANOQZ%Nkec@JBQF-is)pXMWcNY}P9wiYmPe_v*633kwXH}K0q1{qlL4Xw%C z101vIr7Vl_0i{V>c7aSCW*%?8`vL@qn^m;$Mpxj&^Z4S_;8~;@8f#U9u zpp&1kD!U{7=TCGTuUb)^K`t^k`^5GoKHpI8Z#8W{7KxY~N(OCGtCUD5C#q+tgKdnE z7tK6q4V9x)l>;4w#^!wRXh#OmL=IY~bbmcL(j^txh>S931>Oy=n7exEt7rmiiN_)vX7zR5-z$Ms>kR%GRwoa`j{?^?^q zum`3)GOP$bo1lKfXV*rPSJ6k8pU_2LS+Uv89ZXY0)1?`$V{&K!^sX92ci=32r&EVv) z9(Da&&h=jS8`w{lpI>VQR}KQh1I&-wjJ%#TKGu4G^=6Ngo83fTawo@H=TM8Z$d}fb zSwPq2GC?3Rtx7g8h9y5%aXb>o_^Z9B{NRiC?g%@f|80Eaoicn;4#1itQ7tv!8}E%~t1<~La*cG23e@y=DO zl{$WK2j4r3?R4(2KRJjU*@GQf&NuDYOh)2M;_WvIflnduDNOd<7;EjF8*5eWTC^cJ zot=uEak!B8W3B4g+zU+RToY@(muKd2z9eL= zS_eIx<-I26W5j@)^k;rSI5{Ys4H%u-%IhWmRO;c z2l1Pf7qs9{_&5G6c$1FNTxrz>R{@`N+Rvwd-OzMydOEmFZ_K4%s$G4P_>b~Z_TJBH z_8+4@CsaMHrI5CoENhiwNe#4l06HR$$GQD&==;n9vu_9ynM?gzQqrFb>x(T_8&j&*LbRcq3g7XRx%LB7#n-G9zJEBkTH{@vz$yg7e% z_O&ADBN{0(!iI^*idwU+n+MxzXp)|6g-H zs*ka>_#^ajSk8~bwwi!^mz;-}B%}Ukwj<}qq32yW4-It?*GjeD($Vi%icjxU54*uY6ko7kJdx-*g}qL0KA^XM?0Q%Y`fWK7F%aF zwoW=ZfW6p2ThMXqg7{AC30cAOqU%Wp$LR*gvpF9VhrrE^I|-M|#=<4zbmNu8`$zfX z@_Rp=FnWFQ-uscm;8FS95VlV@cvYMc-G0)F-5Bq3bo)L3%zSOm1*5u&MYzC~+-%J z*Tipto;rbniNQfn_}=!|h+~>O1+*l)zn|;Fu~(j->&^>2Y{zOEBK}6jfc9X|6q;DX zv})PR`Q)WCkZ04NmGY|cYS#`$jt;73WyA(?V?J8zHI%3W-lBKa$!;~US3D=(@PoS_ z{nyMh+Lu0**vR>qH0H>OH?qc-6ORDb&NM5jyqRj1z4^j(;4QVDD<64qobi-19zWyB zC-$Gt?{)n4Rh3mElUH`mYT9o2%&Bt_-P~`+5J=p2rG7egYx7wBga@>5OR7Ax^O+;{ zE2=kB|2ETa^)E#K0^`jG5*s#{6=_w@juLDhv^kTs_)zhjjp&vWxHO8x0g>;u$vzzt~Sdk$= zHvArZ@gw-+NAQW;E-u)%Cs@~>$vxGZ8oLBLvo4Fd0PIb@0A6Xf(h^JAtH!ob^RdVL zi9Gd_Hp?Q#jIB7?hu@zME{|giG)F@1>&J)MyXa2=F@pj-X0X+r>mCJGKLD@t{ltHM zjR9S8nrp_^aOhCD5Y71+lWUV|t?L}s?VGPkZ=V|?{^i5Yytr`NxG`w&>(Ic9S>NB@gw6O(Y{oe?tpCqk zPSq16lH|eRMSCtV^?#}@L&vKYu#R)}LC^1n4w(aKXZP|FZr_P{9(?=lKqlBuYLM*JE7C#OL*;ry(U*aTK@`1+LOXJ5jvoL zb|G0 zIrao=#iP%yKkG_s+CDYN{H&rtp04GrDe4GLv08(CyPjI-Aa-qbq@bfK-MS^8IK?{p zqVH>N!9i@ob=2ErTXW*RSR|QQA2Br=zO41s!1@~NxL3iw|BHV3vh8c4!9U_R8$mp! zc>?(nYgHGt@-DgN-*kKnJmd4Rc1qC>D_#)Ij;nv}8dF8|tAKuqu7dPSFmmB@JMRZg zzihbO?6jx*^XQ*)Lq1}#vg<1MvlpD%FFZ4@eik@*5FC(Yw?@H(hZ%xk)eVT^%^zp_8@n+{uZqWo92;eY@Gv$B4dF4Ww!zr59z3YyG_L8<~emEFt)* z^{0c3PxXJH$4ZjnYW|pu6L_>F8G;7-fYEiOB_r!sl7I1W9r(W-shV-e$D$~Qep?Z9#1qGyj9S*AR$*6MWE zA+YU`Y?9=8nsN~SH>uODNp8Oj0P@i>~WpNMx13aCzie(;i&#- zorSwuXW=luwdly52c*6!Mq=X3$k*rTpY%Z*`C7qHFt+JxbpLcsKGtRH%y9iH(1&6x zt2kEicO`l9?N41UPpW~*4rpedLpLtH*!JYed?C?Afd2XDA9$b^6XzU+ zhs~O|vS)w%^o6H^p;^bs@4Tb_8`>R??+Oo&zILxUHr+<2pZ`wZYuW zRr6zH-2KGU$y^P%;mV5I=OY@;t$u9U1(xHhH8T^@@#(1+zX0J zH}Tve#_7Jxx^{~f@y;UNxd)wG%R92Ye#ARIwJ(`~Ozb6gQSQ_X$|m?6bwc3zw%+;p z<@n+C&^j^YIPoxOIFl^~pmT7O#kgmF#JJ5G7rdVd9c@8ID1T|{mWXde!DT^)_1#SD zLDe_OR%^JkB>6r1q`k$?yd50cNsM|&^~?*huLj_A<$}cz@(G^h9p#m>!q&^)cf;6z zdbgZ7b#wKy3thx(RVxS^OwKH}hPp)0yr*}%xUPGBj47h~)HfeQ*9_k$-%*ZDru%)j zTgVA$0=Zhnvm3yR;$8ze2e)q&twBQrmalyy_*7rdW*yv)U41I-3vWSY%t3xMMyzn7 z#*j~a&p6_QqOTPmSa$5YGL0F!>tybp_CB>Dqv+3;XAU1ad_lY}c@TIC$C8&zfJq54 z#!g^g#~P)tlGls|!7yy2a7o0fX-Z=Mtv=~>>(yeEqQwczc}rK zja!~YzN>CVd&8<;c?Wc(`pF``T}<4n!YVd$@%+qV&_p`ul-4`Os_1Fs=cxEHd4qyjdqWx0wAb63#8N-eso;5hVh;}(1DXyZ@8AzSy}A5AA*` z`xN!F`(;aJR@!?Qh42OUV0UW04Xx`Ud7Jr|bMNfxjy(_5n|nK$zapC>6TNrdz%(;a zOm2I}RqWA>tdgClb-cR3m1OnzUh>$eTpPnUpCU;a(n9+%Q~Ci4qLmqBX9+!UR{uk({pZva;e$lxAvoNVZLd49 zR5>Qs1`HLq%O0bS_Y^t!Evy}Y-cCzsZUnwh-1bol^OiE_Bm}+6MwMTqxY~H^PSqcU zHbGlok0d*>sf=9xIzGiF{4Ab3NIPe+g&HL*99i}d=Zf>)O2d;ed9ylDDIIBK77a&ouhB|N#9)0HR&;5iq4Uq9OB+t{_H$^IPsP_ z4<`mWYVE8pjv;vJz+`Gd;Hg}ADh5x9*JQ&hX7}sz(|glK^J@tH*@Hh7hDXAD&h{ZZd~u{UJT?BTgg;J%l>=z7TQkK+D!c<)dXaOCKw% z=?~;2ju6j2V1-u};8Ro*H!6qkD&f0Q_^ZtDoqzCoY{h)}5FE?U`*(pSauw}i;wQpO zHouqg>~eTav45lc!y{`uE7!Xk9$N;FmBC|6ZQVaC>nhyN$Yk*mPy*O99?robl+y84i7UfNpZ(AJ~ypi5g8|J-=Y zX0x8hNPU5^xq(LjSOz7_3@k%~J)dOG$)*z4=nk1YhGJ@3uTA?)R-jj?`%+!+;1=Z6 z8OuM2U%9vqy!QhS+47RbqDw=g=oyzj6O6kHA4;;gN3@xV9tJ+&JPHiqWzl3kG*Jmn zR`Pw$+be;g#<-NeHFIw%vic+G7285O%}cK(SE5(GIZUtE1M0)CORw$Jb{JdZuuZR` z$z{M%^mPdtUh3!p)^=PhI$grGUF2ahInL&|)Ui#;QJVGMUPZU<5RLNw8J-b+e(&lL z`c&*u^r^UIDfC(9(5LHjh(56;_gT?N@ltevV$8Br%Ym6otA9_QN9h8d{o9mr2-f;e zCH8hb_O|-In|?{B$=235dgPaJRPBa44%fzp4jR2+%&>yPzK?8>Fm$)XqIM2^$j(rWwa?I(>`^3RQn zdu@ymxbdaPKiL@K71yp92YiGN$M-S#@Hw*H#YX^qn0Ju%vOhi~r!O4n{tB3^Jd&URamtmV!(B^Y%7Iw_eDq-#4$QI%&b5tv~9=m>k zIY<>%%kB2iBb%r9n9UFSZYA<9Gu#dm+B3+@0 z@KO0EqrXQ@=A5JCD4KJQZr69QecJWyQt+f$=y2|*$nKw8d-h}6m7dUi${%u`>Buj) zhUI35rc}f7utQg(E&Vg`zQcBYWd(V;4<~$l#AaOr46z5gD&QN#16Bfi;G|{EjsF5T z#8|IJd=MbkTv0mN)Tfpqn>s7Z{Da9F-$8x{psCtm)a=JBc-#bh*neuP6`LCWo0qXi zg|EP4X1*0Q7jF{>iHE8-t=D7ikJ`C1RqFWI)d(}j&9K9IfKg^k_Cx4ZBq zebn}M-Oq2HMQ-hr+*(Kd&CkJeYP&T~yWI~!liV+#4gGrhXl!Eo^10WU`^Eh%)xgFg z)LgiGTG(+v+orJ3#m_GMJ3e9awBWyc4ESq5hIIJSt3RgE=fddBc;Uq}n+_pwv-oZC z8@Wrp^rZOj{P}44s(5ZI-%*{tjamDD;dkn%*PkA$m_In3xmfxBiG!LuI`uQ_Prq9+ zzkSr)iNld(_fhQL1CeB3MQ~n)ac&tIp@o#NB6Gg z{QU|&W9^;qoG+bf?S21a_Vwk{t-a{@trh5(o{h8#OjN(n1ANr4Pk!m(^LbxVU6p_E zMdI$pHu$7!Z9fC9u1R$B%=g*jL;TT0KjnukmF1v+qfpewM-@I=x6B(}?{{d%vAXUlk2eRT8PrF>sw)i>Pwosa1| z$UWJ%OK7(TTeg=rDtW(@ad*8ze1q$%@1KzsJ(Z75Sci?+-%&yi+t+@CHFlN5ZpH`e zZ!aGBx4!wH$lD64)+5#$z)quH|>PV+)sK z3zuWllw<37^`YqU5;S0H{All=7>B;QpQG^R^3`zdz4Qj(7X2qbKEh|i_4mM7u>L%J z!Q2+>Z}@wjKiL|c{JqWJKK|T)!}bR233}`EC1aGAWV5cPEr+I7e8-Vp=rZM(UZhT0 zIEYe9CH%PY$O2~{kz(|*Y+>o61T`DfZk@EO@$m;~N6#A>1uaY7WZh}wROi77>rZQM z9m&qWv)|ilk=tA7d9TZTFB(a@JTl$!B}^L=N7`tljUe`#+H{}Yz_sbnMGo{b1Du87 zhglYDJVMLrTNV7U34WNL0q;8bl=ss|&cEk5pAJ0&(#b}rPXagKXBus}{2*KEN%&B? zK-mDx`L_C~IdQ64!(UCzfKGFu^CswwVzbM5;)!oNJi&V($rF6T<%#?Fj(9?Hdz!-+ z6|~(AeNE$g(-{9Wa$EV(=`>)l)3Uy+bJ6U4{3_AxG-!4jG;4G~R=Sg4we_*+G?GH6 zqRR(7bXk=`hhEwf4chv6nq6OtFYxZ+oKf|qZ|@=xUy^=I~)nZ3-l>*9V+ zb=C#tw=$#tp_SaXK4#~Ca>!ASx=)@?_dA)#s93Pp0UC9`)V^;qH^JObZ9it;kC8vI zsL#^7{v3Nvq1%4$u054w>OKXBYk=1646w^A>)jy$Fh9y<6* za@tce;y(Dxr?qH1r^Z(^N4V@i(+rKe{G)57zf3bZfO5_YcjTM8%-5+a**$b=6t9_Q z9}Ie)oo1dr#Iuq&J5uI@ckZ+2VP-k=!K>(>cRsjyMLMZY{0J?pukxd0_h}yHH)&Tk zu57sst{0Q@yX)kiJ2BEnJ7!enROc{%p_!argXS-Q$0g)p+NsCz$_Uf%FM9gjX7~Fk z+PCcxYZ&g|nf%_XD@o< z!wH$gw&7OBvX7Yi4*12wzO(IS`%Ul0B)p8=7CxE&WA)w4rKgwQ8RI{4U`4I_4D| zu*RDIpgJnzeaHgat_dW@asH2Tqbsi=W?w z9x6P2kQ|usU!aF`W5DxK;Mti1Pd{|C6gW0JaGZvGuLOSe{BE*BD}BH<8@Lu4*p^jm z9uRq+m0iq}k!{n(JPpCm&~u$l&vxxyFtN@9+b1}`!80x|&HP}}Xgfsf_IhDk=7H@= z4{W{g{eO#oN<3q{i}QD%9pPo~82>(HjK3-U90xDnc#in{Bx_f+F|WXaKQtd?VcD4T zLAGi>$dk;OGdK#^y7z>qpQ5p^I{oW)VUO)Ee)Ulc=hAf__gs5Vago&iJW78`>5t2= z#!metxjN>IXfDaBls@cD>BH|keNg?1!N1doGEX1QUIG8dvDdxw1KEGF?CHgMUDQoU z54f>oVxe0t<{cP)@JuNADQMW}yta99W7~0W0(Cw(g_Ap<`NoshEC2jXCV4hjm%tCV zns>K_6ocMsMMv6_ell&v<{6#%!Bp@eed@N&vlqDLT+vXU*w;LUb-@Db~_p|J&n_Zd}-?|Fk!lvug{>icY z_$F$z7|T{y_sgdAV=GAK`ekqP`wjZ&)MTEtq5<1xJM8c_e!BX6{$n=JY8_JXq5DsD zHLfnywN7k7@9#{DHDerIsr&ADZT=mpw>JKNgpfeBk{VGo!|=lY@Zd& zj?V`E*&*9LGjp}xPB-?M;BBb}78}j)E3Mt$dM)!<24)$3zka{A(q;g{5_lritjY5VQ$ zmKh(}wqQ9d3+3NHKY#4N)wL63>+J=`Ev}FbtIjvd8EFi^4UK;3O~$`at|MEEzo+!7_|J{ z7~@El7v~IoN92X%c@8vI4~^ABWA)IO=t?}Ud#UvGY0($FDV`UNxwKUbt&iYCx%o`9 zHqa;&e3dn1GZRDbMDIXJDsr~amMV9H+KyBm(H)mh5$FW zbxKC0@LQMGIYpP~o`JVR>%a;B{C9I|9GN3X3aB_-&h;9Os+$6SaZ{ML06KAu3XkyYO)!wBqLv? zUzzx_>WgHgo;5NRSs;0O_w~`dnbpf$W?2*CB~zk#1JzY6)E}OhWo5-nCVPM16fc=* z|L#Zb&LW2O{F*=Ph_HU*K$ZPYT5SDk<|8ydzvc@akxzN9TXoL$lHu!WBQ0iMmrU)$TV$AKT-!;pe6LNZewH?d+!zsg8QUJt zqh`lTTP_VP!oEKU&16F-z1ZAAY;NiVPl#r8?H3$1hWi*ps=av*-gyfhH#mWu8Ef{) z{(3(5;Pbin9owFJ--+!j3#?P3!IjpO+Y$}Y3+9?N@wUWW(U#nWC$3v*MQ%&Xh*sy` zrE}}HgfE(xTX5n!)>AZkhxkt`{tPjOfD`{=ojMbX@DF}e{Kxi3F3&%c`;OPnV_#ML zr%RUtd*v(7-HlC%%*eK`i<>+wvd&^2zcp`0Ty|D>kK*83r#p~%s^oogqQbi^>kT{| zx$4H;yUFYAn4-Mkjq$I8KiSNt7U^c>^h9dHK zaGuAWmt85n@824!4$h-bIsSO)Cd~n+UIL$9H8$PMZ-`;T!Xq!+cFE|ufzp2syc^@a z-Mr`82(m-<-dOLrwtNu!5RDDn@;h>VV_Sat7_j*7z``rf(oH?alwsQF6yCsDmvD!C zk#17V{J=%usy<>$)E#42*y}Rf2fSufRorpF@~?Ub{$7R*(%g;S`&q}_@PcjY5B)s( zboc$x&iw^>ec-g8dz}k_$35Dc(Yocp#lWhokTveuU;E~Tr=NAkjxV+~`{i559(%yf zQCDII*fx-l{Agw(_XXAuply9q{)WaN`xqa0vT!Lpj@V`)Y_nkEv44K=>C5owwBJi# zn{t?s;o!0vT&{y2y5W7%!j4p2I`2JCU46J}HhYw$nf2@+0ba|hD(^Vsz-uG$l5K|X zlI*@29|2oV^$)U*b_-^b3yh-=+o>P8QAd@)mq}{=nCkkMV25?1*JV!+AX{XINgiQK zvp&2pKGlIk|AR5^(~fY$yFY>kG^P!VXCtsU!g$1Mf{E4*Pz(n2$h6Uss4v^PX|6;V~w$)5*Y8`FKHdjv9HJWq&%_3Qp&A$H!K~c{&-B1=;reK+=Cg+DtyXNP zt;>i}q{XP?qFvR*j>wX*;h*oa7OrVOhOI(>R72@)@8dtV?;mvFwj8)EXN-p&z4t1( zcJX?e{s^xJ8Kc*xkUweL8{tv4UjLQrsqHF$pm{i>u6un|N7ue_)o58DUHhRk2Xk28 zntbR;{KAJU2r`!XbnCmptirtA5$4yUXM2HTFw378L>?3~=iaq}1c!5?TYT$vyc^@) z9qid7dh`KX`4iGLC;y$A1)hll(;|mg+`5ti;Ho+(*>ra7$(L9ITx}Rr3#K-ykyC!Z z7`zs5jkFYl^I~|qcpkh1Z$_b|`ti2z?;iaYEa6R7=O_{c_<;orWso$x! zmj=F$Z|Xf44mJMK*PMOcoabG?`AZHCu2he;BE>&N#}aSOj=z~;-QAIV^vUd!ETdzM zZ*1qIx0b!1X5>UU^oj4N`1;n;OT+o-t%aR-K022%y6yfO?RxUu`?CLLd}_P<$^y3h zabw-aFM+-UH{$a9Uwf(fOv$&K@x4qx%0}#`li8Iw zU*3-w!l~oiSNc+Tq#vcXntlwC?{~-d_q3}u)n%7;DUV-e$5=gZ+gJ9TG1`5_)9wzt z-5-0}-9)?3I`QWM**p_Nm-lzq80|jiX*bJm_cc$ueNw%46;c*wnX7j%}1zIWpwf6KQ! z$HiKE#`yjU))DjOv#13kUTqEKGG7IMG*3FA3H$CawTVrUz^cQOImQC3)?@pzw$D%_ z@vPl96JNAG6R*Q|CV!sSVEIoqQ)f(`f7K!STsI}4`4V#iZ5vN3e&VOzvFH}&Xy%w~-H|8G^`QKXOcr**m6g@){Zw`!;{%*b8aj;BEY`#@kNd>m9d^w^aT=!Rat}Sz}Rhnzk zYgVF+bHi_5n*!PXy>X-MiRu4`|NamErO2NDAMhW(`$zL%Ty;kd|NW)sypeP9-)7IX z4bHWCbIsWxXw8 zKZ|q5ukCQ}@2aZ2pnQ${yB6QwLO0jmVhy$NY%O!oV;tr46k35s#Z)?7-FtXMCwuK0 z`5&Jh1NLh@u)i!mhuz?{Zv_j*EH5#~XgJ=y&5GZNZIey>Lh#9C{$0ClpKZ}RttVJY zKhcS+6np5Rj~W*?%c?HwB;`Ae?xUkW+%Y&ZT6lZF(@)h8$}V&N4cp^}UOekJVwWg) zg>9AmhV}^@hY!WNF+qIsdiEiTRZYL6F6d_;VJj~Reljip&G%sd=r+wqKY*P!4LCK>pD_JlZ+Y!4cgL&j4_=QA zq_s7)PL0;aFSY{hywkq)V#Ag!E5y7`_HTiN{NB4BG|u%Fi=UogI~X2peb6IhGlcJtmAtwXw(IBOq!3Mzso?!jyeBZc-cKlp!e1UVX40G#T6X_#zOm(hbb!cXoK21J(M7~5- z7p?lA=Po>55b)GzKla1A{U7 zg>~sZoG?vRXHst(X3wl<_(SW& z*nW%O?5%W$=QZzFxw5oKL2?&y(LQ9Oe|$kQ5-ea1D(&}Jv;Q7nxP34%uKmcx#w|x! zgH~~D`8@-~fqIZ_S`)^e6BtSm%f?so#jBdNw*YbQxzrF4=V7f%Q&%8f@8g}bykoKd zjOGq1#xoB&tLL@OPF=)j=K9x-_sQQs>Ba!5H%m4IeM!wxU7r<+D=+g4^8S*+!?L{2 zsV`AXkhu5>aBJ5))a-vnwLI{;{NQhL?$V?19dU55Gll*Zn*B0H)<5W1%%7NeR}ngH z0plm{!hQ?Mz6Y%20P{4?9`)y)Yxn1!f5V?Q*x}E6^9TOCx4!JF(Kyj3@jqZ4Tq|PT z`qM8)lRpIpKYg$u?=zu^xApS77ufVRMQbGM;O|@AJc!n`o+6nnJU_S@A2T#K4LonS zMf+>cjvvLx9GJ{}SM;dn!FC}ZL<`5zwW=qG@mo4(Hot?sUvF9MGx!@oKBh6xn;d>) z=gs1GdmjPKRcUj5@544c2M!l9wnD~M$k+-QTOngBWNZaBT}4q~LG1M&#&AD*iwDs8 zw5OQrSE;X)Ph<0!-Ija`-5T`D%#kDF7ncb){^~oX(JEX zmg|@ojVd4A@j>7qC99`c0ui||2{{qe%z`69#P@S{>EBjb|IN=k+IoGZ) zvYyVnCMJ5)-CHE{ZOg3L7mlUHl_OC+Uh9;|rg@!u3*`v4myQ1-bM`G;uDS2}E;#SD zrM~M+{CCg0-Aj-+704dG-}xZ2g0>YWXO4R^y?PdFiH=KjFM$s$pl`mf9Jy>L)mw(I zU$Qrn^QU{y&PvwCqQ*MG*Up%%^P0dtg2fS3A_VdghH+W*UF-Wlst zf7Xu;tGt_J+Dz4hJ%}BK?m9zE?se>rnb>Gnntff*nfun=yz3v@L~bGtopctRl#Wh1 zA4o?hZP`M7P~*S?co%t7fKKUV{7aB`+Lwqu2?wh0AeVey0v@+Vy@!rA@Hg6e3 z=9c-=8&$trDt(4rS1w6wR&7G==-X;*09mDPs(rm9ou>6_`mKz{H2QvSZb2S(Z?~p% zp3A!O>FD}&`aI_v?PVO!J2%~zcL|+*nDstYgJn^3VcP+AK73dP*15m6&&%rl0r+5i z^+OlNgWCbtD7yrV-Xec|o;>xEb?lKwpU02SX#9G5G_T2*zA~MA`i}OL>EwOMly_9G zWY#xZz5i#ZA2lDv`$mgF~H38sM3vQ2T{axq;UyywyYW6o{zq2<)djd>zv5C~ydfMtmN4|=W+Qqlk4zk*`V>xYf!#CZN$lZebp2le2 zEV%;fY@8Q=0$N#*Abu7Vm18p>elLm0o0Im)I zyPd$ai9JT1#a`}akJR;5*>|iPA8O3P&yDenB|8dy8hp7qJ>wo!9LDj2DiR z>^jX=E?g$XT2G|d6RGuW%01`PALSo{*zcO77skicTF#f?lPdJI>M^?DE7c4jd-M7{ ze8YOj(7vy|58AiKZ`U_!{NK^|;UCqf9H`E@pn9i%#=55}=Z;=@AjVkD_=;Q`T5_mn ze^PZxj@|qpoR6ZDsrDG}aL0(=?4BBH9jm@=WPaj^Kj)6OkZ}d7%PxrKs9VeH-5AZQ zgy+^>FI(0>6oG$h;Z5d(FLq_bPGm&3@$>!2iH0pPk9_`DC=a19pZpQJ7XB^*5 z8HZ$Dnr95D^^vYWYOhr?k{?GOw~7YceGP)KzdF6t3bt$i&t*^6pPspJ|2s$4gq}Ha zv2q*osJ)N;*B;;Jo zYKGtYD`Ks$v7d@r2b(<5E_g%j37q2xti{p`twcCyaqfefN*4tR`au0dqb2rCY zbK>EtGv}>8t#zGLGjOBReuzFJ?^c!qW7GB&Yp9NM)9w_Dy;Q|dwcDD5wNGk(!VdbE z&Gi}gY&%^CzkP~!vZ#R>#T)qlslT22w*5;}U~gm%dyNYRdqOEPWO}UiS;rm|{p2E> zz40~tu+~n=U&f%AVg<0R1nxP&y>dD;Ggpj~rhdx~PM~- zfIbknTDb%HJ{{N;K%090b)Gk{aAPKtv5stb$Q>`T;iw}UEdCACn~9f=u73?8k0h66 zA1OvEJ1+w}Zz=jgvaArD97c8>K|e?@lyk2eSpf`WXRUhHTDLuoeh+Y8eqt6pb;$~^ zJWIc8C411tq3Uw<&-4q@V~R_3;cHExJ{nqY?Lt;)ehPKs)Nrr|Ah2WY$oATMtyPDh zo9VzRpx=wFRfYWS30UnFf2`qjtrc9U9B1%WvtLMi)5F%PZoVV@y6^1<_x;=IS;wq$ z+pF+SJ>PBuH`G-vF0!n~-dnWJU2yo@e|Lp%tKQFTQ*l`LT=V?|+e5%k{Z+ri=A$CepKO8AvemZFwx~YOvDG%3bK3@}H|Mr~S;zS(nd|6g@ym~bDf|Mx zt@82<`Rorp`$Kl-V`DKNqn@>CG+(9{8=btsKCM;rtk(D`oge@G3fj!4?gu)fKJ4XQ zbdBQB_I#A+eqxNy+y+}uWHa7;Xz)C-l6+v|hh{^_a@N%%)`K4~t03<=WQO$DF=$hJ ztY|&M5nDcFZ1U!do41@pXG5by$7zc?|2q!U2Uc}KmuHCEYCowNp=e(7Yja|HE9jV{9FqyL2mBz0sl7Kl0G$3X?w?(WfrV zp8a#`^}*2|YWj%*?sH>+f^X?P|2KK>0$){i=Kb$;PLgv%2$w?Z1#J=n0-{w50x7gP zNvtT?(GL8Fc5o(vAOvGek-i0rG=YF9@xp=5n+|q{n<$BOq==*R@`7LiO{-iwy-cU& zTyo_gNNcC0qIti+wf9bT4vE#y<(<#xpU)?sv(G+zul1~FJ-78d&w7@f(?sm*SaJAM z#)tbhIUqzEI<%IOU9W!i@6HFlLS(e|w1(NoN}iuHH*?wZlc2_%_O!y^`&1W3xCuO4 zb0P!k~4V1cu>V)5;31kX$@*8|7U*tc^S|YZNGv903r}(&4(6k9V zu+A!I;rw02&ZJYL#1CQ%IQzXaT##6VO+~z*d1<(yg*d_``luJ1U+^9TUe(Zu$*vn1 zW=$a71FwN6)fYfjnLk%w{W;^o7x~{dp2t4qcowFdU)71N5ro$l^tZ-$=7tyNqlY>r zAC3@9Y2^P6s~|Y#wv(+tw+ceouD2m?*0E=%_2Nl&TN|eNMn`U2STRX7AA8y=$ZG!j#>%UU zPu}PI#-1}T0!OK}{Jy_id!p0oUs;2l82qUG!xnWutcXQ?DF=VZL3r3)8jU;V^c<$Lr>NmTxoN=Cc-YWR3m zpq}s9YqCH?#EeBUH?83@cP!32USm1#@8;pu`UoFtJX3og&&w%r^*SEjO&!mY!M%^? zZ#?7q>t4q55AQRcg(hCpJwN0N*mX*opC3`PTsS@o57~1<{eI?TD|0djTr0P3EOSRL z!KA8P>~sssMTiHTb_XG7mrdjpGWn5$jDu$2PWbo4~I0~hx6pM>iu zuzwJ^7{dhF4BrAajejffr^44mS1^{I-))=YE#-n4`y z{;H9&-Trm?wtZzq9V7Z%k@Pe8D&VOz;1)YzgU++tiA-HhU5?`Ll!*TeK9m3JKhQ5y z!@Y9uohSFe&wKtdU&l1?9m77958Qts109;CI9$V5S-U6>*Mg7t$jl;Qlvc-)v|9^0 zmsyMDXI9Lz728ku+K30~+=wG-83nD#bUmZ`<)`?rnyanIkt4ul-a&u2VuMQ7>-i(O zv+G|SeRq9pez3lMY^eT78|_ZFI{p>E`_w>~Itb`i?7nyjx^*hLbvks)*rW2d*Whno zhrhiRfBWP3+c)8FufyN|2L5*JM&lcw>Fc=ir|ek(H*P%PN^p_}T*65raAm`@;G>AX za%t1do$F_2>{{<@k4YN15`Ki6>$R@qx8kj#i1z%*2L#O-yeWs}hwPWg!Isy0QFftx zE76J0eg~&*_x@i)3l{sEw2wQM%ihcb10n@eoPFHThvZYe&z4UsJobcW(9UPH&m=eT zm_v3v=2h0S-g>ctilPqxyrPb@`-;puMeAaFO%g~p0OPF{b0!^5`})RH?s+M5!F(tVEm<**HHPS?vno{IS(RDeIfM6@KeJDg>#q0- z^Jn&J0e4rt1iyC-zjqwJcLKk66MpYz{N642y<3=f#gfe@wAVrmAzQvezXAJv>sL7!@a;g#`PNV4OJ|-FQ{iLgI*yFcd^a%{8H}NY`4qi; z9NctP^=GcK>pPb)Ptb9q68;x&EnHQzHBnR$D`)N1O58U|?C2bE-`^4U{R45| z&hYZ+)6fC!X%1Fh=&U=-bLY5z**CD({HAster*BwqLuZ`h3aQ?Rt={AkJNWQ0j+ET zhC2G^x{Fq7d!dyY_TaAb!|Q%{-4Cz(;dMW@pl^B03}^*fHJ{LK%QLL0nS-<3KRb>b zf;#BKclG^eo!Hu0;6D3@-~_?>9=xhgAH1x%p=~4C`2@qlS&^zLt6p@Wd4>LO&Vepg zspgS2CE`PlNWLkSDIN9%ITBrRmf!36{)wQQqn~c_+T|~b`~0;!17yG}>?OAbB<}?; z#;*k54&c1zv(SAh@?#ge`Yf{J4bJO%D=@I}u8SMi-)If0Jzri_@H_Z%oPS8|l8=W^ zR{4=N$mBx*kmPNAF7Xd;tnv>`F52_><{|j~f9f0D_;z4u<4x~+*Y(Owp;BV~g z96(8(f%Tp1m`lxjl|xT84n1+-(9_bs>B*&~vw!HOr327X3>qr5tYiS4K0ZaarZn>6u+i>4WcD-)K#B^lRke@%|mY zP$SPaz8UD>7<%{7^%cC=3ctmWEk{3Y?Y*AdC+6yWHZ*AH_p8>-H{q!>@E~;#I@;j% z0r1(`9nc9lTx50A^&tO%+QE$9kNzJL4R`#G`hlg^;AF}Dia8EW?pkckyvd)@SO{I; z09}9H%4j?v7)*RSLVnH=d}4!=QTWKFWyPomHk@MaqCaQ8nS1ruIuZKYqg!e*=bJ;J>8b9bdBh5Ao^tKb-#0nZ6(I>f6Gebo*95@Q3Ypzt4aE zQEb>xao%4B^V>25Id*5!@&N;CP8_xdG#+Lhc{aNG#3^e)<#77)BhxdG_u0t!0m%C= zUt{g{$}80cu5jd)=wI?_2{|89g4gi}=$$yeMAz^F{-A6WO!cS-5$LlUWvVM%Of35g+D{Fx$^BZG+Kkm??@a`R> zm;N=b5V*_SHLak~mr+^sG1;xz4N>;Kwk)tZ;^p?*Ail+3cgP05&ps>GGp;6nTMNwi1(9{jyZ5=_yE}&+VSeY`ZLDop z@$Oo)zVRhL$2m**^g3ebmgtsn#~t)=z;W|hg^5ukRBa=3C zW^eWs@{608SL6$J?_S-jpKi^(9Y2w5+)VhsAAGO-4^Ol2k6{iAeXLc-TQf(~UaPV5 zl^5b~XrYgG({@Jk*?ene+X`S?3XDtOUGdE@@;XM$u0MU<-Q*QrR)6}2%j?^ql#S7_gB#cop$PzHE8d=)gwGcHZ)d}YyO3w&d2>gl{U8Tfx* zRG=8C-cf8rG%4Lw2u*HfF0}WrOlMj_Gp)m9e+Mh`iEB9geM~aIp|NAqNpG%T+)Ekj zl5oc~=t{Iax>$5N09oyv*HDvTY@|%|dw=ZncP3bGxpr5`w!4nyZME&LAn+uh@6V8b zRd!psP<$1Ly`(8TgNo3U;&Wc?Vog7I+Rw?hOs~zr*rX4+} z@o4P2{v0-l;0{gJnnFC71`n>;Y(dXjOUPG3>>WNxGiTLDp>gFEh!3a8Uf5ylA@Q5! zeZ?f3&r-*4=L%SwaB`28ZO)N<>fHy?pK0h6TkmJWm+Xf{?+245*CR90F}toq zo>-yAPU29_l)RnxBZLXqrSTOUe{N1ZJS2O?Yxi$XUIlQZwk-_g1 z$eU5<8SIbyh2tk|x>PR3Dc&EAPEn1XCfd~ft3*AZI z2!>l(FSK!XhR&q6eCf4o8S6ug^&x0(KVvLG@9F(r>~*$b&q$Wt>9 z!_S2*NLE90;@ew+S8a>eqz6T3Yr)4u;6rUDIIlu&-o~ff<~_98jR(6u;X$2hi(L;PyeUKIpY4{G7?g{1zf34q@*L{*nBPCdmmeq z4R6EmOS0xR&&w}7f@illG`R|zbY*uFvb$Weo4Lvr&qI@nZ`*twX!x=6JfTYyn`VrK zv~e5H*)-|HeimJ7J*YZbPHhWErp|%)WS1`D^KYH&`}iz(uB9I;xYp-idG6_V-TR{X z3^v?peiOe28tyjt!~^LKw|nmEeY+lIdc$;cy?oE-&1XhKq35|foaa8}xi{6h_h~*w z+vCh{A^Hn8gw1ckhEI6zO?K|xWbS1fxF&FoKXZfQ&*V&`0g?2HikGXM%!ZG3y`R}I zglqB66?{rZt55rPdyM(!S^GMd>(qA7O`xU}?_`?iB%=qL_w||Pxi^?=-81=X*ln^q z`P5y840mK-bn@R1+4bmd#}0aL;NY(O_b4{1 z^7aNynO#5Vmb>fE7WS`yYif4=0Qm4MwxQM#TI*}g(3)RdVEk;O*gG znThNj$thYMN7pARu?ty$u%E5tso&ur!QOpiPEp6Pozn^i`Ulp&F~`?&>`nZltc{<= zAA9)f+4V<9YVDNC+Nodt;dX2~C9dp2z&w|+!>X5FM(cR~DY zS@_uo;%6IzpY1aIYy5MAz9X!+&T0`+on1A zvWblxQ*5MxcMgHeL*P`lDY7k+z_xb%GLoyxDcffGYL)*}O6)~`&C+W2ED|qHBQLCJ ztYvJh5Z@&q)*79eZgl2+B;o(uH78M zfA=slOF8+i$);|;%jJhm$VvzM_2p{2Xmi0m#x_FH26zJ+Y_^}`D zgna#KwHEG&PAz49`z$tq&$|{zzc0j2SI&gS??eBawXp7g!oKg&>f##gfYws>E0hD{ zRd?g3na%q4O7_hRv;8y)kDulwxcWJC_$%n}6m*zK@zc}<@aqTg>j&`b2k`3$@aqSN z;URC3cdh4`PpxseZkcU$v^ZpJ-Mdr02 zds~pPTI1>+*)OuS6j#e(jcZ{mbbJf44qq#4+)!owciKB*&%tb-hmMYU?C;&> z2PUW5-{#&ol`rAEca`bKZbP=c=-aX3Ok4AyN!dgn;WyFXTHYO~=j^pv&;F2EDfZKD z$+2a;6JV|b%(-I4sWw!=*!3C78e`XIU_)h?{f>vtxwe5zY^Z!=*JmVmVAqe}+1_lZ zSFoY97p2RFLJ!8!1Fj9VLUKZKX&m%`+>q=EVcWm24OJ2}vM7Ubbo&G^L$6(K)7l#z zTH8w8NHG=gu= z^@A9{>@4o#cMlrBY|!{+Ta8~fSUFdD#qg!;yVafq`9$T9mppR!sp@_R`$F=5JGF-v zvQKr4Z**kT!UfJgRdfV8#@?qIO5O$!ALjevDW-l=@*&m%LEa}1zHv1F$Tzdk>l*xR z^2fKKLt9oT&h}B_Y#*!d{662G=l+Yx3$7JsyFC!@IE@Uo^_t>WA#C@c*@LY8P`Sqc z1iq$%uj%0HPVhAYe9Z!1&w;PXaEE+@ot?z-I)~JEK5ca*R)F^{mWh{Zo!^WMZRUP! zen~;B4*$=n5^S6jY@8BooDyuDl7ct46fGCtP5cMj?8}@37UenF*;;1>uxIjEw>9z1 zD*Qq*+SK<|_=jTb|+@#`YKO&a0jhSp_f2U$h#Z`5y8tR@>|1 z-R1oDPs+PMpY6i;Xmp=LZ?2!$_-N6uXaCS`lXTm4gRtuc+jiY1k6pKvG4EguHH`Ub z#{3LpevUCe&zN6i%%`yH)`6>9X!LP#v?<(iqsGk`hr4?}9XRG1xslOO#;5GlzcAl} z#y&0KdYbe57xpQ3-l6NE&N&?w#iycWwO{Y@rzV&c)7+qD$TQx9nWSs<&JI+7Z~fRgRsjIJKWS7(tv`c5W#$ zd~}zc>o*7L?c7$;@pR@I_~WCP>&eVD zdZoFr+s-X~MYec`iB-$abz{6+LA2u(%Il#4fx$dG9Yf5ARbYkQn^L%zJyvZD##pZR_W&@_& z&H8pWGBATRZqVj`bY>U-qla3{$sVUP&IwBJxOL?#u_{LQ8d2i!XavR9~#W$8%LB7yZ^bGHYmzP~oT?=Z=Kx4|E4H$h+jR@8m z+WR3Ls`XH2!#_}?AeKoTSjKOBVM~eU7@vqQGU1z?k9q_2xyG8~>?u%QpZXE+T@Su&-J4}> zy(qX4Ou~`(ejW5E{I2EG)myPF=5ZkS8^S-iQ@{Cx&2O8XxAi3gErDky(H1b6^w6AzuxI#&nAZ+7_aEzXeMj% zKIq{Y@ay96#$MlUQt0A=-sDHXrjPca%CAe2AC;0H8ORT02(lx_9LfJ8+9-Eq$2=oD z0?F0*`s0h>AKqEDtn7k(2DYBKGIH>nj1@T|JJ$GSL^H^}X6ViMEfx{ChGwG3+gjlP zz7AVfM^TnF(VhG6stshz+sMWzENjra=RQ;aZn<@Qusi?aUEc4K2Q`j7KrVF4gIkS! zkQ{L3f^w~5<9HVsViOI&?^dnkxh}t_^f$}tFFu>~CHyYGf#G$Y1J(_aTYsgw)tPjv z4-4ErR9{{=XlhX*Pj<^*S%r;uk2|3#gJn8){$)DZI;eC+j zTPlm#Q$S2nwoRDl`Tl*LZ$YN~DjYI-dwO1ZDeHLtRGP2j05EFpeK1#XsGNr9c>Z9u zuC0dea4r9#`~Zfo0yeF+)84g38IinSg3n)vJMv@UjuFk_j*;z}FKVK>^TnDehxyVt zkl`JIS+K0K6bJGpzoeJ~IwDT{=Xp-!E8{uq-OhjR$|raFOoc)I{M-7V>+S#EQ{MfB zL)VgbWoF{`_|K7kMUG|sB7r_PygS+S=cy$T&N=DDF&${t$a@70PC&y*g zXX4A3|0^?`5ji~rUS!GVJ;k#3QL=pJRvHBH)zML0u3L5 zr;SZ5`2>w>?Vx=Nwyd@N!cD-xI)rSa{+P?dbKtRRcuf3gYLC&!&);J%kZ<01B_9;O z6~7r-L5{;VuAgRa_N@y?O;TQZlHYR}Q#R|Nk?`C#@SbSS&-Z)COFT@zdMV%MQpZL4 z#4T060=tHbeO`z=?tzTEr3$+fc$IsuahrXkS|>mQ_B+b$&T42h-(|n0H+;!MH?l88 zJ4ZRcM6n;)6+QM31Cy7(v_DaPH`yb~DG|T_o_ROp&Y^xjdj}FjXh*Q{U9sUL;|Nes z&PRxc7Sld#)$i@O`yb(#{O@)-1*}+am4* zy+FgA?^p${AIOe3XHrWeBbkklI8h3n&klDi)IMkUe+y&M=a>0B#hP#{azO9D%KWK~ z^Wd=w8W(-VI<0~$Lr(pq8H^boX@fW7@WLgvlm5h-+~g!3DJr-%+Zu1y<`L zIH@dwC*}KUg|5kYBKL%t3%nx#lKjTooZsW-ch2s@zHNo?+H%7MtUo8TL3{GgwXyy= zYUNHC%X{YDSnka#D!46u(8M`A z(@8#XAi15fU+ch3UG15FBRI_SfrgblpX2zoyz7G=wR)KIwtV)Tz}v^)?&fWG&EW3g zZGlHy^O>{!qJmNMVL5;Hdcxk1F=m9;n?3hq#CN0@M4y8Pp0{Jc-9D?2;IkTH`>b|& zd{&$2qYhqs0@<+z`Lx59S(5a@swd~GfLh|My;XG_op&#}f=+=N`z z5dMC1AGvArRZkZ6nXh_Dd=}lISnt^vyL|wfTgeR3igE*AW?r3YUGtNU-J~`%&=sf9Wj{fNHPcQvon%8N18h23;h_`p(;{T( z67aDUe5?p}h(7F`XJYpYh}~BbyI(}?ehIPrrNr(F@z>u;zYcBOD%#-tS>&{rHXdS4 zYwjbT3~k`2=_{A{652rCx%E0-|4=Gzgq61g9pv_)gMQFKmQ4o>96FfwK6HRCl1^$W zhYl7nCh+-da3B7C=idLS`G53`J^#)0r8R;+RYy6x(0tzfHVRTcoCD3@R#$f z&h{u)js^Q~E74Wn{zlSYkF!01r~4d?kDWh=4WsidICs1cxO(<4xULsmy`JgOa}2%0 z8VxK~?b%Y!?3fO{zaOmI8H*QI`PBvMNML=xG0ml2GbYaL=oQx~uxm^gj1Ah`Ssgvc z-`iaEHqO4E>xm=fXYClrzT@h_k+NlTm!;ByY+c{(>JuB3Tjg9o>bYKTuI-vC>$vVg z>jN!gXG@1if9s+5fyjs<>>p0i*IEz%C(--vKZoA6{`)iOy{o_f3VL5GxKe1Q@A*yP z%}eRMPgwsu>0Rds=p3a>Wy}8zdjF~Nf*g83?zw*5T-)^C$n_=k4y}(&q4nFLbJySV zuvw3GpI1=$lC^j{ew1Q-D#e%kSWoz`&9QDgALm}t163!t!<)tMX1HR`GB2+3Ub2qo za`uH)eP!eY-t+x0KTkpJg-r>U`VeW+sbdH2{jtgHVIo7@Dn^#lx zO+G$U>6;SiofLhuhI0YdR2M{QmX$C2F#2ZphtM~39eq=ajP~}I%71Z3-w+SFcE9zp z^TV;@%E2r0dD(~2IphC>I%lqsd^`MY^!P8eHP#H2i86B z{y*f!0JVV1t?_;6o^+#o&i_%oXkVZ8Tqn)7&5LbZU&4z+&_D2FkxTPg*yWDyxy7S< z{-@ACv4Rh*fBw7a|EvE&9rQn${y+Ucoc?d}(EKMn*JC~OKe{*ihxS*$)zj{}HAUXn zr|P4x*yrkb^-9({SciH~&a%K){i()t_U3-UaWJc!K8cjUQhQ2Eld-VPZ5^g+c)sGGUA;+|y> zhAdN0bOAoLL*zgzccx`Z_+$nDIqa!@6+Fx*kNfbHqLcDX9?*UH?YVz+$~R6vTv4&? zA@W!IQL8+Z9WI!TzCMHRYl|<-)E&*?GtOE{-z)e$Li;*%O8cT(_$;#eHRkco))Bs8 zUcAVT^M3zlaP)%mypVTV7wqW+XZ=%fw%3{0)b-;S^z(ZIyU){_OwGaa=WgxLXW296 z^R2SU0mTV6=$x%;*1P=nR(WB-#0rLUT^zk4@?-Kk%)2i-?>_ImThhzBQ$6qIUK#lz z?^<7|KB0EYW(CyuTV=Dm-#eh#1U7?eO`6|k1Wc^b^o@N}!*AvM_6+S1&)rb|E0YVd zq3o3XIVUmIZnNBOd(MLHw!6kt>VYYGW#n7RQ(5G|wA6uVMfZCSOviNIn1N}D7p7r? z>6p$Nd(ed`>A-Z(f$4V+Of?Qn>$=BTmUw8$wFh6tetK_U&-%TJ9dvdE z>bKNfsEZG^;fWJhiQ==Z=8Rg)8XkF>+QadL&eaX?QH=QQPrl>y*`0sy_5BKlS-{}N za9ln88wVyAo`+N55geZej+e>b$*azb=qwU$QQyhi5 z*5vML|AyjMR)g{<6D7A41c!zTMit?EnqkLdh_Am89271%60jz0=X~fEYNJWE)-{L0yLy$bqho?-l*#^)KQ-2~s`2o8$D0ec?`s7pGu5Wi3s zYp-e3;!4fbCem;6rK>jMPJD){zq6Y0D262ep?uHYInL*79E~YX z+pKqoCT=8GdXROTXBvyCM_z1wV`JE|YCq4JN^{x!sT#oh@$GFVUZi}Jt%GVdd+{I` zZ={_V^sP9x+MSDkGY*d_x1%wkx@Owv#5sF~_%rj>x7K~&n0c`4>)QKrhw7{^`l|+h z!6^8ZC!p)^5fl76G_8Azn~9ck`Yv8rw_59j`KW(F}gQnf=nObk{zMJu&Y4r|tJ29>M$M?RT=yjK&som6j_I_JupRKcB%^shfn`vZFrHx0$X-~i1Y2quYb0}IJ z!P#2Mbyi&nBiq1V?iKjke=(T-)!*2&hPqwR5@gya@PC7HW32OQ;2X&y`TBRlJCaLX z{79R#Xj6Ocq9x2Hw4Z>!18Sf56TIWfpTmy)Rom)=7{K1bi_}f>;Chm9O)}DzweZF@zwdmZ1)6MuzMm3(!yBe8zN=Q4XtwKp_DJb{^7v*R=Ipgo@J1f@ zVmzz3wf0Xc*YR_I=$x5eF?Z5_>JF9@!~I8o8-Og$R<0hf$B^N!4rl_OCP%K)o>RrK zf6`1o5P1JC`IT{=|7-Zo)r)0m)&%9wZ1s${neqO}Gu~?$?!|FElf*W?=p`a5Xbt)0Q*dX2#p~{vYl4+rigP#=D>K`nad@s-CRNKZn-$)G1wa z$~b$>Dc?hef5LmxnA4}=`@_+3hId5QucYYJGsJcd@ce%M6$@0%_y?ZredhWbd*0v^ z+#ly0Pxg{lZECf`8}nF;`1g129Yw51GR$Hg-hP)@dXRa|g1+Trr((1GmOQl zUo2bj81tlYxPQhz3;0bwd3}-cLDPEVlSkKqpIY$qIQT)1c@6_;!#7k{V48I-gW2NqZF8`}(75x+Csv5wp&<(cbQ$sTGKEze;8WRU;R zpp_dtIXmO*x;CA2H^^H#9r*g5B)aU@ z!L^%*gC9M+4LUK;_?%~mOC$p;%`@)vveOFZa9%9*P`J%n{4$?<$Njy9=Y?-_2p8w| z+Na%~`bKXJ^}b8qZb930tK%@RpXyI;5%JFXA#41pG`m0Dn}e^qWuoHt!6dmnGZXB= zJ5w0$c$D0{v(z^^eDSgMXPN86?8iHYeD3sRC(D7c37H|Cr#%NP%te&%cHM)4%GD!o z;)~3Eh+I8z-2%?lW)pZmhyC{^G@*Pg)oXlnD(fJtKRJ8KCk-@=L|(?Bs~Gg7T)_OX z@CkDu|H7_o$tz&aTBu)=!M>bU;A&Ft0dp5a9>%Alo9OTE5VjTbs&nnU_^|aXIdag% zH-TNbJ~@ng*C>tKYHR_`{M{aqs7BIgMN6lslCJm8FZ zq&sHXYGvG}_8iY@k4BXBK^pLCoOWJku%R6}Cfz!R8eyVKjoI{ryp}x~b-ul(r?Etdfihdd!5BWe}rVsAR zzH|FMi@YZXYVlTZ>)z9I*Qqbw(fm}XX3l@o{QPj8Lz5qHepWF*eU6cNh=L1~E6W&N z{Ow~*f<5NY?QJF=M7>Y?+{S#dHteEb?Fo#7|E_sw?6MoZeC5vlV-Dr$&j_G&ZtpJ1Pa z_DAS*{u@(~o#dEcD^%lCja6#A(xL2$r!VD9-$5NM4%?TN3kdGjUk%r*`PbT` z+WGtjpDX#lkAFMgFxar%Tx(CDzu{|K%eLuZKVfgYbh@YQ)aKYtUVB6N37N(p-CdvG zhyTaVdU-W=t96wv)3;-%2F^TivZSK?LNWGgk>is#<2hve+~lYBgWJGRJIDACxQ^yn z_(1}V;Hq&B`=*P~(Xk+OfSq?Bz4}Cy+@az*?AOR)-NAeDA=+#0uk~F{PEeZl-8sxd zfOZ3X_v@4P(|FEzxy_3;$jCxyFu-RXG$=pB>Wiz_hv8o@Y{Kt#;AxnHw=sMU^59Lj z=6w#nzUSCwu6^0g*uCc+YHy9smY9z}D>}+zPZ_kWdycPuHG7|nSu-b~DcNZFT{ddo zF8P~OJ`o}`AAR3 z8Sh%=f&2#f&&-*(tmALCn4?t{xff((s7{mi2Y!UMY`U}kl;XeR-0O{I#-`BBevggX zg%9H7srl#f-^9U%_~AA913fW8Yso}@*xXZntg_1#+aDkK$8|l{naA8UNt|c>-gPG5 z6XYGJhN&N%4afgkeCFB+IZN0uMsIDf@N;?RxfS|}ipHG2wZ?js9K!%PS98 zn}WIdbYvU)DR1kIJ?6;BQs~4xZ=dah9@n+^lwqa4(BthRMUUP7{1|HsKYnLF{;1*j zJ>2nHjF)wx;g>F&8<#?Je7`kytoV?6rMa#%Ic+&^#^c;mJV9rUl!UAarTAF0k%jqu zui9(VL_WC;x-Nn~T=;(RV2`zWH(&Gu z;J+U9?e+`3ckgYm<*@vo&78;Nt%oSPGm6}kEp{U~N&utrx4u|i&;sAf{;_KwW~gS+ z{bkIj_HZIMhh~hv?c_RSUn#bD2{Lbs)=bny3QzvflUTXy?Z z8%}JoGAn(IM={{ioBfNWZ=bTNPpCexo>ja0jB#JjZsRkJXSdwwUtFZVIaBlr?5jEZ zZ98k;_osI3x+=UWhjrL$@`H9>wQ|#1LPe8Ao>`0!^WU%pdkajp`vw@4g2S2p@q<~%wBzcO;^fT*Kzqjoa{P%osBmUonu9yFD1iF6B-Z7Chqw8}T4x&#?Ov|yk zy?wd-X2W4QHnt5%Gkv$vw$6@`&n%c(eL`nD%BBxhT=!BF=TIcD&*RwU`@z%o@?&tee8r75h&1 zYgazR*#_U|^S&4R4Xgb9H%_*Gi~XzFM|j6yo9x_jBFn$^x5~-bm2b^_%l2#RYnyHD zD`Y>_T;}&oDLIkYd$K!UG5atz$Nd^k*Wjyn@X%Ub%{$fmT=>tFR_{BvBE07<*2kyK zn#SKSop@8uvav7KvhVRrE5n;g@g*Ii&%f|xH(pO2Q}=K#6~BMS`AzR@8RlY%$cLl0X4A}nI<_*x+ zDPRA}GsFfTfnFb@jn_@v1D-fbo29h(?1gTdZ~vMP&W~w-CO^8o|Kx}0tDRg0m-o}i zxA5}*cCDur&+diy>Fb!*6c6|8Yqx9P^(JRt{}1-{*o_z>`X_0NPS3ja%Pg_RFx z#vsS36^i_R7CZZCc({|b(!KD_L-2?E-|^}A zkftJYX7kUxvahcC39?~2dI8yJ_H|9ge*}%`Ob7XMr5CjawA9K-9wc7ZI?LMEh962k za7V@-TVq`n*|-{?oYO|@EaYp6d~5iJc>fp3Bl&1ltLJaP<2&HQYYWKl@E0xJc0j;m z1DJS_ldp68c-0K)m75XwQP^+2>O~_SSzx${^p4KoC*tEw{c9m>@#bM($ z;f|YSrz~NNwTyio@N%yScwJekc#>>C?VHAbzAsTFJ>yTliEXxv_-PJt4&nE92ft0& zAe?jC5tTgxet-01a8gyhPyA=vN52@|1Ag0uU+|^A)lNUwK*IAD@H`wn)`l)smbLgxwD0z{9ec-) zXY}mj<0*Y;F5R||(sn(5tIUeglVpp_me9FJ{je(}<1^8j5Ai=LV2u~vgb(3G^KyCx z^iv5gmoUDi);`7P&LE>N=RI_PBm2xEA!K(Y|DlyxPmJZ0Gc5Kz#Fy?N#8i#y5@0n3pgxV7(eE%*k{&r~d&ROO6$3}e=Q z%9c{*M6zI!O|PQ!%iZxm&iLVfGyYQOY!f`KvDZ3dXHJqX9WS!!xC$M-p7Doh|L8lN z6Q9gVo}L z6`WPb{HF52*H*y;z-V|tu&top1h!HV7|q-OpOl1){~7zSjAYIFYH zx~U8w8@zV>b?mr-e-F=Pzj5X3*f6R^dYZb{va^+o;nKvnSATGth>-{Iq3i>PCQbs+ zz>0B`UdP@GWgoxt4PU>;Q@(!2raI@?RCg_u4Q1O@1GhiEImb7!vXOcPA>Y8p4b0nM z|G>t<#AAo?{*oPohb^N1d8adv=bU-`9rIXqt+jYK>)UgldGx~zZR@OkoU6L;95qAE zF5;~EUgp%7I;ZR4H|A6{=bhKHi?G+JFCw_k*O1%kkxiQCSHSN8=5`VK{0;Q^*_8vH zIEp?mN1x|hZR_)I^33&DcGO+RKe~eSuusWPcPuYFATlxM(tDreULMbS^_I8(**`XQ z>n}IQ_4DX4*I)dfwEt?un(C`R^!}^=!2Xl2{@#E8)yO}4|J7IjbN8S04KFs4_WauW zuSTB#;QOye8h_27v;XS<<^Gd=v;S&z-}|pduR0M?UJ-VRkL$-g*R|%_-hcHF*O$;d z_F6pAlipMJpFE5`GjC*S0u^=-t&iD{gFn0%F%ius)9i~hntr?{``MV}&{DuK@UEYDGc z>o~uY2S&|rCl8D>kZP-V){m}h!6)20R=QYmRoUnAb7nNyehgn^Ulnzg^3la(ZJ(6l z#ER9*21@X5a}M_6D8(8%=al#4cY6RkB07p^aik_I5X+BwH5is90+!oUABw)^Yi>thNN2r5d+O&PpD&wh)fvla_!-x>PD^h%WbWJi^OCvNT%j(N~JsK4melOLBD66SaC%{V^~46Z);|J(kl`QYvzgG+n=)La*r zLFmoH_dkd`a>?QQzV=T&44rxRPlfxhIx$T9mo5u*n9pGW#mF{j@6-We%3Im5ZB-XW z%x^>NJwtw;FGeoyFm)CRBg>N=b)uv4XG|PmL)mlo=bY!K+HL0BZO<9i-F7u?tIhHp zd(V(*GkSSsK5f~twC=q;YZ+T_`I5?CP!6m&9-Xf|1pY@5k5A`cxr{~dH!-M=YxpOR zDfu$=uiON)?*RG~uTJ^Gg*sw86BM(aL%cl!-<9z>mv?UFH?4=Y)-td;IS+2mh3NNg z7ynt|4)1}vjRyO}9dDQWB3t}}lSSC1Z|7T)p?<3)wVs>sdAq@9Pk8SF-Z1c5 z>>&}X9|g{BDf^SE``Dk??R?*>x?>^8{quF5b&6BT zCm|n3KgmsGOBC7SBga1P+c!nx#P|-)V$Fd}iK90pcjvO_1sdEvZ`@RKPrl=7Q#W}G zzVoz(!c74b`~F1Uho*@eem4p~lp^PMP#ZyGZUP?_wCm)RCG+5qCh24F7aK<( z;8Jme~z*xH`v4ds`7M+vU1T2~p_18T& zZY?_EqdY$iSvL|LxZm*yW@!DY=h4@;KUwyM{BwbZ%a7v!fHu^Z+SVR2t*@fUgV+tq zxAQMv58j?m^Br%+&e>Isk93~3I6bm8tBv17!~oj)J%>2JsK~m_dVVMW z`>kMQE_f2WKZP#zDf);)OOkKeAA6b{9CY(>`lsGz)ux>Wf9bWzroAJTN8;dbzXyM^ zWpjVqxi_8nuBo_Z(kTajryTs5`g&dTYU4=bZl$kQd>@^_PomPy(bPh9eS7WTO7V_X z_$!V*)s3$}!%vPlxS9;E#)2zwW@rQ3MEQiq#|M8YcU$cVZ~cgyOam`jtDqO~QW1G* zGx#ugJ3_yw!JB?hf;auXz`>hv$-b$|1MF`QzSy^6@HWT6n{qdp6Z<-s=X|D^x6gp7cJR0iL&tx6)Ve8+$Gy3ws-vU(bYZ=9#KJzk9!D zzM$N;Z|phU$1`T^Q-+$c$NGNet>O*i3_QQ+;~4|bS0)*F-st0*xth1Pb0Q_o>EXVg z*E`0 zeIL1$zOZ~~U)|%o#oCvX>nn)UpMSK;>)PP%nT;cp{MXs}1^zN$B*FJ%z$BUQSJfBl zG!8dLD0?86d`$Ucbv+#UBU$$f&rk2|*`c0ix7yF{bJ~sr7wh?bT0`DOE@71Rym)YR zyYO-BRJR=Zp(B6X{n_o~gp=-gk77Kr8szXgWLPb_?{U^mHE9Jo<5{!k78N|jzDwaE zBOKlr93S4tUbV`0>TYt~(TZK+pTz#I8W2NF=wI)) zl*m@W&MORej0X1hVc|XP#BD+sea9or_4~E)552T8f;OTRBPL;E4n2LtUG--sexCEy z`}3Jye|i(X+9kwzYDx+)#3r1kf5mqcd+d7lxy<@AFZQ#aE#+CBnSOKF#Y$bP|v5Xi44_=QygSA#3?G6Xt zeBiC7-T=1f3kljQhZb^JyKTh=l-!xqSY+hS+&5Ie+P32iuXV+PGLo6lN)x`RHBrt> zuDE8>Huz=xB+gK9&SjqmOi$lv!?e9xV-7YPHZY|({L0uB84VAD1JQoJE5aM6`IhfF zT`^`-=-sI&+s0Y4ZD3h)&mDR^h&?M?#GyyCzp9^ymfEm~M3ZM|+kMC8zn<^B`}J-b zcHa^GwLyQc@oolkFatT5A^w0@MUSs?KxPPV>`2G~`|FM^MgcprTHQROFczJkZCA5$wd3JH?Nh4P+ z|M|ovw9qA24ZhZ?ZAY#O&$5*zTazAonA=kxoA;LY@t$CjOfJNZ7Opd>3vk$4u_uGN z_Pyac1g=#}-o|yPAq!l8iSMG>A9LNC&1`&hhwS~h`M>GbS+4DDd~}Dx1$TLJ7rg6T z?Q!v$mz&iwZF9Ti&AE$oZH$D!4SK-0^bJrIOkxAb8fd7`Taw{r}s#k6HqrY`s zjEs|=69*PQdR_CveC`{^et!dNjqMvV_5?ma*%Lo-VZr~`Oy6#Ql7Zg-WHA33Rx8>+-QHAEK3-;_Q2wAp25w7rqCs zzi#S!E3WLyMtlM@6P)|%m8bu_9G`k=QNc)PKTt7pQUX0Mzx;QIktDEJw05uWikI~C z&GeYVVZf3DECKf4I(6AA-SK5XivzJuhR_~1oP5yAzith1hH`#U!H+!neU%u;djqfN z^5@8YX+yu0M_LeL+=beA%-Sf)+GiU3juYU(?312B|Fh`-5H+)z=bgE)ZGMU|QM)U7 zh&iLS0e+QW@*sTO48OFD)ta-Xo>&4d%wF5E$njG4(FRHiOl$(2oR(}L4tN{luHPYAi)a;UffS=}{XoXyZFe}{=g56hPE7;yRJyev_SsJ4scQWHN53l8;D!5>!T~ZtW0${1a7&)L?-T=9>N_KQdFKdlq*siZ)J*$|qr0|xpENUy zIWDp5`TzRg`j7)&x)}wGB}E1IJA5O4IbUL*pYf_W@3QCl8Hw4Fi+1jHh`D4!t z%b~4n9DHidQgQQ}W$@Q*=pK4%Mh+XC&fsh$@Y9A39Rf!?v7xJh>HXUI@%ywRJm1ax zTYx743_bYWw&ji9`@W|Q@p}vXXTbAo>Hj9)@9Vv1Q{GGCosm`=dn0T*jTv4N{ii9u zXZqUedB@N{JQan1o6%9yRT&oh%J9!gA1Nni9{Mthu8Ltl#i2Rb%ktrSYZBRd#rC&> ztK&~Y=dITAJwbR%bneo4jRyy^A-(kdbuV1d`B~`49k-wNyw5I5c~*U<)7Q(qW9FF} z4D!{9U&%qA8GxS3v5k!!HSpVZwEUqz77xIqhnqXpP$Gh|-9(CXAjSi>u@t(`42EJZ&vvgs{uX^W4&h6;ZSzY?d=*RAOhijiG z&Jo5ZZT2kXAbYVr!ivQ-T^A{mFEF9Czg-J%aZb-zj4L|?%g;QpBzo!p;gtT>@2?k8 z|7|Gs->fUU>c1UOd?oEOkr=r@-oF2`m%i2SOHRMu`fnz_W9+eRebuCzX2=HVsyI5@ z=%;djf#B%uOyfVjUhB*lH2!noB0fc}%uhw!`gl=vZ)`gL6@H6Tzl&JF{c-$-MT53% z#vgU8c+fSGVy+MIUb*W0AvdG&pLpevw>{*26q+jI9qU4FcfCE;Rgiz)9jB{9Qs;h$ zZKHnOgYPaKz9U@Fmpx|h@9p0I9G#4RiMh_zd2-gM$ZwZjsMC6}%U_gF9%HWKTe4U) z^1VPgP(#2W^x(r@^OgCH&G!8jDeq!WborXNc707_cz<_q&$_-QJ?r?IKF+i8$>Dv& zCt3Kv0{`Orn`HkePGn?`8=uT#ELqGc^e|p{$qMtGJ;>0ZOaHcg*j-OkwzYSC++(ch z*Y}9i+j7lggF1Z-^WeTW`|x~?y`L%5*i0YkwwacKyA{x16|mM|AFV^~mZTL3mZr<@ zYFah;h?55hgB}7m4riMVj$P zD(<0nqWsQY;f__vK-Fv2-g(uDD2A_B=VH-JXqRs!>yXXBDy&7++?O9_!CzTE`xt|HG#LVDeSQOdTV>>uke}B>qXx7!TKnMikfgyRN9d zWlLK9>F3hx+n&y-ci&g;lj@?W7Rdq2*QiCy{zdFXZ@JXeGs%KNvEm~%rrJN@;mbf$fDSj5dM2!Bla0sXwg ziY)#Tc?Iz6RhqYWF$17UM63sYwM*q zJWLLT_718}gJjlCv)BD7?mD9wn$7UWJ^8+oT%^t_>K|8S*LNMk@E|sP0-LI75%6I9$nVhP;>(GrbXH~5i*Np!x!Q)D%PaeIM1EZP_qt?Z zjW6fk!HpF5W_zB+iCcP!oocdB} z4Rzq4HH*5(*s`*j%-T!mje-Z|x7js@Ov z7O{<`b7E70qtj`F^H4=kS_3IxIYB$BN1(a{ao&k`h6_yI8nQ0|&1oHHa;6#0p zcSLv4=61_^K{#>olV$XQeDscd>>67y_h>5}zVPydZ0j^HKQQLk$wP=S-+9CbVhg~3 zC9o|5wk7ntqom+x7nxt-hi7zlpz35d@4%Ov^6XVEe{{iQ*FiP3{l53?{i{8m3o`x^ z3mUS}K_72;_2-TaT>^dwhC4nDPq^~D-T2qL?Hl>BRD()1+Qj@cA0iI`y>%G9)e4=F z3y^#Sncd19=sFvnDE(FD=&w2GF9VAsSCvn24K#aYu6>TK=ur7@ap=|5BZ0Tf*^kg{ zZ}yDrG*?$OT_$+!b@?~lF=f#fW9ss)9|{+|>K&i4r?2c<8>W>N7hp?FL}%?A5hCw| zF?wa~R`P1T$Xq;`0qroxwUfg8a`10eptH1&Pe}J;AIbKpHn|z#pE-`9m!#MmTjko0 zqu?FptBZ&8*{6GNZ#?X@3%$xuZqrK7zJ5$!v5?)D?@DadDIa%qZCbaj+Dm_j->*OD zQ1my(nX4x}I?$!Rdb4)#KEEUeZZlXHn7toYS&Q4KJu^Jr+ItOlMUb4w&Rq7zL36rR zoxRMwBbz%d-}zBDZQ0za_pBi4ft*RqZ+a%={2p|EKV=1z`Mke?XQ>z77<#vAQ^*(I zI2zyg?cCFRe2n+YxmHb3cYlfM3@Z;+wv=0+$Ht@Ww|IxR;5_U_ecpq;sCK-+E63tt z#?jBm*(k*REAtL)&H?U92d*=~@(8dz0xTh4|JpIs&6rR9)z|!!CiKJqUivQkUsz*m zZ-{(l!c*?Y@JndTK%aTkEhyJqhz_AY(bpR2WKDF6eSX0u@MteZ2$`LU3=RHSW7_KM z_k$ie^O&Uwd7@8-DF6kMM8oRUQ{P_yxwlh&}Wb zYWdECN88a8W5)1LK6ws%b``hQ94tT{>9fMIr(IiF`a(W+V#KCaqgPh3o-?)Z%=^w< zRycFn{f_D++IF|v^1k1Wzp~JG#r^G^FMzISJk9>3eizrTA7S;YWlcdnLDfOcVV}43 zb7qfsMK3x(q7@!xPn6N&Zl894j?QxA>Yoc^s;|Y^|C*a1a@jLC-}dmTYd;x(Z;F3H zx#p{=OQu|N*`#swdJ}V12JS6uL}dQWf2>=L?^9>=X$`fF`j9bXuH+|mf;z~v?_eEJ z&^(nj5qhR;&ldV!d3Le`<{*z{_sTx3#)t0OINEQncBDt<;mf!Of5?3NWefUiJrYbN z&~2-&VB;bF6Yz54V$FI}6AN7bqS{`gCYTfPQv#i*wj}en0M{1a+5%keI94%+JjS3{ zjgK*Dy(l>!htCq|GMf(Ed~xYAdmZ+FOh4Y5G43`5K4uzTM{ zmku8SPSJgutDpT#PhIZny>Im~U-j^VcR$Mk`5CH1k-L`IdZJo>X~t#Xcl^BS=Lht2 z&eNtVuU|FiA9lw#G$*p<Z-fZtn^qs#I*?ssb{HPW4FVrA^=JV_|>}{D(Kc_5z zum*45!D}P}IbXkm#Lq5Yi^7h5UvYYhTWjB@BdfEK8!uhSrv8kNj{N%8g zq8rtI96eW@dt`G0c&pGS#W!x*EIpO)^RKU>A97age)?#uhyC#Z`ff#!ou;qSJZo_c zXCka&%uj%y)4A61u_IsGd?@!5K<^6Hf**HlzqxP|&*wLCZWJ>=tsZ-pyx^kHbsyX;b6o{509M@DjQvvUb^=msqRq zJIpx-hpowxBjjIz&tnzvrEH>hc;H%UNh!BvI`dq`Jnw|wREPfFyw^5QgC7Eee6@2% zSOp7mtpe>)(VDQ3ca40h8Eov^OkcQTvah;e^ul{DwDU|Mv@{0W#=Q?OA3x1|(?%ZI zoD^NtkJ_FFJ&oa=OwrMERzce+f5&O$g^Sx^DY(7NgWFZ$wh0`vK6hdxHctN*95#(A z?pO{HuA#nc#rcfu*>>4 zOr$UEl~Igdv71<6*`9yrp3!;8=o!%FT!#)_`J8Fav+LduX7ut5=69Cls-6Gg*5eU; z%JsM&-<*>RvRki3|xXEAGsN1Z?jjId$0Gi zevdJ4c_D8*RbB1mJMARW4*WH1OY+G^*k=+uF_Hc3Db(K4JnH^;!9hIQg=2^dM}O;h z)7^KSOaqnxv9l)Hn>Wbn(UyyIdo0~J_Pa2IfC2mg!%N;V^d;vGoa|lB-Rq&R^CeFG zNMi#G=~`1OPO2P`JE-OC`d(zCrNcAL=-ut$J+=gWyGYOZlhW8)ITts!Q@`Z+*9vRA7ZQxSFYdV6j&F`@5+Q`rL=ziNLA zC%f>S-$ESjF#n^7RkpBpILv-M;&AJCAde2{oI7H#TEFLU4o@>MJVhI=;FUFRqiY{+ zeQ`lY#+4=%0Y|8U*RI-;{G#9ZLFWUY4n0(``*HBJ6X3AQF{4f&BqdGAl>-ks)L z!(-NW@RMl2DtxE?P4W|d`(y9aP3C#|U4aW+ek$@f@JN=rJR!UHy%XJhP~y|OK2K=b!5W#6T_C$Gr6phq}y%$yZ#=JPp!nc$FqvR z$B=(Lo(;0T%EE>p2uwqO6Ih!aU)w$pPEvhssrBt2Hu&lGxA~zF(KqY!nfch=v&UN- z<|PzQOEb1<0D7GZ4N=R#F&BO{Fu_m857ycWLK5*|hOdXk#zWdub!o3vDd*;6XW^q6_!W)xWQDu451S zF!Plcd0RPH-Lc@e^6tuWeR;bT2bP^RrzS)3)eY{xGuU)pYMFYP|=X}8R7*W}wc?H*OT4!m=&VBL1()t9!rsh4)^ zJne3^+fDbtyN7n?I6lo)pM&hj9TCiCUL5D50>9(i5!x_{Y zmaQ+FQE}x}&}S6=Qh3ZdKOK8jbEVky8f>=}nk#4T;#|#@_Ab)iVH?I{(i7W)HjE1e zBlId5hd40)U*6sYzN+fX``_o51ki$lx1uH?D4jBUvU5Q~nb zPOH>Q0tw#IOHOS|NBa%|1kACQyi}^G?GQjkrB=XRrtQpd&dJFIVy#$f6GZd>{?^{> zoSj2Jn0Mx%&nKU=&pvyv^{i(-_vcw_Z3o8Ms)?}$z-V}n*xh>8UalP{U0~ocZ3wPE zARjt`3!8L6>m#cL7j|peTh4(eJh&|G3|!OQHI)Xg78kA-;PUgoWZ#zE1FJsa(Y5HA zea2jW#;mD4HKXsf=fuVN&gLR=TEP>_TRB66nxQbcsz@vQ zpYyjT-GDBLs5t8LH4;=7c~1^ ztU;gKeJ-}~o8|YT?QbEwNVbP$)-2?-skdR?yO2}B*F0S9=bPh()_%rw;QOoxU&6vy z>+ZvGr2Q?92A|`>_8IVper@yDhqg#o4pSfcQVx78a^So0IN^KHk#c%t3c_I?i!e);gCsb9#-2kph3ywU6<-&RpI z&cuDIu@6-fBtKf8l6@`M3c`cUrx{z!oa-_^Hu;~Bk-)08*?Qi!B?GbV-7>K1tx#Y{ zY{SU163+gV4G3@Pog_Nn)a4@=O`QaCQnAVaYaNwy*8V7x-$qUnqx>8A$ZdB7ddtL2 z<|5Phy_|L7`Jx#QMpFX^EHB@O%;I;&aZNp!IfHpp?C;cZW%@uz=ox4(8-L*YRp4E7 zP>=j~s!s9jA1_Ain}ZvCbFjuYzplTZjmOF!4Zu6Hj~*o#E?;OJ^`YykoS0y->m(n; zR@Yc`UX|*Fw02=Uu(C>v=6-Ou7kIUAuKHDdgRT|ReVsZF#pHj;SUY*I3OlIUdsn*oG2X4=T|Fy5AdmM= zY~K5>8m<4NjpdBDoP5%9##$V9b{0pejb*ImPXEt1BVs`J%f>_xdI2MvMO4vAFyv_?`g{)#=tF|LVd0JJ=DmKPh)( zflrhV)O&4dFRd!tYM?F2upjZBe=hvjl4s)K7hZ8?nSZ^I*)PG!uWY_eIw5#EwguxY zcS6KwodYi;L!SN$bqpRo%15YRPmxrEQ~CvDljs_KeIW6acV;O(;o9$>KVrXou&noB z+3S<3MxIo9_Qsi#S=seVs%esMr@X7?Pjx>jv&VpPC^`!*FD^fN(HYR|B+WJajZKlp zw#a)RTAD`<%4*>IGcri}cn9Nqp7Bxpx)VA(@C5Zh;+bH*)?m0kfzF7BC)*t4*NA(` zS6qu92LAIrKC-bvoh9YYqxdKt$O`E}Zm@z6&BK)23RrkH+jAt-V59ut0IqWU{5aYTg;Ou+|{&>l8Ha`SD z*w0||etge|z{59zv7URP^Djc*`dk9N7jgzg@(s?r28Sk&h)mOdj{C6r4DYfxzzuWy zSJeldX@*CBZ{BTN^eSuj!G+G~ev~y9R@Q|WhtWHgjGtNr@tEqRREyMm5jeviUji(` zWA6Qh+=t(ro%-Tf1NBq#9mVg)C;H8mmfxG@!=-p%{I0&m@8~?k@1j}x0*3E_VJk2w zrmydsf9;XLINEAm9JDP22Z|wW#cptG+(cWE_;|+bxMOas^~St_F?Z4LV_v_uR#veX zJLdJOzuepF&C^Z`T#Sb_c{9q1c z?4bwE`F~k?QjVPX{2ha<)=~RlVjt*qjdh_n)*3U`h`Wa#Jf|2?@@m&^GtV(TeJ*0W z+CNjgu6-=!|Hvofx8{Wp&o-Ymt7e0@NZ)eVS6*AcrmYU@^VCM|UuT%M7W{pN!HsRh z=D=iU7+iSrsw^Bmu!Od9-#yavu3j2m<}LPc_p=;)-JEk?qOphIf3=0*slCr)I;W^% zOo%)Ru~TfOFni{&>~MB(;J)_cdJq^_HU@T^J;6B7Xfgc0@^gXRqPvysgO#}tJ+1r? z_6Uy>hsIB|bp0}Qf7MyKrp~BjC|w&`^~PoGWREBQO*Mm~?ltiTcw$%anJ2veyJl{D zwad0mKg~gJ<8$ckrylP7^wyeVf7>yAAGnrh<1KB)y+h&BoL2ueoZ;2w@T%@r{XJ~t zd5Y_bmPy8k|1I?qhAuof#S3q}Jg_QPe@UOVn)L!ce+HQ=xhsCgt}y3MPDC!QCT6+@ z*g4m2U?Tq$;6o4IrxiJu7_7s30Iy%W$Uo!GStq*ur@V|UG~LC;O( zzrqQ>RDsUe2F=&VmXX~8-6W|y6#vWamTl-CkJalM*S|3?TMM!?2j4dS-)i>!&Bp%+ z2S?)Hk7~tFZ>yL%HkQKvH}(NOK!|&_Z%vGK&UXee~W!#D(M8R7*xO(|-2Uo3mZ}3UUGs}A>-iKaLTw!oCI@W*j zuJpZh&$Ga!y@{Xm!KD4C6zACjZ0OT@iXSL9Q4fBWgP)baRt#*?YqAXlldVxxyi4^s zMT$2ZIyI(P;WC~VZPm+9ai+vxrfy6%V?p$qbeD}kCc#O-@2~LvWOyM7ECKY3)pO#V zBrwW8lFSNfPWhg%XOYtZ?B^lRVlxEDIhbebd6w^os5cR9%ic^& zGij;49k-fu6^r3VVhQbGo^RxNcyY;c`R+xm38TIv+yRflgI31Wfw%IJnVQMw;wLY8 zU)d)**-l&HZ|PO>;*WyPcU+$sn}B)vhU%T*U%P%vam^w8%6IYcG2i#(s&M%Hud@98 zlN|n*{MtvoW$ykH%SXAj>j`M~)2F@X#x6zc&`^?k7n8?=4)=mX;ddiAEC7cOfWtw~ z<8zRSdzp`7<|FqvXlLF==3|ig=m7tFPe(WL+y>gX>Gf~yx#^Z4y-CfcIV*5|L3G)o zAK$k}^H^nUBk%x^72hx=mZB!m(L7rqW`+tVhE^E6Bi)rV>)E0eIwFPcFlCS%(#V;v$ zV*9awD>+*waUJlKK^ye18iYFPkSHFWr=0ITbjIXBbl|)Q?VK1L=!CA6+ckBg$Trmr zWao5b+zFKZ&UrUKyRWYYOTy;ayzhO$a5FIU0Yhyr42)mCQyu=#{sHpG|4ld&hlYV8 zA6$BF7T>h%Wm+#fe7#I!l>-kT$KeI}F>m09Rx{VBRnY;h zyOX@Pxe?uq7U4T{Kh5uKly`PvsPu1ly)#OmWdSE&7i|0${KTf=>kXkDEDRCpT z10SS0H(2j%m<)XM)iROX`~~iM?g^qZ=)Y5SDAX`C)?X2O_$G4SJiqn=S6^EHwPm8K zE7umec>6G8Rvpcn$<#y>Z@Z6tmW7MGK>EXD!c7);i_p#3Hv`I9tSE9~6L@zE*NGdU zeQ0{cEAOsS4X<+7j}e2&9VdeEG-N{Q>RSR!lgMTD7vW5_E&q)EYq3pw(j9Z_86`wmLNMseVD$WWyyzczVz;@=m*GaPbWv4gVTSZFWG>jXjkVVY;fwA zJ%2^?)!EOjm>S2_KQd%J*iF#c68_=w)NOpi%cS~P?=vSZKTjW6bo-Q$tW*sHEMuCaf1n6dwbz3JS1#F?@8s3}!wp3dSLxa9+_gs1IXT~1%N-QJvbm(y-B?LzO^T+vOUAI)pI zM+=#FlSc~`9xa?po5ptZ){yzHMfb8vk~||lCEMt2t_zFYni%Pc%U*Kz#NET}$7lDO z+GlL=Y`j*n+92{cK%7;&;nuUT8R03}O4rD?MMfr(2lB7fS10tcfae#Q=iN0*RlFk~ zO)=5*Md;n>;viruZLK3#{wLK?Pp5vIwpO5*8qiBoQ=c_8R?S{0 zA-*H0P3)_SckNn*F7#r06uu_8`9!T#x+zNDX)L-X(EpV1Q>`=SPrsNsLSFEmVrN~{ z%&$+MAM3`x>w(65u?Ob;^T4W+%%{OAZj5}8sP{Rn5nMmKfwoYvT$&2z3_lg;r6 z&xsdZJjdZHhd-OYdoVY?Q3&3EOZKN?L(*M}&nqTGEMO`7na{hNIO>9)S;jsQ4Z3z` zIR5Y-2ZzKl)Q)VdA-)Cpkewiyp7CJPx{&|y;1X>56TK+L?|$>a3oQP8sO)0ZtSL6G zbw+PL_wEoFZ0y07$<=24WzA0yy1y6xluxR-fL&jnu4O+uaI3h;UgA|xpqo0J(9XS%!!d-^ z6gr`%735IJ#qA6qYJ8~033L8Y79Zk=Zt*L9^j}5IA}}e>V0Z=|77Yt;4tsHS)|Qtx z;9ILdt;eXtuE1`YSBrjU@57x_SQ|HmwQzUKB&I zb0;0gey^D}Tzeru{tE98;RQQyHa=;1sWAQ{>cEume1cCaD>JtBSmzRBsJluSy zUvT-|zve2v4jW}WIAZ)g;30QDzctK!KA5u~!$(*@WX}^wvEO;c(<9O4_inPX@a(%) z=jPUn$%e3bNn%yajZ--zop_J*l8JM1uaXb`o$+%deJ}?Z=GRYxcZ~crWK`;9*>o~^Hw__L{&(T|d zv}5RW$G}>#46e0jxNxmMi|+?bej&Txp5Xr^wRoNAwXW;1V_0jY{b2RIU}8D@KSkMB zKHSmv!Q{~wJ zihY=UE$B}=LhE-*!I9z&vL8CJ1Jgd;$9u$#qMMlLab4`AwGtg@``6l)N^~IW7+8xQ z$*e`!o?U{?_UYB;@ zbx4XIzQ$+6am?}LW0+&Hid>wCGrcTi8rzpW=+r#Qc754mfv!totfpj&=tLK_F)X(>FloH+4(KxrKxu*`$1r71)ocxx8Rtd``ZF% zX)Ae#V7>P}%=$mRmo*2Mrr_Tyo~?+ueJ!T#U|aUReb}#MheAtR_?+Ol&s1=I9q-f} zynj!H<20H6X;ZdQYT*7oK_}?m13&xV;T7IER&YI&_tuVa+bMufYEE>od)4pXeC?gU z_^5-fc*}Q>K5hmV6(_jw1iAjOV1Lv14E1hvpwWsqeD`=yeo2MbFMb?rBYYo|{8yapzN2`e*24#0yMIqHI4EWgh)*uPnQ<)d8+z|WXe5wxZ?TbI zu1_br@%wg~{|r6Sk6(Y*k5g3b*K6gCu-)`XVHtoCD zW$)AepN^~jFPrv%ZQ6IQC%sSm+lOiY<{Wvdn2=;wF|mdlsfnm*s?=EuZMEO39FT8T zhWva8+NogOLLvI(SJ;YWd%mYJrCHm9zbKcgEpx#<-P2_%u&_d_g@i9 z=HIi)U8CggSNvMRJFA*_Ui<`4z)zRO_6`nXV}Xy4d-$-vY!{HLGU~NG`Zza${GrZM28XTIviVyuXE5-N(s2O7Chv z(!JO(NpPiF;`Q9iM^DNI-AkUWlC`3o!)MNcE?`Z$)-Y<#WA~x^9%3KJCY^Pp=ZQ5O zm_nOc>-acrkOSr(d-!lBwBBjue_v<>w$XzRMFROvz1TqV?eqTcibu8(Pj{e0*?Pt% zBkrR$ciq@{ZXVQ)8$?uFjeVP}^x0_WZ`EPUhX!iVNvh3ZZE;hCx`%wm+C$tUpSlL@ zg`Knc?u8a1Tb@6!+{a#p{-oM$h~dAUxw{g{Py6y9@(VOqhc@S zd`#j_pQh&1#6x+$hG(mJXC-_ld#?fgq8bvdX`RKr%o@?~J>TB$1e&azRXkbs(W~&K zRU1eyofv!6#J0+?W2c~RwEnO$9Byi4AK=C+XE$-2rum1QR($x(y7#?{CwlAN3*+CR z_F^sY$PVsgPFwKzSCCcMqeyc$8}^6a2oVkr-k&~oTWvO+OsollM(@TB$^Gch=1PKfvCBVViARy;D5xViAWfWFF* zQRHXlaR$Lo#bZQI=d`VSWES5=6OHgtJvM-9n^rSlMa)+hcB9>+Zw@j@@0oey8TlJ( zV;ebV#l{YwJ1fH?@z+%!Mo#E8K97X&4-JFwANpjo-=3Ia;*nW@R(XOD^s4pYVQK>W zG`eu{g8l|4)U?3kjS#p{z1&O2c5%;Lc5Ms`Zy zYNHmwFaEJ?Kt^ok-ZrmITTk8s&&i)N>l>g6)uAgF_oUi3`M^lL4muk$PG5}Z*W0tS zzR`zsOV4h6%cl>gJMGB%UDf%@7dUa^e9ew?MeK3bHrRRCYJ60;HrJK^E`E(3n;van z&pF7h9xKbN!!>&Bljt>SF#US$vizaz+Y;<4FCJ|X+@qrH+UvnjAF^@%{HH!2q`zv` zsTS9VGW`{4z2EoqW6N{;JNpRzHG2K|&ojuZcf>DvZ*+D&Q|dGexgQx!5OuZnsCP!|)5y_F0CGNhbpB4Ni(bC-b z|ByAF>tOOq7t>>#YfX_9f>i0yc5!5yDHdAkDbP;;n!4B8jBgJPXIL=Od z7V?i_lYgv6ry5)GmVs5Ohmo(?L4BwbK6Oa!;g{6D8QTS%CMN;=`M{2>OM7SEy}Q-L zF)?y}14iUs8r%$*Pt{&ue)*=oOA?)&v)aR1!hPgV>u9$D9oJJ1eutr@v7C=vo28{{ z_6_M8E4qnf=>{1zgl@1^hR_Z4XnC&&x=~G&YzDKY9)6VF@O|*!*;ig#5^$!P`^u-i zcCx9PjcHDd4PF?Z0^X7h(f0D7Gu52c!}X7d^P=C|iXHU3mBCsYmpCOxj&WDT-J{Go z+vJO>Wsh#^#;%vmGf3U5X`?RM{)3~mp=W8QxuRgKIcwVA&g-<{w{;wBxX_u=SL=$L zrQ0~eU1L&x#mb_NM{1qOL$&+|kOZ?BNA4BQpqZX7t%IFrDU zI<364sA$_G^_lTv1Lfdsn{amZRVFX%AFJ@NiSZ_ALt|2o#+)5D44rn3c6IWnk3g$k z=(p zHfkik<+g*X%E_fE*P$2?Yrf_ck0VCJzE>l-R?TehC!3rccP_QUjjR(a}w-sdZ{WW^CrOn6W*w=ge2=#P}BYjn5wX3w!kaKC)io8*w3z-S6EjG z4D!njjvHM2O21XTQ)!;59;|eI67M(V6NICXI`p)pu0UpHKpi??w6(3Qwp!NId#w7-@$1TEvR572u9 zpT|F;MxvOwWdI-154+amNAUZUZwsod32)Kk)J-4!||UtqM9w$Ynd7scqAoWL?%^9&)1(HdxY_890AVb@#9^xH4yd2 zjSZ*uNqea=NW!nVb0ql{@Z*T@zfnB`ydM}(op8tGSb&(0Y5$cQO9Rl1xqg-F-vmp| zGl}9@U;)oB23E62-A7}$0~>uc7dsyvLKkbaehOPheHKk7Z*S*@dq1P!nyB(CF0ME6 zy^xy8)cokC30Gjhfph;|0)1$T^Sv zU*C`L>9p2OdtKBcmz4j}T8N+ANQ?q}Do$QQ9cm5rsltn0lU#LyW9oGl$ah1Q$S$$* zjk_6_+EDDI%JemKZ*B46ka2o(gD-1r#0_>0GoAz6-SseYiZ!O}dYD4uC&3mcCfIE4 zb0P7%5O|la_y@sq9rHFHK1F6~Z-EWy`>n*ABr}WPL)BGB7`Nh7vQ4Eg1iyZtLd+@g zQ*6MeumPXJ2D}{`@D8WFXZx)F-aFVc6ngDl;YEO zAKP=ZXXlLd{21~UsnLPh&sgUq_-mOT4Q-B!M_B{2f^|jo42R!uJJ?S;4H%%y#&8a{#^ z-RG~P58mlk-NEc=`=L)OcjD=W#Dy8%U}(x)n`3QY|2^#!lK}S2S|9qn2YDamd=t?? zcvnT~j67#r0@zd!^MSF**>KLuE4GpLXG< zo#?=coHK>*ZPuc7R>E7zWc&V+Wb)&@Z)7rU{d|FY_69P!+4(-PSW#MXHtXY75d%c-C>K;r8>*c*GJrE!k~@$kJCP;G zk@Q{Izn4b`Qg=n$MQ5p6zON#O%2_29W1Xp;H~xS#rEv1bH zaPLz10iOo~J~CD=+oUtQujcas{1tdaF+KPh zdM}Q(-w3Z^Pl%s|18cX5UWV|q=!YDAbrEogpXp!xY~S(o^9tm(`1wuMreGHp7=AYN zh97#Nw{KF|>^mb}Z}5i$r9y@uv@P!Fi0fHpav8zx&_4pLd(UpJLc8r^U8%4oj+5HtoG8o_4Enj0}<M9{WA@A3B@O=xX%F zKE|yzHPYqi)PYC=ynudh44*#jYIhAyoA#5DY+cBHE7~VqXD{fylKuRv4s;6V((EVS zehu~b*HDkYpR-L0xYvUpZ}%LK-XNAX(1m@t4O=3rIcz@3=$(V)w4%~Cv}gQqY+UWb zV(7v1#rIQJpuW?@atZ_CJ~lU=7YKxRmIc^*nB0u^9>8xja>Ck{Bayepr-@2VjEwhE z10mYAI;To{sbz{QC%k?HTan~i@7d;jXbYQa<5-*2UV{%)Q83!X`zMJ0ka75=$T;#R z)TrG5N%4pEH?{86F>49^WAXZEc3wL>R!xl8_A#iKEU{tRSB3g|fb&J5=NjqfoW5>3 zhQ4%`&%My8=)%xlC9%!f#5U(TrNk`SsbgvHW?p)jm)`Nv41G!8ZT*Eula<6&W)m-& z%Ulu%W-S8GLqE(<6IT83s{#!x30=jhloDuOZ_!c|<$@!C=0~PpGf~(xX72QO<$H4VX;L_PR zYw5$<6Zj$@ZJ~W)_RODS_6f4r=c)Dwf540Z`yo39`e$r&XnzDS=bz)07F>9fjTSZ= zf2`Q`K*06yb` z2;Y3)4IBk_4TVRisvR4ohT_(~!Few%UU=yPgM(8IUEk%=ZrxDYHT*f2{OWb^=V<5{ zzLdPwxi&rUWiR|M-u&Y;9&eI=NL>eSjs~w|q0iG8=XmH7p6tceI&&ERSM`)PQzzxm z*XUe?WC(qdk3JcNKEWUBnhPAG%1hyqY1CXymCQnBzu_djdkIbK8>FO9{{;kkf#y&CexNJQ-v4hgi zd}o^Q5QJwdl%F9^V*Q{+(84TeVHUJ73tHH5_smDTsC$}Uu(EF?xz?G`!^Zx)S9{r8 zRQqp~5HBc&6=8eWOfq0?%JJheW|7Aq4x@~OY-ASLO=SH zf7U8m@@gG_Z0_sayij}{*HxzenK&o*MX_^n>}!9^`jYrW%f!R`e(v#bNp#tdefrbZ zo6IrwnAv(0?V+uG!F1lmLhv^e{LKV^Gr`~byJtN57@X~s8>K1gz7tyI2%V#7r zuSb?3Km4^RgLUj}Qx|E)=0MH{Vydw^;bvgMmsBlE@_Lt!RX?tFTzt6tx5&gUsk2!} zjPDsI_H$yGvcW^-9JK%53g%nuAi8M7$W`R){DS(vYnZcRcPq=Ebit^QiSXq496AHT)p0}d{XD<# zrO#_v%ceeeg!7tu!Chd4duGf!a8ed_>3>ext$o$n*h!K6hYHScVmB?mi9QQVjV9;g z^i`rOd+4tR-gumUYHpWsUMciqdBL4$H@{O5f14T^)l|NwS{XjyVXtdF|flEE7E^@eSQGPwQl3oAGUCe5StB zwf)TAA{(rYjZN5TZEWxQQ>wv1&It!*P5Z{^vYzXs?fbzQb>MN~O7`za#_&8eGY1;V zyLrl;f=~D^ki89jQ%+*f!@!8XwX9_n?zNY(yRY%R8Q8vgoUomj1DoL52VAnDEnEb+ zPP?Js?geq=ywT-8`ckYyJn26V%Ip^hPrWxfo8Oi%p&Yk-t_sl{)ice$&*@L{; z7iX}t2)i-+ZjQ}ZgXInVs{HL!H#@ zh;H!3EZuaoZ@>oV#?s8W&`h33GkLCGo{>MI8(03QUfj)@eIDA8PcHtPKVxY9g>c!) z-knxf#DO7Ge*p~gN7ghu{d(?bbn4cWN8%Oqwe0V9{k=!0$n#_^ejv2^1>qNYo~(_Q z4!7U!9J9Xp{ps}_&Ndg#j>7hkk0t-g&^9@^So7bI#1Ks8`CRW8%y0 z#mL}dYHofC{p5bV&T+i(zH-HF}ENPJ2dQvsdPk^mV?+FN=wPEJg=P zUl*W{-TZRC7stwrH#2vxt{M^7{xMso!Z+wy>9IBNpPO^b>aqX0Zb%$!sE&n?GCJ0~ zzEkxe$aRfJuq&RWyD)p+_Nz^?W@y)A8li9^U(XUIfjX4 z?K)a4>uliv%-fzk@?u$r_7$5t4LTg1jZH~DO|!JFc+_dcOGjtpQFDjUuOqO%{qd(E zvS^q%l&e=K#vZ2*=`eYO{iWEya=@;ikmVQ=79rjXYa&`hi#5CDK=em$egL|fQ{o_#IV)3Vx)Q|Crul z;wZ(jH>u@NOjUW?a_qI@OV2R1V8TaKIV$qtZv4Wv4N`Xyqk-3r?C@lU{IzYelWtc& zb*Rs_fOwRAw)#&)`?r(7p`Bnq4s30|-{$FoHoqRQew%AI z<;O?EU)FAt{NKiSbxudF4zMuY2uxkT;pH;2>*zdNK1EDcdSHP13&ASbr30i-BumSI zb8EBn^pwBl*iXbAl2%?JqfWGQ>dC0@!i$#wZU#pGS_#D;Lgc4(zL?J0)V_tvC%ALq z+U5A-*!m{M*QOZX@;9=+xMbpi&8}SN@$o$8Ym}BbXMZ`tzM&lDbCb%Q$=Z- zTyCii7la+SwbZdEy5?N!rr6LJ!oHT&5RM=BtvyKjD!y^jl; zh^6eF63Et9uO!~6n0*(qnu9mG@pE{z&AB+w*jN7ed5V~zYAg*NE8Q5=e&EvH%<5CH zq(@AiHXk{sJ?#afa?b{4V6{1C!K&JBtw--hk816#Vr)Imz2EL3r*IAN0bp*|dC{5t zGy7VHmqou#?s!QT_zxp*B2lN5ehg0h{iuE6M181F<+zE#fsZ^BlN3H!pWbv$PL4Z& z26fijYw0xbL9WK)!^q{u)W)(lZ3sS210N+r@u79xX=JW_*Wj}MVzZuX$h+ftchb;z zyNOj!9NpMvbK?c*Op_ZowMXPW;jhEwFLho1x$?n; z40dz(f=P5Yi2tjzl35q&>IwGM&FG2RKx`{#RUBDQxU?{&{Toh>sU}VB44-~+J@L;A|i!MlCQ_j;N!ONJhgZg}U(W7qcuKHj(b z-tzm+=M3fd2bs?8VaV{7`Ans8DI|4%R)Cgi7~M3YB)Pi?+`skG_yR zdLB9R=Zl?b-Dh&ApvL^7Z}R?Dri}bAB2* z>FKkfm)W%UymQwk)f34E&G%w8Yh{DpM18x_$yUL08A(yX> z4$$YaLE<*O*b2S)-|%PYdSrALx@4H#ct+mCJDv}&*r$B(Nc?WTY&`F;bw&w&J@c8vgCVr<_9Ppa_t#@6m8XWqRUhJ;ZctY{3 zX|n(w(~Td|T~b-vGYJ^LoqV8K;I5~@nYx&H$Y&llj&r8vFRxae!I!(oJn)EcC|p|q zLNuFXOlc9yEs96?*0y;_?g%m%DroUUsF@Sd#WjroKp>VM70F8VQUGD zU!?iwp6nJ=OTc&C*S!QaFGkmFpY7_$XJ!xdKzGXFFUIcfB5qO0bx`vNEb?*PeF2>e z{BGSre*7H9(JlCaNwlVQM(R&~ifTMq7dapsZUJrDJ>irq>p>=I{Ng23f57u0Z%i4V zjdlapKJv!%e}TRCP0t4MbgRZvHFt&?OZBy0t%3hHYH0LKwXLD?esgo2k@%OG<3cMR zWlQ1rb&f?oorZkc4o~bL&c730$0yj=>6Gqg&8KXiO+WQyq-?FxjDIY1bQr#J^Xh{5&} z7m*KS{DWV(y2JVh%5~~ohnCs>-d;l=jHS@e33P3}>d;;&iItnP;j?QdPx<@7RViYK zsq5fZbXyW%JfmaqDNdxVtUk-pG22}`U2qG3NyXP#2U{f{sQ%2@+p61QjjQ5l6Y$}* ze_9foq?5T!H$_z&DZka!9o4eVEreY`t#Eq)d*v`4UG*W)cXj*B;Na^+eWXFgq4kJH zhjMLn=&nnMNuxuxWB%-KK>@_7>~iL$LMbwn6?0u&);mewfHSoo_hY~=hf~} z{LOD180v2#M|Y_vQJ)!k+Tg|VHHVU)r@_<6$1mD>@_f;M&7pTUACldlyazpztfW3` zHuYI^sn5C|`G=iN?ZH%?Wur4N^-R>9-E~UrzpjN|8As|yAHAYeOq@)*!;O zH?kC2NX={m^&>MgvSwEWYlNgP#iz#i@cKF)S#z?*?=i@lbv_&2^1~710R_S#b{#Q+ zVd4R8UOa&H6Bozsd2MJs;Lrcp<<0kt2blQ3i65PwIjc!=e?Lz?Hc21;z7y@Tvt ~)Nr`yPA=>{*k~pNuX10`~ll zBgBT3bH(mz_UH6fvtev2;CPVw57iIImRmkid+NC{Zo%m01;VnS41B)>zFgR(e`PCn zp|3i4U$p^h`%&y3)o5m7+!tl+rRI#i1U+Z$CD~(qUkE%ucw=acdsrS0x&ES|Kk;x* zZKnA7tKQt=-}C#>dd#N(CHm^>8%kfFIS%@|+2oh9`#p6_hRntu$Im)a>>1nT4aYe@ zw&N43RIB{ltIVH4gWhH4fBjXpKX=YEo>RDIYs+2C=3zcAa8OVf^bd zZ@mKN6mU*Lz?_pHS)Av|VH=alU9a#9Y7`EW!H#EJRJvn2n8gG8?tCb=#*3L8)z0zW zRm@Jdyln$nPEIx7?42_Nm#4uqg+p;^-@(R$E-pN-eieK92ly}JTO6Z(^Mkfyw{K>8 z_Kl6V?BhHte|*)%TQ;JPuLlP=B3I@kUx>N%5OeXzSPJm%A0JOG8uGS>I1BNOr9H%1 zBpZ8)smR~YJL!J2uHYErCPu#f>&K29H+h`BCXOL)lCfKci#D0!3Zen1& zL$IM2yts+!=V)=0v8tmvTHIt~w4GSV)J0yLNxV;d#K83FHOe z*CNFynBU>z6N*hJM&XN382D{`;@!DJ;}eQaC`O_9go#b?ei!4u-yF`1dn**){eKRYwXP1jdtrsb zvYVse*gfZ`mi4H`#M{bP3$6WvIlHR$CY>el=*ZTdb)#ArVmA^`9q4-W8otkM?HXUu z+EX&3l^Cj7K6gVc`wAM}yFqj$+4FvpBl zd)Y|lD}SmrRElj19_@{!^U({@J0tP)7M&SwUCbE}-GwJ|{=)}awNGjHUEpd7y74yR zx9rh_?w;UFe(`j2U$MYa#cJl<^vyjtpYWq0&&Ge4^Xzv6ORK=4 zo_+AbADU;;h4WsZ-3NdC%{}U;THk56@a4eL0N09bXpi7QV#CX^gBioX)sw!y=kag; z_|1Ypzx?La7yeme>06`mjfpOM;KFb1(b$Ul-o?AxKg65?_9$odtR}vtcpSL=AZ^M{ z72RD_DPP6pWm*6F5zikAn>EJgkTVSO50AE0Eit}eTlH;rjgR|`)yuALMi>|>tnSx$w4QRW<$oBbr0{5MK{|YrHGGe=)az)f)B&(Abw_ zCl=qCXK*7LD5t(d>-+6q8rlaS0e$M6NW&YP3)w-A+_cSk|PMW48XzM-*D#a2c6A|*A>f8N1y3Ahx5b|;Ij@L1dndM5twVo&K#J*XCrY9)`0c3 zum<9{z%TexbCCtue4^Qdw?_w}A!=!9=SXlSz;Oh5v*qq!t8i@NO4<)wbi0;0Q(emr z>JZFxtd-IHZ@3~lu#sGm_ASSjJa8hiNc6RZy^6M=L$^eOrQnLaO|HwzeR8>LZ zz=iR^Nt{sxO{_x~Xg}{o`OcF)jIkS<^25O11MEiw??4+H>EHael5PddScVcUh_bc!N zQ#V#-@Etu0 zzRzGkohruL#duqC#=C~`8k{p;#T>rqjd>wsUZ^u%kd+#D72}NnAGAJB^}|WoJd8cb z*ztwhoX?GbrnBQNCU(`Nu}?x?V)v+)wPKiYYj2EX&Ugd=kK+}-6W~j-)8gp;Xj1rv zf6!AG#Hf?mZs?YKpNQ#zl)!8dEUfYMnN;^nZh4= zcH1b{Zw_OhDPHy-`zhTSDxFDxUC{6>bgp7mv&X_q(A3qV z(ckEqIp|@XHF*s%i3gWJkLO36X>)g1l=g+4Y5S#{#^F!1U)-(K)ft_}o*z{v_Ht?L zOW>}W>tg59SgMj3i>GH4=c*+q9YxOOL(4OZME8oJx_R_CwMf#N(mOw2;O-{}Z@=N} zI?b%*m9CRMX@TG5`(@5!gunMOKl|_C?8v*IKV*)0MK)!jGs>*h{MgM^m#$v!EN#HX zTm5ceX)$MG=z9WOu0F?E+QMhzHs%=_ngD*6-#-#le6PlXKeLY<@aNHf4e+~hLnnS0 zu#1PK(+-1+cKc|zF5(>6N&nXb>PxR7-ZFomvvfb_LJL;a@jQebw4X7K3^=70mNoFc z)~RbPxNPPx^Q^{qJ)ep>J?`0YwX0k^Zt=r2IBUX{t2Q684tPU6zZQ5u1)S@V1v3kf z$?HCj-S&yru9A_Qvo@+#GO7!`c}^hOt{nLO`P2mj*dt@P;-Cdfwo?zg-YM9L{n*}t zJlcl6{~Wgc8t|-~eGpsL`ObccjC7iob z%lasMg53eu+v`2iO-MQNrjNIFKKzN+q5`M2WK5t{da?+as`#y?y%co#efBza<7uvL z79S5{BPGCXN4--z+;9GS&foK=Tl|0C(n8|H$4m?T)ZXOMf}v0PUjx6UIGa`Y+K(?# zz}Z)v`LR^%VCRBI#qgf~wj0~9bY$P{g*W=3G1(8=TkC{-q7OsM2fm10*~b5^A931# zwEW!I4{yHZ(qFOfeL*C!yKtei^Z~PGvM~Mq#RP2XY;geNQ0 zQlpU!8u01+9a~Gx)5nq9YHP1TU4aCKy?#bM1^y2M%)gv6bY@ zQs_-=^8>dsKZ=VifYuiRYoim{$sS_|wlY`36?^jz)Ir;I&=h<0j??E#V!;c~>VHb- zpDg0Nn|Mz)6E(GcKRnZ!*XZOoE$11{e~9nZwDE7etA2jLr-7fnUIhPE{8#nU32Y1S zv(sld(-zQP6>ZmGGp=^R2R;rg>Cl~<2J7?s>fZ^@C>qGku-nOsl1@I`sixtNkh`yn7k#SDU@J*c*75 z_ET#ApUYyktatIZ{{-!8j16{-^%uKyBphpe*koyRgY4inv{5|S-QW3)DeV2s@239~ zqV1)b{@MF$nEuW9+72IIlh=Q(?Vt5)!g0Xs|1PJ#)bzpnw}k;PQ>BhvD)| zUSC(+zE~HezKTVUgR+Z8@;|Cox~7ORh3TgpeQNeILoX*}+v&G4(e`&aTeX<_Yja)% z_Fm#f_qPeme+l)zyf3=Nmk!1Mk#>qrJC|qnMJrOC-ALfo$QZZ z4Ua(E0}G+)D#oJtPcO1;g5&I5$G=&>e5ir*W13)g1P0UaXY+emN)`?D2S3_C4pxJF|Y2`SkA}l)Tny zuS6CqHZud;X(i*@fK0y+eM}5>b7Ga&@rL4CwSW1SE|1lKr|QY<1-2@>Of@gs_n;aa zZ#DdNerE6O#I@1(ySSgB5#*=V9%gWVzTxX#6(^kR+k?E$%<1$b zuG%(M`w@N+x?z75)@>X6AK!&JZ*Fu>iKUUh6M4Ro=hM(Q`AOryq$`85G;M0n@H9T` z1n5Biv(8qN>?(#n2)oTB7&T1S_e7SaY<$yk`AFVWdKTC(o-&DR%b0C|^ ztoH`z`9*F%P_d;lcu{R7WqV$N|BVf`j+kSG6T&oW|ZndHqkR4IyHCPesh5jy(_s3pz^ee;&FhfwqmjM>c5RSNUM< zZD-CNNMg@*;R7n3TP0tyzR0a1+b)06-PgDg8Y!V2;luLD9r!)^F5lz()I<%|6}bI^ zFZEmI?-zZl_*4S9?MyCn&#{5dti65uIok0l&9zCT-k@glmzU+-09WX$EU$<*AzU(narj2@|CJlbdYdowjo?v2GKLhqMj z?_%HXvg^X5$cd0>7hK##ZAb?^<>-7p*U4#fUww$T^tr~sa?d8^b_9!bMFqTKzt5*#@wal``Yq3?|Mv3*+a4h&AL~JO z^b|e&$Z98WAbs)bM;c9@-dz)M1J8=a%4zH1+nfW(r`p#!6OxO_;$6ivrpGF;Lk1!< zl7+;7bd~~f!JkoEm?}hHF;|)=yAQeS(g1TMIOMNNro2O4gT|${Czv&C<74s>hZ}n* z@*{;jNW=T=$wyxwjXg?ViYFHXA9#0dpa&+!)Q@D3{Aj`Z2jEP>-{r1Pm8BhMNj~+A zsNbg!$A1f4f>H7G8E*V(m-6_H*jk-Sx#eFW7red{?d*Xw?}*>Nk}K z=p~M?oF1EA%)5ETI5`i$#NOAr zwdeh(vwM#GVP{0&%g|L}Ag@pUOu;?DM|FP+>v^=-gxXlmGZXM<3|=4gXlnIL=A!=F zarkt&`;XcCIW(wxw&CXI``mZ;+wh$Mh^=h&WlF8%9tw{MPo-L-KQfs}01y1I>J=VqEM|#~JhPU#@C>x7OL+h78bIHjX*l zV`{88Uu%;K;|2IoqDNad^ypOTr$c$h4_?7_1vZc9@UzTe?z;o5IXUdz!ASO9)|l$u z*_wag63xlK7LC`4w%~^<=Dsk^+9&2+d*7tso2c|PG+mCqPL6l=<0rm=Uj~gQ!I5CB z3C#jm+KWf_suQ=cJzh*uR&+`2Pv?HI`m93*QF}Dkt%ZIt|cz+rBYV5tNen~PmjbFCF z4CbQ|pQ7>5-Uq_ODx!SX9vR6GDkeTTwlNPo4BRE@S1>OC7X}XSVPTj5R?WVrVQ{H< zZ_=Dyr}{Ci_4f8W^7NK%>zt$)Gqm?T`V>tb+?b`w;m()68Q$~nmybQY%lRDohBfwu zyMUK@)ZAg$@2ZIAbC%n^n|@pP&Z>H+|0&sPqN4>n#+N3TJJ~$uxi7iT?c_Np(En7z zd#;M-^nBH;-sdah-8f9h@U^>Ntt59@TR$;Yv$&?e zc8t>`KSHw0%w>bCC)ZG;@(;|h=0|Z2^|9H*iNC(l_V=LC=h^z=5A|KG<@IZ86>(S0X{AqOA%nbZjWzHkS zj@#w@Vxrlz!iC?ByB^%1b1pFO3#U~c?78P3jxg|M`Ni5n_KfOJS8B}8fTMg1=Suu> zhW2Os=S^mx4Nq5D87G^Gy%dek4N4C2{cP&23hxdP_i*C%iapnl^>kF$PAUbqBjK~v z?B|umXA-@vI*G@KjY=0Qej;B)_g!D-tXMUCyn?#|_|G{@%H~e{M*5 zJ>G{-y5OPQagSr%8fO|=(10FqaL3xFvDSi!dT*R7JYAlqCPcD9vR8evw=F)5k#B7_ ze}|oBV$#?i$ZW~R!uaoaPcoA8j0VmjUkm@WX}!@(`Y1V*TqpfVA5Ta)v7J2Y_7{l1 zpc)kVOJWbm*6+lBa2VH1pR#o^F8xZ5uN@~`oD~~=*-*dP#t%gw|Gt6t@{tjvXb(GF zbGO<@d=@r#vi@&b~1|yfC8}W4txl_q=ok3@F6jys@;XxwV|XxI52KnF=@Q98 z$;LEt@vV~J5IgmC;Sf7D#r+N=hYMq;QB$EfL=xE{n^kfq!SBEI-^Zp@Zhj_f(bv(( zdd50Swk5Ih6nId5pZ1nIt9e`3zQPK}W4j)Y`=CH?Vky3XtmIv`nW<))!EWP$uX(U*As z9^Q>AcU@nCpB|2H)t)+)jGM7ZcDi%r#&K+JMKbYW-(0l#dB;aTx$A4p9w+muO&aYC zj3-_#xT-rjw~6?b;$E^5FTXqbaPZJO57dPMOFGFdjsRBs+xSEC&HZZpsNkXT4?H?J zxLMC2W2Q^S{#Ov25BV}!7eo}OM(8Z|0sxQ5-Xu1a?D`~qB!M9?5q(^Qd?tolLEKhz zV)8h^HpuS>kxS(vY<1;!kokW3WnLm?UcyVdy?L>}x$_cUqIrpU^P*>L{3bQq8R(qLx@qR= zE1Dx{J_(Jb;GNF7QTmN|an|!kGw|h=oAvyojE-`k zbH!@HQPpL+`poQC1y4OoZG*e^B`+>|3ZVBi-=8>yT>>nIAARtIFU5bE3SWA} zf4}N8_no=_0dD})aKBkO%1? z?0T^zG(CvS9YkIaZh?o8FY>qkCwXX=YD>jG*E!VhFu(NqSO6Y^cWg~h=XFu~^>`>c zJtiHe7{AUpO#_?ZA>flwehzl#On7KLJQVTi6zK->koY4459zE<@r?F7kPZG<>Ui9J z6!QsFghh8ce_f+$AS;#<+{`#bh(l>I^w03isvIYi=ALoU@~Lz zaFyn{gXkGcFT$hNyx8x?J{0X*x(&JcpA6lSLo{?tdy0Lg@LTM7)vl#o+phh7q;}P+VQu~sv@Sb$m~jk8>%UlcIIYk3XdU&MvCoc1@AKaoY8Q&$ z@1x!0q4%S;zXcl1<)?o-&i3~ieUyz?q{^Uk=_JV!=xK1ZQ@UcT^Q7gch3F*mkkeFm zulmeq&`EhlCqA1482qt zHFd<|XK1}`eKaqobzBMPtBaV3p?6^D0>(V}iW<+&v*4@e;j284udHut`6>^->M?wk zXZ9)chj;0#q?AK{jOSvRp2zeKt%5Ba|Vy|mS*(~{s}0=!z`I877aRihte2YYzw zV%%0QSszh)NwOo1UUFrJYWiJ2K27b7l^qkXKY_d1zE=XSLcAxx|BpOZh)*1#Ru`M_ zN%?^%P3|XNNBuf56>FOuV(Xl>@4^Aw{OXolSq*NRxqO>uzQkiMuRWZ170<0aPX4{^;NkrHJ=*@C;$P8wF8|(p zob8XuIlo#t^}#yyAojP%v(5iw_B}eSdl1~>lMU8|T8(|*ae}ewjeOpYeNX?!z6XW? zHe3+BvjRFwjpaV`BiIh2M=Xsf=1a`dwPmn3JMj6fEoJ?NV|nLvXhZF&J%dxPEzyW* z;%bj3HXVn(a?>#LbLw%<&x<+nK{G$_0$#rLznW{1sX=6_eB4g>>PBR0$jH>-lC&pN z?QgD34H}sm@?@%>k-feE9=+E$Kg1@QE286K(({_16!Rn9EFUig3_*Aqzj$*|CgxQb zKS=F?WP{C9Do+@tJ|CGlPI1E(33vU(F6uqxyH;Xf)MA%cGS9Wlv-q@#&!q9AsiB?Z z$qwF??6|Lld??rQu^qn4FEnz)M-z#hIb8Dx<~HY^o!32UTwYgxPI}q?S%2$j`tvW~ zDwqHMmG+K{zfC+U8*g+Jx39k{b}4mK#^)tQt2!`b8gVc7Yr7J7H6O~^60g3H=M>A< z8tH%=TWrqkRe`;tH8f#xA4G2{zx8GCK2hs9$gzdpc&w4*kI|TDKR}$Yh_(v!PJ(y1 zw~%*gs#KHa+L6_Kk17sF?!$~fPvv2&M9zLR9h`5gITnr7LboC4Rz8sI zy}O{>u%X+~k}i*K?QbsKauyB#Y1pG%JtMkYFWrKCc;!8CgMFrWX$XBTyb0!na7TQ& zhrK=|)BOE!CpQr!Z>#r0PU`7eY+J=iGxvyB=$?4x8DbUC>QuGaZ08=Hkjyc7@UE?1 z5k4;S=u2^D-p|mOrLPBb@WXn+{~i3mxA$B8z$?Sy=XUn)`JceeoMXhzUt3(>6K;k( z-`=iAf6?rDpWW}Xo>-k9&i`i`!Y5k@4V4K$*TMtP&Rgp^-`bZ4{~a`M;)~q3^fbs` zEaDSaU${Pva?rP)lDR|vgadJO~x*}p85{tF7l>XXDpxT)kZ09d4PIzt$}e)l^u0e>=b?z zzgoE>pH=lCMy_D5Ai=G67rRM@ZZ z)RQI1t`N^vo=#0E*DYq<;aRb_uOzn_ASV%>;MSqgM+x?>)iE{5E#>U>ZV*^56CBbV zv>m$5`HtxW|FRODvhW6M?s>#_snNdajq+uKV@_C_qW;wr#`TN4as%`Gv6 zeaIDkk0Tp`Tn+w@ut{^hqo!^S-d@jzjIz7I&gjjTyQpn#hdnHNwAie zn(emYi${UCdp7;h;tgAY`td$&ilKP(;YsJZc6&JVB&IPd*%xwj8t9pZ1Ib+)T5E?@xW03!eU1{1eITgNtoOUb^8u`}X z%2LIEr$}d-d`zV88e;1^?yS0Vape1Z23ZSK554z#*Q^1VC%@ruJYW7^{`3yjnJzdb zw&paqUdgp1Lh=9lz4e(qdF}TV>nF$lh^<(Ned5>Qb5>{dRNPxvC;e^Z>x0II%gWcz zT6`7sZE8MriJVm(w$79zF4gw6>9YoYj=Zz}OKLuGidt-BQ|~v~)LE(?GCbATy_+pw z4Bm}@@8&q(DhUkHPZuGFq@R>SNfLKS)2@lV({>u!qIohg#X?g{x2w47quBEFO*lD7xQ$?#tr7)ad_U>#s! zAaPq@Ao(ix`{+=qiBFigN+?eK-FFhNFpkyWkmn_%I(ddQH(CexcPr>7ev>nZCxjJ^84+Ma1G6mi|N^ayac-6L4Aa& zfgBzCN7}la^lm9^kB(oIM!u@8KV3pyb$;c*MDlx$i7_$iy9YSK zdZ0l5!FI+2Ohv{wz+O3vds}qxo=x0CcV8L%p6)&4zgHTI>E2Vi7xkVii+x@9ewt~| z=>7Y3?g3z0OIX^;ew=me?NeD;zo%kM!y~C3PP=eZyZy$} zTJ)88PdaeaTZ5(+q;m=QmY#J^ioHkekHzCw@R+7uXnmloDN6mBGcc0(jGW+pCHM@3 zTf3iGC(m5PJ>_b;n9B%rrM9HE?xU@4<{%GW#>`2TJ0~CEdF7OPUWpFmQ@0 zn|KD>!S*$qGbmCG$U*$C)OJ1_`P{-MGCK7PpBMA_6rbqf)KB?D|E7MzC%TsX!v})I z^UhFz9rQsv?@|L0EDFauY3rb_CEsc9@4Bw%nl|6kb%JZ!J)r9ru4(&qU3YLz`+d5O za!nt-TqjmJ$m;rU2YXqk&R)*J*Z3SN`0^ov{g3(ZECv?8B zsJt{XBUHK)JI(du*`N9lYuYr2+#4J`vvu$rPIftlcNh7&?px%&-^uHuYa^mY}$4Gw;wb&$2nQEKQCcOc8}LRRs83ifbfBj3#$ z{j*~q_tCIqLFY#Jnz=MGy9#{r{X4?vw;1Cc{PrqPfd z(%;N_)*3a}x7%maInOrupKW&9%UdF`BH+mG^=*cr2Y-MvbeUm3BjAPRm1R@TPqxnmlzxc;+3qI%Y~&1SVWKiA8Y3V zA60$k{WCMUfFPits92Lp!cAz=f?!H(CJBhQUENn&-KD$a!p%jiR=d<-4`$lBCSSjYrAb<=aL&lD^Ob*z~=q_{^y*TGegk&em0*^J~QXc zIseP^f9}uofBvuSg2z1;Nv?F)F1249UZM7C;1Ql5WhCth_cY(N;P}=_)Wjeb-4nX` znU_1)KDw1$%EfKeFJ+wQq3wG{Mc(KeXxiUb(0oMtPcP5yZd~^$XRK3OEq}Q_d+P6b zbjjx({_E-Q4JFPxuPzMON60sb82LwDFg!C3Tn+#yXo9_Ak)&!B#U2K?Z#DRR$g(cB zze8S~@Gxcn@mwLeE4~`zdr`e&-B#=GXghW*Ix_SbeVAvU$v+nlvEMJww539vx=%nDf)uROVL>CsfTpIuLm6akaq&ZtXY!F#^%JQFi>{^dz%Vc212gR(U4!N z-{ycLbKyUU;+8x++K_L5Ck}q8t|4u2JP~RU z?3DAk7~ZfEyb}Gc7VidM9#jqqV-fE`KWzNQbVold4>|BNztK)P_R%Kr^oL`uN7SB2 zH!*%wZlzfZz85t+?S9>Dmt3YtB$ zi<#prbX0h3bT;yrb&t@NMO#Kc9a))Vzg%a9HHlhFZvFl#tl7j!^0nX5P66%EmTW)h zar@=S@E-d2^!IO;!l!w@hj-aA{-Qo6X@IA4G+z#yI zZfO5r@G^=mCi^^2TSqTPHt_r+^c<55HP1WGNikXZwWasy4B-6M|4JZpc(#i5c}+UD z-gEV&26(a7%b`oh<~6WV4L~3MHhS<<&A*ZGy3vv3^M05yj-8>C^Jyn%;j_gUo@NY= zJ?Z$y)t_i&h1-YXBf(eTzvu&s!0|iB7X9V)W-l*c3U689;X*P?K1` ze(l%BFT*|{)}fL!0oDLR10(o|$sfMVo`bJeIi%&PZN)PY#mjiU;zXpK9Qx%~Fpns8 zoCQ}i_6}$4<{7KpJhK;ngJ+NXpBe1EDtuXz^Zw@|;D+MT0cb4@t?c-f&)2|u2u7dr zt;3-40{l+?{W7Af#B_9v9LLXB1$}*3Hqc~brGbHRfE2fJY|04{cWpw0&j(ePUf`hg0>%^pAA`_AMc+*L{mN%z zXC7~AWW zK01S1wKu!rXVfD$_&eBdm+_myiAo25{ogZWfDe~@kUzbwtMKGYK0L|B=^pq&FXO!3 zhd(V@_@g+vw;w0R;Ypo~;Ys6}i)wA}e-9W#AL2;?_E|=!!3SKJYwr3lVgCModWBqT zpWZHapWc5RMUQshSxGM2BK8(WO^jW2K19#r|2eHIsH2zzPs@e&14GGyqOVoohsNAz zzcm6!50r_;|{ZwfkoK;s$Ez{?Tl!0 zVE(S;z;8hn4Ojo+RwCdbpnvbk?~1^Fh|;L}oGd>3O{n}}B zjE=kSbaYhS$;J2F1xz0Q>%ennuHcd8noUpZ-b~Yz=KR5T9Xi_UKAe2Tax`i^K;{+|xMN1&O%`;HqY?{IWD-?$EicT)e0 zary2U+W&IaSby%0)xST<*l#8uD{WsX$5mq-pboNlb#>Y0$zAvoyzjFeKTzjjIaLK9Z;GeV3YUeWA`CId^ z4mX@>;#K!8AzsxmCL>-IZ3-p>E-u!9i*fmpp!NTL7d%9FGV*;9c-T~tJYG4>uB)?J z0_6RMS%cVeH@3z7*mS-Z54CT54O+mr7oJKT9^O%np#|VZF*@4ZOO4`y6?q`tof2_vVE(Cw~UMV<1cjPUdX&F@U6)fI9@x#jOq9m=Q9Ew%eN4H zUGYKY%{#Jh@`?BL;sfY?E0FB@UBJlACA5#fV5YIFA3x82QFb-$d3N>|jjJD}4r@m2OM9sm`%2tU@A!s!u6E~|N4t@eexL3(>H**fz6%-O9wWXH7)1>% z#y8=eNIS8r_8!jB%PX|*lJ7Tn48C9JH}@jzuHgCD>)5Bkh;>(}MD>E}_scK+*D2In zGd0GjGmW0+#JLObnN=h==EAQv_nYxM5JL~#Y#BI&C)Jxc4zhT8Li1^Ec$7UI`^xaI zKaE{eL>``a#l{Pq_iqpJInsJAL0gK&h~GYX5xy$cNq#@o0<2~|6$7egJwN`ry3}*k ztVR{FV!lB^+K8j}J zSNOF38e=td@76LmIFGM)6~11rt8_VN+R^2>K9jymEp#fQ3y!n@k2lx)>8G5l|NS8E zYkq{~_BZ$Z@W_8K$LQ7Yj|OM_@cA}Vi~M2Hjc9YYsY@QM4cgbb<7aI1jUVG`eBX@i zx6rJ^N5>dB{;RC(*tN7(hAa`xSnCYhO*nk(cySi(?hx$sp8QYN_95VnWRUFNzCDcV z+VW(4AJ1@IORh%k2KGEr|Gb;_dhm&H#*x9{5zz0Cv&Qpu)^$tP_13KGO8|%6BmZv>jLLGj4mgB z0^PJNg_lp1&IkOdiPaWWKx& zZ57@uEsnGt2XAhg!e?Rx*H+8%VqIG;y`hR^?|Y)>ie!Gt+|qpNUk8MXTh4IsE#ZC^ zJGdC-{tWi&H⪚IKP>;`OUP=Z_B6CNAV~=>7#a()7O?!rmt9jMKV6DBAFOjk?a~> zk?bB@k?a{)Vfx6F}MXsZ3E~d7y_>W?Z1;eQ)fUOdL7W%`tmUx~vUnozG$6nkTy$pLXw|^J>YM#zm z$>Ho2_{df8Alb({Z$v&g@9eQKYwfIOK0cBm$iku6u&1?N$=EcOLf+Buzm+`WTI(-* zHt^Zv!Y6U21D}Kom*O)FT#nZYZk&Bl0DOvp&qUxe1^7$@KGPleED(HXS8?80129@w zZs7L4^PT&KuiQpG>-ZYwuk}ym?7}@$=a%k4x7;&hZs|Joq&Ni*4%6y>h7xL2MexAIy zLHU2B!`mXB&bA(&{*ckl+C1G%FfZr4wD2#7+b?ol3{9EiX4R zZBHG1# zV`qB)#2)O;9(;t-!Fu7_(OP^o_-P!y&7ptkZCl5=eht@$=<$I-AvzIsE`8Xe^Vl%@ z8Ho=P-$wy+7rn>ac-cU+Kzly(T7q*bOKUi5O8GyQ z@sH17jFD$@M&rX~K84y7Qa{0NBxeX&LcQhBc|Pnm`LJJ<-Gi@Kc269?v+AYgBg=yF zWpjT&xeUPw-}&uzzW?RK(I%_@`}?a_wH}FBJCF2y^O&jg8=&oQ{iSxS5;y^SY+d{t z`oy2bSY^+9^_}JSjxFFf+KgS#XC=?xz7TXepOqo}Jgk%PqcPrWdq=+Sh$rjt2gR_9^lnPl@eaO-#_*RX+BNb;bSTE}$hwD) zf-}?T6CZ0F9EgDfg8Q*rXvfu=B*$fs82WMRiOUyPMGQ`#)x_Xrqx`M!YE3g@)^3|$ z-p6{4?DQ@)lcA$TgcjF)BQiu&fn~ht90@)_L@D(>3odJVffpjr#axZ z^5~%l;wsQizEdN=dKzN|H|3{SF1398)#!*3W22J`$R1MVZ^Q(5a3sNdlC{dUj+Y;6 z(i+CWGqdi%HUMrMpN<~1yfUfJ+FL7=bye2kD%Wn7JszcbytU!d1j|^jS?@$E}uey+$hC`*Xe#Sxa#pUw;wZxH{CJ3l{p6gc;w$) zt#xMa?svxvztY!_aD9>t91X6FW!*ZQ^I{f&bAEZ~#n`$#BBfP6*=X_S;G@HTCY$}H zXQj>?klcv_bM0H`VjW!Fpi#O(zRpNvEu~mc->PRw0qzcy=A~39x<5C@ZEE%)ozi)i_Iv1 zh66{3FATosshC}xYrix~w|MmDr-rNeOWrA9+BOJ0We*%M`4j1QnPMnjjTqHz=@Q=t zR*Iz>nF}0q9o?&O3GiKl?xlRBy9G<)NYb}fVK+y?JFgaxfhBN-o~SDyX;)rKE;Q!( z52~So%kdw`_Eqh6T`P}J*QzzcK9d>#=he;<+L7Lp{cePJ)kci>um8(HQ^6>FIPh4F z#otCf&qbld5N+r;t&8NoH`Z==rRLy`AwWDXk1_9Vo{rBWuYZ;4C-TgaR|2J~$ugmk zx->g=UT$9hCVpG;N_puLGBRA z4jFn3Ir8BqbEd$U6g@_lLSxWk99m4=0S>LOl5X6%QE}r0a8Yi=dp+O`bY^gdGl`>1 zfd&4R)nmzlxdXiqm{;IOQ(b@HKR>>l-^WRDMU*(8ISYP%_&WzL6!jjz5 zg!{YVB4OsCT!$*285kfB#61Tn0W7*!AoF-uc^=9M>GAO+X=8gGGx!1;?jcqn{>)5>g8JXBe7FL_Vv^? zs^PkVYw@@!x?2@~FYCGyoE=CWIyzhe*hs&-;+MyodU@XU^B9_%jZU83=4FGlS+BE3 zZ!EB5LzFY0ZgVByXiSU~debVa{#V z9ukUjB(wF=n~d(5&i^sCBDfnzmL`y;UEppvxZATZQ?B&DBP3UPy3=x{oHKo*^TfyJ zmd-t$T*b!VT{`2DIIzKacGuEAo$=ul5A_>^lEiwP}?b z6t9f5N5#|00Xj||zH+2jA#)SR;fTR)&Y%qi?C(=|M{+DktXX+n3CS<|C8lKhR~)1S z{;~!>ss3ZY!OVxf1^TRA%Gr?av&xl^qYKIZQFEd5{#1B}(OJ-OcZN(Zkx$NCXy5s2 z79Q`MY~PxFuYR)qui5v&?Zwb|GV6MWw*B=@j$CdA_+|b%A`DFZ^*cN_#j{;l2 z{^H@;H9kBG$VWfX!Lyg~`R86Vw{$I^lH<7-<(A6Eb70}f++1Ql-9vbe7{TH^KCh`P z?atwo*ui4(I2ZqYH}Qc0GCYV350h8n$@(1dtp@qgt^R~Zd~QQWVBOx>hK?X!lt3?V za!OfK@+QNa7p(EcnXeh=B>Gp(37HnIFSCo_w-w}$c)szo+~*6BS-;|)f@?yhM%J*` zE&JKi+-LXcxf$?Pvlq>>PfP{B=(C7?d}LdD5pyEW53c)i8nBo_}vJoobTZo;BXd?s(rC zWW3q-xcDmc)~5L9uF9Q)OzmsPs(!>7@%oVj&A7*-30&{zz96a=s1;B^ojr~qz(>jLfm z@f#g!DmoJQqu)N|<%Fm6{m?1cgHr&$ivE4@jE#l|f&;%~{!w7X8n(aT8^2S_A-(=4 zACC1F9(eOWADgN5y+PwgmI(*YPv+Mf-^V!nN^lunuTAIvNte-ko-PvyPn5qR8i$wK z39cV#a&kJN@R{-^}LgX^BHrVa|YL6 z^5K$5z*|2j*EBtU;W|Fm_Bgpw(p{yyodgT;e2ieh_yr5eI%Eej1=&#F_bOkV2X(i)zw1sb~YaKek zdM5{0Yn95u1y=h>7SlQj4&~S_(G}p>x(M$@k|AQ@Mi&N-qR~aiD;-)LsN{UKkdc|H z?Q{DOd@t0UHt){n-DwU@FM6`vd7e1Ap07g2N*BlnH}qaD?@9mF^MbS9uMw^SKiBuu zwupTuhCi^+WUw~=*C1`cyG-qz{67seHJkNt{R<6_j%@Zg(C;LTL-Qqv?S%L|{Tdu~ zpNp+zTy-uTdA@e^kT|-Ow~u55duOEs7lJcI;DX`{o-S?Zg7=ExBc>nah@8XuJ0bk+ ziL{^nxg+$gabO?BXF*@^uPXNWSim2htZg^?OM!GXcwG@XQZYJG2|7|39ZBzf0e+G_ zcIUl|&3o7x&bs1ndvTC?nrAsj-t+-qh|^}J+djUY_6W9GEi&4%!yG?f1Q~5|9v6aZ z_?ytJ+Bb%eHmyQ83lndNE#=;F{%MQ<8w>eJT|1#s}!-I`=cSrFrXJ`g?}|`q9`f)W;!=6Y z!zI)olntr+AIcq;o+muQFIXCTg0riiae*&8EmK_ zE#dMf=92P>hMar5PP4Xqxkd6TS5b4wk*Ch@W-SV*rt**U%+=(>ob*inMH$b$=;=ys zKc*e_cKQ3dYp`bwjGbI3_4PP8N+n zQeV_H&@%k=B;$u&%|I;3J}|)E;WqHy~coHy&Mr^KL8Cd}C|Y zBgG4(XLWFno~J{VBR6DINQR9c5-ABXNITw2%6Hd;vgWb!9$G5ZKAzm8r!NRXk8GFLm$C>_r`TG4jq_L~umkpY~%P%*v z&qn@d=`+Zh_SM+8Mda#->g(GVS;6)ARhP#(hlqSiQ=6v73cgxF-dqhlHHW%1;*S=5 z!KxyM9Q+AmuNoY0aONr+t7ZRql)UpW|8e@Mr2UdB>f6_HhHRacyF5Yr8&z|Lx;9=d zn_|{%{1sNa#x_9yNe0Z^w#DB}oo4ouAsZYXCb{qNuu#ChqQK>0ow?xgHyyn6co=Oj z^48I9bFh9i257T0++1YN@y@2r>$BR(Udw_(*7CviX}liHKEBe##{P!&1g}T>@Oc+9 z!@r(_e+c;3hpg?pv=@o>{~S6|B;@9fvL3`P+AY?^gQc+>v*7rb3sQcmwv=BAxD>); zPX#mR=TP|W;dT)*_iUKueGJU@znsYrg#YC}nEk|OPYD0_j+O3^2`?}HB|6X^V(~Za zA)X6vDZgP?G))Hq&R6i@rurEPbcYgrhh1k_+cy$(XvY89#lDade1j$A9nDeP7eDS= z{QcucS=;NeG4ET)ngSEiQmTze*0boxdiGm`Jgjt!7Q9_bqVMmg_W?K#j_4!Nb~ z`VjRQu-`(R)eioIN6py9S-1ocXMx zjjA?k27T?Asfk*Z6G?u9Jt|eQNqFvc=utj>&9e}F+XAnm#a8m~dVUCe!onD=(iB~wjfTD=@-{!a8PtJw*S6nk3yk-nV z`1A^^ocW7K8Qn>G8uTN*&(G7~c!yGc5AseYf~(p0inymeu7%*x6VML!1@ZdNk|To* zLJk$0^Vx^nVQh!MJFrnPxF>I_P65k zGqdRBK76Cu^%|ns%dXt)lzt72jokd;ZPsd>>wh6<$lGf#dASw8XYS1=7Wzgm`<~Vk z3x!v*KW~`FD;sOkV_w2XBt2#bcw}H%IfyKD?~P|&mVEI$`!E0Eb4M=!;;;Ds^O4F3LKCvd*kca%8XNE+9mztoOA8f4!_Ch_u!{8`_)+`*td-p z=wI5itULUtw!35Z)(k#t)~WfWllj<4-}-$2 z6#k)>(ORGM`D4*Ci@0OpF7kBRU76mQior7O2en4fnQWi{yebM!#n++#hsy7&8)Dra zM!#H`W8L12&uDeXnh}8B!mP`StV;#!A~{|+%6Tq9O}mBI8CT*f%y_POf-V0>-5Bfk zYTB#F+OxNpHOY9Mc14p8Pbg^JG|YMq9^6@jZy|`CrF>2Dc<^75UlR)2-=yYc4c8T1 zYtNwUU_GyV!CI{`b3!L=3wKU%a{g-5zKCzLZ`pg-%$<2J9L`zf%)!iC^9K&Q7^C2_ z5Pc&~jXTv+{4`_Kv#WSkzo`zRd@R;0-~!jLKRM7;qGy0l6n$|a^M^+|&r+N5Q~K>3 z-@S_h?dNdMo9kw1M7+R1*9!k!U7p}QZ~QLIHLSTla++Nv|3h(lt~W5(44K>E>RODI zejWO9?|J?ngU9Z@Y#jZd!-u2A)?LP@2On8{pUX#zBixI$|0B3+{C6Gx{6Sy-P6zth z!j!+x?3vGD-4ftu&;L#1XE`xAlcUpto;hh%J2hh31Jt_AL4IY|+x=hgX|so(`R`20 zJkDPwj-BBBuG#hNwN}o)M48pDSl|=V8F_Z*G9eWJAXiDkzh6fnE9vpf= zFlMge0js6~<0kO;F=QKaE=FgFcjO*TU>nA<4HHYbMh+$98^A9hIj#R9^IguwUkW!3j4G1`6+HN1O97j8p8KG!-t?<$9_%23qEka2d{=4 z6L*w90|2_CgcCgk{(5W@YHG}w4HuC$h5^H{~mA@}U z4b9Ls%KxAaD($V|-XdaUFVc>9*|Q_9N8~$IjzbmW`_cI(-}F!|^*_PGWVF)cBeYpZ zr`qLNxdZ3yLZ{+A<(sTzU-}~HMe?UGR^t~!caeS+M3)+XmImsEx1b}nCtk3?W$H8U zF!l|;dwl+hpgoGdf%~EGGRxlV_-GnaJ{n*%H4E+o%jNSqy(Ru8>n@+qTfX)xL-q;w zvsJ6Tw9hA_y>qhK(|U9P--qyff%|(OziThx)#&lPR_?xuH(KozX=feJ^|1!If!uxFtic3yP3fHGj4b4x zbhiYtfO7J)5{#t){~5a0{3tNa0bkZY=Q-yKXQ{2jI8~Flfw9(DdHW;-Zh;q(PuOl~ z1-ReF+M4gYAD>>|elyoGzU$qK;4cY2Yt8%CKJT4r!iRZUtD(+Xt+(2@us1aEkPo)S zL3=B(HEVTu*z+l5z;@R-m#4Tiati;Pv-S-^+oruuTB{)!*fpNcX{nJ_Ptwvv~ zF>!@J>uV?3Z4O<2B6`B-@=^5kB(VKk=;`edz#JG`*i=F2|3x!KpMS}N#|puCWQ+I? zH5bg@{P=r57;g#L*Esmw8OFwn6CW{r+Xs_nSuh!B5Iu})!GGh>Lw-R10|&;T9Q)Fb zp@;cd?Pc)%ozv{X7c*>w&T##O_PFeOJa_gW_s+<^hd*(6_B~>s`6u0*WCyvYwNVT? zHVi(GJilEwXFfDTTylx8zP|Av8Gl2jzL~ek*vy^EznzF2?-B2ZxBcn&X<5EW{)RHz z#6FwA{^rZ^A4#v9K)%`T`g3gU#fiCkoZ=A5%PCh}WzPBbi|j*B)TZ^C@H^-=w53{a z(w9CwEM4tYoCIbEy}G?d;ULENHEPr(Vc9;2Sb~tQO25R!&@0Hj=*AY7a4MQf2Z= z3hX81!vzBHBJv&sPAtC7i^VISG1ni9=em`g2I*xlAOkl^2Exm=SINW{7)J&D>%C_B zAICFZ|6bqnCrD0S%5&iKGm57a;+ru#StzA{b-H$Xn{4JU_|{qU@boQQ3QT$4cGY+b>tzEcYw?m{Lcgas!_6) z`Do7DT)8iquX!jRNV(2A%*StYihecL)$Uk-;~T5RpFf^{;4>O?I-agrx?<|CP2ZNX z=^1O#kCRiu$rY^gN_<)1@NCAn8GSK0+0g?7=;i3%o$@zzp;ucx1Fkx}8h?2Z9|!i+ zVf>5pojq>D9UhH6p!z8~r=ZZB6|WpO>cF3CWGca7*0zXrD3a|1U>?y&dmNpvRGGyWsre6|GbA35`B4BvT{u@$oCvoC8t z16K=|hPK2WroCab*W_!jGH5^Mw09^xztrB0T+eRr`K|+2X-vn)i^F z?v?JmiEXCVF%htDXPoGYo#8fOR`}Ml$N2!`RDX_Mi;fGu2Y_ccFyHp&NRnCu$sbga zBZr+KAM^pnk%&Y}yXHjT+e6?-LtA$$=E{3&NA{g#&${(q-F264r*(XpIo6y(J#e0X z3>+?=Z{$~-R};M9I&4$gSdD+-e&wmazr<5Jz>N_TI0u0Jg&xmR8}-*fJ3O!NtE-&a z>vx;?z!_+Hd?7Nggg&qhRd-_upF_eI+tjD%U&Y?f4scCvrurv`+Vmf>?0==5qN%i7 z$eJ+r$}zwR{;`sA&&5CA4KH_iYq33&oKVACcNQDoDnF0%wEg4lo(=BPzI>%Y+Lw*- z5A@Lu+_sV@s~C9md5Zr{wucIi$P3M(5IM5o9OK)4PQKkBzrDbmJR$&{CeWbzfo^yNP{{MN-K z^y$X%jC0d;?D#G_<-7bXaPdEjF5ec8<{5j};J)wK*Rq~<_v*%pRTUqgH!0^c5S&9tP%6!~61mc=R<3JQZ)ups{f$)0nppB1L29D_>{4 zmg0@pnf7?$J0dxZp6=Iy%C%pD@rY&(?Lw!rDb4-~@HfEziPJ^5*en`%Eo~YahR&<> zy~?5If7bVUzVpsM@qN|1UY&%LUhCnL!JWV$xO1BicfRKOn@s!+|L9*wruUm_KS5*G zeu7ATBzdQo=iugmN;jEJo7yj6_7b4;XfHuI=Y)BC2~OIN8p<{Pt(%JQZ-w$R{9Dmp z(KR$&X(hKUa`>n0k9pW1v3~rB@U1t03%&v;>Uwc{Ge!YW?z>h@D(OJ^FLN5hM z@n^}`Qo03PFNUwkuOyr<5xkK(1Gh@XjcAGg&XsX*`(#{g$o?t&GvNts;Td0WY9#q} z75e)n=R`O3d>q%MxTr&mQKz@k?Ca!2L7$JhP=|5BE26{~`8DJnZ;M@LiU^-Dlli_2IyL`R?%H z_uqs}2RX+SY2KFgocvmq_(J`#P`;3XMXmG_bT{-iqvvGlZC?Wx%3Nnpujf88 zt+#HFIWxx+)_8(D_da+TXUgu|&Hub1!Sy|%ynVY*)IGd=c>eus@F7YTdpR4*xs^;C z!o8mB$=hXJddi3?u{Of51ad_9RR&D2qOPv?vTF}%!#RO(wqO z*mzd!RpgR*a#4I~Jn`n$qjJ~xz?Uv}bql?_jlA$JoQJ6WIct{{A8m)u6MX+1@Bf7F zapqAWI&yX7_$hSc9%{OPJDuU}GmY;n8+U?PxZ}y@6Z9j0v+52W=DSa38Xot`f1NBJ zXEmhdW7jFQ?#puQ*=*F@Wo23^s zKH;qYJ-?ptXW2LT^fN3o|62V10C|%Bdr@G7a!=dj4(K=#P zl@X`kl#Otaqf4!=512DMM6U}?yOvXTbE;GKwA<7@UHj--{O#LJEGy6CQ5oBhSk@Nb znPB(eORt1~)D|*NM?Y_~>I>{7xl!mmo#BYH7gY22?4LOE&Ct)e{({CKSh;O^`uSTo z8~r@Bp7O(2MVxsEZmWT#cGc{1Y%Mq2L92xHBOyYz3#{+_F14`&rBd+zAjiGPYlh^2Nq9IKd=GWhW}4^FbCNrIjH^p zlBbgGTai=vQ2MXJ|L@6m)ihpGKpjMCA1|9|IWnF)%DP@sK%GQ>Up6smD8wh*2F^2I|MG51D77)qI@MivlY1X0vGL3Jq=&`4@x2}ty9aX zK{?dG<9P9D_POOFpIIiX3wDVi~t}RdYp$GT`7;x#U{7U$$`_>7ktWrOD}Ng zHgFm0z$HozTVf`&fJ-DBE(?JR`cF6Tk$%(*e6+VPF%S4q2hk57)f+VY(S1ko5`HLu zOR(_1cbBog3#{Zk;B^J?>H}V?F{x*If!ActfTo^e|NX%0;M7RVJ2QY+`xrCu0uH4Mfmby? zzJt@sll@c5lM8`Y==0Y6Yk=1~q2c>B0Iv*)8wP8r$;D#PZ}j9ai$4XCujXpXUteJZn2}DcvZ11Agy} zD^I>VmOW0uZ_CBj{0D*GA44Pdy$1YV1Ab2jMy%g>mIJ?j;CH~l@ATGk*%3dW-a0vz zj{(1(9|u45(!LvjA8aN8Lh(i>o;b?HwgQNEjuskRoQZWl)Dtz>6nF^lX zcdur!S4a4`TXWN^`8+_aYMrOtRYzU)hCs4=T_D*<9nN0ra2})%^a1KXZ-nQR1D9p& zar)Q3`}V)O*QxEh3EEu7`FyR*?%l6izv5x|xJv7;3*5eooGk3L=gu-Q~cxf5%-IK2*=(97NX5}rDO9c{q!Ahc|COc4*0wZS{3ZxMYk!l zPB%PH`?~s}m)bMRTNa-ySuo6AJkFw)@G!e}wAE4z?Ix(r8e2+SZn;APPmwp0cnmzh z75nrKc+5O_{H@duuC+`(`L0Wdjk-2S^V!ma+4FWQ_%_|CN#M6NQ+DP`$xi9J#?EY$ zoq6W@j&IquGmRd;1id-i&TP9^Iv@Ud^w`cBl^SzQjV!nSs6;p&XhL>+Uc zCUEyU^oRB62)x(#Ffy?TIl#M~ocb2|4;7~oD*)zeptm*nh)Ouy$?P>-&KmJ7wm7s_ zV6TSPSKP_@oa}3PpL&e4!E;&v7&;RA_Tekxul3wp#k~r0a1z8`m$c)b18-u>SarzDxVy|$0C9qYUn8#eb z+p|IHv8^=5)%Dm+tX&z;MVB&P#^%|@j?c^CBN=w6%UgsmIyeBYCN$No?2$>_wdwEJ}8Vc35o(ZTRZ&a89w;bDw< zB@wPJ2La@q8nNJEwu9l?K}w$!3VmZMNfGi+5ZCab_X&Hd3bOS zv7AN5KiQZ%D{;D&eCn6z%hMfwc~b;^86FaYhv?kzu4l<*gV$EWFBidUbK$jX;kD$l zE#C#Nt#x^AHQz(mfdj08cxd8!)*1Z;yvJ6%#OP=bP8(<{yNH-8Z3!R8=iReEciYw@ zi{JUhk(VF%quMn4oO7^+#{c4h{ab(dlz?_icd5GwZ;DL>zO?1>C(}P|ssDERkFMjHN@zs6pVU~mhJ3eZ1Mf@}4O+?L zmpEtsu9eL`PyIT$Yj_;jjpT8_=bW*_Pss00CMwYZKFirk;%BsxgRjirPIm)s``h7K z`!%xWd`Ra%B#7VYJW`J*$Zze@gLu63zOD$me_13+?yxN%qWm|pYk@awbddE^Zg&@a z-s2%Jvgfa&@FHlBIwkN4t<{D7)Xyvi57B!>gC}VFRO5MFb9(}qK1uBx^pQ=<`3B!= z(MLMaNAL?T59l8H$QJYwU9ZB@?g@f2|M z5^8Lkc&7X;GX)=>i}Rf39o@k@9q{tKA2wB=MGaW4<6JB55<_Q|?-IV%Xw~Q2Z_$U> zE_84SXC9eYNqmc;0mqk92ruIP`SfGfmfz0hdlWer8;Fz!nyu2P_%-_(J2YnIA7lQK zIbPeFG-lSd>uT_XHP<-RRzB_Iuto{)D|Qv)x{JOVh;yyI5nSLrcMm@ntBo7odG8F` zN6E`b?1^OlPQIaJelTj;hxlE2$GMBrZ3tJpZ{S{)gR4QtoZz}!&k{$^h5yb)Ki=8~ zPsazPnnbz4y1<3M__S%`dfHg#wh^HXu79cVunyg-um zp4Z+u&T@&agsx`s%$-iV-noW}<&k8F_awi9JAnz;4>3;hV6C3hYGiux~bSM<0w8V>@ch%AG~0efkdr^F#1e z#R3Y534c-eI~zEo2lSu^{4>|O@5$bqro%rMLLbwtWEp%wvLX*YuNC|HYAY zKkQZ;{k!xVFk9EMVgH_YpEB)=htSSl>qb0a+AXAS`BBT}&=%iUNtRtV!|V+l_ook< zs_=(K?_h1v^~~OYX{-;|o3V+WkY1!~!D1nw@J=VEL~#MDwceFOHnOMS1o|;N%8N}i zeuE3nT5y&sxDW+*x6+UH)Zwexx0RTX@@8uB>#h0o!1l$&(RS2Zw_5`P^LLb3x9=pD zxnq)bd%ZqqShq*`+|2u3=(KCzAK1Q@c9t$%eCYu1RPoLL?-c5jccMHyz&p)+evfxD z)*b!jyU!1zzl?@QjfIZJv91N^9q|1=GGP znK5r!OTSg{W9HJ#clntW3lMHA$7C@%M8J_Tszxid8R`2!&yk&R=QCZr(?CBB@KB9U zzT{eX8ufn-9;~J>>9qH&UHaY#et7c`kHoL*JXfga$Zg>{bT;YUZCj($?6p1~+|Bc= z;PuKgDWV50ra4$_=>yHkJtmyUj*M#ZB(5t>zpqWdFCZ-)ioCN=~(A(`qnL<(s>fP5kN0V{+Gbu6w^SkxEp6|TV!S{n*p1tPPgh|CN(sB#_wd^N8 zyi-hKB>c(cU*c20T5*M z{%Q7CX68pJ=4p6=mm39-yHxlMPZ55v(!NS?F9%$f?8sq#a=>lsJhn@|=Yl7>tef(e z$cN)zZfh>Mo(Ha%;rBmCtp)MVVsH+9A-Q>3?N1*c6Ij0%d9E6*_rTkF;K6IeU*Y-r zYfOv`9a;Ol^ILPtp_2S>Kqf}v2g-rzk{sf5Eo17T&mC6Y@)~Gq6XRHw!k-cLU&%KE zZ>VtuUb*s#3QnA1bP4bG0)CfXuW=nC$G}goPF`wGYbWoDKm3Hx zY+3*B&!uTacze1_8w*@o5L^DF^e}1=dU)#_pNt+3SGxN-S)0F(OrHl~@_*s`13RqJ z+2p-1;%v8px)A45=d^(9jXI}JI*MZSTSx19l-&*9s_tnQ`4C;aD;v9u_q+M*enDrS z*JmS7OdI*Oa9=uVd^&RW1#DzwkM=TjR|agwh`Px??4}L$GWEq7?nU-7V61rW z0By=nPVoCNcv@vB;?(=nHGIvxHfvSs>RV1JBF^2%-4D(+BuajO?ISjtXoaVs)1QXTYC}*67%He=UEPOo?e1#WB z;5CeycT3BMk?$4?*@e)-3-DN@n*o#fbmm0cwfaZrPRv6#&x^E6=f7nHG{^7iyO{r& z_Mr2=bYHW_0KKEI51Rmbwb)0;UWUe+-U{tyXsk_C=#0wkweTX*X%#*w!BsZ0auvV& z{s-bc`}MBpm+Hv1W;!@7J?u84huwHKaAVE9Ytc&Y_rUu|z+vzQ@cnw1g{vvK6yuna`zDcuRW)EIehMZ1K_2$e+7+8=M+8!!G~4u`b&Of*8^3) zy1MDfkd=$;e9~8v)HoWJO z`u!2`$->`i)sLYjXC(Pe;X^SnrjAoZ+h=Y0rLUOeo*mvq~`Yn1Kyd`x83Hqb40eQ#RfV`i8#$+FuYxMLmwf&b+U!*=CISDQ_6SLGAF+KEW z&i>#X=j@Mswp=^)*`wfB-qFo1HoOeyT)HgBhrq1the#_7= zJDhv|cU{|{QMSPrYMeMZPsZQSshpEz&!%NjY#4lHq-E^NWm)ULW{~w4{tq?vw$l6G z@)jB0$?O$ehfi6wE8A7I#bmGdyp~@3D(Uz0nD5oB{k6(xv<}}Qf5D{@d@eaH@(IgN zm_JF^$P29-!7a?u2*{AKO1b`qgfyHGST^@toeKTYIeP?z4%G| z_OtkNd>r#-+=>gJM|P&-0<^tN^EWyWxpT}_d^C<;DZLRN#UtWp#WRQ}vX5#fythv0 z9PsHq$9^0)&)Ct!v)A*U!REz$-v4?gJ$IgBJ;}Amn2&PhH7EaE7O{6z@=W^uS2Z7a zp3#fl`AAQe4Xpho|Y3yyO*H- zIVOKE$K>xp3%AF~->V>hkGT2%B4D0F{+|3Mf^8-BAiH=+wbO|4Ebk(>u#R^Uydzmf zEsR&u4fZ3;XU?ULfqW`)z8jjTba2Q2Jp+#-Q|$NAjWX_8Q|$Lnx;M!_$UXI!k{{#H zL%_Ei{cAF=zWtQ-ZL;KHX7+SxFDdX(p~rts8J8se1|dVF9sMEjuY7+Lcel_}_9{ryemmaWkc__t3}7w-HxyWs~qves%wKH_vQi4)-9t z#q*Z#TTr@(Tps+XtcCWrYLAutIPzoXwce(BxxV%cd^>!2>3%md&mC(GW7T^5pH1N% zcp`qJwP|0G$?L?szw28o)Txv{HQDg*bpE$s6ouz~A6{hO0$8#?+iefhl8&v+3U{X-a+Q@rf&|y zH_u)>K>ZWHy%xKkab24p+fAPa*0bmX{QAmw29)bKQ+bWsus@z4Pg`ef^np);Elxr9 z+~>E*9+5116#R=LJN5%tijPX6CiI(Aggmq(9j&UCcrGDoaM=H{_kog~oT*nerRr&(#`jhR);{&Z$o} zsainhn3fArpaC;>%x|MwD2z#4=N#NZ2{omFZ*tfD)cYs$bptY6w znXV`=-3=bTr?X13e*^Y=fcjaTuQni?-{h(htuW-O=zZ@s(if zCSn5meJwB`J}`4_33%QZc;oF2fx`#T(RW-FI*iPnzhh_4;VM1_vl@6-;)6(O!r)o3 zwVb|heu>yG?MTM!)0@{?=3WEdS2S}b3;VjN+ju^`d~&q44%; zb_wv=gx+A<0zTx-hs$T1<#;pAI* zW7Rkx;jGV8?ghL~fc1 zp+1E7r!han8@X<{hPu%yI?9Aii2f7!cwWUeVC-#{W!X262G@D7h`tpkhfdmynH&7E zP5$H>_@jKt;)_A}f7`c`O~t^s1o)0Gl%9fbfOwjo_hPj2HJj(FEc%mjz*L?%H z-4L|LuxC7RExHwRk!-4B-L-B7tlK{JSqeW_`RE5cJyh}jD7z9~asb?fH_lA(Ocl?R zizo1#c-#dOkj=o*q^xN zhbEs#{5(wlSlJ^1Q=3q0q&it8I-8I0MXV+CFtdntV2!qmSL6xL`4n!%1#|a04o{2^ zSf$>Yzjx-zYhDC@Rm`B6ai41KFJ>*f$j!-NElm#0Bxl_{e}6Z+Yi@}ne@#vz*Co8u zJ&pSpWj%|0$c6VyRtKxdMdA8fJ&RtP>&SFdXJIY)m#B;+L&$IQY?O85dIZm+V<$^e z_~hg#UZdL5$}44@QSk|2<(H{Fz~Wu@5T1&E42p+YJSIaI813k)BffUBuKFP{dZQ0C zIQqa)>X`ZKxhT&=eB}K^!1l-5hf4P-w%*Vgbsp|~mUwc4wUykI&*})*F|LhHj?5+3 zb$d5(xd(VCZ}o9LpWt&VFe)pw4qpwPy~4fw$Q7APuE>2)|NO|6f8TqgATYGQ4?RK8 zK>K5~Ct(Qu>ytdM7(p*Ow0LD7{H+!}He9IvI{|n9&NsikoBccTLCEhT9nj%Xd94wh zM+JV!hw$SI$#rHg_R;jUON$rW#Lb zLp0v-&1BQFTvtOY%3pi{Usv;V05NC`7Ng37(4;rF200fyM-D_aqv3UE|C@!Cbn5XSa3q zC)>~o^3e$E*ny`fc-QqnGu$_w$kDEAl~|fo$MxMJsIC|9G1@+jyqnB)-}MTzXkQ&E3qy zwavAj&8%mD^$fF~n^;eBam;$k#$O$U55ZHleqq*6@T_7Ds(|Ol&lCTmJ^A@tfa5H_ z*E1Hyqt3`)XT}g?3~|Qrr5bcX#uesS2hNVq;+=m!)--`OP`MmGY}8e~BF0#0sl@HgW7)>bB`~ z5p~?~xtW-(W$Za}JHhc6^6-7|ZiRRmx!5{SP53I?pxe;6a@BHMf5G_ygN0D=_jV&$jS73)2;tQ^h2Kz(MF2AG@=69eQl^`21k>`ygZW=ywV{L(h9M z)X*>U^3(5Xp3kCR>>m?HYE!MI3!hHY@5--c(yxh+!T0_;GJU=yHkX^eKUS!jI=mHyXt|@)3$J`2CtK@31cu{Y=j+qW@KM*vo$f^vmTbq3Dpv5Za86C8meHu;F#qZ!CR5&(bgFTnen% z!@1M&`{~4kI1^C*VfbwZ&hdO9xv|pQ6h|xCiA@7<=_1b{%-F-g(8S<$)}>WqKS+Kj zycT$j@p!Jm_g#`dz%qcmQfyuMf6CbiO26TLC+!8{(^{`z@csS&M#p2k8moA60sPX8 z3;1kit%K}0S!~6By44DD;l$WT(^*u5(Rdf6!WJ(+j!vY(5ypa!j(tp zXRvt90bfq8GwFk@*$Ut)`it~?&BnS8|Ghc(sC@%15nQZTr~?MHfKpRX^A zKlOLG!>udWvIryA&PP1kS<|X)3Hx3_hnEDOuYqQu>5IX#K_}`7cCK4zOlwivM zgIdNZej)u{G_?_4bqjU6q`zeUhRtU5G5I>guYQhR7QMmZ9Dq=UjeDK=F*a^&0eHY~ z-g{rC=FS1F#}@QI`c}RHe%jQ2P4BsTbgni&TJM@?4pp%KpqToa@+E(Z-{q5yK-0u} zX38JE6a6@Q9G~&V!Mgj$@g>F~o~Jz-`n*`5v>{&U;6#p7AB^#7f0O(%qBr?ti1{9l z!(Rk1!NB#sK=+p2s2mV8gz&!%=KDCE zbK&dd3xY?fk3xKb*<;nZ8+yZkk1xMXzWg`wT}g(^mr(ERA*R2J$xqd@Ja@e0esua&0QU&HRRc%FV^*W(Y?`XLiz=!Y89X07iO zek()QW-RPy*zWz_!}vGT_ZH^x68|sreLQt0WdFwJ@o!*-@6sLf0{nsr+ESj~GVP6= zZpk<7&;dGcd>;IHb|m=+a8iC^qfa|_f1`Y7lDiwNK>u2Jf1L4vH^!G|`r-O|)?L5L z-k$`YDY8X* z6SIgXRO860_59?s$C|Fv^T5rU&wsS0br_E?pN_pP-7hvQlKhXXdhCi>`Rh-|z!AsS z@6=IA`};$!Q#_gA$=-bC4(~TPUC1%XfFsxjUSFOs!Ji*7SbvVqqxeFA+AWIX=NTSN ze8iDKgY`#WZ)Nq>3moBP=FgLFdyW4nosS{=T{Ukd=L+#n<|B9ViQy z=)^VeRV2l?4eo{<9VY)GY%FL+wS@BVM-Q1wof>om&aCJ^4f$MXd`@9|;^{}5cIDOY zmkt&t*D`$bIHRNOl3o%W=lX>*+b%-3Skm!;tMS`GL${olnQ!9!uH1>d)}nElzj=5? zANaba+Id;{<*mK)+Pr;a!h_qg)<$+{*H~Z%47G3Uqw^)w>!sYV0Ba>3wdk7i(m46n z!vEqc0;O7;*QovI*PWEVQs?m#z6-Y|D^F*K<9BbK4lS|gEGA!NeTf}sJpb^T%S+t# zkX@}gl(}>GEqLYO(*cuW0{HWkba1s7GXkKS!h0y<%yV3DdIv258XUKpvZcHUv zF#~yw&o=^osHVBaXCd}h7+lf$&>Q~f>X;1r7sRaUod+5Wc%^q$O(8G{HHA( z$vs(Dr!V1292^b$b#>t_IRZh+ZhnjN-7-FjV*4T5OpVWrxxp`$L#;M`$6laR?2Wc% zUrGOegEor6G5s#Nu^67`kG1X9@90e4?_2dd`fWFSRWUlF|JPH?OXCt>{D z4=G3WA6ic4nLEFd=3`zy_F=c4?Bwvt^<*RPSLpzA;IUosZS7&xd{edXkw0a^2jq)# z8Ou47UUIE#AuwQV*Rr;`)O=&Fn4Q<>>|skFvvaNTcJc)6?uP1T%BwwQ&iUj0@TUcqX>ToSp*koJ@A{Cs^On(7)z4bipnIvM{O9eGh0+5>AILi6 z>tG*%;k&umfYCe9XKHgZbmRM=BcsnO1#kGxd+*1@YA>KI(WC68+wn`o^V+II#t+a| zlRt;?czh|}=%*j|ySJu#&+s?a)!~`W`%(J8fx1NfKZ>Z<%l58kv8%vU?NeSHV4ld$ z2IjaZ7Z}6Oy)_pf{PR%O_Ez9>hvor~fQNf?d6YBSl|${xd#zzg-rt%f@3~gKjpV)R z4Gq+t$^U5n$FvMQNlhJKelz{wGL-s0>#gLw4_V2ZPv`u4#|23M*}`7jtJz!o1kW+ncW5)dp7B1!oE~P5P4Lpk$WwY!xCgE;U_O83 ze7YglbJ6RW-wph8zlc3s72s77`?QLn3F(Rp$b(e8JOO@0#8Zd^Jwz^6bUE*cr+78s z=Q(^ta7fvwj7|1`$_C)N^WX3Z8XbL@{Y~0|FCj0^Hhjr@w_JM&8ISQHT<^3Yoy+VY zT+SyvA+-mL=U$*q!>4%mr}|#y=uFS)JNzQSJJ0a_x4&lGw`w1pFOR~l0jzU;2I@w& zbh8$!ak>Qkceiz}-Ln$@Q)l6OwYFCXZyMnF>#XEX=~~qMDbGRI>R?|#{#@xp*Zufd z(|gqLbagGmKPrDfzgfKGGVX~EBtIUyCE0W&OW)cHpZEI%PF4SU`w>?TyZa~9-b&j0 zr27x=Gx91OuZcnn;(zTDhncVAD>|+q##U?_F)2!rXU+s}E zb|0gz-O=ZbO@z$$|0cUW7hh4%e>-(aWOwP@o@3x;MF_l~7NN~ZQhQPif9P=JrT@DX zA-5O&S8apS(WgT2g&fxWEZQj<7}zdZA=@a`ChM*FsmW_m`}ze#?dvZ&?(FMd!oL2uT^PRY?(2Wsh2h&S41Y!c(oIr2H#l)NIN{f~SM!V% zU{7Ch@`cm!Q_b@+^v8FwqX^ zY}zgIOFDMVOhf2nRD-rIc2w-6a?WX{;i4wflE>nL|zx ztpu?$i01wN?&o!>YxrMrW*9Nb@^%5dMwTI2g+Xy4*|yv zA4U#Oj$Fn#4F9YhZ}&gk=9w-ZT`t>`^~vDD{Jxc34;w$zzJJ#Syx$p*Y{36!O#S#_ z{C}DHwtV#EdBn7Mw%q6v0YeL}FDCfeTC+dT_~oZ$?H9?y&o6oUl|7iqg2#cZ{x_kE z7S~R(b-fYrVszm(;12rnF25NI{!i^cWAA|tcbneR`i1k`SqHa&?OzsMxc@YNcYj&4 z@#&}cm&L1DL*!ult>}-xjl)PlEm$H0Xy z)&L!8ZB^dY_;qrlwSt9pRph7mj$HoLZs9*RdHi-x>1(_3kz+&4S8QUi(7NK2{d>>g zVZxiwTOL|O9>gm66Q6_5r+V+r;`;UcRda7K@m24=8@WCk_{ax$j5=QAb0{xJx~Sx3 z{S&9wpMsZ&M;kthP8FZ#`mLQj1&7btIQth~^WquwBl}ZycW7BAKXmQRGwm;1W8`r< zeiox0*_wWIW%*ZU1Zyh0cmK~bb%qRC;epW_&$wM5 zjcoJ7o;kSVvEvu%c$Z{%9J~?_S5BUCAI&&eYkbF?gMvN6-0c{b>hrpLK60b0e}Rnx zZpWEJ0(|3K=ag*Xu;eUr&|C~IRHSLxE9>TFjr%pvc(dW{j{jP--z-!AQC&@~v1;sV zAE5UB`32;m|Yq>&iJFQ9h&j zpVjv-M9PNv8U!aJ<6gMTmT^gRR);=*^SHY|Ha%D2?`UU^XWBp4Y~)9JJ>0d>x)eL> zQ6#)@)}w^+jX@rA?tqE)xo6w!9MmKIYok4_IuBNLOA4Z2eB8mKGps}E=1dxsf5cDw z<>0k+EH7TW`0uWV9dAnGx8$C18$ZwPjPX-rB7yGx$)~b#dNBLz2J_BPo8Dj5SO%l} z!_S4woeoZvPO*Bu<8b@WrZ4%2uGL*e< zj3>!>*aMR4aQM&;cU(hxm$4-oTRU>R13HuZMVB6Md~34gp^2AkT;OX4e89=#mhj2A z_!Vu&;V*IYr=uHHD#5AnWs@L4r{Ozm&%lA2-R-ftp< zy8_?dDP6k@S<^=xapani4+u@6W4(cpa&RLnN--(-m<80u_yyc@(eGS#g zaC0N3eemvjc$vKyOMFjsITzfT$C&ZEXG4=W z0Z-bH|H;(js6ij8U>uGNG5Qm0to&HjYyaeZF7I*l0pT_D<@GZQMt@kE$%9-u|7!<6 zXOaiDJ)Fib;gxVqxFvsxE6)TY@g}Vmxw)xQa>+_-txy7dtAL+2VQHI^50>@`G>sv*dOUDeoE6x!2jF0FrF}*^=Wm%>R!x`k z%%qHGjuk&N+U&8q#eD`HcS}+F8OF7v_?mq5@$c=dcAn8ZZ2QpO>-9Y2YGGXRYhD9= zk^j=xNxi#VYTqQR+=dd%Y9k*1%WXWf4Lx2mw-XfJ7rrQ>Iz+0=5`&&i%(KK7d7oH| zm!4X{NylG{Z~W3oN7Kpm!v>-w@ZxW?@FLqDE-?HhZ4bw%a|5@;ZE`KNqeY8U- z9necIbmQf@uC5@vHa^SNcM{jb|AptwLAWj*AOXHBXL4*yIMmVP3w3sthdQ_WLd5@f z%a4#mHY?uR^=MhB8^6_&*0Rvi{biwPyPSDD_NBLP^;e9JlAx_5{k79q2mO53l}WBm zIsm%4T?N6?<0HTb>j+{j~YThd9n?#3kTxLINJ1hGirz3ivajHQGzY2T3ARn0=-Ju%^a zyk7*~SMWRO;CmPN-W4v4C{JH|rDWf^I4}FI1H3O~3?GH}Ny=M(w{l`9!Dy%jjC@Ru4wMqWb)$|vqxT^9Ne7l&JI`RVOb z{TRHbjU?^2({=~#-tj93R?a(TlBb;>yuUsRJ_F(XK=O5h$&pOwM@xoEmJ;vT?Ufmt zv(_a;UVyJ9+H?4uiKaG?!Cmlj z%(ZqmSiZJ50)yKwJ$?Uuw^&0O-e6sB&^2UP4{}YqQfC)%p9|b4gVW%hVjCSv_T2Ws zdurf4f%4GNyzJ4ZFE@Io?SFFh@P)3v>G;ND8ktCi&Xhxfc^HaXrb}w!g0WW`)rL#?Xm8 zct(C&Xy`flY5SjJjbG;s3H-GWfH$&fMBg*uSBis4cagn=4;7y$=l@~%{WmrH zZ*<;32f9xTx&z*+ukPtvzxj0DROv!7a0-3rm))0h{_ygPc(*Wm8Dr6>YLPxmo>}e5 zng?Ud=TtRzeSmyzY*8Dp?0rDub;4VBI#JeUciBbS?K8{SIdQ4(}ZO zr@X1McPi;u_q9*8O8U~je8SWTKIgyj0nl%{4RkcefXoV!yjGB`8k`+ z_~pNotw5iwX|DF6(YMBvc#S>e@Q98IdkpUQTzp5vp!JGYV_B)Kx$*`Ia!sdo*{@BgV=zs_E}fq1NF z?VUxLa>wPXY`O~&NnYRB2s%Q4*bD4f@_3<0}(D|uT@qD~uLXzw=_`{LxQXyRPS~y&J~c=d?WF ztKGfFH+b3gyz^#YaP&*8=|=0UWe@Cl;Ncf9Th6_+m;G+<0}t=`Oas^|VfM2VCv4}?* zof>+3mbI*JxjbU?4}Y`^-q?)~sXu4j(G^_yuL1t0&Ke#8{?OpEHu5W$`UbUK3;eGI z{%e5$B|LXC*Dm%UXMln2+qCoJ?DMk1I}ML>brHtm#-eRK((2D`lOIBRS-sDHoHnt6 z@c)~f6=L%fBU>7YJ+n6QDf|w2!~S>rb zA!`Lc-X-}Xe~s3#19@cjbs~2x#TibFBhFB>(;F+ix%m{bi##N7(e>BMXKQ@S@Jh+; za&lx;>n}kct>8#C`>cew%fNe3qQX93{VM2?~S9&zYZJVU;Tc!@8v^60zk ziS2>1_ocvg26Lc^KZ^NpI))NT*k2K zEPL*a{MPu$qe?Xa6WN8zKUMvxCB*u4zM&7Ff#m)+p54xKkMR6>-j{3_uM-bezF&vQ z2gq^i{NMdxD|P;ZoKt6+{JNpwuJT&*qwjD|h1%OhJ8H9t_rR;3rRX+!)C@knWZcPp z)GQX<7X$az!2K{aix0yirK>#S!2WGw|Iz`q4#)Jp(*FJ?-!&i2ix~dP^DJLaHFMa+ z+L^j|(j}zBKp!S=s{p+OeXN@?75LbzoWr`~4_!*^WQ@;V|0Rs$5ynBjdFrA9_MD$( z*VrG=eqPny(!7ouzZLrx>3=k}OLSK4Z}q)O-}9pT`7T+K3=A^5tru71U&!Q{4v%#3 z>f_yKKP>pToWF1J=i<&L<;S*M8o9}fL(~u#4eeXt(9rPO-M44)JLxM2Ozo?5d{92F zO88$8Kbh)vHL_;U;tR|f1Ab%c2ap+BH#fJvX}o=|@8+;CvYPozcXyw0b0zDF>|Dwf zmM`)>o(a+haNiZ6O|{kk+!*J%B46YVp7ZwO^VXpNhi~D2F@ErpqV#ysC9ViC9(?cA zbkY6|Ut~VdsV0VEw!)*o=eK;1CG_uYzmj)E_w#vH{*yUb{TDF@)w3CG+4pbYzH9=u z(a$?h2b-nit6%k1;q+a`r;Q7CjMe)+V-2m#BAw`@URkC!{EEAVgTtu@v*{n3EW3Vy z>+h4S(VE38{MdKllxjUI7FiS^AAD9AJ+VBLxDh&;P23+icJM4Ue0JyhtSRuqsj{y% zpIm%Khmi~Ex>n?|&+~=0QzP#Y)>3c~{+fBYemdUu{?4C(F9f={mp%$^3x|$EFMU?Q zvaob_=+@M1f<9N$o;#+_d1WDuUvg6Up5ia?zx6F2Q0FJB{p|kz%t!Pl9bzW$XujTd zHQ$-+Ezy~&acr|$z~`EL@daOxUv?!jS@wf_ZbFb8n)=$$M=qi+Y6mdejBcm3@2`J` z91;FV?hAjOB`?H$2eu}Up1E{!UE?TYzRD}>9uhP>a4EcJDY)Bl*O-&CTkJk_qQ9UG z?VSiSwlc=a9&B{TK=iVcj_iQ$t?;BsFLfp~H`%_}YA@@o2=P(r%8hqbpOiil1P0O% zD!4CStDcuEXthp0skUd*hhp~C*igzFs|P-skMtAy-Szwe*23t&v=?VS!kfPrY(K_& zNcM^z`f|>y3Y~(E;-EIKP1o~J|;hm@2&+Wa~+twa>sX9$;lkxEz&vaIKtcPg0R9HR&nkFTX+CEoA;W6O zxApQM)f%a?+t^`QpC?Z*ynBW7ZUufH-A|(Hh<;WsK!;i){RRCUec#khMpmB#p6rE& zw%t{Aax*y)@PM_#rNz+ip1X=q=5Swd5&v%`*Fn5s#VxWUeLZ!o_3|a?hUikpKSjRN z&Ey;@FGT+K(a<;fB_@B^Z}XS6u57_(ck0_%(Vr=Y0=+D;4x9Hp(j^6=&Hvk^Rg&&NK2~E&%2W@ZnNZ4F1GfoUDHp^jB;J+wi%i zpwmMT5VB5gmeei_s;PGaIf4M!I;eo~{h8)#e%rG+T(~;XgKwsyb z&9@ktwzglUEwE+U<|5^ZThXEPFTbUcV@`kDz~^V7hlI^n``?YhQyD)z)r$IfuN3`W zc<0Uyd%%&G@&^`1Pm&X``3BL6)%zy6wxyBU07jPD_Vfwjz-mv|zT$UtGHu(@*w?IG z-#Z>0l+GZ#`cv4|cTw+{n*Cn8`XO>~CuiZ{>VG{+NGZ2DMq6(T+|~}O{gc$-1fQGI z_`IC9in7|egSOD^3~r;Jvsd7<$gN!K=ar6r{y$Y|{J!496J7bxY-*RK{d-lz!S7ON ze@_Zo-pl&Ae6EC?eDS$1e0DCMnVh)85?-UdQt>=AO;#lJG{+l&z=1>-hb5>Vx-v)N1hq zkG})Yblu1St}plU(23#Qe=@nt^oOj8@to|XTJTl=80|rqd@ww+)yb9N8I5y`#tENR z+wRP)v<)5fY(h8o^ILk4{MYMfLw!nKBpwYbW;1m(dYWvm`_=vv_|FGu zUpk|oeE=2X4Sn_0(yshg;=j_5@A0%N{(k~I>;^6w_*;8fWY307{53qfntH8^?YR3T z9$Xf$PF9Dx7Y==q_WJSJSCaUOl$W4`)!?Jnu~4*+E+G2x zu_p8JdAU42!kUO@H^CF-cQEo7UZ`9Z{ocktxPACdIn&Ab#FE@w1kW|N%Xj5e9ft1= zAr30JCx4~cOG;cqc?`0nw!%wu=|lBG`-nZ2Ve>(U z2|j53{Vjg{OVr`1_C?CT*Y?BVkaV2{_$oh744UxHMfQU9hgHrP|I5Q$E&lc6W7huZ zc!e)iuK6&>ilMX(51Ww(9x(4J=xyaAwTd&0=-}K1>0lb0*8c)(11a~hk@c0FlMF?7 zykZmUBOGXQ)@K{*Bbrm3P`+~693j?WvsoW2I#u7z`s76?^Ibf1j0KGmUz0y=v+x{z zt_Gjw<7G^9ior>Z$=JKV!;d~vZc#@LokYB$U$+m~JjsuKV(z1#SnwD4!7pPKWuYSa zK+j5zW{%~YK{fgj_S5-JPE9aZeV2`7?(Zl!yeAR(Cv!d4Z;LxT57@`C?*#u`7e}z` znmlXZ!hel{f7*ZRXV1EF){+(E7ctk1nDad7b`yBCiQiu(PeprvW$Tvldj@l_30l3a z`2SWyCmjLTKY7oCWARTe;F@w@W5z#^&hOB~3)E7OUA~$3wa>%o=h$3YFRf>?!j40U z?u+P0y7@fleg!&|xi4LoHsup2KJB)ZUi(F?y>P*nH8!p9AwNUy+B&Id+#elFfAsmX z-?1fJ{V0Gfp*7vfI|i@oY}k6g*MJ{_z1F>+@8XTZ`?!ZzwFb}4`!Jn0de#DR=%U7VoAAQ3z~FaUe+%%OauMXCfG^A$ zo9}B_H6*8De^FWUf$`zyBbNl5yGnAJ_hEl@!V7bGK9A=`1J7VTUX$-{I5H$3pGIy^ z0(_10uK107s5$IE9s8-W=5Z6k&Ev*f&128=HIF?9JVsZNY)H(4u7HnfPIUvTTGep0 zbhb)C^k3L_Bb!liQ`NKT24>AIRfYeG0ug_ zz)>@YoaoyAvF1b{IKx=G{yvlLy!$!a@n+`>Sf;M#<&g!aZTlF$#U8O~_P#uaPDCFE zX`}ZqyUjE6c(&mkRE22H^u_vI7d93+l*(4W4PX8Nv z2W^+rw(|RY*cpm@$DXj`l!BZ1k7B{`xvIq;=s648t3=0=uBCgj+mhfEYfhU1BcDZc z&8NVnxxg0QCL6l~`S&#YtKBn%!|+9;dqI!?tUMGn=ZV7`-R&mvS38G@oV`>6ITEAI81K}PD-eVK#`O&2l0K>X+DES1 z!={$=-R!ex9MVbaz=Py8%hYskzuq$OCe=~i%J`IvP$`*$-lF{RXQ?Rw%tBkx5#r+U zYM*|TyV6%Pgq*3fn)`0YHouW~tNEP9=VCsu=W`jK6ZyQAPiUz_&(Q{Qfq1KM6u&HT zUhPQ+>r?i7J#eoF?#qF933y$7?4DPu8?BcER-i%fmMjTEuk9mmXznchV)KF#R`a3@ ze9i5*T79^& zo8^wIvva%fH?yvd=qXmX7`zBZuTjk-#_hr;NjrwFDsoJ{1g$^$Ih;-K>BzOzpYzhb z@O^}bmhk5rdC*%IH2B^;4t%f6&A|8eF6MNYb^ihLdmTJ%AfMmR(kCMS$=N)O)TUEC zgT(91ZJnOwbG@Zn0XwYP{7Aem7-?V}vXPj_4l6b#5@+4y$BF%bc{E_l;`=tb3hO4E z^X5$mzpcjfzU&9^-6o*F*lO}mio(qWsxc({{PF zV;MPU%D<2euH3dxgBLspzI20^%E9^+_q@+a-$?%s@9cUnZ)#T)?QZ7}I@UYWdB)`f zabQvm4-nn%|Bd*v9j7#FQn+oW&fVe;;BoWT<`X;zTN)h zbE5`4u=Yn|i+Oi4^Q6B)#Ojv~8`MyhW7F;}@CWj=uDI^a@4iyGWCnWU{Z4F-;~ zO|0lA$eoeCs+j3dxUX?)j2hdIvwr`O-(B=GtGjR4Ddu%PpR)qtR1BEKfthR`ci)F} zE$>=t&GfFjrpf~qJ;^rz4DA*h-QMTq9;lu}j;ZHBzC&n_Q_o?KQ_n%Q8ET1R?a8R; zkQ1%y?c0UE{c`Tds6|jqpGWQ{4+7j%jgryAy~Q>x2ZH%L&H}o*m;B7@S?9a0l+TBZ z%mGdl;kD?VvFb4ALzKQ+^*;3&?zB>pO&_8`V9@zAG&qZX?sWL0LxVAJ99wYbw^h%WX5I;~<|(wkLx<7(Dd=fU(@xyu@%iLKV%JGWjCe&w*0v#g9Y-iVHN8RL`f zm&3XW7xdho9oB7?`UEF@@GhP6Cmk@xvq#XQT^x}8tn11bILtflZ}HK?yj%QUpShoe ze`|c4VKs;SOKmGpue>h@929;Unarnmj`F?Nprd~g7|vR<=*n(#c=JCUe&t9l=Xfo& zZW|X_{qQ4PFUaw|Jb~+jmXqJg^=l&cKHSCp^epw!mbEZ;Bd0$EL;D<;T!%holfJE7 zAwG|o&tSBR&w+47@-#dEp4<)2gBs?aiysGom-l>5>3%_YrsM?ijbp{$~A~h2%p2mUSto@4d)D)e9?LQhBB8!bYa=+Z zO3}q*?p(>0SHJn{cW~`)cfYLL-?hks?0i}AWa+Y6#~?Y|3x|+@OWtlSnf`&&BI3c=E(Ukk+;^ycQ1p2F*nP*J&FM6CQW}9z(0hHXeSMSG8oIOR>E^Sz zwyf=UNw{?B_zX%%SiQ^eMaef9hiCefcYktZWHbA+Ccn(NeDK8@#uLu9rXq*uw8JY` zo`(#33SI+msU1PAiZ;vH<0YKD=!dEGo5&%JjY4G~EJcI3OKl62->A)Yn6944_{uD3O9#iEnCBRY1s#poMhGHi=b6j#zf0rtO9SxBBW6CC^3(#yb(VPHuT$$Qk*71TTkC6wV|NF8 z_JWtw@gZYN9hALRk3J@U+30@XA-Wg8cPNj7vDrMtmYXr-E4VQ7b@GAqzG4E{VOMCL zzW(=_KffD!-}|m?GVHCjvbWykyhvA0h+cO)b8H)6eg_P{PR~#NZ+Gkq=o_C&I=%)R zSI}=6^DSn+g0l;Y$EfAv9gpj;f7t1JzdhwZ&s6T12jq_2-?{)uvuR_psG zajy`2C6*CKKaZiC$D24?cro8w{gEfv63?=%-l}qIPNRGYRv?lKEM+rFH=Q<^y-M)r z_6_JfM&D7qtS~w=2c1|t^>+9hx-Ie7RC%fOOVN9*!L}JpznlXce}XABg(^c?_25=L;Fr9IC{ebV-*Mg}VXN>_<=_j^so`-I4>*kjLTU$5JkLtbT zg3R|4mDne|*TuZ-I=6Yz3wcM+c3}Uj57&NgCq5yahj(~37#+cLt0uFro@XoJwN>!i zD(q5MPL`i9Tm9n5uU^Dv3R*u;Qd^+pGU|fzd_^T=Sx4Mt0df#}4x|5;VdJhRFU7P+ zTtc79kJx+>XQ}di8+|Budd~$muYQi4^~K$54(&hCe0-0Uw+tRQ=ehjwceXFN_mF-U z>$mvkmwmTMKW(4L{uJT>J?IU|bzy2i)`p}f?)i;%TL)t^{wA(V7H>s=&|LML-qW>? zJ}ZR()SS;~c=p#On7!(Qg6Wz=iYtn43bwv)=5cox?pNXy$)nu`VZl(iBL8wQx|bXl z;eH%^Nq{T93*qO~6R#AnV(u&OC&^dlrK5SQxfwHK`?+#pz(=2T>_M&f@6N*S;Iy^r zd}8~wvB4ROyPn7ivz{wr_E;KeL(eV8caPs}t@g$dQ{PceEx;su-$xKHmtH3rzClin zo?XefnusNBC0?|0Mkc=0h3)aJAa1_KX?x`i@(2UgFVED+d-(fZf9y(R)=K)TXWcc= ze%}fGK9|+kv-G9)dWOD)o8R=zCB7c~^3La5S5kwfX6JutKC~_0Z!xkq2U~k3zw0%} zBJ#oE(_8rc+?x*^+Pd(u<701m;dsu^-Z(BDe-m=pZ8N?eUW^Pcf1@bUgiPK?yPL?L zMejRk5hFWA-bZXBv`u{|A8QEi94kI{R>a5pWxwmTxm$H;kxk}#+mF`IyW2O0HCLM! z!I>n#FL&l!%UUdFEmp9GqQk+{IENH?)yB{d^{G63>)c49DV+NKXRU`~;7A;NtIP%8 zxbI`We&(-wynC7BXe<1kz;*W>!q2~~jNil&L#1PUx1krz@zDqLzN=X80DI}N#jLGr z3ytPpaS?tBaAi4kScZ*O`Uv_9-+j=!YD>)n#+#r^^FF%O3Usc-%zek7LFbY_y%#$5 zQTNbyDg2PJ8F(-c@$WdiQP;?ENX55j+QH)S|H*w_cb_qG#Ichr!D;Ic{>Ub55?8O6 zFXR5msr7o-g~{_D(T1LD`7`&Q`iT362Lgv=4RQfkB+y?FrN)0`#`mqUk-dy>IC6Kh zTaRQ9V{7HFhB>3F4DsIE&-FI5M`(xDGCZ;gT{4l(ffnrAonOhCTjbA;jWtcyF*a~P zw!AyGBJDwXW4t+I_zlji`Ow(v7~44brT5;S8QW*F#&+{ZjLjW~fzf$3jDG9w%Y~66 zFI&C${>(UrWR2sRj~GYUN8A%`gg)Z_XFuYetK(FC&DJ3~_w+;dww=$M)~_n^Z22o6 zrOuq!r|c!kV|*VyqB-Scti=b@f;`dv>euY&Dqks6-XwePZQkvkJyimq63-o7WJS&= zXUD6DN&ov4<2zHn#8PP5Yp-j6>m+>XVa9nUdwFeIwDnW9l}lT_EUekr+GOu*-Gtxf zM2QvQP@MkrnrcP2-xvh$eQ&4iJJ+5oF!o$#JuvM}$$<}ckk_Vsff@4sz#I3VPeeY7Ljqx7#D4dTf$**IBavF$cb-QWz{ zM|n<}=M71}(R`MG7p_f^olo%do6tlR~H8zeT=RbG-vhhXo!(t7J`6~kUUVL%s z+3`*7S6YK?^41rYoO0!=(PzR}82KN|Ps{&oUBmS)E00}14q&{a{NSa$_r0CJ zCSSoz5AK-maK`jM&OF`uH6u5@;|YRC(xH%@bAqhP7RNUCw&@)+eXn)TIsV08Hs-bE zW5${Dksmn2m}fa-R$X0pyxK#MG2U2NXbk$yna1?}zhF!T{^y}5A)l6Hj|qLp3j-If z7dm77!x`|$wx`qdAA`1xe!i>7=;uGp>st@3InSmr3ZENMWcDH!MkGTSPyZRx-|)<% zVowGQ@$tw=3AqaA)A9uSq^NB)*VtN(0kGdKE7Qt#x`|49BB{uJeVNnean z3ph@mK)-$N(pVmL4m_~qs}8^S%+XzsrTB`x{?$JE?VCq#+*~W<*w#C$I8)4z?(2iU zYo79pOvg`JVa{FiEo;ZVQJ$B3Z>~9a&9_WASmB(zre~Dn+OD&ik@@kVf`KpknO%$x znI0b+rhb{f8Q!zDJe(IvAXDPNi5%mIa%!ZXkv|Z!ipoPV#-=fz0tVp#^b8%x=7vLN zeFL^{~k0W1Pco$^V3pe(7sYSe= zwYna?I~)!@3ydb6gZ^9!Tq=+iv(T5WmtJn$5B+uoF`wm(7dv8iPV>Eo#@_pg?1yD> z;BNb=Jbbs+hD&fpIJAJeL&|;BGv8(}@+Pxqn!20FsMus+O~2^o+P9r5zZAV5UzZgd zVeGW_Y9F}|)V+ak8GiuyUVi0Ok;WgNT3^O_c>|7Fi)(bUx2g;}6XAN4q%Y?e8J=2OS1jlWOoo zzUpfI(XVp0pv7awJ0?aF)Z&vL;#;gmlIP`{`5ST~i&&3B^8fU=T<3{^FA3;VcA{+S zU7S%SAFyeMn6zq-&Z7-4&ARlt+nLWm{!JWe8SqnFP;?<*K`raPrHD^guD3dV$^q7_ z(domxW&^?R&-ORwAU2knVcl9yRv61 zbsr>Oq$`@-BknDD5B=^Y(I7PuZzaEsGe|pbhmOz>>w%yAU)%Y<6*wwhp>yEx<=V$N zH@=&kqo#B0v){?DXq)hU&AJJ`dmgN}3L5gMZPaP_Pe+9X-0hq&8{czG+_`hHa~1%6sD&|f z!0RRdFDB-z7$5r@>|C(fPA(X{S@eZmV~+xT46|8j~Hsw{Zq@yMZx+2YZ2s za@rE$xEBU59RmhDyZMInJQfjCXq;i=*XAPm|E%aY8ULnhEcQy0H$BYPAiTr|?8nP3 zyi?5F<)im6DYo~a@qHfedF7Dzdxl&A4tF_laQRcq8Q@W1;E~o(r6-|hg?vH&8pEMY zL2Fv?Ab2}GTyQSKhiJ*qa$;CywqPYWh@NG~k%vV($vIPw#U^xUA9F(2U0aM!EgB=v zok}1RlOy5#4!&*6`;aej$4AA1E_7i~VasBd=U?T__qWbGwcfpTcKx^m7l`M7;^g~v zg(t=9;&-E?LYJ{S851;`sNr`hzB|^uucn~6a4MwlekSMeJi%tNuQl} z+BI6^w39&oU~A*sK06ZY29E6Uj9tQe(|MogDmV)-nQKi$J{~Ks91)2_*9rJWrQ> zIg!=M_k$k^)}kYKk8Gj_JYp@xXK2R6! zfTzSLkCj&riX`DHCLazQ?3`xwxnoxBipaPCXT^iN)t1$uT!Je2TA`KSEBnLU7bUo! zf>-wI**qVIPbT2A27l|Ex^v7gj4fRL!3XP=J5)rDKr8+jeIGreEHvL|O)CK(D~4E8 zORgd(NoUaBZ=dH^rxBY0bRr)#%jy0T-#=GBwiufausC zWzP<=?@veW?X+XE7dBu=odHhSJnQ<|Ht%+M)=&@6a`|_*J~dE%x|us&KAHC8ji7D$ zV~ig!Y5Va$PJKGN-g(-eDVx>@4H^29U5ou;>)hd;bFpblj7{tBw`tvb(~V8*H#TjF z$EFppRD1E^%G1WSMGk#u2XH6^=EI>|@aP%xCu&tMjyjg#Klbi=L;u#5hNm))wc?k1 z6*uR3@!UA?axRKpLq_z@^@HRv==$hN#mlVd3;ed_M_R{~{5<-%_8Oc?UQ96lt8~2w z!9zSnMzaqME3r|);h z5@+4q^)Dz8FHg&>KID(^w{MRXT1Wi3uO|@ zX^u5*4E7VUcUn8w$55|s4E)_|3%D^D>3y;bEb&^-qQ8`NfS*#&t{}pv`0d($osvGa z4qUhSEx*47yw^X?{%ra_g$yi%zKdwjtbrrT+kI1fff!n~Z2|396y1jDL-zx$ zyFR6}Tga^#ZM5J=l}uGzvVZG=wVtU7Ti?+-&Ua{N0W`D)8VW)~Gp+WgwsP*9>@f2i z8q)8X4h`YwpHgXPC?|RiJVWhOGXFUFZZ@1VapLX2v1$8f9(uag)J`6lo>afPpPpK% z8-NZdAOD%?$xlr>Lr3+QboAb2a)Tb7mD1<@C+yGaU(8BvEut-FZIoyGQTSiWye2X) z6YGF>SN7#itIwjeub(#Ch;j@9CeSf>v^Uqo(}zcSFzi|fE6;q;8! zJ4}@w++g(EV8C z412z&mf#=Le3w#3K()SEqfjaQ=C3i9S!OKwxfze-mUk@jxsFA?sh_b9j2FRcwt*wL z@S5#b=Tlu)uHiN2H!#-k?GB7P;F*H4c<6rMt=K}G`eGN;r`A(@F2{nC+u*~E(CTxn ztMSKFK;z8Q@L#$`bs)V-dC?hqGkT-s^mo5(^LCdurSpv%fIbgo#UE>pUNJp#l6;LAZN&q( zk#p*cGRA`zHrS#!q}Owe_R7#{%549R(K)N&A7ON#fZ;7xblTTBtJ=IrEC9J{V2Iw; z5}5a@#yFcXdgG71t+svMOikqvhMv=JpT}w#M;$lBr!&ab)!e@*;~n6e-KO$JjUV=Qc;k3GP9M{Gy|tVhPyg}<#+ifk3>&Vt-7I{?4%|_W zKR|g&tjU}h{SyZpA-vtoZ<8|>4EHYMyZn8VbkAw~pZnL{hL;P!?w*tDRmXb+Nn-E6 z^@Zm5tF4!h0~<4Md?vD61Y;8ifu1!E<&VbcTX7&CbC1LG2$^l{k4P7s?}|9 z2YIP_GMTtzMYG!&?7%NMJ)8>2XnY5gE%x{p**Y}zT3!2zh}Lf&IJX>}OPXuLBf?3=b0kBg zLsk<*NH9m~!}l_VT5=rQv2)$r@;JFOqHXP`u7|co>n?t}^!){AO|(a>4x6{m&I>ks z{j1?m+UFaj-xXoo?me3|k&;oIUGx+!TFgoJY&=HpU!h zjQD8Hvl)I@XMX+|@L&!tJZo^onVVn;&5=X>>Bw1GG-vkofj_T(DNT3Ev%&uRkiNLo z&|liW5@fC0wO<7MNYB;gO|8sVun_$519Hw*dX8G_Fl#Nmo8hdr9j6FJBaGePJ1{F` z-31rf>RR_gubs|1tm4_i)Bfg+XS}fBnR|F9z*^NfI3GvfEOv0d#=&{}nvL_$`tGvF zz5{ql!nF6Ki+iu*3)^mdVY$n?o%{~>-qYx0HGy2? z3zL4i0b4}RbihYe(OxI~;TqY^n??bBa4$6O4=w)E@ee)CcQ@!`05c=93>7Je8@oy z8ZU-^id>r>7SGn`8DI_!L!aXwv=$_KP*lOi9Y~f!0=`XLVKfS80HW+LuoMZLo6Z6_i zj`mh^LCLi-XZ>|eXODU?uOT+Xdbx0|)%(c#)|}Psne5^j&YNw^KYj0g%|HI}p*26= zeSFQ2|C7Je@uSfHCHGvn;d26=B<4#}b{e)>hOkdcZH-+gB zdYc=jA9U6`!}JwS{ps$q(7QEd^ivipxx;#S|uI_&nvCa zR{g$;XYh@T)wLO%?WAkh&|Y5cp@lbCp;cU8^kv%8=N$U`8qeyPZ}7g}spS0yj3=LQ zEwMsd3i!N*aSr0stzk)>6vKPSCz8&5opQ0@Rr)^5e7E`Pj`x5?ZH_ zP}|ahBwxfIrK9P*i66M_!IwIwA#cII1b8buQaOH$krPXh6J14NWK%w}&(8POxfL;F zM>}INd4Js393DXS^z{vE)*c6JjUDAJoK?9RzTUvNxRxjhMu-F1F(Ba60e@aG2Kmoe ztH(>92?|OL6M)pSSg?|Mrd3FKM(w2NE^%nQo{}hLpx$SfU+vkW&OZRd2z>A&*hB@r*)1Cw6VJD~|TJG%2E7HDH_Ueu2eB%DL;V=6cFFY|-cowl2 zeBMdMTflg0I8%Yx*_I@K?3cCVXaBHSf4KWD*;p75rGLdqu!aa{(?TKHk$@ zz=c+D=KwlZX|dH?%x}G4z+SF3?BzPbUakXX|9nA@_I^rFl0N9Re*jpQa<+_cw~QQ_ z1Hf6od&q|@Ll4|au4*0e!@^J7`^37zi>2)MJiva>LLYOWzi#$>HnZPTzhwtQ51~Hx zd$uqq|7Y0)g-$VFd-Hxn4T>6YgS{h(I_#cv$pNv(M&hl3$oYrgT`yd+eLPbl32-PT z92!*?l7G?Cd4AyXsn&FkMI3%E9818rZJW);v*b`;NNZk93{7-X5Bx=w5Bb1X#?sd} zw0U%?XIxi(>Wt$$@jrjPafy!W!J&HLH~4=)>uB`h*KOKac(@`Z7_>9@4(8sDDrRG*TG*oZzj23F(>Wg1wVoF za{e~KZ?{tqq>FkWg1hSbDsM)Ir$ z*+-pc6X-UpS^s;Bus!jUOeh`~fo6=Kq#Ie>y@hz}H0FVvNFXDWH!Od@YR~;>Dz(e8 z6^$%_A1F?^m3CbFN49Gtvf{iRV6hB1(_St0rz~r7H9)` zAMOj)!pAJmv%Z{MEX_s!5$O5~^~IW`+R>4M_#gz=Abx})tcPGG8F>eD3)bR0;Tgq2 zzQu2U5x;r%n|#-v&N|^dV^vP7+Lupa3%0oYH|^+S!AotJ`LUlW^?oIMm+SvWZDWT9 zuS~yJ&wJFWP6dIp@Wl_Dll=Z$^)<3A6nq3dXgHsb0ZZs1KC~=U1s%y|43h7cypg>mU@qF#Ug&)_RtGqayAODK8M;(5=w!HFx z$B$=*t%yY~seFQi{zqq{=0vx^FSf!fq%TPp6?4CooZcvV4p&jv<}mf4>X0RePy5Wd zq52);o@zZc^6Ac_T>G-_vgOK(0p?NvSDc60hei#fyIEg*KEa+ruX5HZHIE*-+&Y-= zn-4xHPva9CU;#W$xrCCB(z)d;7j8=z?s9mwbm>~xmlCjjH?l2m zVoV9ghiL2vC*C%}oXL=mw*_gt9epa;Nc~UZnL+YQ7x>vzcPV2c=f(Iyrdz2KC7E$B z@i9jp+OmiHKl&p)72G`^+!YQ>*B8(A)%rpf?b-e(J9g#e6}~Z6>QAD>BI%a+zR3$Z z&Tr)%7Kk$mnUj$<^yfZbsd>?_Y#q%hR$|#Qn`b`Fm|`W|gV*RBlCi`o z-TT@Tu$jJ_n8UODJ;(R4)Jv4ymv6|(3)a#d^Q*}0ByEW&+>72B!xnPK5XU}HEJ1wk zYt+|u_cgfkLoz+iyQ<5DZ|RBz^0zGkrix%H@7L*zV3A0 zeP!h69RTj$K0i-ig`9ulU9Upgm7KB1Ul@H#xgib=cJsdRc`@GA`i}g&pY_zU5A*5T z#KO@Rud(UoYdj}9asS!)YTLU@v2#weX4<6GQ$KYI`CcYwf?QWSik)cw{V@{e>hr>Y z-**CoLi7Qhf$GB+3bYvCxOoRzYvj7*spR=Bf)_Y_BAK}#=g00mwi_FEgvm+x6XSoB zcAo%WegQr|iGJ|3mFn1ot=-DLnEljjY@;^nOZbdl!7o(jk5E5313rEiuU`RA?}nBn z8_}go$5_3CvA252OC-KVUis%Dqsj5V^55|~)L$rOrFcQv2bX*5?- z=@6>HyO`yG5-LM$Vn*n!SDKEk+0QOEX(iPhvUJL<%0+E)))}HwbCfXk*cs$Q|RI|6>{f+nPw`fTHKZ5R=j}Cjp>V9g1 zFW=-HncwuM-|FjW;zG^j8pWv_J8T>L!)bdze6$;TL}$N#lW}!12l3=h`YxXnHg4CG z>A648npu}2BQ8~q@4RR`dk{O|NjK(M51IAjehX{xy5iJt%}gcuUZp)2#B1df`{9wk z_3m>q?#)$x8T(81sr{w;)c(>M{6BhbpVQt@ej7Zm8*KbMZREbix}f78==d$@_-*L; zUFi5d=(rC!27IaRJYVX_U|;I!P+#hu>R{wVNnQp%40G@yHk7`BKS3AMtEos$-ll)p?08)isg+Cez_noq%q{S7X!ZFG+uG^!F0BtoG`9`jec}9)iBUv#Ap^l)qukiB|Z)ew$uY*J1VR z@2+2gY%WJO8$X!%5b{yA!)m?vYPepIR5$K`_GSz z#>bm%3Pjwsy?2yz#+Czn#m&HvU8C7^WpqI5YDovwZ_x-k;>(+TC!cihE!RDMR~X$f z(38ZUGuraEmGK-phB*h_LjR!6G#nZyMgASWB01;A>V9qHUm*H|^0UxYln;{uqxHaO zLmEb3u;LAT^WJk|w4F1X`mYZRqrKQP#bJMBK7MmAj7tCC!{}h~N5H5K z7>O5JP7MUVd}DWO%68MU|EdKmcRc6A`<+bh5w=vz8+xv4|> z&pW@i0-ro57Sn^K0Mv($B%e5 zW4a0YLBG&>vY}PA-W>{-lF{VQ|iB9~Y@2j+X%MlHi?u zM-Q#x{6C(TeuM2`V70o|bH3SN))`&rPcs=u9&0feAD+i1HTrc0=bCfgMgj4G4~CBH z&%b;FUT%Cuv+XreE~EBacYq(A;E&{eH{&}3eH^`$SS5U1z9($RUC6>6RdbC@+%bQi z{aIaI0X+_hK8bBDd`T>0&29~+V(|T)Tr=<3@^ptIPj^V3>VA~_Z}8cEyQlr@o%U~Z z+MjK=zftY;oNVX#pW~T!K{$|m!F}J z$I)YgdaAHHkVc!cqB3%^J7n+i~yx_`G@U z4c*^g7HaQejfh{Y03LO;ty<5Qp!>|=_sZ+Oe`xHbKRdqiXD=L|`K2yXYf^Q21Q+Sa zTc{&s=oC4doCWWIPkgR}cA0Nt8S6g_+=M>Eswc*|GvkoylB3K!Bwg~q!N1sHU#PvX z%*0FFu@g@u&#=(cE;^rjm98GpF&92XzwyImp%IKBb`!YSfWMZpD&Er9cTO|DQc@W{ zA4&cIoTXjiN9Q`mgKqs&fIV0Z_}HLX`QUk%LBcA28k_RaIx6h@>d)BzFO`LA8Do4L_4-&-95f^JJ&x|=!cuhB5)4Fa zJ&W2P$T9i-zVRS(=XEO;KMbsstP^eNUG?GiDLA>;+aF;cW*&QKTgyVD`8?B{9?qJR zVwf)e5wrNEVlvX}yzhfQ{dKhN^Stk_S-rDnZvF%3Z}i5&`ITH>^t1a9Z5#6V@oi&Y zIKJw#H>u^D+vDRNxqIJv?(zE%sb11@)lC^hMp*we~Bav)Pv7 z`9JSw?&I;bgt4cKY1_O0*uQhU>#lK~X>K<{8=LUk!k>@TQ(LWl4>_{Ze_O4T@;$qO zRl&LVe4Mzp=8^v?+m3#ee!3qEhrqXKin(cR^x4gv&eY$uj{{5U$yd=2u-v`q{s#_q ze)Dm`aM@n^1BRiE5BY8bx8}rvNiKcrQ#fbzYv3p!qx*deW7){e zTm=5y6Q&K(o7xpl?js*kJpO9@ZvF4UkH?*7?b>dYhq^{u)ArNGKHAzg*xGfNHa4jZ z)_fm%vho#woxV*U#p5EnUq$TbJ=*TXry*T^AV121Gx$+n_xMo`c>E~cv~?fr-i=<> zxf(ukw|H89^kgISBRpXZq-%7phEDH>hb%^3{yrQ!0*ty2hC{PhFU?Ohr!k+yn2!LX zF6MDFzJTkh1_7TzJ%aJL0-ILy@VoR`WxWktv){AVJ5FC}Lvve)N-r0j#(H9UWcV`RhaV_^}gO)%6+}p z|J-}dbA1&?7Rvu;{E4Nkf$$4|B|L@LI&}__sfIr{PBir^FNCMWU$OI@V!9{aJGON3 zu8EP^Z-1~JJl-XHUHmNeiX%h$Jy^f_ETR^ikx_cCq>LQsvec3DtcT<)i$4tqHpG4ur=bQG_#Qq!UPp3f4Kt05k@mO6yMTj!r@KAW-4 zI9TYmWyUup-%E~ z_Kg@D>D&)rr{-p78?hz)Q-z!lu$;A||J^qadEij=#h)ENYzffpozHWAHQPkMq3tdwiVdE}9t*U9CDNXTS?D9CBHA9xhY({QX=KB0xKOb~_ ztlX*HnriQpUVg|sE>}m~!aQ<64^BMfGqfjN*XSMansrC1hvvblT-wlk!uMRpt@*n= zSG=|#55d6-WbOjxuQ|9^3?40F-om{$;INPJ?PGkM@Z@dqWX0_=`tra{F%9988`BW{ z)K2Gp8`C)Rzlkfog?L^MM1rO@NzLjlzBrrI7 z6dy%T;H>ByfuYeQoF}gK_c0E|RwO^1n8{kl$Fo*Gp3lDF#7G=_)N7l@Z?aO|4OYrx zu0G}=`1ivcyX_k6Hu?X`u-m-yt&=tEg1;OoMc4KDdS1Yet0R{>+m9h1#b?UW{xR1_ z5q~ee-*HV=ecRYL&IK7t?(|@Ax+EOxRPC5i@K>%YZ`t+py7(*~^iuG+4E#~eUD*^X zkx_TVO-|WbH=e9}wZxOfSLM4=zEqO@4cSx6c_%EL2%9-Ej(e97|Cg)+N6;5S24+s) zhxdEONL$8BPIvz)?Sn4T-e38kM=}TGt@j-lMuH7!(C<6^4Ys-E`6vIOsb`&4k2Z#k z7d;gdCqYKG)t|0e2hBccu}5V&F;3_*w6WH@%_6?C(K+vMBY8Nr0JciSdrkNNnVDIlMhFi#1>!ViT=Yx%NaCO)~z{txug=UrQ_} zHW54re%^bs`Et;4=lqPCUnN>UJ1_IpES?KMW6nF0e>QIVjNioj-2xAZADR8vXCYex zte5t9oeLbs;P*3oxF%bv{x;DQw13jb)X9vg1l(p#|LFSPTJ1jSnL9Ct{xc)1*{4(w z3>N}J!9y?7<;DG33g@XrP z|M9h^CQsUb+)>RMFkktNHFxyFspJ;yDE_Z8Cbyus=Y#dab93z}``Q~^lkf66bhRqh z(p^WBr@)#d;3dNQ8Svei-zV1(x{%ImbRl3^r1u3&_MU8Vzq59tm;Z2nqZc16c525S zzeis%fm8AACXw%a;^J zn$S(!n^fPJb5w!-vbs|?Z8`o_1KSEKWMDfSUlsHzKdNXA^T4LH3T#i{?DduETvM0c zjv!aO^{?Wg&#A)3r;N3wfA#yv(lm{`{dWAB{>;8f)2GfFlMb9~ zY)^FZhYVc|)E|AllGRt2gG*v7Hat3zKKyz&-c;&!CVye?qxc4Af4;1RM&cB%myoU zWF!9TCUR%0$(?D<%*mO2of89ZqMth%2Rd*Ze2kylAN$==TsbLn5BL;&0@}x>Uy1Kw zWv(?Pr^WaR*8Vm2$L7-3HOh5n%{!qh)x_04(>MQ>HKgBmaIpiN?*wPX^Og6pnmw2L zj!nPTTU+YS?P10CpW^Oe{rOMq_JicP)T6igK2>{Yis~`bXB=2BH?~aRKXkvHJd+^y z^miAsUR!|6l!;;r0A$o($so^(Rj zpJL;)J+4}KgW{-Fs=-Fh!$-ek=aq?9xqPIrFTdHuBn~9q3E9YN$iEU!X7eMLA1bb7^p7umm^XRjM{j5C zk2CrRww3pM7xZ!(fG@-z6{NX$yUmuhUvAa?c`?CcsVxU5mS2=r3} z{e<~0`dpA>P4!)c4-NWM{nRzkQz`Tr)+h97@#%y9O36QMq|JWZarS8Y=(8Bu6q7Gp zR>Yi``+S{cSv1b*KXKl9pvZcNcTH@=;GMg_8~A7bc575wb}Y)pQ|Ec;4W0LMkuv2p zL2obJm5y%t<`_upO~SV(XDr@&q!WkQVi|oPhF#fWo%~gR`UgSkAB>^?!4~QtRAHM1Vn01p za{Te*t^6*r0&NNUuP6#c#i!dDSAEPEp-#s0F~)=}o~k_x|IFUlUjxI605D|S@oCDF z%B-_!aK+IFGw8W?T;%mT)AXFNKe|c2w+o}QTzC%#CeV`6iJPcN4vx9>x&}CA*Bdl; zICwDaTzr|VZ7a4%^;HvWKPS3Tr(~~@ONG%zT}~ayy7XH2kA*Q@lr;wLehSH(X5$~o ztcMf>-ogRN-)cL4V9tnE4$~(1<5!-fmMD8iW5|EA-UctNXp6y9YL0Twa-(n)f0B!v zm7H-TeF0v(qdYdm@Y*WzXW%X$mH6~t@osQUvSA)Fp^V?f$b@p@l%wx|Oy?FZQ~xoS z54(Cg?|Rqi!}lG&?LH693r1R_|G6qHqlpFe`v{Ca9~f%a>$nSjK5$M({zhz^pPV&6 zJ`=xv&H!{+jh{>YJmHX^J%{ex6XVKLW#rSl{E2yA5hl-G{;{%JdvBS&Z_yY15jiK) zIm)2@Fl`poj(AHLcv`?^lyZF0iKtyfp5J(I!ag%Oc1byP%gR&V`|f-2cXDR?(COY~ z4|kv-Qd46!_mSU$Ut`Cr(S;$ycv3C0^uZV0UhRk^8$Yv|%nFXv_U(F|)`>;b+AzNjatO6FD>n*cCu$}9! zPFlv^@@wyKa5iv`EjRJ=#rrsa_aB|Hlj|#3sm5I$u+kXjlNTp=wex*tkzi)W&8{=> z3Pg3TYb+UzY<9-(Q=G!om6{gm{m*y%Wdrzgh1LU{L-yM>rj5^wYtv|JL6MJGl+NL> zqLcY8Iou>*y>svPe9!m!e9!lsvxfZws0G;Dh|bm1 z&V1T&=7UtP7hZppsr{ziF~A>HYvAeq0B7k2kjvzs#N$B6Ka#t)R0r`V>@RSM-JH1$ z;($72Lf5nP|LNp@nNOgelw97?_FeF(0v=beb`;s`t6;rK5*StBJdXYr@ta5cmGCgg z@7=v-e%;7LQP{G#&2)4p&HWenUwMVAiS5>OPP9*{bl&&Q^{9mR%v|#Eb{P6BL4QM?GwcBL zNdZUkbBt$27q9L%2%XfgVsu1uyp(>Wfx7^>^*rm0XNo%(0AI0D5;)!%;5Eg3T&J)b zk~h^MX0z z`3N;~s*|{*guT#smRbU{k61C+MrU~L5!$DY;;BcFzYB>ScU@=oJvy1W(Cfl|-fbQ@ z#$20Mo_B5dP#mdVsu~(-E}5?cZ)o2YVr(*xT1))KoNG?9?)Usm-)r$F@vA#8wj*@-nvIzIChu_pBnDt7DTlvU0+#BvYHS^oY?PLS@o6ws(1AUCG*t_ndc5-<@aWeWyPIEc?)$@E3 zJGfN2&D*BgtJvG8o3?vcJEPp@nYX{)x;Bp%UY|EY&&Cnf^c1!(MjvCWlb%QHvzb^q ziS4UIrj$n;2cJ@Vt-cU_Ox|eqZ9h8O_r%T2Vdydr$L!Y-)|&JtDmRMcP<%{V;o1 z@GI+kvGu#LcZxH9%z8=V(~)7XCQfZ9hS5Ld=_znHH4lgJdDk9Jb+Si3oPG&T#>Yyo zHXLiGkD`CZuBl$Kq~kllmQLP+x~>shOJ7-BfHhe>wWr3SzAgW{m&k)395&hWoyFD(#UMHu>Q)*Uv*s z#cPLS%lvjXguO|Z)%GbCHG3sC!H)*V#`nCgcz`nx6<-jmeXWu`32DE<kbBo+4DzO>kifpvloo9*6DoR)Qu(<9j)IKo9Z_cqjEnP zM5Y!iZq<8X_dUL2LmfD)h8j4j8^L2!Re)1F5sV9d&ldcI? zr=~Pj&#MgFpfiP2PhRp&`q8^~G!0$-2D)r&9@8~-)eWqpN?TimPv2&~$>I(h(YZ+_W>|$!?h-&t=i=t);{*2hdtByrvE+D;U&0H z^U=3!M!*+KDSof$Xr`Vasxx?48=eH-h94bhefyvj!)Yw2I)@~1j2=g)nV4AfCyLX4 zbA7Iy<>b8?LmxrDDN)Az!_e&!>}B|lli%3iK7-ca<)%*pc1Qu_N@+71(ETZ*%JcSo|nwT;?7@0kcWxmuo8toZCM;_hkW47m1U zZ!b5gcek_8jlQ#S_U&eD_pWzVG<@g`&ik3hyuyDLx>Z4(r##6`=k&EM&&!V}e>91> z&!4|az|Uhe_JogmS9L}S?d?RJ=gog4*9>oyW34{;g1nEkhf?P!nzy^>?cwX=s{Pa$ zCn?%OSM4KGY0i(DVE>SHdr9~nV4R~p4g5AD1>NDj8UGmn&viugG4wffX5)_O`<(u- z;cNpZ2b|5BsgHB%qvV+UZYDo>F*ePgj~~mJLvt|^#vCgdhgyr=y#U<2ZxnvJIsdLu z=SS@w!~mj$H%}6A+t4`(mhaEY2VQLGnVXN3u0+uX#-MSHWh<~L?Z|&6x}eyT^I2Lo zCNaM=R?zQBe)r@{yY0=XU|_rpl3<+ z%#6PiLDM%gJ^^RthUa6;BaNrnQ?UUF)x5%U$qjxxhhCzGM=$CFa`^A3TP=26bX&xl z*c=(bPWZ3;`-`(QluRS{IW(+NUO~1u*zuV|&~Qict=9e9b7^=%9t|a%8>VM%tbe}9 zsi(-!_lTD%@R9#`+l*tqaa=IF$Ih1Q{7r^Oqp-uY^PsOC@ku%BoO%lOgMDvA?s)^r z*}Qu>?OsZ50G^Z(pNNL?9nyEnf3ocM_1J;9MV<7Q{-9bHXy&s6<^KWyu*)HApmaN= zwaWL096KP}ie2;DftT=+`F6m|%V{lfjve4SOnpjn7Ism%&6W)YH)ti?HdFUPY!SEK zI>!E+0=OlqpOIZdc8%S^Msdi!NxJW2bR|lpzMd=S%Ub%f3jf>02c6S6t7*x*vQ1BE&HV-XCT?59yl>A6azfb6ZRGH_ zR+87Ytfy43I*~DQFZ2G1wW7cERC*QhoMH*S7g^!zitkgqcbs#kgXD&Js#lKE9wt1W zY0++TlGBt9(}@3#=Tg& zdtO*RGV3R~{xY>q_}CUxS9v3H)PTMrcYg#AQ>UrCqT_GlT9>{|d345qIkL?4HL8)? z10D3OT;&DuLHoM~u(8*$UurMov7J_#8H-)ReyKazTU6tvO`7{*3>IVV zr-X6YDW)EvWN|z5f}*=V*pe3664{md0{wrJ`V-}7Qe|IVuiWuC$>%xe>I@H)C-M5{ z^;!FArH}zVtMg<_|8D4fj#X=>;7@X zQ|Yyp}q{ZaTnpnfc?@9Wiy@owIa`#tUJ3_uf@nL!~?;&fF-Eqn* zB|b*YfYy$L*S}32DtY{W3B$(}@}qpfqr}z3?%VN&+l$|6zNcp~=hQQ2E8Wun37%6N zu5n6QKIA%NoOy!JZ<~F%;KC}7pB+7Bfyq@HSiW9@8oAS zCtC#$F>sJ>n0A4;bEoo7fez)BwFck2{|j?p_&C1!9qNAc+d^cBwY0C?Wxe(E9`;+W z!MOk1IX)#_F&U`p$C{7a{NpITMr(J zE1Cr;Fg&l&{Dt+3a<@Z> zt9vG5_ZP*^*$JF_Y>8xH2{K0Cs&%iET+ak@bn}?sRBnd(=Dk|WAlWoBI2rm@L0`j1 zN4`#$d{iMHv?ch4H+o-PRWvdwSOf4>xA? z|6k~LFUAmFWj?%q?c=qEJ;HB)opXNL#m5TAQJMTe@p9Ea^_=FK^_;qX$z9Kxz<%t)J_$xQezAv`;I6=1XQ%K7f*qWyJgl?cRCGP!qr`^t zdDwR4G`ky^&+Z>eUG=baX~h=UVDjj8?{CQ+%mW6#yl0j640hI$?LyaI1kYX2t`qrT z?sEU{kkbUR(sQZSFgp7uc4HTo;QyUm&l&b8&bJP|S9W%iHsy~rpZ-zVI{t4X{xJ8^ zb=^Oe`)X5oE6(t@xtTWgP7UpT9)3$k)owfOu0&^d(e5_d?Zt*B7?=2M*LwOS+oswg z4==@$zt{eO@06V_ye>e8gv%+^;7bR4SO-Y_FxrowWKw)mo$yvWRS}&Poj_s9J_~Fr{KU}?rnrPA5k9V_pf$dgbE&QO> zINm-$-ANBTD5-S(w-={$W50|2XCQHXE_E^8P3Y-V@^5GIJGHvPKQoWYUh(++(M62` z`wX7V=wqF;_h*84#S5bk-n~QE-c?Lu#w=JrjvP*arxW36KkM+? zsomK|jI@Y-+h2Nl-5c8HBcOY%!+UhmT|0EW1iQ!jD-&CV`2Q5__anqBD~W|y5&y2P zR6j~PP9$F6todeSWLfjOt%*8li@mEnMzkGjw?SL&b2cEBtb=y`Sd!}=YHC)W(zrwM zVmGq1ly;g-J61=SxnwIb%68~hV&aLOC!Kh_Jq%tm+2@YuU*P$~+;HDLUj3t6_gu*{ z<9J54b(?Au(DURpY%(x3*SLUpV|thPU$x7h*E8rsa*FfJ1w51S9l+PvO5?X*^ISda zFFjl~14m;6jV0v|lyA{kY~?!EOB37azVOrgY3^&Cli+*~d{fwr^mOe-mAfb8zavMQ z-|OM|9&A$&FnVO4o+OqNUy#K$$l|VhxpyDB%KPKQiy7dLoO`@D&y#aEuFuH%j67a& zz0}7G#T+T($nX4Y=WNJ=~6!oZtrs$Vp8e zZd}jx;U*n@KRNOHmg}cw_2~>xe}c~WN<%oq_swALcrm#goNY&&S;9!0T?c`qs*~z%#Xx?_2)y zbnv_rIa!V@-3#sSLsnYRU-l6v{w1GRZui^>uWyFuO+nkp1?~5MV@V=hT_W4JC179l z8|)prsraS`c#mMu2iR@&_;&WIAy(=u#YU9D%W|G$yfwX>cb1V$z60IY+Kb)_=}1Kf z@=6Sjzr2onG1ihS1Q(w5@Kjvg!+Ect&obeMe+ESiLa$vCE2{Zfou@aXdDnlQRZ*PCV*|7H{9`%Y*Yy zDhBL@(Dgbu{~C10Ce4lR{#C?$Ly7U0g3}Uky8}G$1kX*xbQ)J^J^#_*(|aknAiwg} z-T3wtdYhELhfixCMV8U=6#AmITN*d3FRH)nMTd7Q4zD6NfS>G!_C3^yXm4xnYrPej z)cTd|+%RJ??ybq-SGxB!@LLIf?cnz)_^kuKeiuK*oTI?c#1O&@8<)I-bv~EFqbcAw zn=z&Ey8`^sPw}@0{IqsPyxom$*>gE~yExW?V-LPnH7&c$n%ANZt%VaE6kiBet;_u? z_v$~7tU+VZ)}ynr*Dj4cJ@k(=6z?tnSXL+fV~pd0>BXbh5*PXN=`EweeN)B%vT)y% z54d&9O-_DNFh31U^4nvMDq^3gRhGS?=%~Hz%!_NDk3*9C^6TG+mz0mkHB-uWfiy!zW_Nm;pq5PXB?&)Zu!7H)UyOMx5U`n05w_~!;RB< zdTm9D?^|>hHe>6vH7-{kVeW0=`>M=dG)0TGN7oQ^!TW6nwzwf!w74FARbh{H{-U0d zACes{0cH>USj`$4jlVv1FLHS^`T@=R8%oy&7=D-#{8 zXAGx)*VFHi>e1=9atRtk-b&wBo4yAZYk#+)^xglvbN*z|^nbP6e?51N`b&Gq)8900 z)nA3q;5+>D+i_$^F^Fa6n@_Y;{Qe8(;6~Dh<_+avyt%^&G80BVB!j}e3V7aolB+)@ zkaOPuI&<|&WGcX(oe5-Hx$*>Zu6(}u{x-HG9OPZ;5cVmFZ8CC-zv~Rn``HE8Vs8rE zmn=&DzI29TR~GtY?r`kMebB*aCu>h4!1^HeXB`) zBgX>VUC?Z|k=xRawX73P)IhH~WEZ{N1>MT9VZDs^%CTofixiud?M;!ZaP}=yjbeEH zO!9lp))0H{k2x=o_g5}5W1AMQ_O&f)DP|wN($apMR!1N6_ku0oV0@bDeB3t67T^~d z{}mlkyj*?u&cg}ZGX5=%k2G%F!~1@HS?TJ_Ds&}=UTC~3{aJ;c=z5i_C*(-Zbk=CH zm%qm=ahf-^iLoejls3 zXY@|vIMopty~S=M`0eNV4P8pgUL*hGn1A(tuSHMB@u|dLt1h4tx$Y!ilH&Q)yZswv zkM*9`{CF_-@V_IA*|`|??FVk(e&myF*;G%yhnRd^Hh)8oI9`A0g(mhx7a5y<-2OIa zjRe6b06xlRn0B@}GVkfoYPX%=`RTXCq2DCNo9~S{CL`m@Z={IL`iV9A`>pC?>_7=I z3bFB1W2wnlP*&G>0rA?J#7MieFY z-96ZR;VPV&L+HZ>GM7`)A$!)zcxv;R@Jee=qE4>sZyzN;ZCU%fpI-5x(XALfTZm7@ zM#=W>!d7=rH*oMB6&>?|Q)$M)=h!=`=P=`9o*nmP?BPv}RcTMMFTTu=&2;KT!<-9) z9;fjEon}qU6uXOejo)cJ%gh@Z+s{1866R5Mp=+i1e(7XUC3Ejwk4C3N>)061-9tB1 zrjF!P+tckHH?AwXo;4HHzL_}!>~2`O5cGNj?Pc1~x%E8%CV2aO!9Tk?(ars4`cwR6 zXFY_Oo8|cw_dR&mYky^IQ1@h>yUDR9%9Y^b&eB|j-Zl7lVpF*8X1-r*iFMWx_gk8+ zGwtqK@Ql87&*mGu)Xi_*RqREDoXPifBWp>QAL4=dVd7VQOC01(OcTQtJM+p1!`0}V zbABA}y?uGs$2juu=vmavhnY2)ta+Yjf05W${Caeun|Ixk)klBsT)O$%l&szH;@OY+ z^hfnCPJKu=Uw&a3cnl+VKz&FlbWiFWXT~x`qnNiro}BRj@j$UVo({UP8tpwqd!BwO z9u}TS`W_%ol1-Fd@cxYb+v1LQKgxJ_OYV4AXGr$nhb>#-=x}lsda_pk4_()0?8aDo zvg8@sXXFH4rbo?L7aVD^EDU=n83>lx-t(_(FI4C(S^vuA7xul4&8rJychK)5*`5{d z{1?yYp5igxPZ5WPO{_cIK9V+-GpXXfY^Y*ewXeB*bnPsyUyxss9$bzLnHux(czeA2 zoR^=gboFJN^aVUG;@K+T-HLx6FI&U-T4Q}P#tt84#@Okbku&a@J!zqhd}SKh5#I9a z%J(j?@SUCK*cuBauqnlr?s@`vS;YUzwDP`19f_|a8@#8!2u|^3*vLy5W0YA>DYm_y zTKh`s&-(irzg~xLH*2p(*xG-(hxg2wn|IB)yDDh+!mnOx(|f_kvnLC&C;xU1Yb~%b zQR-_g?26_RBG5d6ZYbso<9ixUWZ!sT%6}W1!G6j*Cn94rm=kPnJkvh#MQp_sY-Js? zfGle7DtOryomMBFcGXX3t^F1JKG%_%x9q%^}yIIVsVi^GN1hs*tU>8eUbcbYRilJC+P-dt;on^ub{GpLf*VxK{PMd%gdo zol6NR-18o=Z4qQT0&a@mQw`u-6J~rsO!hqMZ*=ax#oWxDmYFvd|DQK?vD#1H*@LcL z`hMH)1YgY8#iQO=HNPL$1`QW(@UsH9+5B6O#{>&h{0-Y37nL0v#Yot${ zcfG;PD~g7*klSg_IJ8nV0MM(N8mzgj0rJL-k_F`6%vT$DTsKm0(F5%?Z%|5JR?jOQ zyaS!nII@U!SG+U2D2hIDeG|`%*2*~r@T=bV;|*%)!p0wl?6I`VJ1uKEkFeFAAExFI zG@dp5k&bdb511N%YK-g0SM#d@+BeUteXi&5?5(Yg3*hk$q8+@EY|3YAPCS8*B_wzE zW@R*A4kfRWTgM+bGArBV%6r@|?|&&g{7Z}K{X$wJ6`o@MY|&e-Irpq7_AA_zd=I;Z z{uIE;i*-#t1wT;Dd{hGapB#ofj6f%R^RouNPJPPrx@+kGbJjy=TulfCpSs#3e_SBZ_$XV>!mfzm)kNh?5W%rB7^pCdW zS3_>RZQ5(fj_ZEpZ*SG%^>05lMcSYJ?vqttlzTo`@>j^%YuJFD*Z_23*X!8rz36T) z`j>X*Cj0w`tXqg(?+t(4RvuBlv=5I{8s;#5NbJ29+xsZ?twLuCQ)`gKmh@m#)YfL&2u&SEZsx1& z7p-#6tx&wzz*>|}jY+W!8u$0iqFv%-jcIgm7~?PPbJI>c!m9||ruAwO+Ee~T{&4|% z(u|(`>&uKud1oc(NO|^xnEk9a=HJxMm2J*?%sFSvUXfqr*#P@>k7o?Ja%A!HUEp>h zcEx*lEAKXO_S*~cap1msQPo?5vxVyz*Ad_Z@eeWlMes!CHlVB4+SPNNg6>5_tqqM@ zC)`+uf6@NIfsW6Bqi|LX+Qd5TCf07NJ=FsN=d4E8RxOpS0>??Tk$|6qn}VNd;6B>< zUhC^+oI|fq9p~N;W4?O^bSCadwjx&#AxA5ar&Z8@E%Nmk{{IR5%#-AJpJp$oXE}>t zlhyb8Emq$jwpo3D+|J%ktJvF#8XSKN{|t6g`JC?U$kV;R1Lp_utIG9n!v9So*XiNj zq;WtE^HRX^!&vLWF!K}G*ZI&}`L@@mkkic2hBXkp_r)~zV6^f2lyKh@)YQqYwH<>W zYOJ*QCoZdb8ok$eL8e@Tr%5i+XZUgQ5-v)1%jWDwrJ z#(GV1mwtIp;1d=1Y2wn+-Tc3_Q~L{99sdXqG{4*B0Gj{TZJ46u2TmS?6Azb%M#7}!zm>lt4E9rB)|>AUDnGy)htyD6J_ zzn@+s!u+1KnZJQ{8GSLi*epIlVwtpJnTgE7fm4h)L9o4?>jbZ^z{R0C6R!kKyt0gV z;|t)yfP7ci7ZLxy2mmfs(6Ka zi{IhQWc^=8Kk3`wxqbVIPX@gH+->@kjkk>reQj=aEw)*6e2gbrqE#36P5s=#)*5o3 zN%EECKB{XvspaH$b%qxLc2rve>A(J6l$UY|~N`;@;Qo3r0kwm*`?{{Fx^axd{nC;A8P z6YxhqS!n+eQQ6t(pbEqqc z{UXtcrqwlrvBzc9yyOrz} zIc_|@4__Us4EL!nCu-JJo@HMlUS67se=;z;FAqECx&hO~JzPHw%x-+4YNU{0hCTi;2&AiPO^P_fD&C8*^J_rNrn9v1RU>;QnnUhRM)X@pk1RCvTzu z$Az8wtP4c1h172x&6?m?aKM`2v~;G*dL_*}U!onY2^J3|0|8>2H+jb&AHU{4FFWet zV%7xnTnBTYf|H^>%^`H}4ATe3N8Hwi+^<_gcIO{%rFtHytQ)i5*zWYnwddWIxOqtL7{P=oEp3L}t zh2ra5Tzg>h3)H~)_n%YjD|=H+&PnUYnokuzC1&kfk~z3;-e1NzZW(k{K2bFpNqoW* z>O0k6)xup(f0sgQ<+GMq8c&L*B^{gS?}N}R9K;^TzTgv*_>2^KXzW*htl;`V`G}uR z%GCq)sgS=Yw0^P1D&PM}d_gjJGj;0~<_x8n8IuS1ex3YE2{q}DjJICddSdw1oyFD- zlNgsjGBta>PWxjwvVS<=DePRDJ}U>1bacP#YW8oz26SD+{w=$piF91~#9r)P4|cm3 znlXoKoALWZ`dfpn(s$J>YcH>%#1P%kya${52y(R+8f}I4TDzFtj~Ty&Ty{dYTIM(n zy_%f3-C~ab>zT={#rbM(&3YL)4ztK%fipC0%A?_v1^n&B1?ts<;G;S-_ECS8=WfN`$^WnzHPEf7l#L-i`IXP1J?XS_2$^`e7UeaGnF*|IB& zVY;z1337EuVTW>L&Kqm^<@yl!EZV35w@-j?1$Z}VebjKtLtrm9bWR1|<$N1_A9L`% z`iVO2_qBajuylLrJ9pf3hgG^<>kivFM?>G=;L@RxIMxr6)ZC6 zcNbYj%SGEF#U;po1v+vM@>;hjdXDCLHdR_TX#BeAbnAvnzOO#VdS#7deyVlDI%GI@ zJ!{^$W^LjP<%8$|a=y=E9d?Ly*||0-*s<*peJ(H1=WV_|S42zqe?e<$^)oDD(*n;PP8@DbB*!3>lit)ky?X+v) zoq9ayV290f=KA{SS@`D!_y1n_P7Ut=g4#LVd9PCI$t$bucIf89Z?R54CWCjyna*>x z%X+Vgc6+uzE!J~G>?HeJ8T`X8+;cO}$90aB*1hWYg!*w4`=7B#gL(e0phGX{+CCm% zX@0NH{BH2C9GmG+MHoI%16$DvAJmU$ik*IJ;C=ef`*G{x)6Kb6g3tSL>$x#@JGHH* zz2}_gxWCUj_f(@Vy5FhiMxK?yv*Jg^4j*19cJSl6opTa^-(_`I*|k~z?XzB*lz~&x z%bd@}DpUXgjf;<8ew9~aRt@ndGG>4(8*Ds;%98~dAibi2fPu1)>8 zetf2VbA95(%yq?;F5EfJ^QQf;ot$Z(cJ^7t$Cz`|4SlY1o-^`re^wrNuf^IuG|T7J zz?B}{R=WRm>A@HH7C#o0?vJV;i!%5jr&_<}Ep@^_;y*>`{e&77vJkM_);Hq zWJX^cKQ__$F@x`yeb0Tl#$Mv`h3Dc{+cEZL_qyVK@WW43G`sK{ef@k1`5fiQFa3;L zr;p9hr{bX)?`)oT^thre z^IVJd!UVtEc3Jzf@>%iovi*-s?w?W zt8W|J=YbRA92vvsOLF?(VhwlBeKYj!qFwQGc$q^7uIq_=OgoQ`&$I)a7OjEs>_^2< z%RD*W$El}&e($qdvieZ5yUdaQM42Q1zjodOKI<#8cCu6bT11ZCvoqb!b4DJnI^C{y z?Uv#D_4L={`#u-$?|pDDIxoWy;Kr?&#%JtV#am@&Z~lsR%Jw(Pp16Krv@o=qGc6-4 zyxU?WvbIfr(fd>U=&cu>6jltGT`!urj&a6~%xi7Qt#$rKY92Mt?~hT7O@Eu4&#=4e ztiEo1ziQDc&m%9XaTH_D)Xj`JM}{|c*H{}%BFlHI`QBsNyKC|ibg&BA#jImY9I|8v zYlMlHcg@JI#p?yuF5pfe7q)9Q-;Bw1K4mHAjO=2(HX%`4y{os#oXxrQR}bvCX30um zmrf2nLXYz3NMVsWVfS zg-vbdhIYmgD;ZCuz$XblX1u3y{LR!`xqYDSF4MnVvl-`E)JtBP-2+4T3wPCZKh3;8 zW5ta@=&=fVFus^vIgPp-)_*EbmZ~FGngw1nl=FyG&!y&R7tfdR{92x8Z->c&GkCs= zc|_tD)&6PjcoX|O1h{4mMrMBpXuY@|J=EM@r@IHn^WYpI=a(k`cL_D--ddw&4QC*q71oOSmmeyMZUZ}MA$wvym|47GTPnAI1U z%>KOO%9bGq9-kN=OkRRL?txEh;1hW6tq1pB#?I8b{)=Me-N4|iwv9vScL)8h2@IWl z5&NU>hDO6U2fM*N2V3{YgRjm*2ERGFuGIBr=R9m(t0rqVJl+j&b$y(!fjtD+>wwK! znv=bD6kGT5TRFcy%5T)tPS!kQkBZV9|nL7x;u_7nF+^-cT`;&*agapk&tFSq*0Z^f10>b-*80&;pc zxK)~UUZdIHmHo)(ur_lFvN{=Fm>lZab}6-8CI{-wA;-NveN5e{zn+NP#%yX@#4k68 zYW5|0k=&2kDj|oui#AHhmx?AuQF5u=Kc9Ds8fCx9ZSecYxz=8nyLuzlrEOOAh1A(? zt(<7@0{;YfU&XrnQuXhiF%P zK{uWJb0sw6dOx)_3C4R#DV*E@l8Nc_R`4s_3NKQ`l| zCtwG*Vt=ujdu!Q$Dt!eu=W?xGHaWkzR};F5JgV%$O7f^LsI9p?b2_v^#>X><9UX;l zV!q(-!CUdX`q_@Z3USV90D04#KnfgcsYR)!2EyYe!N*jZS@vlcz22=%5|t zX0@-i`nEa|s7}Yi=G_clbF98|g;!gV{T-gK=KpQ@fra=1*~oVK==lNlF~s%Z^l`b@ z$5RLP@yz$@BmGf7bNUFaWG`n%bNhHhejhsv^pScVL;FO)zMAJfKc8cB(KFfS_q*r+ zJ#6N9OnqHE)Hua{?{nGx^!&NSFO1L4jlB78?)tPMd_@4CA-*a0@bXbFk5(*^UEia5 zqyW#Rh(#idv#J#Lxc+D@YeGC9r1h==?51i;l%wfJKUCAcgm=B?{V*Q>IdwDqj&Ct* z5Vh8@9zHL_zi(pRa2Wq<&4}g@nS*flDgl;qv067#%kQG;r{Pb3f62N8`lQ_EJI~D^Qq7qWS9MwC!%bY3iiwxbK6FnnWIrKnt>&!S%={4Z7n_;CK(AGwBU$kF zJW63-$tz^%!MJ{%+J+>ujtyrG|7d3oKXHQSnZxfx+!OBY^r?-$O#}A`xSRbnv$*fG z?y8_>jdQ7<+vAb73Cs$`tFJ-0`nfj$Cti_Q3U)L1(??p3@}5qciJw5>>%!t!M1n z!XC)i0p~_!6F=d}rQ%0FK7VGfFv+#_qX@Z{41OK?RD89Jdv_vpiK@D4i}TylHZ+*~nJ(Ox(8f}5YXY|jxG6ubwzOW_ zqDIKO_P0G4PJ`X2e;Z^go-eiTZztXqTtB=*ZB&pW*N1UTmv{E~$A6JMx7PCZSHpLG zi+ENvO=u0v2gI4Y=PTMv%R8Hv`Gw_8;5(DLgB6X|`<_j!dWaa$F96O3hjBKoVkMoQ z%RVfxu*doKt(=Lwl{0Z;?rD#$ zCFF7&tiax-$i35}`i9qFG?-a|N`8#itWzJ2W zcb0X7=3tb^-oshk*Z!%0!)d@7cJ1fSY2Y2nNCWRkMjCiWGSa|1ZG5*NmmaUhXRUA2 z9Lo#;YW!l{_(kGljRo73Q+bQrQ8~V4mFj04zu5Cx?QyHvM0CovS&1svqzyy%Mj(r$ zki{{wt4{6UrQ@*8RbhU|7mq;JMj>lskhLx0>Tf{{FL$ADFW$J@?4O$5->d?Awpe^d zwzY+XiKioNvX}I)mj3~RS?qIgGhG~^-nCf2TS&LV7b;t%z67yWEB^B^T=9#s9)-X5LwYcu^abR0j?&~do> z<@RL-cv;$qOKU=r17qi1xH85b?U4{H}ox8p^uih!yR8*~TFZi@X z(5WkK45`Q&Xh64Vsx)6W;r1*JAV%7%K|V4n2RDy>-hO4=DE2 z{s$@eFaH&Cd6VPI>fAaYelK)C2~AaVR0mCK!L7fcY+XM#ntG*{=I~g%8yW6_c0IDs z+?PGo9s{cr{hYHyZ8)(50&5wTk#1_a_8bHpQYb3I)UuWMkgxXvDOKmH@2?G_&Ysc(Xlljp7@UaRxG`x zGOM@E1@u+*NX~qDc07p8^z{>a^lzemeXR7S*z93qaG>tLByQQo)Ox5cVHfu9A?p4g zF?IjNi+icvRqo0A&Dpo3*zDW!h+FrsXNrNbme^J`IO*Bw*DNEetaX$A6nC6*J9yW? zzdGb_7BV;+KEg}wr&5C6t+7tCdyva+Y)W?>=LvwX#uwe-T>R5;^-S!>L(Jz#{}k!d zcm07#pZa3t7r9p7-bU}j!E9Yr3VJKwV|au9YK%97T3u6bh1^RYy!U4EUZdsKQ}K@8 z^}qK?&Q~zCRt0{`v9I`7@#z*HpFF=h*nIh+>a*{IZUzsxo<*=Dz&@P%Y|kECJ5pn- zY<<4s(BiIe_39(3|ApStTiNJlQ@85Wsfk9S^8(J!)c4g-)MDd`_tsMTqOo@hK6^DG zim{eFc)*;Qr+6fRy$*K4H|77agC6_|fd% z(x`N}qGJzp{leYDF&j$}mtfze?-~AsOFiwXuJu^%qrdzA9{Z>31+szA(u3pgYrWgo z@#JDnKV90+hqjXS1@yuA3c-OtGttSfFqd)yv1gK)O*Hq*cak_wbTRUQ&PcxV;bvk% z_xD1w`tKE4o8rl;)~jaZhrEryKHumMbGM>Nig*!wXdBuf`_I1kp4szZ!4y-+(sK3W zIwLoaL7xd$@%9>c--O?|(+Vu_wF28OV%%3A2yEXSEN4u1*FBb1x_kv=9DL^-;a*A` zY5JZ-##B>!;{#5OJikw`dZ(W~brqYr@nSHW$1ya?T$gry5}PWYr~XTaY`4$;dJgq> zf1R@*fmu&U?eDkWu35LD$g(vDm$=t5_2R0x(0HcN?d$yQZeM?*zLxBjOlz-3t^HOk zAs^ta`>q53#8I4m0*})*=m)W;_B>sTj;;pNZ!GXrFxVzJHROe)iS(THDK+_u<)PsyCJ1jbJ@J?fY}l{h9}Y_T-}DUM{+w zSYh=XayZCX{+hZ^%Ma1-Bz{a|4bP9={=$LQZ$Njy4{IYoJfC~Y52tzl81zZ|@_9L8 zwOvbX06Ajv;F^OfHD}SSKDTh&(+6pL9&KNm-!^&MI<-ySR&D?1#J<)VuB8h)`&Zu! zjQt9l`b5>An)#XxUy3{a-#=r&@Lx&%y=qH6+vez2v8P+{=%4BYFJ6D3&ec2Tw??!7 zc*wretfTJ=EgJ6TgWWkutTg1^gY4y2w)l5$tmOSR_Fe7qR%T+Q zA@4eSyy=<570gip=ZDy^UhITwl7Dk6c)^?ADUPnQ7P_T;^U?NhbX{}v?8j*Lf>SST z_JUU#F;OpPm6qWrwvm66+iak|mV z?%)@(n!Kl!jmt9r}u7@xI(!N*$&CY z+q1K=rs@bZ4{vm^$r%HfG38-A_w=WTD|uHi{O@~ys`n&EUO(mc$MC>kf9&6Xvh22j z@#4P%;{(NujLrQ1-i#UMF?N{itQVFpXwSbQWH^8>h#!ibW}pjoX50|S?04w>HrK2d z4j5gibH@$c=t2M(-CCEAz9&aGJU>CYpxAwcbfIV+F%db2g>44U`P8Jy-*U7G*ErTO8|`_cmRe(%H& zCf_d)LT}H`FZdA0#1n}rB-_MeZp=~KG2f#%wyWEfaWe*HkEkAGT>05m>HF5v;0qFlaxaZ6JcRnEf zo%O!i^_v<`YK+ggNMrnXy)(v-&u5IE8NY0C^lLU}(wg?&Yp+jUZd-kO(API_Jfj%I zldp@-{<_)xh;kGfXM~tn;C#5uoRr1bWC?LG?hLN+D=-vxlpPRMa!)V9bzs`gIa^Cp&6MsX^ z7rGfXH5F&t_iSWLN1syop1E$Us2ZqR)?wBTkF1-?8NwHy7+zO;qP4DgbYNXzc+t9A zY9X~&T5_lHRi&9%on+4<#!f(!k6gwXneLe4AArw((eaRVx*1Ct{|o%h^i4T{0P(of zpOQZ9p;M&1B=uGC@4SEO?7$ooDyI=|1*-0{aeb+ z{!1@E8espzAvyU1Z%kMOUFzL40nHh6@yTXgH?cA2O^>x@^XAtDjji|ksC&^_LDNU^ z4nD>sl_%IW^s~SJIBdi5d`{pqc3lZ@)-;}K_iSUXh?r>CcE%Un>kUt}dw;^cSJ@Mj zdYAJ0puPJwu7AZiVkh5ecn7UjhcB8dPchToiFg^TUG8(wVZl%b!c&7c?wn|QKglE(-8aeHC<+Kqw<^E9m zWaPBck<(JHJ=#49+z@jBlJVy?r?+UtK-z6DK)avh(Jp$jy^lH+5AL^tn+)FS>{qUH z8h1}Lx)spgJq}M=>Q@=KU0zL&!F{a**TMHBqgTHKZUwoeUoqy1k@wPb4ZkYuD^7f8 z$M`qC_r?o>&Np;#!Ok+#q{|yG>s~C)bI7QHXVuu-fE6`+TZZhLz|ki+Es;|vnZ6f+ zqboNp^B;0>^vO+2bVW|zk+Bo)fAPWn9B>0A4oz#d*WZt-2KN2F0)21w^}X#x)Axsb za4!OGZC1`(A{&Yd;9G2Hkc)4zU(UgIyuA##*qXRyu|AR7Y02lQ&th+`bL3Ii-tYfO zULnm|Db;^@^j(e2HRJ!9_Ve+1LH)XEYz~|)>KFH>=fgoKzh~%k z+kk!nr=|I(bMxV}#JG1#9-Nh|m3kOBtMCE&_&}eo=HZia;6R_Q823iy!AY^k<(@oz zBnzwH7ky}noq2|h&Cc-4yBElZ!(8!~1!pjRy>M(kKKo+adtLPoo?IEee|7yef&*Up z{c0vp+FW^N4xA?L#klvIJUHW^%N*cT73NpG`TA3G;LxvljCKJnk(q^!sW-cq@VDx0jwjf%aW7?1tZ;c=!GucvbMQ z5Psjtqo3dfu~Y4`Qg~<_fh%%G54xH`T#Qn zD~3J+|Fegp_o?R$nrS(j%=lC-1onBrJ79^?8L z-hWtqo#*y-1brPbu&>kpg1){-{e#gZU}pL{kG=xG0(h~)x*2aiF_6<&!!Pdr&cH*q z3cwro7tro!2Hvd&;T`z5L+JV-w&;1_`FW8#Sw3)r-3_b(ynqflyx@90?^lZ#b6s8x zgBQaF@}diPNo-!e+%-w=x~AsHop-TnJ9v1Uo$#9O~)(vS)DQ-V=r3 zbWX5e84ONk0XW?Ib|E;43HGMJ;3Nw4i+jrp!9h>II~bg{0&uu@OCdOo6YYlvgA*+P zhkFYP!D*Xl-#sXt0`!TVW`C*>9CZBVJUEIg$V<0`Dkqt^Lb8VZch!%|#ubKl{2m4- zI?xqqL&tUTzC~_eCx{bs*f? z1>jzq2RAy-ew&&Oj}B{ryCgdf+!uLf^gy^x1>oM92e)#(-R*;G3odIeu+`7dgDMt-v$S+Ljz|V`0uJgfk)OwL(N_!?v)fF$W zK7_e(=Dn$1sOTUDj7PVOt-gpcqd6~HvE#kgEym`Lb^WAOVkhvU9*n3&mqz5kOA8+Nnhbu7n+m{NE&K|=dqMfA=LX~@x?xi6^c`9wCtdXueflog z{5})dM&B#Xu+uyj=Gv3qc%K3}}a$b`s=ZTPgnh)-4z^%{fPgmrk;|Ic> zTmbHrJh;)2J=zC%vkzZtI9fuT#}Cw>X$ACWx=(-FLMA`)9(4mA9UcR2$gQ`FkjIaV zoH7vKxdrf@mxpg+oW0uz_W|H~c7*)YzR)>G48-@<0{Fh>#~1%hEV2W*m5NoYQ|t!d zN;kbd62$xHn%u zcgFbMX>;27j_;k>h29zKd#BTR$L1Z6XXo=ytv~m5S@}SoEib^cd-He}9dF<2gL^7) zldkOIQ{s`fvVm}81>i2sgUg<0SNq@|4cw56FY|ZIy$l%$cUS?qBl6%zEA2~taNqeC z@MX?lK80G*eWB*_2Fh5lfQ*&-WUR8%@V?pycbDJ}yWPNLj=3fD`ym72jw%3mj1O*` z1GmZtw+p!K{`sA&3g}u@0Xj^~qeErLKEen0-+)_R=J-}aheg&ve8(2Rx59^S!ol|d z^Y@;dtp=_)ABD~73JtFr2=}o9aG&tOjdE5ax|Q_7{f6NB<)QK81La{$0Xl5Ur^5t$ zyASS{fvdeZB@f^m51lh@AimoR;QJFlzK+d#$_ID8;0|-(&Zj0hQk=;(XJf-v1@K*) zkMAk=3Lo4{fE#k;Xe=JR1|;SODLfefYLHG11*VxMu^`iw%LhFZ6iTKswYF zfIG_vw{o1}+l@ZBl|DKkXI-K05d+~qTLA7RAKZi^4}a%_J5+E-HDvYp_ooen`(y#Q zPy67uIdEqIx4(Zh^ZLi|IhN0ubv=wd&HVmaYNCn#dLE;0gu2?TjX`_Y6Wn{!%=c5b z%brC~bNwuH@SFJFGH`x>Jbp-Pua`ZMKfhmM=Jy>x<;?Go<}943_S<28{}t+s3e4}v z^XK=CKl@Ye{QlAO$@n(*K9MdR$+bIQ9@l)i;^cidHydAcJG#ID=yk zaKAvzpQv;43G+2ZxsrMXazVt&)IdzKuiOgX;YYwS`4V$)DRw5Z;CQn>H(3|%yR^VF zE9INqJ;C(Mg@vDCOyum{qG!%4@C8h_X^lQnX-$Wn%DvvkxdjPm6LO!f^9&4Vxhi8u}^z2UGvkB+f1|PnsgYRZH_QS5VL{2=(v%_(B%-c18xr48l zt2Xj^Z_b#vD-u1?z81Lq@bifphu?l4dHnu0wMhB==D94NYQlZ57I-FyPdxKO-!nOU z;y1&m**-pn;S=|3ef|F96U3(e`03Om2KIY$fqqZP@AvWcWFOq012-A`O4g2DpRtcw z{_ic)oJ21FU-$7TI>zwy7$4l{f$Q^^U6Jw`1MwYJ0N)Y$_#S8XpJ4Re$m`?4^lqg4Tf{Tv7oThI9ues49TiZ$T1$C- zk-d8izmGM)?<@c0X!d{zu=j)ee*H)7-4pqJa-i>O@L0nhbUjn}eOkcOwRw4A)wSXG z;_`djzMJp&%Iuls@9}$audeOWoPmPhL&j#lm#0pw-ZgMx|b~;C?HudB789L)6JNIJrOLKlP=n^YG zCntB~-8&a}-uuZJ07*<%>wAtoXD+(0?xh|_f8uCr(yjOf&;JIIpkb8 zKhMpr7&zQJE*}p4Irsy?$;`dCcscVXd|<3=XimSpd!_ksz+;c#WNUN`KFXymk-Ssy zDtQ+T#E1Gzv$+&tw#4{-|M4y_qS#ZO`vcd+4aSZ<_`Ph-!^91XDhKM%G)FIU{N8j& zFHPLg=J>tWfEzwWJgu;s1=pP$!j9~VgpW0LB+q`vqg6h8Z@J@tAAbJ;oc3&7(-m6a zoWGu<-@yX-mHF_ibmE#PfUEdA&o9TLSNL#f(>e22$7-H+(tF_WMtcoz00i4mfsJG(69zOrvm&v z;Nx!_d$0h1I&dpZ{phjO5;%K`e00r$)-dZB`umS!JaN=IM?TNsEUaQXy^2~;)x3t! zx3$khfB#6H8M)3<+)u4^vZ~nrrT0wRd3G)9-b1VtOg1pKXkwj8gR^$OY2=CrXF`YO zwh{I+{+HZ{&sV3-xX0MbWu9#G7H9ceInf>p&i(yI)9$EsoyP8h+p1#wIoj1a2Jq_& zMXRYfrcU1NTihE`TM%U zd*0vIo9XMV$llG`=f&DzMgMB$Tj^`a*Vp>JPG9};ZtQhmU!xQ4pB$I954XX0&pu$s z_Ju|tYwXSd-8|@%%TC9ad>=TTTz(!nwf-FFTLt35xsLqg$mP8JxZ(tRtq<-T;O5AC z^N|DPeMSMeHTiIlw{76EjA?02A&H7mv@A7h`T zwmHY%%M*Jv*({$sIc(NE%%FZc8Y5N^U$OCN?%zy1pr+q2X2WE?t0*cT)qVq=Pz*f>dm3U;sS85^TT!M@cNjn-aIV& zX6<=Aa@@I|e7Csc$N2omf_-CsYft1SqE9$*U3-qNILZEn0~h%Y*>{Kz{=8UMW?a(Z zj-%uCw>ofr@kBh@kipmZ6T#o&gL^%2>-}`du35;!eYF7G*L-l>PBwD(T_4=f0@oWy z8#%iz6aQr4US0t16@IuU7`Uy#6^&v~82=t$@Rx|!*TClYGk{I( zfn6lFbc)@{yOm@&Y0)(#FaduC{T z)!9e(wLbMmcKziL_MU%lM0WkB_DCDgM|%*BgJ&4R!X&DCt;qm+|>$ zYwxuvYX-Fk#WKF@+4E#6p9=O~iMsp7FgHE=DxUY|&>fsCgOj(eOSp{yH*X#6VCSQ~ z%$_NS!gmFGzl93mdoJxqS<@=m+og z@eVRjWcGt7YUCY0-aGT5XHhfv_;~l8XT4t$dr*h?=)5!4PH3H;YA5{b^+MoU#K-@P z<@@v2d)}QVpH;lW8ek)r0s0XXZTXCYmL+^v(Er*3{D1CF*2igo1o%JhxbQ~tegWSr zpvPwDA38C-aXuf;0b8syk|nE(*)#h$=B;s-yvBTd_^HbWuL~ajY?zQEuYUY%kpu0I zEE%!X5B}G=bW6ZTwZ~%*Llz=F9CXfDe)|`j^|D!c^z>W0EghGBOJ4Hz`+De=Kqdy$ z?@gAqH%Z^F;W_OispqseQV(=}gzufeP13&w$iX9gbY0JNl(n|2`K)9wt$IEc+>aXh zujr7S_*>w;pPeZ2_1Rl5i~O^`RQwArRy#!_kxM?DZ)W7%mCI`668R1+&X-Hxujc)X z97pIAdRq-|cs{szv%{T~Yk&V8 zd@}7B{CqaY@FWbrd~$5X%y4yxk7$;!cYeF!;g@;$5cJ6K%ZFbfddMb*_^9polZQjm z|HEj{vln+mSHFL&LZ-2I@UVDs2pR|J6ZQ_f6KIV6> zqu9XJeCn}%EBUOzUV40yojdL@__2LhmLEU*koob}vJamhD}4A4#*YI2FeBftjt=S% zuUPW_GJLxaheH1FTF%t*@4u=2nyzQ>+Gw%aAGkWb)2cRc`-ltsOg^7=cd4D0y@0%e zWJmj{!~f|$JHwoFA6z$Kl=kln*t>|2A2~z+pKrf7ykvO~v2rKl0qe}u%^7T|wC1Z> z*Nk7^^EYoZeh9F}U;BgWj45x=IcFb)Z~wEi-@CWp#>H-*bUyS^Md7|TV*z_b(NTNr z-|nCDW|d`+F0%T%29b|z^X!S~FXw&t4`cn{SZiY?XJDKC#_$t8TLN#fzct^rd~?k+ zyLcwSzQ)v{R;Ol%tJx!BBm2&6^y}medH9~>;=9wsm%bZ(-^t>e7zE$^_*wXNv2ST7 z`Ne!Z6E}j_&ERz_cvXQHIB&fucTbv6}4}l9(RexSjK11I#gnw2ljTNjNgnWnFfH zISU8_H!|RtTBb$9P@~V&K{ykdEo@K~Hf;}~oYpv?kW9%n4#oE|C z4OyUnyJlD$d%<=0M5}KPxx)S})>}lH8+*otncqWBxZcHeVjBFI4nJnVk5TXgS?OK_-tD7@$L~o-U$W=r z8eHJ_;nF6t3L31129H65DbN7=gglvq7AB^tg3c46^JM5e0y>WpEuk~I);kJ1kAco( zS%1SA;}ha*6)-0Pb22bT02A6md!7&TJm;suhdpDR^W*(AJ}moyFDpd*e3}>1wY{@) zb&fE#&|dLH1$8^3jsDkPzI^UO9t!dRJ<=KVy~yT=A(u&?T*^i`*a)BO z80vpgKKB@Y<;rKg`2A^9NG@;n_;)C|907fi$zEhq^7zP*LF91+wg6e|MHc_Vwg6_xS+%2g$V8KPSJEJwHUU-GV$d2CWSN#;Y3R$;ZiuX&*G@ zL;46?imnw*#?n%9@% zZeJuXj!ko7o?4$Qz2^2s{mHi%mmSKVrLF4TUaNXHc4H5C{_aEaX-j;zLwno_FYoVv zi~YE`fPd>clz%Hgt3tM9(S@!rIFv1skBdS3h0q?GvIm>;JJ-*(ln-K8UBD;fKjt@2zW*BgGR^B#o_)Dmxc-&)C0`z@ddA!H8EZRs#qkN2YPzU3OH#KTvZmTgBL&WT zL>9YO5sTqF{#fSlHaUzME_|By#_J}g(|Fb|Z%cf3=odbDTUW?GLreLB4~pv*K3s*{ zHWxRIPyD!qeDvJq(o?Zm64~+Zmq$%oANfggZ72Ujf-{%>@fNmz(BJ(0apL3LSZJ#F zQ$ThL$!wuG@-r6Ip#piJOBb(yI!QzMTsd3}tT>Z%I2PuCoUl(Q^Z!sQ~pFZOu=1*B$5MoV& zZ=Bg;eXGoztL~36wtm9(!*z}yzMV4>R4?Sk@~63d(s0`c5s&^PSt z-MTSAJV8uh&Zg5@H2+kW%lpsewLjEtUt={tkC*slehzPt0k*1^(!a zgA{Y#%43wmr!weJo}oi&hw?!>^Eb&}=c!am!QL!{FkBUYz?Hx0ttILVb#{sV>d_e1EQtw7WQn9)4OS zeYE<$ukD=n&HP?=|6lQIpX`Yfe;QdyVed6xn#RU>d+{m`z4<{S=bYn)*9*|CB#*WYD2)(id|K zHvf0Gk%wG;l{_?}ujG%YoeI+@@l%KUTw{_OIHartA$Ao+Ram79O#Tw8B$WMoF}=b(D+jE z()-xvLh^I4*45t+V1FivxBpA*&vp<0Jo$S!_~FZ6d@%o~+~|ieAC^Bx{NG}a9Q%-~ zi*e7p z{{`|is6G3?@nK*5FO1Lbt2qpNmN!29L0}Mj_CGK_jCuIy$=?IQ@k6#}BM+g&s?GE2 zmp%-iy4e?hcr}LqTjDh*|D0>uFYIaPnX+J`Y--Q@KpPagMMf4w|<_!Xo-vS~T%{o1wEQyq72ZqEG$7iZPZnVhsozXG!9 zkB=`t^!$v;M^oqD7i2zF^E2Oj(B;2Nv;X`?E*>jgJPvn$W?g~yHMVNg`f>8%)Y7nL z#D#rr?p_>UaqDiCCs(bkp^b~nt9iIIxVU8IN7HWp!}+{m=yEVnwN0S7cc2p@fFt4 zFgLAQ_ZV>MXEHy15%8F|Rt>nmwH`@l)tP?PIr9(S_Vvp@4=TO7(Cwptep>Yo&b*70 z;}7|C=->0kM|T&X|7FN$k~tRD9cZ5J1aO@h6urH^1Unin_bfn{_BR~@$CC=+n3+Fx zc{14i;kp9zcbboCV?Ii2$Q(L3`KHVBa1edo>t|0He2eJwm&`{^GW5x{pOR0n_5glv z2vKJsJ+1U;(&XSXB@Z8Oj_wyeoHR$5kkp8R^&rex$DJeT|M6x}lQl|c0_y>8oh+fzF@c6*+c{ zwFv}7jV(-d%U0WR6LrQ~U250nZ@U3wy~S1mx81GXWhRp=K?RGI5p4e7-+AA6^3Ehg z=yv~nK4ISLInR0S&vTx0-q}Ov$G?^VhwyQ(2ZsM8d?Z(9;N!0|;BfKb_rUUJ$H$bR z__#a+4&fvI$3dNQy7)L1edFrkxh_r|eKRft78fT!_rP z_w;|d_{cv+d71s4ba{C#0}dA#U-Q87XXlS$>Pdc-0f+GMHy#*H7ax&f@NtpHUe};+ zwLXxwye;zA66jgJje-x79bJ@xqYW9bxj4Gm1D|lD+Eu&G!M0D^JbG6Crq><}XRkG1 zwN-iz8{oCqH+cFNUdB27rsk_^9eX&!e3kwE-*o$YT`u~Z?>B2LB)GsY3-ov3*R8*8 z*|CRj2?cku-nd%VsKr=w+wx=2W?A9NvqSqs*79?xIV3< z<{Yg}T*F1bru(z$__;;#AHJ+`qcz{< z?9IS>|HXHLpADmY&DESwhR>S7P2(tk^YKfq!`f3%dqg$eR(kBt+a@2=T2k5WwbW^V zNBAr!+Q9M9F=j{qA~nYB=%+aDYfje@F5lgkF~-#THfM~>JbvuS*0;ShOud!rMdgod zCFWAyWrEsKt=rQ#+~q^=d6e(*;d^V}hfb}*!~gCwG|7r~8~MqO_CPC*G3NSsj<52s zCmBmk##mDIqK>a}vU<_s^zCcNkNg6`syzt2GV~o!|B|6fr(e}qdHpz_M}{O{E`Qke zCf%Prj6YI>9x<`kV-+R_TmD3a!Iih~TRnZJc$L~&!BLVie$~w?H{yjU?$IOOwKZOS z(l?C1b_?*uJowNz5WR4HZaBDr>G+9s8A{b7IC^H8$Jh0)1@po)Zy5cnc*$Gunr&j` z!B{DQ9^UHmP21qyxEE)g&U%`C88Di9V|Y{ktXBu0EMBttC%vB4^)Dsw(!uM1FEf72 ztPd6qpBM&~)AcX!Hu9LUo&os!wNiVFdCrlJK@{Czu$TOj&>Zc7KIy!ler?&bH?nzek&($xs zKadW;`~lHkym&Ggg}1Q|EGd7$>9f?M%QEX%{zv#Cjz3*|bszWWl>Z<2Ith%zSDORN z>ELTPeOBc0CoSxN8*g-A10Q}Zo$vo}_n_Qm^8FSsZtz*8%ToEtgzdNN@z?-2ckbn% z;q<@qKQZ*bTQ8f+kyhEdb*~2|;pGkojz1;;GtcO+^n9S?Px(OB!6hy9ST4M*+U?e<}H^we{JD$)AnCbbIim zqtABBCkOV+_NLQx%?L1^KMYK%{FOt~%-R(%J@fNbkDsm&iVDD|e6d_|Mc|Qoc>MFM z{y?s^xYEjMujMZh2(&kyXu7A&3N$~2Z?5}w&OSi}%AGpCk$h2?U%kF4>+{3fgRB63 z`rOKzD~idDJqvAb;P|dA-`>2BhxYd!``WjQuea)_hBrLWLp-p>%B>5bYuvWAuAr6o zw&Rm5UwQo%)s0qt4KP$6v+B1A7HYD$QBz)e#izrvJMMeZi}rqA{^-}Jmr_3XHq}kx z7wGt#98Wn3&RxIYmG?b*#*rn~(zI5JrpMBGco%JAIes$s8eiArO)qh!K_NPkck6Vc6#2+DII?;UxvD|QcA$)7E zD4W*){`t^)1@!G=9IYi*{VM3zdVy8XI2W(K!rHqN8n<3#)kmP+x?8Nh>qPTWR(+m_ z=E}>LP`eIY50~CwYWBHxapdJMmzE!cmjCi0IQpBD;HWi&mdiXbo#H*4lJ@^DJy#k1 zlrG;FNk2i)kTb`W^}4+#4u5`A?e8n)&u?1sUZwHpHNOA)&jI!UcXP4NbLq+8D$W-O<({>rx3>F^u>hWQgWCu-I{vSuSUg}c+7z{<=-&>m>?Dr zUv|Men%5M(?losZ&j zi@%zYU<00}40uxUokPo0iSJ%A_#0~P&Hkj0&F?I?l5?3;>IPrZE!x9pFwZ9YlN%ki z=Y$=fIClPId?`F$mI1dL^9heBemq5cKi%kqbp3f4d{&q_Fe^D3+ggH+tz=zn2z+)h zFBU4YlH_<^)Be-7e?aQ4?JU<+MuTwmO ze7io?)xg?=Y@ZyzdC{+La_rJb_-(U--7nbdcz<{7By!&t;u+6+UI))7%g@M$Wcn`` z;g5!Z`Mo6$Oii}l6rTQ#evi1a;NWSSCw_Uy(d(`}tQtmsML##cFq?knKr_Yg={%P` zWKK4X=YZwGOdPmyIr8!UlYZB1JU#l|lnFbrgwZvpNxz7h-%rm++yehqf>*62AHZ&E zO<@)5>J!A&=KHI2&7Mx1Y6Ej@+nGBjnIP8gB-So5`=-xiKYw5NJ@QT+*pNzOjP>PD zmc~AV{1l@fiqR9&3(Cc3NAthv@`)V-h)*tMeA>Ul_T`-UOiyfmvi;LW;>XSPZa;(k z__5REN87%o>ysk*u}b(tH`w`@K=kY{r}q^b$2V}<%SdDU;5}q-T!`~fOKQHuk%c{; zoSWh^*T-??VL1Ds{DI`{O7_`WKJ%*NwllT&NKyESS_g)4(xOl z`wsEl?C~*b0#){eVDo~Vb5`NuPBdm_f)8;sw7=J2-oTXP(WZ8a}hP0irT z@L|>AJN9R-ti7#_zij5|&f{;3_JJjy-NF3tbNuPN#))Tl2ej{YXqSFnd5IW*V^F{Q ziGiQ_BzgBYLP`BDJ7Dj@>Zd>d*ZfDJ8*Z`cHNVhsuT|d&d<~nddLKEXvMg(F1MmCCT8qKY6OV$<3yPc+;3-7N5_t`5~T=6jPAK?8yo_(12b$mC+t-P=NnP~AM@9F(AewSH(@_E8@ z(><2uZ~nWCF}ic(FL>a8%8V;38a2QE=%ePBd^Ep5=dXi!;W2&<{}oy-@;%rmVs&DH z73^GS1-r-xXx}>VW%6C{RoKWgjXV?L8S*0w;ZyQz+OzJj9DY60G{)$wRnx7-N1KZF ze*gXQ$QHl7k7R6#KN(-@Pj*!MlZje?va@Vlu&d6WJlYmW`##?xV3OV%cuam}VPs%n z6n~>51Gf_IOs!<@t1=m{CYM~x`2@}^>5rb3>xBJZ{phL7$jN^9@a$gbdw zH!p}J?z=Y9_24zMH^w}Fylkx9PVHFJj=r@Nf6teEw>CSR3D+2>of!AV`mFookF0I! zIIv}3IeTg^LvD0EpX>UarC)f~{T9}suUs7c7(Cap5SkHl$H}v|W#u&29{tAtTKH@3 z%CetUkq2IxWwop-vR27$C4YZLW6M7oUG^Bwx%9i#O8y=^9$sQ4k5n-x=osf+J5SBGT=*v1y2i2L z%fV&$+z{gk@eX^(ETPRR+61@nf=|U^iksP+7MhFxq2#~je5Co;@7%Hf*UPQFPg`d- zAIYJwGoja6RttHNC+o?J)RPx^a^>a6v_3(#s~v#}PEANrbPu%-;;96ApO?8mz;`i^ zx8;Q!8m!27Iq#{l!g=7dGcYPz?8`A@?ZYoQhz;#8YHYdJjCGV5YcFGkSCV~<^C08w zXUz6kM-3V4@lA}CarQ9IUdG(VSPwGRe#Uy}BxC(%_NeB^kKD2U@nzQDA6cWDU(U9Y z?PpjmyFX%&^+v{eBV&!MywEe&G0}r2$CV$wGd0$NA!EIQvBrQu4sS}X5|Wi2{$Lm5 z=}!2A(!CEHMfU=09Jq!11TxsUV=d3XJBiBR_CKck^Z91K%|ZXfcM&xM7qA{-tLl~l z{X5_f&4rg*0plms;wOaA4X>3ZH)H3I_^rloS6Yn^R8O<&_elRt;N9<$Qv~OM?^%3v z1pkq1{%d?Ke%cINx2A<}9<=)x+vla&C*M{p!`BH!OQ=;V_UwzbLgUH}CB6G;9%-`u z-IqQkpXbb!zZ<)iTsHl_Ffgz=b}RlOefk%#Y1uD*$hlz1;+%P}=D>BnmfM5Y#Nw4# z9t&KvrbW5Nb-=#mgzw0s*rif^AF#0~eC2H`j@1N;f4$3XlV{5xwd!N!T_2{e;+5IK z#Xf61^F^l54IDqh@iM+$*+HKb+`oov+dc13Ugz6ejlZ%IyvY`QoOUKNSLVGok!$5& z_ti_c>zVO7xBT^*o71`cB<@|NzLf9{Bn$cZ}n> zwo2D>+26+*_ZY5yHIF_yFQM%M&TGtjx2K-T=GszojeVD#_bje`o@?9qj;MR>IPl}p zreOQOo_3FNPw>v;ojo4Bzs2?0T&wW3)5o~YwT#38+kdga*xCyGteLc_cQ15)XYd=x|8-$~jXwMyJTA%^#KB7rtmp8~ zHV>?A&h>Skas3>IYmq%C!okxBVKf|10mA z{mZy78D7e@WwhbS#(yIRZaa&ecJS>t>)PadLy;->S47VHUS*_XV{W8#b6%u-OMWDV z-_(H}NuZ}Y(bHYEYlGeB>8Vy$cp9{tj&3?w*g(7?J7~`ncbd5nK#@w z7e4*MGs7R>`hFT-J_#Im35LSKv0TWtCS4mlcx@WjzG1F4q{dvvwbka`!E5Jm?W?-R zx7b|Ve3WZ9n`?veD&4dUomP%co31znU8ZAreQ^UitWm${uKE1JXP0gC;7&EYOKHzb zUpp4F<9V$`dysmid-#h(Tj{7{*hAw>U1=o`_rXccmTVdqLtD_=sF2P=6A3Lg{Ni8%fYa-U5<^*~? z4A1w#69=i0D`bDZx(la;53xUAEHFA+4Bp?oGL#hWjK12}G8#SkxR38gqbHS*hy}(( zKd%}qV84mqr8?$W|21n`s)*?tvTWQ`;dASF6?my8rjxFp2rk~GjcR1rhYgnPl-vf8 zHS~Y~myk2%7M2lT$_~XDyX;*2X3N+*;+vLS+E9PlqEj8Q*v*YCvbVa{!Fa}6*8Q4C z+@|j;g3pHx%>L+f;Pl$w_3zlWw+!C_8)yD0-*6-lF!9^GPZGZcveV)>zDe5>Z^pNJ z#7fGpHmpP58J8V{gm#?=y_Hv};Trn2-Ur+eZ`2gP)S*hl#?32-fcrW1T;!?Rtrw*S82d+%>HvGBkcV&bupHfk(t z|Cw)L-)`ZbHSS9gx5!tDovEB(d3ZBxUK8M{6MWr(Z-j4dzF8jNTZ?bCel~LWg@uvd z@4q%O?m8p5*ytP3zfhRX2f5bPPJJtoe9>iZo78M)j^F7t+FMTo` zMeh3P;}G)rCceJp>$h8+eHjDUChmzZL7xKuWca3I1M8&e_XYMWp3C>OUZ?>Ue7oIW z2qj-!5lR;Oa{He}hTJ_sP29*gc-J*f44?SsvCUn)yM2YpKW_RWemi#JvaMfGJ`F!E z=4bB7iatPnM#qN67WJvVdK6Ov!wWT5G6Bt2kVDK~IpwE;QGsT3Q%f5(ehwPTrwEX% zQ|uu+--WG2_qJ09-=2G7!#$ngzXzUs0b3P=zY_TToi|vtUmU%H{*{jkRj=|rw zQL^^^%?bKnaT9ZwjPd%FtbM&jHaW|zJ&5tH;s!g`Q7mO*I>tISyvH5uEg557>5MfL zFk`J|tO@$E_fExsyaBo`P@fikW;L&4tm|s5z1xAkg8Z%Ir=rMeA)l%^Z&hv|Y?-s7^J&xQd53;I*tG%TjvJ|C>mk0mYvm1B6#M-3l6lq+htXL^=9RnC`iO%6 zu<=ih3H;c!H*~8&N<}NiCr5Rw+|eYV~3$5av9oXVjXZy4X3>yuQRWuoSN;M*z;Wf;DKLow>WUi z2N10K=fXR0)KGY<@R=G`*gjJgK9i2+GgUi2Q?=tWZ3oAK%iDLg{AlKT+_B2$iH{!T z+Hi4u$H$YKw-0RDS4_SzP9Kc-$PdkU)5qiorfT3=1-<>iq~m;!i-Bo3&+~r0_`Alk zE-eOzZKjQM*ovV;DZJJ(A(X5_@6AT+;6JezdSo^KU*P+n z(qlETkQYaiiBX2%0?~pDT7A}`)jxY^<)v37qn_5((UK3@bc%QkfJc|M0r2S3R(Nc5 z@Hn5}t;5jP;1&K(OcMVF`d{RDx#fd@{q1G&uja`b;bFxIH=QCpKHw>L=;{L=9iJ{; zGx^`H*9=5|jLfIxxDcC#Ed1eZM}`YS$zkhd&z3w4)`PjZ;tqUz<%3ywk?bPpr95#D zepxRz!Q}4HrR46ChwydY#J0Uv6$rll20rIp^e3@ZjC`-`vt;4LiPqvNR-m0)vi9ro zpDOX6I?3^BzOr+ymFy_PR!yQGvbOMWMRqgX)nmyap= zsYGV@78S7xeZvoC-5jv|Cwwb8+XJ8Kxe&Tu&q==CLvBVaW!G8W=cqmvT_gZ&1;ndW@S8KnBvcOZ!YOy57I@8Q~&9lR8}iT84`X#e%2Co3`i3z+%1~*nBT=2q&_mf=9>IDjyX+t&Tcx_+&Me7xrKHl zx5{zLKA2p$;SXo8lq#ENv^S6RuW&gW9vd~5aiJuBX?VCX4KN3NPjXI=-4Z=G}}-G_NEdDSh`Ebx5!Br{iBbzdz>J_5WTp$ARec{2G}> zUYXNNb^vz*xV3gubI0yp)4em0yP4$7FG22RA$Q2Ss~hC{-T`ugg_7`o{OR-Y?JBun0pFMJw(6U}S9vFKGV6&&H_5p4me)>H|Im&{WmEB) zQZ`logW9|Yd$pG9RkXPR7)(7oaLl9s2H;r3uWIAVp~Hn7=kxsO^q*fnT0vc!GL#>C; zT2~-P;(z!|$I@9_9G$hr(OJ)-v(|%)R`4J>+XC*^@Y@0JWPvy3=(31Wvx!gFBgfnD zL(46He;)cqb2`=Fb>(Pcu&K5lzK7U24xeaS~uFWd!BcEd+6AP2ow=zsW1@m&WnOSfwcB;VR3?~zCBLoNQ9njhrb1jG<)?qQxs zyopSk_zj-zfKT=P#U5;fY*N6=F*?Xzw`|uLR;fl8IAy02yq~~UCE)7>vZ44MopQfo z;u!GVf9?C5P5yyC49`{h?QawEoN@;4T!8TH&H)JDxlin5dmP-!$9Pn2Wx!a8t-R&+ zW1AcJ)4djIlOE;I%#%RN8{u{G+>5VQtpa>=0A86+t;56cjgHC3E^d{-W5*Qr^Z7mZ zj{}!J%s37(j+dx6Yh@gb{AMv1^f$mSn2lbX$@gLfE4(5MkSD<^0 zOE%Bk`<<1#XY2`jMY*H|c$Y3c&*_UCGPt(mKz#0tx6$ra{BXky0o!K8iF-b#=ZST^ z*NKO)rB-qr_u}Z($>1%C|{BZ2`9$R}-*zI^$XaeYQBT zuV7s6J&kJx<4WCQT<$%M%gv8HbUb&~spKzvj{&RTW6hJ_dT`%lWV!l8@sSAdbTDqe zf9pHa1CI}bhm>A+@S?g!>9tyi)^|he6nzUt-@$t07<%9rh^+$g$SZ5JqUSj7*#dp=CtRu1k(gRiGk7n~-`bxg#)bP5` z&RH(DV;fVq^P+R@YM-$I)lb^z)fbW1L^jZEEivHnGcT%|Inf6_Yv=4{kh4Qi>ifl- z%Zu?{4BIBzJP~3(&U^lCU{zc3slY3pGn0JX4DwItp&Z(M!S#QTu@_wbhvNhIEhYNB zi#bbhe&Bmn{Z@X*pclOD`Uqy z{BQg|#yrz!e5}~aie&u0#+K2**Sf~4e+9kPN`C$o`fts)E@lpHaV!2!9k}`uIQS7c z`vb~LU>EfKHlDwM>#f_IckafIC5~?WzE$5&8@0N()2g>7ajhObqxMU!`fJDYdm-2P z{ZWuM=aAnZ=hpfG^x?N0T*`lb^Z3AK>n!vnaJ~cY=-Vh0;kL=J|`lraP?jW}c%@U7*yDj{k$v1Gwt%g{?o&X1(g})@Px+wDQ8;i-QTI5%Kk&pbfom=h0w~8&rH$zW%?8s7Xm1)JI@QLl@ zR+r*Skz+dy+-LkM6dC{Pib&CKDCI~-GSS8DR0%g1iuU&^%(O?b?+93f5%T*hKOC4uKKks)(cgSL za^wIqmOx&6kguLIWhQ1Q(gI#U*{8Pj?rrGUN{V@l%sjlT>XAWv?^c&xO ze{(T?yb1n)^tm-HPyE%ImM4D^iu`zQMdT;{SxL@*A~^aey!Ek2>;?L1r=M5pXFvVy zxHH)GMkx8HFDu-a(N7&Y$~xv24>1pUJ$>ZR$5)_pChbLc*@v4P9x(GCnj?|#@{qk2 zw4C_Vhd(e5IjfOB!aJJZGV+G3{hi*;b$nZgr~cY$&)70_+LkQ*9okrdPSbHd#|`MT z-RQIi`iT)Iq|JqFc4T%DJb>J}{8wrCZ!9uf#NQc%{MYR8-$rdh^ zA=iQ1&kf~2<{o0z^ewqf4D#O?@n1FkM~-(W|D6L*6i1Gi*>Zd2J?M2DdJRCY0PU50lq3qJM;T!gCS2w>ZbTc+EQli!*8X!5@a9D>`4fSlQk6{kD&#JnULe ze0HSCjwj|3!~b#YS%dKedQyB4zk&G|+K!`FI&Nre5ufN+IJr=^AkzkL9!H-~<~i2} z^x@AKoi1D9^VcaKGM@YL5niS37;PJ#yA)pF8MUo@FFNo-tQ{CU?hc7^{Zu)2F!W^t^d!1MSoD1L69eh(iG$em~ zcSinLIR=yS_QbA=2kz4NCJ@tstM$&YH+GgRDRve<@8G_l=Wh2rSLwzWJZIX!-|=b2 z+jF&<`Q{s;lj7~!FvXW)K9C%vtMU5Oa-X_+?wkLQufu5BNXr3}ri!AW2_Lb;jK64#8SIu)jgx@1O zVtBsI=6U(gs%>c+O+J>sI?DxTmYK(TdIC8z+Sd4A#J8)m$bAC~HG1t+s6*^R?$oB< zQ4Vw&dMIJBmJ?iTBgS}|Z?tt@f^W@pTIX$I0H^J(YMXm%`!4ds^7&1UmHt)`t0-4| zE^sTS@C))5Iq-sFRmD@!6Hmpl#flSih^G#Ww`0Lv;;C-up5mz-;;Ga<;wkr@WKy-o z%0aE6{!H^7yIGe~%w7qN{C3W?l3nBwiZ6w)@rgSavzxd3d*Igd+u)aunKt~>m^;>3 zyzrA-X`jrTN&@{f#|kt*%=kNbzKio6!iDGvp1v#`IoH3>b>*DoPw-c-d7=txJN4WO z4=(T1bMRIwcL2`~$sIWKtt5A_?6qT?Z{e?}ER>9)2UduVz^6Hk9`JiTbFhgSq2yJ> zvYqfi7xdIVOU2585*w^w%~7mu5C<2712+dPdMIv>IrQ*Dk7|b=0Vi(PJ<-DtJyQ3a zxLx;*U1HoC`&RrD@w3KrH+AN-c(0Rl!$ZJ0g?;^8T8tGf$Uph?+pAXA z9;;;E_6q8{rGsqSY3ub9)F?g1+DaED!L!7LhjE|bXU*FVdu`=5&t3_c`)kfK@D1)a zQAS_dLv4yh9Tk7o@P%YAKwbHH{2j0Y#wQ7k54D`fpU#!rad{-Cnr})%-&8KQ&9Ors zyj|$R3Encluhd5j?9E@nmuB9Ux(=rw$8UCWC5_Y+WuHwhpoIOP*;g}{bLG6?DJS0{ z{qOEYqO}@1(d*ATj*rOP8M%lq^!CHN_Xurlrww#`3w+gLukFZ<{w>dT%?!1$*H4`f zJRr9%%(2zU#!HqAO&nNsPj=u=+FD1OtyWHd2X<^{UUvKXQQ7T}fY+Viw85ed2cJN+ ztIZ3v?cyA4VO&p7UH3rt=sBF;>{?B`xvmE-Q(aFs{p%c7g(mdcYculfZ zt-3h)P&V}o=2&Yca-x63vCD_@p~>I1BqmucoyE34{V%z_+@)&>!p>>kn#uLmxKyAa=Qbht+cE5v%3RMZVQ;I`cqti0eaqO&VDA%^LA}3? z+?(1P(7HhA7sHP1)^~)#we|t+Y|#2hU;kvDTQ`b*ri!xKmyg0PfDXQ*P%?{SYOGpX zdFEN-x1G>P}cQ%hKr?R^LR1OK}FT-t5=u7*Ce8@LAg(Do$i3S1cMTz>lVJ=ow4_#av; zay9zw5&m?%l3%SyiG!C8#uo4~_H6V?zVZp!Vf-@k1os2eUNk z-@cjpM|5YNcoco4JaY#+Ix(Y>c0#lhq8+}|^=gQA@ENh`2a)mqMXZTg5~7_D?NrcC zMQ~vTKOd>0-azwDW=?P1pg(*w_TzR7dixB$<6pu4nek96;=g%Ze}iXY*ny3*Fsknp<~ZL=Z+&593L%!hf3bhoi)g7_IL*A z?ws?k>}tnY@GuVjJpsRH5_o}jqR-YIM~6V84rr8sMydxfwE@sYwY-++pQ}$^GWqg} zDcrkjiDpl{p}tP3E=wza)7FmN-0g z-q{tAX;VUx-l^Gu#rhabi~UU9{UnOxLG6p# zBiV!>#k()^{M|gC=gV)-^U=RA>t)S7sNTGL2G1WKcxn%_^enQ}hAfHiUjnCQ&Tt{) zcVIXB41))K(?-wOI^2#q@;;i?e2?j)!1S@s%A=2bYDIGT58@m25}Ud;ht!vakJ5%@ zNc#>+zpJk9&@ZX4qdy}PPM_MpQ$B90?vVZkmvRuXLhP%Do}%GQ(XcSY^+6hX<41je zR5co2`!8FLoi^XLPt+pYHD>wseb`uU&z>Zpw||l*B07(ZC`hW+>{~5Q<33C=(Wet zYfqrppkp7jI|wcN7ogV`qStny*A}4H7FGnc=Fr6V0b8F%42=f&TTrcS0v#rOCSNdK zXP--#slF&B`vFInAqPg6K?|eH>cH1mY&~|Z^w>=F2r*#M>apVx%$ekzw^|Gfr~h}=s>T7 zp8|&6#L%&T z`pmTbZqD46pEhdkq(eVUPGXa+4|)^!9ui|RX)%mEu-7rqhk_3}w2@hH=`)?2Uz&e< zD)fOa2|Z%jp)z`eqCG&-=d3E^yMMAw7~Na{2E-Q<8C%;ZRkB7luzVU@loxeLa&S4$dRgsRd{z&J9Kt#Fc4tQB}?ZgtvSW{?qF}$1y zFPB>Bwa&Ny_4}L4^Q9wX3#XESLrQM91OKryr* zJT?9BUb8-OjqpUBLG|~@w}bQYqSP}jiEF;Kuk79*zC#RK*T{Q%U$L2f_c-lTeZp?X zw5xVD4Xzzl+@$to*Y#`Oh?)BR+_;zCriX>f}xmgZzYgvs2MK zl9P8jKU_{y_SK0O>>NmXyb#B}%AUG)DXQI-k80tgR+_m6*2v-OcHj%e7OAzq*28((&CjzI z=lQMH-aD-v)fzl`1GNUZ)Ee}ZEr|5Zm>+p*niYAW#24wQrDl%(DOuM(p|gtdV_OsG z@J8*|L_fygZSsd>4}c3#9|?SwPW;6#Y?boKUO4Tzdl)|e`u}|f{qJ;iqVcDivh4V< zMEk+yq}7weegj+y==C-}-f?Kv!};yN+Yf!-U>_>%LVv)Q)N{IjaA0r@_8vXO(M8}a z{sy-Hc3|%T_I~`K?9hGeOEZc6Jep?*w}kOW(D#RmE69tC>R-jY z!$J7q-qEAlzgje^{axxi9`x+V^)JYk_KdlPy)7D8bF|&$C^Uzoy($U~Kg>Q$`*M6T zd>v!+j;s4tVv!}pB1>&wPy1D9ey1Pai@|fkgVwvUj;{Uj(d=3A=GXT>zQ?!sGT&&! zFJFRRn3KBfXa-F8Ixv~_OgB>pjC|m0Cquwt0f*T$gm)H;Up)Ps47R?TZTR}(E&S}{ z!D9A>0OyC;%l%*z`)}u1PxT|0hv3aV{AgD;Z(2k94aAJdSDfc^kwIx!qX4G96~Sk-2m?(>zbomYiO(XbAd@Us)MrrpAG4>?Yn_- zK-)vue$}grUo~&%h2vmeZu5NhA(_9;+WWFqkVextue>hucGc%1*9NV~!U|vH&HF;h zYtLY>Vq{S|vFA$ode)%)#GwUq7U2Wm9f78`z;Y%0HVc{Zz<06H4c>9(Gv8N${w#Fz z_c?YQEIh6C5(VhTA+}^3@;(7spM=a6178{NO$C25tmHv-RsSXE0(8sLM22k{2hJxT z=aWKa?`ad8PX)di@B;d){}N=tQ_rAyJ0HI()1Q@XNad!~7w4*rADWx8{cv)*$wv01 zQSCeR;^8>`XdX^A@X{YzyWPQ9lt0PBu4qqw67nID3qfAi>L;luXt2j@fL8aKGFB43n64n^xi zI>~=zkuTDGZ@>zee39ncy1@TV@X$S$yfApse6stjWJkGl<&wUM&lwZE6UdPOvt+o0 z@mHchwTE&AdC@p|a{okMa~XZIe@t_NJ_Gcry=15pe_4CrDVJU)m?pB0!~;_WFuBib z-@w$|kvkVNOm61I4tOaeH}i~x8^WJd{Id$!z2BmC@w4L`>ibG2nwp0Y{*`!T4fZ_1 zxGct3!5=lH@YUdaM7Gf}f#~YL9?ZEITk67@L0i%D2ZA#f{Zkl%=I|LfS52cEpRFPe z_U4b2o2Sm$z(5>ma&C#;HZJ-0LwhZ29R+JXu&kRHX#OJjd=46SgU=k36U^b6te55Y zC}w_{F=>yxE!3yq$T;Uf=XdBoL2jn(CG-}#73JdOtHh88=!m_wX%KgF+it#x@o7w} zoH6P9WWu%n8UG;Qx9d%*fjJt;O7jmoHzQ9Q;QeO!b0h8Cr~TmUbpmeP#K01+HLyoq z1NDau>=D<%y7=3%+sNK%cx?=OcFX?vB6EG{qJxZ)qyYL#{$2n*TZ}x8K_11sqsiNk zitba5{SEYsZR)rgy}kk2|0wfKA4m2}k$K)3Y%@TcS+vRC`pw9~Ms(AC*c`R-723F! zHh{;p;iHXg+Q>h(Hl9=)OKGE;Hfm{O)@SiUu8ka?OO52B1*x3TTdjGKLr>>N4&9FZ z03T-V2i+te^bq#(&AIm8Ufm19#Uk`Mc1HFq1vg{vWb9qw!Op2>+4>vWjih&u#)tB$ zS2y3~p|$9(T!;42)Up2QT(O9I&C3t@)c0ocgUbhxAcs9QA4Lvx`$LW#n%q&9#eVmy z7b}iVg4e}6(#4XGIs8`fE1y<;p8YrPD+eS5`o2&8mL7QoDD=fQJ zf-k5xHP<9KiWye{HY}GKC74UPb%{QG(;O(X2UHMD7(P`9s?oQ^;xFL`fs=!D0!v|Q*1ALK>8=@?*T{rSp|_7 zs4381em&5=2b%UF4+nwmF>rCCub_FpPcRj{EFR4>d?$LlH41ioIvqYM1s3Ut8>#n^ z{qBP|&WEQC7F)>~@Rim(3jg}M=A+rokJJ9W#7Xy>_D6x^;%F}I-^;xpnR{bA_eO*N zg8rA`)04z8DpGggx$VT=jn`Vr~N#| zcQU=$x`aJP1Ou>kh^RyP7ZQq1_n#7l+;*)RG7<3GpN6U7TxPun7J#I;F|+i@}H29tk Nc() zCG8I_B)RzM8^-@PvIs8-51sIb_@L`ak1S>l`b@4Y=1?o?^7bjq;w)Ph|NVLR0J@S3 z8k9x&A`bl}i#~AY2X_H*C)v6ie2H(?fRnZ0qzRk|A1PjU^L7r8oZ;Z1&BG(^_)m#H zYR)+&{+RW@#2;F3a=QEx64w}QU zR}Ux$@)-N<4WTo9ABXQd;B})1IPc`Vi*xCLG1PQ_7@a>i44q%}$O7shr4RBm;ycCc ze&8ivZoaAd+*UjGolWe!ll=;*nZO2SMRxQ!-y2U0-@>(U9)L$;>_K=faAxB6 zb>KJ|ZvWlszsEykSKqBVi9Lj$U+alYO5t0uJiAwT;N;R|Nb=N8NQ`%d<; z>I&SkYhBU$2V7g34PLq&TX`NeJsXUFn%mriKa*?x)7*CQ3dVPme#oY+R@yq3eL1h< zZ)ee+53IwNdzkmuF^A#JKS;*XZD5vJ?~|gxWAC1KYKfk=@|&Nxa;ZI%Kb&X#!>k*7 z*y9gh?f7Gz#s+6ck3NSD#{PC;hh3QMJS%>e#}>PO*QXskY97U_KjsU}H9YmF{2lw-cFM`LGI6P+AJQhMX$tU-DbeF5Q zmO+Pn^vrzzs(tzWnh(~zr}(r7IZssKOY^Q`oI$>GYU$W#-i@CQ(sq6}-{>V~T7XWx z1|3jNEM7@{)Qmh|d-LeR_M5m@$1@F1KZ*;KOE`pFD4(xyd6f>+kG@T*n&CX`=sb>R zb3BLRO!*kY+OU|nKB>xvGnG?7o>!1lI7ALX`IOi~bTaxgm0Lizm0Q?CZsC0P-ENFv*!=Pzw15n)t6Df8Jmk92G@$srE~ABvGcUd`?f!V{C1=BL_5W0%EjBX$};-^ zs*X_Wj8uo;gPnbp_XStq#GK}r(Yw=q1@KXbDDo?;%CLy>TlG`n%}o$ z>zw9aaqku1D9^po)NJNEu{GbJaboK)Il8>t=yJu@`Oqa0ZD^xr6Iz=Xn|PXhT}zK* zD(tAKV|K=>d7)H{Js18EpFjgw*YEkAt@nnlhcfZwpnq)q-YU=h5%`uoX?>IAF)iQc z#IEvdW6(SP3vh?{e*Jr83 z?>P^@Fa|G)k2-FEm*8h=UX@<}4(a^7{>Q+2GFA|M_*rBuqYr9?TU>a0(XV|IkbC^#gUVsKa7n&~nTP9s z16j+MhhsgiQ-5pE2TdoRotghPb3yQp>Sk5{QF4~`q-D(v@4J=uWYfT(^rHArcA#vJ z74|8&4qh~`HJZ3Uxj^yZO7f34l7GC3{A2GUIpoN5;f=fqzWYxGHd-wMRn&}vOM_qd zM6%l1jPJOyv8B6;I@(3lj}i|muN$ueo||d+D^{|zpW4;8t(NY#K(J?jAlUoJXKDLd z+P;Rre2xp~uQ1XJj`H*K+U0lpit^i^VegPt)Mw;VpV9Z&f=K_5=d+*ryvT)DSdkeQ z`6AP&`6KP%$Q^S>tv`G?%-p?f8*M$uy*P7PMo!#3cP_9M0^3+%L&onC-g6mKAv`m7 z`1J(t`u}`mlhW7!m$RSVOVqlsA8D|Oy)9+u-8|`_zOiN0LPp)1Exx6|+PY9AdtzlI zx1@q^CFMkVcH~mOn-^iu%Vsu9tv4ftw9g`?Y6JD@F4pQ^o_H1{%+dcL%XVpXMeWMHEH_ThFN+nj(og8 zt(5dfnx6n|N;7EleODgZY$u z?30eq&9*LojvB=q_|qE54e-#q8rCUzU~l!nUIOf$z<$ucZs*kHm)4#J>}H?slfbUI zlumrT9OqX$RAW+Hs^2NX&jxVZ1deakxa@g1*>TBPG0&yq2#42B|J<3!ao(3*$woG1 z&vKDX;a@f`lP-c~e&4`i`MMEsc@X&e>jYy#zaPItelT+~$*ePgKQFia`qA0#+jw?6 z&uX2XTZ@zC->1ePTo*+DlNy^La*OX!YD5CiFTu4=u62!VWM4=p1{p=x)p3`4v zpe*XP*~znlS#5Uk&Q8nEUPyuV1GKs0^`_reBYW4<`(l=e1{>^l`0OH(}5H z#ep-%GXnu%ST&WJSFgl2XgymoJ}2w)7SCp^bH+Ee2##)^zmsvP?JnAsuhYZ(@;i4j zu2#mgbN8JOz)vX{I=PQdYZo5+JhT%Dl^=1xml0vl;LPu3#2$gB=;w|n!2OR!Qy(<- zLDOt#njQ3h$D#L;#rOt)g^%!g^lK5vXK;Kb$E-Wev!1Fk-(Q#-E@M5se4RMgucY38 z@~Dc)6zHw*&~$9fkCZ~|_!90n&%@4M&H9+aNW5@VB#v&BpAw(TFYCBy58vsG@L1Z@ zwKC*kGV(A5e4PuvO3_7r>L#<;>py$E)#9tMg7_$}xi!%6iYu^gP6q~ z@6&w0LhZ`;>v)2;9t$P!!e>{lU1+@Ona`v?)gS%bKLCU5ANMloDIZ$Jd@D3H%AgL~F?-UX7iV zuR3jXUc2QZ?=Z8mrGRhC9h|}MN30g%&HcU{zO30xAg>fZg)u9KsBfF8cIi!O6GRK` zy+ZB!gjlnc)S9>6jr`tcC0likcU0^8F!YiDyWx$D^gg>#7`|Y(v$Nys(eKrF; z0cSVgk?+|b3Vz0s3pZcbhtBopAKm)7o#fwlhEzY7-Csd|io9}5Hs6fDir?A%s)kQC zP5SsJZ)fC0J$cHMPYcZQYxfNU^V$8h+l%fJWUp|tD$OnuDI{3bP)uhs58D=nuSTZrr8YyWa1ff8g29kY~sRot7Sd-ny1FR~(4x`)0raRvTESD-Q&M|QQw zwWqcshz&FTq4E}Ipewps;r(aiAF56)5H0-dduCoH@eJR)ZPnaJpe`ZbaA63TLevl7 z_c+IDBY|J1IJ5!(wo|?_ywu8ZH^=Mn`<~}da~3+D&G%~(?5(h#zZK|=>(L#x=v^;- zTRiY7f6xPb2?L+%i23HrwGMp1)(MQ6@R@xTJn*T8S9R#}_w*}&&&}EBSN@)U1Agmr zb95*1hHP~k9Rn?NZIC>TsgbT@raG^Hz40h)70D3QrxTu1^IUKj5_uMw@ z*v`iDzhtzrhkYS@B^AL+{)pYp+9lyy?Yix!=EAC+7z-aMQ#Z8#W~l!9KbiW<>?fR_ z-}6y(p}nP)3st_LSbhxkA*zXAh?Jjd=v@0RC-D7kJcnY)$?F{xS6-;9vUz2cU)QjNmz!e(xl& zLrqv}E{$WSUpsadY+9>N+<}kd-m~k+=4Zg9`Z2RE-hpYFU_wp=lRH-@*i0Q6vgFp0 zX?`y_t-Z8-!r}TSa`~;Jr+!=J zNx_n;K}MeA6Y%?aE>#Ea$$LsK&vW=7b3Yb0pLw^*cMRq;wFjH+gIpAT{;T*PjPGbQ zdl>l}Q+|*SU*=u#@t|jY&(E>L@ld8t;$zN3k{%e)X5wew(k6JR7!-8T>iqpbUGwLizyJALp80$7 zW6C*J^82UE-~YhDiJPZW4C$S}pMHw92qh;^KpWj8hVxblYQr)X}-?iyns0HsJTlH<&gNKMDJv>&s2m)2h~7`v}?fJhq>ZUhAX#gSGGS zUA(nEDc{AZ^+`VC)cRnf+?w4~4Lo?4k8S)a$Ir`#4qc94<*jW}o$sFurq^AVp#QKi zp>GUK&^1*XhmXGgZ;I{TWLaa_f0lg2E%=U# z3BWTs$z&Ni)Ac3D;ayfj{z&|(XQe}bPK|_ooE40{miCmd6wj(p#ZV8C*VB4KvsRaO zi-{xdK_+APWtuB${72`U~#FC1#ztu?30& z6`L=H$6^ckzNz*V<(;GKTjce{{}!6a7w6e<%{XARt_U}+hW{@C#sxOMw2r~;U;Wwp z3ZQ>!f7A!;=e@`>`P2?*A-cSOAO1ps9G`M|ODlrHyYTPDJMV@s{F>8GIc>t%UA2m# zt*3U-$4>ZE@n12qeFt<@jY0xH+|J*Hc0Gj6TZhfFYm0KCpOq|C(FS@;aiL_;-rwx{SH$C&B^GMjHoj|TX7ep=GNL-Id^a+yrtm_nUO7$+#J|%%Z+T%rMzc({<;3rDsVPrzghNv3?XmF z;Xzwh+J2GRjMC;2+B(DU*)NuP;iF|%c)Z_ADh^jSZu|Ke{NSoy_c-KIKw+SEV87x**D@{;T$3;1@Di~lv?Uwm3KBinq(+Tb}f-T0qh2G?fHj!x2; zzsZb9XD>^aq}=x64QT-z!5uJ_P6vwqdCkN3a_Ov*!{_xh=I(_T7e-1lQ z7H3ZcKK?Y9B>1z>=A1vBF9ZJUM&RYI6?kh5yv0%F!{qZz-xmS5?2YWsu)b59<7;!@ z=3nRB!@n~<<2o7s=P?Fvemua~4DK0^=3usf|24p`xJUk!bdlE8e}Np?ZqQCMo88Gh*@l!~ zJIt6~**B<5y!FD=d8FaL%)?*k)?xXplb!H{h@2*Odo1o=WA7hvAuW4_x|=i1^z5=h}yPW^c&BcwPIQUzaEQ zqwk`zKNqq4)z}a-Pt0HodY<@vJm)3E(6sktDRFs`?h}KT>YRAou0j2}&JULohs##i*v}s>CH|Iv zOSMnjE#JfTH=G)>CR?`=f8#fq_-SuhR3y@ml<<8}MW5@CR~j?QO+-Zui~W|{DrP6wX2vYr$35rQ@pqRwwhz| z*V?F;=#UL5^N06jH}31Xi0?!q7m5ue_Z9HORmJu<4|J^qzi&J5bn(3GY9n^?bHJ)| zeT$@vHXpWp%^mo1J^0Yo^!Y3`^_rWA;m0cOS1v*^lkLaqdz?AZ?|+HC%@{`yV@%C$ z5XWg=I&pJ|+5{V>F8bd||K0S5o;3YmkkS7at!&eO%;|qEyrCRV0(+^w&eWgVcLV)O zpJ`7s<2&Qqc8CVxT)y)|meuU${APn|`M+`Dn&*Y<7`Rr9As-j|v}?ZqQR6!}-zsRc z^VwCv{Jp37UIBj|nR&8ww?F)^_`aFf z%zS}%_16m@zo>ip&b@r<+bsKDCv^+!xF^0A-V~E=VUF|=^~ed$|0~vjhC9q}ZnW0? zhIXmOEHUnC>Pl4GVo}54v*#%c&a$JO`2Ssnnn$&sx(m6kC3n-NerT&T%R2HUV7wFC zrTHlPdTz9p_*&Q3;a6y{qb8mgo@djB;#1AzCVsQ!fxsVf%|7k}q%BgwJ%T=wBe zQ^4Nujyc7nP1$Mt*+@R{;h$VKiC8s}9;-e<-I$40xgIjL2nFH)_y^()`p9P7v8S!o zG45?I; zc0Z%TapFqV6aP&8wT4#9R@gCAww+s6-`u~=?He7?bbR2c*fZ8@`VK0F*L>0KJhx?vWxmb1ncY>hJeZ*^4r!VAe~Nrx*IP+Snl{`Vr|+F!-!Mf8dE zlNVTG-Q|%z`2=2i zuhM=sne;~Q8hTF{O7BZD=}jHe7rgXFmxE zE#prh2br|~XeO=E{i1aReI?*??Pn$)lWYaRdjh(|?z4i5F_uYwZ(*Jh-KQAW=9h8d zjt8x961*qw3k3rfwGur0y70yCK7P}9XEXQduaEvTN2@x4#AbK~`=C9TVjRn+oO@#6 zsW?1zB|Nkpo;r78C^D5iq-r>Nc4XUiZOD&wrs}=Q9X{FvyyVCXAL*L-C;<$W@KL4a zQ5-%hclf9rK3WDJdG(^~|I6r}Iq1dpE3d!ePW0jnS)tW066?G)J`{W&{fJ!EnObse zTNnDM3qHb5@tYq--|%ber>@6lQ@hXn?TlP>XI?}(n=bgji}$pb-obKPfA&MSo#@YB zfMc~K9V$K43muuOcdqA0r9XAO2i{gq!Frw-KhH%!sn1sQQy2Q_7s=eqEh{IgnA7Fk zdtbHr_VZjz@oSr{pI&0V`)FH+e!?aiel3Py%hLC)-0+`{e&V_doNhda2I`Qa^bp3Rb)0fR}=qGU2!87-( zKk%8-Pi>BVQs3Oa&h2}Nqo2@!Mn9FKpO(7%$*qmeLr3M?`UyK}j|sg3jXKJG;UM`i zuU>)AE_Z9QyTE@pJgdF5GWE(N_C%`DH%%@HC6(8R^Q(Ds=@iA)E^W?rXp@;Ap0sZ5 zz9Y3)_E(kVE!KB6^7)-~|Jr>=Yp-no{`=*TEq=?`pPF&x+8Zxop6(mF#LNG5Gq_n$ zfbU~PCldoyt{Wdtj1BFwad=U98T;PKo*}QR-D~j$^OKdt2bH&dGMvc0W7l7sXBvik z=C#Vh#o;!8&4ta)g9j?4?2G4|c<(g;yamX_Up08eP+W8~@LtQE7i-E!I!>2y3gx~0c=S&~854`84+E<@9(?=Y>^U(+Olcta5^s$yc zIFJ}ljy`4;BumE(_Th|UQ|0c#em*}^AG0$0;C!;Dk5|>lC5!_e z&^S5*-`M5Pvx3E=te}ghRG*Dg!&i>f*CiQ!ah~hx>nZg$lktoi9FM`-?x|@wn><<=Z?@_vedWrw;P#mj!cKLDH9>hL<#6jZdAQ{GIVdPQpuN8F=CRQ4e1J zN_`ZAm-If;`ISD}M(U$DqYutEdiwaZ`j}LZTvjkR4#92Hc#vPCBlR&UqYuvi(bGqn z`k25t(0w+)HVoxgw@>(W<4Ao?$momnrJla>)YmxilHHf|$Pj*|uYVk=k8v4&a9-)@ zPp_7jXeqB03Ux~39{L1-M`WnKo=%{(LGlX9mOB%m&K7sdt@Fid@9OTz$ z1#>Pir|Z6Sel47zyl4biJ90Dd!ubj2^IbWPsELZZR2j>Y-ADh(2 zK)&iY4KEox;r8LtuYbhOoK%Mo%uCndoWJbp<5u-?oIa=nIw`-peZsGak@`BG(HG}W zc>4N+`g$)vO~0ma=Fzb)kJQI|8GUg69Zw%s>f`sPI3D=*i4por{C-}#e&zgj`WnKo z(Bk{FGlXBkTN=M|UdQ|I$Tq*7pYjLJ63qSiNgw$?(ZJC8?Ri7|fpsIm+R>kZ7tXKq z;N^o=^w9%eM$)hJSvOK2JsEv)KFiZbr}{|bQ|B=_j!fMer;ooJsgFcPADo}#>7!kJ z9AF&yaxSh+AMj?%AE1xmNPQg0=!5fYPanI~#~b;{WqhaF?L%;9>eiBx`gkLw56%x! zbK>fc@2ZdA3^NXR(mRga5&B5{CWAjY-%lSy_;c&j@VnUbA^gdh7~i0O$9Ws?&li90 zALP$33)WZjliSk$qI7+_e_rx;^l?%>^lAn^IDgcGkH1nM?dg5QX){xwwvE(Bdqy9e zZ}jx>Y4z~}IM2O3#XG4!Jo+>`QXem5^uhT*dip3+A8qvE_^Tt(Gt4-={7E0xBlMAYCWAjYpFtl( z_>($`YiVZ)f6{&$e{w#F_qWUMd3umPpBJn@2G()R-wnn(>HPWhyyT@Lz}oTS4192I zdGPVL`gnpqM$(`EkGZn}kE*&B_DLpx7%V7QP}Bs%pG5^l#faAg!jBd$ZQ&LzZ4-yGGm{W7Dp+iBq?+$t`^-6K zpFNpP?el!!{d}H0vS!ZN@7`;#wf5RS=M0QKHpT{nf!xNvJ~5#|=7kRmV?Enq;0<-VJjBz%`B7=c^s>awVjD@s=btbWoN7=Ja zvv+jm+4~S1YoWnHKE`i5kQ1k+;F}Y&2!}^`nckqOFvZX7{uuWcSFMxc@S-*Li`xenaX!w@Wgs zFzDy&d5$z>uk)@-zG|s!e6FDv=ecf z8)Le`K)y(0#Dr1ZNju#9!Hpj=f2-ZHx&91Nny+R_zo_g)Uc2`?iiSdTLBF}=Q+pDsx=A3Aha?E~C!f?$-0&a6GMG{I}FKUS{Y8d5or)_iuzTGR#nYs@p4! zN*iOO!9X6OG2Rl!2>Lg)e~_{rE$1C)V~j8u$fs(It-=`2n9RPHjQ??-vr8K1C`iiUL3O$4%W{VQjK7iVOyFjm9`v7=6&a)(*FSwecUuG8?0h!9c!AWAqS4 zFUDqbK2xRH5RCaYMlXYbe2vEV=mr=)&=q^Q;uF5E+%*a}hQpX)WArc>$QNmhm@vAb zD}4=(GEIM&Xk&CU7|4Az#>>JegkkDR&oN+LVqqi-4IeTy)p9 zmhT^OO3x!VIe85CUFqEQEk6IuN9zeW}{#RUDtq zdeL(*<(X-1-@3tH1L?TZ*z>qD`GCt*`n^n;$6?Bz2dp^bXm(1!3Ca|13p&by-HOh5 zzn0Q-q}(aZx|TYnbbA2Z=2h|8o#>wVWj?wsy41OAFm*4e<@1M}(yJH?x}l=>g)BXuj{4}(VM8xD(204eSBRXGjxr7pbI-lpK>YRhF4>I>HNZGMo zZ}eC{y7#c?rOHOw8`bpa*ZZhZZ{!@U-oKK19}eo>kC@+Cy<5nGJFEA7XbWy?peajs6ePM+NBo5WdpoPN(#9v`b=$*!fKQqp;Q~?eY*YB4y)g z{ZKqC`X>26M*C?u+JgM3+ZNWkE{;x=wzSa}>cLp`uf&HVqgS3BZG@RIKC~H3c*sF@kUnFKuc1j0nc6%l9pdh8coB6y8`ja@3 zi~jQJx&Fa$yi>M3cv$pan+_93dyv1Rwda%TY0v)uJMEc48@yO&ZNso((aE+p>^Itg zT&%U>_tJ)a|99H(Y5PR^Xj8Xnv8_G(jP@YE^ZUR@etyl zebl(4>hnESp9AC~GKQ;pz%cZ5kyEPTGdj(^)+v>IMCBbRn@rPT)v#zgYfCZq1Ut={ zwiW7TW94LBc#rosk7l1a&}qt+=3nCbVrvx zol=!2qi>m$h<_X)hs#UpIZc<%L!%E#y(96rO_!%gy*7z1-8stjoW1b# zPs;T2W-kX(wn;xr4)Qqjzg+rS=6`ARIyf|XyG>u4jCvtoq1CIMXG@zm{9mZok)hG6 zZS~q<)C;+{R<9SOUhDt$di5jLc=7r%nO}FJFUEQHe9wyxwAE|9Q7`1b?NENqysjj= zLh7}qz+2Dp^H(|d?)h=CJWnR?Np|PfM@D}*G}=YkPRI}I{kh8;gNgix$0TRIN0_Tc z7nb~Aa#k&Nq}9P07Cp#XlwrR?9abB4Kz_=t19AS0=rpOril9H9*XMmH`%MsQBluDa z^Ac|krN&I`Sj|hsmf0KjZ21855*b5fEkn&^Yu(&gjT*+Ra@5p}U^pwO!?P1;e82RJ&Ol3;ecT#*vt;_pG?mUGJf< zSnp}5?xn5w@ZB7Az>n}drp=4#d6V2@P3lVu(bs%Pm}kP zd?>$%A@3*IF7HFDO@BX$SDrjayN73Ld>R3x1S*IFD9bFxC^Xqs>@}H#z$?fw0B?ZaaQ?XIbsI*riFD^({$heqVJB%&4 z(mkievkPuHU8C2bL*v;6zaFv0##oFzfI4`L-NIN@kbLf+!G1A)gH8wfl0lv??(miuYnTo^SgV&BhHpW7Ofqe9ppdBlPQ3s=wvj<-J(hkLB z?X|0oRcEk}-_lt33acjNZ^4=_IveD-MOa5!A2Rj>0-vri7|2^S#;wAb7qmw|dyv*1 z);r&_uoClJKf-Q##~5p+$dAEt%jp)4Exj@+ZM}4a|7GGT{*I=j5@F1eeo*Tb-r9PD zJcHru2xioxoA@lFACSMUF-{W3%!1@9+UeP@vLW_5bjF=F#!Q2OJVs-@{|y+^X~%Jc zq5B~1sI)Pr8w}(j8sjZtR2PKK3!DBIgE7v=s5ThLr)rF?!l)FRr9V>74Jk%*SXbxS z7?lPCIr+Q5&z}&+)B^Ji8qcn2zDGNH+89#}26D5;ct99a=yO?z&E(%Ojx)Ao^zSJK z19`i~xI-9|3e5ejhS5#ocEoLrNd^P?zct2GVNC2qSHuh5c7JDKBqkdEkNjUS!m*=f zqnv+Diyi0)-w)0_Bj4xW+f}_kRbt0El7CMKV#j$>@9_o667m>7c1%c*9m}bA#@I35 zh#kn&HQn?SM#TwY2TWPt&Dh5khW?SipfQer9Y)y+Vh4X=8sm4u7(qLTGA}6!{Cb4cyQmjGPu3W} z7Dk~zCl7Ko-LGK`wlN9~2J#2n1HWD+jC}gTU033qeQ@pwduEQzIZju1^^&8XY_R6> zthYbk&o@}ee{@-_750zbC#(p*r^Q0QYsvz$^tKj%kRA^%2x$iFx6?~#%lAJ3Qh zs?trF)caUI?_P1=tsrMzV#mk3=TO}Fs?yCbskiRm!uICPv18-Id+x}0X}TFGjHCHx z&R?I(`Q5&T`JhEN@uTCzXBLpFG{(uoI1D3vezabm=lAswW1fw1*kB-!*BBp6h0&g$ z9Hsd;zKwl`8Q0qw?FIw+e2uYB7;X8!4RFcRo0bw)LH zzNtQykNf>G%*IF<4CH^lr2Jdi)mmZfM_1uFnDS-4KYH01`wa$iLSxhmV;_ugEJRmo z-1gh?31eC&pNsD^7|5?^jJd+t+lj7pzs9awEsVro!>^Hl1taX&-`n^g=N@I;4*4}@ zhx{7(QUBhq>URhvA0I2Z@t(l1uabK2%uiOcKIrG;d(!=SGxg5s*E~QH1T7Hr#o_kJR571!9w1xv1)|1AwT(? z7DIx53F64RjGGx_$OeOf+^8{b62|(#Pt;yG{iF6ccuz}On`#F~U$^nr8$9HnYrM}3 zZ%rqCq{l4u_pF7HSYyN;Bt&>8UfHp_oP4p_qmIZU5dN7wIiI`RX8MohkKR zksn?|Se+iTen`DD#;g@a%tHQ(rkjW`mIr;|+i$VvBQR%MbQ520=pXq%G{)Q4!C0Da zu0Muz5g6Cn7)uQXa(|8Sx-gc|j_~?pI2VCYW@9Wd7|4Yh<5^)WrX70T?Dj_}W(~A4 z78?xYzr7In`U+tz3Vhw~kJ`ZZVlYp(F%}sNW!np{H4;Vu;`uIYF zf!w4qzA214;(Pe)dpH+?vCqb+GZ@HgG{$6M)O4aN-LGLhZ($^A4BtflF^sTZe|O_- z&R3@8B9tBSYvdaL-oUT>NiIGw@aut6@45K3oUiou73QV;^@G$qqhHT8{2IAR)6L1k zm~#TZhB?oooA?|<|H$Jt#s}BJm<7W&$AEFYjWNq$AfK->_6cJqOx{Zz4Yg!_|Ygc5v55dA~u*ul?uq6X+=9*U0z# z_Xd7_uH@pAlwT|T50iRN%um*_N9_CcB<0t;jnF-95;1YY zy~~)EF@_8`7|4wp<0fGY?L=qpxb3&+4;DsZsNti?D`ABF`_7GZoT*InZ|WcNZ{(#iiA-T__sQDmYTbI@goLP z^$9+|$fBcoiO~ltHT^^Pb6B_A7)1sH`3jBE{uLN~PT=P-uCp=v7!2eA z8e_LGdY!<}VU*h#y$l9&SB=pqj2@lXtnTM92H6-r3rH}LbzBv+0Eetw12yCW|=jz`k{{7LGa(a$@^ zh4%oE@6>cNKp4mK?Bh7hB^KSpkBIBGDE&(j!x62{>?`#28cN*m*_!9eb*F`g4fJN?o5**kYkf}z@m z&!1;wwHqwtWK-bhPYA0mV0Aj4do29?R2!?!U?KliV=WR^g8s3M=dhBDbs7CUVK9(i z)EKu5W53oOa#Qb}34Yx2+Jo=^)xt{b9~bsnc7|U_kH7J&o7j>H&E}4{=V1ncjWJBIyy%fdrsi*Fqc|%6W?R> z19G*-=q`+%C-8R|-?uS#8VuymYm8%)VeB}8zr(oE#@JynkT1{}e-*~|6Zkuft8I+! z1_Qab#&}T}+vpEl-VS59jj_#OAa`sH{QOB_Y}NcCyr=KR6c}#292D)H&T8=I{#y+e za*NBVm$`pbSXz`wcQo0ork<9~7XG3DP4{+>Sd5BWFpYX9EAzsE^lyGi-C(#_|k-Wv@6-lY7y zAvG^ob(i&B!@nE+dHDvzzmXScy176Y>(l(3_@Tx@S2r+aeK({2*Bkmro~bc<3u8^1 zfA31|>H7>>-_6KaV=$1vtT8$!!C0N<-@8(K`aVO}cQZ0p8w})9jd4I2E7JTMI|}Pc z)^{^9Ru~NAVvX^8VJz>&R^5EvZ^uX*W4XaV&es@E31ewS|MnU9H~M4#Y-24oSjg}E zR>cx!!#@+&k`wqh_LXmAEHN0!do)I^Fcx>BGu^*oyvO*Nsb3O{4If4RHH@%--?8!M zoKH;iZ^{n&H}ZP_-oU@VAbIVgz`wsN^?7Df$>@SH5{-!Oh`W7HT7wu#ivISict5 zELh=nb=RlWxaG12+ZeM92J#2L3H*DNFlNHg-bt+L-lW#u+*m?;y4e^r4F>W)jqw9v zOb>KsJdfiuT<+lL2aKZ`{d~INtH@2T!hSwy<7&<+rujMT2>Chkul#!hKc6i5Y<1x0 z*Gl~>jd8p>-Opd5-WmP8((rTSpJ+NN6UJ0@6kcBskK-_ZY0*u5s?iU~cWI1)!k7{s z$77VK^zN>`slIs7#+YI-kgGJt$-tRCIa|#yU|eNmOfVS8r)iAmg)v_93oTDqeIjGG=jX7_x3R_>EaZ>= zC-Cz%!m0?5<9^?3zJ8jGQDHEUV;bYf!YJ!RXZko!JO0Tyn$f?@3?D^)8AjN@Z{N6{ z^NMNyP1zy;MsD=)4gC9SlFyC|{JTo(Jt8l>zCJSDzh9%?8U1^N;or#1G~J9B#&C3# z^6xn7J=$7@8v|jgekXU|WYJN4xX};DH5%(&VGX6Pwe|IwSGMNo%WRCH1_SvfjnP9G zLr&o5Fz4GCLktG;H5%iiFTxmkNrrhVLT30?RGOo1f3# z_)E?hru;s5&K5?Fz|ahSEclUk9+0EU~abPCSGXt19F|l7$%H-7~%ZALFVT=;}IJp z-(Vo$qA_|2Ba-It4KhF18TZ;45rcvJC5`dPL>L{pq4#~ewi9ODYGZVa4ew1LU#c-$ zg>gK$)Ae?}9g2&;f62x=Zm^Kg(pawu>lmzX{*KNDg>-hQjd9FiAm?a|UkT$VjPSV_ z{4LBVvN4Vt4CMA-2Y&vLFb)Sg)ARQ7FOc$*s!l6?}Fu)e(Klrgk_j4GJ*%PquH+EH#}>@*n2T{T9dFm~jI&a=9@3Nr@T7&{CG^3le? zzgG%ldndZWmvvoz#==N!H~bp;PcXuMJ!|7{IA>`3bqpQxj8*WgJMs?h{j%hk+tBY) zdB?`LHhN_}sg>cqH!ZQv;3NOq=LfOj>r&>{AT~^swr??F!`AfJu#?;&V{F)B)E{}d zrr#@tv6*(*Vgt-)U}TI9n~gq1zDHvW6~-nQ+Br{UCwgpv@pBtvlfgi~Sz~-w7#m>N zVgrl?HpT{nf&4{{@$oe<*5`(POTo2wEsnyNX=AK67|0_uMvE}kS>MgbSZy$nb2Y|BVXQboY=9x_yBQfP3zPvTCArCJ#u)B*-jIu*xKk}>GJ4tfHS<0Vx$vK0$QqP&_o#*4d=dsbn zk<>iht>>(<$yUa9-PiPb#%CJ3K>n4h3&r?`Fs8!@&!g*8^Jt&(s*N$-U?4xFF~$m` zI?dPWQ}bw_vB}1$HWG(F#T26+$V0TYz9sdTgpY*hE9g`Cp|8(zwzf_(7|5q;jIF|$ z80gcOWBUx%9(;3%g_W3S_#^VMXH0*bx$#e&?=$@|L7#=jTjYcOy}@(tizFAE5cua} zssH%gWSu_VPEc_$r-=VS4S{g zU}TH|6-GZGH)xEn3!@B1IFAm;02n)Lj533Pyi{Y15ynUuy@KEOb?sF1PZ%3*jFAQd z`TH7Uh%iQw8)`NibNeF{2YzN_j4&9;H)@Pig)v-o6}+=fwWB%Qj#?XIxWPcaT4N+X z4`XOBKIy*$>-)LaF2?yAZLFaN3;6<#^;cmHNwvqz8NITJAs+8)8)JyUK<=$EUKGY4 z7~1oxLB9ly;Wow~gMr-fbl@jX3Zn#uzt`lRi}jv!_uAoeYX?VVeK(`elo&kZgvP5E zUXj*EaJ@L4#v*q8ld(M$D^X;`ALN%|x#f7d#4Q`wb7nCucF|X%*oEBa-y6&oz9zY7 zpCEQsN&S1}CL{Veo<8ZZ>ow|~F?RJbVi)og3$LZ?iB|+lVW&zMIKr;}L^}+(%=*EUbBGU!1=;7e}@tBcjVvr_Xhr6CAsR+9N7<0dBhD;|HC=qcWoUV zBYhppRb+iPqrV>>6P~vqKceYqf-u_Aku6t&DeJo#?W*1A2jqJ-#)ZOYgJJV`7_z>b zkmHS(J<-22^e zJiB=1?ncfPru;g14xX|@evQ1{zc+Yq_AQcs?ofW+AZrBQl6r5?39tF>P=38DwNB6= z>luG${5SkMcn*HM;n&E&aCM^?|0#@ZVZTxyo_gxhnf zjj_gHApcckEE2}*PIRWn5OkJgY|i8-iPc6NKzYS?0&}B9 zH}R#0{*k}0F@^|ZiP%%{P8P+`V+f3&*%(U<2J(#><5XcRhGB~#Flud##RdcUYK@T` z2V+s#R%4Xu+G`L;rrQ{c3LO&@1UxzpWp&A9Y{MF;WehMtkH)5^`0a;vp+wOBOQR&KRXE^>ud z?vb&STd9@1GKdS)Y~@xO%Te(w>a*=y!<-Q>0PSMJ34$8gQ zR_+v|T;wdR-2awxCu!wY1^!rMD|eDnE^>QA;PVejxf8W=wV2h#R_;WjT;w;ja_^CH zCurqraq1}Jaz=liV3dozRV(*aDR;b9Zd0I#zu3whZFpz(*F}^E|B6Ovlp`t%_rOr?LjDw7ehCc+1B7=eal*X7Qj6Uc}+mBHUH)i;Z zoi;`vgMqwUV_YeWUY+R5%`be$GZsdom*Jbp_rP#0ey#fW45@cF{94}^>7o3(A+?^O>iz@jZTNNY{(^3XUn5V}bdx2F z!Zg2Ty+)0Ru5Mt?vgjsWXy_k#q{cW{0V5xVwoa=0*!63l@f8~*-(Vp3(-=F25y=Ui zxp3_$+>ZaSF(L*7xr@elMi?CtbDpwG-Yf3=9J=anV{}v)`v(=tBmb>phwAg63*&f1 z+p7rP1*S7p+sFgD*jUF67V;Y!>mFepqdloPs=nr-%6Ibtzkl9i+{x(Y#|#$ouQk?m zVI75~J?HH9kID^v#v3-qQG8kGp11fMSAT<}jW*t4gNJ;t#=B5>?RsB@ z@`f;rSo4U5m1wUB#|Y$GV1?t$W4o{6oTnLIV%S{h3>WfL?u|=c&=!$>7iC*{Qr|?x zeD7ZeeWc2Hu zhJKJ=faTfLY+>vO`ukDFaZf*K{SE6cHr5VQn_O)_@Gj`#+V0-tex`fWy1$o$3qb|r_*4o`Min?qemYp2fim%(IAVz=F*4`}! z1G!XV91zClK)32Qqf_rVRr=KPG5Yn(7FJ@j;XlY{!wSdChTU16_)mheL-`nTH~-#X zp0!bOqfLQ7JtOts5J@H?-`&Xl?wR&Y__^Uz{i%1xd~Ac^yU0hL4E*Wm!dM^pQ)&(r z&c|RDT67a%Z}bE5UX8Ip7;9kI@-Y~HW4$P2Tv%f;kbkQ&W(s3(i_3=tASAy|J z8)LP>Kz>|fd|4PPXh&L35oR>m7%L10@{cq|sW6tqNaaX=f8hImK1Ms%*ci(V2J#$@ zQ7nw5!~y)9xPF)M9JlM|FkJl&ivGyPT57P6uhm$&!dgNM4etr=N}Z+kS#xZRB?bez zOk=!L4r4J4zdfDgMP7UG`D-n##A3r&k^95a{k)&kv^$^kxM|}gjLZ#YEP2o( z`jqF|Msu%M);~Cd=au0<*S5&uBj@=1VD7d?%3K)4iuIy{x=3=h{!aLX>9OK;+MY31 z)EV_hZe7ps#Cy;G3!{d1c=>K5$W5>n#`%HKX1P{=LlE{S#s}?v22!TtkZ*aMRvTlU!9f0%#`uOX=EBgA@Bgi$iHDtg3S`4|u#u#BRkWbPWn}so4(;5Ea&2!UqMqDYeuoAGS;pMx~9>!(bo}(HL(DqZ@f4@A{PakXdj3qC08Qje$Br4Hct zc|8B=_j@FzKl*7uxs6)y$#Ifd1x}LZ4*j`DqGNP8rXjC4+mzF^`^TNN2}Y<*$PaUG ziL~i>w!8LCo5o9Y$G=auJKi+VbD`RzD9I+aHZivF^b zcKCC}V@5lW?=ss_(6n2ge=_?f0V5RGk#F(u4dVLA(ypV~evWvGwCiwoGNR8jkB)Yq zo6&N_8tR=ft{)y9)*&R~qx-Wd?zXE2ao(-`xF zu{XQZeaH|)p6@2sw~=q?V|s|S*I*%U(pXi(+7tL@D!$jJ=9zwbUb8Xw7!2fP8e_aL zc4mk6hg1E+GcGE=E6&q4#!iEQJYQp+FN__!&O$k&-wtdV=HTcu3oEh1hzH0w!E$w< ziu2u@c3;IgPl+X>Z||KB3Hm-1OOU7d_Xg(~Ka%`lyNV^su09!wye&JqnsJu<-SzG5 zv^n)$me=pMQg1z$2-|;#e47zVkT2DA)GCavX|aU)tnv+4M=&Q@bQ9ld^aFB{#&}g2 zTVRCOY}GU5UK?UCF0(PV7!2e*jj>4>o9SyUCy_E$-@19CYD-@mW3$0Pe)oyM&zA{f zljthQb$x~#OBAEP#@J*qkpG}D<_lwk_?{(}(5}ObI~o0ZgTX-FqA_L&V|{kAZ)!c* z_wTB}@1$LC+8FB%2J)jCW1=wDNS_C~Qhh;e();{3HpUu*fqcKlxI`GMr9U{|9qe0$ z;}q?9%*I%4FpzK47-tD%MYg{eFdChCd5Yc+H--#~-fv^AFj&a{sj;$!wOram-^;!O zHXtmO<8jVAjaNH3`b`^exxqs&)p!RkgSS-r$mJ=nu17Zy_G7@8Ev&>+BgP@04a==_ zDn1rB?atzSY+8Jzk3#Vgxto7)kZWy}+-gY>AD@x>FV0TZ>2v5MwAqM{{i%1x__)}J zkH|+J4}AXT!dMjaiSH|Ve1utO(M^1j(GSRbHO2yAER=o-J*Nn9*co)EErpA8CwIVa%f) zw)jXp*4P;H34o&O<~5@Y>Zh319`Ba%a_s z=5T-1*%&1T19_sx_~!^1MVeoP{oL;l#U-Z9u(65^7VZ&~z4#B|gLD4vzM*uo69tc!1pY zsEQ?&lbYK&&+UGNGk~dB61=+un-0Yiqe|b`51J zPF28Zv@s$E1NmN!aiK6evO??0s{EBf`7xL)ZH$gl;dOE3TQ$b%!Z@Cl9HqrZDbuy1 zfV0rXIBqbICus~v7{{{gF$LzgY>Zs4VLraj)7{my*RW09v^YGWNXSjagV>sP{Rr(K=)PY}b3Y>ak;f!w|-@SBH((WdJz zl&6GsN1l>nVI|r|h2sPAE?91^;Ki2bcW>fcVp?oLXQ9}F{G5Mp@J^2#BqvQ|$sU!; zQ)Wp0_h%&&oYVF5lmu-yV#}N4HyLBg{!!sQD&$8s9ZeL*KIwByo&xhXFfzuJeMUbZ z->)$)5yoB^T3?&-BnIO#8)L7*K)y|5oF$As_`8;;q{S2%i)@TN1_ODD#>f%I&aC8f zW;>dKcp~k%-Nx8yFp#g%80{Cs*nzIJxsPf`bC_|Rjj_XEAP>+OyM?hmE7RP^^$Xge zxWtqzY^?1D3;86CwOLr(#J=3QkFhQrW)V|LY^-et3;FQMz~3Jh*4C_KUt7LHyH2t( zwi*oNH#J6`Ft!B#;;sEAQt$Y1;{kg`zWxSB-y>(p=sQ~s9`dg>-gMz@*7~ZmnC!8L zVS6mB#AYLgA+LZHj$tqCmiHT^#V{D57=~Q$-y7sd!zIt&6vVI*QvVG`4BJGTjTrVg z_0AZ>HW)DsdA6pbvxTuf=o48#Q?^^I`3%e-S#%R$Z}bE5wHhN=7;9jdzF!q)%&{@n z7!2exjq%P!Fjk)+hS83%+8C=12J%3Su}2syP7uRjjIuFS7!2f-HO8-nu^e65Vi=6U zHpX&;f&9UWz}Hs^W2y9c`tKiN&-H3A9|m@yp6x$5ofSOewbWoC|IuaD%X-0m!dfCM zH-^c&f;WeZc?@Eg$Nd}QxZ&>sYl*=^{;kHEDXhie80IsY0>&S0jKu~6`EiZ$WnnDp zTz5)e?wYW#!{1t1iA6?SK>i^tR~KGh^z!a+a;`HKQ-bIF(OoE}AkXvf4W1`ETk`CM zDyFFZ=qL5B%Su)-NAdHbg|s>KJek)I_0-#lDZ%sobw*4<{+gzvF2bl09l3c?oW9rA zxLn=9RQe*$$og)^KCdzQ19_CjdT%(adHB6P=km&S$@{1=V!Lt)Ge{6oeQDN}JYKmU-iE+b>6!9adNW6T!D zbmqX?c;YiOKi_X-Og9+F>ovx;!l>>hJPd9py}omVN419JC!r+ zO0Cbj{s6PaqMP^>L;uJVG{%P)!k7d@?_kEJ2&)2}rS^XOzSn$P+UM996$S(ORgH0%Fv@6;HWvwW7L4OwjHq4vsy}juUc4%k%q4#KLktn^L|eA?s=SzH2qvyp|ixu_j7M|$(cuB z|LS?s=G|Udw`gVfXMjf-eB?WQelWl2BV`T`VnvbYU?{l&diHaH;pokX6%Ww%jIm;< zQGev?G(G1DW5@|&17fzApia0z<(bVMjzS{ zo?oc<3Hdny%I#47rE+GnF%&Y4L}$L-7asX6`*AV|;!PD|$*jBjK?!mha_tfe+kcsb@T5 z=mPl*t}b>tPVeaPVK6!z|J@|>d0xVsD^7F&t)7=qpYyzgvaiAJ?|-e5?|XB8_)O=n ztYZ0&xyO}!cePU*)HCR_Yo(rYP3pM;&J#EI@wB5noO>bnH}sjE)x0~u6MZJoNhoha zKFz;3$lIP3{T_E@y;|kw|08Wb<|GsPIltrOX|eco)H`D=K2{#?OXPnn4}5>MFpfI@ zyv&c2#RH>F-ZT3!Pf71X|GAm?QR<{WQ-S;!7{#gQHhw6K!!W|W-ypxIr!zieEHZpQ zU>r6W$S-J&*}`at5st+TG9S|!`)!PNgMqwWV_YkYHYYhvkHzSQ7}FqUbv({XHb$Gl zK>mrwC=*5kdk^PQ>Nz&A{20t%+87Cgfqa+77$}VW(jP&blrmL2$k{y3gEq!~gMnP7 zF-{i7KH8zhNmoxn`NEuMW9%~+$m2D}2SZ`(?L=3^Nv{pUxZc7@>^1xv`Ft4e{i*eq z?B?C4aLzRqCxhqdDLdrX$VL9WfnPr_`OY3ES)B5Rm!#f1on(pb*L!Gd>UZe9x?e=S z4ZjYar{8J#HL|1W=9j|Qk>=M8G9UBGkHM7uFQd=xF!Ybywk+`L2ZgcS@%K_wu_Nr) z(k>fgyTL$yO=HXx#`M{=lJ&q ze*LQCKkEa(-X-;3gJ0|GsOxE~;n!DC?~H!E#_((8lQi9I7RKrm_%+M{7Tv^G8~R6n z|7U?;KO&43PO`7I?x=i0AFp9_wJ}y04CJ>o#=XK=?u6D)W0dKRK|zcgItzU72^(v%!9u=WV-*Q&5jl>&#^y0J|9-&6SY$AeuhSTL!dMvASfq!pse&i35!_)=-{nmNNHPpL~_8C5X z6?M(%(=~=qBcG<}<9R7}o?EW6e{GB&ZqY$}o}p*tj)ww2ep1SvtCg$y?^(8T=NjcA zAJWSGsgyg%37t0+otVCxV`I!Q7|6Rc#@)i0rPW>Y*Z0V$GRA~iM!Cqp*2wsI?ta*?ms%IzlQPSwh-4g9&*R_;`zT;!{@a+Bv$?i8(DEyusb zQf^|3;p@nkP;MwrbZ_2$I_F^1;siDwiWA6#{Ck5q@rvX`lY%($n$&fo6MjB#674f$ z#^uyIW6YRn#0=yDO&?DSV*>gJpEC>R_b^K=x`|IPbdG#@X%Igi7RGoO+PpnRnfSSS zMh_jbM$7r%AU~!tz9fv1v?IKRs@{d*=}FqP)y5cUFpw8%j7xm=7I zK@Y6=W|ueb_R9K;R)+9nj&pIW#4V$lYv*0))K~Fa-UW`+Gahl)CHU?jS$VE+&$~O~{v)5(+_`{{K-*)us=aiR5_^WZUXO7BtCTHiA z-&Mk&$j@aVcP}q3;jhw(%p4_hPh|eo_YQLJ^3uNiRXSNSn|rNTCgnHt{E__M;lE7f zOL?~P)%RNYWz;7|`K)2~j8Q&o+KM61I>~3FbDU^pf%E?7BhKWCBX{q~nNfXd34gg= zvlk8IZw0)*v~M+Sdx1ZZSJ9r;wCx4{)b}FOwiozQ-@{)`+g{+W#>tu4{LhZbUfY_n zS!rX4-}Qf)-~E4?-}8T&-}`@=U;O``Uth?&KqTw+vh42dzw6~p{-j&a4?nIe`tait z=XJ?-KS(&y<&M++AT*7zL%ai@! z$Th0$l_k*@%J#1LJJ-0eD{CF)9;yDp1<@AD^}c^s%5ckXsJ`v8XwH+tcL!4Ck9J-j z(J$);GnZfseNHMm_cOPCJz2Oh@eg5x##+94< zWtBhUx1)GS^ag$>!K>#sjZr7<=-w~-*r~zyTT%@8N2;GaJGx+Gz<4Uf@XA+pWDFm3 zdT{@Gt$g+U4Sl06y@T&p2j$mSUwwXbf!4leZfE+wk-ckFX}>JS z(~7LptX)~9*#*?CkCTjarGCAfq}cGu*uTrkaydPmWW}9TAM*aYb#HfcERFXdpJCjI zRg5Z)_mTV9TW})nJ3i@{{5R^*Oub?iPN~#wV5)Ahit^HZoz(CCf^hvLPl=Hm73Vuo zMVOORSDhD?vY%s2YK}~QM8+SzZt9xm;l?#Jom^9*u92~?FXKMt5eF!bJypFtm+}43 zXD-97$27*$VyFD$h;!#7)12!caf+v%T}+uVblBWgo@uT9Nu0B6&%XNM(lX-WJJdUd zj^v(|yay?rRg~(}l&(d0g^u(|qv-F=MQ-1cBl1~oU7gvr*i=n- zXSO4Zp3dy~IrL2*=i@5*-Syf&(TmR^uj^C(F=qI&#ESUP+D4ZbF3-KbTl5^R4_{Xj z;(FH=sq0kETxz?%Se*&KEE?k(?7rovM^Aa_*wUin$Q#XtP9uLG$Esc1tP$N7*78|7 zpOu%cH|+EM3P+7E=X4hx_ws#6=FiWb{?Ss}{(cPoj&;f#2mbzn-S<8D*P3d$OLnv_1shKI8P^t0dag^K9ldn=Onjl;jfjy0~52NIcf|l;4|_4 z{B`03x18im9zUb%(hetk_AQiKfDfL^bqAO~w#b}iVpeIZnjb~hB~5b0pF0|)Rj{EPmFmm#orw%othXL4Bt~0r9 ziqm+Ix#aw8=Mwroy4A^Qf0TQgBYCiL;g)ag&ogZcoUG{7K_4!awzf^F+f`*T!0I3uuCY%E59C9t!W@z@%%HAak0Fz;%`pIeHs!68m#aZi2&q4x6VxWUJk zu9AK6Cg!1xS6Q5$hz+T2%qAJ+pyHzDo;m6@~kK+6DQDSNY zem?vh;UmYyw&=SXDNk}1i4pYg5vS^MH=fjW5@Q+LS{V268x?QAtM#qK+XQ1>3*%es z@Y=>TMtqR*^(uTqA78!kOY{&QRVj|XJBT*cXWgmJ^GI8% zyK3j4PTC1O)J|ltokP;v8II?n*lmm}G)aF2+uC+WX?KjB!ck(8+$?Ya3(4ox|h`st(&+y}Q?o-RHDV>*V?b*RQ_NxkO@! zeqVe9b}B5D3*@w~#HZY{WZchbUqxAr5%o@Ox9CsNt=vycDOF>{2;#fgKyzwLN!2Ar zoOH{OydbANi?Pfr<6g>$5hEo};EypqC`-!jth`njk2gz>klX%TDn}?Nt~z@fb(J_H zG0s7b5d&gdol=i=i?Ftqm;URFeu|Nm=jwX^`rex3ygv5l`J-+ zo>$c6fz<@Q5AsXy`Oo^0pAY;v$l@}p5_ zVyDJ&g{XA^;>5+vx|u@BF9dLlZw%Q8F*~z zs7NYCQ@-*!82u?b04AP5U?N^n} ztI=C%JY*c&Mja*JQez?GhdCCuFuvyKVZ}X(lX&%M?BL-~sqgwv zQLl@s*Q$Th4!-j#>vhY&P%kfD$(m(?Kizh{yv>_$efI}JZYSga6`#0sYPH@}=gtT2 zFP1U!v;LSEn~L335_=~)jV0KIBiih|L{f%o&8;wULJn#`X@5 zXFh`cN#6S*If9c#Je@!snNZspCvO&;YZ*`OF}}7@@|zZ^(EAF;1<^rEO7AO(b1jtLa@Z*?K237W;nB$hn1hq2 zF&Acj(=+--hAX}OJGMYcE5L-*xSHUez5ESHuVeEHCfBN>mYTxl5yrrez)M@VRC@1tXE>x zN9GJOh>tUfkLAQn=`)#|ey^Ur+|+n>j?|5N80&AJ#<}=@{Pl$wnuC-Da}aM1AhsHc zxyUzBt{-!0Q(DZ$)H!mcH z6f(9Hmh&0w)Wi@kpT3!Om`}Q$?Z=L0<_EHNRLneE%^Oudo!uUzeZ=wHepBb12D4v)We@2b9d3kI2QIta32ECm(XZmt2JJeK~bM^>M$K{4-0< zYn$nF*N@$LiJyez)SN?f(qD9vPnEjS(k5{tjQ~ z_qTqXnj__<`X{vxs(-KgKlQ!0_8IzK`ro@hwGJBkUhKjB-e1quzgPC;mERd(>?id- z=Mhx@gzmr4Z)acZfBqTH)6F~!kaitsqof?k<0YRPn9Ao$dXw9piA|JCZkM<2CeJ5A z4DkWR5qz;9V@4%;JZou_ua7tvv6njger!iRlid3$;+5xzizrLw_GdCDf*W_Zo;6mP zTbR1=eIvzXjWN^)^ZH80tr?Ul^9E(RM&Fn^sO+7(jmvk$UfY4Vi~5!0mI zF>>I6j3Y0d>%6}IA?N)W$TIgTW-r5W21WbadDDkgk)k)H-QK+BYTDj>9KT~uR)M}p zp>G-2$MJdmI69<0wdf%WA1(9hX7pPndXson#{X3t4V|#&r}Qbhm21oSe_uW;L&wdj z`~D?e8#>Y3afY;`BfT9xr5zpRr3vyLSud}GCu`mF`M<8;NSs z@%oxF^m~LqkT@>uA~NSHL4W!o@ zb7MJ!fd1}D`H!rLNS@`LZ&3P(q++%u1~1m?YsTO|WLVF-|1+JBzs||dQwid6wTj0P zwVqW%Y^dn!Tq6A^m@EnLh-v5TT*S%uTyb3(w>D)SACX!k|PCCdB#cB zXwt4#G1|ZOh(n&*mprxeYsIJiYa5)$`bXtFQRml6?AESrveiN2w0~{A^XwIw>#JhE ze{F+Pz{jeU@-JOq-uz8+j6%&G7If18 z{(cT~1${p!Hi_JA3V8-|xYlY%a{paz#L6<}4%4vHgZQ)Lt@3~2^N#Y;`K+^FMGP&A zvIfMzSvOF7Fs}gAc?b1?=JEuX|D$G6$s|t<>WH^=O0b=}zLP+FOz}cs^f|(xuD+MVIn_ z+3Pweb5rIZvVWC8ZxTxmpgV~VYtipXGM;3eG_&b=hpc}oeV&CrW0a}S58|{vwMU?I zJfHbSi{$$H9s#nqcK$WmEqet1T!D6{<_i9MgJg~*Yhh}SLG*>}-G6oJe(4`if4bh9 zONf2moS=mHIWe)7*mz(hwt=lyEkN%j?0fk+qGJJF#EcZ*cd^ z)APxM=n!2tF^{O=ua*2*_I6}`AvtuMI;b%|rNdYI9$Px!+vkCsCHpMYAx(#j_aPl3 zdpaoebV!}m8rPssbXa8Q5ZSx`IA;U2eHvwht`6PUum4+LLkN9t86WaR$Ei7oIX+;& z{#gkb;?(-iwj8zJd+1ze@(0`UUjO+=WouVtJ5hC}Xup$;CCHI_t9_4M3!00FTkIPU z&)xnX63xQD`_>Lft&QfXxms)@dUf|Nb}guK@0rgST9@TKbpt*%K=zJv${TqPFYzsx z_>#BoBl4p+hKLv={B zV;lJRg66YTou8x5lGm~Cmt5IH_Wg?R{p@vHiqO{t@k7=+soRZQBmOUOcQHPz%BXVp zdnAWcWng2qr%4%ks*H7(GGvXTjWw*cs;sE&UCTO*uv&>DG2%)Kaixs4`&WpkVym)W z`S?T>Np z;=b-HmVK}-Cv;BdN7%2F)3FD?tjjBHUC7@o{BI6*Y-e3<1)r~GJeZKxD9_TxHqe*V zS&gj=xn>d9^qJq-x|wUXaLqif5#PYRWq$lT>&>kbxUSpX8{g>ZESK0no!GyS*#Gwm z&Zil5IgqML+aAURVt0P2lYAN*4Rm|jx;XdzH}AUgIMObUA$!`6>W87xH;SVaLT z-;wmj9f^qv>O}li`?hgxM+L+OX=+sMyqiCZCCIzMDfySdg;XY1AZiiW;U-)Q4+ zjxAOF+U!JEseUbBoi%5j^sCpW>&Uxg-&y+f-rl3uE-Wrzd;j3kYuidrTHD&EaP6TX zUDw{rxYs(9{+xs!r_i69SdVF^e)Ok0_g#kmS)XsAuJ=;c$61SP9mF$lFc)I09n5X| z;#=iCWSr<5T_Sp5?3CCRWBom~hwVSN?~M=s9(Eb$|2Y$)#s#rU$`)PV-wjUlu;_5? zS3WyXP2X4Ym+L&$#<)dHPsVmI-yEvO{015G?|{836<=k&7C)u#etfO>&PIE6P-9Fn zV+?grXC%B#?lAwNsseC>SX@%ex#d< z?_JKwn*2fJlu&$+4asJWoZr2ir`BZ}USb|lCiXw+)+OBU-F&pz zm*xKa_LbN>>$MF9v3|$}?ZuwV`mM+-S?4>%_vgeeMDC*2{ggaysFGLGKKJ_p?)S)V zbN%OIeUVR6d3rnY%xQy>3)MU)lOEjbq?|%mZ%>t%=FHBlH`a%fiG@xh>)J{8-ht}g z=cx0T;_}k|vz!rQ`j?k3$Z|$-RzEq0F>e%O-bdn-_(v6E<~Aq!4(<8TG|@-b_86?OGS)F3kF6b5dhblVYDImF+VJg2A25k0~opB2tH?Bc+5DK}T`r@Wl& zU3b2^Zk2YOuqWg&W>Via*1M#?`<~`Z9!1X0`LbjMIk(u?RT3W;QDy?asB;=y(Zv(Q z(lxAut!5pph2JY_ZYzf=XPffZ{Rh`477_0`166g3^Hg0o=cy*xS#n1vAQhUrHJ??O!|hriuD)bG;z=y zFVvikIH>QVU(NZM7T7B9rL5H4A&AT9C$!IiTqgI>jvVH8(zcv(weRlVlR%G=Gu^Q{ zo3T{n3%N&)$JE;$hf=v+%BI_>cZ@p6se2psZjQ{`*n(bK;Yk}4=ylXT!|_M%ImkVS zxF^9qa?ZGwxGsBs%{=!cxmY~XW!-S&KC!D+-1jK=triwGCAPKJTdVTwB=%b6#uT6J4FxUt%t|pS82K_}o_3JNteSTc$jTm0rvkcSCvU0d+RF^H}S}RN{Lmrh4Ug z-!Cw}S3Z=Q)5k7xCSM8nD!8Ag9am%L@8CbzVC(PhbCP4R*;f4M3(P+cM?SNzl5gWD9p^c-%Q;)nakDeKdZ4Vg7BEhAL2oCK`*bCjJ$c>sWXIAx+Wdr^ zx7K2mSC@m>!lAvK0ml~J!Is|LhtJSwMOoN0x{dLDobMBSFM6Ixo7A)E#LM_X#y_t0 zeVhB^+&_+M65LloZc-~}9K~+vw{yhD=HcJuy6U-cW&4*$KYzA159B_TD{+r!`~G=9 z%8+@WpDQ6Rx*vP4<8wLdH!s}>66CTne^&R@V$aCm=N{I5cwV7IopF`DKzXLgofD?c z>|ww9co}>jS@&KZXXzLZK8-$i(00ANj&EawtdYNVm-G5-XJM0FSTkon({YzGTgF4r z{uA`&H_mh(6dg;ycztw`Iv=9WZ;QXsPlwjC=UIteOqY3BS8U*9Y=F59d)-b~))l#b zn^X0S>}7j>e+d0eq+a@G`-$(19A3p;-EW!q#<2$+UbI-BfKA-c~ z)K%6^<+CE}Q1&wh^Ig&1&g?AyJp;SG1)FxqR@VNq3e~>Q3~c`vY=0)UFLSb6kyr4Y zuxDcX(qHYcWh{G}KX)8sza^`yTR-$7YdE4G`F<5S$LIT&m)^n|#~A)0gbeDMTmI*9Gf-bBgm|F@30FHuf!Jhpq={j~~-h-|PJ+-%A`n$oO+;J^nMDzM<@Q zJzmP!uAz>~kI;LZ>k?cieR((iqL~)3D;4Hafbj5~F#)k6Ny$Pd=v*&8O##UQkcsYW{Ze^UeaV38d`;q5dyn94G zQGJ_PtFJwS{eV>LJbtE|H}u6n)mkKNRPhr#^WvvB4{E{wLh%!Mr1UAeQ1O#?r1dE} z3dK+4^SLLK4-iLnTW&?)k5~04SIljn#ya=7KbM!v8Jw{x-FBAKUd(ti2E9Ml!+ClP zabcYFbr0vM{md7p5o7M<%*>0YI!`a?S)N?L|1;(P`9ksT9&(UiKo>{SWFl*_uhMwIuYi&-??6rAkM%MN%ray|E zWS;ah@j=E?%4BU|c=T($_p4kzuQDWhzw{$xXJ`4}@!>o(BWw0X{`V^98Cs48Ir4ta zsUG6|CTAoX`Zi}pSCK#J_cD)D&5Zp+dFg-?*qs|cys=^u?`oX<21H15Bdf5UrT$}(O$;C`kAp|YW#~4 zXAWUs2g&!|Ug$KkX4W8U7zJWuJDsGvwsmPVNBUxs>(3G!@WV#E4_dL8T>3z4E1N!* zF)ktb7yTe>B(3yqe5d5Lg2-ya**S8B(ef#g)#@y8XpVl@WCw}#14OrsA z4~b!auP9{CAUCvU@EOKUS?gbWDS621tmL7{HKk>zF$d+D)e7Q7VyYwi7_0}#K8CFM zMApqco&IXq_Ci?ik+ZMfnh@&>J^eKuZ7oRhc3CUx%J+weV*_GY(L=3mG$4VCNI*(`qlK4Ug_Q1H0X!`9JbB zc|VJsXWziPkk^k&wp7=twGP%Qln={%?|NgbJB5B}Ghja2ydC{%Hn*Poh|f!XLu$Qd8wErF;~@ZyIVhrX?YTpklix!*8MS6hUms?pR9#Q43?bJvqx{-X=_K%j2#Ka zkl1E^Z(z%)DGuOI zl7r#|%AQ*olm8y+mbRBSIAzZZ@yoV8*~zwTUsPwfW!*b=6dOG@Dw#N1=dU$=2Hi5= zJte=B89SDhj313O_MlH&w|}v8tgH**XX3Lh_+2ac!a?@m#An;4lqZ|llqcVy4Q}4o zCt8Tk-5l$@XpHjY_dVqrwU@~CdO1?Ycw&sq(H~W71e}!++hELIK-^eB+*r}ujTauf zjXXf?NXnCXbh$f!`8lzy*H3f0EE3<5{gwM=KX4oSf#^ox`7i=aLH$@KP^$)R_1CTYIl__Blx)fbaZ2|37^8=VYI= z_gc^Mtmn3#^{i)cPVd1T#Hvck!w~(q;^*87eQ);bE7k^ie-pK?B3oVf(_p_D{BLz( z_$S&hK2O7iq1|U4X%-yvZ&~NK#Ke5PwYmHvC!Bj`AiM(qU2#k^A3p-$%8!P=wvD^h z=Mm@)y)?g3?s|^r@7O(`acD}s!1$|X&5`>LSerL(NiL9Gr^;Jr^kRte{koucuXH-` z!u`nB27Ef!DppOwm)pwRB#Q1{V|;k6UrT4_wGQ>hAh~{R_41-%LNWSUc*Vx^70;HQ z);v%?MFD*tfM=3=ns?-HD$ZWya~w9M z1m9C}{%YcY@oO^l!CdfOA56p;59tEM@BQ|8K4X*Ajl6600q^wD2egr<54gATydD}G z-Ppu41NmyN46G0C_ujYq;0a*$`)ZGgAHmP$4M8LSyrK(wwpTHR@P3qW)Y!y(a! ze=ts=4ccN1llC= z_e+L`>g#E<*85!Vea79--bH~#2km##ei!d`%nT$tIs2$*4pr6mX zAS*nnC_5ZqRGuiIPx&|76rZBs7;TIbztErhmOg10Ki$Z>(2dx`Cy+78Fu$*19vS63 z?0}g|KEocM4OO2Cb@HBMcL(>i+-n_y|F3I4c^ULh>L}hdI*PVE9c6H7)O?VB(sUH} zR!4mwx`>Z#f6`Ox)AQf*}co_^~HIvbqQ=GWjRnq5fSR$ohZTY4NBGdOy*(}rYM zW0ivriF0prHZC=|kn@2~@~|iQ9oH8F1f()G;OY+O@jmDsn}*3 z4#1HX+vNTTc^q0-k&ocQk`uG5rz-M2nTka%ZJkK{tMPfEpcpQT;x z8{LYZPn?dut;C&5!1a9mi9*$Bb>?K}In$oOH@O_0Y2kbK4D{^SlrDISdpp-Qxp*IYl++Zs1;VbaxCKx4zIArzdM$)wz1F`Vrm>R-HR{9l4g& z87nNx{;$}WU{ATT@aJotcmFMt?dJ`U1rL`re9(y>j`(&ATTDMEB(@oV~^Tt~MX!9j&kV+m)A zXdl{t@|*uX1B=-o2;B6e{ek0nPVL~I_icxqq;hhSp3G<`IYu6ymRCg6Z~OSFCQON z9}#yS(^|dfxb^v*k>5HulP3o3H{$MX5*?sxPv(0r-m)v~HNuZKyv4evU}P+|{DeG@ zAi6H|z5e=hzw_kRqm!RE4&0p5A>Yr?A46Cl_3Muawlj*|XdnmAg)y~9E2w>9lTTs( z^}{~4a%nddg=y66d$oN-RSBH_gxpqV)xyiAaU1iL!6(~e5Bnqv@^WFnl&KB3VxH!~;Zy|a|G&XmZgsQdfmH~5% zc+5WY!MJ{(>9daN(Z|n6bA5dDZJ+M;>u+LJ{qoZ`>d?7*Q2OTR^#t7Kj$Kc{eNJPS zW$JOJ$(e=U=!Fd1=J|`#o8x>q^=FU5(En)l0FwJl(be0OCpg;aiQr?ZhMM$u#Mp>M zKM!C(llnW`wf*jQ!AHq)>@oJj``*&r=9J5ywe{fM`CdwvWB3Dc?2dfej;Rf8FZsqK zss9HU4}60y@F;t5y!|u%>3@%g?sFQCoHRR;)c^kH%-+jX{WaB{8HZj|O_`LR=gMA+ z=M?)Ic#PV7I6t4EzubBa1Mfd;$9IV1L;RYtkdBd0EdL+|O(TWCg@4PwmgZXJf62Gz z(tZogJ5=k^%|rEItFS(s{Vj_)6ywKOM;V70<6y?od+uoCxWb21<~aK6HC$!*FU=q7 z3E-E>h84k6-)oV7z3Asrd@FplRn=Rs=m`{5pIaPUa4vJAo~Q8Hq9cMmMfh#l$q>GO z&*UO}!x;@}J`=DS-|U+%Ts;vVFIoAv`&EaS`qruXqj~sNX77HL^Tva$7X~>0xY#*2 zbeXqrKQdc+3D{|PAq&4f7av;neRI%27Ao@0Or1tvS82e zEG&G#o4*A|G&^vfU@98F?Pts_&I6{Oe@-wluZvCdU>e>(Oj#bEY5(HPSBcO2eJBs^ zOqwS3vi%+VAltC|A6;Erjx0!@zER=s$DDE#`!Orh_hU}<$-v^TF&}*i{Gf4`&H`^Z zJ2cN%!-D;l{nlQng=SR+&a}>#2Ik+VcxK^OnFG&6k2TT9R$zV7VV^)wQ|t-uN0CqF zus0t3>qa5_P0;L#AZwpl-IH&CpLX#4R_&p1y0J}j#=Tqrl5&OSH-PI7^qBX2e5T?u z*}Et3`vV`WxI2gTqfe@xobCqRtKoaixBpJ>nZ2M>L$7>{m-MYG_~M`)ul)kmxPc!WM0>Ekme*T-whx4x1-9-@!>R39Pr z@eqB~(+9fxWbk-ddBHR2V-tPcn(AYz`q)Gtx6;R%C)dYs=wn;CbLrflGuG%9J06wv z5ksF4D?H(G*eLkF;9UBk+D2E{wy#v%=!cVO`#!;qT|b&Uy~;D4pLH%3Uys|o;%8ce zt!F<@WIZ@lT6ji;#*3cop=TxZq{e!5uCE4YlK;H8R)x#IN8`W6gMjT>p2@p39kywL zZ8fmXO~KYP3fNWy+guN}l_v*V`5<6h!!r{vPKWI^?GtGMws|SoUKVWgfUV`Dq1)Mm zfbABZx#EI!*ft5aW?;J}1=}Nn?HXWf{%Gj-CibggGP&S4J3VKT^M&vs%k@x0)6W!Ny+1!N6wYmUo{*Tw}CzX%&8v zIh#SXqo_}*y--#7$kq7BHTcVZJ8FKzmR94p)ZkD1f0K^0ZBISb`N?v8YucV>+YYeS z@lmvW4sEYHB^~Z!eCv~Gdm!H+z*q#y`;RVidL~+aUKH#p$>8UfkttciPj2l;hS{e- zc%LMWo@mIU-#VwK!1h}g?8!~_yGMS|vh;rMKG}Ysq2F!V!&2+?93-d3=#JW8PnZ67 zb%*JJjuY&S4Rv8!vqh8k`smD!W0Z2jsS)WJs6(oqYDOvA;*Iu>qKE-E@$cRXTiX{ z%+TTYgNGr0t2-7^K2K;Yrlw%{wP2X)!N5EykGgZ%tPw~?(?sbxAhwPQC}xt zQP2DDyE#kh5II~2*x#)7gUm6t-*YYTOTDlAL)@sLwkEFn zKtWwG_s;=mLABz-1!lc%H}`c>_J3=?Df(tIHf#zuPO&HD3Mz-P9i7ktT#Dx@uS4gV z*!K#lA5kqm6(}%uB$o63?dJWFys!P$r}F*?^RC|W>%3GPQL)0*IVmR9;4*f7Cif-;Xo>v*s~C|AK9>{r;AItH$)-uaOP2o=3e3@+HQdA-wq;oW?o9 z(ps+RPWJOb>Vs$E<-Yp~Q@6Vqm_>u>q2t1Psli}~E$KS}qI@anc;dSA|*!NU(X^z?-JO*zc9yJ~wdhcj>==T%F zV=cO+KRj4h*t{a5b-SGIa>k`*i15hi-i{2*r=-sWxEOw~WDRRO_$ihj#Se%P*H=7q zdFMOL4W>SWdxpqq@|m&8CRRvnKTeFl(pv}20@q5`0gGsd900R6sBzSHw2_2Sc^odh zc1^vII3{(fB9=*t6c-|6z2 z$tMmzme$4&(nsUcs-+vb_Bq*g!Cv?L)VGLhO74?q%9W+Gtc`}zL&n2udUB#COMZ%{3Ah+fsA&mQpR61`;8C$L|4A(y4YGosBO_>Rkd*CE=l zpL`*g{cZuU34W5KPK(P=_TjJqT-j$I67$Wysbo`jpm zAX9Fvo>>S#C=bQrFa0tQ?u~xjv9*5Ok0nFTp#LO4rY0=%`bqkEhV@>1W?A)7_(XOU zn2bLnonOu0S}!f;?_6>cw>ss2?I0#l#rJvK@8iCc`wdRs^SNd{(8eNMJue%fv2tyN z&TpXx7%}7`$GO{Y4?4yM6Kk-k?f4WL^Ef!mcR5e=M3yFkPa(9c;XW_NY1%YAuW1A8 zeqHdbYTsOIejn034mcxYSqnQQuPN)6h3_`vEwcm5H__GyhVTXooo0Y%Y05#*p9{xaiK zHGz2`ya=w#kqzO{3(cysSZ{$YJNWKtzI%qbQUtj$>&e8N*^TYy{ru*_Fuo5A zS}!{m9o7Itkz#Hq34{DV|C}w!17jUik5aJ#n>*BXgO3-+rsoc6AF$*5XXmH8&^7-2 zK+YLHx05e7xi+F z$af*eV%GWBx^&^5d=ZZhX1#w$mRq0m^Qym`lUARTb*@BoJu<8!okci&rnAo}eOxEq$S3nJ0#`6b5*t>V1Z=Zi1 zdyp!SA$}8m{*gA__T1doWzbgrm1H@OyX|QGpJzt|AH9yY?BDW(RRcgZAEfW}sX4ph zA8Pq3cA@XyhX(F%#758oF?{#PtxlrsbIu#ji3-LFAU&ScKxy`xx>_8~`ZB}acAdsM+~e{ai+)ZD2%1RmA2qrGj+t>-9T ztR1?nAfMrS@JO~Xk2+3u#Hcv4H*e|WrP@PXO^!rb-GIUuSywdUsm zVLIUj)*TXx|3q#^-!?gkm5lA3@Dz1tw(Nq}rVz^_o@Z*IKF|Htigg8snml*ACp-rI z+aQL>D3Kvg) z_eEge@6D@z32t%XW#qh%=~~HH)&jTL7nR@I#U9D!_~X&qAT>NSpNBtg0zb{C48MPY zeYoO5;$j8RNH+B*@wwu0?%C7Ke^0ZtuMq8Ld$ga|m-Zcv>@D)=m~ejw@Ua(z^G7cZ zx%yglXmd?GQ95TCdqT6JZ2%g(XR&3se)XsCHOHCL)WVA~_ z)c6Qi%`YvVem3+JcxbPOihtk6Z%}MBj_(nvM|aM`w#-E@5M%ff z^Sfsk*L2`zU%JUCKt-+i1oCmdgZZs(3u!Yq*1ia>AttCch17a^OL%F zCA6}2aJB#LU!Zpk`H(DiATLRsi#*70?W{%b!oODUUI4wd{vzI~G4xKS^(oLuZFSb7 zcj0H{#HyVKJ^lN8;M`#JumAlNjeGL@e_wj|!Q<7#H^Yl%;0E8zCRT{%`SA2Gcv?OW zKJUYI>3+^Bp1=D>cD}Lacl`i+o;@Vpo=;*A<@o{PC4ofyH1=J`hm>|;x8q~E9}`G? zfKL~Bl72>0;{*Cd#OAbNvGo6Lj~y5cgcA zy{MWytd%eDB;zu=JhA#sPhWB$;r>_Dj*iL>Jj<1#FTV>-4IQ54U7x=EJKpKw{Z8JW z&EGpD|MYG9w7*@+Z*iV!=h-+owS!wb_QmSR7I>i=*uDo$PcdgQI(tW7IQ~{}Tt*u^ z(&6}{@{~qEqbJar{7vkC)lP73QCypL7ol@E;jettwvSFyE@LL1pH=(Fv~m{xc%m1Q z?THuV};rPF={v@?t zh6NIqu4UMUa&n$U%lX7d+VPbZP?xad1t+nPSP4E(qGmiii>_Sb?SmH{Ip7t6x1=M= zbDhWI!+0N9+wlu)p-sFSnZG8OSnlLD#U67K+eYCBdwHF2=i$@wTkNr*(Y+6z4<7Jn z`~}TFv(xfAU&W3@;8Xj&yH7nMud`e25ZFl#fi7gE)5&Y<%nu}Zx&z-?xzvKi z2fjK$&D1U@krf!$6uUVc*MAqT>*)`^3eRu910cJOcmGcQKuHN(Q=m=_W z?w&}l>N6kQes?akjCQG=T!ZU!lfz0K7mF)>MDxoN%Ut+SL zd?-%cx;(s-3!W|D+33lG_6Q*R?MM2`!)y2xM)tku+gJ7@ z5BvJcL)3dueGFC}e(@dpg4VIQyd%28Gvw4IRPW8o!!`LC^1yRO9(bpZJkVB}JaB(M zeYC@4gO!JsJbyHKSdTo&Hd;Hlf%^^IYYc6T@9Xg$u0pP^l)Pg9pL>F^37D&lR5H#=P}OUW_(|8^?ctwR@W(KFU|Mm{v5_? zE%etsZ4xw(;7dhMbGFzqlAWz)&CTd4*~y2{RoF><(L^5iovT%U1etnMIx4RzRuBK7 zqpaPWEV+3IzN~lUrohutacX8{+RS3{KeB3{kFQSG59r^f=$mRM-DZyV-cuh&?|(a3 zTFu(D;+WujS`>e%nD3&q1Emp-*chOhM}IW7yUMQenzj8$d%4-W{;M1{%cNRox@&|Thr@?4mv*G+gHEtm8^(<-t+P1e(3j_OTPx6&#{B|tgg5cy2y@Y$!^l8^h6&WK_Ai) z`Or2;HdB2v=9&ZD37zDlv_tbo?9A=hFZR(Uax-k{d~B)gsOGsj*irlbQty4^e}zw_kW%_zaQ-|A7?D4 zI&GbCH%H}P7ol(Rd43rBX>9tsMrWK__>7^6=V!b7_pbVk=KtyY_e#)@71_)avAw zrrsTJ#iqie_#~R+TvtRKa31t(b`p1AP!Yc8)8*kGeQtVq)r?^H^_io?ho+qtezolM z@WBhu2;U9t2cKkK*20`@bujS@;JYWv`Wk0!Xr4SP5KMe27x+d|zkIcmINZXs6`V21 zv+_r;f33H9I%~QSbP@YKlk-&@XS@;`#V&-V$fb0wjqjeLdAw%}cjv%Q6&^p$?8{Fb z@K{=Wm-|!UC#yRkEpjEz1O zXMDh`r}t&x_SePBrY>G`9;OpLmXVbguhu=Y8TK=7~JV-V!sv zYM{6b-6bn^}iU zwj!sZgWy_@jWxJ4XF3305#+?e^rtKr|IS9_5V#I{_;YrWp+PWrNE-fYj)i}{5C2=~ zi+kJGcCRmk|E)o@j>CRE69eiG|J&6Uv~5S1Hsa?fR^I5w2R7Rp_=P~$4p1JZS(f&zLAZbL2skCp}D8GHz)mb#vn~^bN^}j zl3XPHPUaiL81^Lh>}I<<4F3(j9v%9F`q)h#vW<7`fCS% z&Gp*B#fyJzPSzX*ueA6F_rrKc{#q;vn~i_Cuo*i(6Mn5=yl!&s_$U5!^jP}NFQT{5 zMbcXx=%%E+&X-*8}rPefkdki8A;3aR5!6ooZa{ZrqQh)WM7-!ARlIPPa)~dQ1TKl&9!IaM# zAI&-%`CP;_e_T)QxOk{~o>|K(XGxWw`DgDLY9$shjsx|joI3W< zCcX-vJZ0wD%8%#|4~=0u9qgKs){Bb8`}xT8uwY_3w$|aF<^Lgt;{S6}_2?#{!_IdS z4Il4^|Ht;j|6`BB|Jebv*5LBpQTX5goY}wOt|Phc`S~SdEdB3!^~^l^DpgD(NvpKy zTz=fnI3R~6$F2e1bjaz6v+pBI{sn%mTZeO?He4AhX8dWx4akX zFF~)Mhu(;g4>&Llj-exb^}k#>^YK?&zsI8^GUPR_9e0fJSzTF2#-;xx^F_#qWI8}> zEG5$!dc$k0k4{K_FTU}~j`zLBPI~zB$X6EmaxRVgqpvIPQBU6MZ}Z@5aF#Sc^Lpeu zAYSm~bqeh*C!f3DKD}p(c&3K@xFGq2c8oLm)wXxK;8R{_avz9r@#MV^jv3$QBhSO& zN%TPB{FEMWJUxIaF#pW_u_EB+gIyt=FgmFdqWBWAn`wu+Pn>yuq>}r2+?P39nAh%E zfv#4pFiI}n<>>0Ij9+nu|Ey8gW8iDmqQ~z#O`pnPuZDJ;c)pkC1N^;~@mR-rtS7JR zPvC6ybw#$(Ar*Y5{E?UWKBB(mZxYLCFg{;V=(~X<&4sH1OWVnn%c*io&AABV%Cr-= z$)ScabDETIg+HRUGcQ|Cah6<5oU)#?B7@kMdd`#FPVLH6z5M*v7U6ao zxLpHo%+uq*9;pnv^9EpS*6*5Yc(~t3E^Q5b5#%ai-JxYhoDghw8A%S zvu7fXIYiDWw9r1TDo>A^Ij={LmV?LdXh7B|W_LJAY>H zOMl}yjd8?}@51liKNUX2mp?e0xXGFkF(&_FDg%)y`pX(_RL3np6>A0 zuhU1Ba(AIm3B24+J1y+1ip!>WeZxPSSFj(~k z=A4nwg?{KT&jOBO#wozLMN#k!AlFgw47hT=Dml*r4%K5#rVUQ>;9b1m*Vj%p0DQl8lL|od~5at``)p+ z4m!*F#~JTOcuqMSI-fNYo+3|%{OzA%+Xs&h@KD@5**>s-KcoFV_~<-s-@D(+c;4_N z^j3Xg(Mod=@v-vxBd_L2jsU7vD<;=Fql&cX_)k^lYySr+l_? zj8QS;gMLc*`5L>Kb`JVb@iTqph@WXIlb_qcAA9G@Km#(seb05g1Dxg@ba2Sw9P~69 z0N1p0(7At|chY14e)r3OT|ZWRy&8O-$c2GY_E5dl0?I3;k_*9 zCu%oxVR`9VXzO_OE>?&Ze1~k~yA$KEvWH*q@7Ld!g+Vbk|1);(6B~iQQi2`D_lZ=e ze4p3|WT%9hiL606-aps>$#e7PKCAk71!?(n%8P4{7nH`xMTjh-UHDDDOmUSHQXXw3 zJao9kne%DJ@*>7^WQnuoU(t~l*L)#Vm^G?<8)qjy#{EsP&u~AwJIMXNasP5n8TV&& zZ|muu6PF&q$9fC@>Ir^361#-o#+W(q>a2#+w;S`)&a9e-&!RJ{UWdjbKgF1_Rvdi^ zzW+V=y#g=pgTLd*U>A1brDbjVU&AiEiCs8C4E)VyZHJC5Ydie@vbI-ym$ki?eP!wT z05zG_t|G*w??+!#<=G&hskW)wrgo)X=3rWed&y0!EyUr`Il~>?KbFBTKhR* zIIFvuIl?mfUJeZEvzopdkUc|}nqcW>>H%f;>&NLnaQb&}`bM1n#93#Xedeopukd5| zYUJ6hqV1p4_J`cMG#WSWJCAESK47~eok1mpl z0PSV*T{iCsEK3;0>C42L`^Dn*L zg^}kz>%vG)PmR&f>H7=pr{9--R(CmLmxKknjfQT);YX*{vBt@ci>2phfOlUu{NLF- zXJ7W1?sC@EU&nVFD}IjWa6aA0v~weuqu&fqqqhuCzkp1%z|-sD=}pk;A$a-`c=|DT zx(=Rx5}w`)Pw#-Io8amD;OYC}>1KGk_KMP19p@)S%8ra&_486gt;AZy!p)d zx!j*=Y9YLHb1>oZN-^Id!_0}k2XEd4kG_ddtXd*W$WMFoR@&y-OW*6=5`SO%v! zyRc9Dk%PZXpB`qjb@;uRqrx9nd@Q`@Y+zaqJ@2PB>wUq*UTQ6LGXHxA-!gvwGH5Z% z=++6)qDnTnAH5;GI?Iq1aM%xiZ&n1cFVJ*u3cuGI>4%#9vNaLlGO))A(Ho<>tGGWF z-pBmii$NHBJlaXLd$kwdugtK?qmgfFFMQmK&%e>=?oYewEbMV(`u?;ibcwY3p;UPcpyS>Lj`w18s*^2HFlc1=?P{FVOZ{MP6w~3unn_FWDs8 zK$j>FYAyK3YnQdXh`xv@&N2x-^8~belB*CM1V5^FMH1J>oOHSO?z>8OFA@lKjip_9 zp|cQvqpdRX!VkiK(Xqf9>!6A=M4PrEZJB3iqdxnaH#Kb_~`Pn_wyWa?JZ&WdrCF&KlWG2 zR&-H|LH=ti-(Ou#jFx>?#rVfv)ErnzKiZdX-!bsu->u=jUQezRyIHH}Yw2SV>y>IJ zIw91{+4Mo4Gc}H|Gx@pf?;3(0hmJF8Q*(o4yodVfvVkqkF`Reury0DsH~Mq{I`EtoO()5_u*yNP$uY37}7_nj|_FYs40 z>1*E+Z6>|mdr4Qt6{TIT`Sv#t68^4WAT-_hkp|{lNLi#f8X4t@mBe5gLp*L=b}zXto_zOPv2$nGM0Uvs|uJ3Q?Et{5M`C-1%Y;bHgpaqjQ-zDE1) zMw<0G_jl!=^FBVQxv#m<{T+DS-zT`gC+~~h-;ovf`N`%UeT3e%Jnh53#(iJE2dTH> z#}~c5>f+dV-XCTB@_CMYtZeuwD~*q)czpCX7oqpjnNf6$a-riZk;5j&8e7we&FR9% z>|f1Tw=mZ08S7d2SF`c2uED>WEC1^9(w`E)@WZgt?1PyI40&dsUPV!`bO&`iD#n{L zP^PiYk(fb^nsVyWyr+2}etnfw_HuBF;^67{ruf^%pL~~9U6Dz&op1Ib_jw+>7{j-8 zpA!r`hwjYeldr=k_yi{Iejd7LKe{Mz3O@NLeDW!rg-8xiPJo;Ybe8mMm*%qg#=Jw_ zui&HkyrX&cGU5=+i9X|~<7X!ql^Ti##0g{^;;?apkM*aUUB+*lFq zejXUEVXMMpblE*vjxd#C1=hiWvLFf$MCaxe(b2(#P;l=&5 zE^!+6*Yeaz%O5TJjug2a&?8 z(inUg1dejXYb(#h3a6K5^Gv;yRYzawkiyo1;AtKNJU_~SrpBlcMzB+D2f8Z;|DzODS z8rntx?>5OI-$nUul6Vl_s`;Szl1$y4sf!I<#K!uA>uzwha4qx6$eZ|o!4LhulZ)d= z(e|GP+4c&2cl_UwYl~%Tsat^jzulON9nDFzqhBR2SN{4P`0JhB_*oS*OZTDI9QMdq z{5ogOEM4gL*PnovPX-fT`!CO5XS||}osHqkU)P+Yi|3x@OsNOqkplenUTUIMBhNcM ze;vPb)fD`7_LCbsyA$1g2mPp?lYJ-lEO71M9Iga&XJR5+L;4wXXpkS9(XV}Hn}43$ zXz8EMb0<3XDZ54PF1q#(#{N$9<6Y=S<_)W^=A8L`%o~KK_TekOs!z=!EIlPB)JIJW z$2Qjo^3AhDu-BTybc5d^d>y@K|5gsM*3Go1e;&9Oy?<=}>Mwr$H-DcoS1oC1o0$w2guavz~zUe_T9>nLNYd17K0KFgP z`G>2iqw3YM?WWIaYI|N+P3_6kS=-m&3xcK3k8mzko5H!9IdE66Q(DAW7BiOPhJXt- zRBC@R$<%WA?H%u#+S47(F_Jj<21~n3@TWYSgVY^c2R@ZE+%<<7zM1GzN$ypQT%MSd z_55^T&mvA#LqE0jQ;8oC1SiGs6^pFF7ah;lg1uCHs0P2Zn2Wu*b>-YAbx*ciORIqO zeCsbagL>`upZY84Ick@HzIoI!p z&`mVk0A04SuC4KldUV;U^=;7w-kI(=hBnl7r_MQbVYS{n$yiE3jNH=f^3oD?mE--h`D}MFCLfMSKQFBqJ&Ii2Qon_~6yPl* zSL6P)bbS8#P^=j~PwdF=;x+^sx$#VEVD+&UnO zILp(B(C zePkqxPKco!T9^;Va#sG4T=TZzZNdA?8SB>`BzG6Rp#9o9%PoRzC?~q-_V=0_-p{`@ zTE>}I)UrzQux*$1vj0skP+?|GHO>Ds=&m!VMPjo)w!<;=`CVs=#-}HBobrLRZe?q# zh>p@bqNRfmpty$iw%^OxXfLDoF&3cn?_&SL6m-69nE3P{`djblQ?!j$IEe`Jx$V$w zH}CA^-Fvieqq^Aa+X(WGo(u5%v)=EDkIG(@(vE#rG4Fb4pM^ivg|6LS>9mo1k?`l} zix=jP#vf}a3=KJQq`3>-x}P;j3*$ljEZd%Pnw5vHb@T}Sw^@^{Ku@v9z|;n)a`vuV zJn`K-oV=#z$WeHbefFw}vxv3a=W`sLn>c1?k%JC*YvQ=IhK9D@U(0wB^HIH_M~xlM zL9e@e2+W*jhpU6SpeePI(9e0@L*MS5vmgHG!pm;57_c(lCSL}oi8yXFR zCPQ0i8Ty>k8i&WX@{AqV<>1lHcphYI2O86#41^2g-0d6N!Qk@<_`C)_uYu3qi!Xfl zZf8W(moo5}1s+4-!K;%v45c=_YAFqCJM@T;!OUX!G4n!4SAvVw~sV`RQ;vNX(RfJeY%?Sb&mMKqtD)!ySgh9*!xdTev{Q( zE7=G3c0G9s@W*P$8QJsN7s5TY&fe2K-spOkIAT3|{j*NuT6na5k?U(phRuE%;E!gX z-WucmKXQgd#Mh@}xqT6K9iK)0pDd1?y~sLUhTinnM8PX`Q=SugV_q;}$FZI@uDhu> zW%hYtYuayxSJ0<#SLF4HzyCLKD_M9QSx~OU>)BV977is2Qbc`7)*pj>cHQhGM&>z} zyq7HD25MF}+USMq${(M=nVsbsSUgEIU8DOn5iyQ#_-q&k$K4JW~Q&-^kdgEdC zOx+4?urZyr$lA@!muN?FcB1_ICVJe$^19-$jD`H^*O8A^%=N#?-}ZOQmo-P>%P+u} z|2JS8h(}+CM@IcHclE_F@#rYSqf4+IAfgg4;Pi{Q~8ibrpRN3nfz ze2g?6<^78@d9(r^y^(R4`G02|z5zVU-Bvjb7lx+4^G>tmPC1Rm;G{k58_x-b9~@sE z&O65m7mN>tH!?@dBgaej#nkF!9Ai9Z+Xx8$mB7n)Yterj(SsXUW9wqs>G)Hq&cW>{tG(;)c_Dq> zVaG8;*SuHb%3deBMr)y+pK;t;g*V}QV*6wGKWXF0`&&O#_c*0dv@s8OwL7PHrr}Z~|kwa-gxS z1AqK?#X~a3@{6KF9b;L>SYGx&GnW6R8Ws5CcPV#}&y{@kH)q;4H{DPB7v6K{ORj&m z>jnI?9qIXmGmuHG*=Q|cCi1L31Xr=9a5d{bv(6+(n|xE(2T?5N6f-}1)!RRzPx*3j z>iI>UWDS+vu1A>f_lB6?@^?owzVH)Hq8mHh^%$~^FQm2J1FZROGiNlGg(kzB(Pr|y z>3bY~kEd_!fO1F8e5D3itjWkdt%FzE(J3bPlyzU_o=R?QE_M53{N~R+<^G#`2m5Yv zPgy6{jw%!J3_uH_g~>1!4pFk;^&uxBjb)ue~5Lkc3@ULk~^T=3TU_j z-*X$6YLjRlsyvW({5^cyHr4uY@%>!r&|B{`FUx6oF|dvN(s^DE`8+p=T<{3r<>0IQ zva}p>?mr%jkO$5tN1KkCLm>Vm)aV?Phgg3jz+ zH~@b|=tJj4xiwVtTOaFW{a_C3tkZ&tmE=oynLT=L%vL#C@;ek)Lg&qiVOuL%FRTU+ z@qm8QyoK1!oJmfwbQ3Y_#e6QtM_I|9DP#L8;0tU)jJ*I$f7{!9GnYG0cImi?=O-!F z?R)N98PBNSD8C!{h<9nt(!fBwNf?L$6?)&ddvGhpQ4Rfpsf}~Q+BiF_E~?lLaj?4- zKjgled*$cHfv=r$?*Ok(WI*+kezi9pR*QSPhr4Yb9NO;WDh%YC_7~AMF>`aT_SKf# zK0F0%owHbLB!_-YM*A-Pb&iaOpNEHNyo`3@_(N6booe)t=s$z83zoTKC;Es^wharb zf1K8;jg{1bM3>A*r)Ydt`{z@%Q*}xI?O==d6jYZGV|3Rx{O!f>cM@x%@3rW)GW1#% zd?A`>eIv7vv*^RZ7{5OSr)^*ICLYvys*M@s8Wh?-eRPQ5=On~$w$BFo)N^`A@>B(G zIzLo!e$as~qD^FV&j$8~NLG_D+;?mk&AK;Pv4n;ouP_s1`5iANaPu`XTC-*NoX zOg^~}x~0*{$J3ThQ$?qi3_5|kpH92>^iQX2L?>u^B6RwR=tRHAL#LI;pc6c{XN5Ua z#od1y_wiaW=RqxCOjr}zQpui1@nR=qD;ZHtHI851i9f1X$}XNO3&7vZ0~c_f#4axG z%~^yC$OGBMMGfk@YGh{t>yW#+HaJ7vbD&t0l&_*1wpH+6HN5u}pHK5C{cs**l9Zd9 z;13VxPJG@>9`5kuSUL1+Q*#S_ir@4p*!6k&6mvJo|8|4 z97XWK4&a-}2aDlhnn!c|Hk#73*d4kv1oN667e&C*i(8{8H=rB=|9Y zd0K%V)1OcB{y!+bth!20tCcI!PBCY@hth99({M%xEY3rO^Zf(k+y$NnXK>dZUDZso zy5w#@&cGi)mqb&3*imub4gAKJlpmJzKQ~+dvp<~w<2Z5dT6uKYfBuF3WWOvl2fU6~ zH#Q3&Y>4qIvD=wrC|@JZpXUBe;=wlD?gVXqy`)>$-`ZIbC zSy_SH2>)DnE|G%YXAi!lchJ=tbBNTqqqoxbuW=td2F_+qQIXOSbKb^R&BIUOyCTUh zNoR;gen7F?`IkePoyS(rCc_S;FTi<1Rg&HlN^rIPWY+ zH%`abkjzHm7p?udu@&Gm^9so}^|sKfemR!!BY!N$JO1y>tPccC*4JIenPkR}E@s^x z-9Ml4k)61MzIRfaqs8HDQ+z$YZqWMUe)>N^`v>W#8{gp26Vy`!PW)r`8t0ikRSOyK zfu5btv-UUHANgF;L+9jbZ%7O4+0}!FF$)--)&szH5ZJnb^$@VK zpwbVF{XeT3XNvi#olF=7mxWRA3dY0Y8=jA4pJL`&7AL){XM~&Hu{a68gEwO{h<_YH z-a1wzZ^T2Czs34iTjyMN4zIbe>Ngr2M=W3i=a9g&mqwT?JAuzUVfO59F z;_$ZWOlU5hUG+rgW!AP%CEq6B>;p@_!~W1X@5z_zV88SyvClzr10sAE<+~W)`FSWZ zqW)16U!%V`@3zx+$IbYc=!5#-rO$B;A4=wsWoz5xlc>$@*;dt7uztR&CnsA4Z|ZD} zE&oZp!h2Wm*!Qh(p9B8$vCSRG;8rK6t{h)QysPux3X|;yA1z`GjVwUF7TSz3KaA3z z*&hr~B=`49X1xB?W~x8d@Ob`I+VSI~@6w+OKAOuj$}cc;ciPb3^K+bOs-wRU{Vl)C z#W(oqIcg7HiNc%8Ctd1?O?!{wTR&`~VS0aBTZCS~Z05#3`1^xx26-h`k8gP0rER7T zOYW;@3^H}te)0tR(P68sE$+{Dy`p#e>ha_|npb7&@!#=|&vtRnxwjA5vt5eI8J)*m zA&oD6_%n8!yLb;DpL4TILQfH+Z6H=HUr#<>A#=C$@LgBJFFHH2kQjN4^HhnCHys#W z(A2eb@w>`V+QskBo8O0auhV&|v#6hWNP}&`X})I2K-6`o5_VpZAj`z>;$*W5qCGabZM4>TG-Y_roq{Esn@>~Ipj_2-6r>kGs0 zXBUL(>z(lX74By*YsccH=$np-u|$vX2@gl#475e-+&m%eTi2fTSg(_S_sHqVYKt~z z{Ki=lan-sm$&ydIN<6il7=LuwH^cGKm8RbXV}qvOMJ2&-puh=dj|_x!&&&$v7iEVP zR}U09W*x!sfpQW}Z3y6& zWQ8{%gSq%k_%6htSU=%e+t$CT-QDmaV-;Ymw&Mq^quuEZ6Ua?-?UMF_#Wz6{<_T-~ z&EYq9tv%2>gL$*^NN#@hNVD0qid>qrd*BKA5;5NE;60tC5j1n`!jNKxwl;G+^6zlI zPRBLyCvZH2FC>0?hWd!YPir!)Wna?1iFuUf(!lam74vQGvy{K{WRQGa#$^XO8J+(R z@1^^!k&kI!UmV&5&Dx(pw(-HGU%c3FQXXXk(&V1|gXAQr?%{Z7GXdIc6(3UrgIL7o z4UvmNz(wq}p>4T4hcU2f{Rnw8v|gdOK+-Pew7yJxq6za6>THa6_xgLXEneOh?VV%C z`&QuX?L8~p+j}(JFf%`FPqwx@LBA> zZ-m>M=Y>04{yw~a)7M#}bHZ7}1L2(0vf#PwaO^e4#m~dF)NAy3_zWKpSBQt7?T?4c zS^t|JZoMEF9(sX8n*sVbIuAQ)_t}%@;hl&3=V8mg;^l#Ocs4K?9tMu%;o+|+@5S=) zR+oo=kwCA~j`ZgpjL|;E^D5$l=(@x@kJq$*xDZ}j>&2kf8D0ytexCL$f5~?ef2P?A zWLi4li2C*Ze#`gw8@|6^_5I!L`+GlsEB4*VX9riI&8-{lwAp>H+F$pDuXt-kqmj=M z;5Is#_{T)59_1AL7JvS5WG4JP3;kM%TmhTnkemaRh?F4rrv>4Ka(H1n{Fej&<-&h? z;r2<$!TIPK=G9tbIE%fD?IpoP!!~T*Sj9b@kZQWb3$;%mtNR}EbqqbS-Tbn&JfzX| z4csFw+{0+sgZm}ctsU>5S?_8LnEb#nYmy(1_*g1G5T7=BD=|#=hZEn~yduKhVtgO% zBQf_??mc?e%q!#vy~jMJfqh};OV47r-1p8k@9DYm$mIm&vIDwk%s$U^Zd*m>nE-Um zeC7Pp|HUTc(d+y6GpDl`qny1M!SI2Ha>8BfbHg30^TMhT zq#E22-}sS#>Gm6O`t7%leq+jc$%n?n;E}OTTihG7^_;~K$%hv-W@FJ`@Y+wkF|+xy zVa6b{{^MHqpeSG5?2m@FinoczE{}M*sTM|PAs%9`Gbfw#@#>wdCD$=NGoX*&i;Zy- zpO}V@9|ON3VM>cal+zf3-Do;mwDieJ+q{-GVk72TZHK;a_72JQC`uj`#t#MB3lo8O!(9ByAr2nMu#9jDK}* zl0OR<2bTO6UMXZBYZ1Ium=joXkbCXvD7-DOq=CP)Rs{A|&S$?ce@CpXX>^R8FZ>{| zq}64r^%pgE#Jee@gc0 z05ae|pS-Z$Ny6J8c(*xAuI5v97PE3(IClZhU}3LAmX-%ryjbXD)d|;i-rvY265U_3s4l<~L= zKh9qdpM6sa`O&%f+T*y0L3R_rVedIMPC6Yst34`TeD0lQN3m4dF~x+?;nVrlo-pk> zlde^+kL-<+1FIu_zS@y5rDT`-zsb3UWWw^xiNZJjBY^LPLBO}m$ZN{}Wzw%6o29u) zCjCBmmRgh4aMGO2#Id2@M(DSXSoShxRQVqda4G*}9aoFvm~nWO_s|1|?&Gw+!h7@i zY(btiPb$8sp{<7Nc*fzMe0V;eVUKoY*msMcctbp5@FV{s6Thd0U;Y62VdFFLD}+wl zq2<2`KVtiaF5uN6y6`EwY=@4@S$cp=c}wfK^q%PZAn$Ec4Q}W;j`+Eu3!kD(03IKA zWkcJ1F5Qd14~wrXFRkIS`zQy) z=b!h{*T26``u;9spZfBTrLU1c;LD`%_2BDh52x^jZw$VC3ZHW1b=;ZY$EAD27o5{q z!*x7xkMP0$zdvI6{G8xFN&V5qSti!@52QbK4MM+FAve-hrruYEp8MEG0OxOfaQ-nv zzJ?4i{(k*i-p}|S+Ue5+8RKupyNdDVDr5WytB>#Z!8wqB;@a=N{OX5yZ9njC1KtSZ z-JiZIhF@#YancEExz_V{C3dHparwei?=(xs`uN^HJF>tBH}&F;9kKRf$}#k_|monGd>q#ex|Z(~Oc4Mb0$qm2LGNTvD@psF zMUAo&F8iI}%9;#Jx_GXLaWwn#u?_lEKlYy;pSuR&S8KmDKJsfa$LBWa>{vf1V|>aP z2kReMd6fUR3_bNN-b>0c_G#=JJl5Zp*N$*v8_DyrfZ>nEwckz#m-_ED?7Zod! zEgXzrlkXdkUuTSmrO%1lw@(9S($9rHe*eaA-;RfWUb#A@cQWmppMRv^{rn^Sp2Q?ozr-iAdh)m`!wHToU@A>+9q;wUstaC@!WIi zemmowJvrDmk<0w9`wO_|GQR_Fir;jWL{97V+uU&%9jn)3Pi71|qU&i8#^JDjK1N8g>SzqavdAAiF)Co(VniVwz2f9*u= zZv${8tTz0`XA6W*^j5{aTHlIs&!^m?HHD$OgK8oE+4;_y_ieHtI@89}(OFA3*CT{P_ z+jhxwK|@;!m+V8i?uT>FrF+4X6-2JN%D9gZ&&ad`mj4IRZ+`tR{4?qG!H#3-x4*$I zaUG9-TkpgFX!_0I>$8srUuBHIWW0~X-~RbtfBZeek7tHH zF!Ejne{&rVe|KM*lJ89Zw(#yk*8KLUKYLq@yk`T`L@wFOwa9yfn5OLHy8k$~E!^dU zLu>KUFSh?{(T&IIf4lk*21_S$)oY%i`x)GG)iTeh#qV6NwMY-99}EJf2YfL7*=L^* z41yk}e-EDi`u~SP^uNN_f7I9iiQ3C8%=-r;Ujy082Y5fJH;}WFv6o-+;b!H_j`zvx zx9|Jmgdb1DUzy;8&+50n_Kx{bfjb}4cxMggo-1kZMp6fl>sb2yszJnqmoX>Gw0A-9 zWWPoK^YebkZmmz;NS*0a&ie70CWg<7pOT*srgels(rw=&l!Pjvoxh}c4sF7S@=i48U*VtIYYe{Ox7T!+t9I*f>%qebDXw&9Aq^Pj`wwHeQ%XAL!>_e~|q7 z*B^{M3_?GyXjhBO|UaUBoM{&+=77N79Z%+l*b=RXC&?+kMOBYE=A ze+)k`_nFU?l&4krM_k8)+j<{vne!iu-^tpm-+6I_lUet@#RsRgS05F88$Sa0zH&79 zjxj%0yf1(pWZJ(5;7aP<40$qox1agH_~bjhm(;t+Q=j?5Hu!|=c=+TjAAXts%vIf7FDv&M_!+slC>3uudU6l= zavcx8f4)2=^E*A6KNi1P`_e)@uF8v__P0JbRPft)DtMoW|Ms{KJ}VD_(}+EACczqb zAW-1`9nG$PwAdlHB8PP+?>ruzb5#y}#ZK^1#;dc=;T!?lgVuBOZjg5M zuI4`5PIq2+zI|yZ>b<8ppkgm-!~FK^OH#j4pU`=CC^?-!OzR^`o>bt2mOE{~qOZ+2 zy~><9pPp~3n!EvE$YtK~3_1J(VxkUwX5xlk-lFnKZ9b~<2o)1jP3$#Q{#pV|rJzo_QT5OQ3HwyqdOtsf^4x+Th< z3F4`$Y1l=4l}%dg^JIT4<8hF85Abd`Iigj8{3cu9^>gIu>K&8U$~*B2`cR%Ld9Cq% z%nKQ##n|q8#!UJ|_;i5J2Jqg(z;_j(*X?Y zorV`Jyk7!d`HKsi?s;+Imwx%zyu}lKmFwg-Z6vpJ<4Ecym65jzJldD~0P-SO%HQf8 z5Qgt$!fRNa}rFz^Z=eJ^|td-!bi@HtH0z3|!U;d7Y&w9a#w{`Vu_arA2pJ$L~9r+r8Fa^B$j z0Q2Hp^aszlwY`S57PGI>)E!6H`tcG@`_VNA(8&j(x%R+!Lx;#ra0TZ>^?}k)jTh6eb-T6UV3>D9Y+80qrhuwDe(My zWNHdDucU5q4Z8l|EOa$`PdYx1O&f3ab~+(P<2pcl2WPqV;t+jH=d15be0S$MiQkqx zrNW~QJnFz>=;BYjE8W%&U&N@{b_o6y{`Z25&Rd8x=C|^@VDa-wnw*VBHpUE9C3CsKbk!giC%0~FZQsP_M*et8w5Sf z_pdmm?tTNtIF9Xo#R=U_es}vT!P4==s5gLp(is)Y&u(~8b;j!EzSk^2aqST2ap?!) zK0iLMbO!#CyRSC*=pB5wv+CT?>f3_%Kl8!+ch+a;)OE4mGK_J}eCCx8D$Vbb)n`5! zd*|xj-pBRqN@@-@(2hepFRppFxwk$i3}38Tv8^nmyEloIFCOOf2Ub6+I{f)t*Rs!pMw3i{5{>7V)n95V0`pjHScj=@Mgyu z6EgAv?mwfR>sZcVlWjNnGS>4MYxI=aHzN9-&ikV8d)WJ6w)~#5m$eVVjB%s8-%7NX z4EVnr%rghS&%U#awk*GhH_rC)Mm>DsYGYsg8a?9AKVJp!Tm)@``N71rwdpz3YOizp zyUlOV&ZsQT8C~y$TBxtQmh%nXDse)mWjTqzdVN@ayNWY5{O2`D|MW6Oy;~jQvq7^} z{qP89pd6D&%rgV=NCe+4ik_QE-88dzh<@RjRpOb;;h6}&o6b_OLHdCuCAMZR`e~k%Sdhn_DfGVldwt(gD_+mR-sHCa(LIA| zi{>Bl`CXjdeN4T*x$I4I_ovytV?TTOo#y52y_}AJqdi;^*)r^|_Ius$|BdmMKO3p! zH*E7g{@=>@zJgi_XE1iZxF{6OYj`nM8wkaj54EF{|LgmSWF4)fOnP&a-rj6r$_X#^ zw+D|z;13JO68~@LAng|mo`Fv`|Ljn8HhrN>HP@y%Z{g8Ls>Nya`1(6@P%@`IyyPnzns?Z zT>V~iA$z?Ka~7!eRU*{WF?^8i^1(oKkp0tKZGTCiGLXd>R#-^{NcFD56Z zO5@#rcBn+ZjRhv)w7lHgTM)Lt>)DR~^6|9gTaTyz;{VO#+X%2n#|9I>_y5M2s$NOt zbnMgSkB5pmKPJXJ(em^Kwm%K#Ffp9`Jk>J$nWAr$Kgyb~gQ7c89YV&_|i?%cd-xba`TD zUJ9Otz_XEc;XJ3|$D5qaUv)WoP4e%}J^kr^6Mb>s%;S>+&ZliZIsR8xH-z_{Z8T^`IOBvwOg=R?f2t5HZw24hhZOlLUX1V_i?_Dk$W(sD80tV zpZTtXF`RcXwtROmq0fac;CrG^q%(?nzqkJMFk-dY2@VNG9`bB4G>JUIGZnd^2xAq2 z<`KqAw5Wm>0mjQ=J``QeGcE8Yzr9ydp0t;d)%@0CV@N~Hem&J{Y-e7jxk`k1k?_!* ztdRIg>u_oS(dIJRypvqGDLKeD^MJc9XD*0Lx8LU^&O3bDOR>e*y?bEfkfxGcm-ijk zKo9WFLEbGp%XwoNHub7Nu&wUA`(AwLOTYMQSzuUQlySdmNbr_}_ul(rSzxH)gDJ?M z`0W6A_106*q@H>v-RP`1`m+nY#oq_wd8KP<+w~(p9?GMRb&mKH_!NU(3l56wXs!}z z5#8na#3Ia_V zUjM;M8`k_E*3Jb!s_I(!XC6r=FOnD(6wSkc1bJyuV2Zt&$piwTVhgQpZ6zTfAX-dq zYq{Lp1cCwvg%NJKx3&e06i$%G)%N0CZ!cgJtWi<;THD%wnMabD5FR1;V5BkMf1O7% z84?uz^84j?&YZK)-fOSD*4k^Ywf5S|yDP8-nL3M|d?(FA$aRwYJ$3kCMZJMsB+c#E zgvn8ZU>E`oLCZILgAIw^rjI__EcT*pz^lPuJ;D1Ya-<6H*z>ft&j#~+0c3ns_*V2` zq5Zpo=im6fRjY5b_aA?U7FR3LDbP*@=NDnS*q860z_AZ{zl1j7ty^utE;axwG*~2k zVtiM`v>&_@y`8ht3c&q~z>;ggVdkw0tk!e+>9_$FevhS|gIdmsVA4Y)r51O0q4Es zA1^yv%9eMf%Y;)M08VqA)7%f7Cy6QO2bUX)GjBs?|LY57{lF=>6Wulzmw%<64=R%S zoY9d){GsICFli*9$-pG<_!iNZmBD_>cW~c&hP_|O%5THxn41~X2=s7}tJs6Wd7SHu zec=#1A+|!ng*F$J-2{B1w~202{q*C{M>orSwG|)4aE-t1?K5tGcNW5P%tf;Pcdx7cM0^PWx2&^;v#62aR}dFPiR^0W}iVqy~#iEbo)D#hroRmxc*Om z`5JFj8xA9PKV$u^l^JMlWvsuoIj!@Tvi=?{Yo~py4zhNt zGuBSD(Yynk+7i6Y%*D+z?;EmxKC*qj0k6cUo3iIQ_*?oQ@_*jQ1T7~R>+pTWd91^E z?xDXy^b$XHc^H>s88_yJAajFaaZFUs|Lkf1qZX&kA)n;Bqi!3yK4q=_sM~pvc~m)H z^|bcxGv<(0TNUk$*f4r*k&@8<1orqfoX_$E`I%0PzeLW0KfU4BWtHI+;?{mMJ$su>pghnC_4Oc{wGlvzgwY^)+1b@t5%Q9Gx}We zEZ@h@AyeP~c=K@PgH_B2^!;7CVy|63LFo|LogjJEp7}O8Y`#PO8il+z7PaL)@-#6Y zXgM6K=-)kz!EDArJA2}0Z7m!uNc7(GA+ofJe%^!LFq^CJ4ZI|LB>eE0#&?X-75Jl+ z>-dhd@RpFfi@dXvV^4CEHG>~JbDO}^!wcX}tWWo>=7F>({jhMjpQ}{bh08cw~^&s*gZSjNW)3a=~yA#NPW=UyZagH;j zJm7e_@V@wj(lnpY)4%;_bEuRt1YYr#D&(|T3r~&&pN_Po+LV0GGzI?;SW@a!@)f7_ z;{ovc1hgJud>lU=dEUV|iY%2}6>_%1TKXbmE_q(%>_DMIu^WoanFbHY`l^Jh@c08i z!T!^a9wa)ntb=~>Px?COmYB0_nJaqZ7cXHS*bi^V+XwEazRR)yT+05irJwrmy3G35 z!keFF6kIz%` zmY6?-Q zfdZjrJr36YqVCt0c!T);B7fnX$fO=y2=*}X`91n+S8P##p6c8wtT@PN1GTs=440q`gK ze|5Fub@PAMCs8dPK7yAY-&FT>@UQ?9-nVb_KVMm8{c^NMdk#AzI(<~ zhyQtOGiBJxWz1yF7z93-3%?ccxw-x=YS;t%8OtYQVEVst_-u>Y|JGl;wHupLpZ!hv z=z8JP>8(WQP2$ZAdK3IsgSVC7?Q6WtGh*_}m}dp2k8v#@%zOS15WATVULK*3ei3O&a8|<0smq%k$LHVfO)G4^9CcnldHfS0Ot9d*tg2R z*@yXM#m?XGZ|+Hb75%0Rx|X%rJlZ??!e{erc1$1MF~%8Dr2U!v^SSxg)f?Zg$yGzH zyzx2UID6Z`{QHMEeD+6g`S5rwy$POe(8&$_i@XzBu^j|H{`tLRo2;dK_(iA3t-$FQ z+fP6A_#eDe%y-bC#_L??QUBAQqkq1b{>8^%#mnztw$c^IP`ZW<#TV7&iC)9?yP+Jf z<}*sY__;sB#o7-Yx1VqP+4{QxWvs5U9Dk~-OPjNLdA^IBf?fC&x@f3)Zlun>R)YB{bG+AsYG)Uluf#ATaN)?4(&4rU;9cDhFYy;J%0^7?bae(C;vGDYL< z9-8{x{i(RMw?759_Vy=qOK*SbZt1r_uD5EBRex)1r@!h?m))QL`i%Y@{-XV46Q#-5wa{RLCja;yoq_?Lp(H|{88L~50zw9HQ-Z%KY zA&%c;o?pc8vF|RE-xtQgdfD=+!GPBm2XD;ti{OoYcbV```3!h3$75kL5k}QfFS|%}&>4%BPQPm!_A*xITRzeqN4^a(TmKtv}j*&19`V z+P!D8)*tQOHo4#acH~pGw6R`*?Ss2?fY(B zAA0KZJdU3FzPn6%+7SoqWzzq?vI7RZq3dGxi9XLSf;Z-y%he~Ae+Ik*(Z5CuA!jeW z)H!?UrNY@uF9pti>4i)z$CQq}oq751b^0%p{wID0y-bVi)90pt+mzn^G<>zUKQ&+N z?T_cH{r2Zz{)%I+uRqtRymsWW=QHbP^yi98^yf3_|F}U8;>14 zzo)az*>u_T@)PT&<^SVxefr$=@A+D9e{5gt?N7sPz5S`Vt>6As|9$PTt+(yz-1=Xy zUbg;I{2BfE#ux2R-MHTVRE+EGPr)blx51m^tbAJ9S`LQpx9y&3(FVDx) zo5&|UHs{)&wH>iGU1Ep57yog^xoKU>(25-Ge(tocGICjzU`vtT^J`1H9&?oCBxc^9 z^IG8ot<1u?rCr;HF3icqUKSXl*CTah8RvorhOjOk=IS!*GwYE$|?K`VuUXGtWTnfej z=TG3T>9H}G{)e+QRxLiPjri0LYV3XD!L`> z^~ued~PAInp=c2-~cx6Zt-k2|$^pVc#I_jcNyLA%(N;_XWKFvYI4hPeEI z2U}i|j@xGFhWJ+v&wh`q%P+qtF*Zf6uD{ED(%rN8 zjPd&c?Pz0BV>f+3ee731iyMny$I#1Jn?4?EWjt*Cj7P;+dU015gS*gIdU01UK_8E# zRNzko{&e6Uq#k_!$z!gPJ)N!@&i2_$w`$*;lcy%~3q6Ya~g4~qrtF+%j+s`34 z5|Za>*AdBOIn$EMwR!V?p1s2SDYOwQ=VJS3-rJCua-Tn0mqEpo7ihmlKIPL!KJ69L zKX;+d`%*R!86~n)`-#YXKwPKs`Z#*~xt&&z5k_<98v~=~4!n>yr0eHTrMR z<7nkOVidYsYzu!aem0A%EJtkZv1J~opZ8*OURXM<%b$n7F^IG7;l-8-y>bwHzXn?! zcuvfGknz4hComp<9gRGk?drl0&6EL(xC-p@+iqON-z)VmkZ+B?iOwOv?L3$Fc2`-Bv@6fd{)^rtzY~lyBPc^$ zau+c$T|wm2bfbK0Po49$@`*03~gD*<>0zoX$#(P<%e%;W9)ljSTHc+m8%++oN?QztO>0ewIIupZhr zc_;Qt)Bv#^3x6GAt|ex>D+I1YrBIYByv)5(>C1fdf`p;-bAIDmkh5KMJouV@Eix}} zn13(21n+`;o6j}C_sp^QL(6hLsblY(_>-8U<(c*yeMx)99NznEp7yNAw}ed5`tRvq zPdtBX-~PWkK>zjpCB6M;A5WJXxg{_bgFk`Uli});zQ^L^QuhIL*5R)59HB{(W6k)y zZbJ`|Z`eE4WqD^|jxw|yek0#qVOfqPbAk5T3htE2^K$Z#fl}6zS)OB=T%My)m-X)X zIWEeIpDc*JBea#re>wkF+WE)qPc~aJf0iR{a~4QfrszG$T;le-q&~r$c7=}eCL8i1 z26rL+akU1{`uLaAMfUaX-wPt&0`Q3+{9K?-{F?j*Cgg^ny8p_vfpC*YjH^P7t4&$> zYy9tB35M)>4cY%VFuk5ff8b?5v{nqi3(i~UYb&%Nb+*vAt>D5!e+6&S&sJltBs!hQ zlY@MZzqE_J7hMaG``d@=GRAx+a-$VE%aDuP;5!pm&VK4@r4I|C-H6OrLl+_2@6TDF z$-Ro4g@p@qh5}QVa%Fi7bKHCzrhF^q!<0YF+Ch`K1*Kgf)<+8&7j1n+nX>A$p50gn!6?K+kJ?b^8ffHlj49EX9Um8>^hv@P?E*1k<|UwB-`$i$=2 zqtrKVW@%TLInsO{f7R9rjHSqSnfL9?$?PBPs%CB<&ix9m9AHHUw#UBk!z$@%Wh zH}fC+>`8u);XjrB#y(%ovm5v)#<$P&?_cQN{3`#kWxvhu1N{HsAAO&{68HOm`Mn_S z*$lqh#Ce+&_>ZkKgXeqV;GYLP7XD+)eLwE^t$Y{zKK8yWOV35%X00mcBwCmDXvGf&I3PED$CfDd|(x4e#v#dQt9U$%>xhfoOWB-FK`tye!imoPVTe0 zZz1kS_62Ss?$#_LvFXh1Q9pSV0urlDOw-R*ZIACUKk>Q&*2qD0q~^`E&HK|w+`?$%y$XUT|)`^_mx;aU;0&B2T(e~A)BhRhtJgR*YXS@zcX1$oAT8HzVn35!E zfBiJRDdjn~hao9yuvC9n>-KZ}=`a*Tp;VgstL-G4tQq8k=UHSxi2V4{8$n*k}A9>J3wGJN0oM zb90l$*V15H)>@n746jdeMm}cm)CDDaqMQ5;HmmPslGS%A+rI4dXovI6c!#rElRIO* zt?v-mH9?CX-zWQD+&1Obj?(X|=VpIT&AwYvGfOOL$2nItlX&)yBXiYr$L~|K-?6Hh zuiDg(BzH7(xIDjy=ij1y0_79cjw6(x%=6OkQqOlNpG0|w+VMWm?@*#wGj0L)IdLwg zH&1dcDI>g_+K3aM;EI-SReGKU>yo@rna^F8nCA)JHRf}F%yUnocO}nd|9IxB(`mPq z_OsQF(!pvbW7n}u;kk$B#lV{hoLOonwA2BANvwItGwd&bW@XRZ3HBTW>xg$RSm6uJ zT;V%8((P-W<@TMLUA(NNu6Wt$T_w)enNyu-_Lexqv!*)zw#@pbncZ4UX$P^?CG@ca zII`}VrVjqrRP}><2B~LfWvE$SWt|S4WZmWFxl8@vy;Sw=(KI#d3Z6rI5{Dmw9@?OX zz@xyh99W=>_T%I_yHM>r`JT(y-0kwU*ov2(deObCHMPWfdWpw*W~s*+&M0yIuL%S3 z*##yHZ+q0ie<}usWMD{9vu>a*XtEcEL|{nLVSw*g+eIUjXrH|WvVWQNb@W6LG|D-^ z?KQx#8W{GvpeOgTmI`2KEOwqAT?}0nJHtndoxcJG_Ot!4170}GUX;u$yuXk!35BLP zB}QE0$k}`3ovKv5kZZNKZ$G&57dNmUATcem_O*57Dj|+P*J^1O{;eZ!vxt4T4|(92$bU7xalj4fMK5)G}lMn9~$S}$w8zE9aV zV#~fy*(0{-2iSm~QIyQCGykM^RVeS48fCh7*<~-wKBYQ?Jt?{MGv5AqbN3K%x4$Gh ze{0FIRm$Xv-9s{#U7)S1Dn$((DT%V4_^tmaXCV`Rd#X{1jw1&5bQR;o_bCqK_<@q> zsh3N%JsvGQYvn)8znRl$JMa?8pvI$F z)xI;E72i7vuISqq_)p7alcnts?Kq-DPcMf)s7Lnq*y+P6`fw-k3+&Cn&~mTLbBysu z-~^u2@ZXuu)jpAF_@nEkFK2;!LSk0!Bc1Q+nhid9>tq9zQrs7ZNN)kBV3+fdHprEZbSW?kbWQWx)t zJGT&bF7vYNdvCd;dvl2A*SiuKaOP!w+)iy& ze6l~@9Ji*o7&qWJwXxc#jnm8IX0cmpGZ~l6SCn_Z4nA)NpIM7;I-jXz)}CV=vyCzO z5%B&9cx{Z4*!nv5E78G>lfK7jaQ(yD_}J?^_Pe5HJ%a`*(exYjF@A{eAL9FrEA%l= zUuk}uPA&)OcSikOqmB@Iky*z;bauv;-823j^hxO6q_++kPiXEeW9@&Dxr+H?&^*_& zrvJ257XFhmr|FbZ`8s)vn*L3xT*G>~X$HTE>210iy$+ja)6Ghy0v_f0pz$@?wPXrmivy7MjMOXB1_Wr;5b;`is z9Oav)?*JRL-SkbR^5AN&{H|WA%mLoPO^>0E$}{@me_WZY4Se%z1ufmYk&>)Ob9p{_#P|CV^M@R^T5H|H9++ zQ~GD}VV%)_{wBS>$i}$#pvCz19{3XNt(Nu<8Tk1<`1u+A<#+Y{tfl4M-@%VOW4!(U zs?1p~&)k;EMKbnT(1MJ47h}!4resT{+rU%dQ+?qUm|J^rlvtn7IDb(beOF+h?XqRc zoO|Sctfi7O&F3_YvQ!@YDOY~yKVjf+ZC^M<#>eCDnlFLBNz(q!mR|aJJifh)>EqM% zFW&cI2LAJFjQ*{RZx8xl4veM8Pp&Ye>H~T!oI4H`E(?*%EyV<+q-pW~udZA*F_eb||tsCV1$y`M}d&C_LG?J_2 zs5=@u?v6IsJ>_h9-yJ;%eiz?Z?R#KcwXfB-{Dm-jhO8}WuTnaebY1IxkX%ZqX!|tJ z&yeHJkDMz1znot`fQ&Nr5KRY(lTWSGaTom=eUnQaJK3#XXh`!enE;Hobnin`6m>N7 zb^9($wEY?2+~SU&tOL%OHNKWvHNMu_HNNmYH9iM&KN-27(nBk0tmRYdhZhb^r#(_3k4b8rKN(;48}-N{Y~I81bkt4^i(_WRjhZm zoO4GPK`Y7NF(n3%qXma!E#8xt~@_9SC=(w<|-5WgYN`wHA5#W;PI6PkDED0stq1rY4G?YiCr0h?qYS| z{%G%SR^a}owbCJT&vn4X+#_@H>)-7ku7}4do9ZOb;U!=bz0rg%6WGMhAmzU(j4v86 z=6_3>lMJ1wKJ-h9jSX zSS`xg8Ec5gV^6%uxB`)Jl&{EksV&3isw2oZP>^X+L#gg)0b?!r!=AEF>?y&9BySNp zLnQaY=f)rXF!Y~yWF1l=_&a2+bfbSQVqF)pO~!U7`)4!IuQKZ|Br2O~7}GF1QEblG-a)V!NEHME&d0RgtG{(3s?E_${>lxnTkBSXhL%SiASp_hfF3)nmdL1Iw&S z(6iRpLg_2~cc{eRuadrPX}V?HT%MHm#oJ4h_Rd->rwgC|1^yn-wZ&SQC%O~QSGb7L zFl2KPG;86vj(bP_l{3G1yQeL^`a!IWYMwE$Tnq3`lf_o)5Iy`u=)uq{7ftDlBR@8a z*zu_O665iz(WZN{J|2$AecNgk-JAAeb*s9}FOC=DS_U_z+j?}zHMhjICu@ti_Evw1 z_SQ*z$bI+CM*nV(Ymd1-zP%-1qP>Tuy+7J2r)M*UD{Pe!Su0%G+h51n`1aAwY~Y?5bB+A9~~A8%S_*ZgYo`%qRd{Z}E^ z-Ta<;vrE0xiT++-=?F5=oG8bL2BLjB+x+$(BDUT(BIKPcHQA@-)rh1 zDcBYr*h^FEUmJ`ZBwt`)B)Z6Gbdh_}MdqT5G@y&rCgUGUc3$u#qvxQD*pktETZ|g%f!$ytJA;H z6|I&$V%V`m*tR#)r&q|sKB7Qp?>Tb~n+HsUzc)?jiHx$LFZC znKI%#5WP@*u>ojT_v4Jv{5VRPo?}dM|KHA-OJ2D|&XY;Pe=xGU`?poHcH{YChplmK zT5==#J)<{dDL%o!Y10^yphU&jbVEM*E;V~sqG5kes6UVI9{;1JyI0^_XvSY7IY`zp zKS>@b$t(4~=3}zeAChs?^j=5(9`427eu#H(lgodc_5A*Kk_R>3otD{{WySB9=!(t; zACI6v7g@7=?D&!cJQJJk*>cyiTx-@6Vk+iHJvQJo%Zr_VTvyV>)A%4>qwaY8YC7xy zxP1vPKt4EIMPDT6O**(43(m%YuUWuzCLn%=jP?NSHZNuTk75I|klzJcyVyd=F}6Xe zzSTRfNzd1=(ZW$^!JwVyrM>mE(szx9h7~)vDS4Bcp_vxwr4_o7Sb+f7AkTz`p2NSp z>h6i&7IGxEVq*vF``_0Fna4)$&*#xEYOzZ-Q4Oaj}*aAn5VwQtp*Z=;Vty9ll~ zKBF$Tb?C))<&F2YpaaCiwSRy<3a-Rw8U$B@rz>Q9;42wdEA)Djaa^}e@g_qXpCx}H zHR2c0eP7zTKTZyxAg>$wT-%>`zk5#GZ2YLukvV_0Pq;=sHD#DOlX1dSbs4&LMb zePSD4Ug2vw;P$oFcvw4^I!|Vl8f)iNW8O-uFTI(0YZCL;6y~iW=B*m$t<}t1*$K;9 zN2fT$<5Qd$LdLvRXU<#KkaKXDdZLs$i#D}6i}`9M^Ok?M`q9#D-0dB34g4IKjz{)wI|iS&G{j3bAHH}#pBM8 zu?(txQkQ@4n7*l6L;kHp{^@?LG{ZNQTK^L9CnjH|&Y0n>jV4W;3CtzHPQ2j02WmXg zJGibxZd6&)v>ZWgb@X$I5)CdS&*z;poHF0aSsbk*-!=J~R9`IibOXlVLSz8_2`|z6 z)K=$;z5xD0$a>SKbQT#bxR_3ELOpL_O8q?WQLLnUvpHv1ay6GroRvY(cX2Os#rL@W zf1>MsV(T#J`i)ni>wDtp`o(M2Q!ihq)Ah&Dbr`yCXMD~;*CFUS3|$|Gu6IG#doQNz zaxIzuap?Lz==w$IdP%A?yfoE$p+M|T=wqQ2T_4+jt$Jebb?S+w&~;3k zp?=zoNSn}18@&6In`mn$ZOx*s*|fEbw)WCi1#LCLLr38uPm11Fjo#LYz1ONI_tVzB zdRu*X=$?Lg=$#%Odhz?<=6k(7^s&xE|Dp5H2F(^#kmUWPA0DDEsrzZ({SEpHV8cBj zaZt!Ckzem|-|+~3$VBASQRp1qLG*@GjS?#$wxvPsZ+!acoZur$w1ixo&n=$+QuBJn zw>{ljyPfmfTWS?wcZCvdZXo94h~jIlka!}O=t#_MqtKBO>wof|eg?%M8~zCGtfE`I z+m8U-Gx*W@Hn8613-CR$YrX(=1Ze+y>X7&>vmQCONOYQ`)HMtrJ2K@RGk5T*XIxR@ z;GcocYk!OLLqfDS_l=J>$A7!^YW-WO=h;KLFXk=nd!_zV zEq-uhz4#3R%$vd!qCX%5yox4|l=k$Gy63zDAHNG9qgU(`JtWuAL(WoO^pKm-Lvrga zl`ifjckt;gO7wbkmjZN`;n>`XH}uh0d@Nb;cY6IO@+CJjcjF)O`Ij;-qW9G@CR>P& z03Nd)$%RL}b2N~OjL1-;p=`!t2v_3W4vu1+llV3j-pK%;*)Hu2p09qa=XliOV~l)M z$zPQi{@#3460a9P?vO9t7p|c`#$V!iT9Bp9kK)5d$C2Emx{Q!{P;z=FGk2%d|JQNy ze|q?S3NXodAV>ASafV+heR%()&G}aVVyTIrYC&d~gtXu&Z9!7gN9J%LCOfIRaMz_ey*}%S(tCFQV@g==&t_25j@`$5k`=(QD%0iM z@>_k}B)2ts;~YEVwZ({MmG#Y))M*D+&W_Z_&5^E+o9O!A0k?q(jMXIQ5*$fi{YB)S zv>+u(21=eF=q%FL4aA6I>+VKWYIV3Ft#okF04Qqfag1 zC4qhlPOL5?#)oImNnP;Pg4bQngx87TgZ4*g`NhfiOiaoM;&QZn`en+y(~wJt{lmPX z7qoI_Squ5~BXg^LJ2SQQ+dGSCYcXwYr4Q21v*1n6f)T&;6Iwg=`h4V_@RpYQA6k~P z<6?EGKfj7DMc>S}r2a794+jn{k27$zE*gHmnOx3mjCRd+dyUcVD%zDbtc=%#+899> zv=htEGIx!VctPkv^z9pB?hCj#$MEOKMrA9xH#Iq((7yW$WlrL?F4aNa?AF|5;d{M$GR2Al0*354s#}I z(*|N6xc`kKq4sfNDHlSMM+}-=1WtE?)7Oz%j&$y~sk{QgMjwx2nfeNEBUDey}HdizLM^lEf- zZGJY+lbKO)@p&?GR!mUVZcU0$i_cKTdS|_cUd4RIMO4Gr^K)ZCb^^6BabCF z>2PS@%=N0TOXQ51-1Ko zHWdGh)5}}~Ufod-GP(pAZ9_)ekgG0pDN`4D1{DEEql<4-Dv$@i1%=7{F`Kc$`lia6D?R>N_50`xWd@ zp#6Pjd@Qt}&1rVV!_)=-Nc(~h$^G9m7P3F1dbIav0z*@^k9aCyG5hI?nKy+dq)v$m zr~$9UrfX*b$T-`P=VEsg9y&n1<~J6`OUB29WtDt~{wFk}eOJwQ{Fd+jGxj?d-w_+! z=R5Q;`?bb*e!k` zm)4D0cdUZ>gB;sS%CIGU1DJ}2qQj!o$orbHPabR7t-mklJ?9=RE4bsSV^SXc%$X+T zWo||{h_8>m)mr(w5l?F6%jGw7^W2v#l?po9B>7hKf4!}!2}@neTb*@Jofeqd4+3w+ zQ%@bMOWV^~xBbn|h9^&I&yinqM#}ev`ud2rqdnyoyxmzdPA?~OG;!n0Jk%jDyOuGnyTb&KNTeSKu@{aF9yY=r@2#kfm&YX%opCj@nSgSbwx!{-iO7?Dr zJm~I2h_#bBu%G8G>s?Od&_r3s$a=sW8;gt$c#wJpo&x6dhB3Q48(0I??9uxXce(m{zyzg_iY-^8sLJ+30dkb@b9e_}>j004K3y+;Hm2W1c;`rQb{P z85eDg*Xd)14m@X!;EOSK6DuNP?Af#KSc5?`+juYKJwMR#lrO(!jM2Xig2U_NTlAF` zX5Xl{hHpJ@ztvfQt|Vi;LU4_~BHu9A&B>H+O3<&k4=@kqpP%Tx-dcTZ%QNJiXD-xm zzp;PZj~NK}o56izFD{-FT)+qAI$S=_N#Gi!ew-ApuFewp3Z_h zptT1LTBR--SLtuLL0cZ-uLpN`hQ__w>3K>YOAQy&-#24uX>F{(pfmoZj=4Z)?2={6ls#`LLU4R7iF*Jxk({4JdZ zG*aA!*-zcQ+#IF zvrODUW1IZQnLsvjrwF+-1-Zj~6o&S7ALhV)`*irleS3@V%>MiV{*TQk9Y9}~xoh|u z-JY?P@z?_H(Mjgm=g)AyiXAf#yTHR+_t?aU8ytnb&t5;4^I7>8T^0Hk+Am<<<{N$7^s`M~^g-(G+E`}o5tzw%ne7hB$3lgRk~J_ZM`(06k@&)Tx}{c$eIe|2S_{c(X^ z)@bv7D}F|sGxVZ08r*A*2I|1g4l6$1Qs)!skE1LpZ?s{P5nV-W2+8REAJD&8o&V?K z^tFNP%L?!gogY1GocEX50sT9Qsgp6?TO19&SWJ7xwC8cIrS4=U$+?zw$`kan7G2;Z zw#8P~#`+$$#Cp+dZ^y^R`R-mh$1057w3{;(-(Z|1wquqX+dg{DQjbEcX|fjIac363 z9eiD<8fQ2Ud|&6aB1>Ysj2-b=T0QOH=M?RjbqbA1|KvLDq9H-2A(Bf!3 z3H<5Fj@r|*7Dp9F;~DxOdroekKdr0r!_gm={_GU68#~@ws{!+$)!IY`cpgI8CgGF>(5){keB|9mHw>eT#ZZg zC%!Ky>EG$i*wMj5lakRsQ_erCxT4QG^}<-4X8q8d_}gUfgsd@TecXBm8}D+P^FzLg zUn4IxXyL<9hBv;>GUHwRbHC9R{*P!7*vxkPz}QGz{k3za*$(?D;_I7cybCP%IGK|t zh8fEUV<~o$JCR2R(I@8AX9ls^jXG(xYlJ9KJ5JxSYA{ z=@K5_$ywKt_9SN;GP&(zCHe&R;M>bbdQY4an@MUPT>PuiC$r59yk9g@_)m{l*V=$a%v~t?}XXHJw?E*IX6xl+&c^z?H1?kS|*lHuQZN9=ZOXCNb zj>Zo*%KUj{{fD9CK5+cmgk#C=PU1LjiOjy!xd^>CvT>$!k&SD`OlKjuiWJ=Gj99sb zirL5MXjj3nBiYd?KH$Q1M`NxV0zF+XJjea})Hvl#YDUU+pmb)w%U)V`Po2 z$AO3*F7*fvh+VT#>^mE=@5JG3w*l+p$jrcU`UAhaWWP^!wl_feAmxAZ7v%n<9%o>= zA@|{9p*5-hr+ilieQGohZO78s1``kPooNG#Fkje5VMiZZ?Grn(%q239v@(a-d-4+N z^4Ec^Fl|7$qhBPCa;d2|yV(;kOl_ZVt(q+Ir(Gcrz*Og2gZA2HmO6_J+G`tqFXg^R z`K!1NQQO)n-$4178QcA$3wV~v*}XfNe>9&6^fm+9D>7(Lh4$KJCOJ<)dlENM%h_*B zpuP4cVy4oRM$Y$b1iu?(Y*N7QiShRmBltb_#@$wR%Bp`rI?H#sm-Eua&U#7FCJwMKl>o3-=WIfo@;BrR#Ip6PWL!zEvgBa`&8XSG~4dN%8v1ztq(`?yd zafU`?-<0_cdxAgL(nse=hVBJd1L+*gfL-j7l3&Z1llO_vQ6>0co)kZ1a3pigXyzE~ zj4fL@j}n_-kKTdK@dUbu=p7i$3^crE)8}>=yRTmdO>`$m2RUnYAMJiJmf| zGfEk`Ql|U{-i>nW-^aaMF@o=9-$|h|=fouFsR*55iV_`jt6LrSHJ5t2=nCi{TO9*^ zo<#pTIq4fbn@#*chI;xyrg{>Zm$_JA5F5vs-xaIle(&jdKW2pfzPl<}?XIypH9ll+ z5kGnJ6k;igBu1#17$M|S26;6+R_}-Kj_e&5duwPl<+3R^gmM!ox1_`wSz4l%Yo}aW zO|kRDB=AK0s-0XW)RTKZzCq-5N9kTxAgnSEb^V)O}>*9uBmDV^LocZ`aPHHz4Uvd-tR^D za79*ZqpxPa-Dba+*r}Ji8|Y15`h7F~mOLiXXX$Hf|DeI1{$)!4%=Qmk)pN(l8zb%C zVC2zxHb!QIY~CyAoAgC=1c_%k!Fabb-X|IFQ;hd%`gKOe8~Gi8Zi3KF2)b#8Zd#z5 zR>nIF-Tcc}yS4KPL)5hpyL*_kZx>>B4+C!m9!pABqTwm7D0_Hh9@(&vu~^6)WJ}iJ zvbq)T(i_jS4q|U0&sp@7aSJCgAEz=OS2&y^4@#Mn!v$8KCijpBx#%fY z#yAQ2EOKLTW>Vt^9wquAI(6*abY`?JZ^FB#I(INfhc`}l(zl7>$}t@yT}M6A&5?=Sgge=%C^s zO{yObu4H}|JjwSaPDjez>|t&OZ?P~QHei&sD04DvFy>^+1u5qxt|nG43f|3mRb*r< z^6@6t;Bro>v@_6JXqeGP%vwm3yZO+VzBYB}c4nEY>BoNhAhzh=as40uU*=!vT4eS< z?k_d}kdqaCDW^U$f8aT&HP;oLXV@_`e_G8I+Wa%)R_33Y!F}hSXROgo*8G`P<(ACp z#m;vuTpcCO4RU>bs`GBH{>|2CtLI8*%K^pL{4%jhd=uQlcL%Yp1Gm`qwSKaXN9^fm z;ia2iv3M)cd8_avr(kOkeij|?1NQU9j?aAt?mCvZqh}YguNl4WszO(E$QW02Xtmp! zYs+3zj%=w)Ar}F1vMN!ZUxdFTcUZSIvt8yJSwCLE?+`kI>~#*(~7pzs57@ z^jlbKKZ;C$x!TuqfIZWmZ^EPa**Bw0@tu4xG$q%hPm(6Z_9wH%#lCL#O|Y(hSoRdN zu9iK;naq>vF1O+dN_P^hV$HUg*K4++3sk^5QThNyuVQr3M+G*E#YN0xVhudJRtPs7ObbgiD}2^}))?HS~Mx}6+P zL&-OFwVHJwdn@0Q=Xdk`>y*8U+)zW*te^9|L7v~k^KVl=oAQIzthaf-SBajT^)1TX zqki;0^7)7>`f(GotI-ubA3}Z|MGiNv@U_<=i;ud=ha|bOJj+_@Jj+h+nntdyQt~1p zcV?A3&mL8%*P@u8Iw6DI;I&;N0)YpeA>KkJ$s_4(JCc%79NDkJJsULSwCprExm{5u2mYfo&xrJ>dxp zF*{mJPL->teTlDpTH2PeF!27N*aV=>SlMzNvQ+fpX5O_R16oA}z~92-!t<+;Um~Nz ztO=@^^KNGi^C4?Ba^m-qQMVfPL}q(9_tnw9n7vkx1V^o!=BT|ft6F@czwK61mfXP@ zoS?r4ep-0GNMCdI%=bkJN>uiKjAYHJ$H62Sdqi^UmlpQMerS6^;Ip8Clkk4Ur_Ec$ zTwVG5k2bp<_{;HwZzCoH+idiZ_)Q9L(tXy@ng!ph;KaiC$rzjQqM8pDpRn}X>e79% zU#DG>hxkf;&B#RY_cw#X$FOrsY}Kll+`a%fE5c{F7TLSPVQ*{(k1JTa4=3l*DtyGl znY)|!SNnz=^S9}LhUT@luGi*orG6r9#mZEPA^DJJ`r0h9zLWd2{P#QejV4xXyy9y$ z)?cN${mgx%k?Z5(8`fZ+7#qH6?^cN^ip|%o#c8tU2zh|NmipIIe}QFLcqX~qW?7wW z*Se0&8rVg@i&+1NUaslI9%vigHGm&9AKP`&L432^>wVMh@kOkG#3vg2j58mi{wdIF z5pse$LbcVt=JhULO98pwpqVgh(sJa+QyzfyUb3#K`msxKgAzr47`Xw9E`)uJmWjV zCfb9S`@oA%1L>NM_&e5PrcE>jxf@`P`H;Cvz0sxa`ij`6bbFJEZB*<{$>1y*nA=jP zIfWm$LXW~{LYKm)D~N>%ya>+s!&@)IC(Bv8SFv`-J{9JhNX9g$pLO3q$T6(-hxzJ5 z<|>IL@2~$a82t#-e;G%y2MfQ1x5mJYtuaDe<%uya)?C@xX9uehbixQaOr)Ts*Ot2k z+W;_HG+XW*%FbrK%_0`_3N?ZbA~vnaM*6uP{idQ=v*oVgY>EMGxl0n9nk{#SX3O2D z*>dYxLseae-jTzcZT0o6fq_}<&~2<2PZT(u z4#s&@nx)o}o?M%Z|04C~Vm00AQ8Vx{ooN`Vw(YuFZGVxyST7G#lklN*aHhQ;~aZ4`ra#R{S@S@X?JvSpZgj1#r4Ii*cXMa4_&Lw zX)92oW?r0=lak?y6!pd|@O!TkJwa^pT$y*_Z&~Z*(dJzE-TZy6{D!B@-*N`Q+)AZ# z8}oGvvI0B*By&yZp9O5Q@f9Oyi;=UkkK!krh{YcO-Zti0ZEZ-Otkf&@lny~&RwZCd zv^b@HY}FG@7`FnWz*Z(#fe9D_%-KQO4bg7%E@))0%vEmYDssA#yVmcqc>mIcEV=~V zG&pM9vQE8KzUwA`wi_7|F1Q_B%|MPMV)sc>!}kJjDfEkO5t#!1$d^0UlGMItur5Qk zF_$M{lkY}XadW=|`(n7!O1-WZ!n2j=YGNlOcdS{+f@?0 z6)vFd@wcn!vg(cSle9lF3%@Aeu}0V@c6rTz=&^byAHOthbXR2}uZ;ClRkqrV9FzXF zjh?}OCh-zkdjB>mx}C~n@o8{pCpbB0A{rTw+z}jYMus9s+d_6{6S{mc`d$+9>viJO z!|3UzoIZJrM?HO8F}O=bUZ-J8PRC|ENR8xC7wf$UIgWRVzbSjF?r%Eh5kJ$!NQ1}l zGnF`ZBEKRRT*xo{P3V5&Zz@dd^);Dt2>GY^nnZRvkX?FQtfNQouO$9N-%FcZFW<;| zY>l=ayBqv|1NrrJ&E_3pU3T&o3-gQ>*llX04p{S)sPJL0yh>u-YWM!_*ueN+jjURO ztZGKzY(;-)LB@%FOPiNHdR}9b|NEQUmmqJ2|KsQOg^Y1*9j3pfOX6$LRm9fy3HQ1T zOsenZ{!%i~v~k^e?Z9$SY+Q$sg_``c>H40UkNmU6>3h4dugouAwomL^=wF#~jkpav zmq)jA6_)6Bt{wPcj#{0_OJ56iuHatuL;1c;w{yujYW=k7I!x?+=JmbyE;jPaiOuad z^nMREhwHF8zU4>#;vDKcB_-f392N#-}^4yw(-H3R)bJ=XQ2m2QS$M zzi+|zl_%F2+n30@BI{K>wlDEjhp<(2Jc3*&$7=xljpQbM(~JFU7j~k(=%P!IMXd8$ zSo5_agJch+Cg*lw_vHIno?jg`Y+y!TGfRp!8`!zoS233kQ8U?J*wG+)&Zm;+d>VG8 zY-~y7KfjIV%qy8Cw^M#5WwWp?U7=={@f`lld=*>RJ9kkQzsQjcHFFiuS1aUj|2pNq zp+>f#m%Rv2L*oH-IoY2ad>J{4KG!}Qn-4nO$$PNDqt~5!v3S`>snf_yF1Gk-*z2b{ z$-PY7*tnjd-XYYh`2=WhHvWK8Y+S2(&RR-rTw>o6J6BPpdvgak7+kD)MQ4uHgYyiU z@8J1a@OVz}h-@_XX_@0LJS8@S6xL)3*SOWB>pg1njm2u}S6t{wL)DgNu0~(F26;V9 zO<>$x!pz6$KvmX+_QlxRx7!nHZy1zNdxYE*HP{ojC`p<{xoM-hf|xCA4$TX>Vsj8VCNQp|tmJZ# zSbU)^E3!Dm?_1;>u{DUzL2M7$9EPKV*s(VZFT~yee*4%PfZMP)yc2J4Fx#3>Tk-aW zYiK8yKgHhg7oO>RfV1oW#C^XqD9+X}W>`NmD8|;{?@u2y&QtgUao!i5r-1Gif^UN8 zWX;Uk0ratmW?SsdMJ~CLPw?N)|4IHu-sW#ryiXGEb5fJr>GgBjFPV-XP0reAABlf- z3Ul8C=FaiZcDBVSvFKyTi#guqCilP~^^7M&9n0F}R1NV+spRq}R;da7N_3Vcbe4Q# zzTZ$%>eI=a@)q-*JQH2x)RepUb{2Icb4^iC)lkR1)G?cQqFKZfq0@9*(%T~i#HXXz ziLUV$y2b(g|DtQ`M%Or%YNtKd3z8FkJ@%?I`2Wv5N*#u-af&{Qt|8ZS^55)cFIRec zdM)Go&JUoaLClG#i)O*Ucd7fPD(arES=7_Ou_udM+I)9nh{cKCu|d~6((8jYHt#j> zir$V4@gP4Ah;EMTD~0dS8CtW^7sfM(B3IfbAY+EOo$Vv>7f*3TS#SJKa4c&*4cGDv zyl;hfPUKpgRrstUNn3sq8HSAm!WIR;x0p4g43Os~!SBe!iEr1G?$H;;qBIb?k>Z>Wywb$l6JCnXCgF&A@@)&AJyjXeRNx{vG_*k{4IbdkL@-%DK)U{5ysruB#Z#gCPY&q-sv zP9Se&jAYNM^yfClBLP}nAa)Gwabv(G>qPB5n+560y9ao-2HKW&z+;xwT3Ij18eZmb z_KSKS=S&FUp;r&C($9oQPpo}aI};)S-mnbU0bk8;)G zo_IE&dp%ERdi`SV`<3ZKpmltvzN`C@4>T@#zZ2OSrhjuNHy8YRSer~&5*ruu{|5BXW=n1yg}-A| zddd@{lw`($v4U0(Kr;ngTXMl8GQJI2-#Sc*-mfGzKFdEo^x6nEU-6YBr6)Zx61%U! zA^W@U!_F0iUrgVXiRS?Pl50AUS$tySY#&aCg{IC8QNj5 zeQhhhMIM_zqv_D??PJ_MKBMW-t@w<@&+ae4j?yEK6YKZOSrG-uIioG9Ut-c^kFw-x zk>C5c3hjlUZ@>7440_Y}%821NpM6aHm3%9>ee%QZIisN0oxsf+tkyxiQtl{hZR~g4 zPMv>~SS@f80RLyXm#ffFtM**hCf53P?Ovy`ceuY44HXVRLqDV~g+G&i)?(BAG^6)? zz3y(CswnsWddzO}KxD}oY=gW3##L}tEo&VuIa(A9RZCgS{>R?e>pbAC+&{*fx|5&6((XybJBTREpHfqiU= zYUm#54*m~9|9*HO5OQhpP7%rmZU6j2``za^yONdP1=r8utStN-oY@>)Z&QPO7lh7( z&}IOdB=$!0b2#9ieEb{uDjIG7sClA9vDM1iS^3bbdr`$tS3bY)81Ym~EZ}CPL*Kt5 za#H3N=0r<-9k`YL-cNt?$XBx!ebG-H8ooGtQ_h2B@3MAwSU~2J9aFL0Ov8?C zMMuFF!aRZQ8TDs_J7l@gPG}1KDWX3$^d}X4DZ{P%q71%hB6j8?9v=W#V?GD2_8Yh| z`TuOgAkF`@_Lu1Y4ViuXPi@D6HP;#q6c9r*(n>6*HQIcy-PbbL?rUvuEDP6WIV0<{ zoZa2msNLPe)b234{mA0z$phefG;!(R;8g9`od*^xl?RbA2Oh%a2`#2?Em`)^qlFWN zURP-HK+kzNmz?vmpKZlY1kd`jF7jg^K>rN<7~2)!?fmh#$+w+W|E$YcY!0pc^e)+g7`YXw|ZQTDt?y2kW6YLLyN8QL3 z2f2%Kw^=G5WS#3EpG5LQPaVs(Brg#-lZ6le(^6SRx#Uy&^Ft3)j_0{+$uq%ygu0Wr zl`I?eaNb0J0XP63L2wbeca^VsZi%m@VfwOGa1vhsb>|}Xe2@>kE3lFCOgD2L?*xl4 zaNO>U>>yrlFM6$E_hT(PN$P!2;GOI0A{L>GSc)$C<0GEl8K9jY?SyEjnRZ%er2EuIA1?WTE3gwS#GkkXzvBB=UvrZcm=b`AoLlS3x#f|Z?-Iw8s`(-=*fP0F z98ji~3;yIIoSBeqCEllRxzh)(K^GsUYVV-~|9jB*`_On3G~R$M-ypue7e4;%vt+T+;hgJ`d;F;PwUSQ&F{tkR%q*ba3pk9evdYO zJ{iBYW1sJoG2F@+%6Buy=)VK=ddEwhH+^Coc)Zbq&flO!Mj!w&W__M3AxzUGfT$g5K1)hy)IEayL=FO@+P!3J0K z3fdJp6yQFOy=SSSOL6bUmLWQj#8i}Hb8ulB5#4V(_7~B!^c*gZ`U}J-h~Y=>HgkX$mKHQ5BXfxaDD~7LwONjZr7Cz6ri9BUIXO0XeS)x|*>v*M1D7FxY{SU$`_k9 z_)9kS9wZkkYASgUW$yucwwC{hIksMK?AOjo8R5N=GgthL;EreDe4iHcj@?~g(atsi z7CGA>d8buP-G?u46283Q__I`OZvTnxtuTQ$64m4pw80sX63b-4h7#m^vyCj;2+>A4 zIRct#XC?2=cPXE{{Uq9V=$DZr4bI-KNpD&rh2Y2R<@)Bag<VA0EX~Q-%KA{`zN`=B zDm-P*0~^T?UUVgE%7TIEkr<;nGoi;Sbn0^E>Y31AmEnJ{Vorx==2VHTh`D{{;$p3w z%ttemJ^hx`=O$vN!`dyr8SqkDV-j&f$~&X-Z}PUC z;W_wjI|mKGON-&9Hh8J+C}*UOybt>bzUUhL42}y84t=lG1<_qB$gY{luG={iWRNDa zF4%M#Hoctp?Z~e8;kPDaR|whFi0nFw?5aa{%|v$1n&sRqe#Bblp!M+cM&_W=Hed62 zo3EuJaan6)8nK^g%t5k0i#dpWT6#Y2OkGYg2T3mO$TRL}ggMCM>3@DPhNr8CdVeCn zkLWyY?uEKsp1xIR`ba-K4L&rU*6_prqq2bMV!!=GFKW8v%TSihn34KxoP!bYO;IC3Xn?gyCn zEa;RPPm6qFeK`1C zcHe^^iTmg|ldBGX+yOt%h97s`#oFmE=Zl;x?tc`1Tn;~0!H+ihF$sRmh95`6kK^IT zknF33AM1>Ktc;8Bq3DF7zeHB+{Akk3BB2$^#E$Vv=Bza%GSnx=>f^j-tv=2no|iM$ z<~Ylke@n(XMjw&6LFObG5Ah?*^>W8iY~=Et$ntsQ2Pnu^CeCATY4QI|CYPk^h3nRF zZWeY^)(#sSe;A~%9qLCTD=YJ8_T3V-$)w^X`@JTK|*)v(Z0nepFFnq z)NW1R)z&QJfh_uirP9wl*Y*(a3|+YA9eTE6zI#a5i^Wdj;5%6d9fB669a+cCHol zD{GsRbB#4kT)C6`uOa4wHI2N#%r%YlO>EJ!=5%2De?9TDao0>N7XHqzz$4)9QE+!o zVLfOAcXxufyTDr#SBE+ezZ1DQyYNADVaM%i+bHY6&yTZb1!wF92^4`d4>+p@XY0XP z0XUlp&SrtL20fSf1)GVpEN%UF!IP!qY$iCFz&g;DW$<~HHYY@Okb8XZFf}rvI2yT3 zoCV3@D`(iv#RhOYy4;hC=S@Cfu~y<2nR6F5REb{=RVY4Lv;XQ7;`1w9KEdxvWW_1; z%G1~tWvwggn7y2z+dYD_U-?$f(%qe9tB+v&*!!5}-R>*(=X<|zdG{30gYrB+LbEMC{}ym=thG-Lu+|P>1H0Z;mLq2xn|{#{@J&}pBw_g;fed9SU}DKGJYJ#;GXzbMXG zw+@K&g*wh%g7by{|8edJ_r-ZGF^ApVSAzGe)Cbdk^z^#lKYaY5Yk&Imx|_)reeJ(I zy)Iw79)I4FR{v0%>uHs1+arw6-rn&U$QELbk2y9?$&Aa3jLUw;g?Q`Ga>k{Kaj_*~ zj~j$NZjkdrjWI3_I=*FY>mxrJjB$x8*E25i{xZkKpM(v~w2fvfQDW-#eFZV`=55&I z#ZEphyB}YX=J&_98WVHgmdm--7kYCBnfCu=&II~2z z?6TNP_gZv&`XX%k@MzV8x^Fmu?c6_F@>b$c#P^2-LCfb=CRg~`LJroz|D)|};G?R} zgnwryA2UfHV5nfhd>Al5plDHX%I;<+;X5F9NlSOJOG1Dk(XuYP%d)5m1VsrHBDU#U zx&@4i6I5K#>a4pjP%5I)D$uR_zIK=SNHQ}SzCVOnI?nrl&b>F81W@d|&F`1row;-G zInQ~{^E~JII?o}tOKPBINz&~1^XMML|&&u-)Sl`#MzIXS@ zIz9ie<&k>vO|!n6ZK?6eZ@@_$U;mBuUEbTlcZ=u+z`7s243s{G6Fbmx6f^rMef6Dl z&y77P@2L7amVDmvSsvK|?yi~x=2Z9l>vJNx&Jvr(h}UC4nl8sDA;(4M9vefJAhTt! znh!s?_`?_NCl)?jdt?-~9~P~(9N9NWd*nTG<*QRHN9y?eAfG#t$yfEA%qxY^YZ3I? zCyub_ranAUSbtRhi|+g)!V)<6}>qV zz4>PJ=9`Ht=((c4w^@_+iGTLH&N}!;=s@_UfH{*rds1g#XyPI8FLWz&XX>gqrR(%! z`LO5SZ#kP>>Z&C__nh2=&knTpJhzN{!ea&8>-QzR^$0aJHR$WWdy+eBz|FosUn4Tr zSkojYL3D97&kcIbj!SEG-}!3%5DwurbjFvFC)e|x=gV{On)qX@4)L7fJGbyzYK1uP zzuHq>_?L}ykCCZrZve9SN@0e6CNg@Ox`)1Z#g?VtE7PxuE!=AvsNW0f*Tht7EDv9% z8+?z%uU9O-SK41vj15Ekwd2VJ!M_)#kCFJ~it))wU+Q=IQooPjclsMSYBKLn!9R|V zLf)re^*g?^Fn!++ZRg>qS`F`x#D9~A|E54b|B?G0Icf%Qm1Co!j|p6iUBM-O8OHA; zH%;=@0(;%$R$>P(!ww8i!RImypUW(#=Q4Jn7umWBy>lwhqTdB(^K8o+Y{pXfX)^ME z2J(M~^O@pAbNyR9JCSD_cozFl&SDD=rQJN*Eu-DWnZy%jI@j@R{+rr83NEoBflK*x z%5=Yy_!N{+XDa&QP)n?{jT%zK(--42^yRts82dWozD)Ybrk@=8DF&u-z*IeHW$2@6 z&QA2~E5q0?wtQ-Q9(hbV_5xdjD~>Mh4X%QIC%WQRbh1kR8#$kq^BTOPc z%I(7kL4yyl?-k8|1brVg_<$IVx>qYSZ}36T-~)8bD`hw7e9)j@6Z5XY2ehx~h4#Do zfIhnUfWFl4^wrG=^w-S?^sCcb5+Bg_BPJiPhK|H1D|rq(g#Uym_}q&ZuLpz4Ykgr5 zUQ;lbG~WjXp?P4q9~ev?+`+m&(&WMG^=I;a-~NR6Z(z*bJP6(uPQZIN4}$wKf)jj6 zZq|7dCw@~-fDy@j$U7xA@*|~{S?wq5&g^orn$hh7n!kadM}xAA2Px646v;*WJVn_V_A>P_=Uu2 zkr~5y?yJa*8qQs>2D-4p<-e}(y!cCemvHbk-~HIePev>rVV60 zFsL?wLHbf_tiWLQ0SxMQU{JqH9}0$Y-j^6d9~gwMf#JG*ecdsav8I=@*7xa8_*(U6 ztm*Wpa00FcE_2M?d=1{!@8DhiF7SZ+KbWtt2d~N3z^nQLKi%*scn!JN7hVHD-F)2_ zUg2xt^(})hmcth-;EVI{#U=RSJiHo(S5KEawE;iKeHxmtS_w~xzvURuf5P*`c7kui zulwNF2IN2{F`ew$>iNfb-oJw9Yk2+&&nI}^hR&Nw-a|Hd4~67Cl;4jmxL-a0h_wIr z@VLMzJPuBkUeMs+J9LNtN%8nHc)ScA&y?DFx?VuO)t&*!QeQ27ji;{(^feLKRxy@3 z#$ubiGL$`|7mt5O;QJdnJCRs-t&13$uH%Y7qxxU}`WSlyyw#PQ7n;wxkD9I3cLTbw z*kx{VKF|%kOR>w=i(Q5uP~~J_pV(gbT`hc$pw~)XK|v~dZK1)>)%rDY2_Cl@`f8b> zui{q|d%%r7Fnz4cGm|=F^4^2ubLTzrJxoVmjqvWx;6d2}*jXx`Ao`|!{*w2mzcSM^ z^Nm^X_dvZ}`d01!9qrP8WY=t!_w9ZVn*@7)R4w%)TJQ_3(_+(KDdk;szfAspQF!6BJNC?KVj1KIDW5ve zN}Y7E$;7rSfTnEdvMJ*>9py~aTK8Y_9bL9Aj6Z{%jbC%_xX_;HYCPv%c;63?w$CJo zg=hWWWB929x}(4_e9XF|DLY@#VF0ca>VQv1x89~v zzgfOh2YefT4hx^R9ZNKS#{VA!zDcicIJ$7=iwcg__ba@uOquee!lOmL1Bc|g?wGAr z{ONBJ&Cl}x$ACj{BJ($Cw~iCh6;r{^B zTc+vwSo?vFkJVEReEbG^#AlO6s&fo_fp!*gMs~;0f#l-;f%L*T3!*cFkJ#EV8;>sR z|LVE5V?Q`Ie0PV;QM9Uz-#9NJhEMYU$Cw*A!(oR3lgT^JKk?zY z;UAtVRxs;P1o?ClL zhsz?r* zCaHcCpC!Lps0Zf|pCz{S4r+6oYw9T0)I{PIVg=-&9+$cjgURI`;z_jeS?YO99N|ss zlU3{b^OY7uk0!5G^4r80YOa+L>J^L6UahUPWv+9Paf8`kG{iGq);HRn&e}ASwJEZD z5YK+`(j@N)`6G=~J=r+4m986Wa@XLSK97>rMJvPW~uk37wweRDF?i zEqcV0x3m5ZSGsE4_crhC<2~{Uf{nbliT4V5ublU08}C)~9x?xa;62xEY8{RHcJkgX z-rLQ4)x1~3d&f%AC)lsMd$Qi2@!nG2tIyZ&G1pzW2Fb}KAHLhqGz)%t?W?XsMoDw}T*cfI5<`0AFw zUjbj+1pai!J@+f%3p#7!J>p^a_{zQkE_Ja>WJlJu!f{8slIoc z5j&Ime-7kvV2Q+5zkvBewN~5mS@< zPds2b@;vuDXnLxo?gs(8m_m>!w{D3sP_sm%1+8b9K1CA#l(A zpM!hkg=@oI_Pc*LRyoYIr`z`Uf;g6f9lPhcu+P(BPn-qzdH-{;PdjxT*vWgCM9#z7 z5B~O8gUi-BiM)sE{1mw!YrsD-iM)sU8}w7Cv7rZCcWm?Zu^pDN&HtYp+Y<6Ru0>B} zH!wCCWA#^p^{fb*>$IT4c>_ zL#lIK#Fs4mC&$74L$!EtuogFE(`tUV4tOZHfLb=@y}sArU{}1_rT5V=vN|`#UY*-9 z)D^EExhQuypI37&Z2{d8*oceaz}8#;oe2LLB`73_1Z%A6{ZYXm^+!@ zw%=Qw%lU!o{-Rw|;?Ip-nCr{Y;#J@wU(Spw1ZKt-V9dT8SA3}4%M+Zr^tO0s!MzJ} z|djva~aRsc&?h~BsW%`tK+$Lo@?0O@Y8~yEjd=;vbGlF+gdfv z(wYpT$seQ84U*~S%l2EU{kVTijcn|qy0v;NFt}w3`*J7a53u47uz7+d=;4K$+9T;3 z+_ML>0bZ0nn5m_gWe?QrGPX2e793Sg(D$>NW6#sHvq9=#RBNuI&`o##uksy>UNN5a zasoO(?VWY^v?n!8L~oG2vB_<<(^dm*^~I^+Y7IEm*F~egfD`7-%LUX~qdFWB`=cOs}`uxh=;e5~M zemk^VpI?>xJXfLnh3fl)+;_N|I!rG)Gr{Hk3--B+@3PnZB>sc1y+Lx**6HKvmO=2W zSI*8BI@j}StV#9WQ+n+`^)+k6384XOPxf`k+RH88j@cG(XNz@Zs63V0x2aCwZsf;a zWZs+jbjbniI+jY_O$I)IOi!Yk_l`|=R+BsyT<-SDUb*N#?AYDtg?o`XZz5B;&)M0{ z_(dm3j<;{D_D1sW%kX{3Gq>_g5IxJ+3|*FJ-i5`PsH%gB2su@A2u zxE8YibnW5(P3^!fXArjodq??d_PJ%@kLc$~tl)c4^G;@8PRA~r^Br;*USN+~M=kfk zX~#0o1g4G$GKKR6>-Kc)wmCbt&Y~XEOlr(!!y^McQoFjNQHxa$d;A#nlbcGk0cQ`7 zmNOwO(Is4W+)S-y`;ex5>L%cqjtTv>XM#`Lsy+T{&H3+j)KJR7@1COlb3OAcK410$ zRg|*NNot_^$AR|}m)G^^_l~)N^Z$Gox}3=S#rplS2kt-SLkE@Lj>>Nn_^n9)t@KZ( z@tals)+WD==QnuSH$d|EQks7FBKiGO)gHXf8vAwD^Zg>Yy^A`{&jxaO)wFsT{*gLv z&)K#gwX!!P03JDe*BdCN-V=MwhO);|>OHN&XCd_j?d&}h8D^Dzj(k5jkp9c`=gfK# z;UcM7H=DgHR*(I8_GLHn9{cfRZL`R}yMt;!!e*(_GkzbimJv6jU;7fx8!qD6J9^qf zm%clU46%*VN0XMFseSeia8-Smm0MAlyzDoA3!Y?8ptA;)FOu?fwk1asYEq!#-u>#H7 zY9(*}m(+K<4SjLAp$o5JEgCM*pbK+7wua}1qYIa6*i4ddi9b)y(UH0w5B%)2W()f~ z3$&6ZsSiQCBvvW4KK^4OH6J-&nVOH{C>GN_L77%*>eI; zf+9PB;hvuf;z1>meu;mju2V++6;=gWgL zTWek)oMm5cyoawI@AFCH9bn)r!FjmX#CiDY_n%FAKU^erhAXI*kinIDm%HG(YUXT? zE9Rf;ieYmRd#)$;EVUA-L!Mbi46e+m+nu8Jk%yT}yGAYU|ADpw&__M=x=Co(_V;@p z<9gLPp2Hj!U!9jN`YZA-9w=f>!dCB^V{t~2r?MU%Oh+E2Gp0<&l+Bos!R^KM-i~p- zbG3cwxPJ88K#_|!WPb;Bzu?L7ed_<5ZE)!I!->CKXvplfen!Yg3~yo&*a}O}{;mcK z>wwMMk!|yK=GeTU!8ZH{QZq^Hd3}GB)C!Wl7F}E5=^a`VN@0`K45ZdF&t<5ZJ^DHA ztcT+E7pZi@c3r!k@|sLfoBJ6 z-#ErBeMo<*9cbJE@a}qVWH~qyeA3^qQqmgNa_+_2O6`b!$?&&QsCo6Yv9`(j zA#${Vb?s;9O>0@#^fMV!TC)ZSZQ5IZ%zddv<$qh@@8i<#DeO2mh|&E}k!Ih^q_m-AibvDaa~J9e_#9XnN6?mT_0)O&_{m}fFI@1VixQsBtHOG6jB z$#Vvn&jPcLvv2&=|GWd)F@UpY2Ux$=bOzl|@}l!^<{YFG)VNM%Z+Q#jGUW9WGh)pG zyVNed`LEobA&W~nn`Nlyv*W`&mqWLD&K`Hg&Ig&V5MzzPW7X@N9p_oU0;$xtU9~4f zI}zrgYgfHDitcejVif8uo}AWiy-wTA`B~b(xkJ&;;sjcn}s;{Zn(rc=TBHe#?=s zX|_hz^Vh0**T%lizHr}S(1_?U_3F&3Z?d*h&z14D|10M%(7&9A6@=bd)4Uz4pq)+d zVIA}XPQnClodU>=dZBfs3x^L-lp9)PDly#qKtb;aab#r(?tf&ld? zCIM^Zl7*KS46ru3SyP3!{^_TmHCv&jQtew!)K*cnR4=uwe50FoptB~^(z)reX0?9t zo+*bmUhn;vuYNzk`zIOa+m?D~1iE>ZGXYEdS=6$m`mN`ogS9E- zN@1@AqnfwQ}0t@U$5p9$8n9+1K!Rp$lOZKxv7P>fLChxbl=erQ2f zg9lX$uSZ_Lwzj^1Q-9$b+IUWv!99F~E-QSa*Q(W8U+xdzw1~enl`~P~%q7-CWD4t; z_mIeB=)MNt3WIx%`jHCfz{uJ03g- z-<{iB-Vpc^yo*018Rx7k>Ri*Xt)rTi2)c^bUQx!tv#p}Am?EA|jI@m2$);wkve z#BW!P7K?zhFzcI7ow4lNGdu_Tw*Fg9zuEzw8o<+_KJq2YkT3Kr@?`;dlA4L_%&p9& z39Hy6N(R?(o}u85Ij^F|%9s>OYMcShOsA&sltG$TWRcWY!B)L{ z$%A7qzXzU$27|1F(^Nl}R`K&Wz`LFQyuQAd9B@`_=xpOPZwOyWIFB(FYO$^&k$<_Z zf0=qc9j)HmIli8E>Ujs)3&}+*a>agboTIAz8D*MYPfPj426ykN^UsmCEvgo?jrl3q zt~ITNF6Wb{vJrfb7~=92<-1i)x=>-dX9V-nQKrQ@GE1HN&`;{w6SeOFeXrdU=t5FY zunPap6RM5WDEXQdYwanz9zoj+(IM78MP8J=i+oV@fW0IByTDvv8OnSP1{dH?WQ6Rm z_h)k-{M<(E%Qab6>N8qf(Q`1#S!ZZd^i?H)En&Oj@eU-Pt*M%YnnK$8y%`5c%kO!Fm6yo3S zoZNWyomXByCwX&~-~rq8xI8uqVkvEYM13g&;j7JCXF3NNSrmzup@I z2Ld~pW7cK#UT+8W-IaYqU3WQ8q8&TwUK_CrbYt-km2m#Tb{Bp~Y@j-L(ti&!mNvxZ zxt)2sZ2)z5$7pAlkONjgZe>BewQ1r%EVx{0%lob5F3dPVp43J?7b>54jUPW<-}_?2 zkVCU_7quVfTQb%D(UBW}cy#0j$xF7Ynv?9eTREEjN_j@UmB1GPz8cy)41G*{Re!dC z+%I`{)P{{}uilP(=~JHF%3Sk&U_AEuIL5yMS`c{)jO)j4Jld6|=Ro@H0$(a;b zs^mL4i7F?W&wg;o+8GNn{&sNK0S-ICVF>($!J*9GTjXr}_QG>-YV6I1PgYsT@5Tpg zvtj?IVgIK&BgNk(hiNW*Sfth#IlK*0YfJM)4l+j*EwKnN7O<`fyt1|_yA7CSjr4I9 zefd|^@sb+B1GZmk9tls|S$pg|u*Il(Y_2!crKXAMgZwGg2lc#0Q5)<|izk9j$kyWc-DraPmR^* z!H->`=7IX1YR{y62akC_BIk$Cl4m9G${gl1P9L-@ZHaCC5cD86eJ*32PJU{bwcLR{ z-$lREEsn-w_GpZCl3U(l)Ouon&BGHloz9EkvBB7VL$Ukvu=~o^uurGd+p%TR%1+Me z3~^4UE0-7meF+Rg-{Bg@1RNqyeB3J~zv#i4z)PPp){z!_qxc1~B%j@;@B5Q;LnVLB z4sTI&T+x)>Va}Ib&6m(vmN8#~%OE~+bIw|}U20Coqx35nDoC8%s-5kv`%W3gMcT+EXAUT4-BzbWH)58;~(f7|*&n&Oa6U}kQ%159d z;Cl&f!OpK{e&_RjQ}P^hR(mj|X{VQ(N}JGQSTD`_$3}13!F>}p@gW4aFy3mN27W`k z?3aysvNj!ceB$n9H4eTH0T}m0rg{Eep&9-7RbFj^nUkKFXrEj_hk%E-}madQ7^x9&XaXo zz3*nNAy3Vl@r?~f-v@rl=M-7x7~)#lx?#gn`M#Z;q6d)`s_#V~oQr&Tve&!oU*_G1 zU%lqLoI_aQ`600N>DPjfN8onQui#Db4>|7e&q@#d%6Hjg|HEs*{@@9{{~ZSG?{D02 zwDkjBwprvJZ7c;|fqk`%yvx)p}tlq3@ zFCwcWyQuRIpJ&43j#0>Hc)VLiuR})8VO+D5$Ax|X|Gp{XTF1ENAjf9wV>0n5az@1f z!EFeg-^X{sZvdS_*O4-me*H!FuX>hs&QCktx(V{FV>~tz^BMvl``IrXDbOmet(V-2 zUXrWJ>x8E4T&cq@HSzVcjO3gpvGsdsV=j0LDjkS9TTUO!ZWSE~nVkengnI3xke{QV znfIvk&N{exDRviUiQV0``}_3!SDdG%p&xP9Q-b|E12t8Pv=f^&RE{n+H5s>#)EZGsSgv5j;V~d0a(g)n4VTPjUze>{_xxaPXI>-YshG5x13s}b?kAff@TS%oMQ@HIya~<(U!q$kk0%Vy1Xc%YPBPBk7o3fIfE@C9;7dP;tShSHtZVmQ zfXnZ(56S8o{ff=g^$GV`YsiBc)L92?Vgq7-M4I8n<$Z8^Fs&&QoCce_*Biy7fx@(= z)a&881YFmF>oOhJ5#G%p*4!m$#8JD2vw@@2!EJ`$a%6@jt+9Ng%UK(H{F!oUOqTF3 zdeLF@A_w-i_5v#;Wx@8U-k+YtRh&8yVdf99VqHOqNt9o$#^y$Zgb z$g}h*K1zwl2f_bN&DwUD|LJxsXBp_{K6BpW`X%5aKzu}MnTRZwbE;VT)m#L*f0N7w zcvgBJJahV`HNAt=55nZ6WrprO}CVUk0v5_pokA>i^$QAp~<*{b$)z=o3^sWtr&AM6BMm4#m z<|jB)xHZ}kUs$j2>A;l|$)|5NnLstOBe4yU?HkcbQG$LY`Thp}oEY zx>vOUu%Ft;X|W}o=ektRbLA|`a8agb2|gFmO$(I#v_u!6r-)4(M1~}<0l)njYXJP; z4t>j7BklKEOD$UCi`2YlFNiwpBZJt>C=2I(SX3;aXC2^N#S;_CiS=pd^sEEb$P!~6 zV1EGh<-j$(*Es?C)oVRqt!=P2{q7gc88V-kHqYtsbWYIWiLfT%+d3j=wX|bT>t{x2 z_?6RJZxh^IN}upWI7>lRe9`ZM4@DaWj!hqhqKzEES8nU~`qDxUe&!^fj6VN*{?e## z;;$&{oxkMY!u)U3VlVUumQCPcC$gl4wzq;8tGG~fkFRI{Il+_@ofU1TfissCWv0q(Si)yNqflB z_HFpXInznCYsgP&e>?hx zT6w;m`SBqWJHch5u0Q#IoEP4}d2`2z?_SZoQSxe{nJLc53TR>#e3_l%oUUlsVd#C5 z10iyzH|;ip&rar0;FLBb2O@0Hu5TRUWIjiu!zf>a*jE%qJ5pYR9q4ZLl@{NbqR1FL_ob49d;|uL6sl zXe8$L6k;d~VDLH=n$82)tVgeZe(CDmp~1}mQ0ODi6?-5lH%Q~pj2BGL?46$-C&rMZCcLJwTs9>6>RHRxSgv3ZLt8QjaTq)$g*WMPw*-U$0qT@M|6DIE+Wt z7c^i|H3iW-ReeF(^TcPVFIe{|zB9S9&uRwO!g%7YMf>$ygzphEu6rF@Lt@8Q!ECMx z#u(DUqp4pqU(@=`m*nrryqJIH{5bl|kIYQ~+6}@}?W@q8>xhfnEGt8qR?bMYlHZ(k zUJ>!ZJUO2c|B3jI#csKYIhB0g1FXqX6MFgyd}F5n3w%wJ^KsmFG==Fy_Q8hf=OsBi zhxR2;Uh0VypnJ=^?-3K2PE0`gr=-24n1F@vs;$&(w-qj$if%fEe=GVadA9KWS3UnI zTqN&L<$dD}r9YsJzPep^{5PqVs_@tE;@9A>;(BjKpWM7>jCs`czjQtSjv5CS${fAo zRX%D{`NtEpnn28Ixz*dg!s_ifpR%$u>TrfmJDlC;CMAY>5~o=UqSKuv4-y-~=j$7f zUuc3mw(YN(%RkZ1&Sd>7xtDqe%nPxWnADqjA3yC<{H$FwPl;bNx&uFm_*qBe+Z_Fh zv2R}P;bVNCIFRyHLTl=*hw5~v=x@@tAKP5ol=#j2yf=F0ug|r1oKS80nPcKO-g11X zjbmOpC$Sv2+@sB1A8b^yodd|j4E&b!k8lPOpA)owFKy4@o%Oskdc%j^?X6DNVKjde znEcSL@&(hLe6N!4;!mYL3!fv%$p~#03cQutSq&O4SqP0{cS`QW0djf^rrp|f8#Fv| z`DaSr2n=D~3)iGOzs7sMWt_n+&%LZacPG!~lUr!EZ9XeL)g9DlFZkYsra<~*dy06@ zhi}BhnfY8~oLfIDXpR;uPGvntFTTxzd_$&2u**eOh!4mADff;eCxhreA!KzFd0EXF zNHtTPzE9wXZkggxww^pE_f1<+w;y%AQfz=QYpE_b_2*~c7ZW`xPs@y=I91HN+l8Lt z#xCoR-jVH@Igt9;=s_nkCpou4TdRphi(T4Pi~L_fKdXq-NY3TQPF2%>-ruqwu&+lfv&wcc{n?Co_=bQAooIY33=XqkdQF2sIPj-6gb3gmMC4M*x{VCZd znPJIXe*(O$N7s`xUpFZI%Cz6}TALVaqK>-Zb=05OrNw4)?$a#%miwsd=g-$F#_~L8 z8n^u#8|Md>{_AI0`ZsRlJlJ|_KiQ;9wP6=vTO?-|Q^vk{(CXL$15Xr9}|JsU8e zME^Zat@4xL?=<-90)H18dgm$bNYnEa6NSW9cYnuo;_dI^Ti4HTdWhIzWFIt>jm$f* z#r&7R^A+Y{+#Jt|i50|6IXgwwSt8~q&+g(`X$QWL7_AT5m)a7d7nUMpL>C;M!}+c3 z5%K(ly{S>!3kqC}nRz)4?)@QRn*HjJ7C-9PTDwE?6*C(}N0j(RBRb;6c~_6&lre^A zA-SsaT(QPGwb(LfJDqYd0ObH#IBv~I+>{W z;AGKfW&%4|4^}=O-eR=T>4fTzJSN~RN#XXJx=01k#gih4R$y7 z#)+x$5W1G=A7$b6d&K{gC%Ku%9O4I1`n<}I!{(Qm#NEv2)osXc;^VQkj>U$31z-9r z*i^4rtc}8hr|=6T^Nh@M_nF)K?kCUk+nl$pk$cIR+s*o!+pjQRfojH7#+a~ET2;EfL`sh~I@T;14rT5maZ0J|%$eK*_D`ZZ4A^KI3)!R8IWo2lW-5K6(N5`_W z=g#3tK-b7~Z0wY#Q$P8vIgeaUf8iRh+9z1YzPwt#w^5gd++csX&3OPHSOI(T{LqRY ze)2;@0h>Ekir-;@xi4?F&FO=#I);{$M>dn(w|@BV`g=NRSu5+cC@^CZu3%u3=Pl-(`F$LK#Aa+3~?}T{g zJuS6u2LEz4b{F#}KC{XFQrG+G4}XHPd3C#8Y;Z^G8GM8t!oSe?WO6E{?aAc03Lh;( zUa~LiZs}{9xo3;d=WXP#o`)YU@lW5f=8CP}1%FK2VQK23Jr}ZD;>~%)c`{hTWWS%- z6c@`^P3>_@(&% zkrR5nM#V2Ti%*~kymSD+Z?Uh0BjW(=jg1*|Bvl?S7a4o1l{%Psh8!w6pj4zijN`AK%#6pZtTz zJ_q>zyl3n?uQ7J^V4QmG>akB2T4($_*e{^wlX>mhC9yc>QfM8Wq6?Z0qE`s5%e+GC zYEJhsu3$0v7{@!^v`$Q#cf{W;w0;|Oe%PROGxnAWt#|0OuI5Fjb%}|wz6h<;W;d!^+onAHJ?xp3(SaM~Yt-x*Q2z zhKo2ScHI4*(d=a%DSKJBaDTWK8zSo!cuS_)dge`hiAHXcPRq8GrhnwV;3-qqO5~}W zr@2IGvR3QoyoGn#>6>$#$Oj7}M}4gK)NoSy5y2MXW8}Mc%wbR7u2N@ccd4H5Z%fy6 zAqttpB4j7?7-T-%tMO;l;LqSZkr3yJggH+{Z0|VdLHG)3w}^I`w;=P?UXATt1yI-`Rp~zth24KE2QWyb{!N$|T23a_l6>OwU);bMNF#&~a# z7pIruf525dJ| z8`Y(FpljSso^V@fEDWAZ{g7Ioj34`H9QIQ+_EXy=XXv9zIt>_SM2M~+WAb0JIJA&;;;G-oS|lY$?_fe2h){bL@4jk#!QA7Jq@{>2x))p0xC5J;~^`o?L-{WIZAO zBNk0(u7iv_#JH)2+Wu*Sx8r!3xAWlCm7&Jj&hVz$PN_9p>SzA;LYHp>!`sm1HS$Wk z#?8fs{w}#0w?g~Wa6O1@O7IS_%NWEy79F>gT7;R{2unw4TZLb{{r=>~oZ9z&&wc-9 zp;oTdb0UG?|5h#b4m{?rBF5dlmZUfR6#uETC+++jzdM+Fk7mCoLO)&fCwSToo*e9l zevf%G?~6Skzm*!lO@|Kf&D`T-p1aRVVBY^r&J{yH@{?Z~7))L#b0Kv2pwt3{4r?Xn zu|cO#KlC4f{)5neJM`ZH{dYqDA?QC0{YQ3b*wGg35346aZm66=^kX^Ga~rs60iK=U zle4ng=aQ$p*GkMk)frlr%6ob~R&+1*26yGEe5?rg?7lyKAoU1u((ivo`Wgl8ltMf6 z$z6H>QljD_b+s>`?r#{XR({1 z7xylS>yKux0_BVwdQQ}FW_lgIzbLv)a6nT{A@e|OMwypL@lbTiVV+P?X)MI=i3Bw* zrOxFiJbN%xf7X_zo(;7O0jIZkLXGUlnCP@xKI3`oN3OegJwxH@k|Sq|N#A96lI7`-DbWFE=O8 zOGcD=vGu!ZUNV#C<(MTF-Ko#VSo~DobUsI?bAiju_ZPcF+JAw0576H}nS18&;z7q% zeVhXpkr8U{Yw4o|Sx8%Dw82`W=Hk!!Tuxhc$Q-NEJtc1@6Fo(b2d3o6Ufv;1>z+ji zLpCYg&4HG{v0i_TTref$+|Dd;w(&8YW`3mgQ|tJ{tm7NSAF%>|1TZGk=KBVGCu`X= zyTZjDKXiL=*}fbUHmcd zeh}XOjP>&ads^em{jwTQLL(c=-;zDf$3@n{J14-+N%Gl`Ygy5Q%s~x!8IYzOIcpox zcIW4HTXL}X@3iKuKW!Pvxt6Z^D%$3AU+H0AsGUjS(pSj}w z+mh#MDsxraXRgYS8Nes7oC1HR!N(c!avYr8Mr}Je?@-qEhsep&`8uz)O7gSNq5b@J zAD?IOf3YD4+Shu?y*mwf)9=NG++~f0>Plk?WM2qfLZj};TIN1n_8ljBbZeR=jhI?W z^aEmG!DYzvx$xaQ?9KBQXUA!aGg+^QAOl`tE$U2AcUl{8Pw2ecnF$``yL^Uj?g>ZT zPW-eJ!l&I%(Q6i?tBC#hd+hvoB;Qch7sIX%NiGPy7GXa1yf%ANV3|wh546v7#r~ah z`m$*s*#D-BJ<{da>C*-_{?w=1fS=KKLYc@Y*0tpK#Ak6x&iDhr|0OxQeE*$X(-~hT zA@5|J~RgX^k7;q|AjwD z{}L-rXioOmqPGAOx=#H~!s~^|aBJ&?E%aT^Z|Db-FXIolp~1Tm)yD1 z?fSgRTs|x^(I$4dwHIBy0==-hzg|%QOIu|r|fHjLV)M5c>xn~d5Ky;y- z^ju@s`d)cPnp#Low|2g{K=}FFT!sYylU3-?b;+{y6%8_V`vgR!4m(eD+j>}F> zxNmB&Nlx)nY-N|}bATRxn_$ey5*ce?D&uDCk^?rH^W`%Vr_V|5gvuLB{+&Lawx_f? zvK(!qADhp*EHyvRcWCjqc}H|5S>MD~Q?X;@$9v>gPqJIvQnFIo>g}$$>>Fm!b4=RM z$V*?1?HVYAK1#G$2mI}usKuwiGo8iQrSRXAwD&7=Lbs7W@BuaUq4TCNeJ!MoMYJXN zC7$)X?8PM4QQ~*cvsZE_`4;U%vsvQ@c%CQMqP-D(vmVRdW!gU?KB8*!aOdL(-hqE_ zE%Ehj)N^kiyzQs5_VwhwyPkzKb(p4ZpQyw*j`q0nmzGHv*yDO=ZW zw;Wl(p43I`)1Lxvj!S>U@m>Tk$H9w5J`ZzwULvQlGf&TFd;z?4RD*Z;zjLlDwiCQa zp0Fua$N-c^9}gL@3TnY zUo!l%z%RaM(KGH=@aw*4iAkuKo55fDp7GSy%RD2#hR@VBt@Q#|SxZCMD2IVn_C%2z zT_G`q(T}BVoxvJ2gB;2kPrIEE+4t>fZ5dhchQk#vPj$s+Sacf9 zXRn0#=(~*ht+S*=&F|vFm)y$mc;v=7>eT{TrIel-}YDLvX^9Yb@h~ZW&VQP4stbQ4!&;m`y~C! zTDewT?X7Fn)!JImRr>K2YR=@fK>QK^=OXVEy10)F%0>nu^EV{<9>hhh`ycf9|AU3% zf9MncC+_b@M-sV{thA%`AD2004ADKaIU`3OI1-8u;W&xIOnjfRw7`bP;l zsUo){HN++FM0Ou!j{|L$;CnrZ{OM}eW%z3OoH@lQ_ebBX-TmIJ!~u}!L1Y*{n3&}6 z+0mZ|k?VT_{qiDqLb9GS!ssWAZfU2V@FnQ14Vq+q5c(7Sc{t-pB*?Q%4Dcj2ArD(B zutVnXk6ddR;0f(U=iq*#j+%FplZQSPDx8OH^OyYND=+Nt2?cqE`@W#9$7UfXH`!)c z(+`^kok;nGpx^dt=onfSTuGj=UU{#H}xGx)={a1UITpesGiJ~GLD6nR&JyhukkoQnLO zPQIK2KXH1##WNLIm5x77WR4$rwi|mtTXvzRBfkRgGEVS^{&LncfI5uVYU?GdCw;q3 zZwnuuv}Iu*q1o1Eqb=VR@W>v>P(rTkncVq(d=w9GevPrG(x#uG6u!i~F>dkcTV!7q zxSNm9qMG^hfkSCut`aXqZ~j>9o7qj5nspkqY=u6Erz$_>YvPA|N_1j$!oE2Ese$8g zG5!GL^vFB4m^#yD4svNC>kTpr`{m;v`z5{U`!bd};CLdqnV`?5?6cDIz4iH2bI$zU z4IjS*jn^Sh(U;JNMdz28Mz?LIV9z&UPqxXR3zK#tkJ`6lGot4^M9)`sB#<8oLxvRT0Qh7Yn$i}H$h{vMuotc+W)%36}yf6n$mwALrl4D z&%Rn>$}Qjt8W4R|?Wr#oo=#~EfitnKWxxHTE9v(*CXxqFUUL|pup_s6_H)^R!=b|g zeTMNv3miMB6BD9uwFWYWGi%7D;yi#4(0AmV4AFDbIBV!Q=OE8SFH1w0NasA}6~4wejm^C{C=EshpPAt{`X)H4U#t2jor|@4S7bj@%Wyf z@yxo1`}|J-^80r5+h?VZahufpJMJ+02wNU;^VygF_?`{?UV`ppfe+}*TfKEGh3)-Ce>V~5=oT;SXA4NO7lg^n+@_olhzVps;^jO}&v;Ls6&+Bn2S(_9t>e5R`RjxpiYdI9J3OL%bJV&AJb+R;F{tkhEjryV#ny$-C5ZDA4ID zX3o=2&H^g>@T7WoM}hwC&M`VY6v+3HzyMAU~Tz^#?~SBUZHzGf*-jeO+F9Ob3l#{ z1IMgOi`mO3{3!hUFnNfhXj}Bfckva3;lmK?L4N9=Wp`>Fl3jRxOmO;CAe2bSu5Z^r$k4{2ZJe_%V7W@`78u#Yc7&e9>5rRfm; zzH8L<3$fR!Yh0FI)2~*Gb(WVoj~n}Bq~AI8>zj`}WNn+h7@n82vY`o~n|0)~zI#%q zbBoY0bhDFs88UaPvD0MkiUsG;xZilErvJvHp;@oWoYhu|%;24M(5-wYW~!w?_@vGsN(8MU`OZH_2cP2! z?;OCDGZ1r#!)=-5^x>O9{>A-`u6SS*=NtSY(fluOB%0+sK3}2RYoWe&p|;@X7V2pa z=c-XVJC*C()J9k=HUEb!&Rxy_bNu^?>6g0o#6#nc(Z+B1_pRezBlk7|OELXWw;o?% zJVM(S8gA}o)7@!|HIWJafhicY#)H5W3~>dvVALA-owvsQm#p!?6>EIdt*&SCvC9RP zDqzuuROR|kTjLSN6)79yj9ihJDF3UB`6`Epb}=VYU9o;PWJ>vT=S!*DUHCI!6MyFB zP4LIN@YqoBnqH9c)D*>_JK={y$*Px6F!q# zPGS6k_0(4izUzur;ZLm8{fV2auv3twcUR(z5V>ahMBgLNWtPRFZG@(l;lwbzH^fBThHd&4(C{LEvUMl&yd z#>aXUdyaDyN-M`UA(PZxy1D1pbFDT@4Nz>yUcTB|aH??3oCm>WJFq-~|KbIo<;d;G z%6I7tx&MaR`zm~G^x2O-1?Ec5aMPH(YxciW&(})szlHvT@O?XUR==e1viSC7Zl?o> z+>_d6fh1UDPo~HcksrNj%FMad@lt?(qvumvqwlkq`{KcykQJ6*KJ)(~hf!q3?Zi?# zw^(Co`1r<>GttQyefW+;to7oT4|DCl2dxN`@%*FNE@8q2j?<9D3x=X8g zmvJ6u?EC3M)-XArxwED;_Tt6F>+kW~A%4rVq$z);j9+RD`c}|BJgo1vw6}h=7}~qW zSbQs7apl)xthb*}=UnO1n8g?iu^V;H%`_PY_subU5$sRF7u%^@i8zLjh@)&k7JxHZ z%LR|J*4Tir8ag~Gjqmm%arp~8lk6LNz@URg&_TysYpkQNG$#J@)#!ARqZxt+ zPSM|pEK6HzR%+Yr;?HNFLK<@`bFAUF^uSl!4Vh)uczzL{8>a9mGAET-nD{r+TAv{| zO3yEIsC^XDj;^yZ08Z5vq==eXh)&IYnl8_CVtLewpZ7jQO@1^NimkDvZ5%(EYQ72Q_J*c9tl z|8f_yvnp5S$;^X=hGTZ-R?gcKom=cFtHNnot8XrRD)pC`+aR!a0(%F0B6rSR7WzwXm3KR_IbH-7>anZ$#2-qm_wMcVD|@~~7EAp}q2G4(9{uy4*wTG* zAbe~7o9n_l!3X2=g9Gi}s@wp$(eVFk;6?cRi}2BF9Ka*-91{lz6fB}YxULJo_(PN7 zf8Bsz#w=s-A*al>u6-Z8&wM-}G|E^_`efbfrq89sbuJc4&P!@9`kZOd=kw5K`*Csy z_o4^cWnGpWrj)1yd&iHB)B)|wT;ERo>=5n#M#EQ+4so%1NH4waUZcHE^oK)2^Hb5O z$)h1>QtfL-7pf5bWf0>F(N|d3WaP6cqmM(k<}(t*PnOR$i;OrDWA$SviL4ZuI>1GP zO`Fh}T^0-Fl&O9!_<^p~zPSbn41L?5{RQo}7&%DNU#r6N_4OLDokagg$M>oGhpnx4 z=>8D0_t1YN-V|B)n*r%t75>V;-V1+Wo)dWy27h)ZJl$Z6y>v&t*N%s2 z5&9cNe~}jUK&^1crvEna#wbMt)V`wq>G+Q9eu>ef81vpcZ|Gn8!d-)}e;hf3o%L#+M4uvC!eG63c=Z?u2rrWI^V})OZ3=nA}<`Qb;SFz z*(84^fDM;NK3B%i$$i0Qk07r{k9AW!%SBG+E%<)E?ioE0yW>;z$u{WnBk1xN@_H9} z2)iW@mA!*)Q=FlXrZ~gc5`Rzaf!i`9ua@UU1}{^3=*Ob_)^0%mSfF6dPFj4L+9X0a*Gt{2;ceXg~P3tBCI%(Ar>8$$N82|V5V*`TMsHpIQg zoJFxAPB3qcPA%3V{IZudqXv9dt2LPQrpJbeKaZT<3+`&bT{XB%>ib#V6&M6&spBDV zZu%1b>#^6bwmHz(u&IF~oB7Q_rVU264b@_uLCqNok^4dn^S;`RLqv?3uG5$AVjCvrpqb>Tzds9$l6PdpQ-#6BJpqRwk2QEw>o=|{18854Q^q4TW1p!wR3goW1Pzv zXER2bdvf|kwk=^DlQE8Dj4td(fuZ}|oHTHhuD@Fb&L;x*1m3r~SLT7ACBzGe6Stwm zwWa?4iS^akgxDHih##pRSr2@5#tm2E_lm3MU%=wZ05@n-uKba;LAyfXA z|7!jh@Gm&-#W&a3SBFna@y@F!`|wWT)iuk)2VKs);9=n#^G}Zt4pRO)&s2#I-rUPy z=MQ4roJam&vBtu|!OlR4{S&8=cTsE1w~2H3E+O|qgPpQBQ1+X4eZ>4DH_9BAt-+8M zs~q5pR}FH-7Ysr7#Wr~BE#mkgY7PzKdvLDvKgbW0@A+f2c)=Z7{IimOe!+i3q8a5 zE^&?w`TR9K&N2U1Xo{FZ@D}a$i$SsRd*{V$p{)RI%@_Nb zSY{#bj-ZWH^l6dtW-gNG@M4RK?w<1*b35M(-I32-&9%l#{Jr;@J<)(U!J2fD-!3q& zWP9~Bxep%2 zK9%cI+LSqd@J{kspsm_RGt|0R!Mb<>I4;_H=jZ;NG1e&U)H=z}o<|;WVQK6{k)DrV zz#O(Sj^HQAk4swYp;TAwVGDVB;)7vMU$&5E_ao}5fR{zgwaD4U_^7t$FV3CJoSO6b zedbesGyPYxev+3K+adc#k;4||&{qhqi})|b&-e-Z#lX4Lg6P%*E;09v)5q1s`RS+d zV=>Mr9OUPcbGJ8{9ou=<`uw|;x zSI~#mz2z3stI&V`q^Z3c-L){&87aziwwG~s5PAB(Pp#f|a&_8yuAO(=qtG7wD)l5J z_7piyOcDK9FT#7uh02os*L&@b@kS!~hwkq_ZE;5#jPx!7iX_#b`~{&&Ow{va^C z?T-8Rx#NL@?s)KBcYIq4xx}-{C7NSlA3Qnrdx7yytG8o$>dMY&2Dz^p&MVa!(%bg9(->c3r|k1{G%d)c z4d7Zhm@E597G!Je3CiNT<_VC?64(L`)V}F4P1~RTtl89!-O!@+y*Q8e=v(#+rVXQx zJ9`s5@#~9ULCF)Fz(QP$XORu~-$pe3mC&D!F|S~Zz{&orSg_6#>m=@SKx98L7>U0K zp9J7Ta+9EuAx$IUjR1QYe9)D==g+jn(#QcTdNgfoXuIgj>55mxC$Ua=B>}JW8UHe4 z{2}aPa+G7~cj|Cz$+aJN=Wbw>KBWCn8+rzC`Jpj%m*}h$iHi5|4f=xUu<*&d*m@!C z^Dy*xL2N$c%EiL$UNU&L*)P1V?5aH07HBI9Z3$hS`p6wWeGFPlqKWo5Wj~KQ9{$uF zj~sW$J8ZL^;&Y0yZk&J~Pqw+^XD+$pXRo;9=MwJt`SjBGh0N0U#q84fXEv^dTGNF- zaEvwJ=*lbA_u~>zx&)tJnySUmlxy*`#FozC%Q}z$=)ycLesR7Q|EyYz55WI%rbc5O zr{;>gGPjEVHT*x%|2zD5^8erXi1IBZzx4&-9dKph?`HH4e4w!+d`3b)X3p>kWTg1U z)jlPBB;O;CDahQnLkAtq|8Qt%1ZN8+zf*{RN@UG#_@`z{-V<}A$475gx^<@HZK^z2 zTdQ4t7N3FEnws?4%4eltWoq7Q+9i2fEL4bpzR-d^()Xu+CrZ1S^*qlSmCe|a?UOv_ z6g@Ot=;nF1v(<=+>iSiN9uH-`zi=?Cw| zB5S;(*c$H~XN`x(TjSvg#NH-yFF4RyO8;fRGHGbN*IndtP9|41kG!B0_lQ1<-Zn1H zDK!zKHp1zI7C&`Gi=Vut#ZR2q;?dJuoZ8s&c62zwgZzh}pD;8Q8M!2P0B65DG9Jv0 ze1s1%r!;nmm{BMlohuXDA6@5Z_B@`Ic*iz)sKu?{BM0i7;h#TdT+O!4>+)|slKbcU zSAP9(a_7+g_|eOAAL09*d>36B+oeK-&I*~|o4C4e)9;D?Ec&ItIL&$X6HUc4zCB2< zJz*K}cy7UvN|iHA-K6+2TZZcaQTU@|~kDaNzb+es`&lVTs*`7YSx8NVQD-JPn+YF ztKC_X8#(5Rk8~`_4T9TX8$1LYccvlhxy~gX>WIqj-Nng{J`;0?)#&b=Jsd2?>m;}+MP>tNAv7y@NkCb&YpM2 zznSq+?){_xI`?D8U+2zn{&nvC{C*A`$^2bF_WX$7_cD*ab}Y~B|E(W%=Wg2>?+j^^ z_67d;9Y0W?(V1RbT8`aXurzmg0kjHj`k_s9v3MsuFEJ&FpZTG;0Q44QA7wiLWkl9$EVMH6LV*N*2{j%FViW|CDdArZlU(( zvvw~jVy$NFUYw_SI?*XQ(J6f3%@5uJ;4KJ$w!@zttaUzMcR{0O{99zAz%p0%2H$|r zp|A7OC+j_Hx$2vBU-ga7(TUC>zV%MgIndRT?Tg&6PGg z(K$NN1<*Or6~;6*tW!G2#}eO|a-%v2`azP;u~~Eu_jYs+))rs2p>x!5MaLAKLt@l^ z*7yC;-7l%_p!5!Gf%cp9J)ap*vgecMq~-`~k%DEh5%bX3FR4|pwZ24djMPg-hf#XT zA$0gdN-s$hy+pnDr06B+M165I-M~@j7S?=pqs}|@{BIvHbmvWj*KEcid~yg_g;)CW zi4Q*U!zY1j@QKJV;giT0@W}`Rjxc-@hEL8wpJ(8eGtkc&c;!qGodaGu6XFW5oQZOU zSI!_)&cH8ckQry-8PQA5z&B@*GiTtPGpsL4fA|!;8v2hy|0kgTlgJV!cacy3O{~eM zmHbv;&$HBee!b7S&qZs^J}>LNzQ$+qS!9i`R*Q*`H?SN#Zv{5PDr~Vjc)0;yUPlb6 zQPw^!-mwLl(+qEK)#Bl8@O2CK3R9h3yI3Q4vsUh9&3u!!^KC7DdLQrMryL)lzgqCV z3_V~udcX?oj#cP~b?|fpJiQK{ZgkPUi}qc#&pNr)Mf=F#7VZ^JrhUf0oAK{u{BJV; zw^?`gx#Aa+a;d~eBl<(4`i|&y{92!9C!O~u`ZRv1{aN)#6QeFS-$q@-(#j%LuRHIr z$alo9XHOlzFx^g)v*G-MiFsm6+sL02UxN6dR+E2GPn%qw!zovqReb~I0>yF9( zp}<7Lwnx56{PE?r*hf>5U&tTv!%E(a$Q?5$%4PVKL{>d^_ENLNy96JjMAt!Qlk)=$ zkSUxeEqP_^mtl;X7-J#+^CJA`bMT+0UYzmh=Fp49g8u~njpiW71)thjd^@TRHT2}0pv9AGFm}$b_jZ!JM_mOGldwgEHz5Nu)pHu<;F*{RN%;DH)^O|!toeXIw^Em={kgdJgJnECekKn*x!rleubgd)H zJm2%k^TY&YZoBJ^OsJsV=N!)u|3vd_xQjaDyBGuZlhi&{J~>4rLs^XodwiREucQ4?As1g zBQZP&T$D4uYtXpxfaLM$@c>h+{b#2?&_tkJUq~|_s$p9yrO?EB>uY4zA$&Ki`-J}AAYXR$AR8X{3rf-_UTtK zHh-JVDKezw_qIpe#Gw<^$kQI3c5L0M&zcXA!&jh{H2JIHvl=ay&-$ZWuE@ORxU+(!FIz+}u zZV$Do)V(|9-dye>E5N(DH%9I;KmKvtlRQLiY*UoB{B!HQmLZxqKuvus=b8p+(~9gY zWL(u3oK51_mAy(faCXzcru(ad*{ zdj-&^v@7q1x!T8AoR%e=r+pY71H9-!-xE5O9I2-z?mU-!WAt_$l@@glLXdmeN$vbU z*3Jb!s_NeNdor24BOo9sY6#&eDtbY2O3z`E@DON=JzjEH7jkUBfFT<}owYlTEv@wl)0jCWs!)}9npPcN3MfHz!@6KQi zhw~9C$UpU2sk?IRcHF)BGd#8}s(r=M9VgP>Zx~DN627|5bZa7SMY%tRs0Y-(n%C_NO(AbRb_eEIGpw?T4eI973$D9WWjm*Bm*N`Qx!~cQ(FVi~D0j&eyJ@74e zPGvvZE#cg7MmYbM-f-(0?hmq3%71J@PE@C#3(CI1%l;KvgKn(cY=zw4;_Qd*#eI!a zbxUk{$B70%R9SaiZhqox6Ev&ZoZLK-;t71wB8MtJ=|iq@o;qZKr?# zSy#@+j`Y#r7JgH#x~RbZtr}hyTC^)d3~?J{tc-p+FJ+g?EqtDP7$z;0XE%9s;H$nSojw--!aV0wbR z_4*v(v+Rf_;EDs6`>cDdOzVHq=k%Y!vorWB=g<9Y^QL28<3peiKPFe?V{%14CRgNR zaz$7#W{*C(BEqF~CYV?4=!*9Cys-Qz?aLaJn_K@X`Mh=5%9-SAy1Y>gjw<1y zE#wYa#HD4MD{rC@c^H>1%AEHhqnfY_vXEKLW3XLm1AXxo~+t8B@j4QqEChU@CbiMSc`q24?X3fljBZ(eOW@g*_mu9e6#*8_SQk^~H_M`Wk7z4S`Z|mC3IL3N>ZTqNs z^l!ogc-MO41nRSFE66fq-aL zYTw`tT#Kf6s}JFradyRVe0U&rt;PXdVesdisnB=iqgJW|m!x7QDvEFCLH15nj-1%0t`b<^;s%4L&0oW!Kj5L<+&D z@aneh;&Lmvi~(~K@XDSpq0Yu6y~lTrCCM0$;AgHzzHuIu*&87o>m7}+f#=M8#Ez3( z8-yPw92YTe&Oe^s$~&9Er{eXhG2KLNPj;qN%YD11d|~#gV$PJ(UbmO|ZJTJzZ_Uu^ zRq}u8u*b)7Zw5T6Jwf#wskK1AqW>1|3+5oO#lX!w%-tP~bH6jED%fwk>Qwu5?Kx2H zY7x957~;b%a$ezU_+9qazkP?C>-VxpyLc8Y)9KNSU9Y|6F78yXM|R7@^p&KqVfcQW zm)@4w)IR+veYMe71^XD(SL+Dog6WHVMR1{d*#C?EX2j|50`u0LTRQ(s^;R@@-F}-) zzsk+@Med|;$MaRqozh&qI$u#NjB1gv*p<^of&Ehv7zq#^V-}St{D=*#E zck|$Z%Yj3aQo3%^v{l`5SPm6-u4*&&nMk3>5$*V=~G*& zrB%Vc{=3oZar^__BMv~$fSr@5+CN#GWoMtGVb`&?eX$I~>&2U`P!L|PAntVyIYPtO z=RDl(bI!)j%Lxx-pR;Q5w@xYZkEOmqF8y#O>cY*OF*`Oy&2{z~X7}ZMJ!HahXq$j; zF=S0k5&Ss>I=;vms?^*sMK2tsV-Aw8T%x16mCd*e< z*_-dw8rbx>XJLQx6?Z@zo!hd7{SQ2sT5-+lL$5yl)cb=tw`CjWw(w5d7TWN!Cw#)S zj~{yE>Zjk|V`Wt-Zsz0MmhEq>KBVtUp|$TOVrU0Bw;H=+JkPG+*+GxL+0o9@9;WZ8 z`vqsZ%u84nA3OD(?2=1;@)4FXJxzT*+HxAXZNZ->J4mK zPwfXjUl1O~YQ_va8uM+y)CdkXWm>=73%z0`@Hg_P-}TnPS)9uiN4F?nr`pu9;ruT4 z#k8-t&*p06Y%V=lIc0px{XLE>N|XdrA3D#xqP=CGhI{mQ(t+bf;7Ff0pY|C&^UE2; zGgm@uts8$Ge34WCwmz%ghIHv`TwkRgr8E zIb4H}xAAgoeIxRG+2vL=6aM+MzU@6Y8If#qBQGRZWkb$LoG(k0Y4X#x=O1IvrQ7oZ zfU^QPRo6}Py8$}%2fhKoC*SjbI6Syl{LzI6EyhcZqU8B!(kKl4pIzti9Gf*v5k0u;R!poz1EFwS7SGcAC~pE zSO>8puad8kKBm>jI{853ip6c(zm+y7qhIz7HTq@JA`kf*SDh2DPgMEHzx1VIK_771 z^>SnzRbYQUt@+Fz|3L+rwc8p0k$LtR9D^U6bw=xSzh(^D5BbO^+2+hC*>dUoQ4Os7 zt}=RP7v^n3B??0Z)q+IGyA zSFs76>56Y5Yu<}NU(KOLY*sTzXTkf>b_I0|b$0F9nu|iS`>__i?;`3FTj3SZxG6#I z$vdn)vyK?6nP~FJbME#`$Nn&9m~GSA4Ru{4r(K#hBkvw@=&Bqp^xO?z^hS`its3Yn zoQb~fy{|!IFZcAm-fakuPd&lsCdp0oYF?hzYZLmklKs4bKLPx+pv@-W$JU%at5<1w z4mAhQCJOB}=#q;}-rFqTZ+r{*53qi|5BNvg@VCsi;ol3)%u7>`v69c~a~AVU{ZeN| zalEyPFKq|@Ea2Y{{BwX`dopJNzj)joLqEnKe$_Z!*ahpHUzhri0B0$1&bfR7dlbi$ zmse=7yVuz8&e2}47lD)f!RBXxGcm#7`Oz6RoPv#YVpBiI!{=GV8fV*a#`EEGVvRG2 zHKxON>ZlE0Ck&T6FkEhMW?-O}Lv#Ii{YM@Euk_QrhCN~H>^)({X)s8xi!P#5#)EUt z$k$1Z;p~qzn$HDi<;3JR=32deOW*&@RnP0ae{w#%c+$NP_iWyM{LrAsZM|HH9p8^2_=MJfYW|&jShq;eqhU zS?^U&Zsb*lM+U$n@oB!)fP(S-K7l-pVfOEJ!|dOoO?<46{aE8u4dvrgts{}u6UV2H zj^_Mw$fJM$WCQlrjT(oI(^+RU9^qB~{Dd@Kd<49T|ApHJ8LvJ+41Q&UnR(G`Jad6@ z)LdcUKfCV=L*H49qj8^?oV@S(H$mUM@MGf(<=A88X3w+u)69ie$h}8~H&RbZ>tRo% z^{sg@7&~u&bwOx5uw~O{d>Sw_4@wkc=l<;upEY%iW%e1(=?R~~BY#gjQ+V&ITxazP z06%m}TyDc(;=r%D{0#6{-D%)oiY#la1O6R0{2so$@JlA7!!I1}$8Vy}t2tXYC$IWY zHfQSw?L5=9u8bPO7?M9P2vMK({IPL=zy-!8J9Z+^r_*ST!~4QdZ{Cq_WcXA#1uuF> zII(MCkejOCq2rZW*GS`M)lSnKp&oj#beX=FTENs0@*ipNEG*@7hkVD5X(axinPQ)i;p^O+kVw80n`|@p#u5eY+*EdlnXq zwx;()$3J(?IN;}`EQ$>>$(ps}`}eQ#`^ijxpUm%5 z&|S{&HG}QnXY%_y`h6# z0M|hK{knnn`+ws1O_`jlpnl;=0~gnt0rqqI2AJngpB$Gu9n4If&JX%G{lK;hPTx8% z^}!wEQhTzneUNGEGvJMv(ZzhW$DwvK4z7t}yS);py?1DDD(zLxH0{Z^J6%qD6Ycio zGrH}arbe-Bg45WNvTbw~ZFLpz>MEOG*Xf*9YU6-D4Gwg5`mQOq$FiHg$Iy3uWoO?b z=zHXa`~J+n3_j_@;8WNB_Ba#$?Y=hA*AV&|p4L}C`YQTzef<{S(C{s5S(0&*Z@*#8 zEia5qwZ1qmb#%|TR9nqs(PJwoMUVHK_RxvpbNnYq%<(s5kH<$rr*=c1mY_?Aphu^n zLwC;eC!d+;-+Sg0^1`eepHRCO&_~#1@9yt=mC;8=wxN%VY~$YlCZ9*J2(F9=KV1*4 zL>{?16}lQdx`TKB7oWw?v$UroF$fvR)!X0JOXdBIOl&+bj=a{)RAcRoPQ98vF4dF| z{;*a48ola{!_}$F|B7+UcgFF3-kqayFz?McnD=(xW|2LPx*~fVeXyh2(XVY4W*jl; z&{OEwk8J%~nPwk&y6D$*JK5L==t|iK=Zu4U|L_^(NcOefmi?GSRwZ8YhSa88lR~!6 z4UD0T_eXO5Yj|NK@2X7`hiCm#^qk#K^I?!VgGKb8+us+S-Isl^&~!F?uM|(${Yvae z)^iV(mw@uwBkEtJlS{h?F;f2N+>*Ui>*UY$?l_;&djsW>^%P3`EplACRx z<1fU%zJPD{BKtpFyNUU>%k}Nj^qjf(J91#YsGeKPSiR`BS@%AEXdpho5-YPx{tofa zhqf22F|kg`Vb>3+l>HAK4xY8`rgWR&N3?a$`&WPZ`!8MK{d=7EV{Z`qp#LYnw&sx9 ztK@sv{&!vA{X2O-vv0M36E@m0{1y2&937Yl;4?*ZzVthJpRprYLKJR|S z;4`+D?~HrNTE@+1gIj9ezU2CLX*M(THg@uK@a_6{-*i7$XN11teD3h|5`Ao6uB5M# zb;j50M%}`y+x!*yK$2;VUSwRhE#tOe7q~uzhtC7?r3TBFD(_><%9=h#Rt}Uebv7f_ zSbwXLmEuWvU$bPsYy-EQM#nZ#yic})u9^?J+IFpN8<=Yvc>gV)Rvn^BUvlkJIOn)Y%(w*=k!jxY7uoSA_5j4&@$b(PJMC%n z^H5~o-%>_B#aO?njGD`sHGd_`jr`qtt~{>PcdZAs5VPR3JC8NLg-7{j!uL78Sx&+E zz8Uu(0j~3XGy80fv+M_yPj)ug&G=}>H~R=&oy0e5L!KYDV_i?a*@>&q^34QOnr~)g zcNgEx+^Ynp^L#VL^=ZCYKk%iTiS76+kKnHiE`00#IgcEBADP$YVcs<1r|fx{IyBq) zj4W3?Ryoi&@t&*qmjB|7_h*@RGTSOQJ2)j4TG~G?o_RCpW;^k~6@8}?&%_r=IP#Ib zDn>p&3LlLCM?;X0CE#ecBOkZgINFP@aecc=eMS$jxH;1=UHwS4O*dEPG3RzAi3hHH z*p3G-Yw#+bX>imR94SWoo@`P0#P#u3_78*~8;TEBcZq@LY~m8meY3(V@vD>6WJnIb z)!**OrQ|#8(>r3<=#gAX68~!_HY2&Tvj2G6K`wcncFLW0kV{GG0wim{ZMOq{lLu(0 z-f0K9WZEHKn{?!o)=(vvbk!WtRdPvJ@wl$p*xxJrPo_`&zhG}0_PX9S>@(@%HLqdY*Hj&40X$vef)cJloFTsvq) z{RHvMS+6rr(P$^*oZ^fVd6nG6IP1F52;81SqY|f`U@seAq7n5dk~^n&;;WW+)^x!a zwEnAU#Q9+c_I*7&X;ed>`DuMFqR+)$`gHi>Z%U)}pF$(seesX1t&NR{- zOFzqK5b<9lZ-|!}dE@Y@D{oxcqV%`t<&C+vfjar;c!8EOzDJ7l23dBORVU0#CZ!GyV;-)X)UF{S)-idd?O{ ze#@6K>p2dNJ7U1)7dv*>#YWee^_)AfyQYHUX`MI@KG2C{V|T&Fvb%(1*;SHb#=Zi_ zvR~5IcwF0OJ2Hh>!Y+4>XB6+u>|En9c;3pmBvV}3KAdNS^K;jt?D%zKpFW&_)i-Ql zt_SD)uo?G&^Aa29Pu^?eT(ZK2c?&rIqVQ=xbcOGSUEmW9T%SmAnzbkg$66yWYf*JQ zoEUEpgJZJ}G%pBM4XiJK+h>S3?F6@n%WQrQ+PD=yU06%`{CRN6-|q_7 zpe}IDxqLi$L-+2x(zd_6MFxKcmNwSUrc`vUpB-WSEb-;m&xEt|xJNy8i8FzL{EA*$ zh%oioGZbpUu>=nX0CKyBT2_QGJmb&Dzd{hXSUih-`raQtXFZ* zUAK|Ecj0U<;(YHRJ?-_HI_Ael@VkNeQDe`KnfSD!$* z|1_WA5@;&jTMCT~{fNzoep}GFF8wOWtrIOiRsRON+xnMtmOEk}MbM%T@hs{LlsY-6 z`^q|L;p(<8p??kU?qCkMw2=N)KJl_NT3pWfhjH)1y4OBK&DaNPpv6jbZw<5~s7p z;UmsAo*X_OzT|Aj_A6Elj&Tou z^Cu<-w*?>FH`LBI_`!E@A0|U8lRgvcwLt{I0n49cA4g)WQRK+rSn|7y{VslUZI(fi=o&3 z&}#woO4v0rpTs5=z4jsxU05siS+Rg~ZQ%>TCI2K{HuO$|OZJ%SqX@p0Hf9!YP#<}1e~rQU+59?g@nG~ z%dp2>8P^i)#N|MK>wpzI%mXf6Sd(>moDrEHUMZh;F1W1VdIz{%XX7%5xVLaA{JAiC z`22bBNSCC;^GX^#29}(1f4gH7uIxXBxWr^^qCA5y)oc?lu2fv&R%Fps>Tpa!7EQBd z(aq#RUl67oum6$TJ_Se9?HI$d%^4jy+LQ*RGp;kd zoLr)EJ2ryt-+>oCyLdfY)7NfiU*Aq1D50Hvrya$0`p`~4r=2b_7V)5X;Pc`-bBVc3 zL{E3bTzYiIT=IxDPx9oha^fxr-MGs@=HT+nN1YdUF*X$UZwD`*5qB{*8LRuZh1#{u2Df`Ri)W{y}-F+J_Uc-kYpE9%?`wA^w?x+}Th5^!9?R+5_Zb zzQ&$~vo%9(p58aa@WX!D`Cea2_w719L$Lp~hS|@yOB4N!KhW$Y&u%6Dz;HX4Z!i4P zycmCAiR}-R^4+!jV(^aQ4F~$a^goAK+0@m)?^&ITEI7~W$LsV{p4QL(^iz9>@jI5P zpSko?W%uK8`+3E#?V+~SPci*a52TO2{|DE>%h&!i%i8t+U@L3Y#N}%bCEK5QAA4~4 zUgXDiHy3GNi5c5j??5wFV|&+TrnX;xJGn~ajg*wwI0)L$ZT};+)Yo5j!s1@Ii?20ij4XzkNDWC0r)QlexV6P0>g(Hpf?N zF}`BXIlkhSF1}(8d9pdh*BM{YtpD4&W(R})uM7PHZPo>{w3fcstfjNBTXjIc`V;n% z;B)nRNx4{oa6e$0TO!;JwdJ69n6Wc_o3Sg0le>-I%6{7SUIv$2SVPy|J@$vM)p>QH z`#H~v@km~c(>g!z&QkscZE4PAU7i=t?3EvG96mmkIm3?KYhS1KcY0VujPsle-*%m0 zF*U$%#BRW26Eb2udEh(f^8hx;%Z`8R#*$gHbm|~#KcN-5gz>7joaiPx2>*X!UxH*p z`n`{Ik3ER7o`GlIGGE_c!>{9y#q>+{={qKbVX<^d-|l?%aOea^4Vvo4ySbydslRBp*Ql;KOz%@#QBiV zWZs0}QoUsDe~rxrf55&Y z)7P=3L%T*>c4Yk#(aSwA*gXd@%j^+oC5JzG zKezxdapA5z`~KOB*yJss@B9e+qc$Y5QIj+5{lU5HX%u|a21qrX0(T#2ywu_X);3^O zy_p8=Fc)U+e{7?!_Sd>wsVUUp6s&GMW^w`Fnd1{_+dk_h+c^s;FESUH?L8?uk!N}4 z^Wd!dTfx~EIH|>P4xGRp5}cdQhx6~!;MCbrE#NALy{<`U-K4n-eT94N*_B>X4eL1k z+01?m)fyQKKO802pnb-T&_Vl?BnxVw2YjEhOpS*ThL0zRhZi6V;Ag|T$OXml{|kDH zw<~#9_J?wq+AUApGW?zv&bZ%SkW>F^r@ZLk70C<9eLFWi%fY=B$uVQH&tXzOZ%kn@9lR%$@5O&eEVRL>iFrVco?N8R4jY(@U~U*HM3 z_pjU+k8S}z)zwMDtHMi-V1ynzb4j%v8o26QBFS-g9u_(Bf|_17pEFMFW!G6oW-N?% z81M~y??;D+0pHQN>=T(k>`bnQJvPjbt9sb;(ye_`0_@VQ!-_fEgEj>3FMw0~egQMw z-rkqLOT!I&;EjD2dqynQO_`T(0rz3>xbb$@P;SNFxs7WtuDz*+bV;}pnKKiaGaFf@ zdDmFtW8V8B^_*4G1a7x5@3uPg&dssd%)FC+-^#p`o_HKMN;9qJV=pk)-OTA1X$!m+ zfh+bnP9I=d_51nDW`8zkvl;!H!~X0XkFQqxX)ODeO5{sm-|i>wrL$BeFPi`I$f|vo z&+O9o{?d%s#1zHeM0eE%(_;dc*Q6h3vhTlmDD?%~*?KhFPb9#`ouk(fZ ztQdvfDb{_S{W^P3-#qrTd3Gt|nUfoMXbLf_BUXNuhwoSDdCnrdvg)If$eejw_R+H5_DD{Xx9(^ zE<#qN)kt*rAGYETebTM7o}lEHYFZ^EtA|^u#vzuWy=Wl+RQO`A0noPueXD)@qnWSO8P;=6@KiG}DnF$a zdLGEhs+YZ-U6@_pfV_@7`rbVQFNR##T#onGT=qo%`Tu>i0oyS2C&@nA(z{98`#s;6 zU?U~qA^V&$)%9@dFxJ@nHKm_)@4MjG-uLQ@Ou7)hdxDETHlDY1#dA-_4W4(>pXL0s z_e0wCtHb|vf%?^T#7WrKv3G>^oMb@bGko7o`-`k-x_wtHyJ?drH4(hYW|8g_En46Y z)t~w?@y2b~gWHS^=WAPv|F!}=Kf?1Xa{}b>JLd+J6xinn1np~+YR1zDdI%o#+RW_G>p0gFX2^#3E+2VZbIi0`y zl97GhP<$bEnAl&Z^EyQPfxwg@`q_5;u9^4@GZpKH&XNnVe+JQ3!%lEQ|24oy95M9> zu=$YdS&m$H;qW5Y^$c;*vrUr_M_~7|Jy84nwFES1-T^1Mm>fl}MnTg2zBQTzsg5>k71QOqhO6YS z_QyOENQov*z}38t7#na-#6Oq|jpjJ^o2&0;JM>Y0j&$R}{}g@5M}!vg9)Y-j7QIYo*w--wF^wrxdX8cmZJ}s&#>N>p7YHc$QiSlwN21rg)@g; zx@k>EbXx}A!?fY%psBWutpn{EwuZNjzu{}E?8@6E4sQpYYn^>&4E61o%!Cu*A8u5zP`-R=8N<79LDlR_&QVV z{x|vh)H|Qf*XQqFxA|SPk?$F&?*#LPGx_kP$X z_i)Znd?xvvbCFLkP#5t>l2HK5AdA)rJ2a!`#$<)!wmKh#TN%s zH!=^Y5BaWD&Hl6dY`Gct7DteYQT?v?!Ytq#&-2t#4|>2ArrAR<$E;qY$G;o1J9$c(`4eqMkZ1(`R@|s3zqha_^XS!O;Uu+eT6SC!PVT;vb8d^m$+M-=As%Z~(#zTQ z>i;CM3d?%l_P4C}lt+lZF>3;>Hyq-(8x#0TEiaV%)&Ir(mfmL-Iwm=z)bGBdXM?my zo=7BH?OYx>tar)Jj8LnrDqw7yqKMj<#2BgX``)BUoSR4tyA4>AqsmM!u5w*fH@<2l z*C1=gqpfiAj)3~Q9`&s98?`*)4tO78C6qd6z?h0DUp9rk&?$@#XNa+LEdk1$@Y!lPoB*_+2bbifMSC_6U*LmaN|m+Z`C+# ze^K@4`h;D3Np1gFIOiGHj>_eGOAy(M4eQQ1cYe8Z&&)G&dj$KX}*0J@p}52|TS=ZO(YD_Lg%V3BNZo zNAzyf8s^PZVCC~<1Gl~389lYujU|nT-w!fK>GwbWi8v*nSElKdM%lK1CYDA2F=T1n zmZfXmxLJea6UWhivJDQS5LQOE8vuzgp_}pYRv!e)mm;uj=wb_m1V7$P3*+ zjdPTymXa%2nmTbSH6ZRNO`UwPEc))AWzqM%Q~WJGr@+G&aYY|~Xf}RmmhFdvlP3Jn zX8h13@#_RW=@`y-H~}7vFUtJy^hNC$p=#|l)PQ&J7vuS{R%ToMpWCND4<2lLKP&QW z=R&<-Pt`KI_06O z&%E|=`}245S?xLXUPG;ptQJirtKIgS7@O+%nHU)ITKuH5O;_RTPJzx}gWeUM{5EPe zPH!qlX5)7y7twEpl`7B8tFM8t3{Oq5kORDr%yea=_@nwBD8?M-?y^{Dp z_(!26zL?@Z$dKuYMNZ6T2|Pf1jT4c<-0O({^dzsF*wiN4Y@A46(8t7lmhcR1r^lq` z6O$U~>xfCMbz?m~6*nm*Zi1Yv%Qbv@Hj!)dZ;8#nvC;4>c{C@-mZshJG;oeB zwxUVs){cBxh0iCwH3_=6bG~$(oEgP5hZg44=X!{>`c%IUzXbefk0!oGwA7Iw<;a&f zILBUCpUFM)upTX z{ON6C`>FZ5<{}5Yx%S=%-@`v0=E+k&W(R*$uP)UL&Fna44zf#rRc_>mj7Raz1pM}2 z;>QcnV#Nh$AsWP>fopg51@Dc}A`@E3kF10j#-{n6ile66SI^ze+~PUaBvrk~hLy|* z?5B=%B{LuXsn7D&4tD)a=+r4c>@}D%oDbvD{mebsShu1JWnbOFwX1!#l6Xuy-T6M| zOVItg3();yLwDj_$ga#ZTDR(1?y(LWX-@l`P=7C3PEF06wpG8RrsU8vWA7ZliFsX; z6S`*%dMKD<+dFkRW-Y%ppL4ytp#y1Ccy!x-i}vOd$0`=Cv7fI(Hn&03tKpMj@XOQ0 z4W1?rxye&#;*hds6oamdGrEnZ6;@+ZV0$9gU@amdGr zLymo|GY+YD6o=Ha-yjb88{&|9R&mJ3h(msjIOJGQK}Q^N>@YhH$@8h-5QqE*amb$# zhx`d~NZxBx9FjgBdV@Hm-gD!SW3RX4kmtQe98&Ko4oQE}$B9EeMI2J^Dh}Dee7?b) zQ66}9q`CT_M_yzZIQz6%q+*bNdJEcR2T~pDpH2+&s~0$bTIaL8hHU$!+oc_~D97hx zCw4=Q(1y;k+RR@VS-2Isrgb&t0~Dhp6th@{&Pa}cUq>=Gha=~K`3dUWFDG7btO`GG zq~5dTm+L=n?%-j&X8Ec=vR*$NJ8OiA%bRmviXJRE(?Gvl=(mn5aT3$T_31vA9mjC$!XYn4g1i6W;7_<(0IvQIGQ;AZ9WV5m z_2FSt6fev^XMOl+ktfyg3^Izn#xXDcGJ7-=`JPl`H+<-ljA-+ajA*hh$KSF$$KO;^ z7WIv=MjbED^&cDJNwt-DQhHx>Yvi-YA$jDk$+Wj$7EaXN zjQ?oeAURYiJEEl2mgBnSSkDhcwp3tqm5=AVSIbkojqlp$SHb$8?2hK5(o`Yyt#K;y ziO-6e$sTZh#2RR%HXEk~OkAN^x@spf4ZYM<1xoT;rjoc$QPkS5kqIpwae7Q@*O*=0O zH{q6Ws&Xv@9{{vWs?a_3EBF;#rT*c&WiMT7VykK= zNINyOqZp=iiF{WdF}?)f6@U8$ZMyF?)I(=rX?lz6VdgJ*ZGeAb@Ja)`sMtabd^8<^ zhJ~yXcuS$B^}Ku&*}L-XfVr28&rRSn&NFvVx2K%iiQ`S}#7n51*e6^@oGrc&JniOc zS3J$+bD{S6m@BEokN2dH1MR+;40lGCTQbk zNN6zM6Tl!`xb+oj*UTHmw(n*9l2eLzm4lyhhh}bERQS&X4)J!-c~-d8egx*CY1fry zTY1*jXIfje<=MBLcWfQ!<$h6w81>ra*2SS6cYU;B1@zhmy?nge%$jW$G;F?~YcDG* znAP?p(65<3vmE+mIrMYa%>Rx)%sCJ6lf5>ty?@MIc(EB;;q#a=h(_w)_~38p%(cwg zmU_jTv)kg#oko0~mW{x{TzA)J68M8Iyo-Ui5r3w+3SF=f8I2vSev-TwFNZJims+jN z`pNv&W@gqN_2$)2W>3xJ!u(ZRth`#{>Z}D^jBlF*zv$eZ+=w~aCt9~MX zIjkFZ#QY0#Rw-}Ag~wiV%EAY>WAn;A`6FkkG_9ju5zthU#QUnt)4Bsyy~^nZHqrT7`P zO`{mi7Hk^9-?RpL)L5wuA7h$gr2;)AXY72U#`(~^CM`}8wENP&9j!-Ap-U8hm^$H8T%!^_zsY0kSNTeD{5s7Y^anbAMCcSS9i?5Z zWtXt_5Jct&k@@8wZ>?Z3GR@?p<=FXX<<6PQHTIdyvwB(7z4NfYD9(;Gik+A1yL9fOg>2MT9Y8Y=~2lxZuacp(XFL1nXANRzCk$+H9Q0JO+=PJr!wK!ZWlz7<}$mZUbvM zbJ3rT$bz^de_X$A26grKK_|r#T%Z3&Xe=H7AKX_B@x)3uW>jW;?^B2Sk*{z$xeHf> zbBNZe zTTG0|^|u*^{Ox*d>K6nL?Zknv2s@~2?w;0mu_L3@f{i9QFQes@g}=}I8p1pq4o{4* zQpaoT^Nfq%>|*2ggcf~(e`J97t9hTA)29Nw&wL%id>zhw9TDLDQvV~)8oayy{uuk| z((5C~Mq1`9yUobQ_~`UGm=WZhg1`WWrW-;8 zfM0T3GF$O3+2mUD7w;umAm2EDyn}i`o^H4#&ZtsHAe8MF`C>%zK>^&u08YqeA;3T#Duef;0&63 zHaj*bw%}2IkHHJF1(%{*im@%!UV0ym@IQW2Cx7w%YWh$-L-``2?=pucUA>{2)Us_> zh##S^reYMx4f1G}7|II!hr`62q9vyvnH;;R$rZ8}$WN@s;ingx=kNm|~2BO|y z1yX??=-KKbqia6={)Zcu7FeSb$l+Q1_JqfJem*v3IzIK=j9=OKY2@>=mz4izMgBlu zidk2n?Zz7BC)Y~aP(N-TlYj8xhJM(`ru~7X)KjybFU_w$WL<*3d#+#TGH~AB&bgYL z-Q(WV?|o-{xM3@~6=l{}LR#l&K&Kcu`eQ@UPWSZR(K*WVY)~HOZM{Oo0-lWrGk{UK z=ibQdZmA8iiTsYvv-xan=r;IhZ;$FjnuDH8;G>-GAUb)m|_jT`dA z@ihhbaE0M`MIe<3G6&|u|5ex_!5Y8TafUYd3@)`UV#ndhl>r||;kULa$l{5}V(@i> z?6YJgsb=azCWmLTUn!GyiS7>_tu6Mq ztts{&TUYEqzMc6A9Xf&L$`6XH;(qk(H`{?6Psy|eG%&_?K8bg`knLM z8Rxwp{|=wC9z4H=em@LN|A4*l4!ZCNc1gmbMh-S%8+P_dbm1vsk`#RcN#2zZ`i&;#&%!edN#>}c{u#=eKK*DQ@5UCF(-c;+zA?97fHeTLubcz*})@8ta> z{FdOiB=58SmTcp?o9jugtj#1(aZT`ilIPp_{t?fg<@t8*pXB~2?tjF6FLN%NIhUX5 zoZ-~Zmiy0upWWc+1?I+!%#DQ4-?Wdp0dFUnH!aMY)^acNG>dtf#XQYoo@V(aA2z&> ze1MKI=op8N3C7i!Si$?qssq9k<9v&8mY4JX1m2&(`xAJ7g8yA&;~mBUAB=wSX4vsT z_EVnrW}YKYJhx2pZ(-l5)&Y?9#EtSp-g(R$?1tD%Wav=xF0Td_Y<%TA%8z>M402e% z%>usRR;pwkFk(kEVgpFu0f32>8~NwWwDHl8JvbI;Qh7O7j9h1r@}aTeyztA5w8z?`>vnvO z{SOD$9U)dQ6q`uv?!$B{5b!gV@lVs3?QuNDI2ss-a3fqa4N+f=0~tSPJ$?VYYv0y6eeYl| zVVF4M&g;m<*zF^CJ&U+tb~xFu%-_!07Ft8-=zAo6kEV~sfhhW_UNFpe`tRDeemjR2 zj8Axd{;*iFR`6`;{Cv?+#1CyhLB6MpFeo3s+92wUwTJ5EAnqV1;kvKA2zP@4BzYb zYj`%d)QxI<5eGuc_sMsj>#FV_DksRj_auJ@=hS7>--~H zJIHMt@b}jAlFJ`HoI5{wMm1oRpQYGx8?cmks{KLUTk@#2FoA5>eT_lwHcTY;zr%_) z?Zl3Jfpcuxt9Tdh=(kIFMl!us`gS)y?V1dK39Jk^nHZbjOaXxoTDIX4#Cqu zJ{-Kxdi#lab-$`3P8@{Z8rwMNtg)r%7v+$P)ZUjf%``^NgEM38&p9pl0~MLp^$n~? zPei62g~#%FzkvC%#FN)HocqMiLbkliZ_BxwJq^sg;BagDv7OKmncj?j)ZTsxc6lE& z)=}wWMK?8|n-Vq1D`ZwB@z5By75;F2&0lI(HSWY;urg~Kb`YOTe{T=(q00i)^|PwI zpr*M&-HBOT9osf`V^QDvnJ zzOl^}4~xNb;>EweKXuL;Lwp1Lc$jCaxc&k7-r^5D+ct~%$rG8?Q}Mspd;((YcXS6 zAet&y(T-=wnGX#cISZcm4=@i``m9l}!|R6keAdEW!+S3~^Lnl`ukT`BSFn~m0Gt11 z=5=D;%rlDXl@b3fV{Yqgy>vRh{M|I3b?Deo3oI3Z)QjoAb<*mf_49$DSoV)t!x2B* zK2>+|Gw^;7SlidzXN|b9&30g$YhWYx-p7WmPOz;JY(5*d;JL7EOz+=?Z4Iym$*)ZR z?Q>vj%?CDUI2za_3$vJW+03;(=A80fG}l`%Hhb~wC*)?;A3(0k7SKG)cI0UW*F5G+ zbBA4!(UyZ96lXqF(8kT2qu0zli8D_W$4$ra{B&5IaU_^0jm#I#m9F#T&h+Qg$9B{C zcz;%71MiXrZY-`D{!XHs#Y;`-Z1KJ1>&@3Ki*B-Vs*YpNXijNvX$>P;ht2g2avJ^& z7~fU7wBE>~f7IOQ$DF^MzbnECcrnq&ycVCHKB(!poVx}auc~4>*Ixsy9ulWY4i z%#|c-62=ed$#pT``*3B9Ed$HQl`Rb)8>JjlJ5N?Q8S{o%;f9ako3rqLJFv4p)>!hW zzlk-A4@xY2m2=_x)*&0NX7A!>fB%CN`HR)j7TV9gJ|ikwkgk`{|IXfFY@z!Yo37vE zYVYgGj!ZM3^?P>YmX6PPk*}N2$}`G}%;d9eOXWwVn)`||vLqaIZRgpv(TO_x7P{*)N{U z8J3@P>)m0a$<~pLmdX5)E|$J}tS4*m*d!~+N!`x;*}?pI61!xZW0%MdlRlPxCY_ZF zFCMXStG>>>8Pq*zwDy-b2d$_Ny-FU@sN`HLN>0?cw@gZ!%ejQ+M#v+P3sE%*}sy`uiW!w^R%36GLPkFg)lYnhwKrcFwq4d!=i}mE9b6o*2&8`T zcV*#S;{)N{-_(B3Z1#KRuzr#o);`RW<*b`b1g zSU=Gk8M(5=x?<$m#>rK@<$=_OfB$#)#YpP^E>-(epU?&J05ED?=bc$r1NilF1!H0VWUPfXHD`iCpSKG7jb872g&@* z=K`rgd~SqawEn8+*{|luuia%;Uqk#NGt%oJoy}Pt^<@U4)IN_Aqqs52SRUa0Ca&9` zWGx1M-tlwf6TH{no{bF6;V(DbvZU1CvN6LSpNl*yS0CVTqLo^Ft+i`@`M9XAcTF6J z4Qxe^Zm^`9Z)Qaw8K)=YAa=zHtG7B%H)q1{R^%S?e$==6Z4L&aN&G*-wB_f{9xB!`m$Q!P!Dd6Q@6tMECiYF^j+@zg zFbUZ@F?{tXD?D(ZCw$e_8R2ZkZ1P}$A)fGre)lkWAx`@pI2#j4)q}G}<`{Y*+C;zP zXGELnJBziDB>l@b#s8TuJhnW^x&UKtcmfBfJsxJzybI1Esm+?N~ zjJLlXm%g6ys$caby{NupPZDp?nyq7BXU;46m6tg+8<^$*kNh0L5d-%L@Qw_>s)+Ta zWyreh9IHOqJ-dFc_6%S*&+TtT8E1$8ilouSi%v#@o-5O&a$C<+|^pRUwn##MA9FE)JTXOCN|F9eJ zQ*(3cgSp=NAaX-+dar@z73BDs^_StH(LwxSWU5&!L#{e&WxL$mXYCaszu(wZX043x zKl}}~sNieOl{j-uYoI~;OWXk*^wEI)Qtbq1-W*iDlUFOXPJ?gF{7=uVe~f(7VOxk7 zlS@C3SisSW>S$gMlb5s0&9k?B_8B=j#l+Z<)5?2uYe3uzEXw`Xxy(x9mt-#GJk?O*SNFH-}FqGzj=3=pSn-$ z1z#e^y0Mx)zK_BiImLZLMeGMa?o2nlvbQh$5%B+@V>vLm_llTLmCW6vv|GVE-oo>7 z=Bb`NimVb2&3niz?H^c0+mk()(RN;247;n1_cZ_A_u6=`&3R9sj{)l@epeq?7X(t^ z;W@z|-L2~@$T#(;ciNDP>QDF8=cRmh$Kt~4_TM3Q9C+P+-8S^y9j|m=*LK|B8j-7Q z@Xy`wUjcEkyWzh#;J>=htu~LtBeJEM;K}QN;TU}QIDB{px97(Oh34-1XWfDSc$`0@;!4?n9`0{7(Kfd|3#8YR$ADax46q z)1CcHj4h`-Is{v+2|KF!4lAYmxewrv-zQrrr>*ey_UR;0+4{lRqmt)C{`RPj=JXCk z3y}4jJULbSe%(I3Qnfy&5}O1!ZQ#b1z1M{PSc&YNYRg{PJRLHZv7RGy`F;iPf2Pb` zaK6l)Cp=5$;ya%wb4&Ym%3SdJWn}K3$v1FiuH>j>@`dE=)5zKEnu`1}IbUzpF5Gr5tCX`g?d_W5Ug?y!O6 ze@?XgvVTtQOY=V`2K@WZ^FQr+Ww~ROkA8l=ve>Qg_f+hhBNw)Fw3d*AU6YHSTI9*L z^)PnCQPvWMvBzzgW7lY{pb>f91dl1snV917yMAXbHCNdyvCt~v`WP~Y`K7k7VSA0m zmWesvHNMr@JhBI~v3X+Pdn|g$gZ(i!hv$eD$v$g10zYAUwYPT^q5UU4?4~h=}}~@H}YWb6-NFF2E`#I?{w8W#niJJLf+Fb#qV_n3o)Kn zJ}0@S@5TCV_U5vecvLBImOkO+3w?>TkT1S&f`2ZuDY@fT?EBlW?}=gV=)vcU`P?&{ z9OLda9&hh8UgPXF-k|uIz1LXykZ&(ptLqLQv3hczn~+O$i0=(SPRGZ}KFKmNs-cGX zvz}c7zQMh|ix*wF^e+|67oOMqN%&g(7?rOW=h0Krz=_-ttnS`L7vB2>@1j7;rITz1vxiZ#^498Tdflq(dBe^;##+dLF1A$(vQji1 zfUL|^9uY7~#tZIS;H3oc1%Xd6Ydy%w`ZV|?@3o$8<5GE}vc)=Wj){U1JW6+HzDpJv zSq^-2wZDP2&?Nbmo2hfRgLtv(-XIG*_R)bGV{638iE?d?KaqnXxi*j7s~q^VVM?iA zcA4xBopo&ETDhIF{W2pi4YUT=7o1PZu|{S0Vz&@{v>Luv+#s9zVe?Vo+4l0>Gwqx3 z4;SDsSK-@iaATd4bE;ix*BboyENi{!r}@_cel$mgAFWAs8JL5(RFrStZXw|CJ$ZPzM%=aZ%1ZtckKoX7MbCn(vD z4-&%{k=-vkyEe1%qDEECf^&YDmz@*@xVkj>S&Uh7W3H9Dss}YFJXy8F3N>%@O)Z(D$cWY;zZ)AkpShs5|2)YTVh7zq z%b|7iNMvsiJ70VQz1zTj3pi7}rVU)QOk-cYC#$~6V*NHVtF~irV?mb5J3zh=59&rt zMSG6(BH6?@jD1uN&rHPUf)AA!=Hjk#1pSOg-q3H$G~zVU5msi~B=(>^mXlc@F37FF z%0q2#TP}3))iv;ye7RxpmA(Hn7g&`;Q5g9%IUer1_Ht;rnl`m33VKdo%36i|!I{{} zEfvCroh$3&pd1_sCIe3eurhYZ*QPt*A@DbZwTVgmtzvJ3D`STh=B*0D`<-LA_cqu* zPIhGfgT#IqxAJ^tbIt)C#mk;ht{PX(hX!aN-+2w6JM4md=4a5h3tIQ`Og3%ggU4XN z|1oxfz5ebs@#yfkwEpfpXZ>Aki;Z-)W^>_@o! z=0|?pQs&1o_~AHXRDB3j69s-Ue1M;$IaEsAyAXc8sL~2`>%qLqu%7SEe0i4|);+uCfum<+x!M2tmC#e*{CKT>9^NT*?n!v-1K>Z+9Q%Ox zPxJms-d~o{qkbEInp=ZUJbd`ozpPjlBd4dDb}Vu|#p8{%dmVh0SVs*DaIV~Llh-{C zeZf4Mh+az4ht8f6-c+ArC3w?*h>65Y6dy41nD5tuGs*WP^S%X}q!k+_*((4|?OH$X z`*V4J9{Hb=mGL$3vcY*yp%l9G$Ee4R`tam{71!~ z17>evEDeq?3WMA43Ff3=zo;d9v_&5t`gobV*|H}Ghw7+#JmDtR&##qj2)_QvnEsPL z=%;nBmGJhx!2cVg7cOcuyaz8o)71XloC52)BkX-3mNngi&og?nhYWl_0ls&DZ>WR;b=k9tG;ta?N4STo@7 z`Q(xXiUX9g_HlY+AeElW_jTle@=vud&_ZXM9FLXclRNFixIbnQx{#~Z`nv;J!7SiP5$k@sal`TnHyFK8?NR^%;9@7&>DzaghpQACrlF z97UG4F5!F>X#ehFD|J2ee{YJF8VPTonux6B{s-LqpxjD*2#t02<>&G`^0ajc`VIN& z@<3NScFZ|=@E!F0Y5G{7WraSVzYppA2>N0sGOYpKVC#rWpbhr6Q}3k&zL0&i)sfpB z>s1{wZrLkVWbdz`CH9GU=sY?5CEy?G@!b0@IuDeE^*~EC`-b*5<48L`c{M>~RUG;N*`)CpE&9p)v zVGDf-PX5;TP9Mhy<-&FEw!G8r(?7(1JH3c~PU!aK==K$P;;-)DzX$W9r;)keZ~SC~ zbvFCPCBXT4a7l-`^mpg#QQ~tg%(0J|KS$w_o8d?CNdTUdo={9fF<{lRXn;4BXYYk4 zGT{#&e9_E&e<_C=km!S#(Fafe@skZNeVl!x_Mg`E<@eFbi^;0phMq`Y(-5qhX9;8* zbxyF+sORa}^K0)w#?Y_!-|PMO7-Z3CJtI3dtNv!khHv3~S)F^ARhYFZi$3gFflsjl zW6RsQ7uk_s>{D@Nk@(KVLDxAT+gUnSd?~#znC`(|wR6U-$nW8cB4R@(_afg)x$A$8 zb+)a0?VdDSw;Md(leX#t{&8usFpGc2{;je1_dGU8>wy<{_-tCl+{6Z2 z?Ci^)1MhFf){-x_l^B5L=AXzRiNgc(vl~}}i(2r%23$bPmRpsR>%l)nKhaj~R3Mtq zT)&H4%i+EAYUeQD=H^_Kjgf8 zx%uQxY7cWE&$WSj)zMKOs(F4PSdIdtU=}Rli_W~z3V$R#!>Lp2E50>nfw&u<-KCS*bF`!;H!G(=Tda6e7LRnaGmri4*m8! z(C2g7)E+4Laq{WXYooe#Q6D9~BfPtQ#v{;HI)AyLt@61uBQwEwF>}`)XZ(&p^#3we z#iG1CFCW(nP1TNDdqL}9@JQ!6CEstMokqq)ZvNXE<5nj#@Tai6092ng?i?XF^=yy4|StdC7?x*c)zE^m>Z8hL&IrTb9J*=}5(<1+keF96? z)fISG1z6wjh-ufjF>U2ec`g=6-yt#>1ZK_u0oj z5u60A)IHq;(R<;C1@J(Tr?9F&c{$f1|E|xKAJ(HS&i7x!=RNLPc&6}@!dm%gyZP3YbK(K!#MM14Q_JMN3VgJ3D>Z52e2I9-uUzIN1Q$zhKoPZN6@DUI20$-nx0~=#?~s&Ft*n6m+aWs63f^2 zI{NGp&INsx^H^6=le2k~k2)?{#L2V6&Fr5*p54&wE%R^BgnfIS=6T*q35sQoImIJH?LiN=pN^J z4|eM7JinUf)faMi`u@K3#rcT+sYlgc?_R^Z=uG-Lr>6cr1;^EATa2;2&c2juR-#PXL^Qo^ppYq`y=F=$J zG!w`9PxD9nZ-!l}xzkyH-^ZGnayzqFGt)UKg}@jlUwa#Qov)_lc5Y)_vICUY>E?7c zpij459yq**JT4D-%0AV;fmp(>vRC|}L^gH2Mx{2qMBLWcN%Rw=pBB@PWpW=Uk*AkS zZdES&_$qRIhWYFq?4$Id7;`?lkn`zkuchDQ7;?u(TG2g^TMGl=dCywb*y!`<`|U>N zXit;&R*a($t(6c*n@(<5Xgq6k@sX?{jA74-JJ+3B{O|lX-nH#LyWWhQ!|&t?J8f4n zx0aB%_d0OAOib=B@~ZM!gS^n5lFjVTa-SVQT<%k!U5z|p%@KRb$YeHx%B!O4Zt~!vkNj6 zPeQM#?nIn1CWc$lMrtOQ_JDC|X7wTMalK1$BhO>Vb_4ft;HJibt%ID}ZP~VtEOGkR z+OpAq`z|x_@JWRktdC!QZajRGHx(<-j>dal;ZO9r!r$2M3V&1475?UuEBwVSpKmJf zm?PSMqf6GdpI2A~})!TZz zojQW^7P6+Hy<=8(Xv~8P&dl%@{r=<&)JpXPqM>UZKXm;wPrYB1(W9#LK4RR|J1lzL zvyk;ZlWQoM<}j_OE~k!8w*XMUoxcm}5R* z>nb1L6uzvC4*7UqTj>1FJR|$UU4t7_fSu2GcWv$~`NS!maa{lO>O(zFJZ;9|xr=d7 zi}9P(M%1{L&gXldJN@0eS)+*UFO<#_j2c@;+SrE8@=UK|Y-Qw-mpNmTEmVeVuDHP1 zWb10r;S~6`kr-(Mv^oA3wQ<0`;EH>H{Os*sU_J~lC!u+QoT55Us`_H>+Zr9py`7j@ zc19}3d(=uu#o3RsCYQZ7dB_f6_OhoW!FdR=@|E~z>>b3`Y?z(eaJJ@R`%I91&ehw~ ze6Q0P=>ORxl&Hu^?V}z-BACHiQbvk3frD1{*wFFYKHT8?8$s1qqMiFDvd5lw?w`h$ zcD{c{Al!YN74CV9C*1qCjIex3^2+hESmWaPfT=CjJrvRn*(@r^*Z*SAZ< zmwb=f())Ua7EWcqzPESifm^wj_YVD_!V15)v5aw+rO25}ku#TSEdQCGoH=TXS0B>a zbxRfdx%UwFuP1K8xrkL??-sh7-_EV~&?EBm`OKNFc>ahSXzIil-c%ay76^oUd<{5i zdWRO2)BnESc5PAbB?hkJyMf~c;CK-@_5g?XpZrY+%2GMt+J(i1qn160Rmb~;kjsZ; zn=hPq;l7E1cktoDg4Ktvryi&HZZGR?;=_g5MrMBL`=!jUL(H$~eC~Otf9+*9Pd1=; zME5PXJ9J-gF5PE}?&UU}&(=8CefG76eSpD%(0!3Z_r=itenaxKJMCPM?(M)Jy7N4A-=%$bSBviL$d0ab_x7>rUf##1JM|U}-4ozD3BKFF_etME8Q>q6uK`3_gfsD(DW`k0l2#EvyrSBc8RBB ze@M`o+ma(e=JpcVLg?d4r=7!2J6-4U9QxX<-~IqzsLg3?v|nFl)_Y#RKDEKh;amp# z4=|TYkuBwEHd^k*p6Q&OQy*l#`v0?bF7Q=VcfQ{zC+`r!f`Ua25EQ~gq>6ZI+ngl4 z@zEAq+FHvaC}6af+Nou82=-1+#3=<_I3;ypgVQ>L-^f?*f)cd@QQitH)ahP6fiRX;DyHS%)h!69#8@g z@I(6!PI?E~yr685;RPp8fs-BJq_->?%PNBx{o0r4TV{BGi1Af9dd*eUE zTev(Rxs+PID?!(*9+~p&z}Ij4~6z$@hshs-ncX6`6m;4{XymQ^-?>>3+%Y6SW^KH-Nb{j{pec;&mM{SuppY?or z*Rm&Xvt{ZQ=;i0M(}CmQf23A6wb=~ByZI7hlQ*Z4RebALtx5LR9$UsjPAISNeU0dM39<>D$d#&&b zeD64V$9`<+VstvAqrBIZSJoTfKnIw;`7OtG67BV{ofd=p)4=^{r z@Q`-u1&&G97WcE>@c_?kZ1Ka`?T0mQo}7yL^jEf)eD}{@PF=)n*moO#EFBTukY&pv zlT&q&x?yHboBAn{cJyKTvHi=;0Y0i!_-j5UFlUjxd-q6({tf*`$GS?-ORthGc1V5W zchC1m@ZNl$cl&)+O27Gb_<8#MJpHb-GCp^||HjV zO$P=)xb6&m^N~@32z=A!nc|<1fBX^kikOeP(bF`C@IdKWk*BJ{(Sudt>T+c7!EsQ>O>I3A-?O@AC8{l8tWJGQ>5VojPd(1#TJe8f`5GT3XT)0 zo#e_YXPlp0dpgYbYyax>k>F|No>W=&ZN?d$S(Ypz2ioQNE^WIupZLS!qc%VJEPKec)x^8X;0L08 z(URJXmD#d!5;8Nj?KQ7ZlM!2FJ37NkhmXmYRL;3*JJOfB($Miva&PuS#~O#|*vT%`r|@>kiv0Ha+tAxR`3=LY{Dwy|@;h_j z$h%uR)RTQ$4qRIw`nnlB*bC1&WF=eR&DtYs3Gtl8`F4D~84K4^dGRguqxjq|8&=P_ zI@KlMfo)r627dY-bgDV0>s0Y(@H|zg;`iSDtTFBNC)1(%_#uuCKT!VaO6g(L0n=KQ z;Rk-`lHVcT>86LxySSSk=F*jmqo0zaqiZqxJCFI8&pa%2^kXv@3&;&eKVFfYcDn6N z{h0&Ih2Gct*X^8ppriTFkvrb27;l8}a^3I~HxH$^@!tJ+jQ7W%F@5j{qE|=UV3-xV~KZFS7#_Z=3#Qi7va|# zu|aDeSryoSvv*wX_w9SgvveruiCW&jpS1(@xUJ|^&%ryk-*5T04yp=oV_l}6^&*XT z3id~wXQ^o)j=f%G`lEM;5MyImV*}e}e|~&wCKf^CG4yk=lYUJ8x9CUT(Y~pj^uzD} z)H@q^7I_!1=V;5p&Ua$f&>Z`InRm88bNqgpchpy}-wLPD-bRZ(WK(S*;mA;Q_}*|M zIQa~?vEg*wI9GXf%uOZxG|vZ?&fJ7|V&AMDW5Zu`$-bn%<10N&n}|2ZUK^n26_`N(B*ipt%~G-g=|8BIut zy#0hjYc&q7z1Br*dDxFpU`BrTJF;7%drOkq-|rS^?S=J^y?g1Hm*0H>dsQ|2wnB@g zL;SwE?7>~ad6aQahOYKOR|lX&KeSW=EnQiJ{nE#_U$6s~$qtYWupGQd&-VN3UiB>1 zdfju-q3EkOS}ez|5RHfyP43NWHa!Za`fkkm4Q*ocj14?Hs~c@TaW-CWiO!h+FG8E| z{TuJp@Q!G+j$=>Stm#3U{BGhM_46}n6WQ*e=1Z@%If9xltl_B^OsCxn-`2B+uU~4- zzLfhbv0YEIlYfEFm^H7&YMYKLi6fJoBsVJHW!=YK?~!ik-?LYCTqXFn8Xmv->^y$@ zuruIYbqe0CW*-XhuCc@8bLZ&W%u%eP#8)Z4Uv1-Jd=7ljmd~Ah&Xv!ZnrrFWqCs?$ z2L(@P@bk=_-c3U>58LQ*ZdZIJFrx)GpdwlO~V-!E?rhD;wChwe;|Dzvn!JlmA92+5u9KLv< ztsAG!Bkl+pZtE#&?IXd(mSS6Hsiv0KbSoPjmRP?G>KL%En)c<84m+Q^26n!VazOlh z>@}Ip(ABxLdmLP%t|2+4(#Ke9$P66&_6M~sz#!Y1Z|yyRK0U#mZ$sP6x8{1_XTU(b zp{M-J)jLzUE*iaoV^11A-h)Q@{RwOP-Qd=n&YCi(-(pV1`=u)hhA*GrI}9JeU*y7& zx%!+i)Vh{k52HDUb~gdT$Dzl4RwoRXe*qZ2z}U`)N4>!?tal!FXk_2%G!om?1BU#5 z^fO>6oU3GRe$Kzn@8Ni-Ik)S)%roc8hxUeUN;&^Q$}@8~ck`$hrabellxMC_xh{H; zeK?<^a#r>J6zAFxoonAVzZDmr8!F~J9ep+feOB=ro%-yzt=X&5We<_(-0b)v6{8Wk z2HbvweY+;IevXe&wIXF3?quy|IkJt|%K;tm-yy_=sD@vJd*TnKUF^h_=soG!Dlyid zyK14>d4<>GSJSh~#}|)ZaveTOYPC>1rJ=}U*E`8Ur*7TJdhrpPw~Mcv{C@cn9D9F- z)+JW+yA~YUb#|WKI{gehy*`Df@2m<3+8kY?-saz;g>>>NzT+z{9o4~ zqu-D&feys=Q`Li<^-1UGy}6M|KrB zrx>A5na_NyKCGV8T)X%a*^56CKU55V)cLa8ny~|pqcgo>h3&qK3jFL_)QXw|KRkn+ zP35~`;v(YB)RiJuG=7{tEZIvc{szZE9D%pwV;p#k#|mbh{s7?Z#YdpF(yFjc`28?# z#de|pT;0PqnRh`q+eBj;>c~urc^i1iX1MA+o43jj=YcNW8hM5$uyb$5mNj~jLzkT~ z2hid?Xwdc7A0{@|tpnH7UmyFpV}h|sAFm4kr}J%B9!AP+ys9V0NVUCX!+SYDlRQ+N zpDuaW#mkkSc_%esjNLw;xO?pKJnZ*k@*4}0$tU}L~ zfd4hr1|dhap#r(Pg!)M(#BGU>+I*u+?*4#pG{(TinY1yhOYXk^&Cf4)eVYGgfwlZT z4IFL1Pv<zMmgyOrN#^v+BhC*rd>_LRG^9x{X91-x@Mx$Exx`;K`|G4bn?Ma%tTT88_t>8>0{=6Z7CT47vU1O_K zb&09ZB^(t$?pcdV*W_m$eX(_ACH}!iYQbIiwHlMj8%0C>*N#s)@+ z@7>A#-(@AYDev$PIoQSb?io2MSzD#}SK7>=&3)+K3EpeEi`eXb_x<)^-hbi5NcK%H zNgnFA`nM(qmUH$6R6DPh(za^To=-dYlqU)nYRjeBJ`UZeO}8z*tM-%!Eqh+E=r4#@ z!`t1u6|uWZlIPIp$XslZQ~dK=IV0lR3!U88lh@m}zj(K)TXBkK=9VO%!){*GFTDo; zf%uTAs~}x+CH3~^VY^EP*!A(d_On{?taJg@BuEcw4BO!=JK-xG_^w=@x*hqcdt11- zm3!OK1>|4U{7r}Fs9xPlbb-@st!`_Qwm%Yn8&G?_wRM=>;xo225?>8CU~rCa@8;WC zw6&AA>bNH#fsO~T!OzrJ3MHSp{V&+pBKXo7`wG5p!N*p&5}wOZIhwtVw-sDHV;ks6 zRgAF?zU}8YJk6S5_7J=V{6Q8qn>d3s=ASwoZy@WCLm7_D)N?K#-r8czj-L_RF1YAk z3AIVJ9#ZbyV;^#J&wb}6=lUY&y6Xd-<6NK5^*?|&d-?x8|IhIMH2>m5%F}<+oZEWr zV=32nrJO&K^30Bu^KItbj-{weIsa$QH#@(7;~Z<9<3BmaO&lL|&NrH)CvL)pyS=WT&|ZXg8ll0|^$W$sJ(TPiSV>#e_&W+bY3(um8s(le z>Jz3l%t%k`lz+G8X)cm1xOuLO$LJ`s3B*%= z`M*A_#rN`bI(rgjUdS3%;kov@D0{AGT{NA1rTE0OWPI1Re0AXZJmKkLn?4&y1Ltw2 zHm}`&iHZ4nd1SIy-xf@?c217hRbCHrG{^RBA1u)L{d=r)>Bo6?-^|{I@GfsYxqZBs zM*hGY`ekzbcsJ8|w;tJo-gh*eaf$z>GqyN6IV;J@(K^{mD|2nVt;=rgY?JZIU#any z(x%-n>YUPUMh0t(S=Q65*!Oldc^Idv`#JGI{Q`@q^Sn}HFJ$a_jGZxS?6NHsd(b$L zu@5e_v^s# zuYVQrS4@8qG65f~op-gxI;vX2ru~oX_62XnXty-jaz%2p#L;!X(Tq=+-#nkB&Rz2T z*q6Jl?Po#P%8SMZIF{Iap)XMnKU{1TMJF@uhFH=b+P;R|EjrtQVkee=E6#E9@^ zagJ~P+xW%b$N&5h#}*4ewB1j4FS+?~+dsEpNLFWEpmnCNR;cphi-YQue82Odr^>hO zF)gUd0zV5vD|pUQZmN|Z7)K19Y%=PChTV6T^G>V*T{U$rl;1z&Jy%!tlXGJ2?;c+! zIWrC%6Kza3N8%$n|EhD%Z;r%BaBTwTW}P0qwC|IzPAt9Nw`EFh=)#n9(S!UL1I;l5 zo+o{VnsPB{|2VPiyFAHP+54%qFZ$hUo@Ar|y`Oax#btg#jEVMN_Bc9{>l07BX4Wtq zK8U}K-`6lk>71Ge`Gd*L9?*2$*4dh4(vj?1W3gQ&N#))&a&+^1g1yJyrf%2cJo}cPcxQj|MQZNpypn&`3qA{0dS0-S-u^J(@2#zz z6=!K{au=-Bmh@P+tpe^DSaFQJg@3A<^{&S~$@wSjvDee@?dU8I({IJesNd7?wPr8E z=6?bGJ9Q7B7ZjtHqSL0v)zs5((I@)zL)(x?32<-+O9I^M%t#pr64! zFMQ>lR6C?$rtLpc?X|`u+#ig8!`L91r`aGc7#rl$k2W)3J#CQrf9SG7Hl1NUzoq%) z`#ob?G@owHM7F`F3{*3wVF|0Smcza@8CvqLE0)G=gr{ zWpiYhxe}a|r%}K?GgllFtmmp-{WkmMI6SBsel!^yv$YO;H@n2t6v78OTlI{^7vCgK zTJL?G<7n0jdmG1^DfT#e#Y=S3Gxm>rrhgpOKeunlB~w4!?a#HutGfN!h>unNUip>m zToyZip%uMYYpUD%?`h)=XDGB; zoj<96&hybc`y2Y+rB(*}#Ah^Uk9eaWeY|>Y2JM-882d_6#t2O_&)?*`jp!a4YvMiT z3K%ytC#`&|Eswod=uZVY5dNJ&1^Uo}k8E9T1$5KKcU$;oE8}ZKZ*XKUa2OZZM*mEl z#7Fj=cItMH9<60Vuph= z?%v@`mW=sG^-pYBof8^q+V_P1k!vpAy*BfUpNKK_@J;`B=Av&Tv-VN!AcOy>6JK>ygPwUSvK1@l$yC`!aoQr^a?!Jg; z!n;=&f_EQ+ci@}BJ7DjwU-X7|W7I$Ad4u0s_P5T8ch8=VcYFA*=2bY-1l~1+cj7s1 z;9V9r-aQK5ZFBH$0eIKS_}ckyo58z2-S95`bK>2$-%}?t<-7W(zOC<` zaByxbI5!rY+YQd`2Ip3I@@uApb2A;BbM5%GOU8aAeJIA--8$O+rDQ37z3adk7w4|} zJ8*6pZKde?r}4USaBe7a@i^;E;&od0iGg#fXSf8MyA_&BgqbG`ApAn&=n?u+2u6~eiW&yRB()IaC>XkYN!!SA!;+`-dv?mXcf_$FH` z#@rj(1kTB(5Wf-MY3o~(%meR~*WCxaOEY+v*B%A$#OvDlzRmCYz`MKiyqoFg=izx? z=C$YdJ9!@8S8W}GgHB)bz{84+yv{uXRv@o><9%zEjQ;3uaL=xNMBdXgd}CtG-d@7?H<-88Sm@VH$%3y?F28~s1p7fdua7esh1v*AMv?jlR za;(*+%XdZ!2Y_eG>(smfhHcPJl;?ymqR&f+)tJJ6lQ**=>*PJJHLpV~Y- z(SJ6^H^Zc@nzxDnwxU|Lvx-H`hhv- zhrVZy_B-Fe8en2&-i)9 z&oh3W@%yUZ>Z;*l>OXkxdT`XPr3S@-&iY4bj*Y1JIN2g6;YF>)6O@pXFrPe;VZ_o8 zb!s|jKRNL))zOZYLu-qy@NXjUgKOX~6BXNA^`NO~O|IQOUC$$CW+Lr6vDA&%5QoPa z@Ag;LA6rPBo=PjdqJ(ukFR|2>#LQM953h%|i!UVhTCsf2^TS_We=MCm96j$rZV+R; zZ1QC(F}Kv-QOs=>_w?*=;(GP$e0Z9dXNQx=qu&wMn7uq(`GjYwYW`@Swe{>POs?@p zvkz}EJhIHv9{ENOx{?;OLocsBMlLwUsr?Pi;Y*RLSxaP2z zYi=+$6+ib(c;*e%D4B(cbuzK3KYQ$=32z&G9PW+ z8%;dR81QN=cy$>ykjAm^ImjGRIt}` z1!KGQleKGeS+ASUea3lI^HZ9RZ+WlBr*pw!26=`vmR}Oko@j~(IKj8nuHwG6pOf^P zcKqe)Pu$eYRNRy;t4yEvvX|7I*3*4F)XK@I3aeI5Uuxy_qi)Vp^o94l=QiB=Y2~In zGw*$HfTw@WcewTeFsYT_Fl}H(6}3>JcUj55&9aj3%(0U1-AUcgO7d*b2|lQ#uFehU z@iVa>@1};zvmW2u&DOHWQy$;RyRGnvyR5L_EO`88F z811%}o?zZ}U3!&j3*833wn8)VWi{|Denop9muHBR;aTNIXzt{b(YKB6M!$3}yjCA| zZl1{^=Yel4uBZ+fQGXY_rBeHRi>Led{OlVa)RwyS40gd|9;f!Nc+8fo0+E6KJ)Qie zEF*CEBs>N@uz5@gJcfD(<#~2JgZeys{W6wk*E6^Se7O@{;4bvOyRmm;HNKYW5}V)f z-80oQxUV;U!@T``4!MTRkH)5X)EsJz+265_7L-`;+&{;fy@2`yrB#K28-KCb)YKWm zx=hPm#Onjw{YGwBPmg5Y%o+&uHVvIAn>o{(!93`{rSB9U&l=yN*>??G*4{W4@gfFh zz%c?GM|=U8-P0S)VmUU<3Uh6kmFLntyjJq8FW$H{)v-e?qP$=3o=SujK1)ZuT#0_Ij7;UJJ2Tk5KnC*8jV~#NavP z!)Dw4F3UD^5Ie|w=zq~X?5ixz!=z<(=o~FKDQ3Xde@a-#7{)$miNW6uHW$u8u3m(E zy*QZQ-30!I#D~b%_rTBh%9eFtyF5a!q3UREx3bt5AiW{Mo&X2s>x8e$&mo!lvsvg$ z4j)P&qw$e1ix2#6u&H29Fg|cF#|wjT+K;y*XJYgwBdseLQ6`_@T=z*O`n*muI6xlrAWA!g5m^uRMy(95y!3b3gn&`uQEQT;qSek3hK zeA~v-SABuGLzr9SXXi7-q@+CaMCl(g1K;JD2;Yh#1247cC%j;)1q|s2`X&AU$ zUKV#E>o$=yx@6}cwAWt+dO>r!H{8C+8*XNfXzQ5bKHJ+fmyPE8^U=YEtnnv@1#JJz z0w-?bIn`GucA;SswikWfw$a$!uXg&@@3*?eO)Oy!)xO5rijJbb4_$A`ztm8X@2RQ4 zA5(Ea@e_G9*zT`Z5UY@<_=z54&v?onyVlzGEC1AupWwMyfAm4uH|UeTp%|ae?>g5E zPht%{UIE?Q0bXqICkH_rESxO{%Um5}BK`-tQ~&RPM=HkIe`k9-~c{XFQ_u zZ0=<|z`5smKKYpOZ0p%au z|Jcj7A97)dY-)jrbjqfBM>fS$WYY-v#b9iL0(?rqb}l^KJEBWAvGDp(DL5tm?Ilj8 zeBN00we|0D<;;J6t4q#&7JmJhezh>i%u}*eydjp~jW_HEFBBWq%AB-r?(1uZ@120} zwd036(Eu-a4LV0(X@0#2y*Fen%cD)>Ylhy_487;IBU6#FUH)a4?q4qZd~{y{Y(;;pWy@d2KDMf+PHItjEnh;~LWcUhi~_KrXgHT%>Nw>H(2RnuZFIwBR?`Pw2@W_^RGfT@1xqGy)eBYr)Zu!6Ziq z8NAZEB=A#UEgltzcZ**c8pj^jcT(v$hdr|dGsO$#!aLi>eK&Yw;+){9u~u-*1W&LH zU1ij{mc3V94RRlUOiMYn=v8-y@0hsJ>Wsj>f?o~t6#s#~aoV@bHRgiQ4;kw_@FRQA zrR)&4{6xiaeGOPDmpv!bdgjs#u_f6Xdn<9y@7#qg2@Kv}Z6$YktY-u-**S{yl6=Q+ z`?kh=72|#9F7~!q&3+<`*|u}jLX6GixZlUvZe%~-yQxEc3$=U9d39P~@d$r#%0*Ui z+9jUg!|7X&O<}CEo7<|9GjpvZRl47{$C*o=O7t6lTA+-vwpD|ZbE##X@=e)zcK@`m zvidgw+x0y1InQyLpQh=)_<8BK-X`z8do^Jl^zy8rQA#tJ|~43q5<7 zXKmWg34I+pcF(`cx$?OD94DIV@-JDTD^t$Ln{(-K>7gl{PcXl=CtF6SlyhCb+#K!r zzp`;Pj_|9ZU;Y9yLc{k-jEJz314E{*e_T)q2HgPZ&~1Q9`d3uI$?k4 zi~TMVJCR$vEMN2E_TCqFJnZ;8^T6f4&})C_h`lcoJMnk!^7EYE_ifs;`0M8H{Bn1H zXB4`PRG{NQGs^i`p*)f+#{`a_OYTS3N55}GmmtpnY0=Cu>d(%7+V)M%eH8tUdBl%> zl$y;A<-{bHTmA=!SYC3X?0RLa=V5QSdy5x@?6_pE(U#&f^BElt{VMLQ*xoN(zs*`YIn2m^{AyPFL1OVD1;i&= zo`&u8Pj*lSc2E=V)LWUvlFMf(ncCe!(hyUE5e8G_s?1%K#4{FP( z?OLw=-lhV-nf#Y=?+SnN%c=Kn;QB27CvvY4*rnc^!}S~S!H8e}mb;o6+ zEpEjJLtj#1QSbTa_fhP+)V}_nz6!1}zOVf%Ts`0~H%JF62q{0WnlTD4v2hlC?0rlp ze8xZUs_{Xmj%gfnBK4j#rWoIfb8o(t-T=RCsQ$QmZJa(-F`s`;eZFg)Pgp-25QreR zqbcLOte0`xc;XFR^SEd`Ei|3u)%+K@YZBn9p;P?EYj<>~$zdt}V^c4lyqZt@UevkP zU}{`5uhh3rMxg^cPS_hVH2Cot{Opx`p1BZPk3CEq!BNdyDQgOSs5QI|-gpW4-o&*- z*;YWd|5(u@>wKkKiX9)lGiL`a!_)O_BRCU*W>TN~XTIT2`9>6b`Mpn_Z_u{hQyiz( zM#Z~R`zL+R;Dz&zE}y(zqfj}E-R?u*sk}}8_OJDTn|Rq%4(we1CHMuQ>u&YJ9UOA` z4!|#=Z*;K0J}ayJ0D9*>Xg!8) zT*7{p@U?d$$h7C-8~fm?>aVV0_RsO}`IB-1;V16+G#Ao~bzeCtI%YdZp#1zdF17`cEbMs1L-yQh>eW z&GE&va(s!r9A8sk{44!)eA(3fY`NRx%VBM?6k;@d5 zT@F8vAP=MBmCUc`NWOvi-PqOSd8IGpJIDZ2Qy^=)F9N)xl_kFaX8${bkJZ@*A1&en zRx*cicwaI0+eu)afvud0&8#&ad;-Ku6oj7tH0vs27^vIf4a7^(lPiqh;|bZe9`w?J zd#qr=Js$qkf(7J)$8I!!f3vqPa~^Wvz3xWpNuo38{;=KBtmL}F!O{{`b>+rV!Bvynr&%j{+MP}vzSgqIz8uEiTI)|9M*nTCLlt#ieZ>RjK{ zZ!f>y^C0^rN>^Aigq#DnKeV@oJh72Q{^02G^k+h8uw~a^_Lsjf*t++kpz*)P{3f45 zdH?Y@O2Ucb%fn68Q+>^wrutqytTm^8tT~+9)TC-Tu>FxzKDHy z3%NFefAtIaiPpp$V#3Emb-$Hg@}1+rmie1c%*g^f-sA~4w``shYqG$NHDTU^kJ|nX zgOk7?TsxW${CkVFCa$k5*4mlhbmkX5FKl!U)`b7|SGyist69$o~`qV7tA>fJ4%ZQ@-vTKg}u|9VOAo0Cg}C-x2szPay$;M<4396WJwiti=My7I*1 z%flyt=?Q4>1aKVzEKeLF)&qTcy{{y=p~TM~-TA?j&z=)pcP{>lN-KHd4vx&px^t_- zC*P|IzxiQRc(>=An%(663r|jP?IhRK?n&DGlCJG437hYE$AnV9r!~2D>2&BpEsNkQ z<+R_xo}fqgM-P;KEuLZbZ+W=RV=Y~W+^Gcr$70u&aZi4`V)p*h{K1a`_rmvx{dMe> z{Pt1ku@3;34Zvk1eGZ&g6`sYK*PSZ{29A6BxBKBI+9$RcoF>L)wyu?Me6t#Stzl2i z)$HHN9**pb9DXZ@e0Qr~`vU0ktvjsnI~C0PRQf!ZF|dXjF>9&B7M!cxwf=!yi;-_N z+^g33Y@BT?$EKYH4CiW$?6Gi%pLYD6eR>;y|EA>O4aoSZ`o5*_A05EHlt-6b`G;5X z`_&xDu)>EJ=i9*e9bo(%=hH5k6r4GJa&X3kvS8cZi`kp1fZWh*{NYxx@k81=#dtcv zK`;J~ywY%@?}~6!*)(7CtZBZM7ujcpwj!b}=&BW%QoFf*7wx+6eS~vcwppPq(2RTj zyOi_an)A%iuQ~46&wh~Lrt)ZVU+b9t$Z&r!G^Ql@=#}t>o#(-?&Icz422D-6z49g4 zd}c9o$C^C*o948)VSj5Ky$|!JeQmFUCU$!+2-JD<&AcgJYB}@UXRF_LZI(6BeXf9g zq53dK1?(kN0$ttj@rN&aY2C30h*2rHaIN+~@bszh@cSY?Ujz@f+fKeRX8p12fBe|H4?On#yAO;#srT9s zu;&!tSoRWi2K8PEzlF;M>}3)Gcll2D_f%t@_dL1>o~@%kSooa<8Ti65q zA%oNH^yMu-_c?MN<6Qgtv`(!G=OR<{=Ak3O7xUqd`#iaJz7RJ5b>sl8XJ3=u_#MPg zwTIAd)ED{$B(lnUe5h}_LoN~Xb z$zv(^WH*%ZuR39^*n&mWD;Y_hu;uvM?OG*WIojhsB>o9~CNdhG2D`5c8n>!O2M!Z& z)G`|UL_cUjht0Ov%{uElNY29-yK)!#-G}%b=^RnUJVg1KTb%rqGJD@SbP?LN0()pX z0v{L#ObUU?aNsi+xm-?sqhMA?eV2OTzhsZ9#>)!+RqssWaciEb#*3}zD}S7|72sy_ zpwJe(QH%f1^fwzlAy$U`Kv$|nSE@u;szg^pH@53uj9~28EQ$|v`xxPQ>-*?T z9JMdxzlRvx2zbpnesgU;a9IFMH21y9)Fs4=-AC@y!zntG;!|E`PNx$yrdn1z$e-KM zvt|zYOhci+0_@mgV6vO%r6)?C+{ZoPh>jM|2-gl|khAOPUw!_9jzHf;_f2K+a9|=| zN%X(%>nXa!#4h*tw&Y+KF76UFgL+1PjVe^B%rD_D8236K_pFWTU6EU&zX;k%98BV;e#*P0+Eu|2Z-rc`v_L3*T&I zEppA`kypQ{Z_z&ZJNvWRy#BM=#9yQ~<(nv2j?GM8KdVjOXSK;XpW6HvwF$3X4jp12 zKP@=@hHE<3a+JQ{!S`eE*K6aiVpWG)Y4E2?$2ZsWy6dxZ@%{8RRIBG9=+MPi*};F= zV&mwK_^!~>_8;dO`F403_OG{3H~Uxhy3*mV!cF=3rccG6vKpSX+LOFl`^avxlJ{k2 z)U5o)jz7frvd0E-j;x28+Gg%P6d(Qv_3Jb2{LPlttOMqgt9g@MJ4=3Z!_SBT7){RW z4EDdTlFMa+bF6$9M6@9K##kw&bf9Z*+b3$fg16uk5_W zx-?&FeVQ+qzPF*%W^+$D{ub+`jXcv>SL!p*)|dL)=At9QBUBemwT+z%~$csY{K`sZ08>uf${2` zEb^7%jgJ#MO>AilnvN4+no)!gU@U9N!B101P7Sx&>SHl7zigu7 z0dpJ5EcRT?$n92}CEJr*-3S>(z%|ziZ&;=F!OMUG%$YI$MyYQFt9er;bYv#8xmfILh9evwI{_ySO z4ee%3yBX7N#v~nUpED+M5syCVJj)u#>>9?9=ge#6b@u*{@^$6V{t5I8eM7!1_gwhp zo=114`9!a(FK6o^ss)#e9wPbMC-fihqhr;<=kGwzxC@vthH7$<=i_ILF}8)Qscpx% zl+L>EO6r@Wvlb>9V18ThR(@-&g2%ouvF@;wwkoaU=F6=o7L4w`FQIj=)>f|$Ttclu z_9a{vo#R=iy*m%~rIyo9+Nks=FK+m>wp4X09;clR^7Wq|blZRL3ghE{!ua_2!YiI- zy;d=xSLX(#XNcEp?IBv95ttVH$i!!8ohr&Wy6w&Kcvbkq8A-87)yzHj8-4C^VghPbRhh%}+@Ouyx}!d@?b9Pp1EkHxLiO zcbaE$oWsBHdN@9=G5%ol<*Ip<9k_KId%=`v2Nq%9o~qAgjTt*Pt0WmA7BSivUjR8H z@%sCH3F1HgR%iu!j^_<$JeT5g|KatlA2@pg{`=R^x#yHD^UNb=8a(o#zpBq}zIhz{ z0_VE)d43O~&+(_IK{?V2$C=OcF&yuZzH24pcX4#a?dD9y>aYpWiG{mqe#Xu3EZSgC zL7(?UY$w?UdmY=Laj@+J^7b+Q(0Mtm-;ZArZsUGC-z@Ru)f9U?6@OxF#xp)GY(+8x zqQTYEg;QS!p9b@PVX$7l_iv65#A47@7CKZjcy*j};7sgG@)~lw%JG$=^GwLX&TjU9 zC6JYZTRgL|oNNER^TXQrW7*wsBiDhYnX|H7UvvG9!PZ?r#Q*mLCnk?MI+$bPbx(P7 ziPf`$_MG~e(~{r`;}f_DpTNcV1PX$UZ$W?Wf%_lA*YI1!W2=1${1#>&dwhF|^X(?~ z6KcCISu6P@*ofbm<9z(4$R-bRO6#ok=uxh$DdfD&vap%Frbe{l?~u)=Ue_?LyEW5# z+DwmXe~EhNTXwgm-Ow{CQ-zK1Qy?=`?PWxikSv<02{ zz6rdTEt)W~J~^S1l=E+xbLB?ngsw5?(&ckP-{f4!DI6y_&s<@SIic~+ahy4NLt{Cn z>P~C^#nzpk!Y_d8Wd2-zUO9!I_Pw}MpYN^CX%LvI&S|gvpiz?xfBo!q{L=G~f6}!S z2U6l?-3vYPQp|ZKBc0_wh z(ar$ck?s=d53fS!?Z#XPq?$dtFhn%I(ZUDjcRda5w;CcE>**-(%|fXEe*> zGrA*sqiS-fj*HeO)?l})errAd3$gpkoqQ|#iexgU*vdA5!Z;=P(bloqN`vk*)E9 zVt=fx3Rg$m*Ta6+J<*Sjer%rJ+7AMI*|yK|-?Q#W`l*fy3$S6n!njiVZQDT^p^d=W zJzsCm?O5@(DRW?aTe3UR=i|S#aWW!57B(m2@5D_ZsL}5arrY^VWy){L?55v~&#C@Y zv@pvT8S(LZQ-m^Z^0kqnMa^2M4b`Qq)9 ze2KRv`I_FF`Y-cTHUxp^FG8w1!YkLx}2bF~J& znL_%v4|HaO<5H(UTkDJ(0Oq zvZ>k%H?KxNzLA&_eA_#!h6bMfMY+l6h+#*rg7@#(k{%dN+cDP0`TfL>_pb^J(Qj-o z^ZTVS0qLUk)NbSVt2?qU4TuIipC58{0J<7bh|al#IEx)`e>DJI4T$Ac?s;Cn$6OW= z4aU6p==ZBTuIwKW-j>_Xzq;eZU}LX$w*Sv#105ax$f;3Yls8m2-sn?y-rj0tlk{N4 zk@TC0@8g$U`cz?h;QdDQlyb&CRXSO};Kp9wZPdFTu}>a4j;r59c{ibV(Jdo$^lsl^ zV>$DN-Cdd5MkU{`wvzj$C$0Qaz%x*JgWgU(>Cb8d-XEDoZlSX;@gd?-qO)urM?Bxv z(cVTL^h?!o_}z!tr?V$EL+hqerNY zhIDq@k8j5l38#BLBc3Q*HuomhmXM?J%gdHsaw+*(*s>Ma13hiLN^A$$meupO^So<+ z_SROg@GNZ=b=k6NYj;XpmE04b(viAA#&+(l{pmw`Z(p<{nh_nzHa%OvJ33gKti_)_ z`iJN?=LV&ZN2}ovtKknd@P`fXhfR~veJ1&&H*6;FrJ9%&)yYvF4gRF78nJ7HcTw=B zg}KpQX@Yr!=!QA!#!qA?@l2HYdzCfu-@)_FHlK0YTFG~wLv}%}=~c zjSSkLF16`jIl6`Vm+tgWwGGbJKQH~`A3NF#4W^F~2W}|X__q`{UJ!bR>!rr`=V{L+ zZe|jB*Mg&9cpu+Ct}&rUJ$zwl@DXa5!t;ZPT?5RTSX15k!9+z#IOEff35kP~eK(t$ z5Xg^DI-bek-AwwPMLYWhTjaZHOJvY@Vw;X;()SkprrE4vWM|y-U<|*%V7myNei7}Y z_WcBLBCBcde%f0@ds(!hb&J&J;SHTN9qinOoY4R9p8TwX@;dAH7GHP8Pma8M5H zpLs5v0+UA-9|dfr=LS;FA28=O-0C@R!-p}A^}n_oh-Jk0)rbuhfwzgTntD^rrF=Sb zS?^un)G<4D17lvqoOrOYGML*O@RRTS>;6w`w|tUymH3|cpK#!1ljE=YjJctonD5%> zx2K%n$~pWTzra@m*xGLowT1@1^&iBN7#WorTEKl*M~vh_$HZ#kxA8$EKH|rHO?TS* z${#j6`br*sFULo|2%l92ew;g4ce~T?`*VtJ-KoDg`TU1jmrBj&H$DUSMhtlqM{XtF zv%*auBJX2fU(0)5AN$UQSK(939O4g8VV*OFpf>^&#X!W)v7T0}%&L6r>G|0u!G+We zjt|TUM)Gol^ZNlC_(KFf5W&wqv>$Z`*!v)c{aQ-gVX5UY>-iC`MY#q~3G;lIbsub< zK7l;q66Ld3J$Fx|t(K791-yFTYV93xp^k3xH#S56nc6Ya}HjW^}s7X zcqN@E2JU>rc~&`p^*meeJnQB*ZF6u|F*|mx6e~2|d8Y~7B9_bS-?ksz|6?EU2!59a z4`981<4WsGfqN(7ljpf@$ZPf2ZI_zJrVrbOV5`%Q3u#k*P@4zn!wBj>nY@H~*3psR zP4S8Kvi({4s6lXevop=VsWN`=*@ z_0*%{`;vJ&KF@e!=o4F+FO5gzYKCSsu2OW&*hDMYTnx@!0q!_soXi+w6VWfP;MrpE zlV>8_*P5Pch)m;uM|wt0i?17ft6d6?lAr{wIx_Q4=fV2 z{k#poS2YH3bAn=A_B$~AqsGeb2F7CKkz4a1i++fv`hvUt>F+?(?=b5=;JO8_+q4z= zZ3=DmW&Hj9JZr|ovsFCHn$LTF-)Q)cXiI;#eUNSY|7XfR$n9nyM5sd)zk_;5v#0y+ zhn8C4VbZ<(Dj$~PPRVX+olvhM8Q(-dc|KO*NvejCp0)RpvTFm#S9}%oGZh(7$@JE%zbQ?nkD@ zYP;f3RFhnBCsFWAz8qo|l3h4d5W1alH=dF%&VBHLHP2+c+RSINsS-GVPm&#L7@Pcl zi^(Nvd;CZEiRN-VkK_5sPU1-JE(x~)hnC0viWz&RWv@TEn4|FYd2nGX^U(oa41+Ej z8CMis7W}vO7wwM=RMHR8lcgj9M46H3jUsWA9Vzef-?)njat+~brdHXf~ zU`~-0%p30s=KIouikE4s1wY`w&E>?S)3!z1@^?q;vjPvWuZi*ynrayrc1Io0&&aW! z*@sRbpFs}sb9uziWfMPls!%zt@^LDsRX)y~z~YHkFfy8X8pk|cfq%22G@Q6&MY!qU zbYJsp(|wI2@R9BNv{ru6%1YZWYL58KbZqes3AJ347H(nOEyQ&ymc9z!-w2$eoM!{$ z2=}DlXzkgBjqXnbKJXZlILLuuz$Y{m9?l~|zhT+?qqzL5@M zjFz)!))AiF$i9(38T0779iDy_5#mf(HR|7Yfc1z)< zz0vN*3Gh0nKdtq|*A<`M7niox_e-E}yDq$S^m!{odh)B1$s@t*p8b4ck`;Vpq$l|3 z*V2OL(U+z=aQSZV>#kJ#rcNsG`_&ELH0?+3?t)KK9k96zUV4Up-Rz++=;^xx;Q#bmGRCNABcX@aP2ZH^Ha3p~JQDKbrBH8aMDX z)we03ww_Cec1%!q=ym#@0B(}~E^M0Uv*7dag?`6YDP_HouE(R z;{%~t_x_t5=uOC+H%~$TUfVA}4Ek%`Oe|#uG6h|;9bHo~mEzIQDP{tl<9xY)L+n%{eF?Pr&@wXpvzH+}E_qY$)e>*&6 z&B&5q&E@{!`m0Nk8-wv3Tu40aMZwk>eQgF;c{dBZ(i%fEa$9zM9Q$Amc97(kfF=K2P6@pEAeb*IV$eVo%@pp3_l(@KgU;qFK`sTz|lAPlViRwnPkUjPA|0MGuIKHsdxz4 zC#uP0YBk{t910!iUH5s#_l_d21>1(&Vs`t|IU2$7XgPK!xh5TzdBKiy_~3{i;Fr$} zHXoeg!w+HVueHWX@ynOumoLRHUy5J8)Ms=o-uK}vGwbzFG2Xr4*0ace>Q^Pm$tSLi ze3ndK>#pxWi{FI~=Rl8rIq%2$xs;@*PE9#`laPCmAXYz7o$j+~TRIWBo+&!fdslSn zLmA9>y!M;m!ne>xZwO`&XCIyc9`MA`fo9T|GUh?6R)=u-5-o+mpe)#&qOwm((=j$|tiTkGWn1zL38pe2u1AR~CS0Ex@8TKX4IyA)d`=4c!_% z?dfM0KC4ZWy9$449sL9F20zLT%w09OxEfrn0T(xbi=Ei= zztFVckHxE}(&uaF^F-EQRLjNKFzgRn=ndS&9xWzL@fyaCeAix}`gVlAsb8II2o7GV zPpNn+8kY}lgJSfIev=himvX))<@~;s^J;Uh_3gY+73Z4gPMJ~;kL=-xYj*hNzyB&l zuJq!IYle?LafbNS9DL!a>%Bc|Yib>D4fB#`J*reSUX;##0`6eLlQC zA6}miug{0q=lhxu=KDH2F2-GL=Z458R8F7b9&=g0?u=7>z>Y1PsW>lU(S-kbtVs&y zqSu`Dtmm-yGhO?4^q~LZ@%Z6^i}-pr_FS8HG&P0N!g^Qn{eAdW9dctg?MM#f60dFO zOFYi$i{k%_EnBuMS(6g`@AM@mWUm^b^`Hw z@Ta;AYbm~j*)uqwOB~*O_+q2-2CWf+{~%T>@_0#d82u=upTp@#B{jngKU;}ChA)3j zcK0zW#!P&#*k{MSwi2V4Q)T(Iub_M{x3gBC*a_X@ui3_)wDlKS;qBbV=6J&OhxYU@ zrq?<6O;d1t=y+4ZE4vA}uBkEyZCJU@_gPQwxC z<5l8Dk3y5L5H~7+U|(qE9ol)5|F`)ce=)fF72@0R-xXhKE!|HW`n|P?x@U%7$DKy6 zbE#)C3Y);C*Z+YJUC;Q7t#eF1ea@|-<=mPX#E{OQR>)d>1*x=XXpOkz{ohu;bYJGB zAoLV*6!8vnAo0s3umhX01CJAjvO+dKaxzkb{CN$Yc|>-gVg!&s$P396?7>%M4?Z}) z%N~rr20uLlKLy4K>5}!xq#AUh4*7o4?Yg7bd|MV5eH5e~&oFGhLfhth!rjMfXol_Q zABN2*U2m9!J3Z%9vF>l}w8F(xfEzJEnp^R!+rf)c;F2bu2Hl9ScB{iYy}PU!>cj=P zaw1xfe0a(VUkz?ZA66gC-cI#Z;hC=x^8-904a9jIVjTt;SXJW#!LL9wjNN1Doy`#uJwd{F|aTGF?<`|Bw2I)K1KihKd^1y|RS8?is(RyN)+L`wgqO%dyS)|rtbesqOGJg1p9`a~B$);jraI4e8 zEvwVQt%bS1Hex*ghF|f0eAKBi!r90z*|@H3L&i+_+b-%w@oegIpF&r9PX1=MPZ6Gr z^4#<6KhO@2oq(2KBB!raI1EiSg2SD@BH*9O2R5d_+>0R_@{WqFUrTi==1uH);{E4Kk@8bahA~-P2b8h0@u?w^-D6pG^^@Z`FW~qG|t4u$&Ww`^%Ldu(oOx7gI{M2nQ@$C41#HC zcGaa-S78{c>RTS}*;AXTEJcdWES$9Hl>Q-$v4} z#!A|{1DOiVcjh1LgOAhSkH4;1aXa@wG2_unXzewgy@TWHeE$gf0QGs@Xm~wzAsUV{ z{-`(K7v1oE{9)h22SUtuSsyzept_Hp4{)%Ln-4(jKyl#X%i%w@R&qJ;8Tyy20}FDQ z;|<8_yYWABZO81vflCKf9TUuc2b`j{;1DtN;wy?#$L^irXN_5Y)2XceNY}G@aaL%; zKa2mO``rc4qHokLPc~QbzX@4#7dn+4>;8lrlijkKYs9%L#vqFCHpcJaw9zct!&;`D zbD)~tPR;@AUCK4k`j>JK8v7!*$TiU3)v7fakCAgw=)|h`fZ4w}FjEX)aVdE_;%V@= z-g5GL)Bl9qz1nN|K#O{@$3|iE7~RXUd5oR1l-NAze)Zp>e|}bfQ+3rl{*LzL8(0JE zRo}0U;{)bAGqlni(?ToEG5s|Cx~E<&8>I-l&ee-wacorSz^`Dd9Y+_Pj}J@m?6foa zU4|ZAo#SmNcXD;T@R3PI&rP@WTxx1eM$dJ4Wnh&DzUkOM;*mS>K_$@7_6;W<5g5De zuctpIFPZDIt#m(1ZkcqGcaXnvaBUT_drjzX$GJxw#Z}mgvx~^ND8k2IK>px-+K@gY zo^0zi_yVz=M)hI8!Yu2VQSjN(@L6)}Ozne8r}n{2k3T$y+6U{jKZoiNfGacb?a!t5 zfgd0FWwfVvmUFIWuch|EOVmElvl09stUWH9N$msW!|i9yV3?kFY9H`?@})8Bk6lac zgLTwCSV!#x-ZSeFd}CPywGZ?j`Gd0+J6uWagA&e9dym=&dT%~3<9p#6Y9H*P_JQ8T zhd#S_i=F4Cal0^SgKkQgn>J{u9owN2-oA~tU7JBUo3bN>OLm<|V>b|M@uk4Z%TjbS zbPZ!SFb9cE$TJ7#ZQ?1iA!{(S1+Up#j;V3-(JifBr2kBcDW6pywoxxW&pPGzj{iV!ae<_+OAKAdp z^_TZ!RyR434$VqV^p-2qIw>Vr#GyImNT|QErOMIez1ULv?Y^%(i(2rg6I3cB){jmfp3jNRt*M^@b&(m|AQ}Qu<^kr zw_(?iQx)EB`yw`W`f{9jH8=h&K)jNHKkvJ_BJz!-jxR9|*-RY0`~rzX*eK*^>U;mg z_ZqL@-b7^ao!G*6S>bq$T3y_8ZKc2R{5-8OaqSxuqk z^PR+>-9^2D7<)i?@lO}nYmX?;_^^Yugr0nP-_@x+nfOug%kX5b z8=lND=H&azUyB`im5T$fUPcTfaEt)QC~%Ae#{_W1)>ckqnEJTkj2?I(pOkpDbdi3F zS!0ehM@v2jd=?5m!)^Ga;=Xd!-LW3VUvtJhtB1Pc@AZ5tuDNuS+Ex*3hG%RG7!U1~ zWnSaAb?LH>d&XDDF#fY+JC8g`!VS3px1iZou72@w?wifo1=T*1P@gF)q@>X;xcP&I~ zAi@o;R}MulD#kAipPJqJB0LQ`s01dBBj9bLEyLe+%>yq;Gq!1(@o5zH!vDMBEwyjX zh_~Iw`PnqE2LH$z@sYmI2hYAupA}m`EWm6pbtq-`)ou5foW#1}o~2tDU)@U{GtRne zJxis}5Wnf`jsKtIS(lDvduaTEmySK@MbA!0A9VY-5LsF7*ynCeVQd_-VFW%u)r1{Q zjWha6{=-jWVi+oqHF+Jsz;#;eJBOS^cy4N}0 zV~%N|e{_z&aE?EB?*Gg={?s}C#5w-h9MeO$Ilpgpj*Fe+Ega3!a8_4&7o{leu zcU^DI-u*m&&ke-R^NmT+&SYnuMmSUSL+ZQ0Uw2YJsRf*Ac5r4II+o&^HMT73=- zi=nk?=voo<4aLwj<11<=1}nB{lJB73nmCObpheU-Wu5Dtk*w_xC(d2E^yXhIF?ohL z)KD08`vb>VAE_7$T`K-3f#0SIoYuYEvFpq|@$=kl?2nhJy~eryoPW>HdG1fdAer~i z!7s%##Yc%hf-dc6?%hK_)mC^d&)rI_lAaZf<+9)4Tw;|xoKGi)oA}A4tyy)yW#0_q zsptnek3ZtwwsY1W3t?C2JrDX|4(}EJlV|Bx)SUUuZ&+{aGX<8$W{{v*A|&6$s1MjXQ%mTx-v*@|8s8sPXOh+PQ@}Q>Z11KZE*D-QqzE-ly>OI_zTM?r`kDNoFlBEi_qm=I%nS;6IDv^HRL| z_6y0wd&8*(b)GGU3NB#n1~@cAJF0Of{WHhtSJ`HbQ}uPSbFv$#2iK78_z$!mmyQ3R z03XUczAM?L{PpyO5SBLwc!LCx4kUrxA`^ImQb#zVwqgL z^%7T|9(w%kj@stefD!%6x|zDa^jq>xYfz^D#Is0FrM{nm&tesOFkGygZJ)RhuE??cC>W9loREoSZgv9r#dd@{o(_x zHFGrY(%0wN=fd>KZDZaD(}wguee(dY+rc;Y?ML==K8;vD^>-!fP0=#&>KbrtE`CFB zCj;DZbMH^`Y|*%`-1t@S-IWgC&4BM3x|oWro`b9=uQ_^SRd_MD(|DX5Dkrz<>CxC5 z$Jy6Z@_UXWznPEpMsm%r@!NYbmvJPfAU@Tu84xAzwcJW;7)dh~=9`eceZpk&EfK)@?+01@M~|?7NPR{9vNm3vT1L zuOXgrgVz_i!=LQR8B=}4Y-qw8YI_TsIMPKE)!@47T1ShSdu(zqv5@IEVYhzY*8Mg2 zYgluUo>tF)H$81EI=kp@7IR;wbyn5rv**9%VE6gIGIjoE^_YKb&~)t1c(F78WoMcH z8_zKRT(9VyBldPU(;TUfH%Kq{pcBBiuz{s(NGE6pZw0fz662;EC70hfG5@M7DcmxA zgXiaIkMVL~HWk>-gm$>L5W2aUdB25uSN#dWZu)@U>E>pKZsIo(3s)@I$v1;=F4Gw)+-RVQNq=5-~O0W0?Obidd1|4mt6&@`(ECR-}tfb9H zasu0cMPr5CH~FWwLJz5R&@&BRutM(h=SzOIqx*1gEga<=^gQb?dWBfaIMbDs3_t0ao%a1X|G+X zpISqTUqg));vdB$tKpG`AN7E@jZ^8NCCrUmo8%UAZu?@(&AA=BI4|Xyo6LE3=tk%G z{m$poL*F&$_WQF^&cDfd0sPDOWc#Dn&$45@L+fn&BGR9AxmkW+8~Zr9_J!(cwwm1F zu6mk^(=4b0=Fn0CekA)@awrSBN}ET#DzOSL0}~QgX0wND!;9!sr|B|FsGo}-R4~+9 z`XX?Dg!ofQxDs_NYP-!qfRg#?3wqSX>YxQYrbD$Joa zlLWbl7Ehr^Pi>oopg_@Djy+ZDB?%WnVhf|T@n~C!cqQ1bmtfY}^-@O_)*Uz)%Q0$J_V!kF)O)gY}JVtiH#p@7hl`?#qs| z@AvK=WZcM0^)3F?Ih~czMHV=pz}b4D#Y|{NbYpU|_jfPiOo2!ya(@Nu7s@pbFh|Ag zPvT6AMWyT!-b&6u3v1_VIHz@Wc3?vjv4uj)eb`kAVx39+NZCl&VB6^4izKpFdv?TU zCY}(mpZss}$4k(Y_k61Uv9bM( zc^>OuZfwlxXJ}XUfg4Auf_|$n1wY6e^{f1WYk02|d?-d{WW#XhywcT{v1O_+KX&~} z&X_Y}cIy*YJZAeN`?hcIL2z;boi?OD!x7rC3EvxgUwBq-ySr~eG$@>l1|I_FdhR~^1@g_%D9@L#u=f~b z<0~E|*F3&Z|Mp}D%de3Q*ax>w_8mCY-(!A&QL(-*Gp?G@gV2TUvuVYKRJnW$`TRll zhBsYhEgG+Q3FmLL!w>D;t(8R%&2aG=u&a$st0rXpSMHi=^R%IT4sER8lr6Cq;rqPW z#{Ey`>|=93S0-m6+qo^sxF-bb0rsT3Fw2j7l;1jIyuUrAxm>hivSBf}FSfXALT&%E_E%ZWCFlTetT*uiXK=#fS~ zuOip!`85+GFPv^2Y~MLG^1QX~UajFlPxv9hSS#}LV&GMoWbxKn)*|@rNtL^24+wW( zq>jq;U1xE{!T-?Xz^lc)7tn4Dd_1(QV#XeP-U`mHQJMI<4LFwqV>>>wVAk4-bgbso zeRqRsiTd{!+ig70o)bf7g;&HgfcV+ESUH%mWUx8Y%UM(uCmj>-=3 zgzs*0RT4$umoe=EKZW6`oNvk65_`d0z|YEa@ngY@jSHJs5=G>cF{W~8bt~tj&9!{Z zIoL2d8-K`$8#X**apo^^0nPt|%VIP7@U{~-5O24m!`fJ%XoZ$^o^X(}aJeJd-WTl) z-?`kEQ&*5V)si=k&Dy(ATpI0 z*`1bhL(x;l)@F?O&n8F7{07b|(Ou$+uT$>whJ07q!Q}OZT>eO+GkW=FU>y*IR)5RB zW6_1=TLWi@BE#>j2R|S8ZX6qwJ-*}-_r^bsUFPWhBF>Cb`;yPnjcU)1ZTR}go<;1f zlMNvlymreT_IxWB+iSOMfu|mVPjye&9_U!QGYUU&-d1xv{#bwCsoO(GsxP|FgzjYr z34YgZ(Kx)Y>u$JTlfT2icFV(rE^Z* zcO}bJ|9;?98|}#QcJR{e$a3!->MntD>UPj}1HQHB;zI5!eHNNfyE+p^^s93WV#+U~ ze|_I*zT0PiJ>dD?V7>=p>-fBlzqS0W;cqp6vJ-0gtmQsq-BmBTeS*9ycOHHLuA|`E z8%zI%BQN!=foD-8+ng9bKFueMrK>$x581SVe+ivPC;j&qZMtyh$fY;$JSpyXDPyqp zraey+msj-MvsmEFlk}_RNn=d#=gyVp$$i(>xxua^^Q1O(UX59wAiq&Mx0fH-Z^L`l zv^|lzooEH>=33d!7W%9sU^OrMaQ%icocpeR?6d3?vk1n%44nEL%cl)TK`dm-{ITh# zED$@7&olTdGQaKloa*_0Hs42>--MH`Q94z@eL zt`E@Pp4W5tnb$wi{>@Lb=h?)sfN3!QKyv4)oyQ?>;K>Ab${P`PzB3J9c3@)_>~d|a zOv9Io1G@8F311e%m%`7JJ@cK}WzTn};Y+n~toeSJ_lohO#FslQUo*0}dHjdBZAe&| z#{SjWLpFXhW6uGfI2x5v_8zWZaF`4rw|@5(PfypDIX!s#oCS()|l zCObdycH%xC<)7T+bH-USNe~N8F6BL9lPzx&)7`_Fc1^w;+nsoPcXfcf05hW9*j_2( zrAsW`BZU9Koxf39{!wLmB&raj1u!{eX+<~5C?Ig(>QJJ;* z-i$o^neuIGcphi{rY9DCAMyCjz)_|u_F_li*6kg{;yT_W-|jljeFKJ$1HMql z!?QWB>cZ&WDFMzi$cXBmwGPG?Kb^J<&`H>=DdLtb3&M@9Tk)0Wb65R>5@&C)9V_XW za53*+!utU}Y2&(2-iGU+B=f=TaPUu_B>9JpZB^Ed?afxGgY^^5=Q?LTO)h9YuniAW zw}!f5>V~Pyx(I6{YoQ}IzR*d`@T2_C^~|+3x?)rzGWIZeVU^8uj*RB_1IQ|V@2<=Z zAF)PPjvCAF_;l+?cXvkAvab61E!=(U8)j`Q`L{3>u%q5T&33^#j0l0`nFue6T! zx8EJA&o(l$*XA~|cD3yT- zDIcu0fHB~|7@i(6B_f)%j=Wc|IoG`->OUd*$NV?Y2W=D6w(tD5?W^iLx6;03xho$f z7p8pyIZFE)qpfeSm*}g-_)3zs+&vNa!S+czKB%v;h{;X2@f`;~uU_!tOE4H(r2RhS z_^RsX*PD9f!&ByaF!nP(3v4-XM0AtB&B%cxH%V?e|BO5+v-hh{T6*+;b?wnkT+5js z-Fc{=q0w&EhU59{|FJS6E61`Xu@HVGKYI)^p!87n>so)^Y0f1W$2w#|?5|_c7w~8~ zYZ8ev^1@krVQpfYo0A)6T|zNF>C{Kb;Yrb!WXhGaw}Z3Sau##8Hot55ok9Nhn)v95 z_M%pTE6t7GHFHE?Vd%)bQ(-OAnTtk-URx3h8@a+b=CFTmKKtkH^CMUM$dw>+g*y>8 z4hbDD8^V4V&PodmVSkLy;^eN6eD>QcWdF#UR(d__E1itv%%GjyKHA4V=p5VU_roW$ zr=DZnYpijR*BNswb?9wuhd*NlstKIE0M70LXOnY7?Nf3?hf@yDwmLYg zKRueACEcXx&2`1emxBnsY&c1N-J#bj42Q6#u06JWS}Obpg3e$Z{8t zwcs%Y&9p8c-hxaPZAsQEhg|oL&E>B>JFDkB%&ehV8x-5Kb0dN=7dO)L+MgWct`qqL zqQ?uN$5z_D(3vB5t*n#2=D9S<_iQsqoOcIZ>b$p$nRoUOp*Ocw>-UxW_P; za4Oe6H?b(se0Fd2r8`+O>>M6wjFQXSxgsz0J9O7YB~v4NSJM~#m|VyC63FzfYx6?; znDZZkqlO$SQUktz$QvV)73rvn<_j${;mCyY+>wj`gi+QfBWER;_B(M z;ps===|@X^@bpl_)7QY$L;al5$T)OHrN(t_SvWc+Y(>wW;fwCySdu;)-rhg+YtaK` zi=tC@`lDw*9f>i}mU*UxvZGasXx_PY*NBCBi-9c5y!z+_&7sc^cqed3HT` zq|Q3Q^gBGMydQWByT$n7@Jofx$jX9Wa-rdT@LdGIOn_e&!Y_|x zhuR;@4r#x!(N$G8za%%F$o|fgqDl5SCO0E@M z89URFvAIKgWo$itNygsi$k_a$pGd}TI8Gc-1jhs7;&@~%<1jLoak+eMWb9T)#&X8o zfu?`ym9a0_GPVdD_mQ!@e;adil#Jzmwi?|nGLQ~n9#5p5e?<5H|NY%F(X*4$57oN! z9zA=}Y21sFvKsg5KCnjuA$+FYg*(rQBv!!BqNQs&zilaeox;~{$Jc(n1esTc%qt7U zm*P)T$M`;F_L)1juVlrlpb{yQ&yk-0`YF-PavB!5VMJc#89B2NT|wStC-5APU-L6ym;L;4e$7na9!M^h z_^iHu&11;Lr#x~Ioh84fk6h$T#)rA5Krm`waeo_}bK3^D!NGlx4ep&U?1lt3#>e_Y zO<5*~WFL0O9oXRer-aj6j18U}>tgQqVvEZLA2OO86llE+TAzgt9>k`8&?;b!GwA61 zfTQn~kBbdH1sfdOtA#w{LiSKBWj}~1Q;g>(Y-RLZcl8<2=I5i`@4!#wD0jZ;YwVPbT$d&Jz3rj~Y~*&@ z7SDCj4>Xk6m=)65%vUppJFt-}7|%61vXS$;{KSb8jMZZ&bH>xS$Z37)VbfrK?o;Hx zs4v0b_TPp4-e-J_xgqX6rO&*&JFu1Sz*f$)@?4N6k%DX5>F- z3@|tNkiVeZotr)|GB;j&(izr$Wb!BE@z3hr0d*d6Y@_ptVWac58J#!BndAA;K^b&( zA3AR{IRk^S1E4zn(i>+pFj1Vw1SB zKYe=F1Lm0+ao_a-Z@k}+oC-K{O6z@gTn!r4SQtlYfOvf}pYxnY&Vv_%@Iof>G?$Ggt+1G&#@=f%G)VA*IwdZ3>#K)eB1U{ti zEMG{nNAXD?vZwQr*_`=$VKjGYkoyxdqtZh;GwgjE@!{n4hJBG_6)|l`)_gb}7>7ff zw3Qr5EQ!9^AF7z=Cf!p(&h2^LnCEvlARAAo?*i~r6ed1$^g4sqA$sY+UT^T?u4kPB zS}=L%d@4uA&Fkrj?={))nso-p2Kt_dHg183y!0^X|3!M};O<=Sn2v`YULDn!9)8d7 zf$1S^=%Gn_;K|`4SLG;r@Vm6IW$I@}3paj3TG)U4|F^X8c1^FGxD{G(<%9BfmlON* z=BLWeHS2)Y!D#n1D{T=YyfWQgUz+RKlh_Zk{d2ReClo6se?f7|&<^ELU{8489fx1g zdWF?EE~DnP);b^j>x-GWsyN%6$K}TN|L08Ln*gs&M%G*bpOhmnn^=#lV?AzTNvH$< zvE!Cnv(7eW5gC8M$stJ~QwHo8xuJfGfO#x1_qI_G+v(}E6&`JE;_m4Q)R_#gIxx8X z$LYV9PwjOsZ-0{*XD8!~(qAY2dB>tQIvx1k{W{9oS9|vObDaAhk8W4}8kjzo|Lu4C z@V{rywO;65Bkb-b2GH$`LJ8^9$zRIhzJy%vOX!*wh;~lSh_e4R-N{^ZFYtvrC(ok1 z3|VP$?wyb4JmbB17O>@luYB-T#GFlF&K5FfkFfvpG1e&=UpH%lI)`Q_=kFW&v)X6- zUj?GMlX})HwRhBy{*g~5y|?8=^nf)oQg#MwFj5NwY2 z74*;ExOQSo?4M@+J_{Pr{ZPcYc~^U9w70sIw#$jru|T+}4Ld!#09sqY8lhvOFGi0L z_iij??4z}wP2OWEce)mki>}z7*8A-BEIWQ~k*loy#|HWoJUhs(tfF4aWnpu_nDzyw zs=yP!?R6pUJz`vI7*`47N>u?HzHBRbI`V3P8Y;#mE$^x zxs=a!g_YL*U&>KcuIwJxjdcdrc$Dfsime5AaoV?-Z+i_kVEjWL z{aWBIa2DDz(J{>$GS39Av zFm+0(D_?&#?f>rmLx#qa_@c_)Zn*-SgP*oJ(DU@(am(M^3!Nx7z7Lr9bDovvQ8cN0 zANKS2GP!~^$m@n2)@vqKj$+@>kvG6^HSjJ5o~y}q%*)GbuJds|FK20aZI=x}d+*%s zh1^fZJS$eY4_h!rKNpC$II}2)uUN(ScbGPVUCWpU?b*DO-}c%!_vxYQWJ8Lc-Vt7z z4}Cw#ch`Q^n)SuiJj>#IC&zB}%7@!04uY^vM11tIWdw6+WCZXWr;OMn88L&g4Im?Sm(t&WGNRm; z5r@Cfd;h3p#7^eMl@ZP4m%xLjjbBr4WCZZ_$OvHUFC!!$Bqu~`9vNX^%omK35wsy0 zVdR741bB4i#9%VQXK62!=*!56O_KL_oo8f(flu;5d&wjtHUg{oRB}S=>}!zsk`vaGO|K;awW1N3%;B1QTLOxcvpJ}Zl^8fjZ|X8EaAPS zyx;#_$(aUtXDNDN8S#PwpWUW(cmnydp7)lqpQ}Tk>@^VoCHNbiU19i7XJ~unN1SK1 z{8`zor^26F!|wCkfnBtxxJ9pAWSqzxb1o2f+e$8~Z|@j)F~%hFriJ>t2$8LP4#$X)@bBCo> zb6#ZM>Db_k>w;Gw@>6u?o&_(NMGm^jf$*b`Qv99@tzpNd*P>U0=q}D6*sa*vTIXFi zrc}dwIn2Wh7g(J7X({ z9%LVMAulD1^{IPV@G%#i1-&7YpY$;g5v6n`M)97V`clW&566Qkr zm9xy;`moD1hKyL$z;4CLXvdw`YIrpP9!HBe$Tbk{*>hp<_cQgj6mY+%)wN6Yc()K3 zymd5Q?{C?|(lx(w#?=f?EazX(_?XwvdVDJf8K3AxXXT4d^eJ6dVrZ804A{e|v5P-P zpIR~S_~9RS{56cf_BhAC(iwk~XZ*(ZaAb|_^PbPaU)%DIDz zHKjIM>8s8ti7p!(=1!;KoNGKHdKEO*_89tP#f2fAztjM};#<*053^39vtM?HA}L}r zH@thOe&{;0QJ>>@2`Mt^+JmX37l{wqa;F1{Frq8`!FInKmt6J(8f{#VqabKoWn>js8`=X{;M@F9{d46)_2HH<7tZgJd z))=26eI#8(oD80Qmh)mt@zK#e_WQ{EGkAZ`62?d_Ue6debD!kHr`cotBV&ApF*YL? z7na@Fjo&o)n!aO9J@G;P=%Dpva^pf`hKpF^V6A#2Yt@WJ>syIu_H6=wc#! zP2-cvIjW-Vbv#F}x$w{R!av!8AAOUoLM~YTW{o4kzKD_!Yd0jRfz62Yv2l zU%M7NQg~vVNoc{HgDIb64pytbzH@LuXa27a_sl`F=#G7ugV5c<(qUhM?rz!s+jj=1 zyH)uP-3`*tV(l+^V05I2xc}qFXy^XiW4B{?YZm89!dnf;XeXIvO)n;&Q+C4`czXx) zz8}42c!Pai;yIPcZrig6`r(;=w_ST-i2UB^oM&L)<4rzKyL{a{!l9*B_H^;7eAL;# z?CH0Eowli0O5RT?GNhDxrPM1|zB&2AYTNZ8^_k>cA9oJ_>$LuS1aHEl#)1}1+>7zir;_y=;XN>u}5B$xC9pci}#nhLsb>F$C z-#c&Oe^%r>bnMU~clBxfeJ$U$ z$k1+}>ul(=7~5>sY|c324C>6hjJm8FmK=H>ScyUG&Mq9&6N69;st}v|`Ssj6e6G#c zd%nRPPTU=uoPhsWWTh1cO5j7aAj1?xnur`#-~Ic&#_)x&>-M7K@Ari*#M+KzO*j3+ zYmzJCu@d@MpGkax*2{q5`riJ z11~!f7KM$UF*EYosnAzFIK!?_;sX{T%d0*ttE>93`&E)*|TD$D;@h^{>frwJ$P}>$dT=A#d4q(?IUZw3|(_QI*Wc>`5{}n9Nja7IN=K! z{<;qI^$y07a|(A@ICsM5R9deNS+?B1(}Zy<=7TJH`x5kjJNpQBpx-C4?=x$c?pv|( zkxf1A$yh#rR(cndSy=jpzhP}aCG_nDVO+aLZs_YsbYW}S#0?Y7eG@6E+n>e9s2M@#jU1C)_^zdnej;u6|*LW&xO9*?fPiC6F3NN zBrE;m8GgS&o{aF8EVgkcd3639j_M`>Y-RV;MBG92zPIN2_w# z_l-X@acFik`R(Z}+n?F(@@#IOy`b0avpYYPgDv& z=0Wz~#jMP_687M6Z*2M^erE@>>$ne|ed=f(dC_pCa_%{! z?NTd0^2Sj3$i&{*|7V`-?6Y9(1oK^XXE2s)zRM2@#ZwH41 z@%Kgj_n3|L$~|Jld!d1AE9=gh-keEt*K>wuO9<#TxH zv*7bLPClB?ljwB$Byr@z@$mT-+`-d_&#RaV$qVGi9?mz`9Tnom3!q<@cgL9THlG*t zl=t%aU-EkSe5849^Z5w#-R5)ggKbyA|K__L3(DoY+E)y6nDeRUvQy1kVlMQTFL^gA zR&gV3WQBXy{0?y^h2{C@##3H0@su-q*Y+k@jh60psL6@Ec?z(Ow9*Z-kI_XX`0s^_ z&NT5v%jAAch`gpcrxUw0zt2RzLhlo7Iybg7XUIv%i5}z|*P`EBMnbP%-Nx@>hR!%| z@^sc(um@IgZlK=LexNIPM{!5xBd&GqN6F!U^N!-mJ+Y*Kv$mScnSbD6l<<&S)A$^; z>luE}d04ljE4=sD3YSAmy6f-Zul-Bi^|$e7+gnatD+|9n*E#~8&0fAt8_$%5DGQre zq55(0JFj2+vuW>V{GCDj$7=WB4QBp&+TAw@{GHesUikexD@Ng)Y^z!^`$)y;#iK67 zPK^(@j%Zxru>GvEY4(ww_uF)%x{JGKA1NjNZQfhQ_Zd~ARNuVAepBmE_|D{T;-P#m zv`X%@EMLsBmj2uezwgq;#K0;>dCQyVm6fqMsb_>&3rt ztvOJC28I`a3A``)2jRHdfg|a_;o|RO`=2n!^grt#?Em6H`kyq|{9R_#-+FA4qv-FI z*+)iyN_c$3t{SDan1Sf5$bs?C;K;=fd0&0zr-whTv+1h?`ZDuWJ=?7D^l7(0-xSO_ z^0x+?Z$2$O{r!5Ium3a{J(>9Z=X>OF54=|#gP)(7edJ{aE{$dJVGlpw^y&E7;G~%S z=!5X|i_SP+>qn1+%A@OTe7CyzrtLv_S}?mj%~<;I^prVABLCnV{D%X3e|hxwYWqBf z<=ijuQT{1CbFg!mVz9#^iQ$St5Pz1>i%+Lmx$LeM?6X?@Q0+}CzS(;FcgO_!5=GoA zKURCCt+OJlmsK4~VXKpqzU{$^g2??hR6c#%Fz$rKA8RYXX2f6X=?DG(B6}E81hR!etcJJDx41>O~Z(Rq<2#E z{F&*I+LLNt(|Guf81`OL^x z?3{1+t+P!qIPGjJ-I7IowR(Hy;B_{YZW?FWxqR?C+e&xZ@GKa-&hFA-_V{KGUgu!x zU$afz_=3UfY%8r{Z3LLlJyx9;ryBfB_S9jXwuzP=faY{Y5A?LVqPSJuBWq4^9HW7sdU)c2A`@E7`V>1 z(x=Cp{#57hlLqPQPq_vUs`K^$b%?`nE3G(@I=60DoeobO;i3XuYylT3o(UIKGd;N2 z$v7x42N&-68XUUy3pbN{aI>j&nN4SIz5k{k58c}IHrdea!P0Z5M#^aCw}aQ&Ryx-n z`)`g_XDs(ZF&~c)UT1gdyCFkMvBB#cEd6PwsnalcolVNY6Cd4ktU5R3!MnF^-#B=k z-KE>I4S(NutUAL^Gj(nmqz-esyYv@<$X0Opy}|2jE8TXonfDcg)G_jA*12Xb7JKS= zd8CCo6J0DR^U#Hb%%%L#xAxM-u1s5=-7LRJF(;4AZ9#Xh*?DecE$4}~a?Xro?gYu) zoihfKxi+mJb1wj<7S5VM=7xG?E`D_JpDb7A8eU!l{Te==?}0IF>xFF|7!x@*j0*)L zap`_A9$Yi}bNyjF*lvB{m@tkQ2*&xq_$A-KFwXJ7INFABoeN`4D3TyYS$g42!8qqA z7&ooi;xt}-=kyzu^;Gecj=~)hQ^;eR-Naj8NPgG@H(4HZy0KL zZu=m0jQsn?RKqLLLF%lMjQqx#kut`$Wso|wv#Io~6CzdcT>T(*XlHlnsi#J&Xy-?R z)G_T;6dS%=d#pN#Mw-5EK31Kv^aVWE4N|96@a&dMx@G&f2dM)*+e$at`l0ezb#~fy zE+3?h>FeTRGhYh^uXC_;(KI7(W)D&acn+5C8yiXGhqqraNFCGHrc=$h&K;!AD$Uos zvNdkrK6#Kjv~#d@r!D)(3|?nbDX}5R{?i7jLtnc~w~R9LK5URW2Ik#U4SupbbtG$L z18ax9fAHI_9J z&f{jCB+%7B496nZr%<_0oX1tj?*QknaQ}AW9xJe-0iQ-^v@3V;t9#!wXHIEdu8%L7 z1^*MD6FfHpj~ko&KmGhC?a%I?-$WcO{XoM<^TRb4Hl-h~k=q;boc!w!eB{6O1l=FC7Pb70ieF%Ey=K59hZ& z12}U$aQ>y={QaZwo&OoYm$p%V<3L4g$4qn!#9rSk6if`KK-5>4vpuJI~IOd1wT~zIgk2c%J_53nxN0XrIhhk zWo4RrMJiiF8GmZa%gg1RAJ5CTdB*gLhh}@|)$ns~JZGTs7>)Y@g#t$oO>94hx|$omn>m$v;hXBk^QjJ=M}TMk*7Cat&+%~RHvU{Z z|GLA2=dgokK6~&y3_SDqN%8!~zxB$DSE1t``u!C6jXC%&6K?asEq^X<*~d^{@d)jR%JQ{Jq?)-+9K*IQ!c#yNH3i{f{19F{*^$E*-jd%UIy( z;d^p;4d1hWqJqD*{C4RP`aDw0pX?y<{V860oLXb^J)b@Fcy3MOV*X?Y#IXbV=>B8y z{Z!AGf9s*g9Ol$(AAM`{M~=PMvp&~jXBBwbIOvhh$Fe6}ybLNo*niSP-`Pjg_dfy8 zC#CQAR`&8@TzgUez_IM@RbBtMUvTy@;EVQK-*e%UE$jL#f=~Rc zy*V!bxPHsmflqdU)>336kUMt1AHSuDziMokUA*fbQPWt+UopSs%Mc$TC)C~p`*A+a zN8jz`?f&ac@;`I>>DPhm!%AeHE59XoH6H0KdV2KYR5BuBSF20T> z4~H;@GIB37Zm2pmj=xMt=j*Il|8~1M6$$j?w#HVC%4q*o85N2>TQbxKZ zRTye5%Sg8sjS00+7!&H4JSNmRWlU)Av@xNs>0?6sW{wH%FCG(mw`yeMKFb<*|LF(BQ#cc#yPER{s{QW)yaL@`lZuWBDail=}V)nr7Pnsv86zn^2>{T?`am+#)X7dv$gotB+!=Vo*6 zZK94nR~tDC@-APxWourjm2(=~QhA~F_PkI>S6-;|KwfC?J9(k54>%k5a9(JCcV0*_ zqJ!5WH`cKqtB!LaIg2)R7kjj}-og9qk4jz4`xo>6#k_wp?_bRO7xVtbynk`%MtJ*t zoFDH$+4C;FEGO^xc+H0_=C5;r`D>q_!To9j^L+m~yzn!f!{R=3xZzlHIAIW; zCa-oNo_@+{tB0p2I6O`L!FalTjz8To-=A)KeFSpnXr5l|w5j=g~jhJQKxwBzBD^af|1U4PrQXL|Kj@MZ1{4p>iWt${5DI@FTc$$jRGp;ta-B=ws}xt|GoS zSQ*WQdAdhJcN4DJP-+G0P6qzX+_6+RP&;O?rmw3A{&3q_&Hl#+XoopA?aZQ`RkWjh z2eRE{2bgngh-b4m&gio(tQE0`F;v$2o;gFTAjA5Vh5bV8+T?;LX7+(pi5LD=*S6O(W0x{_%AaWAJ=?aiaUEPXc82z`r&y0H z#z6X0&O+cuD+R9Ei!Aes-|Cz4byliFnrN$7BY3L76> zC&@$7Jg|Q@E!#`=xB9K=-Q9txyN_+QpEE5uN4C`Zr$`c-h-2%FX6?_)n8+G&_4Z^+ zb3>jo?cVpRL*P%iv)inOpVam>S=QaQ%y9U}tPN$x9tTfaXBJFbJUG+3kej#tw`*)3 zBcIru)wI2ze8|Dp^Wsmq^MNC+5e31U?zY~+9+*p@`zFr2x!>|NE6!Q;;pz=Lp?l5q zr2CjJ_E$dwP75sm%8Q_{g7wzQgrV`9w{s86w!$Zhp&ARn& z?P1!5tSPJ+7y0L3yk9RIKBap+!Cj$sMkL|jj(cf#TQ5$F6lyKpgS(3j?!cQvd##L9 zZ9FtU8#TiJ9g`ys{o0t>uMOqss*N8H)<*p3HqPwVhW6asFa=|Cn4_KaS<4s-=bjwV zoxv`RuXpC@Udp7WZTreTuXxgE*;jqfD^9!vEgi7Z!&>Hrc60uy@6uI`#TnKY3Yh~} z4(Y7xWEJP$hy9WFih_Og>bt-qyX)Y?*l~}9)9*Y6EkBO@c#1s<&ya_=Bb;t;B5&yh z&iiWSyo*;jd+2q}9{OWAz5mT{`mNOL(1E6s##1g{)%ZTS@$tYg==MZtad_+t+%Y0L z4xCJ0)6_E}OUO}at)k5Zv%c>`mDW0OfV2LjuS{-Zz&fu`cz$k_IrlG~FB&V3{Cddy z^{Qj;so@;RgD+efedo=uL_bI^hz`HpijJ)CMTgDuN9AuASq7Z{sd-v~43Mnb8i;H; ziMFg^k?V`d!&nhczsGa`PAgJGe^vDN_P=xX31tJyof93ogPzkICO@#!x_@UEG6)IuxWvJ~FuyuUNycbzx6mit~fSH;}v z)WjaB9kfxzC+BK$cXHo*EnDZ~$Cg_LmedtidKR*zpW zNml9Zv}&W@w+asIGp%L1^w>j(wAp;}(RBEuheU@Nv8RzK5A)~Jg6!wRD{LA7&>s7_ z6P@c_&+uah6=5r5)2yh$mec+#{CW0ah0~V>ow;1?S?h4-vc+jT!CZEF+Mk4N*uVYq z=d6`GX*=+zd900F)63_w_mki3%{;dd+5czyGxm$8A7lSJeR$iy-K;N<>ZK3hFW+R_ z`Q>+T#whJpLYtQdth+}+lj9k~8GNda4_mJ?i@jw}{k(R7=c0eTcjf?NNjNyG_u%Yha5fM>-j3Wn3V&-DAF!9-+&jL} zjPD%!e2aUQ&Jt|cSEHHRa_VaREy3P_{$m&;7zY^tB*uTb+K^4g_zMRZpTW;T`?=2O z?ccV+&%4g^{9BKDZu}qZXFyi;pKBLC3q1Id?K2R5mV*Z`etb)?Yv?x)+{Mg~)(9(+ z^Mdacd>+~7qUl1X?01xjwtdiz-mB$3=>^qq;#q&#M2C|cxU}cNg~|0Vma~7?dv>b$ zJ5h|@E|VNUSEBD)v9sFHo9&lb=G?VT^xxhp_V1!c_hC2eM}NPyIuJV0#W~dr&H~avz~j;t@@bbWTQXzwKHtg;+EK2S>dIG5Kp!8T-d(>1xsil6l#3$YU+X8D z2j!S~$0)l`{98)f(nr4o&q@B4EL%Kd^Si#4CER7HXPOV$e)^oD94_Sa`Fx&dz6WFT z&1WDsk541FbD76{<`W&PIKSprIB8>U+nH zn2mq2+TNekiJj-&pA^3dIIDqkHE^y2&N|@S2%L8TXFYJ<2b`OMb1QH@44jVu=VPMr zVCcXKU*o~8Wua{u+!vnd$csHSjq#>H>ljBJI%etRA{{`uGcd46}T7@p|?Q`>kes zUO&73IIq;9d#6q2EWw;9=96O1T9~s|=B%v@T+IPj^TE{uaJ3LzT?VeM09WOjQ{+Lj zJ*PREQ|3(jM3T%|iaFE1EX91<%D}}Oa4{cTEC3e^!Nq0Z;tFt4t~o8Eop9qF%&9B8 z^y$j4I}19lrtIsbaiIm^`bvo>4HDygaX)E zDR7}Up<;|nD3hI>Vq6(K%RoODAe%Fg^PBNsN8`V4Mh}JIb;HZjb;zJE@csk%cp21{ z%@`yup;*oyPeBvr(%Y(?4U4_`O#;*3qww^$Y?2q^u#5Nb( zvCZByB#3Ql{c|y~P5WF@WHb35I_sn4@7+&G&rBO`-R;BYOwvXPaOhmSb10Kt;Fc*4 zr198vmuautP+#LsH2dsv-eax&B{FUEL~G^C$Q3j0bhr5(|D3hx&$O}mTx=-5Z>DaT z&o?M*x!!8rj1DyKfTNlZc!%FRX@jy6!dLu#%8*for*alMce_e|D*mv9`)_w~--3yy zEJc^BV2}OD#6i9{Ig%_2^u(ZQvDebSJXEhUvyGku_A>nO6f`VfPIIT2p8TEW;quLg zVSd`aUE(svh>S=;w~2cC*l4BSX`ggKFt|Xs0N= zs&ULL#tg5>w!YuM$o;lX4592~;scj*W*{=IW#p~fTaa_{>-ozE7sLm)XPWrHZp9D+ zx})Zq1>ARXN%ZYkz7oynF2@ru_C<%z@JF-3cf5+RDkgvrPE3IPGs7bPrn@Yv!s$5j zaX&cPkBr=pj68u{u>+!m--go%Ukaypf8N9@c7KEStp7d4j}73{R{ACdrqfoSUF^ZGQ!EN`C)ZxfA`y_SQ4u z^kcyBif2rlc>f?WYB%H3`x=-0@EGsE1s-<4Ixobyrym5igJqea1Kcb5_b-Igmjr}6 z=58yp5SgDs=C>g8TOUUjK7}l#uZ|ta!X{*4(dh_3%iUp3&bKJljm1GQm1|;uT-$0+qi~5=!zOd5*CWJWtL+ zjw7>onmbCqOstms*E5I%AdBVCOD1VtOW0eLaYNw^@-<|u)L|PK8b-#9ab%2p4((`U zjLy3rNsamK5uOAK^T8D+#P8;kK#F4nvFI}Oa)A5O%chwe0QimBDZtzaO z@*@+|thAr8mRi2%B)a}#^@IGiSQj!r2K`*BGUTshv;33_J>z!+V_9h6LN)`dXmX50 zlP^;D=k%qqX^cK_`UqoG-~QdJSa0#K*e6^}b?_+sX>4a%D=*@6j@kuJS`#a-@vq#X zPu`LJD_N4HFVhD76lI5Bt)6JDyj|^4C(P$`)ycK%NQV^Xg$=Hfdp4W*65#9m9{jHn zY|M3t_r5E*6+Z`V>B4gm{Bo;aP*H{zS@3&^7YQ#_|0dJeTk4 zwl|ux%Ty-a>hy6sWnZPtCmrmRX|3!M%H$8bW%663^IkvI_&Mhbo>|l}`#1RR%Y$xN zuN2fRBX%YUBWUz@(BSQmYS<3=G|7c(2 z3UYTEvTdB{ya(AeUqpr!@|VDFOkzIE}JlG)|Sb@%wG(x8Wc727F+ng}2Lp-s`D*2svf!Klmqr zoXEhAkdO4gPn6w|g-+(K#qOLae)+bld)QZoPO4(QWoszz=jx~5XY}giChl17cz8~9 z?_=}0V{mRXd#n}BJJ%N-auzXr;Q+auQXKxpFGe1KP84%(12(NYXbc;eOS4bXUT@m1 z^`<8q(An7SMwh3^&2e;j_2*TNo?%>1c*pGE*T^;T6Tf}Pec6MOeOthX_#9o*Or4bz zp$p;X3GmShf3yLId`zu{*=GQA7r|s-D9GIHkPQrP@3;qEhgNpr7gx{+e)I}U<*weE z;tOpAroEA zt;2J_LUWLqMinuQIQ=n}>50kcv*|{+?zVLP19*7Rk8Z^WlJ6sU#Me97qh~Qcnp69{ zY=7*nA=cfB;WwaP@3-~qHuo&~E$G*i7{~pNe%(mU#0mT!P)F0om|h)i_A@Vm-=w3N z%N`wlD{UNM-lUf=ga7PxfXvt|zKf6D^}BnnvUT$pscZ4i_}5K-+dq07|EMXWuYZIM zC7mKWS7+Gzk^KdK<*$W5&gdw>7SnUTqhI~dMmfB87CJ<6%sZfsa%BH6NAZbX5Wkm0 zJ8{nA)Nc!#`7JmshcM<0Q() zP*yZ-c68jSbD|SQ&&3DG#|Ib|ZQpugG+xd8uZCXNVei#p?^Ue{wciy^Peg89WaSY5 z&wvgxW3!RdlTWrbtyq~8*~b~Tb__kpT{>B@cIf-Z*!&vXvl)yZ+o0mh)}rTJnD@;K zm5jBfoAEH_8t^6?A%3T|=p@c&{WbN>yz;)${rIjuy1&>;Pga{(qvu)2D1R56f#>oM zt(E(QJIlAy(&sYY%1bWdlX|tx*LP^Qyu+EJ7V3t0#_tAfgctN|A8>>z!=~8vC2P@t zxUe$k#cPl))c3)6e)ui`4vQ_;_iBja;_E7xrHUMsV)8!8zgbkWZ0pmjCaihw{s$lY zoAkVQuVm%<*7>WPwriZvTlpMpzBE^wv!Y>hn6J6a*KFn~k2xF4oShKWnp|oH^K~ur zbsh7yb#urMUhTsxvaQM;+e+`qw%Wn71bvw{=%>tMTd6DzeE&;zu&wlaCw0ml+bV%= zrLtYzL0sU>fnW>@Hf)iP)bD!e3foxg9hUmv1P@QQ77cgm8`_2TM7x#fIN2})E$Iz}MiDnD*TtFrOORH(A3-QC5k)vlv?k`(|6u z*}T{{9n@QlePh#w6)Pm)N4gOmIYR3lmE4W|hPQ8L?1@}^9pYDv^W_1aH#l+sD9@kc zc_N>D8wWQJP?m7kLBNmk8@4c>T~3*A+q_WaH0wNrYh;MU9R-Cu@rR(3=og8%9O|yW zi}(Ih?T*CublUxq)0XDOwQsSxM?65iN@(A$w}vwJc`e_|e~CO`uJ84ZgR%->l8>SG zYMr_Mcj|AVUZJPG?^0GrS%Yk22bL9--A36i*|kpDRqE@f_(r02Yz$=fqFcOuQs(Wm zgtbx4|K+@Qo!ZA{ciUP>*>}9}x-{v$GoR;I@x0da&TRF+h4EmQmOp^JV_e@<9S@8b zQ0H=QyU1xTObO1^5lqvl_Z8|TJnf%D**x#N4onRWOyhZ8!t-68cM2){5@jVG-08l9 z>68_E%0^Q5MamMny>ujEK~I-{p&Y>BD{Y2+y9U zjauruV}FRUT?4?<;I#L1o;UJ5F}!z<|AVq8`n_ZNbLLiltH!yJdKlq%S0Z=Z{x(qd zV83@Y_CiNC5oa6mGoF`t-noUcdnhaP(C7`6-PNxhLpSJ2gG+J^1jBczcYD8j<~iqa z==oJVujP3n_m&=dsHE&>_2;3bZ%}qUWj@c`UPhVLx{i!+{A%d#JJhL%rp?^;^Q-4m z|0>k?ArJv-rR-!D;1l^LzaYo0g*I!^X{-9_v>J4p))H2EblTPA#z?2FrhUa5M$>+!2M2b%A;YW} zv>G_=e52%Jj$b&D*c!S({^1tv_Z|FBNN#|OE!gRg(&mnH?UEDP1zhfuuq0= z`rhD{Hcp~WXP$@GfvJ|hrB8w3+@$vzV}SM+{f|?YppRYHLF!B6{-aw?ySmfzb@yFo zu3I@@CkQ?@*R7mKrth*>6qkL`eV4X+){C%(vao48un~1$eHAwROZcn>zMQVDtbvZV zGV9t{o5pV-ug%{){>W_`$PKO&ZYuFxb4+2jx!ew?T6qW1=PL64 zXOZi^c8%}V2hm$QmRKuuh}Epk=>2^=@tL*gHS-+3mc#GO$e*3$x^ISeYWNJ~`O?$q zuSbW$7ki-@6Z?Z_!tkJc3(;Et*xy9Oxh-h1{7DY;HIC?CaQ@5Ud0D+bnAcw3ius ze)#+K8CE!?`F;R?nf2H1^R}ROxA1+BiE|XhR{D;TZJS(seIVI(9l1oQ=_)WqgN64NY-xm{a$U)Rk|lxa%F%t8nVMIG4Zn z0I+LKcre_*=-{V}Pt_SL?z-CY8Qgp0uJPV=)XBIt6Z_*?>N7W9{mk=7;x&D zV!=z@XUL~Q)>8Y)rA<}eJt5M9PxeEn-VR4E>HQMMWn#y~U%av7bMh2B&LM6*gumRV zk#C9}vmRQ7j7zb$skLjfZpV7=m%HCnzV{}r=i0I3dBlz{B6d9A#EyrY{vKM zZlzc^9WZtb9UcbG{&H;mPl*u|w@#RKV1J}WXWg?7d{F0f&bMR7<6Jz*Z+7ORnEB8= z=(ju1ZtOV7JdcBiCC?Q*mV6&~4E$Z-w12G!e{cVtdsdwCe}umF&`u3JRsoOwQFj!8 zhqsBrx_tT2Nk{W#7`_~cABlT(r9ATLlk(#T=|A}KG=<+)s-7zICF^AJW>2Y>BvRma@{2 zp$~LeA+Y^G%7mf8*N@Mh}}k8SMyB1hh$J8G*P29GTyn0 za>)sOckM9A0XKK2gBa)@=%S3zChQgM!x~TS4)+FgKX7>ay_weCW!PSE)-)0mEOHdJ zHiV94{q7aP#rj5K0=&!G!L=KR`?5Z(9LE&nLgv}~+SspaO&CC{?C9*w&?`uMLJh@z*xTP^CXplPumZ|=0PTn!4^_H zw3E3XgPl}9f^}oQ7h*#d^L-iL53+ClZ<7DafzHC&$M388OcoJ)#Qsv7#l)od?qlt% zh!{GuuZ(u9op#G;x7um9ly=pJ+Wiad9H5=cX?H)LqHQ+^t=OS&WOZmR&n(YBv))qX zthZdP{ZjqbTgXMy7!&x9yXZsyit+}K+l%5Gp(mcn2HXLB%0b@j#6+{6nBtx20&GQN-+alp z@@m1+LadHH3~XoEI8wjzQ8&k}mCfKxe3C&sDvt-2{#?0o`Yu0rb2jY-cem>FrB=9-v@)s39$Kc2Ha?+-L5 z8hg)pzTxXLAIoUB2pG=zm^KXkJl)GX?O8Uh>mK?!jOD>h>wMV)`pd=#%^`L>1U;Jz z{MEkfu8xzj{e45a%J^)r_8EU^nQusQ2Wy)9xSQ_cBX?|=Bi^tyX#%uuthcu z&z_`Rx6IVV9)}mt8x1^aTk=WmN+uLD-mCSU{!4hj6g}pZ`B~sJ8{a< zs?R|SLF~K~ag}y#1;vTJwN&w;Eak2o(Vm$rKgc4V*^ayDe%BxU1pN(+7QF4136ej0 z=P}+X1Yc@H>&D-PZ*C+0qkI_g(H3}mBRL40x)K~v09+S}HZuZ2R`qvS+gyvGvoZdD3OPSg>@|b6t z%(paBm&{NMO6OWg zpHI`$9rGQPi zO)yUZ^qkRs@QlX1=Wg3Z-!lSviQY+F3+`6*?RU26H?vQ_=>s;eU+?W#YmxL@{DiG{ zzw11ct+EE(ZU(o@dA`?qH+3y=tq7a@$%Su?x5}L}2WG`Zymr@1PTXx5IB{{Kc%tT| zn0XOyQcJD$t8O1l@hKc!w~OAG|5o@;b1z%Pm4}(g!z|=sHu5ls`o+G?u4TxiPS`)cl&XMPJBiElC|v+%>R!Cww|%=YCp7fj-OGv=g&_jJea`HV3G-mvd3 z)VUNt*nZWId*#zup6|)9-j*DfE!V*3-lbOKH=X%(<(C(}HvEY8)##O_;YQ7?;-*6! z+3DteWg$C<&~_%Wv%|>EOyH3%mK8gJye!EM$yB|Mf64b?j6G?FUc@`z{#54!XlZgz zPTfVp+`4((;k$>mf}!y6-et>Xl>7WEzs;DlgH}ZKI#*cejV$9+sh?-dj>fS&hRzlC z81_0c&y{zQnQeibGj~~wjg6{Yyf|$ofce+Jug@g%`eA*?9(HMUBfha|0~;{OoXQq8 zGLP?GzM6-OmmROQEAiDe;9W9De6<g6xx4~mve+~46Z za{FRN=9;*sKXyIv6?oziuYZHN&kCpi<3ne^Sy{l&hdWLFS+H+D++*6$kV~qDwW*N1 zKg_+Fz$1G;{+Q#R5?_?gEheu@GH?Ooe@xHI$;D0iBbHVC2kpn3C%g#OYVvA%cMLSF zxWwV1#F~T9CuPPSc)-aq+5~+IH$S!4zRD@zNk3*^@ym8jcli@`zDqg3q6BUPT zumZ6xKJOFmsrMRVux*B*Sr23{UgHRjiDx>qPr8NuE3}un;v(SG8mZ*lvYW$q75IEz z_hZ|)L#uOH@8GP&6}8A!oiX9sIF$#@ULf$yxhm*{IQn!aIk?u-=SQ@cMLJ*WQ-!Sk zzQ39MBG_yR?5!OOqUJ1* z*S``SeyJ5b;Y;>89$Fh#JU9W*>Ff^Tv%3|aU4IhsS>*FujOUe-+0j=onG=2EYjfG_ zb0T|vPKv(!$KlZf8|n8hc&Z-Wx(}I|S`%vBieI+?nFOzO0COic>t1A(?#JH8@BM*1 zY@Ynsupz{vXgk52ZDP*E&yQURKX_=hhpxW|Z?YzJAA8v^RNX8qt-YQBhkw36nH$fW zL=69<{ND4t!tj^zhl$_SLR-2!l|A%#$4__4ofzg0;?1Jz9f~*eDPLUc#p0(-Vwmie zGx6pqZQSUd3lOmP_IlRz4pxl~MOw&Z*+Ly+RlBvO*T6hzO|R-F?;HLX>`z?rL4E)8 zN#8EB_mkXiVv-|!_V~xqb&B7&l;dl|x8j8s@YDuwWrNzW+RRw%6rF7n?D{=>vQw;Y zw@!hU@Lv)$p$+J&mY6xQJadLhh2^gc+>R{foiThbxQEyQ>%9rul`XNAb6AqoIWvOX z)KtJ~F5^6-7W!Ll1?q?ursKKLGVA|w&h7fzYt9**$j&>!PjY%Vy_2;D?a_+!9a&VT z{Ak6uo3zixvbw7Hgom0l$jy{rqkYe^A?C3jnV81?8``T(e%~(i$`b6ocJ_X^6PIjf z-*$(US+^NIc?om#{IaDp_7F2^pkL{nCFE4=ZWXP`mXYfq`KV7@U)bkUrO5R;wf=*8 z=-~+$R>f&rr?JM1?8xUk@y1P+OD|Nsag$Xu9{(US_6&E1XK>az@15_~mEEE?o@2bq z-G`SNwFjoPd-H1rR&d2Hk(;eE$;YPM)?)jtD12*d>~LB%7U$FBM{HU{zIW{hx}V50 zzC-*nc%L~M3l1u77<u$d2uJ*CvJF~6( zUd!@j)h)eY{0&!SWY(>rEUV_e*IJmD=Q6Atm(Z^*bDel9bSRne?2-@a|IFWu{7HxW z!F&dJmJxfM@2g_tU*Pbw%MbI&ulgvz zFF(i+lOG(gYVOoIZ*ENLVfKc!!)tlq*4^igEmqfwtlYZ*n-dsad(QTuWIJTXTA(@6 z{iD!*75O8Y!#3!@72auwcT(_C5xgLp)tPn~;6?MToXjt*$L^R+PP!vY3b6GpXj8wH zD>4sQ3XmmRR8~VwRr3!mv_NmljYvR0q63|$rM0b~v$nMids^}P0?xzJ`nj2JzKhnq z@15h&;In?~3Hd8}R&Hf>xpXF6sC~t=rMn(r&z|V4{r&gr)u!+vdQ)GC$vSt}dbJZC zS$@OB8x%X#ceU9DoTA%yaM_KVX@Xaw@vgai5;I^;J)=46!*v@vz_Vz{UN2Ce+^@;L zaPg!UZs7oay7MO*H#x`Rmwm#~RC}#gc&vf{3(m6lb19}P{Kdg(fs=ErcPjX;{Sd9- z&a?r3GRZmK1OBz2OJ!j`6~AjG=UBgYQm4SlIc_EASY^U%8@%Sujbg9jb9BS6RQ{Z` z_TD07k9Q19fgM@&tI@36-3I;@3)=zipQXQEyVs5rxOl%Eyld`VIuuRD!C3;ly14HI z_d2&h>tPeEjOI>aP`7`0`-UR!diS>50`0DJaI5*X^+A?>CPkUcs~NF_RkD+VvA3L0 z#XH{QyLh&fPcNTJKb`gUUf%q?%a2X0Z}^9Gz4Tr29>cpGSV0D=D2ZLQ_e+4`68fbn#e29J00l&9jXQ4}i zCa3=acrXkPes!JgPZ%8rk5wvHi?+neLz#oEyju!*}en zS`F{;j&S~8;IsgnMD~T=b)V@S!;93Buks)<3*n}k@!)?fGJDQf2oI7)J|l|+#};sr zFI=p!^||5+1^4(??!%WT_$&KhI8ROTXy-Y6f+yw1VRNS+B39QHvd;D5YidvUq$314D8^Orz|DR*Fsp(p$pzMsW+Klh)=#~Y1}VvmQtR{x5u zWKAo+)WXiO%-M_q*)oiSeSMCM^2c_nU*aR)e%GsC+I$c=c32rJH%LA#Rr{G{UDWU` zzvcHym%A|jf_f(ICpdX7xo7_dR(^{|ku~QF##Z1JO=#`D2j+#mPx(XW=K^T5>8r%> zq5BSWeg|^k`487`Sc>hU_avkA*|zMe8`kIE_8PwU3i)4}Bc1Q?AZ>`Ig7f^1CqYXp z*YAA37qr;>kXtF6Z3XL|r*1pX+UEKj1q)}_#niUyYd@aw?9+R!XVoH?HRr~zVg7em zKBI5MFFC-ZPuH$-<=*`F;2F_1?MyT}=9cZ^lOB4apHBLe-z**w4C0k{@SjD?mE==@ z(mv1W-zT~8$J6H@{x5Uy0v~00=KVi2lVm0Y1R5-~v<(o>w56>GOzkd{L^-Hk?8+9q zyt@g6Lol|~wf_}YZ2|#7vt1bJHe1|xIYhu2TV*}0%-Sv>3Tj&A(CuN{Epy1^zyN}R zFx8s(`@5g#NhSf*cK`4H^Uvp#&olGP^W67!U+4R}uKT{#=V9i*Jht3{#qcq_)rl_7qI(#BuAlf=&hu@9 zZC%?Ca&>eGV|CkaV@+qtdVEvHQ9}HvN>}Vs0()U}0Qhln=js5XPq8nW<5c1| zDGx8XRBf*Mnc-m_x9|e3%vy7<@;#E+`&=733wm|K3Ef<}bONt*jrx~PW+RCsi&jot zd6wE9(+_&^gZruL_H#eeryuDS_0_kZ8<`V5jt;!}{u?*_{g}|h1DF&2fSlhQD<`e2 z%`0lWk$e4_6FubV*LZurb?}@B71y+4fTd(A}0($%vUl97XcNSlkumrulc1#A`X%D-N z!T~bF9vqD&!#rkxk$m|r4lYua^|9tb_*cMGlIOYeCUk8cct~@<0UT+pxp>F}5AJW; zr@Z7GF&2ErIQb)d)@gCzNB2#QU(COD}kG z*ISu&=D;f$bJv=On1B4B;X)H}PR<;vf4H3eax0lf?T1$cw{Mu8|Mm@I9gF0KdtTsI zEuEJ-4P8e~%;5UH${t(`x8)A}iXHWZ-;JLYnwWS`{4B+Mx~OJ#Y=%`-yASw1 zHQrd!nK{8CYC4NPH;etdX0w;qOk(}{k<8NtkyFq6BbmwUsdo)~>P;gjfX#U$wJMl~ zCkx0^#Hl|}t%Gul$}65Qak2i$=m6~fRrp2&qr-ezr_RHUNtkiD@d>|`O%$WwhqB)v zF~Zhj^gUxMa`~p180gS?enVFlhq9_kHua1?yPk15>rBr1de<|iHXvI~R@QIE>8~Yc zV8-cZoa6lHuXXgnGp(DfY}+IDv)Wf(F{{6_lxHcRe%{`LCAA@xmAs}lam5zJi3KX( zq5ag!vFtYcspChTYGOaIVdTD{sh9oEQ+)rozrN6PuG$-Zgrtgl##0I!YLB;5&nurY zlYGjo$Qu>?BWLFhh@86as>msHz`uXq+3O3vmbeu^Xg+DZJtZ>-DuO2uRhYfL41Rri#`nnmtlUXoT&Lk*bG8;Zf8sA3S?z=K^icX7j!t#> z%;5ikov(Ps@K?|NSMqVwE6Cj$++S5&g$#+ut^)T@z++c^X%>6P&n6EwGxF9kf8_Mu z0J*8c$mtpI6+Crj7B%$PvbU;N2hTC~s|{VQ>cw9f^z%t{*D2yFN%q!HvA2FJd+Vot zL$IM&8-7f{cYo{h-GLmwb3VTxF4{|=G5EOs1Mtya63YJA;YaN!ZsVfoe9$=UB*$6A zZ#Qpm(X_J)Vs5w`sqeny9V#_^PXuo>2~G z5&L{w=!l0`UugPHL06Np$>>8v>jTby)t7vC{V(@-WEK9robJ}xC%I!Ug8z`cR57u# z9QvF6(??1__T<|XH*cM05fAWXnoG3LjrN<&H~URKfPG$uf3m}GJrghW1YN#sN8a6i ze*T*ABumSJmBe}yvc3N=#D&{TT)3e2B>49e7gkKmjtdub$A#NWT)3cDT)54|h3zw{ z+Zns~zXLhgAe{{z-P#q-`!MrATh2U2=8`;@;(6&S6A$@-=TpPs6Xa03Pq9QwIRL_d~TeshNJm-LLmhrf1&?h_}EKkTQ1ygeE;!_UGr3beQA83Ga=c>)8yygC%(UpeLaQe z_lxhZI^Q)fmo9PeYV0q%1lTg;!Kr*AdmkNQcgUn_uyX0D-v=NwlG)*0JD{0z%5Bh1 z{^JvjHwmo_?V+9cw*z~qx*FB}DbLWCb}kOIXWfL$;=s;v5WgJKX>d?zXx9(gRYE(P zmkSLq3x}PCc7?roxzo_Duy!Oopc;s3t^tq7<98TV#dRd}0Q{4dL*%A*SpLQt z%rAe4F4z?a1-sT*ceXoq@ruFBAg{c<9Dc5Zp6D{=A0EpK1q(kB%1$7^+;12>GeY^b z!pv&uW$M5dc!C|3o}imgG%=3BoGVg4EPT}&Vp7=b?IUbo!L7;K>i7xUXHlbKY;1Tq_g)Qo4I__o|yv* z8;O_2>^gn>yj0aNrRIBr!pV*76QecS?Z9jDA>`NVN163SckZVKMtm{;i`234PKhTk zQypXu!(5X#k0h>v$HCzm)*dO>U}_RrU+!gYRsPMqaEKg~MQxkLy7M=4f(Nb8Q#;wO zE6!MikGJ4UljFJu{As_|AB+m8Sd-3vV13@J>-Anb=e=_Eb^YLQHFJQ`m%R7wUhn-P z=RE`C#zElu{--|5dsUjZ0+Z?}dcpMAL<7?Rp4rMX8jGGw%`elr4c*Tsi`h%|j%nr` z6)(@?Lr-nv*+cMO$94E+R-iEf4)t#Cvu2*p_&?7(FFLr|_V*UN;fXbm_Nd;uXRo&P zmWl0e4{=@#JTMymkggI;f=Bys^n!h!4f}7|tNQ)mF}Qc0b>Y!?yW#mK;F%6QU+M$T zcO7`P+VEI?;Q71W@SG`scWk(V*z3Q4Fg)GQy6|-JPB%P{0?#eLGta=&v+jPY1CNz& z@bepL33BoC)f{+6iEpNSEX@4jsqfKtRe?24akJy-f&J+GG&I>en>o7XXXpS^mob+$ zO00Dq`H7E)%i*^@FQ0GHb9&DwI`CP~)>A9*(j>_JcIeY#>OTt_J?INP1K(~er=1Gg z(HQ?VcYHr$eD#cPO`q}YamKgL9^a!m<75$357kA_?SBFS{$ft?liXNP1^v6b5e~h~19b13s9p>NN??8jyuI{+{l6P#~ zp?AI@oaXWd{awNvz>&)vpBHcNTsLpdvVAeTc)4q1v zv1tKg(|Tmmvgf{b-p`6&poTy^)5e@mv0jtkhfh3tmdXDWVz+kHOxUxdf1q(EcI!Z% zH7$RT16P01`45BZ8W%2h??jjOz}4S|YkQS#YmWez3zL~+F+SxbJ?tq-9mf&R8NoGj z&({7{V*zm4bE=+N3i)~e49@MCSs?l#pY2+pK=gY#_Z!Up&{OxAYe94a*KhM*l2ZeG z^egs!`(<(oR?eRrf9hnv%G~oltDLDa z7|ZPXLazqhd(tsHi(Z%-E~TCL6`sMq9xnf9+ZO-g3eV8a zM(qzTf8(|Hd*&JYnU}8o%f|>o`*fk=42<$y|!>Z+z`SlkzW@@KtTjctVVa=UaIe-eAAm zvEgkc_ITE5Jj79Qc^|kBuL)VE(H!_QdoFN%#3rsZr)cd^(vS5m*v1X!iMpAV6=6G9RtuD=f7^b&@_NCy7K%AdiA}5J@KJZ z@Tl|TMx%$Niz|tnjKnAL4GP7^@_*d&nYuKi&zVPl@8Egk=g7X;eL1llKX@pz=T$$Z z&+fWP`j%QT@wx^lUP_(sInE~e-@ls?+2XaribbZHc^BSj6+Rz9=QlC;ffue4j-kK! zOzZE@RrfxJeK&lj_mkW=^kE;JU!6bSBp+%u<7r@Q_Wfz$1T;VG1JB61@Eqrzhu=OA z-pOIU*Y&LFqnbWaz2l`#P9L;m^h%Q7_c?uRr;p}7ef(!`A3S>xeaJ`KK_9|fe_+#` zJ>A4yWo6aH1pJ?b)+uzJ_*Ahd?Dcmw58a9mOh2Of7AtcHbEG)G8@xBzu~id81n;@E zt?vAGK`tEz(ta`R55*4BuGZ=1sC$P#c70tTwcGCv{76rI-M!G`Zks-eC8{<-F}8f{ z2tswDSStDtyCE4EP2w9NoN zKI<9T%6(QShRnxgyS9J}_Ru4iX0`06LDOd<6o6ABAkBK-?nM&>hb_aImJrC!CU;OQF+`?X9M z+^=O~EEL4&pEB`lp?hxpy?^Q`o*i9yDSTx)@WtVgTs#Wac5Gw^{G;65p%+2J)f)ScR8Mwu6lBAj^4=O*RL@y zSAU7_ea}PApN^mQC2D>{J^bU=c}j1cy)WCOwFx_UW*5(P_^gQ~tTEh<9`Y3iT2lRe zEsNoeYIunG!NlWMUS<(7%NOCJ>Opxei{Ya-;9m-@mcdK#)YK$noL?O|rk8>VuBYw%1`M(KX7;9&%y>(`AUi7&6taWh((ckd7o7Qe_4H{2%X zH}d=6^Lt^8Gk zTs?Pwq19^ANHrm@x->pMJ zu@pYhe_yE|YSymQPX+UrzomWIqz?R4bj6fc&?U=rbV)n9q#fDq>Z40a=JeJjB?~Xr zCA0J%x?~?Z?a=s8j6DOUTv->4>(&Kcp105iq5f8j2fy_Z)`~4kEeLKGT$@7Fh9vh? zTi!k>)&5A zF@Wje+fEPzpsnr100eV)T)R&U;B9jF9o3H{?2jI&OeHDxwJVUTmupJ* zyfDby7(xe>p#$QK8+_P$z!^vGm~3CTAlf|tLeqBsZCmM&Zt4D95dG)w&;IE5yFV91 zzsKipy(k?roSK6YeEw1^mL3Y<;}^QQ-^`bD^vQ5|uO!5CA)dod;ls6K7e4FAl;GR%oTRKEXXsX(2t=V718m965);=iE(gDA-b|ea) zPdNdv;O|WBaBOE_q;(|l$>!bl{h&rl}3yVZCCk3w_dhFSxD4j-nepwjE_%WL`M)JABgloL7p?RQzm5 zAirfz|NIsU+e)r->MF*yhH=SemLn(m$ccVmiw>Z^E2jGPwS#CIKHS0B)*=UKU|u`K ziaiEh^m(VQ&hPcK^#E;ZUDs;(e?NFvtZO^^yLA?DKWE*eIE2mP*M+xq!sD|(n8*JF z9@jWjGnRfXbdT0a?X^n&Ce0o+#86nf=V@GnuezqnI^rdFLT)?T4*au#{RUu_{J8tr zmeh>CC_mBWg_7u4wT;{uJRC1<6_TEXW+a4DSPml%Bd-m!gr^k_`*X#7hVzinsi z_|?y8&z6^OKXuG}w)aXo-2K@f{VAV&$;d$XwphITsp!~TnQ(kW*5=yvI0x+c<%DU> zFE4YROQPAz4!7!qL!kHhQeUr{7|E-dhjL%OnURrd=wAhIltKe&72gtKuCJUdGNRf% z^i&dmEmh6A3D7l(&$bvEtF}5cSh0^HbfPz!?I6B{ev==aE>RmL(T@wq$fI4C?1|o- zU>*dX>xpw%#9an)-dm~}nXFWMYTJHKxp}P*we^ub2V4q2j)T6QnsIyl{XLCs=&@?x z9tq4d(7Q$W_u9k2{_f4($XS+SdA^`#>7L`{oky`&MsubIu#d}_FVrxGNqZIb&#a$Fyau_GtyZkI6Frk2$DS0PqQ)riWT3zD zAgar52Zx>5sLp9tY(jr)$_)0`@_@fn{GP-<+<k56W=vQ z7EcKe!iQ{%X>%I-5WHp3?;YS*_)4JLgu5Aq*hyq7jb70FXW?-2DO*1ceaWezlUk`8 z+sQgAwW;UTu4L71n|Xq1*KM-}xsj|aCk}%?yY^*ljn0Ep9k*(XPZ-_^M88Jeid}2o zFWSuSC(uu&)Nu<2#cq@Is~E&Ot>HrdDmESMe`s@hfjz!%SQxip(HeGpd`>Qw@l|?Q ze@s2WtWR0b+(-^~!GJ@X?|9t*$akPomo*?$O5ApfXFz7cyX>a}4o7o8!+1J?lXI-2 znMvqMY=Y?3x&>PR&F%QcH1MPRdQr5Qb1U=Eg?VpvO-X~F?eK z<8=dG-dwdS@Q4RGEB{i;+G^>{m(k5h_@W)YC_q<^=Q;VEUvqdu@YFGmIn0;+9_7M4 zcOHOVT^$~?hu0zcdzt=Tp}$w@??i#ki&gNV`qG@*hfkrt9>ag`=0S9RfE=iJQ2i+` zZQJZ3#ubRJ5KWldSFI&9^suA1RXz zgD=4*{Jmme>la;5pLg?rBXF$cDjv9t>rB4CAMX$|+o-sl%{%?Nd1r{tJHbc2)@6C; zF>0_b$2-jqJ!f+j--v$>T2?pjDCg+PW3Jq~GTSMA03M_}q(i#MH+2vPxg0Kc373;U z94=2$1N32Wc`bMw&Hsh^x0}A;;Bo}lxA-1s|A_>1l~40sSFP*(7@tp?--`IHe{_ub zP4%n&q95UN+We+Dwl`Y9_gvd3o4D|%9zXFg@onFm`#cA_uZ&;h&9AMNNlwIh4p0bf|~ zzYDYaQjD=3UZM6ZbAtJ^V$ClR3+w8#BC_>nAJ|QTB|o}=m~3lPS){e8fd85N=SS4` zblTo_8N3xbc*8%!rssu)voGY}OmQL?XEPjpo#ywx_>!!@&<9_$87l$YAxXw?1NbU; z@Fm|(wtOk^&*QXdyDFyfpI^las;*tucEee4M%sdmrF`0nRjjx7K;fKh*jOlf$CV1b(M{bNgBO zAin6o|F+wY#3%nk_}lDhlc4`pEpoaSKCZT57jDXBL$L)9sm^ufqKjMb6<RQIEVK=doGr4|MPo-#*q}njh}KC+%QAx5wb!G@s==rfbIT(O!M}U3=Cr$LXab zG!|DU5agbhs}nl$L0tV&NWA?7F(bv?i-@_`GM_tmU)r3l0d}hLgpDe(1mGqqV$!YakO6tFYv6(7skJ-lpf5_ z^uq@u_MA=A#>?o!^p+f5c!2lt4Tg~mFuHJPzewxQ8~HCZx=?M${j($Sbyr7>Zt>-t zdSq9R+=#!?TH&?zh|hajJtEz6^R4bYF)upDe75&=naO9PQ_v*|bcyC%ikVBNY?;G5 z=#m7w#P|lK+C~|GdWa$g-b! zat(7XH;!!2cYET;A2aa#qC;KS{lH!X?C3?!Yg-wM;9nv5{lH%Y{OCqEUnkyo^B>Ev z5D(Y7CBbXr$G}?+T-|YS?wi;#@UG#$;>OHhs5Q2Enw+wUA18Y;2{sesg+(6d7a{xJJge~ldnPdc?2G8M7x91XoQ^NUZ}Up;yYJWo)D&nRDLr!lTVdNh zU$1<2GcY{L?pxO$McrB}YhS^pq^Z8NwMKmU`# zoqRZ7^dHSVe{@qW9&>Uer)E2R;N(c2b?ATgfF0jkZuTSUsXsPx1bnz$yqTPxnV0&Z zrDUfdI$3x_#{1%J^)S|Ag11BPM?2#?xN`BurQpqtk&hxqKOVfj%$y2eE4v9!h0593=GIK&z=BRm5K>sS7wv<96vbFB0Zcz52Jsl^hXchp;+@3 z^st*xtLqa3ue(ePd=7f}724FizaE~>g;6z1CzuDckHcQ02V3zA6T~748Bb9mu}$FU z$PY}_d^E!Rbv*OY{%bu)wk+X{5BMtix)mgLk%F9 z@)hFYeb)yj8sWhvaK6b>Ts|hgxwQkI5gsCTi0>8%-<>|+M7+u10H5I6)=hQ|Q|m0Q z;74;B<2Q2uN7Q=c5!X!doBZ27d~a0pU>$9( zGCpwcdEc+VfqY=s|4mkV!`@Tpo8$-W=N<8Q{>qW~yXXP#r{~fi^%`c61nf*3ZSSMs z7trI%yCocdbCi7E1;mJR{N2_RelE{D`JBU7%IB8dOk<$4o~5}P56A8OQ2VHA3QoTOpYi^jwpMawJY`HIn$HS zvGU2#x5CQ+;RSuNbLGN|lF?t$j$$<192}^<6na2yN|&^uAGCI+wi_R|ow*V|MqU9Q zee=y{eRh4*gVYGUH*iRIeoXT~%^&wEW=~$|`>pU$Ej)$XjB?~g^F6zE(Hs5b<62YO zyYA_#Ua~?il=oGWHua=psMe5opJcwt_qX}3+S2{RzceqbpndtTBZ;#ns298*{-lO5 zTMka;+tv@pHq=iJe+!rtoA7A=-B2LRRk7&ZI`{1bbVG8P>iEDp_@lNXD?i*TeZc)^ zsk!im_{?ul@p;5YRL58vuB1)VUVTBY_Et;RKp*KC!EV~&do%B%uVZ=Sjau=sxn^5S zxKi&dSlrs&B=qxA^Lzk)^pb~2@%_8JD|*C%VFLKG`P_*+ID9VNeqv@1Z*RH`Kg&+! z`imRk{llD}9l}>C8%P|4?-j_xU;0DY>wU;Ddk))n!uH42$NxhgCuw`ISM_V`vFsh3 z@xW{6O0Dn^uVrePT=`*r6a9Uxn^%&v&>i>-_3TP#Ff ztVQlca}N0>s=poj_Ipjz4Q~8mQ=j)_XQZd4Lz1+UqP>2+BONB6C5gQee@c(qJ_T_} z^ps>s^9Jc#>0a#DVV22&|Gen!7m+`{NWUva#5%5LmG@CUvZp2o#BYj)EJXjs@yDbm zd>K0FQY7)(dw2gm`^S_4#Uhh}z;e*&Cxz;G;FX zt6F~PQ@0JlUcny9%1bcDnDOtB9mC5Njy}956hr32jG6Ym6U(Sm-@b|1J?*P4_UFU* z2Y>W+@(uKl>=ZmHycGk7?6rPZoI{`6CM$1TkXgmJwlF@8U4EPWnYkk4U;1v>wPpiL z+Yj6A)?dqKtw;YV)|%wAaQ(lic~ae~S%(4tB!N-y+y1!Ci!NJ{TcB;JsdaKpVG<50D+h2lOrblPe?I zm#RDN4Zi;cSUtb@Ukayq3|eewBi2Gp=r0R9%uo>r=rvQ&|zziF2Y^z-tS}r zK4~sJ7EHDdFPa<5>bj)DzAn9q*Z};Zdo}3F+1S!|`oFw+`If*VBZ;pm2U(5ZGlOdf z`de#1WJ{%^cd*X5ooA(o&iV5#T939Go+zUCOgDF6~FCTyq?} zb>Sa<9lm{mm@YL;N8aI?nl0W(3Qc~kFmr(4bZ&7Wx?6h13%upfNH$vY@m%`Zar46H zE_g`uk$>b`^LNmR&)fN|T--*k)!cLWTsTc#Z}YZf!L?Tr`h9O;Nw>X{ecTNXZ^f6f zfWhw9wuPm~&i88Xb*DYm@*3M%ZQI6?Ikxe%LpQg-zV(di?@WR9Y*oJXj1S(*qfhy^ z@aMcS)LJd6S+Zv->o=%Rj!~N&tK_$GVpnDSwvd?GBI>Xz_^q7Zs7>gOQ^`&&LNCb{ zNMG%>Jhk?BJBDS)v$P*GF=xwHn;@2TX$(tyEagS71(&uQBlgVZJ9+ikjcy%V zgH3aL|E0X>In~h^S{No-2Rb8JEUu_>1w1 zzck*}&?jWZ3tur_@s-O@E*}}4(T9H)=ZtG1p9fuGT>su@T*`Okj%$C;xcZ()ApTKY zJJ;VYMW0BQjz+iS^DqB+8)L{_uQXEMsV5rC|8aD|Hshz+`Gcjg4_?3YogA38U!7#y zmFMN;UUK)F@qGdvXJXLA#o>cG?1IjsS^928xt6`YJUKX9^md6R}WnRwU6^XjlHPOd!VHn`=Ya*54>Bpse`NL=0D}x z?c7%!y3>5lZ!Cw7<<$7q6K7mqvwhDD^rv{$(9h@06@W4KyPH!ybF*xZ{0o2d6ra2G zVNP6nmW!9-`dD&keT@3wZk^}iXM(}c@NRu4U&`2D`c*Dg{`%-4%yqD#@@cT)yO&&7 zX0A(T*wOdzKHh84Q#qflo{P`PAKm7? z_?&l8=;87a`!~<9JZH-}+eNwMMHYEeY&f_KTklSuCObjwj&_+Rf>*_8E5U1h-kSfC z|6|)p8)si%DO*hae=c5t!Oh=DS6MD@a^_o?!%t@)|HiCK#Wv^S$=%P@tP=xgX8z;S zjrpV2NQ?o8!k_S{d5wHy=$-i?yarA;Iyl|v;B=#K8sRtLllWIGDSWP6w6ZTg|IWpy z_u@3+GvT}V9J2LrwS&)U@Yy$kJgwZfd_~Qd*UvxRV7Tf;%&3$mI z7^7+(bN!pM4f*zYQGcoRoc>Itt_;s#V1C$z&;1TH)5ymmbloz}T4}%4AB-P|=iAAJ zq~K3*(SEE9ooTOYO5cTUm`^Uenl_#z=TqXz3YHYSI9h85tZTz_eoM_~JNP@UXXxiH z`l+V9`S@JJ%Xp_On@HJv1bBx88kN(yftcE?VWw7kqiUts5+lp+y!V)|X3RzT0KcK0 zB@G;^2~QvM#BzDsm1q3bA!)|b#@IR-Tc;nHWImGQUwf@;{j=gr>3h*}&lCF_sJMlF z4rj-IlYhCFaWmhkL(Xg95$P$#`E;djhKj)&1*~#ECVjtZf8$z;F3?TKGXCW=eyh2Z=JsMZkoO{ z9a{Yu@S#>PBj+ zrk9+uZ>mCwIymT0LnwBvWfPr%sO0$%3=$4%h10v?*dXXMR3qd_*bAo?ZZ{L1Ym zwg~rSS@oHuKRYf(90Pc+(KGzk+UvKx=x45Qf1Gj$bHT%{(lwmF-T=ONS8b?m#mpZ< zm%Q*L>S@_~p=-Bg&VlJVY2CRGezE&5h+eIB8tiuTp1}p}%)nQ9mFE_*2h$dx!HLwp(*Ln~3hw^X^LVhUwnE{#~2Quo@jwhgBXYgJ{ zDElwq@$}u~3gGwk>~kLHeu;HersG=9i?ghjGroZ>gWlcv&;e^u<3W$rBH4cp+5bk( zH>RIP_D?(l{`Z2{CV1dDbVd)HPKC0sG4DQO^uSfxw{TutrImeS1+;nE%AP?VoZ5u1 zwSlvA8_D6W6TPlN=lAG@>*2F*o$z!h>*A-a61~9KJ2o)(z2M*xaSP%7_l=GlU$OmJJtsOJ@)Pmn;rvC zqKonr(l_Iv&sOZV@da$ZYGVz47QSO9QcAto@~Y|Sx!N;KHkp{LdC$`=;}-Zx&n*iQ z;|l8cUrKiw8`wk3Nzk$m`590BK)dB@VO?8G4QE3fB%Y#u7txW=JO=Gv=B&Gp9KGEE zy*$vX!_nJGc$R!1`-#HOPeLc?l}nrd{!I^U$o=sQG^vFq;5`ApC(ws?NMYj*=;>MD zd$xmb<)7Dq?{VO}pk|ztgD!~P3C`Q-Tlkf(PN9#|Ly-e?)Q7b-f;sg#@XiNr;APEG zFB`Kv2jRF&Ww265@CD%Rju7Vmz&krxzUcSAc`D3XYe7 z?T>+D*!#dCKG$CGwm)c}v86b7u07G1o>!d{*O>%+sD315f1R1E!IcG`MI(x5>xR8cE5@aqzkt zpV5s^$9LJXV%PU*A6k2#d)Lnyn8SmL1xsGE4${OhcR_<|)IK~+zq^L8mp$^6M1DFP z`KdvE*27N+;l-^rW1ad7`N~#wD>V?3p@SCdjo?Y;?xi!e_C`8Vx-tcQrSpj&4i)|9 zi;t;Ic?`X@1D$mPV-9%keM&m2*3nUSprcAWMVUp+{c0Ka`sFp#OROTZA5{7}U_)mm zXhZtJ^%2Z?jBlPFJ^E|*_W%yFe*}FS-HjgW*4>Vtw&U`$)$BzMt!CGJdit1mx}LS$ z)_vR8-z>Y2@1y(UfFC*9ZCPIoFVtG1(8t495tEfIna*#zewM4PQ?2N5^I5*OKRT@Y zGxpa!n;$LaTGBUfQEZv{MtV4ODY3HcrHpwTHg6KX2eO*E2AN{+vv>ym_`!D(ax@TJ z7lZ$yjC(kIQ^L4Qq4zlGFbR4fYZ+)=oU_N1=IduG@{IrfAm{y@t0?H@zson4Zk0_; zWq|1oE1P}`m@WX*0e`Tg3z+cfPvFyM@aa$D)1NB#WKTB-g7Vwb0qdErMsIL2XEe5Q zO>r;Y=(Y2I(BSaCi%raPx_Q3sIBNn9TS58K<}>vKhp0<9Zf#De4ELixl7Q+!c!HymP}- zd%^Dp!9YG89(intUwi6hy@l+3`7tYYud^2HL1d)e$jCTHMzns)ivEIjUjptO$jD2d zvtnJ~Qodp8b=pPeO4n+<(zBYocg{r5a^}@u{Ix1{gyIoDWNsuL!L}VCRyjQ%9OZ+X z0&wF8H_{CO`jBo=Of$I*ei3dAPI~Etjhg%P%fX4@zY> z^Ih{)eB$)o&Ubjb75`ujcC8g2?}GPRn<^vklm@~}OG1%%ssrJgaiPeG6f)M1Uzou! zd;>r5EqucZ_=e!ica$2wCM(jm#S`h+<)v1-jJgT&g6*%hvd$-seraRvPdjUZI?yAX z>>aN2z7=!$PmlFo@xUJ>FWB$S16KA`M{d06Q`NYf5N|vQZdR!OOXSAz$g2P9ksFss zh&Noj6}d?s5DhF7$8$e_5_-m;4AG_|Lp*b$TaK`cwU?KnevS;?j-7ev3NlpCM~320 zm&MS*Q(Ao^;E%kCsbiXRsYP@X-=v#0-^|Z6uy!?mujU;2 znGV*k&ScKP8VCE_NZRpv{P?aGzPI(vF8Et9hfZiX?uf0M^f|GMefkD)4|_flyN<07 zPx`#{Q@;$dJg@aGbY&yD@)30B^XP1Fo`A+V`pMvV+#iVN1JraF8F(IDe-~qF1mD=& z4&WAC8E{U$Z8Wh%AqL{i0Fz0e#0Z z9{I;(K5xYyW$vN4R_@$mE%T6_*l_s5%sbo|hvo^IcU(7_HRafJU6(rZj#rpxzr-9n zy}=v2%)Dc_;upzZ!FwCZyXPI{v?qFrz9sm3tQ(w{hMuBPJNvqu^FAHAjpH8v{xcoW zt%fMkSCw`=PiQ01Oq(&P2k2F61&9t)**euK6 zxDS13$Lk7A>_YWze~|1uG7lZ+B^MwckK6V#G5^XkzveRIg|=6e`4PYye;k=#;K+Qg zywAV9ynh&**^hQ}ZDt%^{=Y)|b~`c#e!vUReI0(m%;ih*o$(8pGqA=i z+lJi97nOYDI~#ek?JPA$8gnIMLH1mIBAYK=Z*s=aLAvJzJiWAL;`ANHSGL>G|A47yeJiSIF5N z!sq*qZ~h-Sz86?OqqcjE4_@m#z8PvC{<&m)(s{`H|73h~SX1*s<16_i$LFO+^OEr) zPkqPdSNq7wCF85)UgQ64d=GMt=Le0i{TF{6f0k3feaZOH8GXn1y4pt%Tr$4WieQ>O zsHKZE4`|!){$o{)Ouh~_;2F(7Mj=O6lFLGLFY@N_Z9%47vV+{H?mbsFA9KcT*7c&Z zUNkZ~dU`%>%a^k4zg_2<@{L5V7DV4MI@Vsxm50svP_m5f&&8F2=bB4#wFY=nz>&VD zH@?#Ec0FsaJ+{y8vul?*KU=jqz$AU2FrRI>ew%au*E#opnREX?bM7C_xo_&v%$%ek z`V;OOTTzOwz&<3g527j?8wTmpZWzCn{{)@Tu#7s}$RSJxF2?Qq^U= z!??r;@OnG)teAQy_TWTCdGOnp*)L(v2-$<)=ZkCpS$a#Z*eUG1av1Si#sF@JJ={6LdT{gJ-+S&H01vlW*0Z0s z3R{-49_b)w7P@0Q!JJin3+~g^$O$rXioLfc^XwbYCJd~5C)hdgz1Lzd8N)zw;7@u6 zwsesL58%)1{zCfr3}dTf?;7A6|GbAbZFezt^mYfjO=H)XPb2%nN6VY9?7M<4tEBT-B8S?UbJ%egb zy|kLT)1v4q?hC)m!LNAt0dV$p@O27)9#8x3_>$nkrLpMUcYIBZuNO_Bo5rOvx%man zJ+3sS2Ie0HHKpBokx7iFJI;N;UYh~G9eH8pXZL81D}S((J%#$e!&#EhL%Cw@{~-R8 zF0l6v3O%)$^^j|{0~%8&qh-Ze^$8;{Z<@_0c@_@6x2>Y9>KUz1SyBcX{9WbLu{CiaM z<*)S+EAZc@ntQ)lYtYUZXmE)CbHqG9tvtU!Qw8sfuLg6!tqFLLGqtCAs~wltyxkw& z{UqxepnY;3I}k+;C}vfr0&I?Gk@3hgZzp=PHYU08Uvzwrb-I*E5D zSw$_i_lGu(%%{)gw_glUFEim|v`MZ&wR6iog)K8U6X`+pNzpx#JsEVWU4tZ@P!Q#r z?+OQb{VRgkb6!rrKt-@0X94z`hpr=s{X=v~KdT~mJNy21)fG{P(x3kUkuLN~U<&0tcoq_x#4LuEIzc{MwIpG^fd<&sKC} zn`{!YqrDg;-^!6EpkEUDsg|$HI#IgDPu=)Kw{aVO}-r2#L8{J=puBc%gv(3H&vgv`$ zDcXeru4~*?f1`fwsN3Z3<_b0)tu0giiD1>X9ONEr*xOFT=}UpZRSANtrntPlSXYc~8tt%Ud|7D7IeL9-vMWtTj^%eumwnS5KzYakduBxj?wcJM{1eVvp4*QzmWv`fZ+QTA z=M?;U>bkG+{T6Tq*!nng zil318%Am&=7FyXw18n}d16tkzEvxdi|0e6FMrsZvKhBDN4tgq<5%+&3k}SR@k{&)c zvTP1}MSQ;?vMB72RILp};`CAVW%#k-`ruZ4$EqKPV)e9F{bMVp@hzJpUJX4}<#BwH z21keZ;o~dO%V*PR$_LTOR~CGv4}HvjLD-Dk^&q1P>W`lN!Fgvd5X)Wl?;G~edq!oI>Cp&@?~379}lLh`RzGR_MHO* z!gY04q-*$qU>kU78 zH`6w&eoL+Jx$0rPe5r3D3-YD<9qMX2@4G78caO&L&hKr{mzjN~cIw(P z_L-!Mz+KxeYM~#u>!F#a9bQ8%Oa3wH>-JKw&6rY;^ZYLApP%=zZ#47bL3WKAx?#6l z_q>{QXug_JCU5mGszU*uZGrluhhFV!Nn#U&IaHPG2gZIn&t&o^cybxoO9I#{DN;G=OliY&st}t?+LzdJdw;M>C51MN6vVJ|Fnbukp}-BQ`e|* zbmt8X{_VWspE~gW1emq~pLq6nzKU$f7s^`feUKXd<)C0m0GIf|*0IBkoDBa4zF^L8 zdN%iW?M0&+=j2@U3^us6*&9@yrsV4Ssn8uCDsdC`5v%VU7 z=E`fCpLdFB^MDl&;qTo3H*YtUbFNZ({j_iiey3tR@nYqA?R-1>=2-(1&uiVwQ{S}L zzzPN*Feq*y9q#rw2j4Mw{p-2v-gA;+=sn3%*A~{lTts)jOU~Z{KLddYxKcwc*60_7 z&(mM-TxO&5o(El@xQlnO-`e}pgFR1Fa>bTw9_0BnZGMh6r|^9lZKB^(E4cp{eKd02 z&2$|k~Ypxf$9_RWA?x(np;M&gh z(_AxLKgabAu2Zj;am4W6Qlg_tZ1n{noT6 zzQTFx{10Ru_Y=II%*V&{ki+HwH9o6OoxYKAd)@I@A3xvZwkMma`)c<%F@)3Xx4+L5 zI$A|;;fcSXUH(68yP*%!?pDt1{fEDz-LJ8xoBx01^KsAMZumX}9GbtLu8>_WiC*o% zXUlYvZ5z4&e&5d`$CJyg@L7Di5d~KGG=AP0i^U(Y z8t*C~X65x}JlGlS(ecKuf@5&BkgL%?mro&U$t>1Ir{wSl&F8+;EkI^Z;VN6!uV z5Mww4%mZKWhR@*RTEHw?pGGgKKLamz=sa~==cuX5mFa&(cS;v*qu=fHU!q(mc{%yw zg5CGg`lCYvzDLeC=l9YD>zwxz6$S8XVfZ^|FE-Ufn`8-VF@_`82k85d=7RkVZDhL? zH$D_K=QbUc@1%P^k2URNF}(Ra`;8D+mF`onTjT!Q%Z&RU5@o?B`G3tb@YQeNj|qRD z;<uN5*wA_tvn^c@gu(YCe~8y&k=|nCDdcE<9`f zj%wGJaF2Bp=AL3}d+{~4!N=u!cDv=yZ_*3Z+^gn!)-#&tm5tp40pyu>WE;doOOM z|F-AA5qzQF%Yk!0_h01q2l%a$_?TeX!F+cO|68nldyVrn@s2P08ThP+Rs%c4StumQG|x z@%hZt#Hz1@j~IU&I;0&r-9k)z8+_hY!n?z5US}R?^k|&et71o5(;7k-r;yBp@-5R{#xsBU@Q^7^UVIYqQNfc zA3(qDuc^664Y1kIl6Y8VzwE(K#$77-{m~mysdzO16aeShL@7||Y{3-hHow^8hx3+BnUh%?D9T+l>ZzY>O(w>R;s_-f>^Wv65BR*-_LDzETCP0-=W$2cI?a(B_G(3%JSSf2fu{ zn~R9`v_Pw$Kr`iEr@&8UT+SJpH+cNfF~rDT;&=JxFY)XP%-1WCt<}gDd*R1a3oD&G zn*G++)DI5td!1MdFls+ScMh?Xx$joi-R908{+e2(?tNj_aV8)5mft>_yoL1LPHLaG zQ3Kezp*}X6ebYwRHGsRTn48zrUVH&|mUpxt^eFt{6yN92rq=a7&N>p>qBgvL<^=m} zoMN88XmEY(8`!E9`Jrs>$2fD+DyrSDwKk39UyaSYirD|aXo|jDX)8^?-zR@SyliSB zL;jrmH?SAij;hax(HofryqtW5b@=#TALNeWMSiAhK%|26oU1#Av5&QQ_ui-EYimEhdSb3t{fzL=!{?hsKb={O zy}kC#p_{QuH$~3>`pc2xTdc^S>phXHZ(~0O=^*r0f;pkicV&;fGnO?dytI@31<+e( zfNSt;w?>Bid|qVGfBkvn!W(75F0b`B7r@0u_@@0M|Fro+#=duVQT@?9{pydNjNX_elaL==5BcQUi2Jx&*bV$*96np<)!T9)q&3J ztgDZmXmIoMp{L%UULfup#Cbs%ZP|6tfh8^~nf^AsldId^SZ(VhTfhAL3zyL^lj>uE z99eheUGulX5z;3g@6J7#J;c!ap{uQDDzI_Y@d?b^>@$N$AXnO-V-z+?aVFv|4ve;b zG0#_h#yoFyD6*OWcebqNJQKer=a~@uFox`#xWP zh5I)AHax4)1Hk`#ueJ1FD&DO+*1CJ+(Y)Xf-Yh4V!k#EctB0|7_I>5Yv~P6l%l2=| zvy@xDS3~^Xw@-VlpYI+AFdE#*Mrd!}X86tSf0TK~!#IS$IQC$q^cXfmzDP51iNAB7 ztr}~dEz_9Ur{%yuZ9M8TF#6bky6zGf6636_4aXSs-a`D0zBGD3dwLdFQ&Z!J9coUC zP3GLmYzo`<;zoO%tg~)mJ>gOD)!1Rgj=_U!!`r|^0sXV)ojUvcSJ&{2#`oE7cx~Q5 zrY`BXhJIxS*wZqmzN_d{{Vy6{A6v+8W%vTgaiLiA`kpaXSoa^z8^*rfSE2*I_oai4 zZ^sX6uz73;v|LXctf!^c--cawT)vj(HcQAw?zQZ^mmmFm4%v|WBo$|Zum5!zu~Y1D z>m+Qlg9EJ>QZ0eJAdiaKpgyhj{cwq;_aOJDWfk&NnZ@>(HFBU6GJlbBYc6G z=!}Etj5^1MZGh+H)2>Blw34T1e=)}=vGb?aC#`3c4<6~r$JlQDLOordXHDBizZ4j| zrat0Bw@`EA(BEgbX~Q5L^I@Koo+-%er+>94y(N7E+(F5HIrAdTGbF3FpL4msq+@!w zAzj11f4{dzEc{dw7(cKL?6uk$34aQX5O8R2v(VNB*;4Shmj5;22i`IDB;x(;z@{tn zUUU6ES9|=@JM8ty{w2BXtr~1}OICUU_{{m~mGFngFP)G;KPAyCvIE7t@OzzkXac?& zqCTd+ZOm7I7PD&mi5qOX=n5x z`0Rs=Rl)`P=t3Ln=e)IsR_ICAL!0lybKe-yq)z8LbO-Ys;ww{yXP2iX z1Cj^PP|vcyp4xv$rgM3>N_rJu=mXa_^z7Kfz{US@>Wk2?^IDl(2(GcfGz#6imj4C^ zM)jdJ1%v5lAMuMe;Mzz3`|1A$U{SrpOI#0d??vwUF9VNFH_M)9IxzO7nbAS;B)&iA zC{(T7$^RDc7NU+z?@PaG&Lln8OWzb*%zc<=F=x`eWY_0<>zxv#q5c4JP+`nR9!yU3H(L_NOHBjxS*HJLgJ2(kuS+ z_tb$YZWQN!{2eR%3VW`^-|)n`_phn@WaM1xs$TEZx$kg4p0ct((mQ+EC+7L`Y+`S@ zvGw8;+ZVdp%*U*_$E?Ah0q(xT8I9+OHJwBE=f<#3I_>(VBX0}H-yFCxST}^+3+voc z(br08B)}5&X1>siqR9P};&E|B2d=x86PMCVwB63@@A9lUfcRA0}XAz$s#JS`P zR>#_a>v+Jf=Xi^KWfj9Y-ru_O4Cm;ah4#hX@aFWBR_qLO#BY{bQ_hxtHTX8M!|!pP zgKF9?EW`ii9bLP|vS$#yr2E<!H+7HS7jiF-uLs`` zQNPmhy1u1#ERS2Usmw>V;^!y8!K20G;?_(Hw-wbr)n07vZeRS_u=Xb%Nqcesx1UP* z>z;a%`PZ5~{_srRImGkrcZ>+TF=)x0?15W%+_r!i!(Gs?5*fN%b0Tl>%yZ@0;a<)^ zU6da_x5>($PxbG`qw^hJIbnOB6bmaUo6s`dJz0D7`Tdo>!bKbL!%GBNRDk6^TuW? z_D+Q@U+*+H*8}!7t~pU9vF!uro4(09r9s{=hR?7LH_rOoIJ8c{1Ha7ujdka7_L7R< z#cvBj*(15XvG-G)J)o#IJ8a!n8s0`OFG;^CaISMU#@@v|b^~}~{&+ss54>p3YYqDS z8-E)4eYJJuBQ8!V!AUhZSq4sOkt<@7>AT34-pxKj_kxo;aMA!y)`62oaIyiMY!Xgx z4!&_sMeMD|sTa+`$t}VIJiz`y=#66Z&5(#Y?rpj7KLYKx@b8R!bM9}=+~0+M*VukD zG`!Hq*bd}%pCR(b-9$UJj|z^ zxpX5qMK>fX^1J8Ko7hJ=&fM0(^4dJ+(zixF`rALJ4sTfG-29JG|M2n1*#pq<5dK38 z`s{V=WWxi&^e>3bEh`VIKDOgt=ES?06F1k#G8>4q*HQ;TKd1T4o*NI2t|dkwosfQ# zSO$7TIwQ`yFEhu77j2m-w(IbD&iu~(_zLR&8t4~3MW+!zC<-r1Qr|*5_zkhv73IOa zK~^x{1dP(zD@@#Dqjc*(Vt>%H=JUgR&eh}HHf(f%IF@d@&buTsf1gziz?x(pv+Bsy*e zwYf?1Q`LM%kDqPjvwT)_2n=5O8@IJyj6>TWjTM|5IGh4*v>veqdpNj#@_yBKYRRjW5c{v z*9Y~Pan1AIu{5~I`1vJK(bfIU1MKEqp4+D9zIDCxT<9r1Cw|aXT^fI^!j2yoeoFb^ zyk7p8(ZLOQ!Q?V4<^wkEskY%Y^hE{wP3I$7W5Z9k;5$=`{v3g zJ!IGA9aFsmI5GA3_}Ur^XL72aBgy^+je6Iuzl*ON>#WPLqA&5@&ckKFg2SHRj;i`t zew7u|vu-_38a=o*MGj)K^>AgG3v%9`op7kTws<%Hl$lrJ{P#bqb&K7#!ykpUmPvG`|Y!7ZP_k72!?IU}>V_xV6asI8J8Y;>j0H|6)= zu@7(x7$(!E`hJYQw|}eL?DwVk#&+7)`d-yID&C$qST#tc;nr8cpJ*&@Y*=6 zDmG(U&6otMYOveT`*HBN?VDZ`bAN$-v)TX4;3l_LW?#+7Ze0Ei@2iH?$YVvGo%aCl zjqHV51cw<$;FlGdt2hzmdcQATgc;(1LRq34P*GV=0d!a zhHo|AAM)J~zOlu~!WY9MIVWEE#na1J12i8WqANf=TxT%)qhHy7zG)%P<(^3vpI;xl zDfj+dXmBgGeF(n$$zXUSYm<|uJ?D?bzj?8#j^|~=-9C@eR|&Bsqi-s#U~;HEFDv_u zW5+6p!w!W%fz_6GXMHvEzkl$d3G8RW`nK?K_9khj=2`e=K5cTh`P7f6*+XOIsr!z-#GbXy zmY@By zI8&>Q7{^{<^RQl|3O%<3J(xzHv-f|t9sSP!|5>g1ckQGdCn(5FgkL&%f4HYUDEcnP z-&{_v%$HA1hUiNjYdttv&ifcafu~ zr9WSy-755S65F79K*_1*ruuGd2KSbz#)+7g*43FcAn1Ct21GUmTY`Sfg5x8j2J|yJ zyq0!rX?OfR6EC(vZ@cC;5WSUl#Cr$1m&=>3e7Q26UHW!YfB0v((N+DJLls0vn9rJD z7eqgq!&`|WXbFE+IsBC<3T2nmez*S!U*yJP#alWPR%c_ghB+I6riJiPKf_0X%y{w0 zEPTwHtn7{O(g|O`mPzo^?Z1BrUh3B<{?d8sig$_@6UyBE`2v}V$i+lYD0@>r^K$yx z!rCkkF`f*#(Y|k2^Soq#9r#+CLj!6vu6@9>Y|Eya)qA`3OKKbF<`;SE#$E#Mq z#x>mEOI&ji_NX17Ix`%<9H07xW1HOdGGoK75 zdjmh(9iwNxaW+1m^=yaBV(b$VD?rz2EL~j%*c3nifk4V6+(ix%4if`SB*E%c<7_6s50X1r0bg%NuIqoR#g z(6+Y6|2fPxlaR56v9HD!M=UFx>{cH3eVn5Ug{8Itiv)fO7U)*NOrhk57E zVUF6%Q)uk5=P)m64zsK|kV7i`cIvyFa$E?AXX6hr=maIx= z{fT_-2fTCmV|~xF@hUR5pIh0AHA(oD_{&Iz+iN;;Tc|lJL{G=YP_~@NC)pQit|c=b zmI~g|z*)@cxK8$?EQ5c?IIrMfc6yWGdLFoLrQRmz*;F9+O60ePz`Ov^l!VEFh_Js}Xm@L#+uy>U)QsJl zr}>+ar*nz@ZRI+Q^O2g7gDvo@?eGV|v#lR*Mc)@&Yg3-oNEbd#eFXAW1m>G8nY;;^ z9OCmbEn}SdTjfsqttS{nS^t|EqqKvrrOy7@$T;g6XCka(1L1u-l`P{i)b2Puwp9TSoTvLxaex0>;bKKlxEQ8$KbNinJ&l9oHQu=5& zr$VP&u*K?1Z2zKZYpHYE?&ddeUB@*5&#dGsc4gf?rhO(pc4e30`;u!Vzw4~ex@>LX zTk;%soLk=KyT&yW_|{!%?%6NCTRU8A*@^RbHek1b-MCTuvTVgl-aQ~~TE9!1v!rc) zm%avLQxwwXEZQ%`*2t49HinG14qBD*R$8{Gv{}mcfHm&A5$5;G(Pp1@Tv!?B z%Dn1svz~KX&v8}HS-)>2rmmjrZT(Jv-TJ|QE^w4_sB!T)CIH2)y-YzB~LbGiaQWLbJQzwAlqM(nH; z$H}=p<&K~F6ub5ueya}AN#ND#W-arUe)u4B@Iem52T2}kdoDi6e0-4kce;*GFZPG= zKZfzc+J4y(KCcMAuIu;Vi`;-OvR3SfKHk6tcwk{syz)QJ)ZT;dPx)ULAR`uOarXdx zf$igsAbZ+EWlngU=|}zJ_wY5A!?%zlXUb$A-TkQh?K!-}9Cjh!cEiK=qGRo24vomR zgYft!*7|$MybqACA0l5r!oPO}|6Z87P5F~u$Ei1a3g2a-ANBM9VC=w;Tzbadw{z_G zB#wPCV_#y~I_}$yQn7U!y2idm#*PdOPRH*#zR2{G-p@K;XZcC#^N~MF-cdhfVK#r{ z(ayw=S;OFoWw%zNyE9CC*Sc#qY($+H8F zb-=L!IOad@iarM%?+1<>u#ao2{H^7{aRzXt{dVy5vDz!v*LV0sJ9j9vGw)CI2PJRv z;YY(we$+IwOP5eGC%=k&RsK8SM~c3k=6<=ihloDWb)IU_<8(!!l`u3zjLEO)0v*ZR z$CKjor|GJmrR)cMTy&26HUAT$bD&??cC75LgwBO43Qbe6e|#@x>wbwPp*udG!DfmND@rR`03kg#HKfsuE z;4V5J`#*g$wh;Dgqykx9PF?ge&7YE)(G>0Tl1KtOb!7cQYSyU9yyNWpWVD|K0%bpK#ZTpm3J==4Z~EkpkAk z9d5-xlR2+okDNKtT7gW)SJPTv<$n@iP09}^x+3Y?xCnDfly^nU<#pzo_**@D5ne|p zS*|^{^L2EQFGCLk1MpiS{mVF{|55xdunh|B3*9eZ?a|*uzzp8tr>3f**PZn?BXh)UV8Wh;Qy|&}XNfWc!)=Y4M1q z3vU@=@g>oP@i&G0F|Qo*i4$@F#7C9ve^&Z2`se5Uy3XU1JZ^O4HmTb+JHy%J$Z#}y zpzlf0`5n-Bp_Zb~*IJs9(xheRO*;2v4Wx6gh?o%m62JHyv4#Ekpjj7|zF2L>KxBSb zNzNrY>cGT#+5DC{Nsfc)_zUcLVY}HnzWAvQTl`kWFK1%)H2yo2#*c4bjr~sepNw5+ z>;;US_yWIoovSE1^it?X>0Y%LJI^k~7n9sC<`L!EiJuDTaR(!#{@28?tAJ=8zgw z{z*djv~$XSe*^Ec)}zS#q3magqJM1#SKGkV7U*mWHg&GlmB6PQ-3L$H3vb1K$|qZ)W^0jNc0`D>CuX^v`M<^(Sz4IeItrJry5%C3Qk*zvSpT@?kIM?9^21 zC}ei=ma~6F7SSJi`gl7w9tIEgIGdSw3>dTkgQM%*@ji?>%C(+8H(^f(m`|AdSNsEh zy26}e;`?s_r#l%(A>)|E`Y6PwU&?u(t-Cb8`h1O6@*K3;^l8T};_tePv8_gzY2Tpv zpJM(WSF@Kh-^yz!v#t&1Rbti0KFV-O-Tb5EG>9JakfqO5pwAr5clg_eJN&C?2mh5( z11y&*e@ZWPwoL$En$(jP+}k?M`bKchoGzu)+(ZtQny1J)@RMG~Ml;db{Sm zXOixn{tbusGVoyQKdL4+?>zNitfL-qaIvwiLO1Hg-mq2ZMhZsgM$44H=6o30`q5My zMwif!TF3l9zzF?`@f@yv^twI15oT@h=L(>?(Go}Q)%KeBrxWlOA$MwdRgO_0V*?+X zMk{?~hwb;@SYYWZdAjl^y=IRMTwe@6$++{4z@N*wrr`sf|KONC58)m{|u zMV;B3O`Bzhea3Z|_Gh*0%EuyWYT2xQs{c*WKQc{xKH?V=0Dn~#h+)L7jVza!%p=LVa!;$H9M7jD3IUu5at)i^{mp z)3>wPPe<-t26}cZJEN%uos$|%H|GlPLbq1&Nczm}Z^rgp>(HMW%gn3DTO&3zb1=M( z`%{63+{^7_^1NK($Ixqpc|_2~qs%LcE-w7InK``%3>twe@=%Sp7M?86rhsdCR`j7} za3(qtzYUOk^1J*Nqn{S!bS`6PIMY$$;eM1hw=wn({4xRh?ZE%Dk!uW`%jY6=8G-Ls z`YqJS-R8T{URdY^`oo{#4?}}Oe>!w%)8J431b?w`BRIEZfbf6GIsciQ7h&C(d<*Hr z#;q+ACZbykY~;RNBYT-6GECqgcFOA(T#{jOufT-y2}~l4PsMm&s!}oD*yzl z{t=O{ogPSniuSPu{`Ir-67cJfMi!*TKYRV?5hN zK9$77Tdp>O)bj}A=Mz2`3a1&@JV;I%?-rSHs~xhRtcneNiw@S1IGzs~&qr!JC$zJ= zQO|xdk@spm4Qa;Nd5mY<7az~f3FDDEaiQn%T|x6I7j!Q^yZk=g^xZ!~Bg*Hv4PPKR zpeJ8KU)n|9<8FA|US!Wce2$IS{0H$lk^_45J@mZ~@Hu{n?(-2o$1u5|jpRK->$blx zM9$%5udvnxpU;WE?rQG|{8;_ds3Xt|ekwVM_#{h#1AfOt%I|2w0l(v+PQN4bw_)*H z;1JjiEGuOWS;pzT-TjUtuhcxsnFD#7p#{ui5%XBgJeDvI@;0d#A8%Q~JjmNT`ZV)c z$2@A8#|D`P`I{c*!8)_&Avvu9Kl4DB1&7Szs?K?2cg`c*Hzsi&?}5(`ln-*PX8Rz^ zy5_N5=J7Q1C^PY*ay4tf)3z$Vf(!l6cu#zg*Fxvyr+4IfPdtt9@f^>WaqXb}Pn8dn z7+0Y&?=|Iv++q75qZ?*=V-4RSHuha_dYE97zjiPmTn-19qrhd^ldk5m;1ODDc@7<6H-67bWbRA&j~C-VUV?2!A5zo& znfHM+{RkhItMC<(`4Mb~D6;+)#WQ6uisl<7Idtd=@_B^%oZ=g%u4(+1;mhZ9uAL8) z1)sr&|7ij5q`TSo?T%0Wth>D{_IoSxEHNG*x}W!E!oMn=@-5)&-KCzW<{Q9R?;B5L4ev^m88MV&|E=ZY5dVhY`%VR~u6V3--dvXl+2use zrXc^wDYPv%~1@wv~>Z1$~*iIxu%X_R|ka=grzPn0HF&FmCo3682dnz=3W+<$vUxOoi8W&hVaWM|Imft*O>NC!|(7Hh2Kvt_(|-qo_Pw) z!@w{M48y>LwdPlA1Q?Y9M;nF_a?`S*R~zoh?*L!*d?MV(cftLzz&#O$HvD>B0Dg16 zApE43YGOTzAbcY<#>}G~ItveTL*KLB2GSaJgd7edQ|13ig`vwOmu;7gtt{9OQV zKT5`1(mP3bJET?JV!TaX)_UmyZ)v_?k&Bfm7wov2@Y=r(vFINDpnSafRh{)aPFnG_ zC(#cR<7p~>wt#so0(T4W2fSP)HWzaKde(i4?-uME6_+7LzaIW;)}z2iUr^%t_Vr}>} z#v8}}1HT4+TYjmvoqmm^SlepyTkLp2^GxjL3Gk_&V{B_B2gHoAO(Dj17csUwiLGhG z*>vJ;4zJjF_?ULsF}5?R|hE9uuG zJ|yKE>gqSiH#DJ#ex-)E%vm2P@ht7|N^;NA=8f2sLM@>c$iw;sTG|F33C$?`9ULh8 z9XyErZpZS%v{lX;CYN00#Fm49a=DdUSjM`?7FDsn6|7sHF;>XBEku7=LK~HuUwCGy zP{|&(mWI4%$*T(Uxkwpuif0+KKg#pX^micXomSonS9HlM8Iz1#VqQG&pABA%kz2FD zXQ`4~=J;j<-vh`k&%Dw-BI`W!2Jg`>6W_(P#xM8b`{sQeJ{+VC9oQ(Hn0E8f12lM} z$)C+Q)n;Jbz+dM&7unViS%Hov>-@99wtTDNcXTTBBlgdBi+_lG8wub0yx*YCd@W>q zJPHjoPlne4H<9;oiTR3fcw zIrVyIL-A~ED#f#BB=T&|5|A3_)WA_Zdyv!B0v_d@kk;|UuV<+Ih_zNcVXcZM?9%*g zyEVTLo-Mpac=je0PoVY~YeIMpaRkM$m;DZ2L%)~e*Ll!H^9++uOaIch@ayY{ncMLJ zojhBiEjiz_7x=Py^|5_ZJ98p#xGjlampP0lKg1Sf49V^LSl6rI*FM&?ng{E9la-@s z&%@@`_t^8e1g}0uj!SYs_3&!R=gxfuA3nU=4X-YSS5JjkmjXY@IamhVxf+1puD4i6IE*$h97!3*o}D^B2@qm6CskCOh; z9bKLJ0Bbu0KEmK*toYucC($ic{GIlq@Ng&&}}-fe+Nf&nLsrMb=DC;O8UA{|eHE;^*|O_&M#0Pfqqlnrk$L zHA-9?7)tJn`07^Or&~42O+J4ebUu>5ZhU^axqq`dFM-ETce~!hcObTl{Il&pQ~&Pb z?b!|6H$-gVeefEM>n8So7mv8!$cLvaAvURGj>Tt#h48^K=azUt~p;JYJQH3;xif4W&mTN0jY9Su^!$#{upf$YKY$O96M4 z*b}l=Cq7cPN9@{(kK}jC;Jv>CXS_RvxeaEH_-MN1Fzt1d!?x_feh?jazvQY}dA7gf zb0WS(23?tet6$jirrO${q|PVk%7-T&yY>O%v1!?N`q{ryQA9qI`i9?i-v6tr4<@9gDFO{=+Oc=_XgTzuLf8PVIPJJ+ckE4&H<_>tP4sB@Aj9RnR zUAg>1e~;vvykfSc19tKU*6Qc|uIkkPg6IkjY1%ERH1s(9`V%u)85$UIe^2yij; zLXbZym&B}JZ#{k4+Vhtz?urw+X6Jm%Tfy6aaOm7=>&~EDm=qHgf>aJzgLSKlZFT|V6$f3-ycC}PcN0a%f^U#qG zQs*dEM$HIW$Fync-)Ydeoc)vOYe6??B`;%5!kqI50AJ?(6gGfa)39>qvBxd_pxV?A zOrLw2?^f_EG(Rj6-_W+u^rJSeq3Kl#>;Gh;Wln;R#_qf=>jvF5MbuPtmQMtM+M_G}D00~=;X#tS2jOnvFIt@n#8GV5fT zdr{JTHNYG=`laSp=%B3g%AG}8^|R;|@lYfCn|Xiv^COL7ZTYhy>iE5(>%A$7_qOr-b6xKh zCEk09-*;JY*vL&reU9vtrp5~LTw+=OE^`FdLEz8&M~5Q+e=l%m+zxE)5bG^AP0qMt zFBSWjq-Mb~c;_+Z);H14=6lnyPiv3ub6Yw8)4hNEQwi(05BdImsTJDKdwc=#SOi~W zElADmNVwV+t)@;vX}ZzM8aT=t7y9nX_3!8VGxTio;neeU{h`hGueJCPv?=`dU%Jt! zS+C*AuL^y3uh$R;W>H|%3~bnc5f84={NxJw*_-sTtzXMoc;7}gNWNtRI&iq>xhiQS@{|+jyn1lzkdD50L#D69m@f^aX9IeJZT+AoKoHVjBx+ zW04l$FEn{$j&WdE_kAkYNgIqO$arjgT`Tya9l=*3j!w{ib|Q}WJ{ugJsFPZ-_o`a3 zSN!*M@7WIWSe)7q&f-&uV@ssx{Nh=u@A|hR+2F0e_hcpG1W%zA;H^gZ?{Zgk9eZ!7 z$J5L^tt-qLuWjY6$rmlcBAk#@&HFr|0Sbzm^wcVA3{kh zd#0gqi<56^t;eE&t>MuDHsmdoQ zwY=qQE<2aX+{dBLrBeLihyK6S+U>`Hkv$%A=GFd_2=kG%vsBGWU>9V*q3SCCbLdd3 zv$JYerJ8UTKfx;2#zW*6u9$b-S;;#;%6lR9t+YWaa@MK?_=i;PW0r3VW0f(AJ#nG2 zeLZ1piQ|$n$#`U3frK$_V@#{E(`(v*|5R&Sa*onFj4Ot|(+fD>ReGbbYTod(vOkVJ zlZ>wyYtHF&a<6RGjmBSx${1zOYj59ho%2vqIggNaHIn-yOGko(%(lVU9Fu_YRA4=t z-&dDXpN;b}b!?5Jz*_9tN@6Ku<3^!*bAIXcC2;71{T0kl{JS>%?K#?g9R(kD`!*h= zPHEztg}=w9B2%VmaoMZ=6gUz3d(oQz0_Oi7^RECeeb8-Q2s(_X=8ZZ_d>Xy4kIef- z8TD*7Fz=1TeeC?IMR#z<5406#uUNtD^4ZQq&h@Qi|7>`w)Va}&5d3i_dRG~A8JTJ3 z>dN|*wI1NR#1Rwc{MS9~!&WrKJea%ifCm`&6WOUX2hdSv4U0{)f-!FaXH}eKCbVSc zIg8Af_B7uDg(snbR9`9M5Wh}{F$k;^`}>{M-%zU$x!0J`&q1r7G-6zO zONp@opF?H*K3(-^=4>~EmxI9SZFEw>MKb<`{_HhluNMb2Wb$&84=TYZvl(##MgWi2y5#tYQIR0 zT=-4Xn<~Ce?OH{foNdm!lXFqU$7#~1_%*xZ>S16Pos4aPd=s2WjhW;%cM!Nf$(kE# z(OYL-8^*iRf~C}6khsWE)qaLgQ?L{tYA^6<=A;WhVBH)RA4nhU1mShF@vm>EohO<1 zD(FLUwLAE|nEUPg{?xqrXV=j8d;C5vf!-H@)2HT*P;_ISf!oV>T=mTv#pFwvajt&8 zChHx0U-FalMxXs}@MONz*BWo8?~k4D^z!|g``zJX`lFVtItyJ3e9%#$iJMd|ikYLZ zlKI+u#UEFn&Dia;d^U4vGJGreoNR;4{g&h|nE5J;xu0w2tBAi|Y>|G*<{WT15LrG5 zK7ijybk=tU+4c#%dSDgLfxjF#&!J-va`Rl3|I>eT*(}OlvEr9rWz%-;2ej>!?}`1& znhwI>OnarovRCd!&&j}E!B*MT%i9LMw8I;OFNBeY_PJ7t_6ldBt{wSqmhpRdi*2ve zy(Rhq{D8GJ3VTItqmQA{^ZQDruQX*NwT+>#vGg^bz9!IDc&STbZK^NqoDsBRw?C4- zuOp**hL1j%)0bL*PRkBRXI@$GP+<2H8+KXb6M^eQf8a>gQ)0YF+41Aa|KjN1)=5Sz7_9MHT;adN+$-e)=I*@IqQhF&f?Jb`>IUWMMSrHmjJT)8t8mOMl= zPw@D6tucB`8(g&?xIwkAvo2(x(?obi6dM{jT2YFv>*%zh*~pT{7j(=vIy}@7dI@tWpzt!&M_fGl;SBZXy z>;#*nB}8vxy2j{SRuSIO`OXm=ZV!q7n3mHnx6_S2oefmSwtmQHPT^4r2G27XjkpHJ3- z>@hzRPU~iieH*?Yw%7#j-#F3Z9eZD~cl@j(uWO#$8*dxv{WN@~_tZz^I36Tl^WeYm z`P=+KR?2H3p0io>!*$Na~vLV3Lfz(JmMUDzXP9~lf24w@+z~)tL#T!WscOv zoI+j9Vt>3%qb;2_9klKAo`8l=!@%?N9_sbkd2<)r8{K%E`LMvAkBT)9UYf> zZ-f_QhsGEu)@kv3SeqwmSr<=>jnK~<0KP%s`_7AJYHzgnvR87yTG@1mv_~?H!Tqrj z!d?5p2SaP(UlBY&M<=u@-59XvOf7mv=br9J?Y-XSx^H+}w%y~+Aon2c8r_>Rz{;mw zBseFZ5<8Lj@(#(T{3AIdfknUv+^66_l(y_RZFn&;*8(f%D*HV6K85@qwVsg&CZFkH zuQq&J_)Y26-EBCDHJ2pNuFZc=Hd_8}RTHS|{BGI%t_Q9(f>W{4@H2!8MV{-v8P5@S z_Ar+*td+6!H4{7i)!DAdG~G2ZBV*h-4>f`(b07ZIi65SE_@l z6Eu90=Gl~@XE~sA;Zp^`S9}a}ev6*K^Wv`**mUNJB>5{Hz@-^JU5{UKFtXl3%{O8c z@rkBBreL}m**zGZrEGA!_8T(gl;qw>-i(%GY}^e#rZaYUpNbLDriu|UCOwZDpHtoO z#k)FcHFR4oFv!_+<-`3$c_&(VBuF;>av3ru5-)2NxD<^CW@4N3=l4MOx= zj8AALG3b!gj{m;q(*MmI^Ii6s$;ApzJAcd)s~4L2<5ecj{5U~AoopPT{88R>I`;l` z-TYCZu{XHFO{w^5s9D{Zia%#`Hy-jXco81bu`e~A1ueDZ>+#-v!V?Rn2dRQI%Ox(x~`8`PNze?pc^)bc^j>>g>V3XqcZclv3L{Hpd z;aU7Bvw@$$jz8=W&9?-Y4WX|B`mDy^Xzp!XvQuBGuMdzf>;yJp+Op&GA$XLD-yue@ zyePgoRU5!T;_8_>|3++1atn|z%eA^^MaTRl_sy{lGO}fCW#-uO3MT%8HTDk&v{D?n z-UwCb@xTIV{Oq6YVqD|$|56lhWY6kH7SY=nLyP6Sp_9yZPkr_I3jc_7br^O4`dN#ou9%YSxbF=x!zW zn(y_VYrM)>;2}TTd9_h7maFG#<9ib{Z`%aUw=Lv+TMy^kPUd`D59ixX^C;cwN%Hwe z-Z{ePm1*j4H@*qa1qQ*wrT);^hoQAe&tWX48rI)( z`0S(y3zVH?@~%FX%|pE-=}+0xy?hb)Y&++ZM$VDHq}KPfM&WN+L)5Gfo+Ca_tT&im zq~g7~*eJ5*hy3eAReQG&dSt=rV)AUX-}FjaLlK^^bunSLi-|1L*sS7W1)77^dopkftO0%+I^fk{2F@tz8kfL5}R6{ ztsP!&YZ5wOulb{~ z=U2ZkXGSa~hC|I;SH~fJq2%^9pQ>=pmAoX@VL5HewUT#d(TDgJrT%^Z-OjW@oxZ+n zkbg3V@kM@lR{B)5X3^7|4{77{y#4PB@7++TuRq;5q?;U>0Pj#@;o+FSu|E4N@<3eQupy?c#kZCAqY)I|X* z0?Q}RQFnyF3LjLvX}L%T)6mcDG*N`2EVUYO=cDvbP5Nueoeed@ePZLzL zkr*ew*&gqViSZ!3Il#J1Nk_&3b9sf~ral={MNu_xtC_SMz{ColDFebkZ-0KY=& z6F02WOYYJ&^sZh_S?DizZQJYcRUJh~6MxN(y~!8;I&1D-bIlbYGvWV_4qv@St+@lk z_zvA1fo^6|&;BMIy35l}mQokQq`NBDk>&cr(O2^v{-EJ^LxXEx{ABVC?|f3e`k1Wa zw$d+3ZygogXcDKC$vf%KroGGfEs^#{UxM~7MQ`(&k6QN~qg<)LFxmsH-E#?Ad)vC- zZT)}NGe3RBdbV@@J9E#YwO`xM2(1mWXsvOUNo%J(U!2w&^GsT!k3?Ggg+1Ou|9iAn zw&>Edc0-mnVEBCKv*OHsU>uosK5ihdWSu&jO{U5-2*(Kn7&bpttZhn3N zIJaBRcCMQq;2gG}xd@!U54?nLiO&8#KJVK|y$yUcVf1%uX`QSmKOn;W$B7xtMHd-{ zE<${*qLkk`8}!j(=pynxNWGCLe0@tV?Ki@Ub?n_ByhCiPh8Im+d5}B9D9v(v2UTSl zWjSvA2U&a<|3PoQYhL|I?1>sZuJc@QhVlpQP-lIxhhPFRk|p?6`+D9_90eQ;S|0;el>blY2vy5A= z(yqjuY~SCNJgd90LsgzehVSeW(?|IC7ff0Zdpokv=?bE6+&LPU#?T9}=R;%hVF0_w z;SZ_3v~e{&SNTo!8Td@wJ`Xj_^o2$889tJgsg28GY!&3@a87rd@R~Ms$1JCIa}EBp zr|?}pO|IrS&y}X{s`^UPf7W=V@}~u|@Ll!8ca?+hYM>|H*7$Q*G}jYu$C zo*4OdwsAE5G4j!}eBV8QAC0y47W0txr|e{b1%Km5IFui>6gvOc?aY(s>iPU_J|{mr znrG!V<%eO8Ghf#h?#C|4M;?W-yJk)?Yb!5<#-yFW_|7KNPO@KkGP#dRrYPObJ_pIP zttAHj`8B|HjP92)Nju|c!}QU*cSgsEFL0?p5W{B!{%(Ulqz3g6_D{@2hm<^~(5DqH z{3+wafAZco6L;cI5xfOI9p%#TnW~sZte1Zg_(KYs1FW`IlnRQ>m zRLMYWMEsOrrp7=|GVpQhdG-^=gBS2UJZ3)wZx;PFQMU~eQ}kBx!~r=9n!n}xBzHvKzu}Vao4FbGd-Ol9g|?(N zX$$t6)T9zT%5P#n#a?o{%=mES&fTLN>mA^Grbe8D*oQsN^Tzm+$EETu7{BlkyDw=| za^PAg=>9_bnMEGsQP$;A#_%@02mUjD9`MWc0*~9Vv2WMLm-D@2yQcQyNbNtNd8zkT zC0FWVxw-y+yf!YzIxbJwZjQkZ-!k1h|S)0INiw5S3Uc{ z&r7`J)HiwPdGVX)sCp*noCAz}tkhpLO?;T70`p7pNS)9inMCuNccdK90w@R)YtzvMN2j4x60lB4iB$s3e>!4~Mh zmE5$W_>u4355Kq={#k#m@bM0C5CaD-=%FjI@nX-x8;`8=hr+A;5!RsKOkx(l{i(iw zmYnNzkv640*>lwkI9>9&=R7W(X0G7*7W$e8-UPQ|^T;?tF~-ogigoSu>Ds3EWgN?Y ztgpWyP1B}~p+#WCI7e{KKstXm?(10_f>Y+9aGu9?HhRn)c*$~ji0TK~A^ki=KSGbW z@Je|mq+}FtSfvwLr zT`SKV7>NHL|IU2g72QPgFGAFfwDUtIVeeLxJ70ENwlPO^8u0!y`F7G@hKkAW}x-}n&t*(PISZu5Ur;(hpc_jTexT0f<<8z@&JH|l%%#M*)jWdoC zqknlHbjNsPjEV4A)veFz^vOD@w)$%9Z}okd+2>gL98aGU=(CVMozJ+Ule_ncd|W&7 z@|z4Fxx}>>=u`AvbDqboqgU*pE6JM0B4Sx*Evs)InU}GH3rVEqy{T}R?z1H`mA2(iZ1S< z&%fTL`uxrX`W#E2QRpa249%t;$t{9*c9gyPRigmf83x^K1pkS+8Pwxgv#qgO^iZ8` zj@8Ln(-~_PW9=tnUF(Vt>^@dS2XFLMxm!0~V5}MRX|EB9?IhDl6nbrjR%7Y&T`|qE zO7XvMPjo%V8fj&{$=Z>;=F`q=y6M~n*O>aqAY!#k8dKoE*beg9naX_J)R^jR^5llz zYJMGc)M!Pn93AWQx54k);dgDLoc{JPPGUU0UCkf%cEvvG?TS`RibvO>AI5sST0iaW zl6J%{IY&F?!`p$obMUD$;J-oh#K}t8pUqdeB;UMd41o2(+F~OXR)ii|=kR^(@h`Lg+u=8>y{N*8ASJ+LC;La3Old zqAY(H9V8sS-W6uehhtoYFV%1#UKf6vD{v0yXZZuQ}AG#~;L|F!xHy zzP}8gin}WvLUN(abK;f$fW0jHq$d7{sW)6~uJh1U=ix6`Iuv z*>isyp{)-$cwDkBs^#7`kE@z{0?P=r*{S;`;7nknbQQ_ZfljgOc2op!P(b!F=6cbQAI$zsbksS{}out<(Fe`e*a8zaPf_mKgssmsav3`Soia zeE96@{(Wjzr<(cMqi;Ps?&1CJ_yYFYJ+Jp}TKyCEI^J)~7*7nC{Q~pGX(g-mK20Z_ zy_;V6$J$lL^gcE1+cb&c$78v~o4;(v>E6|8W6tXLkH7oECkxj6;ge}E9{XgU-mmQd zvj5#ow|@bC?c-m=r=$0)ko6+^axwF<=`ldwK@gqs@0-um4uLLJ&gKQ^QeZ86qozTZ zAz=bTq4Kg~JM6-w7VSAB(1p09bsjmV0F&}I{K`5tsx{qL@p4~x&= z!w3Dz9w*Vk&fCL>?@DO%SHGiQbex&kISOa_@DSlGjHMfXbE*5-$Q~7H2)2Ri_HB~; zz&>^6E%O%{BG;vZ@oB*a_K^=X6#m!DSqk;k6)|<*zW5Y+`(DL|6s5h5!_Knhp;K zF9JLJ^FVUUnsdljcM}QZFPQ zeCATip#B8>|C~F%U-_YKF#dy@24P?TZ}6)eEsHk7(8?U>qYU~8Lmv_7L)Ds`$@|c_ z!hJ@n!u>zk<0G^?hgt)Xe!BmG67&XW=Unvw6ZehQ)oJ2>F0gK%0PbtS{RR{Fa?Y{f zUd}mgo{;K~6{h;<(#`?=ezU0gG5bFAtUKA$k%;rppF1Dtb1j@F;`*1sMfTA|`cV&o z@t0C-U>LPv-Xy;E=6>z4uBFvP%0<6ZHmc=|E5py@#BS}t7q=f9 zbsK&$k%Quko6}(Vbu8YO$oCT448zw}Xq7uF8E-gy`LoG-+zi&R?Z1o6Bqy(IQoOYs zKKfE>Jhm$}-nu(A9znm0px-r%ZiikMK&NX%p9`VOwKSy0k8VSso1W#5_Mpd!o~2|t za1Y>*5E&EYvs^>SocH;RPj`o$d5oWTt?aA+^_{Y(MV{^JdyV@`(QQSK68f^w0&fNADhmv;t3lV{*xr_r$!b?<+-<}W@SmDA1r z{gUfj^%Z008`1{3`^cKyUc^g?eVn-86FX#V}Dj$BWsH=Lwu+o;e$CcF&+*RBaV?T+cq)Y ze4PB_QxoGYpOSldZesjs$3%1pV3-aJvjm3oT*ve8@}B@!0>cM^q2N*a{uqDinT7)6 z^wgqwB3<;h`V8`%;Ia_8KJpguSj!kTFortD(7+hBF^1qNf#dfebbp*c%0gY8?o@1CwP2k zfT7DdcL{iG`v&{Vz~kf8P*|~Xy7$TL*a_8rO+Bo!uhPTLIr|w8j?%o*56BOtmUoC+ z-r*zEi*!EiYKak>>9iAMZ?WthHvNpsW*7t?5dC-HQvYoUI2Aog)?XAFOk)kd$sQzP zh00bF8kPIv=Ne4z_b~juN2rBV1V4+xoA5jSAlA>la|*mPMs2n*apyVMLCevL2Jqey za^U6J7M{)3wI8%NAKUpL&!+c(vg=vosMv0u&rsuHr2Pzea^}3}fp5-bc&oirS(@?Es6ngs92P@9r**~*pBzn5|#itaU9e0#xryg*} z@BSTjH|PCkpsVNdPDVcZw9cN&AzDd>p4s#isrv6@H>F?sR?qku3 zMK_+lN}mt!Wv%Z+FKL8s4ni-UHLjNTivCCX`wOp}t&Q!*rw=?^8_@SV+~~vNBVqqD zYgEpXjxd)aVdUtbE}grXXGOnmyu#G4yXn@nA-c8bSYh@dMPA~piQNf0b(W=5i(cjI zW9n5N>soDIl}^34k1McEj|ZRA2ICs^e5Ivwd?E+>C&s#E~hT) zc5jznHHiJno%&`{UDP|SK;O(lhep2;-8u2>V>xqB-c@@~MWUw^+UB-uXjyHS5~{KtAK=J0x*+)|;GX zj;@yOdz|Yt-{7vbTx*Fo6EM%|tXz>38KFby4>4{v}#Gat7 z*bU9|=AJ!BUoGVFwc=~j*nm&)FjqOO&%J8+caeQ1*}Gv%4ix z2mH6oKdoIx4xsE&-Od=7a-Mv$uKP>IW#d)&M54d(R_=9!tv1-`2W$oQgJnM0J`!j9 z5}!o|N*pNi9=_c%I&BqR{6nP5ZU-A?p@0s}% zs$RwzXoma++4s{tO83V)>fV=}UxC>Qm9vrFHk2Z`@jcD`SAf%o5ZyAQWyXouf^?5=eqhq|BXrEPd$ z_BLeFW=2Xz&6@@8XELicygy7&t4T}M9{nBt$gh{zK!7{F@}_l;5^WOq}zv z1HkAAvD{g5U2Vph<#~xSFByZaz}gL{_0r4S8v=ahV$-E)oY_gdGs50FwTBkIAnl3` zAn!9qbrpY~J%$v{p;PuR_hqk`*zjuq8Ed}p*^Yr*cT91mIkcOb=|ghfMYj6BDvm!`MsRndD(yAX57-3JSTn0Ro>tB@)XxWV$af!)LK_+TB(zQ>Lo_m#J!}w5WYk>CD@#scq}ZZ*8;WFZ)fq$*!dRrgI12 z*RbH;(kA{z9se#muQfI=d!q{AOCjpxQ3J5Etta3=QXel&eLT@`OQaq2%9alC1F<(x zoj-Z4@%eVv#3?JEse>y%gdi~$@;F{rx)-!u*>3v0MMoA}Sz^GFlM$G#$34WPClYrq zz`s_rHp2WN7V84sb{s8uSv-sTMuadteK6)KkN?jGH2PC*t`>2&qDT|ng_>y`n-_jCt z0wo5rgq*;+oFfydLBHtA2}Dk^2XY2BPGgoa|A6UR%1w;p1IHqC;{J8#=QZ`WU?cIZ z5V8J{$a!Rb2tUY1m8({0tN^#d2ON2tKeUT0^by+4)#Q7J>{?*Kfz&NbO7D+jrL z3LeRR-@pp=gCv-V%ntAP-;voOKQ1J*1B@le*k#=R4lkGWFtSK91|xe4InVGq-W?@& z33kv6;89`{dPhe|Z&?%gaHQ_`W`19ZynllFTHx!Dt?MFx6t7?AmYNmRr(@2WkkRN} zZ4I=$u?HEwi~cVpqlLb|&i&Q&-TwEE-5)r|rs@cr%$Y@nlDgy5a7ZS($P{U4_IIZvzp+%v+6yIiK$MUMN z#&5PFYYSNe@Q0QU$?Z5O@>`xWc}4RP@J?Ig3dJASGioxCjU)Bcre3K15I_AUgG6o4$u~kz|T-g+|14TlkcT`UwE9HOlVK`#4p#}@7uNQZ)cAP{#596ka71m;P5nh z9nabO;X~LUYCrrs@Ka08+@$^R1AS*|g&)}ZpY+kWAD++le)z{Plh{Jie)tM&KYTg0 z{=`3A#eVqe6ty3|9^WqKLx|4gm%RAS{qVrgfnQC=FM3>P0XiCE)Y!8hd|K!t*Tl~K8w94T_8)L!lyYBk7S?irl>$3Ea#t)}(@XCQ|&^pvI+##PB4 zU38QZssAN=#Fzexb4BS})dSmvTxM>;8hGjqcl=?8w!RA8QIk3&nw7WA@AJ1{4{()w zfr)v`DeMCa)Vj^wZtmN;-SUjcN0r-6`xngZ23~e?f@`%fzKkyS;hs@-DtUtd!&6y*}@Br}7 z1rJf)QMg}MFwI>R|_h!kdCuSRR7U2JM_{Q+w zP;}2>=$^w9YBevzZyc7fKo6Xq0?fPDX|`cM>=<+DxAPG7ArO4LqrZ(qPp=k^T6;rY*^>Z(hRu7HNKS4QCqn1OLDZV7SP_!4eY( zLc;>T_kJlk)7^Q>Veo156mS<0?!|8jjDzXvF6D!mm1_hK(&h^8HDS9k*60SFL3a#Q z<0CnU4%q}veE_~bWL~?759}r1YTr_Sn{%?OJ$K1Myx zW7WhP1XtiG1dbvffG>2P@GjkdRBDv&>%!YH3vba4=%<;j+paQ#&5WagEa>k`fx;EfKt+#Ack!W+gn z9odHd_8jAS30kjy+|{zXhZ@xjE|T9;Vdl3)U&b~DZ^3CMKM;7zTto2Wf66wV$()o< zYud&(PtrGkF?mpzja;_i+%hx4HnzsrgKeyI|76?vDQQP+<4SDfiY|UMo*X!8`I)sr zDlK`yT!*lpX7*qcOYB|vm#m|V3#_AMxe2x~JSlnY{0jbH^Rp3+4u5pa@5)i(|dI_>#!mO7N>qYq6u^#x_g?O7?FEWwGCF&`{dsGg$vg4h;|E4yi z@-vpx_jJavgt|(de#SYSen#;TcKI1oe2!!273CJ)OowjZC*m6nEPEtDK3S*7P$<%}wg2DBaFi}EujzF*n- z{@e?^FMh`D|Gb|OJz}ikB}XmD+?1b@xmte4PCYZqT)X)h`QF|SnRvB!XfS@pzewH9 zba06d-YXp)Je~UY3AHXY{z*MRbv`9}Vd8nNQbVoJJ=Czx(q5L@Xd(ES{HAz1I)4}c zm$PTYK6K#2viBC|cJ3_{Kac215A{>|sJ{`Nr5E&l{}}Y;1(QsjS8Cc!1((q0t<&if9&f?2@3pNY3$rkQwS9|pg<;~c&{Q1E8| zQ}rCH&3bs`ql3e)^IrlpXb0XHWF4fe#CBvp?dTcZ<^zpat+eLD=VfklKK~+g#5xGU z4`p7Fv6g+JjbXl~PeA7QmWeOU*h7!*W9Dv0X{XzHUt^?(A!h-1r1O{IZAt&h&X)Tf zu8_1pfqBwLxR7||Xl;j_(I{6HheRJ~ML$W5L-uq=<8t=JN-Xm6P4IjAmNUO(j<$bB z^7f9{hlX7lWG3RD^^2~FQJoo_3 zn!l;0E>vxX1CL+lbd9{${ekRrE5%;TT+jZA-sHYR|7sm#v%E?Dp#53=R_6Ba7u#oo zn|nI;PoA=WhJ#1JmtE&k_7WdZ@`6|(@r&m1^k>QowU78{y+v!Lt=Wa2BwKSO_-P&w zePP$&Yc%UT(zj(}?hv0ZwwPJx5&q?{>pb%LQQlSd&Hc=ChGzL=bBug)p5*)-vs8R4#Tdl>pa*$@FE%){%CB>tVz)I9-%7!@kTro%*9i0dyYv+)=j_E1z!~|m z99uO7U#Glh*Y}jVk#e?xdauenQ}G_5zjYp$ap7AjG|rH- z@z0LyRv8!YN-=$|U1JegC7x-(_v>XW%)!AN)R=Z8j%jGOF?FNUeC9k5+8P9HO+at( zX#SQQ-PJl!cZuwrkVM1b{3@PDM;OHVo&f*wRPlTf&lkDw?twq6^L~_ky}IjsBH9zMdchbeLfNvm| zcE)h#HETRPiYsf}ri-6(Kb)`Z3i{$aJ&P{v8lI8iNp!*Yzw`nA<1axMxk+@v_uup0 z`ShThHm^kw3xysSkD^n?a~_@cFrJrXJk0+*dH^on=z;HEo((Z}p@*)q*mPiyq*bNp`|ZupRcoWoq-m8{qZngu@Sx(rk@i|av>aA zTl;4nCGvb9_M?3KQo1W+&lFe7hICgZ`%+r#(p~+rV+uEs|ALP-7=u3B=n6KmwUb>(8z#Hjw&4qTZnEpxuF0G7gf_c|4kEfws_L)S;4>)n~ z9`C6SzTrJFxv%%s^nTtGwTuV<$O*>L|AvY2{%bPLTD8O$j?|y2m9b{S(@vywHRDn{ zz7KCjk-kOd!g^4AOU2{)J_Onj-X^r~M7{^JzU~d@O!Mk1b+2=+!z+Fg{TeMUx!d9= z(K$mlRP8i2N=&S(z<36oE`Y8X0EedTX!>)cj&}%t|F=JNP}{kemwwll?RObrWRbv7 z&e#bzIE?T|T!DWWIxuT~m~})RV6UB=2Nm7W+v~iNoW%w7P5e)EZ+pBR#v7^q4t1OV zRn-fTnBX8{gL8-xMm}Y25F1Qm-21J1A))+qW3G&s{zXP7`WsIS0{-wDk)z03B`1X6 z&!La-y1N<2RBw#;&M}4us7G>+e#q(fh8KY2q<(^|%TU;1OrShstjA<| zWXBCd$SU!5b;={YztWr9=Za5^HOgrt2!53v1b!_$s8c5of=_8%-na4V<9)%K%vI0O zT|sc7->UiZR6Oc7<6ddgl8ws07tjr9BT-HU3wbATTzp?oyV7O^+%H8YE#=%{`<+r~ zt;&)~%b*w0HCOU{1R9a`{`ZgEaktYQ*R;Yv2PRm4K&MGJQd>9+-+S+uOT2wwz1N%l z`gHHH!W`&-fVX}8<=*xUtk*i=+W_3Rv6elLyP_|d_5J5jk2pY#l6vktMt=D+<7mIi zoojaBTTyczZ|KnZ;Hsg<eS{n@hj> z^gEn-WC>@3iVb4hj}M|NCZ1=vHpd;m5qra(?v9W7vvvMwwWj#Lw0#F{pM-ZxefiT3 zno;NI-&X&5N6G1Y%^2X&;-6T2)wFLiReb1e_{-_)tZwn4jtclBdkQ=DYOapmnoHG& zCnj{7`JCarfJA<1u;zsyDw;Sn#3eQSJD4kY-!a&&88ZI>^AGY~kl#aL);#Tpgiq4G zz+y9g(cohCCcyIq??S^vSSx3^cRH!RA6oqh4i-b9GUv56&pgdM z65;Dgm@jih=VPwU%Y7l9yMwtpfI}5_yvZ+3`TPCbO_~&%IN+DMVdj)O6e-CL@nZ}jmNOjhRryuy4|8!aR z*vB*QC|MUF`i0*8@WUO0CEoE8>tPpvGA43EivEa9tIYDUUf91fjC#VX6}dN)wbJM? zLLYIJwE`|QXh_p;GS1d1f5X~tdsCA7KWX)E%UaRZLOip-KXcIf8@ur_h^$q*ONZ{o z0}_ug)(CpLdX_$wPQ+L?QUlVa1NF=Y%AVP=JTTaZlrfib=!NkKFP`Yc_aVHvj5(CE z4nC;zC(3f6g~55?o?PO`sRfc6C{lZN%L|`R!E`F|w zU(&|ie2rth4y`Q(X9|uy-_HF)@=$}U`JlvIc*o7!dTIkYJ)c#Zw5M`dX*()058|r< z#vf$-A?9R{x!ZUpM^NGr#BEEd*C@0*g6rngjByh4m3S|E5>5uG!@Y%C$<6PYwa#W? zGl!W|fsDI6-PIuW27a+N#)7kHK(KtWYpEl9ynLVis3$)Eho1QNuAdk${qjVWhe}>{ zNg*|(8`vLkgVv{s^WK_X`p46&j%3moZLfZC!6V1%t4{A%QOftf)26i52|IxsdA%aP zWgG%Oxq1d@s!quC@9FC!JYUTm9%l|u5Wn22;+Lt|@57Y+K7x0uSffv{Mwcbn?y^2* z%|;91ap+LeuDwR%zxrZpw6+(1eRP`$x^fg9K-TNh1bcpxwKnbZo+M7`#EzGFtmIu~ z!xJOsydeKFsjb3z?Dcsg>!UL^ATeWEpZVR-nDnupmE59V*-O*8K371`=*_YQ^Pr!9 zJZsU9j+PkOqnlzr&#PvFvHf6o? zjJ;l)}=p4S!dei!Yk}`yOVmFaxX>e;^P-xzaL(D{mNM&lDoRw zhKsD##C0V$)E8J+7vlY)3-JE3FGyE9v>~*la++mqY8^-{+~NCw;s26vW8&gkoM@8Rbbf3$gF0KS;WUlc!5zF+rFa=$OhkLFu7Xcirw&Y3uUu;==E z+xPYJKCkz!iP85;(Oa=2h||ZD&jOWtJNUCtjQq8x&NKMW7tYr17ny=yf-!5jIseTgl+cmWLMfF?p4_&PNnLV`sqkp3PlTP!zr?-cR{?z@vrw;aI zg{Eh^g72|5n}EwfWXo{$>EjOcDb6O!(fy)Rr?Qr!i{Ur$!0<2NGsCgN#O}XQTNp-; zh1>AwPruVO8@)?nGZL!{HbPqmfoT(e74Yyzx4(|(<+*TMu}k=dv{QubaDew5@WvEu zAUX3y>R-K4uCEU)=6pe`KhZ%#?^XG8-xt2t&$6v=Gr~(47wt&yLAa6gkC>D2`7m>k zyfDdQ5*a7ss$pEJmS=?)->7oF`Wo;33Vwy19jZ{Wn|&+n!$sBkIFE^5#?2onVg#a=qjM>aOm4M_0AhRIWTc^&xB?iM!%U@z-at7n6R6 zvhO{*PxBAM&)!V`9hC#T9hH~!cZD~`JF&f~uJAT=o99$4WNo<_3t2mlz3#F5b$`oD z-9ManW9XhE@Y4^uPxiW}tFuk*ePuFl;vqYhvrdYBiF{)&Ry?Fj2Th8H9Le~!HoDL4 zm$Mv&7pZz;vMzadc!^Gb={0g@XpH^u>3X{C)mkgLQ7SGn{F~mRV@j}5zvVqTTJyFP z=-zhrXIXI(?49x00CL`Esxe8<$*|hB`x}mKl};U};p}}^^P0uH)ZX{==Vi+6LLsg1(XrIaU=7HgmuA*MGy9pFq5tL&Qe4fff#wgn z*4@kbTXF`MhEGT54;=#?*USksn)|)y>j*-QB5FCp>GgNF_)@gEnfx~)V>FkRHKIj09VWX;N@fG9uzX8|q zb(@C-fdw^-Oj#p)#j07e=r6)&{?2~6PQOSsbhiR|kh9d%#m)1=hKz@=U*KLRU!M*? z9|RxEg^$74zt+J!>9i+&eY%@_Rotuc?@jPwd=dWMark`xeg$oRQT~3iv9I!9+_@6| z+nC+We-X;*?~>fB$Tr5@0Kcq*4s#vxa}62h-p#Oe&CgWd;aSMQ-o_?!dc>YpJh85d zcZ%bGJ%n$9>yVPU$Tj!Q{E}g=3Ha^iu$N#0emkjC5gB-`w>kGq-U57!k#q2w8?Ai@ z*e9Z67i5_G6$*Gy^bmFK4Zr`H`~kC04f-43<*c<(EqP<`RLSX(T0yE#CGCw|I+Pkr zk^_)SePOfSCiwOT8aU4lAGSIRmvM$_i_|!!y=XOSV;#8{PZLY2AqNNj?&#Cx5TPfu zFJT?={`F$de?wcie-Qhb%e8nbyz(eIOEbE4Y?0>wc!TD@0XcQ7L5q(;mK@)p#rKu6 z-w*yRx;5l$?*d&_dFKD`b5246 z;SvPJiZ;X`7twk_!Bg6DlAzdPhmJ7S7F!acfJQ~c7F$#TK~ZB%PO(ErIukG|Ce*@D z?BFS#;Sv=cY5{4h{n;t!ngqkOUQf~H|M|Xq?_?(?5zVasf35!-)?)3PbN0LU`#kS+ zd!O6Oo*TbnY>ge?5Wd}9f>Z(-^0YU?e@n50n1|kl4|}Nl?8epLdKEEw-k+UKeJyLEURLYLNqhRPhaz>nlN#~z z5q#GB-r#+ji~UY;2R$fv8n)TFg`F2=AM<<*4 z5POUWe{Q@=IcUP4>e({!U75bphGsMC&o}g%QJ*@Mjn=<2(lH;>%bA<;E#T#a*u`pY6I< zJ2&kKXk$f1UijOOk#FSS*L}8fVdXoU>lZl zWOO;aTbOB|y;qdad7LI!(N}+n+!6VpA7_nb

  • 0m3*Ce`6_s)iu`V9x0E@HPR_*d z7J~=R&=ni+EmP0mw_dy_9#qe8@tpWgeCP6<%Ol!63?#QI?n7D<`R#V(UXRWoI45f33Cul7c?}($zh+kBzwrS#X$U2@C-%t^u zreVXqGW&Xjaj{x>0h+z!X5@r;hkG@)g|$75-=ZxS3OJu+Um|(9i2VE5 z>`?l7WO6e+NxkpF{$ueqI`6yynGuD4LiorvAI11CWKN3fxx8ui6!a-IeqX&8x$}#^ z@I2N;&$|GBi-`sB9Pc>EWY%@4nJZ&z7!zlF2>(bi{*eSSVG2HyQtU|O+7+>nwa+&* zzL9GAFQ5GvY)8f@mtO1Fo&WM1(3sH+$d5vgPvi-FmdbI^SjCfGfJWsPDWc~^5k5=h zImq9G&vKu9m|x*J>{&Nk);Zyp$5`*Z$OdvLeZ;Y2JX?Md;z9TWCxsLI&Yrb8pV~Zr zr$-4fUPm^#vNgGvIG7_FG9(-LY}Y(x)EAgJ!)xFz1O8{Pm(C!L-8b z3tFS(O6~!s3sCOBD7FYqLGWCB|| zwF$eh)A$7AOFiTNMqZw|2VCeKts8kC|K0b*H-;kayQVwuN@BM!vjSCmUmV+XHncC9 z9o-a4Yri7CNHw4*`OIF!@WJt)89ANS*i-}KxF;rE%6+4#Q=Q8Hra;!72chk(k5)dM zWo1>VKY(heEydr|!@%r+`qY1K3q2};V?A&PC+_@CGQSi$Sh`HO%_M%UwQ==Sg7>0> z+vA&jzEe3V&;vE$&n4i6vXXq_HG!7(z$4pFvBH8CR#4}B*uSgCgXpU|1h}wA8T zi|HonEt{$9qyIa7vwZ0mYCunx^+j(|BV5~;GZ(lf`f}Dnh%>cq9VXp+5*@aH^Gx4K z4Ct^|Jp=irJ!5pcFCA-OA6ylPB=-2y$-TaGs+Ru1i_u5mB)-JMBU_0zGk;=_Y0=jU z$m$iuX2!rD@Y16jsA8f}9 zneP|r;}PACoT-H8mfCr*UcIk5sDF41IK=*WPC8gVr)$o@o^|wdlKH2YZzJ$%eYJM7 zhqSiE*b2UetO>Gt3OUCjXY;krIk2Mf0rvS7WdrQ6N9hwhtEf5tM{AY8XKP`7SB87dv88y+r#k!p0f>kH=1WbN7CQ< z!Y{HVhx*y6^EW;}t-n<@KNCB{@Svx6IX#(gpUnEwliBnxPuM-453hoLR&y@-8arcwrf`b$ND0q_V%gC;j~#{C@D-ijWnSj8krrWLzG3 z_~pd=lh{Kw*k#Gr;R(fXm7nCq3sUHhQ~@%bc!9wmYw7xlpL&mY0d|l(Hbp&9Cb5Hz z4EECCOMO)G&_n7I-KakPTdcI{6120^Q92GC@FtVCn(fq!In5p!Q`fIrTSX_C0 z6Sjf3A4@LzVX^~cgHVIXel5R)EfD2-2dqGqU>-G_3sd*4DoK?^m~n+L!Xu0_y*BT1t`ClK<%0q4pk--p2_} zJi<1fwj&f=`cw83;C~uDe6Ha-Wg);=3cW@Pn{6 z%Jn-uN%KTTv5#%U=4fIKRZDdUJl;oqB{7@d%Yb7ZaIp7p!ZvEgMtW=0HRPdxz3%At zY5X5bUOM?fTdB>Oh%U>9w&wAUVr1)N#=~=K@!waJWD>8hh&&F=Me8mlH!1Y&s}E7@ zmAEpvD_~7L%zLS64`$Nrk_9WELHgQ2gH60gdu8H7)nf;o8$O>tp^|B;MgIo$7%fI`OlIsn zY{QAr{J#9%udZ<_IG+a2r-Snu_?xc7=QE3UO=3;Jl^xR|uBp76 zEby5FZ4E+ZOC}9tU52wRd8|tT>oOYp8mIlSoiqFemyUCo#~@^DK}CDca31e1;Ju@H z?>OFDRv7#md~5N~&UeZ&^nK`CqVEA6>3bXc8oe!>H@O>qjoxlVZ#NxKe+O)YH;LVN z;tI>oww`;1H6L3#4m$7KlFz<#?H8K--om7-(#XBa?>KwTwT# z?$Ee1>eRQcD;nLwGp%SIeH~=$_H}9j1{hq4|Lk{;GVeq_&cr8%Z>Mkgt~JQQ8uBmc z7nG0u!zMB@?~}Z{l(W<{molBDR;#{zp}JVkQ1UWQr~a^u+Czt5cz%6+Q$@tgiM$ni z-R!wUxBAlm#azEuns54i_~>nV<(U`e#(7 z;G6r|!zz}R0WT)kLQmjs7qQo(GcPv$sJe=w@MQ9J^^rkO9zX`asTfa&&5O({wn1}K z4YvB(xAWplnj32$g$|PNhV0lVbBk?&?x2e*=5s5&cqDM^v(L=G;De31IaMX_Vkx}X z0xY-sI4>_#JZI~4*9VcfnEg4jTlp+^;M1^S{eoFn_G|{1_jiL!$&c=E`B*o&{46-c zr%+w=v(arhY)hx7@h-}d4V{1t&e*{3?U0y`y%osz;%XEc<2vhbf_1qBcxPLKJMmgBa1S=T=B`i6qwR9w1b8{_;k6U270=l}{;&5Qux=Uu zeD1)(Rn%ig+*-QmQfj%8^-12F;+>7qKofl449_2e*JH)NH5Is4FONu;D2~!VPFv$P z^vrhjOappmH+p6dHpE{3kG~#&>bL5S6<^1`WuR@xl}Vm!e;|6W>MAYkSBdH1X$J4y z2<%g*1&^2egYOh%cd&)4$-mSZwX)|tzK8o}_#?+zqr5Y$g~!>mo+vL0(&zck6Vy;1 zpVv2dqO5Q5_{75WiAnTI7EZHR(;Q#=?cx4Nbcin<8|F*L$NM9RJY-S9^Xa}~6@2>rdlN|%@z#e)@R z8y|l8r|2uq8Q+Zjxyn7)99%!+A?8djV7qUI&pE#L*Bq(|rO#g$3ii9hqBgA}(wF{M zZTgmVGJAK{N&MO}ekf~b>)Vgj*LSJoMs(0|N8zd8;>%DEgx?`sB+q3#X|F3?V9val zR}{o9H1=eoQan4L<$TT%|1olZ6>`5C|HOXuq9cGXRpI&Z^CB>;j;uh)+9c=fi;>1pMARnpBX<3d?tQt zU3w1xKhOWXy4C=?xCI;>gXR*xNaB5Pe-fMVqz`?|o<87@v;bqN_TIqU=8FV&!wX!+ z3mMSiii(TFzgvxejC#fL0r*@}aa1H!$c;ako2EIehz<29z|FTtg z$CbXiTQB$5X&-;<=dASi#Rn^ylfwr#jb98Ok3by*0-PF$?!mj-Lp!WK{05P=;{Jc}x>-#S#PW!n=CtBJ&q~pV}u?8Yv zjBnUqU%=W%$MM@ldaR5oPA5lO>6;jn%44nIJMAqM)3f!ooi|^q_yV-6G0D;FSMrcs z_*8Cz|6;@FDTVEM|NJMPf1tmwYF9=@q(u8a?tcXSQ$BxkcqqLTyYg{(ImI62@!UXF zAuB2k>*u#izY){-_U9q61^+Tlg37hl_Xlj@pSxvOw?0j+9S(wDD8%UvZYJm)oFo9xRrSS?qbu2 zqo}{NfA*uk6JsX$W=1FaA_bg_RA%Lcm)t$)gOWhrA4jkUP=Bx~kHRCB=r+c={lSoL z`%HhZmGFEOXQWltxI zm-^D@ku#TK&gxAxiupH?%V+0JEO~bScjOB!PFFCu*O;4)(*faQtEo$8{)%4-Pj0<& z47;uao$&cGaO7P>7Zw{%`WrFdDDyp|hq;QT6tC7CX#6$n00fV=aOWW}F@`c^g#CiBs?X}EgZ|wHo z2t8Y_{!k|G!s*Ql{`?{E<)NKtd2V;KV{!+U_|jj8CJetbz7RjPn=7(gXMsaovBl6K zYohfjQx3pob`C(4J;3sZTGy1HmdvQCfr+M)HqJGvy z&BxDGu+P~zOJ_}AzN>G=Yt&fmE6YADtXRry&Z1tA-8YB#2k@H~Zg3MgxOP4Y>|F`+!#|P4zc^vzZ zh7k0WSHHLh+h!5@2!mxW;TwZr##mW<+;u8tt|bHPHJXE+E4%hm*61ks+Pm}Gy8W-t zsQdjNbOy*Ed;im5pW$*ckZaC%iN1}@dLKD=l6_Sx?+tL4XI4@AC47l}m1F*`k;aF3 z7~CGgk2tCJgEdF_TlgOs^#$Ga(pv87@8FVN66fA9rEP7`U~Nm3E6N!4ac|)|@4_kR zTd9$`4WIi0eC`Y7b8oQsWICTju{oVTqw{8>+WQ@3jtS=2#2kw`Z|0aCyHTF}S9RuW z{yE{d=wUbP@ehpN5>1^w$gVHKuXmYhisJ0k;w|*vpbN)%q5^W%12b$vzqv&oNz7xnqO?mMB~_}*f4aB=W-^(^qnglBqqmt?|^9^`x& zkGxvX{jTomtgl=da_b}QeDf;(qTA#KI$d+SjCo5Q7<~w@d-dT%pD-W6J<12abj^XVyN{`-sBC%inr;Q3ws{Z(JZ zKkee-7VsdwBcI=7>Ih%KS0Fmc0H?_}13~GbOmHfF?ef2H`{x{o4;I+ETEDkWrl$k% zO>#|5E+ikmIKA7>Wjt{W#wU0Vy{sc~ zo+BCO3rC)`|zmk>7Ei6W5*qJZoPtX8%Ib@Z&k&+i@|f@ig(qr5VAU?(_SnftUeU-cFFEHbzGWVdss#=Cva|MdxTmdw4W zn>9Gt?~`@kWA++A`y;}O+F)AR9Zc2kUb!p#e9I}q^wU#->7Ae2bS2y7+`Eg@1$VKp zM=s|hm*tZS{93im^zn}%{~SI~uon@J}Qi#FJI`=9^s*P8$72yZD|kioO}J;;4bV>)qX7JD%m}o{ZS>n zEt>lx_%|@JPmeSI0`}>WYw889emgFo9jV zy9Ss&8{?wm3L`sI=WTwsd$nm#JC^5;AeZ?(a+%L1kNGKd>TGK9mMeCP99Ax>bUyN$ zJcTcYm;M-?$@83C=JtBAPQ4h;VSdW}liro=9YsF#PIRQ7UexkWOtJkF)$&g~0i4Qb z*8G*rto=}ezxxYD@|IIWsCCK$uZBL(3IF>l=p(Bz;!{2|=jcKo9rxnW%g9ppn49xC zSI}MaVcJ*apb~VfBf2od!PAh zjc-7?;{3M{4h0YX$hUAAf9IXfy{yTV^Gl!KZVf13#@{z_CeZdreCDh)qZ>?aY<7JD zdQGxN$e>5RcaQKy5AbVz3cO7qE`1?q4_(OFLz>4<`gWLk?57U`f9t;foLkf%AGxtx zUN|?XahWT!BYnm!kMwykTXk+jYv>=CPhO{)H*|ju^VajEA8%#eH9W5bxNAX zM=&td*~bmFV{V-9tC&DbWl=h|lA47o^1fCTrIVG922&&2r56Y z_TR`^VUEJD<|W*cYcw=t$JLzQW=+T{=^M$uv2P?Jn{!{t$6E;vJqZ11&AmG0-o72> zuy}6;d|c!DNeT+nSKRN)teo&*(WKsmEb{n9dX&90$!qCG2cl2f{cjU`Sht$KcC1&h z?uKvd+{+ntgLY_t?BJ1eluc}fbFsBgZdnUHYrtnM_}ltSZEC~kzOlER9`1+V zLin8C1wNnQJr{De)H9qdWoVUNskcI_HDPF#zYUFW9@TIASeL6G+ap7$B>{Kx2W&sx zw=kO+{Ud{|{g2RRQuF^RpY^@PHO#ZO|C22%xBtMdHQvs1@n=9Q$}4qX3k5noZjcr`huk46$i@2J^j+`Oad#vzc#TbucxrZ7r(D{-K?=5C3aB zZHun20#_~Yx@vO9n)i9|)8ODIaGJCB_WN5V@xIBtubB5u)!P3gn3`_Cj~uYgV{bbv ze14X__WPXoNp?w&`Qe#4@XS=|d#~oz`4HVm=X zv7C7>V4jPZ=VIpB0A7~1;bq_00cW()=u@5WB3_UWQaEzun(0SGAEKSmQ6o4z$Uba7 zf5*^^>(Ptk8}5k(@=f3C^BLO*otTAA^rI7FMko4AZFm!LNcXG^S111ZkyF!&*QeiG zs~cB1x^a)I7vagPcupL>*ffZ}Tfo(eeZ$9pgbWHe zdU24g7vBjC>yVdl3o=J}32|@~KagqbNb)%N2uk9&Lfx1lgDiKz6H>px!37=!koU>($T+V?!yLn0UN;dD{}0< z#OUt%`p-T5_CG-<7oQ@X{O$vrPCC$t>?qdk)6mIpc#ffy9O$Igir9EPCp=el(i*bu zC(cdn(SD*X%(b5$?Eyb_EJOXt?O4Vif*s}Q{XL9z?d1{pIi-h1gI-D^f6oe zWc(2PZqCm@7sni%`kyMXb;{t?+3cs~v)~@H_VmxqBQ{&gee&DLw$xRAmQw7KQTUHW z<4bxOI?0ZGA$-uvZV7R({7t3Ap&QAoY$Ct18GdV}_kAHcY96v-KC(gg7F}!2d>Pxd zdH(zl8gu(py@Vemmv=OMFM;9!j{bD+Jt@i z7Bx@*_2I)0kMZ@ZYQ%P4b{QsyrOiGY%F-qKAYW+C3DUqxiHL={X-M6ImOe=S>Ltvzy3KoignN$ zxcE=8CdL+rmh#vKYAs^yDO6)J!e>2a|8}1F4Zr_PcfE9vpL?`cG5qj0{f-F#`y==r zZe(AR2-|aCeKEFqfLJWVsZ@v}m-u`Oe&;Jqm)|0RNPJGeqO*UH< zgTkwrTQ|?F&W{$f@zPG7DZjh>TyOl>jRmO&!Q`Gg`>2wm9qsweJv>7^bq(_}@?5eW zoktFN2ODSICybY$Vv_R=)1T%BYhfXMBejRU-1|K}VSMQI4E9NW_DPxSoqX(_h~Kun zJW+f8%$8!VqpVEo`}*v8^23!6ue36&4xVY95I?P$f7A2#f8mkWt~~mSzt&ipvx4VHm#NQ9Vwf-D^Y3`A-#5vD;{N_^ z>+-qqSk^^40lOfQ8peL5)1EPD>x$|X(F?*!M^{|m1AcZYrpg{`Rv&P>6xrnQnHkwc z|2WyR4b*SBIlr!tT(ZUJJl416EbCG2!|ih)GTyIqKEBs@llS!G=Lw4DUnf@tUv=zFuK2t=jF||ZIDT)x{N8-NKw}EfITxdE zo8TAvl6OnnB^R{Oc0cgu(sfs{rKj+PcJ-VkUjT-hBIUSM7nNKXmVZ?C_mJ@Qjy=$Y?13)Q{;v28$96u$ zw(%RzFt&4aPZ9a7*v<#AonM#j{LjJE!J_miWV!OwsP#EM_Uq?`zXlDz{@4c{)}jUY zTO9byf&aI_|48hT@L|@1131&Gdzu?Pt)~&6AICb3hDR@W?%KL9{ANbo#V;_|%G2#y z*M`&Wdb_|GcKzv=B5F#Q>o(@Pow){>>u!6l>c#tzYVE!^(bU?h25=+u)!ItF4eg1J zHaK(?y|j&vZtP+1dY;AeTseM@cntl6Ug@6ZJ@WkPJi9x2?%Fra`24!EZ{|oYcakBU zb283ZX8i7(<@0^-Ve}umYdw7dd>-GsbgpXm#n)~9pz$~Pz50*O6UhCtc}z7W{ucGl z^r26^eBklN(;J{&7Y_LZ97<>WvKu(ZoC2JQigq}EBRG|N61cBR-*yN21za8UJfA;& zw_E>82blgcvgft?Pv+#s&1>A>oqSUs;jh7Oo$~8U+%c>E-}&2)%VpQs>idDpb^2m> zJ-NR5J3bd)F5B4Ln_a)!Gwx|;+&^=DlK+qLKS8`w`+~;N%Oa^6#Lh5nO6GWuuNrpsMWQ!~(RpB{EDy3_EMt7lWtm|}|ZHTa!;r`gOuwT&JO;5@#) zJqD`UWb%23My~_k{4E>Z#dH0G;2E4ouPdb1$yc?4IP!`TYyXSj@kx3X-86sX2RB+7 zRgLiX1I`@W9wHUIU(a2^`(=--Zqhyz+p7PP!KM87S!S&=9+DH}(SMLYNPXoR(;7bBu4K>bXJWsvx2J1fLnD%H<>>;}!TENW7 z3-9d)UJo6CN8wrWYi>rM>LuWR3HX&S`;^tEYL^4E`Zdpkes%)0^162cvvLZRL+b-p zgG1KZox2N{U^F-Z7Q-j-MIrPrzrFl9sTtJ$jrK*d@l{@pkJ#OB$c9{kk5{y!+z9Yy ze#=u1FZ+jcxO(YReAnR_@ZcWBXTe7)x>nB%AWLHKi+Lt-U_Wc3bL+Gw!f^p`&BmTy zh8^L)Pv>PDyBhmi>n7XU#SO)OhSunc6pcs!qa zuWtHy_H&7N$(YF;g7hlv9dBU z3S0U-?C8`g&-Yb)kALty{DY}Ap6^%lJ?nTLe45xxKIQB9z7F8S%(9+47khIwIUFO{ zi;rP1j(m77KHZmok@J?7%Mr(pRxU@Q;w;m!34z7V`e#?|g0__JtNOs7OP+FX5*RD7i)AZTI(D&}OR7E`%dm^Jr;ksE zZ}~j;o%hzL7YOjAfyda<=9~v;vw(XQtNRZ31h~fFnVZOi4JHO3l9aYeizUosy5Z?KS zcf=2npO63_lUbjG=on;P7WCPAwcQJwI@vTeh~&G&FT>F>2Lr*@5`4P&!UsEaE*k&k z3XgmxpXe?60>4vmRtG=iReGoDqm~BJwb(I<#PDDen38YziA1jpq+_!J*o1wk7bFHO zS-PoRmPUuuCj#8+D!F3UIQ0o%FB%wh@3S}F<6FBTsv4(^D&f}TK+6X?)klp}$9b%G z=8;@V{A()x1g_w$K0RA>2JOV58;dakd$%{jS&vpe7*)5XEI0Q0gs{AM}7iARk;06dCUhtogtU7qt! zS;zAj7P$A%3#DT`@7-d~ZRqsAx$ZsN;OXK(x`Mq=3j7*f)iZwKu|C+xUE+6N2mJD0 z?>Povb>5jQZpZIw!f!G7MfS#Kr4x_DPi zG@gL3s5OdChDOol_anD<+pCExDFDSR72@OA?)CICScj?W$LkZ2z)kJGfUawq%KL zA7iZHkxqP|DdIO&L2i96LUp`E|=Yji>`S8~NM>4%!h{^nZK_~nLo*v`G@}cF_~}Z{zi|?k8+QZ`S9xLdyLE{m+qqQ!z;l%G;3r& z^s8Dg z#q@_9gbs9ihwMMZo+JxiD-Q8JJV?)w5B}O-D`fHSRQkPE{^sNTULWJxr`qpT{k&;_ zOg-4}w)0kE6Rn7B+2nZ3^uS(*eW0^QuH@Xs=tWlA?N#5Om_TfND5AdF(Tjj(Vnrm$ zXT@eS8UNJP*8Z2y4joV|kbTL_?JwB5`I5KFrB|Mv`qt>#Pr~2c@0H`Pnh4idyO91; zdbVs)y+?Zy;nsW4eD2Zjs$0|9a`B6-NQLR;a8}qS8p(q;Eo=NwjLZqu*Ika`=-0r zLn)ty!u5TzF};HbS8GrjX+UZetyy)=^m#)ly%>M2*-jigEs|O3=2c2zV`U-CVPdxXldhTrIhkX#= z03UF_p;hexu!ZedgYAdbJ}Oy;y*&##S}QzLA9sTBJZqVB8qeE*54^RMI%u9#ICE6c zGCdak;pq=R#|s=frq_eBXKs^q$?}k?O>5gT^Z6$yhHh zsGi2^4-$ZOYsgcq3_7@5rnBM#_j=6wybqh*-wC*U%T4aeu+rhYteX zaeDaV{q{5SuX)Ih*NUgxU>(x|R^|N-m)_vomusG4sgmvRd0hRx;q_U~j$DV=) z!p=dIn}4o69}E5beb6~=@>X;ggvLyas=;cPAFj^exmUW+b@as%p6fnO`90p}xiS-) z@A8?N=Ov!!9d+i|-Sg~vxx9MzXk9)pKGlZ(Y|k^}Q$xYS9@vEd_xZNIX|F$4t#N#u zl_n297;B&}+HcT3lYGI;;ECj7avCR&dZ0lVM( zLznugNAB3~J(lB7#|Qb58M(pKaDTcnksFL=`O}K8B^s+g~R|4f~;65-@3ZQ?b?2k#oh)KFyXpT151TVK@PjHJul8=~ z2j*M}O;$mZdy$z-_>Ft_;aiHLS4&uD+a9!I>g!m`$65CxlM8{rpUtz^yiux5){Gv+LN;g_GsPH5nFY=tiDc67;kVf7Z!8a~PA zCt1U#_{6k^%D>eby7#%iYpkD$<)t-5f$v5*G@@E;K0lx_ zRo$*TXJ%g-{zuk*CA`{t0kZK=zM0~kZ1D#;FZH$8LszPfGJr3l72Lm$tz&Y`zZ5

    FIl)Q-1^Vls{g5RRwp;>lG2;i*$gm75KoD z886$0&vwtmoce2=@h)x4o`p#R5y7_3dC^=)j)cP;lXYEM?ZRT_HW=Ux-FEBoeZVpdn+O?{(m#T zp{WqD{g-W;TGWQqd)oGbN9i%u6-_+|PS-v{>_)E?j)>cV$6wd=p?LMHsij{P*g)GiYm*gMO{FuF)*f;n>G%iZAM_2tNg zA>>8$QZAeh9KDeXnV#{VRW8g2#?Epf_C9ic4|-s$M=m&c`x$tPZbdGQdCgCe*ZjEW%-3`Aku+|? zCdJl#!KvB4uYw#0?pF<<=IZ7mtm{+*cs6rv+ytIHXPGExK=ln8C;!e9*bb)l4>;Ot z|M+`=;3Ma{aXWf?s}-^E`CAp|gtsmuHuN^O^45^;582L@81x9UU&#n>;`c80D?Qq} ze?5#nxy9I?k&W0_<>Z0OUeg@a5AG4>c=+v5y1&;4#pfjB4zDQ+_9rir{nI|}uL{7W z;`fhZtGG1M$DxtVbYbd69l9`msh|ms`L5Oq{0fdZHk9nHBsfWdyGGWqiMclO-b2Xh zz+YO|xO3KAWdF$56=RHeS^7PSUqE{JksL=(;Y&Vur7fq5-FIc(*CzY_^JLd@>UwZn z$k{qx+5c(v`x07Rz_%0l z@_WgDRxjZ@{+7+ZUGd+40H4moyA_$MvpJRj_4AXyM?2`~+Hc^8rhW>)Llg2>eiw88 zFM9aFX;~9j${!{Ez1GIhjShai{ChCnHUIuV_~|8mKkvZTg&*dW|JN)m$H>lmOFuEJ~b_zc1klx5QtC#Q{ClA8pPs6W@ zB{;q@qksPc_>|{0dZN$f<7=RE^|!_Tx)V4nOwIC$@G9WQqh>+=BwtCp@6=;Qo|3G7 zwcELj4?o6So*M5nw%-f~$G(|!gRvSv_CGPgnRYKR`FE8!Al>rH2OZ@~qNXUQy=5i$ zD*nIz5WnxH_b@c3J;=1d+ikGzKJ`XD2#l-o0oAbQB_5F6;tyJFw+H#o8x!I4KWL0%1%ltj#}?upZ-AE#T#3ncjhB(( zAub={qxO%q>GQvS;K&)y3v}&_D?8BxaSvlB9=w;ehF^Qbho5Ku-R$w&;qJi>9_Wnk zN)NwD4?tJW>^jGW?w(jiGv5Oa$(h1l%9$=(UaTZ+09S=n$+sK{$gW#kZX zE5)pC2PdCac9m+(F?d6xE+hi~+Oi=G}dL)eru@hWOir65|W7bDX2xWBfjhi>>wt&6+%FExelA zshUUZ8rT{>@8rz40P9$*vBEF@%!7Bjvcis~*L*Qh4&-Bfdt|&zw;}hFlMEqJch8jnldh-fo_hc)>#IKW%Ja+GMe^*{ya-%=^ zg!=d;SkpDEX{{rVx3Ei|^a|3cQ&6+}}-nf0I9WgYeS?e%6AY4Gw;`8T{;%zPhyw{A}~ohIU2! zn*{4x2R|EZ{Af&@|DvfAe)#-&SNPfH;Ac}u{1B@dT7!SRkX~Y$_}4RYtqFd|Umj2& zJ^bYv_{)W_c6X? zko5Z4@X>HbU-{qhr+sE$`9{_O{=-*Zt$ul1e%S6S*F3xPmH#92YuwniuUzAL@|71c z*7(Y|;Va)_eC6o!bHaz0IKJ{Nj<0;1?JKwKnT&9f-#goNdRI?&-Ds^f{%7Se;CHTe zedQY0ldt@9j5`ePIKFat#rBogbn=x?a%74Rnjl7z_CphKXd(bjBpjMh|A(aGD_^a( zlAMF5y7iUwUfFn8ykUIhX3m<6*H_*`-qn{RSCMV^InOjUb#3=H^*gF5_2iBuYCGE0 zzis4qbdhUQX8@av`};ow?q6;M_rw9bxg^4S8*e%`mDi@;rZKL}LNE2lrnF@hc|`Ov zYe5Fj^VK|dm>dY{4Cx~`UO;`2ZEKy$p6(6gKKf{)i*IsTUETX^Cp@5gtL1aNMlcSd zM@tvBmgapbKGiDb-<7S^72H{@UyievaC2yuIOAPC>*&~O`BbShwBeJj{F)74>-Qac z^4Q8h>;}G}f)C$aZ{VBJOZbX=fG^jDFPFXQ9vi;hE_|Nag`#fY`|}U+sd7$1Z{Qo= zOZaknfbWeAXZ?V0`HMDutGa-%UpMeQ0erEnuJct+l|B=x-qGg)XM9)m$@$JUeF9(6 zb{oFyx`6LB)n0n!kjsC!0$(Y1T5r~GV=v)b+XH;_J@EO}6BzlD*9Cl!bpzjJz~}2F ze2aPsUs(_EUF?Bx*RwW!P2Y3mi--T_bOYaqKVbcO$$yi23E#LL;G`P zF5o-A8~9!TzF05UFVIW)-cH*5+ZF%q@W5B}lnvkFF5vsC>OH&Qzej*CznAN`$C=-$ z=>4wr-?kp$d(Z=)f1M5A2p>u;hWY2d}n&#TfW+cZ|_|nmoH!I2EOFo@2=U|OZWeXS`yvr_kEr1?ymUnO=rAUzEqfc%!2UK9{Bt#ZTMz) z0pI`qYe)IABUialUkcv^e6jBNZ{Mld*IRlCUu_TY-Qj_6SA`AV=q})Uyc_tw1bl_v zuiq)bx1^WwmG=PO6(0DO|Imi-*rJc~-!0w1mm&V^<@y!(629?0z{lAqZTh|FE*rkB zUBGu~H}L&-G3(d8{yU}h%jqS2C*vR2?=JtnjIYkb60ooRx7+Y7?E=2PsrJ>Q-(CKD z6!`LcNuLLt`E{Y+Pf5Ns^Z;MA3*Tkz|K?dUvxpI{oJSA*(A?mIszodvZ(?Qmm5Gh{ zO>bOXwXffaf3Bz`6rA0kekT0gwA~-{n{!VGn0&(6eAPzdZ^EbUw|sjN_zi9>$)X=q zM*XEL=qXsx*FNv5%(>Ru*EqE)McKhHJ)+WO)LN^*rOt~~Eb@MOPI#i zKj{2BsdM5T>R+VZu`e&QW}f7nY4ya-r#6>7+dcjdmp{D2@>jia+q-KX=PX#$8#jyR z=J?VU=L1;tzeG;#eb34-CqH$Z@fV&$Z`_Lt(}notu~iH$mXYTf!hbLSNzo2`^!P){ z!EbCkXLVcFoqC4is|C5sAA6^4V23^@tD#fXwI><|1y2HN*^p4(NnpQeIM;%{^w{Of zId$_2>~rdF8qT$Hkm7~#t(3P z-Iq4Fe)QV9xj&y#H~$H04{Q5{Zyd(+68*w+^SBn|gy)Z@XE6Q5lC#JgolW13GR{UX zs0uch7pC8(*G%X6$DH}wImMiX>-6|lU*AUJF5h|ZgSI-Nf4|d~ao)U@OS<8aJ>SQM z>Lzc&#d~F^`k~HsRQ-C%BY%r^F9UY7)5%?s;R(w>t91gV%S@8-qUuZ_GU#-Wc}DyzvBh?UFYV z{X6i+Z&^RX8^r_ZF`4b~Mz+lx;K1-kc~dO0gUr zmIAJ$se?X5@4C8=9(tHwj%~f`RL8BJg6e%veO`5b#s#LP@o!&;7QFs`&pfpbP0D#^ zetyR48S{vbs+N5upRjA`nJ@5$(lKpzLM(AKK7%B z?Rkx~dp~rV*YW&6PY$0;9RBy8a$Xz0U~!ghPW>EcMs*=3j=_ATfA_c8aaZ*LQBCvg zpIheK6zSvWIOa%=*E(JKzL2>4x6$?Ep0M_pbEb;?`mb=V(Cp{v2de9Dtc4-2)NvEVDB9(0{S5=E3f%{|PjU98rCQp4H+0?!NzD+W-GG z?FXQxz+Lp=>1O>u>Gw}7GbMwivy|s#>sYIP8MS1pW!IiZeacKvNqWoNPrl<#oT;VS z!kDRBDKz~Kk&50Kl+`TPf+6VXau$Vu`-*rTyu-6wxh^CC|z=C+PK4Y0*GyZ$28 znq_!@E@JtG&#tIK_Tv;2Cp{6J=EYOLcwnxwfh^L2>4BZ zw6W9Zj~2-2*dMKm=a*#!6Z0~H$?}X~YC%S@aZyIFX>mrdc}Yg_(9(?HTa_8XmX#U7 z!&MoFKj)17~VHXk}F$>~EdO z#~yfS{=B=Zo_XZ8$-W$Oo<`rkq2OfB+&e_CciBbChd9XjgUh(LYW}?Ee{uVdU%TMd zXa2gBzBtI*nK_*2w)9_p3tPBf_XQZEYYXGnGiC*2MsrT!Xq^*iWtIE*E<!;isu=N>JY`?@IQnY{Y})Z58ra`H3%HMBOj<2!;y2i_NA#@z=<=;@Ppl zf@kA=PD~7?kA2DaXuOKQxi>j)N-$MECD_Ounifq7HZPtMJhWs=@U5j&f-RL(f`?a5 z2_C7M5_9ya-yH3a!kb7wTZ;BwZB#=uRgmi5&8#siAZh{MbArl+LDi zq?gwk7Xd4|jq1&$e3k^Czw#HIy&0%K#60@yoE-2i*-(kkr;OY~^)*c~fAui4bzX)o z)29{&Lpj1beRyOib0%Mm-iw34&n9|79|Ml*oMoY2)Pu0)bCH#9FY3xmMUS~H0j`%= zxqIFY4BnIb_tg(i?q{7?5B`qbe8=6#Uw!1YR$p#;h@7}%!asJZi`!SeYUB1OxIYRX zd|I4pAN90wNe>-*S*GLDt+eKQ3|dm3JLQAKOw5(N0q~tS$a>Vp_2b}LzxjmgVh7jL z+i~sYmNhQuglj%0{`)iHT68qMFu3e&a%ef5@&)w^V@)zRpE3nqWpYNP_*CB+9e^At zBwsVrIb+A$2fTQc-3PqkypDaqpSI`&E*__r{mJ=rpMMG-9|ezZxB8UFlz#`mZvQ#G z#`$~wf5Ss%c8z+BxtTLn;IrtwQ2L9v^Bdopo`jM|teFfRn)^UQ? zv7B|B%sNi%VjYbi&R)kY1KZc}Vyz>;nRT4(tmCvU*0H?PI`VnpXI#fjYUcY;Gp}BW zIxBD|y{aXj=a8c){Vkv46HeXy<~zs*1dpnl7Y}!r3-}M33%Jxd3kL5_{ruyc4fq7T z=2SoL$^hub)X)3b9~WJ5Vfb;*36z`-@VSi7lX#X*=jVi*7lI#Z>V5QWkMVrf&Bx2+ zYqjd}iSM&GpG&e@x~33*a_xyP9;T+4d7J(@m)rZzSQ)f2iS?O{42DMDod=Cff~Lzt zd{+_C{jz7K@Ep^N$H<`eesmA<%;*x0HzQCjrlRdus}ZxA8vNM&9qW&!uO62N_6z%n17L zvN-sO2mIztNS)0zmiM`9?OkV`qtSRBxahRjm!INVANVtCeO=dUt)7_PwSK}`>p1w) zI!h-f_#PWL7;)G8R;~ASPVVO{JNMJZ)2MFoRB(!TN+Mh7k$I4}WYwsTfWoby$ddt?pv;N{DZvyz9)ku&Z&BTaA8cUE#4{1|;mZHx8SR(kpJ9q-qE zL+48*SU2x_Bv=FWqEBgU!Rd={LJQz*8S+s$|7b32J&(2Kx$39uuKP%>J21zA6?vxjd_pcXCF`o)_uotGTaN9FZ}y z=cOMEej9B3#+h$|`$hBK@0(b=*4BP?QO3m>7ny5fkDE>GQThPB*g>q*y6ntwDKYSP zt-tMD&VgqTUje@2>T5ZdbA~yWGqF0SF15CQT~qCVI-|d!iPSviS`O@GmBD80`cFKI z6WVAyixW6XmVU6N#OT$D;q}xU=2x5-ZtCAIOGP)=IdtEw}BqYS)%g-=hF}TzfZ@bB|ou ztMSMZQ_q2Ig?yDhr=I7W@ZAfLtJ34L-)7tTJjR^P6(7$Q-l0?Qa6kO@B(_{*c}0Z2 zzdSp;gU+#WWcT{EWr@B2i@}42f1o?@rQy?(iw&Qqc&^|Hh^OYktMHs`q{MahJ5&7D z2%ekZU-d`OKHvDz;NSntSqM$j_@3Y3;F`@^Aiwh5v7(nO zU|`+X1QM&0491L}_N9$0sD`=C1MjMyT2*)OJ-{Sxq&s0^kmq4CnJ@I1?3 z6(?Snz?UWbjpeMSv9AuNC-Bl|Z@=&3eEe<>J=394`3#KQ!_H7$-4XnRbLZc9#X-xz z@D}#nE76~(UQm1pePulleF3xh#mGY7(3xM-K{4p35xLd`-kMu$UOUKn#}~kp(!r`p zn*;CZ?4@?T_)2)mZRkUu)rjoT+DqT+IZtO;`}^EI=I+;#D^F&39>3J#tFMI1yBYsd zD763SY-|53_k3;j*z-a^>1VBd?W@EF`|`}}jO?nHMuvXUw_@#UqkMg;`ea%^_z&K* z&hW|j@Goy?4UzNgZ;Zazc^lXt)vo=~1gzR$Xb)k0CVW2eC+rXSB@Qg&qZOuB@e=xw zcD>HF9cR^VfM4?*+f?#2u;13h&-~r>4~{hU;zQKGz7rVL!9Uo#Eh8PL|1vhz5T z&-T$B<{7tAL(<)EN8r=#_;5<0k)!y8j^Ud)j(#`+&mHs)ZmF%qFTvRn0j^*0=kB4G z_nyIj4?lb`(>k%!_=FZ-(Ynw+cZ@!G3lHDV*{Q3o^jqkZLxX(j!&Cji?XO_pO4k5e zHa*WdOX^n*^itn`FY`4cv1qkiF-3AFX;g zuP=T}-uLv)zq~v9%b^3WX5IfTGrmdDfZ&s_Mc3wO{$O)9zL>ioj3l>mhS@z2 zMp9eYS4BB%Xq+$IoGeZ^Z()8{Oi7Q;w8Dq3$VeaJ-ERT2>V8}9&W?PIxUpz;tS@KJ zp?k79!`oh4S0DcJMvtwqm>iEK{8x{GmroC`*I8KL-Q+1TE-+MQcuz?eCIg0s<)bgd zHVs7srf2XJE6?O9x%y)=bS#=a*qOBt(Rsul=m9ztn^kj5%qui{!?iJ_ zUy8t|xtIKv82E|pwbE~}|A}#bK6En~8$!OnD0wD&*3L3>?k91IG2#CtS0x6GqUVTn zwCx|-_%{jdDn8NX1K_g{xRc0U>buj))m*9T706)_~TOlWL=hjnld^^Jn7s z_hq&;%#gp@mrjAh<~``LL5k-L3*RL??Lk)ogLIXVcjUtrez@%6L|I|F%<@&aa<3Gc zVf~Gt*q)nJ{~Yiuw;;6!-H41&tqrBOV*^27GZRBNKU-@!8<_c9u!s)WTkX@{>Z5Xd zAEdZWl>9Qy!FzV)1K{kX==tHf9rsqo_R-!-=T=VP`ODc`iPp8Js@8g-qrSrTg$~VV z-}UPfWZx|C4(##WR@#;GmpSkoxOYP@o#cFq+&65ib~(@I#k|9XHx9femg2zMSMXkE z!|R20mjkQv>AW!7cGe~B=W~LC2kbp$n|;{R`J6Ki{_XQQg~t@MqFVO^v=W7<9=!>; znPZIgiL(at(Q(_U->*1>vx?S{2O|CfKWD%@-uu4Gefs{l^Z6c{H2YM}@Eb7*dCa~& zhW|DL8q-;+^ubQ+>~#46elr1G!F&JH8Rzv=1e_9HsG?*Vga4T^NXboOW zCy^)cpZs-ge5W&NJM8uOe8wlO!Ss)>L8-e2)4Ny$?-{Axtig9!+ZE7S=QC2@eqB6Z zufa_2@xuHe^}9)MzoLydGTL~<_#nWC!38)GkF@7b8a~-9J{ixvB@aa3hF5?;2EO9p z>Vb@mwzE!4IO`N&jXCRdEw!;dopt&WbJp{0UqePcbZE|r9m)JRy^f4!&iTx_OZwK@ zF;|Da%^dr=xMfaW`d;erZUt+qIjLvHP4F%;v9>d3UA<%awIlay3_f*k9{!k4^emt9 z?i)MO>K5!I*-u`6{|EF+8{NJP-QrV-v97=P2!A55nX_l%i?*|8fv4;BXg_-vxn*G8 zdy8=AIeXT#9x3=P0skeLcX#K|c3vClpk4Aq^UM-p7ymrf3C14+qrN}Wfos%BcwNEAieq?)-bNwwmwP_~d)3wmt+#?d$M67#Ml>Cf-HN7#%KMG9_JHl0`2T?JIc? zIF5tk<#&^#TRX_kUr#vKf?V@i{UeAAq~n#ysvB^HRW~T)s~dcczb+d((3y+IkIVffWzNY6s3^R6EwUyee%zxO21Wm zU9hF$y5Qm6*9CX@CjU`uUW6Ss+qFO8OWB|KrOvtY*q@&V_RjXF=I8DoyRtt^nO|r7 zQ)68FGl{*ad>P3Le+e-0d8Wo7&oZb%NFvWNM%Z|8$H)c?IQ0nr9gN}gRK}d5&06iX zS)RW`x5dm&JlkaR>|L5enZ4gSS?gRA_BH-K@7~577IWRs z9Ja!cT1V|cdmbemTjPPgkk0%sT=c6s)WTiSVcR~9_W9Bken z;5=u5c}}0RtvY{yUtPvfe_gZ&Sq4wypH9a&_}kY@`h#^2bb%N4s{5=z+j~{7EV~}O z#J6$g0rV`|*IqRcuxn~u-u=3Gw+7y=g?Bf=yBp!%P4Mm(cy}wj%lPK)@NNUVTky?b zOYt{@ho^osxDMXMmyK+i7+%J+<;%V->%BEa;tO=tvOmyEOLp&6NB*!5uKfAia^%m{ z!t{&$?$V=Vl=SSLl8@7*fv*ewI70A2i+bM_V`C3A{P7idqPYgU3SDA)kP*X-2L{$3 z|GwzK)*B~loom9rRzmk>FP{}o4EJNtsMZ5rGRzN64C_D>_wsBb$9ayaDdIV%rika* zbrWZrI*F4FXWI1>fzO%xi3Ia3edNK&oazT7H{v6?2_MN-><3@E2OkM`M)uj-JNT%n zVxKwOn)w1TkVeiq?DOFR57%&ZeCb&xXXNe&rmc8Q`68S{J2Q&CkYw#wjJPCRG06H= z3A#U4QxSP<)(2~-k6L&be@usUZe^VV_-C_-FXa$h8pIjUL-3;vD^52J$B&X%oIX@g z%sPLIb^aFX{H-q6`PY4rKfA$igB6jTVAk$fDE%|xH!;}Jk*C?$GW!~!eyZ%63&V+N z{&aCa@H-v+PW7jSmpS0$M)0A!vPSm!PhofO1TX4ShR+ea*tKS3_}itIeDK4&O|4mo zbH%^h9o<}UnyEGO^2JXEK{r!7@&5bjPE4N zZbUb)uyVsW^V$Do1+Zhl4Zpek^vv(yTk|JAuY|9@&ws_YlLxVr!21`4_gV+v3Flfc z#NglH{lk3D==7%p!uve%KAUGRK$dvrLZ)?j>L77o^jk_eV87zUL4kvV0&q}9oTO}r za1by!FnOxN0duhB+iA9ZV-Av&=k~YiMh^AWjXK+3r}h4(7Y~eik3Ro@>x73_=C$J? z&TmHFGQV>0@CKg^Phgv`Xc0eTn4HQse#pKg{3Y&@PguUMpy%%ip1;TQw_*sFf=@S= zkSE+a=h$9gz8`F4$LIK4zS+Z5=_%#$*ES=2RHOM8d;p=;clPZbA;$c5^t}4lHhX-j zEyySNQ;pAdJwAjSd5!DErvhCgPIRasFV!2W#?(+a)&CJXV}#O^9xC&KlwOkDWEbGu_zRaXWs*Kaycdqd!P@qmMGdb(?G_|bQr8X$x3_I!&sSm2zXd@spKS&`_H0DFl5Iz1~ATjlrx@Q1p7t|)e=avF3Mo=4K- zcSS{?a9`#g9fa;&g-rw9BnI94?2Y&M)~<;9_MeWt1Bd&JT?*g5Ta4|}X-?CjSIsF| zi;OQWOh0jjojWl?J%o9FEO2^#oH4`TJ;D1=bAX?DX^wHt1wA62I-A&l&citpnj3u8 zZ%sT|Fw~Lj&b8LQz7r_ufRkT3IEnIobd^7S=x*Q{mWiKAYk{wX_bA^+us2h4rJlU| z(&Y6-ePQ_%mLmJ#LJz)M_POvo+`rbcaz8rumAa40to>&?uw`5kN+;(9(#e8Z!5aLy z7CJIH9(X4fr{_W!FO}$gpgt`j{Bp{9%m1i#W&(PSPWGkOS@N+GKh6%NFMS95F%MkV zf@|I--$BU4=?8~n!21$?8v|BFBsSEVkbozTLlZ;iWQO0F zym8nk7h!{sCm&*>@-CFSL2RgaO8U@L;uO<}Q%py$%$Slsa@~~l(S|v}W81Ed9AET6 z*$8J3qW08^){i{xAR- zkt6ciz8lD6?uBVDPIo%8HXu(D}hK=wx_g!ad1o>29OgZU zc@JUU!!+-b;IT)r`QW_w?z_-~1&;ku=3Hy->+!6@^zrfj z^zoIU^zn)4z>EB8lefU$`hj`IPTzM2y8I5K#|DS*n5wK9cb+5EQ7UB{-|NGuCEc9^}^ z5#Fi1>|@xpg8fo_6G`Yr@i8ym#=&y}Iyp-{cfn5vc?!|V&<;Fk_-`+zmk<^Q^{N#Z$2>Wux+(Pl|!N{mt*lZdjOc~+oYIw7#R^05TAOCCPrk;KYIW>^z+X8TCuWar^)P+mgW>DV%s z)sn!LNwIE8YhVd0IMCu^eh?k+~=;-wV(AOKD>nWt^@SoJN$^R?%&;X2>=Sf#&C z|2A@FJUHTg@dgu5>MFr zOE^_7@@(Qjin|LhCRZPvY0OfM0k4V+M&IY}?K}^B#J9kU{JvPfvtBv_E)LCVordx} z{pQ05^X3g+JH)OVk=~5_KdhY#cvR(`|If@MBq4zWqky6Y2-j-86bn7lmPrDFfTc=W zY-!~Z6ck&^(v?!$CJ+=gDonA>w(M@es5qet1zVhAi#95{u|=V~cGulyu1O$VfSE0A;LVwwfO|mj46l=TMR^FBDgD5;8U5_z3 zsC0)kJ?6ay_|$m6^q0HQU!F1gOSaKpOwaF>{?cP^CFp>fTjC(HrvhIA`it_@)SD!- zn?2rTB{Osxo{w`LK=^ui#%^G_i~Zr9=H2+C((%48`NPVaxrz1bI+UyS&2OQjRP%f- z{4u}Q$s=-O$tKsi*a|79qvt_%C%{{b=;14+~4Wb36UqTTw_J zDfdqtP!pO|OuYm73U4SUhkOMOISN_iC1jIRkb(Q;6oCJiddVsHBsgh&ffbgCZEGIa zG7s5^dbj>_&S%eZ@}cn$obvU`$Zv^M^s>Xyhsld3|5f{>yy%`e;i5Oy3dG?R;+ysk(%x)^+4$bMBhJR`bt6ogI(2^^6xVK^$&Kj-^zDWJT|eAD||3f1-@2zLWvoC zUgimfxAC5x4qn8zFi+%9WTvZc&q~8nXxHf5T(y4eZt@8|flq>`r3Kiwo!>uDHQ4j6 z&#`U0b?o?nnZeeQF9q92Rt67W|K;FYU*tGXu>kG!gxdr%(O^m*ZcTZz3 zlTG~?dVvRho7h)#R$#nvw93!#;OJ!ZSK!gQuqIR?+-Ci;J6V5M-(Xi)A^(c_*Dpwy z;-qrAV)!>>tUrbiR(Z#v-on-nrr8>o)Y+W8KHAz#+yM#@g4g_BE_M z%e603^qJUrJ9)5Q3?AA#BiOO?3&FY@tl%S~Ji)bty}<_u`htqzKginqXbp3Ce+BcH zkiK^Md^h?6e?|{6xziP_eFF35y;}c+H4lfXt?b1y;P5Q+rB?E77;*8AuFA-G@MJdQ zjRWuIz%zl-|G?u+J~q!PH#0*L|vBMx-QFZ+d$1|eU^P_W0rlmftt}qYDTwY z*+;i#*~hl=3_Q9P`Cf%zRCcFeGZ$IgqPeeSt`!sQ7;}yT3+4TZjvN`Mybf|2wH{y? zXZ6~>3Od?{ zS(RO$z8w`@kC+^+0+WOFyr*wnLm#JqhHRrk?Vaj&u@8s*I$ zIdv@YJ30hwP>zifaXVYE|T^nOvW5q1RvwPQoYijOE{-n*Zzg zXA%t_Te?sc`=jR)4Q2L&_*Tqw$m=cx>G)z`_av6 zxL-W;(@` zv?mr=qPq@)}(iiDDc=?r~V#UP-eHWS8W?7 z+FP*Y)92I089nG*mGQ~Wz6xhI<8QsUvMhPu7t4}$S^iKpeOR6%SL)up{FYn$<+Xg` zEB+NzJrC^o#8<2pH}j74@y7BQd*Yop!ovgdX-Ak>8}nMrykysmoa@X>e~+45X16o1 zcIHJ7#&PYy>0X{44V+4NXU};>fbD(EYccbBjCnP9dUvd*=H}77f|mRG^=_HQycRRB zY0L|o=hF1?%svo1OYMXBb?Utev_F{lSiHyN%v5;; z0el{+#V~wTy!s;VULgJhE)M?pu1Y6X>Ey19hSd|Gc^^C%|Bm_rykh=VjHa;ZU-?^C z&prz&zY^r`3o*)`~+wYhc-`%E+=eXX1rm~xbqKk_`b&=)8AgEQ|e z3(lHbPVRYO@Z|eN!85Ub!Ol8=a{Gr}zv!$c-?`SGTn5fBn-9)=i;d6f1mnfgyU?AI zW8wb?`&vsMz%Ovd_x&Az^w$6Ma(pFrb5Y=bhyi_dXRpBLeLwxFo_!U*Z~`1V3*LPQ zz74W!>`RFaoi6Q_q5n^O$I-Dn_p;9|{$z9?FgpNmeh>clK6=SPa5qMsKpVDx2j{LF zhyR}>U;Yd}h;!ul#wOdxedVDO`K$N`ZsRwvl^uqy5!tAEoIcP&-=LAtGyTawe8u>y z-ZB2FCCK$J}aMjpwRFFKGfqpbnIi?NxNyCm7%3!RuAeBg8Y#+uL}aQnW$J6o^1j;^kP zU>H3k;v3lXlk~YRWUlDJe$^ihzC19`%+-ypm-+(7a-F%(W}n)CWoph-=p`82a0zoR z4z_Q()W|#KB_tY{b0hmw`k;Mit3NrFIj81$#GQL;u5sp?V6LsuqVlOV-^0+{=a{qc z#nw)-qgCuX_FjCJKY2TPkz;4%8vW_O?=L``#a1#t02*bj*Sy|?=8A#q0Dtnvlzvs= z)Vtl=H?ux7UJXpZ0om5%)}Oc^T_(bw4=unaTVTC7g1q^m_-Ltld8cY_3H1)X4#{q3 zZay=&uC8q0t$N7prq89r`+CM6gAYLPezTaoD$ZG}@^t$We<*k_@h1gu=^_h9p?{m& zugc(*r)L85UcfsCxaS5<4cd5MJ^`3l2m%+HEVzEymv6~bhsN^I3K?s!mL3vY z=pmt4XghLz4!Us^yldOSK7m8Zy^?N*zxW;1B3?b0m?+P=G0}_mk$CxSV#r&dMR>Hy z7~#(4dqA78g_fBzSL_Cd9`|Kc*fF9v?q zUxl7-wkoTq(sxJK{?z_pN2;HU4?9wQ+*18ys;bn}B&#Df->MvLWs#eb-Li(<6nebX z?IAy9F7&8PJNtCK=A^kqBull|z*_g0(bq?7$Yu=@zIXi3^tl1v z@+%K#9`Zq}Zg38EMB`o5o#I*~51eXNAImeb!h!G0vpKr`%3;vCm)T=Tsl=@*GYt~;^yi@EONI)JO@ z*=3oz;ukbNIn^RcmKwi5I1t|DH@WD#rfL%>(nD#Dbw!|3Fp+-3+8U|%Pvw!gzP9a( zXAi?piEo^Pj&_%s=e^hXg9`^+!36_7!Fxw}gBA2Z5AS6T_3+#c=u{@B^$N$o)|eBh zT7liNmv{3H`KRTZ8mni(vHM+^Xuk3%YL3_Q+i>v`)v*&l{y)Qsbs0E;kMZWfrI|R< zU6ZouCg`7id}>o3eBWx?(b5Aa)_p8atWW0^DV*5M7(H=9a&qsN@o#`@bBe4J9_;8& z_Ou`TVdvXV>>u;k^B+v`7B3F-z3@uE&7sHYtHgr1Cpl*N6Z=p8?1c|@KL7Ry2OdAB zdplIS(r+le%zjVq3V(M3cg4m}H}=l3HAer=u{Bh)6QS-WI)^v`@s2og4paNMgr2|4 z;J3@ml806jSFA2ecHoCUvbHRFw5}|9tZKS_ytE?J32rJbe(x-J9yYY)QQgV`FSLHpYAK>-UX~&}mKiY+#j%iTCQ(1B-f{t=D`Nr|tjWGlK(LD}yKY4GRA0 z;FZC%ZC3?P9P}qo#*jH}=rA3~pQ^QX;v_yRV$W^OHKF!B(*G@!`x90S+E?7Pa0&97 zc?fpr=yj~V=;!ElY_9Y=*45A*IS7XCD!7X7HhLYpYv3xnYvd}r+u{v%l0z9Kk6Spq zxtrdcx-j9e@n>_DOoG;sNmm3`+=V|oEmzB>vGt;{1&VQ-KFo@3s}D0*=D292Kf|wG zBwpDJ9@jx@YkSZd&p*t03E^gFtqvHiCEteoMO*UoX|1$YDIl@JWZy)}{ zqszSg>$>REmMK$iC*#7}w?bzCh8-|!~c!IG21k&`2klUu;o zgH}$57ri1;3ofZf9v#ZnpA298{ns;O__gSI3uLx1 z>QxtYWMwyBe8cp07?IZ3A*bmp8VlNOMQ)O-5Nd672GZwx%N8XhWM8{2J#jK8Kavv2z!;pvKrcGfeujquQhvgC=w5hei+Jc4?Bk6Up_uEdiNUi5AP+M5=uYT&A^z7d z{qOncZ?aN+RJks97(S{q7L?zjGZ&W5;M$lM_|8J|T}GBAPhP{^uZRB=YmYZRVkgFv z1NSjJ^^$L5o22bWY&Y?2@kaP$Cv!c)oG;eHKZ1WQS`2P%L%$mD4aFwFS1Y`s_+)SB z1pd2D{B{@Ot1K`tD7FWhsD{6;Oy{q}%Xsbv&Yv*rt_BZRGLJnDPc?NGyuVaBJib@u9YmK~ z$;2|`-EMksU`JKqXIETTJTJDq+>WjE+Tvl?$Un!k>T88xeXMlw;Gca8)l2 zvp(ZT!jHkT>GoAN&rRYv*@&{UG^X+nelDH@th!@7Jm=VueVsU*uYc2>(A;GHeVKog z_$PaOrh6^pDqDUA*U$5>MDgSt%lMdn_=@9CSj7B3;-B^98GAGMRmJb}GwscVY4#?x z>cO8Pd-Ea9bz!ExDOjzcPIe9PI>odkQx$79{IdG%YuS$YJog9hpxo@w$Spoz!^ z{9o|SHhAY#ML8+^vzvED;hmeXGh~B1HKkTlZ+E-|yiliPx=x_KmVH{QQTx+pSGG`iRFhaSdO&BazFCbjrgdTE+7 z0>JaR{M{v+Usv9BFK7*K1Cii;=6s z6V@O)nU`aYlO9v;t~0W&CWKG&)2iE++}CH}iPmcL92XC65gxGi>8#!00Aon^7(z_! zLV8XkxFtQOg6qfWIl|F&o!}psyT+fZo+G^P1{c=pb18M_GTNPscuAaj)5i#%93E4T zKUw+FJU=+KSIl>U<_j)f$TtwBT=^?ko8#Ma&7S{9;`9Lh9Dkt#V-yvb4zT^Pd%s|z_X~&0d1uPc z&{H-WyC(;^3+xm5T!DS!8gD28>=V~>1@?(CT!DRJ99LkUK#q$pRTHj$g~kp_gT3Bq z+KfrFfmh}pQ!x+Zjt5C(lX$H&M4Y?09c5hh)1M&OX}Q{&D7G1rgE?i)XPo&HrWR4 zLq$`$9aUUM)0^wCFRvw+b5GQ-YXbdqQnrCZQ#qok?J0Zb$2WbHhe1E%YS>3hiU7=!tzaIGFYx+2&ncgZOu4 zu=PDFnRwqqeC6N(-LzA^6mEB5#|U;Y2@aW-_8*!VU4O0&sh z`YJk@g)Ww+hc)otCG6|s9{bwZEAaboyZgF?^)6I^M8@=0+^=jUz79P5l!Iqe)Puw- z?r0`HH`Xd{Ipgc!vh2h9M{o2N*B!*BN#U8(v#g)PyI;yPcJiOcV1o+Zr4RGYl$^w` zG*&!1#fxIh-{^wAe4`5*|4=M9!#}i{Tt;KtlrUZ?_Q6Q(1MGx2c0vL>p>-U#4R%8N z1Z+KjttkL^D|AslNdlB@9jus*wfFG%UaGsYQbLeH|f3AIWu-98R@(vTjar!mv0{?fr zG3WNnp!=27>1KEPlfLJ{_rp6=F}cZ`W)edj0L~30W^;K^`g^vy@{YyQq{TF&(z^LJL$x4BmF@9+3G&;4!**Sq*vlBR#}__d>d4|DtOrgU&8 ze&_1nvlQ>?p?_CUR_I-M_;c?xFWS@jKB+ zHTC)6cy{GIcB0;6x8mFCRXM_5Pv+i=%Exr8&`ijm9*bE&;F3TLVW0*7MQQ5ia zV{ZKTF@x}Hef^G{~!*S?1kT>wb}~haIV5ak9E@o`nnH6J}yLm z9d+c1{i8UCLHaBDVdcUizum<-44e2p=fx>@POfwRtKgxz|N6)GKZn0S_Ycu`x_>>s z0Lcd66NRsIbzMTN+t*Zkdm290gOBi=xr!aS{!Qr}PXCasz#lEe4twT6TnIy-a>YDi@-Syn=Re z3=R?NK1?3raBx)cmM_8Z%niJUy=|@bQ{SuJpPW(Y8$oQv*K`AL?uG4>gYA=x?Q;md zN_k)N;aP3iSWe7M=ZJL2-PX&W?*9t*5ATruBUyg2TEzb*M>V0DWn#t zCNJ=um8i*@cv zY@{bKayB+oGPle&z0GFPKN0%snob;#I`YU2Yr2BY3{WV?X{nemr1h;%mq( z`RxZ?hyGJvo;>Gs&poVgueHv#3*QJieCyu`myo}R-i6K2u8MzU%Q((=S1}*Y{oP4aNsyQ&Y2S@>kbc$po}1dfCK#E#7PVw2bp#oJ9~u z=MW5{;C6z2PtB*p;5B}aEoJt1q!+EULUZOidA3o$Gh>4z|0%y9&zt^T@P#n6EuNO* zVII#b`}dW?Z@94HMtGqGk3F0|d@_v1H z|BtW{kFuYzJ@w8vb)I$5 zy!3`N*kyr7(OkMT??K(PDPx2s`CR)4N2Y&rr)Pyqkv(r}zEWjIMfO zo7fkZ2JZR_d<3||KavsX%|q>&V3*=gG2o7E;ly9qV}0ICj)w5r_bqaAn49n0T-ihV z*Mu^7Q26Q$9(4bW6O#)+IWhT-(9GbHS1W@{e|HCa(m!}~_W<^1V9@yZb^~K{nOHOO zqx2zLabfk$eV9D%d(|g5=nZ^=SliQ_yV_Gvx#myUCiU>JYMzG%4gZ23Q+~C<^cIa( zu*c})k;&j5dD(XfHsH|De$G|>jAr1|ZS;m>vpmW8Z1~b{Z>W`;sy6(6?FYP}L+^V- zhYxx~9kuzK@srOPKl%3QSZ?4{MP^L0H~FH{IU~!U*U5}q;ns^xPP6HkxHdgkBU=?; zqu1l+S?EO7%yA)eh2P}o*X+Ol`<{)D%~O50gWLCm+mC_Ur&n6^5y{kdJCGlG_Yw41 z^&bA&Xe()KImNRX-_&RG%r?%9P+pUfqrge;IWlsp{Wdsw1eiPyKJNjy!O2S5-1@GT z@8lQupbyo8(^cHt?F%NaJ?7%{bMk|7f4Uv=6Bnl`LK&bO-Z=NC_AA2swP)Iw)E<2V zm)WlmnjKu0JtAEG1i0+*<1vA)yk!F8|B3xt^v11GI8&|={;kDFjW!OYfXxQLqGji>~Bzq5MUnS^~o0yqnC*Di@JS)eZ zeXaG*-4zoU77KLXE(k61@`EqKRL*sYkGDJszKJ$ zk1V>bcQ9U`AM_4HP71eqFZr3KZX!Y7w(RY>Hv4mF30Hk?WgZ9lUHF&%Vy-Q|S;95j zs`+8|C~qk7{v>!E_a5Z>vh%y%YiwuE%GgBCMK658t>pjjd6=`xz}fIj@B-Y7aG%jv zsK1bIt?$pxbY&gCrSzlwe(!lw_YRX^6}%s!-ZuAZ3Xv3reL z9a1e(TXBUsb8HoJZ$ob7xNB=8wx7e?BRrRgO}3xrER|?gO-S`gZJckEm<6BbeXk1! zb814bbFcj4(kZ2{XWuw9 zuiGTwWxZxD%!~J(iup2V=Tet;q^Bn8ng4jM8@W#4+Q1balz@Mm`oUVRvui^5B16)v zV(VCcDf-WBc%LuZ$T#^LWw$FwUjE*4;iIvGOwI-NNWZ|9U&bcb2mJOjp5Vp2)Nf%} zF12;o5NrINcYi^g5ZV2XblfatL(h5N?ao`d2gv{R7UMdyz!$idb6hlLmW$^)Gb{?s z=NHnCa;86d6R;XB{>{6G`OA`PF2#qhJ{Ht<{1*RS`LOE(rPL3|ztE39vC!JM=z&%6 z9`ptJmNauu755C|o)hcf5AcwPe02Q&Y$dUL>TS?vKcRY_)x@)vpC2vqwp85dUr}ZG zcU0VIt5b?w!sJ6;dO`LbBAM-><(z|NXI1m=v=@$75p#|xcQD{K$kAwH-KKSmcgI$J~ z{*&(Gw-nFqBluq6xlU?m=EI|+@TdjdJW4*TlBRDHdots9^CAC^h0Lc5TS~C+!Y?#e zSA03IVxKk)v`&;U&*$)|;y;`Ta_pv9;z2f!H4fNY3Kk_W47j$I<`EB!@=aP9mcj)mKJ_z3b_6Lu= za753WnuF&CbANzbA#kT*uyq3Zs-%7}Ipu}N_K$k(XCJix?sp$N{K?}V?7?3@m$7uu ztK8fEyC?QPH~obVrd-GGKRaT6_wc>eD|<;-#fx;+KI$s@scZPO19$lY{$siWw{j~(HQD{3`(o(6e{X;2ptoN~IX%+f?cKj+=_UPI#`L1j zqqjdfp+C9C_^p9Xxsi@~R%+)JAe3(c2C+Qirq!-xPY=5oqz~PV~dZN%rw&WuYQ(jp>;a zCa+~4w9tvqxZm$9-Q2!A$mz=?x34!kV1Dof_=&jD0o}cyQt+`mlU=113rA8 zECD{R0-qaz&lr4tJB7#OSq{;6z^CMgj<4^AEByybdZ9~o!zw#Nru`B6?}pVLVAah0 zkx3>WY9FvV0Ic2vR__C=gTN{VtlEH82e3L0tWFA6)NGy1gjN4;SSb&(lKh>Sz^DLt z^#NXegC`aOtHr!)3GZ44tWveRX|M|7gB*R?sK8-&#;LNiy&q%NmUw&1#x;?`e3Z-(Ev3zZ3Wq;VM&})&Rlyg*z%R-&?4!%DNe~>Ry`cRy?CRkUP_eZGV9*-V1 zj5TD=Co5w<<*E6s&+nCQz=Ch0W>}EcDm`}6jbBld^ z!} zX#X?g4chnca(n~C9b&!$JDyWuC-MvI*1`h2t+>E$A5dT)8dP8(E-A1(N(<~GBMa=K z*A&>tt}n1vXB0;+%Pui-iiP<2(aoEQO~k4=r*9NAitLE^zPsb!u15B;FMq^OYveC@ zRhCz?|I}3Y^nmGh1@-3P0;;IB~ACUmy)ITan(CSJEqTF++*^VDQ%dZibEd;bblNxfYzL13#L%?<>`9mE6%>DA5{amE_)IJOV8x`}%?bFY)Dh5oPmxZmtOI-BUR z16$Sko;5J0&T)z3gL&GrUVIQ-c!*lpHPpHauVkmmHZ#8ASr&Skl}s#$UKl3|?LYZ2 zIvF}Z$~P2a4sm!zViq(z8=B?W_8H~2-uFo_`sX?B?Xs}Vpbvccaphi+SJ7JP4Ydux zcZR?JP>CmbxWXIinC!*Z>kS>9;SC+D$g@>De5yGo0|!3i;($4)<_xr}^{`IiWSn@D`gwShwRw);N$;^32~SW9~EyI!ev zoB=;>upD3ZN?^skQSJ@P4g*i##%2n`hhv4)ZQmx3ZGLAT@Ik#}g+J~1plaP%4s%}c zHGEyn+3@9hfAVS0Nzxe*)H8?X&z)$`$wkkFr_5(P<*aAEW&L9QlzZ%Sr?=R;J znO+@U==fP|(AGuwoZZX2+NrZW1fE&Myg2Kr<1KXIQ7h)2)j2n>&?oUK;QS!-YINaj z@??6zIhS{?{&u;^SIOmltG?w;#`34zjo^S_RHZ9+Ozrd$HnFDd^LCdfjlV8Tek5>n zI8no{B~$<*xJe$-NxU-pK!X|_#1i!{N)!tWK8W} z*DK)b*g1|qo#W^uqoq&hW%&0Z*Fb0VB#T~8+-xK@KH|$2$Qb0xGvp;ECJ4vA%UQ09 z_h&cxukt(@A6b^HK^BRwB~#wN6&mL|L-Q5>Wc^y_v+)5)w$NW7ADL2sOzDG+>4S`E z7>&LO&V0k;PhN*?>5FW60on2bvSkmwU?Sk$H~RTkJb`TC^J3@+xmMEjQ}(mLn%iEi+(4oCnD3@nF#ISOqFYleokMndq1^((> zM&WDR`1r>Kp1Ym+GIMz9P7`0=-W^~5qFb+3)7#W*-SQjm8xPN&;}5lsgSOxsn!Bgc zlN?PA&S-i@k5Q}M;t zvcRJ=Y~C$dG32F`+s`8HbTAx_nznk@I!hmxjzYVe_GKk+VC^0cLBcjBs~kC40rI{apc%ZWDasCj$Bh+ zBDpf5Hso46a!u#e9WF(VjYN)JgB-gaIo6zOpC(`DR7Iv7dkCH)d2?tGx=NdsJj7f+ zQRc|0X|I>rEy$^|%aBv0nR4oXfK`T^;`dTw{xP1vmbDIHjGl6;w9JuHLp{9%FOgTX z$?Y?HH?aJOoMNu&a_VdDJY#KXateLV$RX}c$*G~j7xWVIJuq|R(=bOq`SKjSo4LNM z`~>D|;EhgYe z+T73Z*U|Igug%37{54+ZO}6dv*{!?50roAi%SyKI_Svzu-ej~3d^`sZR@1|ub7s=v z_?WwIUAsNWJoNnuw>$nPospV4Yf(0ndfX{?|KHfhX71JH#pC5IWO@Z21U9Ux4p>SD4v#1956P0xU4bZO*( zYWh8HEl2Sb_zUkfJq>sIY~P*t5a0CKik)OtjMnvu%pnb`b>oPfJ4xja8x>9>sBi%9l6an)qWUwwQmvZ zmA9qb1nNM@EBtgWd=%Xzg0C++9{q%Qu6dc>=FNo}aCikCB_7u`#+y7{Y6VUKuXI|n zT{szD!;SI! z|Duw!jAwF|@g2c)%}yNU96bG-6R5GP$P3&*&I*Q+W04Z#x25oQ_+|b$4vcUZLZUA+eiIj4zS4wHif{Z_F+3Qz^y-Y=@ZzzGy0KS1DljD^TeEwz-arj z`OqPJCdXZKwtMw)4a3Vf;bZJz?-u8z@7*2d9O`2et|H!Zb@0fzl3=(496AmTodiG5 zpc^-@wG&-VPK~o){vD&WU#m(2P3XA4*IZa{J~S?xzdz5P{6-(n#^?v0LH~WR`3kYi zRNp(nDl+xO2~QFAxztM^``&@q|NP*iuY0oVMp#8Ht?&lJyTG?>#(N$caw})HqKm9g z>AOG6#b)96r~EqGr=aQ4-G4H*$6nqsN8^)oScL7THG?}2Tzc@Q-yqK)!8VU@&nj@` zQRX=n+w(_^`>4AP=~^Ag(L?WH`$*qv&dk^O=a;+nt?i0wM)`g3Ec7j4femB)0z({o zb^U$NH$JjYufi{2a??z_IuH5oqdyX%nt z(FyxwgSa>i8bLpmQBpbc4$xH~IyZ9N%e8?k^0%|X7wSa5 zbuQ)#9d~Zwdw5dkR<7bp+qj~4bT09QjyLzQBkREb4d8!0_`ea^)_|T}Q5$O8g1>Gn zI`B69byc;Yj)k?MBa3T8N0-!w!gcuU=+|d#_U2+ohXnrDD4z$o7#$M-p3x!k@%^&##mJBV8{>zTYFzMTwQyu?W6d16}BxSVunQHLYWw_&LB|)}8S4SA&p>O~TY(AqZl=b%D!1SpYzMdVn9~H#)b@0BRXzv(C?{I@ z7Quh2=X3dP)Q4TW9$B&I>;z9v2eIJFNF%!O0V}!CliL#HpK3kZsEO>24Lp^6%*lUQ z`)I8vr*0U}R(rf1^Vy4|_2?w)(5oA)WNe@G2laDQ&IkF7&_`T$WzCqt!Q05q+6T{S zV1Da}2h;Q&MZ7N3h`w+DJ!gyXn)mR&j*aM@E&k*$#BW)@-@wo5FZntC zPW6}k1b>T9cKeJ5SfN-UYbypW1F#zhp?lH0ti8?2<$B=fX}+NW=y`>#ubB4_;QfQZ zy%>EY+x+$)FHn!%RdqwhTf~VzEF9R~|2vg0EI*5K?KZ>zy7LNrUWb+@Tk=O6KV$R@ zta&_qd9vU1T~N;j^;=M{1@d_4OQaf=;pm&brW@J&;WyE1f!z6#v|3!8G9Z^23*ZOZ?gCB1he<5zf+t)02L_LTwekSW z-dFT-=;JuKMT~b&{?Oz86~>ncABZjIIp**n^V_4^@N2P~7K0}X*}pB|dYL}?`^b<-sZ@G&l8s}Y5K}^_~>lL-^kjb zYmK3}&sWIPJ8!qCA3yKlo+$HEO<;T%^JQGs0VVdTrpam|Zi0L%4w&93rMd7?=REBv zIR`h(stILh)r2B_$p@^pLWyc(Z@|RVcP@9&3th%oEy`ujZaQdLOW&Zj^o=Rk1@>}n zd-1x!E7sbdc6AM;Zs79Z5bT({I1_n3yu|cn-OF6y^_rvV|7NBCCOLu}vecJzQ}4j5 z=vJvdhl;cO?Bp4pb!1{@66vWiZb=_w4`VdDWBkLV?ig;(Qw)EZ#@N6ZGhOqC5jb31V3qIE-9Rd2p`xR;o7BDoD0Od z#D5da6h3A0*e~+zT=E;SF;|EWi5I5oz|9yB=bJJ5 zF$T8G*a-Ixw*G#H#uLt`-Y-8(&+jy5H$TN!7vA4hxlH%DyjOfU#ea|P0$JHM)WDE3&R8#Pd&XGJcj%1~yH{wqTDvs(V??6+3ixTHT9uLFRS7?uE}W zaz|Pjx7T*{4X0lV^)9V-T(9H`e)SrR3}C-C_xaeQM#n_n9{xjD;< z$=ZIMW2^d|9VdN5J#>7F*ysE4f31N>z_a(>|6zR?IVXKg{+e%JppW?_=#kP};(LKz z3%q0>usi_%z6buk5B(g3SH|F#ZP*JP*bc|xyC;u(PH-JQS-`7ODvH7!6!MH_3J_cDh!?v#8gK)yQt(_`XC@FDT+7(7WiC_Qr~ zX0a!Nf$)lX+p!H_pw4$Xb-uR+6N4@bww3k|#)=07k!#pi69R8d!*9a;eE525$#bk~ z9~JQ7`;qQz#z3ElHSljI^M}V!b7^SL)Mi4jTj)jC_GZ7pLTWGN8=6ngd-w@wDEA9^ zp}{uR)lM(%!#}GGwr#&7*tWBf{w77lJNpGqJyR|FwAP=D)iHk68k5Ik{L77*F}4PG zU9GHZFtW|j3Eh0c9AH?CEe8(fxi}apt_jTtPh}Q3@%i4y9thGC=#;M@!yY&uE3hMb z*zY=I5I&YzBROMR$Qj#8&e%3`#&(i3wu_vx-Q2U zdcS?jS{g&=jqUT=OW?KA-Nd6K`L&^FVQuKEmlN0D%{dh}plj~Ip4?ZC|8lzB37*LZ zCEtqjf}=c}UI*c^p4vbDGS8Fdch@c&kFQgoGsa=;6OGfs;eJhHyw*)O_O{-=@oN8p z3HWXoG46@o({0UhDdYR$ZTsN!w-3ete}QpScQExLzn$1M-R{S;{aCkpN^D{*tu>|R zevN1Qq2HbWSBtS(Pa+4@@9ppy;1IR6?&#`W*CLgwp9J6s=f9Nyh7JP=>f-djC z#hb}d8Ask(7kOu8{O#lmXWA$OTzu%901PVdV@<}7H4Q)34E$K+nYGR$?tvew9Us)8 zD*RXr$st%w-q{lJ&X%c91bJsC%R_%MbY9dn3!ASKIArDtUqZfFF?tyFV)f*lZ3I^v zz|}@@m7e>Ftslub+uk$h>~3^S!B=rB*$3*)ut@fWiTCym9GZ$=xy1PSL*uWtI_Hz8 zpsRAuWDA>|vvgcxkA*Aoh48p#@Ds+417G!4h{6+8Lv@ejH?i_NUUzUtIAZcGz_-+M z2JaZF6?|#kWrgUOY;x|ED<&B)c`SS6FF)w2S01$9(}o-uUPki$JI?UEc-N__%zDOg z(7cHgRdZ%lHD^|BfOlyAgFK-)bPzA*3N6G3a0U0{%d+eQ^GYn|3V!Nbr3CMKmUXn& zXW6YKU*xQ<+v$sB!8bg?)(!CV0nqz$_Ja92wKvY0z9T*$*2H{HHCq{RhV|~8PFE50 z?=jy;+}~onJ5Ddb2H;R3J&AuM$Tl+<{D(TDEdu}jBd`%HtjS-CW#*He z`lSO4bnf-WPtEUF5#NvTo@(9`XB^R4nD5_D`#!?=#s)@SJ)>N)m=lX%ot7)Mn)j!2 z#a2(b$BzCbXWT0CSysEbV)Mxdx{x1Lb#Rhv$`{iby!hgk+a-M}mD}ZWbLf6ZZj|5= zMfVZB@lm{(0B82VzvfEEX8)Yrt{?1>pFuXY`bFU{d^ozN7x{|BD%tn+xL$#~=fdw_ zpCl)?WxBnZ_;i#xRdBXaDfLiB_BHn+XOg*ltQUnJRpfn^0poIDY~_;YkG{AXe{m+9 zA22z2PHxQS0w-=gU7ylbhbYbnE%lsFySpa&aKh-9##Us`mN}#O=D>FB_3%pg&NlK5 zYutQ8Xo`G}_14_ayZIai#y@h1Jrf)+w5Pk-`>WhNeMxu#-hJ->81Gi2+h)SU$x%$< zouON^=e{QCvcG0NFZ0jpV;LHgpIbSLTcEk;@Y$wSxeV{XPj zFI-;*UUQb|yRtLno6^3=6w}=5<}N76fZlBYSFT}Q&$6y9tgC_dmV-MFeM~N99)79xTuk+!c$#(9x@$5$oYBEjYkHP7 zJ!RJ9H8BUR=^bGFZQzT(2M@YAKyUL-#TuryVpHLJ{W`xndTy_#ukyEiM2jwP{{(Y? zUeoR7{$9w2oTe}Ew|F4EmXeV{_>YR=^^Kg@#Cc5g(nWXTyr!M_(|2)R({9dd+QWHG z&79Y?m-CuhIIn4+h5qCC+Ba@x9{KQ#LCC6NBV!qdGn+V*sg*OC+IHe=-^H0tyE(II z4`((tb7s?C&TMMo%%**Q#_`(^Wz<_c^&z86WpDJT57|eZKDtY_O^prpPmu$BM&9K2 zv&QE8C)(A-^H$-zpXkdSx1ji9XWCsxPGf)kJ_CZPKZ@)`9_?b@yWwY?A(UuFH$b0P z9eGeO+tDKfy~*QL{A4bAeRv!!HDL$u;av zu3-VWhVoTKd9SfY;8D?1pL|vC$XB&~9{dN{r}3hU+s@qcA_D`>vKL+{ za}EP@&TFbwpA2`6QyF_$UeQ>ObO+XGdKvMq)O?>~zMK2h?Dt@Uyvo{!{H!40fo>u^ zKlHK6;IJp}2#)y2nbf0Sf*w#zZTh9bXg#n-AM377K_63X$|zu|b9oLk*U_HdEt!5X z#jPa!dNEg>)sxr6-n=t9`$~KAz;3#|6n^AN0+BnY!Qw(6$GDCA-S$ z0q1FYekXnh*$ddhv01m(41O0aI(l)oTML|4 zyOhsb;DNCcD}+DYmMwZu6VK!@&wSU^-vO`XqT{9fyC3B`%UnBESu0l?2zY=RtcwGAEJu{*MxrhXn>XQWgA z6NjFad$oqxYn*$0*o%^R>R&dGJr`}=WBEfPvCBqcmm!B2qrX(%Lr=1U^f2>FUjr_> zPy4QC_4h6GH5-9#r*R_KZe|Q>9k)>Hs4-;EnK9^V79kej)m3czna%k8>H2bf?Iw1B zzd^n>KeY0ZerB<(z|%+1IO|wHlQXX>gOfMmS7^L~-g<-ZbzB*Yy$4@-pY;{^Q${=> zveL=r?&{(k<}S`*rZ=L|;lLyLqlTeRteHC^Fo?CAm}l}I<>KJh5oYKr$g z{wjP1+>LC2Uh43JJxP`1WCRi_u}xf7`$T= zbg}1K*3yT8@t&`dC#ox-hg{{H?>cF;HBM*0Hp-@h&)vv-QuD8XK4Q?%MCe5{px+bt z0nC20Hl0gfM!(1?cv8yW%3}vE$@f|79?{|;-t{uIJC{4xdC){`8~1vxU-*$jWsIwL zR3U@qKixl5a{N3Tk>lH|{xCWa+lh{dJWveJ#EMw2=JH$31^5kR9Q7kDHDl3d!SdC~ z#^TJS7QtY+U{K^)x|u!@!|}T$fbR(WF0HIdXBe#oPut0@XyXi{Pciq@`9-7BdhC@0 zw>IR0iAf+EW61IpjxL(?zr)d9!YT0qc(U;`u%E5Kv2C_!34a1>84aF}0#Eaba_dI8 zc&Z$&N0D{8zb+9S7Kf!hTt7cejA_n^UgTy z$r@#a44#Lt3uK{}=sDTS5As}M9W^QFEsFhnYj}>&uPHB~&WY`cwx2~t5lYP{UD!>drrzh2*OB!+vwG72Q-|?$#!4V}HuIe2)-Rj59dI2%U75*mwk%_( zjs;%^n?6X?IM)$dVNR@nyZpQ}{)YAcQ0r$dwcyl);FH#wTKnCsU4CNme(zi>uvTkc z3rzzrFYq!l2RwfMv#B`^519N|@K*TIo9CQ9rQ!{qrjA!VPx=e6!QJ0ev=+ywAQ(FR zX7EEn|9?h)>RIoPuG&Pu)mCT1L9k}(dyeLig*&kdSu znVt1V>?PKi^#{wAj%Dx#dOip*TZMht3O{)RenPx88Cwg!!&e&N1DoLq((QkJM!uJm2?kkS+ZteS~lMo`1tZ?A=lP-Oa0O$?36rwJ1(Zj$lhO zeRad|F~u;-$sL$ce73&EI=d^CAM$zLr<~=vtXHwWXf0<6n6(Z-201wgtaW?UnPfXgMv_E^gz5-cWg{)N^Lwdy~`BfHu7M-7Z0Q3p*I_cL> zbeyS=?WOOG6XWRC!RHd&5Pi>oMR~7Q)7#tK+&$=O#U$h3F?8&~zB;=5E5z>a#AiG! z*l)TOEcAPVeLmw28lF}SuJU}8{Di?K23!=d?}Bg1X5jlU^Eg$NS(6k4XXH;kx?4E` zUt-)Z2bI(Ojqy%S^O6d#wN7qxmuzTjE<$o-zm2|w^GeJ-Ete9zLi zR+D>mk7sGkx47Pie67N_<$oj;8R-dmCq5F2(i_SLEvlX~%bypLJoZh@3n>Tj0C^EL zhWCyObdt9cUgt$NJzz)BL*k1cP!F)N@s$raeJ1zbV$S-Gb2a%(+Tr4IM|Zy& zKDVwsso%AZ?)&h=w&SPRLmry^v3tm2+Kh~eEPOz@h2tW;hwIn~@0q77>wiyYIxy~W z#!QEq?;!GVZ#nU=2SefJayQ>@tnn$z-@9sNk8$yNn{l~nyn5wI4UP_1MA2$98q#+uHAXFL-uK^4C%3P*1%Wy2WZIZ(+Oia`xrZHRvJ<*7G#K z8UG7%-tj|NO*>heetQ;qq#OYG^eh`J%!#p6_uTtc5P;yhuq zr+ovT0uFKN9^jp!cu83Z{VGJC-cT0#oygzqDY+S8or6>P8~iOEyUg8NkMK%3gbqLN z3TjEl6L-;>rr5zJ>dH;eiYGZI=F%5*rs<`Ni32-lniA)Hh2AjL>h*`xu-lhEU>~l2!0xDhfL^E%&`vCv3BMLxIZrVeVGhUHvz>1dJLJ6)-W%1N{tKLjFQj;cW1l(vAqyPuxz>(x4jiv? z*ILnIt$I(yU90@(L(yBy0K+ePh3|i=hfvmzt=lO7w7_oyszh+ z-f-u1_LTG6)qmxje)TbP5-yr^{*FOM;K51Yz7zU6$sX*4H=Kk=EX(5a$W@_YWW~u+ zuE>g$;QKN!GWKKk?GVpiXz!NL=jw#^&fT|LdhFQ~AG2qvGhJ5U7ZjXE0#Cz#!TUMz z`?=_zbKrNIu?tgt?ei7jzy^n}t&PCfHvIK`?fc|s^yF*b;ky)H8|Bi?WSh7luo>ol z?!tGad8Y689qxXn%a_X@`iOkNKJ)|%nR^fUvOQ({T}-~*ptJHH_8G(pfSJw~dUwkx+2QHtH@*D8I;7Hxvs1=zw665;?_}w2IM&F%l{mHeX@L6Dsnb;%vA3?5#mA|kS z*f19-pVT?KGLEcUQ&Su$DFd&m&3fuuV-s#q`INW3+3%I9>zhlT(`TZ95cVyum$iH+Pyys(Z zOmuQfkNdy+G55#7yIT0FaIe{4%K{yS6bY4rIxAAhP0_I-I~u;?|_|6XbOsGjp( z<<|dRW$J&AY(&>-K+kEU)?iCTGG6gdc4AvacUT}${-+{IGT>3qNSNiA3 z0r(~U%jixkWP021?l?R!Ywif6^WMn5)R^3nukFC18eXQjo)6xjUdulCgwOaw)kj0Ms~!A1!oQ>ZyOy5M z>TeNQ3H~B;j6U`iC(4XBFn!f&H@MpqZo~47)ujFHxciK}aeAb3r?Os|V*D!Jxp^Vqg1k@``Q=Y%4IH~BD?C;BNS8caNl9LOm7kfO!Oz%nvm z6`zqU?mBf(B<&vYntvbbz`Ue#gl%HNz#SfE;NBOw7pB3zcCFw}{}-+|ScNSod_^tC z{}Oog_nyK!`ZsjL-S{T)_n}+AGvpuXHAOF`wP|pNuaE7^xP`#^xTkN6@Tm6da-p>+CG^!ULndgyQgT=8R(`40HBGhDtA+=5@Vxfq7(LgI7kWY^*U|GByS?O} z>1jr+Sg^5NJc~%b@idS>)qq!5g#Sjal%!At! zqtSC#(lRlj>jS<0j$Du6AC;Vl;v=P(c@jRdJ|)*XuBX2Od`WqlG5!`mQygj<`AW(q z5g*pPWcMe)qf%sh6};nk;i}NF{8gbg#uko!M{r_)4|=Snhu>@X>ABbd$6uM_Lr2lN z2HM7kFBxbbE*)q`y5tABunb7&{gdcDR7=mul;3=a;E4_+A4j;>n`~#jZLGVM^`p-a z3mYGJdxE=e@zqS8yFO(Tb-<7F(`6^0`?BU%V4yX%11ocW6YFHn+pExL1cNYZJ`UeM z#^0*#?NGc{{E4-UV{WN4k|Mq(J08k|{@CA#$2&OvDsu8~+28g5apC>_A?q};6?C^a zb5?vW!MwBGJ(iCC5PCvtkFy0k=B<4`K<Kfd0 zKBc$z7aqB^g1&02Uz4HRo9K~`&-Et*;Fq=Kw&oR!;kPfrr?roIBG#{U3MYk|s#nsy z#ZxuzJ<#|O@Kdr+*9P$P8^pD{xb|VrhA+Ys`@LO>zF89ZhT;xBmoHWfHoa9k&Y^F1 zp>O(#tLMNMD>m7Q!W3WZ3yl^k-)jBnrI!W%1s{$0;Xi$W{3r3?i_AAQm)|jmTzE^# zWe&f~Mb6~G?|QrZu7utW&3B34_3o(PI?C$Za+F%>segI=QS!j*O480s?Z+CGqm~Z0 zX~6B{=Fn3HjUul|uu~76H}U1iM1$ZmV|EU?lb$4sEsb$|T=9MJryU&EJ5qZQVg0g8 z*1&hyuz%(p6~31o<`oGgT*Clypn$C$X2XDDK@Qcr%u0Mth>pR5?iQn~|&J{fD3!ga# z9`<$YruE;1_MVWA4t{3n=zKmEMCXz|NG#RpgN|;uzFW5w-%8i*_}r#vs`*~Jo%BIR zw>$rg^ucu9j?e$0XEvhK`7f%|Z66Z;T(?g5t3O`cCNQ}94SGY<1E+gWU%uAeQ`J)B zn|=K?vPk>im4zRf_-H4vxe=LhW0bQF=^H-}T__9;gj?e2Ly(32=F&T#eoKRiMNGJa zSPW-lb+Y%)`Kco_a@%i*M=M?!?m|cLO-e>{CM9F}lalemNy$X-|y8EekMKPq5q1j z-Cjypn_f!iny)rJmQJ)#>$4B~KY+dY9`kG^qC;4r#Om^vl( zhyTahuseanSk`=gU86JBH7K>N36qkM3f485bxmVkGg#M5)-{WD&1PM5SQowC4=-e0 zi&@ta*0oIQT1>sq`E||iUf1~^)8~98Zm*~kcYP&Juc#R7YGYj;tm`=Is%@|nXEN7? zE!{af!FgwC>$=BXm-xay*XJiWIQXRt)9d`39Gd=Ed#wI%qu0i>ne^)DK-UJ|`W*E7 zSJG#}-$0*T&;9lE`GKCPhd!~rF5*YoK4k8B`rQBC#pzRfFoYbdJYcMPnv|Y4$MSuI z<|5Ep5j01f$;4H4&&?UQnb{-o+vp00=Jr5y&E#tBgPBn?7i6ZzgVDi01Z8cW5r1_lW0oB9D6Vpv~y<9^fH;Zx23c*=ve9N5rcnyU{CR z@U%Fx?HB*f+<~vrEs)o9@ZW59?Yoq2Cmlm{aMv#R2#A-(u*tTdfA7JU=i$Aly~p<@MZA%YCR*lI?R=;cN+i4`S(b! z;(s>&4?q5DKKIiz8=yhzjxI`r;q$)C6aR+(d67JV!~AwpKj)7aiVEB6$GB+8k6_b*&TK)OyPv#(f1@Y_r zgz?LL;it5Zwq>)&x0v~|w?3FdKeSc-XhQ#H{ClFnoZpq-cY;l=bs5JI)~t+I^wA(S zIJV=P`KF8un2a{xQ87hghI#C#Qa%^$%lp+FcwbW2*iT`yHhJC-AGIr|i+R98Vpv56)!2>TQ}Yn9CJ=BABw?Cpn#hbIWfL zSjd`<_gir9e*qrG*lnKyUwh%1@Y29RuH z&ZfX{pSd2TW@&)mj95B(V#v8t(--sEg!Llpz$>t0UWbQNy&auld=~x^md~{NX<_=J zz%&L-cPsg)a#|E^LBC-Wm(zhI{vTjD-t&2283LA$ahgx^)g8b~_N}qkT*1TgeFb97 z88{0(lwXAVX9OOTfrr48Sgefu5rM~K;LP_1zHal(l(m9COkfts;3~2$hbyq}1M_0= zMZbp30p{F4Ciuc1D?WYe*~4Nh0&f{lfW8FB;#+W0SZWze#MbjQauQ)w13= z_k8&MK=Mlb@&VJ|s&sPv&VBsDj%y76aPc*Uf4KS@!#@nqUUik`iJrp$Q;kn#Bl=kl z`q{H$JN(2IsWoD75_1#(!4&a{v|sJ%aIE{~eRq=wtN0E6oZBzd#!glF(xLHp*k@W+ zSENsa*Ho0==nJI~ttpMM!KL>gG0`V>O1{ZjVJxnv? z>Nf;mChr|?t}B^KQ^H(?-}I~zQ}zmPwe`G%PZs+9&DUuU8XwdqtNV01 z{SW2cI&{4jZ4g~AsfT{PIS7tq?Tm=S#jcwTI0`P7CE!BvC9vONJ~Jq+Ip0v)uxyEs z8zT*!?+fc?nIh9ideS}xj6W}M`h>78kay~V?V&+nyQ~+sxqkz;ui(GiVL z(;tAx9M(3u;_yo)Z@&Wk4ceRTX>yq{f=kFr)^LElapBVzKUOp}2O5f(58OLtp5(sS zRtz#v;v-g^G;(5)bv~8zF>hjhlf#)hp6l)8bdv8Z_uI+Q7CQLj*CeN;Cw{rP%stu@ zsyE}84a6_`Exd;L<)?dYf7{UQ4`bg8%{>GR1sIi4cLBrw#(p2+DP_oA z$$gPNz9@Ytem=$XbzmCUWx{hm*F<6;n0KG4*g8=XwMmP z_5(Z@B=NuAYJBV-R&OzFt z|2-7}hw5K)>1oGB?KaNwW33c3xcj5l+3#v3_2)#HuY{l)l_7GQrYgq9Ye$5roeMV8DnYWJgGw6TWMB!6eUQ44%?`Nz_8EYA1T_tg!dT>ARSjRC|3yy~w->0RUuR}NSczv7oJ&-qa&nEj4H@1gp}u3=HOSaR zRxY^J;6;zN3%>w=@Q#Z&DP4>F)qKy=+b-0?ds}*Jm5c=5%l!-W{p(gXsrj*NRu7N( z&fgfz1jf=IuYtZ=O827gsa);bdUCZNqrHJ>s9-jJ9cmF35ZB*M+#(FT>!>RrwvxbV zh6!(p3yW`|nmCulhP!Qsy=yb!l0^Rh^W?u}U?+FqWqY)cT$4{D|0GXl^i{jN(S?cDKmQMfcN{z4DKgD2Y*8bBQttsaMED-yM=Wk{1Y1echd*= zdK+^~H)!+=Jv2Je^DD;Ohep#A#>V{zI|iXq|Lh(bJ#~EGwJc*kH-Ee6qJAj6Yj^HFAbv(miQDRkODw%_sYaMD|XQGfElvH_UM> zUk|h|`LVJO&dT$gV&YW%ePTB+C7dZTGo&0FOZEaB9>rRv&w%8r({?F+n|sRU z2oC;1`rtZ>wtDsuNL~{Bc06(VeB$)u80!Sax>QSwHGR%jQm1LLVy+uBjq^y7nw^|Q zvP^T-(%X?(c-AW&VGX z@o;54d#wEdQ>Gbob3bdQ6`x@g|Dl{`Gl{t+K6{<{>^-u+(1!xxI(UV7G?P=Zn0%6@ z>>q$<${w+k!^n9DU)A(g_M>Y(&*P6(^8{}HP%ODgQae^^ts8SchTl*2P)jX8@i|16 z7C!Dr2N2s(&J7PBMxJoT#kE!S?zo*6vuqlLAu)UCJ!#&>F7i!y%x_zms zJlo85sIqTc%E=A*j@YQcsSm8VKfN8^cGB$={Pef(m8|nqTbcDP`xt)TGB6(z8b9>B zR`NNgHd6Mw6iO{9=-kHIiKp}R!UGuljvEYIuJ|+89O&d7c>5`QXAO3j@?EorWdEGR z=bwb`pMvf;LigW+?hkSnL)j!-iPWcVnrJI=QWvU?b9kbE{m!N%T1w49_LT|UOFThp zhRVL$csi;d4(-1Ko=%b1(@>=PQ~L&Tu(^g9>tVLJ9u7s(O)o(=N6GsFM^W%2d25nO zto&u*(~v*zUyc!6oq*Qa_w2t^s22)dCG4e8>x;b(e*w_m> zARR30rGtfo(1GA~tKe4gf!Us6sw|%9@PX)c~VeAQhx>d{vKOO6AvZrMha5wpuYSZu|_39A)_>r=i&%pDz zy=NX5jt#uN1g?LCr^UC^&hrDwUy(hfHT~zZI));b$z`p^?!Wot<+5(Ja#{Z{j6O|X zw*7i-j>@?wk1RlbspKms=FJwT8htgT^wZane)DE~WRx$iFZxt_qwf)10SngA*}T!W zd&X1mpni(+-FB(bAbg+S-%o&*m0Pa#?)_?ypQ=Jq|oUR^tTbqh3m#di2@E`C_a6AvJ-Rcz6WLpp$&$loBcSnBWyzj6@A zZ$kI5_DskaPtBmV*+s47O8(VGKJ6k0HYh%b1y_@=;QnP~(bcZN0{ricQSy-gR=)6* zU)i?A)9V>@rZd>df`hMvgX#DgI`I#5B45rRUuF%01DU_bf@92k&*^90-u$zlzt?Tc ztO($*J@oh_8ZIdn}7E7+mBE)OP()f|MD@OznQ(p z>V14*Z;hc2*AI|2d=_6o8#NMC9x-(jq(*|+)RrH{^1<}yf024uKk0=2n2)t*KpSLD zcjswcdH7e}V&CEP&p-Y4>hJyhy+t?u?!DDdpLvhD#AKh)beYRUaBj>+zxnsf9h~3u z*6-fC`QdkEPBCO^NlP9%HpIl;wAXUu({Jy2>1XdfGW@NcXSPGTZ}E)GvyjgUpUgAS zUtrB|ARp6;g!#Sx*5Ewr#i@OH)~|VfAf7c4{Vv9r8c)9})&Tv^`yX@*XkFI3EuH-h z^dD{G@Qoqc$$lhzE)r(`3 z&Xz?VJ$qM<;k(eXV)ibj)vdUWAm>qqAh&A*iEwU zQMKn6U$rBa_Z!+9`qB23{7h(1ba81jzP<1{V)0SU7wOh~ht&SY+dRu>!gso>4Ba=1 z&MUg_IaBv#EH)JjC$?wkb9;JxgQDxj$6dLv`}YC$IrgIV>T~M{fu-y>3huVM9LV=j zid|1a#)nTzY{>n~ikDc6aXP5tchG8>b891x?E)~$Xr9K z4Y~^Odmgyo4lPZ9mL@_=!uw^3L2N<`% z!mi66=|RWYkDa0a^kS_=?=Q&w@kc0IPi#J!|5&ave{d*tj__PVUDBszM$%d}>X?4vt@A7_}K6`So{#k<>w*As_ zWDYinjN>hIrZd=uUuQgL@L~TQ_n&qw_auyE-ymZVoNr<7@qFk-o*&4bSo)LyKU-%? z!q}eq8)N%g!r0aiGPW+(g78GK@6R~w#@Rk6G^Hz#L}xyaT{BA?Neh}@fKDy7g+`%I z=ip=MwzEHPjaE{}^-ivr99K2heptKd&-R>}gXqzDs5TlBSgnWfBB^O z6Z3!5U3-Q$PN84bFVS8OOvCRT!!P}g<~#f)Vp#FIQ$Kpl_AjD`VOyQ0UPSJ_e}z$i~>tC?$4N3IROg%@GlI)-?bzG3Fk z{;B*Quzny8_3M`PKKjLL2XOg=_A0MV`Ia)%x7Mu4wJOuC}fBy4vgRb#>I=>xwnp z>w0(By{^-{?{)oS4E)w0&#Dbw&Yj6V#;Pn&_08CB@33DHo+|JijxKTrU1T`ANIyAw zz55ya;njz>;v23R)K|?u!-5{4>b5rr=B@uW$ZuWu&2!Bt)@FB|ppN_1_}j6J;)?pMfr!!%Vx|cmC;T-ah{YquyU0 zbGvnj`|(+PS7*PfLVQjVy9wNG#3;9O%_U!~^mc;|Pvc|#H2gv6uaLO@7gC6qK+o?C z?5o`@_3V_Miv4QEou>^lzkT=yx8NI;`h|J3w2~Rj=Q(_X1@`O;?PjgydFnY9Tn7xs z8+dFHJmMdG6#pQ5Ml06O#D9i=a0dQCxwmm|`3JY(V&M4ew;=c6XJ_yasw+N1wdTS5 zVR-M^$2qU<8|)>!5&z1Jd7O)r8GC)c_z|*W#awUJvYRhbKVr>?Kio9Ko?Vj*PGr4` zEoAsUvJBtHHugRfhrN_SZZPX7G_43(fxZj;6yJ-v*%x8>#Ww*%fu)Tc`20!#e|U)| z8+iG~C&bHZ@Tr05?#!c%9hr6^G|h9KamJq^HRmVBp1)7SvxTP?bTD`EO_bSne9LN0 zptFeIV^5j?Hsw<&M7E(TvafosXX$h^9~1c5#0~_urk=RD$L%6ce8=?oLmVFK_cNz#Vxw)ATImzz z>?>e+9$3c1F#>Oty^|8_cjG(L*v}K-xggKI$2kN-AM++6J5C{=X;10j$m*F7KrgKG z9pvPP$unHRwfh~rekEkcl`#GhC*$17IO{lj&Wl!mo(T8s!Ne zkP{ha$l`bB3akI*l2fxMg#Zc=j1uyvtp$#V_8Q^eS0%m)0W zhKS5t@PaIxg{)M$`4W5m?7;YF$&1U$$sL3)<8?_t_>?++8grHNr$k5g11pJr4VoF8s0AtVdK+smcNFyiSd(YTE4v4q#==ix z?bm_yUZvlGo0-JD;&D?s2ySFe9-E--SjC%elQki}pHIk}{`ucN9&h@GLB`SPzQ3SZ;w^D{q>LqxGp)YH zc;s^-GVUSyY_^~KBA+W6+dA}4%Qt|2Q7Yr-nLK=)1?-&`U0B{f$k>!DsG8~d?;D{h z=BDHTbNh%Ks7{ar+~)%8e)cT%%8q{agNzsyKezShtLKjnypChP_)_C(-{QuzuSwmA zvF1Lhu}1y+rm-rI*k6I)Yc+9#HTad+;!|$g>WWlyeo1MHCkn4`!=`$J*!h&Mk)Ah! zQRZjKA67Lg=Xmnqvw7^ptrfkPS`vpDa}Zqa=IVEh^!`TO=XiHsQUs4|Ba=eKyYjF6XmxmXXu@_v&+!x6HhLk!uWkl`$B5 zbFg=J72)fYx>>`$p>%2hrr7jwfn8q+jaS~KJ?h5h%*C&;03SjWA8MrwyB>MH{u*tL z&B~Ji??29G%^-6{=d||!NG+ehF1yRd8Fb&5-_7;4pn=b_*OoPAt*`C0@m+a_@ra*U z?R{k*Pv|7i?bm$4I`VXBOX??zuWur>wG-MBzh0Hd5XVGi`(7zFuhqu2`;{a;Sf8Ya z8j|$D;xu1mcaq+^H%SlgPts%f31e&0d@;^kD0OO{V0xjdiC4zD4i!+(mv;SJ#lJX@ zJxLp=A@KCHi?uQawV#-=#yBsdVwkO_qU+lyDgxT^3N5`x^oxhlFMftzb%k*}JjV^4 zPJ}MGIwn#p!rl1j7qrIJg|^0rXW1LyePy2h@EA@1H_kT;Ersu}hg-8x_%Ao^|ZUdQGm1M?`M88zqq zRnP#r*yt-p-A(BAB>5lwuIgz*tNzaJlI}cYuUw(iWn9B!ZF*}qbiDxG3mP}*Q|b}- zU%#!t8lH2b_;Ioe^|zpr&as7hw{5sOFE6x!8Vt~gqG3~B`1wwB?jYk7x?vxD%Z4hu z=fkPc4gMven@-l7zmn(R>p^I}#W}nt^Sy7M$Xu=+UsiteA#V4@y7R_i{}B}(%yc)Ur3(L=l7K~{@t&?)OgQt7ejA(#@?0cJYzpdQ=YMR zWg0f*ba>QE_|qKWi_}Lfn5W+XUzGDOr5+-CUiVD-!U)e0-|49v;7^N@ zk4un`N1yVA(Rl)lfw7;}s&4euQ$tnu_%l9V;#mvf`-}7qhd5g(s_I62RJ~@#A?F!L z?SMBgc9#UBi3P&U1`y)I( z^&M<6JNXKcY2+Fk>wV7#&NQ>L-XqiGSxpyO?Wuc#y=l-X=LLe7Z9lwNyPeo*ev+-G zjI#jC4r#}2oV{exw*wjCuUWwPiFa^*;{3*mqqWBTOk3l)RC}Y;L`3gIZ^ExrX7dc= zOb>PTL$O_*4dYLT4+Cd`+a`fqdKLF>{UH28Gyeo0-DNk&9z>>pm~mYXEH-Bo`{yh) zH!xYctlMa}T2t*xd*7tJF51b$K0RNL9Z!9+P~xfu>G8V+P~=&wBOZa&?9^o99-3dgZbblGKaG^!JB`nrs6x>TMB)F`!(MV z&N>f5k3y&2-KqSiHLj$#Nb6R+YbE;lkpq)Ft;OV+lP})7K+~^Gg9eM|`Q*B4!8~8< zbL=Ik)qF3|&JpOifpgPe{4(da*pgK}7e93l1LV02e;2xbp1n^SkO7~c0$tC6uD@*S zOV{_<6kYGA8lq~gbo>C>Fw;%Go3XFKzZBZL-%Wou`b(}k0<9l`)?2k?MeD1Ob1Bez zwEoV<_FZ>1#`Z2~Y`$4*JUY(S_{R12M#o8xnZN1cPT-=M+3=j-d_M zs#-ZF3|_n*Ul!*#uAo-V;qnOwnua=RmQx2u@q{LWC&=2}`1Hlv<#Fq?tJr4nLt=s- zW@Pu!Uw9pLJZ>%0+u&{I;V<#N!Fu?X@XWwihfC_ghtSc((5lQ&cxAN4_PCRG;cXu0 z&G_7JD^j}k4tS-UD<@|)^wQNWo?pq_S2Oq9?0xC#W^$Rp{SM+j!Y@mhdmDUJpsQP;tE;@iM_=Jg0qMgJ?Hl~mVenIt zTg4i=OU!pH^UY?yIm~w~^IfAoF0j1^*edx{?B=;Do~zx;cTuCXA$o_ju>w6LT;tZ0M%#4p z75mjbNou4tIXvaS(!bWtxX}+vsEaK&3iK3keEXNb|Htmy?#h%#^oGr4hi>zPpq-FB zTY$dPWb>dGpzo90!TgtT9-JS3XG16L&P9LWIk9srTl1qiIEgi<-M_SIPB(E5wqN9V zE-=kEYXi{U3dRi<_aO;xusLs}2K${DJ(^hD!zRFnN)dr1zs|k1)yY;{z&-CbD8NfRqI-acg&|iG5 zd(pr4qkp}E{&f)js|o$@WT>O5)aVLz;i)59_tOFmsZf~tmkU#ZExhf zpBm1!f0jDV&$;z?Yu)c$@FW; zRcDVz6|q<08A14moE04azQOAGupR zBz1+Za|O`HTyO=Rf)!Q1H-NGAesDE7;F-{H&c`#`$R&O&zGHZKpS;yVd~GwZFJ@v} zSp5_bOL6n;Ip&SOrR33na=Y*ca9(7tw;VVI;F0H+YC3knW=)&n`ONkBpO;cYm3GF{ z4mqzz?xkUew204Vc|zQ)@;TOWwWd!TUFCCY2yBDC2yk zWbf*ise?s4!wQpWGk+W1)+9)}!lz;ag6(aep0W zL2!Tkc%kb!W3k?q-!pl)g?9tMD$mc}aMqX9RgW+yvAx8u6#J`;y4+>A-r@PZn-0xce1d;ul?w-pYH{c{#F& z+j>TDAo@e%yMkBwEdUJ*UCc<pTj9;m$eAeY3Xjj$jF#Jj_ z--Hgn3GC~WjWdy7#;+v0R1h8L%J;>uIU~JL7(0K-QZr$f7ldHz(gHp5TcOz0oIuq0dw?cT5Hzo&*t%WI1pPaOYJ z@9 zyb0eO?nX`{LjvN{MxKa|Lg+5E&aJCG4{M-1K8sFf(b}IT8t;mZ?O((GG5iso__RAq zk$;MB&GtM}KK=4)Eu*GO=qpS4;94yIq~EFO2cU;e&b5j~rQiQwyL#n%&k4n3q6J!C6-NF91eJ$gt3ddM#Hkllt3@{RAt z>Dn302Y*i(e@_H|Pb>bO=yT{Gwdf#Q(Lw6aLF&;#8qh&@p@Zy3{{YuY{xuo)cjJ`4 z_IHr=>4b+(5;;R{<-F^$UEsCg)F*bigERif4>`LW7|V4P>rbxb;45v}JoWh@Xk+Rm zZQtBsZ~nNVVaQgAGc4sigyMqi%BJ{vZ= z_@3fz{c>#mHf;SMx?^a8vhQ2UirDzAS;^a{LU5@cXHZ z6&RTQm0tKI_*dq}jaA_G0)CZO%^Jih)F8H-HHgJW7VleWpAJvpJQJypB6^0{u5upb z(p%_vI&zG*8i&66WAX7QdWDAD_$+llgpLbrTG!Xmi|pzQQSJELVXyx9p$7Zbg~Bta zxdy)}SxU{cH~!jPB00%MKN8DIQT}~&CiI>pPqFkzdoRF)1RgIeOX}%QbQ9$};rBKr z>xMvQ>E6FEXSu%4b?a{=zLW0#BcFrBd78NXkneV)do@72-J`Wf@nMwwM&3_BURgXm z8(xIHk@1}bzMRcic(%vhF!^oTb$$75JTHB~z5W_)-<6@S|MZ!q#YfFozeb8NktrCY9sqKL-XyWC6 zq#wZxd|hNn1H3sp0AClqFfa&Tf01`>^uG7eB9#ShEL7# z)mCoi>?mk43Vm*ePhXGhxA?RTcv7Wtx1e%HUhK#rHANq54Q`hfkGH zxtuyOwI&xmD0z(LOS#tIQ}O5g3XJXMIlq%==fy)sx;7De>_+s1DQ;cpSH|`PcxywS z5Zqb3{-0!gAA?tA#*L4fHPj9w2X%^u?Wd`l>B%O)S^$sV!8$5}AM99>gm2TR)gI5k z#NQb}A2>;ya(#{KkA5w@AkF(WpCuM>i0gBFmutrHWW8r^G}e0>I-TK9F#VZXvc5<5 z_%odk7wO5=vP^lbNGI>F>kZD>@vqYKdTfOd>)^%IDqkCM4&-!20AJ06@S3UUUIn%x z6{XyZe?9pTyWT3-$GAF@n~(gp^0_10zkGkE5l7f#og3zSnA+cNqzlf#Y6B<-)Yl1Q}XzZp_;6vJyz~%{kO(lwllsu-cfjP7(Tr7^?iNq zZvu1iLzOX>vZ|}8Kd0$=*L?fLh8sj@`J89HM1+q7 z8MpgqZoOy^x){&A)AI~_i{UZiZxq>71iX9tSfuIIv|mR1%aM1%#XPsP%J+27yR^TA z@9x)hH@26ijq#M?j|wvOdg@(?J(Tz6rP@P0FS+F!W0L%?k%xtzjM`TdnU_UJN`~YZ z{;JBS;^aq8m9GN264@btioS}Ijd(?&`14Zx`11m<&;~gl>MVr}o1TgOZuo``Tis8+ z^S~=rzF-c%ZgM%otBYKbiXzw9)ta95Cwvvj+M`{ZX*`KYwcBgp`i|@SN z!8(w=lMe5%-ndkI7TCm}CDnE8D*Te8@Jr@2cJ0Py-phFRGu~GiZ|F%^q{;M4?q}WZ zt@4S!FZIYQpX9KamuoFJpIt3BGJUNkA8eFcawDLJB+r+rotdP$eNOfrCA0q5PuAwh zvl3UH!CB;8__y--JWkb1BF=5%?QVH56Mxk`Zr5S_63Xwi-0cEyZ_cp0-~I*pxYAB$ zvRi-TZ1>CDj|@W_PVRRS*S>qwg<5MZu1BvVhd`(HsM77_^Ak$H)Vv42$GT@;ku|_h z<)Tc7mpHxFIIfQy|KSnjV#60Bz){I~{QFAAmx=8*f*5T!|05ff?RG!@Q|8jPRnyzS zRePPX;r2Xa*l>F)u;Dt2ZNAt7o6n1^FHDg2qTdScu-UK;=6G837$^Ojvc8u;CB$Vn zFrU_XWPKSlM*q^c$o#3u{JXKu?#4E=X+spBdI+6+2r|E8_hRIIN#mJ=UuwMRGrclj zdWl^aBko#!-pATox;_PxmdO~`&PvR}<3PWD^#K=!wY{k6}UhavlW=aC@$ztrD6 z&;jz`v$@~OJFrdVMPzv{kB9$&&+#MOzPwDg%Ez^j6du7D3*bAR1_Y<@V^teK__vZ7 zd^d-_#1|woBh38PgO4ZCyIO%^)R8>38yQ~2*>cg;l;)k8Db3QR#Isk4txS6&gA9L? zoGEYkM8>N&B_Axs+e24t-1?88r!e?Ickqed--+CAg4-$vfWKJ`>Fw~gqO zGOr!bnVfkTPiqS;92q$Py*NsswRUnKtaTC=Sy+cn%AD3iZ$xt9l;4|F$K(cR<&Pom>(AKA;_CI~*6cRW6m@iQiq!zOt3BYU=S#!Qs) z2Y`PYuy1!br;0tZ9GNmDEv-2OW_7+XcztLMn_FcZ7$19ZeB@Vo!Epc#~~}wy~52ra}3$B85%)P*rsyU zW_iBHzI6wDIdsr`uEFh7&+c-o=UeIjaKbx(PrZQ9L8;fGc^uHM%q`4&5#DLtUFDN8 zw}~CVeA~cD0Q^w@P_3UQuzMT+@(mh`i0;_byZFYpUS6wXd(h_97#?7 zC{5tsj36h&;N2$p#h$QeBF&-+K?{Q8T*hd}FYx@gmL1pt9X#SsH-ZF8bY#j)e}>iVhP+hiN;Aj@5*Ybrc$CM#nmaj&%YZtNspG z=ia_?+h2`F#{%DhI?=I)Hu}MX)P7DK9j9Zlp2!*0HS%XUHO8|&2_1`=vW!`DtbaU; zj>Y`@>R6fRSXt;;BO1FlqGQ!C-e(!_bBx!Fcc?Qu!F^lZM|G@yH(yq?F70Y>7y2Y; zz;-Wd3%$I%dl>wGIR6=qU5vL29j1#hccBZC2e#)?QwFR-26Ua%eCIA{zAWCAcvbe7 zpzE)QJ(LxDRoO$?$iu8Ya^Q_zbPoFcTRO)oa$?TH|0Py+PH1+k+ea>#o^`KHpGb^q zCvspXa^L~GQ^^6b;gZoiTI;^h*w*lO_!|~AzHp7!_~HaxqxS}TqvYjVazOEjGKc3a z&Tp{V6<9dGGS7wHHru(fP~Qn1B`;?_56OI-=6uBdHFA(FIq(B(K7T_F%rxf{VLmGV z%AAjLrH!-fwd1G0HQ|8ppQMLYy29)aa{$vM;K}n-50cZngS~O}sm|u=Oh@wy__5IW z3gO4BDL?Bez*=&Azwg=;U1SRT-W5+~{i^jxzq0-!z%s%+t;}2TnKckMiVykM|ckjQoTt_!AQI6C^i5&iDxJ)%2=V zZC~pcZI9&Z=Hdfhk1snuX5ug4*~yw zbA}8&PW)rz<-C!Ztn<0xZn_cUR%7>Hr^b#=Q!)u#b22_x@ezv6JfAj=`HdU!nLM76 zK13$S)tZ~ZGtJx(#?y)q;X<{;a~}B`pVudOtHL{v;!BTWoA@i?bJg&q^!2`;|o-{s*5h=`5W-##Zq=JT?dTkEOo9>0>bb3ubeKN)G-$Lp+xWfb-uxX}FxsD^ ze&5c$(1XHhv60sqmB1}GIn`(9Pem0ZJ+hdx8ueyc^(1AKW+l;vNpzl*=YB%{@Uf- zV^w!hV3IJ7^0+pWO_&Hg1TF%HW&O3sIp+hl2ZQT@aewW7zTfr=df}QdK6k?Ng1dOU zL?%;5aT)7A7rl`6AI_Kco)p^zj{Lc-v&pOv+AIa0%Ypq3GQJN}6b;0;lSps!ZY%E| z9ajX8D1=A2;SEmsL^6DWy%_Kt;g`{hDxcIiF>(x2yx;l|p2V1r9D+|UCgDlKALMu8 zM=IY3yhYVGQ)12VrB?;V*!~lYoT$x`+qwcqNeCbm?bFW2jq@Nu| z%vj0N7sOY>9AuB5;7?*F*5{Lw=dl%@jcjOLg}%PZO&@OhsPdhz1-IanErcsudrGw`vu0=IaE6IV{TDy8OK;>t1N${j{rd9xK)J`FtxkBZ{=vuI1&46#pl zKm7-xxe)Vdz}{l?Q-^^R)#oT>zUVzM9{H!Xr4_sv40?!WO)C5LhsCzST}K~6t!og6?{gRUmNoidN%b$g~#uFOgv7a zFNrC)$y~slz@B)L?Wo%EiHzQSby!{Q04IOZX54)Y}9l+`$H%4ACa>$SX&X!g(^AGU+ zDdMssgI`l|*<5(L(3sQP!t*ND77s6U+83C=;$Mv4s`-{md#URudfH9B<4Bd}5x+$H z0_KSR8D6O2gGq@EVIRhu>`QGP?e_f+S@wHm*;~l6-S|@W;7jQOh6VPF*bef+rVq(# z&KQx=+?nV0J^MlTts!95TCM44SQDo!HT_+5#u&8I0qwZO2H>pf#n-a-z`c$27K9#T z%}HFKyZb8sM>Q(FO3tiq0AITp*CMwb-pjR;>wd1R1I|rkKc-t3+cC0`J$=aFGSLfH ztGvLGauuC8(XRRLvEW*CJKDGOX&H-*L-yr_fkgy3Je8Exvqvl0h^=n!_0N_dm;WC5 zd@uX6G~~4nd2Qrs_1Zb?9m{um+Bn}rjm7Mvr*FnC;}#k@x(z=d^LYIyh58%M7wT_9 z9sd0xe4d)E85pO~>(|4^k9%okc=p8buX z16~|kXUP(58G#>Tu7sy|5Dz@M&Bhp0YNF@=^+fb$VkGz{Q*0?UL2%bGPIJYt*ATQH zfd*TvX%E^DGtYMB+eVvZ*clI!&n`46dClRuZvA=INVtHjxkf}E*#OOlD$uo9Bgs4` zpOsvybL-iP=8;FmqKhTzO0RMxD}R{Ka{)U0OXy=OQytClljbAP@FaAeD0q)9o9#IT zjUQsKW(W6o2j*};B~xgxyRmT45NgGcvkG&gYeci%kR8Ka^Y#SAic{U*Zdv zHiXu{B(}C%k52DG=uzmQkgE~<&G6pD=UmGNpRVba4_?{hO-BCilm8m0FK2*{Y-l`( z@iw_#x0pV8r9U?fGvfXKh5p=>(N}+V*!6H(rpw<=US|19SESPBO1@l#En(AB$gLEa zmr7n`8}J(IH|k8Kktf-{&ZcNeVw?{_Q@NMz#yW$hJCtlm^SZ#7&}%ToZuoD2t>pDD z0luN`LVd-5)1X=o$L zoX#NkI+1&4;U6to#Nx+jn`Z<$$Cdbn_!kUaPionSeKCx6Eqx8AZ}2}++oF8f&w|gn z_!e2uQTSCGbu`|9cFxh(n&tQosAX0NkADoFzlHpZI$|fwsg3yun_K?|^7fm^+bu)f zKI%utcD$mMY#B1L`41yTHgEY4YKswDv9V{y7>A+LgqVN)IEKnNfRQ2VG;jPk0=3XI zv@CVno@Y$#>)6b;BE~c_R!FW#XQk#N_JO|4UPfT~##H>Tz$DB(O0}dKCvXWeFX1&x z_A)nF`^3!j$Qr46MZ4yj{BR63bI^D$lUm~pMoxD@JgrG zT9XD3P4+%(_;C* z&`Pe?wB{Gdr;2iIc#JE2ClxBgT4(5Tfwf%G2d;#M8?}h?GmLAQaU~CQ za~^t^s+AaGEp8;|O2)$&E3v2Qkym0n`R9N~;3Q*~&xSoEa8vfw9;q+!5Oa>N8R0+{ z3BHss1D~IaVMPx0hUj}`E?344E+5=e_Z8MYi+) z=sH=^ZMs%Wa&2$~>62+N)zTWwllJGQ#-#$ZGCGPa4#r`|VaVbXudLM$)^!ZJdl!Bnw!i2y?a+s;aiJN}FCHL&UhJ6%$ieTU zlT0quA3%l(&J@1Z2~P%ReBYq@5gDB1ZCr&N9>;gD-plod1J4!=EN`W z=X?J#n=bW){Iw3Bz)99v5O`X4jwN5B(0zY0M%J;m%&>i0Mdz^rF1z{$BK|oM+#kkNTbGS z9l5N?trhTyGR_(a&$anN1va1fu}aSrN*o=&b(5!V3RT#7CP3^hGM4xxaBZcn!^pd% z$h#N$Z71(bEd14Ktt5?_L($B%<~ICR5&Tx-3y|l{i2~aO){ofTvVKC`8@@58_dW6`)Y^fETCfpZN$#BB zO>iYR6Wj@2EF8t-XDP583}yzrKI;jvM!p2hh<)mZftkfegTPMooG5*^NuSa`{YL0l zav-tuHkU1%@8?ocS{}_e17E^zDsx? zzUE63eqT1s;Pdt7HDp|+uMJw2FI?g9g&E5RvAK7{+xFV@2<pOE;6ZCDhA@BNGnOFE>J3K^UnK{w?Ur*w}D_5hMv~H+e_E&>^+wFbQ18*8%^zBWTwbUu>(X8c>z2BF!F92 zcK#0Re9M<5^Oroc)}`pl_uG2sj%~k(xy!pdu!_wCs3D&Nes-5vPZlx_v?TCv@!;iVr1S8dQll(9FKuXNo-?#y=9VAGi-->(3X3$|z?B1H6JS$_ypWxd;4h=Ev**lh@|E=g9>#L<&Ng+8jdBD4n z92$#`_mQvSUjprjt^)lk-32%pa{XG*&-h)|RUz;oCg#fnCaeQPuc;qu(0Rzb<{NY_ z&*nkrfw>OfVcEAWI!-NkTml_$wTXY3GkA!%E_V2u_+8dysGfDuU{mW=`LI~CJw7bf zuI$%QdCYx%Ser%nnFdW*?N~l6t6v#=qVEd2X;J!stOw?x)&p};>w!5Wu7|6o@5PL5 z7c#Ix=|!6jeUr7p`!iV^{>9L;IalekXFR*$KMm~fppE{17v3a1O6JzeIu@PO;$42^ zulOL_S<}%9jqh!G>l(&@Y?e7#w(3$dP9^ewGr1Gs7N1PE=d<8Wo)g_GkGWnzFF4QG z;^X_bBGW{VP`c$J=s`5Kk6)yf>?B{M6~6RZ zrnC7d^N#u_dK#$z*oNGo?vTjTo;`Zos2M4~nH~67MQ2+j`5kL}<#Gs_(Lx)dLkuW0 zkZHs@&_xRMKjI7UL-Rxa1=)&UO8ibY(tby!if4eE>7EaB(8DXmwpsmNfHiMhM$H_? zZxg)~9&75Q3O4KEA0nefFXi8;8OZ%-8K>-7-bwr#y>jyrKQYC*;ECrVhHPxH{L$j) zkvRrME;7fPWR8qcY>9Y%#hOD9-5tN*%dP0U-;np}#XhlOW2x9kx!%UlX zMdW-E^4|1kEyIts3R^E|&d-X61(@F*=KKts&E~y8{)Eic&G#}s8JmphGu*>J6dry8 z9&!ct(71v<^!^dpL;HPT&;9?>wyNt%yN8*#;2=o*mTZ)Mr1pZ?1`(M*_dPO_`A(Ag zGB+8Y*a+gYJHi}~U?br7+#Cg$tI8)`UWt5sEdiH@n5(SU*TAKv--uozZ5?1-hK+zf z7dQ$`1<$>BHS(Swu-R(_PeJ^y!DrEbd9D{P>EfH)Bfh!6UPTRFldh#LY17i*s1W@c~<-r z&YF1m3A{wk%hejoe=!#8dH)*d34et6B_?T3{1MLPokAz3FETRJxk>ayWz%FM^OasC z{xJ4J;B)z^^eu2P?WYdLA$F604f{~o6DxQ`PL+rsD#UoLF&tnF@~riqH3sojP1J@o z-@*R^=a8D7yMAZozwdn#u2G3#2*Nal}~bo%kFVWzQ95DHjAwy zJ_BW=F^3@ih8SbTXxkQfPVgY_6=qVy9i7D~IrYSClF84$8%D*z>x{AH{ z(XB&W3r65y|IueX(Q5P<&e@1=v~d;*vWGlNxf;3l4sz`sz7*PIjd@bgFN}Tph7Ke- z3qsc`%)R)J03W6QkZUhIwnzU-$h991ovOJK-)M!usy)Tb#YV1u{C>^=^ds%`$V29! z|JLR@F^I3wS3nYjl)$nR@7??T`d-(L!Ph~(U-po6G+p^q4Q?)%Ow zJj~cZ7V zeucIrMn;~ZXB0RNFy@K)8D$^yLG~X;QtEz;?L}RiWKaC_OUKx@2yYMYzW4=%js*uV zJT}j@lG;EopdTiS9b&E*p;h4(!o$V(&gNa^bA+Z;yjtiA+MH<9wy0Q5Q-+Gw#D9(= zAN|XaH{dP|T}YoHVzhOvn@z-I$gkET)$ocv-OPjl<(Hn%>MIV>gq^eVg|ggx^v{-_B4D8J%qLxfK# zo$u!(;Z^8L5qwea;**L2Q;9JJd8dQtW4w2VtslOX>D*Lm#Hf`HXZTaaXPxYw0Ub+w z!Q4W9J~ALe`|}O|m6G#Mq9=sttJu=F_)wzs=aP^1a+E{=#R0tK3_( zWZidzQ;BPa*)KF`nO^wWvD4T@2cL7o7eceeR`F7yg}LvBSg?1MARX7ufW7q0<=hx&u1hf&TL_I;xTr z%va*}!F-#(0^f9a8h%^+)RFr&eI|BXFo__goe&QyY9q~E&F|g#Rgxoa=RS(uZ8x1TP3k7t42L>0oF+bxVADLTP`_KA_rM( zLRW@Q;70rp@PKu0{ihQz)XMry0Vkrjr!&BKOrt_YP7st9ay?sCa$}0kwEZ~v>Tr$xyln$nN>k@F(zMuJDVLf-V zKZJF8794fLU%PnsENyi1e$Y0g*=a{7Lm!hIpq<31cV;GU%46RKdYIy`BC|v<`wQow zL})LFF0Obh?V7xGj}^z4KJT)4E1&dP6_tm*_tx%S}-#+|@8?|H3cD)7A<+UYK( z#uUHDvZ{PH1G^b~p2FvId|pFd)gJ!4UI7l5kTrX4`nhw!vjQV>?7mt8*%6OAj8b^4Sf(zQ?NF)xMWF2Ruad@igJ<+#7aBn)fHbK5qe z;H~tB?4{$o>=9MITfxsPa5WoTW!mv6fTxjZ;0hn>*-rfPuV}uD`!(PB7<(Od_2TJV zb{w8MO+3BQ51w`>;E8(+&bL^2ikW!Y-w&R4CE$sB>;3T`6HoDc$yx`AIJ00W>-HS; zz_-$p8Hcwn=;;ygHUqq+f!~|Ko752${%~G+Ao#vajz*BP zdqTWR?DY8JByFT>KlnLtml?Co&`ORD1Lojv2DJufP-`%|{L#xr@KkByt_$3) zM`w_|j<SFqxSIp+*srf=fw#Zs|I%LY#Xh@p4K}?i3f@ARezCq6cN^ky7d3IW zyC2*&B;byF3-(QFPOPzziMzf1;I2Lacida=?=|25TWjo-;Ld`n?2kLoe2#;|8F4ri z{GE5?u!rs{?+kEwtBFIa{@zS*DE^Td;PAY{VV3uT!eO>|qZ;o>aCnv1>PK)nBa2$2 z!`%9bJZ;|}=x@vNSsppNZ5z7yAGv=yIGg*cV&k~~6YKR))H{`07u%3iC%L~Av~!;m zJN&p-GI^-B?*cSn)teku{*B8o+qIgP!S^Zl(u!=m01ZS>Y2x20`PJ2`KIA^3i+sj? z0pI_&;lxBnATt!bWqCb!aNd?Fvp>SePJL8v|E=|5&E1;og{6|qiERdd6Wvh8(uMzR zJM_4Nao0nq6QI+H(CH-T)Xy1BC1*dVm2+p1|Lkv2e$PEtthqFa9Ddqa4o|myX4eCI zu?^c9?__ebi+vhkOvau=n_&Z@ zPu`e??Q_z|{fq3X@;OcTTlz$#4xbM=5V`0SxyrqfJK^*m`L^&ed~yl;g_4Qye0o|E zm|OH@!OfccIp%PIwRq8_G0|OI;CskeAK zKlt}e&!V@u`2L{%YNg9zr0bn0&_DKyE+_jcuZCA&#kwBT1EX-}#oEpjg{oGIj?VQy zbC&*P92c;YFIL<1_j$j_k=?x0p544MIa}#+;wycPeD1@RE(g3tR)=YO)iiwT)!4bT z)wd>vnA+SF?St({{nCrl7jyryUHhe+9(J6Cpn+B1KZ&I3FJO8r}hT) zvt7vl{9f5{AuCSq=c_fZ2ce@x{VdG-PBQ5zN$7}sqc(1m_f|zm)O9=I)|1fB!VOiv zBvU`@$=lt^o_kY2OA`Hzd+YrP=KI3uCCA=?VZP^FF=O9|zPC>EjmwZ&%rws%j5n|m z|2e!Su&zqgF2QcxW98Pg7aKB8)~sE|$^B5;ZwK#h0{6QEHct%R_7Hnt+QqJcF20+f zvsEEC12huAfW5HTM>-e856{%Hd-suIu~3 zb!`H!xwqbLG~ZYHG`Lp$0huoF?qFSsE`5ph+fiWCFIA&YueET0qvvkHeYJ`Ewf*3} zAOZK>KSO`LxVL{|+<*HM;y&BN{afT$SiE4V4gEo6i>W^>wOyrrk3u8AHQ(i0=&=bpd=`Ax^wQ$V%s9T& zWYXf+erWO81X|?YqNPzLErpMov{>5@E!HH^BKOw&$>#eOE&dmHaFtoKm;)`2_Ug>P zgBTP^UwUkf=BpAu#QD|@j9#YMYq%7K}9AHdWZKC<+N$D?&;4D@aUE9ocHgy>2Y}99FKRWiFYH{EX~_Q`^>FH z=Jtrp4gQ*oE+KQwh3^OMFEsWJ<7djl$AoSu=O9Xqd$U!$&%tw|=Lp~3{VC_U{S(e} z4)eU-r28KtJ98bw)Y`g?o+J9J$jQ=cwUX<~+^)}EtIfJ@mD}|p=X9R38@?r3Kc&>E zx|iQ)UxS~%cb)Wsm+X<~Z=HOD@fx|_YMt!K#0FG$3i4g#@k0K;NvtmiKjUawAN+S? zFUY=y4tRPDACitg$q%g=XFcSw=F+_zz=h;>ygZy(AhIil-$>tIs9#1NT~hj!&3lRW zFY^9n-hUMzRHPq2l+EF+G4Ps%EE}WzP`8moLp}nyp637;E#OvYrIlt4yd>2Ey4uye)MQoC$BcjWzi>b3MwM*(81(#xRvNxs`EEVNF{5At*rX6`lIr zKMNg5-e$V+%RY4QJ>D_ooC6-8qxL8sAaCQ(DPP`y8~pl5DcZg<(8XwI|2p@Lqo_(*27uJ73dmG0M-l?PRdLC;!jNIOU-LPR9^;p>tkyO6oGW($Q*O_N(V78|YAHLX|;_E-m^S_0k zZm?@Fi|;||SJw??|Hk0$w4|cL#<#Pc_N1M8*pbo>b?3WciES{B4VqT-9mcW&{*4S` z?b_JqmZtcn=)T9;Uz$VQ`53lNHaXVKO5fNc ze&|<*$LSl{rk!)FN8i|N`Juzd67&u3Eq&qr$4%WghiAmjInkqUsCo&&cUGu5LEqrs zdcVVbUu+7|w+ubN&^JQRx#R=4lWQHC&iL0L8&)aZ7eD%qo*Kpw!J5iAyBxe-;o@x)_pjtW_HffPb0-luvFD^5=euI$(Q4$oiLpS#wfH=% z@p0DR_e?@AyD`4HCCKF^%zG64dJ%Izx|{fRfiE=)zO}Kw!Qp>0@E#IY4cDW)StsT_ z`R|8`2OWi{j{$R?KO7^rb{wAWAjYeBu-UKl5#AfcJmj}y=QpjvhgnLg3GudKIfrj% zjrUP%i!EkcYuWo;i;cd@iD<2^dZ06_;(6v+hs@yjvHLwbof;Y>Jl~J4rJ6C+ju}nP zmu#(U7gy=CiZX1iS;Es=*9KnoVVcyw9=zVrIQN9@l9oOkt#sAi3 z=D!m=r=Ks?vfGIyxA{_>*{5|P!=L*GWbkL6%b(4?@aHy5=Za^UI0V-of1Pdcjc?kI zcf_B&KMafb&K~^9wfDW>{hk_WCI<}}*0ik5@~4-Vruu@(iHvx3SGyZ1GhW7VDfe5W8y~4A+Zx&WXK!I%EWUPCTW?)^*Z(Q zH^{6I-?t4%wjr~=O05}BH+lN59sEf@NiQ|O)Lk#Vj9$7Ce*Qf2Y5;oal@~j=9zqwj zp_^Kzm(WkF2{vhMbsKA|JIEKx;{9yoz`Wg^Tg&-<7vJXde-ZckLHF(Gr8m(_G2kP; zlt4dq*!Y{F`*Skse$;975_EB@_}eVzY+^E}(@T4L&^^~4-A{ABmtJZ|FL`typTc9S0{b>{afM6b*Py~W<%F1@8(y<EhY*ISx*Z?bC>^CaiS%IZh0toC4J8~U zZ?Uhc7rix!@!yBuT4eYc`7<%}c0cfTpUcmSEI+GXFP@&5WXGM>TU=jFf3Ds#xKF4J ziQX|n>qtOqZ&7!t?!~Hnn%9ago4g5H8bti|b?Gq#rBenl@6?us2&RoyiG4J^+oJ2CCJ&6Yz@}jp zSzHh6C?YS6xNB3Of^~D>c^wV!bS%bka~9v%4Xa>X zUf**~`*m8&HSND+`mg(Ai{?xJ>FcTHy5Vhid@YW-mcMZWIZp?VcV0=%Q}GA`OAm$~ z>^zuxu<~H!!N!A$2MYrO`tZi)joF*4H%D)7r&|MWd!yI2SjKsE$oga^R|yCgJ%__yNVVnG4UePa~2(kCf|{7V-jUXCD57WRq%H+u8!!Z?2e; z&T`8OU*5;%L+qm#>?PA5x+uE3Dxx)3?X%yKPaZ0=IED-suSSjE@Y&D{eaW3=9K%Cw|v#Ex8rZ@-j$ zo*S8uySIV()?UT80)2YKx5!U3@vWKUpsgYfytGQOk<;SdqfwLlaAUEn=da47#U|w| zn3`*>{b#N>_vK8~zN|MZE+&|G@m$5l`a?5{i+O8BHkYPPcq_26F>sShV`Pc?zMXuQ zJ1$}`Nl8^?>G@7-X^Cy~AAvJD7FR93$hNrzKG9mda$M~CQ(<_mX;bU?Ca#`tbE><) zUa(cX%EFkq0XEl{u>bx*?U`-l>nJ}*xgAmLz-{DZH1OBbxu2X5*4eoJ68!MYUpk*r zJKnPc+pv8MPL#8$Gno5@?;c>!l+Yf%3eI1_m#CXij{G5Zro155mFsRGwzrg=ef8T6 zA1xxbw$$lo`n54m{XjB?f^IsI2X!Z|6A?7%+v6|8!+ zxVSNNQ?T)oFA$He7#O`_cpa#VEY+G z`^3Eu^_v!1o8#QG_<>%en1zv)N#EXBY}`@J?0TOR>0DOY|q_fISLd8cP=+ry9Hap1NI+pf9GBUycA{3F~D;{J`!q6u=M(6l# z$Br;`T24J?>c0iKhF}eJ9)g5zrzXXtN_(QyaU^3@E3|3&w);dmIqmr85Fv&0$QyY z6j}lgoY*iZ^pDW$v2i7-;}c8dS7JvMc8iC$uf!ia0W6**M-coRzt5NI9Op~b`l;8D z8;rzn^hXjm`y(ym*w=PJNvg`!)3_qk%$|}M=e^4It%jG(**y1A*OUG0h0x)8>Pd0l z3TN}=Hg7DVwnmn7mGpBAxuN|Cf|YcB@<#RqY$3lK`O&_TI#rT=(1b?|J>liy+=JU; z))SAOFg~-H+mR=Osb_(=#`S;IpZdt`^BDAW9J*3ntr}{s4DLIydG*8}YLngf&KV?p^N;MgF}Bhf z;MPbUkl+?p4iY@Hg}>sRpYZn)c*feBoY??;e~0`P+`M@_!#kpjfzTDTvf0}*5M7xc z4nx=WytBdKdVc>4{|k%UGhX^(qZMEi4JP)s!R~o^>yF;{yi7aRb=Hf+Kka|%thl`6 zA!y`-f??^i3Uvl|%gxwKvyoqO(38Zs%)GEWr@HG%vz@BIr#;;k^LM*{N&3F8+x@ZJ zxA6H~xBG&(p*QT=%=T4_z}yE;=03XrdhmM#c%H*~vDZ_l>f!-hV+&l2t}?JLFJ$et zpIPggQ0|y~Bh{J1PaUGas{JZ|PWhF(r@uAqId8p&yuz8-x^tXJVm5UyZX+Hz1vpH? z|HH0T+}rLs&NudLs2{O}Nx@V#i%*0}o9>p5Inw&V-B3#D<(5j9lS3 zYvx@L+_#p!xMtmtZ>x}NHP((z@2#(PZP*%Qo6g+2ZHaL2o%`Z9>u~8>+*w`MT9X^t z8(oZIJ`;&)T;@bthl9^TWN#_9H+!Sz^`w(gRlFPIUFI>Ic@#2_QqJFk7Cm}7T59Wg zPk00w#aV>^_SdP6tQm(?SAn&;RLkqoO`Lw(6d#8!7dsKvU2KDvT5oew>&mDZxCb~B zn@B7G&J|9?^2%6n+_$3|oZdhkm9JoP;S@RKHhmz zB`c}<&v{W9=RCbySwy`N=r}=sQgW>m@u|kh&A|OE#dNL;4Pn1N`=cUD!O1%8HN6{O zfUM^!APSer8{<&{rJ#s35k99U5u94fxIm zz7^zFLtC~ULOy!TtGjM%njWag3s@O)Iq-q5@hys79w?RXg?;?5)S15n+IraUT$z}2 zYP!m0%%UqVKYRN(Y<_mMA_#p`FL!ZO#H{yHXKQ=boIggHcZ_GMeHrJOH|7HsGXty1 zd9?gC@|5G!`2e3}T>ttvjO(uSxUMwgS|`6B{=5;GHGkgODwuh-w{$+hCmG*2{)X{Q zPmgb$9UpqCCqBo1!f}26OydG?L2Ov%bXLh%2e0dZ%X;9m0l0jv?+5ifpAzN0Uhyv9 zo^OXR2SYP_FPc#;mQ1>_bTP@y&&N45H?Y_GhVz_PZ@4hHZ_Xg+o`-@Tp7R0DGWaC8 zC^*xcPea2k}PMBO<^uk}Ta&FRB>Ir3O^=ootR=xnKb9)~NRcz!W!=ObA|A4PmB zf$XL}SXxd=wjOY4Hin$Mr6(MS3)R?|P?!EC9%STXRhOLn=9%Dd8X6<-vj?wqpM$}3 zOuCPl0eJ3-yHP#IdLkE^ry z-F*hR0({EYyDfeb4h-Mz4F(?0cCPw3yt2IK_)dZ6p1iW@WmGX6OmON@~;>#KFknn`;K6qeNC(q+c$M1^U^z-Q&IYzPo44| zYMi<4eA>KIEuBjng3&7S7Bg+0f=@W_tIjm<9y0J$yn90t;~L#Hze$Y!CFs>be_WgY zK|SY(P4Q^M){*ju|G58TeFJ;dqu9(bZ06UvMlVe6&ZFIJknYcV@-OW`gT2`-`mKUDeJ8d+2qwn!sa!+zaCp(@^{zbcj}kBFw~qq*hoG^xfUz} zovh(3E)HbcajKIdzxO-fUi+yY0Uny;!+&9pQ`w(fnoSN~-)?8<{T(t^zTiy(&J*29 z95!!8;4b{NH`h|X_A%nl9~IsQ!INNqXlgL^Uy3s^ z2eYmZ&9`x{Q}xKmr%o1p_o?KtoW~l_>+3H!`k@O>L#(b}-_WJ&?*~@Ok1;Un#V3kA z3a(aztBKW-Yu$0*k!Ag^p8eN=t91Y1WIZ)((NA6dlYcMyxjxv{|LimL@8QnUZV$RP z_{s^N1->lqa>D)iZD^WU$eX2~jHdg>!FQ>p>0%!`n)r7qxi#;fu(aBjvtPQwpMC^? z)iq60=jVm~InD5Isy8|{^M_77pLF<{=I_q&54`8eiEh5BYwvZiwtfg2;ZTRrA!0DZ zctS>RLnoq}Ip~wV#I{xQP4t*KuU>iFZFieH=Zn2LBhOc0gSOGfC!O=3|KapB=i%~) z%sEQ@>Rk(urX`dUb z^2UF()ShR3ph)qm?&n#@j?vz`PHLmcn^wFa$HWbluS1Mxh|SxOgZab#M># zybn3}I`Z}nWNds!;PB4k$kDY`k)!<_{IG%H8Gro%SaVhky1=W`rm;W^PrdOw*0uC| z0sZhzVsQ!cgqD|besbK2#1;{&Tg;sGyEKdXQ^BWH-|fFzJE;?05-3%@HNICpW6|Vp zY9j6CUJRa!67y>z=C^}0;g4^~>Nd|?p<&IFm>TJM*`XGmKcF>!+FA+>6*Kf;cQLRd zc1B%C&Q-*&nWvgpyeB%+cz>?3=s7ZWE;3a#=;hy)A$R0w>P!L2^(@0{)Uxb3X6%XH z#yO#vaemPq=Lp)>ytVH`eR{PJHU)iFt~-5Qxt1GF-eq}w`~c) z{X3Vjl`yustbNYCt}-z4gS;u_tP#y+y;W;NCD_r_Cv7es=xZMNmEgBaoZwRnP?|n(~t25dyGx6*y+N;vqd%li=(u$5m?w7B01spz(Ty=!Tl)n zdH#QCJ~gMAPjoi0Mjy0bLuzh+pzmqSt5-SduA}^TUN16p135(K7Eiut{ba(~l8+a5 z$;VM9uD`VfxfVxO#<-4-b0P`k)|_nCjM?Wh1~}<#+E((qHX}#cIB!;GQx)MWKEZW9 zYe@UqL)1V#++4GEr0b&e^|kgnHjaItGYRxOeeFKSce3Aq);{;HWA?fMU%@`N{T12k zBl+dowtZwj&yVEC>~)cMU7ls1W8;|TtlgOYy=$}Qi1A|s*zeuv_IhtVc@<`U;LP+- zUWNHSeQoF403F-sQ_b^ouC;GTIV!eY$J~$UJ>raoKIfixYFo;-_2Al$%xZ_{bhfRH zwR?2|9iv;y3RH7oLg*(x_-Y(ElE{(RME<(6#LJP4kFs^~)wYqRTpzv@zDAd3VcTg9 zre$1JqyhXn;M4H!PTL1-*-hoFW$Qcp{OWGcqsZ#CejALwnP_#~i3(`2Ulq@w-2!CZ zV06L6sz^EXo7T^)Z+}p5UKjn9B6nx9)-ss=Qj?&;DXe3lukkha-eA`7`gV|;koFP# zJ!ti|mjl%I5x=P;(ywfYIpf;q{PYcPWv+_pb#BP|MdwoI+lfvmkmv{o*mobu^snt1 z9LoLT%t!ufjp9o;J8KSJhK%x2e`AofgT4NWbDR{h%poNstiSTF^fRAp^zxC7QLX*u zbQI&mNAWonUrfSRl0}l6t>EA{X_dB<4Aik*f^}H3?rTuTp z8P}SkYV2O9`SDF~0P~yBV}662)E~iDNwuBdT;}&0*MiwJ`Yc7}OCDZ+$XSzM{MFE3 zjZ1r8&Fw1mn58?N#p;B=Ai85b^O3nLp!=m27v8k*(l0Q@}7x*%(uK(&F>2IRH=C{_|%FrYQ!N6g= zM)q6Z?(2=@uD9IgORf8qv(?acjQzC4QOYg_$Mx{QYUJ+CK9}z8v+DElpEo;^>8$%f z7m>UM)^?$vydRS<$hi!CfM?(BC8%gn(&(9$br(Jd2 zIlEy3wY(?1{k?q?u5eyWE}Za-q|;~BCeAE)qR0vO(B(Pka?N8u`h4!E*~>}p%;N*I zn`@wlmL*P#vp!gVcEFppyI&7uhthX&G&SewYslQ3(A%T(yV+)y=x5nx(L7*7u6s)X zbvXxU?Sk4$NlX2InLc`ki|QpdXLcJCP%+Szlc` zq%q1jiu)XT=Xm||1DvK3=&NM|xZUieoWamrL!VHr;CtAm!KYMf6B!jM-t=yLbS3j% z;9$!RPPg$!W*d*u##$$}o!ZsTtg}Nq$nS62sr~b|oy*k*wr>m@wgp&~mgR-wi};2< zV)d-Ou14+;c(1;5DQA~1J(vGO8(S6w_h)$@JEP?}-hG<(sr#(G6GNQ0>qQ^RllK$r zcx&pH8;{Jqt?}5cUuqnDi_>`4wZ6uI)BKH+YtdTa41H3X6RH}hS`-6AzbDrxT8oX( zSoZ9=wei(gzS#J?S7$XIy?I#U;nMRO-@5hu#n<4{d`dF>r#ImTy}`KmgS(x+h{mBY#M=0_gKyucj{FbnAIW3HnaGDZ z$o&rP6X$Pw#N?ci3&;F*mf;TMhQ1en_Juze<>)L`YQSULE$Y*+`G!ILnoD!YTj|5z z=m(7MP1m5v`j+3;*4REc^q=Hs#NP#1^x3zn$9v1D_Y3U&MMFZr<30JE>NCc>EqoI{ z*4tdIzWRpddW^Zg%UqB7B0B%InDN}`3#M2DF}}fi=Fq=i)obTm(*H5htaSA%ovU%b zlR6IUGkw-F7w#Qd@c;eba)Oguh5Rlub<>AZ3-_FG3*U?u{nEbrQ`GO2B zy)6T`vPWcx$R;_J9dhFH*dfd%!wxaHTg19n@gOJlBrx~vkRWYu;aV{F8Q5#zS#J0P z?#oVopTE88?x7C8_eJ4Z<-O?cp~2MIu74EGgU0$H1MzXz!zU%!#D&!7mXBkv$vNd( zK90FABd1i))7RJ9=lC@Cea_6(^Ypd*9G}L1|5^LoyN=px`8f8u?N2@q*LzFKvTgg= zh~_$KujS*|=j60%eDH$3_S^QoYxe(`=lC@Cd-u7$ZYn9e%09;i<2myur&i-nU)%XM zAUEvuspfe(*IEl#4vuYCdxHE%zK+1wo9a0CMDcM0wbd_@QL z`Bd{NN40sHV@v%d?&qlsrJKb`#?vm9XV1NMH_ z_l>-*wLa-Ia@9xUYmC-k{Eb9bcJngoS})7~?hmqj*{dY?y*Sz^H;!gwIKJ=|2EW3$ zTO-76GtM3%V;`YoMF*Mv;RDyn2gd(xa-y#P>wXty{IYlU({4AJGaNs7Fk^#;las7Z zJh?1G?hGeRHW+z`+(}NVicCeGi5K+GpS?44<&~bu44g9CwlX?npCk zC%lq(wT`U$3-3Pg?*B?vBpHNmhCw$MU`L?qeufR8^Ut@Bc2duO#lpgi=k6G9eedUk zKC_L9_Lu+aS&eS+I zaQ5Eo3Fk|B*T5NAc7rqaN?i5|G$AQRi|G~;w_R%7P#rKNkXwLd8d8@UH9o&BqI30lYmjN^7*ZrDz z;-%Qkw?X@~*ESWIbej{|Ne%EQx(vRpQ`~kb@}$hWCT^?iD7wr%*M3|*_pViEN6*n^ z_IvlacU{i@TRlgY+2{7U%)2hP{Y8=UJa1Cm*0k?k6Sp6rP#H+cLMSY`e>TWG3_u)DAcX;;5 zO7vMCcv@B@xs`{nCmEO>UcSJ_E)5Np+PwKPBflnuKK1_b`sg)|@)+f-@0CoOz`YoK z`?wdQf1lfreD@k;Sd#Imj-GUZUwv_XCw*xAE!Pm!<5?*>HFIp}2J^n+cjfN8I#+ok z^H*;5e*BjT;1s=?nj*BTzuw+l4<=iHiC3dW<5FLbb5@xL7x=YKYYBNSe5mDM;N$Ua z4dasEXyIdF^Et-i^^*yog{+<5z`FSy>OJ+P9$yE%&>tO`kG^^W8?KNukfN-ildEO+ zp=`AV*5515&9%WoNajkvmh3o~4vR~|HTx%bCA^XtFxPF>z z?L#kQA9|F1=Ucg6!#?yv_Mw+?%|02k5516m=u!4w{T#a2KJ-HNftPXpEZ5qHUdTT5 zDETMvJp5A!wU@Ve>&G>6$;H5dxpVrV4lhE0n?f2~8XV`uPLE@5KwqKR&cVhaPe?}kFT7A%` zT>9YLE`5Luk5|wSIzemA+Ka-T6y^}*+-Iw+WCt#N?__;Rkuy1}8ikz2Q#HVu9A6Yn zEkNflMCUJLZM6lSmyJFbn?mR1>bpzdaL?YMZXtEP0%rZ0@7DKsCXc-!xNn!^T&exN zCJ(KGdCVrCkv4R`dIPy|-ggOO|0 zcYW`#$8GIe;B4gBf-X7ct!cI1h+UK^$GHAXCAI=_njMl$^tGEYv@k}=XvrsyRqJoj zndm_JjdGnSw`)?wYWS{={v_+7Gi9Ip(r2k*53{fO+R*I_$G^AG$zPR+PboR+$tVY( zvJdU&;Zs_FLvq}%-w$SNHgAO7a_oxVU{}1LwHfm~FWgCfqqP&Pj2EuTc(0uI=JMX| z|L&~cPF_aT#fzSg10S8NnT){iWxaB;WAwuC&=bJV8Tb#BopVmIo>4aWC+LtEuxv=8{0~*Mj5a;26K()Dz0Vm(Vw! z&z@<^PuDj$_V|XJ`5bcQyM05>yyoGLV*l$KzuU2vF5 zp0aY96}M9Czm#iFh8dfrO#6ZIjJ+MjCbO`T{Xx7Ooih_#u#=iv<^0yV=uGCOyya|c zjT~%_T=ETd28s4ye){#3^^y+@dOWvdyPtKSyzm6x$s8Yf0Yj{PdUdE1`?H!gbKyra z{K2!k{5IpeW1D(ow>GcFZes+!jr}^;7x%_~ojdjf^GNc$m2pP#kF{=?<&J$J_cEWG zu`@sU+JF6H_p!71Go*~R%4v%=@w$z`vJhR39GcZLHW0(^AH#UI0ZZk9kKvoKd^?W* zDv?_YTzk-4qnwZI%B6kDE-OQG!oMW%MRI#S@Tmko3*eDT{J#Y*eWky}S2W*Nb$z?V z{dOs|wbZ38&o*BQZC$0lpe@@M^*`MAFXR3^#%SY*+2NaBwJ<1S%yZo_dvsm?p)vcy z-~SuN{Jk@b*~~Fx%-?X|_hdjO-7jYz;u-C)^Jr*3^HMI?viD8i`V`TnhtIh@^V<0) z-%6Kyx;<0&h)%CVj?4#_mEhFlscrC75IRu2p&Xg>f{S~fe)FDu{ay620612D1l(Wa z!BIE|{|o3>^6n1g-Xiqp0_b4AO9viaX}1R*?c4z!Eb2iA3!#InyU{^@_(J!6 z?J2i>`Z>d=nww+_IU=+27)xG`^NjL9#QPq6Rg);2dFC)*@tNU&mxnUx$Fnbbqo0%H zA&BPX*KK0Ho0;#%k1^jj-R~bFXGOM6CQVdjlb3<6UWYv;z3tgi!nJ(W4Ew1`wShkU zE`BdGlIia*H@PsM3+1?eT@qRB`o4QTJdjgr@F3sL^LuwQuC6$&wTWb7lB=3}9GR|M zP8(O0T+a>9{?C*3QS?(xagGXO6V&OffcfuPTQZ3b$$^%V74{4wbcg95y1yz}Dja0^ z#9VKt|K8>__ET=7hg17%aiJS&Tfu4iP;muSzjzQ-=V% z4WEddCx^9hf5%P4lU6L8d-Z6d*knd6DWr&)~AjHit8a2?@& z;XCVpi0MNwEzG})`8Z{x-MmFBOS2O9d*S9fWWKs(}l)S$u&*X-i-iBwELg)8G*S+ve z5}t`e=fcmKc;@;b^M|h0RubAt^9-vzY^m8HQS1B%Jcm^He#!b^aC)=nSZE}5) zXkR)9opxHj5x-^f4c7(wc6N8Z`P^jq23k=ZUpma=o2`t^^e?_)Y(4qLj60K`na8`z zagZE=cbH4c=kiWkhDbhS@($Mr`37Iw=*@citcGt!z&C~tFti9?WpEDk8h6t)))BlInEIKY>Ig%zsY-+S2r!N zyU{<{+xw}wnX!YjCYyN@~&zXCpQ({olE`5 z+*FLYm@!a4RO2gWy(2va+H7Nw&dQDcD>t(jqmy;^OE>yw`O9+9&w1Dm=(+ZH!Ap-l zHM?h|V#w{>=bbgN<{7D$Ju~QQMk)~}Z*o6*ldo4rhNkB})%3eV=K>B3MxMAJ80phc zoSHzqz3-2UQ~k(A?H}zQIz-L10gUG?a#EKPLr`tWH>sia);?;f?W2Cq9^@nWa^9KW zq7&k^b;?U^IL=xDV_N^X&&YfEZJW?P%1dpbj+JaIqx;<7*NWD$Jv8pjF}Ljt(oZmQ zi1*&4KG<9P$oqsQ4}u%bQ*+!;?7xGY)jrBu&FPcQS)Fx-(6G zQE*(IRrT7iOV|emot3c{fwQh63GOe4b~cSB?tBThIBVZ+*mbH=S^~W%p(CBALOmvE z$kred{Y)cHzpQF-XrN#UzSm!3?FG;8Zy0TDh4n>R4|l@JsEWF{;u)H3#}&^XDj1Wo!WNhdH~v<>dQCz*VR4p zuXD)1&dJEX_I&YHa3&vh;dw5;;uc@Ua%erc z7d@TtjZgRiH?82v)FlKrg}%IwHsp+OW7ZVNjn5}HK4;;0aFcIx<2NH`gq!)~tu4pL z9W&?`ljjNt%t8Lp#gniPOkLqAp(l?YH?%vC=ks}<1Mg5*J~EH*AEUS;epEo1B>;=PkXtGSNBE2^Jf z%75+8^P~IeqbVKh#ZFLsRQlz0+8)Du8~DGGcXO;S(d7C3S&YZTYZ=dP-FG(<56NK+ z`p*0w&2Q#6mieg$a?U025PTlrU7VUv-}9|sly0+({&P(KcFpDIW`69MNc-nY>E-Az$WtQNVlVNR3kscn7n#?E0n_*4TM$zo8>k(m7Ytj8=G2I)fE$|G2gnm zX|7$N^(Ehg!L^c`vWv}#$)ziphcwKYaM$Oibq^F^^ zC!n9}va+_e4fdsoYwcBBOZiPBMj?;cJDmT3-_Y&t;H;7H_Q7|Z5E&clLk_#v2m6r2 zo_T&=7SAhwF*Y>Pz~7#s=Y4aK{yONdUzKgs+Z)z*ncvW2Kl0qYeQ0O%eT;Wo_(r*I zE3ReV)ZpS&6?9u;ZR<4ttDzyumKtbCJetL~g7v1aObb-94!DALRx-D?va#gb*;uM# zFnl*_6Z!j_$=@%+Rw-niyyShqsioRFFt>SkQLyo)@x_h1E}=GY>A=u}QPg>@9T>WO zB7b)d3{_s{G`60&B{0M9T(xdUNvfrw1e?1gRc7|RObGpb-rM!WECb8fm#DF8OdkKl zz_EBM)9&^58ABJ(Y`U{D0B=lb<-Hx~&QtTDXAAm67rHbymUUQjK3kddY8$kkw{Yxx zxlZn?HfVph3p>S0SAx$rJyrM z40*Q`yFxM!J{bj{5VMNl-$csHK9XK2q^vN+ zw`ti}!;8J0$?#8%MKCn$Vc=8e-bqgCY--6>Z`~ksJ*-;az$Y!+irItbq^9+dfk9UW zOCNoccRhJNN@GW!r^k*=zer<;AAGdqgT_ZdK+kw%Gj8C%oMd-lNKt8#o$YP#-igDSs)jr_|!CQVT5PA{# z?{?wu#oc$hvUpdO*G6u*(EV0+qsA>h_$dcvKTJC}lq*N5Z^t^;>hkZN7I*@Fl`XxH zb=yAf-kSVA@Fp_Jzu!MAzfXSib%XMo`{aoT{@z&-|r}zD7Zpqci9d zoo?vFi|e&QOWQpi$ZyfW+vJ_J0((!6_9};YS8~ylY0}GD3zp4);4vVVh_wE_AGuZetq<5>|yTNn4k8? zcEM`@5ojOUN`gbtZS-m0dzL+Bz^O7jD=iBfp#M$C!RIq%-~wnL`D*OF=YgADv-E|( z0n9`bt-w{VQ@`??1-~}@sFV2khJItp8Dp>YOa56WuqD?amo`9qk3)O1U0R`)9OT7D z^Xjtnjz4I_JMl2+VZhG=;ILWt46=hTr@NY&Rgg|E}MmWs#m{kkZ(=PlO=(Y zpZh0kd|ERY4lfz|rN!DWS|jxEbL1$p>`8FRxJSNsU1Zez*QI4OF*B2&(8fD4`cNFt z!_$Xk@{>Kz$>Dl}^0c=2I7caHW6sQT+1_y`7Oogyg0U}$2DDGL7Py!>F~`-Pan@+; z34=4gVqJTkvN5697K^h*FP*GUApe#@6G?RBHqI=qz<-XzBZel3^%$CfHpDlkt}X3m z(!^Jx3AL|&v`!X<9;ACj6LDxe0c|It?G@SCY5FLGJ}OT^AF?k*AEL94uQ6}n=?9iR zU|MiFzJ_QMI&Oi6Gj+PPE3Yzkga9I;_Mlz_Bk_B2P$T;-*ZN)W6_M% zp~W*&Z!VdUdTYayz~N(`kF>HsS2bcpxNO6-}Ak2^he^!4efwl}7y+V@XS9f(g)9c-JBZLx-oQ-aIxPI4=gyH+F;b z+}_}vHPphnbf|@M?NAHncuDG58}?%d_T%A_RHC*%kbJkKC!CK=_^*P{9mIe!gO)qc=u0r(s|Bh@+-S{)9p7DB6|pw)5E>O^SuGH7*@X!V}J;U%Bv zEI+%SJOM2Y0*29M@V%QeGdUY%=~AaL%3k!?2J-ycj@LJl$34*hnb47Ukpm}usj9P) zXV+dBS_h0;cwh2B`uEv?dH2IKzthDyNO38!}&##z^E#x26 z;Un+g%7cmB;QVbD&PSF4<67u+C3Lz9I(-xxT|GV3S`VE*2A!^jPB%cOo1xP!(CL%V z>C>XqyMXbHk*ATx$6T3^1kTU4^-?&Fu57ty%m_;225rHlR3bIz78$`CX0Z{VqmgF zFj)le-Viwg{sx_I>uD{?ga`ExsNs+@Fv$AeQ~54Div7?S&*D6LdMtC=2b~fN6CG4t zfSke~kgeePbb9ZdL7twb#vGt`YIxv_=8dlm?9Or~AEgdi-onZN`F4}@ zh;40lnx4&D$eIcH#LAzmLKn8>1)thXoMte3DR*I?$OfnCwX8e)M11+t*980DMNW@5 zeSeg?TEZW?eu%E~p~*q7_yUaTjVJNH^cyUIDrqizUx(`4n*4dB}b=yx4D{;G4G zHGcLddi2s$_M7<59^}9hzv-iq@A^DwVgYrEFWinTmj8&21@xgVjm~jUu3W+Fck0*i z?t1#z0PWUZO)Nlgc4GlG=w*DWIxk*UjXjsexTLEczHQlzd{|Nvz}}x+MLYc%C;7)y zS~lbB(vHCsbJ|5-a059r)x6``EE|D;0zLFkdrsDCeW!sw*IWCs&Wn|=qd(aPYEON} z$tBrD8)NZd^sT8yARDen-0AygS-ZctSb(u>fK|^J0c!<&hs8P9jkSUpIUJdA`D_ok z^n{7VC|GHXzhsQ38rK5GW&6?D^us#VkuxpY+}sa(yslEXpECGsV*`IjdoMP!4mKQn zY!$lYQPw1(`8BMey&WIbjZbgDW|EGGE}fQ2)=o>cuAG)?TQ!aINT;O^te%!SSU)Y* z@z}J~p|#UeZ*G{DdTaBv)Zs1DI5%Zl>gdzcQpYyT4;)`|edKN6_%^c3=BwB<=X8c@ z5?X0xjjWA*?(NjN(Anz;sdv%ASwV-eecnXQy@hRZn6p^#Z$;iQ&eFOsHctQHt&KAq zWCNWOsu--e&N-p^!({`VYvMier_smHmQa_kB-OgD1l#{#0`0p?QrDN|h3?3!daYwP zHBnYki{epgcF2A~b{#e{%ssi1txM+~U#(5^RblvI+C0^mUmxHM`4Q~};#WdH=XF#gGi=UNZus(-k(G=k ztEnXA+gg$$f2L^}dzqGE1u5T3c-{v?+C;Zws>jkcNbFF;N zfqc73zljIVW?%JuXc1q@?5mc{jv`MK3s4O%`Mw&bu9MtXTu-tmGtQlaZaDu=xY-+s zXB*tCWB;nPHAZyf*RLZtt?w}ny*drOIt{%#4ZRBg-U?6N2LH~6f9Jrz74Yu@_;(Tf zyBPjm0{?EPK(Aic%_jc08z0s_W4;W$t73fZ0j%PL+85h_#NdDCJ!SeZ;A>;ef^S}j*8bD93r>GO`NMoG{nS%d zd;04Z`mAQ`HH^L19s6p=Z1f*vu5rig@o2R><{Ed*LB3D(K5|<$^F`>Sr=BZ0gwM^K zs^A?rzTQorX6m@!YX}e!Qu?n-N zNWM6>bjyBXc%tKsYxR?P9X&w|iafB`)0{^-kT^lrOO4nb4EU;i zfh4?Z`S03LVkUM2HmackcrTOB>iZiSXlg4{o=jdxHG4ubX<(Fxzth0l)6;tyLr?sd zdNkzXU%2i@Kg`{upY42~#y_|btqJ$bfr04B<^|`3p9gnmqAAb5*`hYRx%aSXzT(Y2 z`Z+UqA93BxxexKi?#^BF>^Anaj`4*rECv(~tOZrr(OZzW1oRchFrEw*AVt$?GVFRy{i<_eHB0=0Yds&`XTkAll<0 zcneR8O`X@_z5@=+!DTgi+CI+;Ukhw9bejN$XtLR;s1^97GJ;4!nUY8Q_+ zE?w2T^Q|5oM4!RiU#W`xce|_OkkK{B=x*O5qcx`*w^qkWzF!WWBo|ok-D+{Fnz44R zS2^|TwAPESUC9|KX?cV#>EY8q*jXdKX^_vxoIE|)tzTr5>_|^G-%h^;T*r8SDzaxP z_OjmhbP4*;jB_M1PPX9R^Su-ABOvFyW5zu3)?#-nO}T(>jTdI#(}%w=w59SIIWs#e4g)ugTG! zwTWxRD#%-4uW=#x?y9|0PQB($%yXCaQp5N1qvdC74FTU~NOA*fb=R;C0DP+OSJxqf z=h99|!>3K$@aum%MeZm5!pdizHLR~RInITlA9mRFmBck>ts_Dmkw}h1ei5kpHq%PR)P~LUApNxy*W6AXr)p8Gpqn6`_sv%1+uT>paa%=)SJ|1gF^ zVoKyP*NvbajF0|hr}0g+jrW}2Y7!1D^leM{roNIqT z>vs6ej}@mf*E;b<>vpjRsFL;0`5Eh-nv1v2Ol;b;yOH_ZwQAKOwz*8TjK!{1<9CAt z_DQC;xv=oQ-v&)z$hbBdn%4fP9J5v{K3!tISKe=SSh~6={fOs#-qX5#&wJ3phwe%5 zdwHPHZPSF9!ydRUx@}=yDqasBS(}Ox-^rtn#AfnKd_Mf59Q>j_p3Dk9^@l;unhn_6 zr;}H?jKPyvpJiT|vS&mQvWM|#?N)n}M?j>(Z`iZ)L=7ubU1O%&)b~pSI8I4A72@G5ZRiKEi#_*=0BjAM$@zT#5A8E zrl}fNW%vo(Mmwpq8SmrQLG#2k^N44z=l2HMQe5*#TTdU;Ovj=*gWl8QLw22BCXUB$ zk=*M|Cf+{j?6p;eYA5rnJBuDOxy@v>;QMqgS(w+T^4-m=8s7i z&(fbq7pLoY2Y!tD)xKldXrdFvr^oqT{CPFBQw!}V_FVgp#gpjr)8JF@!Eg7(h`245qijh9$tVR)IR!mR+5eJo`eV-erlzFvHGxif6ad|%Pz9AaQ&7(?dxZ_W5daMAd`T=>y>r60Va7*;WK zi(PQfn=Y(!8Q%(L`;YM%r? z=D;pH;I*}gVZdIR%_}G(Ay4F1PUM}D4LWbu)(1*1@ zdPIx3VCAj%$Zv?sFKHAI4fZ<%~ z>y|JUy|a$Bi;Eevw>DV=Jy$c{9gNq@8&LmmV^^f#xz>IwJ|CX(Z8hUntYjJIk*IAi z&a;WJd*1@9R1JH4G=9(iu3}Cae@&Sk|6gX=@&D&VU3gb}l8aBiZt43~_t_Z6yD^LU zr$t?3dgnK8f9_l~C)MfB98*Q&9Ec*sJ zQqIzSY1+^_L0$*@iMsjVlRn)&29?>T#$n)4BsloOP4roFdDpzQGcU~{i@b$+tv{gr zy6mE{0r8+>3dYVshY2rh@;qDB#sbQzgSh?{#jq8Z?aGZhvC_)fN^ssL7?Y3GPCn9h za)}Dr8!+-Pa)UEWat7rzZ{!S`a+| zOL1Vj{(hx6kfXoQ$3|?!`M|zXcwsz2#(S@OEgO?ugIU}7Tg>0LD+;^CM=wB^Dn6P# zQA&=Bv(?(5V?%*l_~>wHs`XfDiafcxeC*O~)RhP#&t%V5BLn9{p9|@qdKE`sic>R< zc`F8N?E%%Ovi5-STfkk$bL`x)-JkDtX1(YHBh)jF%<<(f8o@O-a)kCG)E`~6?s@v7 zeZjO9m^QdDZP{;O`U2-8Yyzgcoco^I#JMni7{51{+>GB@8NVHV8y_U9yq3HU;tsQ( zBlqe4iO!LV(rFR>oi}qDc-DF9icRZ0g~IUiq0Sn`Qra7e125w190u1%E-gt>5B}&8 zYMf?4>*gNs9^q`ICgkH$XzJLPic`nGP@KA=Z!j{|Ke%K4bIzn*}Rg4&x$upO2!?((_QhrO6b(-<{Hs5OfMq(=5 zQw;Mza;Qt9oXRro?P31N-pqYv`P-Qjdl-DO-^!*1I^A;_)VAWE71-GxuPScn*;TS% z66zPY7=6t9iDOP`GwbKQ=Avuw*y`?k$H=>z)xOV(wC!;s-X5}^d&jW9>y(o|sI4m} z9T~7!vK$>@_l~W$Igv*GxW9jTD>4y$O6Ih&U!$FU8$I`mX^&Xk-6J-dJz~p_e{bKi z%bize-ah&l)2KK5AbwG8krU7!I@t<8+3Cv3(d^9_A2j+Px1reNJm<1s$j^Qu!B#NU zK7_gOgZ7;yn4h-~Mf+r2zrxJxjn)s(tJ0lU=6t@*e54Z+%td=py!|I;ZxcB1_MzyE zhRl5^zhNKBZ`g;joVl!IF3P8o97(!zZ$CJ;KDyRV(ar38J}nL(?T*8ikAcI6Ugny{ z;iDNibbnv#;!t|RqdO0mhj_=sCpjJL!F1fc1>N@mCeE-2Fab;+2PRqz(|$PR$BH+X zp}RIxj&tGe(9zo z%c{nP5}o*yS^iX#do%Ejit&v~`VgPxUD3l^)O0iY+SQ3B7hx4Kd+=@O7yqRl-$irw z=K7!PkIgO{6iTf0rSdK*Nwp32rJksBLgI~de!?YY46aV54%8P}S8!=L_5A-nEsyU7 zzujor#p^D{@kwcU7qt8Ww7eUoeuXTSJS@{j-2k4)|_a3H@ozSb#B0vWpCFnb9^D}OlmmgbX-jS zl>BGW&x#9zjSr44ZhV+M9FJUC+IXVkqEKZa>-!rn3N0MR-}ptLJJ`o@VpL)1&M8hK zx@&JGI;^dECg-i>Ey4z!W$w-7-X43ef%=u5&9u)uN$w?9`y$DDA90crb0)_;WLW|k zC3&WOj6svz^r_HvYC6P`Gw?zrj?Bpd=7vV0LxVffCv^FW=n$E=3|#1c;zoR>TkxCi zch@9t8O!=T`%Yc{GQMtwKjh`1N3$0E`$2R`2mckLKSaALe7?{j`gsWcGkx7iU-y>; z+QbLgdC}FulLt4H1Ueoo30U9X>Y>;Y_?J2jEgeqk;0AwSD!lvfe9p`Pz8#PG1JTva z$yVUJb6|1f3m23&zBoGA__FrPR9tA`yWv8cR}sI^h4V$B`M^K=Txlw{joi|mq zPKqYI7;GUnw4p`5mCgD77obJni;gO$Kh|{2eP6gidv>a_Lowj8n0js5_?rphb~(2M z1F|8U0`+@o=*O+Z`)ZLr>Wi9zdcTFX;7wvbnk5#~4Ll@m0{)qcbCM=qmwz#o?jy_vo*gvmXpiO$jwod!QCs zT|o>Jx|083=DtjELfZ1V_Pp2juQY#sTQxj%yXNA}WA#eKKaZ49|FGrBtW@;rtW<1K z9yCpD#PQ`9rQrom=JVc0az*5q$NBD>OX+ht#rS!`!*+b)(UM`&GH?ljNH&hElXUbqf; zBwi1i`XPyZ{KY4hJj>*3(RN}f`w=pEo9i6WHt+U^tM8l&S5=pVHYeeO`&kQMjS@w^1g>#;nc`P@Tt9O!s$88F?yeqIY$I$Tc4_8ykbVE@RDFh-9m`e=PCjhxfzGR~t*9 zBfiZZ&;D}BCbu?Jrp#}-54;eAl8o_JA@jNZGT#;!W&J_@#?U*`gDubcj4q6`UL?7h zV7;h8dWiL+zb2?N%X*P-yAv>SyKI8lM;S-gum>`dsRt5E>{zu9lMQbxo@8q6a{p@j z^}g4dc7pXI)v`*kexx~cYv)GjOn4@>6hIaAJ zCxLlB{U)F*jVp7klKXx)rsppM#$2Dg8T@R4E`(d=_EBNIwmYoZvpS|Htea$S7`e3N z6tL$0pXeW0o9|Bn>#lZOSR0)6fOT_^cA~SPljrb>;fWgffpv7FV-JkPX0I;^lqo-P zv2wJ**^-RfgdIU6@1y*c|2!JnT2@sU>KA{zKE0Qpy@&8Dd-+GD_wu(s$9`-}V@-+~ ztbmu|v$Z#uIs+#=hc1K0bgjLVqLHP?Q! z<9m;;;MKk2)q)Sv&xd$5jrSxxDZL}S=K#m_x+M2+qHRk*6Nt@bhb>;N2x%WQd28a; zG(K99DY@{3+Q~Kaqda8R^SFOak9Jz24aNN1pp8!Uz*k^zaptSZbu2PWbKMXhQj@&_mP- ze-J-3YmlAC9njSs(3R?h%YM%{XHO~qmLKlN_~paQh1SbmTK^QZ?$N1eJjR@&&k;wW zc4ONxV)*zv^0j=oj1B1gydBw`bv3LcwUhH&mSU?3cHTO7TVIBma&6 z!Sx?$TjM)Sn@N1+R(#|(eB^d~tAK} zkXyWJt?4Y_8QY0nbt|~#T5*0G6ZErgnj7v1UiGcwox*AKR`mW(d?jKzt@wRfpWf}{ zG+)R6jqEdT&&qGkKe=>u&VU?T!<$mWjzC zk6-vD^@hDy0l|?&V-U4)M z=<<1FgO`gl)6k{npJVn;N#G3+_&dJOT4WCPZLZ=6%&(0+3*sE6cAN4Y zHE}3}E?ggjM(x+Khpl#{`L{u*TxfjWY zUfQ{r<2yA@Zvm%m(0UuS7TSr$D>hky{1cxToI*d!Z8rPQxu<>o_H5v#%3~qk><>)^ zr>borercENgMQ5Zb7W&8JI|imvYoY}IJJ1Zy0*+~xvN7xeWcjra_}p^dO7&D`ZLGY zVBpy+H(5QZb2jv@)-09(?a6)YWs~!l%l9?Ne2+f1@ts|}$Tzaf)+Qid1|A#1yS?S@ zNG_P%Z2oq|*8QPu(Jy`L+e{llb4%AP?lHIdj7zqG#wFXpt6TgdGaqcuyQc+~vBz{C zxJtU~RQO-iBFO1z;fy7(4nY*Tqgn(z2Kt&~S-#Xr)~!k$TaUn_zbi$5jPLaI2$XNc z{w(NBu>h;1Y;6L`;C;%IgTD=*!|$Jj&wm;H+xc8{kjdvaxp>UxzH*)G zSXyh%l5Rn+YpxEzJ88$(@OQ%R^LrzCln(Mi^>1EAKD@o5h;w&yx}CclDEFupTxjpgRQkDt{VK7iom7&T<7VpfG*X{u%jLuyYcH_%d3Ii4>+@t?7+N&R zX{7FAs%;CgrTWrT+v?KPW?~ZYN%&Z_chAMnn&@g`PxU;Xlot_?NOy@oTj|%tW~q@d z;<`Na$@iW*Inu71D>p&w`N~abrL83Gw$Z-cxBLC<*@7>PpndMe*5b=;Ag;NY{lv)C zTIFY~rQZ$oyE)75Z(>bY`HIn}Sr=xVYyE|+9rkyccl6I|_V{}fxf~~$S7l+4eQFmF zU*#|JzT>iB=l64zAwk{ug)mQ^%1 z&~Prc5o0XcJ|Glb>`T2@K+Qp(7fU}frZ_rZw2}qQjQ}^6PO>^4W*u(Ku;RvX;9$ad z;J;zGg@1gw-9I^V?`KW?KK`HV+!_OSQN`y^tcXMxBP;1&{(u*m~RX7%+%T5I+e+_%gF6e&F`h? zYxdd9Qq9u@u>sXRwY5>Do0PL>ax9H*`XS?&Pw%y7Yw#!*PAx=qQ~uHK?#nOdY*6g) z(b(UaeqAMUTlz?Hy9T*!^+`^6;^(bC$?P+8?9}E+QMc6CiAm0in!$gaao?Ji+q{dj zM|bt_^KdzJHo9y><%8shbAU$@yl;fgT7k)S<|^K&#w7L;vC>=+v(fW@fy!=V-t0+TiXa+Jh{4w-yP2eQ@69;(xEv(TbcEQTA@wtxo&5_s@DBg zkMiJHXI2=wvIY4vm6|fof1Y)gXPwlTK7E?!llzjq*=P1YujBc8-qZSA(|&TYZYIAA zUZ}*ENy{MU6#I@nNQEJ4R&oaFq|hDwy`lVy&{puN_p)!P3~2wvCgN%5$wB9k7{^Wam--(CRm)Cas{twxAj_sp99zvFRINI;@ z?FeFrs;-m|8%X0?1uQit-PalP%1g@HTav2qJI@@*^QAgUeW~AK{|L_AeA&GjzHHUG z#+UsJ?I<5SxQJMO4)O&48`}rj3;(Pf z4=rOO7oDYe$2FmTM_A{Cf3uJsad;<-xT}dv4l}lDo#zK97hyAI`oUZeVO)lW8B=fY z^57%9dcO?~C-MvpzXT0mpU9h{+ycQ%>y;k7s#za0xF#P*IZM^RTX3JjzNwC>K5S|E z8oA+jpE+5d#h#c7^zBC(%f*Z(y4fGldXr)Y^DZb!Jq|D4-Wx71$iPL^#uZ+_!Qw)& zPfYFFN8rU2%4tvVH}G|?2t9omy`gn0)*s`WO9EM}+iRSsgV&$1v(oc@qjRe_*Y+G| zO%R=Wrte?jd%cr`oRDw0iF(|p>u(3|AK<;0c<<1;?U9-9-RY)%KZ zY}2ysU2X7m}n{sI+V;%ywp1j+D94UL*wZWh*H(xT%?^S79QtcooTn$_` zWm%eM@^Eu=e`>;t{*vC^>-3$=O9RmHqJ zop(zahuW3=RebIkFs#URCKtJO#zyHaboPGymx@eZGBZAaKIp1p;KkJZp`ZK-d&9Lg zOf9;M_(0|vpk=NfSz~?3Ixjv@4P4|m)TH&bFFe)Im%Be)`DTjk(7)Ap)B=a*yXkM_ zl(B))Q9bPs&iWiG9ld@#ejGf$j=2gJveOiQo=W|;zMPM#{EHUsJZ#9u>DY-gi&R5% zu+0Ui9c*pHor8_d7`?9~MSL#x1$=Qou$}{dM#-@du9R!hq8t?3o(nE4+_S><=-*|G zLA9h{@|XQ9H!sAGAMOlDh7L&aKJ~iKF*p=>3*G z&>G{7)-sNj@Y>+zkvQ~u-v7_qmuy2f29V&}& zQOv1@_sO$N#r3{jyJ=E9c-5b~)^23u`k~tvVgkErX+0IogX`Q_^s z3+Q#drp{Z7h!clUJxtXg$VNBn+WY>O?)T&dhs&@F9OC4$PGGQiQr|!00bHH9w?w;WV?5IAxXZ8c}Tej+G zv+m#zz4<@#nX$1S%cv!6*B_cT5~uQFC$gPfJ2g%BRlrH@D!yRr2xk+EkuB_mmzudM z{z&{od<*?5&!!FfRlLUHQ19l47a6-wHHdV-yL}hMXS`f8h4@R1S|gY8Tl>*gkcZG( z;7gGwRChPIL$59*Z`nU+k>rfIH;l6ueH3Vecr7F_)UT# zc}DArvF`nSaiDOdbI%TJ-KXetD|sTv7x+?d$H#TcXKrCGrant2^&YaQqm)M-rGC>> zM+&GdHJCa|L#d-QoH|N{)KMBm9i?&9QJP2{rOT+JG)Z-oZl|`?4UyHuY;CCoHCI$y zs^|~B)bP?A81p^9KVDxqz-h{?;Z>v>UWxNV#j3Bgp{s`1u3GA(z=w(jy&WIJ9Ez#k z?F>A5_;ZaXE1XxKa>svU8?`BRQmX#WB^ZSU|ms>m$d2-;&C%`dEVX;omcdolYdSjXGo%ZXGgr4#CVh97cy7 z^QFo(hhGc|#R|xA<$ck()?WUZIhfje)XzIwfqd9T3>#c2=3r`x?W~H7KEOO5^8+70 zF#~@pzS*BjZ1Ja(73Ty_l%5m1d!~H#fLB?b3IFdoCo2Jx z7z7kC8;b~v6eYexr#V>wDLSZ02P^$bLfAA~q|~ZKn?P8sQOOa%W~Ow?5)n_3LIH(S z+hK`y0g6HEGj8O7XkL)7xWSsjy{>7{t04?2U(tArMf|n|v&_2v|XEc*3g%} zsh+bT$G4o*B8F`%-L?Ba*@tt^NDggsX;VclovHMJeZ18)SkH`_x`z*Fr z;jyu@U-^aZL4noSWWm82@cXOq#Ik|R75oMFgoeyk?~@wK)N2Ocr8WK^-e1WsN8QJW zcLp>Sc*uD`PEc!CzUcpmvCGZiJRZVM1b=8jmiv2rluFhCrk0Pgf|x4drGlqomlOM( z*y*HJywpiH&Pqbqjt)5j+e|`wLi5|~rPw(>xsJRca(oidp?~)3vq#?<^Xh5x(kp$~ ztP+x)Pq?3d?x=h&m(SN=cQ|ZQwf|(^A~TDRW5X`wr#*}b>;l-ID-OrugM4boiZ<5F zyks7m#NNXETEW$BY+{9+?;tjpm(t>z$ylY7;Z8$aT` z%;7^`lc6u|Y01r5qo^l+ljdnhb{n-HJG8_xi~I{b#75ZqfylPWjbb0XQQ{BZ;M^eN zHw-RxbDou-;DRIFuu&JK8+O8)bXNtn-h7qC9{<8(kIbc$+&blV6rN1q<}=|rpzhhpByMc(dT;`o zGLM{@+2qX3XO0W@NzP2Xx?3kYSH{S{Q?z8eA1+!#~tkh13XGPYlJhZJxX8Ab5N zZ@%Bc9EC4i`7$aG5&1^(Y5EZ#s@&f)m%JH?574whexXRE^i>^}os&6g$v98$j0Jz~D zk4&@$`m$!ZN6Fc0uS8!E{UNR~Z8yF{zMI1tCFc-ZiS0(^ec(EG&eGNEY4}DrozVJHg z={8VLcQf^Lw@^=a8})Q|N1;|JQi@UwQbyny4Y2 zf8~0*dB@Kw7z#gb-%DK((aF}vd3@{QJo4QJlW%(YO?+iJ(9%SFjQg=STlg!oi0r5G zm9d}7SH^yduWZD1hOg|#F@~IrY`b04u66l&{zr261O3V#%2>&qsrih*8QLzk#0AJl zZs_T+BHe?G``8j2-{3qn%9#Ks#mBmt_xb2^9h`xFoPn+J{c5*zhtXEsLE1Uh_=P*7PKBcNBOlecw2)yR^?uh3i|+1inzY#7Iz zi#_2Fiaq@}^IK`#pEIAznOFDqapt?p!LwsGX#>AIp+{ZEY?0&8uQ2pW@;1EGp!AXB z=tssj^>0N7`u*h!bl~GCI$*wcPm(obKl%W?#Q!hw61kz3v)0DBZ0AfKhfai%7v)~L zPUv6PF>=hHYo~->a84yJ>owWmMEG9{wue;CR)!V{4uXCUftODd+`YbW$2S=(5nh}E zk56TPGLU-*Ie7*-a$>dT-GFgNuiVeuU2#kJ0ci1;sn_+~HCn{?#kB9H&*2*PB;l(F zjn_Oad75Ww8u|(S%o*nN$eoH6#FYicDtk6~akFd2aqQWnjTofBSYC-MG2|tiaW5n1 zOXe=~Tp;sIK?Y{L|6*M|^Fbc{GWD9C`S@ob)0I$Ln>hu>6H|*_bOm!F-^Vi#U19`w zq;hD;JmK@eSo|sy3lW;Gd4kh4?$tB=D~Gb6!{F#4WYq4lz-^}H3C+?x<#os|W0lQV z=_~iPpRIS$cVLS7+%(q8v)nQ33G#esJhqycHrL3yr#L+o^zR^^##@4%I)grVHblEQ z(62b`s&mSypD~9zE6i~jXL0G{bN6J^X6fU@_ZVkusO$Z|Afwanaxq;wtTUH&a&IRw zANH^vS!NY+9`iZRRy>g6$&4>|SeWrZbrKJ%aeuC#@6~=Znfsw+3VY*QCVn=l*TlyC zyb7=M%6_G49)E^`TNfspdzR|tJEvz2`-W{@{aJWPZMa>;mepl@bBU9%g~>4~RiDcw z_rw+!UDNn|yzx7FmGRm9z2|d|@jGeIId|-H%=(kaeex<3u<$3DxQA$b z_KxJdjMgILV(%hOjr^a{^y5(TGCoVc4mB_1^H}3|=Ak}&Wgh(A^Le=OJM%Jr&sLu| zh(3rM6OHdif5z|o`8^l@Jq(&GXIADu0RBx(OwCq2#Ja^7lCZB(+4-|&eym01 z;_)gzK(($S7(8*G-;8Lw9%SUgX6Mv$33+?a~X^~+Agg+J#OH$|#)+f7L*7b3>ZBB7}r?bB$(B3W8ok$h0>q(Re#-#_~gQFO$TOB$T|DSV#2=r{8Jm#Kp< z(vtb`(+YSHymu0GCre?nek z&o_43MQ=OYqf@ro4LhQ95Hvt*%$K##B9%CE6~p>lzx`G zr%7|vVw>>HPSQNWD;tnSz@NMZc=Su~X!Z_$#t|l$s$MIkb9?$ROaE zuab2w)I1Hy6G8SHzcuIkHfRQUW6*@L+})vMk(tKxLFN*qO^7*$XxGA;_KPeM)%G*m z1ZGCbBIX)oT>^s!WRW6dkp^Uumyks`2RH78Z_EaM#ZUh9*xUtk_K1Fr4@qPaaB8T_ z{Sh(=V}nl~AN|-^x8R4Lz76~sVcx%OH{?8}*T*$(1D?j7I2vE&y}&6}rfAW7%M?Ea zpQG`i9ox~Dsn=e_2lgKt8kq$CZ}N^%dF&goBL$$V!smm+6QDJI=(fb>O(J%ohWH4|FHTXZg8X1 zIKw@C^s2jRYurK~Ug($k@QaVWs5f9}wuz-jz)DtI2+`8BRd)6<+*lS z<5k~ej5it|HS|lyl`*AH<%?jwf8i{se#l>s?PrtKkM{NbVDC5k`Nk#vtg-s39`m*H zd9A0PT-8rDdTUuK_K50q*HWvWeK+>%N8o4WzbQEh_#rzEu$%B}DiF9KUtMPX|JpO2 z0mq*4v;nTU)_B~*qxQ{&qGM#I)|$9WgkUW+K+8lcq{o-&|f1yPhuzRS%!Qzp78~j zlueW0$Ex{|+sFRIaeghlvd)z77a1ElSG^9)K>p7sZz4(S>H|Jobm2W~KJeaXy5QrC z+Dy7&$#NE6OWzh=_hTMD&Tup@(NZPmFvImaeTyzKllm>?Ma3R@ojs*k@pjhf@v+_< z^tD2Cuvym;>xnI;Ou=cGYje-MQZIp%4?ZWfOXL`-MIg3m1t-35cSga9-$Q)%4&hl7 zPD1-d_HAK(3AY$@PvW#z3H*Vpof?E{ed`Un_aW_#z5AwXnKh^C_^*XkkiKMY(Xcu| zUuqu6WU}v;&fsU>y~gG9Zl3jtTsWjRY%TcAGUig3U7dFce1fzW9max>&~Xbs8|YW< z9kBV8H6Qjl2wX(}3Idln6D~dTy9``b%lu;YUCkH18;uJ}uE3_#%Z4}}c`{(g>KpP* z`62_k$&%Fvv2WwCD+Qc-0W!N~Z<$I?TC}|GOhK+eM=l?#bxiK zW%0YnOIC7t9&$L(GPWnk^PF8zkTx>5vI$1D8$fLYbhsXypiiD<&hqR=Wbi^{ppD4j z4anfgfj5ecDTn%a*~s8U3(EJ1+*Pz7yGI6poA?i+tgW&@sV3u?-;mNR5N&^C9|aub4SLTRP-Pv%TOR`oUq* zQx*O>44KTqUaQ;`_DW*nNhk%N7lEA%AKdIi5^*I2z(2__@E~N*9=oH2Nt7U#z>%rB6$KQ?wiU+0!TVuY^8> z*eLu%@LBL%F|=LUSaBRqWNPg314OsKgJ%OgTa;we3vR~-B|dg+P^XXe8k@RKHdV8t z*Vxchq1`=W^Z8bD>=0wW1dV3BHiLMVB)6aUv zF2gxJobAoF_(cy41N4jkwsXiYTT_@B~ui*DQvPF#V$BfEXmHHBxQ=zC9{k0|=ygFjcY@vZpQSJHQdzstej zE7A8y&G!F))A!2Qefk^d`!{0t>3>V#TaNzy^!+6868awIRq(A{eKzQO3-2xZo_pIx z`tIah7C^TPIhW$&>N$_fzcr-CmLvXJY(vUtJBeq-)-Vs*U_LU!(+lS5cfezp!egI? z$I2XpclqJ5L1=i(X#At_0`iWU9qEqdxh9{TD|{CE+&Uha5SeGG@LA}Oh5O0YKEONV zIphRSkY|x`JwcuiK_8Vo6xHT1ZP1~5EieAbxjSMk~9 zvJdnT%cm5drO#e`w#cx#)dK5hqTqe#R^kz2_-Q+QJ=%XLd*EY@g(=9wz}Db{LtS%Z zeAbr(th0eNyinEM=rumNt|9jr;|tAgWXup_TKm}^R;dhGXi66N39}Rs)Y&!-##$7U>mCWbAqUPiNn)w*(@8=p8H6QU= zitZ=;?{f2aAa)-3RAb>Xhk1N*8UEw`oAzUfOEc$_Wz`TAdCOWibq{05yMyss|HtE{ zx`M<3$^NtVI(x78-gishy}0jVV#X7E8p6HK<(ms5YHz&XP_}c6|MvX8#rl2x<$qsi z{*Hg$@`XzumhD*LCW^sfp$$&zugfz=K9h0ps@0|k9~FJ+ZEv^XU+RNRAVurrl0AM1 zTzd#yi*wqPo^RM8Q}CG>v0W#L?GSsU)WZ#nybi4qd#I94kvRj{NKc4<0k4<4CZg@& zYM)Fw<|OBP!&1#vEb(gS7yf)`T@kS|(2ekD$(4x>OQrz(+xTHVb=FB>no4fB7&2% zvqgrpHST6zAM-g{&g)~sfEvr#xKotO9$<`D6%53OCcd=3jVcd1k$H;zCH8!L^p-vU zt?^NESSo8YZO?0C@UyFFfU@VmGsRYVwrSvzfBQV&z0R(=#QxrL#vTcE*dr2q>2I}j z-=sYvby)+4G>=osor$hIaMs(w99j!i-H%+(?J($wWq`g&(gqq+vd(lsjT}56u;zAQ#+dsgEM?Yrl<#x;GBC(fB&Zfq@ z$l3oSb6~!qCMW$k@n>LvYQ=ufZ!!Jv9_D72K zW$1mgS&QhXaqv&6fu!a;(N^UuG7`LNP%}2(vKDVr4T>;?E z`8a(_d(lR}LFTvu-_pt~=Ek!k_ex#j_1qC8?}L1|;%s4L68;olCUqr;kUufVu7_y% zGVO@fjkK=T$hpXDoI#rg@+nk|Fu(tWF{HgOl{Oi)P2rXO^pPLv|Df7)4f1t>-{;)- zGf(gh%`^9VKl6lk19#dUx|>>+rPZGK_a%E4d@tEk#y-hC^?!Vsnoj&a2Y9^6oR(_U zYG31ljpVfV)S($}D_u@Z(wpe*s`dx4`Qj%A4q@M^d(f~s)`=c)qJz5ToVnVo+3%D> z-FuBT;W+b}cBH@)UaNWT`VKL0tnoroimR$ha%RleCgb%7#2lZxkfMJ;?01JP*VRE? zj*b-Pj*i7Pu`$&xG{<^`u{y$bPiKeSGo3zt(39!+u%F*8Q21wuhDaWb;9C$|=W^_K z11x;IPsRGy_2ApxCcahoQTVol_!xo9ap+xmE%AG-N$$9oxpfH6v95ye*dn)(caV1K z$zy2;v?D%SS}ioBZXtALp~PRZu7yPsSDQj?D6d5+)4yA+kENdB^ttAG%USOOm#%jXd1cGBeAl1fH_z9CnDv&K z>(x@!dVl=4taq-gS3A=E#4USj+27~b-{}R!H4cY{-$dNdDEMZA_!Vv8LSWy)+4mB6 zYo7PI<=Clr$$U7w8^ut@b9$z4FyZuXz-d!Kl){(2PLJSAC+qEkR#|u>v9X=ds)7x+$T;w4+-E;M zHtrkRk?;fK_JnQeYW|O8lXng6k#i$`OdC4YBXhj#nyG4@t65*2tnZp+&)q|lJqtO% z)34HY6>ttFaRyqFrM8&p1h&$H*xNRxB{WOEO<*@R4bE<`O7?~t3dE^pQ}^4?8M%r4 zQ^hk57kFCgHP2>ffY71~HGPb8+GM^ujC1-nIf`u)Q*`ePTf|2VPC1)mA5ipwv)TTJ z-E(}e-Q%X8Y|iF-=*h^fZ4s%hGV0`$ z$Haop%J#MDl3qr<4Rl(Citz1L!$xeM?8ZD;OZW7jfAc$ao0^Kp0<^kyYK+*N%w z&nwXCc4*O!{oq+wJ0o}4uwm}B;&a)%-Rx@>zhRpW0vq_ICkTA7ZFzz_vGLMRFPajI zpNE{Du4bp_kHGUKaL%H!oqV5ZPpvG#*Q~x{PvyCMzS}_j-v;ij+L%tw^jC+vq+W8- zYsjP?=OuXcRyuKg7wpfec^(E)ToQK~$+tc9}9cwgC2{?U5@USV_z(a?L zhegJ#%=_$;KDs|2JS;Ns@KF;Ff6Saet+jhTTW$AzhkiCdpS}~tBQ`1?adj^qQETnr z*WltP_OFLW#K5#;jngCW6L_6rFJz9NM)8da;Ow8^8-IdtY_JbhIQuAk<59s`*7vC7 zx3WH!-^#k5sC2sZ1)BS|`)uyKGP_%9^LZ_t<@c4u2VH58FE^j>z)L=amwX3aqTo_~ zk(Wfn#lq`J7F@oDmjsBp_#eRq{xSjl-}{pZdsZiFo;Ce6&uZw{nto2tcc9~HjwT)d zXJ22}XP;=18PN0lEP9SF_#E{7JoLO{o8~#Q1-y3{du!420oEF#=y^}B&nKKC_DJMT zxtm?yZ&z_lg}RahV)uAk)E;j!&d+Da$>*T==b`tXirxgSXF3Lj&zbc8cJ_Vnxt|^z zJYGAp?ZMmkY_kuprGAFz9Q1xRcVd+j*CcvbtTSI4|D||CheHK9>0B zjPQdGX{9S@xAJ=VOm5aue0Vj;(Wy`E7%@10ZOaxda%dlM!uY7m`)Q>^I)}UFQ1306 znc*JdO;YcNlqIWtmLXZmDxc*-k$kT~+mlp&$c3gPmB%D)MZS!qUGO7A-VpzDB4a0Ong!42MhEg`?LwRfvm~Vw^u$^7PL2di7k$IeePH`<;2zE~ z+*5K3e8-MFc!8Ka=CT1fZ{sa7vfd5GJT?-CCTHv;=CK{w7+;fIq zqg3uQ!xmP0i{0rNm*7;o$-wp0H3r89nmXqo=0DifIpG~WG@uI_(5Yy^KuZQyGF`?W zO#b{g(tvFOCtxh=>ExVuaqg{oT4((;U}~Ln(Ltln`C-oaVa|Dag60{NqbXV<^6NdU zb)0{c>zME_!6ESByL_itjC0-3>-~Y7TtV=$@y!Cg5BHSIS)Yas(2SlY`zHEp3Nn?* zn$JNa_mY#IvrQ}An%u9sGQD5(Npz-%J*FHb=n89fVkg0G=P4{O@VJMzBwPMBTjK&?bN5>XdK&YSHPrQYMh-K-PR2_A=YmMa zy#;DrAN6;7y6x%V18(-T&!FZ-++8Q@9{*cS7h8k0l{WI7z#;v|#d=qUHo<~Xrk1X9 zM8xhQaen%B~+R zvdUxH7uag?8x3)J{s3)y%&F>NA;)je#vbZt-wF(yZJopzRKN# z#1?YtxOEl3`<81MJS{u}DMRP!%mjAISy2k`-mJ|l2|?;M9;nfqCHnR8ZW zp0heRXR^QSn|d!cA8j{6a-KDuf7hlD@h7<+TjF#N$w_wogt{a{W+%HA z&v&}dExF$P`IJm_jwC*7?)01I>0RA6J@e)fdS+p=KKL2_S0?Kv;6W9zIm6wL8IzOs zCiuln@-!B+Z;ORr+-&j-`hA}LlC^Yo7w9F)&d7{-MJwv`z|F31`!#0%REAmeB17E) zDX}&)_QOlfz3DdhrklONR#Ix?d|u1>EQ79QqAMPFRx7<8pV9pp*EfIv4RZ6xYl~h% z_WvXoUd-Nl9Y5YN5ZHV&()#@94#~;+WVE&@z;j;5<2$6b`X_nT?~8W`TtAs;eg5GN z!NX6cXp7*7JpZE|5;G@zfBjD-&*}Q(>}RRW_j6z@^2Gf!olnei4E^Efz(~Fq+_8TD z1^5@chGi?G){y9o+@C_uquK6r#`%(e!P971l$)>^6a|Z%|ZU?{_}2SR0HD z(79ur39GTZmawl?tZOOHi0maW9KrWh>~ZvW+43Fx9sS*P(jMGfgWO@YB|u;RJgsi= z>~Y{zMp){lI5_(@&b}RfA-;uoW}L4VzR-h*=JOWsl5?TX3pgqJWcB?yH2X_MdomkK z(#d&B({_EiQ{zrEXGHMb;wz3DjoN_r!gSYBVi>G(zTC+^LffzXslC_p*Z;(>?6dX* z8ORaWH@+3!hWQquD^Fv*lx4l!IaZqE$WoS){< zz0)0fa9WXG0L%)3UD3E|Pl$b!TBxn~4BGe?89`+FYp*e7gmgpqh~CFo-D6f1jIXqY zlA+*+3HN3#X@VD-nzK4#u+U6sr=k^nckNf;g3uNV7Yd`sEXrm->HBhcAUw$q9!!XO zzL4jOrdE3jXd`R=Djn=EgH0F=1qM?!PcIl`8!~Po_YR7za(z_)mxF<{6}rC@-Q>)y zS&Dc31m5Cx3~Y?d{JvXw%@fqP5?-@-7O(JxpDfYbDa_x-Z`cAlMQ8EXB)V#djqoBv zMdOW}&2(Ux4*$xBcm14uK{A~4^b8wu1n6SRa;O720v(6vmi(1E3E-&AGmTt~&JU~@RJd^$nczFQZ3-$HALp=d`s_rp>!f`HgygeKOJAqIB2|Y4e}5^&R8Fb z)RFrYcj|@SAny*pMrb#$_%=d&i9;OBEBbo;b=NhVV>r6(j*?^uMtKYP-Kc;?z z?q}#X>G+;SzY!eqqVF6LUo@X(KSMRt8<9I1S5XrSf7tA@VqNMs?uRbSX1qe^=4?%S zZT21W^c?bY%aPS*BdZIa-FOqc7v54p9e<;SzjH?pcTbDoTIj6kg)(Qc*9u-(ac>T% zVYBz6OFu(Qi99DdfW%oQAYY5UciD~He{I@(H)T0J!@;MCavwGJFnOJeJuI$|=85mG zc?6!PS(}0@_T!eJ+H3NRy8rVK^17B#Y2)r*^&RcnnvoN1e0L2zXN{(G#sskyucj`X z!?ev6nXfg*>wIk2t#2gjo1uxV*a=%lQnwzvVe4pHMEad?&T9evx6ZVC+Gg23iL6O- z`jc3fUD=BhRc#q7f7i4d*NH!8{oAH4hpkRv^;Q0yZvih^XUl4AHo#44S+@yKVm}4H z60sw;UGElus0h#%d(9UWe3am><^mH(zSj4q;brjrf(DDkA? z!zq$^gbg1~uX)7yaD2o@2)w0!gTTB!2Ic~fc5DG7=m<}G+7wTEQB za$jyHHk_5vICAwSEWHek+Xi05(zrh#HfY>v`j9G63NGf!~2jiRcuJpKo#dwX4c5cmN<86WNGuHMpj?f4<#)rYdaY+-}I^cofg2=a#Bc%?#)VTK{XZvf3*=yD!8Zx8}8PcANeMV%+J$>*Mq!ESRUyBepOB8k`9Il^U{Am#UC_kO20yAojF)YLbQ0;+tQF zzfh0M^>P;Rg7w6`jOLEsvD^b)ha6C^;tHXKx4F)cXN)f432Zi>!-gi$2C<_Bd0u>N zDy}f9&2Pzf4{W{|S7^~tnQwr0);`5SN8`Y+xH5Pkw6qHNEF&*u<>M85WNs@T&y^T{ zc=}M+!*7E_tUCuhq)wvBvmh3mxEk)+!X_^9P9wm(gXES;ZkL?p2EM;AhWw$;g%R}| z@m#?M_G_UQ3Dn{v&0;SY$G;dlq-cKvv_G@);6d<~Jr(hTC8qcr{1#v=@E{Vv2Pk)9LRWh7PD6)~F|ZQ}Uf3m;pU;mHuOz(H--P_jZ$;RR zq>Uwip!2Bb1;-w=o?UB?co(ajon2mV(a(FapU8WOixC-(*b8`dg6lP4($gP2Rs3PG z>$RI_Cv*(C>vp4-w|5(`Sp|%E-Vb~%IKSg%{o5FG6?S>x+`wLx3qBG@GYeVB&RGv2 zrx14(vF7k1a|i%`Vu&Jse)Fwn-}rqJ{4nI;J~!^?*wpu_7vi<}TKMx3b!Q;w+ZxlT zS)SN47;zsC2~YhTwG=(j}|JE4o)|A%xj2U>O| zx+p#ZM}m?^4@(_g4%BVJ8-y=d{2}xWWYQ@mZt=TF{at~DJc~V;T4YH^t=%GQV&dDZ z!FERNUh%_7?OyT2JVxza@$E=kvHbw^!^#hX-^EY6yJWwCos4PeH=?76ZZn&DWIt0d zk+{70#+B-QLgRAvYTN_0l=nizlaO(wM&FGeep&jdBmENkU2dMacc9Cd2*&q6D|9Zwt?asu(Y)E)!x64QCG_R2R zOEznfrNn-1gvUxPe@*PT#g8S2wi*^`|+oNt1h|QYPh*x zx2(6G^;WRn`Cq->HrCtTv)-g|A?NJdtZ`I&pXM9C>wMzdwx@R7_+9OZHulBKe59^; z;b(&9GOwh@OtmNW#-Y55%%WmiGoZt%z$+IXGg9+}1_8eze8#S`cogR%k+YTo9Zhxe z418mxlV>=`L!6OqpI(~ZlC0`WT#Toe+(qAb=m>iz_^KgC2`|s5K2tyJfAQ=|0`aAZ z$RorQ?z(}!PAZ>3ZGGw{bH~>xK9BO{@j2Px*_qIdT;`ZZ>^N)8s~%d4 zjU4;5HZ5WIZXYM_>kwZnR*O!Z^U_ z-|1iDPvU>O90^9fh=E$^Sw~W@_)>2oXPDaUz7+0K8f1%vhS(x4naH@gwn$rUvfe&2 zSq}_CpC5ugpDD4VGIg;LP<`K~n;-p~A>2FCJAtjq*E@`SI- zru&!hpI8u?$$g+j)O-|rF8!_BbFN;#FRHuOJ?URc+*8(C5tCxze+*h>)Yt2 zrsJsiF|Pmq@LavGs(?8a=%JBQb@b#s;y3gBoIx*h5&e79VeWZ^&dGkHv7YYkM9Lr~ z@t^EI+Yr}_PalEy37_`zy?2Th>HiV@e--jRefa`5moLx2y?FYOT5}u0J@s3j_>`q~ zoIU&=G}sT0PD--Zwg6A=jH{KpI8v`Ih8xV^S@T8Tpb=v& zzQOATVDqAlvmZ9EQHD%m*>4Ndwa7c*T_LgEVk0SM+_(6waM_Wh%9rt z_tOf;CG;pBx*)J@TZld?=dRqiYp)#JO4|}-YVJ@I+6X5C=Y6Z5PDGJq?zL~{OGIHRqc*S6dOo-fdEp>H`y)}K00MMnLV zpN*89l0iK=JH8V3cm}e@EG?2fj5`tL^SQ|Q?46FD%UW8wJ3Ak_966ydfYET}lYk~JOR8KJeZ z7MYjGh}54n=F8cAm$j&Ma5i{G&0S=GR@UcZ3_tAyg1f9u*7>WLHCVEFK74LJcx8Kf zs!mOXJXy;I_|sDQSVkYS(zGrgbI3*?S=Rr#qd5=%`ZV*Z^x>bBGb3kR?9B2i`3uo- zQe%|e0GtxS*|LAscPN0T_Vhhi>yoi^=sS1ob4MMgww|WOPGvUVk=OG?;q%WQm9f-( zfY&nM8$F+mTc16;?B-Yh&iP0k3~K3-V=ikg=XDa}PsS$MT2sDbua>Cd_u_9Q&-wNO zYV{G9Pj2xc_GdHrMqFsE)aDcV7N2&0f_)$I`|q3)>J&F`c+$B>_Us1o_(Rasy|jHA zpW+C9!xzx}%3q&;rjYD*>=Cj9R@z<^IR&qg*?^i6Cr^n-iS%J*45}Cuu{WtDK4P@GM&Kx+Q_2mE0%~Cn# zN9Kx73hneR#;)?1=BW{#6uO1XrF2r!P3|H;S@hB>YV^sT$n$~e=&7^`l<-PBX(RJk zN_(sAPU@NnyaLmVF=E?T&qt4!Ah9yjls59 z0sf)sol>71+sonXeb=})l#A^pp>Zd_WmSfQ)QBV*`lZZ*$bq^rL% z>q~SsIg~t-d@u4yQ+zLZ#D9oAKyD6xK;Orp-yeZTJ8hn}K!V=hnxG#KC+Ojh1pUOB z1pVZ>1U=YH|A(MC{k7M8^TCC^wB1?YDUQ=_3x2?FA3-mU8FyoZz(?xoMuLmANWWBV zLO1Q>=NPivTP6)&#+g_Fy%O6y`@LQ41|zB6ihPc~44(EyMlaDKrxp{>4Q>d```Xb} zcomuo?e#tbN@t zy4MuVxJ%yL*QxlHw)Ysi^TeOt-)yf7u#Pv?o+4^jJA-3+0)4+y$ zZP=a}Pv9baT)~D|mVblRNdFtC*>ex{>e$xjkFI%c>*;)ZMrAg13;WdevUP>3eXq9U z4n9xYmGHR{!sqM>l}nkUz)AK~a8>0bK^MgK^;}==MUmyDzw*t6Y97WMzTvXwM$FWJ zsw{)gvBt>ocb+@?)|joQ-@56&(<^T7IL&&MY$No-TIXukIT4#@*#}cptdiANueq|$ z3h8?oJPi1;&dAR9pF6td)mKj+8}r`jV_Q$idc#Xu?>$*gJ^uyUqMo&Hxy;(BZ#G@} zgC|RT2XpldhbPCwlVwl#!@t>+Cnmv@<#Pd_sV5Ry2M_gv$D1Blcs>Dp$0xwOTt3tO zW%%<-_%l4NazAsl;JCJ*_M!vb!C3Frt`gSUYi-C3C&8Vq$=Z>Vj(*Ks!JVz(j?j?9 z)IvYWxSRMbm-$+Kerp|e!3sGqoa^Z}-8xI(q;EOH$SNM>C69{npI)HH;d=nAW-54BF#Tf&p|){e<~+nLFF`?<-wvFFH#a!xoi!negY(TXhDhP~kb{vYi{Yi~sF z5ZsXXol~orCozDhz|SUZC!#ap+d{uG>WNAYS{3`=2RXsF5T2W-i5%<+aP~S^X^})b zGWBEBjsl)-$ioKCX^b!RIPHz?;No#;NSOZ<{3{sHzu;#ZcMIlX-@OSsvDG)))z0$* zTO#|P}=_duR$L!HrML)~uG?mM~A8R-`nWkcoju$w=tm-Qsypn0r0_rrgKezyGw z*uprEx1FjXUW3{qB5&HO(Utf-kamjimW^@^<9p_SoRaU_#~h?~m(T~1k!*$?ce~{u zy4)Nb^mP(A^kWPeSMpw;W89O#N9Ll&#r_fC^ZA=D&i5qv({GoiTk|&NGn`nuGovW>+KE)(u9c()x$1k+ZwlFX4+4H`Xy)6jj04VFHnt@LO0728ifwV94%zbj$xrOf>{_{3`uJbM21baFG~>_cxhP_NQA zjkzvi-i`sRRbyj8jF*YbSfqI@o&We~n;sr((@%`I=_m6H8^HI6 znX+mIdzK2$Wiaj_#vQ`AnT%URj3+CyYv7o!w$0q9fE_lMnjdqJ4@C}} zBl00Mx$R^6`oxqE7lIe2eApMis*(>IjOT#8C&;tGExhu4hyFZU2zwGO_%7I=4GgDvq| z{)f1`Tje}+KgdiY-m2>upQrG7n%o=0S^SvK(C5zFM7?t~|A)ToKJ)QR_qo9R(2t?+ za~0RS&&uAeYUa3xe_-PSHtVB*tLJ;@r@FW2&Ot6)Ja=eT$o#9+{ga>0WB$nMzL}i4 zHPs$(5o@fk_B6kDj_Y(Y7;^ysSGz?9CvPOuIg{6I^tqWk7bGqLe*B;N&WaCnyZE)z z@N1pgTjK6KRO&u+>^qmz_HJHm2U9Ib?J#A~NJ?&M*s<5B2cSa67 za!zV!BHs*k{f4>HkB5Gg?q!!46PXXV*h}xK>92HEqfSIpCFi<^8ht{lO2d@%7QNX8al-0rQWMw`i}4tqA|zX!K$9M4dRSJZZBu z>No589Be{L{-$P(8e;*^Jw*S@osn~1?uh{Bd?mn&_AknPSDdS8x>blACbTZJ3jR~e z-mhjJYv4om$jocumFw8=2KIZiGjd`JvduPdXeT@!TBb*_v% z*n0aw`XJ}05X0M-+=zb2+x?NZQyWim22aU7ugEn&+8s@wQaBHN-Ckhg114|1ezv|? z)fM;$m)N+Grz75({8oa$Df+khd=HI)jvUtB{0G02R-&f^McT}&|2ggcxAU~uN+CvPphi)oEUbpHt~5$Jsd+X zOJbiz$CJ7*$x4s2p1;y_*toYJEF14yhaJ}mjO6Z>{qXCTh}Bv*fZPS%i~mA?6aCCb zTo8UP_^9S_B10D-OBbR8{QER~pWwT1iWbS|PRM7mUF4&S+wgJO@&C=*V_WnPbGD;b z7ma!DXaF06*vdE1uLHgO&F7v!3T!LAgSlq`dq=}vud3f|*v{?KXuOPa8k$a69eJNA-Ub+$#=CrTw&M*Oc%@xQLB_Bek7Ph{_WHNtnf=Z3TF zo8pYT``X$1Le6?2_F%tx*2}I!FMj)GmrwYrI?sk&kU1CsE&Ucb=jlP(t`i>%@av?n zG`rJtg#B{?C%F@RJ@YZ*>BYa8*?0?U5dF%_84QpkW!O=znvu4~IC$A|;@V&Sy^0;G zlUSs;;JY)iCoL&TRWT*%eNC#m!&$v=N>%yuX~i0MIosS<-)F|=LWBL&!AWQcd5v|2 z&QzDdE7M%B6Qd@y%s-v=Pvh*9XBFh^gphq&c-{*gkTr_#96kTL-@Mmda=66(oj;el zt2FJ0=ZM#nc$C(w{^b{)hx#HH^mBjuaesH`d}uWM`V6!!0Bt+lP@{heZMy@SCi-MM zdvUy`+GFr@8#Flqnj8;Jj)T@2GExvdEQJ0!j~vOLTQtrQXYg*JJt?eDcyccC`ylAW z5Okr58u7P=&Xb*O(xMdBlFB@Cp_zlAZ$qHB6QOI40{uUuc(c$bBYwc(&r@#}`qZ00 z`B@NB+s0k0Iz!M0Zg%_x9YR8z-Iav9b6)aL!FN-H=WAh%0+ zx7dYp`(cNrT?4+SxP92|@kI%Z?E|eiFbZ0*pyKwbT}F;PC03Bw8^`C(0mtcU7Pwu&dGphMAvC9g z^Iq|5gXYLt^QAnsL-p|{cSM0}!uS1$jI$Bwu<1^vcjddj{qNX*ug3O^jb=acc6RWa zF7ADf_;@zw*;4ng7w>hC_+^Qkm{C2`rv0!DylMxplG1l@VJ5nd@cRRvCg*C(bUGl0jZ=%WL^ukt_@uMivHlRMBEknyC> zoA3k6%3|_$fSzT^kbCHh%VVf@ULU(sR@>Zljd*hy6 z*h0h9oL{aj^5e5Af~HhJQv&mWO{ErLzYkYvx3~fe$p@oOc!l;Y*X+LbTK{4#qTqN- zo~vB;BG=I)KRDQn0DDm-wpnv8#J)S1y_m~hDElsZQ9x|SdfCrmka7W1!z-q&`i?mRFUjaP}MeW&t{r+tIa`p_G6nT?=moHCrsXE&7tdeC)k!4EU zVfL(wJqxpECxBgL`m?_XtxZR^xe6I4!yQ`9Jl1dq>)E@t>{(#B-imDZGoa%PsrJCp=x?n0yq|j<$#dz#SMZg4KJkCC=Vc-@w&lAD5_<3X%8I{j&wa_}p4VM_ zanF%KL>9T+o)7z)JuhR==j8V6`QhcuSx6#4buuiWz8=24}a8G53SR|Te( z$Nf6F^Vq$(Hv-*wpqA%7cBj6cdIO;NtBpQB(UK~cBEP-zSH7b^;zlbs zAfpB9i8V(SwDI1*rXVtfXQ%%9*`uR={p-`j2&!kMAP-nSdIh*IEAmeqvXj`-& z*-iFA?iQ;_(DF85(`&${C$Ybo#8@obicRkg?0LI2som6Efxp+Z=N(b@Jl5C3y4qNm zvdytJwJ!XHB6(!%leQW!hNJ3mj>) zUD_OBtiVoX2UIZ)0=tH@cX(dvyu%}RHniZwmbJ;94Tg`HwY?1NSX+>_$(_Xq(-NBx zWjTSZd50@w2W76k*QUnvHJi3dbB;mQBhLm|pX{-W9|aH9=9PObz(SsryBcz^ zOK!w2xuM60O>E4D-u3^H54Vdg<@>+GmO{H6)|Sm0;U^dU*oUe)H_jc{RO&AJvQv~? zCb%I!G)8y~vW*dzq832^(t0o#6eQdT=i^VlOfo?b>M9&KSqx-{Ft$)K7eT zr+x|^FMKP5*n=SO4D5!+DcRyC>~`p}=6L6c503+H`*q(I%V^00&d8xO4fMgR+n#(=pG5k8isDuR*p;nT|z&? zW@zl87kK&L;gcNQ^#Z%}_wRKN{O?lt;Fc2i=L-wm{XzxqYj^y}Q` z=MQy%HtTwKR{$NLmD)&Q_&^7AwPuwbI>&vbvlFS0R<%RzGy5K9|4+at44KV_9$;tR z(xKxS=<@>`fBpyVAcsb!CpbN6=vZf%$B!SJr~epwQchim3The1^NOB4gC7nY>AV6x zp$?*_i!)UI0&tHy<8kJh>xq#P+8}g9&Zy9pOX-O^cMrZ7Lr-GbT#lanp0T3o$;V^J zgTuG4&K3TAKj%aC#qg5c#(KeeWk+wc)kp}z{?=OgSa~3utGfCW}jQys{Wyy2de@hM| zFyBbt>BKAKovt5&Ey={25I&O@_Eep>f3`(NQVYz=H??VrwbGAOpQ<(YyYBYU_q)U6 zXSzpbU943ov}B+14NJYy1XmKa$;~eh`Ixb^UU?kW<3vHx}IX}+LBxPzQ&pcU=)Gj0+@&I&X82ob#cFP;kMO40pEqnktw(jH{!RHh#&3w{r zGB&!4)CBD{_AtX&y)nzE6LnYA*aAnPWdc(lIi$lFdlfmP@e4-oiR&9zi*3)-Ll1X5 zBfo_X2B8bkTyO+>$nVle0{NE0??T{n3%J}WXZyaws53CeH3+=4Y`e1O7Ef!XJ+X8* z${8zMDE1#s-9hwnS+Ty7`^Z|rmwCU_^r7q-_OZx56?c&CYW^*}gtMCiT}E$Gxmnyv zGIzE1`oV!IZ*L;~+Eny%)>8e6vjgUy^% z#+t`i6^!)?e7Vh(IbMM;x1(?5Q#Z=~fFX0hM?Axllbhqx7`UXJvlSMaj7lc_VgyB6k!<$sGaaSH=96eGl6~%pFmd?2#|{!q_(Y^D(v!-0g1Y zyQh1d?Fk?9f^Rf+JCI+4V;y=3*&#IEp|>C-wB$MTz-aCj2JijgiNtNULC1uD{i2i{ z-WXci$D!qgiA9b7QL(;>oZd;|m$hrR4M(oogg%H~t>pF)_5+dI<@FSOmKSNI@7kzK z7LR`dx_grE&+DMKz0nP1hhL>}?cmmiMA=6)?F-^(%vw~OSJo8d%!WAQ(nrhPwoBk|*vgEtBpxkxtPdH>spQe|uHTwt z)iB=`%zHUDcW9cr2Ty2dPyRNvL-tDc{|jOs)SU1c$miHO?fVS-|ccs^YwW zTkPKiKlmf^tR+`H-26qoo&0ZQi>ku+1)e*_Z;DMvVnl?#X?s4cmsg=*Vjr?>seO<` zW7liJs|EZ$IIz23XtVdP27j_@D*7}#dK&A)Ml3O5Z?Z=GgGOH_9*Hb%$*nmwm*xomz`b0Uc;o+jy~7qm19p>pYtciI zla)TT7Jnr)crJ8Oc#Wl#23gZm+FLa7I(Uto35({4eJHk_)h3$m`~X^I(jBFX3GJNo zB6;%oKoikj1Sc#XsQgy;qD|F=lfIU%H)`xZ3hd;507dH<7rgSUWWJ(n3cV|*zl&pj z%k`A8&Panpd+pR4*w5D(@bS@Bcw07YeYEw{R_RW(mzXnSt%4KAodo&JeF(O==s5yT~<%t@^S;BZ5hG_uPvYMd zyD)d8N4yRA6|q;I1itg|>3*UaKHXL9tM~-O-XOl*Iveu$VraF{-i7GYz*cI%cpKOQ z=upcxct3m5hEG>)J!62yCi<8KkDATdmDqBb$1rs3<qO-$_E^z#bx zXTsw*JpK{B-Azfc?W=m)pMCxE?GHMgM_x(Nj=b~ax7Ums?tGz-w)W^$TXJnOeI~^v z)gBz?d?C4d?a>jogxZ97?TOzr4!i)`I^LDXUU|2mqq06^gNTpyk~^Z{ZJl`^>qUMr z;4QSD&rbmFYL#Oh=NcjV4erY`KKL4b36JcT)t)oc`>s4bKS2AS$kfET#(@*d;VWVf z@3qfcXcryp%IBH1GoByi61nXqgQhFon1jr_9-7YC9I#Q*bggkZ&x@@81J*3I!c)ZG zo!RV+Jm|N%B<}HH;yuIcMHjkvuk&o$Q9{f$)|MhN#9s2a-^GsIS*zijv+JKWB@$28 zr&m1Le?xP`CULip-ZtJA>8zQmXAaaBRpW>5S~XR_r;nDGNgY0o&zaQT+lQY!lX`pA zymodoCkHi9fsNGF%Z#aMd#VyyX$dyV&5U2KMLO1Lo-8}^M*{S-54m$vZ!_*DRrj*b zr1SOI<|hPG$S0w{O~m$#92LZ;(o$KdyR-xq|I)>Kv9AbSul^oqiRV?!TJAE>&^NxQ z$NoPdRNuRP9~QJusGb(q7sg z=N!o%i4NQInfWHfd=|PZx%G{miFwac&meQS;paIHoePI+kEZ<7uTO`cd;fI!Wcc(f z_E2n0$Hm9}lx>m5nf1c6efUiM=G`CBv?%>l;sopphsCa7&@t=^=s>ZwM(D?*;GN_@ zEmp6|jf;4Fg#U&7|A7C8`G1K2O8&+E&=dbrLJa;4;($`2RT)~OWi&Kq2s9=W`*xA$ zIi5j0>LB7#hZug@H?A@5?HS1FCHT>1IB5%Q$pCLhLuZDdOJ|}>7hwa;AQp8Hv8Y1| z^z6?s-Zz#E-HN{7%r_c6dn`H&aFo2=*j(NliK|y|aTs@5skx`nhB*gv(HZdr{9kKc zDezC`qx{9}KRl}E&+rc?8u73AXU{s4d)fcJBW)2MI%R@$s@@`XX2u|wARCA-DzaBR zF|F~XR-O~G2ROZK1pEn|Q0mQu$af+Sx_7Oa3g*~^40Xtqy(*MUQ71O(`wp5m;w|V% zJO`ig1m#)m)bf02q-i6LYLj^g*$KU>M`z<1-|lMFMsl6(oI5*qVh48Ob;MNUWRn~F z_#ERdU+!u^PlFB*b$v(-l#jOAtTBi6WwXv+c4GPzJX3gQ!Df6dfXhR%Bx()9SVhQBIEva2lCTlxo>qTvSJ)(qMSNn#c|rM?uL{- z-Bq?HPR*FAp9oM@iSVt$nrB9xxk3)y@ zmQ2<6kuR4%Z=UYztL3FX5545Ii#F-=Mi@5WKteAYa5ZO1*?>QRKL^0OR`4#&96Ff8 z8Rl?~Ib7g8KwI0Pt;Z9w0Yk4&K(9__U;}QrL+==m4H#HUyzRcNU)HNRVPCcGRu#MG zKQ&3rr{Sya?(Xm2jt@TV{Q)k??1iUE%;$Fa(+29pXa6YC zMSii8Pwo3OR|DTw@ZC!iV*v~fJfgjLwj#dQ+CCr_Ox7kfoq|mXda(X3{P_RmZrgmP zyKUrPcW}@(?v~7J-M(#{!=2#xZg??$Y@c;X=z^Dco ztpY~S*I>nRJ+y{<2XZx6?ASM(aGggzzHNuj)n7sbP27y$%edLaITUFHFx8ceOdDUuw6)A;!fkdVoy_d&AglyRU1mqA!jfk=T+>>QD^TV;MkZ|Q#~q|4Zn=~jv9;!amIJqd>2n`N9N^`T44Bwi5E9&Uvzi(anF~!jvw2l zuH*LBI|jL0r)iP-oR!w;%C>%3>N-lF%C_EsuW~c~KKce-QT8uqed-98?_wmZjn#cOANJD$1&ILx*5IEYxZl6r*a##pw63W7jqzGCdzS1;+*f$nI*vKuerpl53>%l!1QL4v zCbloB<9I~oQq*I2zc`m+hMr*A-4`+!1HSRZl=gf;spDUwT!Z{XEmpKjRthto~Zol^0vHh#-S*3bWgZP5n$=!tu&(M%Yd@`(A_$bpfX zD~_;_=L@#eR?`-F(VG;n>-C(}Krx>?e5L1ZR?o>A3YI(dENq^a_LY6bXJY65L-x9y z|12{;#YU`*)L?Ml^J#raG#X(#4MJuSJ<^gLqiSC%IQD#wYaA1^ zb~ytJqt-0-&U%y)-Wc&nM!f0+-;{Wy-tnsbRt^0_J0ff6TpxK!JHK1y1pJN~`Q6>b zTT=&BtA0Vwe?ZqtB_F(q*A+Y~Yd%PQz=N9e1!|ktimgfFS_66D;U~}_cwh+m(YFfU zP^}heMSd*P;+n~mJ)-hI99pyQuS=gP&}_A0|C6(g%`oC+PdD}_-mOB@Pdp2sLGSZU zp&w*A|6*jjPn`4(+@Kp`+mktl$l)N5A^Z$6wadn1^P8nbMlYCq`>V|91bn_~leXw- zY7JCvptcFNiCQhbxsn|7@C@*LSA7 zG@*~Si|>y7QoeiGwkV6-&Z*j9y#ngR6ViCU!Deo3+Nf%r*A2|I6!A`@&l1`qb*9vd&U- zom$f6*BN5}WItc!+)G`p(5hlW(%mJmNay@tB~=9*S7N9CM~h{ zWuC(i<%))%Y6qR!OdPLj=N{~me#g^x33mU=T_x@x{O(@&BX5=}eKfqA9K1sV-C>?t zWlO2WhZ@1}8S!re&vtSah;bI1-n_CzXp7W!bM6>LJnpEe@vdj$s*lb;K+H}pZ8$qB zCv_%mfRUmtO-2lJD|2q6{}$>O#S4w&dF!lM^BtK~ee`Mc!lb2x)O^L)CG!^AE$2}B zG<>R=jZW%6w3dKR#0$3|f3z)u9@J=_cJ#C3j34G%!BgoQ+u#IwR-Tb(TFT%4 zw7WE1p+&|#PrM+#@Y+`Ai)hqSDBCOX$x~}{eP^Tdwdkt z+4yI7lWa(UBnG*Nl7xT(QGs%aQ>@u!1ChIxykey-B&&c11xhPWtR$dfMI~EoV@uxx zM#ZdJ5mCF+_XVUCeX%uatG2XdFS$Vwf~Yu6F~9F~W+vGzH`~wek9>A!GIK7^dCqe? z&jr{@e!0#y^D$1w_%Z$3<9YN)o{fL>JKjC?U)qUebeEa%>En*x{`Qr3eKF6K^}$`x zmq*)IztV%Xmg}qA7r!F*O}YN#KR3K0XR&g9*FS4skvLa!TL)fvhFAdjevWpjU*)6S z$a=89w9rt0j`%_Qx?*sPS+fYRi!$aSWT_})oUe($yg46x?BWw)>q7!Z!Mk$y^HJsx zY+6(P*ikCy8zUAjx<=?#8MJeK56%At?>r35R{sEhy|;lU<2%VS8K=O0)F6>hCAQER zxJq4%ZtDsZscX*;k#7sQ7Jp-@AATj*S+Ta!G;k@CKlu2M`gF;%%D$LMyikm9vG8@_ z=L3Jc_PrCn39a7YNu^Rdw+Fui-(LIPr@jdXVr!*`^3(7eOfw<{X-0JIpkTY($?2jmS_IXA7TD37-{}49Ap08p8s`y)McLcMN8s9zSb&Jwuq%l!wDT>js;bx#jxX+Q2yMFw-8o;J8c+p2Db?qa{f0yN*(XW2B#4wK7GbFh!0%nGQ!O~ zi#m*K6|+3Xf8UG9KWkms{Y+n|NR(gmENi>?M6JR87GCG=ewM}k8<(p5W!Pb_@h_td z8AA?yNY1g4rR#Gzn{sfrh5p~!PGqfD`CADOb!JN*7O%0Bb|S>A)6dHh_Dq<+eEuI= z?J`0eiWs{ykR@YZb>`Ur>nn`Cag|qWhF#}y+}F@&BjatH?Ffced+B2}KB(mSrZ05$ zw)-lx{7o->R>QeZ{Zq^%5qjJ>yDHd({qrg0P&sc*8|M&rWFg}Ez#F$cL? zWNs4ACTqD$=BVsb^z#z-`E3p(^n%ln^}X*TKC`nN!SGB6>)*BRKReFzG&8Pzpv-eQ z^T!qpOnH}Ia3Ks{VDnaMYOd#%{&Z_Cy4K#4^b`KjA)tn2lgS#@c9O4;LA zQcIe>UVA0Ar1|Cj#a^whbpv~S<3!_V4SRhPdp-J`-dH=)NP-WRXqCb16GV1MWes`; zdLUN}A3De%VBb&JbE;-;n$}14P3=eNyNr5(h5ajoqN_fS&R(*_qc6ZWOX_trqr1D^ z+E|HulQ^#BweSQrM@Q!zWi3Sq`{g~_V~VD*HugRr4xGi`!v21Ne9!yd>QeIW-bnsk z=vnOu|7`Y~e;*Q$v|xA&Y}Y~~&cK;L$N>MKhG3R+P-_)3f#V}$EB@}-*|}DKcZ}VmeDnK?F6A%Uqx)aO zhD01R{Z$4Xe>2Cqm0WN(j$X~W{k6BEt=skJ*A#87!j_Ws40!)s5qUfZC?7iEw_>jh zxdtenEdFe*$oLUp30+p-+O#{Vnr|QL`c~q%MNSDfQ~N9C`-6NRZuaVeQ-V89>>*hX zU;Ynui7l6y@-XM3LZgsQYxdzcDDSz`$x-uX)(iP&!Jjk6yE)U!<38(NaL|G~G^Ae6 z%2I%PJpDK?+^zGn*u5IRr$r`={lA*OZ8GVHb|N z^aS9S2>k5trGMrB)(N}Bz{7kWwcr*##W%Ndeh029+sflTC4Y@NE0l9QKQ>G`zf0u* zg~%A9!(Dc@=orvr+WtST%{3gQ=1>T3!J7^2byhClgh1sN@K)Bk5}vZg^x04`(zih) ztDvcq!J#$6+gP{Lmwa9`k$Z)&zRMN9Ze4*rka;CAuhrV1PMnfjoFQa1C2zwkZnEG4 zjoN+-G|FzH6Fw(hx(oOw0AITuflqQ=JH=KzoiIA&(na178>H~0`cL39%h=EOT13IA zTcLONLGONtt#Z{>+V)$0$Wj)qGhsQLHA)B+k>>+gN)G+}(6S=F$JdPShtYoV#S+U(b?0CkLOG?WMAABE!U6lyE)j#K9MuW+NVWk5}pG+W-N`2MbTr{{F+tl zg_!X*@QvDM$XaGjyM#c&dg#>qu3-2>S1@wW6^t%R<9wDHC6eRseQ&VwLof1`7MuvJ zl6D=Ot0ds-EYEjiuPu5pv2=TK;(_Y)^aJVCuFM+5`Omk=6UkVYvWJ%zXk)W(!Dl5K zUzP7-$G8qV8UK5%D8CzQwhlC5(=j5=%)dmuJ#>t-=WF~Ay+r;cfhXU@=U_^+VCwRq zlkly2Z}2$(+4@MZ-i?kx-fr$~I0ll7soQ!D=r*P=tTBc1rm|jBS+A+A*HqSPD(f|s z^_t3hO=Z2NvR+eJuc@rpRMu-M>owI{uUlBJn>yDkpY;kMdxfVuf&>3Av41itcyo-duL)txB0-Zm7J~+dI<=w#YJHe9&{<~W~r^r*l zv;>%X9l`e6%hWjAqvo$Y-qEq+eUT9MPzShO zzMJJy`Jg2KM0&B)tY@+qcr(Tb@0+r8y1zfZC!xh&;}|&q&fXiz2Q^FOgKE#sQ!-_{ zFV8P)-d>yM|Nd;P?s#*t5pFFuBFBr3=*eQEp>~_z*j{YrhMHX!Y?)dWJiN?H9W(qQ z=u6_yKStgR;S2TO|Jx;J{S&&_2l?^S3YWD%FYC6?23h;8Z5#XSS@zir?6a5HXRor) zcCpWPv(NUi&-Sy=4zSPOVV}LvKKqb;cF^8u-vu{j2TwrbPCyqWkHxnIFRZ<0(uIMH z!AmT@mVWy9b# zhQ2r1eScd&?wuVxd9Zt)v1?=TGH(Ao^5mKO2b^ou9-H7VQ@O;t_D^IM@pr6Q27VR{`!V2KSbMd&|MSec)d07!y}~V@%x39n*<>%c+B-aLB?v zsfT0Z-fy1=UwkgnW4rJVyz^z6cz4@Ce!;H=xt=;Vabt=79d)jBXPwxf;&E>!eiR+M z;Ir_Q26#twnJd_^9Gl<^)Z;UcV4l+np&58uo-#fED?Fc zm!!SyT{K_MCGToHUCIZpgP}_*myAW1Jm^1KWgmZ499$m;uBI;1RSTrOc9_yV+M~lv zog{a-(n+HI&_xEKi)5jTZoxx zF8k)s|8uJ5YrrXf{O+@lzfHS!pubGn=eqFX+nwW&(WRn!*0_h6x)gGy(xp1szb?k_ zX8fs)-}j8(lF9fP*Ad3knG1$_blFMc<{|cY=GZw8=9Lz+&qX$ne34U-ujUfxHF!y4 zXRV&$L63eracTwM(U#_*>mFVkg+{a$-v0?H{Xi`S(OF5t+sQM)Y+1TH5s?r%5g0AM@Pyaf=`qMMYLpw&*ebxAt1{ zG3UKyHdFI$liTJm9^<%Fl>c<6Q{ph}l`p5ex>e2UE zn-7bP#)HL1)1hK$-Q=Lylw@8rTaeF|LCfc|@1bS(IA%DsvDwrPN(X-F<;d6MTHOMi z%=@A0J_i|I>}TbyM;UUjw6~#EWL_`rd1+7hSa(}Ryk65?KI+$vZg0nDQ^~W(jvc*yoUP_F>Ea*PZyXrZFGCBk)JzBXcYnqUq?>eFP8W+3%&MGxP27V6o1+=a&rA zbkTX_*=}vn_YRW>DABsNzY!cc{E|yQcyD6=j*1Dt>G;rG_d8hkBbyTS2G+e{bE4kJ zx;NG)>e5g1vxz$P7hTp%&S|7>^*<&_yju)hU-Ihla20-N@}#V8Fr8z;w5=Il*a|;7 z4nH~xKRN|JYKI?nz>i$$2yS$QRCI(ibc9TFgnsA<18p5)9x%PR8!!AhaJ6}1Jk2@s zgyKbJjCvQ%tk>!60r6SCsYPwWzz(bTQ}k&oSF4tt=>ev5157=NGVO#5vc z@<%%QXB+n0bnLeSi9Zr~3FUWOcut)CmiwFVYk|jM8@R^rq77L)%Vt<@+is!Lvn2zeGQe!2_Ph;{i7G>Qm)nBk$L` z7kl_I+D!8l>1p^DrnMC6axQy}eSc!O@Kn>6=hDGl*8{jV+Yq}=zt*j}=3{d*DnwL@T1yMWz}+*|xXwJY~2Tbv4K?f_@- z8yM$$(y8LrQnD{b-xoV}O5iR0K*Z)Z;ky=XSnXPQ^i-1G&^k$M3c~Z0oy4S9)Fwj? zZehKJrpWiVW4k)Syg9oyiZZldQI6&p9P6xSm8dEI-bPC|f1ds%KNfa);$elpC$@T+ zzw+st?J}ZSPUI1%Avhy2wf)-jp!MSK=KNYhsqN4H6gB>y(r!?`5fiH%opi9!fn76^ zac5KpC-2c7yOnbY;TQJ+uZ9w*5e4re=&81@Beu9E@LT#5U!DkO2Q&W!e@erK;&x*H z_Za_V4}`RW59Bzrya{Ww+=4R`Jc5MO)Z9*uO>@=UX|$lFZy@$TSYlDgK#OWE8nPhKDho(XTea z@1oz(Oxlq5>C*|ki>R9guTVH)p94i^#hu@9Urhft9XSzzjxc`CD2y=kmbPMPNCV?d zh#UV{zL&Gp@Jz2Ugz*pI+(Evv<7uT9v*7ArIdcH6!xT=e-jVw!P5-AG8x8Z~Y=Jy5 zL;MlOKTqJ!`XMhF5rTX_G=Z{uDy1UrGuNlkq?nwplgwr+`-8D?*^j- zf3!04s#|PLE8C-k{N-t)M-1}c+K=Dd%lL(d_%7qQR_AOeZ3$aso*;+G{tSDnnXRanMk^P$(C|qaSsqJq$+pLzeO>B(SmW@%-AsbJ_ z2V-rpX1hYmO@AWEjbgStf_B3Pv0nrC3$@*8hdfT(Td?mwDfV5nZGolGsn{|1vBoTX zMfP070as@Yp^4P<@{+@UkJt&YamyV0@9whk=4^G1Z(M8IcDD`E`fwgo-5)+J=dO}h zEd@JlDt6epj{co66M7nQ^|$7h8u;{qv%}18>zuG_b?GV0FO~V(?F;No--xdE|3>@a z*0aOzTzz!Ha6f&ZE2N?;*nJ2L#rG?A4*O#Ii0=35@oRLher%Xe0nSr_^IXRzivEgk zO~Z#SJ)G<+od^9agMOCx@EDhkryd<^bnC6e$HNQ6&T6lXird6)EcE;Zaxvmd3@za7 zGQl;zfqY|PfA4>(I+Ftz<^24T*1glT(i`S^bOSp^K|g#*@h>bGNKV{Kc+R&s(Z(yp z1|MP%IN$*pPW&c``70A0;3CEU`$#^7Zvc-&tohmA8PEUZow4ejL9Jm+Ug(ldM|6`- zcS0{rTgi0n4AY5$oQ|DgI(CNX*h;2jE17OIubqyqWIDEz>DWr9V=I}Ctz)AQkBglLww#3-68I$l)lh1f|Jn)0Ab48OzINJstt)V9-#Y=Hk~~d$7yarN z?NQyb_kCU2``Ue9_phu#W-cf(PI^m>NJ)tior(M2%Rc7ZD8HHUqRaLXKNzLk=KfHZ-^F?6?~)Pb?}Cx$ z??TRL<^Q*%lZo$&*!yJ8W=)?2Y>?vu~E&;M+)o#>{*bMu*dNts8N z+$dS(6MP1L*#|ja&r0OngghJqkCq$e>kENR%lC`*mTdA`Kxe`~IbBm}!As;w_H&<7 zo{3I3&&ml>k8hXA9${BbAV(`7ge-FUJm;L%c3gezIi~dWMqFP_j6Ia;IBoay3jKsK z3r}mFvO(H^*vIp6ef&ZC=-1W9e@h?z=;J)?ldrooH$dzhBFM*CtZ9|RiUH62fg`zP z##a)fJdyc{ylcv&iGf2;pYC?13GUY0HR$C`Q)r9GOtN-wW`16C1iTj*6+-vle(H1$ zu{Y!ME;aL{S7C1njY!ae6ZXb5{~}qB5yg5AKKrbNey+7J=aGBHS--*s#-5BWXv%f) z8)$zyw9{XCx@K(*KKw}G*ZFnLtPE}G7W_M!FV)^{mN65nbvyh*`ni+ui!InF8p3?# ztke5H+GFs-m*w2I3ZAou{@2pKyz@)`hphQ>BmWcLE`CJFA zE`7q3OFQF#w#LDDF))_#NX?n+X|tK{n&5*HS8V3vF#U>bIc+!k#D#Qh!GW`_{r8{k zzNfCFKUt$)R?N1!E@PB!(xiXli+iRH-?14Rq1UytV;%Hj+4<>(O*0!m>rOKS?_za9 z!8@TN0?#XeiQwFu_mT4^*`%351De5&b$`&t3q9%R5B>N9`Cs}VE4+;l5ARd^rdpqq4`E=o)dq7e_r%?&E?<@x~VZ3 z+!@L@Qtu~5 z)GKLId_y)r2@X+%D7+p&oD_0AtevPguA8Vgt)HkjZ2fyGbK&Lsx%w*{Kwp>9 zS7BvvkloJ!`YDX-=Q69Gu-T7~ewttK>Miu;zWs9D{R46l_Q5W^-m9-8pP2TYLZgtq zVB0woendXZ2Ts=rJ*owNp9GJe0v~g}0`7T$MW^m)^?UQ_nN^ zR>o3B+vT+FqwRlCZ(Z4nz5<+cnSblEUfqQCSA*{xcKcrezNrFV<|494GV!M^!1Y1k z8Ujya;o5-BZi@|9YREr%DRA{r?+BW8Ay|22?OFE=y(co$NcPUTaOi9}yWXDbSAb=G z2KJb9?1xzV6j=YjZucv|@HN_1_z7;hw`k)9C&hN`0vAPoyy(RX!${GcGV!%eZ7oD* zOc@4lu^xhB50QH_1^5TF?XRXREY``bH&$fYJ;);>E8l9#)VEnO_5Ab5)I!f}Tc(U{ z0`rWgf#OG$u&_t479T>_q8>q^p^oIxdp*fRAg~erL-Y;t%TD-{(l_dDJCy4qQ{PC~ z)7P@CCIr3*d~AIqmXrPA0M)!oi3N0<84S}iZA6enHA75B5Fkw1Y!Iapz(h|lj z^UuNV>{ayF9oYA8jKRYg?EXvOmD{SxiORYxsLmem?mu78;~snAb~$%w#OFkKYA$_B z{OJ(-yAU58X3dc^hwVkbP4WBAa^^6z>B}0CnL_a7h{cmT^Vh+X=OrNHSTO5Dd*9~X zghP&kgM-*j!I=v5t5)I@O7IKL1D`~f?&g=AtDAnwKHc<7uGLMyA!;5De+J4_p+t4vUXwDBK*)jJASyh3y)60Z%>uy`VD^d z=qUe}{K|QOoE1z3cCE+(wvF=bi|n~vt>#h{I~V3~&bj!mv3#trv3#trG3S!TTr!zU zKjt!!xkP`XH|CyuE)6@+oJ$FF*`o44;{VHFEhi5Gxq@;Jvo4$2&WWl|RlX+qCSmMsW$zTZL*YB)mTwyN zDgR1iB6BeJPh#NY$6tL9FG>HrW)1wf3cg%+k+yR!d|9<`w}Cx;4L1EXm2ol^wsTvi znoAq&`0hd4FlAqG!C}h2_Swl^Y7>nGe}*wm^zIW?_`iSZwS1G-^y+3OGT0+x^J?*W zjbt6WcWV!2r&#EnskfxykHubDSTa+8klb7?uTD0O?3!$tFvho@Gb@p~CBIZNdU|-S zQ*864V(+^Q*c}<^i_P0 zb`;@i?7Ff2*wj;g^$(J{9;!lq7d|zOx%8}7d}{k5 z^p{1VzdYttx%7K(>0|M!o`E;hOg?pjHst&PT2wEzXc{=%i#_CE5A7y4P}W%b8^gLC zRq*K*$YK9v!>0wGQ>^{Ny3|*cUF|>0`L*5VNuJ5M#OM4AExeIO~3vOD! zPPqN>9B}J7YPNoq^X)?5H;w&TK>YjdKX#Npj11iK&BUOk2*ZTnbgWyOfB|9#Aug+ z$B*{#tlaR2N8gkCFl+Vj0M3+u>R4LEweTNVyMe$`+IpV0c9U~{1vzoo55Xn(V#S4Ejxch3&^c;{KY>|LSd(x%u!?Q4@>na`vB67=xE1bvzXTVhpr z?sgF0L3?sOEoX#MuX;CgFJv6kIpcmF9DSI%+h^g@r}?gVMzx!Boo?^Gd-iu_O!jv& zCj0v6`!2m2NYocD_=ox4}o~R#*PE=>% z!k2~q%US#On;_mfy-!^;4&JaB~2p}l)f2zHZHob;8m{QG zlSQK?1}DWH2Q`}1I0hp}R6@J%6aMdRtppyjZo<#av(ALTC#yfL(Xc^EKM5<474Cu8 z&_1$Ry~t)NE`|TaKC|1Hlw7FK$4_$-V-@+jgFPV_O zwa{*IS(cw1sjWHK#GCl8*?iuX9Cl#KO77xIz;QqSdqdjRh(l%k!mk|id=I!=sVxq&hs z*L|8h;JWg1-BmeRk8X46^6n(s?@`&qv>W3ub?v#^%IKq9J>m6jW za{L*}=V|^(zPXoe9dI6UoVk~^z{y^w&h(cL@s*NO1UXrSIGL-o$UA zC7vAx-!u32A9!D$JFrVQkZVNeX<=N48CQYGbgX|5?4QZVS4#E;Z?fRcf*)dotpXQ@ z@xKQ(ZKt%`lI+maSl^C&oOMEXL}z*i{7B|HxoW7tg)s}BNAkUfi)TLMoZm5ap}VT@ zZC*W@wUV`7nCGdJHC~vf)g^-;Es5#lJyMT>JXj0xwNrW@Fdq!ehX8YlIhI_u(y!Pn z2jk~2_S3vAg>}Q9DZ;nfS=VEjt1j9olc!NH5gc>h;L!8H9rw)+UC}4<05lWV9wM$? z;OkyetS`6(d*KLjOJ6jZ>S*Nh&>|lc^3zu>wFjHy9n{{ZwOq3-qD`WnKESV zB#X`*vgnM^QQ51e-$7E~qkEB&EIN|}opD=qMr_4)Td}mperC55&T|+|3!F+m_hIu$ z&Mq=~3@I|Gqorgr!B6oCi^6lvyjP;z^a#90ze2mBV~TZUi)P+)(0A=vM6sKg`czWj zS&#OZyesrf!3X@?27giUm%l62ONg7j9Q%RzLc8&WeluC>cv0(#ny$$`k`FYe^Ox-j zx>;jcZ<`LyMPE1fL{{Kx)>PoWjl7nkUo2oQ>!1bdnz1xfw{lWUA8*jdA!4zdfr9h$+%7S4fXtq!B}b~^|56&c5J@gHI=ratZFJUE%LY0wg4cUWh^ofOWe zqTp@=xZ4QshQI@CXXDNNlgC&o>}9Z6r}Bn9ROy#)r};_l?X@V_SX5YxAxvuX0Z zPm#J1vm8dG!=*QlbQxR0`6uYV){;5?br^YtJ$_$^m{BdEwNd0j_Qrl_@S8%5JG}Z( z2R@Lq3XKAA!wG-Squz_Vm-|4d%RZ%O?LuG}hUOh4|3?J6CN{lAz)^CX%R0H(XZu)_ zC-}>z?Ogg84F8dQAa_55{gi&oES@9#DwfwIfwRJgI{8_A%_z3l7Z!0-1lH)&wf1ZOixZ7E%--NxQb9^b}R}U1{ zRqQB2R>}3>J_7%{eYwgecKaaKaczRpunf6jIda1)YUHkvB@Vtt5%&`ttV-&=+2D5|UYniqfb!RDBAtuYT~%!?WGT*mBU%nKOv`;7VEgTbj^ZOq$6zwdGW zF{^hnA1~J5zg8PhZ93y7V9xlrpCTS(HL&(T3qOaxh^(IpKj;rX_#g>djh<1S;V6AS zrSE~v%*+FKGpA+DY4r^4#5}$cx*+H2A!@H}#U_-qGuvNIO|f6DU{4Dko(VrS7Q1iT zM^0oDX)8CM@v&z_CpnZv?!589l|EO1pT8NW?ZmdQUH4%pa}8)^50-vD!exAM$YGR& zw-R$=`qT9d+}zvo7`QmT?NFiOed)h*8g1B`(jQM0+*C1Q9LA1o8{sw5-!$#~PETJy zb%BhPsiv%S9vtX42YXD|J5&t#M*LmS!L~0ehwr#DTdPKDr5}LUJG=sn}xCJ62iO;#WJty1rv1d%VSbN95F78_*XHr5K@C zQ;hJg6yw(4qDSoEe2Vo|HOY}FCC8KKn08#-FQuM)F23KboHd*z&k}Un%-dDUI3!Qe zc*~b}ypo06YsV`+sA2yka(7KKn%-*>SIiwn zd;_{z?I`3a`5kJ-I}A1BA962OaSx$aiFw^c%!{!8qo&*=%?3jK-3#9lh;u`8=M`w9M@FLe2)I*}I> z`&S05(#ff)Xn+|D=o?|8cChJ=8Z;o{>_&3nH z793T$xEWkr4lb_xYPe`ni#?PFE;fUU$8B6JwQ|Vah(Gx_3kSz39Bhw{Q@Gji0=W1R zxcDl#xC>m2zN{bK_n+h9+#QVLc%l(LnP@~#B^uH8M9z&y>WwaNF>1xm`bJu~IMT$$ z=nxYZbB8J%Z1mX7gPRCT>ZK#g6=A$u{TZ zYf)lGa{o))sd!r?j~uVqAdwf+8Q+ppZG1X5%u%IU{zS&N8`~MWM(KT=!3b{`eYTOf z66EqAayj}$LSXHNqJBV-19pb;6*uHk(5dSj#mD_8F`0p(tSJOJL?gf@7 z))yNmHxwJI;eUIX$7pEIOXOW1L*8Zl(<^d#b^>|vo5ZkW%q!LlsAE%zEheLQzMg^Z z?4lD(2c3ycz^v$^5fieOn`I zc$V7#zz3Oq4}65Yw8Ev0`v@4)o^j|BuJJaW8`3TNj$J{}$~RAah^I z{a^6^Rdkx1WFl|N`I*r4zsS1MpZ&i>#I(phF?gqpHO+Q;PCNG8HYhuL-XJ+!bL^Qn z=pc6X@@*xjv$M+wJ;=L#wH3dT_Cyae+cwY8>}yxd^L;*T{0HO^cOY9IaynX>Z|N5! zoW|!f9ajC#f&S$GMt>Snr0lLa>=SaZv2UEM<>lBVR`^zg@R`@n?{7{{HnSF8tiQQO z`F9NTxBZgbs`x}XI*xzh(2zs0@r1EA#P2`+iqG1P!0Yj2kG!|ypb}HW3v4r`*RU3H{v>!Hyhnboxmnw}$LTpO z`r%~%>6&tKcEsv;vHVYHj7_Uwf(P9`3_sqyE;-oVWqi5a#>ajmZ_0(n zmm4=e?qB;)#}_50lJS+v8q4^mX)nL-^yq6uW)a(8at1c7dw2Aev1Xk))@c_SYgXJ? zx!>>~j8%;#d$4~ixPLN_u?#$OEWGNVtNUIm&-zwm!$+N5hh3S0xqtn#W>1>X?#uiQo3Ja3&dj&B@qhN0suhk+ zwfa6{zJ;C_Lq`Pv?U)o#f@UN$4s{-ZzmFL&t_5-gR_M$UV<4sC~XPdkh1})aoC1US)Qdkdp^{bm7v$-LnG%P;=?+h zGlfwDwEO|Qdkp)yJYO8=>w2!ZG0C52pA|^XZK(+zB~Gk?c(DiYV~xj+Lik0jZ|aY> zYmX)L0S*OD zColMMzBu_`Bw_QPMO#*!e4)h2zZn-NpL+H)e&gfYrC&QohUg*W;#cuf zPO;x}e-HgCKYR9K8TpZ)hEIu)kMI-8=P7(Wik#Bak2!MxBynt#fB21`Q@0e`dQ(4W zyT~!*Y!2}bISAivq%Ou&)Wvuz;YUAtO4HWo@yv`1N(yXIad27CM9EFy4ooBOse&7E z{yiAK#K_CJO(Qt})V!g7aIAB0-4AbRm}SQ3i|&{pbKqX>GxVy-%th9xfgB^mx*%Wi z%lWpzKy<_V_&&;bC4as8p7RE|x4+k|??tclVWW3JPb8kMx2MR3R`qU*@4{O23|_+?hpUM**$hb zbdaS{@^ZAhEWO5S=`~{#j3JuTv`zFk}o9(94)FGo+#p*P) zowD!3I!#yHZ*Dg`)mrGJ*s0nUkb|>g8Zpe|;9N!y&gJCbTtyDf)#Tt@OMaboCQ|1 zZJgnSHoDB*`#1OT?HDfxJ?bw$Uh{5$QrW6iugzOgDV&xzHOjPTk?Mr7S2YWPjUp0rbM+&Ib1 z$CD{>z0^%$9aTOs>=NRa*u8E-Mj-Q9^8YY5hwxQ+*9g(eWt_2eiv4yKV{N02boQ7! zBVgajUa|A?G(#V{<<#MRNg`*Gf&y){av*{GJAR%dhD3} zZY3Y&Q%^wgUToG5{x=HRG;hVI6>Xd)rgN5f0@^W}`oTgwB$tZ3D|}P-Z5aFz{?mwV z*Hi<&t97b6NW^xO3jK?6o;Z(vP{zLf$J*019(Zvnzu_AEGN7#y^t`$F0QjJ-(OTM* z^Gx<8M%8-V*EWE&4Ufi25ha=elyEID4u z6MOj{xn0S{Fa8|rep6gEg0XouiL$Id}L58qw6-yPp8_?>^!*-RDap2v| zi~~AryfRlCr=u5)##T{)tzs+w_oH3djD|h(-j`R_VcQy1u@ybyI`s9wK7t3%h_Ns?!21yAZ^Db^ zZ015T?O*F2eebpD&oMs6(@QJ;I^+9a>>G2jryCA2=WaBEdmlKIW%^lEH_sdMANg6>cz!OJ|MK62 zxjpxzk0W!O+XjH#eWoqphuD8^!TuxbwU;`3qgk)NVE-w=9#qKv7x)IBYrVd0;}WsJ zUj>(tpZ_gfviJHc%qxpEI`7=hqH`Av!q$o|EBoda>}dad#GI$Z>B~G{yHe(PNd>f{ zbo4-K;=P8g6+C-9QQN5zZ@8B|^E&%zAA9J;&&Yic!*{@=YK{2i4KgDm7(3_uA$IkC3kH@?s^uv>xF5?$(NA3UPbQO zh1|6pxoaPC*M8)#1IS(PAa}iw-1Q-H*FjtEnoqu!Zv}6{w*7gkhF&jq*M)Cp2Ff;c z$zIAfioDbl_>byo%1cX#JxRZ4OpLr#io7KG3z3&<$C~m|)RdFjbH^#U=|m0k(kA4k z&B#l&$V<5|>y6Kv^3o*iY|XEFbz5GVO3X>cTi5!hA)m#|Om94cEQhQlI(aOOvDZb; zE;b7BZD)fZrOh?c`&9t1O*ZRwe(J|xwvjSH>NljSZeHvWa zw&ljUx@Tt9J-fZM?hx`=6ZrHoxb;T*Bjm~%Z=Q?h=9_*#zI^4I)O<+JYgwOW)~8kE z*;n<$Cnp&J%a1^O2uwdu@%c-_Uw~K{|Mf3boUX*8Nlco=qP6_ubj=p{o5-l-&M-QNMH9MW%cUL2s>z?@zean)mw)TT zH9dyN&#=FqmkC;uxf!^ZHLthwpuuz~eA{Ve1@De!CVPH5cv1@na zeN%r38%pcR$;Q!BlZ`(>1D-F#zUAnp?8Oof5=Iwn?U+nn;3U*6uJ?edz4WX+I(6y8VN$=euIA*W-h|0YB~P9>j7kNH&gFkk5W`ve9~SW3aV7 zJvi5K+4qj1Qy$>GcX+Q}-do0d%Xx1V@1;H#Z0$%7iY$MJD?z^l*c1>CiJxGp)T=RV zV&tJu6a8}nwtOn!7-QRn=RwNvk1t&OySyo~G~ z>E|+zEW;kL++j?m2JzJXsq1C^7o-2rBqn~>JLVi0dp&g%tZT`?KhV0C{QC$0Xuh+8 z{QFC%YjukY9d&nq$62@HHW#Wc{FrfSYMj*WVNONaE`I>O4Cz0-T*d&do@MMumYq5N zR%EpbaxM$LT}<1Rz_1D!t^tN#i8btR#t-%$Lj2$b+P3jR;G*;g##7ts9>0e+_tNI; zcAF2Ts+dG0_luf6vR4>ugZ6_RvEz@2yNum#|9YW=F>^iNy8?%6dEcIs%x~A=FKTR^ zd+a0FS9`+CHEI`H`ZhV%>#6GN-y4@p`^VRws)>S2v9MLX;^5(4iB%@gD-~(QX4EIj zvmD|Qx5zW%62-sRjCC?=w1`i93$nsiXq|?ht`UnU_K^s3Oe46{0uDtsI`LC-1P`-D zKgM6kR!+YoT}0q~sx5u!Y#sYFbn76(~Ea*55vudgA`5p2wL1Q&rrcY;fI4X6yh106aZ9^t31s;YA&IdG3Ia~U6_ zGgUb}!8M5<1+Tf-o?`8$$H@(S6xpxRp#|YR!6Rctx27fmdWGmqayF)TF@9rG8!L+4 z*R-)oZZq+5liX&+$}r!5Majd#_nt)ZkPI+seP=vc57W+fL!r=OGv`qRd87dNOKq7O zeqX59BPZ1}kM#1<{zxvmT3%H!K>zhx`Werk1EzFO?(HebS3{vpUEV*eb#{tK@~w;zK&hdJ2atG!!5ojbu} z=C~Fa&K?`rs(#HtCwcSA?flev-Q>8J;Az57Le0o=t<#LQp+fk zkvGpx-n>-u=B1H0FO$4^{m7d)(9WB;5c}CJ!3Z*(!0eNUSwmnm7yIE=#1lwu6shMS zvcVR3d1wLlCE({mhVzY`;2*-i8n+dhDhr>#TzvlWl8oqxB%@&@^$ymKrq;%2)4wWr zwB=tl3b{di{;oFVhp5yn5P3=bu(Uc`Uab7-r!_*))mckytqtB+wKjO)uCA%~fh-rURhWw4h8cW1DlY`(b|+BcoOB)o4Xd&%V4X|yM_rdOas zll^4Q!5*WW8yw@=$Lurl#j>wuEcW%)(AwC3w=iC%=R`&@jtrG6dOGuZ-dO#U>A!dA z*r)r*cng_B#Onw~3mm~M@RP03qbE$>*15lm;4$;q+X82So%~LvtqR(jN?WQvM*%ez zfT0aDdo1=Gh23h7z;-9%+e-W$PDa(~1k3T~0uiZb@mWmDk5#HTEoO3lX*Ne%m zv}CeL=R~HFwYf6~`zzyH>~Q#-741(`yiL|7L9GpWypTB`0Zto$*TWgKLoTRAqs?~g zc=|gpHsjV7ZPl!HBtN#f#-DWHyTW;mv?FV1k6Zjs8zwk{!e2V))lb`b9JsbkoUFHP zcIhX|diYPIxr~!n6&fe!IF0WMf8i`K2OGkt$nu}M`;Y$&JaJyTeGzB4z3`)xIBxcGX;1v=~&;r^|B^v4x2fnO(V`^PLW}cQTFuFiNq0JP2a4+ zovcCVDu>w7`vR`u_law3`~P;@=gE zuv?z@ReXDv#1qjw5@68%x|X*ao$q&EAUWlpoMgWI+8 zdbOy;IdN?gfZ)l&WmobNO=HeU8*#>JZGM)I#HS;HN>|cZ}c>w$_GVxo*rypRA z3c>GI)=^}O)GHn8jJ^n57Z`nA)`@kF^8b9U<(*d6E48?X{#D>$!$9`<+vwK|80SL9 z`4($AoZ2a|x%~=7-=_Ve*t0*z|123fDU00rPh^?#htFgrALt1lB!dqv);inz>rvKO z_IeBJZ2H|NV}Fo6N)1t&1A9ISTo&fA){Nz7+9jthf1nPwV^SfbnJ5_ab}9 z7|Up*oVI+E1>Ww!LSl{^pmmj(YQ~!D75&(5`#n@;oA$aj#0CpY8)@&~f!$I1djx)V zC;MGw%*D(fT3j!(*>32*2YflsdRNtTl!l;VVcv=G&N_7dJ=oup@l#tbI;GojI=eSA zJ+|%dZ-mFYP22Wf+7jD#gz>{e)c*0Ye|_MFhqDkl6E5-yK4^hg7`x!5{mq5uA!E03 zz#jA9(;fZn>nyHSjyBJH{Xu-N3gN#h2M=CfradW z>nD6UE{d(OmbpH_pNBRI;pJZ15TEF(O_onIb1OH`cDm>Tc2?nG@}A7^Ugl@&39f+j zq4IJuj-B7v9ut}>F`W&JgZu@Y87Efk1@`MKdMokC#F19)fqttwfyalz7RUBQ;Xi`+N12j^*;P@STjTPIG1TpR`b7) z^|fmX3+;8{H=tyf{t*o&I;tAcLRX0+Y**HGu6*p1Y;mDab|1Fy2a z6_|=_iM_a9o0kjzT)-!QxR@|}G|cxB=PA0+Kh(9flM*<{^^`KrkF18BB(?R5%aFI{ za=w^K4i0QN)4==b@bDSzfx9kNGF1KXGLf0mS{Xy>$G}MRuw&?9ha3Z1(XmQ9Hj*D? zgllCdJ)I3b^-j{OXahaXSWA2HwDhSEv=lwf~+v|KL~h@`xVzG3#{<-B0Y)Kcme<4r-(ji!Ngo z9cxsIHntjhDC=k1Qt_pX9rKxbq2#>w?6~{i82c{9UJM+5&zPi+$L5$i9(zTmV1Fcl z<4NE+`BACekdn zqt%%o^0&w(yRNbLYE}#m6o3OGCh6i=W$M|z&fup*1dd;IE$Lf$ipclT)M8!cVB~43rxj_&&J`4dDjhHF6o^#K9@hi+Xdk5{$5{>i>J|Je|~-% zUDk$e+M>}H)7N*nH|@{qfj@I^(#?dxdvY!CwQ4g+-2`g(>F7`Oa(?tazmlWsBYq_} z73W6eq#E71?@}1=6mk?y!EQbk`}t~WCpf_MBhU>Gd!Z1TPy}zSCKv60+D9Y!s_f;A zQ}%&LU$O!Z^dN4Zwb;s$83@@@op74e;CYuqn1S1b0oIvtD>_fhIo z97mS!;Q2hp-k}o%#r_bv%uD|whuAjk&|>VDBMXfxsRh%M{Ce23BbF^2+j6zkp3T7? zCj3q81L8yW!FX)hj8)ZN;#+$@CBWy`ouEe}eP&FOfqZ3rE z$B!467{`{Ca3)2b&{ZYWq1&aOSWC?gY?n_Hw|^MABKhoF!BI1=S$JX^v<81K&aXq@ z!niHw8L_O}SjKlgT=-Jz^7QOpRcmsO=bauGisdXUTelY`>r+PPHV4K z_R#1$?2hZH`L+SO<3?(})&5p**<{vyGta_=K9Y+E{%^) zXvNmeUGoun_{6WM6+qmA3A1iemrTZO$J0d6HJow2Fui5$vs}=Pdw1Y3Z48zghtySbA|E=C z4^`WoQSPK|RXfdU_jSf>*G}u!$E>(Mxc}^*^ugJj_?ACGJ0eqxZ#HoW)xK>-2DDeXH^9>K*PsYdSj4cJUPz9qK~5maLb^)AB3v3&MwF@5%Tic0t{bEY{^6Y0DQA zyO8A4^6i>8@jU%pF$==aW!;Yyp#MxQGLF*r$7721TW&owUP1QOQhZxg-67r|ebMG$ ze9kw&<99qbln)LezY#AvTE$Cx82c&FErnm^Cg>+-!4r{X>&dO@ySrGA!b?L=>>~IC zMeu0mWEJ$9$2iULc*tFt5%xkWc&c<`WFGO6kv*mI z=dhofgswmb-S2hOdBDSb3z3QMy8lf6!TI)fEg{9f z7n?_{ANszr(D7xQZ{dfo_A4~yl}A6VS<|=jJ)sTdoJke!OjESMdRAQt{ygoq zUpLR$qF=Z28%$7qCpw$F+H>GFbKx~Ucunpuy}6>qxE_9a_ImOn1B$E;j!fkoUCHT! zGt|-+x&f~_AHFOAf2Afw9ymV?++RrCP8Ru5tMGqqW^N&HAq;FHz@}m=KCEuyoX{`k z@w|-Z_zIEd6rFxXU|yQi2fpWqy_L4Ip<&SCw_PG`w_pt(RABiF@BGj zv~B1ae(>>go$}Mua=w)>GDu&>9ZFR;PwZj?{rSu}l-gHo;%}^ZPCGni z?68CTVc2F5K&$f5D??iOud=zH$UW!Crw{jY8X>XiX=D7!GWNADiKnQRdhiL{hx>KK z1Ba#-o^}!EDlx&tSgM#{?6xa~uY}invCoi`(X@Sb@|A4XTll{4AK@znGC$~{3G30s z5S^b+b-gGJmYzdgP(!S{%$T<+#LJykMGs#_wuEMq0RJ>a?{}FHt z-vxie>Ow>Ev!y@_L+oRTC0LMMSae-=s3q}lk{WI{A1ga^yARn zm%8C+X2zXva2a$FtCm7m!nZGlO>R2N(IhY(0y*a$~cJQQQw+HDi0r zBJboD@aRqMlc_13CHZBEbGQ(nmo*ZZO7?mgdr#GqnwRJgRk)1xt4|U0t*sALcn##A z>Y|Vn`NFf~zj$7NKg09%m#jI~i|m!`a2yaFRjwu9VIweZvS2K5jl{?tiSK<`bHqDW z$6sXp5!#a)F?S%J$oKaBQU3q7Rp-3tgXF(v&))Hut~%%H|4XyR-|=@%f4Ci64}I9* zKFGbyqv{@FQE2-K=wdBvzeVkhLHIGncVb_<3t4{p z-<`&cw-SSMNB2Y4@a&jAuAeUS$v#u{hMmSB`Yv+x^WXTzXEl=V`%s42&-3*2Xzxef z`}Nz;t32P*&-8J#bj5m;UaezZvu;{hX~2nVToqwjLY;LAWSLeCHzSgf7p z?Z2L3W9iaYu(1n&DT=YNq|>L+uo?7qEW^}Q7PFT}a;?^!`HQ^q5Z}$DZzX%6ue?i+ zC~SkS1IM=#%Ik5&Zp#Gg17*)=L^w zi6`x(tzz@_8ZD>r7Y2S$vIk|qtNlitfs*GL*K<#!3mvd@A>r#?x)8jp!2ck9#_K`{ ziAl5jjKE{N=|bEepwBp6s6I{?g11cYFQx4`U8vgDg}U`IE3OajcSs-Dc0?DND{z56 zh%U5>7;Q@zB5uaig`}ukD^e0L#Ts9Js7O&3yeb6-Ul68sQ+5c*_ai_Hhx zL9DOHZsbGde}}BId3h%9n*S4>+l=d8jLxzlMmM_aE5vi3fQFs~A0!^Yj_E!MulyLj z!j2D+TA)qXT++nvx_xzBZ2k`67kARH*n8|az(=u9C>vs4g5EF_ooKex_?SLyJ!cYo zPR?~o!1L?D^U2Vh=s~Y8Hp5nMQ29-x&nP`djjLCn{*N6s`_OHovylmAqPygox{KIB zEja*q4^=+O@nektCjS4z^NX=P*gU^+pz!>}*1&t5XT$Rw;Q8yI=gn@HaX&P@k-hi; za&6Ox4&%Z8o?y!?N6_Z^O3!31#nyA^_Z>Car`_XazscO^Lk|?Ma^ugyzHRsr{xPdC z_!s!@h4^SQV{F)h{}1~<#Q9_6T62t3u#I+(G22u3<6-2P+Golm?XGMkpR5zPBsHN^ zE|D=dyU6e9CckHDv64$*^gYZ zu}d!bJ9(JmCtJ6jIM86cd#Jm@|B>gMNC9>bT{4_^)(>*6c%SHDLx1x6*NAEm| z-gyeWvmL#&1HIEV10T&9_-M|+$7}{ZnltdxoPm$#3`31Gx&$B1ZwEuo=&s;r#ucXi zxo!>hrGWh?WFDu}eZZDs1SeEYN3kLB_vd%MtZ9hO)t`iCNKFDox6x5#&)fG+{QnK) zmnOd5kNkq}lm8_8i||Q#*3AE#U&|W*df!wY=5IW zc(BybKT@&kH__ciDer(3dJkjDX zgqF|8x8!Mb#VsN1eN)+s@NK1sSl5?*4j)*B4Fz6ek58RvsD2&Blf)(`^hsDRZHbh41~YUg|L z4Q`KK%9)#1H<cF8{PmttpVon9fkkwhx?IL9)M@t@Vt$+S&MA*58$x|TV;@W zNN(%c`0@+U%P{uz)vV)T=;rVohyMt;qV`!9{6ciSf%xz&^d9vh1?Gf0F zUh@$8Z-b9q>d^g$KHj<}=5%;iQC;gO;!&=3s2H7!Fzx@UOl}9qZU-j#oEmQf2Pbl;oa-$EE^l)0zG1$;fc-CL-P<@j4FOZJ5j0ajGIotS z=MPPi`P*|x*E-QmoRHL8$Z|~m{VEo zaIvQ@>9V4_9>cwLt45n}75GiCuFKQFr%@KX$;-RTx)yjlbFe>cOC~48^+vendgFP< z=0U%fu?am4ZNzrUy2s90^4JSJ7W7ISFM04qUzZvv;hv|}d4ZW1#f&d|^XR;(4lv@4tuc~lsJr;$PG6D$5Hqed$Dy1Eff2LoMo-F@S&1@uqJLF zRIv|augX4`O9~Bi3vv%!<>ySKT54ip2d?fP9U=Zc z)#C4i|3S6oe^4!cKgXbX$3{4UGg)WJXV50{4|A7!i~sv^V(9K;FSW6bcH8l7Y=#Fv zL@wrr3S#tGUlm{XL@M!hY2D)Mma;#E&$ba?*Y<*08*Yhjx-K#D!V5(1&7;r8v;@6r zHMP}NO=gYyw{FGm(6r2D?BzWAboAVCj+RK1< zXjKm*yt)UpATy};MGVXuDhiEbBdUVO!QFGgtud`wmvObNpKP31H`#a>TS;`F^pQay z>4604V;z00r;mYW??c+SP(N)ow7=16e@s{VN8hFWjkI4w`(ys|_GOK~$y&>rJrN-< z4L@xzX)&p%f}3-vD-de^DJ9%`MjNyErU3mCk*wd+322M-elVp4%Lf~{3F<}vGCvMJ7+!^izEjN2s zCOcN|Xt`Nid0lfyKkU8L!^70G6nk&;zs~%Y{d2Z&NAhhQ^M8iF<7Jv(WT;n&br9MR z@)BVT3^FOIJE%9kBG1xL#NPb>X-a>4Xe59~iF`n8#lylq3F@gn^RZ4!F&ch-0_x#N=elRIvs z!#LFs-n$CA35;g;&|Xe!Db$G*Rk~D!^TuIsnKh5#LDW++$6&8{88lPsA(TTiZ6BCt z=v(AGp(nk6I|)C9V*C^)*6sRIQ~Z1hd3aY@*UM(XcdTpiS%~z5Zx6hl*wO2a#@y?T zro8Ko=2wN}3Hmovn(uUK?jfIB2R;T)T4ST&_1CBz&6M@lC`2SO!D>iPR4i@{mM07uBxINAq za{3BgZKNIqc9ZR5H_3RAz3IZv#CUVT%lMkQ?5BFM^OUo`lKVmAb0@H!#kl1>y`1%n zv{N59UCst%-)9AuJOI3rL$Jft-})^2I&Di1vu*Zx+BrAky(buZQD}_cgke@7L2RVf zxLWa7`FF>3HDek|AGaZ|ggVsu1!EfN|Hy8OF%0JaL&%S$>{Zy#y3G%KlKF|eJy7O1 zs!(@TaxP@a3t?!)H*fErUruz5`+Acji2Q4z4(zqyr}#(t1P1US$+@I_pE-AuzQnhE zEwDT`7d;!AHCS-668_G;ne(i7;9sAZwkWZ!3Jh=C3=G@ReN@|0Gt3#V`kV|QP~{Kdx_~wRJyC=q!W2l#uhroS|OvTvyWXa-ISqBnN#vs2`tT+ zB$FQgX%KY>!46hmQE3Bs+>fr0euP~hOXq$c<;6I_paOuvNQCK-|v*2bx(2IZth7P246Qt?%@;XRYL1 zRb){oyfn)FEcu3g-Euwg&!dQoX0J3e7WYTQPcwcu`T0~lHMv;CMknVM@pAMQ@b+x^ z#oh=x{8P{u!lyJNlH$X(3U@Ju}%*9)Rs94hqNUyZ@woGR7fb$d++!C^L_J8&Yb;Nd+oK?UVFW^5uO4cgU>|95&NAUr_beHq|w(| z`5VHC$d?J7i*Q!iJkRP6FSLRTdZ+}7Tspl7u{xr zm)u6)z1xh2<+mA)D{mw3-fc#6DLSdO=%mWgNv%UCwH}>RB|51Mwod9t=%l_EZ1w#( z*orSi!xQH#l?`HEBI^9jnCzdAAE3-r2sw7lkHrs-IN>P?oR5eT&LvKG8gat8 z*X!pZ*O_s>)z|r#%@N(u_5S5PzKP>qh7IzZiu>i8xZmYIEuiGbc?q4ybsGAS`H?y* zMwmKgTT;gz*!^bA-faCZZBMcOmv+@&fqkL?zrNI7X1o6d)3|(8S`V-imCT&;tV2Z=Hn5M5k)q) zX;;n|$Cx+qxo(lY^bBxK@*3A8N7c78?kVKJ8vxzH!=c+?TeSRxrN1B#J+zyJk4|cm zdxigZCM|D5?;vNpoJ_4v{BkI7sPg3V|K)A(|8=S4I>#@j5TB3Ebb4K<`8;RMXJ`a; zItDr&2c1rUPA5U9Q=rov=rk8Pod%uGfKF#Zr?a8cyP(rKHl03%&(6IabozDZRC4i2 zT)XYJ6Pm)_)$TURAOE!SAbxPE&aZdmge+0HCPw=`>x=wyb`%Np+50g8$`AF5zh7$wb ze88n2M=qI>RuYUtTPkh~odA9AMw(ZfD@m`=Ux!*4b{}GY*>^#4skBCQp7J1J+BgNO0w4TQ20Y7;5FpNZV8p-qz}viv9LPwu2{ z*0_h1cI|QYlyQMK2Qbug?vVT`u`-0@(m~d-{CC*bd7cRzcDvHw38DEaY=7nGQo(tq ztj$?+K6qlsu2gK>QRbbqiDlaczZ3kQlwEAwmVRwJb7NHH4Y<%R&)3nf+F!hBo#^de z__pjX?Y$UAWWy%ea#v)XaR>u`c#A4w+-tr^raQ+$4Cfl^9OW zK$YNDc!ru&_=7d4+ikfp!gx6QT)-{Qe>%ySDv9ktwu|E&Bi{ffF z*nQKk$n`RwYPVM}9fz;|He|&r_`+7Fq0yh@EX)!7G6xO~dAG`Ac%d6P12=5*pkH&U z{IZSsXQ#^CMx2J|fI~dn{V7_qVE_GUa0ZQH+h>m_-)%(f7T|&Q8|gDl-wnWUbDXpM zoz^D~zf+(c+DcqcGkFoWE*^gNMb2OQOufkV4&K39j;HT;g!j;{@S1syk#$L0on*Bx zKj_1{JPO@e>r&B<`2R6B@&D`Ucf#7-Zm-SoQEz9S!1Hv$A#>n<8N0!DxAC9S{zn(L z-&#uhM;I5fj-1PFzm`tzf7GRYp079IZ`JyZ^m~x&HcR`5FK+)2(*A+J-+ujJuR1dc zeF=?6cpgOi=KK!!@0T{}Xgk-;8=Q&1q{f{m^@&gJaElM{c&C50^uPb&{&z{;ee%1- zQ`wihuD|;IUHa$w^G`1Hzg61ULmSgN_iwN7DtW(K?M(+Y?JEBUp5@%^7@!3=K^s~4 z`^egl#c5+HzC!SJb*^&@z2+K!rca5Pi04e_U|mXiTaVCq1pdp}P?g_Ed7cm1A zL{7xVyOiHY`4X$V7Uz%fyv;73=?KO@-36{a!1bI}zJT&PR|#CgLw0+O1>k9cx#xAn z^NOxf){h+rx}Nf)hiPQ3Z(^+r&cdwqj(vi)E%sD(2O$5)uJ8X@MP2%l94Eu$9G%y2 z!L|NG*0AVM-nQ1T?GL>VxMc5nn>B34z{b}s1rD)kO8?Rq`l9U%>Cen-aI5|_xldc3 zzEw{`FWpj*r@u>HJ5^?z*Qf^nKJ;(HXtQP5LU}i_>pO}0G0R==S2@6TLWBF*m-b-W z8p|EnoG<1{Tp)U#NA{ktEU|J1oLg<((LtFtlqsVO_zU9G9jxESp0x-67sfC8Vbwl< zrYbIVr`LE1xRUB8a92oDG=wfX3;YUR=ZWp-Re0x4`j)-d;+IbgK6je!HN9$%eHeHx zgEyAJ8(oWsosHAt%GY$k=TqQQcz>DVi6VQ6-$7i>5QS6IZ$6gSEB_vJHxi2xh8I7z zkMqegbf?IPO4kFgn~#oWK6n&e2m5J1A37SJ#Cl9nIvV60;(x%6=zG{JI%11to!NVF zcRAkAe2l&YT1yli4RmJdXcT{6%bICs&O7O7cs?$5*uT5g(M-tG6aT($=HR7tGuZz9 z=%tBizQ&LKS;a8RJ=LR;p_RSw&E$*pF%QE_MIL((ea!J?$;Q+1rVix((i!?_Vr7o! z-fBd1ZZ%$}z2{UO&7M*CRlewEj-i`rsl@(_obEw4BQek}$=g;o$3C>|GaQf7pI0`$Hi#a={iBr)**34`$mY#nx+&1^a`-7q$n5D|_yL&9m5# z-v8n%`+Sp+665RP`G?HMZPXL~&^x~DgAA>AQ3-P9wbuW8`Tw>D@{IRc3%5NG zXUu&t&e+fRKWVR0WozX9gVuZA)$&d~CsUs1H+XhX-$j|v&IsOIHE+sXU@QEC`tDKl zYxNyp^9J9x&v}X5UsrOKpV-0*@4xg!mV0u?V)9*f@;T2yHidQ{19q9)xX1BBNzryX z;s5h`YBx9+=jlWFMs{8rO2Lnxy+eFb%CwSTynCU(27i)x?kw4ZA3na@`Evh_DFYKL zoq;}DbTWHf`rJ5e=_cMwyyMltv*m0Lb@#XAyjQ=oHse{RTi&=)a=@^6nl{i5U5?_V z&YA&_ep>lvml$p0a<^-(-}HOP3mvP=`N4=zaa9%KpIoqtb0g*O{WXS?r_}q~!QIDI zWsf%Fs(hoZ_}$TFT-CIxM*WPbM#IdhM&s{8jtp8UOsZ_Sfe0)l8rNlg<^&4^v`k>f-fJ z&fv3pfbR(3hxw-bM~)KxfCt;rx7~sFZrt0CjQ;lN> zrs~HJPt~JGrs^j?nyP<%bgCZlK`)D-mm=t8$yB2`GCip5RIIo0Z+tn9LW%7CDV%ls zVAIG(Cts~`w$t>cZP-m-(e##AHT~F5O^5vF~A<<2Fbbfu@lrN#YoAPeTyD9Ic zyqofF{omhj@BcIb8qe@~mQOjK=lJ{+ANZ`ci@>zIIfO3e^C+LE`8>;~g3m@i+xhH5 z=-bsF>#%$%zYsxXGIjq`zA;MfLJ<5Z|C4i7JH+Qvlt)kV`4>Jf@j2U1(~|fez-J_% z$pnh;;&ThX-^%A*`uGE%7CvYBXlaz8%_nK|Sw5Tj?4qAv@I85mrrpE$Juu=~lq=x# zAfFOGNqq2C)JF1|%;#=k8A*GS`P{-MiO&E&_x0sB##Bq0gM31KTKKf`Y2&ktK5Bt0 zM7f9Ps{%Z?ai&I}xrTg*xhaSK{qvkal~ePJ3=>+yUQ90HS?T!CP4M~ z>?D@s40+KqaM(bS7Sj9ak`|e+;=MK;&oto>^xm($& zB_1}k9J)Xb&3y)aYepXRSFzu@$8&GqWX?j!+Fqq6 zMjk+}$-}l-R&u@n7f*6VqQA|PopLU$kn`F?WY3M`&73QnOVX5X;agETlaSwFHuBmH zPWEm`U21PfdFm&RA5MK!bYrQa8>^5zjZ)E#b%p!51-Ix*-O8Wndh`?Mgc;xKayJAp zNZYg6qqY;P<^ld$zz$wUX8^n8?8E+3m)bY2F6~e571uc*-I4YuZN=>+&ji!vX~9`; z&f453_%Y97&&}vfE)V3D&|I%xLXL*h*~rPu-A1gQJYbDIGy=QO7-ZUU==dif z(@sLBMVHl-gRT!*w`CeS?-|&JW}=UuO%C(B$XhrEpOMIPY$)Df>s&YYXqmp}EstRD z17~UP-(lT#H9OFDpl{%8b9&&jqx}MHmE=&^0B@-Ruhqy3*=zL1ZR9${meHi{x01Zh z8h$R0niTfsqAf1}iIgXHh@DXGTF75_rm~>7#NiC^KT*uthPh!G1?zz!YkWx%IX+mw zQhYB;f?{99?z>$p7_Z`K+jCR=wXV4z4h2@uo)v{vUc-EE-tl6;4=saNvK}H!G~@8R zJiQpa)+47$dqUsHAFW%+xwBC2mtd_)tf#V9AXiC#RPZY z6w__oH^XbA;Nv9tI0Zh?n>L;!=A#`s+Xe0u!F`J4m<9Lg;J!b&A1t`P1v_hJ+&|NS zd$~8`4(`pE4bJ<3`&8y2EznjB?n~)wEq#^Km#<83Tpx>j?iRCfKSu7#_--Hni5?{% z*tkFa&)h4l3Q#JH~D3?3?CT`vM(@D5G#S#aj;&%A_u@SY;K=pc<&ctEOo9#-qH zf^}TKh;}#=EB%g~iFy9+@za&HR=$Y@ncHP*Zqa`-uU38g+}g0jZE(K7P@m^psW0&d z^*;P=kk5vhz6BMwzgDK@S1`1|)JuMo@)5@4gKo0NGvCn7Jm|)x3G*&8nuxl1C z)EiT^Nexppdc$4t_jLIDY`*)$=b?pqXyS7D{0&dQ=jrdu`1}XQ zEIvQZIz9zYM z+&gSOfA(=}ykElSe;PYp_ezHtIJedL3%Nh`)C%8UMBP%UeHCUZN3chHbp>zs#%07rNxK5ne@Ff_oq zC@A}_t*ft}(Pf?UJeRT6PasDQG(HR(k7KP$9ebU|-W`}v+0Zm-n|M;mYh&}6^H0EI za)F1j3$K@c@$uUp6VKTJLwK6ygU2546kfygO|)zCnka46-(~R{==maEGrJ3~;rUwX zD_)a(dAw#QR|{wQN-eapV{A^&&Bb5cW{c}@d7 z2PwDXuakV~`x5!GKYpC>pxG1LEAA|E>vt`2>vzMK(3Nc0eIjde&viGl=2`a1)~(2! z?3?x6H{&W=sP9YHCN(2pp2~5o_-wgTKeG(E6TYA!SBcE|;u84LPWaKQ@S`I5O*b;< zFO%U#ODtZ*e)6fW^B#I0oG4zz*}q|Mvfi*09yGy;+{yPOXE1aIc+P1?!*cezlYHlR zRy35yt+-s?)JxVX{eKy6+SX$6CiWeXLBEtYbs2~3TQZJ|coXINp>Gi!L})v-+^cK& zCJT>xyBi+m&Hwv6st@!ZTISU^;=3zyY%G8C-f@Y#@2>eu{H=DSg|jc=Z{Lr_Sy%q1 z_4X&onqyKZ@#CHIBcXT#83ggrOiXUcVZZMhB_LasZwW$ZA& z+#4o$SjNh9xAoSZue}ACj{eUwAN`HoIq@qaB((}yij_xlm@H2s;kU8%8>+hSTb@6lzVKU-S6^Vicmdf?>U5k7E!l3f zCELA2d66IGOt5LZ7KGQUz8@6$*D)@Oj;wuyJOIP|vWH2Vw!c6FeTj^TEy=uVnrG3w zy+Yf9vwC26au)CoA?I_7d&i%5gEMH1bF_^!`kdmQO`qscL{>F~H?iNT@!Gxt_29CT zEX?yyr4R62&zQlF;jqSQ*9or!|JInDGG?Bip$;}=bhcys6J?y`nt?sGB8#!Hj-dUE z=PJyYlz+OtH}brkcG`=t2(%Yp8ED^q0axK=+=(i9B=`1JGKZaUxZR5{t&Kx_{|}dU zX`ko0GPZ5N!`Q;FC|ns4@HrnE%yXqqG{=zckEair50UvDoZTA--x+Am{!Sn<(;0{# z;0iSEb{p}Tn#$uJS__U!h!4n(_ah^LgJJ%+p9cqPIZpxSi_o;fMd)fj>K^ewVjL6v zCsuat<2&?mXCVGx9D&4*PO}gEHiS2aO6db!$M*5E^ifJ5j3qwFA$qcyzOuL%2mGOf zX{sh~-e~eWkXOBhu_h+Ci!oF%;Md5J36neSq^p1+Fa5@>0C}WQI2soRhIyx zTaD+K4_h0sL^-#MKUQdwn{m61lH%?j_wG_u?+&F0jU}rKoZLl5uy88J*Lm#w@UtE4=PUb$mO$%bb-mYn1^Ur_=L&ea^Hg{0%cdzh`9s`~Wjpq1sdEaHN z!LNp2yw-}ltTmp?fH}01HOAb)>kP%O?j5IW7D{e5WopHzMs?fI)gArVd{NHH5}(t- z7kL)Gc%Ss8cvkTa2Qsb=e|op=Ud(SJ@SaZXTKsmlJqEE2nPWKU{X=TEV>tU5xD*(e z12sN)E$0I8bzvMGya~8F@jjj>)0e$hG}4yPu<*`$Xx-kYI&=`wVkaF0&m*ZX`&2!! z+d2rLcl&IU*+mC2gz^&4kqy2gz-*lbDr|eWt#b$|p62w|3QXPXogFY$b%BXzm%y}) z9RHlP)^Lt`igOodSwmuX1UB2}gF6$HU$_%K`dQ=Y%2M`D7kj4-m!(ewwh^6Vu2|j3 z%k;I4Pj_dP#{Ypn65$Ie&I{p=T|8D~Wv7CR&U94b#G zK4%rpp=*g5OjLRg$p;?d+|iKB+$@7HbN}UcPWTlWbxyBwpX&CS4n99#N(sXgkZlb3ord8wz9mwGPw zr;m{*Ae_rNh_)k(v|xLCQXn)1JWfL1dr;XkD^#xKX`J0>@L_+j^9+Zx&0J>^XRc?G zXPCZoEAFuJKjsG_>yrbG8+rtqt5X7znY1^XG2aDmpM(A}vRZF}uisjb=E4wuv6WjGm?XFGv(F$`(${g|_NLM2sFI-M1vlf9VsrP(eGSBXze~Oe%DQ`L zhIf=nmmT>g(loXIcvp$u&QUWH+LX2vz+obBtc~FICFVH;Uuq|D1qsPXbxr7L_U|I^ z*m!N}OU!$FrWxxUc0IB~@+Gzpv!5T{fhndR_rxxZP%i9xbcfJDJGT2mWp7@#Lt+-% zC)>{tsob&cdD_y&>iv(Dy;|(eiO4VQn)A5SdxtpMg^mFeW!yJ2?q>GcqjY;+%$ko@hucN)mfnF+0WgoyXI?pDeFnKL9QxkV=rx#vTlk?%<+k?D*L%) zU49dqse0c0UF1;V_xDj={8N$h@KepGDQ3Mz@KMRgbnMC)tF3U{Oa7R_Pm4~b8!iuwOF{+Hk6J$$%ABbWLr{M)l?2l`iCY1c`r`7!Tfd5q{^ zKmOraHK}`K?FU4Pu-RwaB+NZPrwOxE&oZPtwt?tx}8Qe2+0{X35r7eAzHCeR+ zzXfEpswcFi8a_wz`zrLYwtvuTk9<)%6nR6FI9C^U_bpziA1`<6QSgc*}!d3UL`Hts9*^&|R{woWnM z_L!Gn7&EyqtTC_q>SONp72vo-#=P#rm=6HYR~hqP$?bHx_?={p`ByPxe(d3H=6UT` zAM?Sl0LK+F=Cv2b{Nt}U=GVVMU!RNJpSfH?A60(*m+;l8`iZu5BkR5BH`<{h_M&3) z!o7rjafXAt9WWC%EHHu;Nz?Garal~?3eafzws6NTV?gv(oX)R1#UeVKA-%fJUy9Qp0~pHM%||! z8pS;4a2MZVWDa}1Pnd1y8m@=O3@o^D8lMS~IXmuS&*mHkZwzwjSW_y}e!2qHfle#DQ;OJtczs_ObW^@;|;f~A6!JIT4KyPKui>-r-e8kzpnj1MY$a4#IBH&qM z8Nss+qdFt(>!W0y4jeOghZD7avF}{SQ2UJS6CE-yjK$P9-Q-^_<6xXN{KG8xEnV6{ zIn&MS0{`2<5;~%(yBLOnL&2qt#X9#Kw9jO*=bl|s2O6knyquM{dmsFozgjE#py^lW z_P}fXVQ^fh&gPumr}*y$t_H@fbbECjx;@o)8Spe5=3T6vn&&FPD>4+Y8*!#yucLhA z2si~sp?Bmq;vU?_dddqf!@y+X)3Qxl`0SuV=tlUa@W0`Uzo^{X0~-uDYXnzvk9dY7 zz9?bunx8d^4jdY2fELs`z@IYf@lnKQ7w>p_m&!q)>P5g=1M9evx?RgPp-X&%vMsdl zU_Wre*IlfG1ZXx6IO2gr>PTMh89OP*|H%*M=>dGPWgdso{~FfA7GeUbL=Hvvo->vh z0emvb_`QrA6T_fS;T85g39rEIO7V)@z)33q%e+ecP2JT8kDcmU=Ud?;H&I{cv;aDF zK7s5v>x)VsJVW3V+{ewg}BE=#?-gIKJ3+8auH9dsYc zwrsB^-FG)nZ!G#d^MtPGqIvrL2sKYvec3!&<(gh838r7>Jk|f||9+kt@QL`}%+v3w zA3IMampM=WMUJG<$_w-Kkj&FcubxGG#6LDy?j5%?SDvIxtf^PKnX3oK`z4RatI&S| zF)^|hyIoUOxh8A_FUeZDj5YO0%v}8jn_v@lYFSfzS<`Q_-rr`;?qhAd#ri#UhuSYD z<`S!}cqsdTI==}#)*5Jl?pMQmM}psd);fr#`}@FWr!`T00k?w%x5fYH8gTD8xA5=a zbz3)hC2mRZ`n@m1t5vRPTS@Sa%fxHuSHSDPTX^+d23|jy**#vVE z&<*=uh4=e_M}at{Kn%J%lFfHi|05J~>xV)A)bviG`(y%oJtA~6>2$aInm0DC|VbYbsn!?2-9 z9m#8Q>hSjir$3q-NS~zzuDII~NX>Hwly0aFI7EJ^PV}2LhgARhe?m`Qhs_sw#J1e; z!`aGT^K6w@&v0oEon`(EaG#j|uRl8%>1p|__pTJFVa!7m|$ zT;wI(?<#Ub5;FYLoJ)jX$$c=R;A77s7f24@Sl>5toaK*1e$GHoQ^^0vszu%_35v`u z_mK@pCK={H_Cr1i^(j{J^IX=g@Zu2iMYzj(q~4O%!kMP7@do^BTB=31!DfeClZ1S8 z47sAE%NZqN$rfQ`ixJ|J!x)6-Y?wu+kg?d$k^}W=ZSqbfS0D$ckuOdDPeSe$`CQ~& zk#VnP?86!R2-c{yd=#@R21>Jw)C)8N*$-Lp$sdp$%Ss_v%uYI^1)f z?f(hm6dJdAN+V<1l!V?B-%xLv$x~)5WZo^F(!l#Qybme95?|AgcOrWaBR3fLp%kq` z_ZFeO`R;}IlsokT){fZk!_ZaXsxy`6@WGJva?WRcSDWA2_zwG82lyis9EPhecOXt; z4ULmn&f*;shtK-iE^_4yBBKLa+4H0P61$%O{LWhDp5J`@_S#X?J|lc?75Ei6)mYxR z#y>E29NDovel?6b~7_{x0v$^zjl_^nUB{UV;SeKGWfjo`+vJS78~Y7x6!_dKPe zUMx@PD|O%}8htwG(@FpF@FEwm$I(s`zCJoS49Qa={8#u}6LMY*kK1nh$_P9{=fdN} zh9fqW&;KHHPA&p?TcgR_w%c|=)`#+c5Z)F+uXd8M!q21+ks}o^75>3mJ`Rk3ab3_A zpLnoa{-St=rBZwYFYuR~Sr&h(gufJhb^bD8!KL}j-{xNieC zyG;J#OEKk*>J*c|L{d!tvIPFJ4F0kl{<0GO5-Hc^ehS53%D<%Kkn6@{W_dR`BmNcWV>l@AY)L{~->!N@Vqg$asycsg2-kvnk_s@V`x# zjJFy7C%kVr{Z%6;Rg+^`lL|HyTO&WP_MpLo9J4+Q1@MnzMFQk>3AEX3rl(T6lD^~Pqvmaa_8Dnd@2fiX!*8Jf)87|)LVTo_jM(?>h`6&>K0&2 zCr8+g3#h-4xRIme{PSSz*@}nzlA!t{_{V7AkV9Sw|M|M@!vX@hIn^$2>Aus zgH>PDOQN2%t@@|lE!0!b(zjKwka~--!Ee<@svM@GlNTGx6YN)I%uTbla>pWaT#LO+ zaAUuJxXbg>F3-fMcPf8hm*)jM9|d=-u%FFm+zS}@9)TbH;>!|z5%?2;e~*?>5Auh3p=d#Xlsn9GPGl``T8G z^~gN%E{k_z%DMV-RyZ-hKTQ0ppCA@s8G5zl=3du;Or>mf_;#JE?qQx)BGz|yih0)e zAv=(B<96bQinX-pYUaYU?@5k-k#ah7*c$ArUKBe+qqAGD$FI;!r~$uGVS`;qu_ zg?4(3*4^yidpt(lKKAeZ`0msZXL^7*)5F9%9>Lf3BV@><#5zWZb!;ZqF-okXZ>D}S zk{dj=yCirj1zi-mOd{wHzP%WmjCGDwI;B_KhQxkWE&8-_J93Z8*JrZzy5P{Aal`ye2$!T9^6k${||H^$(9a8@G0j_!6!P99FK7-moZI4 zCYd2RkZ1MA*_`7go|XKA9Xb%^O74~a7(9LgeVl|oLF5~G`SQ+s0^;?J;nW#HosrZL`?#zfp&!#H z$+U@Tt2@{8#O!m^s5g~1Zl;a-#7O*RsrEekYbTp2`oB)_UaEcrxy*vy)EB>w*zsPf z{tNUU=%)Uj%dFo(-i&|krv59JTfdKc$1~m3M@H`ie=_pODChP`ml{Wd>+v1SyJ_d2 zy0jzq&@g(;vTtAB{4_XAJ}B&_-Q``{y(CW}DB-=3FyZquGeew-xhSgl>wo9upR4gNx1bPTF4ItH;Xh(Gy%tGbSwTx6L%WDx21W@MtKIPJ9t z_O(3-AF>90PGk@JAMgtPoxm&4HPlo06~O1kC)UPy?EKij$=+%I z?_^zf_#MOKUJ4M4JXbC)ud|Ad^ zyv1BJj=}F4oV`ox)k8S{OaX=*^rgA%8B%u)b%&UB8%NL&zuRR*ru#m4 zG26NJlI`4Z8SV6^9fiYEhw?XR$QD@R%S(i|fGG@25&HhGcKosjb5=v{Y8c@*8u`tB z-vq3t3?}1`XRjn@A7$iRH2RD7{HGZITE<_@c;7^pjtoY&Bq#5h$6Xs5vo+&IEwTI^ zXiDAxMco!9uO;HUCGCk{cyi6ZOaJttxM=~^H zK4-Cpo^f@JN~RS5HkqH!_d7f-ZDxG+F+KZP=P{N3jr>W9-V$nd(tj+Ch5JA&>3pEI z)EHU|_W`fz6vB7DlEF zhSx)n>og-Y(_#GDr9EHbVBIf6{)0{n0|3`r*Z~3w(rQvsF8ET#XiVA6g_AK zn%~Qu9}~Y0_SEC}`yQK#O{YjRj!$#wIr#d28@or?N8ja|k;44+WPW<#n|BR5;~DtK z%}Ca6%!$|9?&qv3x%)^x)UR=dW;9QOCoRGTMeL8}aFrLbF0wY_2Y?*;lbhkG&{)_9 zo|X`!ybL*P2K;Oh{^8T`ohm|yH4|SHncs43Mfl1z1E<71c%d=VUMP2qnK=dW;MHX% z*Z3n3Kp$3nb{oVMKpz_TajLfLevii`mQQbc;_&oB?yJyxl;0Px;jdr3<35k3b8e`R zxU2`@aqli3eOAs@#}&P%AiD|=NUC}8kHXJ;@PAKm=iYHYh z<~huDsYx>?ttBxxQnn}jBBkbgkAbV$xdzVWIm~w{I0A0DSE0q4YndOx({V+U$?%Ed z9e08&bbHLdBl@N~6G}`;=eeJM37pt-KZ4w(&EzI+CO7Gu@T6PW@20!WxxO&=5og7> z-?RlJ)tvc*sjJH&mwguf?uYK1p@~baryNad`^{ZizWARIZ)3D4X>C!~MUqysBI%p% z!@p@|0jeIOXTDe=6&S^6o8a>tL@1(xLUU7e)Ph2PG? zzKspwZ?@fm z&vrceC`a$;rnBw&A6xxOy=%_4zup%Z1fTbV&vvaxk?5M#GdRWOUbG4OdT0?obKEW2 z-rg5~h4g^z3(eJW{$_j~#HQ85p_PZLfpLT6vG1XD87<&nWE|1|n)V0>cBhn@*Nf0O zGZu*@5CMymNP=6eI*i}018 zTqCq1b1gY3Tjpv()@d;NK5|kJqme~CY&Nm5_@Ai!U2hUE6vy3nK6GdEGbMMh=AWNQ zjMZJN?`>MJi|3E^)~&ba@eIPRcdRaR(bH+c?)9M9&m#g7)@S zbgt8bdOAMzizc^|KaAeS&c$S|)AjJDAM^21$6T-R(doh;p`8fp zX(6;O=K}G2sE3YZeTg5c#IR&QuT9WqGcuXnBPKK}abqKgpmSaZ4d-ZvD#N_|=Ab8d z>@F?%9{SefwB6p`51J<~zWvHT5$D_JNAWr|Vn8FtN-O?azE%9SkNE3Fj$j>i@k{a7 zqOX1PZZl`Mk{5vod{mSXcYW%9&JOgqnYe4gjcuph*d^}T4^A4OaiMRav1as0Ejh>x zce#VdSqppf9mW{=y&Y@q&{E2!J&CbEk91@7)qHr^cLFE(-5D4&UJG0^*%27$b_PUN z%Cusw!`bovGvwg^d;Qeiou{*AC)Ulk##X@C7Iz*S>l}S$j{gmNY{XV~8e5mx>U+Ly zZ1ZJo+M$d`$Ly-Bc2a@M%i-(=Y^v*1;Yc#63L6l?n>#IQhtBD7Ch&&d{1(% z?^5e~pZVRM>oB75=x8=_?g(VuF??n)kNBfB z44-dw_0Zpb+06Z3`x3a`ZsJ;GLK*8@togDMm%q@)_4Y2fe#wesclT0bZU2xscE;2} zH!nNL#pEdWAt(4U9fus;CnC6#cyE^z9WvwarK3A$d4u|y;ke>2Dzz^XCvvXP>t}fMEaLZM&C92;lK4pAXkt&pCZq1( z%V2#p^4wU7yeHrA3~Y%0M)-*Abpp#gC7+qH8MME>Omq0ZxDWov{v>%+R6XHuGdO78WQ1P5P(KA3WQ*xTX56;=#nMOLlT?@r>5u-VWvG%x1{ zkrza6h?R{lB`*k^HNTd9ADue#$Xu;=bTf93+qm1~m0rEe4?g2U%g+>doy2N@0vE& zktq}7*U0}uKOH#%`@n~?@sF)0*Y05EKLdFpTX@q|HMzgLpr27^=4{S_)#TV63}4S+ zZ_0KX*Ap8rM`$yCHC~;clfNnX0~0%+pIr_koJb677WYDLMGw}liS4&y3wLnjh#eBU zshj=K!(J%)T>s}YXltE@TmUTXZeyiZqWi@E7rCi^Ye}&7Uf$DAeYF;Z_K-Dh@>k=h zCiW~B`@GE;N;wZSA{VgMlpaj%4iTPP{##;I$m_zIi_l&}we5G9sLtMD_Gc5m>lJ+U z$e2@s4;;OoJB&Elv&Dx+)*;T_a7&)gk}J^%imdLcIlUOXtp#rQ!F=vjEhHEHydls( za^Z`NE6jSB$J&j+BhUGA;-4iqLb>2h?p?hwSMkhMQq7&*3Da0r5^RD7 zwrC0E5$NCr%~cm#N&ECCaGH8flP)A@tb=uF!tYS<3%sHeHsK~ujWusufq6V~PU>Hu zIGj39JCsI_-<$-^I0fBJ@S5|tjJ<0aG@7w^JolTJHe>T1leC%~=1*|m3SQItx{dVS zfPjnf)SM_FdGWO1xcrC7c54=a>J72W;kA0U`2KUKyrr-FQb-y?1*T#DYyi1OjhHcQ> zE5IeZT;>H>3r?RgbKG{o=2EaV08zToX-nz{th@z+cI(sYq5Tb_@lVWw;(5O zL7(&#c-jlxN4vmWviRz=%aC16o+)?T2%Ts(g$iz&kNBD*-rIb05xR?(cI?`F@vr|c zaCDR-_g*eyGw$Szc5U>IqX?($!iNu_nTw#eVY&2a}rCx?=beG3k>@oLYi#y+E$OU`M2d^(Q3U<`VO!K{%9{69$x z#-UpfS;4LD=eUvm(VXkAakqu&C5q*)48|&TBID3gP!Br;IWehEJ+WhKq7A!#DLIA2 z_81vq_S3bFU0&+ibv~r8$Oxs+I3)TE{x|0Ti^q7up}oGO=+jE}(1W&)K;9Mni$kpi zv9qkMmAgc=nm->F`iiR&I2(Yo0XQ3hvk^E8Y0K&l`S%8Y6LGdK{G9~GIL6qJZNl0} zy~db&3f3-lw+XC1kB;s0Art1(pJ5YHx*qh_LF5`UHo|4vit;M#%e%(;rQ(qwQ zulV1IoVJ&pMfePH&i;4_=NtTlPgc*+TTgj|ZQ!CUg}H>*8sI&RO81k9yd(A>(Y2d4peTCV z6P#&2CO+vC?#4OE+2)41+yM`a^U>ohK!?-B9wj-Y+O@c-7k^51Zvr~M`L$l7iTq8H zA9}OMbn7)^3-Wd&ymb|_D&ud}7` z&iS)Qc$4U_WFBRomK-3WYYbJvj~R~_8uHeTqh0rohrfGENnAb2OMa%3zMNnWGWR(HQ1v9CI{*IjX)@Ke@~sYy~E{ zEBue&$DfO_$=O46Z6Ra=*>lExpZk;1M=F1=t?X6k+-ixb(VoxtXC+A7UA!8<$Sozk zIKLowh&st1byHb6#2g8DpI1yt2;py}Ghy){i9i&eZ9#oCB?E@p0Qt z-MM`4p|73%4-Bcq49S|1dn8zdH#P!WJn=$e_j1;nde6WI@CY?ma{e*T8uQ8VCw_aM zFF38%l$++X~M`h_3+5BFW!&Nce}*s zq?Mr4WgiYB$H==7b1wZ$U-n!J9f^%2mS#jBBEQG})(CE1M2|O|7`p`aIXN?!It&N2 zmcSm(op%=Ob-*s=r47^Otkvv`ODOk|JIzc@5B`WKD7b)2bnC)8Ok27@G|t)2fd8_1Gx`i z17ldungSMOGX)-Ve+EzBOWBmbT?9Uu3mhSG9uh-y(D(ZR++k?jho9JSoY=1EzfAUv z+$MXaM|3y%qq&Ix^gTGPqwIb7nDyYd>EBHCOWuKE?wTs3>_+0dXqWi1LH;uQthf`V zHEG~P|0v3jn%yAoc#=bkr@2B{b^UjB@DE8eMem}=Y;&R`}^gFl@!t|dc|3CBdLQmu`VCtMx zZU8yu214J10+Id5rFG2N0chti=Z5O1^p=m%MHD3ZkHMFZzhdT+Q@)YV_9u(*jfB2! z88!kf${leMt1CMER%MSC9xl8)wdU^SXH=|!lF3{>m5w3y|EJZOOjPpl8vf6?gpNjJ zwLiamv8>jBUM8^{dF|K$k=F)y$ZJE{i?hM`eE4x0d-`1V2RD3J=HGJ#bHkj)F=qv8 zzMRq3QT>qkfFJXJm`0FlkoSdbu5K$@-xvB3`I{c)TO;P7yE4?XE7&mX~3tYX|MT!&qrMGr)dL{>lJd5AG@RUq)QHr0uSvE_(%OVa_^hjRXlC>nZHM{IXQnto~r=ESp4LlhK z9ZOg7zYWi7P5ea7wii-fU|WUED{#4cYOl?ceGLDh49ywMWR0260;f~Ksh$;_&M0|J zI^dj5Tg9nnEP|K)vvlNhAC&&$<-g7aH>=QX4h0|LdsZ6L|IJcI`UjWw6Evk8ld(PQ z`J$3JIpiHe-o;dH>C@PN1?Kt*ZbNV~S?b}-zZabq<%1E%oc#bX4D=;@f%`O8Y++ui zw0Kh8@+`jm%u5OHq>S(?`R2?dI9g%jOyX8%e`7Ci>{(Q=w z5IdinfKPY?`mK(6QR^nxlz}&5TN7Jo75IOTvT_cVxdQ%ZCVJA-Y?k(X{+0jbtoL(# zfnwK}tf{1!HFaGVd3n^Di{)jJmFssRtB9Oj+EZ^>+f#2W@2NMf>!~-d@2R&`_S9#w zhFV|Mg10jVZOC5f_&px(qfKmQ|7fezf~^OT-QgpSAxiFKyS~nU6EX9^|Ai~lt?$K0 z68*#%0&4@jOYTg0n>&(Lu}0U3jQ6TLD7tvXSBqK0t!I@r!rp=WTDtT>^gS& z*uEZOe35N2=P~kegqFF#kUb0kihSAUgeIq0Id%$IZyJ1HIQ>W&^ugx4ZP?c2omy+W zU+_(Q$D<^p}sYF61myGT1+40Wt~wXxvXNXF9X)HGYBLEYruIPMHhuvemtf z_Pd_Et7nZl_`S4RYXCS|ej5@Ecvs`$L=$}O<5t)23xg*_4>)~ljkwI+LOt9HXk==Sj)B0Gz06pqCC@1>rpSJi3~sBfMN%=?<{ z|D{b+-f`Bn-V-whyKT9jbo^j{mgF&rX?rSdi)~SIj3_%HIRPd^n<38mtB_l>Zpij; z#t%Az+$?!SL>}GsAi6{3Mi0IioM*O+jn~I{hCNu#L0%U>j2|5kT_d&~=6ilYo?a!q z0^PWR89d57?&}6-H+N}huOTm96^JwgYZQ6$B=X`Z zkr&tME$1%eAdUk232^W+XLULMifq`-+3piy6daoVaiVjy@)2|1JH~l_9_PGC;D4Tb zp&lkLR4n}KyMez}=pf1E_sID&2L6`hi{U>;Ua1_1_Rulng^mN;=(J~l7Fj=#F%4o& zg9DKRjOj3AI>MNceVZf5z!CCWA_FVAmoeFSQ98yXItgHJ?Pgpra{g!$pH;>kWldHx zw(fXi1iq7d1^(*r9oH4wB$p+FHd1E~`}n+@@zW-5u#|mmK6`ru_NT~7&1hJw8E)%t z^%s2by0uEC3}*Lp2jQJcUnYJ-V!N8kx>oc7?`s180tY^?2eXiY|15V#34N~PjKkg+ zrkz~c$V)|k$DS$spYqwF&YH6xBU9-}B;UW-kX$vl6MyamF7$qer?)oIl&upw$<`&p zKcMgWb>tOgehXzB^s}1pQtE9~`&69&>!KUw8Qr0=Dn*+Zm%>=rYlf+Vi$~6hj~24e z)d~#kYYS!E>yi7A88r4b!ND-ys-;{5NiiLiPbuW0^q&Zc7hs~U`l?{O39-&X+Tk09v?u9s~;um(T zM|G0Z5Pke+H|KfEiVu-J56Z{VniJu9_U|$t`~R+cd#vo{xZA7bC`At?WBrRBQgW1@ zdkub~(2*^3HLwRu9Eiw4GPX@IH1wv_vF6(W?d0`hzR@i_h-{OJ4NvYr7rfZ>eS9AC zy*zfl@ylbqWV268KOzUO9;@X)l@wRE5FOuJwEcDr?MtkHO&6z(&a|NV44ZwfV*j#f z;dfS_UxgM@6)oUj2yFX-jk|d9&BXs?1pc< zH-U@2UFtl>I4t>I`H#xDrJjtZ*(Y$~6NEl*D1M}y@yFYQZ=URjGPa@U8a$5{?8*W* z&!d^UY~Fs2&>wBY%CR=@wt0*A9yHRv&D$66IdAUYfAbi5npgPeL9t;J!#^F0&%p1C zk%{PA*`=7N)$Tea186ljlO7+tz+dzb;vulr}F<&*4s2cy4~$2cF=eMD2#OpLq@E ze|YgF(v*+3$Sa~-{WoAo_WVHTvlLyaif=|29;*jG!kYX)(Sx&>h#tKEcP;t)eaXot z_qgVB-`ADg`_-R2zXk-_cH-Z(8+`0RFSHMwWHd*|0Si0 ziA}fSjZ2pj^UQdZJWrq1)#oc?b!H+r__$xrg?t}}e9xYTEy5LD&HQ%A3*-tY(;nL~ zpPT?)=Vc?lms&}@|0jjemz<9@&PhUN*xBmWeM@&_5|_80?_qqize#;Hmm%w35&OJ{ z93V7M2`&7T&rkR~&qsXteyqOZc<-!Pr~Ws~KF9xZE)dz;uYSLhGHEqWssH=)e|k-6 z%>O0)U!we+zV3(iw`aKr`WK!5wDK{2&px)~o#s@wsfON(c-NC8_@h7vO(6!W|f#ne4wGKg_18o`K`9^a`|W?Hw3C%cHZe zPn5eTrfCBvHiC=#-N;^xIG63zj1l=BUD_-rXIetP;dA!xH+Xme3XFtWs>H_jB^;ogz( zbh4gMmaGrQ-&W2Ywtqvy5Qnl?B+`%RpOc7QSNsJMYQFPZ)6YTTj$E9@6GnPfUWM5D zuCb&1-Y@#Jpr(&ij%dqA7>*BSUS)ZwlTXgs%saH+qaw__Xx+H;<9> zg2(9T_87fty+$#)sqoRvKQTiyKAxr-;y>C?`=~69W-EF#}(qY4``RkE-}D3y*soJ)?5J zM)F37F)Tj0yzJ8_50{PC4&8F!uw8kMxbn5EsZv=_*gC%Ujdt#B>%qNkDS>wOs|fQj z|89@YSyW$u4RRs=a`VxJHq6$z<3&^cUGwMjKGCH&D_At%v6r}V^<#;-dLjGYJodi( z(V@z`MmUqS{%d=sv^&p@+$%7W}u>ZWaN;BWt`DDt#v&h%0(Sw&EKS`dF z)wEqo+pRs!x`n_s&xR4-S!uhG9IrwL+dS=+P4u~!T-k48b7TH1Z2GCS;&9(AG2;i` z6@LrrCNqz+en-FU(WetfmvsgHpb=LmzI~Fp5WejeKMHKKVcri|%sxwfkvl>>|AA+T zgBJPb7<*6vool!h9Ut^FuOLsK%XxS&XOMaHC%W-@=u_w2vQQs-K5hL54B3NM zqYG!hsq>^d>W0EQ(N*sl3h!)IdQ?}9j89;8YCZhnT!|lat8v;fS}wPPcUr#+#`k8v z!@qZy!@n;RS>tYp|1IX?ZN@J&F0oZd$7#A%BM8 zU^x8^qYXJn3C?ZVKifmjGv0-B@xKS2$oiWDQ`)Y^M_da?Ii*t&``g-Y2g2)aBbVv7 z0#oXf{PX*3fhk$Z{(?ll3zPlx`oM!|N5vip4}n*Nvt9lpoYmBRR2r}BIWiBA#LR>E zF1_#%&I9t%CFkK7eCI9Z;~Zo9T<8e>g7CF7{NJ$`q`*rDBPT9nFIdiAu+rrJx4mic z{}jeB7~Z!G{=XdlztXL*?P5P_+n1>L{WIJz^Xb0iPW(QU<1oV0(19a|MrJsShHc1& z=+qJlY#$0Iyf&fcDRj%?Lr{qCKtnY;Z}fX2n|!(qKZ@$k^2saK9EZ-ZUe5tvyU;V| znnZMf*z246AVXrWZ^2%F414`??Df%Xbbuq!0b;NJ#D|^U=MA>LV#+5c@8nz$eE6|r zr|%O8O+)TSr|9ACA?)z*5a9K@X+f+sD5bJ(R33TMzWpcyt!%twbj%{*<3C zgT`Wf3sze&w?c<)tc?y?XFq%aS*Pg$yc3RnTlOE zjZfb|EAoFU`UdfHZLOqzbRx(d$VoZ=8FQ7tO@;Utq_S>4*)xm#5bwY@{`NrcZ)oK2 zjLGF&M86_4WykqVIX=~&!g>i6p+f?e1AFfX9Qs{;;Qd3hiStPhd~&!Sa^n?&PpX*v zYVf#~x!=Yf;9H|Nz6u_F;E{Q4!4`XL3BIXw&3HUp#}-0&ww}A1Mfb`5$;PS}I<$4k z&Cp^4wg=?pU<3C-5)T$^piScHtemsS<~mLU_H@qcB1@&S*NlO-$3f@ViJsisMSe;L zM)3t3=MGL_O^U1}f40Bet@u!%?=!H&{+hkmt(PJrWY2f&xlV0THha-9_*NDEQTO3b zGao#FqO_s+qIP$6jRH?-d`~XWGPMfAi5MXP)hnTTSVV z;QjVF#nhE#)YRffNE}#&FE=kJ-wTMJ%!6Moq~1H6m8$TySVg^Inmah0eMI~))jQ_^4yN1HkONNzW=X@QeqX`*(c@HojO$2n&b`|fBdH&kq($W38npeE+4VT2a6 z>n)&Ohb?R{^ErXD>m)7ckhAMxb>2NF@selo_i`~-u|aKu|0=&kdPY!W z4mu0!a!ywDzQ^5mVn>QVBi+@p%g6S${fF#b&P=%C;5Oxl?NUl>C>$Y<^2_!K7u+9TQu$txl@ciG>C2C~r6i)~hX z41R~5WCS!h651R^Oabxu2dCE)!|dpx&f^Ukv^zpGB=)3*Icn;!8ONAI$xR*hIs9XZ zBd8w%UtsTz%x29A9nF9*^oK7%Pc6*Lu@M*Al~~=-7}M`Y^5kwK=0|*o0?5jBNeOk^ zdZyGZc4)?ZX~bhA3)neu7sYEz&R?7*c^Awa7*QqXC)UjQjmY^DH=j}?KDY0Jvtrt; zhF0JYM$-gvGD$NU_aUq9_voQITeqwe;=ggO7bi_YZAMgEBKGh zS3#HgiokbZ+#PeK{5x~6F!$?3?vKmu-)XMh&Pu7bn7_+!Y0j#jrRU}8#poakC|BGYA0)o7bGmo5%^(l%Nv9$0hR-;S$T=r* z4d(nyu8Xeo|Lw19`4gG{NzDCZXyDO_#DtVH=esrIvz?l8cCBWd*$SU!uUY|5(0w`n z4A;OYx}f|)H+YS!#(RxF4n;@e8WeSEj(ok(z`8%C53C!6E@==lW1E&VaZmwrZVL8a zU>x*lo_>$Z{ej4$p92pJ*0|{-_lldA+&%Fs${nTL-XCiDe@So~|M5fZwa;^%dXuYv z%@LQ|_)DVOIFC#qxjOFP9+k&{=N{ipz%xk2Dg9-&M?XJaoA{0sA4|>{@pRUTk<4l5_1zVEaqtMqsj*t`q> zK5VQ04`9R2B(NR)ON2EJY{F09S?JcEA{VN{8+a!d0zPE}B=`TpB+qz%%YOJu9qS&v zCy<+2jm`IURX+=z&fY;K!MCn*2j7MclyB&+;p#r~@BAOYo8Ey-UG=vY8u|R#i%~WXfPkr6NCS{z3~bS>q3_R;^Fpj~(f@>bC$eXmip|XN|8x%Lb?9Vsp3+rU zbi`bL!>N2aH;2-YRkfNM@Lvgcp`#{fsCffAxJ%H{=hgToux8H-ue4|}&FwVCCuoQM zv~v8egEIbj?e)}K$U8X8YYh69*SIH9^Z$jh<~RpM=K=e91-sbW2LXFpC)gL+u+QoO z`z;pi+(#j>$6o^WOTm2}xIYJOWplLP9`r4zaeJb6=&HxA+jS3XzJ0l7?Cb3gzSYAW zY>2XdpM=j7H?`80q+*2C|G7#21%s8pXT{3WB>y7Q542+Cz9i)bdagQEofXeTQYl9c zjqEha@a;?Ey%yL9ekA8;WOiI|4)OFNN6Ghme-gi(FhmO^4RZu~j3pNS2A4XM zDjA!4wJLr&$$vfmHBIo0{qWd&U<>mdf$zQrZ+g3@J1Fz~%-_&cKo|S};9k+J74O*p z2W^Et|J~70H}g;-{8{lS_BZ%Zh44o&cxTO4{KaRkkG;rb9qWTNYslJw7p%TsQ~W!% z@4z}aV+>?%=+Kp{4dKE4SsU%nfl+U#wJ{L->TlDRirGJK&xN%ic)Zlw_`&{e)&@Ma zwURSi44)MqD{I2&vL*(yCMH2!e_A_0<00X3XqY3LiEe=AuJ72JFAa zX8mOEtLpyX(u^bNT2NqI&e>@>`nC@f$=5{PBiW)4ajLO3D>>oH8jrvWUL(jp_FjPe z>L1JbyqLB{-Z;fx-gp?<;0U~F-_6JyH|wDTB5#;BY0*b1IWo7uC2yF&pQmjzSDUjY z%Kx8pwz_Md=Ks7HJuGu@Njd;uU2$cUy17SqVDwphE}M(lzh4EOzV1NdAWxuqs24hx zczo7Nb`Nv?kc(8-kF3o|wU;xPHyB}UHgv2_Gk)J(o5b*Utj+&N+uOibRb2_+=YHgi z5E2X;1SJXKQ&hAdc%{?a+yp^Uv62>BogokuG%-T zKJk-3{IvDgf6(7LD{ZzFNgG+-$Jg?e$hIXXwr@7|P{#3_mAtM z=dqtY#|{_XJ4O9BoAzSl3g)~&9gfpZIr{HIt$X+tNSzY|_8NTZ%GyjafJBjsG{ zID2G<=07))d^7fV6pk=!eh+qfgBzgtG3YJpaSmuRcz}2LUg#~~SAuKSFq7WiuI^Hm z%T{o8uXyd3%qx}4wgdZ)JjKW^pAp^bGh+LFM*JW$t{xkp!DqA__8F~>KI7C8pV4;A zXPiFnGtQjw8E2#4_Ov%l4|XhBrS=0!Oz7(m5Dy}bWyXWp|6##x$BSO&tQ%rl>s3sv z9y_W*?LFD8?aR@(q)1Hb(%zG>MqFqYw)YDBLE4Feznb@q?>DxxrUx%3)*0@KW?D6c zv#grJS!PY)ZfXjw6K` zHGwe|z(Rj&EvB#ig3M_~F0meEv?7~NVaK!~ua!-V+!Fb-9R3KouEqWs5!nBM$Tq1} zJR-1<&rQgruaHR}vL=$uW$QV;Dcq zoIK_W)_=i#q@VwL2pJ6=;`3bz)^os;C?6AS_FlT-B>4-o;2YuhXOQP%Xb>q+)}LnX ztF`BTXkqIB(ZhY`M;w1)J2e=t2-lT;iC%Ec0hU&=bD`IJL%i&TE@Ce<^QL@|iidaA z4Ki(?=pbeLgpLqPJx2UwXLT@IkgV^n__CIDe&a=G6@wNp{|Q=A_e1h{c8krQh+7|D zrx$#tpQGu8j+C}W;z)bcxTiDLsR54~ck}ZUK96|1#Pb5OW(4x*|6Zd_`S~^4)Zd}E ze@8vP5%_A##=u`|Mov7KPF@N&$=2ms>Cp6{jTf&P+W5JWBiYE2YXj#W6*)3Ea8YDP zd8+=b$dEeD6``hfS2R^$h71`@Ki{Oz&@uYRA)jGrS&^|6yR*`n)3%Bn!E8F54=AFbKasxNKFSf-%K4&P~LgI%) z51~a1@=|aXe5D_1i+6O8YkX_~XSh<6HxR15}5&rWh%^Gx1RhaY{41KbpO%AmA4e#f=vfCn0K!@)?`#+-19E&#R(|y4? z$<&UT;q>&POA@(Q;tSY%-|_`yf0pc5RrWY}xMiF{L+sB$=T0f7Hpi2E7J8q9X1mc{ zLR))Jovb;Li>`9fB<}C@$(mkn;MjYtG0At{lk1h{WRu7>zxpfnA4Vl(9!{?E? zAakGt+8;w_?!8aj_Y^!up15(IxhdzCOD((_{7{K?3`^D~|BkV_gEKPz5*)``I68)0 zj$^J<>$o?YJp?;7L-3avvfv@{yjZzf16VKheawBj?!YhRB5RQqoppnI>Av^iFVTJB zoy6++4f>wbsQr1mjQC_Z_9-$#avq++-yVj&KLT4n%gaB$vG~s)V~?G5WhvXgqfY$d zVa#!<-7^B7RerIu{g2YW?HB(k+yCzwlm2{~4($BCevQFcoWu72BEcWd!uAKYkH0DY zFtmmU`)(nQl;y14bIS>B`BBDach9{S)IFI~V)Mv->o%(qj_**50v?e}?+P3iixvqd(U zXApHo<@^NAe|`yh?@Nn}lh`+611`h9`62erZ?JE=okJ^DV&5#ozBzz>Bj3f|S%!Vn zjXk*qIW!4emtsp!0@vRlb5GvDz9OkN1YQ@hCHG@X?#Gs_#g?S@P+OQfj!UodF8=|x zB=t#DT}QKx=T#erMQ-<_<3x{LNf*eti2VLJ@>}sapBK7`o#WHmzPy zcKC#8W{W+S*e2P{N_7EeX?sQc!X2vm&E;Qp9M`b-o{3M~rd(b1+4?SM! zj~?K!=mGwU9*l*e2Xqp8WIt%0^OsZRgf{)tL;LU2gSqzI-*@l(I~Ug!{CTlyn0wjG zy%4fz1ony4-bnrv_Q{{(!!NLHPHMy2Zunhyscm02P;>76;na^Q5IGPHkG=1K> zftP&VNyWj~)Z!kW_s@>cT71|VY*O2Yoq(;y81?9~EBmmDS9AIs8^%P94P(^b*kqNk zj?0;>_So!Yz9z(&6tDh>^{%&N9@h=l@37_i2ITrY)?}vojOo-`uS0)qBkpu3bk1ds zB!XOtFU9ZQp_zI3@ZLh!mE}xHvwnGU;Gu7$KX=f^QZHjBIo-r1v0uU)7{ht^H0YuC zST7ry<*uO*1G#_H&dprK9`Az1BR@X@Tpi>%{FZBEE>dQ#V9;7D~)7r^OvQBzUYf&21H2K=H?6HC+Jm$_!n&V1ln09?*2)?tU>*8(?rmugJy zdMxL_iSbbNJS5Loty^<%IpeGHxWU0e?&n}~KhLAjKSLLubh2hl?CsM5*EEj2>Y7I3 z5!)svR;SuB*T1#EqJ(w^Z>6R!W2pTrxlP-x8lmm1S2Nb+&aIc+xxL@AYz}hgq}`r) zW1rl)Z%Vt+{v5G5f$IsGE9mV^axb&-73N@L-pYSE|EH)aed{CM;7^JF-ujp~_!QSE zzx6Kv6uW=QZ?)we=>PNB0^eajfW%zC%T;2n;|=)S`c2{{pA#!&kty(fVku%ryh^U% zd2%8)IkMaCCZ|j47bO{ROcb$}^DB%zbS99Blm07ZocT zo!qC=Z2Y40?D<4%(>9WRb5<-r zkc01&gYVOA`92pd-zNv(NABg|`wT5%-H|mp@qKbL&2`3$&|t1*-(NgY6x>hTbdr%W zH5;F2DL&7!&r_y|oxF^H{3Pl{(qS{hx~Y(ar%rJE*s#H45#uldieEZvgyNpJW^x-mB_BaJ$~E) z@=y}}IGJ}JLx)M|@_NSnCFpn)?~5-{PTOJpy$JBX0B@T0FmnPG>a)a7asrFh=b?Pg z4m^_Zd4c*Y`N)F<^VH{T_58y<&x{CshtHQ{bd`I~!-tn$Q)Re|hWLfmVq&xkD}uD61?UL|q8YT|lp z@#|`c>#ZYRwSl-^Epfe#64xvBv=)m;8pST`ycL28?*ZaXeowZM*C;P

    lIjWz4A;mu2+|7#`T(^T^lrRr;YR2Aa(0J z@h;Bt`zzvlx5$~(()U4h-$m%u1)XZp?b!KhjxZmjUSBId@G0PHV@{kd_IV_Rc9D7U z74t-DuZe7Xm0Wa@pW+ApZ^^$>@xEb!gM7~Io7<8t`hG-U$N`?i{tKtmeY3fex^iMYvpad`Ff#B%WT5OPXhnug%xM+;GBz!(F=cQ{V+1`OB_~+&qD&hl zIk4|Sx3xFH%)wG;kRy}-(S|Wy3rhZt!1n9?z?NRccVdg+sPU)rH^`|kgr|QwLGtT+ z*H1;?kq?PI(}gXR=`cbUHS!`Itpz?nt z)--aoP%TUiJ>bF8mzl{u;&;3X}ch%+3ecfEw9jVr& za|7$-Ij?z!V6XN{%v|%4c>@#-Yj{rCfGNZi)8V;Hcn;VkkL24^x@$XKz3W)M2~A}l zcDG>@Vpp-3n>ZwNfd+@y6W2SY8Hc@$A$lU0v0Is^mA-%4XKW+4t-F#u$4brwsLb|v z7CU>*?;qIhE~Q<53vJ;14QdL7aved*Np-Za_l9;P?^$T~px8RtBa){m`HIl|XA$yM z!`;}DU9zu18}fcxiKkxEo{Ethf9T;N;|JgRvNlwl;)&DVc5?Z5Y%Vh1B%iAB>e_b6d}A zDo$lS|4W`18o8+Tuvy(t(_fYRx)tWT+z&>1SL*TQsr|AO_0{tGGWOnKW0Eh6y>Ode z$-U?z>f2%CmXHgxnmk8xPsMiJZTl_cT^mW*y)rh=JfRnHTJ9aHH*H+m7bCGs@pq=D zn(x|nr_h0~j(bkWgUI1` z6Xb9U{zEf<1UVPGA0uW_=-{kf;$-SOu?wEBc!x8vWX;l+$2TKu%B+1y%iImuH}NuGd)CH-Em^Y3AeIj65%P_sYj>8tXJd znNA~|?KC3zZBcx-STxHMFK`;~EM%XdOZ%DWGr9CLbKtE-j1w~Fi>JS=6`G5Tk3d7& zuPJ;`1nom(kxvUXRWDWUi{E=QH1(?Su>D^xFrItr**wV=cLYZBy}L34nK+35On*1? zSk>Tzk3tp9X?)fY{;}*c4v<<%$ehE7z&i;g;(p`h}k(@Utt@X!{}uFFL6)7O^JO^pzpF2 z_S(3tzSDJ&^ey|@I5#3ZLHbVCCtH2T7#DZx7?0p@`|uawgHCuOu@A4+N0|Gg)&s|S zWNJCreGVndl@HHv;EOD~PQQ-!qu{n+a|ZDmWE9WV{%`g$@{G(kD`vP`VutS2v|!S} zG&L`K-Ou9wkTmk|tNzjbD%WStXC5)*jk_P^-6SoIT9f_UAIkmf`ni7#_b2yr|90+w zJx$3ck+suVFO&F`^Bi{6LtHz#&gJ?!*Ew7VG7o2S&Eh(X>kzIpxR!D)=K3I4beHpC zuG6@dah=L_z1xUP;`+MV7%eiqDpQwQF84zl=Vm_B*S+%j5TEJqZuwls-eLNjA)l-G zOur@Sc|Oy3k@`$-9Q}VoJ|E&UFiexrAwC1g?ebZpzA3QWCZDTD=~3YMnta~OXJDGh z=SaQRy6?l!RD(b!hyL?`ynKoh`@5UM1?GLgKk$0Ps zfg*pV@m&6MC7zYUEjIOOE6n?OtIf9L^T<52tqj^aq;lmw`p+Ne#2x2MYVSy$tI~x6 z%NAsr@E1DOD0|r4Ybp9r?tS_17it%T2AH}LUN-nHa!c*qrrw?tehR&aA0^LrRr?^A-@-ZRihs zf0gjc1#j7Xv(ofwL$wqf>h9{Jg zYJ}5M@u5=jp;C>m6tBKeofVO4bQa&yOK$C>e`S}uQjPB686K$>bCzpYfvNkcrEs+U zoe6q-v(soFo}st5apkvm`fBIdcKT~Sa;K3=9Aw&!+U_Oz0&;y4e?YEJWfvJ;t|`in z=qk3Z)#kOmG1)kGB-!XVMqABy8nbDm{X{}r!>zV*t+v=V*41FO;hJi-X+7tW z)QdhBE&4P?mwTF>oQBOqQhHE+{0-& zONxz1GkYu1b210FNerXhXM~9xM2L%o`7Oe8GNzfkQ$4arYv7?&kN8Y6VnOCvm~tLy z5;+H)@5BEo{^k6lGyI?B-|qLTalka!X@u)(vjM-Ce%{WY)*08#dysLgH8joldA5@a zVZS5&NX=ApKMeLW-$h=q-f&db8;b6~P&=I(sA6}Eo)rDC4f*o{^;SRl#bg~@T}PrU{# zgARF(%wI^1dte~fIjHT!7S0zv;WYlkk=5AY8q}EemHtYHBdZ2JqST>Q+Wy#+w|76~ zP`NMd2HzKXNZC6}w$fzC@pKc#t%zxzEl-7?0zOXx$)2-xGqpkxfcOlC}pwS|dA z#rRF?^}j~jk&DPxc;Z0dxu$9dMPWV z#sU3=CuBeK%h0o#b)~AsW396d%=IWaH{?M@OD)iR5Z{D8g%_F`dl`3o+~OzD0q}yV z=RF%={-n>Sgx-aWBeB`irUusK$>%Npjf`ztTitQa_;aK+zN979e57%H3H#_zxdt@e z&3O-ZWu(2*s-@MO)Kc4=&|k)=^*BBRev;%snZBL7$G3Y)aHLOxq4hX$fve;hH-mQz zbE%2B)XcncI+7Yc;tT;fGsW&}I%i9Sfgz7|53S0HkB}A^NUe3jO>m3>x5^FS8nfDw zHaB8_ce+OOk}rRQu2woB-ED-&R{%`kRvPb4iyaD+7wz0!%BbHub zxQR88J2oVA3?AWG@+LdSrQu~@?#dXf3m1f9(JDRb7lM`}JbGY;`X zPQ7^+VK|{NXS+0*`bGOb(W_>U@=%<~0WWr`_kF5`yu_J6owFVZG8rz%!DELUpyBRT9(F0_zXr%g-(jHqY=G(*KrHhcTX5!uT`K9UK3S_OSzAmiJZN09l^_ zcB#GH1?*CHy9?OAH_huGKThKeKnG_4I{m6%m(&;sjtI|R#D)`C68rJ9PVg9OQGV75 z6fR}pVx9SCIU3;Ujp?t=12-^*ZUV5!!LaU$6c~X-bdSXZ#f<^e4J8e>~?=(%%~5 zFv*KYA8-#e>uKbv7#Hivb=T_eO09frKh)dQDkTmTj6r`lF{(IYkd&$gL+#XcCMPL; z#An9qxQZ@I(2vmN4t+Ur%DeKO%rRMmKTFQc&8EIwzXaL13)!e_qTm>PqNOiIH=;Aw zOP);@IM~0RV~hs>uOhYoDf{n{9nT1FQHPV*dw2;ltXSljtSg!OhirPywa4e_KI8L* zH9lqL_+0q;C3pqS#C~Oe(|N(67+jVJ9IWk=&o!AdnHD}i`M^_y2G@*E)`Bul*r!9z zK2&0~GmqPuPs)CPW)bKly8YkTlh(I=I~LJV{)p!()^pFUMF!L`S9xCc!%96WC39IH zYVD?Gfr~XE#!Kb$6_3V#lD$)dl#a+Ati2wc;|l%;|KKlfhc+Z9FtHtn)y@aBqx2s# zJA&+vBCkKaUwd8TUDXp~JZoMp@vLD@tqfmo-T&bn3V5TPXV0-7*}?Os{gfMUfVX_U zo18sUpW610GZ5qXIM0eMJ7Q2H1^i;*8V6U&yRpwZj~v0~X+);Z!?s9w8qF!>DpWd^ zELwsrQas|kE7>@fpo?z*}=NB*uGGt4h3so;u%lqMj_@4?0!cH=J{?$H880f^Rb1E{T=lOb`w`#~Z(RES2PvvT>FTq2fz2N72HhqLL-Abl}v$^IF8`%%<7254i(SI(vH~r8z!u*2{p3o$> zl9|z|T&MAV-AGSlnva?_=;=Zq+jyPkdd6X&s>2uJYTD=SfSWkrYG`xUy<*?VdO7-> zzA{!NkM_AG)NkhfyUmztXqUu%;J-;u1DgYW zu+}%AXDPWep99q>t5{7&^(?!LXAOqITxMY zLH!%a3n6yS9D>)eLBdy452$=tukmVw&N5!ef9wp2OAgbA5F?G!KCyuz(q21rL-@ze zeaZAW6ukyJ2Uz>s2jg>zUyvEt78Jk6JUd=sl=Dtc;m5V%&z;83K7;*zR@vA>Q#sQ> z>?EmaE4m?z^JnZcYBB>qxk`Ke0&#&({NF?yX_!sZdh#EL4^XGYI2T+S?D(%@vEABd z7aO~z-p-ujzq;;`*amit<+8d*jFXI|j8!lB)@N+DV%uLMbKoI-Uy-B8#f}xghAfP@ zgip;i%|y8OXH38aAWUfJ@IPyb$K=H#kBfd7uSj8B#IAez`G{o-j z$N!D~elPvWT%|qLZlC@JOMhxkJAi{cHQS7;~W#oTX(Ph|efI@o>C<3GZ8K#xIf z^T|`Q;d=VN0oQ(ki*_UQq4r<(fvfEz`kB-< zHKeVGb1Td^2WKg$_0I|V?uS`J#h((I&Zj0hXF{p@(6hcwTasfCg*W0mu$}mB%j5Vg z;#@^5B-km8*F(JKj{h9)1USk8t@|@+Zy0Q zY}UqIPcl#C`n1HVG8?n-^)tU(_ew*8j#z>suY1C&^yt>IZ2h~?T*g%Brsyho&AK$k zimr7&BLkY+WBcVje?5 z``q4P-8~dFb;@VxkqhXQ^XL)m?w?(ajVwI!8Sn}X!sy3p=45n{(^$j&j309tFET%y zjynvQ*Prpf_R@TY?!$?}rUVMebCNw;ZpJf-@ob{a_n5=)Gk@P@ZboYHClYAaz`TVf zL%x?lw_*LvMSDC~3eDh|zWU~GdH+(3*Rz(ii1>2$SP4wR58}6eD*LXP&x5cz&J8#BV71Q> znIiU`Y1`#$nQf21#Mll8w{_r{<20ge4%Pk|VjpLjoA1IC5yra#zKCW!jSt|BCU{^A zbu#lLMuCmGntcNB!jw=B{NBcVU&j?V#O@72^Kdpk7yRTayM>sGoJ)}#NMgP1qhZ8@ z=g{w72fhSxOQ8?HEfQZep{@U*Eztuzh>11Nas}TcmerC;Osv3)iIrQ|I`i5}{o&RV zLp`VH`&7CMxWPNqWlW=fM+N?WQWNoiR{Owpzo$R=#W{(!In(qD6k1!Z88pfi;SJb z&MK19YbuDHu{rb!nvCwTTF+xj5^zcrPd`RMXEpR(9nf_N&K>YC0z_w~gQcV+ZvggKVVodL( zjV5St=TI$ZkHL22# zB_c24JR5(=6>Q@9rn#=5Ek7d62bm|&K+o7ijIYEu=bGc3%NQ%(Z8KqyAQyVz*w#8sMw%^x-S<%gdfM>pu&ws}7lbb(l8Hcz`R=86DosUp@!zR7|Gc z#d)*C_0IBwUcWCy&Z~6-bZT@(N^lE(!*jc}s@wGlIrG0k=gM9l86UgOty){@)6WA| zJ7?>QjX_>}e++gC&zbpWBlPPz3q)eaBBLYK?7hG)h}Zax&0cag;V;SAl=&fYMCL>x zISX$eWA6;}AXFndSoZcv-j*|P)x%%b=6#hiRi}+v;ArOMr3T9QY}T%!o;IJ$Xw21vf?uaS72Vn!5zWG;IYp;v!J@GlV5Awcyu=W&j&(d?xdpF2B=PCSP zC*N;*{K?z1-qk+N8sR;bJ4SoTkNqQO@wO@5YQ}W46@KRDaq6?IYo`V>_$+#FQVhEG zjcL>p^Vx{5+vG5!b?DiG3{QL~pULHz_ZIZ3WgIp_>rLp5I&dv`jo(?LCAWQCme%uU z=a>AFxW-qR*Z1U?6p>#-ZBrxCpy^(0!c{Guwd~WOhU8Rrh9NdkX((HAUo?-{PF2`% zD$j)HC8y@2CNo!3;291)P2ek?s(cbxj>;!#%_rZ{b#1SFlBOeWqxl&BhaJYLlWwC4 zoLWz~jh5N2U}!(F!h^*6>WTR^xWQ?RC*J5bIva9(@%(krP0fkDtR?O*;hhrRDd8RB z?FHL;r^L*=D7d!Qdq1+?>zhw;k@+X>H5ClkUnhS*w98@qAc@?9lO=}W9Xbr1p{)-( zEEKzO7r7(WoU;7{$*~vv%g(L;gnS#*SGZlTyo>Q=eKbrP4&--uwi(}$IVtb2LdH-h z65U|he#AfZDBs_aoE`d#oB%gq>3E6!3h1VCAZEFOn^o+2n!bqk)%&y^n^hge-&S&7 ze23Mv9mehx-5~I(w)xIR1r;-vSTg(Wl)ST_j}XIm5_eY5mjMgk|CQ(QFR;r-=@G_E z;K+v-o#av`#`hX5T6WK4&d(6N#yW5GDv7Nllg8^`7g`+r)3k_yyYkCyc=`SU{dX1* z>ebhqc3;R{MQi+_QM7N<*NmZSDsC;bw)K1XU>|z${ZXNHBX9w4_y|{gkr=dJvmQO( zW$HJ{4|xQ7ZnDODRh799VlMBR{d;t`;D>!`_b0xglDB>6)M>#k@g&F01bNGI#5tgq zroY2^6n493XI`>VdfMzmkCRrL?a1d$+Eo4~_OguMC|2I{|B-@ZxX3dFIa!80jLYFDz-du2HUl!lpYQrG$-Qg}XpX=CA&jsdiC(kGH zO0E6uaN@qqWhGx+*P1ciE6Bel=4LZEwN$u*l9zI--js>Mc3xQ~HUV!l__kD3^A2lo z@c*aiogR5re7(8frcm;;b9>3Fwwxs6RCW@v`y_+7BJqtRqctQd44Y(JKzl^tD5<(Zb+}++U?(1ix0IS$J&u&=b7slkz)-zXwQ;k<-O(K zB8zT)<=FdHdrkDSpc6R;A1-ujuTP!DJT1PeSKq(2``*ADT|s;WK4`8U;%R{=(r)t^ z{weHXNttdqZ*v;4^y!A%qkPVzwv33nrW>wXoyw+iuaw%8)0JKq{kmbV*hE^utJc2? z@iTG*d+y{O?a3OA_-&?Nr}A_@c0D`hKsh>I;tygo{2INwhVN28&xwwYGUj3vh}~8~ zo8nh|LVHohRjonL?pgGY$fej0WD|Vx#ofpOa1nXTTs*35ALg#eX=UpI-(vzNu?o?_ zqwyEx#jfBO{JSRjtBXBxX59$u%APp+zK9%#<`bEo=IrT4a~r&v!?oQZ{^HR^roVV} zG5%t66yK!T73BO9m0OZ`e~~c`e^K@!y^Ah3^Gi|{PVbRRF8<=bfKwcpC8t7Q?y>pr zH+9QaE2m{vpc0ma+R7n=Uif^(vI4fA^suz`&2zia8dOn z!BPCh(~~uS3-u&VQBP80w}(`2yZDF1S$Sp?wziTL(Mx@f#TO)QH)SloU^8Qthc7q| zU$8&?>@j=9#?SNxFX7k67j#_-KYTy>!uK0{U@U$@XcT(~Z)ES_IBH2_qe$>P_ zfx*^Eu}tPzqK@YKJHQcQTxI@jMJM>~{~JAut=cX*&gdu6Q;`|U4xo=|`XlraJBA%0 zcEF4tJD_LIhL7~odwhRW`mpp~f-TVVPULtWTY&Eyd50M5dQF?C&lJ3{1+Wu=)4Rt( z4AsQ>Hob`7Onl9C??imVC;Gs`_cgR@K0ivWd*_Z*c1#bAWbLij+Be^y7;CNOh_wp5ri@h9hrsu{8?t zQO06xOmG-&6HR;Lt2Y^Q7kH+CXF6k+$@o^k#CzzE;mE{X?2UpV-oxIQ!1*K-k)6a@ zm4DRWR`y2Pb=VsX$-V52&`GIYZ-`HsN)x<`tnSbob zim)fkj*Uu8MfPe%YKg~gWX*09ah2ktpzPtY*PczEE?Lp%R1JH`iZuOHC3_E$rz)Rx znLL}O^zz%(@r_mjOO2*{`N&#)2mEoVA1OZl^$+6HbLO1X)xmGt*RmAZTuogwbo0g= zvA^d{H{)R%X9leWrWIa8<7{GLVV;%fk``=-+~tm^4k5#HUv@l|C)dXuPdSLMN?W<) z5bxxkw0Q$L!V@ys8#-9)fJUWvJG{Z2)S9Zf`K>?9bEH?u-hI(!HVnT62K(~|37;Fp zZeYHNj1`)Q&y)E5#ew*LYF_6CF5Id1nZeu8`LJeij=B*mPxeUt-N?G{a7M?2oY66t z{~>(7nzMwi@rQOmpPh`sF7VyU7}Rl&$w6{C`s77C!+cjh=t=0E!x%=n%Dxp~vU8^- zN8rZ2+Uo_-n6;RFVk71?qdA{eAwe=I{9P=I`e7LbF6Z6CMez zgNHUSmhgvZqmgrM(M4cLCEeKyqs^G4{u$%MOAc%42aK9>l)nH$|32Ky`wiD3+o`7AM!bZR%k6XF}lpE+NX z)qK6{R++Dq1dK9}>Cursi2vh=V17QIr=_{e?m7N0eQEoAaWs*+zx zB__SkkW(+XC3#;C#=$KSuL8mAC};O&RUn_CVMQwP1VK**UoPW zjswAweX*RsBzx1PewCbE6JG|7OD^G|I3CH&Z z$9a8lB#$)_M>`kO%++;TbIQcurggN0b{^8?O!c1eRCpia%s~t91>i0FAB%|p^yq&4 zBXp$l=}IK-1Fc1_i%&OVx9QVuX3vwEXJ?Kv1k5Anwf8S6Tp zoxpVmV~(r=SL~=l{UvaPeroTK$=7oj^HRqAfy?=Njy2|WZsBX}=PZ4ujQN~CV@_S9 zM7k=xX7=E9)Sjb^>ACV-M(HIMUT4_P6e^~ViT&eMr0}{LoUY+N#~&{SpMyL*k!wA8 z?Z1TA1DD|?dhJ`__3fVX2i!v}UY>2?Ri4y?*Hwbo>^^w0-{&&C?(Y|`-Q^Ennxp## zuNm|)seioE6<$NZ>017W`QtOd=NQjU;(8psj$Fd)y36nqo&6o~`tId(be4rzL2?gX z|A#gF(5$|A^&T(LE22~WpY6bnPFZ5bntJp}b-EdEqV8>Hbw+P}Ld-_iBb=;xe=Aq= z$%vm~6T8NZ@wmN3GFN-*Cb$nd)qY*4b`5jY9k`7-BF{V75BDzim#@s{A+|il$$K&8 zP03M*$BC|*hpsv;>lf%M`TVMUMpwz_@9|mWtH@y|I%^&}tD1ZB&{dJOn||!H>?3E% z7|#OQmS@Fgaw2=>{m5~inK{Pe;|xpZ4_{LE&XC`B^H<%q%J=!<1OBy}=lEZKvy^pe zt2QFFw3Lo2$S`Y4*J3Mg#E#yC9bG4O^lP40{HIsSQuLbFUkbiTyJu8RnB<$LvtLm1 z6eJ%tE#T+;zVSub`dKBnB&Q`6yKVq^Edv7|rB;1%njHJ|QtUWrs%SOyQ4h45;v}9B zX5NXstG|}oEd1`^-qGjrwfXEUEAgz#&~D2hPIP9i792!e=Pdjo^;K1zsKBhR(^YO> zcj2$M7fsaLtMM0*;nB4!MzmXU+=&(Kev%kbd$uchF2@zjq^&Uab|x_*Cov*fv)qb( z7GfPqU?e_7{9>wpwXauvX!n)kLwkP$AJFHSwcg-ac(q;0an^^458cAvo2;|X9g{Vy zF#Ga^pCpfDiNuG%Wl6E*4Gg5tJ6CXedal<$(X06}$*@dDQbg>Sv1| zui`C7$Lg!?cUpMowE0fY@3*9?c+3j>na_FVkLEKc=wInv zNcZf9XR&W%%I~p07eHsRf6i3f{Nvqoj(O3+oD&|J1P?8RhnB)a z`Oa*`Ln^;qcnBO7?|`H5P8T>nGmm=U_n161<>8(f<59JLi|5zk0}2oI>JM0?o_Ys- zG#EZocqZ_X#QAJIZ9cl!#`DkcQQO-WYWwy@KiE3V5qN15yj1x8Ne40*^FfTc8pq0n zape3GHRm})KwUXQK(6h>(>-e5-7CwJ&&V!4Z^WdPy4V?PUdC>(ubDrmi+v8>RCG&mP73O;) zKK3|8y?@z!U)di%iF2L#Hi-F_5i0V$%{gotzaV$vrM1D#SJws|hl&kyL-!SqqE0ow z@NNe+THpGIPxP~I|KX=M{pt_;&1ck^Ct-Bk?tISi_y>nN1MduTF{8!dxd)uv*J;7C zHCnKcGg!iA8^NbueeIK5sdX*qqZG-#H1G1KZZ^+gc}Lp1)@*A&pL1#F4%+GN9^jW+ zi`#DRto0%DeC(}@U>}Q(t_{WxjNPt>$@LOhFTQi6&Z&RVObtJ=tI#pFt$C)XvvvVG z%!$pumG^w!$-1o5O1?$$`Um{ee>lfKW3%X0>%5()oSlR3S74sE6P=1Yo`x+@h<+_b zzZSgWkuzpyqE}mMs)DE1RR!Cy*-oP~&M+UOZbLizQq_4;`c?F;>=TqdAIX93tcARR z4=8gtD6R=4?((g`md&TlQ^n370g`Ur2_jS_uccAep z#!6^)2AZ`pX7c-JIZI;)G~5Y|c43q4C0>J#8(-=OM%I-QqxlxL-?xd=4B~SppR@dO zRyI7lPxRvV(2F-A)6N_$@oz3cSr|Kak>_(r)mAAhNAkgVHI zAnztgf8e{UxpDt%_V|k}3|&WEi3eV~oClV}1LoM4GPVyewsWAH>Bq|%6v}3*lXJ{8 zf0Q_6ES+&B4%w6~cGF9q7UGb1K|eLFjOS?;i*aEqNv@gLMk#6x%`p}GNpir`0>TSp zEZT~_*U7t8dy0*h|JT~!E6=PAuKc%RV@rm%@3m7!o?o+1>9wDiLXQWahn(SiJ#-r3 zKXWkGA8H5Z^IjuD%puxE>?^v~6L%FEFHt`-VN8!!=uZ6!#x#vSTcO!p`joL0{%>Vm zPcfc*ID^HGPep1O%Z-dBeptL%#_|EiPyDWL@}JIl4&-}=KT=_yZyv*^Mvtp8m34tp zjA?koH~sOA4-hMv=?kCOajw03f58|#A}Wt<09vo z{>9_SeBO7zNmCieR@aa~!7q!A{4HyPqqeOLj{bGAk(8qC8`E0kxs&~$qo=D_!0s|= zREB*}P^1~R@ZLy=Qy)Q&&rN)$j&_jqI%Q2l`M)1}Su4q?`b5@c-a#hi?@m!`H)`$m z)d&2eUZ3M1^UtM>Ne*K&l<~RNAE}2Q8o=`~cs7D(`HPrbRtebQSNnehl){+PMz!n>wys<#8(UC6=BC8E%G=R^L+3`Mo-CK{&J8!&|AT= zbPMqe2Y!+AORF=?+=CSO3;!*t&h+0la3+KJZt|z%fz{Xt)aM*e{^wVj*YxC6Nz5bM z;PgbxkvH>LQ^bE*P5e&f@>_O`-_raI^gXax>)PwD=|B#Z62Ue>o$8Q+#2GyJD^&Get% zf2aRftZ9G9n)XL>Mk2JpenB?Nnl|v&IrLNPAqZLR+I|-p7XshM^zpqttJ!`bSl3pbu}FYXQlD|DbQ- zNfm=H);y6+_%54&=H1w>=DZ6Rd$|ukWV3h2ipi__SL`z5C!DF?S)9}>e&Tqx#6yjo zDa`rc7JNE6-z+41cB<0#e<@_l3z(z3XpfpT1&7d2Do!B#%e;FYJ9?4aK7N}_U84z_ zQE+>)5gm@6Deyw$+yFvgh+Gvdijz!Pkt21*k{a2|)VS@BFTUb%B-Myt>5}*j?MYq8 zD#>jbj;y1dCfaYFApOcbNugh{rIG?t-|HjhcoMXqzIfY#I|phtAGoW6V}WrTux{7j z`{%qHPEw2PCGywn$$uTsnRkB&Ortq>cFbh<4gjmbCv$(>A&0eJhq@*3$%S&)W%Wwt zBGYBfskyKyxb~~=+d|+H9}9h!AqQ3n&L$oO;1L23p^eZ&;`>eD)6AH3=ZYLjLWU$$ z!VH^~`sfj4i^S?;Q;~yF>hK^_~cG#y7IujcZsJSw(*R>O5}{nl_sC7?J{=M}VF8 z{!#K2crV6#<{AQYFZ3F2)>&f3GDhBD336>ZGA);!;bQ8&C8_at^cruGwYk7%o}HN- zn9OH;Eb|k1TE+jin0!2^?|PEUVXh~!2J}_tkW2bwk!BR9!|(8DNhYwugVR%>H*|9_ z-#VdT;#zlwMI)iDtz%w?K2d0_VCQ}*c!&9}*2E@ae#QedqNCJz z@1A7&US@qKrY5>r_%cb}Bc3SdC9do{UX0DljMXt{C3;8dMaCDw_lv#3O1&)c$@1-!k6i_Sn9K@R-ygRkjbj7N6h< zHcfN{r}HklSobntrepKe!)ptWt5OFc(bjqE>*!wk{ByR>-F{im;@vskU~D$)VAwXJ ziK}hHw%LYlg~v3NOFv9c<+-TbTS5*D`DDdr zKH2)jd@_-(cCGE-2u!>$W4>KldrkftHC1*Zb7G&Lg?-ILnb z;u;@#X(97_*Oi}tH^0yGi}6XPd8rAbb-bKMt`KvowH&+2LF|CJbwiSd-|XEpAz$;H zURQ*iHP7HXGtXy|VXL57SRK^C5!&=yGc{<()4aE2r*#3oyGM zD>&eCxN07Oms{!cF>2xT)Z?zq^27f|bg5>X!ge{eOcNg|*p%W3#?l?Zc%~!R#`rz~ zEZ+mJTy0?6svPoRXJFUOgGLW&!6sz?<6s<4957(wEO+-#rOF;X3zGo zE7JV>y$=6t9#g*9b0f?eTBO>gZxnm~A#X4~&l~J6#?HepjIY&#QO0}zgX|3}Mwcm@ z`$qk9_K1jl#3uEqXL(PaCngh&@lJQ;5NeIHCSA#zbR{tY@Qc;aCium6aAl6fD!@eATqf5p1T<@WY9Heoa3?pVpqY^^*5p41TekQfhCrem(Zv{!~-Wa^Dbow+VqE;b%(v&z2Y8dEYz)6d>L&|Sw&WL>B{Xfe23Oplr#oHz_=kaUKOyybZt>^!heo}xX9au7fr2t+XTgCg9e}vuL zQb2CpSmx>kWXMEf>)76BkOMy^7qlmyovz;J1E?G-*7Bv^f!NWKmlp*F z_yNDjK8Mv6_%8I9TKb*ky=w(808gQDcr7sU8}ss65A}q?=vNL zNA5HKBET#2ZTgkY@e?{Q|0B>>cm^9{ed0NOj{#E@Ss*!663dZs5F0m)oNR)YQp^86 zbhv$vpYV&=J8OtNCZ6NhO&-N>nTL{trhH5ILhL=;29&e>p7|O)&%HcyA~nwPyMtO* zBCo^X&~wg+%iSx!mtl?HCfb&8>b6o zUr+BGO0vlHCLnXzVD(q>z(StGS2 z+ii3^w2ln?oXjfL)ZNqy7{q6PBtOGd0$e3VQ+f&bl^8AACE!>BJSE^+ z0*ocV%KjwU6`M(oC;g_aFS!gyfm`y0Ggp^*mZSjpTE?zgGr~t0ci{E`cc_-{=+H6xjPep~dU{ z(?X3Qv`}MM3C=6Pz0ssaH@Pv1_*c+|%ojC&jlj7AI4cw3G;y}a+FYM=2iE*g;C_?3 zB5zSIj&V8%U57y5jt2JCjCAN7^nD9?1|ewrm-0xv$Q$5}LgR2fpBejHXJ#7*YnGk^ z|L8LCKa6Z`(2Tq!uYY7lk$=?HKL42Oi^*9{*UM5^8!S%O7i4m+PB+h+UohO| z3x-+Kh;{pvO=8Q)F!t=j*l=OiBt+kaYta4JWysQ?gIWWjMc5t{MfeIu#)w~#Ct5ko zAEDi-w112-J}!K{Dj2)CDkyvyuTJJ{YkUA=5-o=<{#%A#pr2km2%WEzvE;f2d-+A| z<*3VbL#6D8TaC{NEyM5+XPy|340JWVPs}F1fxgO%43VLBe7%l6IoMr8WPbc)8|S|a z64^gMf9MWuvIN-0W^v-@*!BT&oZEP>r|!`v-W8nU;FiQXk1eMkk>^-{mOh-UfBqBC z#a;J!k~V7|`x%kt@eN*MGkwVUm-2aQo|#+vGS5q_Vk%x>#B7FMC3vN0(-v?9&>oart7lKmFv|W=gNsa*%BH^{T3OM+<=pI630m@Luv&_mO72l zu_BL`n4Z`kp(Ez!nAooE4o|Gj;gR|&P2h0YOHC0ir6xkHiV$@xKIB}rc@mFc?3$59 zEqj5J`6P5UZJ0v+4jDV-S2MD&WiRrJ=hU3zSyyUOO$?t+js~p=JIB#nU_=(sRa(|ki7WMrcEty#A&~27ceL|7;E;+%UQESfkXDm z#A!>`4tn6&sTprjtGztc)#&1Xbq_o;Z`^_32|PRLf1L%-2B#6DjaV($B|c*zHc99q zubR7ZC6;=df|1zGw)cuW%A!jXv#)=9A6R} ze}~xkz4v(EVewSUUg{a`z$d@UvhjP__1Std=fMaZ(vQF)ecJtO!)Lx5Ibr{1-K1*(d z*u)~&J}7gl`Xj_6+isG0pNtbceW7{~^C!92{ON{gW&XU+{D}{D8u4S~VI1e5F>Rr} zPpMV)pVK;Pg=Y4?Ptp5j3!R48--7q5JkIh#PWawn{20d=w3fP_P0&T=yTF8h)w8y9 z12Bc=AWH-$@-^`vdcpKN3#PR)r;j*{X5ug{#8z5_pJ{I{Fm*5DOzP7!gO9Y#48|ML zgGcboE4at^N4Ot5hEH@{3(jANpIreQYESC~{U&M>NG-_ujE~edVolr3UBySd9J?nKxnj6uYND#R&@zD4T~iCH7~xY1?zBXj|qF@ewtjT$X;aYud$`Ysd^W*2@3j z`vunPg88k>)^m7dt=0Y=&H7^4dzwV%kN6{ zgffYPXFH7H?D1YqY*?<35gTrq;0(4-bgCL-Do#gi*shm9l5r6lykYI_9s>;oHi-)} z{zq*cEjgINulC;V_rQU%Ca%HS0Wslm#Dr6+_m!$@<)?~IeQ7^8aI5{?z^nFi1HbI& z9>;!~8z(#bH?a0CI$^W5pF6_yH&Xjq;IR96llbsV;=^weA67UJAGYh{+c=EEXO#8r z3sWo{hz<9`q0jpEhD02Q3$tdR>UBxn{f%c!JPVnJn~^hHgkHqe>xie{H~XvFSgqF| z%NguXgl`MKZ{@ko@L?|U$9Xj|GvZgpS+2(NJa2IGAI}+)_pdmn(JN>##Z8= zzAWuyANS|=+^^gtx@@bR56}9T@6e_nM~*u@vSxTcHDdevi;J1-w!au=zK4tP@0jo5 z8C;QV;aOZ6vytrCDqz3XDBu~*p0W5;e8Hv3!RWH&U@UsAXCyR@%)>7%cNrt0Spl>g z1#Kg^GpXBo4{O`^^L;-!9CR5?)WI5wJzRiYJmz-p z*KvOb_jhuCa*3)B9%%$G)|4X~x%Vp9Oke1;aw>~6?>{SYnJ>7 zzW*Wr&BSu^k%@)u%M5(dUD~R7gQwiyU|XKoQ=@59KSyUhemya2VpSE4(G!f-8P|Xt z>Zv8@CAaPQZroUEfNtiQ<>`TMK<91v9I332NX?0l-t8{+qkjVEqjX|G6=9EF2tBb6OQo*%7HHQ3 z9&zY&mxJ^7lJKd)N&GIUxqW7n*YLli>1UR(CP15FN5~wMc@PB-u`%Mn(bNDuz}NzQ zr@+nbYm;L@+bgVVpI!ppH$khxUjOK8eg3ieMgC~^aMtdw^T&s?x05l7a)y2EWKj?w zF&Ja4x?ENsd9ih^wyq84RdlX{`Gt;Lud&{rWb5S&{4V)a{D?R+Xx+pr+mH+;3$p#^dWanQJm$V%w>jwPH6hUShM|`%~7C=VE`& zVvaQ9heRD7WxqwUF07!(E#X@;ep_tr*KSqyociq7#+HjL(}Jv_1>Mid znxW&=JJbPpr-nWeA0kZ5(!IFE^G1p`dDB4765;zM@-4R@N5bU5tR@b*`tt$0_`hNc zsQcu&aDV;kU)-k4xQksau{p`Bl(@i-8>y{_4W;t_XK04R>8r?P*FOA)zLI?YNWrE2 z;6I)q=Q~sK`7h;s$2VS2e((tLgLC~+@Q;Ci9Q>QWznPrs78kYY%E+B%o}41iWcsC- za=azx(7dcFC~+W_ zIhOmG-aYR^H{XraC6W7H^ZBvlWJEa2%lF(s{R`+R?K;Lty@FJKX+N~|vZq@+nys%) z>P<_34=pe4jfiewKkvq?q31RJ=niPP6I$+qmV2RP-5O8JL2^+3N?LZ6Tu#f%DsKmN zb!nyMNTk70pVy(kuW<5q%+JMUWvmw*@)`@t@ryG?O^nSBa{Zd0^KR%yel4b^fQ;Kb z^8Vf&2hE6Uapps#?~gCNvPyH-?2)!KpXy^Qdq|+?ZlC+>`djLLiMqdo7(ets>T^%l zx2yZ^ww2T*=%N3(YxK?BcRCI+md>_RVzh2;s~Xo28AqpA#@N}GFqTJswF9%sqS9?yQ%q??$ zi}+2w!y{w;+Xe|IF6kN$x$?H}{Nn;=CEmIA6uQ$@WLrG1eQPaV=xLQRdBR zPfMLO*3kVFbiYz=eN%enp62=@&lwf#viC`31b*M&xC@=2-wgI-k7SPfLYzYbJp`X^ z{osQfIHx^1O`kuYH$Gqd&Xxmn*!xk+-VfQUFbrIV!@pPFC-B$u?mhkB;LJ1mK*rwf zG{;WHeul|M>wP6R=(0W_JW+(b+RU1a;=8A_^+DWsdd>Icou0XTZkV1Tzd1vSmxLFZ zp(}iO&iB@>dUtmkIi#{riuFO_aNkX&)of(u9R7>Z6NO%5PU3Iqc8N1019od!WA!4D z0p%i3E7e}AH~XbyI&>Te9W(sVdGJL!e6a|=sDLlZt36UD=C7sW7sZ#$04F*{XjFyH zm+>EM!hJMR59G=Iudff&=ff|Fdf@v#a3{(x>Q8LUgb&CASq9uIfE)W%*~kU(bIo55 z_pkbaTVVa-1~vEk!g^FYeU<)BA6RGi3oG>nHVy^WYyHuBU~K?abbM2z(D+49%dx*6 z)-CgCnC>>j4cop}l?_sUOi|rtP ziTUN@k&%7#%VP&=vy%2!Xyhnq#u$8ma!5PIv35_c#kqXW-=6mDqo0?#az9me06K0P zJie_nLobE@<=#TcIaK!s>$BB8@19Zc?R0oy+vmhOx!2vDu51UfwQ3W`VjlcnPM(qQ z&A?oJ3vEf9N$neqI`z}PMQ&7r+ls272}0;M>34FUc31Y(ZU{Z0;aBDNY4_7V z(XO1aEA7954tQVidSkSHt$mMnk_4~YM=F^i&z0D?j?34@mQ^%?r$)<-N6 z2T$bgdhN+Ra*k6pzS>MIlZ-7$_doYd+lN|DU zHEIqc=fc=m5oB5vJ5lAUTJ>j?T|dKXWGCXY2!5#Ge-2}ed>okg+Y;_C)r>A(uZ~QYl)3P<&9>N}7&76&8BS&()#x?jWJ@d7}tfw|U zU-FxK*Haq}f7D~Af5`l-$Br*U7Rz@BdnjDkd5#BP4muxxIViTRQ7E;3vd}|j{k3v< zqS>cyEPuE7wk~{Ib3ftz)L!}~KCFfh>%fP#YNSk( zF~*NAaO;{?`{kFjtXv!PV1zj=JopAzaei1|9rR9 zp>`@9?m}kI1cw>GZ~EdrI83x~U_XV8!w&_AiSS-OIN-+)sb@Y`Nv$jL5LfYU5+y8CjRCRjMtv8G~;OS#}Q!E3B3K>mzV>)op6$~I!d+e99nOVg7^ zX==^V$sW- z$NT@%b}n#MRrkH$XU;r91RN9%ni&`#A}SIhc!H5LjEI7YDK?~`Ed#?dlZG0SU_z1^ z9*U79&Jl0932gxZ$&5+m`iP#|TR>D)k_a(3No!lq`^*Cb3r3GNnfv{%z1Mlo;3J|umAcl;$Zc}!K%jR+3>00Xd1Z|!0MbgJv35&(k@?C@BQU(Id5JE zE=Is7HPU~r;TaFXbBD^vz4Lc`!qC92fu)*Xu{!3nmTyP!Zwq~|$?;S}AD)^Eytjk@ z+xp^voQMA=e-{6K;eTBJJf(fIZ70Z$&^nwNK_*uKy=Lqj{4bp&J(~t*tA~ufIaHq0 zHv@&!k9U0Up`1VPMqWMW-ll7MILuT~FTa#n!A4(X3hR|GD+ejbe$vJv_xv!I3su?? z<-EB&mRloV{9N!{!Cb4Iu+eo*PCzhx(ZW!TeUOf8;=HG)+j9ENJ#YG*iv`n#x${Es zyuY?Svth9F)B#gpy*iYb1n!`7bRp;1IQI~n=Mc{(9|iqm&w5HPXrDZ>tt7Bfaf=^c z7D`}qc5@b1_J|nsKApeOze|ZVC$_Nvx77)crk{<(kH!$M9?QPMan^Jt=G>=iXKh|T zdtOI%?sMfe>=yxtx97F*Tzg&>$W4sA+W2JrMC-FmgZ{J~%^ujjrKQ<3pLxYF1D2zBJ-L+tSKc1>Iwo%L6}nU#Jk+HdiZJR81039!p_az3(L)|XfN#O-{$6~TGc7(Y!8Mp z?2YYaU+Fk^*|7FC_seQ-_N+l|t-Cik%Bez5osR!YU*dPsd=dKzP3$Yw5Q8gSu`Iy3 zuBoNarwrOCFGjRkPaVAYLMI$u;Dn#AEO*bz)ds_w=RM>i_o5Tx&AeYlEUb-vlBvWi zO@8RL$b4zXQ=IK4?=&2r?|y4?w)vji;c${RDd=;ssNFZIQ4!}XXcJ=)3k#cic6`q| zD_jDuN3r);0**_;x8_nK9>N~ncz5G7;;kF+u6;(f*p(aiJhNb#0gvdMtNxzO-D;W|O=XZRCGevFM zor|YFSMEGHo8RuIp6$x=+9}J}JJFe!mpLmUId^MZDweKVt|c88e!X|=A>xLwPvAc6 zy)*DTTEh-^9y*avgwF0Ntn0m-IcqP+*txfd1d@E4oKPB0HE_QZaJ~ebFXLyuaxrJI zDwxy267F><$#mD1hL8W3(~cf))BR7J9liEAdzJD#+?*l#7v&wFhqq)C($i*SI_a;A z{`6ko8Qs+|)c6~f^}djFVT)7M^9ug&Te}9Z?^Ickqm%Jq?Vew+{Y383tqD=XxaS~i zm2Pr6)%FYI;CJ)idA$EFHGdcS&g-e=jPf9!e-fR{^Prv`oCiOj=U+tYcs{?Umgm7d zpNi`H!96?JpB%#Tkk}}mhxF9)Je222izo3sv}eb=y?0jgygD|9=jxtXo-gA0*Rhd2 zU(~aMn##&mu`s-hz7=db&uZIgUqrvzXRX`qoa}GP$I>1`4BOP%^e2J)$TjPpIK$v? zEZ^(zTQ6f@+;N@~PDk=v9G>dJ-|WTDY~bAz>{1gpFwx_LCNMx6UINS=y>Ia;-B+6ru*;%-{XGm zUjAc_Cz0E|pLD zxL3{@mgYR{efV{iFOLePS?_gj#vhzKgZ)Qp^P4k~++RBp-G0QZZQ7KJHWFXT)RHff zqdPp_6knV5EAJ1O+`UhQE+I#YHP=3;_0rHy^cMxMKIR$)uR41q8M1k9i4Eipkjo|b zN@~gf<@r0{Akob4< z<^JfL_)TVwWY6rnHCk93?bF(5)K&O;jOne7+Rn8$I`9MO3C@WxN7tdh1V=q@zn7>oW&N2Q!DS#5P|Jk3!pCZ%pMy+x6G;-kI@VYFy&9Ix{X=%i?deD`)mDm%nCQ zJ3r+FA0(aweU9lK7r%Fp%V^GYxUyIk8YUS6*T`U4xkx_Vooy<-ckKJffOs<6ygnR# z)Gt{>ZfoE(Uq<(`#PA6egE4U&Y=zb}+W&kQ{JDOOTW=Bfp+GbRuUpKJI2h&RiMucYJ2_xn)dpl`m&6zLqCrO`eQl?^LhZ z*1k6~wxA*qc^w%$UMORVLqrd8{`YX9jP+NG!OGYzmN(s;+Z>M+<=m#pK`}UPLdMWz zlCR=g48m!)7Q?pB6VGyM?5h^Tc;dX{YO}evu6*q(4}AuF8u{}2or!GS^C4<6SlPP7 z!v6uX^>i`($Q3aSw-y6(wF9~8w-$quD_5SaT>aOC4<}bYWK3dJ24AYh@P0Bi{VHUN zZ;ecWUn5i0dL}+RxJj(*UZQ#N!daYwrlwpcbQF9|z?XP{Jw3s;g?QEi;Zro$85Hk+ICB=L zCUl|rVFBwHZyd$>bf&CRwA(@(;1?V(QzLIY_bZQIvi`qxhxvkx1PSpG4U9EftXH00WXaL;cJrf0Pa_lq0k@fAPz>92q zwu-ahJU>W3l1G0lYk7DL-skR6){(M1%uDydjAC9hs8=wM`+85oZ(Z=)spaJODgTx> z33xRLucl_PHe+5|E4t@keI3fhc>`Zj>zWvABFV`KV%IJ3(g18!&vMpMbMO^6v2KK? z-ii-|FRKcC%Ml)5Mp`(>xqQ%z^(m1v9@9?7(Gw zWn@rm(~HZ<3ta<0u6EFcoRReU(L2eDV$W*^kTaLJ)_}Lc>t&(L1lAgBf?;fYIJufS zA@Fqy7!<2XGfwAqZs7$Diz^FV#yaAul1a*U6-a!KzMV6Llh&)ds^a!u!i= ziPf$_j#w8bSroEOvG ziww|CFsD`#KcP)Gwrw`C-EREFD86G4u(kl}V$N$k`ps{@cI(RKXTA$vZ(TXz8Od{O zKRDI;3clEgTxkDBXQaB|4W0GVeM8X^&O`A$T8Iv!hiLH?(PA6?xC$M#+RAiQXg4^G z0-Lclz-M#?yfF%WP=_8(ELRMmq-O>>TKC{LEge#}xf~c?#MV3l4~wsD+(&0t<$paa zxd*;~SN@2h-NexSj8oGHZ?E#?Vs&4+P@Wm<=A2yc{4@GUF^7ZDO0?FT7UJhh4`^OG zQxe$)ZP9HJo+U%rX7*D`LKj{^TW}^=BD+|(u?9%v$EF*dW0qf6tQhysa;IW*%F|=k zFOD#mao{Y)TwMKCj;)g)>U8V{Cf9zJb$py}ezv&x$#(E{zprZZqu^{mGF5_|?ZRK{ z*^YjqCUlfL6=Kv_jw4eRzLVqM+S=8E{B9>k!W`eAZ^@~0Qcu#hn>E!Nw4dQS@5mnh zySMDT%}IY5=UrR2>^ZOe{)3#Ub?u+>F$SXBsBb_$3dL=-Hl4{FWQ%5c`p4FaNHN|` z;MouE;{3f@bdsD-&gq8!bjiPwJM7A6NyioFs|aIWZvL(87|XvlW@_??20P@tB3BcT zs}azr20K+pY^9Eza`y4Q@jcpCz@Gzwbue_RhSw&v@+~<}HQ0qZeCWFR!0!I?l@FD< z^#ET|{z64z{MFBTqJsKsuvIcxBFXU^UDEOElNQ^XNZV|T>!G3u>EsTUmgU(^vx zJDF3{nJ@G^y?~nN3w(i-3w;5}a}8_v#q5)z|1xoOpnH!yb%Kg)*D`n`zPdG>ID`E{ zx1`pfH=wJ{={~uzKJdnZ`oO8_LB?netH!bNnT>7h1+U0gEFH{*;F(GP`K{L`E#~fl zm6P6?x{9J%D#U|{-W=dK?C*YrBKo?_JhwZ|`F z{ORND^H(3&8MWyXh;u5h!hiSU%E6pI)xKYC>N8HCW}m-o>N8HC<(^}U`oCiGZsk*6 zLR@~jb4m9i;JbK1@avy*E}n7{{qwn_)U>bQ&NB8B&%zgP!4tpp5ARTIBr~tYqrt;4 zgTI3Ld+l18XMVetv@4=J+gXBAR(!bvq%#@aq zW5c`g(MiO2s(Kb-Bde}l7FdbT5@USM{tPP_ir$)qZ5qTJH;{j0>NeeA)^{hzp%Z6e zCpIt+x=H(8y0dUD?aGD%KRPl-9+B>Vy#G(|GarCXo21)E}hb&EOzq+Sc`xBCH*}O08WldmV zVSi9~{SQC2l8f;AN${EmmQLo~#k^fu(9`%l($l(g^C0>wM!yZ{>KoD3W6E@9)!(!D z8_u1(D$9;+;4JbIYRzuH#?{r^Yh7KN@O1TdYRpQfCj73h-hR2Os}r8C-u_AZ-qqFH zud~mtuHJs5tE&^9u9lq4gl~y|bT`tkd_-tHtce=8EzV_MjUb;xFyZ#YXo zrE8bNTFvDjLoepO1Ukx2CU?QBd3e0#I@Ut?8qqT@f4#dI96;wr=-dbY@SFP3dQ|>i z61s~Pk^}tlObfWrAGe5a*?TDsJ#{&HpMKE$=(Ld$QsI`f+Q! zv^?(CcBz841DKocQ>*D%_8Iii6X5-^e)Lh=uO0>xoBckALpg@9<=u^>vCpROP;FPjAyL?>wDuW-eRt z)3>qS@jFlTthzbSLp}JH`A=&dH(y4zgIJ%#pC&g99s3E*=TYXfw{Sk{H?a*`Y-N1l zvM{B9M{xC&R%||R(7?^#MUM^odhy*&=TpX2d;Q>+_?|Oc(%0rJ z=?d{W{4X6)(&&UH>RV(&wp#o_e)Z`+@Oqkg$C;brR|$UG$ZrVWuv7ef3K`f>&cM!U z=g#k;f7{T%Z}R&jeAxZu3P?AqPMCD#N$~i@pVnud{7il3!g6#YKF@QvJ9j=Y;KCzY zE~q~8m48Gxe!|m@qg>r~*6PNw_Sw^oSGcRaf>k_(M)Jmcxc)t^T2 z__ZzMLDWO5)7u?nyoi5T|5_XU@E!0EJQs!c^6j(uN4%2HJBFX3onWv$VR3$Xdk)VQ z2FrhzukXbU=JHOldBCCjP?GqT|2D;WsF=PfcvpJat*ga)2p&)@!1xR3-T8k6|NW30 zBEx_1o@}T1s}i2`{K2C(hLW#yzek(*=fClxKZE~zzz%(5Oj;k9cu(8L)|$`{#^4_=2fx2@`%R;l6MUO)Lcj3+J?!yh<0qxxdQdgP zWBf)81wX%rT62o;Q1=Vo_&9lH25;mzygrtBF<1HfmRDH!82zDm(Y^BHj~D42o-Y&4 zoA@2PrGcwrnA=9QHoiY_YF%LbO7u>g=OJpt{5$_G7^wU=a#emC3{?D9IV&xXSNw|g z9dnWna`n&X(7%8W(RuXH9GxE%yziqQ`=j%JhCZ0i?=r6SXCiU%{~B~=on+}B(ztO? zFXz@rS-qTm&82_VkLLMTjH|j8yP)?X==})vp6=0Gw5?)(DQG8}=hOP*9<5X0EXKR2 zM`L1M1vD;$#^d|#`um~3&PVv6|GQh= zyAO=-j@&!szqH~nSa^+%LQfa#FP)pS^Bng9{L!EN`~t9L?I(9@$oH>ej+Ng0Y^}R| zJNg&2v3%UgJSxSzzP1v-}JYT$_+f`_GJ(5I}&jw+YU zmGP@W^3CO|WY?D9-S{f4PN|KhLWbJv-DIc_f2;Uw?-yXrIMXt0yFmW+6u6NJVAvYFPyjHmFIr7v@ysWz8FU51{ANRbC?l1zj zUi7@_M|Q_OC*Q^0X^OFH9M|`*V$K7&vsvFLHaoE64SW&zJ{^C@&FU9?6s*N)Yu1#E zr~DZ^R*z|~eg<}==|ed}k!R7Z^H~GTbIiWVZ0Zl(yJGQm$DNY9h$(O`-!b?XOo1<9 zU+0614d7xPej0O-jg34D4QKI8E|}I6oxR(CdEBXN{vz?6J+yCOulr#WYgOKX#^(-f z)>Rvw8$v&>Bd3x6Qp<^NHw(wAKg^kS`lI&BvGThwzx&s~x~HWYc2cBhGUTe5|$TZhSnm4uw858Yj8?#?U-YY%NPO zLw}bSB=;*7htc|i-?es>JiGj^J0p}wP}8x|(EpN-ml>zeo=cq*PV905$-Pd1byOhz zm=mC0XQ1n8C(u2DeUKW~S$^WN74AOF#hcJQ70_=Wc62bX)v=b|6{J0P8a*1MeUSD+ z+6QUR`mKhwrJvdk74?C?%M_j;>0<4Zf8L6-GMNPWQua9xf03^c*7;oQ5dPNm&^^NK za^eug|3?x3AC26C$Bd`L_eqB@*4hl*8-0hqdg%e+okM^4qwPXV<~sK7+T=tj)E4}XU8rd)p}QajqNaVxrezVu(Jie56{+jS-zw6f$zh!ZT}};d-?Bue4e>3y*%B2R6dV%fBu=LNCo^=&3b(> zc&G*+!_jGnkb%SQxxv4@*W>eQ;zHu{YVbE4eRBvtKO79)j!ZfH&#hpn(+jbi&?7x38=u~1*AdYLMLq@3 zfA~H;+JtPuS9$SiLyIMnDdfe-RHG9*!?%(7)K*4cX+8HYG@Ril)^`qgwgQjN8fu*v z1s-o7WS{jhQjA{?-)H@Np8u6GQowTvcn-t!709l5E4%K^gXdMgeGyp71xpKi)xaX% z8=K2I9$YuUo02`9agj_N0M2(OxZmk-_dJQ;><_uLQ5?OZC(4@mX7<=BtDS2j=%e?e z&o@LLjp60f@?CU9_IGq(6de|u zWoXRWximE6kD&2Aq8s|m+^qusqO)B8QFyhqFzY~YZD`SozlF@Mp`G9if>)=A#)8x8 z#z;SKUi?SUet~F@43`6A3K&IK!D!dcDPSrug7J32Xlaig&e48+U)oR0(f-|uxxe%I zz}0DE;e#@>XCgg+K)yS9MRD?}v}RjJ&fI!(=HP3S2dMG2Ph-YzkZ+BgI!d_^Q}6L~(?G_OZjuc~H~l;32J-b$ySe`` zPaolLnY~JM(v9elndq4YbdH-dUDol`ROg|M+$)}dH#z$smdz=M=dKE7qRU-={^vRH zF#Ic9QlO8JlPG);!*;(5o-Gd>AEk*k9Q=~q1EIglPp}69Z<8}%?5K$iwB8W99~`Hl zv(aJLO61@0fYo8Lzp^b^ox$_Zl_LV3$eqe;K=$rI1~(#qW$;m{$3y+CiT10VH@C(3 z2Q&Wqvd}KhYM)%h8J0ZQtnF(O{eg|KGYMeBei_)T-Rc6Csv_7PVT>;HxYoc`o}F8X zzw#Y)YZtsyB^a^$CFs{U&p+gQ`H``?&=)@?;o&ZYK6?>+rZt7`Hxt}jCp!;G2j2qk z)%ptcnQA`uK1(hdwg>y%wkLRbD2eV?y9jn8NgqkxD`zChH#^~rhvAD|@I_)5_tkKB zMjxKEb`xHFXrsrAo}Fy;?4oR={wIFadH?T_5B7(_7iVpw(L>-?eqI82;_y;(Dm)H9 zNsq=RJ7MY4n+D_S*EyM4^q-#Sgm1234OHW3pLd@FpE%GW3ZEIQa2oIM3F%dhffQZw9Yzgx3^LNHFJo8QKWn#>e5G0i)?dwt{EdN4M8U&IhXt89wrt z6x4}`jX=*-)BkYj56z|Dj&JaI3f_s0z=l@`c@KXw58ZL$a+dr51^SM=*b4kFbkO_h zyRQ?=zwrX}9Xcbv0KW{G=w#pbM+2^Vx{vO|2iCbe+47dzp6-KB^L3xmap;32@|&;Y zUcCk#2cH|gIKNOYrq?hgx~dC3l|oMxTk!Mn8$pJb#%s@(E=7MPsc6Sa)LQ>by9M zt$peGRquz-3BsrRA!Pr<;B##;KCvm*&Iq5vqj0J{lYD&UsA(z-^`9Px6O%>pqzHerXPS!IoGw+q<*ZnkwJVe2}{Mr~ah@rpZqQM*!_e5V` zA9|=ZPd~v&(og9epSD>&r<%Ey`8Jg2|F@a=@I-!xPdiyhRJwfHrdaZQ=%Y?_t@dfN ze9H4nw2{vpgGXdn6Z63TaA)5h_|*7j@Ng5fH8|bi>Za@*fISB6^5x^q1s!YV(A3Wy zqRhct*Rb^DVG_Ja42QbS-C|$q{4xBydxMN&ZWl&G%J|qd?wy{+jS8IR}@D zGvwpTtfdD+^AX^xNSA+c{ke7dU%;D2fBW6_^UKCZD7>#biq9I~;195Gl=WF}%JW%O zgQ((K=b_Q1&Qp=)t_&t6gXr7dNAY`}C<*k!)5iDVt{ufKjnBio>L)^L5+?H$L;bbsk@#gUlLeLoo1H9zV(7 z>>?-h1O3hEdH&`!&)*z~ZX1ZNITc@XGI5#xPT*zX7=Q5<^g;JzC;TG%Kt8F(-$L-W z)B0S#bj1 z`!wF@gW*~G6vIB@r`ONxAIu&$>+9RCi`+FQbaM&j1rg8!FjD zk4K?pzMqlx-Dl-wqWj}#w=QRY&d3BbHU8ABzB19D4?jUPl`TY9di!&x)`W}a?Eak5 z_e&I8L)V+w8ot$~v{g(Z8*9Oq$}dvv$EEl5&>>)x9>zw5qtGsI-!5xE6Yzm(4cxAO z&$IQ-{fr^KVAdv*Tjo_Pw`Sc0T&BHzK6ur(Kl2^0J+iFY5XOeN`*v9yru=BXw{KS( zp*_#GecWrW7@XAsM*h7$I@iC+TPIXIu74xjG69;8ATGojFx`M{z~?#BTBHlAgM5db zAAy|K;0HFehQHwXLB`&A=Rvxr_B{_`d^qQhpUz|*d=u+n`CI19kkL<9vnQh%j`+;h z(5f)&nLX5kXfk_O5$7|T@bMLLPFr+05@J%dC zpWoD^D-S(?DSH)ju&3A?#qhe|o9=n+17T0Jcd0n6@vVE|2kb?R^QtEXf9vt@eXDZY zPolnK|H~P)S-yzw&HkQhrr?X71u!4PHKzTGQ`lS08&fbQ7Utkg!^@r6v3z(1*Q4}%GkeS9sR8(%fzFeT>33o%c9|D< zK*o#@=AN0#%AeW$!!MKX7h}%a2OR_7E9Meq&ZAm`0rF%6#4*|w$M}W%16M|OgR4Hi z95^h{-8>Ife{01ruAXuA%hh)OKkLsW7vLA=`;$DEs4e(duXxwSt3tb|wKnN5h-0jw zzt!lQ<(y~mYPReJHpSGK3+n=Og&Xh6%DVFS3*s0&ci$)bP!Pk&eji)Q_~;$u7dN6C zc>WK44_;!(*$iS1I)h_zz3Gp@^($U~7SC?KS7&9%%2GG9=>dPr#g&X$*-6ZIWk)h( zX|(i@pwW+jLotZ>7WnM}_-(>ElRIr~Y=7~{ZEEB3D)iYm<9TAv)IELq&-F`4=e%1ukHa%1mV`tbZU;nS1XeEF7)Xx*h8kOVy5gN%1U z!|~)73b&fazY>?GK5$lcs{aUjepWaslAV#4!uQ+}Z|U> z@qgU2qyr1iL76q1wX4|BQ7z1+B1kO3^{1ymv;6oiaclhP5jkHByAqw~a291*VB-L1 zN+~gb8>u-rdO+=z8Pv*}kr)Nf1|Ppv_`p|=Vy|P^Ze*JMt1Ckff{(}u^ojgl=@sm? z^vZizd3V~whtZlMy~6Xa$UksYgN*#qbsoJXyXYd^T$;JuTID#LPM`8;2=9-RXS$A<*#WJa*$0e{fQNga#oAyP{D)(li&s4m?B-GB ztNaV^qYt>Y9Q)HYgFQg;r)ZSTaqe+-v-qS8{*3di+7}-ak9cjghSaI}Yd zb=uQPo+2LvnD+qNesb)q4sg#cZIp}g0`CvfPGi|UbL!L^etfaj-?bFRup|l|AbQ5nuS8_sp#$BhF`E$Rn@-NcJGIMyC zxx?ET!w1Y=z5{C^{HE(et&FkLTYJaAM+3OH5j`N^nLeen4Gyw)ma&vyBV5~D^8Jiu za>=2U>~f0vz6cJr|7`KM37Jl(gC-9_w5kved3O7#==cY(5AfEOCbl-qqqEI(4Kl9m z=?u{rz49>MTfP&&iT6_Y9GifhoH$}^iZd1D5}6tWCoaKmV`nwDWHa!3^Rux#@kAM8 zW%-F`SMQW{++$!QPYizFbt$|#8~;f6=&JM|8s+n`o=}vFK}g1G|x1?`HL2X~$F#Z*Kq82J+@4e+1lwtv>ko zk9qoFv!@R>73zck$NLY`2j`N9i-5t(Lrix$0c!)gpsDjblgnmw4ttLO)Mtz_eRPia zwm{~17XSZVc?HLzm;82euI;?`+IgKr&u#BBW?wybu6ac?rYGkG^YU`^EDZNr82ZC4 z^ZvHpzYgpL`u4-m{hxuu`W4L|Vm=Aa+w(JQy^tO7 zpLE_MjX7QXceEAmcY^z%@i_*DZWb))6kE44#{8hY;ah7%bf%!d*Wg*XC!*cAvbocs~9WJSWT?I@Rzc=$InHH#W7omWVy%}pUK(m(J^QUc!^R&1mi@p&OvTE`nM?4+4>1q=POzrQw-K6S ze>F&_XbdA8)J=e%+LzDAOYCsbnwIDBw6XL5HDgAe1(pq-ZfNmzgNL7A=>5~YFP1Uy z{fm141n*UIN4^GjTE2!W9}`3WtoM)MBQhuXr?n=oFe&s5zZc3xO&@(=>bZJ0qg3|k zh^r4WSf9~dtOTO-e|HOM;dF_3~2dPn2fV0H2&>%lX$g|qL zp5N}TX?IOgyQgXQNl#br;EoNR)$Zr{?RL=a=Aw2_(C${RT_ZJccvidpdF>MD*5qTz zEcn<>Oh@y~$}G5*4VV3vO#L6)S^e~v!oPgMBKq3*pVj+E`_i}8^J8x3eb$fhWZad- zu|^gP@ck(B06v{{61}Xf$NBxcnhUVmwvoN?I5yDiEnxQ)=Pl^#H@t&($l0*cR&t=h zht3>*gMN&>;Kz>Z!$Wm_cqqQN$foeDzE;prv3@sx-2bjLew>S++R*vJ&n|C`W6tUz zXYg?$?|yiFKAUkZZr{H6Bj6T2-Y;(X{n~zTtNd42HYS_6TLEr&^@Ce}tD_&w7e|4u zKfZDG#^BIPdcQsA?>_(EG?$X%xol(oXy+1f_l67Rvb~?V@Y`wf4R#nEH9qurz$QOU zvA`%ko9fun$5FfgWb%$Z88R`^1^9@{SJ=w;ig{ja;sf~gQ$qKvFXTXLd830Oj^(+d z+5I%+w7?ed{4@HKetMoW6n2kWFl7B>_)_aA$uaTQkob1L+Mu7bmr?NTHoncTbItRU zf_DqPH+E_derVa}obU^bwFe)%Y;GT5+gVSlD6T`vT=3K0$5MNon zm&Mn)^xhTpY3cYI^(i`fwjqk`M@D434IN+A`#d^ERbMaf{b9Y|M0?Nojp94$J^Fc{ z;tczFUkGPky6UW3fzQvg=;{DxRzGt-QtJw%pAQT)`q|R#5yr4I`=GJT#Y0JQK`al6 zRyjGP#=N`M&eF=PQS$7Po(1o(=)=OaPV@G!HF+@BFSfk!QTS*-eHQSMrwczwhsb7@ z8Jmf{MUVU>54O+e!B&W`zC4sbuN24}&zkEGviPbC89V+O-+?Ey2Lqqy%SrrI=$nr( zp4G>F^kI4XT3{k(mW?Bx3off)W6TL3)76!=uCDwF{aL;pss6;*=g?1==)L&bd#~7% z;aj8sMudjyeT$QE{qoY#Af5|h>dVLH;;q}WxEdSMo>-Q*BJO^B0j^q#aK*E5^=bNW zb@NrB?u&qJ4X}GQ$mQGdeQc1~%gV>m+F)h^{TLnG`svVb>8G%d+?*_)t&TG`Nq9!L zeT+VcPnvloP#q%%dTkyo1iT^>58$I7cc7G3Rx*&EX4y=oLr+N~C z=^$+c|0BY=SudA&{1d-f{H+v>%lqQ5sSk`f{AFR>QUoKE7&FNteXFtfo zGCXvXU}^GTxy~_ukxPf{dM@i1#f}uoEzkGTm+=Fj|Kwu$8~cHOa}oSJf7Qa@1pLt3 zi)k2|KLU<-zy~qrHWOUSe|WgjrTuc+>37BNmhiXbfuWjHKRhrn555?@Kcmr~1y{LyC&kM5o&L%mYV*xaZKWn`&3u9WtiKi&MGVSLHfYLxVw}Z=+v0q z*ytQ9Suy&Zjl@OQx$%x{t)Y8?QGBu9z*OE*4Lo)XlPlw$CwF7UPRFafuc5|q!JbVu zc4Ihx>j>n4{l2kxqhBh5+5Nt3j{S&W<^j&>I^O^C^XtDu>_0!h-sl!|R3r5njopoW zJXAw1nSl)y9ZFB88zfrwNee34`_|0Be5_ons`a;QSa^=9e&H?C7 zyI07WdFzmm{FTD{Oumi&Q;yA2?zl)IFUg9AK$*{(8e#r%=5EgD&Vg69wT55r?cM79 zzG6xQKIt=Ngmrb%m{)M0lkI28uweVLOY7TLjGob+*y?XjZ7=0ckh1nA#MBd08K(x^ z)-leU*6?GD)7Z~AhCTz4nGtRt)4??!O$O3#L~D2_duj#wu_mXnC_fhYY31H37q@jT zZi$Q69S86t#x;h)#d#+fOl_<`>b4ON|TV}BLGsRn>_lj{FR@O4;+ zP>X$CxQhAeT(0~)#g3FSm_)ay(1Vff*hO&qyy|MuK80<6(aSwEdX8s@=iEJV=Dd5` zM$V=-RAYL%Ba2X}>P#?Arf z;N(Z6gWPLc-~QuI&H#7kfxAKNC!RjPy>m5Z9FVOjJeZ!P@xULpA=(ViUT+O6C-1la z`CnTTe3x7UTxawfb6r3#8L;UbV0ND$eBM*)JmjZ_yY{w}8>f6YV-JMyIbQvH{#Ber zbF<&2=?6GW?%i|9w#ysTdSI{2wfHZ=6h@V8~bl-zw%nA{pwG1pV3t%?N7kh(fRDHH8B6_Il8H? zgzhj87^-yhIzj$e#WN<5U<8OOU;#()!Phh_fehBaI&H_iO*-Kc+UWP+n z>Vlwq#{e`q$QaKt#v$$J(nqIgOn=XtGj*!RPn}2h9{#Jud8p|;bn$BD0lefRWNNV8 ziWMzcvCP~%yM(%^OR0;>IeGdj@90JL*I$S1S5_R^J*4!=J={$of8-wg=wA3#@FX^~ zkNtoXUZnd8;Gb6S-dUZ;Hun>-HqqUgKDqpV#X#gs zm8cJ%56}mG^wAmchkm#877rx$!iQ#E0PT=f+0N(r#*OzmE=Y$1MyxJE&3=Y!ZJ-q=Px5?$f zH1O$;4Dx=>9T}bQpy~+KsO|`P#QsX>h<~WR@NNw8AG{}CiWc$F*Ey^EQF$*|#CryR z@QmRx<|!Cs@ZSvhFXr8iVPRbSap%sR@ZQZU7Cocf<(pTGe1rT}QJ`0Bmp^1}*W=tz5ovbm7{h-QpNO6g zx+EeyHw}44XV%Kr5$pXm<5@jHE@7Cpb(rVOJ<#P|=yII=9o;|f@_$VTzR-F)%lr6E zhHoGCc>e*U8AqRXfem8M=p8xPI zY&Lw!_@_rkWGCTIctdMt=|AzO_|$Eadq$r=xq&$-f9gee=tbh-$}{+`Yg%9T?YROXK(v>E+N0`DVRFe!cQg$~!J#ES(8W zFUM9J*@wP-7v=jDe#4led=}LWe2(ATx`7qSY4PS&*0B{{Nn$5sz%UcolJq;%U5{pK z<;br9XPHlfZ**n=eH=hF#2wOtBDEZ(^+;| zJRq7GeaG`g`i(+otp`*;X$<;6F-7G)sjbb0$v=~_M!cci8ho%N^tZ%=-F}PCGqE1G z_K?%j%=eOq1Mq_bKh*MGeK#U&e0yyjeZYUiM#0OCd~4QT8(iNY|8G|>Ivpe6^^fu2 zCH!Z9yU6^ldS(8OYV$Yevx!d);cwZ`0w1H!?9mxNW5rjB{ERyE@o;ENy*_a2*7G^! z)$*U#g>LG7sxIo(*y^k(0=e)Vm<;Zovegxwc`w>5<4d)=T zch^fFYL1$d;5(Ndj}3G6cmsO83Hfcv)8nn+%ksRd$8SZC--aHagZ_5)c=@HC9!K}c z?#ALJSv?-)E)3qsYvd^#3q!X^A7=GA z&-XKq;CTd|h)!mWOU<$v@~`^esd@Ot*r*84IeyIPzt@06ZBz4TYyBT=1blTmjcu64 zST}ik*T#G0nuCwnTF_x|h5j>E7q0d$9{?^r`!8ZhYzA$AKZ< z0AHXht^QR%vL!m}7o%OV4xWh)e#xy}W^ihCu^TI^?6?+MC#TaNb9;gKrR>NHZXQog z4>R5Y^r3M1TqASgc`9=-dg+iGlgj`5Ebq?nU%t-Kdgk`kIX%xKAQU!b>z8ZS>E zhb>j@z`bvyQx-~KqY@iRLJ9Dcm=!d0O)W=1G?awQJzy>M0dqbBeCW)E&Iq`7XAfje zd0xlga3+2cF``E5VTk$BK96_`xB0`-$+hY?#&)>_5s5wb`5ja}Lqtty1w8a^Ui0X~(g(;w@q(%&%x) ztS!5L42?^nwRp3%mG(T__6NQ8l6}F8z1pWU$OUkt*R5}!t-WC9RKeT_0{39#(z7v& zucoFstkc|ji9h>tjt^pk@&7%0qqt^j8uXwx;@YD4kjHo-fGiJ?Sl;9+o+1nv~DTKI+l-#UAC z8k~p^qKxJ9_#g`(uou9`^Jf?f-J7drz`Q&^CU^F&2Hgn#voP}9;K9f`ZlCHv+{2h& z%-!(aB7Brq4;SmjbMVI$+PHG>GjX`Af1%iIH8dH{+$QrkvOh7O=EQNcvGvKV;rsGv zZS{fZ{W5vh`Scd8W3s={I*E*>7hvZXV&|KvYtT~G-V2S1ceTwvI3&~!4~QSS50!*C zpPor`W}_2+*4-+*9p@n*Ya?Uh76y?qc+kow@pGLw$*n&XkMrX1_TBsOIQ-TL@9Av3 z<~=lj-u>}9{Lu+Nb-`QDd3bR57u@)cc>ZidVSGpVE72|VzYSb$=U?=mVxCFjFtZ18 z&TyKOnNxu*0k<1xDd%3Za&(z&&_M3TlWseYyDXIttNZlMC&pUAneg(C7uNh?YkU>` zt){;<@a0Ts}6JnAmN^#1tE=;NME(f>rI^4cuW<;XGw(ym)?@Y_?*Av1eKL zqMyvZ12Uj9w#kL9;pA)lj*e42;9>69)mf5*_%X_(kI4=~kBx(LS9NLV>>z9}-|DVv z=|O8>cfh0KVY^TD;5XhPAH%_q_qlgdA8?NOxSLvS;8gPaF1%9jN9Go=CYUR^gBP)p#%?|q%mjxxPxelgJQKS) z(DvRfW`A?vch_AKIssoRw$s&68t6u@PVC~2Lf-fGUH~qt z`EOV|vHg8N@%ck1x62ItCo)TM^ebj_Nn;h)4}sJ+4a0ysFV2(9w7D`K49W5=Y{S*|Lj(5e_J{@ zF2uh^rgR?aFgm^qIa8g!E_|RWmhk6-8B>L9wGcTe+o4mR`(aK&dqUu0c1 z_jCp*iN49{po$LBTXa`lZP7fAf2G=dX8+OZ-wjm-`q#+dNBymWIS*vcgVBw}K1dz9 zjQcaY#<{*o`(NkD=(+SWcW8Evs}Ee1r=N{|Vz22BgFlw@N1&gHad|#Sq=xe-=;IsF z#qvXz8oKy9cHkq%WplYJua$Lj6dN6xKyJKr8Gb-?9Q-jN=dYXxy|VrQ?TkM_n?C*k zeH8cuJl_VLbgt9*g8ld_s!yl5M%EYLIY^sB=!+)&0R1joZ}%e`yIU9D zrBgqC05oHx4e!g-edr7?zTkKF2ghrFu&hA;MfQW&L(mdAN+3fiWal>UdOP%* zJ3N@VgZX`?I+&RUo?F4`nYG**D!JZEn_aZojvm~EPTT-)w>g<#F}H^nYfpDrPZT*j z+01?+v>AsDN;knD$lA}D_s{w6CyTVNJE-R%^&PI_{U`bEDej57*7wfSZ*k81r{5m5 z?bk8iv0s%8+x*aT^?~gdId|z!PCxDSUUvh%vBt@~xtjY-ms7W)m%8DMAwT3}d{bT` zSsh~P@4CKJnc@H6%?f5-E_XsFo48-Fw>}Wv#@#_{fe#rM}C2DMv#ELCiWnW zuB1ljJmxc(`D~$H^9CoxoKHK>g~T|kJ1!x7BshP#3OLK~Q+(9bfF`dJ zGhgTo?rGp&(&_wrh&!C#1>bid6Q6O;KXNtyjVX7Iy~!QJXBKiVaLgCF>kpy(>q?x> z&%-xAUKb2RxtB8q&C<}U6Pk5F&u-}215KS0Ta(-6gP$|*#Oh$?n&F(S$5+0R8W|Dp zmNff~{)>%Y*NyMi!`|7u_;I>_CvE1d8s&rW>xQ6*hj#3+HBhO+;`+CPJ4Q)|^UcNl z>)xR|yrYc2yB-K;#x8O~U2}q&%bBnEO#D~OYubN4+3fO~@Lc1o=()eE_s-5a;PwG0 za|nKW9)5d)HIMf66OSQ>O}=nGzGDq#p?_k%Bb+y|x1JQv;ZN-m=^U@>-S%>KHg^x) z8G&D>J5Em>f2TI1-;tx6or)vl`LCNh(b&&8*6FW2GMhWKW&{7tzrXMPLr&%9k^FuT zJu9C+0e`AqjAUGKAMO9gH^FcGuDyF(r{4IU)T#ed@!cl)4xTml0!!~fSFJnb-y~?O z7>w~9`Cj(ey)UAy<3G4dL^%ZSf}@%6N8&MLw`pBC%^XjNj+?ecG5wx^zjb$$iZPqnfQ2Kn=sWoh3X0w2=2_Axfh@DYW;_6TYf6wyY4;V8A{PY`6 zGlvTJuM>Xyn9uc_Wd~-euZ8erb88qsjI*a>O}+L=1GGaP+%q<6xc?>RPy3^n`quYJ#@(s? z>^yp@zCk{{1lx1aW-;-W=b+6&Xd}6kKVV?PelB7^I)5J{f(#Nnf6~(FR?&&y44pRj zrBfGji{Fr=6VDGor!MGJ1)aLU@2B$cJHygyI<#5^8 z&Ab7*_%#1r&wtbSPxlf9_*XQDRKP<6u?2(CJ=Ms-aP;5^WW5HNuS56Eal(oTbx%Yu zPDUs0a@QX#|0+)(4@L)71JiI|8Ud|qfT<1{pM!i)Ko?EKE=)!j?Wzy-)z5Cc=sPzk zeoz!I!f#7GhR^vd-frCkl>q5PG z_iiSeoy^J2=yv)`Kf#=ymToT(sBihzthK}4YZzxWc-T(-5Z`+6bHPCG|8njM^7mIB-S;E4h~hnyQd=fy9};St&5sQl3Fg?^~Xo7)OK+&C0D%Qc}tsbVd~ zcuB^x|du5s1=8>q>(k>{p!Ue+DkaMxu2$1$@Yn#rq2S(wUj)nqZhV z;TSrk1l-&Aje6hG_kHak*#YkV<$ZLOyMBERKC?Ao1W$JVt_2u@Rq=;1(TivK^FIJ4 z+a@`Syhv!5LjN4+PKqXYO#AUegsZjSh`-%^u5x@~6HhdBj8qaQYM0bfr*76q%=L z>&yH*e$m)a_a^lB2KX2rh{6k!=k5jQ(FSzqeDvmY^y>Va%znQLIRWp+?ty!q9Tx9p z{S#<|F3HI(&&SB+NY&ls`X|lQ>+~}oddc`EtD)r@Xt~__CL==!@_dsoGhPb)MxW$R zc)rQzoNtm;Kdb0(L6KiF7vAX4F9H93{1W=Leo3t29Da#-95}?|qGK_?{+P3}hR4x& zhR69jikk{I!x+0b{w$}c>_z2Kn< zE3bGa@&vvCd%s=a#QGER$;i{p#OAk#6&Fp+2fyf)Vtlyqu~OqlT#0U&z<;V0I^O(S z(J{_@9^*aN@vmg2U%z59@YldAb@0wO_-2CVS2Q_c>sQQcK8Ig18DFOcn^lKjF)nEK zos3`6)Jj|Kq$B6Y-GB1(eXh`YFLz&#;^=X7YXbeA!ZxHg;{(J?16^CtZ}4t6zCi-M zjxPkZc}{rFV0eC-x8{StwZ2<-A^GF0;eYyy;V<;NuA7T3o8!qs>%`EJO6UjwntTs< zSot3L_CkDFV83`iUwKW)S2TWOf&F@hzBr5T+O9dS?Xq_^;oD|5Qe!DO4?LmAtuJV3 zjDA-g<(yAmZhUZS_a3I-2y$H9x9Aw3)=%y-d~%$;XEw^GeW$+&W|bQ;cimC$H^3}aU*h}+~uX{c-ctV*BO_P*K6{YmwI{2W1i96l#^YG9n0oqd-GaM9`GMKuP4qi zFZMiG(=$KjwNth)Z(iT%XI}lyN$W$&=zi8lCFt?uIdyMEKA`<0|qSu zQETdAP7D1E*v$CMB>`;oWni=Yr_jOW%wN81iF`$#2h)FweX?@KEhoMqc(iYPFLCJ< zHdVFG%=e9a&$FNJr2}LyqfM?p-^F}X_erro@r!(J*-N9#8{9Ra=>3f5V(flt$5YwA z%Q_y<{$1Mf7=M2#eU8q{>T`I`>ht3(83WxJ9SCfLgSmC$%yBDF9rW<@6nx~YSGnn+#P{Vz=;ndpC3NFEYu_# zA)DYdjIU_cV!8{*;1m4C=3*a_)g9ne_r4{dy>Kdg3NML?tXa?_FA&36hd;ale^~w4 zIL>R@V`PS$UeM{f^KE=33KjyVrf$o8a zvc7^~TaQj$k4{{VPF$xLhJnqEVetE%OVEomS1fr(>yeo&MjOA^d;@IC$2B~|p7;U( z!e3trFH9)rhY?O#@!6&MbS6HVtN-ui#|`akk7Y|^Jx;hDIyXQw{ND`mu}qS^uqb|l ztH`^hmRf9=kD4g>@HIS1LudPyl`IX`FFn6pmUUE9r<h zlqvj_l)oWxoO<&Pc!>Jb`cOhw9hFW6-6&-@1qrbID%<7zkw6&ooa72S;u=| zibyZ__YOG!MepGEBjy`-42_k49>$KTapLs3RJw`&EB7btP4FVDCd)7S*Y*IcPx z2OUc~o>bozjvI&a`03b+JiP%w<=+Q#3wa;;``2dg8XqkxnVO34g+7QuW9pke>FV}L z?7x(nyB`l|E$@6hw6y%}R{XAgBMbv|gW8Ggg))G4w`bcBdb1t~i#D=GYCT7Q) zV#czz@F4ahfgY1BOyteW*d2bqi!n;PIev-1m2Ycs!rrLnH;Xazb0^0fN0(0K-Nc+O z9m3cVc!QilSD#LF^=V{~&dppOs^tA{@&ii`I02U~W3^Au8S9*F%*J)#Bl!lrcWooj zHv^Y)69kXBHxJuw=eLgeMVS}&-)+srIJ;eUt! zS$jw9t-#(%H^$-Z8;9dVV!LKmV*{`YHz60P>C~{s4lQ4?EWlod+3#464YF(18RR9) z{-lN!?ROv_yH@83ja~j0v@*HTv`1#J z+5Aha4!;liy)N`sy+_WY^evz7Vd#+;k2{*pHAN2=_F3dil>#rb_mS?^?%;On!La%hd zRCtDO@s|wGCgGKx@^SLoTrZwMzHDs6@C@H2!2|2RuzVNsjP+eCoHNeBGp9>Eo)K-C z=Sb#@O)lV@w7&Tx`Q~!*4e;gj&HQ}6K^I!S`8nfc`DS8Hzga%$k8g&2M7}Bg0KPfE z`~Cc9`R2cty|s0-Y13rr34>?AEj|ly5;SSnHvE#K)@b~ob z`vd0e^yE-T@6gTYde&vvhrY-2BGyJebbXBZmms6)%%dZ*kI1uRVxL{_CEy9kkYeVg zwdif0t(`rx%C)m4?mF%0#>Ppec9Pm#T*lGC$^|p+rT2NZ?Vt79OTLh;quDb7_*n93 zB~L#EFaI}Bp1QE7e;9meHdjFYX%sxn0536UZ0CF@a}+M>@VQ3eJB}p(gZ%`%o;CAZ zgl)m+GiT(KZ?P44jI4tb7oJI;tmoi)5P1IGgNOZjlV8@=!Ty+kKtX<4Y%aC-Td)U= z|H4q`$vC;RiTOV2qWCfmqh0?izJ{7EhJITA%dho!{ICQV)?h1(&Soy*JM9;}sQ36~ zI-gkMu362Qnx)J|_Z4JqB>goppUBhj1mh&<)@L4JZ+~os^Q6VmK=H*H-t(@GccZAO zGWt@lrjZ*9+b3PUxCl?T(eIegp|{q8Z)ly%aS1+d;nezM8?Z(mLuWTTnLW^V5ByOE z+^MzH1@~ajuAk4i>uuf-D;J;ftho0l7)!A40KT2T_b~A7;%w7y@)gE~-ric~1b-Q8 z#&>;8d{x#_OZ!KFjU4mv+6mla|LBZN`jnHga7NMn?*5jq!@_zOa2og`lg|lX{1kkg zF9$qZKCS{rH+NBWv5+(79Ob-F9Jp0uS!aY)XF0hYI20RkZt&<`+VOG5j?dwn?dngl z{u<%}H68!VJS?4d`W0LJXf#TYlT-KStzkbtVqGnCh367mfQ!Dd$46&C3*EP6?xvv* zcB+RO3bnpa>H*FdYi+Pa@RWPsjyAsRY~osxtS10N2iup|*0-;`yrI4M zni=iy9jXj19pSXU=dTJaujAi_s!;P}{w3db!Zp$lFvb`>2tJ?*U)wZZ5!6hFHy}l`Jg#jr$6M~_^f|R z+vsY(Lw6b72R`Jt=IgE)JV+lopOxqD(@we4L+OXH@rSMpk=XZ<#{QP+gSFkW;BqZz z9#uzF^?ya@24o-Dqb;uQBzUa9q!^%dSXRb){(^9j=6h;N%D=|`?VGWJ8m`Pmc#v*3 z{Zn&uF#X5qH>>X($7J=r-6Kt;i}XFuim7NHa;|~9tRu0OZ*u-qPS-z+j4*C9`mwYT z8Rprx4SH>t@J>2bYfHi6#xMpLeQ)ZlG&z~%0%Yh>$HY5llb3hzipAF*cS`R105m8F%NUmP8Lu&Q<2FJGj7OnI5} z^?zhMs|)_V#M9Z#SMm{M{$7kWYqOKgUwT%2BD$nLUPAYDdb%gx4873RUEsW%vx+_Zd*W$wKKWO9#>43ER1Y~L zBYmOM=%OLyD_dC9Unew4D+g75EGK`3J`}gm*-F#TYVzsmM>%jBE3ykYn8$wBa))u* z6P=5WK}UC^pQm%r$}1z`19Vv$U3My1-~Q&UGuqGI+0g#GKM%J5?)b;sPaUdhf3L1G zbk|&TSW{)_EAyT9Q_Shqa9`#p?BShykKC5G$<=#rUHCXT(a+(ZoZd`daq{u7K@rYG zMajvFk(VMqvo_~f4!rB(B7c5q=B_!~x%JFttT(Iq`mql z$_8y-{h!}@ZS`X3Sli0U@3i@S(|I{kOL^5_{Dd zVK*L1Jr!UUuSuSCPFb>HWkoWgdn04Bm;-$zw-x#?r+UHHEZT09yybkC+e&gc{W3U> z&i8cH!hUqs-XdMa^HadDeXJ~A;ms^w;fn&i@|=&?KLArcUOy@>qwH-6m-fyg<-UtX zZNMZOsC#sN%Qr?wHnEp-9GsYS)|k*#%@tf4y$oK9^>P#(%eH6rGSA--tzL)r@S=}= zs2Dn~0UgbLcsK!_HgaCV_Ftp^!Hel1ob>4*Tom-r^J4Y?n_U0+EXH3tkG@>LXQc4~ zV(_B%m#n{$c-{2{1h0uj@_ak}C4liBVAL64>oeKdVDdN6Gv8<8xt=zSXFEe+NL}tPNtOq_DBzA-@ zj=qL$t;zX9KV$qvocTeI#F}gjAnVISUvu%CojcEih09mzYZdR9qwXfjhd25Jzvu4( z@?4@ez;fy9z_FTG*(x_C7~{8w70UvCVm%GSdTu1vgRgPLerkD*nn*3L%CaLHhWL*x zA-8rT`ejKiv6~j=`yPGtI^hQ5HHj9^II2dC*}Iqgm3F*4*o*ZvyWg94iUHPT&2IbDF`N65xG1=RszSa_$_(oR+Lu{EWf*ic!zBp0D-V zWuYMa5;+3x!3{DNj)5QLC))Sd>HXo{d*Kf`4HI)g-mVW_BYwB%?^|46XC1aLFD`1% z6K@dTA9m$VzE!E#!aR$%tH{5xZ6b%93~~B>_O2M|Jjo;cm_3spe-(cmK9zkaYo#Ba zWh4GVc|0Cm1Ar@9jqV{9WY-*a3~Yq>yDh5^juhzwo@djSw@(i&?tK>dFeDEZ=>wiW zO&f9t&0Tu8Ttr;+xXvLsnS-wUw<&hC1U$&LN&cP_4$#391vh7NS)6-fr{cGJMN7BX(k+2-XiHl&t6kjEEf9p5xYjJ%pUm3+K~b?~TT$A& zyLOk%IU$@}R2-@1|M@=e`%Y$t1i}6Nuj|isaZTQt_c`6qeZKGKe$-C_e&F2i1>ZYe z$vs%InTEsHw4V1Ery@tbG|rN``~x1dpR;4K`F^c&;UC}vw!XceTDR*ri@`7QocU|a z2+y5&qw}%u1<-RjHSCt5Cxqc+`OHh7=uL;^PtR}uBY7(ZM%aA;=IYvg=wsAkAjiYmTbFNlXZN}O zjaQksiKjit{)11^hxoL4pV_PR>{Vo+ZTlIVozHrCcH2Maw2vSIa_}|0Hy6GFY#qN} zi$y-feBhjJ3(DUyVm-OYoY8UDQJuBd>GzPjuwTGjx`DA3yEgOQ)XltsU53w} z=bvhyIEzEv@Ee+QO)+OLnYZx`Lc90|&79NctJt!B7d_beu(x@p`CD~TbDC$Q{?2W# zNd2AD{2Bf>c5gL0)?D_w(YAYg{h!Vr?cPt{%>1fty-Q~vQ+977FrCSB4R&wcMcchC zvU^+JM;@Zb#cQy8>(cCA`nyQG*Yxv?3-t3*>|PUl9tgkfZ;_t@?hWP>zwjLkfO7%s z9f;qzKRVz*;4zqbZtr!)>)x#6tdzI7qs;iwFHiZ5O$`ab8(lY!4v|16D~B507n#TR zRgAOE<7+Lql8RsdcA)j}j2!D%t>uh29l8W2k>$0)(m~e4`^nu@y#aGJeOrZ3c|$s1 z*tP;cJ@3f=Ry+R?>tTa0bzbA^u<^ytWk~-%2A_}9PlA5h=%<~2?D|Ub!RQ>I-QRfT zl-@2CqZgb?(H(bMzSt1fSHk*;^$2D;F3ftf2EnY9zIXb0k9{v;-c_~1J@^_Ff6%!T z<>-ix)bdy~;IvpV)5&l*?Z2DeCy$P-{-dB!AP1>noa0`74_`p6b_h;@STA9g3Tj*Zueh zolmRw3OJhV7`Qgr0j~Bb^auMAKf7kx65mhqt!dYwKTbq{JdLlR#M`gKOP>F6aQOuO zubf`Rha%Jt&CnxfVdHNluXh{1Va5GsW$KZ4^>uVe_(&)3Mwj}7QQnWDBSvWxgHM=v zVOqOM)DyrL*QG;lfmV1g4DXHXgf_ut!AWPg5-Z>-4(wIC`4}|S0iGYH{|V@uebF~3 zpl@D-Znn+SuVVzc{J;G6J$wHE%zpXp@hP3`jrY&k_Zl$P2w+03#US`<^fF^-;1_<4 zcS7_n+ag=9N%=gNBNvbvDSeA)>01NIn{wMkHn9fwBgP)MbsQygTwO(ami9Tf);_b5 zo7Pr&h8u)a;7%>LBbg$<`zYRTU20-@$nO4uMy;m?`~^-P3tNzPBK+;@1+7bgX@P&w zjej+^Q_Jwy(g1gPB_pga$8YO9Zrm+e!|FvC-_R2^A1Bd;Q7~#AB8U(xm?9(mOi1Jcfr}TnNJ&@pHv%Qsa&!R&~Y5R zIf}m}Odj7sa-DY-7aYQ0(vm=*Xr!%p@MDfn?4C>A&OWKn2KGrh<Ou9+h+np@AV!nZ$4A{e>}C&k5An-2 zo@8f-YSRpDQvP;#XUZfmD%mgcT>|akQ3rT*48ExI`)fFZbOO8aHumpx@Za0n!=H?_ zo=z+WpAz^|BKRGlhZET8PqL4vLem0AJ^eej4?Pu`c;JLR9e{jN#x-tH;h{QChm zJ>H8gb1(Aa-}0=a{P@2gZUwq(Wc6u&k9-m18)hDoy-%}_hr>SBF{on)ddrDZzzF>M zm8ak4ch2~eXFIri(gWUmFY6dVJVSLqbpBC(sMegptn)I~c{%Is*Swy*v-Q@;13uPy z{3z>z?oUFeZ?lefSi@P?@;2?yzF{Tbp^pY{-$O6*e>cA5l&w*m|HF_sZ!>moi$!0m zSs117Uy~madjoz5KE&uZc8X8>j-6p1X|U-IzQD6ydn-71zysQ$|6?ot$#1a!U-8?o z7Ji2HU)E7U?B~S-YpT1K3(3FiW-qasyaDUt_tK0FKGh4Kz$4D2P7i=T^}-+EUoZH( z^XO^Mzr~*a8K3l@@k!r)*HrfWa*_WT{gYx^{R*WGvaDtj)IX!C!V z$DbE|Du7RWko)&h&*dF!fyoy3zmxr6K<@R8)Uhl2Is;Eir;W1?oIaU?)8O;q6sOHI(97Ad1-=aKKsTQA$YQ^5Z;mzf z5n%L>&`lEkrL*%B)X^$wqBhRquTX33y|Y&GgQ|kS2j`GwozPB>C;0(a< zJ?RNQ-1VG*Iw-!gX>ogg;h@&I?8?~+$y$B52f zXCb@{J#g?g#wd+ibHwvU9j*w*(9g!8`-y*^tLYV3vxXSePUkaXf8LW*``Ym#y?s9> z2k(isxq%bpp@;`Y$VJ&&2Ci1k2PG9SN*yHCSs(yuwpJA=uSb9tA> zxv2TEzH87~`%!aM`l^8!y6cE#HoUO^;8`}jhz-}Tx5@*5N;>db)&;L6g4cYHt(#cA zjc&3MI9GG_P%|M@y%WX&LAs-6WP~O@cnZ;i)@^UIG?39&K#fD z%U8^u_r>cz9XL&{#%Xd3PE#vTcygbEFZY8lr|Z1IH#d2Mlju)z+G|sIQruzl>H*+M zakGmjTikVDB%VyZR6OCViR9E2z5fWx<{{Y?XIx0(ih$7@$4c|(N z?~Dg;nAfZOu+_(7AIYZq5wiHlf2#29yVAOUXJ_Y}<14J>g#DGt6GyD%L!&qwG{K*I zxQzcFvjRUQ_v7tXtmNg`^MkSLtEs8C5S{)k@w0dEf3%XP5Xu>Zj{ChmGfZCOz(B3m zh+m;$yp<_~Mq*pMk|u+kzprAg+Jg_{@yF@W%6XW+`)$fb9P@th?d^p?S!F8TCu znWc5S`UrZ@x9+}v@5+9IHm}OJf{S}u!KMAI;MdU$R$Oic@B6qFy#EtcaPszw&0fty#p z^SvW0;lGdEJ$dg#-hl=t_l~f9i-E~fU~=ylEZ^6G$qHa{?>ftO-)P`-HGl81d;{^r zoxv^~1WX14lk1l)@jXyrO}if6;e&6y2R>BiT+#9T&ulz-3piEv{`jHNfmyz<+1NWf zt>9aYj_+%>@qH1a)A{F|=4Q^mnzMb&@qO{GiJ$U*lr@_A59lDq_m$S}ergg?svYq_lg25@a}h} z7#=+ZxC{a=Q-I4f;PP%x|Eo)K26a>hsE5(}ibIi)oez(btnXA0@L1x)1KKn2fM?=c zM)$ozf*mr!A!7%&owd3BVkMHRBeewx9zXJpPZsMf1R|USo?;&tm{?~PB=YY`H52yUE z2l4f#`(JsM|MjVwx3{=$6q8kaR_#(g&I7c=pJ)8G^5^lacDvHrDaY1>Z_m5Yahj7u@(i+MsquT_3z;66&f208`jOvr zsqOd7nBOz@x}=*JzbDV%qyH#=R?S;J&y4q<<^6P@C(qx|e4e6z_GrT-zwgC~v-i)<#jx-^Qia}6(g43f$YS0GBEHj z?_|hMbEe(sRme`GSHXj1!_Cs%X{(%A#T?x{kqu+X?zW5L%*?})T@#px?kY*7 z&0#k(<^XqD*1Yw-BQ=w(S6jLNuEr|ZOsqW^g}*KuX8B|{?}R@_IE%Lv{`e^Tk$$e$ z{dvzXvF04WhkRbn4Kjcn(qIU>-r2?H>Roy93C^f@CofFC&H22*w2RRuLtelul`mr3 z&^8@6K*u|wV>>q`r(@v)?wTbxWd`^Atp}bnSf5Ly|9IA+WBM^PN?)Qu3%FXfy#oP$ z|1cU*$%FLNICQsMewHe8|25HuHtHqAWYk&EDwsTw4yd6EzQMSP9Gchj=Pd*!>{ zv~1K~8-7KB3c>eD)|~}k8~zgmKK=eU=W*Zz@I83Lb%818!Q8$-JcI8&Y4ZoezXWrh z#e@D9nA?1>B(NTy>E`%|2WIe#r)Zzf|9DpW#cAzz)-m=t=VjR2M>$KO_SttGh_)3A znoBzur*gF>$p&Z5Za&j~^ljxc{q-GiDrdEwH}nzt`}EX2M^g_N9w%N3|1-QaYpoIX z(amL2j7`s4>(%rzUw95bew{ff-@Am^NhZFRntRQ)b~l$P+-T&K;VXtW^E{ZojNG!U zzzbTRv#thwv6ZcysbGII_7Avb$Ss~Vr#$*`+i1`1J>=fYEcvClXvWz%p4I+s;`DBN z#R^rU-(BM`($=^Z+!#)*3!3MQmn~y6)(Aep2fEhC^MBK~!BO^*fI@1GHon>S)2H`g z=9u0GbNqeA{O~2tgh#Fd?(l;s{6IA~7L(Vw0Uo;%9&2JMIR#gjc=9^DpF-!tM|yzV z#`Eg3;R_^wA56dx)@Jd87dY!{_`ym?59M8>b1m;y=Q4bDGdv_i=UN3n08S~`&h(?- zE0=YKZ!vsf13Y&o$r%_ig?dBqg+}rm#TOdMb9DK_bnS)sg7hbB63!SZ z_srz|?RRSFd{Xahvyv{axJJ)eyrS&9eYkjDaW{Km?_Eit3)hC9hif|1lEEu@7Os6I zt^K9&irZ-C!Xf##0|)lR$RFU>C4Y(nZ|e80z{$}e&6ySClgn$`^}BeD(>_FdV{P&%7SFfOSh!~bHm9}M zxqt;X*z(!Usf=yrtSY=Y2mT%A?=`${^YIaZ@$S5bDd)^yqs}_Iy!Uy=jlr+b$C44+ z&W8u8o5I(Jsdob3D43sw7!+U7ZdjlgrQBi~(Jqz<^}v%dAU)Lu1xZLtwfabB8p z%dK^mIU5+BYboCqnLjn~pKqNpck)I$SQqc<%qG0UoEz0Vg`W$6C3|4+1F#w@*v+%g zmxSl0oh_;Jn|)TD*;f9RjpV{;nP5cQ)-~i9b3SK1w$A$b)~g$k!Mj?00rKBXEmzg( z-T*#pY!`oO9r&yVJ{fs9^!FY)8g3qr;IFf6+8>iIR@K|d6_l-nJ13 zKCfByz#U5Foo4g5&SP=ky7^o7UQY9)=5OT(3~JtC{=UNe{fpG!gAF~ja{q(gdBl7# zKjRh6KQ(`U-2DCb{H+?3qMvQ%d(9`O`A7WyL5-DscQrgAaEuIw0>?3}Z0vE|$NE;%^`@UGrgGCe0Xc7VG>$+2wy5_?eqF7^f& z`!nx>=oo{ctpk2v=~+9s(&C?;&uHhTwo^0XgZ^FlsW;O0Cfd%VpU%#FV%G)yFKl`Y zeQFo_R2jNPxu>wBf&38FQX5-TMDA1Jp~uLp*+rd$wrSAGbZ~exzVZjH;3(c7Yx#qm z!3@T>@Spdv:L9C=@7t17X{6O%0)=Q+=$yphNM2YY<7?#?iLsl}z$?a-33$H6_( z#4X@(e4=zFa-G5T?7PySg%*(|95Gzhx^jJO``qz<{Z_> zxhu^Rc$)hL)TeT)GV)x>;Sv6wW=!dut-Z0$*$csboM7LZyj$S+7&#Pzv-{76w^Psj zy7Ti#-MrAF+z(!a&ZoQMbbs|O@|3oM8_UjAC4azY*@BWlC+8n4K55MicP-9e2Fa(I2~_2ls8cGQwDm&Y9P`Ch)6F|1K_+$1NIH~R_pq7@z+Spklt z+b4(_+xg1*#!htjB0d{$U<5d#+`NSjj<`H;J~)ExLSEVD=l1`NWD~LhSr=IWu8=1v zA5K&}mG+uzKDhHDKAc_f)?M({b<0M*`zSJJlg&?C+`j90Pcn5K{Ir>V?X^t_jATsV znwyh3jQ516BY01Ex{Y_`GfHS}tbHMC50^W#gtaJl`Cs28Hn$ww(fvK#CtnFHm7|Fr zkz51~EoQIj)6^og@pWjxr+46e5%Of2R}lUcMBfP7zfTNYtKX|_Jv6e7e#iyQ1+URz zkYU#a%J@C9oE%QpY1T5o#MIt$*Ro!^z*2Mp)+0LcvL5kV#!KF9;Oc44L7pOusIf6R zkZ0?o23{M~wuZLISHZ$t3oLm4s%b~PifU@~(Qj4O{`nmm7u-JYysJER_VsD$=jIG1 zpPGkiRv;%0KKugs2|q&GSM4|b+cMG$jH1ujirV0)tou6zg)&T}F^ElbvyO z#^F)+3q2zsnk)fV!{h)a=HV--0!JB3@4Iub>wV=nuVyaMDsT;1FI;oy6o)s4@INWP zADCvHtMQoo;*n1W63D{@`4fpXmhvZBmfG>}mSx1hsZ|hcEAZGkJgjXPyu{A4Dd<=SKh~Wz zg5}8m^3zTW%w#<=#&_~;y7;jZ|85{}NBb4~n$d59ajjkJrp*{)*$M75N*w?0k;H!P z62Lbq{8C%uL<^(>cyEEt$ z9m}>z*aP7|P;kzkJck8MfYx7i|04 zOVp0RRv4tb|LnH9BWc>(om=8_siy{hKJUj=bi8?Sp7+cvC8`8fi zQCi&8K5jr0-zQ@aG1ew@jm_-MgXBuHFV_17Qw=@QZw5Uv2kAPUokjfbWz*9e-Y$B& z)uE?Z-Ov-hqc(g;CMWJ9=xOC?=!x+^jGhL#c*wd9J<;aF>FE~e>1OEZv(SPe;G%@P+hsq|?(%=!qD6d^PlR#^Z~z*So=uM%@j? zz6dXef*Uq|>g z^h?!4Zb!HJp#LXQXU)9Gh#dI(Nc0AsF;*VS+QQsJ3yM95M(p+bswY|ZKZY!;9%i4F z3g>)l&*i|ldZhdOw|i8>wtB2}e}wnKIS=gVr{^i|?<@DnFHn8G`}_@ap0s*~b-#VS z^qb~Pfn;+)?4F(0zPtV+)%=vNC$;Z94`<(7hrp-C@Ef{ObR4l- z+y7v6#r5b&(Nca(*O7Q0sCMI+kIuo=_X^Yy3$C0*oR#^9n0uHtSjr(K_OO?^nf{Rr zrhiArNyVzwfBL+5J~vPC)HUg`;M9B~Lx>G9SF?`!;4jaocwcfsHT!C@9dvHi-Y<{6 zU&2}T$H<9N^ibv(W8IP$xoP{AI{OD4V)WZp58Adzf8f&|4o=~)bfxfIbWd=(09?k- z43>EEJD#7$Ik+0uJCpN;RqQ9UA7Zat;m!H@_*K{RC2;&GIF61n=O{RB=@VQY#<_2O z-%7pUFM6y&N5NkYf2*b`Hd63WbZySm1tYWY51z(Pz~1>)>%h7u@EqrWb9g6GZUuAo z-gLXBLTna1WZ4oQHqEph%yl<&l|Q9K_O0wSYOTJ+8KHy2h)=>}4&r+=HB_B(cGRbh zLq1TW#-abnH0QnP_MGsq1-U~i7-ziavf6x|^YqjaP369De+To^`;s$u%}m91cc3e! z<~AX-&MGv)I)?^IMHA4E{N*OTz+61&6!NXR?|fYEz?(UjYJLkb9{w-oU$j`{Uwlk7 zQ;tszybM*<8lDNg)TijBDhn@p{-W@5rcER0?wl7-*%b9DzaKhQemcGIJd<{<$beiw z_K}@$QJ=zp__%!A2A|>cs@?*kW;Yf)Sri1hdGxqBk?<=_#vr|z0ME&6Ib1$}9* zqA$(OrmwF4Sz`u$@m#8PWae6=-j5(>GU$uv!Mtzi3pi!a7kZ`6qaMA%u5W%6-g>dP zdih7d)rPAs9asPQ!KLHs0p@n8xQf3#qb9J6hYzqnABL+d^v(rvbt%7JDy}wv<)h*1 z&uP~>5q!KzT&>sp;Ht^FY5i0nQt-V!`>yF8SFigBxcY$B(G#vt%)(Wk@8SIm;i|hY zA4}gC_(yu(U0a{}OrYo^!2LGC16l6!3H%l<>){hlEG$K5@V-pB%JZkYf#p3tz%qRD z(&>JbV3{dbQ}c-+&ok(r=PN%1mVe^+Kl1+w|6k+3?Ss#6euckFuT|Od_pUMB%is7?Y@g-CT99qMkZq461J`hdeBmft4om(< zk%@6+a2ql)f$Wg%k~|JUcXt)_K6J}~qC;gtzwhb^)~lZ#>OWGQXWid~K3G;^y;{a| zInR$Fn^h+|C5Msi#Q1}rw~&veU2^y+=YEYGp6tlsi61V9!<)EURfVRszl z@QWHpau|Ka)UTe1Oyyl{gt=_pyLlxkl z-@Hol*4B4G7i=oLoX(M{hCBB?D()dwRGy~jBT-nHO#g%!!P4CZg_+jyM z!w*+aNaKg#p)0%JJdsAjTF*tu?kQS3`Ta&Gx8t#?`E*CaV|m~3LtxvT>~{C^56mUC zm*?|Cqcgq8JD0jwg_^IkS3UAV_QtFSyUX}td4BIs;E2u}mHxthMcFUOB<)v9cM=cH z+OOkkmj(YJJ-|Qk5#awv`tMO5p^InmP@Z4r{R_c=J@BdHe=Fy(RV%WVzc0i)!feFz#}3Ek|>^@UfkANWHQ502m)8AF_{U_im41U5~Aa}90dtyc@-nI#SnZS!|M zzs&u}s-2PIp<7wUHiw6@Z>}x#lfODVbcMr1mpeRkP0zMWLr=C0*fMEtro(rMF?8`z@+H+S#=AY)G7UZ0GN+G2Q?xa_ zk$%J*-|A^h|^X8_v@AF-~MLhiSu-aBXRb4}b`{HF~+MmzsiSEYS6 z_<^kBzRO@Iw&csmu}*AD*_e9X&+`{()9L8#o#^e)5hv?*Urr<2+_ht4j{PY6f*kHv zwq0Of`hA3b`4ep}d0&Q|C)-+NWB#z4ec42wMgm=~1K1yDUj%o>8aw!ZT%Y&?s40{@ zUTy49)6WC+qqtd!JtXFsp=WMa%`|GUtk78OxsieFx%_uqIk)TDqTpg?%`~3(%*AKP z98}wGqsbo`9nd{%YL}8{%d=!4&yUhB3{PEWS-(;arS!q8ScmGTxOG)#^i}>#N#M<6 z_HfwyIEiW_rpH2TxURJ(rSDxKk$3N6Kim|XB#W%$>mCvC$%ZEO?$a;DqF|!0X zO#ExmCj1W5$62SBZBrfHf{y3G)i(4x6I)SC55Jr{uS1%b(@)z{e4&h^F*H^?v79pQ zg)ZY>=pO=?&n}n{=(Viu-6Cp6j~ZaZ)vbxkeIh1qID*;}b}gyG=C3ku#mwXf(LB~M zkM8EsoHmE_@uQ6I=D@hQLGkL^;6`UpQ+qSl&JQYN?d$Nvn(_JW24{T5Uj&=PO#DXk z;Ip?{wm)D>PC&Ufk(}@DSv(HC0-hXN0pG4MdIkQG>47&o&?~?v@G}{$vGoe=n=3a% z;17I8zuV_8c>V^E%k!oae`dWF8FrJag;1D`dy)}Qb?Jqo#WBeK0Sko`~|4;n?xz=ZL zD+-$bk-sk}ntq6+LA=-SGQ|fs;ZJUdpA@C<2hVHRk9K%R5qsSRz7~Q9+QYkO^8>Y+ z#c%08HJ-nrJ-n5#!$0mc5QHTS`5VX{}-Y6q{lx(Lx5ii@j>u!*ZeZ> zk;v=tBbODAs33poM&e615nnPgr&V|P6`0=@ldT|@;z38tLq|J^j@F4Ew}I~xg$3k0 zQR@jkOmbfFlTIgo5^~}vo%os;Fit4Pj-N;`Q2Zq1#7{b%_(>?oj-PZo@sm)F9Y2w- zp!i8B$Bv&UH>80033E86es>W!xzTgQ)Emj2@q=d-#FeYY)x#O4kUdXkkVz<<@4CMvr}<7Cxl9mCDb~kQuC!EY9_ z50V|W+;Hwes&n?Ffc|#5N?KlhAU=FVfS z(ajZG%i3MtL-7{n*A3MgS(|hZwF@I3TQ}MG3ojX@8s9d*5}o9AEMVLjjGG6Yyy)ee zh^zYzYK+p+Ej`@G%@#kq$zI4@#v1HhP#`&~9x(#)~@R7#rOk2OC}Iv5k$655SzY zm%Yuqv6cQ{jCsWw&)Dc`ZN8Ai7R0WuL63))gAv}1(oS>h$wm*4@7@+HXvc?3)A-BeJJb8F?yp?(44)a#C3+vYn0O=hg=~x4 z$6{N+Yvl6@qiY%+AKT&u)*;?tY>TDc*cL0{r|J3~&jnfs_Mhwu-3{QbcP;A;t>S(3 zzR$}RQ9PgLbHwC7$Fr^X4-GU5wl4g8u%Ul(VfY?Sop)ev;Denjs@VSu*66@^5jIB} zj1Q+^2269aVEmfe+AwRWbYSK=A7qJ4o61hc7)(rk`Xt8_p)2W&*U>%n0oJ; z3%=K%_mnGbkAuDl?&a~Foy#g)N3zS&fvWP2{kERFsmXO9ADmn~^y0Uxa=DwDb4`|2 z{QjxWG`(MAy;_W{)7{kHzaG8)0Q$`~boZ_PWEpjZm8%uS_DaArBUNjI_8mTj&6j=9 zxn(DEPWZop^=xEavUNHchg{t`vHpLzXZIBaTlWLI=O-B(=CE5|^*Qif`}O>G_6wL* zYQKQ9)}sE@R(-VsUy~CkoeFs3R|Ia-%L?ps{ovfo=nq{m;d~42_w${dGnvC{kY0X~be+-#I zU4uj0(J>kv{F0Aj3ADY#!L0`T8(MRov*!O`u3B?~eze{{b+euyrLE^#+KC>5rhP&4 zGtQ^`0X1b--bR z&Y+ul=5?$?M_v5DlD*Vd2`qkKbP5hX2M#U_+?+4#zBicj1!%fCAWG0CF7VpOLQrXr+KCH zm&v@JuD|fyp!|z+(G9;Tz6$OszM9bvoXpS_d45>!fG2A?UHR9cfk^K)dk&03SA+(Q z9}zk&A^M?SdoGQQ??crlmns(*YJS^8p%ADKKT)|k?L;G-+l#?gDO zO6`+f{~-*0F;}xL*N?4p5b_D@Y)!6Y6VL9QEMKKB@h#bjoI6U^paa#Q11YYnJ440K z=A&0x_=+<9F?Ri+VtAunODLzguld_Pm)9%xcR_Ojf2Vv}1EHz@@UVfvh&&GYwW@EX z5Ano-@CNb3fqs)a`y2emw!gskXWatdO3z0P!}lWC*-?0&$vK7Rwa(%@_Bq85;a7$q zPVSi>dWZGE55dvcZ1FaSAA+OUf`%WC;M}(1hvd3+@*aM#V3c?9DdCr;%`C@8OKYS0 z29b$fHd-t1gr>7*=*IX3%HfCf6Q_@!_+cgdsylx8vl#qPctm^XC>W*><%g#DA!A(( zKMa%e(=9(_jpY9Zfw|2O)7Itk!~fz8_NBt)(QKFqH(7(`A7#!x@x#gi-SfjcfrASJ zayN`ks(v!~q39u>}_~AspPv?g`{|)bp51U+C@k4O$JbnnT$>4`P-=TKE z6CP7v`Nylw9eZm=!Ve{jp*wQ?Q~dDl==u3R8T?lLr}IOeuh%-#@*mURM{Z{3oA5lI z_r;^az{%!QPA+_vve%QId5v{ z6+Ucu7`(~wFzC88QM*gM;=4i7`F#c##l0jJvNvz`8W zq1RlEUegP`rZ;+xJ@4Kf;UU(XTe;Ikwd-%CPORTK2eJg*G5n17hM&=g!_QhSMZa6e zoiP{7&)hY-{H*CCz~{bf_=umehA{KLkbW2DPW5#C&V|EB;Gp(`f#GZL^fdkM@Nn`o zTD$n!;o;Kn&gW<5jEtk-A-~E4{pc5dX4)IQi#>GsS&Qp0>5iY>LH<>ies?%czhfNq zyDolqST@(0NE$!uW}NQ$*;K~K;%6uQ6H&ERD`4^=Li zcp&(y8ajptlJ^MD>1qcatCo(@zm)UHbAPpiHjHljSDOcZrZi0_w0R(Q3in8`_LNR2 z9&77nUHxn9bRNj_+1pu5TFztoe7fU-9lURNAh3l89_~61l*t2kY2FSGY%qW8PU_yx z+fsk`YW_KY_rwEZL*QE_@GNXj>1}V`*gZdt4T1hkpnr7HU#Ia#!jpD<@_?<+m6`be zWvTc-ephoRcYGCNtVZ{$BmO^|G12MTs_{j@FJ+U--*L>?+iUi87=Ku1?0;n+V)pE7 z2t3S){ljOmmy^eGAXFg4_El=i`QepZ!eKIdOmR z&BXm@*Sc~47B}wS22B>G?<>!1*{3#SXCX2=QB51$ZZT)CzmNY&bxaD=RTaQ41{H4n5hbnX~6O0x4Rzt_`V zQm@49CAx+3D(mrUXdm5wwtnv9R}PoF8<^V9QTWtG<6FBapIF{XE4h?;C*Ti9iR~}I zm$sAN6mxzQAEWWTIx*+r#M0!a=4=%{Ht3AK+(}$mevewtj=OQ^&xgzzD|4rq&9m*8 z^H0$2jIC0YWBjAb7`JdinW>i%A~v;~aSIuDEb_?w7P{8_wgca-&bdCun7i=x$X-hC zC;jgj_^5gr_POsu;=Q`xv7q^nlOV|=;E*i!P?96q4< zq~aQ(YV^HyeBt?R;{74;MEo`cKag)c#5u#^+)=6+g3Z521(f@=7MoLi!u9*B){uDC zI^&B(KccU-%s0fGunAfg;v*rS#fec~ANV2jGyNeyj67hDt~_wDHZ}dxC zD!CJwExc2ZGK`HmvM+u@a_uhH-htEd8##Wgr1YK}v+6M9S$Uhs z@SUBnmft*#_EzeC(}L!op98M&@;GyN5%@^=c+rlzw79Spuig*51dr$EWB>B}3+A1^ zpC*q0`$_yp_M>XyD372g-|63s!*>e(i?`#$>hhh=_9vAyZhWV#`yzd(hvhqcwH4nf z{TbgW>qz-d>F*+ar>38M7wG4s_)cq$PBuB<0Y^;!0JvrR5_TSe!8!2nx)^K6zi;3y zKC1l48NfLK&x^@-${sC&7GJ`5+9uw$f;&^v{G^g8U!CE|l-|TAQucqo$rorJr+k6J zjC_H-`)2rd;ltA1l8dberV7UtA6EWJ9y(`?-}3!4e2Vij$2p_nNjH&)srT|}v&2(B z^+mPkoqfEsfOiyM$)}G|SHZuA!FTjb3|*hC{ka2epeO167B59_;Csb*WK-@U7PB5Y zP<*`?y6xL_USctM8L^lr;OUCRJf>L8W^klxhOcBOX9?j=h0LkMbN~Oe5$CS73Y(V$ zujQd@0^~OgZin8EfxGT^)!b{Q`AV18*!omXvzChX$MxHtxW4Aqi?x+|dYQbb!Y}*3{n$GtX1|_dZQ1jz#NYY$m==oqfF7Dr&Cbf0#Jb18UDXf$i*D3HJfc z*Joe)BL`zFJhbp+=hL>lx|VxE3yqwNqI1Q@pfeohF32~?xqO}4mL7P19&xK8Y+`Kj znj4A(i}1NF`ubV!@y2)mhM)KRKAnS)je(~izY|COKDTcdhm=>}+TXsLLwi(otYB(8 za_ZPp&K81uKMIli;^|{@MU-prY44nK3*&y4aZm6(jdT!*84ZmeHT? z+l!c*b4AUgfnyzXI}(`9FnQJfJ$B7J#bFBUyt=AFBmc`PJb@>$FZW?5_lk59AN4?! zMHw_HIVPGsSySoz$p;18&*r4)Tcz+mu!IgJw;UV*^TA#+1t-J`CtbB6u zqg?4d#%9WGuD(@1f9@hjS9`&0Jssm7_TAt~BY3i&+QpJxUe0H(r#?xP{I5D>Cf^%7 zHN9_Sj)^JQ@o4J*nSOI2d25jRtlVB<;!DcU_WCW~4Sa9pGk^Q|8#{)Y0-v&T>$29O ze7BnzcON+w!e`}Cypgpwo&PW~4YRgl=`@zN)MI z!5PE+!OAO$xe!arnPCNUZw80(UuwPKx%km)6bC1sIh&esf(v>bI#A0?ts_nTp4mh6 zS9cHH{d02)w147-`KkTOZ$9gH-sQs*q_OXoeM>w5RI=R8Mvzl8bZ z1CN*ZpI^v16z0^%p0~5-FR|yUCD_oQOEav0vspXi6}swhEUIgGZV*@|?#UcJY5F@oH)yV%roEGcRcV zyUX#Rpess$c3~Gsw|3zd<$m1t$dea<`3$dhT`qlWb#TIk*EZm#nsn<8yh^yA!p4aP z<|l7&(2E zSNP0)fu;PPPu`@K=2JIoa70Z9Cie9I;=N6YL!Zo$&pY;0SbU*HmO) zm+_2GF_;TZDBl4eVUSp~sToB3VD5OH_ff-fzm?*->lwrKTME~_!b8^XrLXB({A<{0 zn@&g67MNU;B)K8BP3p1tu7EWob5naVhBf1>r`BsQ;nbNeJ`e8xAaQZt14r>2C-C1q zjy$)Vf9dhmyUH@-sWS?&XMwSwJrJC4q@SBg{lQIszi;Lh))be{srj?qL(Mmr#;NDO zd@a0V19T(%pB$`Tb@s9DuRzzRvpfNpKP>?^JE2eR#~9QATz3b>XDOIhNNzY|KAXh{wlj|4uW=&qss`oV zu*Y@0Tf_gw@SPg?PyVtczI@^-ZXU5}*Xn%9h+*Vbyo~dON&Z<*D%mClm(7<5eMXVq>f^}B%zlwEMvR?SMiJ=VV zJN+MFVUq(Je8w#naReLpY`>wYYsA{c8*+eAgj!01Q4aFLg;4{sV!@^c9bpl$k=?t< zfla&z*v#nxHd?2NIkE1vn3I9$kPECTOwHT_ zY<$(cAEw@RtKnh&0^d@e5dAL{{=y&sM>!JcY#MVEbReCIT#c3*^oS^Jr5_1r6zhB{ zzjKRdPQK_yXpY!Z(hskxc+2K@!mD)-&-n}euG=pD<7xg6{`R1E>8#u^or&YU`REx7 z9UWsn{mrMp1?U&jDHrai9;ETVdzyboThW%6K+iLhG_f81^ z@MG8C-B^kKQ6xWE%kt1C1IJ4$k|%~#B=1G9J6W|Z=)QN) z*)bdaWhHt|jTOZA_b>CwH9Y%$I8|m{tWpbyy z&8L~)sZCb$G&X1iyVd12PyYq`?G5BOb00CIB3SCLNbzBtmkbF!u6JJN9o9bL-8Dxl zi>*Kgb7XnW5%acpj;?_M}&3Om+4!zhLwvS%(%o_&p;92K^ z!sIT{re19nPr&x#?9v2NBU%5?19kQY1ZzEn{&gS=egER27%Nq%t zRssX!v>Mm-@kbwmw-Be*ymS5bohPn6xRbH%Gf|w&r|-y0{0&RdCAZmqk;`(p^1i8o zR&cA-Tl?CfA?P4S`0W)d8Ls0@i;=6-0~NqOdW3PXfueP_CYGx?xN+&&D>m$0q2zvmp3&HC~ z<6Bd`%l%ha!RM~Bg7dg5eF?m>andc=*agcgIFoC>!!~Z5Vt==T+>hPdsU2Tx1shq5 zV&9#eL#TUv75|4e{gxcsvQfhW?GY>4-rK*YJz*u)$6fTR&%5cX{fH-c>~&ADiS~kV zGw^7*Q}-+unR5$vt?43@=b1|kQFX+x`%h?!HL32gOT*I9w`bK6KXMax{!(m-)!1;X zyB)Y36F-JOhv3sq)D$nvE81Mf{n%yPkF9g5>Q8kidZ7;;dvYH2kH6YDb?XtbQCl#@GMZu>1mC36|p+`^P3|bj+ z8Q@-R_3l`R4%2=R{z6Rx{P^URhVxwWr(u$$BS3d2*CyR3b>kUVqm2ADwK^7k28Hh;X4 zWy)Drdsi;R_Q78rd6p-6#aH87 z4!mY783!}Zd^6AI@3rsQo9W!MH8KD-`T5J!i} z2Uhr9Qaa5n#@Fxh8XF$*6?{5+O$t_9`3}9tw3A-LbA{7R_$s_Ph+knTI?Z#)tOMX{ z6g*H3Ao*V^zXt6+18j_cA@9&)2WJ;MI2!>6BGOa9!EF4S{typC040wA{cd#=j8#bvORM(r1MAhk!#= zeQQjI{xp{b;G)i_uqIP8@t3@Bk6jjM#gB>7M1n#?{d;S#v_m9q>#xTC&Pt^{8THXzR z+LFbec)rqUCmUP$C%QE2(!cx>(s$cdpzAM3pCP}8T+$@Ee=-7nM(`I5p{AS3Pp1#t z#{FbKF$UQz>3#!qwj6$*Kp#MMC6(J6o!6z8?PmQK@Ec&e4GH{{-gzC^!mEbkFBm?^ z3YbsJzh{`^JFs!>s=(j#uIoFf#MVjk9UOM`x9A)G%v@xi|5#<`d(WWFdi(`CUjlzP z?Ap9h`~w+hOL#s=o7SgT&#nB1e2dP*R<`9^SGziXORr_hb5QM&3+R9?vd3kMw+%iI zKhR012mYpe{7CiRoh`nD{$t2Y(W+yIA5Q6sPeH@tIpP75S3Lie_d|2>)x)a=I~#5z z1Et!}C&@)cr&mt!bmp?w(P#C(M|wvWze&M2_8?=V>m59QmoaVxw!65)LF0?33cjg% zJxLqpYvu)SiSWFFHuhXf14ehv@)I;6Cvxx;tMexFqn+KRY`712$f}diM7FY?wFH+B*ElfH`sFWJ-r;?=+XkzR7!O`up>a z-oDnBxn>{5lcl$l<2`7d_&7BG0Xa15c^)R42z+jS9a?TAHa4Fce;2@^Fym&}SUh*o zSGJ#dFuct5Gl$;r2E+Ib!galUmT(rk_$L}~r-P^HRPYIS$_;_<^Sz6^74nJ9zrnTh z4!b%*w9%i*CwTrHb5I?P@J?(#);fdOs>>%9v3@@^q5ad^_wjCcx+mGX9DcgOAC%9< z_~j22n7F44lf}&C!{E^!O*PWLp^F=^vuA)0e))jxysGDg3&7dNhje?+8+h|i4lc~d z!i5_gTp&M7^M8>3RWr=ka;#nOYV^bB(rRJaG<`$h#S7qrXxhbx?+7ONR^$LKh??CTw?O={)&<$rX-&0m{y|w1=w^`QxQE2Wabe@gH z8-I2Xdn|EZX`l_?Tj4(q4J3-c|Fc5n*yLDG$IIcl=&$bGfnH*89)8okiMRd!%$9}N zwUySV0%72x8bz(MS$8=#X3~EHM$&`#_lJ(B3=QnCYF`US#Jg1UHmCV#-+gC`?mm>h z5jv&5RjWd^2t@<=%|CncgDu3TRXZ)X7T=H7xETLpoOcgie@k#5zROUt@m(HX%-Rp$ zV1HM^cQ4|*jG?<6l<#t;)-eFT<;VCxu<2#iU05+Zz@4+nHsH~QKB&HxFQm`A=&NnA zC)hsC6MUKW9&D%m*n-a+-=(KxA@nN$SrpqsKFdPUD06armWNaPI?HFdo4g3E2i@1K zAu*GvV4+% z+ua)QLyk4~9**7n;`K%BLs9T${E*ftHhxHa?!c}MyU_7J9+v-cug1pC zbNr88V~=!roa2A|k~6mUU$ARK9~LYZbm4DfHs{6Ww=C>7A9L72W~2O2H-fom$h+_&{9mtl*sv-Wg{51+(>5*GCvx ziLHywk*^_F@|9=#1xK+4wZ%sgbal1E^t;2+)ol4@`!T~SQohH-Zoe^f6zOZS3-i=3 z&#v#VAAM^Ko6l$X9=mk66}IkX+Dmui*=_%U-)C0NN>4G`$${I_t>?Mi`;#*^_Hl{VQnt$BXg7Px_9Gye1Us*-TKWp zA@5((xiVx{w9EIH>O0%__xYzgNM$mfQZm0PHsGsX2AsDnqX zrJ!OQIrt$8@GxRXf2>^NmBdqtQF#&}$pC>&}<@By(Qi4v_Wi%L@+-+ZzQ( zl<-3`ZeoQo#IPf--Frf)4H@it+R*qed$8$qn*3HFzXw^`ogR)o?2gi$HI}+ zDRb60gY|`xgJJB~2IvJF_VA*{%A_BBus9DUy873&e2yrxgFD%hI-iXmo}&HaAA6?# zFz~LT?}%toXZY~bp5T3Ro=Eo6+?0Q&OV7MDOV8wa5;)ho6da(x4fLma@HP$Fe%lP& zN%Wg;JMlbB?b-JbG=Yz_MLtsbO>ZZsq_u{5RI{dP6Z188<_pX*TEje;W3)OI^X;-T z@iAoBbUYU@Mhv;DvCp$Jm-2qPoyqe#@=8pdYj9Kg1$P?<+nA$bzQml)i}_ZPcO_g) zfNR~xd!dm8_!9?rOuQFbvYa#jZ*hM0Vrj{3^DOw8PD`!$lgQUf#=%p~v%7e27`-4p z-WvzM;+#i{vu_7$fj@M0kbINp*W35bOIC^3b;Zg`0)3A-JZ`8SE!DSp+)d!StCv4a-<3RD#%`J( z@PiMsN#G}kQ?&-^$MG$;xHb~9G7~R&UQ1tw-`@=1z5~1DHX9C&;BmELR5USpdqV~hmzF}BHE_~LDuFo0G#JKSZLY;xA``VO;s z{2a}hy%ubZO>u^rp78dO@OD4A+5oQZ;if#Ma`OdlVcx2THsaIP9QRI_Hgc{?oHKDH&Y8G~lXF$#oQaD# zIaejlnYf6Pb5-J;iHkTnS0&DwxQLT;RpOk9i#Rz~%6GMMu5wJyRf7G_2iFqhTy>Ij zm2h&dl$#Yg3%|w2*aSaF>|;NkrN%pZS+?L>&ioX0tOfS1*bO1Mlku3yIZE^3rrdGY} zi}K4BE^Pj{&%C`w_Y{vAO1?)PK9?f;gFmbPV;biixsat+;H{l`88+)Z?7Oj9!7K8) zlmDP|)67ve33^_O?m`g$fAgQ=%TJ;cJZ=ReH8Xu{$SYQkVCOvW;2gRK_*cU|MxWyM zXZTMa3*JJ1fZh!MqHgaqoLe>DgSU&o+t}lN=p(P0+5kapFl;+dhw2{b?8AC;H#UL0 z-v@V9FXMvaoX#BQpDtpYh2(!^k0bn6?Dhq6Y!^6lY-N5W%>Y!QXh(DD5<1?4fI_it= zw1Q!9PWEgB{EHxWqg&SoquY$0j&5*6AWr)*=ALUA)%yTgU3McrDMP!OK{U zEo)=jY&}7Eobs!#;kR_%fafdK2Kv~I9^QZ+-iThF;Wt_>eO$Q!nR2S;Rd_S)99=vm zOSWg};vV`>`HfbC>#U^_9X!i#WNJHP`HhTRS>X5))BQ%rKP`Uh_<8DVKKnT1H1l6` zea!jXZ9d)F`SyDWXtrB4c+Wd z-U{zozMzD&p}h^i(AiL(H;fNiEB&$MF7(Io;PM3M?e;uqj5DO`z-84yN?;!zTW%!} z7WF&S$URz7cvcLaC7*g}0KaOTdL46kw-I}8=j7bK@UjaE*9Hmw%q;O|*0Mg(-~Rr7x5kUuu}~X=D0vZB6A?F@Ixg7Rc7**|rr6 znpe`FY|R8X);7iVYqw8gA2?U4Gs2b1Q^B5g&!>jTJ4)9bo;~c~=k-~-!z4#{sI~o? zU)DIxP5J%ubDOilD~-Jf{o%Ws!us)b7joYawRT_qEI9Dl1vdn)zH98eV?BkNy#u;n zdKb8A#*7`J`HSKivwxIbf z{x0c8AGm!AeOEzKGwJ(QfAWJgeL&}lZsFW}`hDb`ogVyCUjFCsKey?`bn*<#{mEIZ z=@jQ^_j&poygmtDpX_fXe~I2O0eqeaKL5esbKi~;$c*2E!zTvxJ@iY?(jRs7hNF(& z5Or(hJ915-FchU@7R1~^$ACB zc!Kl1`#eLxal+9XbUynUc=t(o_sNyvZm7M~|)`;&jLtY7sb zAK?$=BYd6n*iU%;uSri(A17vU){FN0XulmDb)U|y>y!36*LQMh6>W&YRC#=TX>%{W zvNI`c2b^Z{pLtC^F_-sw z=Y-(FJAwM*%=bgw9_(chPl=tFepe_1pn_1y&zqP`5jQ2Zc zSNM+4<-8(uGdg*l$2lJ;8tdEqiEO&6^7Q$OF?Y|fhko={-J8Q1rR1Qmowd)v9l#Hq zQ~hWA-O=XV9lYy-26YBWwukg1FS#*Z^rMBv-a~wste_7&mXy|>`-C*sT5vVHeVFgu z_Eog4q>nYZ(ZRGyJEX`_m)yx4!ih z`hHcf3|;?za7#Kw;wkvOYMyXz-`E6M?=5xSYpcT-S8gQ()U|3I=ShYpdXk*KO-811 zzJ$18tlX1~S23^BUcR<5y?pKCdijn`?B(m2+{<@-S})(Zx}w11A^xUw#LAYI@>x|B zxN97rIlThQC+oS8XRGO4T_NxBNqlW-DW5q-{BAYHN-B~sLTm2+nzM-ooRbEAQP!{) z99ajh)N$^+71&jA_YAz~=`cJ)a!&p+C#Sq#Ipxp(Mfv2O=AGnm*Ry|{$4sov&?{(w9mf{WDvQ|KuA_UkNQZy>l`b9L*mUSn@bYBj zXeuYI-qoX`oqiKj7T?ZA|B=3~lZKiuS^jGCEb!@QLvB7vZ%DYkCjnQ|E_v4IfY_PO8t+e6H zO)7V`HGvNY{WZ0IVCSyi%o~}w5m~Vt+pH1WtZUxXdEd|7Gvp-xcG*&M?&7!0#_W|W z)jM(Uc?mea2>n#PqId)xlaJ7v1db7JfKU8Jb79WJM1v99Ev0kUyE=DlpKUj$;yXOM@tJ@4loOw6bZp2YDI2m2*Us6vmWuE2 z?6%+Nv=@9de-{R#dl!bHBLi#nTG{)x(8fC3E-+&(Mu%Pt9m*#pf24cXas_>h&&1%- zGx<%QyYB?vU-c)O_EQ5Axa{VC;wZ4$$(fN?x?ofMe*reLT-fY%VDm~husNCq8=hU* zlxM+4^Y0lx1;oBoA0oeb`<+&@VZX64>Rn&(j<4GAX=wGP;4{X7kK~z)Yc7ttxWySD z`m9LazH-&e{&r7q}f%eUdizO}9nC(6ktQD`OBQ6w zl8u}Hh5AAdF>59=I%>;d^h9cQy$*U zwvX?yV*T%vf0C_7ps%;o0B`9@b>NkYzv5-J;FRR@25`#7TjA4m2Y21JMqg&0dBAZL zaMay&y8F|<3nRCq;rm@RowMaJwfTZ!;FkmZqG@u~t`C~qJf#OXMp<)|c9N;ta{L@^ zGT_KN(wp4*s?Okz$lyF=ub|aqB$7e(sXaLl*W0@B1MOM;BO6FXsQrLssy_>&V}&U9|8pdz6xe zb&f22svBAOEWCyNGO|o`z_YtYN3M5x(^iK!9qNWRy`IIJcy`+#aN1wY+GT$nN5^&7 zul0)764)olbNU$@1-_K*lO-qRI}^VW4QsC>;O{QRm0m6Ray!52^9khSFOic^A}4PG zWDP5&3*w!wwl76)zzyMf!0EV%LP!tHO<;Fc~Udy-Q%8& z>ksVuHt$A;{&SWLZA_D)F6_SKz)mtW#-2!4-v3wX;eq>h-k4plrO)p3dH30W`{=y8 zjke-XAC-5HW!^pU?gYHLAd7cj#rrd%wS@ee@T`J7@aW1+S!fkG{Jz5WWA>+wc$9eQ z5_r@`hu7=OT|0b1eput1sOjO%T^g@%?}pd+=A8K@@OpIK>jJOQCY?v6@%ehmKh{|9 zu5pQDGc0l9Iq7q*BuDaUY=%S2?lv{~4=uae*bMeN_+79Wq+jE!2M?%Ovc|D@up9nG zbI7t6()5vf*#O{fy>x%{v3lwJ=wtQL^@U%uP4p@KVhOrK9C|$ny&jxkJ*~S~v&SoQ z;FOCmXaW2enReb<|6l6f1Wc;(%KyJry|W`I8Z^zm8qpBI3QnkQFeH*0C!rHfbi&fe zA|~jNj2e^BY@)U^cBvT>$%GxG(9jVbshEUK1??CyOyW$)4Ar&tLZiTlOAV9s@AG}{ zeXDO34Qi5k{?DK1;pw_n_rCX>^Pcx??>XmfGIk#FfVmQ1E!8{nc=)ExIXql1-S+7} zjfd;x_fE*=VFQ!j{zTHnzW+>z_6F^y@>Oe%!0p^IY5K+q~!h8vcKB7QQ*_QaUq1{O%2}2EB0yu-^&nTTLv; z@c2Ihd!zPcv9A;C(<%<6x|ccF*UEid$y&E-Y7FD0o`Y`tjgB<9f5(qI_d{dGKO6V- z4s@K~w&2?8xStu=O&+DYPQbtEIk)!K^6$Oaj!pZ+xqV5vcE>1=ZuiCzF2X}Nq=3VP zeQ@L!-aQBZM&sE$mzka|dP}&&7Bz7qXt&xMPy3I4TePSXTXfLa4`qv*wP9`12sOB7 zjS%ZI@gd+>e8}wUpKXhpXK!R(NyciwU2z%7GK=%M?9hGmVa>NgWl!wJ7TAp~VCjtC zHg5M>wm^AwI`lB{$ydd5)WY&CHtc!jx#a$4_4nekKqxo%$cQ=xY&NDSPl8b(G2fsGH?AaCkw(>@LNZlNcAy;G6Cz~E{Tdu5$ z5$}j??TgKP#>s4Ee8q?G3k|=%#`D&;Acp3iFAUG7H)5AzPg**N-x~1)$yadwJgrx* zdqaoDt$YuU$~V{j+1ThAzW3V}To>tnU>$_LIT(9$7`QjFkJtoE3E+#rt5|4bFpN3Wj2ZoCxu@Hx%&la};-!4wJkG>R&GU+vrhwVV75s{Pxsn3TLf|&z zAXl<+SHAyE-Z;oi?ZF$_@m*jwxG@idnFrRsi4U5dbIb$2QC&6gFGq&BpNB<8NG2VD zXW#0WliPeav(H|qeP-lQ#^!m5#x~C*wcW*8vd#GFTt5Mf*}0VLJkkk{Z@D;{=fE+^ z^^bT?@F$?Hg>?u#xg1(7yV9k#l@&GAw(Hqt>v$IV@DR@q0q3FMt{ATB*wMKY_T#4> zzy@@4h^e`wM`D__ok~I*_NWv;o`=sbUvS<4cg?4@-dXE=@mIarv03L2P#fHt{yc}D zYM%K#^2Bcg3P0U17+*kN4n<$SfX#QnS}3!xH@TaayI366dXVfsZ2p!+U-PbCU5xGK92G{N;q%k{-^u@{`2Q3B>$e@=U)5k~J*bW{^hCBysISa?q62Z zZ+;&A<`;%Thu_Pqzbfc&_AkrQfvVF5m*wnVrgs)#PZfsZTMIIc+Y2(so+}Ksu3|rB zc_7Al)btl2Cet%W481Uv+*ugv${JlbkebJ%$WLX^DlUpa7kb-ZhkaV9h7 z6z-oAN^nBDWgn5>=djOT7_1vVpLIc9=J@&K6wo8;j+yL7oSEF! z)Z3j|?*47z`LgcpeO|`iC+}9=@{2v3zVjKQrMPaq{hc1`nftLB7cl1ijJbd@CoyJR zd(`|^5KykOb7~W{SxcQ|k8Mzoj+5n)u(SNJGs}CKcOKep>b>ery;q-LCf<+# zUKVNO?9l}GCE06JP1n#x?_f82dxzj8I*izWFLP%g*0`8B7;sO9UgSq+lK4-K*_YEE zVgd9DM3+J@d(RwrRrjfGTI0}1v9HC;;@x_EfEd)2&>LMVp}$K9<)UaEUDp^e=Uya; z(X1thG&(y_^#*+aHBZQV@~khj3~((d7^||3D(_`Ko3(Z7AMBh2n^x}LnnA- zMNM(!Ti~jBM;>N`SL^i^z*A}Pc@tW^0Ug^IGrpYo#@dRE-f`$VJ=gR~1YUb4(5qH! z^>$=O9l0NGmjpAX!NcF*Q|nYXoNTVloGPizT=_{S^BnNKQ2;*lo^P8P@bT+~(FD(b zrxAO`dtYa;wN0hZndn_m$rvt7TNtwyT1*VoghqWVOfRhp_OE+IZXKij>)w&uCOF$h z_9h-aI+$tgUztgjS7y?KD>F^gR>Yd8uZSh~uZ+2MmWq*;MQ`pwPwDf(p!bUwn(sG{ zkc+Yk+Y1Q=dTQB)oHq-#*#Z>1%Qn z^5*$d-aMz7=kz3G5VF>+C&?T9Ey>Fz9(>HXyU*FJ~!F}Akh3YCZG)`aXxBRjD3>J$elJcymQxWdihy_3J#+5?$0bM9a*^0bXys_QE=b=dUn zuLm<{_FrV=SOQp*tmA6O`NWco-LrQl5@(w^c7|0`K%U9}Jq~V-X9AhTyg+Q7(FKzt|9${?!Nu5+^Ol;r4A$-;Yo{mA zkU!+N>$&bv9?oFubhWRui5!g;oL4P-Ik9kQO#Q@Md^y)}3GXAmo|pj4;GAqQG8NyV zL#AH-B64OL>yF>k_~=GAl>z&^fy_)p)1i?az!-mvvG`p+hVm?OV0;%Cv4JI5jeO_& zzdw$yZDYJz=5W!{*xXU9TR;BhT;l$b?`!N6$eMzRKREObovEH!oWc08=mI{fQyI+s zRg*uVcj&!YpW-cgMgUJS?=|){*Z;jeeRLUuI%t8nj6XKIoAWe6FvRh3_Qr^vdIze`5TT zpE>N|Z zxLA{H6V3@ch%TE8oiAx2co2B%n!akt zfp9E^E|8v(KA1?YzIq`v14|1%X^(QI$1M2Ne6JdQdeG>*z1YuMcanS9xAm1PE{kl0 zM$6U`)8W~ga3HpH3itv`3Vo7Bw`j~J;BKPdMGMcW$8Fi?D>8e$9M5GV168)Bb~buC zaoBNfTKY_4ut_#rJ z={q=eX{^YT#o6Z{LY5+n&GVAQT;1ighEHqS~9bFF75`<{)z zj{gOHZ-HOt!bi=_w`!^n5Rfo>1R z(mR4~&G-!!vUSkM<07Ag-%b4Fra-Kn`%*J1Vkz!TRr8no)4bR0^ZT9&u%?nXRdmEw zUx$yFFH3j9ZRwt79Ko*o@nYgCwtjrKYTZi$RR{07#pFvIyld#L@&V)+g5zdzOcNt& zB1Y5#Z@9e!i`w=T1*+7GX@7oxA#f+*r6h2-bb@2R;s}ilj@)Z-WbAX{cu;Zx*t7BD z^WZ4_(%`4KQJT1s>c<7Q`V;JHrx(gy^LMFl!Iry5?2;T%zmPOC!^(svRF=x+{jX^_u|0Um33`x&cKz(I`mb+?RhqY*3Bop zIOe)Q#O{rlm_EO4xYFHYQA|I+H9*chJOKO53O>|470|mNCyponVvfXzCXVOhsqa%S{9*ZUhUUo6hg;F%tbN(siGJkxg1`7r zFh9@y6f!^0dvQJaS%d!Dsagg9DbBbG{!5{=)}ph*_+@L+Pc!ke)}ohc&@m}^hF(d; zsL+ApH)ujE0RBM!gHuvCon{?doT#U)1}E!3#5;jay~zdJsPm0^GIz|s`G8|y_#ws& zeZVnOlLIkw$_?M@Tmxvhun|2bK31QfwOr4VUIQ zfNU^w3YwVp0v=j3;uX7Y?6W^&?vn6jR!(t`Xer#2lZa~{uE;=xLuL-Zzl3!#m32_U zIw(a>>C6buB5Mo&hg0<#_JUjI&v$#z&mXa?89EP#?%z5Y&Yn@?_X|wih+Jsd-I706 zF17AsF52-ekwJ~~(BrNQs<*yn3O_+INcyi38IR%eY4985p^p2(P2nFs10QrLQ_?S-L6{QLwyeiB=C&|B@yX>R>N zfOidCcX?zD^?xbow^DtYCI({nN(W7#eq#HSP&0O5J9gk!{NI*>?>yB?U#c_Jz1{fd zM(=OZ{oC6Af>3-cag7PV3~Qra{pa=9^q*f`7&~@nVeEd!R{xG}}|Eh-*wo851m&xnlG!B~STOFwl)O&!(*CvLyjU3@@``FciZKJOYZj)`k$MnlpPp96I$H+Ypjq=}hKYX=~ zzE1bUQwA^iYnj*A$>KGIekSVcG|S>eU#A?r^7=ZpUvUn+)MMWCb{e^BDRjIa8X|K> zDW_q>K63flLmE!KYzzGXN;$W)`o^gS zKQES5>)qSbjP0#h7WR$y5E9F~m^~52m{r$2wTXBZYgaMlw|U>`g4{DU@3!OILkx}g zI$jOg!Q`vxcq<3_>|cM~psB{t^YU*c z|NK2Y?0UL|o<(z0 zu~p>YDlZpx6}hOUPcigRO?nc0s2Q1%!Zs>LC&=zKv6IW)KCJf!&x)N8ADkHZ-+i6N zPU>w;sk7M0Bxrt;^{m**$$tFpYkZh`6JKY(PNEBY;nyhsW#T7Xf1GC&JCVG(9l3J~ zT`(!wYvI5z89iNpJ9_#pbi)$9Tlz((>ZD}n1<1}SK4a5dNuB3X^1ra<4{2XL34SM` zCHDNG74(GZSAZTCZSh-eUixp=bnK<@T(&2Lz3&zM&RjNP7k2jh3;G@ZqwxlBzGZJ> zTdlyhN~1G1=SD7{^zjMym28YI@QQwu99Rht(ibw;jQvr{^JP5WuG+`-=mq91N#Duj z=m7Z+1+|Zp=d$fm_Lgs8?eo4Z+^_yD)=ye`I`>^CUxUARk8;&bZ;Ts|wY=Zo8)MnO zz&pbOnZ5K1YaAS)MkP=?mG^vx_t>@mE%?Cr&hT`A^`3wq<@<`4W_DNY+BK0oxMw|c z5Fjt#od>TTjJfdg8?t6qi)oy;-c4PgvBhpz#b;Zb}m!=v!Je~w?$ z@8_B0z5M>C&T$Yp&YI)+)t%1qR^HR;I{A=uoW4A7o%|Vd{ALUrU@oOEBoBHS-t)%b`|WvS zNFE4Q$@kv3&JEomUH&Eb;|s`9-@@H<9oSp9TXTV+bv+Kj^quyVc5+VU=eDB#6nLcwXGVd_vy9F0T z+k<`Dmfh}D9scfj4^Oyt@ve8-GnjDeSd-VPdxWoWrO>GZS9I)A;rVs&99@wC&)R(7 zO}2&bOd;>2kMePypN}i|8=J+u-ycV_Hp`d~h^ychzIXWWeHWO8>+JbX)myw{aUQ-F z&zw1hJ_gUZ=g7rG7s{6up6_&m;~0x$o?Ujn`Fw|Ga_q8m%%{ci^L`xde9k<3J}rJZ z^Elj{#|>X)9tWRe9+7Eg9+7Ez^N8*p7kP)A{T$nq`^`Lh_vg){dFJQm#`Nsap8$Wr8$x6X5D=Kek;ayP%DpAKoSedHcbKTY!V6ZWjxKQMVa*F*;L z`}z)<%Xpss)S(yZvUc~;bI4r2pF!T1u~&`#R2aPySbMP_D4Y8f^1HVyd+W0Mna%8H zB75bd^)|A%w=2K-{&VLTOMH9^`8yVwbQqa51o=Bu@)w+}{M|sFe*8Js=DB1rbg(jb zV22Dg^Hyo+IxnV_V*E~gDf3L3<{F;J#+05Tw&TiRLrcX~EiDY}$fm`t+p);v@yOzL z8T-A0e$n!Ri`r&~ovL?`O?Te<4@MTVm%7V8&nF9dM=cMe+VQPdgC~1@r|?Uz>cJkd z_JB*gJ>cJlGmFJHzYb?6{Epr+lJ&%Bd|KIMDo z`{MTU2ggnJp@05{_}*i2dy6%=gxEkuA$>0Kk>|7T+*y2VKeA1+v}7|eRvRB<{U~;R zthwFTzpfk|9I<0(bLk4OPnBzk9PsBF=I7Eq^)@w?UQR-SSlh|2(?ciwuotTMg>pxU zkCl^Kw@!b_t((c;mV)V_`Q&Z2^qC&IugDpn9|OGDgIh5`?W-qyP7kHHw=*0c@a}B} z$7Uan?*3VE^fQg^t2>MNecOAk$&2~9d7Zhj$i?=aHIp+<Wn`hUh0RV{g4DO zcLuBUR%i3E{8;=S?U^G(d*smhXg?j=w;Tz(@ksIoZ9Fo*$~|9Nek0*O?xI=g15FxCe79^gUKmnfYwUJM;ZnVhQE={QU#o zxoyg0cJo5tWgj~JEPDs#_#OS(bLE{j-_f7rn9a>3hG%nFEe$ReUoB^hwczjp>Csd4 zfVW!DLH~BvlFe~F39lqXALy5Yc4=aW>Lb&4nvwLa7e7X6} zCT?6D?ZG=#W8O+GY`oxN^z=p1SNP7Y9Vm>xY(Doh`ul+Sti8j+=<~ks_xis7h41_4 zeBbZ#egBN_`=@;0?=YWB%=k}u_e8z#9yfp0JFz&r*?iWSw1v?Pd|sdZtu*?h>}UFa zn$M~MD2aaG_x<o?5h)Y8tzS@M(}r{z53yciC@)>7)c_R_bndt~I$@WWl4HNVzb z$YqROT3A~9;*jveWi@MlJuFaMTU_Ma9pimrWBZSdjQTmTC2$TDvbPA{UQTG8-CJw~ z_kiQ_xycFT`fDRpk3tPL_Rj!pc!!>PFTc~?Z?u^Mx3*)1`K%n;qUcaQ|EeMod5apc zJFquTZm-Bp3R17~{XbTnq89DVch#4zFZ(+^a`N+w?7Ck|Zu>_5L;tss)jHesot+h# zL(81VJEJQyhZ)n#oCI>guJQENDWRr5CQrLwx!`^o=Fii9^IemxU9WubQ_RznVDGjE z{-?d_En?dzcLp+jFQ|!~UKEI3SRBs0-5$tX6bxtHnH31n)zDgN9)^4iaktIFL1f1A5ClXIeV7QxH>)`;v{Rhs?X0XDa)Fxr)Qu+PMIu!l04`|za{yCn{t^~p?*DSniR|00u;?Z|g{ z{>*UX26Azq>Oua^%~c)szkkTdRjo05Y7-;tfHOZ=b)r{Cv;tX}K0}-f9x{6;f|2Va z%6A zMFz1h(mb=F)XCWK=K>FQiy7O*+~L(d8XI0zuL|X+3a-7tJB&4Wu;re^BdGx#IcrFy zb^eI=n)(*kN}n8HPMR0;mpzB0w>zO`=C7r+r1lv6`;b5R^!#yf1zMHBB*T@HCR8P(h@A@6eJaOleVTS|^8`-|Flz|FcW zGDJLk6rROzW&LOORgfF}J~VQv_?DU-$qmU2!IPC4tfw5A!SzhwFuCX0H39ndu{Q(% zUlZxVIO{uN3w7Dp!dN$EuW@Z`;e2~DpJ9B~f_YvsdwgK(Y&&}OX`Jl7%v)~EUN(CX zv=@(XzVpEFJ|wHlK%Td1Smx`#9OsH1(HIxEF_n~(!7$be?#g2m{l6FZ2v-XBJ;)(oh^+leT3gIXr-P% zTW;j6)IIL_mbcd3?2f&adPV8f7H|Lh_%J`cOU)j(&8ci5?vl-^B-X0)=*!7ZTt*Li zn@@XIJQzMx%;gwy(#DSc>w3iy)70wb#1Oss+BxE+=9wqx5#W!L`f*P(AD!WE;AbCu zJ~n*|``E4QV;{@HU)EOHogRYpDCxRjf$34wb-~D8cD>xl+~=KCX*rY99NUcSl6 zq_2jy$PwXh0b1M8Qk zggy%`%Vr@DZn3bsviv%70!A-zd%cWaFlyH_UvgHBV4VBpdrYH7ux&;`rfvG!So{!H6Wc0U@=La}WEqMkx*W{RI94Am4pBKn1#hTe&a$%K3>q zXZjpm>c*2AhrYeqU&pF?PR)sM*Bm&^K{<19T?unAx!+lHu*5$HgPDVVlQYx)*#2}| z!IwkFOTL^l2W}pPI|q%>OSx(OIcP-h>pRUsBXgk7g2U!tEIU&&{uugDef89LrQj#{ znb2wFU9;Yk{VyAs^>aw|5Xv)rn6;Cf;MPs4w~Bjj^?ULyR^B!Ey?8S=1GF&l0QBJV z%u|+sShA)KhKFJ7dzBPAgk`- z{bzW8L4aBb#=VpOli5pW-o)q4)d6e`cMdntbRvpvFQEqg0p!p&Yzq$9A@1NjJsKIf zu<`2149;uV^T+n8%ej7#-u*K;m!Xk0R|=nxDx&WVHOeD<*O2o{9y>OW;$G>S=pkAS z-Z#)gW}<2yvvIqF$w?dCc#JzYIP0I&{xNMw|%F2?dyC2*?{Wd z5}y|a?=X1R#CmYPz^^!8;8&b4@W%Wr-h0F8QM;|Ts|&3>iWWJU7nr|o*jd!q0!JC~ z59M=piH?BB6T|?L_%J`?9??equjgSe6mcf-dd_?d-bF8&+dX@hHL5c!)6leKf^gHh zOQq2iHIu^WHgHOVOY>AT31i3wF=+p$>FMLDq=I>pu?PhJG_;mXG-R@+F_x0UZ zQxHjVeQLHn^#<}p-beAJ1NrMxfA92H@Y8(Sql zFv9xH+WYsSE1Ir{ww?_h9Dsez^?u&bw4@?b{Cg)PoDV?zeayi@=0mxFS-)bM%Uj-F zhoOHr(Vu5Fc=XBcbwC^WEcSfnsNP}yifQm5aPEb+1IZH|$XS&GXF9LBw#JZ1YW~3Y z8j+nt!Nb~cbAWw-2lpVs%{+gPG2J*)f!izJ%7^~Y8o7|_$K3UY4<@ocC-WUW5uWJp zlL`H6xDQ(P1D^iO_rx0RtBJMKbJp?x8F?`I0=GZHGwSc&H@82+(O{-28O$7eD~O%j zFO)hG%p|E*OB|*zKtm9|48)Y1l^z_(94ik{^Np|YYB19_{7a!W>cKYCZ^m7BS5brA zt!*#-z6Y7G7ug`6?&@pbWxbr0H(aN@;eS-!UIX!Q=xoN&xfqO5fn3m87*~*&_NsEx z0^Qp-{Ft*F%6c}uqO&l{II93zLT&h|Ynw>ecy_%?uR*(q1!8urTeii4p%~R>gtYA(>s{>(QtaCPF)&nnS4X2wLi8gaoRR&>MV^; z@XRUX+ndr+(68~;%1n9CIrTMY-+hzwbgyFPwf;R`0p{)o=G}q5ZOIKT%%45eUe&vZ zTtw(Y{92En$+6U5liR%pe_(Ae_EJrk zNNb-!=4Ix-f_3XZr*|K50j=9j#3_{H{n2NkBXB9ln>BVw>vjukY~A0YyZaE6fHqpc z_VZ5%BZr`saA}@EE-Um`uCC7P9mN{Hjx&3&GiUa8k-vZFR>r$kx!&M&>zJ^?=e7y_ z1)r}^3UhX^!`Z!oZC705=6bJF`~lhci|)y>?!4XR&D+<=hdsV97<*$;F!oEv zT$(puisRV1+G%m|&6UB0x$@7^=fOqq%BS72u@$j4Vi20E{Jeb8#^`O$6*w)>`3vBr ze0-hHuxK)Q`B%Dm`D4PtZR$agoh$BtT6^~AdFM;a*-OmXOJ08d9^ae^M>}8NvN*oa zd|mv0IQnw*TUqx5hEn_dG5Q9MP$$A# z_@6=aAIkE5QFP!)=`Q!2S_6`AED$Sw8Ykey-tUf?K&<|~0ieT!|J?zg~`Ft!l$4gBlS6OP>ZeoFMti3q;JaN<&HDeegRqeBiUNDIPDlw_=;5 z6_4*$WY)Qje-z#|^gY9i2ByO3k9nTBZkz_+4DAAnk0Cb<&dBDC_`F6o!vAhP zUvQM_`Sy|bmp$*%S4*LovHyPMS?m79H+=VZaz3Oz=gFQAY0r7G=R?|ap6vOM_M9hs zKBPV8sr*{!4s>mm|D30T^cX4+6duD4tZHT+MT2JF`H=C~9qM=rL#OxWp1HCbK9;}S z{s{50z1|{!6Cbm6du8U>4)*V=SH@cJ z#HP51-Zf`}F>2%|w4wvmPxBaha0X{iRs&NK-Pi}1;{0vI4!38Iv1bZD6i0se4Erv; z%gFWZQ$qHAt!Dqlp$-H4|8;Cm=1+6i#$M-b-zi)3Ap5J|bh;THxD8%?Q2VRwALZlu zI}gv}k5pvd=vt9^B1F$|;7OK%O9MTJ4mjFhg-^WwRp_)<{cC;iOtSCNDU1#HP6u3= zkcWLwPre|h*5*@|#>?qzr23k?IoRp_-VAKoTX)ZTP`@VmZUwk8H4n=^So9z4u`_ml zUCl=Cd9%l^cP#G_$%o-Fd(U!oXIJ*v$p>g+p7ydv6PhQl#zyl~?9G$boSmOfFh4rG z=fJlEYntQQ(=N%byH%Fvyw~6B=sOm#u9cY@r3w9a#DPgGk5UBG2YqAI}dbsCX^GOdtp9(&PA2D< z`&001if7XBtok;HzxOI$>U;KU)cYsN8O!FI`FReyb%tvzv^fTig!2pNwri1L>e=^8 z^qY%Ex3&$}J5`?}ZujK;+jc$4dVF&J<-4pby!c^Cl70k4_6rJ#qW)*M|{KB zkx}#=*jkwhs;>ZNE^5C^GFx%}IoL7<_(S5ELi{25`kx>8_G){t_O=RnZUtv+X|GGq zS>H8TKpY17uYIzj8p(U;f^Sygd%l2Yt7ndkNZ$*N*}#FldvYLfC=cB2IbIyS`Gt1$ zKX$bAgJi`~?DieZ*Tg`~#d&n($TQ&F&UZWTC&8g{qKltkvN5qnaul>jBKc|jQm!up z9(RmBk(V{b8J-nw!cNT9r`JTD=X*;p6SI#8vUJM!rECwIT9xeBTo*I8i9Md74(I+OQ;pTwDLnI!T&xx6rzM4l&y zUl2+@!n#?_`X9^peS-L#_>5xTpKahOdt@89TKV_yPv^=%<#({|V^;nh z;&;2A&n5q~u4jAlufUTR7qC9nx3)96XZJ-D$T`(-89Cs|y+WRIOy94|B0mvqC*Z|A z`#juTzUeiQZT!C8+k-W-5cw#1mOv&kZp<&wQg693C!34FwXHR8E|={dh$5e z=U(L9it%c1D9&0l_2}koU&U$*qc8YnJI}?Bfa{n*EV-4nN}NSGKaIp%q&r6Squ&`Z zu0~=xiAn7B>a4PwvdGP%X&dVic$lkL65c~^#rBx9%qB*v^m{Ysyv-zLzm?yhXL3w- zPrKgcb~GNz(+^yK4?4K-=@Y5cIOqrTLY?D$Jn|{g0GOpm(TRsDXO>&NP@mNcZFzcu z>l(()>IHnFO|I^&&&D-99kpSA>nDAK``5er2z%t3$bhrnd(GMJZO(fy*R%ca?a)UZ z@6FRkU*i6^H+GXgs(WaO2&qOTN#2cmT_o4? zchb^Wa&kee@umXlqeIowM_Y+mZuicC&M&Zk^mRE;jGHoB-ly2#}PtBdkr+T(*M#XFayi)6dRldR|G;M-@N z%sLZe^85^*U#T-BlEC>Ky69Q&T++#X-B>cdlKg=^(Ahn=xhVQ`^V!X>`)T%bQS@2! zS$$2rMW4=oE{gude0I-8{;}`#cJsLp_xCm9>#z1ip5*(QX{ULg`&*1__qX2BEquP) z{1)bH%JS$_W{jSU(LK7F&(a}r?R!iG*J-Sw>#>2Sxqv~M_=54PjC~lh39G* zXENhp2QS19J`!e}Fyn+7C(JmLLu2V9?|A=A{Cs(-iJ!OLNBn$wm)!U{K5fA#=<6MH zo+(&&ZD?}PnNaXK`hP?UND0G?3~|8ytBTV_*r?NV4?Ps%{6hfNn9_**EM?q z%e%PqcLVL~GDvJKIiP`?(C-fWfKFeoBcCiO9JDB{&8O#B6k1wIO_2tf~m)W!3 zOs~Vu*Yt{PnLjI=TR9y2%G3xh2`>{<)Lq zls`G*L*!5Xoc+B4CLT66^1G*?HTcNJZv;0l7pmUc|7q~T-!wEg`IB5<2F*`%2CQH9 zd=_3eag%AtC-6*9?h;Bfhg+D#rrKc4{GAw#x%%y@NE7-f-ap{}KAqp;gA!z%@*JDd zSK6D|LdrR=v1Vb5y-uwk=^CWGYDL_eriHqw?{6z{9s?T1BQ688ss0WYila zN0vdOFOX-VcW8Y3&d0&4v^ROwW1OcShdwP!j89p=fE>{{`+e(5o$-s#nLjr) z2m90Z8E9P-LkUu6{TN9PQWC&v)bg^$Uug1WbEQ;(Tx5JKW-zzxnyC26_m|y6Oe;l94;ER70Rga!? z;Ook+Ns(__eBC{P4t(?WaQb`@eAyS^-LFl$d&I8C!}N_A8qRe2SUA&lB>n2O-pRWN zLi?7T$ZVtgyJqRnUO~O~3O+A*cCz-}7<~sk$O029@b(H$kauEnZ$YlNd9?33lJnJp zVG#S>!xjwMHL!c27Wp5uyczikblib_WX{B&jmT>GMy|dZ7`b1+Z|8Tbv$D3WTW6ZJ zk?@U@JB*#((aVBs#fT09TaEE|CPu!g@wPG^d?G)lk#!||S>sr_tXu=hY~wS@=H>cX z#>It0Qw5<1BdMSDtP2ZV%_iV7T7QIL6lAN(=`3R&f};J8NrWdmFmWbY zpXR;gz+4Wz@*T>hSI(l#kh9=O^RAryYp$0w?ojlC_D?ok%pOW#cMoL*GINId^=VCR z#Fko%&P9g0edbEc+Dx&>v7#mzd3guCu~yIL;gDyy&*xo|U()5$>G6$W1NT;NPthl4 z1-!9>T!KT(~rHlzZ&=@{3*ntAj_g{uex{9x_?p;(7ph41w;--!=X*dH!DfGV2?s*6^I) zkLUUVo{O(`GUi!qIqUDbV|+YP=*>$uc8b21y%t1Y7wB2&B>pGIzpnCjx2MuoC&}@D z1ipF*oBB=@qrkVE7}*MbsYieT{!85ntlr#M-#ztE9$s7@Bkx4Hj0SF(&+F{{$Rm&2C7?Gtw!WJFPU^82=lLZ5 z3V4uf=EREd3ySdtl&e*YFQC8a>C6XwYvcgyPO*n)e~iD#v$ME=&Xvfy>EX;IC)lRF zI>jiI^R2wS)GFC>fhh9)q}J?z@*H+UM)_6oJ9($ZzFzkfvj5|rt7+fU#B*+bSaEdT zORNF>p>>Y)O!|8FeaSn+nGo;cetd+9k&nV7l1q);XJqTVtZc2b{GYxjPZn`KlX=&e zn-#YOj~V1FS8E@S@r|E=9E$T(5Ws%bb1ka;>MYZ%^sM>n+QzuO+=R_==?l$vL2aq;4>XLdZ|VD zn9w&3{oHfVsipJiyj*l%1f9XF8G38XEUlsYF!J+0AK^3z-MbU=Td=Esi)fp}jTKS+NF8z8>$8|J;Q9 zO(TbYe}VI;?p6Mf;=ju2-H4q&2mhlQ-=o|qXuFQ{HxyGY{&vBd6})#9dTA*-X#?XU z&+1p;yQn|TK=MSJgxfUHyd)ZW5WYmd$EQJKp11cJ`xztE$P?bRl=rOQeY#Kf@}RD) z6X@|M^gjKplX-h%agNWm0Qo4NEA=eTT@60uH537Rj=v2*qK{9#LCy9Y-#gH?uT6r7 zU&8-2zR9hQCx@5NZAKn$!uB*UEO#<~zwa}7Ff=a*4q`kB@Ji1! zu^r@+7uzA8(t|k>zUg_;9$Nf6_f-SeH$6Hp0oHB!cY3dhFsF*i7~-U zQ8=vF{wIcFC)1lQgB*Wm=*%gh-CpnfG;&8ed+2R*O&y=kY8i&S-x74j4+~E*{r4-N zZ4i2Y+Mz!sV|X~kD!`WlQw@>cI&%)!mAJ))hUAA7FY5oA2<|x}tyeT?KI!V^1;mZ2G_1zWGnDqHq52 z%52|!Y$@dbWsx8Kn6=nIJe=PKG45c-VZEC(_-1P>peYYNYXlZ(kXQ97r zJ_F}B&I9KsPlhv<1>sECne^NEe&F0qZ2wte_~0}L8!ffd*nD-W&z#LT23NlKY`%J1 zqn2G`%zLWAt>?<_i*PN!WWyz9@7g@0o-?Wa+=oq+de*fCt$bLaF?PGPT#`YB$l4^= z8Y99O@zLZe>@;>)W`$5ttJA2FcynQ_rCXYAZq}M-{uZ1z5|F>8hzb zCL0LaYW@~7r%N1ok-5|LZOrFdr`y6=Tpwo+KLYOEZVYG0yLqPD{BY)T`dfpIpugV; zXMTxo((OTh*Wd5+JAdanoR`bmRh>sS_+_nl-8X)B_+@RN`@-WTYaf$t(!C~U`61Wu zIsQ-}Bv_QY$XL%X<^*!I$4g$MyE&gQXTNpFrzTc=OHnxXwX$$*VW1}VCTD%M5vP8G zod5oe%h_djh$oAtgkxPl6OMHc*TmE}++AO)HF3`_|Id5fwe^qil%IZC+F?JoK7?&u z&N*BURfObco4f>QD4Jg}e{Sf<vhD~qm(?D;PmZ@-sr`g zpG4N+$JO0IUHggN;mnQ;oTq!<80NVi3$b6#y7)R{_2jHijX#j@tc{+!| z?u~!amCush=RB(x`DS7P$d1j}VClEmU+j)tW}j~u&u?NcxNwgX!r!h}pL66Cu+PLy!aHOm^ z&t7HX0!9YS2K{9CEyKo^hw9LI>)kwKb-DCCJdcjQ zCbEF{ulMpFi0RZ>{hkD0^^Nt9n})}wJLOXrfv@~@<3I8JR>rr_%coRN2IjqPGjV_- zU@>cmHKFmcx^*YI75Js|i_!Te_nGe=6@JJK;peV-+S&Z>L7Bg6`mZ$8hV*EG>|nkm^GBb<}~q*9|t6V zG6{ULX4X;*YiUJkVMBGV!iJnWZq`x@YpI#FF|cDTAy>vlzCnHThgeJInTf1F|5}O{ zus-qUEbfB8ne`>uN3f1cSw|ySM+0x62c+UMj|Zx{+&ym>erKf1-NSb&PuR+TY8u~H zAH50fPoNJ@diIO-!kfffdfyz*^ub1X1Y1F8HmWDd70~&_33|wqTW|`w`W7;^XirTn z4WD&3hnm~P%%l3;OTMO=!y<1EZ9Zcf`Iuv;aos~a48DTpL*YU!=)?*2;Zu!J_$hNn z8}vJcKl)Z5dYoWueJ|Lf_M$oTS_@p*7R1jv4Lwonhm`=;Q60zx$xL^B$)mbc)n}l`8OXthdwww zzs-Z^&!x{-EIe@^JiqT89?>R$zMlFE!!zE(gU^uVAAIf3_@}e^`lr7zJQn~@{2^kh z^bAlucD>@CK3-Oivi3W~!(QCetgYJwhvW{=4y6ulGx5&N#5-rsANro+hfVkhTk>T- z{=ybyzVmKy@>tYoPoPWk_EuO+{UZ_GLp;FgHOt*wVeAj?gI^k1 z%JWuldp>wpM@#3~T)K1l;CsQ_>g6HWINlyiojKDJy{s{^GWP&77kw5M2pZ@%z2dP_NY z;!kXqVeqFf9&dQY#^V(SIOy@Ijgk3d@~Xp^&13t@dp3d~mMSo#<9s`~@w%7pTQ(D`8xhdHy87um~jx4Y; z^RKtPzs#JXdyLHd`ky2-Kf&{Vj?DZ<-}jf9);~)jBenl4nQ7vdMrIa9t9@g{*Lbl{ zWTuHpdNMOR1~O7-F-v9^W@Tn!^b3s9nar$d>0D;M^Z5B?W)ttp=@Y?qh<7xxR^^8k z=gZ7Bc`}phkLiBq)W}Tc*V?6;Z~28rX7brDGw<5!>GQvkyi60{(Aw?-EUvtyhnY`a zie_Er&kc1!Ug|ulBI1O{ke4$!Pipq30##NUba*X%se025pWN%>$^dHW8=wo8v9V5Re{O)2 ztzCBevld3T^wE5%mkYhpv~Tv1v6bp%D_sw7n%E1zC-IaR`=}-dWq`?B8XB3Z-)or< zU<~jM<&t7o9J2fBiHC@30FSZVWXEy+0PjPtnDHm*`BglhH-2_s17DQb&LQn=-N_;vi8O*)(&e*@CKoElIySP zS$I>iBy6DU8R-u;`_}VLa>Kkc(u2U6wSllDkTbHi4q3U;S#0Q9y#u>Ny`Frrp+h!i z)wrB^l0P=Y_0>Expu1{2u8E|#cEp1k!A<9%D*lxKU)i5}zqL7=8eDlI*;fod=xj7= z(+p-zt<5IJcoBY9zsn}YYTOu52c5hakQqaC;@XaJfgR(p+jpZGdDBjxrE2yWl8;nm zw3nzjQ=HGP&+6uHVGqjfP$NOl-`+$N_~^Q`kd=Mht~GN>7z*Is71 zq--%9J zjGs_K4fk^C?=EfE(YGw2_zm*95k1hjKafeF2h6@OIw46s&*&85)&IH0%Yh$t;q2u2ocrdHmr-zEHx3^{x4 zUXxwBjo#X|eap0V{}o-Nwd=-!)fdcNyZ=MJh0TF_l6%gK;Ot@cwvMs>W&}zWR*ZD2 z%y;ZZX|HYx->oO#O>^JQ+0HfeFmES+0@+#B&i?1#0rYv2?sYDYJOZ8K_drkP{1fc& ztO?eHvNTdY%$?L>p~w9BF!v(wl#`RVvm#S@B|SB+#3o~&8@Vq*e6U7(p{7UVbL959 zI{xa&-Mq)>GWJ~uv+p`2jGmxpZ;*2W3kJ|v8J}Nr+vvFXxU+Oz(>-}}#r4zB#m?1m zp3k2z@m@3fG`_g=Is4yDr&l*KPuY1}%)CK|gUH-c`plKmXRa0bGji4^BMay`JfE70 zlHRUvvAsu}B3I^?&~GkZ=00fVO@4Aw)bhOMOmif@7tgyswafSGfY;8;$Nq$Q8Q{%J z6Z7&S^HR*bC~lQMFHOJDoV&O-5oa!57YLn?j*3+oI(EYM+w*DYje8ai8^`@gG@SS$ zX?VSlhQHtZ;d%R2*1vfB{b=|-KMg&3(HRe(k9IfzAJgu5uMVC6LHO?g>%W=*Q^`+~ zJW;=>H^>{=9q49qHOzO&m;`wwGsp*l_p78^b)9|{dEJ1#UKGfX-;sIng^JMU$jR!4 zU(*A>rn!{8bNa(2Hq)yHJ$rz&iciq1<|ON&JlL&m-zKN38@Uj_?A@*5!7qpJelQSz z_;{dO^f>1jzW_{|`M;4IflZ8~y2HDF|A*DCo+F0ys;l=}7E!0vKu(6Y#;lH0PS!^X z>5XXojoy(ji7#HIU(Dp5Ik|?vhSxOr?frvUc_{fOnfP|zz1MntVr5{0XZ&(gGBbbt ztG#E^{VOv?tjz(~n%(UBWPA(XAGJS?9GX27JM&fIf6Sxy$|akIBIh&@bD5iF<_0@+ zq4M3#ciFiqUbvSyl;Dw_KNo+f+pz30ehF?QEw^xn|kS~b2Qeqt;RokSnOsCe&eY{X^Qh_mrY=irml8jHZ_dPypMBfh&}`KfLp#Is z+Vfpy>N$a@EV6eKJhc!#3h!ZWWc^0h?;8_|>Gye@JtTmD*JHg0DH!9BJ?q5j%ntu4a*Yt-&?~X+89s`H#8rc(`Kk~gY&e9p~>fL&)cL$+& z<%_AGzSX;mvF`9-%gV9>dcjvSFUY4B);za`%DJZr`4F~)h@g>9AJ zrjHkP?8vgRhSJ_;4P`~-mX=X(Ol@Csp%XhpPbAadZ@>4qpr^UMmHvLmCiV=qzD}I@ zNFc+SH?@8GYij$RD~Pr3E--x_RqOT=>+@x=wr^P{wS6n7rCUKQ-A^~LR{)%-~7Kxd};!_u;vES-+e^)(%Qlz_e|-7>pa^15ZZ03$TR@^ zFZWcMy2%Z|+XlSHZ?Z7^>P1c6MR8=PrRAnPTK>@EsdzV2FS|4h&(Sw zp07uqPx9pXdgS>mhii*6&saEO&JP@*Y2IT;wW# zv+^Dv=#cFhqWQLQtTggnxh9f(MfizHuC)jB_oAWq3~|0go00v>Wzrn$oNkSg-8*G{ z=Iotvtubc##*kb~Bab)ou8nzm03XG?-`#t1qSN!9vwnohp+hGS!=T^28w-<8=nd>G z^2zw@#=^?7dg1%)UA>@po9888@Tt}7RkX1}Tv(Vh*x%Qt*v>BE5i}qux*VAxDp)C)$WhETJb-;;)^m>awm4 z1?*eq^hEN-ijHCDEcNW1bzV*SrPP0aP&>yyljNBkJBJvUpB9=c!7I9pW}^2>KHmRDy=)HN+-vfcr9-&ipRa83-ux%vEgbT3?|{FwEjY=knh)+zfV<9a zc*4V7_pC%t*m{$dtoz-boLGUJn8R9EtW0)aO7y0Whh6iNH+XA4&+c>A{AH1e`n>`B z1Dquj8hID{23eUfR=-=BKwpIO*o8(;4Cj6;C$I|-4V;;^3+vBk7cS_IUFg|qCCCK! zZw@sRGgl6<){E?_RR|)JFYMnBXdwTWXT@jvwxPAf{I=os-o3I1-B=Fx8S7cLq3XHg z@NYeI6tBIXKQZX459d!<-l@#zH`#gcW@r9{eWom*-#k0!gZLB6M*oHUiF-Qu>dE!z zuseZ(zS1F&dJlYFhr)DAZAo1@vSo`acJGw8` zPyIV;Obpk?18p2UvC55SB8;Iq6K_-ro*K8F~1 ziWvAh*(1cjFJ;b69q?Oc#lY+Ber0Dd@ULpl_j@t$1HKse4ZavSpM5cK_OXJI$Jf4Z z4E#_j=Ze_|9{TT(fG*Db*$s--MGL2(^qzEOEj<<6z+PisHPJ!_-4*B?!1%oIlNVjgs_K7Z4E?q+hW{yzJ; zD7wge?rOfjE&I7By1;yvzf~BWYd*VUR-4c6m^0015p8^^l?8k&9VXYqB==}jB6 zd)Rf^xX&~;d!p@^Rv9?C7aYsPckl5TSGmWD~p;Ra`*jOfeV|v{yO%d+ca0T z;f#81wNhVq3_7XSPG^@M=u1DVi>U>?x+WGSp4`m;<7=H*%T(~+*@638YyW)QKW=f~ z>EXV%6Wpif;m)AGA@pxEa=#lmmqcGCAL%8|*g3GriC{}*>x>)7 zqmu98o|kRU&i#BTJL$SDdB5$5x9!4-T>Dp!Sy&Wb?{XgwW_7j9&l$5}K0znqvd*Pqif(!F{3Dpu&Op&+=rJz$0F!A@}1ebN!a_iD!b z-RW?K0^z48ldrH3eBDFhO$vJ8#hCL6P@eyP^v``Nh_10}%jbFYM z9kL2P(RYsaDwBujo}=yBV)SD0&d^rh$r1m89nN^^t&F#-#`KvoJj#1oyuOeB#`;}F z-^WRgf1D*b<6Lx}abEn8=Vc7{4^fwm=^e<6>2a+&zRfp=_6>`|?CCMaX3hdvU4-Dsjxm8T$nBL3D~hw` zxz-pr`NmL>v7#aH#d6mFjjmkE+7_c(|MV?2GEjX>xmJ$lG~e^_vBcT-b02%3Cdcmf zyfJq3+b3N6kemdsCZjm|Nyaey*E?%s%hdnka<@m;{QvajBN9^#d%YF@>tB5Nh{O=R ze8f7Nk7#;0_~je#9mqR2In-1u_JIr$ZS4K@kIwCp#r1`PiTp*Aw@Lkj>61kqPJOb5 z6F z&crj!Gr!@PoVv`N*mUr)o>9DQA2CAqILGfJMreCvZJl^R*|`GY9)$bBWHK!{2h^QrUhuJ+Y+*R}JN#4soA&A}+eY@# z*`Aknob5RrSv1=Cgikm2!}jNWN#L!f|D1XZ)Xqd$1+J&Zjr`yTag05;x3tn-j^ryUQrK@K@y?6D3R5DpC;5)KU<5e~r{ zrvFUg0D2Y-aYFRU54mFwiwv-1#z&hmmAgO;gE9L=+J5NbYsVbOn0BlHW4ZW`j%W|Z zrP&o(xLlfD7WtiTjDf(V=M{r>pS>cI7+!<_EWcBI)(SkmA27bAV|w9yGQz!e1D%19 z1EJHoJknpj_eZ1S{QS_rCbkm2!_OIwC=~2 zcI|~?>;*T6jTiv?#lgrGYtZvY(DO5hcVSm+9crIO`ZC3{>iM1E`GZbD!~OifwXmSJ zwVo(_jI*CL-a{ZD_Ak!+ z!suuDNJ&2LEFov-%#v;GlZ(xKY5kVyyu;~EtQ4BH08e}Sh4jb0i2wbzEnpA5wSRHw zv-CU|`GcZJE52xJ!FQi(eb&hw8R4AN*@pUS&Nf^eh#k8#5G!LGoh8u)`gdhNeF^7V zEi?P+vi)?fRacV>%6>X=rwNg!$JnoZm7Zzrrweu)^UU8*Ujgi9&+?dW@ zI(RFlcuYLWIE~PwOy}n@-y`XnJCdHcpCwMEv31sA7xFZZ?YLpv@n^rd?akd^+IIOk zXWJEj71%cFW5I3S9(tX-hYqaOMUf`*ZS1(`dcSHqwy}p^#{QAP9X-*NJ@j+ojvZL1 zvk$jg+}T6V!98ye{n`(MyUx{PpL)jKBX`kjDl=**XUu%eJy%crI7>LEcpvl8ip{EX z>=m!c&WVXz^@%JMT-c@RpPK_0_KbWCyN6!xgDZDFitx#D=R|XM`A8?T0@&^+M}I13 z%}?ph9wf3wd{~GrFb7*edG%%R4z)d_RNIrd+Nqjc)}>)^e%<4A*4;*8BvK>YOn}E>7Mv|Hd=e!?zcaDXJlo-Sa{XK}{eF%8J~1+1W39;@Yt1NXi#Jwg zu$Aj7<5!uyVLRq*bX);)M6yDD?Bk4uJV&ow9r+?-oduKEJJ>$IjOSBp!?}H8x&CLy z(LP{$O-JwG9G)WnW_W5Qwhn9f0qz&>iE1Z?+=FiP{}L{%*>6@Jm~;!ZC-OTQt6hIw z<7Isk-XniSV;X;)>u*|Ih#wB>440Yi*&lvf()c??{&BdjW*o`#Td?_d7dofr6T?n` zo0~VRa{=f9?#cc7A9!+~b&y8Js~>a%UGiysyKIeW;ddSmP@}qq?@a#s>+rC#UDPkN zI648@R#k57<~4ewd$YCaloxJA@%~do=@E1 ztMNlG$lq0;^!Ou!6Z_1E$9KU)?`?wCM(;lo&Zy4TS7%dCkNoUDMH8_3=hxQRG{IBW z26b!8oM=zra`k12k=@1QiVR~-rKnw$e=Yl><1EeM=<=0+G;xRo^lXHdNoeZQr!4XW z^oc*j_sAKotw!{N>=yg`CjDN^@7~%oXB+VQ0FyH{Hu6LLzKY+$Jx~}31xf=Um;XN= z`5wQW#sBOjV;dQoXZ_P!m;YrOV!K6>TnoS76dC`NbzBY&z-<+40p8l=>Fcb{V>~xr zrP_d^=mFnz!vtG7 zoPQ0g*IrWg7(C_nu%Q$fjt8UdP~h3-_D&R=+~tw6U&^^WGEi2Yq>>r+D{i zV0at*_$}<@e48yb)wLU&p?S*^&LpRQogHg!phw%lE>6{L&|wkuxSsqs)oH1JqwRNR z`y!p@ySMqjj^{Z_2=NNH-mp3eU_a?pWy#z^s%)0ApF)B`kZ7f^h$gR`t&*{edx{m zXYtP`bLmsJIsU2tU(n~5@c1eC=c?J_pWf%B&sYCU`uul6-ujyPf5ShokdrSti;SuJ zOUSDg(C08?E>1{x_i39&jPy2S)i;n?lI7@2dPJ8;!^DHE?6R`z9ln2;|L^fX!~ZWb z*6Bq~rY1;_@#1i1*##Z4zgYAoU*s0a{zW;m|4?VL-{dtQcUwK#|Cpg~De|x^s=oQX zc$fa}c5S6Y*49Dyn)>T4*h%gf>J2UZQ69bDH^z&mKI59m`Q)4WNgJJkT(|lnpZ>_E zI?1L(jHfjSuhogyEKRLGIgLJ1-?w*wH zIrrYlBnGtDe_pS=X71d3&-tG3^Z9^RJ>O;m>_c!BHPW|%+*Mq_P zIW0#P`4dN{*M&M4vbQ|G!trSqb>&v*SUKm;O||QNv*yn6J(Xz{Dqf@*PZ8_Ly_|bm zN^EV`2!9A4$Jz&I7v1+^h-tV~2JFx)M*PrRjnb*I;+%_aX-ksCSC+J*A z&F+l4kcw&pmA+ek z;j4T;ke=S~DtOR5&siHA==b6M553Ah1Z~w;;uXtYSKa}QvX+jbL?B2occGOGjnTjqV-hbqohv_UV8Y{T>qz+{kdps z1GrGz$#XF1!{kw!w}<)eo`d0zrQ>_dD;b-aQ#Ns*{+{3*47XO@$UT1J9M095MXmZ$ z2NuoqE8%HyZ}i7f^oKpK^st}2y$1YlU~=b`QE<}=ZerlZ9c#WjR(M@wd>OeZA*SHW z=eoxWZ}b>1*E7#>ywCI=FMaFWk6q4w6~6?A-t~U*chJwon?(b+M&F%Jw)Gi#>&_|ng7)NEwxXd%Tx9o ziCTlV{fR;1FXW_Idjitlx+E{y>)XU{ijjy9oY;cl=W1Xu^yl3^_XI@#nCluIOy*9J zMdBrW?+M7gzj{Rb?mYn`z?0J{dF~=v`II{UPJt=e73QrSl z{Fs=8X|J27wC~tP{x5d+9+SLF*0uMTiz`!;QO%mQP0auFK00VJV`xQQocW)ztt;Sb z;Rsu9$L#t3D&t9={|UbTfX?b?2%XfP%R8~uE@_S~>J$zSOwMTw#2;&?^zvI!% zh3HyxF>k)#D>pZU9K|sBV!WSc{GlHuQqH3&<%|$-Zs%*mm6IFRos+{(M9|?j504_J zl+}rhmI+^qCmOt=RcD-h% zox>{inw*F|h5|DN!6m;U@()(oQ``N%yZ|{OzLVcf#EZb+L}HYTXC32tocgk@U0qG1 zvhbTOB?mExb8XIo@5k1KenHJuHnnH_k*^N$zHbaPD4>n;w!DSmy(lzkCua&>5;5|p zma})yU%uB}^A{;_bo026>*kI^`T_^ZxF^?zjK5if{>-1VJk&md9}E0M#gpKn6+Feq5#JX+q`Sb^ zK5*0l&LZGve+qt{>kB`?-P?9`0CNxgaDCYN1pEl6srcbK$~!S|6Ca0+fUh>>S@_ux zZ@IjqdOYE0KRnlMr&aHy{8vw0xv>w$L2MqCFDo9EJ@fX!Yf_engQo(^d44ww&4r_%i(gY6hTzWN8Oy zbL?sOut{;_(z2U;@tq~UR>t2BZ#-pX?yj}cYx0rNsoQVz)p)I|re0ATyy@za;55HK zcz9<&&Zo@ee9Ej~82m-RdnY)HfxCFYGGFUd&Ysz>csDhR$}@g*RG@`AiD#bp3wq6| zWv;jRDoni4@R@s^3EZW2jX|@EgHpfm7s-6`K%=j+Z&W^caF2Yl_B8M?-pG0@;blx_ z+^elbd9$_PI_6g8L#+j`fv55xSPR08O~2!Vlqv6hw2}Q3Ugzw+#W(q)d0yYi(ky!o zGUvP2)>^F7wLg!?`uEr~;Xdi|0_%+!zsH7n5-+h2PB_mSisY5}@-6?H8gCR^UxNRq zc@Ucn4OM^t>-0C`p5hO~H(MWu*Mmp$ur<)cZ}w>z9yp-7x10SRT7G9wT6ieB+Mn2t z+*;H;*z!5p=(zG+_P0UTYK#$T?bXMv4^SVp27FFM7fpli^s$wGscpbN93S{C?MI*$ zG4(_Qd#ze9=@K{Z5?jOBc<5yDy|KSs4?|WWsc=vekqU>U@l0nt^#5b}a>o+VSf(=; z)oi4`-+LToo&|G7nNFMyS6=KArxyJVbxAYu7A_KnO zcB8dmJ9Q1OaMnu(IGOCMlNG+YWqJzMgG=<*$c# z^4u=;>FT=B9BLli{dSu<_wGr2rhE3FPa)WH4onPaBXwj#d=581wn4S!@8~32fLpX>&c8=BO%ZhKz3iEo zW>K4%UKd(A(3%i~&wxABRr|SMcq8pp`x9jkLA(CwPV0+-=v$2CZ7Z>z`bX>iivz{j z6Y-+tBwF7u5cFYNcF|uw^)9vNCEF-XZDTiWyl&cPv~FY_+JO7mAKGby`k5c7jmKzX z1~6+}*sxd=??@Km>1ab;sHXWZO-U;V+qlwTM;K0S{;BeDVurdh$G$H3PK`ag-RbV1Lw2YjuW z?6b}p*zJt3qX~L6kaL07ox6yQ)RTLmFZ=9>!Q^VrYPlTSEIv?7DV0u9XhEzcaW-)p z-NzP$lSH6+Cr20Z{b|Nj!qs$w^cRtR^o$?IPdX!=vfP2EU^+5s>@BDkC+{J zmAVwc7^!7^OMvBhXhy$>crOgR=G+Y6m+p{0>8&rM^OmLPJn4>aiUwwWF)r}u?;->+v0eziX=Y77X&dapG;e{=Q@7aFp4?lG3{dSJF&o>;3f3|Z> z5C5#AJR{L{ES*}sLB2L>hr7xL`NBmRiAZTiB041_5u2Kkh*w?WYrQ!maWc)``=x75 zTBvLKAm4uIwV%(EI|mtm3_fkF@mvz@~>v)=iP zIc>Ikh;dp+JJasnGSBnikM?cyB&M>?uqH4*P~&;vN1a>Q+aqUk;^2_Ui39kQ2jAkl zYZ5ZU_1j#(!Q!<|NPGF%jRj{ygr>hdqz`R`9*F&wUKGo1FfHGqW!ZI5YdwfHUn&b29CGyN%NG zO&cfc&o^!FYo{jjv9!cK>XG;DO;7Bbag%Rf+8E!ytz5Try@}7x^u&9y^8>y213Tit zAFdkX3j=G`hh6qrfxFNF&^^pM^1+_Oj}@={_1L7u^=Z`pdWtv`kvYxun|u+~`md=E z86Rrr7~>27%VqE+_uYGXF7%BhJ^R!{Ji8uN>s+pVC*!*34 zoVKQ*i>4x%(~#Ahk<0bWanSc|$XI(?DbJ%{(N+GGxtXSDZoTts_@y7^T#%fb6=%}k z5c=O~1^oCv|9Qpnrk9C_mry&IXL&o9;)jKY_*Ktg^jRG-UK@VPjIZtUb`7qPKj3R~ z`Ze>xG>W^O|e?VqMDzw(r|@)Xl(R^fi9E z&M{ag*pM#+Pgz%JM_Iv--bLtZCv9RDeGf6gB}e0BfTii1K| z=C;+x~O3fso`6MGr!Qu+JCpno24j)x|N(0E~8=sA4j5g%k03ii}-e)4rs zytD%U`U>C%e&VQsIPh!y4>|qD=(hqqRDuVsVQ-}0ijVs0w`aROVg~5o-yO4cu&Ko- zR&ZY`KhzI0{BZp%=;QjF9{M<3=wd$>Kz3J=ZI_mQJr9=<944=sU^#MmO=k(M_~FzZ4y{ zejuOdxtQ+rSun`xsLnOCgN|Q{942`)O?x+W&+!x!bjOpr7S+w!9prxMS&0|Pk8tqR zSyTf4Y<#s&ElIQihvGbH=Rxes*bgrV+<=W%JVgFul8@?hjQsSzK038H@sCkY;8+*+ zO`IjEJ**E?kHT4#_|a#v#<)LqEd5M8X}_5(qU-SI!f8WV4mVhdLqj}?Bdg(ieAnn2 z;*!I_-*8Vt^}(z`PV9dSJ-43NTOPLT7`3|M$q~px7dm1|nlHv0?f2>jAy;WVGJPUT5!yFae-iF@aMIY_V#aJ_7cue#wMz(%I+uHN0?WC=L%sl=w=~p`j^DcW~ z$_I=*1`Mpz`~%m50iA66o^$BoH=q3SbEfZgz|$|we|PmWtKQUFgnV6}>-X&yELtnj z4a?>;fu&5aGy%&RU>R1NxQ6SU&#ij1^jqpbt)@7KIV1g#I{5ILwZ!Chpx4vrzxGAX zf=a%}=wD}BfN$!GE;so0qhA#liSSv+IvJ17G#XKP;Zm-pyYc;o>bLNcQlEJbI%zFn z6c}Q_ux}%FZM`4`*huo>`I!lm(?XMXkWoNslA z)}0aY9{VG<{rcfI?|;tby<+`#uK(^=AAaOb@#5cu=9i^GbMP1ek5TYAlxr6^y~mo0 zi_~%Vro}PM9UOfW?WK?A^mFEc=%sxFmWKA{EDa6F#ecqOLg1NZ&f7(i%VC`-mGTi@q zYOlXxm7RBY#p0sF_Bq9mqW{i=FVx1n&^P=NbqtHre8*2v!_aPpjvgj%&`In(MvUep zYpmX{eQTu0+D$xachv{WA4>D2HNb1THHRO%>BFX(rPc)ess*u)Ykw49RO%z{(Gsgo z^Tkirh48Z){MWu;$T`u8<>V71$UqUg(La$~RvEI6JUqF0*5bXJtp)k;#Sei?GSiC8 zv>`w3#5g1~qS=1rrW2Vtfb57?l9$8K`v`Q8#p-~$4%q7$1N8_e>O$|;mipd*nllPF z`N2nVg1pnPy$9@m&ZLh7cHz_X^B=-#ChIOwSc!UY*9Pn_6AQwAfxndxHCt&71zaos z_sVnN?+W5mTP-sNi+kZq-!D|0xYn|29%dh?_z8SJa{DgsVmF|3(Ea4;5;5AINn4}& zrv`lYO7-`_{SUQ+v#`~#L3z-p>Eq>#hzEfmweKHE`)Qo@$#=WWw9d5aXcJpPOeqnk z&1F^^ZKjzvtNUp4`?R_20@?)MYSTLJ<82nOw;M6qPu=EH+I*ZiL1_t~ew<-7qD8t*_rpA|G09$OOts|osqZO!+0Wk4;G$!3)#ALL z5dTI;Dn6_C@($Yj@ZQ09J#(_a&PR0Rus;U;(=oss+LyUBv@geNSSl?;Pe0 z9Y|XmIxyTDYRlsv9;1#W5QWdm(Ro$$5r^N*8Q@*W(P3;R*Y4g%qs*GF0f7Y%6CXGX zuLHkR)-fh*)lip4H=Jrb?+*$@a%y{wXYcsWz}M*Z_*R=n6=y!4%~k(*Z6K_+ z92zZUJU5rGKe|wftiO@3YTR zv&sLA41D8Z?xD{-%Jrfjom_9Do9m6Bhdrse9Mjxy{1%;GPCldi9ekP| zXH;>$TJN9-J?y0s!Nzz-^m+%|;$iO%jmNv4bwgY)(>vG|*2E_w_)8vpjcRv4_)(rw z&O0O67lZ3>^NxwlICJP2xrE5`7W|3*!bd#0-q!giWA^8|dRLEqE)bcH?w`T`80_5h z{>0Cc_gLp%&hJ$o&VeOnf9pR5*5NxxX)DG#UCK4(h(GY>V$kP$e2FMNcTBMoeC}3a z0Byuf+KB;l;A`(kR4y_Q^Sa$2e9{F39F|Ki6V_rc|}4oeW*;qybr ztIr|M^;zaKy(P!_d`~!}y<>d3bBRx!%Q>*AemHgB5kA>9Yy)vC3%jLy;ynC>OH?n# zyeY_ht%X<>@tw^zmBiuLm)egHp<1tSC-!`bC*h~YVlM9%Q8QLza`IYBq`FYE{)%OT!J@OQ#GClD(NcV(c6f^D1k}{t-UoJRp3cPZM_#FBv^YT;Qrcc=a}XZ5q z@M(8VqRXds!~#ymr}6$;&yPNUPq#eOgHH{wxb5~HXEtl$r{-oi)Ml`s0(ie2ysv^s zwQoT=XF2>YW4Gtgl8FH=rPMe{C%n$@I-?=B8@v~?hnt6-Tn1~#v;B#4&OOl-+ills zL|+#V*tHt*!eUc1Yic#dqqn%$Jk9uH4*d1NE}vZa_wab`?=ov8-?%?Fqk&k6fzjRj zc*B8v-m2s5ZskaA*^`b^dsfSN22ROvhLOkKbnnIoxpHW!G5sio=J)d*y=2oG+tP#9 zz@{2R)zpZ)dYdg<>?>%#vZY5mK;bkjPv6aBOeT94~V>&J#c>zxj*x24c} zTrXO4-J8}~e^*VhYf2uBedg1Q3)mt9pl1#; zJOn>v7@v%3zQ&Y^%^85c%%Sfg_;thli8qi37yfy~CqK#=-kqx(C-~AjuV-96;ZF;e z0AIAghF{|o{2t&R3H;I3o?t%rBlH~^PrVAcAl3}j5Hl##+){GAL*EOzmuKILY~|b? zBk%H|ojw0byT`c~UeGxI#OLY8dDSV#xr=d%R{C?tJC>MsYChES=uBS`^?q6M74jGx zb(t2l(Qn24<_Vw6yv(Nk%KJZT`U>!-{(sQsOSNYIj6$ny(QdJyj$OY zUiYExGm>`|4=KmGko(a*auUEG|86aHTJm2ibFDY>&-cGo#CoP6cwSp!EeHeCTKX8l zXFYh-`&CZ+`u+s%D^59-{&amS_Y`l>b*^vWIznF~>8spb>X&mYbzk$qy?U4XZ0?gBN9`@tf+o5Qe8oKTJDz!2x|nwg)h5q-1q07j zbajz}u=~3r^&T~b6^yf-aW8eoda-l=5&BAwLw$W@_f<(>FVWXV^@Ti$|2G}5`G09D zznfa+?tHjtKAgR|ywE5Lor{S{%U^zqwnRI@ot+BXS2)uVnxw+!aqd^A!uDb}>!aycs;oIDCfeY{;~1k-!g)>?KzesFV0xM=(Km_6zz@e)t>5gSr7TKwjxfQ_eD;7 z5$e1Tr?hG68A`o&J;OZJd#CrvUq|ZGebJTazVK>$ZYaGRsh`AelYHs$cPrQ1p0XBn z0ME8-&@cGp+s?NZ?4x#e+r{wE_4e;O*pEp1MEY+&{1E2-IP={Dz_RTw&w{6*-?qy< z3w}v_dmD0_f00!-@lxi&3nwSM{?bI+q*8l5qctcnl|A6nEx&Iqd!Ao>Hu?hnQGvc& zn+4C|muen8g1)}4e)w*5AARg#uL8H<->6@7Snvz2Z|yb=LJ(_EONe zeaNXk-TV90KYCv}b{l%%(kHZwfb-AydiKven+lVcz8_>Sw>_+LPHpqIJSUvS)DL?2 z+sKvZk`EuabO?jXcbD5V-%dP5&(3;rrf<22GycG*^nC^RTnjxS(u0hz&3RtW%67W# zf0OUYcBfd0Kk7N2F*Fw6fLrfk_~owBMEYfu5}qq2;mdnEW8_GbXR6}U&W&Uc6Tbf; za#Ic4&b5xJf5~Kj+LtZPC(fC_IVTX!tlcuE(uw&vu;{sUvJWZaMn?=)4bzJbJTA^x zfuFUk8?eZ|uVvjp7=L3eG!^dMaXg(eR^f0|>KMV@dhRFr0p1g=<+t1RS1@e%WED1h zatnpGby;<9j(7ON*q^W1&qa9d!G1RF^p4syb45p%X9A}S&&nR~TCOCuVqj#==D=6Xl@AMwg8c%=fFt^hWppLy1`C9hKtV{~X~y74)% zJLa9ZXk>h3d#~lI(iuN(s~_{bGxma%v0taLbKmfjgX(T?iOq#(sCy#-+ue| zkc+Q#jxsvp_MhGy{MLV$1@HXD*MdiO^=A*h0qnsyFvwbuL}UgyE63-p!sjih_px7G zVoqgdV4l_lWsEj8F&mqRd(pPq6<+ljW?t;V8soQZWu66f=*Ml+W71FP%lrY|I@{~; zgyqSdp!F2;<>V_N2W6?a*F8H9SG(nVj;W?wF8WK=EuHnYZs^_i(q3(gzl-r( zmfXkl;&tld7xO&{&n@Um?OaI-co+wG4}UnZMJIqr@?DCTM55%aL-&4SVw(#w2GR0^o)G*7cM8x#<)uxzZRVQ zgPVg>n#+Q*HG_h!j|~pCug?j_=EGMDi9szwCoh3lWA(m{dg8Jbne20`7?E-U)Y-zv z=Bx(V)SgD#&q!x&v{8rKF`n8@_$@&wws^ep|6Ys#v<^NhkS}qWwO}ST#Kpmd4o_8zp1k{r>U!z#5PnT9epvFo zQPu+Xcu&5U>%5omyjSPE7uI|9EC0#Rr^u#HdM{iW87Q*t%nwBezMouX)58M}b|f+j z?J;{=e(%WtYij#W%g96;&&1dV!yU%~=iTjk2A^apw9+#L&NHeZ7OtXhAL5f6@txok z;n>CRmo*M#xe{4k=-%$H=?_K z|31Gb^&T?tIP=HyTy&1+k=&OKd-k3Wn=}^?Zq{QfUAnOrwTF*4gJ;6XwCWXpWnk&o z@-qVq=L_(;)q&;iR9K+VcI-&4JGZ6J1wC+m-~Y#K&!XSApR~s(J~+zwQuV}GGY(IS;cthpZtSDYmuOQsy8gQAst9?Slo1B~u_(oz3`j#(@D z!p`XaV2yz`ZJO6^xsNeNxHdXddKj6JkC~4i3e&&W#Z&T~yp{#2@4#cky8G0#Y4||W zv-PY4KAoObuEprtblWey{$J6v^k-2gCm142Q(?|)`Kr^uS#QMs-*eyaM+%JBiI&_G zKinaH;GS1}<={-~l#NfoGp{-AyEqPGBU#Vq!@f^&dDP$;U1r_^k3Z)f(Z=>OYq#8@ zSb^Jz@Q6MuXO0zyK9OyH-?}tx1bw}`#D?WO#=PbvF!GM;b4my5nGFs+hn@S{XIX8~ zw`oH%e6_~Jvp?!%?AaQ-3k$q5;t)Cj8DTtS<*(QlIG_ zRYq>SX8q*(^k?)LYXVGs4;(Dfb389vx$6*xJ9pj?MQ$|rY1U^hyvpY{X;V7w#iO=v zdy-E>J173}SI!OzXZjOY@|>0OXU8j?^%uklKFS%AjHwv9uCjgRNPU_wJRdp22O|ao zeLO8+6`b{@z6yL;`85WOHlkoR8)%ao(4m z?^)yS-*PuJqgHLf9r$%Kw^NJzbNCGZV(h)-GdT=aLkEjybR9)7zOpS#z)Gxki)qP5w*q=YYAVKbMU^*B^gwKrl89 zf9_`dIpz-9zotF5%-2!Xhd)ym$Sn z-a`hoABj5`-OalZ+8!yr06!ET?J9c+y6s~;`{}nG_&czFaeP_rF`@lKJF$hT#nV|k ziO)IO>bJYChP9pZS=ULM&(g2P6kSvd zuTsxfL(S^KVqYu#*2Wm+lSSrxd_{M77ObPq406lpp9v-4ccT;6RNFIYdopdSUA3>a z74J4}ONaGt8+yqnYpVj5YW4!>OwgjU(e>!>dHBh<;V0M7?(MX@mVM|iW*(@svFn+y zJm?v)`vCjw*L=9@p&L8{8j1$lezIy4{sEi`Hy*`KCS6VJ#J}bLZbgUFpT_9YuND5$ zzR2y2Rs6C~I0eu0r`67bZJ8!!I~N!_@I&VT$5>C+ZtZ2V0laQ!?E9cc2Q-lH?0#n- zuh2dRxBtxeHSQ6tNs7=9e9|rR*fsEI@(j}B5q#M2M0?$;XdpWzSoK})yWcei)$kb^ zXH1L1p?F^WC^`x6vZoWp=iKk1E6|hL$K;+P(s$V{xAAG_;H)`WWPa0r^4Tr3_%5Dt z{RzeQx3+cr65FY@Oi_o)__FrgNR59-YuPJdiDl*!vsPJeEN2d(_~<;wTl>DF^N5kV z`2fK!zu>pu`LHRIG0SH#@Vha1;@=){YGBLLm~Gj-^RM`DTpL}ATmfHMxYm!3#bz(@ z`Py!=dys3{jUN4C4-~_8{i?fCa1q6?(!8NJK8}`V z+v~B=xyMTf^oVD7QFj!k9;6HWbb%lFTtl%D$BF-Iom=V}w{_4$Yd@pF*cU-gob2 ztjBJU?o5oJZH+q&Jc8@5RmBN^8h#JwjR}V~9}O_}_Ja%HgN-jEPHdPzu>?GQ8$3~Ov03|er=g3E zWAjt-^>qhdhQ@=nhaUS7u(zZ9shOOQBKfYfoOPCt|FCL=&F_N$Pp!wBbavON=sE9` z=(*_h^t}8O^aQTPlI>>)ga^@++Lu5SdPbpV6ncvOMxLaTnd3#FnTdbl*FoDd(M>eH zS2Tq-x*vhI#iA=PeT=4ydeU^IXxi&Hm!>a*6Zt{ft3!DCTj?3jKXZCU4%__S7d;Pg z9zb98JU4}&^FD!|+3a=vS>!Y1z}KgI`Y-rI`P3XIu4lJj^DEyl-#W}=lMO9KW~1yW@io!5eyXp+I(LF>sC1M*jSv5#Ge76ub47Q4 zm%RQhc6Q_`=ry#MS z<7qwpr!e)hNuLQ@`CiQG;WL#vFex7JZQ`SmYKJD|!c5GB-{(8O7cgI{WsX>ZZdJYJ zaQTAVuTFgrpHlbBnd?=W=lomF;<<9>jP85XJ(%|tk5zvrm%#JedA^AGT%A6D$$G?0 zyADfz$&b-F8>6)641FH&HI9)fxQ%VYzPtVm&qjIn^WZl|EJpKVE zt|NSg(P;*jdb^fHF|KCDo`0mf&gvsz-f)Vgr1s;E`C(_webwj8Gkaxp*CQ!jZEC@Q@hQf&c9K2r%8MOX8UH-yn`^JJ z7L4Sx47e(1b&umgc(d{@=bG4THrH#Pu@=0H&bppw*Fx`KGS;=*iFfgvu7R_xME4Yz z;Ct^n0o9jx@T{p5;PYd30!~gyK7zp$KBDMv=DSYJ^89Zw-_?AUIZ-9CJ`G*}uhpUvt?vs2SR>x*@**hR^@z-}p(+eB&&K-YZjh+~x1r zO#NXue~YJ(|3~WvGyj2?lKlPxybNy2iK&WSc8fT2=x^cSx4F}5p50!sm~)Y5h(ZIucZ+JC~dZ^KeT`{lHc z3>(=V3M?ZxcfX&{`$f+C#k^m@SPB>m^{-|u#e$EqxbGWzM;EyK)kD^M>6j$nIXHB6 z!9!77|J{?q8y0^qe~cy1m|72)H`K-6dCzer^Wi5CR zJn1>Vksa_q(6b;c-T{Zr`lPK2J}(q)sB4%@d)mWtyV@t$ZesKNF4;sc^r)RHuk#o^ zoPU=mS)-b*_xXK0c$WN^Kj84wDQGJ=L`x5}j6lm&z7j3Xd85#BJ+x%KfuV)VD=sZW zOAoX><@*jTd%XW?Y3ayuo(Uh??%ZS(l{@AUXOcX@mVc6)pWU-$S_ ztEkw4>J?Q3pH9pqPA$3O-_oPM`Zn{&jm5qa;$!h~__jk!5_LMK!5T}$d&dHNU4>(*tSV(Kc!Y~PyWwG2THI@w@!ELpI`+pJqN54 z1m98OdoHYp_}&}VZ}tJ}3;6j)|CGAkH0=f1;a+l@GQi7&>18y^z83W^xkvPr(r% zHATRyYFk}f;ekeOZObU)<)ev}ms5*ZPhNN%enpHthiaiWSiR_&YtvCVE91+!e$0#6 z)a2c_W&b}zNBT1Lc<|-R_<~CnpXIj!SA1mZ+jUS@1AK{ zSLU<+axi?KN=K8ILoVb?*3hon>T67Hz0O*Ev+J-K$|LV2AF=#2^*V~*lcYLy~ z&RF~oA5L?|fj`xlKR3cnBdXtbdOKt(>b_!?BDEh|9adr-G~*9&&#Yj50d=WD;nr=9P}XqjSu z%V@cZ&(A88_k?XdeI_z_fos1?``hvV#fm=->=FNutR_FUnwV}Aar&JDeeqobeXY9( z`r2L}=xcv#ps(ZYfxdn34D{{a%RXqafxZLn1APZO2l@^j9%ym}CSS5ud`mu@xWp|E zuA{4o38VYjV>dAg-5;NBB_<<}t+hP6)vmX>iDzHp4DOkwli26h3h8^*lu04>1P;Yt zzmXby;*YD5x#`duTz@lzT7osK4>f0>UmMtQ@3AJ?Nq1jmv(`LyJ^31PSo^@=N-LqZ zE9uAdM;{*ch4v1$LJ{nWr^5322kMO2F9e=(+H}{bx6%fCq3A!kANetAS+qt``}Vd0 z9?p8VA?F5Lho2WLJ(o4YZ?Ue1`;q7E zew8QLNqpfY_L5%`^9E)O^9RlMf;6)}SZ&Q3W|_9;Etst;D0^%pU+t-$on?rJ4~HpoZ5j{ zJv>QWsASdf=pxS7#csI!-JGm)_Tyjge8%k0)>5zGr)r0<=E7I)6TP91B5!C4eW>;u zyPN2u)6BKeQ$0C)&}`4svouM zDDG#yfh#-rfq#u#?<{eCzxPglV;{cAFyxuN_eN)*Xo}E}&a2gX|Et&^JX*|tlwtNw zh_EJBd(pkK`h%us*@Bec&f(o?>9SCaxx4m+5RWQu{OC{VgE2-Jqj>d6#;HA{mdgL4 zkDn_p$?uXY!L8U*;R$}r1g-&s%YLtIs(p@dbXv;#@_N7F#W0`phnFMg%dLXIeDI;Z z!t1R>gc_D;jm2J{)*I>PrfZ$Kk&##7E78lWGlyPtS!aF{dfhgTPv~`fp+9*4`Bw0O zQJ&yKmwAJ$u1pKcF50@J0Nk^W5AWY2Uz2gi>#flC0op@3Jz)09gBGI6o$Pb`1oE^z z+%JGXnrN-B3uT~7RHKmb70dUMv+n&#A_-_(HnFFZ{7DZnP>h@IJnUc+YM3Db8!ZF3pi(^O<|dDWt9_f$VZzry?JYheuwMOcVy`FmH0gmaXFrq2wVw(2 zDo*KFeW`9lW6d9HB?^FH7H5j}n>*^ow1H_2)$F})_G#e0k?jm9bBoUHc?>ljmS#kJ6DH(b%<5LxDL?`zyeQ z^!1ak6#MS~2W!GQ`1p81&wb!0V#_r5w&#=ZF!yJ%?@EmKzek(WSIVDUia#4gCcM;D z#&+K*e||D#@?;8p$A-*}O42It;aZY@bPvu}tM#!tp}+dlk2Q;VQ+Kl#Vv#QmK6 z`){l{&{&dw1oxW%=rMXg&pjTdUP5tEY81%1h1zJVjn8%X5*zO-Nj!CXNrK!tYqB{P z5dXd%|6b=qXR}|zm=9O7$6#hdKELgtexR9tbk?8rt@i0Lb&>cZv8Sy>>OIxw%^GOy z)X%{qI@jAh^NxCxM4We`$g$2)Xa%+kp0&`wc3qc!rt=eyJgj4!_%tEg&ln!Kol>Jux>Hg5nib=lmEb1?r1I?t(653?`_tTlz&GC)=D6_B<-8U1xmxmmW#D22o ze|K>%>*{au-(AAl0wZs+?rx_aP_&4~N@@>L3&~QF=<`*G z7;D0Q#&~uHpY6Q2m+!R4IVT3sl6m4RS3L|(p3T1^Fo^w{jQ(!k4fbk+>`wH!K8OB5$3 z)>_u3E(2AWMo9`(smmooP4v4rJcwYi7T9^u`|9fpze4KJv9;*zqRsb}LX1 zj8!A92ppwO;cf8&dgQ`yec1F`zZ1r$ix8@MNY8$36FFZ_pV`o{AfYwn1^I{d3> z3Z4VP^Fr{2T$Na94NuTsavvJ-{2=Ea=uAM_0T$(y-9LBc)q5@Pg4^H=&XYH1rMH%Y z>$TvzicjeC=uYII3O)gz)^ciIfm3@Sn!SmEuWgAHYRAXw=vvF(!&x=AV_!Jq(CqR1 zIDBWH*J$teV%xcE1DSWDlWDJQNgeOfF70V=9gX)X>`1@G7cc%Duy4rftDV{{ZaeQS zK6N{<`u%S_m1Vv0+C4X{89Unl-Tu~NZ(i@oZpfzXtn{pgS4a83n_c(Vn-_WdHT27{ z?*5tRf-kInsAKrTimS-S+pOO+(HldU&*Xp?;$U&&V6DW#+K7X-uOUX(M2ze)Vq|NH zk*z02wviaw)0XehCOb~n^hak-KBSH|piezKcak8iVwBh#+ch){w{F(UjPP=|P`wGQe&q~&BAFgJ;wGvpVOO37;tm*WVPCx1N zlTJVB^pj3M>GYFMKk4+7PCx1Nlioc)H?;S*C>C-jbA%}Rv=n_*g+5BdR!v4vZ9`90 zz&Dd`pW{Q{8Q)L7qZ7-pPJtCdD@(EWpU!VtBVuYUt{}FMIQ7Y^P`SZ@n|NpqjP8d4qtpRFdx2< zfARP=z5J*v9Y3l$+t|`U$fH?n2Vb{Ng&(I-e_cvVx9n_rv9I`QPa+?FjOTh9R$x1% z-{+xs9z?(AV^?Ey^WT@B?(QX&pdP@;TYcpgbX};U+zQ$D>Vm-IcjH&1{~|N6NjeX> zoKJit6W2z*&H>M|QQG5s2eEX?8hdbsrm$D^nCG5*SNnSJAb$5G`)rT7=@GNfw}@Z`_&|LK?Y>2LDcNTF&V-LY`6kO}KuG^VkO$Qe67cF8wX>98Fz}60zeKSWZ>p{2`X$wJ(C#|o?D6@u&G)7FNfEwVgXI%U49ry93#|n6 z@y3#hi_Dp~QSj}>2NYgi9}fJOzJ*thVhmghr;pPI^IqDzIxvm4*3nKrdveJ~Ft*)k z$Az;MT_WEi=?iilpbb+SzK}C;*hlOa>=mfKwYO9?G~Ld5m3sc=3hgOpwXD#%z^T@4 z*>H~vT+4m^rn#U#^}Ig8iTM=#?ifv71-dZ`UFCylPUL;T^0_qsp>U=4(Si0mqXUM1 zxN=JiN&TkqBE+P}bneZ@$PX`Zfj4M737*p}U^)$wX{z=qh z<5wVq8Q>z-cS!>e+M~`39wzau+4swVB@g>#V07Z2{fK{liFKQbk67sYR>eP|zhbwQ z?)d043XH9fp%1dH!X1ilRo8`Lwb+$ zj$L{SyYx18=^gCSUhGl~yVQclP`wtR<6nO{*eeB=+{BgaoW*rs9Frk&WPUD&4G z*rwO9O>beF-o`e)gKgT2ZHi%=+ObWY*rvnmg;H7t7CwnMFjjCnY) zjv-!8{E{{rH8(t)IYk;aigyzE#HVb&=ofJJ@~_}`gFmNs+PxpHFZPkso)D+K<${an zCgGPa<#RiGgDIvHy_EjO`4jIm|4gS3?a!}1Y(3O3unnJT9X7A7S05jI=UC76Uh*Xd zAlJ}NzJzG7S~SRn1_O{2Xd(aLIpnX~-e;P4{DW(V$M4MU8IMP9!t4PVWlzgkX@6gQ zN`GJL)c(G1CAe|djjXH|dSf$ILggEjqqhvst*8F?_x-_jI! zM>nUV3*y+}48`5$tK*aXmbhVT+6|l`g-?v$l+LDJg*t8geRBrfwSmq>X70KtDL+e) ztyCMq^%qp@g3TwMvqy1tea@WH9akSQP<-%(!2i(}xzm9w&rE-c{4L)-+10bEWeZIySj!1yEdYq(POOxGT^ZreEWuH_@ZmU z8}KPkqFAot3vKvu_8PEs_D@V_?N>Vc&8D{;f}w&9CR2agVX zt>~N6!Ivj~ZvwtGz*l8#5IW(Sz~%62q{-&>2)fy^y-B`}uR#~3+Fq{jq*kOi4F#us zPWcBKvvAM`F51D#T==hJn#VUA{u1vdIXjkEb^_82>^I~yKS?9JsN z#dY6YZSzkQ{JH$&;<00z*34y^+yHVmv>m&jZ}!IR*V%Fv@j~?7e)QV@E3FrV=l0cB zVjuWuAl6$`d2OJawQcLDAG~B~vG0!4yvoMs*|Bmn{td`3aq&Hhi>HBK z?7kZ-H@^)7$6eE`gklI)zUQN@`l@yD=vYx##iWjCVJjQugT)`QO@c(S32RshytfbE4lAqwK?8}^>F^tOhheluE54A%3IJ6hd zQ+pNMZHKZ@o2 zJL8JOe=E)vwr+vk1#Q(CD-Vyl3 zT>q0xJDzuaDUIL#{4UC=JJ&gMz2u!wN7wIiF2$#!D{}#t zuAy&3*Xq;L)%qm5PX2Usz3ns5buTp@u6%wPy1oQ1jE?%0blpY!?(;4!|6X);X<7|^ zHzBu&Bjlw#Ih~ci>MFZrw%>QjuWb761kSOId|F6z>%%!^_Q%~ zQEbIgem{nM{*wHst5?5DyX|JLmAn?Mg%;eCE4%GkfBd5T+iY?nP%kRq|_CA*Unf3;nO+3HI)339bXXg_4>cH=Lick3=v&h9P zCtmbVz|*?YO3cFNT$(b+F|k?v=k^DCF_Y?A^ zdz^gfo==-E<=hHbhVHtrPp(mmbz(sJ^p|4P2} zo8(F@a-|;frgpw`ggI;2&X+#J98Y6)+x;~8(kIxPYq?bv__hnToiFW%yH~z+NGjZ^ z`BHr7Pn9pNhv)Fk$d}>=3<*qEzxBjy?0ji=zoTsZ>*h<}+uMz=4*D|rQpTD;_B8oY z?nme=Is-q=;fK;^$(QneGGEFwYEL>KnJ;yGn{|#~<2Uo_!obftZ-e~9k(7MtW_SKW zY{kULT%RV!^)G?heO~wF%lCti#oxQgo$g}JyTjy8vwGxO4uE6jS}IH(k#eV5fwS)+ zcgp*kJE#qvcZj{*?8e*rkt35mQG8kZodr|+ZbPo_S6sQ8xj(U=5j>}uVk%xfWNt@{ zC=_ANCtOfp6^dZv#ZMc0;X!$byTQc@aIpbBh|g$XN#+|FtKv9G`^ohR;BotB?ix}| zx5AuN@`b?X@4{9xnz!mq^$p4?4*1)1ip!W6o+_uPbvmhh zu?k)2f#&;&p-JcEQ7d~Hy0sD=IEP&HTH+yI=AGlu1SifTpmCju5@QJI3X1RP~^ty6M=`9xuKa6)Kx$iukYeC-? zcY4vEH~2=uqm@HT6c^fT>cWwu7<%<#^sZa?No;MiVrvGc%FTmcJGN%yH3A)ePan-D z=KRILQs(aYR(@b}E<8cL;brj#aBS!E*v(dAe=YS{XZwR+x}Z3C-RP2FyyVfGYUV_?r}37F3u=6!=& z9x>ks^L=1T1K%a@pEd9G`~L+;nT-7m^IpZAo8iV2wLUF%eZeH!ojia%J%05{{OXID zxxb`QMzqC^RO#YBPs*Ak2o!4(w zeQ&>>@x-^RMCV~EF&Mn&fY&2wS(oH_2Y1f=sZ}<(f9~!>XAR!{da*zF#!bb+-+Z-% zy!zSX)z1kYdTUrvajRUO`OR6myZ21?2jBWC&wRavJy*{T9(#*t-X2Dsm(G;WX(3*> z`CG*94lgVwK9FP9?wH?*;T>6|-*Rg#^iezCvw&r=fhDsg&zsd5W3TfsXJ9wpCMM&+ zd+-D_ueCz^m!SWT_46G#1}@&Q5*^I1+R@!@i--%pPTXRl6*@HhOTN8dwey#IZ(==- zYAx|K$>oN~<%T>1OH9tj(5&vVz_4XzF2OmR{x`#~!_RLa%gA)RwvN8O9HmwB3T$aawD zh|&f%w#su5m$)kMsO}SIi_nMSOUsb+5^^2N!O51oc{A1KxUrCQ&Cj^j`6j>p6a2~8 zVzeJ)d~w>3GsafNv98xRf5JFTUV?Qqaqg?G<^Js@oI{?`S&UrSwr^ZuJ}~8x`!LVK zt7&$QFlodjuQu-;gS47Z1^z{;hN9kNi>m z^sBZ5CqDboSHVq(sX0-O!D?9rTv2qQVDoX`9pePXC_hX&p1)`x)D-jO~8Tyjj7%XKjq_NoQ=XAJxp*REM~MvFS{2d;eIg z^Q{+b++7f8r)EX9?!9^1y}y_H5#Sifd!^`0>YPIOKZfr|BI^any7<)W zjgM^~8DL&^v&DH-84d0Dd2@3!8`7B{W@U@V@t2T|He^gS8`$YR`Q(?ickZCq@eiAT zV-0m}^4sdh1-1*e)#SYK9D3;QAff!;bA)UQrN8r+?06ljZOB=eS zvXR*8RLADkT@~0>XY^+%CO@6$;`sA%=^}EwNnO87Ffa=rg4Z2u z8}HAizBU7YZ+1m-qM908>Lfa&_gQ5d7teW7ux(s?(Tl?MY{oU2am{92a~N0q&CH+B zYa{PP?@aS2Udc^wSiyKyyR^a?4>=YCCo$YmYainZxZ?sZW?atmJ#=iZaowVE0r%;~ zHIp&T{F*gkCS#h-nA(6$CK=^b~DsT%OKRNmuyoWuX3 zS8{zY`$e;r17lG-A@o7Jr#ZW;<-!CfHp^Y=Tx*YG=a}V zlUdM2bYNX)%UxB%)DPQI=epQzz zqx11;XVS-*5aAONlUqOE)XLGGVQuey2? z-b}Pk!3K2e%gxf4FaNq*SGw(e`!lrnoZ2G>7MX8!FS>SIpi=PLx_7g5?>D)2^`2q? z@@b;TxKk6<==wJ32@`u(oWl4vTyrKdHY&a4$M4uRT++kfeDm@On+H{I10Oc_=0o`; z>2>%=@S)yc#rx=C1CLMRWuLuNS%_i_9AB$3se{q|iiIb2FxTIqop8MiLk~UN=<4Ap zI*hT|?+FI3Z|6P778n@LO~Hwob3&V5wxAo1K5W4)v}fa?Zx~|rz2uSWse&E+eQI0q z)ibgM@W54pNwt5IEims4kX)YH7C>`q&QE0vruMW2pT^cjuRrtg4LpPKy~R6cI=+#U zdXDdOwr*z08QD5RgWs_}fqY6R_UUY$dFMYgu2b7OLpSMF@9>Y?y2r2S+t&RW`E~Wv zP4iE$4=3wBahcwJXtVSw`skl@KSdw;xOVkXs_gZtlZf9)2PAb8*RD=lL_Lpu@H5p( z)x7WOq@lpnTPI)Q3JOqpj2G19VUi`^@ze)gz$~#7jmeV558ZPS`%p zX3nwZh)Y>#^o>j^G zOtBB<2_|ON1T1DA74`(;^taTW%O#(!b6{V_d|5Go1_Qg_%r6A1;>#{<;t&0{-OL}y z2d)r2iVM(&6UR^DCB6imKwt6;jK9V8U9_z^bo$lIooI(zmPG3bKJD7$Zr=bnz0BQ= zPf-C}T+im+D1CXeJU%1y;ru{8ZQHaQ5*XydLj1*OY@J*1F@GmHm#(4x)G={=K5d8|@kP)Xn3tyDbvAra=iqdia0;z+dET$N zKQ-z9O`mzp_Z7=>VYYSaC^x>A#HYJfE$Q>o--rK49&ozy$i%T`D2|n3;#je@e*28- zh2V(q$~`HDME;O`t2Z#^cHSdaA$Y`?Wln{GQQrf6DXq=DX^}GFs}Azh}1GYrbdmduGdbQhr~Q^1I|AO#D~xE=WF; z-tsN;U2Uef)Fgk;XqlV*J)=ePV8fi*GShsw`zklzGkDkAa;y2SF%E9|2H&OEO&((a zx+w=AcL?!^OX2_Li9wDhHe5)&XCnKa6R+Q2YK1z-ScwCdT8V?>c$QfDQ?Ju!CNvtr zd?5$jFod}8rFFbdee`(ZzJ=JAiNt-2i2Ifj_Z>sr_fq1%=XeqaSbMY|JGqaz2we+=jF}m zq-MEnAi2Jdm5ig_3Mn@C8*-)xi7_kAe3<_u{4Y+khPuCPLe38_9Uai`qxij(&jb8F z%kR(fdm6tDVvgD!`ybRfv)n2hL|p&iS%Y?OBKH3iV*k&Y*#CLN{y!Hy_}1`b?EhI} z|C@>ZKTqucSrhv|kJvxYyiG2wJNDmrhhqQF7l*cW$Nn4dQ0#xJesf~~d{^v$5cB0D z@;98=zxE?Lv@^>mys90?y1B=9-P;IG+R4Z0ey;Rxnk_p!k+FR{{fSZ3mFz>Wsx~CN3m&1* zHh8cdxzl+E>RbJ`k}vFFjt`AEGlCoheHY<7-9(LiD>gH}6TO9f(^=cguy5>@9jeFH z#n7qfs?E|>-(_4zPoZ}_*cew|J;u5PSI4$)!>*+2N3MVSHoE5KK6DiGKC?diCHRW( zl1E2JQRCnZTv(H$qh8|v$8}VrY{s+C5%-oq=1|;SEG?>mIY{sCAkyJc1=vN0W2d+>U=y?da%b4xDaGK2=BC zF?pSVVUK^lfm3mL&Ub?!6x(JkfP5bCkR2E%9)2DgJ3LH{vFoG3<6j8ma6bY(va#5! zM%PD6#Z&Bg{CWpZCT7C5aQ+qgcHaqaqF?xP7XI3#^jzhn=zmDyM2+L)IDSPckHt6H z^PZ#~_#^g|lHmJLsSKy$~~ zv~Ifm1egq67CE{F-&wi33bTIhfn4Xuxlf(4%BEIJ>V}e{!?lj@r}LU=lWUNh~pQvuBYxB7@u%x z<@!0z4xJu%e7AKxAK7`GZ`~g)pWXLWfg4l$wq-TX=nnPm`i*gTzX$HPenfqXXTcpc zL98De7094Jz31|447hsCjk&JlJ*|&6b7Oc$d4&w(*IJuz;@9wm9l!Q;F5}#;K4aJO z(fRO5{2grlUMF8N-{ec+ldA$tSTkf|E%*anDbKP`La3GJ+vwNKjZ@w!VLyZzdLo%u zSd0DOIgK%OPF$&cLJEu{Swp(Z%!#X=Iq?`XC)P8OV^g%RaiR7M(ptt;SPb0CA17hB zEO3(zx5<-hJxye-$7jpNxIpx_kLQe2Y19h5#Ads5#$1mE*Rn~iYl}_JSaTJVQ$5+8 zGmh;xxw@f>i--Ac*XVfz-WW0)J zX^y4*qM6SkH=>`bXJXrISuyX|VVAjf-+$hDU-r!PiQ+rCj~^uesSS9rr;Y8zaXUma zbeqm#X`>dYo%4`7I3wyMt~XlNPvhtrTV5{;7<=L9(i>978DX6AA0o8dTbH@xOxiET z*#LaR$k3k`nfz5NePlS}lP;nT@v0~=^{`!B-^+X2>&k|wAfUbG$d8iWBwy+HG^2nk zjL%`#q6(&(kHgfu2HuCyk}z>Shqmj$ul8xt{MOzZ%hTfW_kYc0-x0&V9#hNMO1s!R zLlakjMetuVUlvU~BcKV_t}pgwLlgO67QU{RbGiIm{>1(ewvRigr9XUl2)uVv8+I5v z9AG|mka^pYzqtE}+Pr%dI$k={GIeH`_rniH1|rCz^iC`KL;KXU*E2_2$s7s#??*=+ zfbNIU4@YP-hAbZvpPiuYne`h7;qim;^PzGpab&ucIJ}bi5xiZQLA&tw%(HC&xXOcE z!{@Gl{6F(P**`u6PYzDSGuH#b!=dTq!;v?|D9WwDw!gSC#Xsh|=98)Z@jrwAL+%{@ zCGO)Nzn(F;;qcLW-#T1rz0n9i<<7h&aOd1{@6Wf$?VV-QW&!-P0DcN*Sc#v&(}(lj zIeZRl>WOMcPb}<1Ppr0WX;M#c?aFz`z3jdzPe0WI93tYSW zaxLQxzl0rE?1%9heL)+&^+hY=>mi$5*8=D1Wb^fEBb)dX*VwX2yS-)e5IiGZ6dngl zHpN3m-wtl6cIYoWd=d^MJ4cY+!_Jt6w|{4xXBzW3#2RhIJ#O2LJ<0^80nj1`IEFxr zOOfeM5%)O6dg_;{-L&{~>o@mNKbBg*85xf~F0>NyA}bLqv_jDWD-p>^n%h0bbH}IRe_?&q*-J*rve46z63VQJ=*KVvV$H8yB zlxOfed)Toe>=-uA@Hcii#Po1UXvTB;<*UzU*E?wrmde}YueH?{*-6H)1C_SS2Ox6#=Upg z->hnWhVhSH=6gxSr2+lE^(|toX8pk+Y}Y-;cKwUsW!w(DdrHndD-dIiw)@;g%6m9| zlKY$X^f&N)MSDrzyX6A&Os(;ydOfqJ-cvu*ShDIWVE1oHu=lIl>$9)x#+bg2ocftPCEkU!CrmtQ^zM&eJ{fgpKE)o%)&0B`;oU+WE<; zpV?Eg+3xG9Q$GW*jxso0%QNB?;aNQB)=P)s5Ak5d!W14PjuhkfbKpTEgU((LlC`V; z=Xld)=tk)!_s^BDAhpIH<>V#zQffrsZDy~dX3KiP!r!*#*)npz@D_XxC$6k^^JrJP z@*r)W&T85Sb?El{28ZTx4-Mjg{7X~p#Jt`SU>frTQ9hKSa7~X z=S*soM`w9y|A>1N@T#hF|9_t$69IyPMT^%Y1O*(b{fR<~ZB7yp5i58}OM7XX zgrI=bdbze&xef^gWQZ*s^mlWw+!hc~Pt-zDYpLx8#EGT@!yS5W+aG7jWN-k*5{u^l z`L4b9$v%fL*!Fq;d7hI!t-bcU-g&+2U2C;!Js{?+?O?Bh?h0bR<+=XWB|KwXY)3Ko z%dD)03y5_|?z6EgOE|B#vKPjh?R|UHk2`7a8SIDpYTpB2_L^6LmL|?W=V@a~chT15 z-gLY0OSjFN?Kb7%Z?N7u{Wa(e!C%q4zIX$sPh>aV;8j)zrA`AzxC}8FMOPq-%|MSM_6O4rybiW ze7x-P+(39PHx${FYehJ+9|icxui)H@$WAIo>D4#xI*C8=wDSed=boaSgEQKh;48K2@c#lM?|u7KY5X2}?HL73S^R|C-M}2+`$lKw)sl2>5ETg)6JKl-MGUp;#h!2?zPt3stE{N`BxUsNzZ z#Gh+j>mSEGe(t?FIozATJ$~-Jm&uFpU&lRu?mgv7_(R;|=iXbI#l1<~;|I7twZmKl{QK9W(XeSnBZd=gY*TilN7;`0GXw9p3Tq zmzN&3!Ua4f-hv+8F?5?BUJ_sHx>nbja0>^(T*A+7i^0nf-s7kDHo<59jg;Z%mhlTu zk8_WodvA{L^c45_x%UiSo&hKN^@A7J9!B_v*Zv#d7@hMk%RXohQLlX8;s)tkaxXYa z=SJD*C*7twdyu&{&go}JK0kcDPd*bK{JG!H12&HH%`5pb}lHYh>{jCR9@sO9^s$cR~ z%&&~^2_Km}M|tLw==+YI!$*KWjJ%rni=Yd?Q@!uvCzD@C(r3D0pW{>Z(}o{-+Ti6^ zx4y_J@GV@kz8QQM?2h$=?_ZX`*IWee^@nfCP6M<-ijNVPE*wS=qm+19zJ>2i>tP$F4iGUA)i(Lkt+w_!k(^ zPuLHeAIo(;kZXSRk{`bBXU%H#khvB-{$X76Gtb5UHPDq`x#jCu=Z>@*;D6~0?5D~P zp*+7c@p~TM^6H}>+;_s(&Hd<>#A|)J3EeX+E1rf3|qq*y?Gc%TEh{ z*Q-BWzIWSKLHnXkJV@WV9sCM*)5alzrV@TO{DGDc^{m?r>?#*xt&tR5{pgux9=QGh zTrNDH2;T$$a(q7#a_~)Er^PqV4Zb<1+U4}gz5e9Qo_6(z?@!b|_U8Ia`RQA3`>5-* z?c=#=AIH{);Yv2ESwNEGXN54${a_+sS)-SD| zx-#|4+1hvM$KnjzCttypm%SPC>-s;gJ(mAdgZ`B5DL`Mi^6lnSwwKxc4B2JnB**cC zDmc1!OE^1|-xKz<^M4&3{T7(_1cF;@gLW2O__LRyY(#( zEdBQ9GVtZ%hwh{nxZF=X%=JpS*k``-1K{oqc)w zpB#Kkmz}}B9Db!wj=lIE%O27n7hI5vk471{vB#tfTXr5f)=Xdcg(&^-2|dS}{p6&Y zcos4dC4QRFSP%Vli$2Eh-#^xD_UXKuXYi>#w&LsozQ-9yQLG7H!5XMJ2_@l~a~M02 z|DZn6g}jH~P-K<;R}9}_q{hxP_NB2i_4S!AUmX2Zn04bHu^c#bKMowREAbid9YVnI zQ{af=8^o^U8RNJyQ-`~!vkeEaW;2iVagBGVEqsp{w4I~Ex$fQfEAVAvi`t7T{e891 z_!n-wJpRQx51zFaq@1B&HG5+e%&)@Twhd9z*+!tSisBqjFjv6YjX4MjOn0P-wcTh_NrN)ALfO zr;vHytkqMMT6dInbMt$ZrEk=_6iv9DQuZt zL+(u({X(7#hMkP3DZk6b=Uni)k$9PO)MFuyf7|2UV}V0!`bftLe!(g@eAc_`Mq9b9 zy_R*vw`s|vqGRCvP)`oL@T8q%m|9b6GdX0?XxL-Ke9ogj@nMZwr+8d=cP(RL)a!F_ z;^xi9`HtVgiQmCVHt!0bh4=X)33x<#U{;wkL=cykZ5LUa^kXS40Pd<12u1Jbc+?0Yk&OU5hZ;<8W zHrerBBL|iCy#~W8+2OC#e!-R+vjxAwNj7i#i~M2X`|)2Y$0pFy2Hmo5NatnoZr~=h zm3cokl;`?iC?B0jzKB@|Vpup1Y%>GaBhe|~s*-&LSyR2PZi+e1nKy;Cqij1b*_BMZ z`+3?}DV=~$nZmxU`PQ}K;U}Q`gZb9;PaqrD=UXrAL{1Ek!w2o);dOXD2|x7Gk7tfz zm6s>xIXv--a;NxChj`*#>jm+G=<&E8Uh-Qnxb%1VVO6!{;oI9)W^=aHvw1*<4EY^h z6gbc1@qCrGtGwV6%z{gGKbg(GDg!hw17QC z;Th0O@I2<|yHqY~uFa>?cd}P+Gw!c%Y=S3>Sr5%W(ANZR*D9Y*`Y~`%@p1W(Ny>R} zwNG>rU4^I52)8CzA}3Aeyt4KfFbmIhz+87-=wJmu#ReMSQExfh7CZLJkyE#SX7Uz> z!tWaYd%4d)aPvZD_Ot$fX1ohMwb+NgW=wvYWqppl$9&<*b4{LWPYJwFe*R)|trzb? zhgw!%cnN!47PH4?e7zO!{`9ftm!WG3@76V36n14+IU2GzuFbG*tvyyDn-XX3wu%PU zqxn+b_!?sci`951$ z&7Qcdg;$3z)Ug(MbL`_W&+bEkV+Zci$RiEqo)gZr?m2Kz2H2RIsck6Dm>)uzl z)yUw!+NasS$F{xw);;zt>aM+<_TU@Nxe1xaUzvLYdUu3H?ln3OA2DR+B#sNe#<%4k z%J(A<+7!TtNM5FSr@_`s(9=7S-B&j@KH5HlH9#GhQa%#$lI{2d*|gcr6XBi@_++nr z$g&T)C8w(=4t^^qq3dRZ7Rzr5X|4D{*7M>Q+075Z6*$^wA-5rX)+qj3Y`pW{O`*k& z*7@Vzb?C=}<8s=ib?_@`mttI#XjjtHuC*EM(!LaG-$?XIz~8Vg(fiKPGHjaKTd}Y4 zQRPBFJL&DU?i?EF9nsX}IMF^`yE%MskjtQ4U$>3Qd6mAxCK%n5z=kFZjUC-q(=@r~ zmp}Zl+1OTmvW>>BPYll!jD3EVq4g4UT5>%0o$nfZt?zRE4Bty)XM^C>)qk(3?3LV; zy#&8Od^*AEui+i;Z{QvOM$UQmZ+gFwGPWOR^yf0Yj|~s9SDg7)l(JlhDSHy{)?}se zu4G`&Oj{P}W=-iy(~Ay&>t5d)S&q(hpXJzk^3mP4p3HUR+;aYW@P+#Es>2<-kPPcw zMcn@X)K5tld^)8I#1p|$_&`PE#pB=0pA;?3ed<&kei=4Nef|dcOzoAPT**H6(Gto* zvp8}i8Z5^aJcwP`LR~RvZ)_)XK{xWAd9Hepn=O{rv>f_B$a=4@U1iUusw_a~fbS)P zt>>i+Z$+kcoP&&$e`4Ebc=8+2%k)b)Ur+pD7i+7l?xobVocgbK>hm$Cx&*t>fIn{q z*jwx-twY6nTi7+xRs8)q>RJNK4Zy7aUlDM|sB0v3RZzZ=*!eEo=h`-RwoSV^)l+&d z=RLO$$=3IS)+4*<6AIqB9=HoN_Dw7$hMcK?c&FgS-l$xS?LX|R#ea|vG<`<&O48^+ z`i;PGF82*Qz*q!~6|!?@38U(CVHD0a_gp#UvR{LECKzfR805o{~K}*)VJ~0qxZeneAn0l9pxvV^j+XEIhw%heb1J! zK+9@mtc@=v~Iqdn)+Os2SiCI!mu73hKApIx=A7q+C8C z{Fy+u^eh4IB#(thajfJh1^dHuGEW;FEi8+-u{W!6)T}&x=DgJ~v%%?{`DYVR4qH zY~A_je#)A@`y^{|YyP^z9?t?{*05~-+TKfcz^B5@2{Hw3EqDs<9)_- zrryT;Lk#|Q82oXbj=u-`@OKmIjd=0T`+0Le!TU4ForZR*!_bfS_tu{I{Rg36yXaSC z?U*-%H4ZP=ImfHuN$TowcwsE_+{ZxwW%F;nr&GMv4=+Tl>?Zd5wB<0%Ix_a_yhEE` zb>3;`ydC~&4`jE#2LHSU|6Ix*qi=fOnaw-rTl+6raGUu~7w28P(-p{T9s5!J!()B* z>&E&9*xxzFI#T&n_PQKn?SC_n+j=9JgoxCsE-!RBJvS1eV zPq6lnU2ywP)Q%3$J9w`BpgVx6!+K!dJoba`;Qa*+HcdLfYp3u4PRD-9sv1i>-b9ae z@qX?()_&FB$@g>lelFkdV1IPIfBOvd61uc)B5kf@jZS>)j%nxs@Ff47n8rTEv=rz4 z(ronptUf)UeyLXv{Navc&ASI#FGvr^dB&J^_fs?QUyR+q49nLU$EuK0{Zm8R*T=N zcig^w4Zf}76>~y;vCg-7PkqH2>{=~$ZFL?oD)xDb&18=}>Zrt*n1l_o$D4vJOL-n= z|Dcx{+uq18I0-1 zOfGXXeiChV?TP#!HwJC&vJ*eRzOAjX<2P$-@gcm=`YRtN1{I|r5xbf>jO-KJJ=<4$ zxS71_hnXX`hBz{^(DXO9o)@og&9nCJ^Mw|_159Dgj{w*HJm#VSr=IKAi;V95yj8Uo z9{zQfUG`zl8NKUyKQOfQk&o*ie#BqD?i&BFrenOvTGZX&WUj@tzQL`}Qcmstu6xcq zZv_Um{_3Oeu71{cUejBYKh_97RY4BiKB@|R8} z2d1l$wydBnO|+$$whXh|@@%oS|4N^pSv|kv{4G=0pw?%RwP$_zqYDN#b@82o&sse< zI`zCsJ#SG@HT7JEkFU1g$h)7Ro;Rtdh4VM5=gq(XM`x%WbPDwhzQXF6=BcOKsi&3s z%5FVZIQ86qntBG^BAr#po^FNA6D(|5iw~#vFBxQ29fDShPpJK?x!*O*SE{;yC7c4^ zL)3d1_znjKwmw8VA3~=*;~&^`82FCEPdl%%7B!I5ymj^J17?j7@<|SzXV>`_b;>us z;`VP(*y*$W;VpQR`Fs0ChlkF~tT(joA!wy~??6@r&uzdXSYqJtuxLX2rT6kiSXG}v z@2&BLcBn2x|1??vqtAv>?+=Xr;K1cae|YqlzFkLS+#f;gYR;9Fv?;V*@^KU2**c)f zz#n5Ag>MLNrkL)hyXWwks`-h}k5)-!6m61&fM%M-`HaWLoIH3vq2@YADDg8O!C zjbf!5hq%omHvetwA9msIYc8(tF@L(JV>)*Ju0C8|>^uJBr>G~7dd5;ugnGvKa+^9S z`_#8X>pFS2m-3wpLp@!0hI-}$_X6M+%}y-29D>>9r51MPbaZ!ZfLE_$@7F56%lOOM;!s{V`A2+z z=1P5F=f7-!pW|WaF62&na07bcvLSsseGPhin{+xdfiB;F1o``sbh<|lj811iur;>d+3kuU$V}D@b-{zQ0qgKJx9>?5%*YVCNR!`9z%%wwq6mPZTc#KuS z2jbr=wlcpa{GodIYSzjFH*Edc(Wf3gaJ2KkKRntsh4t?5pSu21^zw}#&3gF8 zk5;wj?^|~uf9S@eQ@7-=*EjV$e0Qklm+<{VJ>NJu2zp-uy`P2NORx(M4Qx0t_WptE zFSQ0V4MHDXfj;^b&u*q|1)+aEF#WD4kCxH?J;bxues%SM84I5~I^_LVj}B?>Jo?%D zXRQD1$6tH+vmdW&z0r40(@fqO#yeHK^Vuhct-pr)uA#pFq`n({=e3skts^)8=;22% z^%pcv{ZaT)#pE*Ubl(@;MfZmu-sBsc(u?v(x@MKL7i~GVy}a}RNB8&{KadWxI7T_f zm}h>w_{BM&$N2;NwEn`kIo_pb@KmjH)Se~Z&^i5Nt!-wWn|E_tzGCjH&fJzSIp;H- z_ik~H)1BiNo#)e>qmc*dnc`eec8--C)xNax5&F#E|Cxa+HD~r3_FHk|c@dL8aegYE zCtt^m-NQr1M{cmf7yKQvQlk5IKRKa(Kl3NWPa2CnZz29MW6A9$$n$7)1kXDzlV5({ z_RcG@#iK(#mtwo}=@)lfn~t(C=fV#3MK5LE%z0q@o0J)Q4r^BN?qtUFgZ#Sib30C~ zTKzI(T>6H-E&cT2?R<-PoZ{#4tKnbX*L>Xs-%8-?C(u)hbF?upvyJ<4?#&_2VaiUo z<8m7;zuCjX=ny+Dx3-qJoY5Bnd#oT$hotT){^hshN~gP*1FrJJ7 zneml?&y26^B}VXZ!LU9W+{yb3@j2&dZ?&9ABJhulouUsL8V;0L8;>R`Rj<8=t@ecz zzeneRBW!}b76|JOf~z*#tGvtw!X0$p=Jtio{R+G? zo%*S7E`EO7ozzJm78EZQbyOQrf=RNEN90hLE*PNEd&T|}pU*k#Xw6)9Vd+LXcDYB|Y(f0fV|Kkpv*S>Jp0>+>nV`#)G@?ax`zSH6?)*!^Dh<#U_f^psz4 zKIQ3yk6AE3RX=+sr26rupYAEYin#uRS6Ta~E?AH%|0d<_etrGAn|%3Ahu!k>_vj-$ z7_#=?PG8=Iznk(4@tGImGv9$v_m-#p-g7BG!`k1pU}38KVamHc_V=(EZ@cAbZx^<= zdpc_$PGjxCHP&L*oLStl!dl$Mc&+lbmVCw9|JZ_W-h=&G90Rv8a2pHwT8oJz6cgLn z?ejIosE;u(VyV}KJDE=zV=R|(z8(12i+w?kP3G7WTf>pQFgk`kb~sMw$oN96p8LeM zOdb|~h{kmoqwXGv&eV9B_~_HO(O*V4$#;|w=K3%4Cr#gaS6|FMmRZi&e(z@ z&$j)|ZdqaHs$oO3Tb6mwm+0Ks+3c1FJm>d%&hPP@f5)85Mh9C~bH0k7{^kM4UrdaEuees6-}Xs;;U(HX5WaZs%hX?p?nM{XK?CX9 zr94ZHfS%|d*<0xyjfctJx^ezS?P-qfl#X}f{B5$&+{=vfzZ$jU(mwjFY9r(JJKC_J zsj@|Oyna%^x<=3St04~LjrGqZUZnWHp4BlYMDcuG*9WadQFz!Q2gHrR7`i(#{r>Kq zs_g0Rd+R(^xlG!9ErWKCV1q5spX(2G5wq~pFM+KUtwggpv~y_|%fH{`#$DeJ&Eh=k zk7k<&qrdo$?5O(d;?s+${3M zE<=YdBNnUi8GY+|=}NuNyGiOOyO5X!I`Crb(SyVZ_5M80<@5E$a_?W)Nx!ete&6uQ zPTtdcD;Hxoma+Gu-n)(ScHZlYOW(gPhq!bH?~yZ_dT%fMI;zInpS9q&<7(q=oM*n* ziN4bJCZofJlMQ??f({+kKmO<-5==O2ao3d`PQOx_QXV=+4azW)BQ*Rs>O;GhA#?zF7#I@Oa>+%r}uA5wU*fVbs)^2yt)o$58@3nVM zSb!LQ3At8t$p^T#2wOvrLn0s9r@zt$-w6i&N{Hpm&4}fgF-OYP5zEm#y_AQ?dtwD4 z`W}TXz03_$?xw!&%2MWi!RPAR1%@7d^YN5J6-B)x)Hw$$ic_3e(*w2{oyf44kjE}a@&FhU1 zxAUumyywU6DJSWNl%J7ksiV%vM`gOL$dL#g1Ho0x5{`wZT+&fWU^LJw!1_|wYzKyYC@vEw}8QeLi} zjW|(l?&JSeWt|wYa(!>_3o3KH`b+c;6VuT3Q-F`}o%1Q;I~r#~_p47Of3UYci_}N$ zTXzH5Ah8r1wuUy_#W>3!8o`! z^1H{zkL%YB0?)beg)yy{lXZ+Jybd z{BD1Gv&KUoHy^awqZ3m62S0iBf!5==iuH9uIia3=!J}6{iSCzD?-A-T>*;K^*OuAj zSx@Jv^9{HDy(YfW#}9@VcESrDKB$Ec;OlE`|0uM5B7ERCeBfJ{aQMJ|X7hoMCH9y@ z>+pffhzIJ3kFGnVw`(Eb9eVPCpI5N$w?E z<5o(hC=1Or=2=NuS0<4Ga$tur&KPJpclfb1nG)X>LU$vJoEy13LeISqXS{m^$i^?efh zPBr#7Js(c~qK&J;;Sc$S+XrhfYmc25ZoBEd<{IK9hAzSd`i5s~t%mII-|>vO*F8~m zm|_xrah{-A4^wf7UBVU5g%{~AjUmUl|I(%p$t|@EevQs!jm}HSF_z3o7SnVe_+(8G zI}cGlCD(UCqm=FoIl8a$WZk#Q!Fep7^_DaEJEr$-y70)`pG+72jfY;YE<9EL zCo{jzs}IMcTQc=w`;R}Fyo}ATkNxPwZGTODc(cO`DSZfEpHd$}f91d~_2|S4kuT-k zNhgNH3tpY5TnNff!gpL|>qlgGFgYdi=K?LQ;7hqA^ou2X+uYa?FZ)W+Cr>IQHsu z4ox!WkGu5QOFzr&tNX0w2X-(2(b3{h?>ai=aptgEYY)VSMUGZiq~zan6*JP`QG zzaI@e{)?lEP5Revc(jr6v`WU)0*t2x7*DIauVQ`OiLX68=fu)h*VaE1aoUH!zAJ#Q z?!b4h1K;mYVNds(`6qqrxsAY2*Vtq3byE-K9=Rx-`}xqpyrRhmS>Iz_$#v5Xjv6!h z;H5+A4^HNOl(DWDW6zp6o0aI`<`nX4paRoqa!{Ty8vg%;)N-SgddZ`-c9jk;gNeT{+Ck8z*fx?O%j{Z*kw<>ou{ zw^v&KxNekn`}TU^Y#g%W(Mi^K*4=6?AkJ(p+Duz2th?9EwZ6GsZCt{&`n>WvHD4rv zZrg*7tD{d_L0`X`{;#PQ*rXRlzZCx(f2eOg8{_B8homm)I{Ah2N0eKh!0(ZbRX*Jy z`hku7;`ApI^;T(#biuXPgnZ$aWn_I$EH%TMEsx8kE$SiYtJv7GvE`xecojfH>j zTjT>@0c-sM<`*mk-m1Wa(Eem^xj-TBCo;DMA*K^^&Oyfx$qxi$WgU_P%q0;}+ z5jf=s8D4VbLq0P)J^h})<>P$AIk!*Yk;|z=tSP+XZ}A~$vyWUt*%7z@s#sjwycMoL{`pCBN!D5$oq14hTaa}Z)=zn06%GWO z{#<&l0%zX-k^0l>e-Am)i(hNgG*jl>x_h6u4&P2a#m*Q*aRD}n z{al1c`k|bU2&<0Tx*UU7ciy$BcV13ky+spEy-#}Tt)kxD+P?tXUaNY8SDjq%%zo;f z<*9e$=S;m}PrYBD-rByt^Saf|3*Z~W$R!MknD z$@Si4*XzoIq1)Y_dNK!kSev{la+3D1IBz zAxn@A=|--5M&b+l_;J6x#^@AV*D3C|Ir_j-UME1h;2U3ua;QnWBjmp-NMg>)Uy$snC}%i z-{ZJ+6lMA8doCSiONX2V4fj0Pr|*8|;jJ`%m!VJ9zuHE;$?L~#`KW(C=4q$?)cU(l z{HfRzf683XIn!U#_x_&mDF(Uo6yFIu-;uxMjdRs{zH>_d)wC~tz3P2@ZZP^R+?K)@uX3w|PewW|KUrv(`wQmObK`wtOewpR;-`q7_ zG?#57eL1gA(D!Ax+&Se*?40z(%^sS%edi=`;;0K>!iH}NYq+`VOUFF$?KSx5vu}cL zE%VA{--F17Vy?@8ui*^v2$swGfkpGR4W1l0G&bYH(ZMtEp8i~Xeri^Wb?FDq4IkxPd#XCx@h9bDt6i@JtnuI0 zx3^ zueUcV(%YLI(R)#7p?4MM?%+N4QSIsA-HwU+hErdiFRVF=?ToqoZ&v?xru0ESIGB1G z9K7t{z-|9j6YokNpVhd21-5P{xp__4w53+4v@yuq(VcdG^ZI4J{jb5Vhvr&~BGCEz zVBhsql2KqcbZfMA=uXzan+CsB!xzYFmHKD9;mvyIx?cS?u9xPrZZh|x=p>Z^*HzU& zp|8s^$~d&vCXtTz)_taHi*e7#=oe~i?o!4?m(H)5;Dy7-J(bys-PPI^OL$%e47<=% z;@butfkFJ-CEPh>f5o+1R&7$*V(Rk3rt#AUUph0-{^3V`dMJ};|Jg&YBaL=G=2Yh8 zd|YsD-PHW2mQd{%sQqe{Q!ofnHI6SjPl&KnfT67Hy)fuYm)}weIU3_DbkxFPf@$z7s`u zqyz0deeK9qP zRx+;3_d9s^kTtM7O8%p8x$-kQ4(v``!F&^IVCy@9!Q>FGS-pmQ$wSPk68_$u|IG=7 zKeb~N-~D6GwQv2=Dt()Fy;EoP9Li(Acgh@||IK^$y}JAW`%;-$z%%gh2yo@LUGZC^ z^TFvLwHr94msi8XMU*XrpCiTO2mtpJ@bn@0bC=|ZcEPXL9)ib1x~AP4|4Gnx<=%*A zzsP*UHsTA?|9U@Frj9bSTV*C`P9pGX{A6$PSaZb)djoMG##cAN<-sWujBGGE znH$4%*>sCBB2zEA+pSl$SG_tSccxzPT4xFE#a7GacTlh5c`74ZUIH(5fLE27$NfWA zZnyYC$0pt_L!Os%T*$rl(Z~_9p}3sruk~Nrkr9pEC3RnQ!egSXF7c=&g!_o5Sd{4d}BFy1DW9 zIoEDLheh$#W7O-G9q{|!s*%j$dyBF=DckV7-l~$`oNISdmU30UHS;U%d7BlA_eV>^ zmCVzr3k94tQ0#9DewSahHj?;4xUg+PDz|i-)leKh{6*pi`45=*0r3vvDE7FU%JYqF z6~un*_+$F}{nbf3_KP0*?_;Z=hx$}qw55!;>^h2lqb+5$WjAfnTtl00vs*fpzXJ{a zz)^gh;P}7%9%4@524ArIGWc{Sx@;_c=0OX-X>hX(S_d55s6LewKj`>0-~BFr=}v1< zcL{#g57B?Wp{{oV1N&MHQc`t^hgP>1V z%L@h%1I_uPsq^fXt(?ndexKtr=6*J1{4HV6`S+YMk9h8_;`~g0YIN(VZGIN8$v-<1 zu-A)-+`@Vhf%Nq(qfc5r$>;D-%Y3D6FQRiM`bwMVFUMZA?Z6w;t*X)3KkRR7?unJF zyPne=m)xc&S&NUHdt>95K+E{Va^^LMwyXc7b7a}r`A%%3=&HU-2Xinx|4jPn%GO- z^;VT)VN16)J{slw`d)~7A0Q7`c<3lY=UvU5EAb5aM=%OLm0K{0+<)M?Y(de4F7A=D zXJCms{T)5C`PFI}34De49?xQzM`xjn@u5SUNBKqrI@s_DV@@L_^Q=FXppH?TFDtr^ zK0tu=`Wn`K_TmqkyNnFv*}5c<<>VvUw!4J#bv0KZ4;ll=Yx(+Dop@rZTwY6|mD7D= zu~k*^1*>W*_>^vFpuLYlZ|R0w2dBr-4`n;l54EZWg5zG~Uw*>a>#V9Tq66M$U(-Xp zyOHuL_p*Em=lw3^s?B{Lo2+;9@GEyxu9oXOayWb0kJqBUt_fDvO$!zn-7Glf46}@G zE@s}wVT0#^-K)7TU33^aZ^HL^qbFy47yiWtpLK*iQ>)&BCclDj#4~Rho*CFZh`OIO zaOSt{^bIz=LLFh%F{+PO%zPs8%EvdJnOF8)na(Tnv&1X!A?IFR=^BrJ2)~H_;+ex9 zo>_%I*aW|*Z7w`|e%QnJhiQZA9zYx7m(h0Uv;o|S-$e_x;o^SU@T;?EL&@0w+wk&P zwn1>kFR`kAMcn1PpP(HhFFyNrtUp6LHelE1k4$feE4OPuK|4kk_1}&dw7CZU)f_PT zvDZqr%kbHS|CPh6@w%Qm%z9qBfV|Kb6d%yN!w&y#@Z}j>wwJk6&%)c<2iWC7S4WT( zJM6Hnubeq;1C9UvwKKF`I&04b>1}uU@D|!`ViNeoUVe0WvCHAbx6~f?3LcAWH!Zj# zO?Q10xTIr_VS73#w}SS`j^;S>r5FXcKJpg0=#WoI|4DdJ?q?f(StP#1PN0WVvNc+5 zLXVzG4;y+i-@HFPe4#^6$&uiY?p1qV#us@59_*Z7G(m87AQzgS-f<^-nsPDx-UR+? z5Zq|!H$G?FulAvroIxv@W6W;+=#^g|Cq_zyt;4fqt%j2`-~q< zyJO3>#^Q@T7?x_qrim#_8e@_#S+pxO3ka?^Bq96z~{JSemNCg&^7 zIrAT}0rzwMZF3!L`6rI*2S}f<#jK=%R}&ibmao{=sOGUn9%Fk)re!u6q|iJjZX&~KHWa`%=)qszpg);KB=77 ztD#W_pLUJ6?X0o!&|7-_ZD8Ht8{EAY9*ZpaOd7B50=6joN^Ab|XB@nY;~2#@X}{^Q zsq?&+OPuGIn|pcYonp?5ocnsN{Id(4>yaEU;CH@reGx}=udzX{{a^iRZ`EN3&Sx1n zz#esvg$JI27TJ>Tls@1-IM)4#{w8!#G}^d_7!+|=(MYlI3y?Rp;{aWYMm(O$}{58t=X*YlqB{M8x8Leds3fQw&y>{w@|*yZob2~Z|P3#Low%~ zsrKi&g7YYFrRJwM+G7BEE_&*irhh5>^p_o4IAxXJX7bbEFV%CULx*e5f)2}0Lx)Z1 z6PMrjvNxf3euO*T(?NVfeIdnPMllA19ig9_+x@KY$+Ojrt=!n#`}`d2z-z3zuerz_Ij-`)BuW z?RfSo=7M|I7f^pKiA~>$zad{meO&c#6|vdsc$`LgJ>o;pYy< zDb&ZR)j4`;G4v81W5`al&KJH}xV+cHYuLgV_I#!AgRM{CyQlDj9#=g1Z@`b%9Ec%{ zrz-PI53xP?{JYGjXs6Csfa_I_w>fpV?+s90&|1EddoS~Q|LWBB5b_+I$(#sep~!(- zbLNQkIdcQ=Tc>q?>!5#u9mYGfg!9`~Ius7yU&kbRYjGoP#r zAH0k>LJc%m&gQwYAEH%bsONu+h^r#ADywpaHubFYr!qWGaIbvi2mO|*8*Gh#6aK5F zAJ=&eF%RE>)^668oc2-E>chONH6s%6Z#}m0DfXE84E&?D+83ToyLakr`W=}^KUg|wV#wZqhPXpaw50w7YeFrDo~lRntIzGN z|C7``kGwX;@oDG(K~vkcHYRnk*o{YvS99nZunViD#l=(jO^kUD8(cvu%7TwdzIH=y=B!Bc1@Y%vD_zWLGw$|md?@fWv z%KG6m>_Hlzaea_HiZk)qPU#`+wEAvQ?98?Jtip2wnz_DO9e!F8c~c)owq7}f^1o!m z?DdecS~`b*V0;XJ&}!0L_ayXgLq0WsI||NaH&@_ycfuRmS89rt)0ANDdjgwF%w?^; zJ`#I(Q19N!w0nis6Q5@L-U-G@=I&bhDC;|{EoR(AzP)0)ii7C;yOlS&f_XU3bG@f` zOkT@$cn^IczLlPMg*Ft^kHYq~zCyb!e~@ud?>L+-U$V=~fKRshSrZTNcQ3`azJYh~ zo%hRMTd-^8quKLEP0;$dB+-X&_-N(oT-G`$!>_g&Tk4pFT>?hU%ZSq_Zay10vClF1 zC*k0)9{klf-yaG8Oy>Jr@N+uA=R9!e;!|*T?pki((Hhp`<7M~+>Nm39ApREqK|MI4 z{blHYUC=~+w)#Me9Jqux*>Umcb?{z)c(L=Z{4JJp<#^xphm@~_FCc&IT%+4mZ=T6d zv+K)l8EEcn|B%5gJ%%p_x4dKCQyqCNhs}AQ#c%2zVD2fuP4BwF-OVXZ~erg$cBW+fRb zN8c4Dt`bGI)u71(8^&b85prc<@ zCJBFJQC}N$T4C~yvs!AzSA5IR(7-Y_9ET-nYV zqXzVnd`S6^OVE!R?{5AZ_K?rA#@Cp6S|h^KC(}1V|M?tU<<3hy z7i6s>!L7N$%jAz!ul5|G{4jqA|AXsQDho`Fz_1)xve+TZlj%Azfo@YSy!JBxT0i{n_K&+5 zbMCKy99s{+ZD4GRyl2Iol;39fY$E5t78;;EygnDcqmu8=WL@+``aXf*LEg32jK-(q zJac*W`>dfLUp+RH`_wZK+!()>bNO$!4z~TMDDQoVTp?q_rcs{v+N!~G(0abDPJ0cp zClJ2MW^lg++$+{gADOlK!3i>E%S&kcBw$?ztjfz$PRqA}S!+kOQJ)&ntnj;?o-Jiq;82cYYPWhJh%2IBY#-6m6VjLd#+q|9H z<5gpo0op2A%r1hrxfV`j=l7AXBV0OiyzMr8mnV?pY~*-_)&7$XE4xYd-drQUx?bVP z?>ry!i!IVP&S%gYX8eoqtA5Fm_gZ~}H2P=oyZC(n6DRYz)=YP8y*Xl6b_M#@V{+|( z1Yg)||Ff9GM9w2QFpmIshl<0$X^+A!n`mDH>;^z{)+oP zc}29hZ@z!R;nU=JYlpEZ*bMqlj9Cu}=S+f6p^Kv*x25zWJd>s$xxNX0NTTnTkAbJ) zi#YZ}IhYy?*@*3S?NoAni0@E_`$OIMKfb1DlZF@RvdgR;YQtAE@MHAYWuYDY?RUMG zJp;V!0lNOSX&*A2Fn*A|uj1?fL!K_SF)^OGY0Qr?ItU(&BNq+8oZwhS{I?kT8{A-n zONSCQLuQhwkeLDRy!r*U9H7=kQMI`&%=3hwC!R#=!}G zP^oyOM&swZN}V;_vTU7D2Ykqq$yvmf&Up^|RR;~R$#K^Gt!53=GvV>#)8O&T;L#nY zab*~MqW>m_Lr(hm&Wjw_5a-zv0AyW9l2A3)NRwOvu!wvhag)Y<@|7Mfl25^ni4A zbU1yEd6peJH2Zmv4%b(Jk7{5-*Zb+iCny)Necf&D9-&Fz526>c_Wg_^|c(uA9*j zw-QU=OgZvj&3p^icV-%z;y})v6pnka9Yz<3#vAP%loi4c-?#TbvHjeo=AQBe0xc7f zzmz{xN#02T`VqS;n|t5mj^3>daUa?YWe;m|bBr&=Ki8kgTtC^wnWXy~7`^lhF^A{*z{?nXa0I*v zjEVyYuZkUx0%vh}vaOIYIj*(tb`bw`1G2LTxaf~|-@#Gw%caCuFXQ<#-bsGk`{MPi z8`=TxG}c=SP2K}<*mlN9`($4D)_0b(exh`Q=F9u>9|Oe2%8B8*{dIdy$U^84B&O%C zDVlBz-PkC(&hIW`K1CLE+){H1IVQoD9L_s9_u6wCPr;U-!e=QOf(tkPHPEGBKC%V< zPPKm6Uh*}(`Ao5^`)DVmuVKk<*&iNMa7aYXS|$IZZu48)Luc!{Mkn|)S8S-6-v_{x1z z-z-tW5t|}=?dsfic%HsjpRMP5F8L_7Uv7_0xHzT{%KV#8r}38SOP&$euJ4(F>pL=V z&1B!c{)g#r^{q$MTkmJyL?F_eYF}}Ma{X)@^>#JTI-e z8f>`)o_LM%&kppV+yCus|xSe5FR&X7##zVW@R&xYg7 zy$xPq+k5HzD7@}R-pj~$DM4n6+3%5D31?4wbLCeeyl?zUbt+xbQmk7mRN|)+cBEtxwbie!Tr{#V}p{j;~qe(vA3RN|(?t zdcK$(x-#-6`&|#fnOB|Ge*~6R4=mDwhdek-$-C(f_wl1k>;7Q6%L7wyFMQh@h@gkI z)j`X|aM?}zytK!x!3sY|H)}76db95Qgl)%~ul^zH3&JaPjy)@G`6W?fBP> zcI@}?@7Rp^h42{#mj2+c^uX`p`Fp?>AI{h;Fv*t|Om|Su$jvG6`kf4Tyz&$=`GS4( z=e_h5PYE{n+l5|ufMKcD*^n+>D>)K9k?Y`q?ke#qZMGf&|~JB%fst<&L7!_K&~awAsboKIYE4w$|IG zI!~J{+OUDV({kG89eXdK9rQ_tx%Spx(N3^~u+?s1MFuaeO+hd#HYm{2bX?$!Ho59l!dC z3_QxO7X9Tn`pmjF{=AV#CqJ^#v2pwY#V+@7 z&ir?H+A{MpCRx7LMtE9l^=Yr#Xd$+XF@1x>J@z=K?!|cD}5Ng_#Si%j?PIkUZ(rvrH+O5B+i#DfAHB~+XXS7z2B|)i+8(FvrmeKumF;h$ zYn8hlLl)x`!ME%auqxJmE6)_WRX<4Wi;w3yJZAfg!4}0R-}n^kZ=J{)9|d<&#>X|z z<;r1$bTRd)KJ`o8dVk0K+e~;>r`I2eLXWowe9%muPq=~HIBU|C;TZna8|ToMpiVzF zp#*+a9JUep)p*-7N0-<(Akea#@7Ow6`9A6R5k2JVy1G(0{vYOHDYtct!)xWhzpWow z?RNq#wa9s4X51cm)>xbP{zn_rb)#fjdI)=)>SK6mtNx7Ze@q46UVq5diN(aiimeO6 zm;BCNZ%f~4<~y0|)t~A8PkG*7k@5bKN?RTy?A`To!SIwkDux*+2O~i)MhtrwA!Z%d zdPd-u7}7Sy7xG1C_(=N5@IQLU&D;LYTfNPpeAdT@Hx*MieHi#Dv)r1udz;ZqN7P?= zZAinT%01|Sk2_fJRCzbiLuPG`@xq;C=q36Eio@^F5gx4>r1dth4FBQtCSJML9iLD< z)93B~a6O9r9m$B|bA^gG019-@NxA#u4t}}fX?|01jGW93nZ^cQ?cT_jB z^&$BL{u<7C_D9Zb8MOOs^wr+ALSL}^YL&Kb(0+qv+yY!zj(e}U0-IWaO;yfM6n$31 zS_;+;1<2HW+v5qJ>3?Xi^oM?{b?)sk3zs*IUUBM8*%xd}f;FYYe}CNI;d3Vk>RS$v zi=U5FW*hw;`7H7G%G|X4>fT=RT>`$I_;6oOY^bj%THrJL3G~(vqW?FT-vEAjkw7$5 zia#^Hw|+R+=kvRO-=`zb`>aPak3O~mKH7}jJqiAvCVsh<@!99#n-{q^bY`S&L{+3? z^p_%UUisxnV(4(L&*%CAu0PFn71uLU&)Y^6aBm3L=kWa8$b9Mhf^y(12hQ@I@!5P6 zy2^)5%;bBs_#XPT9r-vPn!B*aRsJr@@J`}x@V=0;GvRx5%*7^-lTQw4RyRCW)j}U2 zN?jT|*L!-Wld`NI_Clw0D7^k2eAn4Te(M_Y#~)_?bTi`z)Y)~X#XL*a1L7N<^*q0q zA9Zz7S9>FJvx4|P@O1#6zAqgYyE6oAA>g9!g-(u4Wv;O+owPMCi#k{Xp|^fu1ew`Z z92yjk)mc5(Zv3Ztz{$J=_UYqj??E9w=;N9Axxf8TE;hL&C+~+c(d3c@O|II-PA-Yr z4}~$V{U_in;FX?uxeQsF;>yxR;r8p&Wn1IcX=9IEU!mL{aHE_HVtPlk4udWBZIHABDte{k%8mG4r$qrj)OvN8wMvTX; zTX>HGpLCk&-9_7{;v4irH2SQP8-|d$F`Tazmw}}TuXOF;Qp)N{_nuM1v;XTsGbGNQ~R5=1EY~++SVahf!`}nw!XAwNxAxC%C#ph z^)eUE#cS6H{3_*rjL`!8@$ zJzjjdI!SmHKE3!$*_#6ND7NNnKLDm2-p>b?0_HGz#vao8n;HI-H-GbPc-(x$iDRhV zOQ`n<@Ojrs-9+r)U4t{zzsk(F@YY}5PyK^GLH+Lfb#~4|-}-g2d$E=10y{sHwG!*I z`Q`A-jkx*3h7QsV8?A7V*rWOvCTEX)z9$?V?B?^i&tCHAVCB-SCznoTg497y&iE*H zB?&*q>#ZKaAU$#WpP&Qs9J?1fU~`i2mGXs+j%fIl$pO^dsE4l+crI) z&uzACttGDt$ z;aA={U3t~#eJ7J=w|+mJXEpvNUe%xL@1KsJTETTDzy1?-o-Mz+`43~6Kbo2U(Ax|@ zt%s&hLf@^>_i2Z}Scg+Sq}Jq=Z6}{-Z5{bU>NooEH;dW(qm5jbmxr*!Q-}Ik z>K{a(247p5)AS2`8hAjuEO8|~fNoPPB>E)JsV5x7k1FFiy3hEU=*T#HH2wzk6=f>1 zzm@8nKil{qPdfZ>^5riBHgxYwlgk=xdGcFK!*Ai<4DL;*%*~NEx8_AU zpBxZr-;f_kHpA-=Q|?a6!Kdih=N~6GCs`LLRUcsqb}Cs{S-K(Do=a!;c;%V=9?c7B zLtnSe!k&WD-5xjvqhPH@*3xu1cC~%OO?-bEaNNjRR8#R~Y`dB}%1?U&5!rNd|1_Rt z+t)h3d>Z0*{_ymfj?D1gIJA*JBi>NoOyg#L>~2VQ7x|1rw-1~9>~0)cT1tCDvb#LH z;R9j?v^jYt_(fKg^N~PKWwVS-IBPfk;6M1L^W4}d%IKZUa+$LE#=oV@<~WaRo~?W) z;EPQ8Tt~fUBcIA^SHIsV1CKuFGV#*B@dwl2Kz`USqcuLljgc~cm>5R$1ljX-zJY>apfpc(V{+`&q?)hKIwde{SLEM;u*dh1-=+? z3LbaAG%sA|k?$uN&!pk33>t3r(9qSdt1`xyl%M=EctNjin=^EBkB)W2C!2hf5YKM> zrMDk!=LLFcEEwcBOmM!f^}AhuIkLx&pR6+Rlk-yXlU`)e$UvP%UW;qTWe>66*m1S3 zKRw$-4ns=MQirQ&4KC`y**xLQjs?6Ay?5tAZ}jaQ``BlQ{O7oM1Ku&^q1#4iWYNZR z)JAZw_=1rg6Auftu%6)~veVH@XpO#2s0?zeatZXc{Es=uhz%l(iqpj_kuzjeF*W50 z89dQ95MTRQTU_zhkZkX0+OPfbtV_cGSo&VG^mHmV16)3DY=-NfldGV-4aHoDd%as6 zV!uiBzT!|W&IC)D1B>7gJT4r9$qS3@P#m4EwjN~->a;e(=cbM5Ot+0=sn>0v+N!px z?#z1Y52AbcuAU196I-NwX1PqhjjT`CJ&WKW6E6t_?fK};3w=M3ogOcFk+#1?8(xPt zt+eMiT<^rMV$4zdclSc~-roFE^3rkgw^F=BJ%*QfKiUfXzhOOw0&Frg7oOwb*~B-V zwssIt*%4oJ1GZ>tBwmn>4aPF_M^!Cc9V=Ot86;_NsgguTf#BP-Y z!bxCHVh@shuMl3B9TyLH`?8(b3C%rO>C8Rp!Vh)lp6Ho(?#W8WR;x_MZ0y?zt7ieW zde3p}G%%TU7wd;2Tf_LB7wLU2!%oxQIPG4~yn*1bO29Lg-fA04qf9Ch! z=ldph&wQ?zStHuUuam2lgIwgJFAC5r*v=A<7(=`@wYw^4G~bUAzyZ7g+LuWdN|` z8yU$p@*()OHkHl z#`;c`4>7eL{GW|{zkz)93omgN(KiLJbDah+GWSphoc-+&nHrBb{%hZOd@p`M?=*Z5 z`BCU^jn5n31H7A9LA_#9LF0SednvKWzIeet#S8w2Tm*cNZ6;noJt^MtEi8OP7? zk=Hxr=hO#`nsXWuS#S8c1}u&W2lGq zgV)wEXGLSqA<7BXTJ)syNj}Fun5G_bbPK7chUelb^^fD{vHnWKrQtS~1Z^rb>uz|>(`e5-&$A&dJ<9;qJcyF=i zy;#OOs>ilb_ItnHhpptE%BfCcQ>kCy)VI84GkNNd|B^1d+IIj`V*Xrxb2@uD{`HgR z)4xoepTu5{HTjz9`b@O*(hQ%>#M(u#Uq7k-opgZJ5~Y2Lf0(k+PxSRcSM{@F^mpBS z5%LrEX%18Gx$iaaf`0T#))rIV(3hNJ`D5zyDsRYr=XACxl7Y8hIrh($zo`ZN=ffBo zoF$o4Je4@zpLDe2z>2SEj5h(FD^@0buKXcC`cOVYa!=o$Inv<+u~#OxfIJl9lS^*r z8M)0-oX^N@H#sk_BexyI`8uZIx51|!d|Uag>YojzAIbc$7yM?u2WO6&|F_p_TxSp8 z+yxA~f#GFf5YM*p&Of*JHqT+rRmr&I+Hd!_)9R?vo*3}GbbAawj3M6*)^YM-kQ3T0 zd}|LKoeLK~KZ0)j6Mhl>RE_m}c~;L~IK%U2&+vT98J>UtG|xZy4f5r{B^bT1rOA`W zrW9xJhnqigcZPf&Va@w8|B&ugtiSz!ASbQA811ln?wY{2;e}X-y?@{Pby?x{OyvCN zoi9W_sU@ib=_&VOmTuI8BSO7Y}z)wu}jls+pCU>of zITh7hFJaB6BISfwS>bWlyw^NX(#dNw)N8^9h+~C zbUppWNcVF$Me?umNAku5A~{8jL7kr!XmOOtZh|&K6!ub4s9E9!apbP#?W?Gj=_;> zJGAlA*wD+(DT2nLZ35UnCa1=x7vm-9dcEWJ)0559k(Zm1n=jI@z9}-`8DAv#apLm- z7Kj8N2}Y8%J$Sj(_8PnG(ShU$(NCYB-u7)4eu?SGi`W&&-V>qa{WB- zYu_2&S3yagY$Jgy!gT%fk*k%A*=6nw~ zzp%@|*q2}UAwG+N5#8>>xN$(A-!DHuf&ORB+Z}CpOYcuMdOyC#Z|nYv=-ko7mWbCpQ`_sXZmk_`PT++aBAQ# zuzG&Hx8HgDsa#(3EjO6v2LwHyH z1_KK?tDtWAvIa(Qtnv2;SzotgAb5hmMEmvF^X2GC^vt%u#@MN1?dp%^l0TsFhX(5Y z`g`yxewp$u&A5Z-+o}8_tH|UREu(xY$A~s1;YY=d1*`TGUWU)HjPa;4^5-`Ff7HEw zd{pI`|9@sCj|2z^2#Pg85LB$#QpG9mGRdH*sMH0ED^?z&MH^jeZP!}bCJ+!cDokxR zZRu}8Q)?$^W!1iDmhG2lth8b)V)yHJ*KL`nJTc)>PzTif-k#QpB?k6&J| zyw1#-bMA-h`M&P!x^8s3Y+c!}mt07^J2w3|#iLR~qg|O;B_qA7vm$@7el_-G%?8Vn|I%L<~Zw+YK0$Z&9mZ8ILmp?q(59NPC%?4P$k<%QRUfWuVzaG_;rH^n@Zvv581r?qer`)jf6 zuo=|wl^q8CuP9Q!r4z&H^sjYY8?{5_2W3x4`lMGjD^46cFC$tr@A3UM#o6#(^ic)O zm(a(Na9)<(xYn5~bHtXRt`om+`J!Vp^7-Bw)Eua1%&Nh&&eY%u66eMKF7tAI(&T_@ zZ2wBVNyUOFSGFC$?`xLt^>*t2D@H`|l-8sd^m0jPapy}8k^721+;^sdk9VXw9&OLE1k{L&S zc%+fmsrGbgZU!9C^R7 ziT+1BxN+`jJ}rzxXKZ-qb0}cfL;u6MS|5+>-CvDE6Fm!|3FsqP7YO!nCau{IV=q&( zAvKCR8pNn822}Nj+%-Du_g$4H2Q$BE6FCQFodF-MqRwaKw?{=9vFU#``2B`5a%f`k zyl)sb6?~*TnmX#T=8aSy4d>1fUvnjU=TDEc-qQa0YR&*qjL~Y#U$1?iR2?xItOHh_ ziM--{_J&M8sbrG&xY$2?OYsVe$>U$5dLHNhEp+|;7nVaSdcK9TpVXdmfR!I&;lF7MJEApog zkxzV<%>fUN9A{$w$46qHvt_K0XY9BljVbiPS9w0pc*lFjt2rbmg9l`fvj*DY?nf(z z1plI0dl{L?_p^w(l1=W;sfszt9ttpi>6SIrsC(M#t5Ij}nK=dO*Enc3bcz%OCrCLb^b^adX_Dwx(3n}amKq)zECsw&=v z_69274z=3n3wB*;^nI4Sg};{lZ!7bsKlL==GyJt=&uFcQYOKsCUGHZu(A@;+F7YD% zNOY-iD&7?jw^#YdOD}6WOSZrcY=1{Liw@z-OSP8I=Qj%;wBsYKru&IGG4sL35PUn) zX?esJcfP2$(euDs^}1D;KXyMbrhnDn?Eu#svG1>?4pIvGYMX{WU1Vjh{`T!3cCH}C zJfD3NA8P>Wvn$VCwbn<`x6YE=i|#F_9`RypP<05bNl3`|l z75sLtU~dTe+FM1wf_$xvXEQW9g|=q;O43W|=ifQAj{5OUcX4kApNruq#_%t-$XY#f zbm$c3+@`GlL&{)q0HwBkoEV0pD;M=vzJ(dk{44G%KQj9_9SDCGY`p% z*dlBgbkW9X;I)x92eYS69#88fd|yX9w5dEH$vfc>KDsnTU-IFk8o44*jJz8MF1eo% z9!k!DyDpb41x=WoI`cl?4=a|0dB=HA{;woBQvSK@ z=JLOB`Vl>-2DUT5C4Fu8=C$_M_Pey*1`M9W?hzcM_o`&m01xeN=qedCk@2f`;^e7E z8YZ%DnNLl`cE&=@8o^|}YX1HLn5@P|YGa)FwH87p6tfjAF|qLq#`&jrdV;yOl8w6YXp; zw1drjMdS;bLwy$QtUrNvHk?R1|7hTZjn8lQx$|@Inph4#X2N%j#i5<`?)=*7b7+U} zReE2v!+X+4(2l8HAlmui75&rBZcp2;@6l~r^2)%Twy&dY`5@bY#moKBkN6>%ei|<3 z9o`iU6+lBBjA@5ML(8C{XB--8XS~!!|4=lT zdj);CV>WcV0DPMNZ?+SdNpHzkNIhX? zI^jpf72Enf(Dau)c%vFxp3y&VR8Tikys?DyNpJW(bpH(R4%XW7ipV#n@_jAuGG<4H zt`|>ZGhV7WNQSmOW7BT04CVey#8VhrhgN&}U~LW`@cl`> zFFxSC1n+tIVE2sv`Cyo*ZI=&Hv<1xiY)8I7Lfi7~O19M_+p54v<9j_@AEE|D8Ry-p z&csi-FFhq&_ZH|tG4jg8nayYRH{ZHuN6%LGELc519U6^soh8xWD#XMiqG{bx@ z;d61*<$RXCm9@vjy6TY#b1j5sN|%tVhDx=PCC{??L;Ct>EfK z)>}Q=d$iZ+c3uZ@qh=l8Z~7MT{j243dy#&&hK%kr{%y%a^9=R?@Ln;4xt7x|{Hl2L z+o6#=;H%YNU~Ik5pJqkrfuxg0t~ABYCs{6=?O9ANLV%IwA4{>&J%OnU*W z^{62-De`!U?ax#`gZpfZb(8yknd1l5d*WO6e%EX7x3-`6SSO6sJVMmL@9+KIe(|+` zy`T5t#mkgK)-e}2Eo082+vV`?JcqZdT%Uz)@5O+T+(ou9mEGV1F!t z4`>?oTd+Irb(vreydD0yjarW4#qrof3t2ygkxPo! zq&1uJhV+c~pF^~VuAi=Tyimn;WX=!m*=Y+JyUzmmHf$#s+MvSy4Ue;t|o z3*ul_ZIb*gYiiWz7C!UbCO)sEza#kTHhA_(-++IeJyLW%XZP^?QTD+8hH-_c5nDl= zb0z-sB=o7+ZX*YwPnRdeC&wE5)?;4W_J@0;1Hv}GUH&S9riVahgrMfGvfIc5)dI(~2X zRldii7P+JB$KL||nLXzz(1KZ;PmW|h%e&yp$z5FEo4W|y^RS!6CwU<8xoaBk6NEJr4t4Ch|B_6K(_&iC#>AA&0{UPLp( zmD0acU&$yaN>KQ2ctWn zhxlyzhF|38NFkfrkX2^C9(cNXK(hZy*?Eqx2;hGUv5%qkT^sn99jX1y6f#ZzXB$?I zuY)nfp;OVh&IbB3=Z?n4BAej@S2jQ4M>a!)mGT8R^14?xTf-wCP{&WQ`N`3?Y_1q* z%VznT0_Y0KEZOEOh?AdaWOJap&5_OSZ!?T+4jA9wL`OF3nFPEVqP?djo6#2^b^|~3 zL;}7M-TF){LSaPfEbTkT@j=P28mGUwWOEB~M8kju-z!?Ip!mPz4dQN;8$=s^cu{)9 z^?;sTk6;62WqsW!-r>rdtQF{W}(Sm@~&y23!7#-urm#e`Y)(_TMV7E2O8T^I{HPY5oak z{;~m1HdpUFb8#s+7O;2s8n&CU=|)-WRpV5(E82l;JKta9dpqrm|6JN|`7*b?f$;3Q z*O0aFv7S|XqBFIvHobVrm9fo_XUo`^J^n}-3E9_IuTA;kUuUnqq7YgrvHj5F*pteY zv#V+I0D5M)9~-2RGvfTi(@Q*g=m+`D-3!rmAo6@0Jf7Rn*XU=U{!eq>a!$Om;;Z74 zX~ojWhRow9vo!|B@J`&c&b zqn^(A_~!)agg&&$t}KT*?Oc6@gd9?N&yefkRJwK_E2pWI*$ zZm!0he&&%Hjl3TyzOnmHhwsnl^pT72)6Qqsz~?hMr!V0pcRnY@N9g4E@SOr5cNyD$ zOyAx+x?k%(`AlVpD7M_T_ww1F^{4A5Vo$@r6D>byujlQ&l5-+euUcK)QUBqDQP1o;!{o>~iU;Fr<4mVxgeRwA4%li1OczEc6NA}h4=6f}5&o91!8p7Z6 z-Mfk3$|iE2>am{r?Y#f+>eajd!28$mew6q3aE2+BkmeVR4+ZyZ@!cE$u!nPi^3%z4 zI7dqI9yzW$nyc~cQJ;P1FBn&hF=>wSH@owj=FHC`W;BJaL}%95a+axlpNc05pUvJ1 za!$D^=UJS?N!@7e$M@#sGuL+7l|AIPX~R)5&G}7Zo%U7J<6hJD>h&t$|@XIGIJCtJNoSI8Wz!a!)>e>GXE&B6sgn{M5#JLh)9WoLig> zdG>!iK5$&73r2e!QDBOG(-fH729cSX6pc8wq*p5?Do3_rkbzM6$yahO#cd!i< zza||}W?6?mOWfchYHn(eQf=s5urSYVV(*>3$@T8uka48!=;nb|*kX z^Jzoh)vn?x7XvTBU?lf#e&CEKhaZI7Uwl9glW2^0y!T_gFMO+ZpmK;)QPQMOk5bo}BP1G-c5)P3D+1Ab30z9ce^-^zen2|S_uJ6K8VCp@Zi zf;-_;&8rg`rv5sS`>Ev)AI*w|4wD*dnsAMGF-kT2StTY!cVLzQ*L6 z_1V{pRo8+Xj+XNkf4brY_&wtq$e-Z{uS1{SU@%sfh&$L^f* z--Yh^q_l7R<=DzPXJR7ulx(U+_`sBRQ;sdK^L+R4y+Yry-wOEG_m`2wflF$eC-Kks zYUIrPz!yTzlla&7m$Bgku~2Xl|D0Jng_aEWcUqZ}Ok<+hVRu8Pn7JCi$Vg7%vQ5TUI!Il8{;kK} z%f)AZ@OYB(d*Lx&^P%5K4m_TOr*h{~dy2U{aEiHnV*qpciDxc<%E50JW6Q!XIF-F$ zgN~3KP+qm>sIy1T0BRbDd{AfANgx8sjVQ@Ph|lhR%y> zn$~XO4{eqM$2|VeW61ST0DlH+KJ1-l0|RH>x8Y^vN6tNWjrqpIHvj*x9C+lekG%C9(~Q-$@2poP zM}A5>1NEOBYPIV@6|;AUEv!9??R(G#g{`COuyas-g$Z_KrZwJPUY}u@O0IUbs zuWmUvlENNHLIc>+erab(dHvp3%iA6%AX-X@NJo(JF49DL)` zm(7!;FV5*~CSJLD4R-b&W31*SwCT2|w*T%T_K7)X6PvZ!+h!OV(psK95SxaaHV27@ za_+f$#Q5K!Q?veoM%$Tphio0@))n>z_g49WqLI%zwC2WG^sdWg@4(j`@N_3U&=s!W zor>VMJo4yN^fDc6|u=g;n4zsr8@*$Dr0wyKv#CVqGE+r+P3xXQ|J z`X8Ye){9!piDue8H1lQA3~LFkTO=F%=!UbrymZ4jC5MuX)rX9ZnRtc~k&D@v#=mLP z40F(2jI@tb!KhtsCkKfOaTnc3Nju`wv zddiq!_tY`LebdGS_fH=aJkmHKYaR5DKd|N0(Q+$tq;YuGZwH;<{-iqY?^#+0bB<0~ zll%>Fp6#CXzRBl`y%);F3$4rc1;QEszwx=JGBfly(z8R-FQdEnjkxZCQY-vGk8enI zg}zU@IapeBRq#1q>Fdw=Lc5>K=iRB?8{Btqi0)0}-mt!V_i)bIzUkZ>c~x+`ue3TY z9Ud6kH1w0h4U38I*~d7Z{I&5RymT@2B0apH@g6u{nOV*n{(#TEcYu36zM*O6!~11T zdQ7bBg@Fw%HZLPgD>;q5Aq2 znXUyDnZ2#o2GhxFgWVn128HWQzM21f-v{_#SNbCRIzpMB6MG(i7umE2*_77$IWPUj z@t*lDCZ~FEBzzux5A7P8iI~MW`NBsTTQ03%>WuGrV2q7}*3kwB1wT8JyzS9Z`JkY; zrUZ09PPJ5P^CBNncOeNaEZLMF*<|*sv5|Q1eeR1!MlJS7)UVHDoqWD z+s9d^e{T&x)tgogzXy#ikzeiBn>P6l{ASw{`NmFs(6J@-jN00PPDmY)9g)}cR?6-t zbwK){EQ(Cn^0ZYDX*}%w$2|PNmQK?x#>bXwny-BV~yg# z%*T3MK5E4P2)5doK(^c06yO&)TY;kDu zIcRZzk{D`eQFz}EUCy+Irb|BRnLiR5(D=Q0U+?stHCE;uV~qP1H;Sw&M%E;ssK``t z?l^1l2a<~d447o20yVOwim=h$;wjLi>^{omUB z0osu5CjX~v^S38~*ZsiBYr9#4`?uW~muxpf50-e+2j*DcGW=asr&kY|AbEg|3h_lKK@-7$)3v2$M4$4 zc{X!=nU1x{v<9EaMe1sV{_4q3T^9((H=wIGqN^Lx)zA1cZQ&uo_UC!0hkB*ezUChC zSZ$pGp4i~r6yBt0J6 zW=O0uc%VKUJQyf#+U^@xJzl<{+u5U8Oe|C#dkTKLmYHk~<$_6m#2Z7I*N-1=P&?*b zo|E2+(TDb8^q!vAUO?aPwoRA)j$_l{FBystWPcqz%X=*9N5-GmStw;q^Cx1{z^Czd z;N^G0G4?A-eh8wehwtyuwkuiWJ9K>vvqqC1a$QX@R0 z55k2f*e5}!uVWi3Z2Kh5I1ez+_ZTPk2C=H_L9;f*_Ugd)>csZy!Y0~VcXcq`cy+M* znXCKklLp5=sd4NRcu)CK$@)I~#8TWX>*=w?wuweYK^N%4EsD+a$yR_yygFluGd|G} z_6Kr5&$bnK?mx-p7k*Q~Deq=*0Ic$2{$L7N<=t*<2D?^@@-={A-eOzF`mI1D$@goC zCrNGOKDxK9qqdot-DZtNIbjd-PWuM@%J|G>_xq7ANxuIL@0hxcYs109P$1aJ9E*s_ zQ%+$Kv3Pp_PTqfr_cd?TLXuwhFXnx|f0p;9&sN~ix|25b{9X7xit#HbS8y+O!wmAH z2Yr0}p_)K(b=vV~xxbD5c#*lk1RH+P$F|Qy�}P$iL2Y;F>*zXA*Wls*l^#Gt%~V z)N)qAGmLdJuqvk(1Tw(bDe$~wr>wWEiO9Z^$P{#2uZ(6sb<8IYth4MCzGt)_4-BQ- zV!$W%B3ED;Lr%ni5%JkZrX0h*?Opdi4^5DFZuD67N@oph*RzO2tNTQ&twkr;E{_xM zE1fM`HMYxGY?m@@mvU^E$=EJauwABNyG(;tr$ehVpjB+_y#Z|La%}0z*V?uVbZTrD z=+xLQ%ws<^`nL*StgmC;B$zzK)i8$@!|oMc3hU82ad6Ke6%<01U)~~Y42G5mA0NAQOTZ0CBDr{?Bh!GK_xXXD>Ln^DLba( zFPT;++cH57Am-`ysY6k8QwjM@6q6!sz+h{K)w6@C~%$ zvwZ?vw7*>GcYP7r@IAvB<5Biva^d@dgR>Oy&HFFQ#OuW07Tw4(UVKf&|A zb=pd8xE@<$aIlTJ=i{enWB&QJpJI!fb18TPynYJ4fA&%I^4cqn{=dV~|Nj%Ut<=`< z;k~w<&;ao!&&2G0+ICjJFGC|WHI{4ua^cbY?_$&MLHBb%g{&|(0J5Uj2B@Wean-oU zg_HWR0f1wc4Z!yg*~>qQJjsP;tpm>(@Qfi>V!$khY>`|#mJavX0}ay7&@K}9nXP|=R(KxpyLJ5@j~c$5p-My9WR59!}IW8%)@^% z&$a=eVPgYqM;6I{!94au&#nzH5?axmy!3IM)3@)($PDIV#jZ2+vGu4u_9y=pTFaS_ z)>tQ7Q%TRiu?jubK${z&*NyN|BXZ~&Y?<(5th*{Qs~x?LE8hGKWc`=~|GE182lVql ztl!uFf4P2te@{R9-6}bye&3{X84dmVBYRn63{<~Q6W&gu-)|RwW`DZ%dtE>9|NN(b z|DjeVUyZoPPfCaP?TOuo4au5RwP;i8uoLUCx3QV!pHRIzJ1=uk)Xqi4U#Yr0*qqvL zz5OC=Q`R7fb=c{wnQHNAx8vJ5d0qfH0cEqv2?#{nHumKOC^s!cZdD*g-WB@~~zWlL< zZd>ixCyl#`yg7~69lPdc$l+ig&X>bgNt#4rH>{= zmXzVoWNw*@#uD|_k z$;i5uz^9P0lrY~?-XFpHqeGcX@u>|&9&QA8rXNqd#0|9hY2=}O{#lb9(A@) z)8wn?LpOP>=|$7pd)NT&ed@C=X=9nrx||MOlmX+J&=-AbAL9AH0*~pyV+Qb;2`tJ) zm(E$2s#jUgJCpe*t|2u=SG!iF*0wI4*tMH{#DC^B)lvIGzoo`9C+4Gl>RAEDuQWD$ z-P8G-eq?1KV=G~drO*TT8l8i${?0!;)qe7{e(;s3{dD;H1HMFWyqV&j?jimm0j$Cy z;$$SDM)#X*ZQ}-3`E7$n4IQ%w#TtzSeJydcfhoU-$jP&xA#+3Elp$oy{2cCYD4lHEQ zxcu8ij9D(e9_t~Gm-$tW%ZB-T#1@=ve&6==)8(1p1;oRDQku=b;w^7%?#z*P48P)Y zmHS_znuoD*k*BD)_<3Mz_)T;J?=1xfiV^-I&$&2X1?-WD!4mXe92qr}x;Cn@uG%e% z$!{gbO?`y9PNF7bN1(vOn*WmaJFKEdI%$_{eFtz?49_@XhZYfkS4W)dHI{GZ1=L*G z8z|m6=%Ys-x!PA$-wB_0!RLFqJ7FBS6^ySsM|lGU=_Ghi-;!JH#15&=cJz=pKAL^&pzI~~uN-{aK9M-z zTi^%9xBrRjCg!F1wr%{E<;1lQ_28+YA9{$Ic%Z&`KohHnEK{CmavCzNk@|y^(NVxE zj=a)*T|6u;wDAxX&Kx{!0zSmIVB`DKckwxFV8nOo=03@smB%n18Mx|KkM8!b`_-m-7Fa|sf%^_1;h}W5U1$jB}u-==%dv&}Q;JxIPe>`0N#{R>LoOt93 zMWN>MyC2_Ob=|LYubMrN`4h&39w;C3_-=iFk~YR)PQK4B-@O%l*7*@x{e-MTE7=2a z`zas%`0l{t&mAtm=Z(YVkJ|mLWc=f?u_o+$Z1*eso<3Z8&z}w_{-u_U~JbqY^>>%W4-#fF%a}`ZE@%^2Cc`)Ke0N; zA%9oAkigzdO0Pk~f!}z~#M_jLn3;!q_xDp-kJNP_x=r{1Ec& z&=UCNtHcfL;jA(rpIvwu8h|!zx+pZXqdj)ffN16zu&8Am=-=cFsX%6q!XXS%(}&Sm2H2VT1(^!ARnHM{p%h1KpmS{vwH zJ^vc<)n8>jwSBNH=XGB`R_$%J!DF!*)VqN<#?P7>Nxl84NoH65i>HLW5VLyF7b@YIz3rpd232mMV{!5FgCEHUJt%V*| zLJu!-Hj1AZkV@o2Vm5Q1V`bpM_12Nn$jf=~ApTibE)>544?+WB-krs}*yJy%-kE*Y zn(Af91}tl;VO)Andu3*yyXVZP_OjwzMYEjc-I^Z^u^)UTx!YF}6Hoj-_36l)LoTbf zkNSI++MBDbVUb7AW{$M=6l=BPQ#khFI+1*l;2drzF~Qu zufB>JlvOR(TRw6I^`7E`0{AHt>o}XHfipfgemOc}uoay+(ifd{j$g4yBZ>FgMMu(FYM<6`+4v?&n||C zm%zW*dw*ZR?+dNWrlE{+%ize%e(7Z4hBHK=$){c(7;eV&;$|pg;f(X1VbNF}xLNDq zCY(25+?+Q++_VyFF)-ZR0B*hnZsr=?Ok%A*k+nL0!#>tZoEW ze+R7QWzq4Mys)aui=?PWIwuEKTZf;>^R=R@qREl*qAL&24;~<_R`tRPzZqu)_w)>j zx;4@a&({S8Ojqj$2&>Ny7*^K-tLuT)9C+OVUN&82@qE%B`3bO!!?V&`UY)fXeoPVj zt9|T^-twUY3u|&^8m@&NI@vPxJp8`ZkV?OdulzT=R_H&2MT!K0k$z zZzlRix}p%B*@Mnh9`~vA@Oy`4`_#N3IVV~BJLT|F`&VlUuTHoU9B7>t=h={GA3Y%% z>HY5N60Z$6g7<7a5_&;8S$gD6#Sj)k>#iSyI^C(!(EV6@Ek*6=pw^)Wznf#rQny>a zq&Dn$lLHZ`2yS+2Pg?wGeR`;_z}Q#OMcQvI%Gz&DB#VOavDh1(`S($6-?^^s=dy$WOORSf=!q{WTwVs~g(T|3CXdM}+ zxSk~PdC9HFSz@J*cz<8V?@t*0x669y+(-pBs4HI+<#~~7TEN4?)9b(OlaL!c*V8kW zF`UEyXQC$F8Qan3g+jv%SE2uAqyOUQzdh(b_VUnw%7^aLe{YNdH?(y+{r9yswv1K# z(t#7vfvUs2+UUSMqXXR-;?#z(aJJS$&epm$I(eKGz2JQKVT?a28>LqVCJQ3}{(182 z>052aMq}@dWltq}bud*edOqm@WsV_gNVuU%verBVSy5B2g8H z9N9iFn0~DnrelETS^S?Jb>qeiOj`>E4Ac7u2-8uY3Z{P#Om7CJw-}gC9ODD7IWR3R zh}8B2Q^7C+Z!729-g6nlnyj$to{Q~07uhdvytd%ph_73Go#1mfaSo;)Jh*t7dchU= zI6J^m#{#Q)2YbW9O>u;}?>_=RGrC!lOu5f(mNk0Es z@fhIW$U|}mS^|q$PujMFeox-dx|X(5E8tUf$kXRfjI`CT-oaPVhFuXuUrYW--hAuf zqYaXMvg`A)>z~H1*O|xK8_<2%9=^j_56G^c>Dcu={{ZWlw_n4qH}~RwpG?ls<*!MFX`(D4xMpm6yuU#KGbhsfk6`9WOre3t{*V)*mj$LosEVk`>Z1J!+&~F-VJHPeSRLEYx@XiAr%=7om zv&SkjvGwkIy6U|S#>^DXaOwJC2A7sl8OwP_nCd@-7{2j8uLN4?pXB+b( zE2weXD`&xp@N|MaKt|j}Jiqo}PbCjJ>$2s+cFm#hB=6q$XPy6U*i`9=VSu#Mnd56Ai zx;Ym;QWia4USwiATwjOLC*h)j=o4Z9JH&MwLMiL6so8*Ve> zT2{_EtD6_0pKU!od0ekf*<#kJjfIgkXAJbx&m8CnUxkN$c3HLP6X@qZOiqTOAJflj zHHQq_Rg_?TIy~@9mB} z2@J@_Ff?)70BPbQ;ur=(6Zl%7iJOooUxpqQ7xY&Hc&3msme6KZDEQ$=eYN3w z*9(EO%zELPKeAp3jLljv#Fhmz@#;V(u{@AzTS5HQ{lp=b`Jf$N#xn6Mg^_ujZyjF| zHZcRp&RuR@mel>krn$D1>@U9mm@%gczyCrWvF5j9&#c~38d2@)6tU53kiGJ)%9kr2 zpnE2rbgtG+#&65|!aO@Jl-Y)j^C0i6;vKEs6ibHB82@1b>$v=;zyE+7gbwIyGqjD) zN+wxbLGzP_STE)AFaMn08K<^c56ORaoV-ZIpB-(MEZ1ns$NoC^FT!^A6$;dH$6U^#TlbH~GH*yE{luC4Yp zw!oi>FZ6RJQ0Rqp@(d$OuVcM)J?ot(kpmlj?s{jiyWTN;vwjrxM!U{>=cKaqVux?k zzScVzvEF%f-*?}B^kw<{25Y^u>uzM}-SEwE#&q}e5V5RhME+qWSH}AF*`esgS6IVAP`&=|JQh{%!ckRP_zy7y@!Fq}d>(*g5tOLXCYuLWVCIf5oB#qvx8a`mXb?E?M z{WkFjUK!Poe|4Aqt5t$EV={TjjP>@hz?!j2he>})UQHOxImXx=tTSzS#d9-&wZ?wD zb)+-DQO^9FYn^@V*~UCY?;E&6^YM*-+fRRWF)`8H<1D@SGyaU_P7Hsj59XkoV)S4tE?X$Nsh^i zTWo>uv|n>PFv^}MW4m4X){OnD%C`=WirhJwYvWlaUix_QEIW?6{A})9(c@KTn|SKP zHsUN7NLC@g%J~i;~6^)`|Z-BlPlOa${xqr=vs|Kuyp4e=eY#Wb+B$c z9vI=k(76(CD?062;m^c)ZWF%y5_oYie)#Sx_;i^+Q^MQ_1B32rzAtxpw{=7?y>moR zYqK7%$7!c}n&vqoa?cE|^s_w7HK{A}D<8>yu2my>&Wfg2RA$l*v;}xb!9IO6x+=64}t^brY%)03D5Zz!!rVT zEW4(swmFP{uIe}BPeQXLw^=`Ym9^I$T-oorEWvxux_p=7pIHxI8bVLWUnxCufW3a< zL(iSi=9uB8&G)}z{cz&B)K@ufHM3XQe1qCPn|&tPGj&#G<`}Jc$pxgQMkD*&bYjVl?5D5PUOn@Pe^A@}lS1m+(`RU$)m$;rYEBl`yb#`G1qCZN|GKTD zB6B6Wb2sC=axrt~dyM!6$&Z&Ax9rlL{AS_=?EW)V-H+{VeD1l!$v^(_aQGf)uODBS z+wY1K`VF15-NR_ZsGq9k)s?_eF#8c_<>cy0_8xaxUq2(V()eEOc!UJHa__&QE0H1LVU^J< z$5cdTk3)8ln{vlkWKCUZq-q3La#@y@ThS!>C#eJMBfm%f+6VYrTGs_Td&pk{7ki;& zom1EiKK22_{fzklH6gSoEgw+Q*k*-IR}u5l@n$$^>%F3;PVn~soM+SjSYWb`vHa?9 zDxzDitc<>RBV(x>ify4W48^wK8Yqq2HxIjjyovZb@cg^@%Jwj>068%o6&ce$eXHFr z#$?Vk1jf}LpC5Uaeb?`h7uyeiAFMh!2LAru3!mI-{qT0>D8P@UjOWYn`zmCIzCUT> zb4%|!6g)~#JOv(w_dUcv7+)LDwlj|%n?jl2|BO17)UTg$A$n)Um6=yQ8WzD9N!;zQ zNHwyu2)&^F4YjX#I@Ve6by*X#3Ho$=0D-Z_KX^Rp=qQTpR6c&mMoK{Y~`m zJLm@Vd3w8_*lTR7R)1y|aaF6)=cygCXTJYJ+fIKbv7P7WbFmM3L_&cr&xjx=9PdZ6YsKa()wznm3h)L&VN=t z37x;~nQQW0=D#tNnaVt0{m7p4LwsJ!=ZcS*^An6?XFqf1y(I5Fra3=xiaGDJ=lrHS zXTIk#=be1_j>G8wmWh!RvUf23-;OW04f_5C@k5jF)4j&op06#wn7Xb7Y4rYl#ilI5 z=Ndm?Wxg$&HjR!tV8_XgXYN`Ts*c-eKk+2AoeyVzPeB^fOHy>JP{V+A$x{STS zmxS*>($918a{3vPu0YS9hu?RNeDBEacJRI$eB4TZ!mH~OH2Qy{trtWatB56)OnLqL z=pM;@Xknes&~#)zdTYI9ofG*6v0iG&U3;q!(Fgw{4Sn#vnKq1nnl=ik@z#!9EI7xe zE6K74v4b?OmM>VDukfBezp}~hzlnEm=AN0;lJRCvvSs4Ot<01G&fzDXIo#II94eTD zbi2RS*gRWYn`a+m$M}Nhhna_UaGt`;SKQN!ina_UB=Tgh$ z$LaH%PulZIP_N-zP8$b~Q>y{lcL4r9;PA=;=6Zq-3J!5n@vJPGM z1Ujez9n|`0ux%rL2I)9g2VtX0o=!pkR$qEf2ttF9fE|3fy9QnsZ_VwPmA#|ngbLF{zToj6a z2<*-Za28i#D06N}C^M{7`xV2QhK)ey=sH@mpX*rs*t(Wc%R$$2_O^7LtTTwYPGJqB z>(mf6wzy71p6fat`03hO5gfB3)cpP)D|+M|U-ZzM{-_%lo|t1b--vDgxnErnIW)z} z9D+v=O@+UztmatYENq0cv1QN2PLMCB5Sd+!ye?@lB!>i;~>OI)09y)>k@BDj5sb?+v{r@ljuK5)yjC0YmBcnp--cnp^qJnmlz9v4Ah zRp446UU2c5#=lejyT6HCgdL?^)2}KA_??jKye)1{ zrF6!o%Wc}z=cih1+I#1FefGf#INvqd;QX(**!D-9_mEK|ZQNIa`-MLz)dANr|*P!P%-8x+cXG89>T2KYY{+@B5J z&jsfb!1p9@eIa-t@=NRyL7Wh0He4g9%+ko}MTGqv0d8he}yTXQ%K2M0*FnZj9k?vui+j}66{c{K% zcF9sJa!5L?KsGvZfcc5P4{VhlD@}iGq%~h>0F7Y2#b?wu{~1~Q!=;~#%=C{mGXFhz zQF`tmdhTWFk}u)8dx6V+yfd%VdMOqd!MKMvUH#ACbvycCE&32#x9mAe-uQ=GW82XS zYpJ6FZlqhsEB5~2#U`FH$!{rs`_Z}V)$yL*XI;cTL1CnbI4X~?v{zoczS3TKjj!~2 zV4&EuHrmQ(t&&As^r5wJ9{u~Z-r#$Mo`=>?=SM9gw*4vK;l`!@oX_64)Tw)kOMQ22NPGZk+_Pdw3hrpHimsZtMS26J7smPFY?V{ z=p69!)Ft-#du`_P?Xf=qI?@3R**qV%;e|V_X zuBRNGrW}aAddluue~SB5EUn~3Te&~dHrvXy&sAP5{=YfkY@YIi3evA&Gu!9X*fCWp z_D5DT-up|Tjd{@B9QO5iza2W^jFcu~uru*0^vzsLZN2sTlG@#!cTT!ou@$nfwPw~i z;mL*M@sP*z7-y?oa51qE=#zpwmtNk!$QL9Bsj25#>)xxOrJkQ#_x>Il>sfEz3ryzs zY_jfsifbM1^!(Dgw}Q`$EbGu?JaZNO72NsN%hd-l>_3o<`m3J%$hx1RP#683%!UywT=bc=5bOMhuUqRY0IcU!9DS)4fm=pdLcuz3-yay%; z?50z~1^FSk=>30#K6c#gd#i(3o}R(hy-~)nqucpj#Mp_KamU)hSl2Sv9%rmSb;jBO z?mB>LC%EfktTTOuCKk>tFM+DAu%nRguO?_^^sU>v^(hW7xw{>F1{ zKjRq)TwXrKcuqH#Yn`$5M^odS@w9;_>C{*+kNMJmc+5*jn>=F>JmSEABJf{>Pb>e< ziI?l$6!>Z5Od{n`&x97lBg%Dqq}6}%*QN42w(VXnwRSN@5Ylm~qQV-h{|M-%5cLnBzqvc+Ga0ktS!difefoQ4aAI00^R=DzyZ1i5`S68zP5R9w z=5Z}N^ZGC=D4sTFWHV;*k?8NIidW8|hnxDr^OtlF94}oVUwL8EVsrI3-Nse(baj_> zRr9@ly6P6EZis%DO`x0%d0;!+SoVi-JF%9W7#+JoK-&7c}G57OErqI+m+9l2#jp% z#7;q9n|I5#cQ{%(XW4z0^!Gl`C3x=t@V?=}fL${}d^y^{D9|)22S&Yljf_|Dy2k^r z-n>TI-HL1xtn}yRCrA6qZxpN^Mql`WRaNYPw*z-peOQTqOR#yE_{s$E^8ugL{AS&G z`-ib|i<+0{Z2A}OlHev$Vr9aj3F1pW?l^4YbVP`KR@Mvn3F15xXH1G~ujIJ|&%MWU zF`mJmJEY(In^yi*dEhmCPXX6EHm&~YcJzHW>-9POH~K%^YVoge&4Dl3S3-Wdd2T)< zyH5P>#Lzl9l)Z5=z286W`*}_O@*UA|py_$8UfRvYOW{fI^8bJrL%&YG;~$3ilkZ3@ zO&ps%!9IGDc!m`53~l(z+lepfz%SlOED2{KWcJSXWdKH|doJ~c=J_)F8wUjsyy$NR z^Tfdiu-7<4t0zCIys6|=?AvMBx!@!P4wKl8DQwW>WWG-kEm8lUeB|V2{-2l?ZQF1q zaZh1$-bHdm5occ%M~w_ab{%QVt~LHHun<2HXS=>CbWtR^fcBC_*lb)IvE3GNec~&$ zc^hpm;w+89v^RvdhengF*s?419C=lY`xvwk4nRAF*ybhJ=3`eiFIFthi_p+kXl)zM zZfDG`*pWMscRR5)-b6ONjqH8L%ItmD%A~jXn!C6An)d|?gGZCZyVqsse_jMnX}pRn zNj^_|RaXWB`PLU~zRrtGB+gCzY}PvBXJq^l+R2g!P8;#(sY}8-)~xx*GDe7;f6`!`M+4pU$*~kQHo=WcZ z(YEt_I(^Lm9y1v~Iwv(7c+8O=10LW=F`r!vfd{ZpS6P|vW%#_Rt<3(aK=44)YL@J{ z?d#C;bjCIVIfU+!PD)`fwxR!|V@#gG0(9I${6E;~=_>p`%kckHWHJvo&5QVD+5tybp7LUK~TBe}j=aGmYYQV+3Yi$_~8 z?ZWmLw)C_3mWQQ%$n=BTLmA5t%<;_($2SweXO)M~Dj%O!0Y0ljd{#vh@b63_{{F&H zrUakWV0>0X@L3JTXH|;N3VFraczDyXypJ1l`=9LTUw#6u%~dltHpSl@pXzTum>>jObY~OTfp8)}mnIncC(AV@@=3W!!Eq zjPZSZ0G^NAb336fE;N{)vZ}dz>Z;~_t<=V4zTPv?FCx!leis(2>37McY%?~@C0Y%?^v&C1wqY2RhIIorv!1>N@QSlW8Y z)7Db;wcKvUedbwy@2?-NA={Qi%Ul=3V+QsK?Y#^$b(;StX=xd>)VU2m>So3V9k4f{ zeUUBC#YMYA%o(XJt{(!|-e+ac3NDET@V~)o4wVwKhi<$Y~@$kfc|%) zyYM3=8ta;CrMo_jK7Rr{G=PJuLDVoE965p>_3EAPIWS4iMR#xYp^LN6emVMWN4GJD z7E0-F=cA_Tqc`Ju{x^XrM_ejrb>_n*m*JRya(F)?7Z04jX&K){fxG1drg~I zZr7Blk}dZH@|$*al`TRn@UGR^*jZ~zUjnO-C!&uVL;Mb()}T9hUgL-}Cet@~=B#+^(7g20G2|CLAIkjN>05s40>!4~ zzwfxP!91P5)W=lb#n1It8-2^}y@0(6-GAvE zfBn(M(kvSI(7|y}4S9Jr)Mkfoq#yoS=js+abp=`(!w&vGfEJGvzvTUGC->iEe2V*- zbx~v`eob;9dt;Kj{{>xC&pfap5>>04lgm~&$F?zUHoA#jbTU>f@_ASx(<}HjKU3hDB*eokL;!D2hsGI#! zV?S-6PuWj(1(8ioU4V#SwgH;~xjGzO??c!7(e(jzeO{tAn2)Y^<)UP27j(WC8lNM- z`^y(bE*ez3TW9|C#T*T9dZ-^6d4UU4=}?c1Jcx`uC>e=9H8K*~{O`y}#h+_0<164n zb8H#K8nWf$$a&PT%e6rYJYz{x3nNMYN%~Jt@ng5~9T}a3Hj+Kqde94UInzO0T~fS5 z9Hr`McM)f)n%a9uu$DLgUYJwz18DnrpWc^Ub1GeL+a38$-@M;m^C(v9UOpd0-siE` zHVk>MeNM^zIQEX#l7mIu6(>QfG=Azk@ZS^0kB@kxEHa; zsbY<@j5SU*b6L(B=RW3fKXX{Y8s|7Nu?LwL7;MW#_A$LO@p4z@)!8yJwv6%Ir?n;f zQ1}P-1FO;@wY!f7tqr2ZuS1LLW!E=gf9A-*^PIL0A_EUKu&4NWEAuM688S6_vF8<^49thel;=@`{V^DuWrz)zaDlPE+mKBfzk!XBnR>qF zg}j%jl|+0_Y<4JPk;`6TazN~wNwF|$Xl|NnWO#n-qq!~Cvu8$p^0|3v?#S~4qq(nV7|o3uFwM<{c5Z}rzGP@_YRCuO<0$*Jge@PRzRV{3h~)-FJ#l_RhE~BCk2`EFMe_0kpAL zdEGU|y)tNm7w2=3F>{Sgx88b*I#R-USaQaW=e~b{INwKpl8tlf$xtV_r)Fq0wj7+_ z=it22t|>DRIdiOVU^xHrHwP+bt^?=SgYz3sE@uLPNS?v@B1g{H`b2UjJ?+0EXPjDw zj+{wP`@d`#+DMeo4ra-&Lf~71el11M)p=^ZB-wW)~N;l39O3zoE!5W+26IHDJu}95WQRUfZ zN&EqRmwmMN1IC7)HL-NiY!`a`7pym5qvpp^=Z5tLn&^kPte({WG8oMFQ7>%Ez9zC-T zJ@W+iL<2CIhCMMIdm=f@#!tYu8)8)s?@?nZhRqx=B`1P2$6s-C159Zv9TkN5C(Q^Tz)5IK+YGIHrbFz!qO+m4mZozuYCbYHXJ z@4|8^ang33={$T)c_t>-@P`Bc+;>wscoV)%d-!aOAB|iM@B79!mUjXX@sA3T=tsqQg{BWA=CIky77T@FGr3thCA^;9|c~yZT`aB zCU858=iKpC2sTytD05)*6Yo2F=&O}}h$R~cY~=3}Ombl~WrTH^Ei1F}@O`JRz2HHz zQt=V;eeQ*46#tyYR#$vRtE*TNgc( z>F9vZ--gfML55a2IxcXgS$mzd-SD}{X`9|n?yB0B&Zwi!5#db7=y2vH;N&l|UXop1 z!Jfz*)@PgX#Xd>y{3h&qi(CuiKLQq7>ojst`4>Ou_vR7EH`;=Q;XS*KmGVvEZ#puy zu3#WGtdXg&vS^p_HPVSrv5!Jy&0Lhfc28SZklpQuMKOs-IR;uvk2Xyaq4sS!jSO6W#$R_i|Y=(Dx(V7;Y! z1?#P=$2hed^Lq7J>RI#|a5$YlyQLTQC)RSb_1S>dtOoYW1_=B70mGg(>o(S`tv4Fj zPq`#({ov@cyvV)4Ub0v`Vf!aoyLx#+KC}Vwf{T|*be$Iu>G1Wz&F}Sm!SH*I3}1zA zmJCmCrVset%~!L}QWWnOH+?G~9-jh_PtA!DSOJgMz~g~I!8!7~An(QFY4Lb#vCZS; z)0up7ay^w#o;9!Vz~<$hi|S+;*+KhR?ZV^fX*Q25Pd%-+b9nq#7_{2wk6eJ?Vy16! zdM|suN6FJX0zZ3oQP6?Oz8YeS>nbyQ&^r~xhw0qGG;0){rMeQ|>iET%m>hs_{gql= z)yS#kwokuBwV76+>+eU`L&K?(FnT83D{DGyLdaG2a__@N=AGosa8TzS97VqzA_Y(+1kXT0s|z5d#koXXWzk3h3VSJTE(>R{ylZn^#358PJxGlPhaTQ%60hjWmJ z*C7v|MILq$YxW2>=(VG)$O!teX|4pBIJl`!xx~bbrFiC>XV^0FWMj1V_=x9p;N-0- zycfH>YpWwWvAeIMmcjM-oNmD9^e1q)-8VG-3UsC#0C9Z73Gm_go(vyGT+$-Kk$RCZ~{0xQ#rA4m4-k!7d0PpR+3v!To_UVm=uXk(vV^F7&yXJy-` z_fhlWer(beflOBe{gefQ9qX_^>jN2b2!e?x(2whE9niKG8?27n7=b}fZ42j$58l+a zz<-}m-7tKTt`GJj&N1#?8*QMSjYgO3vhKbl!dV6;XI=3ViPpTxjhoRWtiMjDOLh#0 z9(YdsUGCnK^0?yfVkd%wwxq4cPgQpg|EHnBKL?;e+B%&c{|50fqCvHSVUWH zykK&~Eu53QFxol!@1y5Ww4&w1>>Agq@9EN3B3uyp%V+S@(YM-+v5tweHcE~~R@5Pf z)*^@Mv3b^o!3pQ0Hn11y?7=qTS5h4WBimRL%eVBme{uIhWIH@(^v&{cCjBBdb={CGT3+n@-jnoY(hbn_2L4xo z1I8^`^CNO$(~H8?HsPQ9x~KW?W39It*}e~%`y4W&8@`g9F0+vHmB@+~7J=GFQ2iUpOgB;@Qb$AJMfm8mHHaBG6!wMJ2%Kc<=ax{jU}xz^>mKR$ z4X)pg-XVr-zS`;r7n5jrku@|uhj`NKEnoffzLK3W=1Q(XI&h6Of38(hzt1;hC-bMB zA*LO@TWXcoOJ**nEyWdSFWuH-rN~cY5pa6dGe+qpljp>{jpPk?Gu}nOv75bh<%xCE zhGH1(ag{Y)1g@7k-{qSYjN;5M&3tQo{$99f4Wf6V^rhcg#-S(qE_*r-y~Ypq*gWpw zAz<_PE>k1W;qhA8;y=DH5-g4frpPT+s|vv|F)K10r4$NkG~URV3#_1xN4@cI_jwz>{IB75*|YFq7}xrkiK zB9mLGx>gr`!AET?yRH>Hzux#nS_>nwb8Mbh+k&atM+e4VlwHxvdOJBfi_h{Ln(v+p zZO!p#u7jQ)gPz1Yi-;u(Uq*~O*I!<0&9C

    g)M!8Na0ig*&HwRR2f;w5C{wao7kQ z%ds2l@IA0!r2ROTkDfSYWVDUHMtJoZ{;`MR*gTJVf7{Ic=Z$ZR`j39ww-v}|EnwHc zk4FcF+XW78-FhS^)Kr@eerK>Y1xB68;(pg;mDzh)2ER)Nh~J)nu<@(*h2MVmv$n|B zRW1Cwb}V+Wv174kWgma`atq&=y|?AabsNV#x6Hw@+Sk5$JFx5kmbP6#EDOJnqF0QZ zodX|EN1mYr64)_D4!or3mvc*9Uwii!jGNLUU;eoJHL*#{94xX^}uUvpt-9o z(7d;9a8SA3#{LcrcI@xLX57--eMP_+oPC^=4;2hF(Wg>k1iTWal_*{xYAnQ*>DZ zU3NqJ5BhA{jIqz!Q4MY4@5!aj?o2IeaFH$2PJDpGgRt_cZ$-hBp7zH!#_AvqPJwrAx+T@XI*uI$$T#rF=@gvWMqh z9&5`ULzBR;0~p%ArR0e{eLf|vN(S0{X4s~ZyU5&|y!7Mft;Nz? zf2Q_4Ya`jDuHU}tmjjb+;~e@?EL2a;XZSxi8an`Azvrxz8tvNi1EHDE4v=Pc63cN4 zzrB%VC1!8l-EY6OKR<^pzXFAk>CnlkY<$Uv&bJ@L&-7q(=VtKxyuVp;!}V(@j-p?G zlOs3c*b(1>&h6adAx-!5Suv}3n5)0(K65Q;x|i!>{^bj>u)$;_;vmH@J?aG8@G^&H z6Wc0@39;=y`2t*fQZ{BBynpjQ@d03arm#B|*Vkgs9;EgZ^pM6j?Uw&kx)^)+2z8Xa z>$mYPUmSohlE?wxF>Cl7+xRDpS^Oj0_-GYt_?+KM-FA}Dag9Io`Y#wK^jT~6bZz?l z)rTIr=e4OmoM>z+FKq?}NShA~wPjmx91byqvF*@it3#XR_PS{xwE3VlFnKm{z_h77 zx&`df-JG?jlr6*ZBkRxZlVL`70behUe&fJCjZf%g`qcHEnL33Y8TK@_43Z7Vunowt zjp)@z^y)L{)p_XE1?bhPA;IJ2Lu^@Q`dtK{CdrSuGPlpMcAr}7wDVbU+S)sejb?qz zT3Kr{x0b&4g3Fw91Gx9V?>Prd_5EY?S9XbY$alO)&t`s4EyjnQefDtY=06_pe60I0 z&!op6<2TMd{N>}1?f&K6ztX+xm6;yuLg8=1XYQS6e{;9z>u>rSctP(>QS2RZCdjqS z6PqXh&Ub~+LhPFo>VqJM%>H8CrN)0#{E(0HTBc|FZ>AIy>r|LYOe@TE&HiFAf$iKe zyD-!K|I+q0@KIHF{{Nj!o*-bLU{SFq5FSOv78OTqnJ_%4sJJUzwX_8c6>RKU*Y;;! zyA2Q&6R$4;U2_+l3aaP1!DBTG7(3C~a+Pe`Ow$Odud2P@P7b-}`g!xsy9X zfY|Pz*NfN9%-nnKIp6bremapNa=nYvZBvVg@mzyG=;|-slY;aRJ>T`;z>np(=?Y%p z`fp|j)14I$n)u*>$!-iTJ_%nY{^Wymiqi5MFCBvHMusoLulM4|0^6{qx6KZahsz!) zekI#|r|l=<#vV$VW_9B~n?Qbga6%TX&SCxHlkqvT(0M0Bm#XgrJvkmI=6-l_d_pDP zmo@#Un7V)U`fYLjOkSMgbDT?xZ^^Y=&B6}$<&or8M|{pbU_I^6Z5MY!j<`bj()%8#jd|;H0Q~PE|#i3Rq^=XfN16U zlItI_>$2Bc_u9Rkej$->G{pIg*RQu1owBKFKYjFiv=6m;qusP>qG-u!FoC5LU%>MKHF8W9cx5aZ5JDp*2 zTk#Po9`F=>rO?}id-nnZ;p)Z#CMUE9S8YF`C)G~~K6WW{_4LGmCqjQ4|&*5Ifb6U!6zwh!h^PCCO4bS-}yYC*)5x>#i_l4(F4|1+t-iy3> z~oKgHP(8oMiL#Ccjz3MH!tXg9|)kaDg#Qk9)>Eqx^Zpl|M(|KaxLx4G*|;5OSxs z#Nw}e_4JP!etfte{o?`tzcZ8A#LV<3{J%ZK_cca0+3R$SHM)uCGfgn|ny324C;EA~ z5+;={>(ii!(yMN#0)5FYHeGbJ_kxxfQg!4Fu z2U@xfn&Nx)bEOAK^o@UW<UJ; zQd}iMTxS7(cj9wfyc)?*{^o77w$qK>pSn`%&>Ei}D_3R79*a|roP(UJ?@+f_=iE3r zx=VF?KK}EUhQ8s{mw=_#+!Yz-;#94@wz${WJLE5t!)S0SIjqn6&ez`S8~?e`;?!wk zsy)1i`5E5B{0#45erMEox&LAHovpaoU00R8Hn`XB`2{_)XKVlF_zV4;u^sB1qlMAf zEPg9R{>W&Z@iNb1;PWmd{cfh_+_l~!@ zocjCjvCdT;g+d0wNVudCzQ9aiFtAKFP;+NtO}?QHJq8|~b*#O23lr5)yHXovY3+F^cY zq#f@6q0VQpu2GJF6+fNC!Px{jD_@Lvp1?JBuMDmY0oTYgI4!PO zn!m}9Gajy4Je=wO&BHbNWhj?ys{31=u}dwkVVBl98w#T%jGowoYipnE8=vm);aZFB z?H{zb7ICk!-Qe0Di)&RM?hBvZE5F20AFgdbQ~e)#N2jw9^qg{Ej9-HJxVUz%#kCJ- zYy{b*<;5Al#9lWher|NQaLvN5t7@E!YYq0Abg$iGeYh3@*JkyCYdmXkjb~l`aNH@l zW_Yv5lgGNawix;U*XoD8$>|+$8y@BEzx7KPIUTzux=?++eR6teANT)pYUT{D3EKUS z*lVqOjcsQC$VaIH&z|>HYp*TtHC7KUt@Cugp?$`s zKp$~w{atLk?n&pZIcM*wrw`#l@t(R=7CXeI&m}-tFs0j(xx8*c{m38;0bMSc;zm@fZ&-VTrKfFDB zrpKJljQfiJw=8@8Q@U@w zvGa3%#AoJXaDjOm9>hF_3!{cQjk1Y#HeVJ#bKhLfyog!YdH6im4?`tkJuw+@If2fd0G|`sJqDi{%dCO1%o-T$jQG6I z#piFVb@}OEqtC_g3GY1LxvEUDvSHv6v3qQax{OW1T-%tZY>G!;2Y-ve-)iEg@L%w}noT1;9YEK=|B>ENBz$AP3r^pY|MC zaQEFV|D6U6#Z^yJ3eP`_eeU>i{VcTfYwEa89P!a!Z?r^xwff;`e_!GL4*&gUv8_J7 zzHjnlE8`kk3R+r<*lVplOLq>mbgQRZyJzX1CFW~vtDn5nH(HvvsE_i4`MA3EhpcVo z(v(L_r`T4k=chW;0T`+WQdiL8ZNy${-D~$cpB$Kg9GKXHw=wYDwc|&*xXUvx|33@v zu5)pB(BFW&ft+VQh!5ZhxdWY?<#dF+s>9?%dvV9J#T*ZjWBZnRn@z4v@1XYV=j6#8 zrUvG%$-z+P1oF9RFF7UmY#qE%c?|b_l>D)l0yn3U`}}!H-?aA}YMGHfM4s>CoIRba zrk>_r{Pon}v{QqVdMKFg=qhYJ&|TPkFnFPxFFD%gOOksLAcv)^Ww_1z9B%V^hr79w zRTr2%-mZoV+`Qi81>8qoFF9|W#7lKfK(*ssQDbYr6O$t$^@Y}WuAMgA^5@}hJh`Ea zEB?!58Q*iQDCa)Tc4WL{DfU(tUn_TUgL@5b@T_NJd3?>YyT#vPr7mtf_RYUuC+K2* zuB|V>5%C4q@9I<+xx6%}xiIfY8Tawd#gTOEIJHYQ59TfD=H@q^HTQCD(X(8A{5Wgg z#~B0Ne4d@R7f<>i{5VFQOD(-xOn%F7>_c+HO&^`%$cS2GQ`L-gOQExE0l7#E>6hl| zd`)k?UH_!lV`3gU`+Uwd$GGOK4Dx7d$fZ(W#a7;@vnu1n z$aOArjL%*lKRy4HIiKU2=;}Y|EF5ysp#z;MXX<01i&k%rZ-mp&g3TSdRe-x8_&6m=Ng!A6=xD8Ej%_T_vgI<)}Py-XJjAeH*E(V zN$7bIIS+S|^N>fc0(Tztgf(+f&3r-AN2y2DeL6$ijld9*(*|)KGHcTwEVOWte^fai2FB!n98)bE_bBfp z^FDf0Z^+5}*vwp&=V;?Ip{ikAKwFhQL7%PbK`1(5199HqUy>l-q`~F zn0)jS@;geib39b9`9Soq*N>E2tXi74rUXOc_cvVZ@_WPUt0tYo>n}uBYc5CbotZv* z|IBpRMf9vEhwxY++`Q(yPrSbGlJCAfHE&3DrM~MIesC)}gZjJ+`a5=hI5hS3fa$ey z1RPNuae+D4b38QMpZcy+=w(pTKF&VPr=N!>vm}cow@#NQ(}}E;+&YY`dus~4xRt|< z&A)ko1IBjuICHM&%;a2NvOu)+Zn5!C`+3Qs@AOTFx)a=S?U7PzYYuX+oGUIo zi4{RRC3&`HYml)=&Q!DI(a$|6`$j+g!Abe2RhOZ7NN&xR@L4rm_Za#qH8opZ%&QMErps4~yCT znAFRDgq6qkrBS91!M`7m_HjS{LM@cpk6ODAE%q9;ysV7Z-WV)z7LfboH}_3tj!JqQdB7T~!sXe%4T7^tI%A^s|~={j9?3N)=XDs>tX$ z#@_V#AdTHwxpyKJ7TqSK@0$M%Ou8E{Q4@E%_swZIF!T zyXpLXi^W^9Zr&vwYn^a^wruZO<;B8th^(zm?oLi&2pw>)Y4EP3ap=~`Rp zOg@J*8j}?dglae=j5DO>CSRRNAAa6laT)KU9Y!@Q>Er}mYo~B7v(@*Fp6{arV>8Th>0tiqY&!TLc4(E8 z7af6aIF%X(im~ApA4R7KX7w>Cvao2MI5VA^G?Ut@C#bD@qFHBiCFogvadBWz-hlpl zI2S8@9p`*sKh$X!4lYKXQO|wlOo!S@WJ`*174Mz}{wC?;6X(0G$ViulYVEbfy>?gO z=LJ>?d{y!7#m$Kw#m%u>^U00k|GfN+on&(HjIA`%g&pGA*m*p}vz1J~OO*?| zK|a`>4Q{z{G`Bvipy>_PBVKaW9vP~O*_{{CIVY;67=K$IYh!j#!>Epio81%Ql zlwOoMOR8=N{htHQ^I>W;wqM|^b$x7($x+w4-umQ;`eVRbXUd-7oSXG|gF81;e|Dn6 zi4M(k(r@#d!#~w?bXQ&8dG{H{Z|G(G-~2C*zp9t<|N8@uKYozlGdu&I*hDA2j69zB zBy@lNHv5II)%3Dd|55e-|E1e|LcLE%!n3Bqv#^=&3+P-n>Wp?mA9>J9a*}Ja*5Z4K z4R<&*#M!d~d$YBIUKYXpJ=5NM`0@N6TTN$u0_9eZgIq!Db+zI4B)%>93#gp|50`I;cIJA|8d+y;m_dJ>G z_s4m6jQix9t^!7*fQR5v036yGqru^fIqYYz&ym*iHR|(v)+3!2{>d2rb)9Y9gQ2@P z^0|BdiTc0rUvd!D9=;!|%`^2&uK>3bwfWigOW2C) zzn0j?UcTw1Qx!8qI>)k7ys{+^xsjhG7kBb*$;H%e>X%n>|Go6Pxj&qK6uH=e&m@J< zq}%RI5xHt9_C{xSrq~i29&g8= z)OxGpzQK@kUL{{mT=xOT^pa6tpw=&+kk?bj;E|1|H15GSL!3ZoV;Eb9UI1;kRWdGc zR(yqAr?Kc32Z^_vK7i!!X*`{GbBH~89NYR3F_V?@zjE*C#_D7byPcBGpR?!c190$u z`oB~ZA}9N2$;pq~{pi%*@3FP(RoOjcueSFb>c$t#o|zg?WMVrt#}BiA;jSWcPKiqg z#b&<_Qj^k2O-kqAIRA^Oi|m~x-r;kF%qMyzkJZIqJ_SaRP$d3b`rS#!E(_Wov z?BAU-c8%%XtFgy0_JWhA!ahSQ5qB?6OIzOWXQ8D_&O%F<`)Db{pITgcdTgTlW985j z^y8gPp}q#{Z=f?NbT-AosvAP&#hO0D9knGP(V6;N9aslHtB2OsIBE4Ec98Y+)l>BX z`f3W#5vC8)IzB>di6q92+E{}8Ji2Zj!UpuHnUC0?UsvDKf^y1Hv zrNhwa*DP;ttzX_OIL52-)!u7!hFe^CmNCDj==){NVx2J=e-{SWkeZ1BwUghqW&NC@8KGYaBN8X&= zzDlZ*wfxY|$>cLIX3WZuu=fSq z<9lzzsWS76cFeb>}@y90xazj`zN>Mi)I^;!Pv&G@Uk zUvvG{hoRvQvzPd*@ngte-4B{qKgV;L#uiwAbq>sWgV#aeESRb9+hO^sf$P`PMXvsp z%$DUd?A#BQR+=8i{|Y=}(!X-vlgqQbz45dT=+_5Lqn7@aS|3REG|3VX!+Oi0r2ln8VLC&kuxOv2$ zN9^dpwbTH>rP!TP>x)>O=T`tiSiWAX@Vxs`Ps=L$~6 z=I}RjZ4FkY7wTLP=BhbszQiTxCIwUIVv+3|a0zo3JaoU#c#TbU(uv7VdbAVVGn4;| z^Mk9};ngp_SF`4&K}CQD1JB*S zo}b5_pWk?3!Uc_OQ?XAsv%kE*Z7bKwTwmb22VV&|7VF|YTsOFTQ>WglUuSO)ze8_F z_D6Qslk88D&ri-fQU7OjpPPbVddR_Bx58Ur04Cd6+YZKU38&k4yLx@ctKswkc;LZ? znW4^>nW00wXNEQervAprVCwbE8MqUibbKPPm;}6lhj6hC*tCO>sfxT%$87X4V0{qS zcLMiA^PKeI`Q&i~IrCO{h26FB@1f}l%w-~TnZ#UJU#r&2y4xenh2H-ivzf~r=5i~1 z>o)k-JowgpcxkYfanQGW)h7oVdcXb&>61C<-zJBI4sOazA7~){Qp>pjEAx<GsaHxcPsK;x^WS>me9QT{!ZYdGh+QPtYB>Avh@l>;3r+H z9h!Uz_$?Dp0hS*8)LTCR{s?CD$e*h^BAsg@mF)$MCBN-R=xR}z{bi5U|7OX9yoxvzE8el#YUBzM>BA9DLzWOW=k2RM*=hVI?(yZ2doIa0Uf-TP7Bz1Qg8 zH+}bpsps>JJH~f!3|z~*1>J8hdkSvKpC{W{k-Mk_F1 z4*XleUwnU2jj3}E*E_+^J@0qV&A;~M&{F~DiuK5yW$Z)NSn{>KI{;k$+7BGYR2~St zC?p%gf1iQR&QWF^e`24!`%biE_qu%=d=j7ZKbzp5U(yTWT*fr?vfD}5O1|Fj^sH+? zxbGV`^Zc8vcem~hr+@4FJ;s<{rKe5nc5+qT?|wc`PxFz;@Yu>}=`iOc{*JtF7?jWMbMf#FOj}w$gl+Ct>-)O{N)bkoHOQdo?E_v^Qjp3JpPs~ zs@}J^^=U&-FLpYb0e2^`sUQzlHdMNoITbxCgMb+0reA)Eq=Gi4{ z$*=E*4?x#DOUM}k2J={R0@}oPue>3Hf6Lh$=^;Vz651PTe9?T~0IW1$<(IW?2PW)u z6**L+?RV4=^6%!I&|3eVDk=D(EZaq@N&8 z@kBgCJaj;3B|3u}AIWRFQ#IlX#zdFmM}U?lt5ztHg0|SduJPpVM99nI`h{8YyA0@z zOLs83jAZ`6rhk&}W+-O}>3(YAOx{3?z0&*2e2%!+?lr)w7Qfmm@}_`U?JME**MEjy zcRxD81K405ydT0A6TEA%&+e~8*G0Y;2nXqXiVme-4Uc}rS?l3TCv&bI2)}0D3(!|% zUC;?K@01?0;7uHSx{`CVp99CL1J^`5vHMh0C7n9{TsVE1|2J$w2RrYyWE3oUAu^er09jKYn~#;}>T{$V2EyPK`q@Yd>;oxRUq!#aT|{p$V1g!xQ1d z=;F!;Y;Acg)Hb!!=oDI42kSb(-s@a<_uPhoO>ew+vVOLBM}vi9(q1cUubL|N+WmrX z5V&r}mkC^}fa^WL^-w)>|Vz#4Wx%M7uhzNkC_Yi`sZ?`Hy56DdAmEGBIYAL z+v=N(<~Mo;^LaFoUa1Fhr@U90*kAl6JkmYZ{=!#sP4t{jpZ!(q+F$Eze}HG;|Hl5>=h|Pp z89T|}p8d567)YPr#rLvb7Gr~@Sext@;c*8rDX4U!9pH%k&yw?kPc~eNflE>64aAI% zUD^Ol)&n2mrU#c-EnI3&h09;au@_u+n$7_d~g7d4IH@o;qZ%tJ~-5z z1`e;faQM04z~3GmK4;;eGs6?SE6#gkjK4GIvuZOI0wV*fusf$`$x%o-d3#dyOTP|V zx9I(qkK;FAHCEqQSjwI`8!Y4azy(LozE>~m)^)(L-Ur7$7LE^{3diqSIQEKP>sV7g zYdT`_i@yzi@qGrr_|3qTs~@ia#}C(sP6O9HKK$Zu53Z#?{8B7M@rSAJ$-kS|)XHz- zQ^LRB@pqZ>hANzp$wMi1(#avLe;8{Y4h+iRE5Sg>f2OMZLc?!{pH+l;2HGoS-a~lz zu&~J`X)gnpgUfgZzt9ByLKD%q>8tD5f5zY2GRlq5kECB~%a|;GuWD}FYR86R`>DA~ zk%N`YPq$K6p6tv|ci$Tfb%Wz4g4t(F6~fP?526>Lk4}izbYl0Vpr`%Q(<9OG=R@xU z$dyUdE)GerthvxRHtxc}+^48tT><}I_m!%57X-_GQ$Md@()EX1b33bul`_^ zKA#v6RW5q6h+0Q1bdD%W)SIp+N1Bz0`YhT;8_qu4M>;0GNb zPxi`&xfqxxz+2fc;&Za0Wy5qP!)bU{kB-mhd&zYX?2Qe9t|$Mwbms&%-h@`p1Hd=l z$y%tjI!531xrbQW*U3fs9x>e=^i4WUE{cA`HX5qm)UOg7?J8Ymd(vmuJjXK+evkf6 z|3iN#&V{M=Kd0w)|M%#-^gZHg^yEGEI6Pn9ONV#!nmBh0UxC-}>B<&*pKD&kRn7cg zK)*(YYYxUfVl7{={hu`UFOezIH@+SShjws=XPC8UZVUKM@gVVXetYnL=%sAtSLEi{ z=vnQ*VBoFq(sP`vo+S5O^f;rK9){H6AV;2$kn_7jIJIDGRIx?H3uOO^rfd1Witnd$ z&kfX4%3th_nM8idhLo%;3fYQQ&bszrNS-qIrr*$sO}{hU z`-qos_k^2oCp}!>%O@(F>lu$6Jl+v!T=A|Q@I=MZrGp5Dv1)QPkP&fgy%D#Mk0$VC ze&I#d@0*i!$XInGw2*N$KRvgj+&MOZc|C$&R`m66yuR|B|9pG#&AZ=DwY9yyA32+q z18AQUoe1xD*uHJ7;lY=#4ev`q*F010f99Ft%$Yq5U^B=1JCpU?80cjr^ztP1;*dA+ zBy=(DyMv?R74AM2y62qoT|U3pP;=&Ahv8G&1IAUqVAmGT?lqfu6&rIO_8aSLZ#XAZ z4xNmIPR2qf(p%@Vwio5^&Y_PL9etyZkKPI?cr*UV`wbdkz0T9tw>QqV;adXDHq z_R12`1#@1a9+LEvRh?T`?K!4iq=U274qg&yJak1~<04?uLl;Hh?K#nh^YC@E=G^zn z=VQ+0(EdZSx5j)j2mLaJ{bXdvJ%fzwNYoZ(Y|Cd?QxCE+qj)rVN${p`mO5)4`GlRzqH_+sT`#&Wu(DP?tsj=G zg^sgiEuYu24%J+hg!4kmtuklTF`nOF_HoP4AuOqw0KfZw>Yn|nTRX(uNUI|7|vsWkKNhcWJ z|NfJ9zMZwx(xRW=k}xL@Jxbd&~?xsKf$@2@Q3~Qr+4OIH)At%|24q* zbntDneRiPpVm{Lo zX(Ij^{9|o8hi)DA(*Wmr`Mn)mV-$ct=2`x@%;k?qr(J$-<{W71i;hxXPo=0ignTVII7&5MGEqY4Vn)!3$&X4y!8=vm6wyOl9%Hy{D`7 z-A^uw{Ht0+Acr38i~ZHu25)(f zi&vbB0WNPr_R7ZSjgG4Sm-bn?ZGU5P23v!+yM=|`QCi2=S-KM>wOHPFayc*|wcg{dsLZFtn_V*Zv0#KADj#KA`eDjJKiap956Mrzg411K9AzJZPXZMXtLJEHCpU7X!nD-Z58@<9DAjO}RT!B5)yMw9c*{-SsLWWrc_t9$zJE>|CR z<%!XU-M;%>%+u&=%=1%KupvicBjGFW?RUXaKIIPd4&iZPu(NiC_TYEe6MV1saoL%*%I8LA zL^yYNx!0S;Z$Df&fV0}ZN^Gjfe)!fCeX}3V5neKn+_O==^HyS0!N~}@p}_t?MSoKR zeLXtL4d7%YevPRCw--r*JY7Fdp4Ug5{NdlZ_JeGP@!;Zk&QTw~%Xux}^fUU&-RPs# zFk+kaH!>k}PAYLmokuz0a)&cgdyx^uBg?==t^Xocz|3)r*Kb!Y)I-7UV3lk z7*GLuB^iAS8zgvzy>CMx`ep8mZOy?iI}e-zYrXmO=nLT=+|KtW>3w@5$3_`yX`pQ@ z`0MFk+~?QhOYA-J1OJ)6i8F%aOQ4VZ)iTk-t7m>?O_yta^!Lu4-y!JO*gW3cxW_-Y zR`2)!ALrIjbEB_+?%aOnz1y1`_xR`b6Yux`rMaC9o`1?5p7P$|&4GLTbNG(;yPZRr zy>tGCy_3zh5&V;Fy_u_no*KK**_My&DS*Zw?(W{!y4y*&t)!N3Xm*ePhN15H@c6d2 zj2L=u^hwTG{ozl@E87k3twc^1J6D}(Da)GwLEfSL&&6r!&2zq}eJMM|?!CjV`DDvS zqPgS!z5NYe@$>EA;pd>e_?u2TvEONq)e{TgJM}SGfbP8lz7=O~3Ffxc%TZxWKYTx7 z$CIo!zTbM*@+S87{-w<^o>gs3W3{tZwCv>p>AgGWI_a6bTYtZ}ft)U$ues$!J-mEq z?wlLX0D~Xj*Er2iqoq40HPcW$YW}j=b;6E{(5vqwq>{MX=Q0vPpmSKD`)f z9qK`_KWoTC-+|tXkG+6CKZ?-_wnCZ22$d#2oZK&-btQwy#F+u0ig;L7WphJ1DuwJQeHGxQ}DU>peT)?Vfx0 z)y~|JC<+mJQO+O*No%`L7_-^OLtRodp|7?_#-t7eBBiLemzR2Mh z%ia9F4xSe-9FU)iSa#hU?Qb!E_iL)5-Ys$kaq@jmdI`GOfnf2Te(yc@_~Ym(WyHaj z0fWbu+i`?c(2yq zE39}v#r~&;IorBx%J8GQIhMw*kdK>p{+M%z(GmBW9Lp~Dpqu}|JPxe4`hN@Jhc7bu zmq(pvE3(guYAK2qKi)U}@oTKh=#MS7hg~qcw`pt^xrMWBT&&9NY3lbs&q7a1z3Qa* zlc)crp~sAEQzu{7BZ(|}G;n*y#>En^x-c{Fvwx2?`{u^SQhX=c^w-}6+*sI_OkW-5 zU8Qp^nfG1tdqqBE^h}*KH^%xN#M7Y7I@j+tIQrOoZ`b?bAA`F z^GAi#xB7p#@L#If@ynCR|M&GI2ma4K);IWHFZsAp89wO3n)@#U z*1|8@lcHh8U`N7-T7YRX>7;)OT$N{14quXQ&GW0hh@4R_XpEc_*;FTf=c5a2J1rn5 z!C7(*eRKS|$3@ZW`w06Ts`FxQ>hI>lJi7;4Y#6W~ZhN04&)$oU*o(pWSK_DQydU;Y znjA2vX|aX9>|((_w-=rGOr{qdb2Por=xJtppSAS#qVxAY%iuZpzuM)(UgO910Q*(I zd>!ykhSRq}6Ou*cz`2arq2D)N>H5a&rhV&zsB(uSv+<4BRq=T`zul)=GaLUkyh|{w zwQ;K!dkwmHD}n5EWi|7$cz^A?-NO`%|C#cJkX8D-iNBY^?;UdKs8!!G!Wj{b*3b`= zJ=ybBe5C8yH{w+vG*;!+%qL2no?NCDC#1Zk!_#?x5#yF1&r4a)5O89c(J?~5|5M-l z4;3|F3v|^qcGo&4KBlpM$k=`DZ*(kJ?B+k!sNS`IcK*{8bU*aI*eqf|bHJh5Qa&n&Pa&n%w_;a4ff!gcOdE)cYoSdh+71=pYTl_gst;!!K=P5bK zNw>}upZjoQcg-;VpVz291FGBq;ctC>Z!7%p1^$zR9G_E}-t7NvyYvM9&tqRFh11Xa zf0Is#4QOK3(C|Xe0L4@83^;LkYPN9ppC@lehE= z`3+@(e$^esZS9cfH@|{iolI~Nj${@ZIE$vc%#&r7olfPB) zW9A+qw~%|xydD6@nTO`k&i5&FDU%b#TpuNmiQIv!I?(|$^LcnxWv*zIDP}w=$;?AM98GTtWIm^23V9iDu9z@ViodH_LK4{7GU!( zRjvwah_QxZvv%w+t$o`#@~o*B(c1XEnA%1EyQNo~It|vWd0}sxv(m+9JX;OD?D+^b z+)stq*Ig3r>3QYmS+($e72i+io}-7|@ipfRpR;3k*IWn=e}w-RHMSlB2awmsC*DvL zngRd!^cUre?8i39Gdg#HS)*$!8sE5)1Ap3&ECq%(uc}Ay&dIAw$( zpIOL)cJfBNGf43R8d)G69{cpl_Oj1V$NbsG&Pktcd=7u)Gw3pn#H=LyJpS+IniWO= zoECp^VJP^z>o3MeQ2vu-kM#J0CgS#MJ>C?%jr;lC@JjrkJA?Co|C+NWNpK){ zKi(@m^L}*9f@T8wtMbuF{QH~BH`db!=DO>k`&mwUmy^FoJd+-Admg68TFfa}B|iEh z^f>Jg<4nxp+y7}|2Hy`0rjy~r@Jq?&*c`4UPCAS}6{F|ff59(e$l)@2&ukE1nXDRC zr}HNIg~)H9&u?H0C!yVpKMdX=yD-7rb;FS3Qld+~kmW zb!+gg4a}>ZIq!C3`*ll*?H9vu-F{o)9}NGO@R|cAwqI<{CDs0Vzjc||esT3e;Bmml z_H}ltU@kao%>MNGNIk@7_~Y0O=rzDM4s7+#)I*B(4{3x?ZYkbX6z#yyNUi68OMWzk zevv|NOQAy;K51~q#_`2(q47NJGh@Qz zW7MRj;R>e(vp}C8K|&o}RPdvCwiz^ybl_@k2jQ8CnTXt)VVL@QdAF8H)4W za=ts$9Jls1$LZN~Ofa72SV0Y@H^&w`N5L``EZ^RVfx^)q8n z)ZfGZrP2pHKLa_P4?J}Il<)qjm+!vN%Xdro&gDskP0<^&#;%hOV*$U5hQ9q3?t`z! z;je!Ew^#qfaCl_W38gCFGh^Wy_!C|XpT<`)96U&dxffnFmfB%oZI#16x4z2tFI+!O z{dKba3py7kfj=RRKVdp!wSv1d%3Qe441#m-1VXbIHwCR;SIRrU>FbM#aa23$8%l_C zEOyefYr~<=?m+0qhH&UmS0FTy_~bbkhSR0x;dBt)EJh7OoW5r|uVc`^b2cV4FWIgf z>2~n-CG@Bic$$Dl6tQGmDv6rE%^pYcQo-LI9vi=_$ zJ2ri?@!;m$IIGh=XXj$(u;o z&W`kn6@F%5*1DjtnKly!7iqXzh9u9rs1K`jP1gk#c&?ep62OLTOgJgGQNIHk~4WpAR zrrw8Kw6OGZc&6!V*F8AnH|yBvQK6kflC zL`8n|D)2FZ%=r{>jRc`Z<`5JAHFmz+V|9V#3^4lxaFs3roDIBx%V(o!AYar&G|Bq~ zn~l_pnf$Sb9JBwfzE4dmd!yb@CMS*YJNWwm{}o5=m3Ye)w8?-ynLobuywsQ)3C;|8Y6+WsI}g zCv$|7!R#y;_UOUk#*jg5J9zwphz(S7%HhDb z`&*&=xmk2CUZ0`+hWzN~Phz964)GG%DIeo^=&Vk>dd(kB<<$?_8q-`}{afbd(V6b? z`mMBrWBGnNozK72y?vmw+V-@<5krm0oQ!DGo6y<2?K_!Kmzsb{<_ zdOk1|y%|~evu+c=8iTAD3m=tVI0B!4sn~gK416=w^U$gJrgHuCUXPDf0H=%S!8sB> zx&jyt=WnBsarkXMH5RuPEqT(S{zAC1NlhErTPWmqPt9_!AUW}|-0&l&Wy*n_KbCoz7A~k_IO%YFbdt-k2 zb;HZuTJJgF+pYZPJ+ez9)UH?21HF}bv`y8R%xwbwWT<~z?0*g&O8OD{{9fnktBpRN z;qz5_(f?WoA7X81<3k@~T;1pIM{4Zpdo?F$x;B{QQ}y`Ja&S^{NzcCxFTyu8DEf)t z!;2VCI*1=PbL)oxFw^5j$RFM#pNT&&Vk3DGdj4#ENi9Dj-Z&_lNajUno`9AZPir!< zM)o-|33-d0^7dLVO##ym;C%oXAB2vkI{iCmv!@a%3FYBDwH01=nz1y7 z;t_hEY%)E&`>i5#ZueCD027D@jCBh4XzU<8$;a`&;y_@Jd?Km$9)G-u{H*=dV@uAe zp4W@NxV?spn;t&hyM6D}b7MMvedb$w$6x8zcfcD?q5oPZl+_=i0-PNSJ%PIis{+JC zE^1oy@f`kuyrHr3=YmT3o&sT$wtvmQ09;1j{h>uMB zBtPw&)PQX=e&RwCCzKBB{kGlsi3^RNc$4)LE0*{OV_l~{(D1@`bgj6d(ZZ(x_%{1e z3r|CC>7CMfx@!ijCaf;yTpUfU;{MhAkK{+&fpa_WZwIC)8v1AXGsakWcCTkIm}hbx zXD>=GT*>|l*U;D02lQVm$O+}y6FK#uQTu#5vay{pP7m(jsyO`J zlZB6H4M}Plc$X3_r3fdJC0(Y1=k@HYS0DeI;x{}Rrx_~&bL zc+3#sG7Px1ghNMi`ir0KJgGI%MXo+Fjq&@ckC^e{-Tw2i0?7G%WcyU~vI^wI2=uZ5 zJR?rbYy`ciN1&J0;-~ib4L6kT1rE*z)>X?xZMV|P1s&!_beWs*JKT)VVGh2B1ZT90 zM{UBUbYog&*mC`vzI^ax{RON~dhnp>(|AwBzNbI$DB)cL8jYyJypD?qBf+y zTxWVu3Vq!Fo_V~-g`JgcMXbAob(cEnq~uqFn-6qgN)8T5PT|u!$S8 z{1Ct1H0Y6Un|KB98%SIvVPa@Q8ke$9%Xm-hRi93|4t|ObjE!1%ijCTmAHA{$-H>^l zO*edwnkn6Pwiw!3Y*eEc{^$+#LdH6qUieA!t`}=mYW%JPAL_ z)yF^83*4Xa@|A1BMdZ3-;0gQppCUc*Pw`!@Uaov)Zx15K=Hw7Jzu_*Et6Y3auCj7^ z@E72xM?WXG;j_NI(D;JwB5-{L`6Aw4EEol>`ECNRzSFBO^zX$b{C+t(0sh~6_F}Ko z5it47;1T{rw^!&_`nVTwwR$+;lk*ch0^J{X4F0q=6!j%;jBj{QwCgunIKS7k(>+_r zgZaN(n4bpLdp&%Qm3*4>DL%tl1)ps!FLv>L^m%!W1%4Q#dlUd;*Jd4H^ab^MDhm{K zHhq%31N4)NA6)Y8?0)d~f#hTic8&$QyXRI1!p*<9P(gc*JY9vNRI{7iiAiDGB%QqGNx+0U8#4BvBkS_*m7 zF$a5rIVl%J@wO!QXYxV7^|pKQFY^8;dH+)0XMW#yOK1_iH--N3bJlKrkGG=V@_Dx} zmhdw3&G=Zc;}j3R=9}I1*jdl(*&p+)#`Ap4o1@+J$m?zTZ7jd(+Hp0!9G~n`@K8Rj zKfZxY!S@wc&?kuB6n}so_9~w+*QZs%zP8>9>|C2-Z^ouTSIn|0_<$dmec3Ld$RJb`8XOS0%b}l&!?K}zJ6Yu)@v>tvX`WZ#ug?e*ZkOh0CLA3!+!zClY*(PjfN&47?QESZ4Ry z^eBOcF15Kvnuq!>ZelJT{(cVltG=)2EU|P zEZ`jbg30FzHl3=A^w6Z}@i@Bn0oHu+rQya)=&yX)$0LoGtDi8vFg`z#9yKi`rjM|C z$f&<^S7dSE3UszO&=kS`nG@b^c+vvzpg&%Vm{-?^#rv1e~?T(xCRj|Fj{W%fJQ{Wd4%3< z>|bjYb|Lp_A0J-Q)00>4_0B{7*;2>!9DUKrcl#SLW}a{oSj1M7H!xZk(P!{`Xst${v46i<*~1@{KPMiM8~5<`?k@ID^LBL^ufE@{jU3~v zjm*+%xPLr*agNZ-wC)qz*2-n2c_vp0|XVc*N%EcgHJ-99_VEXfHIre?Js6^yHI#B;r%rr&Htxen-z1mfk2C zbp!D!t@9i7K;D3kD?a`f{=FmfkabR}Ij1N_oaC1eE_k<$cvnv@sxLN;KOz-DW+1;$ ziA|I5^2zX@>JQ(>xQt1!*Up{qb#F7WW7GO?uRxAyzOpIN{mk5V8arl4J0g#}iNI`T}_3?ctepu0@8Qme}5|w&t8Us+ZPS_~|Il;ZZNG zEL>qtzouT?{?{z#C0sIk`yBaR1~yF}v9x){ z=%vjwH-KOR$g~lj{Os5CF^!2#`3ty~ z<+qf-X&Ckj{<@nc_u_BDXSvvy!)5ZfYDXJ?(|GE&PSlRg_BXwgpN@CsrxV@uY%48D zCwBxxtwjatwvvK$$FPEQYDhuaaec*PT6V8iPg4>CR>~9ypzxB`HHe;L(x6cu7b6;;hC&f)t zN!Ny$g*;L(;{bHujXWA@d>?KPV`NdC?C;^iXU4KVr!Bemw};QoQ(b%(F6Z`506(@! zzbXQkQx$h$JA8_|nt29)yO~0S<@VKd*@y*((U8Gi$=VYsC{w|GBw{j`#-U>f`AsE7svsZqcd)Tjd z$qZ9NJrt>OowZMUDe;;+Tz(Umk^@ecX116;mL3>CW$zPtuH zeJGs%zpogbBa1IDm0jocb@uV)k3HBozWgk8axP!~n|wQlFF*fU-}v&az|ya0^rDk) z@qD9+(oZ(F4!;fm&h3pO2e`V0^w2EcjBn?^Iq$&ubqv40EP9Zf8o?~!`gRNt6CNn8 z8Svu)pC>Y(I58>3`*zVsZv zpEoYIzjfS?k7E|wth8~POigRCrcSP80lUD_t zF4FH7uETxze*OdO|7P-EPP_k3AZ!1%%0I?y{wd!rp zwMAzLIF0RN$-hbBN9e3f-xZYn=!ti!mr!?*-%|KX_`N;pq*EzuolfM{5&80qLtY#z zRWTo(_|x<-FU787{HjuX16&(Q>Bq}8S&EOqX-o#St~}W-hDM)wtw&#qi?+dq6U^C< zga2Y-885N=(n?ofQcY9<+t1|5dAcLddV13g;hLvA^2{#sDe|xnmHYGG{O#w{-h7rY zpE!7MiW~qxvg81tzsDGc=R@;;-9b4+(rIOr8oiazPv*R@gLkADL->}9r!T=@PRkRF z|Dy<9zqpBW9D3F7KWgEX;nNKzr{L!}?;i2#9f9;t!>6-*IYps_jFpnZmyhf>E_&jif*p4#6xxU zbo16p&?^2~%_F%!7!tpcZmGCvhwbh0IPcdp;&Fo{|A-Cv_4Y&0q8Cv=yn}nB4<(?L z>2Zt56-PiDl~Y$X##l8Gr4x`1NJ$?hk5oSu+JU)AH93_Fkkk-#ic@HJ7NQn7g!Xn z-V4pMz6yNhBk+}5+OLxxyAT}^IA?0fwvbcQ3Jk0bP?zyT0h_E?E}x&)y};>gHbCy2 zUlOm7uEv@&@P{v&xH{u$UoJYocbI(4uD2E0)Os42jQ8#VCaOtQ?xPyvpQ#kSfOLsQj!R{rnDpru=x$8F%pJn$nqjeF2l7DG$b;q;{3e6<$G&G$V=`D*9( z?C8i-phN4^|gbq>V41w{vN0$_n;y_)OJ5(-;3{ckaKJoIP{VeZr)9v z!bLjD%xlj_&lwvu(Shi$dfLNjC|+qFyY!d}@sg1X;3Ih*cE>IA*{n>rWPn*_gF z!7tr=DZd-MXvs75lI8at!hZF_YyElR{e&k);7JL1Qp(sv7<(9V8xH(^JlD$;|1x;v z*0<&ve0k*~%E!yk=C|wFp9XMd6F5Via3aFzslaXu>)pznHWT~2k=iZQ=Qz~ou(yiI zE3O*iOkvfXE(_wzn!>!MGOq~ps!<*u^V*6IslL{e!9jlC#W)GRPx8Gt-X)wBZtHyN z>OhuZ2f|mjjbJX~`-(@z zCy~2Bty!kt5B&V)&%~Fo2jRsAA2?57gtPqHPpS{gvm>HLFXVi`bJ#p6a8~<;s`E3m`cKHT&o*P}LcvX^Ev^_I$0=OqQ zoy}*vk@_>;=he5UmLvubQSEmddOLCYv*t{Vvb{F`^OyJr7|Z%>4Xp11)?UuklQ!?; zMgwQJ*G4aXfx3)eVDjvAWRcnk0^_j+wqSkbdQx>d*-x*j{1fyR7R_foQ959zpE1suWme&mO7mh|Md zdG5W+Uz5M1irg^w+|&a6$Z>u*_K3CPGw?a#8_p;xHpD2H% zho6k6Cm;MIls^)F!oB76Ju&|4T6o629?uvbErajKCy6}}YFka;oAPj4JY*yDQ9fIe z`;}Mp<^RN&$Nt9`v!+#HYRQ~!#4xrc!3*hf%g{}vuazUKV#r6yDdlk}e;~#fs{4rj z)JOB{z}5Bqho8sc?Z5N?1`k!d2%6vGJTZZsO!d}rWlbgYf0^)@Ih>8=pQ6r7_o=s^ z7psZA%G~zRtC=--Hn?$`8{v63A(zz~b3JD>OfzvBw>PFo^WXmkG|yOPqxm@@*B_|y z6|2eZFN!Tzr~aY?ut5$@zP<6Ssh?^*I_r+cORjJlFP|Q0yzE*x)|kQNU}5yfocW=3 zXw29Hzzdmabg%o7ReV44L(cP$82>8$iY%-j2A&zd0RL3{!cpAol2Or0)&JM_^eg)P z{e6SyEg5*y1Hkr8RBy!ib_>s>TMs-Nc-{y+mjTb3%vl#YW0Jfm%R@iYM|gH!-4pkk zK;B$6y+y0dSr;YBo2#n^me?Uzc24?-#=}!S*?1&!TjqR=iDB2bnt>%g<;513>a~>R zPv`=#JJG|B17~2^`6fI8oK5cM{AFaCslQE%|51ON0_Wf49_VF30C`z}jfR{&K<=jM z#y?LU{fT6DeN7s?klw7g+~FyoW}csEJT~XE_#ld-)sy6dDCTSqt`+^F_eQu@^^4v& z$7$^B;yu_*v2NguzoV1=@5I;A2@Z7PYdJ}MQ|`My1uxaRV$4tWzHld5hMfc-XrnH^ zox1q(*yn~Xk{h%$IR7`U4^sMO(B+r*`|abMy$k74rt6(^l=G0?Q!h*J^6}GL8~1w? zPtRNZ`qrkL`k7<3Zv8{!NZGeJ^$%~rZ{LL9?#HG)LLFWUdw7KJcCb&K@YNK*ft%gk z7a_yQTd%NwEZ~>ggb(*Q?8SG`<=OjGJ)hU{893wPV?T-GQfr^8=6}Oy(Pzma=lSYM zVRQDK{6)%pG5(}rKeLCaQl7`w_WXS*=->dc{DWHsH|6&B1HS!@KA*sEg-*ZiW~*nt z1zg{PMo%QO>)pO!@rF9jEk}0siylFqB&q`GBQ4~REDofP?x0?!n(KD1_i{ZF2_3C1 z;eT=T=mX%*L%^d(w*LV9EZ_~kvd)!(^r0h_=|iiye@12F@jIq9zOyhw9nA2?<8NNr z_)hX8jYmf?9<)6?Z)xb*e*E`ao%Hb}xRe5ypp(|Bm7z9hB?bO>fd9fnzYnI_&im*K z$hGB8^Z+*ELG;GMtS^R+7Y`0;I`j!=Z8>&HvOa9iJ^lrCOhNcYE#C#PcOyaK4C~py zb=bIkzYtiRfG+&+8ExN_;CojNmPco8 zbK}~X?sqZ9bLdSJXPgA%xP2b;nmQ*|rY96Q+YVuqbG~x=aD$Wn2J3&T)=4k#$Gt0^ z^gVokXp@t!=KD_M{Sk6JT>2_&8pnL5I_Gruf4`eL-n`C7=@as>WDjd|Og(rx{mvwN zN}8@lhPOh)`NVx%p<~(b^L%xm@do?>==Q%xH!-?BpEr}|@fx3{_vp;~qnpF&fpOcStzxqr z^fd>4%|Xw>mv9?=V;($YKA+JCmtF?Xn#G!Dv#)c28#b$YJ+#eZE%U=^7%97)5nHPPfsm${eDBB^ZPHNcg=r0_Z=rDukU659fvR7 zkMBWO#pI{Z-l^xfJ%=@xV&$scI|eT}3h$0lI$S+t^$vK0|n%gJ9i{U*7YT>_Ar-wS{!0*7l!>cNpPi6YZJMg#C%JeZ~ z2NUCY2w(BAWzB1>-%#`43QjJ=M>r%e9IE*-enW6l>)*(CgYv=;zNWZ;-r(v5_(2EF z4X5|M=sbTE`BBb!+}gJveGVVSaj!16-0+$<;NAh;bp}Q!IQS8^6* zPsN{a=f=xb;49bYXzVY?emLhDWPUPF;yyC>^j$T&(KUWnH!GacCdwM6Q%GFZ{k6#P56ZRb&tN>w@PA zuS@p@U_UZ)KluEAZo-$#82QBfo$?{dm>GUwK984snOk3eU(xA<%smYKM4%tpUlr$s zZW41@8?-8=W^?wHP4HU2lN#0n;*|8Xl<(EqRNK(6LX0Oqv@O6=ev`T^ zRo8L@R$uO)F_y6k34}C0-$W zUvV8g9$qOt{e_c{y|(6;zkD;g;}35}A3O18jg{Yd5IjW3Z+_wjkG=N9eNW4G%MQ%7 z<}3b3FUzOM4-26)+WgNx3n7aBF8nX;&*t-+H^9^2^|7J{pDlm~zJ$I0l6O#`5PdlU zo+ZGuB789dE4vQK?KpEXEYCx$J$NEMW;wq?{BW`+bv`Zs{ ziTP#B@fF@7wP11PSjZd?F~>v>8pfU+O>yjkAC97UGA$Q-xr8WNEF!8q_a#9qD(FH202y_R}H z&OT7^L7oYGig+(JLk28w2A|S=Si|ul^w}V|wFMeq!~YE5Av`z)FV3d>U=g@k?@b=w zuY8E~J0)&l(?9$;1V4V+`J17Ce25#A4-uMo`VcQ)-cS0cmP_cPt6{L=L*_~@iK;`2 zFyDkr)4y*>pLGmr`ajf9`e#2blwX)Z|B=C({+XMmf61%yX7nA9^A*zc&zc(K%n{Zn z^e;3nc%XPe88F>}ETz8Cmh*C-)&;m9d|Lbr@@^7)i66>^EY8Ds{gB8ao(uB)WEqdW z3}wqz^q^YsMd?25Taf)5$Gx`h^YqKmKI8YGeRme^^Z6{f6N>g3M`%BT4jDHi_m$5H zxjz@Jr*T>1Xvgr%P>gp%Yzbnbw82(s!{3ZW{SB0sO17djS~Sj4;mPFW|el z1E0I|cY~i^iEEu6XKEQuJu|raFJI{&es)qfrSQ{l&VXt#*NDN-F7PvD@YCHd`Ls*q z)A^S&@UyKq`Lq#uI`K2RZjt@a&x(9vjv6nA=zK8dDEVMlXZ36aKX)nl#Qj~Iqaf=m z!(Ok%Cp2Bf88{nD^lsC$Ro>qy^<&&8eOuG-l$ad6OZeMXudc;j%6t!~{)h#E5#X5% zzuH)8QMsz;Y&j$El)8C&Hg62i^7#uqyJ|5#mg#x2n)t8WBY1KHcyey3E4c|9T4<%1 z8VNZo*XgH9LdW8h?O2NM^?K~mNmAQ@?>6hcQ}%t6e94Zf&<^&j&|H4Ho|t+^@GT+w z&i+(=WO-gPx&r-UWga{_FPW&x!+%-O+)-4}e7t;wr^`QF)iQN84A;KP$Z&NAbXUVL z?YoQ&)Bfl3iHr zwiBNt>;0~YvBKP)#cLc{nbGy-Jfkg(Ka@bCt@1Q%2-aKCG z&C-iDx|=v0{PFP;Vt31cYp2$~Y`$viA@+Ljl=Z@M4Zl=<9^k__M&ZHWufky^-}$_q zH9SFnMOwap&8_5njCDPUeBX|If2oIjFKRl#e7YiovC#xr(23>@V?0`gt}1 zULm8TU;DkA$;p#mbAH~N@Fu??^>1gb)<^zKJaR<&zE!br6J-C2@ zUxme22NvU_QhuNXyyGx9=EF`j&&nRzf6G3V7iwQYx=)MXRXKRIQ{$D5bG`WrULy7o zi7-deM_00sE7)(=mL5;+9mjaeK9BVD2^^}meFD@d8C7>4?iVgSz#GmLO$|EM zrtE3n5oOM{O}+Xo{WICC$B{$XzQs6uFXxBE=eUxI*Vzm9S^CMmwkcKr#Bgh>%`ZMr zZdd5_9Q=LYnfUj!EdyJN(({F!;Szk&yeEbPG_**6=1F8vHS zgglp>S6Pk>mS+zPx1O`tbL9tE&r(^B`#Wkq+wie$yZ@%Yc|8yHV?BY-=3dV!^Q^bD zdp&PRZdE_`XNuY%@;8uQYCZ3b{F~SFseY{IAA4EPKJzT`oaZv=Md%NF3bQWJ{pBir zeaZ3Ee6ja}LTAF)x#!J)f3v<;YC6%^#jcwz@vM|LDLyi#GiBk^&&@j{jA{Giq~0{R zkmrxVCm6Hj6V{K$^z!@<`tdvgrXLAU%Ju#S`|*4S&)dFh@k!f$^$YpbPYXQYIro1& zwI_-nBZeO%3=fSELvAMq@=GuIfOQvpLa!6wIhseV0=iZNT`PgE)rqb}ZEX8l;y|6~ zf~N|a&-{JPBXfWaBHV8|Ep1hvtD7g~-{1re}xv$|N=+ zG5}jy*&?sC^v@Q#|2pxp=sCFX_c(Lzq*t@p1!-RybG&m1dM0zcYZO=JD7J~J%NwD4 z^u2>Vk+wy+|1X@$AnSXR??v}qJq%gplnMBpLpwP)c6XJ+@ficH=U#xvtigvOzNu>X zJ@V~2kx$vO!1JKPKa4E!53p{EGFFVSY@TTI%ZHv~9P)h%Zt*6s;u;)9e81)LjD5WW zz94)u<<3t=_E#mNEsVo^UC7e0^mmc7a_(TyqI-GAK6Gl{b)0v_*HtE4*^}R+6WQ+* znbJNATB@l`o-{ZaC#LPa0-nZuvw8Hd&AVfB#c!XVJntWkos&7go%TI$@OrO1xn+0J zP0{7PWNd}6$9kPQMA=)Z`VP^Txi`waA{WQF(3PLja`EUt^^}Xis!d`l|3*$!gms2k zr_q&n<;tV~f8?szFcZEC-s}>);4XA(XP?wRabLge0TcI4?<2Zee|f+;&M!{q*o?NC zBW3(2Hr;%+BcEn;E#KERFXmp$@vlGq@RuJ?nOY-D#V2L#t&H8@{%-&^5}@Q#j%;%cQf}*tb4PS+<|{%*{qU4 zCpL!4ITM>>6Lz6X@)WsG>_l=loOx%zKZ|bd1D4Z(VJkh#2BG@{kHyeOu!8ULC!}gh zc_+PYeekMj8`OAW>R@slhctFBBM)OaJY@xQU&;Qo&|9~L zJPP(D!9KOKH+GItkadN~ff;k;eEmm}HL02bjgo)i#n!0A&iEAb!p3S-F`#+OYk|oX zrO!i1oyFLl^W4C^!puwCSXJ0qmCDA7jUGy$%3+P+vWptSb<4q}U~b2mn{8M1W=lQE`MhFF&125OXG8q0^Xm#7`E_>goc^xIJw@zMDf>LcN=Al* z2cx(`kH5RhLF+@9>u}~e3VRH_$U*Kp|D&1z&?k-v9RFuX2&@~JNSO5H~AE}I;H{HwVXBboilD5V!SZ#5zd>T&VPGNoX##s$b962+0O!MXz+@eJu+~aS|MiK) zR0{cjQ29rTn#Ks+fS1%afF|TWa=y8Y#W)Xg?rkOXqhcug8KZ^&z#s$+Ryuz>#P_X+ zwu09O!jbM?wL)jVzZcr#-F?MSs}7?Za-TB?v&*k@F@xlygocop2)%UH6|4A3ANklD z#6SJXgXn~eY2v55dh<_repLIXW&B+E*dp5{ANv!MkG)stcz&fq^uc0!M$%W3yzGCt z#YJv*Ixl;J@=cT9JO3!YY33kf2jL$f_=n;p^S~wemEckuhq!OeU~7+!qoUtRPDBO{ zAtL(0d&^ERHAfv3u@VY~)#MsQG`S9E4@P~o`O9T;Vvx8Ere!i952kkC)^~`~u z_$IQ*;9n2nD_K+zULtGKc)3~Q-d}$0kVQ6L!iPf(y~#g1e=~S#No@aG;((YJAc%CUFV1nQ#{=QCejBe?|JY5IOQ2#QFKb;+cydylinNA<;sVc zlwLIX;!Eax@x@gu+>~?n$W!7TFP{~^Wi0tl>L_C1Qo%T_g9?rpf~O*@+~f_!!MDQ8 z;DN}mqA^xd@Tu?s+J2;6k^MZWGy%XebIs20PuTt-(7Zq@F`m_|kUC;g?QzeF9 ziM}N=;Se$WwZ!lf#PAcu@TqH5a-fhH{&r&c+lk>zt)s;CxGx7bDRuhMo=lxHM9DRZ)YWM{vX=_8YS>Y^@Ba6NdjK=zDx0n0G(%NuX) z@m-6oH~l#7We+0PTB_e@`(hV8EhWFbxG8?E@Pzy(A960^UgAB4yuW>nmA?0=eJ?Sc zjC-#$_ttig+h*>)jUHOJAq!>g?X0Ebxlem0Qin4Gn`-75_~khIf+1gRUxm&Mm)f18 zrhUMo78_Cciu6x$5r1{UV=}+H;Pdi(9=(;-IY<=_S~5Jo0D4L5NH#4k17;Q8EBj-7Vs8j058Qd-p8ny^#|-XtQ5&G-Q@N2(e$y+G*t_HqC_JLJ zA^Us*$+60XN7b2lw4pa0Av{Uz2%;b4z$5*f#IKp(J(5?&{3NfUi}~e>Ut4y~Cil;= zamv8Yfm0itI3>NrvT^FSYF^^gFKiM%l7okCuzgEU!6(rRx_wLBZ}ZTt-^}tY$(f|! z_ITbI#4Vs)ygHwSQOmDEBX(pn0CG;d!sd|BcKs!u)E94M;B8LELg1 zam?ixSod97>uzzQJ5ehuzMzppgRIlg-Ud7FA7%Z-lDcE2e7>FeJYiy{N^bFPp}qdl z+7y9t&-rgy^UJAf{uLLP{|#C5ualfnbQH0%B*)WUOL%|(*D^kHEovV9UCZN_BX`() zAM(wAxx`)J?^C63kfB?@xi;wQIroqZpX5~dlk!R82M+R^^x0nChQF>puUYWWg`Saz zOdhLjPw9V)PsR^!PBk$D8%Oyr#&>bvEB!uHzO}*QQD-#Xik}yF-PkF3d%cwuf2;g` z-)bk{rq1RXp?#~##ksEGjjU%5HJkXAzK=aA{+vpOKLVPT*gbn01&Of=D?r z&+_kiVw33mq+-;WXDq#;j*9 zF(u!~lre64?%4e4H^0l|Pw9M|9K1F)5go?Fn-#C+-A?|r2L7O z-?~n(W1UYi{w=+&lNfP~ejQsbu+AT6t<#U}5%`MEVDD@72Uzd-)V}ICwOTK8_*>VD zoKElS1B@>|ap}qKw9!RYW_&J!$Cp~#$Lgq87C-BnFJ+znn40wEMzsnn>FlaTPEbE9wc<&*ozSFzW) z&shVX>kO$2)iPj{oEBf)mw$`B##qJ|*Q=gg%pUcTE2^GVHe1<0a%S2cjmIbdld{>Q zC(1R~>U#dPe$6>jEB=hl#=FIj>dX(VllmD)e&|@%D|0mYq1|&dIeuHcnm-(yaE>!C zE^35#?(%!D3PjKe76&cl*k!0mfo9;tOuJv`7~Y`?kP!^1xN zCBkz~Uw3zIy!LfRSMk1u)Sxrhc5>ri;=k&zbGUpfBY3?J_@t+UwYbOaaiZXZ4) za0VYQxvlue8o-(D{9ndz=m76?R&V;Z9elsj;FI`x-I+e#dHuwvS6;F43H!eW`=9;_ z!PlAFQA_)FBZYnXc5Qt6^S=J!)7RK5!KVxOb{)MoZYK`4Q1#lluG+${+uds;jZeP9 zz%gpR1)r2pcO~#zfxN_4kIZGi;eWA(>oJFDR+7@$lo3l)O`kI=8K7!8Ej=s~${z+el2zyAqY`4BQ+UO%?=p*DDcY;T` z{I0Dh(D%TT5O^XwfYSGvv(opnafNk-Sl73}2V#I)-^;?470%xbuHbiVOZ#0N`110d z=pD=}!|yuvV&FcCSl}hph~szN3q1F+w*BJ&`mQH-2t6L2*PGw9?DulcNjHxS?ydA3 zKwq)msrey!r=E8=lCR?SCN0S++Fj`hu4C+ZtZTigyG7SN;9m6SbLdsheC$i$MamXg zN>8kOfG0>^T?m^cJdgcZ!2d^kF1y~!8hWpVbEzL|mezDmw1vO3Azm>&cuq*q=8^L&DN%Da_)HIx23Qjccl zw}tsV|5x%U{!VkkHrlYHhF+rX%s!pJf_`NWf+}x&9K5GAaIA$G9rKC$@o5WO`0nTA zZG`wP%y)JlhM1q)4$k6|UM7;W{5WfRk^e98cf7(%*5IFBhi`GQRn%I;`XeK)`S)5y z>+)Rg)^>MZYw>%JJX&iNuS=1GhOUR5R@PL)`(g{MJ%`u=84tTu&84iVwyWr- zrTNw$(T9|-%-rcqYs+eP)AnbTtlr?1)!0XE))xi_4yu@Wci)}&mh?|nf0ez_vYH+y zZo@--CVo}~P7*_tnw=Q^O2jud9r-iE4j1xUpZ^G-ZBwzcmZHGJ^yv6|&~<{n z*lxYE_mO*--YmU6S94CJ>{StGt|g{HM`mB!p^F0Yn57@5MIN(_V~J^cf6J`G&PUIr z=x0it7aS7&!CpwyjG`5ZGvK3-5JQk$=7Cu>6MpaSM>CSQE4_Hu0)O$J{g|uhI1Qh} zUjmO4{wDlRc%9O34WCQr3JrnZIP}}>emt*S-n*_FFT=(yN6w8$k0jU4GXGTnL!a({ z_@yhPzeQ&M!w|ZX^gNqU1We~x$(cN#m|`Vw8%4j1(e%1xTp#1kp2Qh9lgJ4gf~!X}#B<7nmrtG_!BLcQbW& za-ZGTPWl>3oGm1JIW!b^=PMeT2@N^VZqYTo`s@~)hJM)$4KbGJy%(aP+2m7+o+9Im zk2(AN7I`*(ev6}b=6J_>Zo&)G^y7C2p5tr?S%-`n1Q(=UF6@IpPG;Z0=?-{SW_+on zY23f0>JJRT?>`kdqX*jl;g5W++onB8A5`givPJkBdti_KK#slGB7UFmUm18D-)NXU zu=nGo#r@lhThegQf0$fa@GAkG|7IYUhL zqPs8SoW`i?XF6M*rE}##`Z98sZJ~278u9|4WiMpD*u|=M!-M1}g}`y~Ez5Xmf5#LZ z2Nt_k)#LEFh54x3Tw=#^Z@T`7Jr(;{?#&b1gwMa0d)YUM?_9_a5@s&qFI0TNm!FY; zB=swj50LR&5il7HzsE?FhtReVVjAx&OUu-A7yLAjX8sjwW ziS4I*`4*AOQ`l4uorU0s=o>0dBl<>!_uF)M^NMadlzI^9uj(F*pPl)6-%ahY@heV_ zPKbAwQxAD1`94yoD7cgBeBVieGvFdTD-*xKj|}|c^BB38`ScY(l>Vdtyz9;SYVdsx z_GJ_v9-O0ibGM#T-pvo5Uv$1c${HSKz7H|qF!fc)R^{KC&$LIR(P_|t@sSH<9-59JKrL{c^2{G*~E|MWYnr= z^5ne0r#YuX)*xew@8)jkNA_+pwxYdvl3&%|z5A`q(Xn^w{sQb(MqM+XpOJg}xp(jH z?74Rtyxg&O^ZK!OufAySUGM#3`?Gg{+1tOp`+C;iU6_Z{FLu)>=}G;m9%t^PG&a+*PZ#3h*}UvtXw&9plJh6I zfA}EUR8H1s_k?dK{_fViKYOgtImd!83U74YFM3vQJ=PP;wVd#bMo!Fw zhc1Ag7ovA$^;u6W=X~{?{m}|kerjWx=#NF2`Kj35A#84`3+%w2j$>!Xu(zZ2yi?8$ zV0~gEi(Q(){%*(iKIhNuvw4NRHf(vXsR#ZkxiF!5mG&OCrDMHwv+CXWe5{;UFZ^Bj zCGg#~27a&n)a&}@i)vrcB_$@P&LyZ9UZ8uXh=0S@+n=T$&ovw$2E7D=byj+w_h-#B ztvBSD=X1<6T1PIF(FF{DZ_8Du&?NWvXa4BGp_PvLGk4YVX#w@-3-M1;3u>?7)^}6& zTcuu>ag{A%uepXbuk--UY_Q}nzrHov0z z?0IIv{R{Tkz^lie37$G&|MOnp{=6B(hI=j;Hrw|A!**b(^-K-BzW7S}3T!~|PxR2S zAL*OFw6DO<0oRTjKBMhZm*Ov+QOS7@!@JLOfNzBuKLULgkpI1H@jnF0s5kcF`;k3% z5$BJB|ML4)(A3r9M=F$7?F+T04Cwgp`QdfPE(VQ16(srl!9F3$TX zXma`-MQ#b+Zoe73*bfgw2W_81ejxLixa4}y2rW_bkr>cw`h&U((Ctd_gSq(s*VLY1 znU#!BBjUG=jh8uhk9Sn`5AxN| zvtxT3J#W`LQmZNVrBc*3kr%@NuX z<6-yDc+ z_PfN8ylx#g2_E4rN92v-3oXUkUx1!M#p+& zt{H1u4?oSZrnw>;bF8P!jMdkA&Y1iDF6+tSQH$*LIC#_thEdj-vmIlqzBA>nZvAGw z><9YIr0#u*$i4_Z*}9Iwr}K01m*m2;dGLk>;QvD8j^jKh;qhZG>0JkS7@2R&pD!W1 z-yd>CTK;SpPA;^|dd^$qP3}F~(;szw)CcfK`9>*u@}ryPmq4*=jt-g;e63v8?}W)=tF(Vl^-}YoE* z=Dwg)PgsbIVm*DysGn0iCiivKnK*olxw>`UY7iSVBynGnSHyjD<(ub{SHIYeykgwG zV)C|LQIZM8S8_DWf8=I3>O2PrzeO9?|%9 ziZMrR8iXTSyNzda6o$fl#KZCrEEQSh+v8{59SRNHrlsWGjx0_Qj58>8>N%&kAT zZqG|_{uDCvH1j(vd8W`xMP6y=m+!FVOCR#H$e@#lt>ji0zTmT)RJ3?>7I4>sW zeLzz+eK+%=xdLczY$>`Ju--zfOK?267y8@CSvwlP+msGw@S7M{n{{Ghppvt0?3hXz z{J#J8{^580fWdFK>C@#i*E-X$>oE9z#Nc?6SbUHI4mavjd|T(*8vWbjPtD5E@oo<0-V z5i44oINA9xMwiZ5X;~cyi-@}F~at$KL-8a~UOzilNW@IF6sO!|IG|Ie|`d%CzMh2KxkxB9mm z1CJL7otxgDbwz=%f3bgbeuDZYCC9Sr2fA8x9YJs}biU8fd1O!zI-glf9IVw+F|VzT zIy~$zMepaH=}GTT;`^3!?!v9?33|W8C+)vCT+vPU34WJYcMjkDu5=F`=ItLYG(RYC zkI+8z7TQ<+stxUn9h|0p?ti;g@8iyXUtJ&n-FNd5?jo6OJEuz_Cvly6FuleT|Y2gY6EBIc2fS8M*s?@t0l;hovCbuN6{)=|4SUqp?|`672oe;D^f(O{>2cr_N}s9whyw zX!U%TZ?qaeyohmDpkp)NFnV*i1$m3^+{3OZ_jTK|q7O9K@o%jU*s@pr5KjD=mIHsr zNYCg`bJnEzKpgn9;S2qv%R(D}T1*|I+u)H;UxRDGpLGU*`~!Q?WpDU1v=98*3Ox%= zK22_qQ@^|*4Kg>i&&*BX4|BHhCoA7U;}5@IZ15+vpFX$PIoY!5W`jrJwd@^wn!R@_ z4>{Wp(Z{}p*l$~Q3SSm^DSJ7Fm}-~L)SK0rYm3p}4PSnN^P;gGG+&-W9DrDot#|#0 z^S60?zW_gA7SG<}yoXp*keC#>(Pn*`{x=FY1_bPLNK5*O8#TYPbu)t-K69-zwXVy- zjTN?Tmb=z9%l1&b`g^;2@@gkIqzP9OL)@HXKw;Uj-LZfqu&O<<$BL#d{F4-;yWG;t|YJlRIUepys+eY zysmBDDEl1WEOs>hRbz+Py8a^k_pe??P5LHm9MSL5-^2UR@6q8S_3#~A*FwMl1brv- zht@V9B=0ZGm_FqFDtftgwHSSy8b_7)?bFxPSy%GzPjhzWeCBl&Ki@Gvd&w8B=5qx6 zOYk4qMe2rlBI|~Dx_HhnyqED5?`1s2GaICjw(wl}EIgNUAKvz5unki29S^N@Z= zUMmkfB){pa4fL)^S39#_L_i0ZJx=n~!iQrSVqEx+ zg7}oe*jLJK2hOY6E9v!Alg?e0`eBvhp>X{_cY^EOzZE+byS3X6N!RU4uB+8_A9+W@ z2P?^sxgZZ@o*K_fjI7f(x3d=@KJ;!qg!}&s+ioG>1&;tT=>f3boBY$w^bkG-EWp9E zj%Z-|I4~^-cl_kbM2wCYJjAo$;ZL2v8Qri}om(;?aIh43qZ8Wt;i=C9@9n&!E)(7_ z{s-`OXXXambqA5{;4VJaNFCSVz`K;cf#03Q)S?)8F9zO{Pm_lp=!Er(e!_Yfu$FVI zm-Gc|=BVXOv4(Y>&KY*XIz#8<{%-+mq0el6r5s*n>npZT?XbjBlGFx>kGl`q(l#5P zWG-D{9`IcNd>2|tr%y7zjF{bWE9s0=zI{>eKFatq;(W{Thp)gNz7l^2HDs3KUw{0U zYyaHSfB75U+3$S1mLlc9{NDeOcvwk>|1!LhSk@He&3bSGeI%7~d#dr7Mt57u>80?b zo#gUT0~hadduEPeE%3zKMzbDpZ&o>LLJylg9zME`T;56W()CtSdi=@Rho2mRZwJ0` zE|OVy@hk8|?HM{y>MVZHjmmfVobc?gLQfJeQoX96De)m6c~bGBUCKX#?xuQGt*d0t zoVVos4Z4$FRhHOP?c#q~mC+MuEOaA$r!U`NJ+*9dU#>nT${*-1>Qi5fmg>5=C!U5+ zF_!TMZs^TlQbjI}Q(w#B4^+<iAV*;3;f>Sx2@H(2sA) zSr@lZYWKL$_yD`-nB@b!lsQT~&qd5?toMpQ2%lFBxfp6F2!sTOMCOA(O4oavyj|00 zVIR3>A^46<=O}JS=iY20{}6sHw61bt`E2nHb(RNvD`$DY+f^O!!`MhM_BYM_vy6Sji{W8R;T+3O~%q%VCTVy1>gnBtNs*y2+a_F||y*Eq35-7@jTXoGJO` zb0zO24_f7W%#=6?@ep)P1&7E04G)9o!M7bTIAHbel*(?KALDsHfZ=z?}@Z`NJPpAPN zu@3%#EEK<&z;p`z7@jA#mkrN7?6u7YY=3*Na0GtJxB5ZhXXcQeCv%Unh94Z`%(Oys zlgcx5$JX0(nhZWO_w;kJKAw&9Y=Skmv&Igy#yRw(JJ;SjzXrcsjmW!hM2e190I9N0b8JP<=oicI}a*}x6h+$c>a1lC%BL}cQ z@~-tyJ>}i|LqCAL^XdMVvmTRpT~`0gRm7ue@`%^v5vL;#wT`&dDtOlG@P{MF5A^-` z#ysL+{9Yq5yiA{Kkqyt4{JsL&g`AVvmE`u}<5jUM(fg!tWr%$5aoZfStCR6h0Vixz z(Y2PKcU|WE{Vcz~ZRFR6iojUxOIzm?AH)OmkzcR(Ex!`fb;*6U?w75D+c8`v%gRgo zEz8dQ5;?)ReaW)*TO}&CHDR2t8?)=Z({hdb-p1yV_4Os! zwn=>(_w^;${LEKsmEmu@{0GJdB1e&H$JnQq!axKZQT7Ter z_Z#0>l}sS}9wA5gd*r7-icbAy{QbANsCg=YPoOikw^+%WFiTylsZQyZdeUrN=aAscr_J66_fALRe+XL!+Hgtcr_oi0xLbWxv9`n_H z?)}iLz0YBDZ4lqDPsM$TmG3uRM%|!K@4uV_RX$YL3rg-xdf!`$0^cFNXEY8yA_u2Gj5&0G5@6umU+qs={AMqbWcW?$fbSU&_%gPx0 zxu2TQ$I0PS`GC8TbI9S~es~1?-TLsG^#`Oj7TnUYJoa-xxKU4k#T@&Izi5~Bqd|d# zik?lM2KMti{oK#9)HP{(Hh!WOb2UE2U=6aW&h|z3?Mt-x^shVmN6(wc!En-Zj#!@7 zE7YFaK4|SH>SC_q&lg|x#0k1~Dq~;kN&{}kzDg`l^to6K@Pwxp=h4f@_)NR%GJWx> z25eaHz~2iVYz7yz@!(~8B3RUgy7({ih+wys= zCn4}e>Knu0iui-vTq8TF&*J;&D)=^ZFS*>|BE~Gmej@e|^IM+s@1p+>Cw81~J+pWq zex;544Su~$jBgBnjz!cam-Dyerur;bD}B)Z7+Gm0(Suv_-&^x&Y#+7SR{px^4v|e& zDpmu3QT58I|0_7Ddq@;CjRQATzXIM7S;@T6&*XV|E{G0xj6BRalX1G{txv|@;iu)cV)jv zo+;!Wxk@gl(4GA^`LQ>NpG5o&I~Z>)a}j+p#rR*w?{J~Lj$xmQof^evjntzj?PMP| zab3lAGgoYkFgUSJ;;!IPgdEvN?7w-(!}2%pj_~(Gj=yX8yUgs3(6pDnh{B^o*cV~! zkl03iiuILhEs+tNId@<(y+OUtUJqSf%XviO;WG(*ItjzSu|H2+Td0W?|1fke@_P0V+#n|SiuMA7pP5 zo2Vz)%>M=}83sQ)z!#zUGVmo^?`nhxDOJlq(96i1gShb_aA2;vSxtRl+D(D}6&3mc&$D!>`==ucvf0Diblr^Yzku|u} zKiZnV*)_QHWzISfAD_fd*SZF+n@*1bVAs0#uWKJ22fYOG4TtErC3_!d@5A6t6?k*o z8hm$q;SX!AWQ92!Tl^l<7noZ4KjuT{*g$Pne;E;Ipaw$< zqnESDggcWdg{zNpel~HA4a!Gi@X#x9ir-%vSfb87?v^{pKGQ!v;&b4lk~==*yRFO2 zl?syEADTuVBi5LRXgyMT+Rie#Smv_NJ?4yb?y>Q4QB$|vxez}7^W^ z!N+2SkHrcf<*eL$1s|ECjwNdSv8zRTsp)f1rPu4VH{>(qDIx2V@xRG$ zk;9I@JmUn`(pwIALld>+h@ju!r0iedKaTyvE?2d_bvxj>*xcgZkoBbf8!cJ>4L-lj znv{Qoy%hh3+@G%LW84h?2A_W`_cO1)>M_qX49?Jj{uf$S^g`a9tWoK!#zwdG*c;DD z&cxszcIzxdYw@|r4W5VZPn9vQ14ieuhqB*wtGPd1h8%)EmHmos6xxp5{D3qX-kJX^?L9$GO@C>xW2B)y#_2(OjGIAweEwg#|3lE;`@pa-+WS0bU*w{_FN53itWA3d zB%cg;32xeOs_cah7n*1P9(0&3e_yfJ^f$=gf2qcgltV5D=OGUlSjk+m7V#-<9+>4* z%BnN1>*|iF^vAz6rLCub=^ozE?|6!Pw2G&cEW^L#zC0tI5Eop|mcrkhsnw^ksUBNe-IiqSZKm_wzeEMd_?-uF5=vn(_ZM z7hQo~wtdA+X8#Jl#eI^;rS#Sob9I}1)BW(R7TZScJKxmiTl0Sb-(pi1M4IC;Rvi)vi7j`Ys z%#2!~qNW$rysaiXj|H1_R|20!Vh;8Ux_-h(e`Bc&fL|uSmtaLDI8+Hv&Gba&+_a)< z@TwZzK#%60{rT3JgV)26+?$TRUWbW8kHqSMP>+IV$_b4Aj4g$*M4GKCzW&2OpiQh3v1Y33rko!Z>P9jB}63V8#&{EaxxkTs+P+EVtCz zhH{2>I8~VpPtAi)Gxzpex%U=3c3PmaMDh>FbKe(+w2*=~JKauG6f-faI(cocJ3&pNtT6Slm>o#h zyDjtuCHJ#AJi1Gd-apz@xO%^lP|W#r;a)_g}uudt_0G^}x%} z>>}z((FNwqXNy{=V&=1m^CyMAORiOR#)w6nfnF(}ufrcOiM|Nz%Q@^bIg|dpKQjmG z^JcE?(>SaCdVCW5^YmHtS@(UyzK`=G+oxJdsW0_!=FIsO#7@u!V#HJ8#8VQ)Q`$>8 zbAAZtjQTipzHYeI30utB^X?JaPtY=q@4-j6ocYexr_Xdx;KxhMV;s(#Zzr#}gS_73 z^oH)7!1 z>j}~W@WbF*_B%f1Scg6D^m@whho!KMMCS1B_PpHd`L!8C^$B1-=iQg|Sj$fP9;r2( z<4y*Lq3doe@`T324@SF^QV*hZi8^y_(brUj-{Ctx_+&MFGSZ4pb=Z~k!6&QWlaV9* z{yP7KPrBigrIJTCSo2B7x+^1}&hSa!P@QvJH&o{wM=F_vgHN*V5bM6~=Wo{M+4a)% zv}g_j5nRgbD7^w%jGrtsli;#WMm?QDId2;V3< z3?Y6GPL|(Y$?5oyWB9_hy;rkwTmH9yxXrTGjpsX&9db^H{cbroPkJe?U=A_HQD?cs zt7C4?bl1FH)lxqUZ;wo7zfHd#`TOgVbG30MxWaRzE8$(x3OMG>GaY5q${bBALFh!z znG64&=wuD@#in%wn^*Penlq9xe4gUEk%XVxQ~Gta0qq_ch#c_rfs?^*7HC&7yz zn5%iy*B5yk-#S*@c;;|P2~(E1E0om@T(JD?gal& z;)8qxpNf-?HxD#4>vLzotJS>!6!Di+LbEye&-3;@(CjJrj}23?Q9casIqk(J>_rCl zWfxvra$&ph$M5y8K6vNvd)kBH;tyaCwhUGFV2A2AaZ#o{xPyFyo%qCdlP`dLQ)eAQ zD~UtMrxt2o59cM1AIVFeI4XWKSF-bU;?0|iJTc^PbRV*-mFLhI&P6WD*sB=$uW)ZW zzi)*9!(+rYJjtFv3a!f-8;W;EOpjRTPWp*joU5MZU+8c__-v$=d<0_~zQg$>>EDrY zl9!8Z*k+v`r{funYv&|<@)OvG&}v_{VGA{ba-W>@q2}Z_*9LtJ!dF65jgH@<{m2*U zUu*N9KRkgR$hgKfZ0jwzZW%c#62BCG)>ZhBx1IR*k!=Sgrcoe1WW{6d7Cy@S6dz?? z%AdtNMMt;_J}R+Ghkmd1K<@t&=O4)0%En~&o+rmHqesL;1_s71)bDiIg|jm3!jh(s zt2tvA`t|<7gEvfE{jorY@UP+Y#^U=9@JVdD4)7z0{uqLXDxHI~ykqEVanAcr973OB ze>)DNPaQ#@dL4c0XccF8d!Id7U*s8#p1E9f8}!RZ;P};y}m15Bvks?U09dzm|9%G_=;0Y#;7!?il4pw;Sl`ifI31SNTA#(>0W; zm{eD!gey8-xx}ov`Xy#%HFm7$T?-foo4Vb{-!m(d$LG*bWo~8iM8iYPC$~S;{6@oU zk5i9}i_U3aE&KknpE9q7%xe+&>qkZ|WxQp~>u6qc$FaQTR6d` zUP|X=UNXOq6?$Ih$}?;1+rbG%^K;Q_+0%2kXnAwKJk$5T(7;m3n5^ICo8JTmYEHmJ z>Awm_-o}&ris{i_(%7+MKx4-O=7Egq0B1VpE^~nADLoOM*F)wY7t^+t=m+Re zx~IuS%C4GUfxOA_{e@(WGvE6-asJL4D|w<0IN+Q7M$v_3P+~doS;4wi5^E$*Exqwi z)OnL%b@Z$1tDkC7Yft&~G2Yv6e`Vc8N^ghpZe*fq0^-#8n2 zbhhvOxH4+!X;*gNqHLM; z6E$z?TXaPu@@Ut@%3A^*V%s1CIvR=s9pI0WN8m`XlbFRRY_Wyap6FS4#oNLwkVlaP zo>w_Lj{KFIj)NN_PX-X@nT_u9s`xDyr6$By-yb^eAkL2|+7Kh3jIU=sy4i>04jKVWks`*t2a zki9p*G2=z3`;5R3lz#%A5HdU=2wd@F>9ae)lXurS`1Ras?!(^QVR&}k2;Ijc$9uN? z|L~r6bY$^^zr?;i$=Q^zq8owiduH&r_|;p{g&xIsJDdJ)i}0-<$8Rq9D|jr=$@MsA zo*gQ%rpmLkJ^1hndgAX}?6Zx(_a$@h%e`iOHqPdP^&g5IE?3hohplE!bF zryN1P!dHY|6B4Tjcgfv(&7R|{^rKj<*5UOm;%o>nbCkI*=DXv@xACau{buWnX1+x| z_w>>Gt*Ha>Gm*%)rx1Qngk9ebzxm`9){lbaLp-5Qbn;Wkt+VKXZzDIl&;wKGfo|-# zB6#9(e2=5@o6koE!J9JA!?basBl1a41$uV*C$0Il_!w=TY0Jq+pXN-T!^BB9!Eam9 zJ?gDwbY8wkFq4g;5_6i`nKrwu@>D^sSi6($<=v}_fM{#8Psj(<%r|#O8fiK zd6mB(9a!6YI)B0G@0a|=ZkakDaQi+jQ&sK^xjw4j1#pbct5$mu2M_NVZ0%8T+7>I> zj$G&vKN|UDf@>19m3m~!CzA8WgZR;#zol~*a*dT}5gY@b4||ipAorvlUH@M45^Xtj z5BXk_i!Qz2%aKLW|6SyZ@(E_ipdG+PYJqylAaEf=2Jv}|+zSnTP#JV^a5qnjGOzD3 zr$?DvnqFCl^l^;yjs$aQXMLTl?*#rTTi!g?m75n{W%#8nqjK@W%j|pLg;57D6g~9A z@WONcOxx@GW_>z7J1&qIf}RYV62qZ!_)`0*yku-N|Iv41k)hy3RWer2XLy(NJd65< zd4iMCqo<&2Pem?H6J5J1`QPL>+k1M3e4+^UZ|IQjQ!V?MOQ)F19z~8+CZn&@yV~d# zx$3$;+Rwd|zH*Yw80FnD-fi!hy)VAkQuW@^^r_y@8M?@|dyB0-CAVVFb8RQrDq9Em zxC0mLc}gDe!4aIDu=qO8c=A5`aq1$Yt-S9r{^R}Ld?h80oQfD%;NbQ23pt zL;lg83vf%YA5r*M0sKqOGPL1to7y+e+t z;Ad{^VET(&mkcEDqJ~_6?i};>8U2&h|MZlR)e)0tSZ?A^ev@a24=c3X$ZC98(*LkO zvijc5{gc&&4nEL-;k7j^rEYDFE(ymq3T)R3B8eBCgIm$?un(WZ?rZlo(lfVGZ*|1Fc0N_;Qk@N zKY~76lTXgV0BgSV7g;@=+Ky}=&{1UFvC8Dpe^vOc>-%jz)%^A+=WpHqpVQX2uL^_) z6K{3ssT09{m0Q0a9U0zRh0ZQLP^v7>dvB?0jvlIORyn7{A;Z`i$zKwGZODw1*f9#} z4;U^-uV2q~JoH8^ggrlP)m8+G$e$A!rQ@%Rp<>DrQ_DzPKzud%oPAfw*>}a9eW&mt zft&^QVeYr#^#bQT1QYOE_A-nfQH>r~tz)0*T5T`>gio-Cl8byZ`!|cf6@M@=TIYn3 z;Sc!8PFtL387lpD27d@n2S)pt$HxA_XqUjqpBb+azqP{EeZXcKFxtqq0vJv0hSBfH zC(4A8>8rw6D)){t1V)9_`{j>tz$jv1#COo7p<0q1(sKm5j)wSO!9 zSHYi!_T{YM8PNWd(Eiw>+Sk022k`09fl}rn`c4>sf}(%E8^`Z1YA8j9+P0n8tX+PS zBh_H85q%AAf)8xQjs!2_Zta7d2_JBtN4FI|pwA-g<^#n)&)~nk@_{FTk?>!8F7h6k zkHpBF{6Nk_%j5^-N=fb{^S)Q*ndw-|1nPdu!SzYkS{T{K;<(=7l zdMEg8?^6_gD26T+k6i4DC(y8L+UfcHZ;h&2$=LGL<;l1U_)N_$N;MA}A zzg=_#T|bpe_dR09vh|g})n6q2ml}v$#u~62kxkN5qs+?hoLz`~YQRTv)JoU6XT#t| z2Modn2Hsv^uq_(~^xDd`zD{0mL*z-A~vDeliuOeR0iD?om%Iu-C7dle(U1R4n z6$Pe{Qx#g9ws{r(Jp}zl>-5=7qTh+m65;bV$oWw9Q|r<-92?U0Q{Z8SKZDQr$^FQw zzWfz0ZeR4>m~Sfq_3AHa`n2hK&9k*x#sb`%*PM&q!CiK2oT3?QC9Om4nwm_A_`rW0`nUue^Q|Fc4lZ;|qV!K6_O7 zd;09r^4l9bCVjE7bIL+;9(4a@;ptK~2 zU;l$#6X(9B`_-6z6}{Bn*F4!L^a$h6=-$&ES$oRox5>@v*PiZVPw|t=JR=pvp}-;O zQ4<6oLg;sc{*xXs#CF7|@iKn;LAQF7kBPsYnq6lO!vGs+CqXOb+4PvqC&s+v@V*4P zV#iMCpdK0kCMST&JJK75@v>u5_nR?K&ZS2dhUT4if7V*>CQmBYT5dJ- zOt6*&<4{u$f9|=SDdxT?>xr_SAZrnQ&AFazezC)zANNaNfG9dXR$Uz6#8;VZPpeAM414Gwre5FnG^Ar+fwigS^}@c+=eH zgh8%3X2ao2_Pi9_oaazwt!*CoumIVMjJQ69jF|_nFTmgb0rCwxpYNG(a0O%aJKw

    8Jygt!BE+Fp^y-I2kMc+oJKkeuH zeC`=YU8Oy)jHkzT;k&e&?DwWp!>H@Hi2uVIrGK9ECsn-OUErCCeQ(!HPoyTj%vI8P zr<^&?dqTtrBvxSTd{xUobQ3(EbqLSzx<;Q*dJnQv`f)q${HMte5uPvW?VcApKK#!) zw^_)82?ZtTy6S{gyiUfIy6R%`58AhXmOgWzX*{uaUgPm=t;Y6ouErD8QcKJadC(>{ zzdEPfpC1?|{WG#)?R>Y;<~P8t?EQTfey(^B`x_G&!nXyEF=VpxgESO*^t&z#Odvl| zbZnt-UE5!vV#GFHjHOThepB-+_#rjFCZ^an_KxxD+}?#>V+_WZ`g&bX?#WZSh@F<`Z+_BcJe z&)M)sY85*L|7E@!|D}i40Nz`Y!6Og-OpT--l6;?v0-d`x)K%*l zdWH8$+3&0ePQ&+v2cCvM3XRD%F{v;aAFtngqC&s-jhXu0vGT%XWI25zJMqgVuw5dq zLc z{2Nnds2&wIZhlwf$mAKxLVS)g?>wm&;PVY~f26W+|Hek<-3hHXJm7hFp!LUXmwAuu zNA}Dbh8~^pHXj?IbNwTX6<_Z2=)5CsKi$UK!kyGvNKH6(#^U?`$_C{d*`WFjodO=@ zKGC=Ew6%+K5r&Ihr~M*f?r*8UH^TFM`9?fXA}_eFi~2}aC(>Z95q%9Vq_@H%&T(Sw zxO;Se{3J?e_Wc|3K<3|v&K%0Wu%ATsLi{94B`=q`EtPs}=Bn#RKce#JbNEc!R9uYv zW<86~gn7vPgBvT^5A09hgbbWM#eOP!pH~3B(PI)ms(cpgODIv9ye*9V$urshggXo^ zDEpIVgWzU*FY#O3w(x&(_SAXkDEqyiFwckQO{YGtQ1KSUQ(CT3`gQjHzp*~&{7R~$t4KOGlkZYnOy+*CZP{0bG%lD?(Vzw+wK(mpf2|NQ>SGkX7Je0%?8kM6>c ze>Z-YHRw9n#ppC*-xR36Hv*4bc<@iJkPk>cUB>gs)DUGccm$0*IeDbQE9kW!TAM@O6&Uwrd(k zks-E?JYXL4qX(+^Y@DM*WvH8bk(7|&9vomw6oczR3TVfN{LlN^Z7_ zI@jS(t)*w%W_lmGy{`F>SVimdT=}i-^gS$o?~z9rV+W+@(I|36WTxoQv1P90@9*!P zLu?te+)CU?=E6O-T}3yorOx${5?P<7Z?*1~^j_gC(inVp|4^-m$Cg*JN64IF?sdSM zoZAt?r=>4K4EV_YNsm+MQTohhQuS{3t%iLI4Psv42J!VYPquNY2-*x6n=_paZyqBx z6ORlIgo?hM!JF^+c>j3wYt-5)+HAN?(`Lk6sSy=k9c+L$w;SH|Ifc> z&}Lh2H51=*_sN^v(!7~DDc;OnHE+Hw&6}k+q15pifA%h&vv64;jIT)6r+70sq+}v{ zwT1l;m6Bt_UP%wJLq+Tld|3Idg+B{k3%#*V-+UQ=GB__i8fAZl=f1%GL7uny?`}Rz zK7@?x+;=&bySM$^_=BGNxmaZFxl4%eGdFmwEpOXz?caX>lf9qiqYbY$*9LtJa^6;G zCH1|+t6D~Tro&riz@KJfi-m~w9iz|WLnaSJ;@rkZrS^1bKlil2?5XtOm-l4zT**a& z=eDJJE_2nrPUL(rWG{0S-mChrkV7CmS8QnXbiJ?Ke;@lQV`uA*BjNQ*&LZoCM#C)y zif@Jw6(p<3tx~=GTlr3U`5#7}GDZkGcFIJdP2s0f(;h{4i=pGi$IrkAJ_EgVMzRAP zu5;RqWihUv-e&fijePaOdHdTrLd6HE=Y(5pV{@x5Ef$C-&N+yT$`uWODhUDq50 zMs|;gHqLF5^YxTI%=voiTCVkB>B$lH(Q9M}@^vP(TH%%)CHgT{1pXg6K|(v}93`Gr zG{dt>UtvtizbQsvk^GxNXh-EJz0O>~(J;T;bhHUySCCv|m7@gjvvZVWd^_*hOODc4 zfS1H`hUA^AU&h}d))O}C`MInka*3J0S%+U=%f)9j;-i7cBzLk-dX-LQE#te_vcs$; z%?B7quSL!u6x`Bl>5*@B#H@w;?X}!1YdO;QTBez`{EzEg{mmD^gKM38orMQiIe+WM zgI(4xda_DyU~tREgKr5QjAp*8a^u0LfM57+>6>hwc}QTi3jdr{_fs2o(b1JjzqRJ4 zUF8PGesgWm*T``2WE5~6(hb+oW#b6XYQB1jf$JsdJho!|{%IUJY~afMHe4?fxE}5s zuJC$=Bi{wC$j}jqhJW@H(aW|coee^l9NhG$@8_U1cxniq`UmH42EL2IC2Pdcz~gd8 znFGF83VeOco7{$6boSO($#WZ}@w35PBl;?RNy1&^?Gxh-r=aDx^U`#dpAAFC&@ddO zVaOOca{*fo47uNi;lZbYVQb$o{E>m-jleL#-@U=^VJCcS+%&Lz(D|Ez9k~tU6knxs z8*IE37#^7h>?)XVLvGk@7uYpiY<(%DO=RlT?I(cj;ef#{@{B4{A{nE9Mz4qOwe);Bpt8m#^zKbyr$uZl44e%0m zK#~3Qmuaa^hLH7PbPmZe3oo&5+KO&aHRcwj3qFzVpWtpPq}P4ZKeI>F-YfY*zL{K! zf1FOxVM*Ak+pCCI%YWR$>aZUMZ9-vwskzZbj3)5K_7EJ@ z^3TZN1(m$doBYGN9K2x;zwHE0&flE8_uR#b_d4-=wBYwN)<9e~9I4gv_gHQ7na4$D zjnwZhH+b#W*YGrOqZPa+XCizUcpc(z@Xp5`Ne?A2`z8La8q<$m`aL;y%6XCzU>eE7i&yf2+j`)Z0B+!f51F=Q)LYEg z_F)hg+e(ip*13fEv{PT;90Wy+cP`fF)#k}M!RrWk9fc-h&_w(&J;shyC);1IruRg3 z@_6JPPbajn*aeIWyve`|_!y4ye)Pj0II-K;bsv7f``{^yM_S42@Q>d4xL!vac@o$1+4hs# z`r?%uAKRS%Qf%@z>zpUBgxp}K4Y!hasa{>=3gnVia|AET4PN@qwLxFQQ^CvK;Nm9m zaxZwfQ}J8;&=r9%lF!B->`Lo|jG<%|V`!alWNum20*t}MF!zH$8^mV57~BcAK+6 zy;66id4|4*rvMjniNp24WixOgw-`C3;4(ZLEz=e0(aB2G`aM>@uF7o-o7kZ(oUSMfZA>%eKISbMWnu8+ff_juB!;%qPx#UJP2E z7|*<@>2a6H#F!)vZ| z{?-StS?M`nA7!sr>v%;PZ)%BMj)aCD+M;3f955P|gQkjd(3IjeYx40IeJ9iZ$GfC& zpQ;DRVSiq?1)6FYZfMC|%MDFUW^e1Dsg2OoT5z+5zwv#jGl!?FYyKQ(Rs@mdA!NBt z_u-AxsdJnzHZibuH~r7|deT30J#7sfPaH}1x;u_^z07qIb6pSpBcGL>9I0(Ck~z{d zNYOj}J=N8(ui;6|aT)Vk&m5OC$EAwy!D&}uq~P>k`b;``B5T#OZ~BC?R`DS^dnt9}zE2*~Fvj4vxt1HA;@8*IRCvgEc*taU$S8Qo zXa^4|Gd!dm9x|$L9&$IiZ@ua(Yb$}VH+c#4&>IgK=KQS>9&*pkz4H*UfovY~1Tf0> zjs7QlX8T4J4~Gvr{hmR5X21C?{;Qk@gZdVkC-p9 z9IYSOGR4^Nk2!xc_yF(RU`0O~Sgp?d(LP48;lop*FaSrgqDS?+3v1?O8GcIBC84BBM87)I)Dh%LwkZ`TDFT8B5EE z^cgD5N&AcF(=NVD=A`{aZu}nk_&pplf_v?;ZZcyvDExufY*)Sb<@z=<{cwyn=3B0&R~PiAL#NnfAp!xUK{kr zQ*Ul|4O+IknD0uw-~8kce(;)ncJY~8GjC{{uzFAuGK?KY#&NUmHXwEHFe zO%p2%0+NFqgbrq**Qoq5Z$UtM*h(JQx0!dC9KXNtyNvPY|Btt`0gtM>7WSE${1T8L zAZXMi1OY{bii%UzOfuN0*rFFKTG}QsC}?b{r7e0<69|GDTbN>RdYjvipNN>)D)r~; zTzW5H1gdEj(OcVcZ<*gDFrpB##G)Avi=}-2yD**+s?C$sinkz6(jcqS3kUT&AuVe z{zBsld<-52Jil|@TRYNP+kiI?VIze-A(Am&;nO57=eRuvXS0 zkwdZ$c{T0YHkCccd~~%#R(y#4`H@RJBbd#kx+|UUR9)!Vq;$H3Py-ybjp#R(ylrmw+=btura^=bFqW1xmnD* zmRRzm5cyGp{HQ~Ij7NSH^1I{ozMvq+vh(%o9mhK~1)YNw7}J|iggz^}pZ zOzM2gr_QhZA@QuDFNEgBW_S`=Bl4&idM%zXR>kSR^l#XIHOTb$D95)?5qGkwh&`uc z*`vW)w8WjLa|A6rB7xkw=f<7}`1>W{5t*Yq<0t0bV8u_sOEHPDCSF6@#Fx3X7(b}; zan>-We$QwA3vG+9(oIe$Ip;n+7uxGHH@AIdapvZ6=H>}>c7l0$J9@jlkFV^ro@3BY zx*zlBoC_Muf!DD)Vm8grg=Sx-edjxiX2X*6m!ybIX>hdf93 zkhcgqOnWld)%%i&6@X4ZV;@fx`5ROGX2tleXY8BG%x%zVRd>&e5)V?#8O8qy-BtBN zcRifjdNR5@?tIrvcgX0ggT=Dv)j@Y(9w6Pd(pN=y0UayU-DF*3R_xF==x)13cb@YH zM0aogaA0(I&)+@=-2s=9m%yp$4)}!bB&JW~ro@4#(H-U9-Qu7-#(0B^SZerJ{Au_7 z6?y51?fM?~9n5347{^~;v}oZ~h2$e#-qSN%Y=~^uXgZcMXIY9IU4lM=W+djU6B(LW z##yDvP&aY%Hf?q+l~^`e56()yfz4&xYZBX5l1p9)i(Y$aFB`i-$BR@l9^qxk)pww2 z=yxD;^(<&|gV1Cn-!-T_A6vyQ_!_ZE5$cc}baoB};brAx#>T_8Oyxq&Wh^8&ob2(n z_0>ws#Fw$p+Zor){b#10yPs~~wv7+bLlQ?6X#jtXWx7q`veenVDZM1}C#&VWzsUK( zvR@^mWh*d=eEcu2g%aluPe+(LMwxRmPxHpHI}*eUw!ekV48A(wGgyldn=OmA2*Z58 z!!QpMulE7`F0t^(j(}UnU*u|G?zw({rlX6v&#|_$&e3FLP0JTGy^Nu9u!yPPwp2NTyYa+JRnF%L)=RmHlayoJW&YvDPFODGX8Fv3yPtN^8LAv}gr!n$1~{Hc zU$h^)7d~i9m8&v>-=dtr9~u7D=0w4q=8lrv*xP<9xy{|pk#(NtL}NyCM^k2VqySr@ zkUo#XR;16a@8HY+o~F@Mzwfc@^#tcoZ)7~*Oyrvq>zfDornb*F_gUZU@C0uZm?!y6 z5A~kXNW_2j&qA%@R;$Y^SlX>{agIz z2hVVxNYl@~Y7LpVJ?H-4E%2t$uAI9ndm|+0v)G;q&ro>y4E*!5M^5%CYM=f7yU58u zgfr|aTp{Hz#_z#;BR=2!;7^IkiPiYcNS)ta$LOUUhphVZar!(Jo6lqANAp|PI(_ZI z21qRRo9)Z|*nRk^D!5sX0JK%LdkCcEGnEvkrZXch2!E zvBpo0E$^N0&b7yODszR;dK$!56F3wddI~fhI{F@9z8KgsA{fW6dzikz_K@y-q=5c2 z-U>JOj8(XKkoTM~cvPABJIcqVu*R$XcX~dB zequghir$yla=ngkw0sr%Q1%?<=d;%$0sJ#5qkWvjp}zwiyyrK=tWy)K5q0Z*MV#}*m_NmsXIXmKhQ;HM#pg?TV0l=ryGhPkE2k0g$XK5YPs-MY zN2NbQq(9(HbiLqg6LQ}}xiGXEDbVy?B4d2d)L@+a&x0A0Cy5WcldIsl zoo{Xd2k!YFHv4ds87D% zgmObOTEz@pm z)w8?0zVxjR)HlV#Q$@5HcHPUIiSHjuwOJzHPd1LacrJX`-}hzIot5JYWv_XB-o5{DUF8$%Y-T0j7gZft1k?e1U_vN<}-|)=V zz`Nsu)3IH*zS{$xXr9TnaGs?6IeeGg;y2$%PDh{PJgpb}$nT#czma*!iH_KyU?+TZ zka3qivtiDiig4~!6?8A(&%2lNAii&y``JU2ikCc zj3Gwii@{Hc`A}=CqbwOSyv%%&@^XHe$QZ$eZC}9OO2*i6zrsJ)(5~%cna`eaDWAqi z*bd^yQGA5`@CC}t_{zO=eCvdtt~x*X8hE@);3YT7t`X!g3zx7)ld1H=IQFtD+CcWs zgN~k3d&h|hqpo)B46zs6p(Fdg9o;5&mR#jopZ1Of-aR)Mr@eFkp7yXy(%R$xRP7-z zjs(K^L$Yh0H)tI&V)z0iu#{2zf=;;h5i?_E{+`LNl=)-NRw{XFbwc=G$wxgm zQoqQ#e!p+GzDK?&*z9_4*7R~#ht76iR>#9S_D_St$0XF z#@(N_Mvs%=E+yZr_AaBnuw~=@ddOcIz}r;YmYMt@<1Tj6G*_s*)jEHSxme^GpBY-N z{O4XuS_F$p}T3W`v^DA7xEI)@!4Glw(t*&?%qwqs(eE%cj5s@V^+82l~)zu4J{W#E@F?Z9sDTahN9r^sPs;cjeNsYli; zQ}!s|eo?-~hFz||HT$z+MV_YQBj3pU!Ip)Gmszq9dQQngd{Ys8IzOmAQ5LfPK<-0* zK8RBmwoMv6S`q4i6R=sg3eZkhO zVa`~_?;85S`%uQEkMCP~#xJ|1%n0A zFfyw*ut$6)bxi-@7pjhV*rc>`|C79zIwN`P{kQ6we(~e`7BFX&=bTre%iU{{^H2dex|Y*AneO=r%!;PGd5`#ihW*~X;it|y1Q*%kk?{-zlFSiV{L?Z@`T zf2qG&j%^H#_fP-!=pD(N;U&iWV_ECTGQ3= zs=dG8vQvrs+G|Y63~t1p6#LYc&kHU+jcl&KPQ?zfW%KXYQ}WB@7X&|m)<49zYRBo? zITdZYRdV2otS&-Um&h6_ec1)C$r^`RLxm5eZ-vlAOQdJE@CW;S$aBgWSn!F{2lxf_ zt=O?m@Lx>gR<_{_+KvreR~PE!tdTLFW?va;g}?p^ADzVJJ|tzq+d*vaJuc%3$;A-c z0}O3t=4N8-LyKal>Z8cMti$k?ZYyG`{0)#9dnb6r4Zy5jbb< zD%OL4BfmBzzR@cBI}h2l4xG9_1E(+0Z`QC*hEp4#hoF(~g3~JUZrlFMXpFIXL1eb} zbFMOsC!{W^Q*`$pVg@>BPsRR&Gv?5H4WkGhklj*8Uf?X=xsjpbdyZJK1@p0Q!rd|! zI-kJGLB!HC&zQA}wcc)GKkyr(@Z zMW6J%sB*&7CnvwmM0X0mD1SQfg3fo>Tkk{<9zEXEu$MlBD`-G#SY5dB@j7_r_KoynNb0@kJ#e9t_! zk}(djp1F|q%xcy%7Zdleg!Rm&tY*$5ghMt>RzYLEDris8b33#R& zW(|JPB(_sx8tqO=ezK@Sb_TXC& zPxP72eJ$eaPwPWA@aBQ1q2OgWxEclh(ia(<+huIB`96=a844bTGd823Az;|VxEuWG z^*WbYugk?A_-yEi)EFGB2d|8Mgt3n@_A$mj-sJHn7<-bUz1T4e+E{Fa+Gj!=YoHOz z7s?trahZ~LafR44oad!=O<_wWF%186tLQE2WE`WV&=`1=SS-m)DfrU48C=#ldDQw& z9NMY{H*vqutV0&aI7LgLFX*n+@FahSzK{8Vb%ufcCu69``@x@fHxzxAJvBTN94xL4 zh3=zm;H5vIo}NL?;d-90VO$?{$m==OGuPmpJ7^>0T4K2+rp2Aomp{E2eF;6ss=?)A za0xxPH`RGNmOBb0NH00?adN`3Byc$mv+0AO)!0G-69ODDcgc)l??3t_4r^K;GW1QbZz2bYD zEaNkW@tMo`Ab%3bpY{^Qhw@Z=|iX`@Z91@nCz*@Tzec zPd{Z`=CW@YzFgAZxLADI9;@XWV1@tHxXi5$HCnvdmtXH1mCmoit0_KR%J?i}d}54G zonhiXcoE+4mU2$&5ag&QgWsHUN?swE6L@nOH?ezUjwItKzqRhv<0|*pol8!@SB!g+ zk+Y?q9egWw$ei|0-W}kb%rPVvj+1WX8=(ui7Nf&e*J*%W1 z-c?bLyz93<>;3kVycannGE4Ar-Ab3vWw^k&x0yQ2GhA<%(?%utPt)Ff`Q548ULn7& zx+_mocjxL}dfmJf+E|D@2^b;S``}0Rv}PJF5lgVvsLcyLOsrf_4f#!La`_+B+ymc4 zRwMrzixOfd$6^DC+=^GQcbjj=BDZ2QxQ8!gD1$(h95%gf?Drp=xMv*x;J6vYnJEY14^(S2><+Q z1M4j%%C_|+W9YC*0q3e1uC|rL0CHw|Ti}z2A46u=$7nN7n=#q%Oq-))FHeh z@*JO1{YL6ia7gYg;3#J7Qm1 z^v|PzlJfyZrNs}0KXjXskKD`~I9HWiH8D9G067;y-i5JGI`TYbd$tEW6F=1BCb!eb zH2b&YsJ4w)oF!){4sABB!CojMSB|E6y^pGfx{#UJ09%a>-t>H>F;B4JB4{2u_cK44 zPCRu6{4Dcd$$g=0KzL1b`j8+oAe8G4oMG)NvaT_Gm3>{216CZ6XXpv}Dl2M@V8>!Z z#lvqxZrXX&o@9MOa^sDx!=9vmiLFL9Y?XP>Q`n{A>r*@l97=`@fAafRA4*J$jm|roMVhU(YRd=ZtMBaChjGVwHxQVH9TL(nNavcjNe>g?MborsFh>{y#vJi zb89WU<4e$c{H<$=h4)tQzQ@A5|BMsxegIl8?+4$Z6({2RP7B{oJkN39`Ls9&MxB>q zh_x5v3>90faBS_x5S^UDG3B>&#(~h4_>kk^I026BbHMi!BbD(Y>kkW&7Zu>M8s3^S#L zjZKqvp4~deq(RO^$1ZLitj5GX_oA42bs_n`^_b}ME^Ho{eVQ@Z1P=-AcYUB~U+R}J znULX1ooV4Bm#5IZoN2KL-P#RID!v<7CB9qEvb$%hkN9q#?_2iAq>TyXzGjVy)Gu*h z-2v;|NX~MUe)bS|7e+@$(2>elCg*Mp#Ww;Uw8IC_5^oY-0uG4ji!NhdYK@B+I!`E( z?Fn_)=`&5c@lC6kKL(PjO;HPoyy+^U(8Sse2`LpC!6v8nOvHNVg$+fwNdXM>|(ZJ99;ziSA;~J&m^JK3a@+p6WCAINw?HjjZ2mbPlCo%h)s1OW)@XkiLJ+9xWy7$$_HiI*^`s zB}~qh$jff?AoOvtb)=&28`(QE0~>H2^j(>v??LEg-}5$o|J(9Y%N(1&zi837)GzdX z5%hiI;RoKiai{UN%NV5S`)=s_ZlP~r)O0;k(RFvz$l$k2d+GbqtKH2qA4tg@%5UP# z3hAHJFSfjlwVW;14h?lM-kprMP2cKF8EE^K9B8@{nhrqI3!&+E+@bh;?oc9-=aqO? zMa%eOtEc!lPi!Qy*Jm{!T+E)sZHD>OBbruOhf;bv{2XKVg3r9oId&FJ)(TBteI>ao zI0qZ}R15|*`O66dlT9V|*pa72%cS(&FyThVZaw?As5{}&W7jv=X@C0Sk^zog+u>fl zEMwPq@1Dq})PCUDh~NUrJ=2t)d&bTyK6Z2;*+ieFSYs#f_a~Pmwnh10Yexm6)$rB~ zpLsrKN@t8HV~?@OKRLHn%bNwG$Op;XB`)#?`LjUw5vupT=JxexHpd%=H^+$~j&EVk z$@)gJ$!FF}&Rb|l;`Ce}jO~>J9NS;8 z|4i{Ec{|kD#?o_?gzFgF)ozm{&(A0QBNSiW1Ydp`zT603u21ph;55Gc_u7H+5g3IZyGup{zf5mQ_eRFz^~nRyY1!7)kS~CkbRnOE)0H^T!k)qjx3C|spnfIXY9>9 z&%o~zKlAhH-t+t8g_G#sCF2LCd!zW=B2&_JZ^q|n=XPml7X7nz?-YJdGL*lfmEr_s)cVCZQ*s?=0P`e0jHBq4JzLb?-IO9&~rQdDaW;_0zhy|NInTa#KXeOQCqY z^~?eD_VoP=h&eS~Kbmj>>?xe#gko{`4`UQ?4#k$N$N?WBYF&c zCfVzM_C9@?=NjB1@Y=FW_$@LW9kL$UL65k~j2GG6@S^0d8{_Gn%gElN2+wYD(w0qk z*0(o0-&u55BsSm8?D6+V&Z}OVZ~eHB8}h-c$W3jh=CyoLf4^15e)ihJdyR|}ZQ(V1 zug)s0#MTAh_(|Ar{?PLo@UPgxXHs`c?_sN!e2%*Bqi&o3dU-BG`5lHi>#_S^32sV# z<{;<0UYqxban;n|a@IJU{ja2rf$-gbKW_0Ic}KL}l%6*wOx$Ut)UtU!n(t0!^RBe= z9UOQljqminZ^t~_ws{{+YQ8&#&AT>b^EM5$Y~Ep(jvc1>Pju@=7rW4}TDR8PIS=Sl z;-|efujp2x$DW>Z@ok*f-1Ap_`q12?S;mV8pZO=~dKUI;A$iMlpm(GB;1+CU;;3X@ zTGrw_SSRiz=1I^0@Vznr6CQm;=6zG)MdCD~rSM`MHu7qCv4lNgv0QBNO@md4@fezn3#!JK;4aoVMH$c)u?2mH_W~;GGD(bAh)KcY9`wn{Oz;}}5KS14npZT8iox}ru#Q#FxRrt)k&Ub(1c{l$e=daIF zXPZQ6H%5G|%n>gbAgwgkTXHUD!CI1@gEO25tqis7i@JP8D>JZtZ^HIn&K#mf&aPAb z#5`s9+O)Fy!GXy+zeOuTCli@JR5O35R`Z8Ev2oW{Gq0~!^ZI>d@XIYmr0 zS5141|KGKD1iJV~WPM+J{f|{&U%ipUc2VQc_zgsd$b6~Dp4(e%0EakJmox?EacO*2D)l_pm;ZjqWhe9UbJZUyg2i1l=ULfaEM)i6;%CKVBVeTq*WA zF-2SL9QG^uy^_34to5lJ_9n4K5|5C_I^__f_Woa9<9p}L#KZfxyUwUSEa%wrPJEY# zv4aldn`$a%jWox2`>@B=_Djx8{iUns#~WNmy^2pNCC2S7pZRRA&-^y_yU@M(uLTAj z>w-PVGuCO9A42>Qo%}w?zvKl@a($owFfp>S-ui>ij~fb^>l|jTqvGYT$)lbjEz*WN zo1Ad09k&5D>%nh(3{So6i<5QJ<@8Z@kW-q|hqV6R95d*O8F;CKbA_xL6;JT~u-M=YnU^%Z!J;POoXr&b6w~X8n7|zoBFaC= zJK~CZh(B<3_sk|3V?;;Om%-gv@GImow;J5sQG<*?UI=a?l^Q>>h1ekP)P@r8)rQ&` zYh_=wYTQUJrR-08Ue3L1;Z>#osdFhMh%xwkaP}4PQ zCb3Mc3rs8H%!e{_bczQ}_m&=~qVTb*+?)BzJv&aOpqy%E)c(DNDuM6L%tU5Vn72 zB(XgrBc*dzQg*~c&wHT90Diy`^g(o@TDL*h7dyxOG<5$1 z8F%EgTALBt$Db6PB76>QLjMWqpO~wEuO^;xV9q z7q)`C`DW-NMf*)z!JV8(AbaH$%~&$#2`8>Bno+nqHueO2>R{2pWJP5PSEInwX#US` z4!0pIu-%nCRhKnjT-`H3Tn!p9uI7NN+rias3RmLSaM)8?PQ)^UKLA(46Q`079sSx6 z62q5m#ogO-;&a$#_&~*vdOF*n>wivd8~p9l-gwlbt!`}}oGtUKjCA_|-5zN|$8Ryr z&h3m3dbs^%`11vxO%ofBxZ@t+Uuc-iv3-?%GbUnVXEDFZY#Ga0z^qT2#AT!VhoJk< zXzp2NSmn;f{>x~IqQ_&~vDc)m6%){2I0Tt@hSvR*Uw$SzG|+3r9=;fP`6T+ihZy4* zkk6cvj4wdzcjQPInPv2+--+wLT4+}EJ9P^TB15gU6s6NuOcC-Zicap4`hitqFyH(f zZInnG=v`aCiwufQM2;d)dwPi9?#Wd$I^?Vq{V(&QFtRK%(PuvIe8>DY3@<93y*EF& zGgoxB%xm--Q?|56e@-{Ad60c=Qcl*2?72<2p7CB|^WlKzHA-eZb{{f}x@2B+DxEzc zF;JN`6F$5dKD;GOX0actS7s5X@x+fM9<-MR!*jsbTp#lcdtZSEol=O6kg0jDHAAmM zlzau9F82Q*axkLXmq9nsaO!(_H`ZDkitoYpFY$ZD7SOi8{{B?_XYa`n8$JIteArQ< zeI4gJ;=_-6hUonbz@~qet>qJp9W=6ZQCzoRLFXO(0`y}@@+}CkWzaxRc z-bnRe@3FeUX|c|6#!~!)J^Lv;9-r)6TqkmUhwCJ+?{S^NmG=U}{GqbOkf&pMfZzA#*iTo)K5UwG#Adas;X9{^Sx z4|&i?_&w-iKXfstHWU#1X!3a~pT-kA$>G2pQs!IiUrpttVsFE2nHz89D!Hj-y}6yU ztHdsp-+k)a8hGup;FIjHuBE;V;_p>m?9-I|R(4%g)Ro{{*~1+{hL)u4!3){Hr*kyt zuop@ANA1IqJ%E(oz`BXheU#r~kIjk0YqHLU9NdF!Rp-hFpk3=4@g}gtcd?$85A3g2fe-GJv5y)g4vKQA{l02k*_WBZoloN~Oj(gt&M{PY zdUt$q0q}S3Ajb}QnefLQ2`KvVr08oo{td~SDPvcaD>7hWYV5wN$8N7pR}o+@V$LM( z%kME8bo)DKzrreO??a98z6!aXMcFvNSM1PbU!tt!e~&-cyFM4U=uqO9!<5zYp`l9V zZU!Ivj1Qd)LvopK0oF(8OU}IF-~l5?^+kLQ8$aur-Ol@iyf4k=JPYo_mDnA~Iq}i# z;N4E%y~>{FWp3k%SHVfFnizDR2Y6nCzw^S&*<;WCiIw=~9;S`Hd+>|FR~*|$_F_cP z?=nBrcspC+?E>&1dp@N9^RR7Xo@L`ThCV+^4o}JNE8}Y8HMWEtyYQ=u*N0c-z8XBm zn;bZrt9e!VSS#Ua>W>GQQz4&hT)c!naN_Gm_6vP(e9Zx0=mgPgPJB%QUt{1kSyz)f z<-DZr;OmBqh@V>qF0glYfH$!*c7i*})BWm%+7Np)b$-*E3RUjG>!8Irco(}}?Dyy_ zBNUz`<+Yqubo+>=+b>d9h*hTr|jN|i4` z=UtJQH<7y{hvvyT=X&a>0nRA~em`qW#D~QDSJ+!1eyP}cO$&GMJ~5NByco(rUFLMOs`f-|2ltKXxSvfw$7IpZ zM&P5q0QIg1_qpeTd$GMr4RQrTZ{U4CI6o$SHvBpf=CDzGI5Fm{@hR?5Vyc^1svNy; z@6QR|fi6uHp4%K7eqM8|0AJci*y-5ZieAA@qyaoLZ;zE?7dq%x*4)`&bVZ`z>-aam zkveBC@sZEWM79afD}Cz84u%Jb&vsC7>RQ1uV>g5Pz;k@N;J6nzzY^T0)4|rj^;au7 z|H^jcJo;9RvC99Lk&<8dbZ1L0BjFv9@iOLeO-yomyX$nWJUbUjj~_hL(DqdPmQ#?$ z)7aYqOdV6W&a4e}EOUoCfi34e&gXMww@Hj>M-6!M4D#AM9%1YyZXkv|{uz0RY+e?e zOqccU)?96?(6-nrat^edRUh}0FW!k8-ZPKhY8ZvVBg|pCV^*%_63gBS=&Q)i<@mt$ zn4A-g0)GtH_mihn`@hTZf0tt;4brv{--|6IIhhxY*VhFS53QbarJUYJB3F4oNSANY z-|vJs-Js8Z8`OUI+sS)#WGr6jEWCmerLA)D)rmb@+`kQQu>cG6JG9_-3jlDetQgg zcO&|*&^1W$g5(hw{WrnoGbd)E%N+Wz1DSGg3-ejtxp?OuRvRjXr^-d9Y)O|X#E#8Y z>uhV%Wy%4`l~RaIDM6-;N2W||>hW)po(EKb*rccBAzA(wX}msc}h9q1=#UM?4Usr?!B z(mG^#1$tBC2fEg_{h2ZsTWXlGXL@ZE$#WojN#&+ENxyd^OB35zYk+nVbMSj0$HGg& z_gtNu;v(9O%rVUPHiJCf$QRmOflc%u{{>BuV@G@&;&))I6f63p64 z1$Yzmy?vX`S5WZ>c!u^wpG0TU_AK~(4s<{t+qcz*rhTG)RR({uo+bOIAH{b2Z0LEt zxg!d}WeHvS|-^qXo60ec;6je=d2}oabrC9(du^o|+7NWSPx9 z*fu+eW7K#RxU!SXJ7z}%%=PiPCl+Eql~Dh9_+%nDLr&}1OU`|^{fq3Q7hhp?yb;p% z2u`R6n(2#^{{v2(ZHFfU&m`z-JU$TGl(wQ)J3_PCr()wqw`0?Qv=Lz)c072W0Nx9c zU-P(+Fh*gXMR*p4Mu$P8o3IIEg}t_#*rCmo4HwY$E z{b$@eMsXca{e9r>pze-yu?LKdHul8_1#f~gyD!qO_S6{bemLv5`z?Le{yXWr#AMjx zufMTr{&Jh}p_K zN`1(zSRMS>fXo|gyttD8Bfd(#mLGn(%#3U+Gk;j!)v%EqN5yhx z=@xMR4FBkYNR7{2<$U)X&tE_XNgT%G%t=c!Q@+YF=G^6*JQ2n>r3#ZP^aa$+!u|`H8)Gl7Rcns1>|g+UT>2$-hgXBYrO>Cy;5ulN=lCaHOvb+K zt>NrQv5|$=@~NX9Jyad>axPk4vdVg{=9Kt`M9$40!PIWT_g_A*IoW!CbFzb+ zVM%cQAvpgCIoh<^tK#Z`TgN?Q(~tCX1%6iN%&TPQxX4rT_D+dKBKF1RlU88eWalSX zPd}Or(k|f#cqpGS|xEJ##Gl*58`OH87a>T$={--e{JyAd>5e zrC5l(W-gM1kCRKe!pq5JT!sFMeP*Mp*844QS@U9Ou==`k@N`yla?dDmHM&{WwW8ag z!R^psEA~&xDsOw6&s2H#`pEee7TmSVnb$(6or>4=`9s@g_B3d}o2JJ!`>W3FmHq6> z{)&G-Z{)~#CDNC9Zxh?uNPh?`f6OdzRJ!-?`4|Np_%Bb z3EuE~j0x)jiGoZsJ}MJ^H7-qGy$ekZL|^@27V@JN+`d44tTV*6Ll^Iqnd6X+$f9(8 z)kZn=W4FhOr}ta2|D&!mBL&x)2kugOYp>E!f@;gE%o+i#>(z+M3!U3`}bOATTQZ1NBlHA0RAr3DaE56zw&?HHUv)Dr{Y9Nhe^Kua(O>L6SF(b=>RN_aSMmwS zea~~Ojjb;?JGYdZNya|8hP?%he{7w*SAR9Io+kRM(QQW8Q0_f)OZTI{{$&&NXVFy> zIF$YZ4yC{LKyNSiLvI#M`Jt(l9<%9f4|qbSUhRC>OK-h;%t3R((daSYbLz3~R@rBU z9P-G%Ppznr-o`wjd*_9kYQW9yz=rzMv6r_;tMo%R&*_T8;k zejAIAh5&m?ukD9d4!F|vnyu5Kd^aE12f{0VV1JY16_2&o&u?Ap^ffH&o~&^SttFfE zzNvxmO7uGe*+W z^AERl-#De?x=Y4u9T*sI>Avww7bfe0uP4I{@5wMDZ5d_~8IXLBD{>&YKf^p$m!2c* z%T~KRevclsoJnVY#J8({ZrXYUkq;cd##uKU4?6~&6dlJQlOzlam8>;<~z@_}Mz$t!N z*^@Y)++Y{rLr$|NDL)L}3WLiCXSGDTSB10f=)OprF~+J`fEQn ztUJisRX;zU9n^i^By$>O3-UhKemo;Z2@Z zvECsxMZHJLs|LYaM$0Grd+Tkc-kr?Xq~3Ypt$0G#iS_z*z4qFF$ zdcP&~GF8zF>uTA-po|TEKZ(8e&_;waLyK!CsWzgFmyAuEXDd6e3CelJ8mD7}64M>! zdHJGA!J9a@z0cUJP0_}bKD5F8Yrp|*sP^xb_9qE#YT9zPuV|C@)ic_6(SC2c*I4v1 zHh6JA?c2DB;G-1Um-Rj6m*)OS-M+FVZ;|%#->J6j{{NJ=gkS7FKGNIPFx6HXAN2MW zU!~A=sx9sxb+mP*v^Bm@Tci85b^Pj7zy3n5)d=#=LGx-~a|EAw41c1m`Nx2f@!lG! z$yDbXt3L9sns%Y7t>s~8l`;#tS7XQ8K$)DEfK4_?XrY9D@>|6m;wybp_MaJJf)6j6 zcU9tm;TUNqnKs>TE#Dxqn?}pEz^LS>U*{y2dEz(rK`V~ApgkW{=R@P0 z{%j~`LtE!VuO03)x4Mj%HjtZ1_TK5bw6DC8GbjpWT_9WVe|}2^^@^|jFh0>?Zl8H9 zKwc#Gu%yI%94j$`Bix*C?eLeX_V8gl^QTIClRdOYY)&RV&n(*HOgrWaqNgO6oA|^e zCN;ZdPnA7C*1p@N4tSK$cBqD{*n-Q>ZyvGXD{(3KHh$6zU(^BLQIF1dej#U%IP;w= zoa7iU6=fSQdVo*jVkN&gYj?AsIM-EwtiUioju~lo#UscyvC%3ihp(J+?)qb+l+0f% zx>983#|8Kma3+5G;kC`528_3tS>MRICG(^sB3mMqiF!t~T>prQ;Zon0$hV`wcb_(^ z`}>}9QOaG#_gb%7d2=ma;}4*hFnAWf;}U+4ISEdG`?ely8>cwR^q7};^qBv(7pMQu zJA1w7E^^s^HuU@yeTBh61bi7kV$Q-|uqg2PipU#GKj(4%+Ydi(fcB=!dX0j&PSak5 za>c%KZ-DpCrGsj3;N#BwfHNXG_SMQwIMR z@Vk;Yk}_yEb98NJ9RCN5%<7%+OeSj+XQlxl9UwuPc7(T`v>Z-29IPX5km1uVUKwur4!>{{x0corNg; zBkS6i4xsH@9c?@LLHPBqKKL3#+rk4ip{Mwl`TkTtB)>E3G+F#JUTR&>Q^ff3FXJcl<{8U9|8g(%X5-l&*H?hkARZ?MUgtrl zg6Ar(^QrS!1L(sa_V)7g+YWkbR`hlvzy7ADr@=>iiVrt%_Pg*Q*M9l15AQnp@;@By z#%R~D{*-^RE=&0*AH5#`WL-|0f3kgv%RCs%^ClKE&#A;`F&AGVKHGRTe#HRmY50Mi zvh){!((<=wj*EC!<0bL4wxB<6}A&kvzvlgQ3w1^X(PGaRbH4y3F>SvlK6*63spMVz{3aDIsB%PKXm z;0%{a{A<*4KXr!J!#CD_SmhSFEVzW{i5jsBGFv+29rm%<6|(M>QCzz(U}Q9QV#_Qt zGQ69KD=5Z3kn^U#JIK`VG4G2)Ptxy|Gs8L&F<9_$_P{*7ypsb*hwJ;hb}M zwuLnfiQ%cu2!`dp37D$O%)2f>*04c+TbhFTCV{y@zmEc2Y+)Je);cyX67YpwoQqT8 zCAarf$yd)=9MmK09ON@H6OI7@n z8TXBQ#TYC&y(ah{z~wSzZZSmL)6^$(F0rY_9f{ZI9J$ z%O1tmeA}@eo8?^nZFZP%xtBajVzc~7eVfC2l&3{vOgdvTyg5FX#GbCbi|=#M{%_G){?l8&68Og$BhdxW}0#>*Kjng(RAcVWwKs~KB) zhm4M{VSYxLNG0|b;}K_^6X3hORIeQhuVKTFkk~!hPk#uRc*A`QU#T&2lXp!pW)Fgv zCypG{c#mtk_qQJ7iX8UcKYHI?uSjg>Cge}YT-L&tfDc*oho4gU&7sMa#yP?N1r}$! z9dn7tTIdT&y>gC_@Tugoic|`$K67xU@pkTg7au>!-1jb5hWAhOSAPG2Yv(k0U?IE# zpW1C54#=FrXxYHN0;Be_;IGK9A$xOU&~#jAc_IC+p}+8FM}>?{@A)ROm;DXmAad@T zf4qkNJX&PT-VGiexo^=cJ<$1l`WFRnoShWXvRvD?G5Fe+Ih&<_R$H8r6l$kG3E&ZW zl(q$yD1Cc9Bdh+xqYu7w;XLE*79+R5GSe`xA7+FqZ!r{osl3(D=k`Sx9{;2CRng=i z)6?tFt{~cnHh3@tmhUDLKw_GZ?fVM>bB^c*TgEJZvv-Ejf*J&ThT8ZJmgMRvuZ{i0~ zu|mMmP3(rq^6Q905kDAlE?YaQ&QFj3LKp9P!e{dROW^>yOZYyz6q?|7EzjB)8|J-> z*;~ArISFv?r0lU+x({*qAGNND^4zE5wT$4^h7x_L%~zh?Rtdycr1PkUaHxC@&;7~i!r zzVhv@f=|Zd|47*b*!0Ag#bd;%BfsLy3P--uFGmMUsm-dKbBUkP(kwFr;z4D?91tJ~`9njXeXtodI`4zO zgN(iGE9h)8%y73mbOr11*#))xp13f(QO4QM3w&(7kv2DfjIj_ti^41Ai_nAj8|vH? z>=fu_5In~j-OSU!xe}V~E)R*0mi;vnU*En3oHv1UXeBulm>HKbBgun0jQb@% z#A|PycRu=ZP_p<;V>UJ=y62+cKNF87vhr9Xz5=(VMe)nI#0P*}aN4}rSTKscC^AFf zvFo`?;DQF&N3nJ@JkkyiOF27MX8X;$&zovxA8ujGw<*^&9T|MR?z8AXXTMdS zg%8)A*yriktSf7c;7iiyb<$_)3wxBMU-To+cgQ~#ww0*cZ};4!`Q?7kD?(XX0Yl2CB}3o;*nx^yE|YG$Ghd zOp}~r*O#8=^+Qj;L#_$Ui*2_Vn$KJ$Ik|di%dT@{oz!X5)_DV>tr0?7$YK|EO#VO_KXynNc8K)X<`_K=5_!E31=YmO$ zUhi2$MvLaD%YrTRQ_&Le?UK0<-|S-UW5X%DA~y1?$O6Ut(4(~R3*Z&GB{IuRE~YW2 z5mLGc`gCz0o_tLE6I*qx(gMb_V+u9^wysUPg|Y_=TX-kD)Cx}t54*3%_M1Xm!)y1| z4K^BM=&yy7@vY-;?tmWDya9YEJD~OoGNAWYkiV2dipf{e~NK>X^}ln zC*gm-75=x!=mh?^$4vPDX^a1V(TD#TqdiaB{7+mi_ocueM!#$j-y`~`<2h&(Ty{ZQ zty^W!n(?CSTN50MtkZb9OxcSfx8J)594`jPv^$UTeQn0uZ5-okvA&|oi&5OqRn(w~2tT`~boP1!Tn-4vAc6027bI1=y z-jxb)Qg4LfYp??=EIW|7S7b5!HQ9sVw8Q+!s!09q>~Hy6bE0uB`&4dI`&3*xF82Sh zzC7B~{6CDN(t#yeLFHem%?U1D(be#Ko(nz5dH3MyiZJ!dJh5o2o;!$+bk~AUo+sb^ zsNuVUlR1VeGv-C1yX-W&6FDYySEbf_-Qbcjr_9whUikefzvCT}2bcZFNwq&Ew1RP9 z4{d03PHm_T8K`n=)sR=E6*!?;7KR^N0sh=Rwi;%d31T zJ45*m!1b|u);FM6C%^rZ)o+>eZN3WKaFzCd*mj3q_c^o`uGTot9E+c00?cfV~bAuJf6-W5E^u&!}Ro!Lh89ivMLr5wd~zi=YKX z8;0Z~&1hM`z1xSZr0hI?cVeeWovAfbp(*6Q$W)oDi#;`ma)0hqPTu*jVKONf=l6;t zZF}8BSzG>YVC_!(`ZAMma3=b1kWH^6qe{hJa)vQ`!eCe1m|;0>*Dvseo*rUce*G(D z-ohcAUCFt-bY!hPrdu3QazuC zZ!!0if=4)O^d%`HdrP7L!@QCGh%Zk#hF_7fo#f*g;{u-B>4V4}yPiYP_Ko-qlFyYjO*Di_bT(>!*j$3l84PFepBll74pBVG)jXD80!S}5T~Zb%C^_wS&dWtd4f|n zcsg0zhv)c0hoBKTquz!SUzEV}_WPboTJE|3qE~F(+zoEN3V*fkwH@O2v$wJ0?5k8U$J=s@A{KzeA_Kr%%d@g5HBkK~4MyO*wx)Pq- zS)}wOvV3CjKRD091E0y7rr>=eX92{pg%j9ZA}8hB*j(s|?}0fKrw+l_#h9Ec#EL} zBqlyW{W0plfV`gV;Ca=37rY{U+5%qo;JaAPoJYpemd!EVRTUXJF9yF?pjU+^J|u2H zWV_@IcH#+pC=>%v8>!EUqc(6Pa7)Zj47fd7R%x1n*F`rlzLvZKUhaP{u?fH!@%v;P zpaV@8HSoRisrdE!{3gbsy!MO1uY5y%(U~oeL$8WI8Na;@wYE{BHJtcC(q@6;f^xO zXRG%MUn`?*c6AxFzTl_XUhKC}$2;gQo}sU23w#M+YX>gpInMEyf%iF{zhH#sf#cr( zO$wF*t7W$-8u1`kV#9A}P88gj+P5w=!5;SB{0)A$*lqA+PH+!)pTHsg5}4Ioh&IHg z7e0~s)%-j?j-J8UjSG>jRSwx2U>pNVwzB4&%Q_2VTK8yL-{>>U3*p_1Sj)(| z>!Me3hUC^~XBr_p=gc7Ry^ytor+vtNY>B7I2fk^#mPKRmF@~qg97${meFo@sd>t!| z+~BM`&;_)+3E40FpV9?aTe={u`Ti*D`L?_g81c7+Iz=x`^_jA6;)K=a%SB)BYS<#Y ztn_G3%aiJNjHsJHxo5pe$f{% zLw&qQUrh9c{u7)CUl~Q2s$CI->K=PQ_EF2d(4GBT?o;@q@6P?`CE%=Yd=0cue2tIz z8j&BwXUP4{#QX3cAl?W5+t;MxeRRytE!UnthU7lGKaAu50{C1~#{)m~PzV(Y4(<@4ByEO@H}oUaDwTflh*IDaiayHVb)T>09%_M888-<|)twQJm!Z*{fr z{;2D<2QnI&8!Fi;`*Ztw&v<4K@1x!q_4A(b6};R1 ztwUDGSTAH8rt=@GHQpvJp>6jks~;;ivg%iIFZxjWCG%^+Sv59xtk5vy1<+IpZ>XMeiK zlC$t%6j>5OmdvnZE99S&53eiva856MLla`p#;{*X$T4c_sm3yO@l7c9EqxX`zv+d56R{lQ$_56t4va>9G? zEaAuA_$}m?StEGQHfGy%f-Gn%8@hSqlh@WY$9Jup;L53geeZ5{J^0EVbrrlh{|`dj zk3!qc(Dn_`_SgqA8ilS8LDzRf*B3$8hoI}}Jcp0oSoy%9#;2z|w(sfYEnPXk+THa? z`G;LAjhr^A^MVI68#k}qwQe(Io-}mX-gjB2c$a|V6+`0fXC8+WhV zy>2&sxDy?)`w9Jf3w_=~pR?)nYWm!2WUD?4d}7Bl-of?Iej74vyT~MBjfEFpCngzN zbHoMt)_eF)-cMlMamhwdlUnvKM`NYGPKl$pqa^Me9;|OJq_M|1Kv8p+autu{DB-@|GTfQ z^V8O5=4aT|$;Yfd__4u+-si3Kzfny4#osIAn%!7bTlR*gX)E59{!1+P?Ggh>n}UyT z^INWhyj%0GzaM_R0U7_<(9tP=Rr`k+%N69>t!4fwKGc7m z&)U<_HTyij+t7u)Q#R}ZaYBcaWnu<r!ayH`s$0 zY!x3$X0lv#9lBcLWc2)6;%+iqR@&dnIH7B!$ms++AdLLW;M+T)71514&PQUHa#|{o zx6;1=?ZnX!@KW2nTKET9F0wI3-?TiG^9JqQ3wobI{4I$^TK4>(xJtk5vA)zA>qi`8 z?UZ-9_&A;Ro9L*@e9p|Ft+CjunT&HL;|$MLhw1AMYp>Ch0rrxEXR(Wx%U+}V^qwHG zN2}PYVX)sw(XJJ%T{+oxGy*RQZ1O+W=Q}R?do28V$7I$>J(+ErKdD)_*?92Bc9~U+ z?l_)B{p4_~zvJdpltGWHGT%8x8FaZSv-T8aWZuZQNV&jP{8H%R05AoBX&(Ci0AsL2 z#z5&@88h%LJjeLBp{eqG-;X7>QS3~Sf6o5fc>5}NV{Y=i;BB7Z?Vh13&hTV->ran` zcAcnuAMZ21vY$ijVdfg9$a0C5miV_x@Rg0WPV~BNY%i-*%9M`fRPcU+n{JW6) z4xz^$Lyxtf$8JQAT{vWrvbipN`1N&3bXhgJY$CcWi7pE~n5*9b!wti%-;^8sV4i*s zTsMsDeSU%c99VBSyZ8Axp3B^)65hM$Z#}a;%I-7h7vsgahOyb5wzW;)1@VXX9SuxN z#wNOFm%8(l&0GtPJ-qK&U|QSH|5n<(-faZM|Jc(u%IqmU!yB1$8@Bgt=0R_F!?A2% zkc4Py{>p{$mRckAe=igb3=1`0=pNl2m{vcZ{LXW&-wVi7SYZ9WliZ2>C+ISZ#`~HZ zt>2Q{aIW=xJ~^NZtltaB1HFH|U7lRfGjB7a&*hlWo;k=DelN{2W6N^Pa7~UGsmn1x zZn`GeADkf@&gX77%iYF{e#UJ&V-VYuZN}TO&6qsjLHwB5sD^RxbXV=Z6~>C6Er5mt zVuwS!;!~G7spPx53YtlD&oQ?#M{GYZ$LxsBF*`fvm4F*pg``o*}13;1X|l)5U6^d3WsM;F4KBa*|vU z{Qg|7trPWrXpcNM*dKi{&yD6I&s}F8S(j<9CP!ej?jCQvjvNT9uVbC`I&(uY>&)n+GrXNsJZ8rzx7j}2jgImVljCNMfW69ZRp6JaFvrf~oQ_ft?3OiW z5l1F8`Z4tT(yMvFW8k&Xu}A7Mi#Ed45ur?RQC@J^bk4*RdVh6%TG@?OT|Mlp8mp_+E?<=ng@!v~x4{NAP_?~zgE=8 z{@H5xNZ=;($Xj{jXFuP{p`ovnnY!e!xGZ?&J&$<=+Roo}ZScr`4{Q1G+5w)?WI`JNS~ z=zXyf)(nTBd=)eK&hNJ9 ztFQ&zY_DNl8@#Lv-@d<`wM6!VQ;&`(D{QGa1AEGD!#^_kJ*)lz^~+j-%%8-Lm2V{W zTYLrTEDLFC25ps|*w!f8ij|g|@fp&VUTYS4F?R^LOiKziUIY3X9uNIYyv@A!w*Sl8 z+rURvUWxyAX7WN3Ac^5kQ3C`F8Wj~aj;NVrfS{<@f<;R!FN30uivH*>Qfd~%o6l!H zH#7I%=jA--{ha4KA67rdSk)O+Eznn#5B&6_h4$}7{%{w+_3)AWuJ=dzL+m3D)1F;} z=H*nzbcT8uQF3Tclo}Bo*!9y{Ze8+|$j2`3>kb3Ciw`c@|IAYAPw4D@KyO6zy4!SHNM`%zTjnkeQ|~n^kuLHp0@ZN6s+k)fq-4N|qx?Tk5*hy)_-0CWrO+>?s|+&*2xml^EPo$te+-(SH1V{>5rn*B2PBZq4+e z>~c{{QtY-&=0-e~_ewky{p+PJ>n<%c!^!T(|4-wga)`W{qk5I>%3YdlNH5jJD=W}U7NZUdG(;VC;@MtGMCA3ZY9 z!kh4ShQ^zfR(nzKCJNpJ8Bd7ugc*-+jb}OIX&M3_R$1>4g%1nu_Q8iJ_|Ux5Yqad} z8m+r38>BX|)bram=Cf+Gw(q8$g#)+S?@KL|o^0y2c^k^F=X^waU4i}5noPII@vY>N zNi7O{t%d&}kNdx~_Vu#%cMYulri8Vp|9DtmZuPDAd|~j~BNyVSw66j97hK2yIWf1ANRM znzj#EZH3}#d)fGN()O?HXN9)&q3!bdL(#Tc-y@6rX*+R!X+M5_U$@%T^UtE~#PwY= z-v2T=EEa7iu5W(g`u>&N&e#-FXOneK0S9Al`#UvJ1Si4yzC24u@|oAJGY=YF2V6>z zUs-vdyQ}JQx8TUiwfw))`oEn2H}gL@zp`h=nl5kVny%Fk7~N|hFuD$+M;(Ixt1owV z!CU%1hqnlCkB7xN3l_m*Y5*R9J`Z}0wnJW{-8*khwCW*u$Hs@;otqzWpR9h!z06JB zBKX-m;StCoXF@vMp#A7@x_I3KN79sJ+Zda~8eP_*7=^>HDze%0;Jdfw2q{zt2=1X_P?^f_sL zzx}MxdRdMUYW(7PY5mwkL(n?y$K%%yt6jZp{`q-%#c2Qc$cZ>7t>-1uI=;gJUT&{* z98XU=&pP|nfBw?`Fg8eedia?zs_4T{o{sO=iJ0~evEYvAA=7ZFEz^X<4(j^ zU4kFC@#>e4RKEGfhs24?))A9?nEiZb*=Uws`sW487OPLN(RSmL*i&l!Tl_uCPOFeQ zp&b|b9m;=hp2a8jT3*uW>TJf-r(dRQ!JyT~ujAX;i=Ef#l3Jtn+M{Cou6;}NPT6Z7 z=Dmw(BZ?2Huks4ho@}(Pu6*@97ELmCQ2XZbY>)B8XmYBKCK;X7;CtLb{h?&OQ-?2l zf)8y*z4`9w+->4IGVA_TUS-z%i&DRCQ8Mi< zG&+XRJ6rH|wc_h)rj0h_g5=MdIl9B^<~|{39ozi>A@_3Xv~-~(ZW9@>crJG4Tw@}> z&k0)5zbl<<)qU=wVd#&}*ZN zl5SM?Rx;xV7Kx2rV(4D3rF>GrPuFB~&AryO(!46ajPn}yC17jf^T_?yx}WAcwdkK> zxL1{A6p9}pGp(Voc8b}KZe8YSG=`5nKb?@E5>T6-nGQ;+e`O#CMJGnrQy7>FNl z5xxRh^H{d_w8Rp+@g-(mp?#2bx#wu^724CSdFEO_b?`p-rabM&ZgAohxRDLLu44c7 zs%4k^i<~*p{k)s~p2ryT2ahrKhwB=$e!Q+h;;sM4GylHqGM*V@K64e%T+1`dDjKpL zsc4WmAyDMolv3VU}_jEFDAXj+kCG?%3qEh|&lV?W*9 z=bdiyhRPev+Mta$SYw~=|Hs9Q-FLlNE421{HReA3dVXgPc{eCt(zR-~(KRo{xUyJ# zyKOag@3h&Rfi&BQ6wWr9X3RF4i)I@w-q}WL>1?BI?rfvo_y4FNjeW~p-uaH$C+K<^ z)PKdc6`Yj(`5j*s9S}TSn8etV7<&@5oab&@kp#b-Wb(GgNhWV|<(cDeoM`eim;BE7 zypz=UdTWakWYg8;#)^$5^HMyLc_|*rycCaQUQ!=?&vJ)~fk=(;wbuXA?hNaHRV&7Lokp+_xC3t;c#CW# z26vWhT#9TwOD-~2sjZqhU&%%DeBBo0miR7XtP!!9Ve$7Yxwuv2;$Mo?+1j@6Qsm-S zorC0})yA1G#g~FSuzkv+Wi3#M%-ZS`31ir&w0=3t2(A5O1witVvUlXEe6R{Ut+{W3hbhIq#=_dbljy2dP>-f|#=JbuXL?^NJlcd{;KIJC-ie_EvVRbXhXbZWpc)0d-un@m0wRgkVX3GBDmRPf*#DbZ! zYfDnj@_RN|_d~m(p*?)|4pXs`W!_*V?M%Pmh();M-kB&1g zsS)%6ISx{bCO92h*aEK6j`S=0d~KM|VO_;eCpV#6^Gx>-r{;*3F1Gs3{?K&h!?XH> z7Orj)TbVclxYksS9^=vc>zJG5%SCuravc8v9fb1Huc}?fGUgwybg6R z>oz`1?(bx3kwnNheSTQd!Det;_TMM7cd=z-iBZb@W>NnsevVC*USk&elk7j#`Tw7p zqVU{bTU&9`HVRU^aTpY$JRK{&p0(atyh09Jz7=xuPRiT97MIkt?g+ z(aP2Cjt#5bTj7nJv{Spz;qOH6+nTKTJI9w8dmUQz9`dDvqCY~rr}J*6rn4(y|Kel| zS5DIBe%?Dt|I)YQsXQm~OxH;8oP9+Z)NSRgjeWp2d?hn7S)9-TzegiB# z^rg<0;rTyOSG0lOf~j6(2|P_`-*@Ofw~PHelG7(S%2I=`oplVy9C9v9w?=Iw!Na9C z9`NpR^l`}-65I*Liu<3FHI?|lB&md1nroqlKI+h9pgRx`*`RR|f@jXl~OQerI&%j95T=wIx$9{-p@GLfkJnLlsI^U1Uvy8uq z@von1tqJiGiH}Nry@IhQ7_t_j0%RSqj(}hF;6aE!g0#_}$3Qz_+7VtMd_vwAzVyRe zIgb^&ChOTk8x!b1v=%=c8=$)H-`E&oUROjVHL! zNzUUVk1oIEgywwuYslvf;E2>g2>akca~bnO^b8jEi&(gjGZ|& zZ*j37&S|v9YK~Axtn6y?CnZl&a@>|d&w?uhJp2y-ADO$%yLn3`?_moHOlaq)@a&Xl zrap6walSTe@cZSK47kJpt0CTh&*S;vr^B=le*ew8HeWf#^SyL!%aJSDJDNtD!;*$o zy*JtOy|jugN8Y1eS4y(B=GQ{wz+;r6DOs14x@`XUG4^s`UiV6D!OG#TgY&X74|YH7 zX}B*IyGhS;Vo%_MM&Im4er3PKK7kbN=?Y875&Jn0I3}e~*Vvn9>Qa@~wb8uROwdj} z4qTKRos^xR(=4EW(P^5Hv9C?Y_BX9cvi1aty-Q4_4o;6uUYGGfk6=T=UYb+IguA$hi*XFwQH1-RP zAm^tKc^Y$J7bIcRb0$IUtqEhj(HiRnRd*|e@lE!JY4=imSf_cmSMV?{f8=%R`O~$9 z=pBh|)mZmJ?2+y&nu`uI*U-<*HiCI2D%bs8>d%BnXo|N#1)V=7eu6a`#gaNa<2&=Of#{+7AyAmD6zjbv5(^O zkj^YL+M)F*v~B?FYZp~COj}&ha4UK1caXR4-c#)EKA;79jyeLTk2?crbXTCetJLVu z*Nl$~G~+XJR=cUI-%U>Isqzxz6uF*8qr=^Uec3}EdoT87ub2J(V>xG`R5SiY4$9x= zYDOpa<{oUza1HXV7MpTAHsua%%AMGhyRa#Drx)1E zZLR0IV2=*AH9>g%ClGTU1+B}$y3;`_d_Qk=;WU{YlplP)3)0S z-)wXl=>7HDjg$PL9FZ{twpZt8z312a8GqV?6%FZMt!QY?yAq#+hR;D{%(-oVD^et4P5U05G*^5^S#^Ix2M`((TFL_s_WW~2rWBo__Pw+X4YybwV$Ab@JBYP)UeBHV>n%8Y|F2wsI{Nb_i($sIhrH{u>&Pg(3Y86HP zN623SzYk0P5OVP*X-Ce9>Z_b!@+sPpoWv~7jmo*t5g7e|GoW;m&FEnCALe=V)OyiV z^T74sW^f%|HdG$NDd2GBmn#~sdZ?nI86Q9kIRgr((49KaZ8~Z5B;&gYZ5F>*!=1UBBdvX!xM`#zYtX+TQ!z9js53b?O`s{Bv2WY3N7fCbYua+Td#$ zsoE>;j4cYE?SRjAT733N_-q$^w!3e(aVj?3=y8=Ay{V<-yp$S$%Pcj{cgMkZKZY-UoC*)k(HcG)%i3mY2Kza&b;+S8KVJ4Tv7ggmKPS3N7HgJ` zU6_OJF$z6xH2FAVu$jl!bw3iTRz5}e5c~&t4#=*5V9&S3hYm|DciIqqs0aEGUN?vj z9Tq)|tI1Z+tcB%R2gf`F(oWS-Q|A9}R`N=+q^; zoJ(FEzxC$bmLOlUtTj=z!add&xiHFq3$giY;@}Z1KyS^2r=J5Znw+=#{;mFXoLLeN z*K*);UVja95WYQ(IY`__ddvQdK8N`D2zP#(!_JU?B2bKag&S?2jBwH=2&!C3RNc z)}#E^m2TLu2?57&?PdPm=#)0zi~RN4crU)5L490m^&$J;6s&osWXWi$^#m;D9Q zh1BxGp9lO?{Zq*;41q7;wCEs;|6wQH6ai<@KL%_%zCZCUb{c2uh)su`Q~z4U^?u3K zZ-W0c!+%~o%XUkt+iKg9$d0r8uhv@cyywH}<%~ysNDz14k{*O>gj(Ym^>Ro`O=$vFp}kzHJOa@{RC=)iwZGJZ5-IgNY= zPefOL9@}m`HeS;Ke&f9m`0Y_X%v66EJlKvO(_Rm;Ykwm0f_|0%oPO2$n)EC2gG`SW z$iCYV81ofppzGi)BNM&uYxdgk&IDECJjMS{tjltK{|hh{{`l`)|I9~xO21=oR&#BM zIzBO=efqWj zNAtPnP4ji!`2cW{3T zIsot!KY+qh4cmt?Eu$WozNOzcpz1il6K>LXpv!_sa*n#n!{z(&{XNxx;JafszERPI zfT`$)lCLcGrcHOhpvI2)0rl0)Z!tWt%%%KLccDAJ@aVFB`xrl)KV9S^V|}Ft`*k(z z>O$r%j^snaF& zY}a-PF@HxqJ@b7H>kvd|ki6b+JU4VcP->$oPwjl5^Tp}Tm9Lv&y+2g`M;CZ5^17M) z%x3a4XXDF#Z^`xkmW||qVYAygn(pCNj%L_(R*vTXXSJd7dkV9`+uXW|=(7`tCHcc5 zFXn?^r6uT|%=u6jc%Oy-_xbsnru}l2|F8F(IX*T_mqPO@SC_HG+tF`Xv>$b~l%w)dn$<>XVBPTt2#`Fs{%>(}z5$9UrRCM3Tp1Z+5BB>u@`-P7D z7{Aa8Y>OW7bzU4DEP@Wm@ouh3q=TXSLN*P|26v^c=9&Q-kaleRAIdLezkl-(@Bh7c zFMc5#@7J&;q4B@e#w{yP>hHz> zxz_tb;r}%2{^#NUnhfwCdH&9_tIxv!QT7-m@2Pa85n`=ECq}5X4(aUk`8#ku?_9X9 zbd9SMaQzJYL+Dm7y?1b)(*Uk3{o`u?U!_jz=iqu%AGpf?i>5C2O|bvsYH(lif9%0X z8FFbpG_cqO{yU@hAOl`MrwmB0%K`WG`N)7W+Ka~F{$g;SJsHiliMTH^;8A2qjnoZP zGCDS`+_8x0Zc&(q0;M^HQF<@)ymXxM^r0L2>nqGAUK2nK;*tGDkFf$tyf9gqP=#n3eHg0X^MwZJH=f_$Z1t(T<|WX;lK8zD zLIa)~{Fe>Tz~Q0z{mQ>tIKR?qG%W<*eFOMDl+Ls8U%>a3;QL&3o`rGv?gQV8_`dyY ze3ux&*}96tcj9_?`2X-lbQRib-af$ZmCi$ZHqZYYokz9vi}SSe_ws(xd6p=BdAk2& z@-h^@Ghc=8%-_OywO;GcJwwbt0pIz48~84MlBM`bLWKkSQ*H(KLxuOc*{}1ooV8hk z?R^z{XG7Q;6K}lS-^hCU?!L@_rB?YvGuD3g{-<9fTZA7Drjc{)t2vjRwBLGvC>nXq zy5EAH)PkO5>qmq4HK9K#+UZQQXl2qZXVJ=w_E?2h_GT)5iGAz!6F-{n-zIeySo;WT zJ#`8EVIj1%h-WTLhA8^^9_w>X`e7{b^z(={4t?+E(9eWh{P#%BVN-?-Nk28G<7CDv zWX2+BXvF{x4J9*P_z^U;2pU=?`Vx4LEu!LRE1)4SG_>Pv8aj{6P`Gb=0hu9f?HD98 zXzv1LhH9tfJnj5XWQI*cSK2hhycG>G_p@k-`6tj2-^+e8ATu5>A6jM@(Av4^;X?Oy zeQLcw6g`Bj`=2K>3T!%X-f1*#hzifeDzaX_`KZiE{ z(u@C!J$n*E4X1wVEvX^)CVEsCxSoX{s~h`28~?{C?Bg7A4aP_g!bRFC{74JNIz0{l zeC@^~<9_zWhcV~4vSNNa!M**&R#$WHfhWFuYNi_ zUXK5y*1GCeu6k;6Vy=1@x#~S}x$0-gQ}45K)$^vhqXkpVTy?H}v}xvHTDj`9sd8v_ zD@Q%Az|80L6{sBADEqpjtIwaS-pso#z^fG>``}#ltxL(fCm(PJdB-Zoy)5y3z*nJd zp;;y4oa}|fuOE+-<1CysWuTRBHmHp>>zVj`vy;=$U5nsbR)2$Q5rldE(?PWedTPAJ zQ%;A!r?$lKrI5E(3U8i4JZ<{D?o*W|$djU8izqgI)N;dhmUnVQ>CU=pJ9s)$H;1e3E*z^r7>< z#NPx@dfB@m=gufNY;z>Q=#Vw1wZu%Hn&}O!dY~k*dWk2n=Fwuta2;`O!J+H?YszE{ z*ZEgb)1oi$db8FA_f_19`>Uh|2ER*OT%KD~<_QD~=P>6v#%D!y4Ba~ipT-<=LgpCF z^X3>W^XC|?3+Hft*c_vM@f;)Sn`3mWm}7L7%~5%RPja?VmwsP^ii;n21dON|7Z2w- z++pfRy?N&+)tvQ94mtjC3$`WbT*sqluZ7f`8u4~d^^Z@ZFXxlX=Oeyf!gV~KOZm*? za|54oS-i{V7Cv+MWWgY&^ZPVDf8o3QN&UrBUbDXMx2bO!Uyr+(dm&=@CFBQ$=V^vF zl{||1#HPG1f5imNpWXdobp>Y`$71OmJC+fUy3CSus48HYNxK`?Dn|oy*JVV@++ySY>{Iz5FPst~cde8XYH)+Hi@B9M$EvSR% zH1mb(?b-z=y&hvEK6VxVUqbw!@8A7ZPxZ<99^()(p8dqN-(_D+<7m!1++X4T-DTv2 zfRko@m(;p8YE89Mf6t6hd*13Kei|fh`Y+JFw6X6_;4qI`d=`zxnEyW4;(wPleP&lr z^-k8@gr)`0%2aj!=_?XN(9gaHkB{xaF4$4z&-Fw#c>)_B)+^!;>%TX zE=3JE>;r!pv-lyTUVAhBg;scsU@iBUhwK}Pm5&aXHRYUj_s7p`2V>l+8Jf)NnL#l% zZ?eCRd4++u4!rDqCBd=9)H8@8^H;#zTBOd+ue7II$Y++{g*OTguAt_tTqUP_@i6UF z20j&@U(<4%=ji)Q)RrL+&3=d2z$kfFp68sKBh+sQgV#zx@tmuY8`bik&ud8hVZAt=&`c3qn^#w5!g#lv=N0!)i1#2KV=yHa#dq`-WfRkK}xdIH>u|PpoG`Ue;s-YsEPX%OrNm`?3c~2QJHPxG-PgZ<4>MV6y?( zc=?TYq#xo#h4P-@*Q2}}+|K=l#YT7$cqi+{yWL+WW=(84$a^8)x9i?~iRUw}^8`lR zQbLT)ONK$h8fvFs3?%8P^X6jC^G_@BdgZOo{0DhDSPUkR&vG@YV7aJ|PoMD_- zY_#PU8|~gZ-Qf&!N|{H9wf$o`dvvNbB?n^VmqX*Z>}wjP^uVy>s9NI`_$eHGd#c)h z_YKynjI}Cr-0F|^0IM^6#DBbq^Bd#u_3?X*5A6ufJ|2J11s_f2BWwIXs^7sHhbvS4 zIyf%-DEFU+zp)0g771g4pW9=(h4m7cdEt#OA0ghx+S_Y+O5KxK7Hez4SK1XnkGV$n zv(%wvYy-6808ce^OBcC0Ns5jH=WQC3^Gn--SyaEvU7k!GENT(9EaYs#&D0SMrs;^?trZyF6#pk=<^8{|h-sWivJUfn_@|6*(t#S3rJZ-b8J| z+);9lNyfqNQ0MMVY`E_@M!fX6HoQuBjhs>4L7#i3;@4X}OJbPt)GNvTm2*}y>aHWU zo1}T%Nz@jDPj6bbW089sz9f&U;t27i`iY-hu9zjM1^=tgKw z{qFjv{N6pWceG#nHRVBWU9gDts*ICI*1DgZ6-V2)JgNjIir`W4_x6A*d-(`X94_=1 zk4ltBw}BJVUkDflfsw4+VEEZ^6aR*)=ML-y)=}tg$1v@kDD(;LzTL8-*w_H=*?cL7 zb`?M3oM@@tzCV6kHb0Wsd@p;Jn14J!8pF7xUAxcLwea&ofkPrq1xuyvjJmq`wr%=Z z%Qy=?Ms57PLG<&Z_=POHlS2Qx;feHfs<*c~o<|P_m(mfOMY)n1Q|w)Bf!11~ zIcmq_=TB36V$2-#wEmdEWPFq&>(|`F*>BKQD}0OdB$SL6S#8URtCG{I?qYAmUF?mh z)6yl+ag&^fvjcov{HzvO{H%kIGa&fJnKnk-d}Jbe>jdQk%>u^hb=N(LE?})+1f8yF zBlu$XiLNKKFZFE%C)&uNmhQ)iCBYjCuW(8j~_F`%Le)X%7TC3LgxdEc$XF?HVmG z{3b_WT0Sw*p-?)GFCIBrfYL9+u7nf}7YEVQdSXI(Ct9lY90cAcv!tg9)`K!O6G0Wc>9#v zXz((1-p%hg?56+VS>6MGRIOXa`(KNCsvBSU z7(GGaU!oI8en@iNHt4?O?kkn;Gnu{0>zCZXes!rmQ}MmUSDZG_Kd@@g2U9g*Wx+eg zgyA;^!!XBVNUT@cbFLI+e*|vA{%{RTus@>M6m8S7LCRQ{xyT%FyVb|q1;=*yAHWOq1oK_D{z{y=zRb|A9lqCj{T>t4e-J9%1R5Zz(x1nq5Xyn4y6I!yjj zh~LD&Ds*7yV?w0+HJ@?AtKw}F#cPFM9_QW(&G-rOY5klue?(_q(&`)EjJII(qjOpQL zSs&J0Z2Bm4R5pU~%`^7~E8D%4`NuL@*Q`Jgn8_Ktqo{G&ua}hri%LEVxmW5jM#SIS z!0%P?A@Naur@&u~{15AL#+_+jF6%*_p+|P0M~2ZOq$hajx;L#!07(OQaPI#B8 zhnTrV;%AJZ(~A$JecB@A(^rsBUk!AZKEzp^V*(w!#|BRB9T(_6aB-l$4;&O8LEE7{ zX8U@h*+x7aPUNoYUyw|J}fPk7h)WbL;;|uGRtgJ^0*o(8L9?V>vTK+3)e| zepVj5uE8TTl?UHafUKIPA-^=Ey$~KY0~rPn?5sp)ZO|G-w|M(!D%OVVVx7mb&f{5U zy@ECvV?MmG09=~}@0iXQ3q7=fZc&78QCUG76%E(1FU0oc$yLeIMrzqg-E4BmKFb_E za3%n}Ipouf=UDH#tapJETL9iN7kRXZy+5{Yx&s)L-I?Z}i%gO|5Oa}9wfyE2S)z1_ zjJjnCf0F9v;xo-4=UjBoSa}M%W-6aye9{6jWK^@4@xzzBJU16zMf58jSj;5;G>b7r zfJqZD5uHiwkT&cN(PzW((x$aBa@@o(J21X7vDJ{Pq7RDf@h}dx9*t%_{RG_u_6 zBiW1_aqTKM`;@+A3{iZpovfYo-L`_hH!t7};QIqDyXFU4rjO+e+;N;l2r$-wF3xy9yQ^JBo_IB+<@Gdg2vfuBUdvo2uY!#bS-&-%bKz0@6b&2e|6&N26z zFZLL9ve$ebXNqAzbb5=8lcmK*7dBJ(ielrGuh{50Q4C)){kvvdDvLcmnRT5$bl|l- zTMmC9R#@(EM*oDr;B+nZ576J^V^7bbM@Vc+#j-M4P`+bx0&4KH|GUb;(tnFhTNPLZtJePm| zDf~7Ip*1gKFMqBf*qH1Ot$nWH$_GS_jQ}@B^2rQ@7qS*>c?KE@m(%8IKFmw44|7|J z4J!Nc!{`WtBiLu;3uO6^-wE$NA#SD~c`Jv`9DINwcQL_L9h=;o#1 zChHP}212Fu4^8Ocelt9-mHD+Xw|3|y3T?#Wehqv5cMvy!P~e-vx@7{l9B6+mcs-sm zF~uuWX23+25>$JK6No(ksDXM315S!g)+gH9L6vfoF5N8 z=Ry;%b+p5H3V`c0=y^KhDMW6}KyCnQi9dBQkNwCFQ(lZ!^5ROL@V|=_?5`m8K-$S0 zi0*P35o%^MZE;C%vC&fNGFtO4bGNZ)pf@kEKHf-cy?ec*65^&w*6-cqX?0gQ@z)cB zrS8V5)zp9AOuT+A`(didi>qAZZps_u?kQ)lF8dLBD!H<6p-;cqikV(w#!P*esF-Op zwp?HBCH`+sCyweGZN^)vm9FBjm7~o#Y~yI|Yk>}OB0CzLMhE%v9S6Ctno zdtje>2>yGV@fNbaxjdpUmPW!URNl4t6Z@`O% ze=Gr(!x!K~M>dGxOYP5O+#&GhyMH`g?UeWod{g*_+}}1@yV=3>Gl*r$ex6CgJ%P!i ziUSkJl@Lov^UE0?eU)kc<(%Kq*O=yCI$jHyvD;Mtf0Bn1nug56juP8mc&e>avqqLb z3ZKe5f1dxvbLX9>ZqZfV2y?zZ>so7GV|$tBPUg9rdDJk^ z+PHacx8}KndDaX)&xJBi=p_VB+OZso9Z7Cau*<{z@vnH)o-|^%>`8Mu%s31%3LV7P z7=JH=dzlVntJt{rrTSkThV6qbY5NHt=)%WbOT03=(;bcy}{%{J&2qIcTdAhd!d1Ny~u6hzpC9IWevKpv3ih)XYjZ8 z0jn5t$912(J+;J$X2{-G`wXLtmCf4|^%zgRtND8lc#KCSucn82Rxw`aMn8kxfDa4L zZH}P_0-JX5CkiZt2X*f8!gJO&bTNlhz$Vv`9lh(Xu?4LMsIL&!jNvzz1V-Lb9LT;G zzEe36mwU1Znj$Xucp)%fi>ySq2vB$l z>#JV!aq7*%vCtlRn#!deBuhG=C*cVnV*`jTa=LO1a7(Nc{omFz!JX(V)2R(`6xbYN zpQpqd7xTZ5&mMT)31l&AsI!I<*03pV4cm_c(-YLX)7i7#LhU1R&bxs}cZSw*N??+y zHJGt7M_m`N65115YySistVwovcflKb_%v#2U8cehI{IiU#>e{YYJS@~Su5-qEA^GU z#x>}tCo3OxpCo?zGidzZu*FV}bs1gIc-MHB@)O#>%WvH|UZXyR`Xanj-<^8%6xs{z zWqn%UKTh=A6z0#`h8SCzu^pNks}|o|J$$KYuX*lxux6I~RHM`+%8nLruAS`nImt7B zq*nJyp4pGyFVA$UXGTO{;yfqmqk}%yAXHzc^9kSW7AxQjvUf6xq^>6H7=y~Tm*R3P}^u7a>+NSw$T!$7w6VV?VL_{ zS_iyM#^9UGTr^hdO^3vGDN4Q&_7I}%gFzQNahslSE1 z7+E*TeMUYXwte&=)>CA=^1Dw!x99uS8!#z&7)XVBf<(<3Du|AF+_Xc*U>pt)s+i>^;W^G<4dpaGA)wz#+G=Bf=tsd;I zM3`PZ1WZjo>F2|9aC_s1Xz%Y?qu@MXFdu%q5L#V??Xwu$$A_M~LNi**&>?*;ciSp# zpVintYngL7dT%ARPlltRE7Q>+wogldHJS%4&WE2ZgzqduhAqbS@nQR{K!%lJ`}itp z2R^(SS+*AVmP7lM*ghG^vdnc2@3Qx}-~Z#fNZCK%ep2F3qY~{O>=GT@BT|dLx&wW6 zC;I9xr_r_>eYJ74JGxhF2a8W2?@WGSUSq_qdh-%x`2p5U@H{rnX>6J`JFxjdZ=ibV z%)k#Gn?>$umZ`VbW|?}sPK;S{Nb|B)?&u~rIydiiZ$Jj6a;@T;LI1T@zq)nJv+NIS z3$Z`yvpvSoNAqr>!#Fj=VbsH~e-6LyF5;cbPEk68LWtRQHRelpY>13*-q4NOq zht~@nnvj=WE=NNMJ5BmkxKF=kF6)3D@>D6~ZnW$WmuZJ|&%<9-hVBM^ie4=CM+x?a z?DrG9Lt<=_3wRoxw--8z*MUB=;HK;j7juU{oI>w8wFTUvy-%ov`r?$CftRlF23{_n z74Y9P8+c}@eeiv?8RoutJ;VQmSKv8ZfjO^R?si;l>ifOMSkXoOf;7Pf2x4so`0SoKZe_blD&> zF1QQ4ukjdPj=y)5-;b$Wzix?Tg}o{L`l-aVc6K0Vc9am`EHNUx*#EMd{Vt5HWp9bH z+06adY4FqY*E_P~UMs#tOsfjI+m26{dWUu_E2LssrmS+Z=UHM{o;+e$8CqeK`8|G< zH}K@`vjR`eni*L21=a`KTJ*!d#^DOT`&=X7seJd2Q0D=bu|CmV;0t=9j-D9Vf^0zV zZ>~i?Y)5b0f!>R)&|Z0uJ6MA*x7TAl@Q>(S;Htnj${1C=i*c%Wm%to+v0)zMd4Xjr zu*BC5YLd$p59ci&LyNyR0O$Jtcvl>(?+4CN;M@V6!@yYw&Jp0;1e}{Ik=3c|&=uq5 zx*3Pwbw72D&cj23OKm~f6D%~ZvtQYa0hur_x{TVJqqPNT@QatO{?3t?u6^UfB1d}J(oy`D=2=sB z?{|;Lcj_fA7FWryt{(LZv$J0mHW7#Zl1(r6> z3OwUsccE>~{y%K18Jp?z#+48cg{D565yy+;>8L)7GqyypAE2Z8(ev@!3#X$u7yNJd z!iB^6{QTv@+lgQMX3l;b4CDB9@4+TlK8b3N@rd{&c7xB=@J;x!&~gO&ZQ6q_r}PkP z@Xs#z=PCH|3GCGL-^3O)S7Yby)Ql0g76&qCqkn%9-yU|`O3^>C+oYzw_$B0g z*_Yk30~=?}3T*zu%)s~2yZZ1s{e$>PbyME-<&8Ao^Nm#Ry^Q?nJcj>gH~e=G{9rG5 z+z1ao0M9sx96E#?I*J^sz1Q95LJr}>h~l%zd$^BLrQZB;YO$(iAHByNvWGcRl z=yCE?PVm`)%&Ucm3?b{==bcrF5-i%X0iVA_K(qZhdL;>)n*Xe;s8HvH;Q ze7GI>a=U>4J0HQPVlH>Lk2Y5D*^E4eFS6ZdRL4r%T*b%w?NWZL$i$~Hqr`ZlJNCBn zNo-`TcEtH4SlS zcU($-zTow8{v`Om$S4_85TAI+i(S#@b<0?Sz6I_H?1hML^Hts-+@^!y@@Q+a zv=s--g}_qUIv;Osg)g@jfp?6*HIEn^axYSg94T-ZO&g%SY4~2}a<7!nc>d3I7@~jZ z`QSbBQFz8+UT%-Ol{usVk96R%7oL2&mKcGv$gf6XQA-bZAu_p~0`&7n$zHy(Q zS0(B~!5r{&Ec7rQnVO4C&BNBr$6hGF)|`f|Ih{CLA+{!UVWUOhjTc+96kBt%*3eb0 zHHfWw_v^^X9Po53vUWVYDHj;!0iS$q%>ww-G;E0J;7}p9X5%{A!PfM`H%hTJH&@V3 zMZ*fq*0k--nD4simDH5}Ec4=l+ziGNrf-QEhf?`JLo*sBuI$s?CoaWDz!-9qw4YZ1 zH_2s_n6d1i)g(7m)xzgDXi?&)aQ2XS$m%_lyqiIz^)*yF+>(6$+#=Fcl%v^sGH&;hrY{5}zK7Pzwp~V_L z@$agNer+xIV z&W|2C>gwKjB=2v({IJ%s@55rvRptD;=X)jJ^lWx{esILQYWs(ihPk#he&rWODxW*? zVeRju^31_4oHxCMGtZfn-N*0ninnF`)!q-K$6B~hY2t=@FGK3Z z4ZQaSpX?_waZ0U$^{mYQ1?K-d3%;jZ7c2kC?;jKY$@m2SNlR&}5u>hE+dR&SS)58P zP^!`51IKC{?v6#NMs#7S(LSGNwm96OX{knddMf!rsYYZ*s?nso-Ob)qqqp+Pgm}np ztiQ;@3OVCSo9yo@fj+8C{;gtk;w-n`3r(A4INo;{a(+?>9Y4%-c3W>O zlD41;a5J>H)L6%U(aqnNJ%E>x(`4=gBp0gNH+dZXLiU&<3v`|N9A!<9f#=8hpZ6T( zFM#{(C-xXFa-F26`7&_OtV1a_1hrVw!MBQQ{40vtm&H5VO#ftkzs^paQS2Nu-&?Co zCYMQU60t|bZ<$BlhmSKgeEYNy1Xr+;>g|1p;mofDB4fWCXwF?k%u@?oaj7FPX}B{W z`_q=tuSUP&$`t=oGGF?ZIm>)w#^BPU|F?VZUDfCYiUfY<|Z};c7Vy{f2-syB|2^UiLc?NZ#^#*r~ zm%7jN*9Oj+=iv=u_w!5(y3x8XP*az7BDB*)JI%DyLOZRr6RatAOKwkiF13Z{QAZj$ zwS9p(EMjbuhg5N+|5I|TWWQUK`)eH)?#CSt&TbiAxA+qB0A1QuVc_Xe&zfhXKJ0!^w9|!f#|7HA6-L7jgm zZ@TG&!j~aF%nrufK^{jZ)IYTca`X=X#3$iA}_rS~T#O=1-hQ20elCUpU&SsD^8H7*Gl)STwJN&l;Z+T}M_2^|>{e0?1 zlTU5i>QMfe<8Sm-5AI9$uBcorYb>wdLZ01}iX$c8OxaShHR*$1&8cWo_Q;no*WR_9 zOGt9sr(JghKJ~HR584)(hSxI2O=b*a02fBpH8W2c+pD8W6yJSyl+!x%Wd{89!)gaS zZQ{O6KUXz&krVqt6roq)rD5K6!hc03I3*Uu?*ZoF^zgsHiU0pJ9DKv>m@%x^)IWgX z668b1D~**KgT52_03XtKf#bE{=XUzp!T-QCSexwrd*#G`7hRZ~Sj$-B zdEfcv1bbb^ehL0}Kk~tp6O%`o`GNhs&z0;aK0dhJ6zg3bI@M<+8#=VA za}K58-|`9A9bRe~mrA|jWFtI}|Cvj0K3C=wT*#F<1v%$b_PYe9bA{G|g~`U(Jx;%j zHGZ78S$!?Z!ruHl$N692m(Zd)e@DXnB`;C#P52+o|Gk8E6XBZmzkq9fLc59M{n)zq zKN;^2&(m(??`U^-2IoDjroQ_U?59%p3&M|u&j<~Lkrz60LiT=2j%f`3T=(nPf|gQj z+0`1f$TO?RUq#>4SF+~|T`J;*KHxF$r1VzrOGh47O!i+vPLt#;L#vxgD#lBl8$<9+ z&U%8EtG#Fu_-+WClQ_A^$>n1`_{iMUmgb6_d^Fz^NP5K)Ncj-LLHEsdg}rFz@eEvUi-gTOx z_Ft_ahNj~FRH1+(8GL&B?&9mv4&O0LMY?_d`> zMHce=IL6}K$N$_L&HvAHFZLg1y`7lF2ZG+q-JwJ1*GI{DIYyrCaq?{S%iYa7dA2R& z*+#LSy2!)rArJSAi*q+!^am2TH;cXv&S+s^9?Z+95_4*X6#(Q%3MHSZ=Cy@z=0 zUi?vw4x{}5`yLLGAA1P>>nJ)`?MQdmE?2{8#?h+}Pw4Y&HZ3xi-aIYg-Yn~$_!+~D z>9n5C`-yY;vi-g{mprn>`P^i`4=lr+i+fsU?*eVao}IKk6?y@&VX+Z|)STi`XE-Bun6cBY5Cu>N|}yz?1#{$=k#uRb#2 z{U6(Fv69?c@(6kvdwlzsTJ4*A4lnnIW9XqSr)lfu=eWZ)v)$oUT#w_onF&v#{hkRH z{&EiRK9^ZnXxXbh)lXRd0P(jxh7S2z=D2?U$EF<4z;bEt%ta>Mjl8-CS#>Wsb;v=x z;8<~{$0*?$?^t5soI2Md5qG0k1?mfW8687eOl8!#>aAA3O;gEjyn7MFQNYs z{bxJntWu}H#+e;`6@Rec!YC)S$vxXYbIR*9^WE8-+Ure9!1w4L{D6BoLu!#`D0^-* z?_vY%Td?J7;JN5=&FFD0=y9#+cWvl)vUkkGTqL)pn7M=&QiF+Vd@UXCSw6W&t$*zs8HeN;sW&IncCaix;-nH&l&V&f=M91O`i4f;W=$s+Z%=r;bN+0^j`G>^ma&Aq0{{=enIUsih>OkeC&1^WH6nUmkucHmId3AmlUs=tl#NTwD)yroYmB1~s zmii2pv&jFt$jtk4sQN_~$I+tbT= zr;_XDSw<~(&~kJia*Pjh2Iok;X0wI7jLI7&bQvuN1N~$*jErUkl)C0m-xY`3u=dRuH~H% z2DKygRi&Mk7uwE8x2bma4r)jF9ckyQ7uwD^b3AXJ)lRvZ*WCDas5h1XpW*B?A=aVb z^Qc*GY)f1_OVoaR&s&mTdO@&x)Evu8pV!9u#!+F8V@+He)F>;wp#EFU{=XLYu7^5G z;aX~g%&lsO%&Tf>@;>1X_rcTq91W3}qoD~{i%rj-d3O*V!Sip2cir!n+DBW#C8PcL|6Ota>-clSUgR%zszRmYWl21vBFVppoGsBMy7R{PL%yk&|I(rSmtkns&J)xn zFY}<&@NzEDtZ~JG(h1}~_{Lag0*x_iq3UB)EmSXhgWkfkletEPx6EVz@O^=n+Ajp! zc6>1qEoHqN+NlnFEoIp?Ka~7tUyg>1yVz_8op^=RRIR;O)l}7MXr~ApWG>e(+VgVl z;R+wu^U@n4dpKX{40#GMr_tdW=Z>tcXo!sG_j0beTpPLH$N0bD&&%7EP@;cE$u%*Vkj2Z03 z6201q{dWoU#eJtc9}u_N6G>Q`+p$ zA4ks;-(kP)$@d>^r+!WZFg#kBYAle=+N8#ty!8E3qQpU5fu(@ux@;pJ$3lPH;FI&8@w;RfM%(OFoP@Yi%&8LJ)38YON|_} zzMkE0GI-S_&(iPj@DnuA=I`(&2u?{X>Un$#LPw33KmA?tA@DsFoWcjeT+pHM$uDEB zi;0(^8!TAr)(nMbUegvj%(KD|?YO#%jpu-GW9e_aW;Ex5Z+X}*`M}=ma7)cA!MlqD z@4yi|c0Qyo?=9w?V)t`#>o5BIohqMUAl@AW?k-tZ_FeikiQ~BHI$1Ye)(!ub&RmuQ z`-h1+)G!ydZd}#66|!!OQ>`20wBaZ6rPa;4@oxXRa*lNRvEEziQoR^Q?8F&4hL1`wt{{q>y!Ej8YqEnToGi>&E)4 zb+cmX%i`B9M{5X=)f!}7-r(#HwJtdxe)BZ^B+i!6_*3-nx=zu5+tbj$>xKmSkIhKI zXPjchiblF!#1r#~*Xo&0A%tXHH0<&A#?|OBy@fg>y_?e)~Q&`T49516}{rRI|iLMdXYa61P5xZwb!j{ z-e}V<@tN1yZeT**TGMuN6?YOVsAi5^z=LZ3XC4yEky?DMeC%`FqKfYc|I4U*M&i_) zT@7KLEyfnb4#jVk&spW8{09E7@MdoVx?_V*dyy^lLtkeE;<=@FMUt1fB}My2ex-S^iDOmi7CbAAFyjE}>7^`<^8J_CaITBl zYtxVNvGd#^&dUhpg1=poV~CG6k2$i|ONd+D{Rroec=ONl>HeqHUZ@(GwH7}O&)fU^ zuecOFI4{TC-|x#Y_xIQ4s53HyE1AlOea5`= zG;j}22Y+iPCA^<)y&r4gEN$U~)AQY@^~qs9O>k7uYfw7(@r*v?CE9|+q;2-CH@j!gv)Ytee%ot}0p2#{AYg|!po8#x{ZFhIKlk3`|5v!T z41OOzLHsFIcopZLqT~Ic5Zs3sD}IkJ_F-bw>+#Dwg7A~h^_Cm|!q#hpydDikd?CWwB-*hEI;A`9+9w+cq#Sw&7` z9loGYuG4rf3HzYMA+=%;YZaIIueIl2F*afT&oTc9ZApwQnZE3K|3Bs`{;?*#*hr@S zm#mS<O+`vfcWj3`i_N+wx zIh@NFn9mOMBNNC>&aD<}rBBkz$SYzNJXOAk`&zg$N5Pj?88M6n){clkA)kNX9#Ixjlp1ZQN184&ETEqt*MvLM?U)A(R)u;0=_xCcMc>c4B+)$B!il=fv{@&x( zJyV97wc(rKk^OQwU*JfNBl8_CzU+DO-Sd`{bpvOh^{f1=1nz}SGnTDgWX7`Di=pbR zn7Dk{mP0~UVxvcBHwj#c&>nfd%C>V%U>!u3^UTj`!B4?ep4%b+Z{>fU{VD%X5Z68bw zAad#uIpW)h=i z9KW065MH77;yn+|i;l3*<4``3ceQlC&i6&k`+WGHFEk7uH7mK8Rwp@;cfB23aOb1T zZz*y(pB8`YOTbBLMz@?nFYX~GTmbIQ;5)}ySaxw31`@k zQvhDuIg4JwpAw_sdB+Fk599mC|5uP~{vV*96!NzUsGC+kMSJ?Ez`U*6)zD51G?}v^ ze#aPM@ZU))FLjuLk9l4xIdRm+T#sG*3^14e+o~&hk8uD;sRz=+ID=N-GR7UmA38XT zVfbSOx44*>{4Y9zoYN?Ml$@uJ#e@1V-#vFfuhUQ3V^`cFdWi766Pk9a4WHhXj^sMK z&sX{VuOHYs2qsSwe}UMWSwA%G&9BAnj~Dws0Ng&yyu9DHBYvf)BtDnHUS#|R#V(IA z!Om~09Ei>R*AIHCCH|&jbG2q{ZfRU>uA6&e$J&3UKg&AbhxPa@GrPafU^#KsvB*7q z8D9F;@oUVa?+AX4S&XMwPmKFFgNMS0Li{dr`rER%pd9(hv$^QHCB&$u-ewXs@%`c2 z7Qt&fe|m6RcZ0LimguiGjVS$w&NH{RVk{ zJGq9))EAJcui+Cg;{u%dA+!r^ZUxTbvkmTnHh5O{ZYjNwtL@wC*Z=U}hBgm+j@W&8 zi>V_@{Sl=n?&i7bLC@iTlp4R%R%n;`+p-SnCLT!p(RU3>Zs{F*PotM;oJ0;zRE zYxX|({{8IqA%5fe*L+w#5f~=a4cN=Q8geh6;)^46>WMP4{# zNQf`E(#*JkH_fzJE7O$CsXkRKKfQSxe7N%4?$$#1B7CSFy#aqM`v@JtRcgb@ zc>`w61XJ!yyisf6Q*^T~E%|4m#&#ISTqf0KR=+3e(OIeR) ztl>LdpH;gg#!H+^r$%TcwP5Tvl)zA^SXK zt>W==wv2(_YdCXA&N~tudJ5lW*5#g~xxdk#?xsJvC%j$mbu+%Fz-zfmeq4=pP7?2| z$-2XH^aIXG%5`R!#lI)-%kx=I&yg(R^TeptSxEA`9lsU$5u4m(pM~`Gk>u7{8Tby zR@O@T6uxKwFLSj2w{cM6>i3F`oPXjRjUS?mO`;b2mr4R-9x4uudjy|{cbNZ~73imx z!~Flam}}!O|JN5%E9VMw=N%Ppsb%gV)%)49*JlHBzbT;VC-SnCNyGQh1&a4QGg z8jFl?e9_&OTWq9Xg1`52a%}pvK<_a};BP0Kfsa~Tf!;;MMlZfy@#}`BX=ZI=_WAX~ zD|(AGqZhu?>*e>@us|nsKgp*{a*N2Z4^gM~)+l=pHh>>h*j*bPM$=~WkZSVNwxEmD zke}un;cnkfe%cQ90O;hCHWMl7E8iX_)D3 zFQZ0GMFDiC4qZCDfX)z$*{Q$l@Wq5b;`GU$?VSwloqlzNMP?pVt+B@cZ-=?YSM*Uf zot%>~4|-*FkG-(o*Hjzpy%k%@imTZz>#?l=k95P_)T)|1`IHDwTesY{qwYW znl;^e|Ia<>4_5wEP|hjBpPz#-|KI=k`TVJ+wDslkr;K{B$9^I4#;)~ZV-tzJ7CZEy z8-FG7;n>kcr|fmm*f>Hoq-xwa&17yc_!WD4dYV@ z%UMIs_{Kj%FTth}-%NnHe>E|PBC(I~|Nmqnwh`}`F^Eg^ty>IYEV*P~5Q9)UqDNv7 zz^Y;pjKT2l_ErAfVFNYd4>n>EMhwCwHkHI6ch|j4Mog3pR6h;y`k_O2M_qz+p$Nc@3M_ z+zf@=81bJf@)=6|4fM9+b8V$oLn}7ciWG9R(J$WS+{P+=TdnAySJf8py~umg)(P6V z7g-R=wRKrnWj)=%dUQ4IwW3QrmTJ`QIU(@TCh)G6n)Iy~_|Dqh+F{dgrXO_01EMQF zF$rCf_j1v>a)4cIapY>f=#2A`tE^d_HCuPCKURvI75Ra>$CHr7J`8m)xg`FImxQGc-k? zTkA;~<8_;J*!n&Vx&>%k^nK~un9uBE2A&1@{djj*Wewp?tydFCXJ(e}SQ;+4doOzfRH)l4I=Oi$Qf6SUI%3lm@;O>%r#rG!i1C)J5JEnbA zZ{;jRX*V(6zT*3T%k#kYMRP~SBV)7RzpQ;#Eb~X}`kdHTGA^;3=u^fTn8|Y&x;-cM z6?%?(uGn}^>?_r0dASpv_^G?k#%2#c8|!LcEut-GA@$YUGmopnIj zS*w}H=!yaKk|6r&nfTw@3=|>IaLRRs0Y1G;rn4C_wjd8F^gPq*+Kk zYN<)1@~}LzwrIZa9_DWY^LHOKX=MI-e&TF7{C~5v&KI&@mwxBKKarWVi5|H4WH3&U3bB7G0FM#a`%y z4L4cd{TJR<=XCOU@6!t}Hq%B6&txSU=g_8NV~x7ObvXZz+Ed4{vE;tkH)2;lLK|`w z`zkBdu*-Pc-QqfEO?+Q;{(?5<=HH=HCKiFXa~G-5&N*M$NsH68j!ToMW##TW%2kWAXXh>M|xE zJJBKLDxD?4`}3R8SC%jjkW)i-bPf6uIUw-%r@#M;4D9$6x#MB2#>XB+mzQ{#z%PB| zYg%g`YK#SrGKW3L;1ri{0X5q@YI}RIRLvk2|6)y( zv%bSiuz%y@U)=v0@7n|DaQwE8&&GIIyBUwtA>Dn9@nKKMd=G9#j_f7|sp7svy^}k~ z*O`adIlgcS{lO>5Y$LwM_h;!N3~nVRVy&4)qO;Qee94=kKhaqee{S>H*V=s{d8FbBhtvtiqbQgSpP3@K68N(+RS*O8c4*a!=^>n7h(Ws5oYVwzy z|B9bvN-JZR^Ab+VI_xgc1FbG}3w#{^N8Tx=9uv9z-t{&|>*LrwPb9kZCG%X)CvEI6 zB8GMfc^y8Yu`kA^w;f4zN`6X|zD{N$gVV7c9^iNG$y||k%HX$0IY&N>A8cWYqj7rg z#K!0}oBqmuE+=;Q6nS4@%|)JNBhNf}qCYTZ=B)TY<|4}+%>6(*^a3BD2au!Fut_tS zr|?(!BlcwcGkLP5r@lje&eg8DsnAgIDDBnK=PUG?Wa_I{4wZ^|0iPYe=BNLDb!%>j z_AI$#>AfyfKNfk?N;~o6kuk`4c0v1LC)lT&puIi}d<<85qMQ%f2YHZ)&X-iTI6-?^ z{qhI7A=wurDIazs)>r@o1&UIObce^(>$FS@6(@;8$P~ z8p>XMIcuOo^r<-f%kM(h9|>LYapnPQCvB%7Gk{xseXoGit%{DEn@YS(=}Mm_PmWGu zzC-_{L~U{tW7)_1dwHk%HfoNwU>|`4p~q(44M6|-l26Y&J>gV*)H2?mF$Uo|dCtYV z1-u(3KVm-XOyP^;yuXW4Q$XrF>9N^io|(t*vhPFU6rludcID!^Q`d85`HG9N*>joe zZ$pdE!4?3vNLSeG7m_av+iz(@U|RxgukkswoHfkO%9vzO8k^*zA*O=(@@D>tJr)PyGvI z{`m^d0HMZ3eBAhd=|^m#5V2;7F-FKqh-MMX&Lx&j%vQzxh_fB9_?j~tdX0fza?bDv zbBQ63VEw{RrfeD7j&Ju*R=ccy!c$6KFs}{2w5y9P^AvmO0?TdwR>tsHYFgDv)~wh1 z^sd^Et$LsjdDi@H^u^@%#|9}p{Z|k45J!L~?7P7}B>aY|4EnBxG!S&JtEwPGt)Q)R`&sy6B z7yY_@7daQv)fCw-YOOzzP~^h7~8>R8@LScUCwnC zT@-t=UhK(?adB+|Ydi2s976iG+D7L%eG1*uo7lT*!kOm|PnfSAT&ne}dNK*$>NT4G ziLWcWbL|u8U{4^QmMord(an4@YB^;h_ax6Nz3x{vhVMx7ji>SZs`ptlmjhE7wpc}1 zJFt6xw!{U0`%+gwVK@^XMaSpkqsm_hZ9hvN+!-5H`)jE~DDl`C$(-RTGA5n<5VX;` zr#9?zeu9h^nWbz}hpjW;|J(H4neU%#GxpEM<@+CJJQ{ySeD*pOKTLg4{C@+x#t*ab z{pI2V9D(nOz0Q$w zK+`XX{iD9)Lz8O^AK)=+=Kq=b#lC~~QTT?A?GwNJ4|W`DgcowrCr7xIt-R*bbJcVE zTztd2x4)jfK<4v%?8jQQ@0;mX%uuYB$34gqwCxv~!^LC!yy zIH9ozD8zdo{v8{RIWGHbB2|oSjrh`~E|Nw}%Zz)qfdkenIZyb}dt%ku4*Yf48bS0G zJM;>zmwBRU7}d)ey*J(@ehg~Jlam}Tvu;6Ni!2N_@(#ZR)LF#+z2BMwzpWR!2fxwI zZ>SU1eN1=vFeZHR^_@O>#$t_YqctXTe^H_2Ro12%_9*^b!#?fpou5S<0X`4I=Mnfk zn){-&sS4Y4S@$@C)D#lmPPe>Bg{PFd(|4S&UJA_Z;87!%WQ&U>$@wzkRqc}r1p=$gnQYj)eIuW4r=#x>64~CJ6`$vs@-)d&y2<+%XLAH(y~$#(Z#Uv29~L z|7`f%A%0%?+AV%wt`+G9pEsl{zVAa{=u~fY;``oH3k`@>f>W`2e$E#|0}r1 zrB99jZ9DgO@^8w|3Gu(Z!TsIp9Idt5gUMc7KVp@@B08|>6wiM^EXZT#kJNTO&mw?5 zCiP$p{9W=HM|@v8Nr zi)>9XWowElTREc+*?Js3I)s0|brAH%mwzG)nxhAw%tgn}{h>38J}f!AZDXK6I&q8R zYtCcn#O>t4oyND{J@$E)v7OCAUajMr%aw7SMXnjK@1Epy{N9R;y4Y=IEEGM?M!r+c zIp(R#cN*9k3mw9I%92>9`OHh*pJCnlF8Muby*di6YnU$&6zbEdWhk~4da2Ib^=6Ux z7(!=_)@r)c*;M&H&?66il(XAdAC=wtv$6O)@U2H{W!;r~LN{^+k7{~T4P#rc>FG z6^Wl)b6ezs*bt%{pLAfya(>oH=84oZFmf!-*akN9NyeO|QMa1h9+gM2P17S=8DleJ zW!)G1Zy|UP`zVT?WUcdR-Oo+&{sLdZ`P}~4N?I3NX&ty1xf$Myd;y1{ZN`2<{I#?v@&Vw_c@mc24ZfN`lwc6x)A9wTyiwb%#$PuV1@Xt9mC<)89&! z^JQE+_Rllq^%Cav8g%Zy$m>my+;mZVTt*GszIAW?9R27BviC%6*U5dfal6Y`KfTcR zANSxd^z=6BIN~>aTyzEeY*NqhLBJ1vD&!mdlwh z%QQ0&opVCKf#_^M90RYH!H*TtQ`xC<4vA6U)PujU5MGnq<$Iv%!|?7Rcy}>=l##LI z$&%-~-pq3i&4Is5*)#J1b8`{>iC>5IgdeSWy-E5iWiBtm@A3e6V@}K2<5CMCG{>dC zDtWFMDODrj8R1j4zXU!><{adt#Un2M544gT+>pvy7kx9S?iTpP$lpz=`+(oywNt}m zCNwK%ydGd$W~}=*V7CK%U^%)5Ykqj9)Zbt}Q48CH&Fs;>|5C(*--$hekz#yF{1#zM zGWS({ldIrN$;1jH2UKdK)Z(LyGL}u?BElE~jIBgVXzc~QLf}H}A1*O)GY=T%%iISh ziJ=KB8-Rs9&3bT_(U;|~$YD+d?*~teDKrb($uVYl)Y5gbX zs>_KTTF)vU74Iw%St0L33)u@cpELeu(RP<{&`%-$f~cFlq+EkM9}yWzA3}QvKDS6d zV{ilG{ZdEV-pKmiSVRqRe0x>m0}y+8#vh;sZG@)@tPYj$PAyo!?AM;B-m$57q9ro! zgsNNR`6-M8T`DrC+%IxKuHxI6hg^%oJK|pvA4e2ho_o8p%-=*0RPi5vYvQ+e(cxa< zfBwg@T?PCH7}NXUZi|-m{z9eSxpwrWE$Tk_gA?HmV4m?Y^SMOx2OcQ*yZIa}Dfi=> zD-GiB7P!wK2~r3!B$mL(giEyvWFCZ#dVc z*Gj!o{AB_B=s|opp)5Y1Wu1o?hr%CXr(Uj}H9nWMl54YbG`TjsBe^z%Mqhrv@7KsX zx>Bx{zkoK;bY_=O}EWm`ZED)?zAF%IrMB{Y}k zWR4HzY%A_RI(;tO^&Gz2p|`BZu{HDqJUKS z{|@Dwc2LLn+6+gHj6>oH8)>%LUy)N?+jh+RGX%!KRfqg`VHh|Pj~swK2+el zFwgDNAHiO88?~Y(XH}iM-5}?1qjNaSbMJ=Y8!pAST~O$3@2^ch^^no`YyWUP^Ecb~ zcD(iv?U_^9*KH4wr^tC3L)jDdH=E19pYt--a9+kyTYBk=bZxf8TqJg}g*e3U0C`Rk z@Q7_5o(aua-(-E5&shvY2eF05$a$5(q;iLVN!2I=CY3wn79Wbs_c1!^!Fz4K#+&WF zzuxNb?JrF5iSNE~w5C4<&BOdYk9Er>busa$hIlVby{@nGo5-+GCiBTWKOw^B`12DU zau|NLR^)RUar{!^_+`ZLTam%yf0H>Ral%q$u3W{xoNwky^ZYZV#PR<^9KX!gyVQC| zttBP@$0QP{wN2z(qa4rJZI=HtXmzNVQ0qfrOlaU z&U6~S^)h1jdzlvk6Z4-jxSsh7v3r4sxiVX9W$_(YK5T5}da;@BpMuX>@YctWe{zQB zW9TMx(QRejnvYE&@Adl`a=w-I7G7_S$$T^B)@*oQXej>XzCuH2rp_9LhU&aUXrRtp ztT4`7-1(5r_r^Rsy063c+U*IxQ_%0VQRE5H&PMu*r`>m;T~B>Z;n}tetP}83r@se& zRQ?|PWi1|j3i!*8yJvQZuYCWT}HhTyP^s0rd!#&_Fi7~9`>rytNVJjtj z=VD_zG77Q#UD*9%7nu7NYK?sh;v0~7yMwu<_5+Lq4s;Bud60(unE}1Rz&0a0z4H9G=By1^7usZ>!yGw+Bh+dIAuQextn>7ziicm<^JdYwcNjW zgUeZgj14EFBhl^x_PC2Z8DcL?Gvk&%B=_!{n)dQ}WI8$OUGO#7#8yLT4IK86CV=zugyqPa#?urMN=+!Utf|f8nC{cL@xivYt$L-BA0bvJS%QA5B0+CkouHp&A=(SNP9@Jm39n_?yl4LY@qX1E7cW_s+pDpkiTfpcgQYl)caI z*Gn!B>rAkU`>Y#MljXAhmIrL`7y2K(Y1(D%cf90pxfPhgYiL7cM7+PH3Y^SBXJj1l z{uYsEJ^5P>ylnVeg7^(XyeD$e@aY)-mOH66EAxY@5$)n{=}jFA_>#3~ocAem>;n6E z2fTQ|qlbAVYl_%Kl0&^gJ(tvJzy4#yS*2@r2=dH+_&&rn3_dplulOG#%b2_9w-NeYK;M;S-{Sj;l&HR;#m#2l33b1xZ=qq2 zuom-tXRQIl)_#rW!#ibN=R5LO#ii-LsTdz0_hhX+!S@%D@9n^nA#r!&&SCt$>iMP6 zW}WeTpn`XhLrwJ4?1nZKl_fD zdw;=sgTad-ci&E)`huCx2@2zVKs^--WlVcK^m14RW?#De({OsyWfeKu`U+4wAEKmS?qexX1=N*zw}*Jf{_7UFy8bR#NCDH9R2C$t(w`+svS_|~O=yipu05u*(6?q9d*(XztdM8%F%Ll}##NNYO98V9sD7K~epQHv* z?K-hr6Y69h1({DF=GD1y*O*-+azf<1@P&#&I5JcWLik42{(*1QIr6#Jn6-YcG0vaC zFRtRM;cFCMNez(bB4UF_6a3LPsN0iI?9lCTHq~T0o9CdHVcQ%-KIGd{jGPGOyyQd# zxEeK!QkDExeqQ9!Uxs6w(~h*E-bZ$e%ss}~1V2GH^AenekpnGDiKmNPpjJR-@06-a z{N$B;Z3n-LKSuCl)mZ30_EdA8Nj@#}yWNn3*mmIP138DFOFzh|czBkgKPh>aR3~}a zbJ4SH{#eS~#p@ETJp{wybds@2xK6kvAydC^&BFh+G zK77*17|Y1XR&|k$nt)#eH{pEbLYd%B@?j1C=4fKltOxWx(fa{y2e#6dNA@3KV=Uro z_&E+J8yy{{%@~jPc7=EM#KC9vZ}lm;J{E4qCQ?&1{ka`4K9^DR zV$ep6qqpMYPTjbMdE9Mm-!R7}XL`5SfXiE{ONgGkLHT?{w~%upGQC6KYpWl@t-vk# z>JCpP@1CpZy3c11v=v!#;(;RlL?bww!*#!1e+)hMMeJ-(kKV zL*EZ>2k*Pdk7De>JzSS?ZIGI`+1~Cv(b=!ax4A>S!6Odpzwr-G1(I`|f%|iuhF|^$ z6?0W_jYa5h9`w6vn_BZ8{qNZ9=NHePdQ>xNsuZ(UDE$`ty}bk(u*i^gDi;QPHbaL1 zvMPuSY+8hUQ_30;TYu=NmQwl{blJlDWyEkcK^G%tBXJe>Ss_C!wL84GKo^mnO^a6Y zE^=M1E%-TUPvSL6Pmg^1Luj!jrKfhvI@`&;LObudTnArG(GLFk`**FQhQv#~w3*mIW*jsR7L*oGry-lL&jrIWfDizhI%~>X1$K}$ZxmJAKHp7 zz71V|JFy^-&EK@h=5Kz38mSG5&SQHx-=Tqg@_ia}6JOwdO+R&*80AO2gRlOb7tlS{ zv*TjlcRN-?!dQt~c@`c7HEDP|}OFsFxmE z)Ju;|>FbQOIjAk4rE=tCuWhaDb0P;X^fdnehS5e2onwq~bsJaw|7$(}KEfMblxX<> zOA~cDM=Dst83-OekAwHo!7cxP0=oEmbgGr`gpmVj#_pI`%Kx8-j=?*o|NpXkZNKI{ zTP^VhStG@7A?s-#=QJ96hMZ}6NzYio+!Xj1$eBdIFTVc{;9ty{MArG1BlC>&Esgoj zep{Y@^NusBk3h*?;OQ>#beFO3HatY(Adh%JW%(#?gt-+C%l{B+l=XtP)V%|r9S##` zZu44UTuZXG(_@(j=R95OEY3pS2yMdL4|7hJvdO7YW#kWx_Wofca$*Vn0E^_kh<%rV z3=A&8mxFAWpW*V0y=%Q!iOnvx3em%lbEPKI2nE}>E#!E*`~tRwd5HAqsVEA z?}{!xnz}p*{FX>8K;oB$r);wm@HMUKZ?AcUSi^gtk#j!Iu5Y>%{=1v_ysG&*+#3Y8 z`=*_#P7qre9!i9#HkxhD7hZZp0c=L7Jf&@CR;5YMDgFC`2vL>~(9{ZD)k@?CO#BMme3 zBB_nPk1Jy-WL)A~-b>w`NG^C||F*xo6oXjh-iF($tWwH)a07IRpGg;FSP1u{s)zx!%DVB6+b7SKjAr>O+p& z@?!Fii}m>n?qlzG`Jtp&&ntgiq=P-V_$#8kC-L}l>>>~F$@gf717A*&K0-^X3MCgI z``yqtS>@j}5mS`?%Yi{MrWEA9t&UhdJ|Sv$vv=Zmx$KX^7irYKVjUSo9^6^<1Kw-d z$vIXvcHMzYHfY4YE8aJ3!o<2|j4@mzeoyL6ivKg2>rVJPMqg`+$yqbT_}n0TxvVuF z_Irh!`K{HVXH%H_gyu*oO%XpjB zc+Gqx8Lt~!70Y;&yNx%g?pekwwQ425SNvarV#Z6oFBxwWV{K;4VcP9!ywk2QUO5jj zzf0 zr}j+OPhCL9!OtPu`HMs52(|juTygCf1}{z@s!c9W(57VJyO94V^wn zdC%fMp~owO$wPo10h1nu$l0jSgZUe#R)HZKY~Jfl8VLSnP8QoL4<#pTK9jt7*qe#q zJ~_eozID9zCN+xn5PTJYr=sAv2^=@04>Y4&?SaQ#@P*`S4<&!$-G483?%|vm{DHIg zV1usU3=6rkZ=${M$;n zxDlBjf=}-<`7;DQHktfcV)Eyb?)cEC0oaW{gX9qhrZE=qV)3Vi7s1n^oNoL%4gQ>R zb^N&wS$MhmI277miI&s4!;XB9r{&6cT7nM?=2t9uO`2FVt))($WAU)5@$?I9L$+-% z)*rv-eDyqyd=O|q%Y>^te{Fz<{o-H}z6)Z51}eZEytcK-fX|Y3^G*0f#)(|Zg>Dv% z&zUe{2o6) zHsTYwgi~9q-Gn*pc&-zlUk6sz2Qq2~^CF3Pk(BVxnWW8aXOb2VyNK-VoDWy(`?cZ$6G2SuoN>diT*+JyvvqyzBzg-g@4V@}P&g^b-(>46GL-9=t4p%)^pg;d)fxh}X z*hc7DndwvCKeNTxe5R7xppmV#|H!Wn zRerMh%;tT6KU4ILi)SL+SYLQ&A@4*T?2X0mVB}xQ`i;ItU(^0bJd~@7RRD|peu{f@ zM&cvvDC+t=@YcS8pBnwyQHajBk988h4L7pR#^XWe2Rec16wT{7!*blc&ST4olP`6X z%VUhcqt>{-z<&F8kQ(5T<>9x;P?|3&T?^b%is;3IhE2>lAb z@XSKu2$lHjB`%=G1pdo;E_8&N44SP`^3y!GvHy;D*aU@d75P(Ltp7Oke08Lh{+7Xi zv{gVXS8DXmpuIrFt;Dj8yh9bc0q!Q?ADpGV900~3@P&Xw+6*p34wSO@UGf^>)nt74 z&4XQsWB9|H<9zoL_X*NhfIgGibLyGG`A6uvEso^IluygnrPy3ArP#D8(JjT67dh3k z2i>ay+=9a(_zZ#1F!+mryJ+qZZ&R4~q^qO)rTh+j+W3NjBLX}I9@vXCjyX097}=-N z%otl((_dg;wAch;{wE1OOkFc%>YAln&R2K1hnjYXas9^i!~%$MRch0`kuj{p&``wn{L0CN3l$Eua_+@G*vyR|#8^Zi@9w0mY?kL|W=yE44N zUf7&*?JlBS<)@YL&w-YU&@07eDNpu3m}BVsxx{27-^PxOiodA7r@BJF`Y|%MnEJx( z(UxaaE)@RC$Smp);3HN(SaNB?e1C~&Wnc0z;XUkhBbUUEE@{{>vW5!}2DXBG=05P? zJ09u=Sn3@|kSz(+>+S*<^DTk6r-G|o{LF6sF?nYW&zj@x z9K#}>B|a+8DqQh>9?u3!kj~o*CZFA zUd4eW7ooaqI7rBPO}@nyPayetP_^yz}<0*wM5v{Yl%( z9^1_tf}K}~KV?2JgqEr^;PH_U<~@7eL)pN)+no3O9>Eq9nI-zF_%`x^^)75%d3Pc3 zOFrw{Y51HRBoLL?~HU^iOvJqf1=!Kg=<2dI9@zJNn?$MjRSHh6%fo7q?2rZ1!dKA@fw=6Im8v>;d}z zEB0-mjX4iYfwNpMP=^g)#wYjR)tN&VJj+^l!L0|{+^Rm2_?KdyX;ph2B_D1Vx++;{ zulo(3Fj$F_+UB!`s}t2OLB^g*vu?*V29Vu#VpIW^8uA!};1gSlJ^2L++hVhoUtl70VT$0?@C#V_vgptCS>5~sQyBBaLcJ6o ztt7s57c?rt@BipqvDqik4JuviS4U?X8jH=A+#t~n(-c3FpUYg$=Cj1+`U+nv9(`_y z{BGxeIy~{0N6uCs;a?N^O}>iq`R=uQoBoJS*X>@ghkO6i!@ZAsxOb?Bdw=cW-k*B7 z*C6+p2a=O|{2S;%C9F9U`#SrQoBBk*zKy3IaOmS$XWNps$#OpOENY0hlc$=Mge{7E zX-BtQtC6DyK18>e0-f4Mpcgh6KA;YVvF6HLiE=MGC_!(^Ez~ei8qpL1R8QBXDn`LXmT{Q3Jld{wluQRTMg)}463t@0LSt&z`x66P!Kh9=(Y3_nn) zM?BQbxSzAxXOe@*dU}dy#<32KXB|4o7*9JU)SY(p8=Y?_FS$vZosP^OUzlFgKF6U? zfLET%)+QISFIdqW`PkjZk_WD>xvYFFd4?Tl`MfUKy|PC;sVPLo zz|TU?NBz)0jP>U5P9^j3a_fNDY-1U}z<4=0&nI<*bEM{NMt+NZ9>ZU>sf&GX)NOIc z!TPcZt6`&yK4nupD?T~PP6yrtLo55J^Q0fV61>nRz&Rd~In=Sc)1|M#m)!)--nQg7 za=U&LHUP9*^=5%{59ghx{1<$ZjBcNfEI(?~IY+AAqa}KmQ|D{0BkMyCur5RvZ^^#K zJ6Q4g_jjz4@8^1Z2g>*4AISH$TgLbE_LuKzW%9j#%j`UFhI~hU^Zme<+p@i~*Qm3- z_Ulv*L@n*B_g|ji6G8Wd~=UID| zz8^PM;R}%wOXZyy5t) z#FnVniY9vtMCS)isrxNHxJTc;{JMt@*k!I<);~NA*_kivp5Y(1=8NFz%ne=VjMRJ$ zP80hJ{R3XSl7Dz7`KyMi3+1?b78sk65P6 ziE>wwQ*_=e&7E6L2maP+l z2i>d{o$JLqd>_aTccRu`*2Qt}C0|k2orUlJud=SP8{OjR)m_$o^-6TQ3R(9~cR0VK ztb53WwY#hnIVU_OKFN4lcf*z7wPc++|5q^oyUV)oZZu?FC9-ZkvaY2cvM$|09aH4M z0OC7J)+He87IezG1<1C_I9XRI-{WK*-`7^g$vVE*SH{UYz8|QJlXVN^{Ww{t-j9=Y z{C=PkSr~sS66;vTe;U7s`8~5x&yN3{bLawP{G0OVbpJScRKfk#i6V~GC6(W!5KWx@N znDNf#<Hbk%!nf)H{TQ(v1i4u#lC6R%JaS3ZXjPB{ab2L;&)hUW_>t^2IpwP}SL~7~%a6b#~gqMa&D%=xfEN+g7AUDz-YK z7mDiR(K4%_V{{ywb%_Oz~@PFxB~16Ie#Pb&s@KRM=rO9S@e9C zyvzKr^i1b@H(jE$#^>&Iz9t@rCY|>pJGA;6yc^|A+c-Ke`jT|+$c*EmtDy6I&gGT$ zu{)iQ#kX^b&Ihz}w|j%VyVCiN9_T#bOVIgyJ<++rq_bnBL1*_!gUP!MHVz2?$R@v)AtY2c74pe{&4;c-ZJ}jt@Ai9qdSd% z5syEU#wyV)(DOFL*v8D<&T)l4X-$(N3VV^ z+pm(w&~UBL@B-Hh$mnv`GV61heL$=1Yn|{Dm;SYM?R86T2YR6O5Ce~EyT#TIXg$z+ z>6fH+a(vq+t#^-LFH4-smkC)*OdGJ0b#`Tnghg|-zk`Fz}`&~Jc$UTWOhPYNt@;+Un`TDJ-o?A^4=f=#?&#j)JufIk+ zEk2T8>YsY=-{uf8i5ajz6f(@CmhYKg9hoZA54zT7`dU z%?!PH-3+~@dWL?i;XCN25^t2VG+jGhJIed(9R61HgzvBq_I$;ZE^(0^$Zv^@1m^Vh zpJ2WIG0#YinuI$!A353Oef@3DDCVq&_*jb9e5bXVywlbcy#^j$BvMOJ#pt5c|H|+$~P9MfNxgAH&yV>8d>i*JEPTBet1{-eq{D_J{LHE=VjoD zhvfLttZ-pT8xe zM#d?7Hhyfy(z?Oc&+PZ)19$3eHPl>UUvC;?C6)%h%vc)lv`u7;@Pq}Az#)B}blg;T zY8mmQgPQ+xdYkwitanLsPr1-LbvI zXMxXc)=DeRhG!e{j9O`qVTOO#Jxuv`!!_{f`XW7ATckH_C8y85#o4kQpEq!feyH3( z=3C`{**hRQyX-rV_=3b=tn=vP3_8(ao7s=u!rVND?s}YgcGu`HmVupk0B7CtZ~$3! z068YtwZw$APmpJ(3_F0YX1wFh$>Sfp&-o<&V)1=nCp>B989eZ-^VE)}#<;0F_oO#l zeRuCyEgec|3mQ3Gmg2%%6`Plj}ZqTsQhCdFF+KkhwF`Yx?CBI{QtF zP0GK9{dl*=X3P15dk8sRsHQP_==j=CF;>?$wed&G3`bLYmBS3qw>9JSLJ)t zp5%LXIBw#*$nBfdSpXdsH*sI{MQYJik0f$lMY(_e;BtR}=k6ZC85f)lTc&B>c4Ko# z(togHVMgUIA0}_~y_awD7ULgmezLdsPZ_I!+0kJ7!yGxLAJe$D6esA>ndBz8`3HwV z=7*90V5@tlm*g&Fct0LUO@HQNXT2JCj!}bpj1qjs z_v1^2Cqq2Dm-eIvVJ|f&@#o!-?~^`-b`oco8qL;RnhWkYA3^_!8Zy|lU38Q#X<{0^&$(Z~O0>Pl+Ra5WB!*i|CccTmoopCG5;HCoh@aT=Km<>zjYSn$#ri1)GX>IvL;$Kyd?+T zODsRstmtf>OBue&dzv`eG33H=&VzgH3i2RcCU&2XRA$02aveOBQTO*%5@%1ZJIwVE z{|EU$!2f>!+lfCX*lpf+?D$0Xc6Y{#kz?U?h58o;#m(Mj9=`Lt${}{# z%yTaF`*-JXRlmD@ojF4l#d>&kF*TEm^(c9LO~|}va;sWuiuGgbi}mBR#d_=3V)l(m z&N8{n70)@_N@w}o_i4Vfhi$&|N9?`}VTZ3BpGbSI&H0^v|1{&m$arXW_i%END$M!Z zU|t=$ieK+z?q~dRs<*u)K|f8d(PxydY-ZG(w=Sel9S)=8SC)AP}ze`S7F%c9Sx@4?igj*beYrj;DG6RXb^UL7P8Rc zb4Evek=7V)Ws4rgQB*u`9E%*9cbCgOS@gW=pOmXCrQ9V?86Ufw*}4Pp>W>q0SPQ-{rf&69tx4Uitu@Q#>TRL>uur41!sTJySL`D-ttdPqIQvEN@gL)j_g7fb-VXr z5BCoCaPKcY+}qc~y|;U~_s1UYy~#bvY21M9h~zSUH7++YETQ#BGe4U>{pq=HO8uvY z(dYMwOrcIffV@UKc3JH}drcT!eeTofiQi}cX43iUji1JL1=kS!a+|qA6~FPJveU>y>A#f5vy=V{1>y z<<_g+tm%rEfk)*_F@Ck*P2k#1oJewUOAD$0$`$-cu7==N@=Njurram-(CvEjy?=gN#;u z&Uh}z*xYUcR>;FL9_h;=lf+dL1zk80n8iMJvXZ$05GJHG!O zaF)Y)RVrUH3!Gi(8E5DEcf(m0{a@g`JnDY9p;2DR+3Jb>cVA!b*!lT2$JxWZNj=;f z*TcQhJ=`1C!@X>|$C`LE@=N0N;tw0gXQ9!*)bktp;a0A=)SHOU6K4$QC>lBnwGc9m zdI;rD%h=dAo<{zCI&tqzm)_VG8}RcCP5TZ1S94zZM%hP4Jp#!oee&0zukTk(A78G% zUmsQ9@2hu7eZTZB_5B>Ioe8X+_&-LAO}*((YG$)`Zq9JjtYRUwO!pKa_-NNF9-KGgHIeb^(O*rl%8 ze?TwsK_A=i_W$s+*rXt}$fMh+TQO&rvn18n$67*-Th@N+c8sc{27fhq_>-diF8f@A zz}~c)aRI|>O`Eh281l8`(n9X%vIaFUrZ8yqF~&K!+W_oAul z5^h?Sk+;fvDDBGL*|%;57qk&|46BnfN(?`m>>JLiQ+ukUJ=#|7@lH?e{gL)6fU)-D z*d(!;8aCLRJGdw9MVGt$(wD5o!pBB#IQui8?=eN+MChB+TIl2qR$$(emr~<{mUYnd z2=pvH?AHIn^+o*gCAQwJ^VnMzT&L;BwnDS};qh6TKKk_){u0i(JTX9UIkdLH%O}(6< zv|dhW$0KKS(vIQxOf~$TVe{;z+}?)&lQRy)?-{0^Ot_je`(oGmK!BZ z&nGL~sAy`0BQD4i@}f2%ksR$lkgF|9a+D;aGHvGI+k2np3?K z8r>O=#(C65oljlV0AmXdJzpJ*4P*@0^Zyl}oHZclH-?M35;KzXgTk|b37!nyFSRGk zx^C;tGcC9ZU*MCi7oV&*^KA7n>WOS2_hQRl?V#)l$M2$axFq~JP3s@>wQPORcYOOd zeXr(ezE=j@e05{(zQ;gfpcXinLiZ(_oWWWzK3P@sCO64jOAUxXt&88G-xBs1^89pQ z%3|%cGiQvwWS8JD;(Up9j{}eJsPL=spv7-SEd+yaYZDTyJizM#-dxTX5O`$|);r>V zVvpl;M_=y(@qx={>MuSz&ivfaN7Z+Je5&SKkZ1Ef$~dk;t^}!Z6D z+}p?dq>N<|V_6SBlro3A!goOCgW>DWs(Xs|gtr3AHN{^+H#%`{FT?liF|W18HC7VG z^VG)+&y3^wS$x0W-wMyuj^cUVSN?L^Tf~_?9Sw3mu7=OQkKxaB8|PxnnYZDc z!t>Yq1{nN#K=Ju@#=4WSivRoR3El$5pJq;%C(--Z@5!;KfVMNC?N<1-eucjfc^#l1 zk!LQ&gM;9|!TjIg3spelR-T>7wT-r$`3w&hd@&EAlV*6^uQ^+t3lCZ}br>|Qw`%7_ zs{hs3w0;hJ_$}YVgP|R@>=#qVMsm9YHNfeizY;~ewFVDDyKs`%E_ADbZXVz&>6vcf z<UXiB!;O!$gV{$p|Fvt7dTgaJpF3zkg@SXc;i0|X0S)5syqH;4% zUm$O>1KPzzW>JSL_XTG(P4=u;_*?c>_?u{7_T4D^1-W(to;!Izb5Hq5GwX8l&MR4> z*5Ntky4iIdR<$i;9d1*(n7x#4_hy;sc?R8H=kqT0U4Bce3z0uqh`(h?D!he`A@w7F zqkcE`3;6gf>zva2GBv-{ze@O?sqbaF{9EY9((h7#-)zjlM1C4h2@{H7$=<%7K8_y(O z>6sSenSWAG%6++ZQjBNL@{H_z=-!vAXEO43uZQs*muJ{((!(=r3;SQ|t<}m81$joE z?f#6SMamrthyNw*ut!CnVeP7ycxWv#4xw3O1bb*c(A4=;K|befNb-icKkEnVIYv$i zU)p}d8OxjtE%j7vzfnGydZ~-Kkv4`x^P$k(_No~taV2_lx#!{D9kgNFWxmT;ZM%AS z7kt?2&3DVqceyuC-W^#W_03+_6mL%T{x`W?a>l2Peb8!r)S1O+q4YGnOLL08Ci%6s ztfL<44milG6+OtYL365cjTY*sjR8u_t)w&=v&&7ch&eO zb%o>2%feB%L*NkE$GLX;X5grFjrS%1M+Dp@07n!YZ=7V)H%>L+==5EUH{f`sT;QOl z4se`$PT(-kG?lq;b9IH|XI}t^g^x|5R{)0{I6}Z-2aXVM6u4}9L6HH6&~qO2blqma zQ4mOlcP{DejS3dyyX~L%IERw^U`sG+TiEKU>uVc0+4d^6BjI~{_J%X|l)#w+jXIyN z+I0C{eXi&8F7xv)oANoR-)sT(?ojRfJFMr`XY+aWIqvy+HrMY|U)d`UU40)@%|5;t z*9V_F``~k29|g8@^ZBK5&-1zSc|Lb}e!TH~-ZPh;m(SMo@|ovtx83WUXVWGL9#&{6 zZ^$@?Y9+=ykr~gd(8f=()z5flsP-)HCOxC}lUt>}ki4F7|W`zhn#fJk4SJ#QPljG4ktU`3`5W5uee12l~82k9tT8J!jP`%;{~^E7TQLf{DOW6wF)mS+5^ty1&Ez>Q5~ z@8VweDxkYGqq_vTuWE`S2ZG?)hQ5ZZ?D4Fkc`2M#q;lNyyqn0s!Y&jf3g|!n`h*#9;>~71MY?WX|oYsH5J{ve5&_{^r7G_ zM^6KfA`4~i+vp?AxE#pVNFzD{IFF(OZOAtA)9l&!z4`sm-)CR9i_bjs9-kvTvr=NY z^!+y9!@xd&AUf0 zr=Q@jb~!l5i`pCEWPB2X(9O`xLRt7M2AF4fJBBFVOl81f`exX_PJM#&wQ?3?*ZO^v zP28=18oQ6ZQu+9l3tyzh%b@Z@w`j?d!&ko;oV*}-Z{xhBZnb+xoA0-&@6-(O%q_`^mC)qrbo zsLm&ZM-?34{<$RZxzE63kawvqx2s(6*v&uG;pm3Pe4F0Dc*6LN0u#aG6!18W&&=^a zZZD^_m6L#f1sgPv*v~M9PkU=f;Zt;b@qcy2>AhEp(-X_jR!iT)6GrVqsk@L^mjh0x zC)hiEDb$M+-^5y_+Xzk>(|oDT+F<&u7?b4ct?aM)p2x590yeFQQ*?jqKITb?ckUCs zitJ)c((eZL+G$#@_gV780x@uh+z5ixoRoW=^T~~D2d|0HMy~yaQ==t`^Rn=Zeu9kr z8uK>PNQ_}We2+gb`jO;L{My-k)UBuVa_OmksmXPXvA?80?_N9FrT4YF^zmB+rcU>WC}iGPJ>rG1fK;#>RCHOPxH zL+-7F??Ykyh|B}2-MosrxzUd_|MQ$T+BD7K3}9ae!Qpp4JX^g%tqpnJXgXs!s!7f9 z`a(_4GE{5QTD4x|-xr#SzAx*HT9fEI5k0o4*{vs`V>dSM51aYW z`%Y?NgX=zb8*6v(0DbYh#Ekzze|CwF^W2B>c`l!M_AsC4sv7L<2ZAQ(25X0EcUU^Y zT5I2nz%F&DME_DaRpR{MT)eLu`v)F8Se>r&&FTHotM*WL!4aqIiq%jw!*g-%xA-PiY#_*7Fk z>o?^ssS}=})*{iP7Ry@1I8>gvmCoT&jW;`>wd z*$RD*FekvHgX3y&TqArVc_I${bh743E?Td;<*fUH+Ys$xPwZ0XDeuKVa(qU{O*R&mm?eEaBAon;1E8Qbw}0%$x9!0{k;-$NEz6}=7o;jdSCbQt*Seg;i5ydySCfHP+TH8wpb3)wf$;SWGJSsO#pP;%-s=`)NC zYMpf}XRXT_u07cTVh4yl(335|S*yf<9IcO2pQ-3+&zr-rIfi3M_oeT7fKhkNQIU*pIfF{b)yt*9JRcv%|=)$YISN7)0JsR-wN4{g|Sw=%>nm zs!j0*!QrV~eDa4~e%67mI6*E6oPQCS0pH7-Ei_36PZ8vp*k2KzA%5%?Jj&dNKs%L> z)|>U2{zJ&F_`Nz`9Vz+Z>1G@!1749a%6Uj!D>Bp=1JpGOCKu{2Uk2X)r0$`{c!M3u zlSS{Gzip0l6Y_mtBD$*hg2zwtrUPRM@$8Mn-EGGG1BH*Jc}2e{AqFk?JD>lbNoo(G zCF46BX3W-YT$Swz4HrT~8Jm3w@!-{rZ4dw8$4xE6xl_@7Zgc6&5>$Kxoq}A&T=-`M z|9jxG)h_+X_}|8Ge;ohVOWMG0u~YhgcPFva%jmDhJ~<;EVB~2?+(l~TCo*4%zq8&L zdo)t&vTitE{Zr`I(O~*a9Ohhc8`pCc1H0^DyT+O;+?O-09vH%0iP`-DXdCa77aoYh z0~_E0(aAOm4tVxd9VanZ22FOclT|H3+H95{AG~) zj*Jz*6j+9m(?9ghJZ~ZUTi(AOdHeqZtv3%oUmZWLpEIrqc!+$Y=}~YIMVDwg%b6^- z*a51BsDV4?J~?dIFH%nwy+rh^NUfn)$^5eFeuh6%a`}>d!gr74_<%#{SMmnz_&x-$ z3kGVPHsQN!oiNWngSLj9-B;P!LVG!r_=h7k_Nv%?t5`2qXFHUAXz5SNK7?2PG>mn_ z>`VFpPH&0GCe{$4bBoYskl!N_)D%t@8d7>poVW<=LdV zvwW8I`ueT(g^$OQ@#6mxnQ!<-4WEzrMdNdxA_Ks4gXV0?!am5wHW-19H3t62cY6C0 z`b!2+X)ZmK4!$#ia{zEQl=D1mLoWKm2y}}vvpN(QY|1AB6i=S3xU6gff zE$_Ay7je;60c{oX-95(TFWTvHev>|?J7iwwf2d$>(3F2lVEE?~oJ9=2`q{B%!D0yp^jn+HUrK zleWe8AaY0aevLIo)AGEtxi4#6XZ!HE_)E|2?0Wuj1fCMQ$^0Msrvlv;?>FV1)m{et zy;s=`L%p}tHgK{>rjN3PI{RP@O&H76;c=amgX|-RBWE+ zHC)AR-R{x@*@k^)#}1Lans4*2vN3sP37_Se5OQ673Z;UZ)$na8_m;r7)$lDgi{#k{ zIG6a73Tj-#Z_VqWYc{{<@%u<1!1%M~GjQ-K7Wgo8W!EFVmlfcu?oNZEj@p{*t z07ebpOVc)T&sYo4iS!n5BK0lBAC{1s()bR!Mk~PGN)u0=@wiT&kabk6yHUmsKS;l? zylmvxN}i8RD}QPJA?Qi|W2_-j%`NMEfC%p>JBl%N%7t9!#X5=24XGQ<{OckEa$Wr9 zat=4=oi*QoNS)!&(y#BF@3D!R9$T+D3)7hA>CE{|)}Um@g`8r2IeiafTg7;vXS|&2 zbx_W*c!XT=gxZInOT=f&+59BkpEO0sinhkvWFoQ%UXbqwerzUwB)>Yb?%z%P zyuHOb2ip7{dwzQfd-z3pFSA}?cf#BDMcU32ETzS z`JPoL`A)%fo`v6R`10gg;VbdA3U3ABvutEnkhvhXZ+MMi_dW)F15;>YnoAGC-v$pl z3?77DopUl1zGhBDnG-_8Zz%T`+IU;;5DZwQJZ4j3o?$-AaZc2->l;L z8Zw0M%GWc-(6vIGAuMCH6U!+`&}wqv*F5CFyX>vp!dW&Y*qSbMBC(+h;K`LO1%5j* z;2?4#SnSeo<$1TlYmVaYAUKmYvT36L9am_Q&0hUP?y3DH(8HjW)?eY)ouF_Vor#R( zowuOH2A|Y1!*`9%HS|?`NEsk}^y?m~w;baMm#GsXw7FMwmBI*0ts=O>d!%W7Kju z2A{kS-`z!ysMKLckD8rwaD`v$8Z>ghbRPA2Y-z^*N6P)8e~BH7&p}<$mHh$uItah~ z=z#JGGlmh~j#TiFi|xqtD|Ag#e)=$Ti?hFU2YQY0k(ECg9AW5x5#~gK_=0IK5g)zO zIk9CELqL9nd1f;FrSu)1n<$?*AVYX|JfD^RReqiK|Ix3~zc?qEtLmrI7oDqYk4wI2 zz7OSH)=)qF`Yo6$#pj%5_?(sBTJ$ZxU&ph-5#@eh@=yCa;{&EHbVP;-E!M$HdnM+g zX*lqFpAm2YFSA#P%bQ?HA7gq3hJ}-Cze+niSF!B8~&&TtNq0=PQ zZ3kAx=RL?zk)6rH_sPJY1|K5pEW4)Q|Ksgl;H#{zy#MFqBu-ZW- zr`9(o1OWw0J20g)bl#v*0i(6(w8Eez+{K8R;=IhOZNo*u9B&kHY{r=)Vg*gDh|{Yx z<=k`QB8byQvH5?0`+1&|=fr?$=l%QnV9xE?d)?RCYp=aFu)F^CnqKP{`PUdWcp|^Y zhILip&lA{t`Nw(iKFWJ{Jllr%`1O|B_cnAmI_8d#?4e)T{&u_kEp>>M%rUX7u376M z*}9A$-_tYZzc8l!w|8AM+!HIvAHxHu-o^H}*U+Et&n1I1I$Z^=Cjs}>;5M1LqJE1y zdhSR4JT|%(e!l|*hzB+K{+1**XoYIw;pYvGos@jv zh%C)T4!!$mE8&@Pa>?2-Js*%6U&0Ps+_|DX z;r|=tS>{Y)JLosrwE{hn+?xF_=Bh((Bp=Hqv-qk7%w?IJ!Gwl$q?6dI-A_MoVA;B- zkE0)~wXjppJPF2>4ysp(&H>kf>oRbC`GT*S`v=qY^cIk9Lk48m%o?ul>;{W*lhDxQ zAE2l9-MqS#9Lr~!IGwc{@2h~ztVfvhG4OcI!NaB5MhB104jvQuy^-fB=m4?&?Qc4A z@3-TG$FY;TuVEMYgx8UQk@&$;*f+)09mug_hHd$I^{*BO>-W-Qa~ zn{>BOdJg=Zh98;1bJ)at!TAaDP09zPvG1~Z)1XNjJNE_iw=|;O-)U&vs-7GCTfjKC zFz+sEttT>PQ+{5H?vfgnXLXG(uxaAnM~{E*QXNMtJXP(r$v-jHM|UcRuYITdNDJTF zHM|9p7r}orx%BjGV4Q>fpBe4~zURI33ocjxHO8x~e-iNX28Vy&gMS$w4+ZBc#$tZ6 z|A8FDk*j`;5rYnK=%AS4nsbmhS1wNROgnS6nl)ZQWEU{Ev45hq+qLvId2Rmu@(Q1Q zcX1)-QwK7B8~#VUa_=j6=fl9!qwmR zFHpasd*_o=sM~7vg}S@@bH1R&+~LK2Bn|1ikdvj1F+}N zxxC7n)r#MGby)DxeXmr7p7?Wc!ai)m{6BZ^i~>h`9{XON^R=o+NA`BMgL5hPZ6sz0 z=pYx37ae?OH1F#4xcp-Cs_fQtrNp%`?CLxT?R*E&SDtCSc||N4UU*PKD`4Qt`&Y*-D? z*u!1!z#3cc3)y^wXWWnH!d&|aFx$MO9vZk~>nlU|U%l)=F|gkX?DK)Wn0qaY3#`SQ zJ2S9%0{hF*T)7Vy?t7uJ=!^fD^%yX>L)+M+zL02pE&HXN(Do3tT}s?G!hu(@sBD?; zT-W((<7Z49PaXjIy9&6|bFd%KRz1`@kvE-B(7LM=-gMyW4k2@Oz^J^cPqH=z*^;bD z<~*_{+`N1f&ti{OhHgR^g@gX3kd?>5L;B&K#lBTN0C=AQAAQalwysTIv+1wgjah?$ zv(B-sU?0_`d4FI}iJp8OmmC47+h<~#^rJ1OVL8A54{U(Zi#}lP?jC^74&>iiO(*=> zcPYPt?bX_&n>`+C=~$oQx6j3H4DmH5u0*dYdUQ(roHgXyq*smT)otu8)m|EIx~;sj z>Gtr%riIh1nmV5w)O7g8!A(c^oZWQn&2ySMw}iWD9i2+lz{?G?Awz(r=e%6^L1^+O z{P_*EeG;B*ow3N7k*gl%MeG`w#Q%^`v+|37yVGFF5o4Q=O?#q0_4d^yswqj%CL# z^yqY7GWAAZu;`vkbfndhsT&+v%v}#2U0&pYr&YEFyjP;Hf-4DJk6FR`JoI&y?z}{% zWNTUl7q&rk)Y+{>75k|UZSSQAtYRBto=}wU%o?Gw(!@~zv{vUM`!%ij=-7tGsOd6y zXxz?NcM@A_PjU2Di1WU`BVOYtezVU+ZGXz?D-RDILzhJJMq<=Dbc9|IJv=~_znY?A$&+8`Q^V{rmW=ppVaT z`}nMT^T+4?ppVbq=QB6<3*2$)HLBuuvmfX8g|uFsGr#ZkYHBDlP>QVjD?<-(cFp2H zlkf9iZ0Gwp4}HRaNme}9O@GPgwg9>LexcqqC)WX!e836r$@b=@%AL=<8+p!ud8nJ( zsqR6+#UnV65$E*?i#uD&`iF*d)+IKoe<-#`zQPyz{5v0Ph%U|Pimjjr7rhn}^*LQh zdiSK(Qwu`x4bx|a{x9uYa=JRU<#csEnbURX*_^J!&*gL-*>ZO1=$(1Z?^FMBA~7fn zo<;|r1oI@zzREcv>YBL!DhAwf|K$yHeAdG;|93;X&!heZ`>D9-`}7V{?}FHe#IfD- zalleGfHRBq653K?pL0lPPe05V#{u@a^@Ow6U*_!f*VudgCu)Xe!Sl<7j_>?U9`t}F zFYp(*;x%6k#epqe&0p+UeEkOx>_si(t3(dUzo9T>edK)vZ_dA!j=^4}-|Aw039rQ3} z-V=KQS--o$g>5}^GXML~x;K17-QUp9C625_k(CdCaiZVeUkP*P>j%K99J-~P_%3(> zZ_223Nn-z3TICH-Vq@NgciRi-BMVQ}yYa?hRs(D5{Wm4%gz^}}?&lfa@#5X#^{Y>Q zc<)kwUajt#Rh^9c-J>U~&F9x+Lsp+0dhes%-OuYca~W$J_rFG|1$_S%^y*FM$2=cy zv1Lk(~{_n?(|tnp62(#;~NB%o1fAcbKP7Aua$qe z<~!J4?AP@?gMXx!EQoyeZ>S|tIuyM0ynEKh?7{ZZyS)y--{s!60Y7!l9Wrj5-;u*5 zFH+L5ojVkwz@~MMWc?-L8S76=e-H)M58k;tL+fb8#I9HseSD@&ByOG9m7FoLD>ZXs zS9&%zS##)lRn0w+HS{^6M_(sBkq+I?J#KeSL=R_%j=nd^?&;yb#Mt1!WE{a^?71^m z{6%!}1?b!Yy{XH5zh(e=aVsk?zRjV-i`e-kdsJf4JdmMjIIGVr0k ztaU8-TmnAh!Dq|YL!EoR9y+x5>!HIha)!EuJ)$aWad&qP=etWH1M=VB5Pty~U{3oC zC-$PHvg@pYV=$=L1>#e1%@e;;g z^U&Uf>T3rxN-dq470XMgV~dSLt5p8VpE8Atn#Ccn7F-izGi$uAz~yNti7$}|3E zEqVGARl#h3lYrj4*a!O1>PjYpp;T)yhAV8 zq2~{+q)s7O%5Tf~mw>;(s<<-&yxK?Il4tEa!5*^LUVaxInsw4aa@4k7Q_qE7?+G^C zmVbQ1`~1GQ{Qk;$#{X01=Q;F#yYzmAYA=AR_Z+V|zmFaSX1))j`}yd1>_sc|QjuaF z?m-nk%(b0(JN9DOoEPvBbBop=B;<2aCqN z#%FQ9)A*|Eaet?^xBEH{JPCfACSFh;Q|q_b3UWop7pQ(AKQj2li4Dn`Ng;gJ6-$Au zlKCeA(}lpa3Yb_+)oua~@D4QsQzfs1Jmc1A4j`7wte-g>ZE;pShK?9H+GFRR#fM23 zxOB5?3I#X#T@eE|)xQlFOtOdQ%6LCA3!G&e$-h6wUK9HU(h2QV-9R2698E2?=3PYn zNs=*iE?mDccW?8X6l3Oj_k(zUn|=#TR*i;!JnP;`E_!YhpB#F5X(gVE_g7OJITCor z0FTXoolRiP1r3#>*7GCC14e6*1=eIPuRbOV@L`2>rd~0FkrTzACFoN%&yIJVMb5Mb zYIt2^^I7ZQ*fh)Jz?SPA`Y`o%2=7?Q>y^-5^??EM|7Kl1o*ww`z$eyQu`+akIYvWc z1D9mDmkcTX%)kXbC*@Ex##{-_ImPNyy@Q^u=_TKDMYkzE^1TK5iQW$E)51K9O^_Y{ zm))mD`Fy*k*DD`y!xx?P)A_p!*6uabS#t+mOZpOM?+>&*esaxyTX50vow)_5|M@K8g6AGx@E*$G?^V1MBqE9OVBJU=bWM=W@}Yju_3-_`dLapzT8gqW|sER6~mZ448sTDf=4T{*S4JIM!o|t z?AP>j;vr4GMI-@ofyI9Gq`tc9=hH-)X=g?y!gjgLHT`6IuEw%QwA;p7TM!&dZ~ zHO9`iExv|sdbY{VmosiF?_04Qt&GtM4sFPbhoA^8v2PS-JSO;-BKkLV|ume)R`sF3Iy#x_8Z?iJsH?2x1S3GPi1H zhO^&i+jl$X!ug|~oJ&=Xi5oU@kC|1M+hg~g&nJT8#%tf(@GSpca$?<0(hYJk|4OXk zl_$y07?14yqZ328>vPHEOaAI#yYcE;Y5~3b<7K(>6VwV>*nR$0lOK|g^|R-w{mz5D zzh3XT&toM2YOKKPHT2!sgWroHyRwn?eqwIqH@`c!!BWhL4blA*s&AOf-y0ZbKi}oR zE5T*kFgqr8^+I_3v8G1{{=>mTvabJJ_*Ki81wXmwT>dS!a%+9;4VE!qF8>;Vdl_)& zV6)4ZKbL8ozFkn3i068F!1wlsTHV=VLRf3B)j6jVyj?elw{zepusDPzSxYc_d(>o$hO

    c3#2H0#{wI1K z^Pg?}L&3SqR}RTqKSt@dBD)vE533&JM9t8w_1O8;L7MfLdb5zjN??nVGdbf(Y?0!w zkrcY0o7Q1A8dh~Zgd-{X#bkolMLPjN#d zf5p=+{DrTvZTvkL4#ipnq3EMlR~Y?>9u0&}a4yWdZcIrR$gOt2L%y+WXv5qfdB&Ra zoV??CcHVKzd3N5BXK&CMqdm$)^4CAmIcqeK=d32#?&$cOt|+lbbOL{g38I{@i~fLA5yaeM#%lb83HRdFF82DEOK2y+>^;UC|cqBEG=ZFbg z=ddQMW>3F{z2SM5sYf_;JLkn$_(MnTvbv7$@rT~0AKr;Xc8=hW4i4`ltG)4SbH0mK z0Ru8?bjCl#_}M6U#K0pC?D8{ze*=EzJ!I^UVLl6YUGCVQV}AR5OVioXm+bQ`xrf4` z8wXie6J71>uA-c`#dZjqfvU5Og%ll>7^6(1>u4L`R#mQ%_#i`qw z_fB~FpJB6iC)@e>a_-N5XOg))`w40<6`RMJv6@u>{0j}y9D}9 zP|Qh9c{erX-9=5&Dd37d(0bxq|84drx0}65WFd+yM6387-Pd|;7T+hI4KH44{lgE~ z`(BtV`u>h(R^uZpHTU@w8dmc9ae9C}PR&{h8M5omb0c5iIpR6S{c=MRnTjG)mhOvN zd2YjS&eO$f=qEx5`k}kul^eMh|4{0#F9z9l zNsnLe#8HF7&DT19!T5tcPCoH0ALqBS^NBI^InEj9ZRCPm!$YYL4x0MhGs=?>VoMjJ(~CNrP!`X#7@M)ldxe`*f2X+e>u7O+{pex z$2VM043X@n&kEz)KF-dk{my6h05bH^Z|WvdH^J}pdigM$)>ELA(S>ReQMnYxeKA@cYO4z3k<3e01tgY(t~$Ll4i_d<4&Ve)HFQ@qDVo z^RNxag}{+$BxZ!~DRg_;bZ7*xa|Zb8sk>BuC39|aIK1}5YsE)HTt4ry@%GXnb!UD^ zJ~90$_IGGbb3S!dr9SHzcRJ2Wu%6Mm#dpr8j}Y)_KRm(uB{_6?bL!5iA@v_{`Iw&! zhwfz!btC<|^M4x-?IS)HPo99!`MasZCN_Er*>B?gnBjU~&>7}E2jJhmcGG#hFYJ5? z`UEY1LvA^?k9T>w07PBYd^ZS{+f>}*Q<6-bM6dUgDd~t+G)dlu7PFCNh_g5Up2 zaT#`7_^H2%@-zN0xed-B#Mj&WHF;;{&o)3K`necg=Jk&kuul&^HX(1Dk+&*rru=yM zAiEcY6QK{Ql8a27Bsmzm)q zaq%f(@!yky<;SOk<+@)UU)et?nErGs7-YL$7{&vG5C5KvfB$)YxOo?{^KzWLa&cbE z!vpeK-cRIZ#ZxWLNv&CWJ3ICHFB(eB0c>0duWhc z125o-$z3pRJ2g)Q3r3ZD@pkKk^PznY-uaRDse@R?`gl1otUw3tyHb&#O zG3T1|sbvPvecXTWY2h6I7sA;hIL`%6U|2CM8_tJ&!-=kaRyYg(LO3@GPWZeW7*>!! zaN~CMVYtPC)2xr-Q%2q$UI!drPt53^^5s3ej(_Oro}+iN1AFIRn8j!J9BUwp&wX`VSMLDEGttvEz$iV{T+&q= z&iqIraLQ(I*I$lgKvcc!(ByZQ@1KVjtsr)H!{9|%(C;1jK^4~eF_;jum*wk z)5y5s?Mudg1iU}TzAC?+WMADY@5hM)jGV*Mn~<$ma1p=tSLf;GTh{Y!Jd0i5Dfsj8 z3qEQlzXY7SwHho5sw}Ow!TS4U8 zz#hYf#epG#fAHF}3FlZ3XW+yqXng4i{Rk$c`TeU7%mH9leAC;PDZa65M~!_mFh_t{ z@r@bRf!X$DBeP(3V;$F*x%x3t@ItpZejarDb~6Qxey)CFzzxitpXmW(d>a-kQVJ}?T{+ZQNMh?sato)D!y7(sYt8&OX?|$pjkiu^XHO-A zC#efKl?;CUbTSAX{}LIz;(tH}-vIVg$>9HSY_n|QJV$>NR~q>NcKT%Ql>X%N_tWZ6 z@H4`$y)Ih@3L>iak+0W#$)#kn6}W=*l=sSk)>QJj2Z=d1d*s00uj|o|c$X~;io3NY zcWw84;sDq01{~YzwMB)%pg8*eX*IZjk@8^*a+c7+Kx{{6@bW-EPAkwXu$I<5aIcDNg8#Q-hIdz;1jr z{CpW(vOQD$seq6 zbX0kREx@O|!72wvqo2U4{yGl;qv$Ny^?a24&PGS?Rzagp_|?_GTj$sg*N61B8~^bq zVi}%K-3hIf%VRvP9fHK_%YbQhFPl-9;jb0B4H(qp=i8jIGP-5*LiwG6+b^4SH)njjvC4AfPCPcT3TJ%WSazvsikut23|-x| zcfq~u4vZQ1Ece=u`f1P?tZ$nBz=3wo`M5St`sCFm#W1!me{kA*SX*-z+zKOGfT zS7n~*vT?EwWz=|N4XfZ177k?*VEVX7RcR zn=s8eANpBfJ@*V@6`X=sw%>*ILF(pD2kSTo)@{H#hS#zk2F8Ljp=Xc$9Q~uSzW4-s z_6_4o!MNyD^t9!vf8_hB4Ke!}1@N;_HFOWv%)PWhHFTq1KVkH1E3%+7Ub3}M7+Y(f z@rvGMb)}I9vlnI7k-ms43#z5r1^j7vF1c?N4ex@6<9UxAjPso8|4wzrs}7&1GhL#) z$*D4qa;nk`*Cwj|QhrAAqaG6aE1P%?I9+SBJGu@~(;P^^%=O>%At`dda49LF58p+TANI8HBA7ex;6#xVelojrHaM zTk1~YMPT|gv7QZ6Fw#wZfa1BW=n{6%&_}%fgj}o4$7S#HK?N1~(n4IJ@cHDd#jz{~TwIU$nZ4+2^=5 z$GSrM6tO#(HGB6ey!#Y?80PF#Ft_AMb9?9Q05-v*b?mFo-o$G5CW?tQ8=bw0b?i+v z`udr@iTgjAUcZ{Xi8On)io?EzUrBEPCiV(-=2@TZhCUiE&AM2&A^;D5f#3Gp-j}hx zX@1{_?R{t^d6VRSV=I6)jn4E1uk3D?opA7bZNW&d&E4;=Rb_Ks8}VIu7JC+YJcoY0 zfZw=lS@VrKw(JUSe5}cN{Q#X4{C(x7CrZZ*{2Bc+aQ_Q%w*s^48?Ql@ym@KKl4444 zzH5=I>*(rNf$bl7UjTpEE4soLs%u_G->TmGQC=S3W3SEmj}tk zXrHMSULM5%YoF=WlauRzezJ0XO8eRHP4TJl{SGi*I5S6!1ACK4<_Xt<;93H%1KgaK!Sy_FO#qW%NlgG};Ot9Z1k>Rq#4GbuCuNZ@ z%!wRz;{Zo@))NPezvYYNCD3Gm?VI+08(IA}c5fgwxeWO@LY$ufmdBur;+IPtnK7^v z4}3E0J$&kX|9=wpm4bcIsbJS$x(oYv9oQx7g8Nykf4vuO`OlBjJWsKJq4~c9w`koL zJ>P{_N2$r6vaV}bPJjA8^n+)4kvjZkq9)wq|KWq<|M&Oh|8*~e^x61-;GN6+8gxVT zsq6ludsZ=UuY=zGk(Cl;aay;gZ% zabz1cChGmMU$_LZKSdVjnecaIRx^D*pCFD#e`K3wmlb~sKGn3h7{9{nCGcz&_Eq}~DQNSr@J>3f*J?ynxysrX36MI(K_4Vqbf}ii~_ip#B zHRx6h-+3>5S!?)0T?jFk`bLV*J-q3$4Qqf`Fc|ub6+e3XXY>+atzh5D_{~v^lta1K zfzi#8tp&b=&{%%+d|>-eUZ?phnj4*=Ud!mrAY_iZ#0lSY>$d9n99?Eib$iUCJo zbBs&`BD0~j(O18%uWqb+*c0parOWpH4J#z7=U_no1Uotrf$t${AfSwjO z@okPHtL|Dz`L`G}x8cf?HwIg?4x{Uem%kl6b-cV8T|Z*@)_1)8RcK~x?T6_5dsU%B$n;@ob_5z`#l^Qn zN9p}t;jTX7;_cqJSp6dU!(+Q6xQ1 zm=-YZGv|lj2H(pir+vlPedD`y$79Z!ud_Y@U#$VO7VyHdp1w`qSX#It*V}I=M!MZu z3n)L^8{b9`zJm8bba4Q9m*&`O&jxg{lzSKCV+Z{CYxO06u3Ucve|QvqRISiA9ew;P zc>ebIXW{F|)(mIF*PA?e3ht4>ZTn%rslPv5VRb!oRk&$8xtr&{UfG0CJ|=tjE9Crr zWV6wCc4r6gkL)UFdhhMRrg!%iHJNqkOnl&MWN{8Y_{DH@dKdo4UlnQ_R2Aw(W|FM8 z{+fFS4&jH_?Z*C|Mt)=y4zdP)65BEg{Z!p|H@%M6(Pv@+c6DH()i4NqHy9te6rL#V z);ZdDjqVJ_PY%Qf3^H-ID@#jz(KwBr$>|UPz@x9Wa!I45kYugv;yiuPv%89+pzHtg0MeP0C zzRr{GvClsge4q0V)QbP;gNmlc9IHV!j-55wsa@E~J=nv&*sB(7*PGa}ExzXTHeYk= zmO!ZOxj^VO`j)q$qxa@nm$&Z;gxtDi$#|TcvwW`BFi#a)59jDi&n{xBJ(EM7HN-ql zO`*5OMKOzF?dAB>6CO!Mg zg^}m~H@z~qOb$I!VqI21j?UCcJNZ&CECmiMH)LS3>up?l`0$twi*PaZHo(zGy-fxV zN#oW=3IE+1l|;5Y<6T%{%|YwF?*$VqI=L%@Wq|iwZNx!t75^9rIm(fl1uGtjbmL^ zxL{oQsrY@Vm*0#hxJOXKCR*dGOrdkQMu*nz&RCy@@9I0CI<^Vo`yT3Ba_BqS zLVSF2Wm7SE<_i2$E493bUg+P{@oY&`{y^f1HOM}`FTMo2EXCLRmo=w?%bL?=lS0?! z;=3GPv~8(uo}Y&t5x=c<_~^|=$NZzQBRzHVU-s}(KEg|bPm;IlKIH9n>dSl8cb!t+ z{`mLczZcyB_jYtkF<=0GcVMHYYM*hY?eoPe)h-oIK?jLd3iFWbT5<(G@)QH>nvd{& z3HUxs{#|Ei4$ZK-ju5l-&e7WWmmb_dJkOS4osVf_PR-X*Ys#7XL1>a`mK zpqm?8)uW^+9s!?jElEzZ*XmXX$ZqWD|6)^wl*_%nLVH6@;7Z zeeq!AO2s(H$rIS^XMz9dvLV1<(iuAq{L4=PfArlmgWsLU#bZA?&4=_8gCAC!w*h8+?gl(&@)Qe1Y(@L^yUAD#h^-t<32{ORR^i-S9t z;!@G^PR`_yzhzv8CyL+W*gf&a&A};8Yv>(Ilj8k)C(szP5V++Q`@M4O`YS< zYMMG6`Fj-kuSdThM8DT7mPfxYLBID*3bo>IX0eyohHUzfc|Y>M;!Ad&itOiB@KvA5 z&ERX-s@Q!d)#E)jk65lsx)qGLc6T8-C%`dXMNWa3AU2PA`E4t|BjUiPordT5|Z-G|Z zfbB`*vuD9)#nr0gF*1IX_~LQKd;BGhm)E&$jyXL>PoE2| zV^it-zlC#BHC7qtGjILVTz~1Wm50pLdCQHt4HsxUojs(t)XEcAGz>H2)9+dDe=)8> zz23LbLxtZzv@(BW!@1ty4=ZmN%=!;2fVPjoB${ME$4FDoxWY@3{oY&x`8&4(+a`;H=` z#IDKNl2N;+BL)v7r-zW!)@u00SX#R&XLmooRB|d>Yd=5EZ=H4acK1$>bhW*oZ|?u=nI8eG#!-l}>B5#G(PSqH`!fWM!rf}w3 z`a|!ju5GNx*Kj|w@OATTs@Zv!&$YfOz!s)?f3s8P8IW%(wr!#-_lhHJ-$Xo*oVc`K z06v<>_$Nnx^ONh?I~=(vjcwRhTz6n!z7^{2i&le^*z!7&FID#=06W4fV@^UQHztU@ktM31iyb5{wzdKYKfM_~KS{Umd+4dk5ETUUE_ z+FOynBOeByUBF}f7<5XpCNO;-S*t6Lp91zYzATBY*kgJ;=~-+sI=l?u6 zL+;*RTaC`W*|MC$gU_x756Q6`C->xy?YikUW6N~zC9^g&us#f|ZOr55vRytrNen^n ze-lGEIqZy_Xq|W!a*0eUALbb2REfqzEk!S`4>egk`CbQqk? zUi&=g!uNbGIDop0x=%+w74u)pJz`t%ubo|6@6UA*|EKTg~K6n_ClBsO>!~#C;H!+7#86Ue(HSf{#e_)0$od|o+gXHVbumG*sdec2oBXZpY1w@rE9(?7R~-bCK}@LEgBQxTWS z?`Xd{f&EC?5Z(Ls@`ex-^kXP*sd*v_(`kHazmC5lj?zPBXubfN9hbYI_A70AVXdn0y zXs2~X#X@VLkNQTRk9a5#z7s3Rh9BX)hYPEC|7l=*=g`Mt>lpO?-skL(7PmhmqPE-WjR{Un{&p7r|i?8 z+6I|Dw*4zDUqeWAm2ISdm+{B=xv5juV4p8s!5KC^Bz z^A7E6Ue^80o5>ONjstq+KM;A2c~gpA^R1nxZxQn7>SaFsEER9Sr7xI_d>em}E#Lp$ zY16``gVv+oxJ2?K`z*M;{?yJ{1tJdslc|eAz7#Wi&)Cc+-V;o%z|@8h^O19lW5c4v zCMNHXTeRl#+`EC?;;)VD-oqUu(I9@i2%RZm{6XL~1iBORq>)?QyD`fnyAokne%t9S z^yiZEGx8g+!Czok)H}`Qm3pKt-I3;B1$*fI=uI7*UsK-g#Oc~wmpwKx4MNt5jg`O1 zy@FV!rZSX)1DNF76%$6WPwK7KO|Q~lK-2Egc8}BU3#^3}Hc#)v{8bOWwo8fG>523j zaiM;1@mIC8-9NMz-l}KswH7M2TnQYyUr>8|`fd~ZkorvflBy5vevIEczx$=$f5*3Q zSy#_*^z1%9AHg1j`j8#ww_3YB&0noujqUN0#w$=N2xYzrP-Knu{%pfnH zYRGvppLn7FTz)ixUlu=POB4qY&nD=ZuKP+%E(Vw$?C!Sv`XaBAspKwtiNW*ll2`G< zm4Ty#F;>{Hy!+K&GP5EaQf-wDjSbJSJ$C)zHJs)8bII8m8A;5eFWGFXc`|Y5LHf^L z45){GntmbBI^;kdxfZiyzyt zi5lbK*7*&lzI`TgRYWheotHJl$d|=y)PKwF?RK)^#0K>bj{`?vIgK3TGy%R*{8}IR z48xy#a8CfgY;`7|fz8#u%PF2sLWeYT=$+5Ft``kd7q}c6tU@MSJ}Woo(m{Cw)vspO zBhX_o^kDznwl};t^$O=($F4n#*aE&^Z~f^CA3e&4@@&OPpRo-wa7O`nU+TPHx?>RU z1J(%dSd*NcmeFL z++EyVL7_dLOp|etSv(ahNA;<@?SZu`K|%pSWQ)k`pzp(HOJsHoMXo+=D3tO zq+ecryX06MRu9iw`-YUNw^&FnaqV=$N`a+pc=$XS3)4&R0T*_+8l9JyoIP-l`Dy zNHnXa)x>5zAG?z|k*#2!_12#Gqsra7$-~I^P1Io~=~pPa1b|I>g8Y5p4DJ4dy)(sS zs(lJTclWhoIQMmuJ!{>gs5^g)_>sve}n%5RzGE2wwR z6ddsvw&Z{GzKS?E{ab${zeitY_>tikv=V((bK8nd zZbJry-$k64D8jdCzh8Hj)?j}`hx4GZY8u*P^V!!Djdfl@=O$dcQzE%R9@31r3%_mT zqW3)5a@8eh|J=RT)YNb}u&tZ6?7+GOV-^)6H${%$Tfkn(0_>OS0u)259!GcZDkt4( z@{Prje+I{D_+;+w1+D`2nO?ODT4Z|-AK5Qey;B;xR$0Lo}EL zl*jpCF|?vKOTMp^IP`w-e~Dg?8~IzpSOMZu#Vq;AuxOb^_FLgc8#wDsi0DDR+2B&* z%jBUPxntUJ=D6cq1j7@H_K=<$Roa(D@0S>JXF6X%|#2dNTmPS5rJI|UG_T|=ZVjq_K z=l4%Me=N4b7kQZe{`fWSC8>k9wj6$(cHtev8SnJJDUE1fS8!pw!B*6<-vKN;Z_&>Y)QN#kdQwpOUvIa@v9ImAtCXA7eD@ zUe@~wYQIwGN|CRiJVg6I9c;>7f9dw*EA zKwp<5&%82Cy&}JfbatiUSyPt%vV<+qH^Z9)B73isGlLj|))&kvA9ipA1 zHhF&Ihos*hwBpmj&E01*^&P;fa{;nPt>|+Hb~4O)o?ZB(&tf0fiYChQgPUyP~bshMfIdTjmcdH}OQ3UEgc(dE`VY zjNR55)cnX-TpJEeLcEq7j543;{-m79W#+YA!~Z4oeK1nW-!#8FDBfTzUSlrlXgjYv z<}WC(CTBYrU8o*IzK%u;&$y^koDS_Yr(GqJf5i?K_4 z=hj$TCfC^U%r~b&(;)Iy1g}caRo0iuHQ~@N+4Hmb&t31nX6{-!FSE83-A&9wETDK^ zI;t}nyYNB6;R$e%tmzInb8o$aLxqDw9ysKHLmoH;z+ti#Xpt|Pj%+FqE|@jPR$^zZ zH|_liyB>lVsyQ`EvM8En@=it;zbQVCLLcCtsfj>0Vt3XxPo+LYXOOjy%t8O8XIi7U zxj5~O+qtJ;)Io}M9u`=PAeZCn#{?JOx*YJ7aT8gfNuX6G_KWFxagmW2u85?%aY4x0M z2Iu{5{ho64?)l~&;H>k_u1w#79+bLrLoBS^>l@cPvO?_Z-nZh)$6EZhcRwQ;%n2#3 zclR`IRxTmmx@;bI5w-HV8{drWHoj>R^wJ)!n=`5XyAL+7_jrZ&Gl$XVLU};W5QX-# z)-uoHbG5#cZ%`im;KM$n9|s5H%ZZt>ht1skWO7uc?6=lq4@TxHzZQsezho`k!n57U zo-xj0j8g82nugqJzuCv%k@@6VoZlYw{8llnd{Ke(H^^U;r{pu)Z^3N8=WZwXkPJ=? zX;0LgnbY@9Ug)pDF-LXa;+66Up5KX9isNPD8+j)2rWF!>^j?0n4Y`7}Jcw_(uL1NBU;Y$vOBG;MZTnuPgspFWbc&?eObL#_Ya~ zILG-+>vQE1-S?tvH+w4Xd&Ok!!~@;jt+&iG&KP~pdb@&}0?C5LSG>{Ay4(Ai@&et| z7`WpJC&5(fJR^SU*-@->+L5mc>JHrT#82(l_RMRaRkCpj?^tD7&%>w7+KESP+ffi{ zhqihz`rHQ}5sJ$%`h589TUg`GBbQO=L72?Z55haMu(Hj&}W6@GBTe#xePsXEwM;7z07saL~zSa>puJV;qF<&&uf$H z++9wj9$TP1tA4)@-H}`6ohL-2(B zH?}W{9GbNka=*fkxAtf9a@a-X<%Iuo#aq0;gF28bS_Cb8qGg|f^Z3jAuj$)g{tTb% z^_OGF`*_c*rY_-r`x!bTPTqcs)fE_qPrCsBJvxki4}f>jIb)vBS#{NB6tOQ_9NG81 z_cx@b;0O8bHlBe77nS+~otrt6?Jvl0Nfi5AZp`JLJqvyJ+jn!^z#8I}{6I?$_j24w zy$t8~x@!21>K?ntW0SRRBJU6%PfSSNU)bCw>}z6r+#+5Bu zHlXg2Byg;v-u))_#uAr6AJ*VYt(?wE_;=2(V;eT2@A{4Gqx_%fYu+=K##qCC^}WR3 ztB`@!VeHWi;#=896KmObBVJZ=((L;rE&*=FQoN^qio{sAy~~b!&U5*QFN+Te^F8(IcXA);UEvV<`mFrA z>U&<}+@aUMxqi*;)vsXeHQ47tzQyUWIic1|azZbo`_=Q=Ysb#S!MzGPPK360eVu*A zws(wh&R}yh~223^igShYw!%NX} zWIYc&yZ^+TJb%NXbq8L)`03*}JoWSA@##nG=l^KnX&!O^{Rc*HhpJ$z)Mw|07r(sj z0Ry9jtUnJ=Dwre2`c`8tznHQ3{fOzmJia+)!?FoDbLcx?^~L)StQhz7an6#~%9rOb z)|OwaJD~TnMz=&Ly9i0GRgM@GGNsth?Cg&fYb7N?(N-|<;n)~l!X zvRP$y{0`qgGtBRZi=GXKCOa~(c<$JqfVn?w%x0a3%g;Iw7c2AWUdo-L?+=Gcebyaq zoEMT$QGPEz%GaguqoqFbH@;94I#5U)eGxbZ$SJg4=?k^922564%^k!+$_pr_*-c+| zeXiKm{Y-v;II^yN%QmwPD!^l<*_kzsN_t)niyXWov zP2A@~@521G;Kx`oZ0VAIuRSvV*@8#!4ca{fRhv>s9>vWqHj;mP8NTa`kex?V&MkB9 z#`v+nO0vf?2YpsAs~N26%PQ@<{%W23>B%dKF459TV8xD(s_gnI>y~Gz(^Q_V7(bS8 zuUqze`;_EEE3H%2W23|Pj((A!Q72*7t`1d(YDKyMSAJ zB9V`-tDjCUFP-%|G>vr(JfSviu=h-x=&1eUWsJ4tWVao=I&k*JtKGrLzyuCIcX~2> z7P=)9pG-H=O#NNFbUVTxiI;9#_qcV?>g}R9Q?%?&x9@o9)^^F{(0nWZiZ%!L`QUEy zC)kt)ORQNQnQ1UGv+mFN4=JZ_r2-bc4Z~{W6O(VJwOUV)j3) z^FAByE1fg{Xa9w`ALUMqPlNlWEZkMs$9hp~QOPv)?(g7MNuMLt|F=OW@$@OHu-?m4 zUQOWSl3Z9*X8x{A}NUogcZDIdx{3wdoaY z_>d5Nv85Aw-OgOzJEV%R?H{{CY6|`j{R;40HS4t)`QMJ`zR`5}#o0|A;|Dh#zVhs* zj=j+FIsE80^!`bF(w>Qnl^=iNf6;S;b%T0wX-?_?1HOLsCE;+_0PH|FXHm6=(_My9 z`qIVVSDe0M3HH=n{O5j*L!aaB!W;dl9 zzrnwOP00;sH6_70*$8bm@OM3V^*h0t9P+*^usN1>EX^9bm1p;CT=U2XaxUc9xL^F< z`&5@K8B%Os;gRvbfoHPE7B)*V-hqsZUQb)a^;tdIB;$7>qmpyhW!Zh&dSv_p$vEqW zj=OBysUMqqu^onXqT69;b`;u0eJHHz>!uC}{wwD$nNJ!1+xb|R?BSLGxzqsX`MMrt66H);Y0WQBSOw@i*F6RjikEVm-URUU8%f zI@xw2FVcZMP%ph(d&PUTCf>8}m3xwS?^ZY7tFqW%Eseacae4L<(SpBACC?kdNr8lkFuF_-`W+;qiOE%oP%-*sQkdDJs zv)0^`Z~CoBPPE6W9tLaKf8g~UqXw>gq_x^=_W7{$dD!#dIgziMMk<8 zaepIgfo`qYi7CWy$wm-ak2!eh?29Ywtwz?fZF~rv%$}wrS7VTMZ_iiZ=rqwGO)2DwYw1mXedm-JSB7TCQu z6>kZ4H;$HFQ%$RF!-^v%z^uI}#VgCmt9C54x(-#amtSGWAEqzV!0aBg%b~sThZAIL zygk3ZpNYY~F4|+)Wam;9J@(CAS9L74*8+zsDno}SRECa#M^-N|;Zkp}%b)w|0|(ak zd;B>4v3~0InpJhlFTih zf15sgt_|`dYl%_%S>=M0}^-BiiGAh}x5G`d?gweEej=cgicSu=lAe zF0%Kji`nBXVUM@?739HJ-0~DLke!1lHhBk)*>1)p#^SFXJC;Od!hgGVDKGLh^ICb` zoXB;&*1m++uothe`^H|^O9v++2dUYvtoE&gZyxl>!EBElxVi}av?e?>tq)yv_;2gt zMOnJ&%CmIw*WhE$#12Q1Ld}EBW4_XX=T&J|8$=3(Tik+^d%@0Gt9%4d=f z<-88hBR*`wkG+YUy$!FQBtCkU_^768aqF9t@xMip$scrY$S3w8r?*f!J!5wqT#YTSe~b@I3iZYD@6nKko`&q5ZFRMNp@{-lEDb#+O zy@){Mg)#6E`;lPXnM8NB22m|tYc=QW#@l=GCXa`$(b?y*%dEGSF7_>KV|>LV`2$x! zvJT()O#iwAX=wF($;y>BOw?dr;r|@|pFN)WoDn21+Wac@9iyy3eWyRrQbcV|tyRRH zp51FjaCRc^c1=z|>#hB&4LAoG7fhYVx2eSe4%M{sK!dTm|ALIpmrRxI`W?B>ko#lV=t4d7|z`>L2}ovC&o3Tq376prmnB; z7ydylacJlK+VXMtOj>_G@9*dRq4~F#kKy$gUbm{gMe7G_NcwipW!L&bhvpG;bG}7A zMO=L1e?Vuw^uC>#nsY0HQ!sYcR`OhBXw13RTcT~h`D4n*_^f)-_=|Z~Xk>vE8r#nb zjT>l%MxAYiz5OyI|_?tNE^m90Kb|tNf~l zc%rBFJ_dZ}uRgIM4qd9Cr}i8h(c>EF;0(^QGDi$ro4eI{FaPG^qgdKLlbaWL65LX< z{n$8j?q(XahUOYK32X_*P<`4~E647I%x@J>-_{4uL(;4A`$5@;nGGX#1KKK51Yod$p5TJ51-C><{hr=f(KH$F2Mcnm@0+lDV)grAuO(CZ z-RF2l_km0A6%W}pP|BBREz+Ye=ZH_(rZlo-YJAa+WD&icuv_iGYS(Mf&ki0&??O(N zz$5)0-qusw+eyzA!ST3N)S?`x=I-D*!K}aS50k$@J|veT7cE#cmKeDcxDN4MBRSiB zBdl5SRrBfP+W2{E;S=PWrqjQ)n)^-qf!Ep}U_TbsE>exn3VgO|Y^L&eGI5=3pVrlG zeV2`!iQ|k69{ewCfr}5a-GMB2f~SjTzt z_v&fp(D>%AoUA!kA7K1N$H{wNf6bZU@$_lt(D;4gk+$*pE%P)EXHQr(I|F=v@M-6o zcE7>rXPO5-?w$xA>wIRutKoI2_7O5XQY@QU3mYDN&oiHRBYWra$188t_r0Y&XgfWs zh(lTwx10$+|JyUZYI40Y&?kRd)){;>mwNEnwW_M`v}1ym!t+bWD}Jr<;xnh~S55;* zpFC{gPBi3XKJ%Rko)>)T@om0+P54lAd8YDFc$#_oq~|mn4+6iz()Zn8Iy0Gn_dh?q z?v9!K#Bu5FP|fx4@QApmk-e??)T}kGWp458UI$krn*kF~WZMsulQXjUW-k~dpTe;( z`BW|L{lpW8h$m#z^;$MtXCM2vAwBav-^V=m^QWHcTK1bdm@7)2UO4*LKa<{(Z^i!G zw)2|#j_o{T>*M4z!1)J#z;Y%yYoFA`S@{z8^{1u99evFINwm1np~a6xiyt|B=FG5> z=`+CjZ~B$;X1@R;@W$VE3V zI{2=&uu|_oul?shXXjUmm5Co7(6h^Y3#Z~+8y7mVa0b4hq!+xOXgllcjm^5!neTey zeb*P9iR``iPPWefztXqg^)b&U@*&85@aS7Exb@3hd4T)PYB$NJa)zc){r0R${=L_H zpGe0iA2@K06Nj{0h4t44)*Rp**WwiWq8ES4xqp0`x%>1xz2_cj&;2TMAEv(c)8M`I zGtB+k6SfT(-mmYw*WkU4xf{EXU+8^}(dPnlb|bylT5Q{H_uiNun>x4G-08jH#gZrb zdi80)FG7dX^Dio|XRbEZDXpwg`dO_dXz3Zcrg-?9JwyoFUSDMCKv&IpZ z_N!aTZ;CU&nU8+5{w9}G9C>m~QGLIjqd?^h1yP z6}*M7-rX!*+Yx4GYI`_u1_Yj|=&ZTT<9O?~^B1>Y`z^ZZF~KfB=e@>h$)KiIn9 z=JJQGn*R27a%c?~Pks9*3l^5I|NNx4pIdNe`TeYupIUHhxz+&OnKY|&jW2X$g)elJ zvrTEvR=#_eFLdlqU+6v7&WBh#XRQZ9&Mi4s`2W!@8NZ^N|&mj9JNe zm5f)(c&x8kXKH=WJJ!AKOV(Qt;|EX7zqtHqYNeiMjr}}p>?c`cKf@aPS=QKFS!3_~ zoE3Wh^Hzw3bm%7+TA}C0SfQsbwnBSO($}H8n6)i{R7pDdg6WW`a^USJw%5##_3?Z)@ttC0Z;WDj8PM5*9(wuxs^35eG2l2 zDNjl764u{Zrz;1dHJGX~5$n{^}OD2HIq zk20rn{x_WhW*1h$t=PE@cxAf;^S6Nc8f@R|$Zauldp~k}--27p-#~8HEx4`xm&ok{ z$gkvfHF8_(E9g|twF9|4j9eaZ0CKk)xqAru6`;Sbv6dc#j#r@LP0+Rg z{cJBH|M8K3;WfmJ|1a^p;{OLczX6^L$Qiu$l}T?`R9eS!IBRt+>t~m5YdI6z!za5& zu^m38;Zv5KKt5eL%kK?0JZX3Mb1HiiI>L$ zt8ye>efYei3vKY?w7M|iFO3@eK6PQUYGCi`$#ZyR(D)B@K)Nd( z&{@2Uj$osd@AyCDvIA4uf1hr3E#cglyDuG_;WmpX(9iob<06&!%5`K z`UU!NKYmwzk@3Iyy;~Qp%k#Y@zxcp1_7|uV`bES2kGw(d^XY;88lFbq@8>(?H+{vm z8#&Wq$5(~stnZn?{+&+=yT;erOFU=>etTaiC-ORUmj4jl_Ih5wVqS~RIg#DGw$D}O znf)rQ<(87iDggIB&sARL>++ZTOpdScvdXSoIDb=t-@WiB_dR0or-pa*)1HRmqd(Hb z_@#a2ADul8cqZ*BMQSxX$^?cWo_m&NgkvGc8+ zaq?_Y?EO6QqpfqlL~rO|r;mCC%^y7f>d-vhxe(54$R$siN4_#ZuF~#z*mLi|f90Iq z5Xat!sh_XpEW$+2hCFmLcLyT#H}cFXa@aTU+|7)kvp=foid{nP5?>Tmeit4nKkeEI z?O~q$EqlNCBD;4CxkU1Zu}i>}XH?gubNqX(+)V!*vln6ZQG$_wN8U}ZZRTHrZmGw| z3P-=(`mQK?S%;2Aupi5%W4vE;^?Mt(^8RLM@#@@>&?3-DzJ3?lDx=VtK!#DV!+sV=7J74@!gI5CXSApygP8{OiC?%nM7BYF7ff|lbKV0 z6SSENZFXtD0@{c!I=|x5Lq7MX4n531JkP0yQ9TN@zu<=sW*-TE|NT#aJ9~T?+^2&3 zybSIa8r)Sc0ecQGn9r8xs2tWD?0yE@IkqdIIu|u)06Dp-kc}dsro7H zx&HlEoPJ(TznQFk3C?E79-O?gmp$MtMz?cz%-!GAc_YOq-hPFWS@o`xZYwqo!pnSk z*^TTg4{P?Z_>FyDv*#S0OB0==8wg!=UQ;wz&sswpWHgTdY%PU8L*ZMQ-HZ3v*f!IP z7hN{G$#Wmm%`#gzRYPEOllL2;i@nFwM_)Yf|F>TFzk*E{-tK?){;t!{%$%VclG%@u zf0rFfu+~vMN*(8*E$e>~UzbL<{sx{SGf8~7y-#cNMEe!OoijU~Ph&4{?$x_mXDaCt z-4#WSl9CVhc`HVMyT*bpDd;2HX3kY3M={1vvnSh%JhgG|@*sUGxPN_?sY}3SZkEkN z2c(0JZauUT7Ym2$oxF}%k{M`KdS1$U_>x!tD@4RR4bl$rTebj#G_xUS-U~H0lTZxy0 zka@)_m)N%HS6_B)lg>nzK$}76z}PU~hnu%LG>(bcj{0fVUk7vZOx@3`C!PD|u{YA)3(-NrCfg=Il>=S@aCGaOQrIL<{V00i zYxu*jv1QmBQ#*={%G8eHuX5}dV!s=s2eM-HK;$lJPD}-|4gVteh5{cj+V+;%2smTd(afEk9$4L;4Eews zh1NM{J&_-o4y?LA*9)I`C||O`;n$;m=)+p#d2fHpC~}yG+y-*l%g&eFJGH#XhU}xx zem_0${SEN1nLd`y-S8$l-t<>$j)RAKYHa-n`Y||Xg(Xv)T90wRg+1nO&L!CA#{*eC zI1@albF6cT$yOADKeEKx;%3ES1}CRiXGSiE*s}On8Cm4_oX>r|m;5at=k3K0n7iWm zN7?Yn+)eXpbd-sW!pNQU!v{S?1H}sZjo_9I2tW(Y<~9>M5jU|ug$}jQ!QjjHvIFqX zoVlKe9mwU(b+S0OWi{Wel&-=0Lp_e|;{awon;_J8z20Nfw`Km+5Hstbr9S)@r@cmY=fPv#3w;x?;JMIf{|hm{|Y{Ve`#P4535hZ z!!&dDb>6+Hcl?Rp6ra>5TYPozp?|9FgAH{~pB&k@;HlQ4_%+v0Nfy7{{UNpnnjy<^ zWLfgQjB|miz0>Eb2ij{ez4kFC{P_6#w%3>!_8Rjo?nup|A$HUBb##26XmhSh8;{T1 z<=7g<7#aCC_Vn{TvFQKD+naz%SzY=6Z}nE)4G1n7H5$8{9dW^+Kt~g*X|O@!m>EfQ zV&-8}k)UIYlL`D|0?4MKhK^21bP_h%$|Ve9V#my|31}Diy&|H@aHMbPs@?fjPq#>YJfiwqqg%avJOAx>qjKaL|7{n)_3IsC=$~1y z)+t{mVeFmsOF{fL*1V0iif?Zux7we-r?dC5M(bw%jllHRT=zfZuAA{SPq)?$t$&cS z=B)LiNB-P9vtF}K$uRgfKAh31I%8cJzwUrtx9%{hW!?Q)_ZZgQ#JWZIDV!%Sz^9l0 zB>zS|X1b!c=pWDr=p%41ze98*cAs?P?5VSh*{6DpoWa5?Vy~_EQ|~)U`Mf{BsR)YN zscqypH_k35&mI0v8?@J4?TjbiUiP4~CXb$HUE=@ib8sS~WtM`X| z>Jrw!7{5<;q^sDp1->!9x1Mpf$K_3oFDL)w%fG;10(V)lDSAP5wz)lCE=KPqp}pcW z6Pxm!i%s{X^G5jC%2B8vrio2?-w}Ivxq3axw~XS`sh+PGx@CMJ#Ui>_o|+))@>>~y zJ3iVD=TG{xJKLN;xx@HqES~iK`F6cTTr^Ug8h&e@QYG|i3!@yFU9+Cw0K9**}$kTn1jt!S7YHl?I)d`rR;4M$G^7s(DJFA#Wr=sb@2W~v$wg)?rmn*5to0%?QMd$8w2ho z1BX|FOMfq!ZQa+A}@U!=|R#;Nbh1Xgi*@&s)v^}k$osvmqmS<6eFHVJ zCJ)QHbMmlhc~afzB8N*OPrM%hE~Q_DE8$f56n=!S>%d1NeWNpbpT+T2H=&2v`&5mc zXtj>D5;rVe&05#9R>gbM;8*qbHNFP4Ab(}nCZAy{>oa|DMI-zI<@A(WO|hnYJ=zDH z%_;~#Tcc_M0JqqvI{6m8)^?53Y zKWhHgd4huY_xM}7Gs{Lh-F#?7w%(9#elL_O4D06?Yh}MO`48#lpmNH2+b^Jh3Fncf zzFvEzlJ_f-d-MMHwMT-=spri{e-!r|SA7%bXp1Z9)j>XU0Ovrq#)3PvAKij2k>3)2 zM(0n=Z^j3Aw2ZXmyo|;^yt>A;ry6N8h_eU+jVKqWsv6u2;dq z{mAdzocTbPv$uUjdyVQDRYV@TS@)M_V&zS`SMx^B=xgsywaEoWwxjX+q8rb8She2y z=#T{SJaUTlClx!@0@qaF8Vg)8;93FSjRCHt>=gVQhU8_|oAe7rlL$-2DfF@ya|fel8D; zpL8%z(0Al=fXSTeH8631XO}Q>KHk%CPA*KXi?oM;AHx}g=v|xFb9ZM~Flm1{7jL~B zO#S&z{A6G`qia~!(977v@`YSjN*3-<6+b4tJe!86PuK9MuVXGe2R>uz*a)AJOUU2{ zUg{D*As)XZ2d4h;QW1MBVVwA!m3V0&HA`b0Fa4ak`|>`rZOVE0rbfPsgPVUipw|aK z_Oe*(_59~@l*h=CwF9prYuI3O z#+>JsBOPGmt?#IQz|!CGvX}o#aP$Z0L_W#HLi2&+x4f6U|FD;f9~q|rIBI~S5IBl} zV=i(fJ!JiQ*IzC~r#-;YjJ(Q6l@1adlKVxs^fh{@(81wxQ3M?FnXDcvicba(VxJ@1 zZwelMhRbK9zd{lk|EY9W+Sy?xdzhJU`g0KY>+9h5zLD@JxcfRDy9BrgBKy<` z7~VE>Bm3dGWfKHnPo9$=H!y^Bz-$MDev<_Ux&S!vQ%jb%p$lF>7jy-abb*JdCopNO zfqa(62Rh(*Foku&wOzr4PH00X0N1l=xX=k*!6jSc;c8`HUvRA>OnK z-$gDkGTT7TZCNny-1>h1WAkmvAb3XcdEy+t$A3(oDZ6fa(d*e{zj+P#0Q|>4pl23x zZ^sDEt3S<-Q9WHfdqZQGd%GFuu@9r!2>eeB8X8ANI>s|z=~RtZ+FpY`I&N*nH&`F^YaChA@!g)m z!^wv-H5U3TF_9eLH^4i%Kdpl^=K75HqD3qHWd<<+1m+x)IFC8Y+7rYHU$eHsR3!@zu|#v9R1*d)qk)&P#A#+n70Yo zlEC9}rZLn*M$ae7D<<{I?+hRKao~exb{xwGZk)^*+-CVbG&Aq^wd9Uowszc zPEX73uJa3d)|nZ@t~1IyiGxQbO8MU-QeBs`PRVd;N~C@vdT|Bxj3e{!7nat)hwuMr z5cE0n_GdO8nI6144jr$aa|Z`ghdMOUad6_@4Lul}x|b1(D=ySH-wrwsvTog#B^n*f zv-Tlw?F$@@6Funl2?w`_)yOf=8~~5yJlBIUCadn2Jdf=|qdGX% z)0Ah~nSXu7_G9tmwBysLu2y{s!t>lppO{-`4jNU4{VB&sh~f_@hVs40df+G6S|9Z! zRt_{8A9#g);i7nIDLE2&7dhNARWT&^tYWQY?EMa*wy^Abd=Fn-#c$LUAO>(;Rby^7iu|B95FM zbR2+R-(OP#ua{-<`hBvW@cMuu@Ly-pv4;NkqOW*D{zDJe)f4*82GCEU%f+{fk!no=amN!)0dZi_D;6~S3a1uUm?6b zc6u;kRWH{&3Rzzp&LN*59)ADw@$n!W2p3^I*nV3lhKF0icmVF3dcpJEt#=?#CH;Rz zNv7W6L}|YAB-g6?h=n;c_daGN6 zFkG7hLoynv79Zrx@0r-t=&W>p&*-YdFCn8*a_-VqCbw5ZPe0wsl9k(Arr5OA<@Quh zFFn-4b4}A+Bez1z*4CD=Rh#riqH$S8VY z26Y5c^d)^?Obt|LQHiO6O8u#BY3rYA9#XDbK3VT#D_b6?nflI1`wqqXW(}D;0I_if zum9%Y7he6|nbE<(egK&-n`!YI&4FEYM)J?p18+F+OTJffzB=`5#`!(|Dz;?E)Jy6+ z@!MkPdG+^hyEEw64lJqmI>YzcyVTxhBtnj*n0no^nDPA|r-yIbotZI&BmK7WykJBs ziET>7IwmsyENoRLXPPy>?xZ-lBbZWtm%H!U@zQeF)p(Le(NFhwXT?X6Si_j&ScCRQRO^%k zAJm$w=DcHCsq;tVKgk}lS0sO<8Giq-8{W^tT^RO+lN-^^*fHi!aNe*8y|s}3(gAdc zK!*b8@W>ab>qkd5v-U;QH!U>vP0Fd);0tL^{8Z*l0fXuvTbTRF_iaq3wT5Z>Yv|eh zHo3E2)>qLOlC_&zyJW=QS?+mPzM0SWD+gkEH(MXP^SZhHgaEjcVy)jKW~n%Q4LrV^IBbF>#M9Eneo^D zow@zIX-8hu^wWJ-tpPGXLle4jV9u@H# z_LbD{MrSZ;bq0fRR6Fq-@z~eVc|!x=+31YjE zsEB`sefu!X)Bw@Tc78+a+*rph;CLQ*3@kjOGXn3p-}^D12aZ;BR0!iCx0Fppv=5av9bIccm|`g&i$R+tIT4R6jp_QNrGy zV38jp-JmlXRyXKunytAF`yp{)@ay;U=jw=q;N$$6`E^7Xj?uu8Pe;_?`-WxXvz+yn zjnLkt;u7f*egAllF3~y^pXSEhqNj~d)A?=VlYE`Ew9LxzwvWB*z~dhFyTbHT+_?)K zuh`q#K=KRVTzQ1>`*Md{Q)f=jNiYpCKA!DEl=1O0XD_^ubZrQ?-p^B=rPi7NPR-W} zZg0lVD-QX2K0cD4_etP6Kpl@_pc9D~g7>X%P2-S!eK>b9CX7RyuivEDexSpl$KCV0 z?4I270r`6EMUk)fc)WpgSsvDO4udrbe?J4}1p4a3^DXTY=(Z+wTawRa()01JXx9zg zAN>5-c3rT_f9^_#mjSPE<$Z~6*mX1S@7%oJzIxfswd;O_s zdx7d3YC39(ho(~lSxY=L7C4_Lzf0iVDO&}a_}g(KlqDLqkl?)EutJJu$2RwdMFF$Z3gGAM$P8y41AXe zKE_uc_=Dj5KnUmU=%0!7eizQm9IXDVWjQ$C!dc-Y`CX6m-M}cEKgH)h|M)n6>uxZ8 zu5(Ql?3-~<(WEpUsR{TL>qKfrA{ z{hZIAIcRn+ZufxO3BYUMWUbmC`#t+v;rB`A`Y!PQQZ-@@=db8D&bKsii}PzsWwVIS zx0PF-7mvyY>~e9w=ld>oY6$xDSMHP>04fcGIJP)f&X(OPqeoUPEbol;ds1O04n5XSTq6Hqwq!uLd99_p{y~A(rTL-5TE`pS zKMrKgK8~mKn@ukL>Pa&I$Yb2l2$+EB1BXj=G%ju7SU2^L6yuBM2fAbpYPxkQ8 zpA*rar6GOqZIkr9WK;F+(w)-#KJPi6_2`_izCV@MD)fe8@biDwX=FDaywkK#D0r{! z8s7VWS9wrVUz-o^Yk`|NyMlWL@*uc%R#EVt2b{mRdJ{XPyWq^-1L!2b zmwF2LerhH?ZNYa>r(1j;w-;~=r>2&Y*s$H?#(Kryq&CC)O+8G%_Rh}JHrBAuSyhDI zTn>#M4LU06c^zCjsD2gqJ2tH;O82Y!?(Od_ziiu~<%*f93tpzW;CpXAyu36Kr1!(` zV?Vt7!q~>1m(^@M<jc<%RYvWs^&)!&mHoWs%&~b3h{G;~5+rAC1z?b&J zl`jbIg_FPBr~QVTf9duc{9btP?7eX650_>dgj+@RuB;2^# z3qN{HyBB_w-wUS}LVLb#dF)E=Uijui*0%WZ{n*lB^1G)NEiJ#9JKh1ly2M!O{f`9EX8@wSiY1}ft_QAhg%|7^y!0dw$I6Jm+=q221P(5a2 z%cG}nY=4^j#-97wMn3Oo`N>J|fg8GhiFGAsFix2NfWhknf7envE_3{vy9X{B=idV_ zB`=~}dC&NP;hDX}e0$*kSdg;^4qSuG*;nK&1e4hV2af0eI(y*DlrQ*r2oL$@>g#uAg_fbu4Y5N=E>D9m~}kajdh4`)Abu(*Agp+_wu{5j!%Wwk(f2V z;a>(4rxWYfQg1e$9vLZkwGBE*e~pfmn%X=4PP$P#`<^^HJG_T*Z_cf$dUUV{EIt_DkJlG~b?}_>AX6}w%C*-f^oqw6=1udF>1bwDw_P4$>ICwY(-3Fsi zOB32RE^S{$ZX*Q`AAo16HGB0Sv{hZ)eAl-_v@OF|V9&6e`GC}@?OvC zvr9sMYaWe#0iQ*-MUR=!(_U(JK2PUV)ArrK{s^#p`>y?yux$+VPZkx~3 zIW^_;O5+y;x6kKYKj<&a=haHqE8@zfiJ!Zf&ogVfN%WAaaL()o&6kxkGcb<==45S7&g=%}1O7ZY zGXsBjb7n8Hj@+D?kFUP`YB%Dm$%45Tbk2&e4BX{{8-6tX-|B39mCv>w6<;}~%P zi)bs|ud^zOm9Iwrx!?R%ouwJVS>_G5%otU{T?yL%)Sd6!|J*q#LNCYydO^z1E1?(U zm7J~K%Cm1!pQ5vs;^ln)x5;%45}vc=bMy1a=OFKU+q$CgURbe>GYmf{mX`l*{SOhEi)pPMtj6NYx)5v(Bi3_#Zh`?Yv-T{hT3>+J0pY-q3j> z!xM`H^H2-3>Qr=wDZv_SucfL{(M+ChUpQ_sIa62Da;}p-$)xl^*4Ytqv*Gv3Wk}Cm zO`ik7=yMs$i)tTtGCJSXbM*^MPXOD8Q}Kz(6BwAU_b^u=gTQL@)(-Z5s(R}M!5uMpuLZgfK9@V#xPPRPoX87>!KD@4@iLFUw+^%X zxwVKpA>d#0JMJr4Np7ctd%~yam3ww7dEMGSxMM!!ncrN^^Zb5mPd>vg4q*JP=W>Sv zf4^Q7973Ka?V@K~%PlvJ+R8lxQ+cm7Za4g4&tvOcj(P)z&g>doAK8hIa}IcxeRO;g zKC3Ig)boYxjQFC!oHdKazYA`UIvZ1K&k#L5$jN+dton%%ZiQlx-!jvmBy)a9FcyMa z$-VHaK7O}-{@vwo{N}^uQ>f99>`9*Vy6yseK7OYhq+jnk-fPXPd3L4YHQOUo>vsF} zX3g7Jvyo%gEjcKnK4BHSwA$vB((7I6*1OuQH;8{R&w9l}v)x+5{jClay8EbxiHFWe z_k&OlTl-Jrsr4F2txS~H$Ki@s#v66G=2iQ$>v-8Sa%+Npj&%0 zaD>;dwHsZm^#iM5yDw+`&X%O_R}~Ia({JyiEOz#{EdGpHzs`*Gh>J$5XX3tuk^1`} zYuB9vtAR5Gjan}DbnZ@0Bo z;y=|_t#f-?J|2{g%c`+7Yp``qehvT18d`zd=x4^st+7N-Hu)TQu717 z`8H7R6Rznj0S}tf?`wx+4=bA`@jiym>|HarbR9O(@Z(@;D*Lb4O|^rqh94EP*!@wz z=IaFmJg7CBJs08F&`z~vRii?7KMM})v&d(o-{wWcpwOVH4jy}GUW2c(Jk&pU_ygj# zHU7?X_-Pezi5C7WlJWlxEv*0N;rgWb2{=sd6`1N#sen+D|g&8H(PLo@fPrk;yc-^5zHJ$=#G({s|cM!m+3e!=Hc zuff*m##H+nG46|uf8o#We&We7W0N)SqlW|UjKNpKek8+-L zH1I*IW@yy{t)BQ&PR}=db=lb;3LmT`Z@=N4uHW$IWN$x~#sO!VJDR5#RySc6g%8zK zXrDy7RQ;(V^vG{x?qc!_$?3KH4mjW+^-jO-Gw63>-{#A0ui`=E**F96)fD=wtC@LT&FSSHM|LaF6PYR+fxVD5977ZwEp#%@OsI#0rkUq zy>r@-`b&9zxM@)RcNp9M{q4}-qa$auPbE%zi@UXbk4E*Itfj_%tf_G?j{orQ>CXsU zx&0aYj-w|OJs88ibJ=q_UpdC6T71;9vb`yK=eGSUR$WnsZ;StF`iTA?tnZ7gDFx2g z7t&9k`@N?j$0_(G)jw7pR!c@9b0^-eh=N{Bi;XeV0fgu9N)1VydHh-wP)IQlur1`LHx#U@brP< zmaoG+eIN16mrH}oWH02ulyerjoS67NV&ZaQ;-19sD9jhx7onbIpGB5WL7(@*KX^UT)81`!xpY?_Y>nX7J? zUSi}h4DUPGrMK{H-cURpTJs@%qEo+o{-~b#5vMpm!rv#}$N8}3X&<(n=d~x*CqDK< z@5AycC2k=03Wr0H<#QFQp?vEZLb4p;gRJC=_Y#9LXkI33%3`j;;lb!vzf zw*o)Ba}@lZ4ow$i=#U`C=JQ(KW_|(Rp%I=S*J#!y+AF_-e|mJ?msw}FU(=WMsc(Fn zVr`xs0*qz&(4kzk@u8OhqxL{_PeBws>s3DUPl3KYAPnYu=A$3NN%Y#I;ve7%cc)I1Z(J?GRlru{C}i(G^clElt^2l$5aw{jU(yKMf) z_ZoOeOq1A00EAyi4PmD;_a^*iPH~?cQH^Zt*&CbfkBC zu(NZLx3QxmecD%{YbHcE`(7ODcnh8J9=Qx^Hafih9SvXCz}Gdss3SZTU-Dq*^2+T| zW0MYGrw-y5gmuKp*n0U6s%`PMestvY_L}XTlO{0dMcDn96BpHwj-1k7vyIQvuvWxh zN^r&~fnB zK}Y-3k%l*Z5@~qzxk$rXTO$o`7e=d7JINiF*}Q^@&FB|*R4j^-->b(lEq1FuV5oVM&(aoReA&tu1Ft@zCe2TLeU zGw{6ipTL9vDtJts222UyvuA#?;stfgZs5~hU`F3ER-QWBWj<%&_nd8Rvot^6KK2Wyx62?oA&JZa$jA@IrHHt{6S&!DeGp8bS0jQRExE^{<&flj%&%Gw`r z^ZWe)&r{zN4A4+8n4A=Fh=$|Q`7aP_hxP}u;IK5bXI{?$hVa?x)>q((*Z9wz+OLoe zYnx7doru)8-C*nOb>EO^qdrIRLF5B&Kz^o^i>oap7gv&%i;E-E%Ei4f3Rnv@& zsv5gz?69vTlMJbbe=_Ht3&?r3T_+h*ZKvuwjlXB`9`kDkCc_`(psdZqhtT?gaTa+G z**w*dxjlw756k9d)?Xg~#rf!*#`5aKL-6r(`1n!9kQMPS{s~*a9*@Q}JnU-Am*_k> zer+j!ZH4n|D~hAWuPr??erXiHmUGeucgvh#+a=$dHD>dDsra5X9gpwReg^b6>)};? z#!9URKUDc;#iyylan+sdH*jWfQsQ#zEwr9)$i?PVMlOt=J1dW#Gw_r1q7Sg=$>013 zdIk8sp1bA22lo%Y|0(IWXItq#H~6;u_tSfBj@NbgrpuHA+l}9(e3b7wAlU6bvh6{j z_cOINbV@iMr}KR)$TK!6FJ<7#?la)w+6-JtbBG^ryfd1^C^&R-9oq-!(4o0X}+p0(or!>mdA zB3+xoXIfhd`>8W2KS!vEq_PZL3^*`oy8Jd*9f*u zU5STnHLxY?tj+QJDvj3wA29ko?HcTjJLhI_zX#k;06tUK!#c9gV!8L)=N=B+>ADg= zUy00Bq1V8F`vY$O#MnuE|FE5u&Xb+YoGY+rAUw=p6ORxBnmdufsj0OFUga+BIfB8n zb8X~3z$_anyqmpvUKJmf1EbDD=<`{~z)?Q>nfTG?;0II$9jRJ+01m>BCJ(P1Py6(s z;f)zV!<*#a-Xj0@_RdJPa>8d<=JDsxjG4P_bT3M(b{^xv+e5MO7ZamQCxHL8;jqqcvr}(uvzNSa8X?oFx_5HCIk6!h@-E&8`Xiv3~am=1D zwBvX0OuwQ}{f+#tp5KvA-ak&c*X-YHn*OuTn6d8RH!=3Qg_G0=bH9_CQC5A5#+)7; znP<*AoKruXH8oC;9RdGGs(`Jk@xuCqgRP0@#_(Jd&k4sGr>?wo#9Q=v5FPYc0lI~K zn`8Rv54NCN_^tGc@u!?WlJ~q`$RFAA95OJ=`BOYU6Mtj~{s_67XQSMeJOqE_K*%3a z?>*UAf8Ic`h26U^b#*}0+B;eZ7WKe<(Zx4I6tBZ0JLHQ%`_vNAM(1?1eb{dcrX?08 zBa^@-`l!D^IsFB~G8u-$`mJ^kb|5gM;NQ+t@*-z&&lUA0^SG0%vkx^S+++LQ6U6U` zT>QGYHZOkZgYI?AmvZns=*gkspL6jo0Qj|%pRV9udycgVo#5~Lw&!!5BIVCU5&AAZF7T;2TqVS z7v|E2KH&04^6|I&f1@J|e_xwJn<2NNgI{?vt%GOwgvaUo?PJ33@ObOMY&~(J^ttG- zK%ZT}&^Fij2ZlD$&(~D1XWvA2P5v^uf@9jW-zKfT@U)eT=F1h_jXg;@edlr^2CqjN zEYJJrP0j#Yaus_M<)OU^$!S-)vWHoNZ1N1^s}%9oS@297e$PSto}uvEti*-XA@yjF z!DH$XXZFyeD<08jtAHyOiJ7|)O1TT6H1feu^j`Dnz7uo53D1?{SB-b$@A-K5@l&6J zpVmU~ioF%A>er;cXRS*)gZXXt>iHkJ0Dt`3^i|S5Fr2|G-eb>T?hJxwDk^q ztLKtS=|QJgzBj$5{qvl)e1Erj-k!A#JwM&dAKTnd^IvyjFg4mSxs(0mVA|IOOv%o! zdqS>;PT?MKUM_Egf0CWHC#1)X$=k5j+}@DNNsF%GoOEU%vBaIxi^c;dmq~omR_t`) z<1Wt!-Nw6KDT9rlLzKP|+T&_l8;mSv&-xZ}d&kV{U5DQR?`(1XWAn+Xe7}6MdRk~b zvQvIdUS_TDm)TFumD%jIl*ZS&wJ3J)EMlF=YXZ65eiyYB-w1T>k@LmuEs>*DjcvI9 zn0msEbN$Cu#X!vv5Iz9&e(-*O513;Om+@ zm$&f#zvy3S=T%?2X#0HXXMO)U^`5J4;<-D);Y4B|GoBrLXR_1WVVPiVjVs+*cO2b$ zUz63Hi93N|qGHsF_^XW;jyP~=oL|ygPGhR)z1BNcz32G6iD!~L^LKt7Zj1q}L*GZZ zM{H^^{>QD1*Aaow?g;mpW6kQVkmyBxBD%8f((fEv zK7~Het*6&??C$AufZ!mUW9_mA(aCPuCSCt5`Cs_k>yg}=GVyg+HIIk-yZkPBu>4kKj8U64Y^ZJ;htC~mYG8=Oot*g!v4CpDXIjo;@ z_tJ9Vu)dzHdE5*P324xCCcTM=BZJst?WJw`xT~jI5H&e1$=Tt8;0#0e#2`cW`NV(W zy0D$l{dq(8;`mt;s0-tn+`6!)Z+3le@9Mik_x6(OzS-2U+k3(rmrz5sAZS>_ozjn; zL651P$e)*G;x_3L$z$GrhVa|1^@o-L!Hv^J?u>zgmwIxTW}cOI=g2fJ2oW5r|Vhg z61PsjS13Qx^J!?W(Ad+j`ne6CqRWv{$!00`b3J)WouANJ!}DkOGl-Yx@TYQ4o=1D+ z@+fjJ0UmAPwa&eca$+)L|!$-+7kl->W{x*a~`;kxyq|Me;ZYdm-Ij#+g&a zK1OFjr&a1xie8tUm~k9C5hSdg&^Q_&JK)9_{1x#_i-U*H1h%W*&DQRVcidppI3jqeJ-v0XE@z2c=lX`kB;td1E#?j z1zQYW(ESyhx!unByVL^wE#$Ju$z?+JJEZ@U;NV7Za1%H%J&?h_(bM2sddv1f)_$AL z-u zGu8rV{sZXUe0ojC^M9EgTBbbEkAHkzJG8GWJ9G_oCW^(nY4^;0kL1kPg&o=#_MfeM zyZue@eF^iPq#ZIa%n=OTvqM>MWaK;=?*k0^?9gdvA8m(TLk6sD4l+Dgb9S~JO2U85 z&JO)cT^Dv}eAo5KtI-kO-uOCY)ejT@ZISJ`fccMQhfb8=Ig9u3Hf&QPwkUxe@;2%; z<_X&R0}EwQyx%VeW|q4xrZNk!ZZw;aqvpHf+E~c>7-L@%mUXeYh&HBW@qp?DbZd8YSUfz3xB$`bTE& zR@S$j^%19Z>|}k`uc(OsEwU&bEE(|o$chI_#%AJyOix2oA7s`vN^4?0rhbBF*R!s0 z{RBSFKJVlBb3RSbU9}UhR=vAiw2*C=f3e=hp(|O>W6UeOt^)>NKc;oG{f}KoKAAk= z;!&&T<HR8RKMLkmzdya`sQbMpqSICPVQND7K3o$r)_o_u|ADh_X8+v98jDM9JlGBY*5LlP zTQYuhU4H*Ijr*hdsU&^}`1dm0m4EAHION}&xqs^CKDK|GHGjtL1@XUU?gaE`f*whH zy|90K?U{~VrxO>ST%2KGtoJa&pDBFru>UW<^!`Y0oG}#GBn#c8!`DOebP;D{;UPE9 z==~Sa;d(#!Nz&mRY68MKG)#v>f0M08{r+)x@n2CO?qlZsMaN0^?7f!!3;J`&@oFkfPAXkfX=wN~YslIgME1gGH@r<) z!Wy&}EPIeyLuq^>Ye?5r@}1U`Vvk4lQ3r{+y`2&tE;&v-`X$GQ#%4noJ$oW?#yr*% z=En`#x9}NX&x5;JOIAH4aA(z1^8RD2OSweFlWpiVA7?9`)P9fhjp02;eIDLp)O+Dc zdyLz$KYBl(*Wb$yC5w-$1>Ok1rtJ{lhwad6_uUnTvTcy?lU3ts=$l>R+25VnuLd_+ zHJ;$t)V;7)*`sicCwSWA{eVJfE_%FLVfC!pV{)>hJmd=UkC{Cb-PvmIsQ2@p<7ndN zmd_#{l8&F@?$6NORhrZ5ct7VB=FF!Te(dB$}1v+w-zYu>`#e!ZsdH^dWm-I@D5x|)BYXmt9~x!J3sQP^Lq0w(cBxBD00pjafk zf3b&qF>p&~`SV=qyz&j``)hsuUZ#JsU>85H_w{@5O*6mC>R-%fXR#L3znH&YrjAcA zDbtm?GbYvB={^+|R zrgv2W`zv26L0#hL;JmLU*e91>k=<$}7iM_H-$l)5S?{C3*aKL51M}%YNAsCMN6Suo z?&+0}bx|j|GgiF~dwp>Cj-tJ)HcV6c{yp}!-A5lyqJ+J(t z?wAw2=G+;5R<5S@bja)*XOF%&xP$(alSU6g&$H$-_Vek_{p#pQ@YV6B-t&mg)#*1i z^zG8V>N|R0&wHM^m-niPyX{Elq?xB^yqU8{zZtnB@u$v7rJOBo(QkiXYgTsi+l1cF z=lhTB_kZBMjLYIfkpW+u zwwQ66k&jQlX8S+1!mE2&OM&an`ySpqfLFgy0jFSQf491bn14I6 zsNN}(MPFCF4Oom1gq+B(l>>v-brG`C(}%Ew;Cd$K`pV{o7;aG~Y>2j~UqL>9(HJ(ETUSE6tlIg)^tDmi@o=h$1wgJJU)xU|&;hf`~z9oZ4oc1Pr;lS0G{eepM2gdY_ zb@V%{rlJ42H4WO=x4qYk;@h-;=lApY{gnT9eMb0Oy}kOvXNBOX2tJ$3Uh)q3EMag| z1depxQ#_mDxnFELyj*#pr1=gzAl!hfVsNvFy{7_ruP}%AiX89R^L$0|S>UDV4d4gQ zeYK{dQO5t#Sc+xVog3aOE-}7Zi-AdbKK568WZ>BZJT1(xeGlUg2p+~APtE1vr*uwf zz_Tqu@zM0j(yc%3E_kio?HTZKw%A1|bIP?&2==?f4X8uPmK!<#te6af1Q`htg z_11;hq%{FGL=JvEr}_0vlG^yBUir?{H2G)QU)pA$wfjr%+3BvHsgmdY*&h#w8ShRz zUM?I@9uE%pTr=~`9~N2zaQrY29LYLc!(?a*pGg*Ne9m3m@L3j3Lp*jlG)>mggC!4L zOW`wUYVMB}4b__~>~n~YnK~xl?X@isGW_=fFis}-)&y); zPh|4SUQe9iVPlU#IzoJBd^v~v3B=R7W6$?R5^P>a2sY^m)#zA%C>q}YT=Iv)XEsf| z^3$&FzR9`ob|O9oywWpj&m85`dztkdt@j##;2xml@yV+v~i{ zdP?K}?AD|BdNp_O7T}}Y{qYSWTHCGOF**wwuN@oI_lF-U(K{>fy{3WlCS=^+TTm45 z$Jt|#^Pd2t&P}M+s|lPp^Sk6^^e8@TaZs?7`@5D^y>nrGU!GBZ=^OGf@l7R5g~+<@ zxsXnhY^yJyXyVUjD4vW!7ZVfl_gLUhMT3Vs=bpMTg3hkmc3FL5DRVJa1EYp7{7p5 z@nI3`@0{Dmu6-WoJ{GX{C87)KUSro?RWx^V!q_b6fvvh-YX%3> zbL+{9SDl{FnAV@Lx=eS}!k13Se&{K1;%LLs`S=PL>3pvEkUu4x+_V}5#hslsVY@#2E#?_k;P}+Wr}zL%-?AXUD?v=HskGvU5BfuR6{;mTHmE$A#eTt*L5`Fim-7^b1hT{UkBR>qW(;U%>7^ zUAc4@_tCY~%CE18KTX}LVyS$(<9O@*@X7A2)8@QRe4Y1&)+t;4BWk9au8CBC{1)n} z3Z)YUnKQ+e__-~_MQekzMw~MsST?P8Y=d5>*Ntt!{x&2z3)(c98bZ#4DsEawyz)Bn zO5|g~q#NlSHV^zXUqekgGPf3-OW!09oRlwMbk`Q}ax7n96?ufPFECsFNFHB6x;EDb zkR3GsKYqX%@Ppjp2lSRL+*B1@P@kXgUtCm66u zvD)mgPWO3&T%8_(2hn>fbl2Lb-JP`^nwrnx0j+f|pT&^d?}IPVcUHc2@~l}Wzt3Ig zbF5R(U4q}$2tEVqCV~&X`JG1WM$XURQJY8^9J+vFfRE8*5PgLTd2{Z!tkfa`MTw}c!+G)n()dMN+pZi9dnK!tSH(ANoe13II(1I8$>df|ylQAtB)N9{(K?a7z8VYLYxAn^{w#RH z^HLG<&W-dwIe;EJ=zIk4f4Af3NRKt6$IP7$_-_Y{9_tbR&e_sq+BYjB|8NSWf8@(z z=hu@z=}3J&=xAP0Sl>)8W_NIx;a%x!!J^#5WB75+PX}{uB+sDQnm@K3&9~jjHH^#U zUv%m5`8R{Bh9@$9ihLCDNCI5t$u*?=2juea=fHzvG_7M-o^>2c{yyg5Psc3CUpQvD zJ11swIdntk`wZ+hX3_JCTZ)mp;#>O8?guUVL(9H4c1`)efE z7V+s#@F_i~8t8RDE5h97Gk7%xKanS!H6MP}J>1_HE%{8mdJ{NbK@LqZAi5eqK69Tp z@s)vfGO)sv9U5EDNlrD6fg3;d9(b_ymVToKIJl)deU4u+TR%03zkim^9S+7;zTozC zHkkQsOf9>vdZEyMo0)$!^ULoK&u{8ig*WCmHjbEoaA${Vm%B6Ywmc4=`MvTMgP>_ny~;A>DHa3o zO5hcYQ3tE?#oq!>(OI8sjK-&9bAsN3N346}s_NZ+f>(Dd2g}*@HqNYz?>tQF9Zc-4 zn;2g(+1z(V&bNl(GP!c*usk==)UT~~`1E-c!RLAIddG7*C$KnYFL5c(^HJRW!9PY=KYkP*Wtc9>s*v)or6mxTgPALc_%U7%slh;hwlE41;0LT z`@?uGU_NVWE3u{D$k^IPvu$ktX#5d`Hf(;|38>SLZH4!@uyvF^OzgM|BOT{K@9S_N8UxiF5XPH%_2tWC|XwaXVl(*LarUNx-}n%~VD)Y0o_E3T_q1Zjp7cT;wo7`!+!2MY z`WM!rTIb2c665(k1+G(~3u|LPde)Q3qTq_U8qC}t#=Ztqc6!M#sOH^}ca7+q>0{(+ z_Z8Nh91X6apWmxAeT=|gZXcsC9VbA?Mqm&f?LLprE!h3ZLPJY?=l!qw&2He_%AV~@ z&Dr+|h3{~d@7sDUzNL|mqiP_GoQxB!`1j3<-D{B->KO!gR!szOn;a7In|n8M82)nL z{~fTYw}AD1qt5p&kH1Def%ko1KFfRd87k=!BwiEGNeApY2_0}s z4)1lP0~TUm#e1?fiZ}JDJ;HUsELquy4$G$po+oEgNA6(;xraJ(51lUe&{*uu)emJRl&6ocm#*wN&DHrCqA$~Pt~Xv;A?j9c|Tk5d7tMT;TIgV!K=48 zUKK7>*QS_6I0*UJ1`jtoJcQ@Y_&XLSeont98lLmd?E8oD-sbRL5ed(kZC57b%xUD5 zbq>MjDRXpa3(?^wM+d*o#7WF~K^Jp+y8HRO9SE;+muef(PuBZ|LGe_(2 z&JF0rx*Q#T9XtV#bfv@hfGg>6qr1VWbhm25!tWLPFJn#VUUdBKJbp6obx?HduStCBRx!CgfRA9G! z9F4!m_x7AmalFFu|G2S-T@8!P=`=>c$LZuFucglF;$TkmIpim)FT1m+tG7Cx{M@xM zz9YYJ&b)@t|1nc<_9Alg=iZ-4-&L~g^jHV|UZ06Yu}7z|zgT%OwSckBx9)TGtUCi! zH>2?{XZ*K-@6>`=$9qZSuz)_~)K0xe&(1Rnf{wTOE^z;RJ=aV#-+5W{4RiC|&b`+* zSCyHgFLNC7bF8s*tP0I>*v;X`f05n+f9{>Re`Xx(XsHM~ju)>T6+@nrtxqRG^Og$e zeGau}=&^7NsWZ=E8@&?#)P8qbuVUxkIK$GkwO?TTJDm%e;dGck_dHGdlX*imI!1?G z=I8DQuPJs11|P5aGtas68ym~Kg5f3RmJZXoANj`Nwf1GsRL)w@4$sG2Hdf1=sXEqN zo84SK4i3*%z+C-iTkZ6t*H^-+*0kFB-``^%!z;D6j!XQwyvMuC zzm>xe$Kp5c4nKhht%wnz+m7f=fi@(oK%TFWmPcd=cu8;LG zzMP30V%hPVXxuVXI#~R0m+I&YU#$@Chr-kFNE6>D1_d3h!-I}()D5wpu&L_3p~(JS zn{PtzBnP2u@wXSqhv1pJq0b`6_db8pNR8<{=%hLn)kc_H51(BKt#pr~o>MJ@?tl|N zE=C4QoD58bFUhgDi$}tK%)bDmpS$H^!TOEOCFJDh1BYM`FZ%q5=C*vVp5Q^ex8udd z@cnkizZ=^<&-qNkNh@m(&vgTHX^mzcU{x=4$$3|Ec^UV6Y44sc880zC|FpK7-P#74 zwUwAWkm@l_Etk!wEi?Q7;dv$B%&mUOQR>PTXV$r|t9Aa8c^4BuD_&X5p4}4W-t)0w zOuB5U#p}cO&qwz)xP}<}^I(`ZQ+c z9MU}dP4TRm_wc$5&o)Ab?M}|*J;x_?< za9<+ayB^T~Jl8bGr}6<@p54s5$tX&R_D#ID_+(=U$K zxwV_QS@*gee$A}g)gOjhq>gXLFDv(dZlkf>XL>Xrn)R!}i7cV3CKqJ+zOMj~_;6H)w54@L;DI5DgW!9(s z5@#;FZ>Lx9f8G1>Z2zkfxsrWa+pEurZsi$SPbkl5c>Vpg$QW?TPBkKHGdOP(J_{|` z^08ZPe(OQt7f+q++`r11TY9;>bKlO~u9o6eUrTXiSvPAbj2~DL|58{-!V?A1KTAjE z!Pmwdn8l0Tg?Wtdg>J4qiFudi%qxE`Cl9&L%Rnxj`ZI6XpEERr=T|v>n19U~U2tp8 z+>c$nNOR8)>%#EdI+7@YfB`X<=|Y-X#$yRR$F zz;Tt}z-MlSUu}&J`?v6H0vWV&H*mJU&qRFdZMteom6xX@ z7M8acdrICup794q1|4d8WStU8L z{^-2{&}1Mo;B#b&YvwgH0K0yxXY~C#Y)4;yQ)%>MiRrl}|JV3kA^Y+AV;**VE}nn> ztq1n^f8dG3Mbyq0;R6>JE#AKf`!Nt(*4Nonzn@X*Y*}9ykNh+68~$Bj?O0Y!j^12W zYV~H~^m!&0U*_m2TI!!UKeE%_A3DU`*PVTTsQRxH8*WjL{3deZ$!`#9kM<59Ak`roOR)R)|Poe z@J!-z;AY-|JXcw!I?5~Rx34|4e16fq{gG`!b%Hq~0qfv*kv>6#cyJoI&%4PZHS=6i zk@ZOm;CJPs3ZP>%a2NF?7YW=&gY7e-`$C>cvYx^|?wNT!!~6I9P-_7lQqV#EjdD@) ziyF0d`2+eJ|IPY2_RcqR?a)`x`p0LZ-)o=PSW?YY9EO%-93*2cqp& z7mfNoz}s_b%kj(8B9u zbNVxv8Lx4W8E+LmH8oa*XLJ|q8peFg^g1euUw&EkU963T!TA-8SpaVpl?Hp8LvwL1 z(0tc)7US{V;yxvNpJzVRrJJ?FYg()DquNMcBUwCn-u|^g(S2KkqC2Y4tz+Sdaqxuv zah*5xa<00<3wgG9{Ji~-@%t4)=^ayn-T!_o_tz)D%_7#Z7=G9K?K+2%AC9&Me5d*c z>(`XT`@`SO@VoebA^wR!*JEi_9IssTp_S*ImR>sdX!nZ>v*?%_OATG7i%Y=+{9rs2pFar+Wrya#yi1>S?u_^QM(&H|UWZ%1#pA)_he zk9&O^D$6-96AY;D0be&>9&}WiK7ym_qrBI-PVu*J3tt-kmX4(+Ce7dSbH(2#9*4&# zz^{tKn~~k7%cUcNjfm^$;ZER)?$##@A6iK#uulv5F2g_KC_@H@^lXG-KuADa`yG6*kdEUvn zf4-x)eLe}zrX%xnfmQhi@rc&&4c;r?A$yZ0^SpnGx%K%Iyc*fy?~Uef#aKo0b^I+m zX6#1~*4EqbO@n;z&Jt%sdc^n~p6xfU;j7LM_x|?;dZLE&p9y#f{oO%cxS>h>hhN#h zVAKeE)>L+*sC_DWT>Dkpe=z%2$l7*3^R`6aOAagez6tt&g4h0qu@Tz~f-QEO0cIR% zILW>r5*jzQS-ReSKG1xwvA2!jz9#%6(J*;2HQZ+Iin#QHVj<}Vy=re=G0STDk;h7< z-_NO^01q_cgTWK~r0>Utd4jRT3*@f%>Hdxg{DIEjl$ME#9KPVamFuGT0z+5i0=T6A z3#{(nl-B*gA>E(m3Eul>|Jgk&J!0mDFYFmY%NLTPuz#CN-{xzBIim66JT&I~`<#37 z`3toXb3e??m}q`_+6PSB3C+JAbX0u?e_=X*<0mxU4iDg4wSt%3=>E~@@%h~S;`^gNM^XK$A{0mQ1`|q3Z zAHD2mXjEwTIQT9xo%N#Yen`I-gS#o>^^$hkX!%!HqQB)|c{?P$9oXBsydQh(jmSsi z4d5T0oj?YIa`>0KbG|P)&_@yUQv&@PvAQ?Iqc^~R@U3J){Ga6gf1iThFgU!#oDUD< zV^JP_G@?5b*wC~N#-@&;Mtsbq!PKwJ-RyPG@4oro@}T&GAFnjB)u;Zef(;ucxe;!h zUd_N(nf^3qP^_g=YY5II@WnDci}zo;qn;%XXDV|i26YEof4}aQxse}8GfGv-%e&t-<-xX`V=emqLCo zel>nH?}w%Nb$Gq#BtCwL?=6j--N9B#hQc)ZIevqo(KR6&!At2F1s&vLl&$(Lv`i4w zG}UF(GX=bPW0Y&)BV_a|(3rEw`x}8(F+x)vF$(L|bJM#Sqf9>b7$Y0uADvtCcIr{^ zY;a197Ex?+44fu_Q~Du|Q{Ml+7dilVBgjw!cq7g}dD~`Uop5Zzx?bj)MtsTdJ^0~r z?DL35Xpz7Nob>Gvmj~>-8s5WJDHbyFB%Z_%nFicpSu=ENwDx;ykE7{EKCoM|by|*W zUCBINwjN*c;qoT>mh>lou>yITk37YQ{Y97g@W9>Z6BDPx12N{yf=|Dpcf#HDP*@N{ zrufasoZnbFjIOU19gcx}^_$6x3weJRcrV^BX`^p%bW&t7JZiaWRqb6er$Uj@1wB=}T4zu#09 zJG;JU^x-c3#yg6R_8Z^HbKhL&^kMB2O5{sq_A?Xsj7|99#Hah#P7(c!+hf>u`GZq< zRg9){{_@B2`4W;f*_sWP5KC5&n?cvEMdp1hISm?fcii69Jqz~M^4%EoonpyClefV( z?ycz)*<1B2{b}fzo}gd4aAIihY7u0&eUB2)ndKS7S@qdb-?Ty5F zT5BJ0fX~~ZXOrl%B(KfLtm&`d$KX8cm3lsine(iYOZktA<=~$Yl5yo|qu{9%pDYEQ zO2N|s@T49)gCa{FDFsglz*G7?csc-{{QFdAP+dBV-m~QKn(&p?gLJCn>t( z{_;xdYn1PQSun7Ne9ZHm_>;ni{B(`8ooB-Iiwq0VAKE<*?UMN0@OyOyF>MmOs9vk+ ze>*P~4#eZN;2;7o*20Ssc(E2z9i zkYJP@Gd#m*f>rmbW}U+mURaaX{l>UO^f?<~?pH1UtnuZSd0VGGXC<0jGRe8Wr@@Qh z(b=seJ=AxV2Cu$RSiJZCBXb|RKQi|__eV;Xz7&)#eX=Zgb#kOvdtY?F^73!s>m5kL z-wXdkec6iR(9XdB{ts=Q{s6Rl(=~?llIse00wyw+8 zoGfwh`aL4;8zW1muIzeXOwR{jbUj~&57y+FZ#+E6IUKVWoNvBQyZNqQzE24UMz%`g zJMcTk%u_5G+pK(UaWL;Yo&WS6@~(c_^oje*d&^r{+aB=IMo)zu;NwN{t?M(B620-; z6ZjUY4OKqU<3(rXW&>*qyx7`)_R#QU6N98*kO}C00DAZ1UP*J-82&To_FR6q`Y)h; zfyXQQxg-%CnZ|K9X?j&293PLSZ;``O4kB6p?(%m2ZX`aJFY}y(r7;SgsP9yM=+6=7 z%dwAiW@r!I*y{yu|H$mY|4k+zgl$z!)rqZ^y*75bF4nNp^_`HNzV&fur_u38*=g{t zXOp$qX3MIbkvn6jFXk10UUDP-Rf3&<9sjWveHX<}zkr=qj8+m^ z{74i#{Q`D6{T@600(M&Oi}}6n)qxYO`E-%G4qhFh`&-9|BW{Q4k(ENoX(UHo#OI~%C+C92U4ZB!I4HbO? zP2Ypj#ii!#!H^>pmJU8r^N_hC8koibllaBlag99)>+03$x;A{E-1E_%=YRGC>fC@) zahPB&L-Ddt{+3o4?TD$#y<`@DF)JylmckO<9IXp0to}4|= z1-;M(E4X{HfIXap;6-F!oe|8USKu@Pnzl{DzuV2;+9O<0TL1Vvq#S0CN%H#X_EG%Ei-VJ#-{_fAyU`-OF!8gI31c107~4-T=3X*Y)`>##+VN zWSh4+-Y8&gEv!xQ?`iU{tgD4JX&hUZIw0L^Q|pmGxCnXL#(FfqSrf0aX&14kUFgrX zMZv4Ps7=+pf~AggU3*-8>Yl9nRNGTV=ek^XfMOnA;DH6k{)v@}%>;8tn? z-=v4E!JBvyU+)FhE?-J#kP5IXh8MBh;WIX#b^`?udQ!AYLBsS}$&2AF@ZrzdY)3!7 z;PB!3^F{EXxJTz{egtb^r4DFvDDm=&Rr%hO1Jn6l{PrUkr4@YlY zQ4rLtKWpOg!j7gN6?Sw!TG-L@>r>`5ulYoE<9gojDX1=?kMPaJ?&FF+H*zZZBld|l z?Vh52h!T@OVvl^2YC|{=Z1P8Kye~~CmuBxf>D9qr`I>*MZu#}!&hgLsXZ&xo>J!%2 znmx#_e%rJ&(vgS~L;o6o58L*@N91PdjlXSH;TALA)S>ki%)MQ)4PzyKJ+Gnv^ZW+A zchxz>p};pJQOR%0+NUaZ*;$jh+lIX^J>%istUVQ;yMpITE|R^x3iu-t8oP*<$ms?`i~T{M%E@{$hHd(u3q#^-a8zyXe<(Pj^3fUj0a?tcow{o2kPxceL%?quP&q+>TJM!y2M1+!rHaPNBZ!TpOKc+$Y_ zVf|=u=1hGqtgks(fBSJmL+`{wzFFGp@r~(@ap62BF6)YH`E*Qo4}eY1I^e+-D`SS`yRaB#X6|rS$0+8 z0@hL9UPT^V^S1sf!`BmYaXvVkKjc?vJ)W;?@p=4uwwU#}UZAX{aciWbncpTm<>wbH zWlv^P)!6gv$MB5u?X$68p*4z1_R-1S^=?Db3!t!G}&di+|nF1Mb2Rp*{rKh3RY>`AWY6t|u;{CX17edX;n z#DB@1+?7tv!!*@AfTx|Tr*Rhe---?4yPNp@M!whHrJCv8W zJgYUX&@tR%8j5x=FM zU#DcVNBj1ERyK7e0KavFXs7x@&8@%J{UTPK!e(_&qOZ@$6^|_DH=Umi?x@A4wXx2& zr3KZg*Mf%ej@D(^s48Mz#aPw{ikQAr#OxidPZw0{ZVcy78~kklKJ?a{Pmf`oSVP;= zG1UhOYfL`~t)&RvGGfJeL}`y)9_z<-TDi9n0Or8@toTn>D=sp`@T>Zjpv zNv{abu6Qu<6Yd@l!^!&#fOE|+GrF)e#9yYDYnE;=u)PF;MY`SAiDc{duK=^x@5qdi z&jf4O{p9`V_$qXKWN8XJFCAatbiCqM;nMrJ;y2}W?f50+5S7O+ibsG|V=4#T3Xe(- z!so(j;Ip~lbG6ggY5NnBf$_lC`kZi@ZG&_cV@XI3a^W$tlkshf;;$DUZFd&Z>sd9J zla5$inj8cCDf^^cfqJLv?>+ls)$93u4{|`z-i6jHy@H>)RSMr1&4X0AG5m$stmMcW(Wc*4doJnt=U1c*Db^ zx-31Dd1f8~R8G*t1a?eVh0m{QmfuYQdO-XH2XPTxG~z_&zO98}MlE(=v9Md8KnS zzuqgS_BH49?ndXUIhkjs{zd zFJbOP#+M+*E9JX#zH7%GrLaqLBc<&-&MTU9OIeS-<9n6vEiWct6VZM{dHd>56irG| z3m!c+x;I4)_CVmZzKQO)EpLb3>AFAFd?y*R+1361=MeVk!G-qesV@h2w&r`s$BRr| zcWcj*y@GSM`A+-v(e~A67fmWUx9NNyB znt&^bok#&&Cq8;5pCyQ?rbf;hQOwvy)FEqM(9|Q$q4pSkr#w?yfACxMpV>RS;QdbX zy^nMB8!snc`;)bwoWwap{JAF@JhO*6UtoT_)+%CTd-s^`qS=mJjY6L#CBZY%NKJKJ z2|ez6L9bK!&p8IczY4#%jpqfsjlUvUW00qrRLmHKr&22mo!21~j}D}d3pJF)fy;J- zYwa1Bx@Ok#r}w&sf1HE=72wwx(-INbsBic=dPup}1hJ0frXq6QSKIi!EK&wO;Q{3Q7G%fY+4I7G$Exq)y|=d- z^T3jV>cp(boO_+Um8>5`2g}}?y-;{wdx?_uwjasf`n#PnGT*!$eeC7^N7&mXW2)_* zr?VZiYUcDr{%@T*Xq3Ox$;&_b^D^brGj_K}d^WWt8>j>P?jPZW=YS9VNq7A{K1v1l zA|1P8gTt}wG-orsj~}+f&jF*40Tr*LePV2}d}42dtxYbD&&5t1&lWdfdkey_^L_%b zC!QNq{SCnm%=m_LjGTg#o$#P|IojX)9o|+J4z|8oK`c^V&GUQkkvgf-!e*FSpmJ!t zo#%G&{7z(W{7~wx{e4b0OV@|uz?(yK7tOt{FE3uaznn9$=#!=QLHC29`!Cg7>;LEN zP2l6M>-_)k1n~r!U~Ac^e(hOBd$?# z?R{hrs09|fxb}h`7NsrgvFh5H+-ZP90cFIJ-}Ci3X1+5`dcgkwJ|37(GT-m#{dwQl z=lv1weVssg+9LKRT`&45&-iY>&2zUn|DY5;CXZ$6g%`n_6XD5vXq|NS$KEw&_;H2e z{g{UfJL2Iw67pl(@e{hu>L2FC17UcqpP>AGH2zCq3FCgM@e%IYGM>DT@Ff~|SqCui zrRx9&w(|rV{AcO_JUa~hgzEs{=75itRRd7ITJ})6_btGpGhCvl=Y_$+UDPv+eY)r+f@#8=t2v{#SzeH>dWQ>R)+j6xe68 ze5QttXXFbRJpK?oHf%h#FC@H)?p_}VpVH^v2l_PlRPG8}kmU!}BOl&Q%NLT)AO7*6 z?>^4X44-UsKC7Xz(L?Caylow|_3%aoKFOE@t5cOfY`~@rZL)T^|Jm;OA0Iht<19Bh{b7ey#E>rY2|oT0^5+`+S;4{(1aY<7W>P&#^~u1NB~-y!*E7@6^vW zFwH+5nD%$-Ya5u<-|y@6;XRpn7h4W&$eXp}E#SN(2>zu7d)=^>n0G;5`3z@+mG>tH zYGk!!jQTnvCT0_jZ9hjw*AfAL{kJTT9!BpuxmCP7h&pyyZhd`3cgacjivKLH zmBhc7XL+sHA!onfn>&8`f$Xl4f&cxt)3Cd5pKWI0$ah?g{R`V&*=p&V0w*KB9@d1d zEd+k)Lx0x6#F+ekCVTKProPvRoFu^!I5mAlit9EwdotbF6MG++)|a2>@(Bk1$ARDE z`q05m;MC0HfFJcf)$2AgFQ+J^6TR*hY}Sq_A5a({4NMX8D5~*9$fMMPQzMt~{WtN4 z^>3dutH+-kIFepQ)`&Tn_4m`7BWZXfdk^1a4?YK`_vFrzlY-#HT{?69TWG!*E`t%8hndYj<563 zPl`#xIRAp+N=ee86&A!q4pK|MJO}$gJR^CJQSM!24K<9NfXLP{JkYLDn>;6o=4Ct8yeZ3A< zez&AOtbpznNK+&PNy^_#Ir$te4Dz>wE_n?|&xy z{bg};ugoc6>=uGC{Ji))18Z5FeW&fm2J$pv7-c_B2IH~SA)A(kgA;99POiq_vEDv! zZCdDg^>Q@x`IL5KC3a-)2eTu$e;Ylw($dYWHTT2Wkz!;)KFht#HWWW9hO7Tc#%DHp z$d4QKbiKi zy2?-fPmr-4%1mj$!Vb}Da`f%)UW9L`m$m(t*a z_sX`(hA3xQh;DK9hV(gc!DwxW^m##i3$TT4ND;ck$U3qXj!}I5Y{0wx9llxB!}Tmd zhck&)UVkJzR$1CbtRh{kSVb{Pwl2+Kcuf?4R|`yKfG^?$I;$zW%#GKanYf1h3m{* zy4B!j4Y<+FSY&^*kEcaL;m7L@otv8oj!Z8lI=%%M8-T9`IA>DZnn-?3^pU=5SP-OI z1}e5DKjnC76YDoD;QIqr->^QSp(S<%J-(eEV#|w2tJz_jo)1c?1RbCm0^FZKP$U~AMD^W{o&;4?gLJ( zseS7mwvXTH%Azrg4o#<)HyK!);jJO$=oSH6wS#LCa7{w5FK~MEEXVuj!TZhd<39Sy zGknUu@b~1Ehiy=tzMLAgksLtE|gSxM}#;^HaLDU-wEyoAHSDDen%4cDN|d{c7Jp;&mc*UQSe z2-iM`_3QVo3<-`64lZgGCYNSxsLQ4KzF)ziI7WL_Kc0u<;|`8+&aaVNS|jH|!f^N= zDcMo^!WNF=_%pyEzth+$7e5Ifov)kOe@Bhoe|X&&6xT3wwX1a{-+tX%?VsM!iQEbB zAbE>kKeskhI9-jcn)9D7jzMNBoeueD#WvuJ*w6UX9&ZuoDfkUdwTIKh-7h-XLo2u= zUz&wGPeb7@L&M_u^bift6n{^4vi8(&+4vK#l!KG53DYm1{mT~`%lg9ApiXcld-TLs z>kp@U3gGE*PeCO-mFX$S&~_=XHRP*?LB1S(uLrI|@(>ls@0gHYnTGtv98SCrke}2K zxJ=F9p33rSV&kiz$!gXf3tz>Mv%|=h)>c1_bfsYR{5(r|VQn*)m$e7MQ_OTTYmaqn zd)ukC#Z#5WE(P&C)|LH?_6hp#=N#~CY7eGoWCk(}U$v66ZtWX>TAVBMeh!Q$*f8v;`1nk1*c8?j|IO@89(Y$piafdT z;eN)?Yw2C{{3iRh8~diZX*;-WX3v_ZD8DXIX#G07EozLkDz(^EwswRDo!*PgoJ3%2f}t{Re~I_&kVNQtx8MW&wgE$Y>>*S?k% z*5js5c#3+G=d&+s@4P2$i#w?&rTw*BTm1H4GPYPf0ejI8R}W`)-%}Bb$K)r?S*Rp^ zhcBW-w&6q2TVZUD&c;c%c^^VP!+fXPeD8{f^HacSbemv(O1_9XIsP!Rr+8+LTFUwH<&kzXSIdXpKaOWZwTZNk zlFPFffZrr};Xgl%|HiWw?9T`|C5ntJiVDs6`#miMrG^pe`UM0KXd_&f)cJNSg~41XB?{a()9Vyx@o z5YERCU+l#X+h={D72YrW8G1tg!wW`tmm=48KG%P}CwpCN`nL3b`HPxEQ41}^mr35Q zJfUpwAK3Hh%Dd<3J-jbm1MRBUu-cthuK0n?VXsx5-O0tN>gMKI>gJ!a&!%g#l7lLj zPw&s(Pq**U!*bz=fTdR_urxe+`ZauPf}#E658?MbdSVTK7Cv`af4RPv6|;z&XW@5C z#xnj{vFm@0#w!fHZB0=9Eu&q1Pr2p6F1O52Vq1H^uH?ba1<=g+3{Nfz!}YwiRq5O^ z{GvQx0X;6tE9W_0^nSUwui`u3V{krjDPJGXFMrkXpy-&Lr{qox3_C3`WkD}T?eQU2sVPQOO! z;TtW_Hjy`i+Yxp$+T+Q_JhJCG0dT&?w+*qzH_#W`7H=&8U&}Flv1I*bu@c?#V zCw5RhXd8pM-)fl?xw|R&`j&P0j>YgonUC?|WnW)EoqB`E>7fUK9en!UD4i$G>5W#z~|Y4O<4o4t@3fIqhHvj99y2zX*RDj#N3s=CdYo{ z>a^v+qqzE8-MvohZ*{86ZZLvHuRbL67=(;9u?)K-VTGS)wkGq zvB=?S0B~6!yeM9kPY%%e1{;Jg^p$FBssZb4Pc!|*?vAem{fG6enZoyPk!{6))B5?? zW99B#t#^e#Th>aSQkE{}^A*5t_AMCcZGWJ|o<-{YjJ0nY;7u>L<{TMkc~5qZOlNsL z>~{jYucaGZ0!+hhdFarvmmfd2l(W1`gS=(4x+6P%GUqtGKJ+;#)u+{W;?MS!08r93C=WM;)!}YfzxKvvaY{tJvPe?xQcXKK{{=%?W zT~`oqefLuBC?&HK7zyOdDa&!bAiF+!ifLci2p`$P9uqa zXp2^q*I_S9pj#CB+1y-&c)YYdhK1+`wV`*d1-5X`DO{(qIwae!{~Ne8I>g~qFiH0|l2Z@mo6`PdE*>udkJ7!D zcMJON#-H4sP))k1o%ywMM%r zE$axT9aC?rsU!3LmOJyxqxeIu$nO$2k8QQ#m2f^ST`MrW`p<4}EqBsO#QuB_g8b2a zIs5bHROQ=SJ`v9q#ozhUv0BAO)G|zs@FM9O=(S-|MR~LLt7PAt&i4JX(%IHODe*dc zvts#j@h-Yfb#Er8}-qtj5pAIr-;O^#dsrPt14nye;{QLI)=%GVh9wB-N3Zy?<>k*B=;zI2E${AU7uA(AK4lD&UZ2R*##V77{alz_Iouv*NW{> zJnYvG>n6YcKd^qTP86SajtArSn)TP71P}J!J}b|DZ66Fz656J8{4ZME#;R>;%CFBqFwSPa!!w-U!9*JyuMTQk(x(?p!e~kpRYS!6&&1# z-qGxqces!E?VP_o=l=FZ>}vwqpM<_RO+VD&@(aQxa7a#b{ZR3Z$6c-;dgPB*7rs$q zbRp;VbRHC4c>e#fF1-DWbfMYP`HnwYZa=v$49i8XF5JTYOb!Fut|{PbOB7p#?j9*T zi&x+oLqBxRk}VnE(8x5tVOY<|zwmm-`Gp3~H}7}$2wB#mT z+c@{#=Ofl9R9;E&evO>h0hgDNUdiqO%zT~?{Nkk*J-G*)bGTl)5S>;gl{#^N1ZwLJ>M!pLiTt4@jkA9IIo5K34%`9a7LRX)ehkVROKGgef>N7VY zLmTnYS!=3f4H;s_tdTdL%eOM5d|WXyr234`x0l4nf^&oa8 zu5*Oy`I-lhE`UGh!>4OFBfqFRCL2B?0ZkQ~2~X3>`RluT&AG&jYw%0V+zHWr2;W(7 zfjy(-?Z5KS{rG)n{p;k659r)i&3A16x&fb1YlPpg=X>*f_-s+Q58J$hJa)BxM>>z4 z^^RJ59`(r|XXNX2XLxv9el9rAjlHImLu7uA@%a?nDAtl}`CN`-Eo-9+;+x;GxhLfS zbY6UkW)Rd?md^vf!ma+D+!x6@E2cApd-<+v)560YJ)Mr6MD0{`;~cf|tN6}t-nRjI zEf&4Nq3AJy_ik|X2%jlXJt5o^ANd5edCqBhdR*e@vDVQ;Yn(k^XBG@zc&K2=`eV!re=h8cdAlXO zz6!jF#?qIcgPuR&v-IJath>0AbqAed-T9$)FJ#^O`0V%oVtDVawy(HBerecVxc)X{ zFQ(Q5Z?|A(qp1` zdQI%}8hq~D{9M>Jmxk7S;SH0Haoc?4ugJX9*W{HqkryTo{x)Z4DY(ROg`>a z9A^Ct;$G$~d71h35-T%`8GIbpLL8RB$Cw!?P#W2HT47*%Gb|3MSPG#1rAVi`D1R_~(Fi2YPHLdTf_`I-Vb0XYGrxStp4> zcETUqojm3_xWYcteBd!PYIsubD401k-A5GW$L;7J6Jwh=Fo<8k`ert!>lF#ZvMz{i zx#O46AAb25{IUn#+A>MA?~2>gVw65%~^!=HfIT>dY~G$eoTxPdmJcucU`WtCr&Ev&4o^uh-1enbSsY`w4g1 zki(D;Q~pNt`nSEo>;z!b@4S8JxWLYvmyJ-Ly18$jvqkizAE-R{Z1iv>{`o0yQ`6y` zr+Jt4e?=qvnY>dt-vB+rwTYe3qm$ar3gsLw5TEc)>55kPJzT$0Y*-MgPe7*w-fs=p zZ=QOK9t~u%=1JRktNx4%ct-u7W5CZM`U5llo3<~!;m#nHJSReoAl%!S8Tm6X{b@0B zb*JJ7ookJlxIKA}V1(DxJ%9zwsLH2zydeHOwnB2~d)Sq;T4eQ{Ij^(`IrKg3@5D#u0LMeBOipS<)jI z@gipouHvU;_C@x-8hxEB8`3$>Mw|UU&wfpwjrU~wEC)Zg1AV=deY^;-3HM$;B_rC0 zk2f^?<%{e?aY+-htlXt?ft{WixIIX3Hu!PFB!S(O@BG~p9&vOA|75yyemDmn%=rK#Jttyl+53eu_@S|Y3ShT z+#RrzHSw7yjN%TD3f3+PVs|fLHr(N$c=ir-G51}TA3hK<^J{b_xi2_V4!$`u?26ry z%SMdqn|^Mq&tdA>)q1u!&n}PLrZdfwKb>Qit-T{W)l4e#hr}KKE8!0vu-$ zyPJJ1W*^=M?Icfj!1GaVo~)naqamIjxU*FJP{G~kdfzJKZ#8nbCTiz>>|zfuu$PC< z&YoX}ExSl}J>_kLZY9zE;rV6YlD`$V?_5udlz-TL%Mg-@W}Cnjzu~S!b;KJnua;Q8^b@{i^sXTKv~ z&I~c(PJj1(L8t4pJqh0QjuU(~-ferAGd(53lh4!0XDb0F)nWbYORFQI@k)a)&Az1e zjm>L>SDN72k>Jbhfp^!lW_R{4f9E>h^FiUCdlL9_e*-%V4=0H2gfrt8 zb`mpLzc3@qpOJhZ6I#>i(7{>jc^#_tMnaFB;7YdmW!BS~kdDLj4L={*n%oxIy7p`E z>fu<5+}DaA_$xD0=YPKaW^Dw14Y0@Z52~2WmVowWec8@P^geEw|3BT@QLEWW;)zR` zdFSguzW$ShZ%mFI-jR(?jK?0X4A5%#Kus+o%qk=TXiw%Zxhd>3vUPCvj2Lnm9xiwZ`V5>)8`1fd_YzYOkR54 zi=EG)T3NoCY43IUGr;9@v7&)_FE9>y^`S#UK9QLzu|)H3$*+Xx-G=2w`Ps0%_@0=n zfLrhVAoFfLjLU&heF`2w57l=L-8cJMw)jx?$J!p>cg{Ty?B_7+cwUsx(7LN4RYD(4T}kkC z$>dl$JrPECR-iZM62H_V%X}Z-!k%N7PWQ04%!i+lXX8`w9uK?c&1;bD`$P2%!RUMA z1*7Fn>4<{(H-Sw$TfKQD&d2GjKX483g!=J_lEI3Nz{|For z@L|sK&^KgyD$$8wW;ULusrIKmug&T6DZ+PD%qRUP8{_X1^)NmPjIuL&*4N@CFXYP8 zeLjNC^P|sa+CJc-_~pPR{al`B^z#ATfg+zh@@e=D{BNHWD`(#9=E=mC`Z*$;*|{Sza<^mnk6dp%I=&qpe*~X=Vx-&bO(8ws9lbiw z&7;%ZV%n#A`Ce7-f_ufnd@)(H03PLC%^W(;K^?&!wZki~0-Np<6ApW__a|n3B5Uur z;0x17ZSD@s=>8t@w_nf5;!Esv<>279UEp~K`!G3E@nSy0NyomP;lECWL7ZA7H*B(zlk5E*EX>C2I#hj{Ms7q+$ytwd!DwL{p&ofr||&x zuJ1OpPt}MeJLWv?#t8ggv@8iOyeze#kHdLw>GM3|0?oM-ANanV=8ZPDosntsPx8h1 z{S)BD%d@^Gm`!cY^)dQ9gm_Xj@N#+bkMk@HjUk?tP1!>}B0>xxcm#{jiDh_FwfUm> zL#!`6k3iq-0GDw$+iW!do|}W$D)6efEf=qo!OKR6*ADn<0I&+L;(L$Rmjq`TubL~3 zza!prc=fp);kPCSuX;}PRPDp}+IpNy2O0kY+}-T0VwN77fl0~q&Cjg^zCtukh;ix?%>&ZFrV%q2W>P?S=mYlXN_G#^i2? zn_Nvv&MaRWzk0Z?55onY3NCCw+D|(Izm{^&sU*a&VR$ljhF;^>LUk5&#vpXYKcL$M zm&q>+UpXqcX#Q!Kp9JTnvO%oT!Wznz310c|;dNzKuEs8%D)#ZX{bRMYNnOM~ zX1i zDz7IWSih(EZWG%isE@5B#-Aiz8%e1?)9}a*<&7_oySuCRHQ$b&<$Vpjt5NU4e@d|S z&-(=54$$$QE$Lz>Ygz2rPBArwW{ry**ffHGWUts-;R!y9YDXFFyzNs+oFmP&WXaPUQKW+&?ZoD!$r|jtow5 zo?Y|dc7m_>2HN=t{qlmRBL&Fs9&-G<*z5jCY8AD;p!GcB@O!q@^F7I|@)+M8`gZLI z?w6Ks-p*N$Aoy&}vJ0uN@%at#^8>@*_MY?arT<+N{|^6t`<_T@UJ?7I=GlC1@bnPo zWgTWlr}C7Cx&KDIRnIzB@7SERa*j(Db2kAss{w94h>2yKZtgU8Cg14gv^#vH`0DL@ zuqnVO9*v@xH3z2|`?(Yyvp1xdmCq5+_?W=Q(%~}zD_^y_ML#1%=O6Zl&THrlz)tL3 zrsvk?&^=5obAbtc>|rvwbKufhjofnpxv*H=*mD5)0>?aXIUk%Z_y|5XxN6G3Ys*{A zLX}?DUOS8XD&;4jE9|_b46b$vE@1F@8U}8{XZi$-&(#Sp{{YWf{aYOWM_~CoKFCd&*oF)GtaIDOMBboz;{0`R>kOhx)lIS!7Sel`C*baEy{OAMX<{LRMoeDSd zQ9N$W0v_q*T$n_ksmAxdYs+HIujRAoD_^>Kqx~%Woe2%UkOOBcy$oR*dj9ryzBB%A zY0vO?8+g2kxbE7*;OT+f3o@AdLB2vPt$PH-;|+6zR8tu~rQ;{vCjg%xQ0@K_U}>03 zU98OVlLtf)I08;vgRT{HV~baGYinp>~r=i1&iv(U}& zHT15TGdieiW39HKdDef!N4khRNxR`wb{~U1!CAxa(mf&FtlyqK*Vi3+werzDJ_lSS zi|Lo`M!)R&3!UCTchqCI$1gNBx3TcwDP`BdZF7|#-pzs+7`+bJ)awKtvO+p!H?$P* zrS&TC%O?wez6v-+2i-li3I1z3r!v)gR%NOVo>__A7y#~??g>(@=fi&n7WF@ufI~YY zz{9i*n40c^-sfAtLHS?#!Aan3y%7xHqNY(IC}Wi_bPLk~$2(?_i$D>IgOR!r0aa;jvh^cbJ1*_?`CqBYHfN6wuiF`2iCnoTzq%*XqL~SI!uNeDEvabmH68}ZqzC@>a z+E;DPzWBU=eXRzj{=g(1mv}2U9z?-Y_4zfQ;C+d=V#k9ZIBvd^xTNO8?q7W$e(%C( z5o?NfU*kXVkpK6zKEcydxMS+IJLNahgE0i$v*+rP;Ee$NFMQl}FLDG*H4?O7K&rOmwFI+nH%(IuOwbn43tE6 zlt+<|?BV_@aDNcqdyPG4UXS5p=dV7|qsOveym{{{zvv%1_%}gM#WXACz%RY>h-r|? zIiq8B?;(@7-M~*|^6L}%iA>%#BUblvMNoI}`bgcc{wc5SH`DU#j*hQPz1*Mtl=RiI zNa{7|zN2B9^^Di^&gr!o{M9c*o{oM19HKuZPc7VKy^}oo>ENy3|6h0mKL&5?)!+^M z8N7i%;qBn{0XU0*vpjH^!Q0d9rG5!`YX@&FC*tkgFy5Acx0Vlpw|0xS@3Gcv@Odpi z=VSlgX*etE9Ly!y8J&Ys%(me&VyY+es8Qyn8rSBfxN|2ZU6kaRqj&web`|=_^JAIf zc!?N{wdrLM5{o^sLrvg5RzD6vj8@tbH!JPyVm3lSX@!2c>UD zv0|%>6{F|c-?h^B)H)}xTxT0fh!NVJkLVsd6NBtPW|e!F&zcka7@Io(o9L-W+zkJG ze62a$#rAwA7AhbH$*H%l@I6i5hgScHoe5MNKf8_hNguKIx7KBRsnb30;(eDd16OW+ zXc|6M_|97C1E2F&eMo+Yi4*xLJ^5BE{(^V}S})dl7xsy*vFBa*cYk_;!uQnrzF(WG zD~l`6Tg~|uKl|qaaQ{>GB>HKs58}fNVPBp3FxFqpI`3)rHqH5q-iP@qduo72)RL|k z3~hDJwI14L;t*>Gq?0`^OITBWscen+n@l{y9tIiuW}R{E)OT9Nx{|96?{%DG&Tlq+ zEK4TG!mpCaWG%L5RFHa_`ezcKV@LvfxF1;qR%4gIyKpDEDCaqsp75`bCvVsvq?+-) z-r>D(6Gw;7jb7^By>}$OY;ArjADtlF>&~MRVwO_k3UluuzRG-jW78jN?i`d)Z14K@ zxY&IU_yZoT-wb?$p%q(a?;f=NaTw0!;O7?lo0Kaqb+Ludk#vLSu@n z`UC1{k>E}0QWGTS%2B<dV$;Pzc_gi?4oP#zW&wu`r6CYuNQydy?p5m_oBYElkMdO;PP~9Yq4~@ zmfzv08@;JBV@0m6?DG((>H~wvHk02JBn-_ikigG1e$#Jif1E!aD=cIYG8ZVlSjOjBJc@QInbRcQLK@+YfjF6PiR+XInBE`L)gQeN2v9;Q}1dA z=T%PMs;2)S@92rX?KOru50M`2_2^q$)9>Ztfu1HF@Urj~_R;V%J{o+Q&gB$S->2@{ z&izoT?;mB4uj30T1~9r87`4|G=-xM|_xC{e_C)t;ufE>jD@*tGioe@zWw<-KcV$TT zD*t#ZXR5Pw?@8b>dYJVGk#nzb^CZk!VyB0dv-lA_-2)u-1P9xgGcFvM^Dp^5!9jOy zPP)Ir&~muLK@)rJ3JjYvknJ69Pf$N zMkk+Szn6laU7o(^ja%G4KM1Xl-u=O8{RaB_bZLFB+o#QW$-Z|p{=4GyWB*Id6aFIa z!I`s*@sEnzSCe}Y-gTB4dwQ@9e5hx8UZ`Ise1BpoboD;7^(E3igrVm%>{IXaYsi1l zJC8s^@vr)}$74r*KZN*JKEqOcIrR^TCg&>-mAym`uVFvu@LA95cYQSW~n|ux}*EZQ4nsR#SJf(qsF|bRo=)IlWChLQ0E}-D{ycV`i9|vCPyK%oe z(KdZ`O-Ao&jsHY9s^0S7JkuGy7K>i!r#+L%J-=dS&Urledr*Boy7X-P+*eMnt0sG1 z{s6jal=#=*y$Vbw?|dp<1kn|43K8f0xC< z8R;sAgEP@p%N-8tS6hDJ9EQQ;$?&gSbMiIo<8(&`mcM3woDZU_UU2&qkDj(&axk7s zSB(Wu>s$7Uf6?u;g5Rz6^8!DF{C)?xKdk&-0!%wDtKNFkZ%>rp`y4&Q)549u7mk15 z59RU8&Mb#-^v`q$f39C+>x!B9SGvc~_X_9m-*1FJmt@DkdD!1B;$O4oHLR)kcNGJN zXFO@$&itta>&l;M{!_;}h23MR0?rlNS%lX9s4xD`e^7tEX3a#1wV7%42;Uh^56koP z)8F)G?xDkGpywo8>+vB}b0&whVtDd0b3Q=z8Ke7nmtuAD+AI1eE+>Ce)P4~;_@>bj zd|K)X&j(wT6INZW6`xK1ntV0QOz;0*#{~IqtqlSGRj`%1!sZ|tTr=rz@|p|C$D7`T zku_iDbFv|piUj2I@Wb+Z2V4E#m5*=2Kf}hjetP^y<$3wt4~2iTzu1=g1r@2Q_|8@2 z^7X8b1!BBYak0$_1@Rj9jL!9qtq#hy$9CSgiTy<<_pdp^z8^zAs>sop9-qj$BW@nT z`yQ)I*>jSrYjH+_ynu3b;>YX2r|>0w3s(kj^at5Bl_OVftuX$>|Ly=@?k3ZD1oaQ` zUG;3}`z^9x(DXKFs-Db?kqh;R4CkjkH&z-SV*cHYXPAd;{_b-M8K2{qyeDnLe$9D& zpX+$c`d`-8D%TNhmkn$9^~r76hw--`x)b^U!x`x{2j`jCunP=L3*w#m+clgW&GNTT z0*|p_tS=k(f8}pq?{IKNHq7Cm6B~BG`#`z=_U{@b3kC7Nayl{T-f=Sg%Z4?4cpJ7t zd4{t-1g$%FZ}?!_xQ<`=H+hCfTM9zd6x{{d}eU zT~{{j`q1Cc(1scKpK&QVRcC>g0y{1PFqZ^Yg!A8PV74`5TVF(xOQf8Ggso1Y>7>AcO&`KhIs zRg_=tctg29YMW*r_!qGQ!m-cQs-9uvs}ge_pjCBZVj#r^E@y4_`DOMgc+xpq>X3@B z(tW(ZY|m-f+^qV}u|WrNQ;`S(UyNAu!DoR`on5k8i#Ps5T+xKbY<{`lgFZ#Q0^d9wF?0#_(v*P;SrMs^8;0rUyD19zba^ros z^f@adGX?Phz?!_Ayu=9ldv9M%&y?zxod5fu44le0?{yurhk_=d$lV9om$@^5V zGjM#o6P{CjO1e+JvZ1Ntxm#Xdbm*lQ*B_%s^_;I!c|C{@{*3B2Rt~zwp9HSXXgN4c zOJr6xV_$bx9!&IWHawTkB^fy1y5rfiRhrl>i~ z>v6r4J@_^Kds~nf<;H~PS>Sgc_~ksybH&VLm<2Diah5Wa+dH7MPJ6(${FC%K7I?wd z28lxqUqs_KuwU_n&RgL-jL^S_g6oy!CM>0yA*N!E@cr?Pov5qoyi;z&H1ZS(F5tuOpo zd*|X+*8U20iHqDlxzU`pW$!Exmc)CC2OX^&ZqDeFh4^t^c1_JH=f2l$9yEQTh6lfx z%Y);Wm>%~qeNMOUvL#{ZW9CIV`V2AjDY7;8G<}LrpwDH%A-bp+%g6E3yP`|(-R@p4 zro%IyE_+$KGuixn7%%V*&z#;pE1k$|aSpC>@5=FTNw0Z%&FI_W_)3o-=?Lf(&N;71 z>jtBzBz4&BuihSPgC+Vk9Gf!e&xvS0+g9eZnLVn`nD_6*GBeos^S~~7nZpb<{=Sg!`Lj5- z|4)5*Me$F87h@l0DDQ*~4#hgn*zXhOusXl7IlHE6{Koy&+4s6xJ!WU&oyt%AiG4Qh zC+gYeJ^xrfwz&5d&G-{7_!CRfThZZV&y|0EgrFizqd@f$kcEm z%$k*c@b&DBPs#aDbf>jX>Lbtg->!AM=ilYm^gg9`VUP zaIT!%d(9^NIumoo|I%>|>m3m6tam_r)Slbe^8sti3}5g}6LOV6 zuEKNH9>Z32Ayb<>ld0>#yO*gufc#e>rVu0 z6>~Z}!L6sE^~o|e@JBNqrdP=7vs@m^?Vq_0_~a`#gz_m(E;bpA%~5Q!Gwl<|Pt3$7 z9>zx;jJdQA!>8P6oA(*ni|`{qd#bzV&%^0+1s+bDN9`6LVBpNY^qjFD6GamioHuIXqZI%(9p{dK(ICKb!ExOt~)c zG(~ZgId7D$1Ns1;as{R?SlXNn)Xg1h0i6XCYA1hV1wd6Uj! zz;6KeysN9XehJvMzGj=s{!hj~8H23HfMKPJVX*Zn>sM#wd?zq8kn=M20-kMpamk^= znFH^tKsSzYy3xx<44)+94+Zg?SzEEkv7Vb#CwBbBC>G&CNQq z))`-A)-R4<$@+`wDP97N)U&E{2lBIbQ)B8c9YS33z?e)PPj@ixgRVa-h^3Zchh|T{ z$jpSRke+dIs68)O7GI_Lz2L*=TC#Fc!0De~&U=<)&l<=L`+tw3Cq{O>iJY6@(a$5m zmKbSjA6whbv;3oZEflcwCqW$elLKiNJLXQwZyx$i!A zmq4fw&FFznV9teC@0K4J_N_EmbsjzLuGejaa&Xh^8fo9^bZKPv1RU$#`Bcg8`cPj} z9Xz96S~IVOTB2xS^EN%8h0jyO(l+v~uVrWv&ew^LbN8lmHOgIt^S8pw-=L?Sz!wSS zE;jodUJv9=F|?&ckN8|i3)c%-lZXD4omzj$@@lw8@}=*c8UIRmbjFW)r{Kpe;NZjX z;*+P~#U82`(N`8@@1^{^iQ2Au^aO7y^!p0>SF&a1$|+~t2~Ymdy)OTo7nph5o?pBi zsn(m$Z$i5^dR}trr!~$$4c`2zU8_^xJiT>@W8l#v6RqFY10C@MI-(bR*&AKn5$V}J zADX;|&zQ*X4PPRo`Mpej-s_0#!+hDv-i}PHEYIEFYv_+R;L)S-=H` zmyGO*zUbv_!mZf*TZxloB*?YL)1MK1T&>qsglrB&Bx5!zauYA(&-rk^-yQ71!EbWIdma3p+33o2?!x9bJs&*} z3}@>1h3)f=z#v)6)epJ6*OwgVk;`Sj^W#H+v;Oikh_#lW1Bad%Yb^)%h9x<%*3hnF ztuNq9oJp*e-Y5Bs^Gvh@^7Qs@K+VDObFXwR+|%Um*_W?x zNJi`N-4?Yh(zzg$N77kk`Ay!2^YDY_;|DFkC;I4jEIhKci=6*DAAM7e zzLEc$=lpKfCxPRDYVV&G9DLvS+~~|AeC>JYhxvB>72ap8&hZ(4!TRzU|NHfhbDk}w zhWg&zx(;`TLZTR2b_-JVy@;U)23s4~2IWmR1$Q^(Ul?yZ#B;?l{*EuuE5_gPf!1>O z%uTVoKl4h*IV<>mN7ZHR`+)WRULSw=_=2)`Ri9mP7WZc1i^O<#vd+@>yR@dBef*w1 zo3(cZHQVzi{z_{+#u~3#fqmR4+fB}lvp^fRGoO1!a9fhQLW=sv?p_@9yJC0n%`HWJ zgS$CX)psp4SjTtQK#zpW$MxepT;fvRGa7u10vDr*JGyg@i}+)~Fz#Z#fgC;W+7vnW zio}iJ#pN14!gKnr{;v7l%8jWOmbjGfj0Sh3m@#oV`G$eu_{xBu+*s;<)-59kH3^@! z72KHl3ivzwuQPV@Q21HByJ;Z#!OQI$tZR&Q0kThD%!{VWB}`+;*?=$)F+Wao-2 z?^qIl`V8K^7dw(5MjT9U>-H#h*y_*KygKL2+Ia=lha%g9@+5nU&~ue!ZxP$awPFhP zX+HL;i9Ht<*tjK+I~p7Kd;@NfmV&&`k`+8`f`<;dI;gAc%lcVzt zPnsSqo^K*gA|ASDNU&lC`cyw>V(Zk~&7LOgju!1N>QS_xnd9betG%&U`EF(u7PG%7 z{bofAgK~7j3ZKu*kJ@@fUM#3N@>|YX0#|W0Guwiq+0c=AEw)AH%?;m9pytl+#J7io zvVUoI_nT_Ae9@|)dBXEKy`w&IHqKnD#sIw)%D4=oqV=gIUVcwN-ztI!j^)O%Vk_O%&&7;v5h ze+ATg2T_|DhJG60^pnr`4R`u!0Ov*N?WQ~0UB>wEg!)K4(a>4MlRE2r97iTaM@%Y4T_&+jV8>#hY) z>ySZ3 z;iLh)qo7^*_J7m7LGw5IDRcj(c+URqk`w+moWBj?ews#TW4|-dd}lIe2mHJH@twJM zF_RCUE_*NfZe}n2*~;n6Uz;pe%Z#i#X^`ZVjUOaL^aJPI?|NH*I*SF|*s@r7i2=#;($A1FfmJt(q8!CHt z&cTe$oPduNg#PF4WeIiT_j{e2v0dZX|9EG+z?HXM)!Q`uoDMT` zT5Qi*8#%SJz`{Pm&|8sH@Y#%v+FBSgIu02fkDo^ER_6kTb|Rz0vSc(G|F8dHw&}uH zc_rsWWiS7Vd!LfLXCU+(5anIGPkzh>YE(_P*yPOzq#7sIp82g}SXfgk)F zP%}G|&&%0EGq|_{8n1y5tliIxZ`g$Y%U(vamx|C{rn7GDUbKgXGWH=qA!jcyX)k5j zdy$>Y-HU2$+Q*6yxQ~By``E)C!ZSdNIfup_V&)8R61^;5-p{<0h|U0mEA5>eo#~}i zO>U3N`LyzdI%1E89!?2e%U zb=8Z3U2u0GgVM7*!1+#e!!G=*W@zxjx>)%h4UQlWb{E0@@1tKygt}RpMBVWPD)O&@y*UwdB8 z;LFDx|Kadv{Qq6~#{Vz*n(lNfJoxW_9#yw8FQ`%6k=Pcb?xB7=`QdTLgMO1QTm*j= z26z2%bui_J{rXM1Fv92agX;2a$jF9ui+(E@iW4QAGx)}qzRY(|>5TEX6s{s33S#J^(QpzJKs$-QU3{YvGT8_-A`?TYvu6yiGRas`7En zo@lulI|=OQ+Wjqmnfpjf5c^gT6faxN?<5PBuIf>kyQQA*swZmS7r~?U$@?Os?Y=$+ zj9N$Q0>h6d!6(#|4wgpnVfncYzMIvLJ9TDGAKAfk{WRB&_jy=mF#A-rn)KAT!mxURU#ZXmIxr6G7DvMNj%aCM2Fh@6N@R+yh>)Bgy=4Zu#j2Z`BR} zhYk1Gxu=ig-z8`8_ldN`Z2r?xOp}_IwOW& zu)P?Gjo|A};4c2=7W!byn|s~6WqLsX59PHZD-(29B>cR!Q-$$sc#nUFcu4Qjdz+wX zJ+y6ru2T)&@o%sN)Kb`swT-3t6%F7u0lt#pI3Ji3>>~-x!k==}8NOtGk>eBM_S7D9 zT`P8LC%SIm808Y82F@06mhs~YwcpLkDU<=HXxPI0)BVJ(SWu$?JbwKC{ZEwiST?+{=l;2o$eWe$E@r|EXR$Mi&)cdT*mXu2JKa?eZ8NZ&NWL-MzL9&84* z)>`5b;n~m+U#urOS@(=ecYXx>=l}gD(b&vE`No#F`M1{1Gk>?|sE+cx-N3p5-Dz|~ zNOu;YI}f8v$U7LCDi2nLuPoZOUWhILH;Quy^6#sI$bOxxZq1LP$Cf@&j1Jq&@AmN> z;dJcHcev&wb?DNbFn7q0g=SPJQZ%3l*PBhrNtn|G=!Ok=THmWzm9V*X{@oUio&{|Qo|yVWhIfK{i;JwED7G61&!Ll@ja31 z^1aYb`+c1A<#_g^*N;pz{BltIB07s#yj%|#jb}sO zQSi!Rj!#C5h5@uh7eMb9g2=Lk;79#0if25{k3g@6iO4rJZ$e(1MR)ceHL{Zzf0+G4 zi-WD`#7)c$55R+Z*5pr=V)y15I?>xn9xqWPy<>ZFoUdhgFe3O^qsipU$dy%bwgR3~ z?~cB&{7Vy`8<}m;O1)({>phOFK8UP7h^#({tUht?)sOxn5?%HSWc3%vm+pVLr023| zVXyrwk-PeC+$Vvo4r7+X>&WU6WOb>N)iv}!#gWyE(z4p!$m&w$`)A<)+DL@?gx}b* z99ex0zUguN!3XNl3ESwO>h^BOgw`8^)T@`H8*979|GrsW;2&8`JP8fvbdCQ9g#S6@ zPQhb6GHT=iy_a}Wb{$*5&oC~ZV6DNDDdb-{VdcFBqx;qy9Z+cQDo7d~fUUcnyob~M zt9Z`n57zKJA^ymRFOs#QId+EcPX`|Hr{rIHKsw;Qu>2dDx4Pg@zmoiGzAEx>{!JbM z8oz1&tvpg;yvTfCw!0{v?{q|pzrV|W1|IawAIaOVXaC#K0rPvxkC#yZ+?a1+Ce_8fGx1igym(cwUz$4wS8dDo}uUo;_6Y$eR z@Y6%^(?jsn%jo{2(D^9*bQInHMoBMpfA9UHhm?T{7~h)BQ6YKkan7|Nb;T z^)URj3BSG&7!557n0E^d1L3JQ^nc0m`yUt{>Ap<<;jQpg!wC54QS>x>o=BhAPU-&} zB|GX9v$G&P-99DW8i8Cwlhzxt+mGs;QXX?^gShx$BYZG}`u1RW+3^2EQGf2*GV zjV*J`zYF8HnxFac+2*I^k(vA(+hBU^W#@-u7rp-|J1;#q8rv`myS5AcHxS)58QPEI zXG?zZ{@s6B^1$vOU|zC4KhVH_n>F1mN@ zqt`}?mR$>fU3+}-{_!QH%XSxZgKyz4bkFYX!~rvhjXVN>HKDHt!(Z_Kn>*p74d|<8 zWLv&P6Lwd>-{ksJo5AZYc)l6F+VGdf59|nvm#OCXBEJ*;71!I@?UoOk@$INXq>?Me z50b---FQ^^xf0yW#cse0h7VSPC!Ued-SQOA1V!dv+DYK2;hu~iC|_H5Ez1w|d42iW z)%bzZTk->qzs&E3|B`2U|AHJp&*t>MvE?{__y4Xp|F*nzn17eKoLiz>z+H70#y|TK z-z|nl-D1b@r2kT}wf^Vh>ub2H>-}CIOXu5?yCUU{@I({-RWrK0VRVq9-jhlogUXAH zE9SoSNmrLIiSYBgG7vu*+gQ#11ebCt%A;p` zg`=kD)8Z3Gg{E&BML6+B#@@Ei-nsa{Y zr4+t>zNHjg%TLjLTdh2+TpRj^7^O7+(tm5#xbitA@v=$L@|b3N@lNuLCMT3&4U-GH zAUhW%-y)q0;x2Nphk65dIuFFNb=~Q$fBo_Fxs|r-A3Ah@&vnPzE(@NE5GUm2z^dGk z_`>Ig)&ZaRTW}=VXFWJ+04K^V%BHFQ@oRFr!gCAXX@yoxsevWHWg<~pu3i!StqB^e zCbp`F?-M2la`n`Up|!2+8oVcFU~j;)-ZgdHJn}t*?@9t^y@S)&Qxh(ZsRyUx*>3=+ ziA@$nOl*R`#vQQH_6OhTF!@^3(~~oMydJ-(btpO>7_5EF%pdpo{0Z=!zy|}_=TLM! zaAwUS7mgf1^e9-EHH%#Q;AhTj7Wr?`%bL+Cy{4gfUgC4z=~)*49`(E!^fmRG zgzYobjOcNb$R!p8x9tVLGss<$6HATb`KzMfhxoGpf%2Mq;>%|I$wp*h9Q>p6xF>w? z2P3k+_t$)n`axga1KbZ=(?Jbr74UU%H{A|Cho6sde@Fk9y4Or0XX)3ugy(fxR|YY>*_s_DhoeIV4=5A+ZE*DNZ`=*6sh{*AVl z|K`se?YbdXqMd5_H^%O+4bjZx*B03NddU#c?CcE9u#*i{@Wc%GVGcDBY-S;HwlT|qgm2(=lb0~HL-n}i$=_I^oP%^wM6xHoMxLanO#TB~TR&0!j-5fTw!tU; z@Sk?eRv-t7n{2*cbsp&w-9ZMgAMm!u)R3M2vw0YI2ifJ!kb6bC&)#pT?=@Z;n0_`h zx6tLmum1BNU_8z&}!Mb{%-rYRIp1*h;o0UZFRBzbWFIHDKtfKC*%PQ+y))v*ZJyu-T z{#3MXN2%@M_BKa$K75wE1w3YQK1Oewy{us`W*@+y^;*(&AWsDxNnm=w#7EY~IK6$q z+Zdg#Q=ZWFHJ8M%U~l2tLp}OfHt0vp^)a;vw>Rlpt!Hvqtg$mxilI(P zb*=xLz2`#K_UkI=WcUmmXnk8h>OZmw+k3M0f57_Ko|I~J4UeF|;IpPVvAch`x1;tG z=rL=PvuiLX*s|NLK74#%jy??AvfE>K{}(w9Z@=oeFYNtZ=Vf%E{KauWYC8Gr-HA_| zcx5s^q0a6JS9ZpBS-fFfur+~S*`L_a&!Xmq#WRDop)WU_sJx=Cq-O`few&5D!lROk>eAcvH5Bsck-dZ&NM{52$R~4S?t-6BzmPfefO?@&Oh$Dde;0F4~ z<@2g(T4W~bkm(iEM znHqxg24pS-YrAw<2-fT1nd`{^bc1JHOlIc7%sdI4GedAj6=woh6#fw3sCUomQ5&yG z*9GFG@$@WCVxAkYtb_MG3~77bp~T4cu`IG2>F3lbX+rjdfN@~3wbluP3nmo!m{+R!;$GxgeRJ@oh`x@ zI=bx!dg`&GI*0Kpx-ko9?BlE0ohN2pWN_Bq*`2RITh14lyLCld8?zL6@JqzDE+#M9|^gHd*%rQr2M2X{<636R1CB*TgTpT~DFlyrX;m5C8HjFsF6@4L| z*S%`ydGMk+@3QBmMz7iXKUC_X1QI9vI20}pb#DI}+w@gX@??#9ci@ak8p8|HP$E+Q$WZkkzUi;&z zu4Ci*?6FNY6}{a_Y;53qrz(WsOW`eG%!-G-ETX?ViH8q_|FnIq22o(&y3)^Rs6jw@j3pU-@b#t4;n=Newb)$V~5v( zYbxJaIO(tXPJ#K(V4fesdqjVo!EfX{)A-K%guYW~zB7dH3^m`eHeCB=p2v#alM47w zk@?Qh?y=M``fsd_jK&Y~9TSr$^qpe!ond@uxcQFNMf>>9OxB7fNAaC#dj!8_I6CH{ z0=-9P;Y;J&`Hu23>ho6ZNI$K8ikSY5x?0(%K56@uTmbFo;(IbXKs=k6YwN(O>u37( z-7F$vPt~fdFC(3Adi4#T%!W^VufF^my+`@mAwOSkW)b;$I`V}igFX%@aJIzzNA~-)?P*a)cY5|62in&n4fyM!uVa%igb&u_I%Fsrh!|JLJjqg#%MPFzMXs zlF;4rz_U3FkJSmHT|xYRfkSway-hk<&g#`NYujEee5E%OXAg7hwy>7z)neTe;yUKa zgk?Fsrtj6VK3_Dxoi$q)@GN%2pGA~UpqPi+^wtjS0<|zZ7ypLX)>yIba=oDDAHQbL ze(ef^XM}(4UGLGevTJ&-VSM%02L0sklP?1w{&~(CUTdGX=ea`9SJ5*f97wmbAL9dt zXK35l*Pi8QHTbY|89Y83r&v0eJ%JPD9t7XD*lyJVL;7vA*Ugz&S9B}(NU#}xw)h+dkA?5S6klhZRfiu8 zZ}U^J#Sq|XhClY8ulAy^_Qk5Venm4YCV!6Dvb0^XmFD3|uj;4r?QQViWcB&X2~sWi zwXIb_DiR?tR7j49`{Ewwj`vBNUr5fzt|$(}4{WH?j23!~*|+p)lJ`nhzZ!d!-V^Rf zzcH3d%!#E)V)jLElV7{C=Ez zSU%f6oBVjw@s8SR>Qqh8Z8f~J2Hsfqe7q2jV>T>*@X+)pesql4pwIbOMm!|{su_KuIL5>Y^`Xk^&e4u^Y13c;> zC)Pf&o|s;`7awp!61*|{t5&r=>BV(}D#{H`_`PDC*HZrMbH3>r=x^{CY3H6+i(}ws zKCX!cd@j4*@hdfXaIF3p`Q4mDbn)G0?cwq;&pN$6ns|bq0L?iJ<*?H}kK#P-=P)t4 z-B&bz75h?tK%ZYwE(5%nzriCz_`TqjeS6%&yAgO>fmc3Ro$<-+{OT6)oHRLAe`YiT z??S=Ldz;DMC?-w!o3n=cJxYO@I^A8HLVlX!;U&(fbW&66Z_+{EFP}JEKU&kdemkICz+eY^TDLj+c2YN5;cM996YIls{twt?6YrwG zD$NTI*_@uK0l*6<)BwZ_^!?bhYh zSNI%>@}~a_-4z@C8}Nx21RMQy?T;VL&Ns?$F!yy5PYxj8sPmR>z?U%nkjf`#;QH-9 z0~c$XJOTOZHh9(cMLPK!Pn-o@x6B%TS1EA0`uGZ;W7Ir5!>7jo>lXj2gU#m$l}mhZ zXQqzxS?08Ba~{THU^f;(WYibS9FXBX>BgB6wMo?X*GU)I(C`?kqdCFO4b z^F+?Qw4<8_2i144|6J^q=BpMRLU+$@;{29$ykh>VhRBNA) z{$FHsa)$pFBl8LHTn#Q&2T+~N*nfWaG4N@6lX*@)iR582bf1WR8X%t^o^!h1z&9P( z{CZ9B)mUP$BKkJwv9{L5ey;HLT%s~8V@FM@Em_ExEzO%{c*s@5m^-7rLW^hBSA_jH{Sv%$v3!L;7LO1O7US!Wb>}cWee$4B zm^K~%lv!W2QBTe3(&oFYy%L@DD007;cw)&Z;#uWiu6Dfcaohm@Cxd6%u~o*7ac%*b zX$D^&ufGzEd{20-=l4nQm;jFjJZJLI;8A&`AACq$PR+rk_*(cZdez=J=5g2=k3XJ+ z$5Zk6cyMOVz6J5ItUHd+I>$jg*8W&@lB zAelCFl#K^p(g%sly+1PauCUB`J-!r~OQzw8#s>h8^!ls(6b`)JG&LD?=jV51bf@Yt zy7x7$KSvjs`ocAz;C$%lqO9|w#pD*F=Snsr7mY%e)?7sX?~$VN#LGcyXpfTpeft#e zf2XP->yGKi(KR|-n!J6Usg;il)!?Krb8F@2EP1as@iKU;g(n`Beww@GpBK?X#P1gM zWA+H+63poEX82F?|#Bby; z7jPc9Dk!bF=dNk*PRcL)RTX-rsg#;ezmL>h0ADw77P7D#pWp6YbFMxY->1(j)?e1A zM!kp)-RA1^=JgW>)%4cqUYrr9cX9pa`qgyjbNYR6oLwWGyO#Hx=fC||X6DL3yB>aT zagFvPxNVPieq8X60e;Cv65f!UbaeEr>*(mkf4%DxH?Y?c-~?H@=Yx8Rw=mk~ZMnwU*7EQju zKEA|^p9!Wv0~=D*o=5%L_$@cTepe8m$U9md zrl+-U@N_G@QC7%VHTscSHfwfFa9eS(=}jZkF&Otn#{QEe|u;lxTd1eQ;Gz@PQdRgDo z-R8}Ln;a#%wyj=I-y*u)6x*urG+c_lW)Jmz&-g7jao!49Ss43#&5M$my?x-LMc*$p zI$Sg^z@FyEFGk)Q@LMFq`SMM8hx|L&Yr4Yc1&^TTe6PK&8M$9j{T>AfL`x5vl zt8@KtCd*`FtF)r10RjX81x1A^ZJ8uMSX|mlwJmK~f~;C=X@!=n3A;5aOtDQXZCN5q z1{bbNHPv1=S=9E5&}w`6w`4L&CLt(`c%Iul@%EPzSI7l&QUhrh8!hwKd?n)jhB{**;jsF<|vKtgGa^v+y$W90Nhub3Z}e^#PrErF{h3( zAxDr3rm%b_?jEpS)cPtFI=!0!Q>dHEOa7n^-3qzX&gT&Of-w(yCf<}$Kb(sF(XGha zi2cEyF|;v6Y{^)MpNTy8fM`u=hVm`6k4E2?I!@MrWT-PT$T5n&%YBp`XaWYF*YB4r z^UfmIt74u!XWVAV`^02yhW2@{`g*H;4&w?P#t%kguYkAjP`PKuJ)E_Z^^ixL zvmI*^IbP^Im;du|=ED4?o`>!wq~lGThwk?kZyq&j9*ikmjX9DRNMF!Z#2GI@UxDfL zw-p~4^d)UYzhA`*8kb356Bo~3nDkw)a7E?b@^m5h`t@f$tUK_^AJ8iZvZ4s@IrlW^ zy0Qz{gg;*an-HJn_cYIM0{^tjB?#KbR*O@aCxdinrXWoc3r+(TGJHi9r z;n_vT%NsB*ymuy^Y zk;+q&ulK~r6M4sw=4)e*3ffLH=Aiee-k-$pjE|Z4$=7Luu33Q(56JjfU%clUvqmKq zT7KEUk%*T1PM?lwc@#L7LKpVXe2Sl`zh;3?$AV9%!zP;ro9r&oX|`dLwJbj`_?n*` z=di~Pz#f}}&j(>E&Bb@7+y z=g>COvL+qpzqDN@Y%;7L?V$#ICz=Dn??m19o$zV7W>~9-!7pPF7o=}1Vi}NYO5X_l z>%@B0+Fn^v%X`Feh7@*! ztfgvIc1mlkopP9Vif2x&okE`EbCR%A4zq9jN3&yX0{#7Jwda|a)pfN?>c|nB zauUVz0qLgTP<^tt%9EHzb$L2^*;F$ z@Q{|RpsB8z*7STIc%DJu8Ri;TD@{Dw{%6m6NzX2UqrjtW{@aRdoB!0lA>W3^vUr}d)=P=J^))8x(t^iF%odx)YdY3%P zn%0e&i_o>OSzo6-!!t@?=b-P(+a=HwV}a{6D^9qV+5x)DzHGWc+WD zlFy}-XV~`>Fb|)SXPgIRn3P|(?eoqz;e#ugMGQhGz%MSsT1-%D!C2Nd%)^JZ;QfJ| zgVec*f2sF(D_;2;FzDais_=yIT%Kp13%S7WGM+=()C`=g5v&K!Iz?|ca8h=fGU{n! zPlpN=oo0Uw`l(;4wU;A&ovaju5%2R$(XdZG?`q51(G4$`QNlf}Rn?CDs?QORn!kwZ8RgeR(F!j-QLXkC5}<0Y1hJ zxYjy;F3wj0ug*<6*Zd&Xd?IjaT|nK!JgWJgzQlX4ovjk};%Zw57F8o~50tuObr|`eN;NF|T`G#(afe0J>#? zZmdaV&S55OK-y0tj-vc~xkqf;b>Z5Mz`BBVlwq2FQ6B;E46Zlxc|%lQns+u*255gL z8+81Cz(jg&0=@pO@R6tPsZE?~Tn2pHw+V8MVr?7mv~AU82s%?2b!y7JJT1)$wvW|Al z<&bqar&ZfV8xsFrL&Y2!s}VNPfmzZ9T5cf*v4OfFKhOo=;pat+hOhX&h|$2#6yJmG z^RoP&jECUwWhypG|9mwRFie4jUvqa#mo%~}TeYFdXE z)x0;VxaO3v1ZS|jBA(U_@wDzWr}p)zY3aSRR^N?6Sy_N*@!S+KvR2uc(@xrTel@2w z-q{0e#WT1q*wcmRFUIpreWBOc!;cs^HqJnx-)2@TF4mbsSxdfa>;+ykc&}wgPBf0& zxV}rx81zJZPu1kmHe)Q!uERj@SI9=@Vx`QH_W&rnLC|1>q5*Sunr|p`7*7*-_>ng$ zyMe6|F*V+O&U!7@VvsJ3H_)c1TqIrOnb@4bb%HMGfr304JEINRsO;j-;QVm{oWv+% ze+Eu@Cwg)?JqoA5hj>~l^{G5J@eLJs=**maDa?uf$XEyMbsWn{`y;3=p)J7J+F-0n zKJ1~3rT^#ukFai2ScAwtG`xtO;&|m=aKjEQzQEppwOsD~#^oj6M%)u9>I$JdL(_bb zE0?xaS?~$?Ec5qVvlG>ARau}5|JLTmn0JD|)%WFfq;00ujnzsw@|o0+ zjLBR`cbt~rjp|2!x6FtOAZICJvE*&q_@-aInKr(VD>3m(AyXa(9fUj)as;t%(2>uM z6BCHa55_CgfSEDMexO6AV*>E=sLSEQNWM=I`_u&3-}e9{{XcK+;?5o_#&36 z=%{(gwyov4LFQm>f5g^LqZB`BTUygm_cL)p4l5fvs-I{>OFCu;4g*UN{N%x2D!ss7 zYI#uZrC=G>Y7Tg40pn!(fqd+h+mWLyQSksFM=rz{Lf5wEi*(W!`YswPQhdRYr$;Z zsZlsP%R5Di*5sWF*A*#M;Ni1VEFRn1FguAGdk85fi}g zpM)>T{o3yZ=p?*yzbB&yKYk$o-W|RfXTb0b^DNGE^stQj{GTND`HSiELoNl8H`FCSZ<2459APt!*D`xr9_|CRh8X(a2=wX8Dz{eK8wIy0=$e-vhF0_^X$?&neLC#(R{uqM#i(%-Ufj$D^k%+;KM*YPHK5u`cmu1xdPU|D@Kj`I|axSf3 zOnpRfayn?99%-oV=dJ(99SK!iwRNTG(Y!EX)Kh{VxFZK117DPmjRZd^j?{ltjL*UL zs-Ec$4tBjzigW$p={Jdfd_mlu#(sRkb#Bp9FFXzLPM^;^7dApx&vD)s*eqjEk5qx) zrCI2corNCQ`PtTebMZd?2Jo}XdI7%pX{+K!wIA7QG(E5xbq+XNF|q*|cphBr-L!rp z&${EzGgYKJ_c_j0+{n*V+@O35{Jd7}4ji!#t+>B5UTKsp1_E{NBnh zNxP+D6l%PDvd-2GzNY^(OPrzjqJJ9rq!FLp?34bCUhj>gQ1b(9n|I6cK1JOMYq^$w z3H_W9e|C3wRW@L}vFY-Av<037-oB{css|SL+`h7g3qQY)@0xQof2OTB0kmKqG-s66 zGwFUMi+HbeexN(PLz&C7zj6DOtaf9MuyFrP->So?b~VvgG9_}fUUC-~@ac=}faA8kS}8rngnYM!o}@b~FOe18+? z{ppQX&!qjXh4RknpJNQpJD#rDOWRb;+qOaUyhC4?^KQhPqjm`9%zYrw!^PyRc545Y z`iA~H>qtaw7rY?n?g`wFxodqx+ph@NCSd+q!5c*!sR;AuJ{p$}npd1MC3cpnWw?(WwEyOPVeVBwbd4mL^>o2Z_nk2)f8Tji$-(KoinKcKcK@L^Z#-x z^PeN*1Sy4dGCnWInz&L?4EIR>T$Ujs3T+7y^paM z^nTTROMNcRD6738eUA8hgFZ+6y^$Sw7W6Uq#ynsZW7UlovSFz@V@N((9mhv;^2x3x zl25o_&AoE>?flyWGUUkD$HHC7{js z2cTn=ULmoW!nx2e9!ds5s}Cw^-0Dcw)`A;=BH3~nr% z<@1hJx@$ai7w*nDU5uW}A=J@tZ*HslT&C4C?q|?XnV;E!&t&5>?4w+VXR?oS1@v

    #X#-=EDSijELnzUWg0}}=R;Ordu zryO{s{HN~rw5Cd%ZzrJ5clxJ5o6(Xs*LRXO_oP4@ZObH*$!=qB4Z$2FZNA(o+FX)= zHkb8Hfi^=VZT?x%IldYA8PevJS8ch|+(+*zNt>b+<<6geV#^&7S9~EY`TR?7Nt53K zLud9<@V4al(uMfteuF0WUnyt;A39y|OR6+k?WD;MQlLq$q{$Fq=nPGM^BL0QI)f&6 z^j0)MPeIC;RB2M|pvhfBQ=my3Vpy=VbAh2VG`aILq{&ItSFrwqGWYt+1Wk5^>&6J0 z^hL~sKJw~I)5M)4ZOH5Lo)O+d68=J(yt6e)8~J}1JN8x26zKJVq*q<9l<9StIrZG+ z>9zJk`)Z>>uls>V%Hgz5@z8%dXfp0Cck;64l%&a!PSWJStx3z83({n&L6eDJ&^#pX z&)D>N*le)Xbg$o*4OVSYFZi4|_c|Fp_4071cphSRH{%@XBciunp6L0~fH)p=Mtl|b zextA6iBs-KaJf6ufOuiJ+#P9Mk2vO=?wB5Xf59EleUPgNzlqoh#tp-_Wk1kOu0t1B-SamUYNyt*a$xfLV*6k=HG5#NFz%e(1BymNVRq_5k0 zq2VCrw2rwQ*++OY<{@IB2N4rmhgdeg-wOYXb>4iY=%)Zbn6WC-NPqvt8h0d!^Fgia ztlBK>%?a-IwJJ{kwVUF@Ao9(8c7rkIi8a8yuA-K@aKH^I@MkOH&Y1tY&)a*Jbs)?$ z<{=J{@5*f59E}6;ZZ_6|$X=m{0f~KkC3uurL|jbKK;vPbUG@?Xbrzt5#{M4SM31VP z1Qpv~tK%fRcZPN+<7Mo%E9yNF^V;zT%D_w^1LyY8d)nQpJ^kvUSUH!m!j=4mH7)xjO`ZgX&d}tM&yXg4 z4VvV6w4CEz3!c_JhMl=BiI~y#22Hrn#TkRYq;PibB}tb*!jC0g;+-*K%(+R#i|pQF zdT)&fT{vzNVyvtU5$B6kTrJM|BGLb3wyF_fTrJ+c4S%oYKH@nQ$v58zHt5Hl;prm< zjb@}6e{H#6?j_2e{eMh>XP%d|8LVidVDaw=B?w2D+4La{aHEp#lX;+{j&S!&rXJXL-2#-g#t~J>C8W*Zg0wehz14dpiFmWv zCpUeDGjgd@5c`Pds_-LL7g~lwy;q@8Mnqv$kdoTo}kH@$)DZc zS!K|q6nG>}I%ktqIcT!-`V?rw`gzdglMB_ZC7{VupCL_(44RYykJK&7&%oU>%xChR zy$S3M55Hm}^sqczn-%!)t;lQQZZhh;Xb&prJ=);RiM3pTKIy2H=3N~0aoIb4;uY3S z;Y!%kI1Adm#;T<}&4x|=dJ_8mi;Cu~;|y0q$F7k&e(PniIzF~HyX<$&`#%Qa{*R_A z`U9v9g}&7~o@dah$ISabq>hitrwe|(1+=Gr*W=4`8_MqhE}2i4=lpqQb*gdhh52+l zr;7VOP$R+^!Eb@34s{u*aS%0NVbCwp`K%ylt@Ek>`=j%yLmeAw1g*E=d|V^w%bvT9 zpm`I{$Q?&)fjtJ>_1s-A>*BtvXwax?C+k6jI`|ROkWX~0+`6iv*h!zitL8h5Df@TH z^ISZ8#(8R=fake5&wAk#Sb^=BXB+0p-WM|H1^Ryi3wsvQw$1F$ z+7kA%fUk=^(U|tYbG6T?eye!?LC|S6^3~#g5A?g`z0btGpZo&cd%-We+wqHycbQtV zCOm7Fx_5OC=(Shzi>B9ZVEieby;t$e6~K5u-WRL234AQ+74N>)W$<@fux|BBNH6-l z_I<0GZqtFIsmhiaEude_oie~DYQvWlwYyV>wA8&s=5qZxmV93wxyb4*`h&Jpuo)%DRM<8gN{`wFkJ zT$SOj6-N$sx4gQ?FntitS)YSR$DCP1FY`&6;1PNL@Od$3dCz7O_6+%gam{V2jS7vklEcy>MJMfo!i`1avFYca=g@1L>j z9oYxit`YZ$8V>56;BxXZ`|8pjlD+rzx;{-DsAZ%Kh^fWo`YtaLu_k9NrYR3t!|@OB zDc6~`sZu^>2F55Jeg}Vh0e$R98|rbvd%Z5qdm;4n(im3&qh3?`t|BG}yyKt2-8|1c z6Xm_q|9O-%j(YH+dEd(E9kLFSyiU5(_g)FP8iWjRL9UKgyqKZnDs2(o zGeA8&6S#Ga8+#0D8V}L@h-WhPNxbAs)KM?yc>!&EXc@~KXkYTB*f*ZQK487l;LG`^ zliAu=!S-x71 zIo%rbPThKpUxv6b#wo++W?2=rci}T-_)NXx8!8O}Yx+hYVS!d<@DE_MJCr-cQL8`e?<53^8@#Tt#n9Ym?6X;>e9@ z7=!Yiw02<*Qw>_bq3*AY*B^s5w!%JJmzdV$h~?P?v|g8x*3t7PiR`m?pSNYl&7gIZ ze#z^>we;by1U{!8T=~=^N5(z%%-P11e>%J6=J(_2!NZC4;C})a<%U=@hd#(qYl*vT zpbs;m`j9$P-d#i;Eo>Tr?SIEhok)DVyGZMS*|2NSD}3<)TOUTx4N@PrqJIU~@-bj( z#?N}+yz#%WdVqG7>=ob<_n3>dtm0bQcWyu@2`oo}rSW;Wjxv{{?AR*X-_|`4p`WAc z$Me2*uvOfGzp?`JfQh|MI=XZFk)T{p`pNXU!}rVBgz&RrOT_oHg)JelZYNgQ68yf5 zOW1dA6PvaHcLUo-&`0~(#lXhiACg{~ttXV9%`=F+^TX~hkR|#HglWsHC%qUKWB!Y0 zP3-ks#r3O3{_7?9+Q1Xj(*)Rp>m~m?dzuiV_BR32AfX1ik>g(vHdy zeN7%-Ch0~wlcJv@==N>k)%L#Wrwn-d(IXk~kypY;UI`z0{9}(DfjtxTQ<&>E*F4ro zW*=zjBcFJVc)#01aHj3jT3yjxsZDDU|oZ2s8{B2dNUlQd(+b`kW z2I+xAz(F7RAY`)#K2kX3j*JHFg#3m5NZXM2CDMj0h7GwA_TdU)LuLqjj5M#KEx7~h zzYy^xe7?kCOX}R7yz7uXmNU^;f^=XFJnhNsz~=8O{ksGDccCwGzp^hmKjI6AigACF zbtdfD@WdhLkmfGHy2gsk!QHx~UA#L$NxNq7CH-X;s}yt#jgxc}&s`(WKG9z${T@bt z3-caOuBG z(r34QVtL*|_RUm2TMQQIUveF@19t$2z<~Y9USX7HJpVyIF%ca$ImYK1FinT~ICt9- z9n7&uV(dd}ecp#~&c(bJmFtx4f?UlYjVagj1H3!&5cL0`%dmcn++t1dQMvq7*6@cW z_C@f;4eY6|q30sj@T(3S7qf6m%BP}TnrtmO*(Yx zfR}N$Kx2J&ePp_c=jL*!*XSDyUWu7hTG6Qq&QL?TYvTlJdG8(=| z2$<(UW>5xcnMZkdPZxEDj=EpT7TpKHwprwT$JD{PABm>Rc9SmHBO)(=F?dcX-M9nV zv;}CV*mS`8UeMw96%KtG?=CwrzIiA2gVFU_1sqyWnfi1;eAC9Kr9RcMK4PIw*@*fV z>MP+NKo98nGG(yycVAFEW9ra>pyw|52DS{2y`xUkXd1B5Mr>3*8P|aEaKKJ;Old^=Fn2*tGfy%T za(cRw({AO%n0C`BVk1ugkM><=0Lx5;McZ%Ffn_+Jtz*kafN3b+pEzC|nYhRDpO{u0 zDS}?0&g1+jC&*{KSAzYf<`0CPn&ytQ9Ct?sU*oG8dSg+|wYV?f{PJG@`NOQ5^ZR=F z?;eTQw9EY8A7j;QQvE4%FptSf->}Ybnw2YJ)h8B`7nyU(jnTd7CO>N33ydcg>b#56 zf57`F`P>}jb8|88a?G3g-13YZ(ere{r;{t^Bd2|0m&|D|RrLg^&gEAr%!PYpg=4++ zUU9D1V9bU2?Lk3Fy|3?^Iz!)r9Ra<{aNhEY>N#xIv+oGocbV3Dm!WP)W!O7!m z>u(!hyOB2VHt2(Utw;kt--ypM-WbH12p)sZ2ws8u=a6S)-L_(UPWDM*-+`@I)A5Se zwqifAC;w*1h3#TLsr$afe$u|E@42z+{>R~*JD$;m{S);?)$^r{A2@0o_RnT1FLrW0 zAdha`j{QSfA@&enndjaAEc#Nw9v_W8!!_Za5x!GioE(q9W5{~wVvQ*mnA*vD;2Q`% zjNIa4ky`|>AiopMEkdsD)O{DCK8nDV9@qd}!O~T=4WM-+XkCx_g+RYwEKqtB@9Xh? z9()MiTS;5=P)^hqeLD-i_&6Wh=UIx*$=I5DKJOOC+0V*f;N1-lJ2~1T!D&z2gLx3c zL&S#t`w;do?d8~-lq|7-S(7pd`?vWOSr0T%?UPh+*K~ke`WAztcgc|crk`WW*6hF- z;O1T(2n@98Y0uA9^1rh*UG^Da>qTr_TkM+)`8|3)%Q_f4(BAJ!NSDYn=mUkl`lo1& z5Pcg}4_#f4KpRcpIms9y>k)z*7$?bvZj^UUYFuA-;(7(=5LV+n0C-LGo5y|(ZYXMZ z?~iI`)&pNF z_H}(V@pT2hJoxHepufwbd%LF-Bk;9QfA2zl6ZZJ~z(vZ{ztgGhqjt zzKkCC$7)>0549hY4I9zy)yln~X<+*?95XA>1!IbO0M;u)4nw9!?_X#}pQN^JR&6u> zyM`i9zs*-`c~EnMKE2y+HSS-auEpH>9G)nq8T@eC&!jK;#is<*J*kHON`&2lujZ|vIB>nhE9SG%7P6~JxRJ`-;df%=%;zm zPaW!}qf$4)&k{CVD%jl#uqUUNB=%neJN42E)G)`Zt?07F-iz`0tT+Lm9rJ-t3?92W z0goM2=QCuD9OBX73)TUc?|(pydJem%yQu|fK!tmk3Q!?vSpfrEZ2 zWuoY*2Hpt*7sp{7gZHL0&ycR;Sj zmg*Cp-5MB)wM0C#8UAz5HN`b~@SnSW*$2P*a^WwZPwOrH=aSySpU$}qecczP2^#0r zP4d2xE_)7r9Twx?O4cFSu^Fqg$`ro-t~#=;x_*i${~kkca(m)No+!UJkf&DzAO& zu_KSc9=P>7>t)7A;?e0_LKbxi+y*+`fuD(!x$8F&yUPWCFNg>&2rzGSEy_W5Z?7ys{cHiG^Jx^Ym4ZDsy@+!si33b2Vd6|>b zbNYW@!JY)KYx{B{Y$=C*xt4kswePZjH^wnzC_e&b$_kT5G~IuM*o6LB@C~reS2Twl z0nKw-mx1Pz-rR?=^nQ`pJ_0r+FGz3wJWcDUpQ!fZt-#Maqqr9}t>f{|c;KcCodg^? zumef+R?wdOL|NFXWGw#vHve9PxhVY@jjzyltif56q-@87(ssO8tx*bghTy#)YFbd= zVb6$r3ZUn??z(R!b397Nuhp>))6U4ooT)#8H^~0j7wU1`cdl(8as5P1F6@#Eo#E5G zH4c~=$7fA$w67lUZiijej5905%li?blcQ(oS(_{6r6=%@fRvZwe6Gp`4Z!%v5ofe* zN%nU_?J4%FvLyw*29jQCT-MJB`2sAY7wbYAU`u8gV9GuA(Y9FueyS-y2tR4R9gcLLZcqfWv%es6&- ztImKAPlImnJLt9$dTzx0YesbiA9h#!;2y}@dmw9jfNu1yB;9%hE?0CTKRyTA$^IW! z;BWYSJYVqPO`X&ctEvBDb;RwMv*{nEsv}x!&Q_^=V&3LGG4yi|J?s%NVfZ<+&kxom zi1oH(TnEY{?EB04B=98xYIP zLOv;9<&*L=JR%;Q_34C458~0`x1`)=-c!cqJgp~I$UR0Go{gBI*{8c0drZ`RJkLGG zn5W&RTVrqg66pDs%*n;{<)+{Eyxjk?FZZBmUvADr%XA&{4B`2YV;<}wF0mmVdrD%{ z^2v_XGU$UMDffL;AAX<@ywSO+xsSAE=cfXyIhdK_z*Da zIH8&MKY;TUIu}&Rb7n>^NS!l_@@b-2=4AqBr(>A{-*mOc8YAUvf>>q@9y6Bt(RQhq zI&kV0J}RMx?RX%+VIfl`mThTN(RTuUlE58ytrXBboj7hug1z)ayvN;+7rjk zuodq{3{T&W;FQD6ImjH2J`b837zSRIvCWKt8B-InW}IuMzwomRH5clT6!G7i0{)Zm zJyXTsw#~**9m%?q4&&ls)Bs?;E6_)x2=^bF@)>l%$t4?{UIU8FvbGdRA$U|v~fm}zEJ!1$_eZ<=F3>CzQ0Y_Dav1k zog(6~)bFu1--53MzHA3RV$r@@Ok7s+)y?zlxNJO}@|+0Ips{v1C-7^5lkz`3Ky1yZ zi(y_JdqLPx@q9|^{5Y{|f%hL@Y`+go%$la;p_`33b~0GMZ(tR67I=tzp+i0jNn7i` zRP9cx^sjNu$DE6k{&G&K(cf##sTr~HAmlvij9v&q&hu=tJl~Ta*zvpgJWo7{_`aic zTIiS;97?11EWYL^3>oT=M)8e6}-m zKk1F#!+IW0ewXt}jo%+I<^#L#1tE{nuQ3FhK=;Tv{aeZFrfk=FUdC;l_vz6ek>`$N z4X-@U9rZVbTzUy}YQ&mE^|O-i((jaUBi2W9P4rnTr@eS9uxCKtY{9)X8SptZZ6AW& zK$$t0wMa33Uq;mL%Yfh4cucO#IJGW1_LU6&)d}#+zIVytzY6%tL&TlR*mDz%Epxib zjor2dwswEmKZBsNzlpW3DDwUkdVI?J+RsGq237Z?ePGf>_YBgqEVzrlobDSWYHGy# zjv>ZlwykLIKNVNnRiy5Emj16^YwiD1kK2A`PT(l;#`wS|VtrsUMz}w+}uiWSTQpN4_*;b;K5HBjyFR0<*Re?V6vg)=7Vk#ctNfq6i$|Q0=OjaKY5McrA9EHq{U0L!w~8VS2N5G|m9Yxl zUsv~*)$0(I(cmGTBa`beaB&vmfqEUxJkh(r$yfpVi*YU|g)N2Agg_Y`NAW zZP7D=g}tRc#4&W-fpNxsr5BQnfe73#;>MU}ELG|R`@UR_IZ?jtSHR7+72~2$f*CK} z8;!llcq#iNXqwfJw8wVFOy?tq{qXmnIy-n?;md_CPh}4JC7eLN1mX43Ju&k));4> z9quTv{a?Tx-Dg*Hyw5_i#zl;sWsI%)S;!}>(Hlb_J@Upi_C6c@$fHLdzUJApCx%-u z8+%RQa_+S!G#;#{J{QNjx_sQL7Q4SZ=Kd0xLN`f%(0H7+b#g6bZJpX*aWVV^7!F{q z_Vj_w1fTE2&#yst?(bDm`@6R#uj}(21Ames;&VLTu?ILegYP#gzITJ~g&vjlAp+wc zfKi<50N=}V`vXU9!k*(f4)E4touAzZet)jjKKC^Rn4ZD=z8Hh&PX-^d^*8jBAs>yN zVn?aJ+vOMpj$aYSDXF*H(d%gZ90T!bJ)J1WFc>&>j$y+O?epgPoVhr6j&qcE;Y=Ox z3uV6)*0hVW=Fg&rei8OL_H+qoJrx^oRgz~zp^F8NwcQw>o=w*xN7PmJBh)mdy+^uU$gcXiz}M;AkihkK;7Zc2ios*r zRX+fZsN4jfnf~(3sC^RE|6<%%)VQWy z3t?9sRCP!y#t@ZXy7xY9EA}k;12ARuDPlaypV7x9dev>pgDitRQw^Wt$-_SHb#I}5 z1?#jGpF4oK(^h=Wa{_fP;IVqhJhKmCKVuH@YWPx_SL+S2^C|_O#GBVj*o&N3ti6~S zSkAc_u`=Sx{LnKp6LGTHh?8X^PR4pfp0{n+KlvlcE6io_w(k8ZdPl_Q-XwbgYu(!i7~|P8O6ILAuQN2JSBWVNv3_Oe>bo;&2L!_j zb?wf0y7p_pm$I&Hjn%ap*Drx9s%t$(?a!sR#?`eu6Y1K)G1$F*FUw0b@K}yC1cXh#M>x{RB}9 ziGG67z8LH$2t6Cc8JkD2`w71DJL06CmHh-6?>u;OMQxj9-FHj6JmXV@v*^qv?1euN z(^C-r*)_&1NJrRn{JzF2Y*6r{r~e~I!q+}^7X9~MUTwK62R-`Ok!JKhWUMYt#-(Q1@5Q(W;fvG%)%Aq*#lx!hF}y9NPE(vY&lwYI1L!qL!WYLq5m)&? z{z|M35dD6>+j|iHna0ANe0?u~B`lv6(RG-i{9>JleqZ;gbLK22AjYBl0kBUUacWtd2Ar%Lz6Cfq?!jzpB=3}7jaUZHp~Tkx zIL>=qB5kab_`Z->R^X~fByMKPOs%zWS`KeD!6>yT|Kj+hMX z=3IbwW-oShE0d;s>2#>RBOz6a!=gl zIFFjj-WUb!=H5uvzCH}xrhQHN(dJ);y04_-S>5FNJL|qK6wlJ@pQZ43*2dll{JQQ- z&=dT(N$Kv)1o2HhcFV9>+Qo@)M(uj1U$qS53csosVwzVVrir_=pY#=ZKY_e^r@@Y` z>AJ5DV{0EIwp(`-W48o$>j$aX``-X&+urxIKCJ4#bWK{kGXcSmw7qYi%hL4wHLy|U zgfA%)araip#uJc{E&ANvM-rd&Y!+pYj>9v?CeLQ(2Ce}<)*i`TRH%(|)ON+IjjBIS ze6e+D8sB}u*G|7*Dt!~4Bjp)V-r-HY31S}g=iA@mMXcIK;W<*fwkrekWSx0lpl!YM z0T{nzZB$?IA9Je@Z%86O*cNx~4>K=c#I^68VC~xy`YdamzMj)(IjZpT{MH2Y$m5Ch}Qo1Wwy$(XuI-9_Sk1>1#nl_$wMC=gIS1&K~Gk z=NLSuZ?YOV#MqE6dz5T3?^t4Pp1nX=3!=w8qQ-5)Sd?uXHw*cb=D7pSx|Hacj2qZv zdIIw?rtr~{^b2;Y^IPd(>YQI7z7N0P+~@>;L1FTKfyNS)&$9i3!sPt|jpuLzJi;%) z^MVC#FMWbwuB>erc9T)R)2!A@<`89nAn8A{oARFHU7% z!;+YnwzZO-*IqR*>fSxb*X>2VZXbA+XP7Dv*fOOPHouT7ZtfqkPvzc;WAm@=$mV|n z_z#!i z0G?yMGLFq3#i42E0*3ZBKkq`#58UsE%@0{3Y<{fKXJqpW?4yC*+#7Lh{`33%5g+B?KU(5sk(T!$Yy&CvCVe^ZzPY#WxT^yS~I;PX+Ux{(s+5CNq zyls$oe-GMrUs5)I8f}KynmVnA_7P)#0=q9w@@JfUdeoNSK4Fhn+N0kD=9F!I53$Ae zV$j%r18kHz;erG0m z2D&1?kj%O}?frLuW#=evo_ldR@e0y6P8@6%aujA9j2K8uZ5zef`1)K-dSIu(CiDLy z7Y4)Aq1?ZjAAHBu~ zpx4-T!}c+Ar+Zawig5s^4^a%v@qCCq#0!0-{Rdg&)82nrrQ{>^)^?1;SJt(D3mBhN z;-J-Lj2n+m)droMe$zO_5my>_N0CN4_w1yR7vrnglAmV^opoJ*eb?s24D=kz zP`zzZq0wRojpm}pHlB}V(nzeMqEUBXWRD=)LZn+J;++RjiQq3ZL_wgv?9HwN&RMqVn53C(&FbbscN_Jg6%}%w5!#wWVi@ z^OxaIN-LW_DO%SwQtD*RqpyfRWVQxWUQhT7uzl^m0a@Y>4*EgJt6;B~y;4QYdne-$ zeTjV}dRwiw&-+HtVD*-A-gzHeZ{ti8b0bm@HX4yhv=@+=N?j=<42 zSnh*%G(-*3)u=(rMlZ=sS7v1mauKhqb2y|avFKQcNz-+tDRE$Z52!sc5H#amvy>mQ zwwre;u%}^kJq4Ek2P_&#v~MBkL*9{VD(`~nX#9nGd?gDyqJxrOV(dRApo7dc+Psu# z-rvBuBBo&E_n0qClxu_!ewcN?r$)xc6gXEt=R&zg@qNS;j?3>y>y7mHtBqWT$MD&M zSc@d`2ZAPxNfTg+=Syf`UHcLyZ<@YDH_*lOFocTLhaA0hW$qmr{aXPqqm2_4{f z`a+5DAOEG45fgwRHvb@fk=q}Wa#qyZDxTYn9BI7sC3?^G11^2Ogf_AVaVvekMDy1H z=pCLf(LJcSt{K2!zJHn6u-CSNrjWrm@xJGckhfiqOIa`wa%qFQ-v# z3w-;bceX(9?1$btNWF8`Gx8wx&K%_64#voRdG4NazY%i3aTw#r`2n5#(s&OlygbV{ zQ{i>WvKj-kI6nhiv@x<2_Jam?`e4MKrq;I@n2#g&GaoYD0)6rk?>=!-+P?=uvmn;> z5HP$Bn&rD(;>?wZyImsfUwNj{)-|h$Wf*K<&@W~$Um|6zw0jE|lct9hE^S-B4qV59 zgZ|DHz(wCe>OfDczMDRtKQUAJ6TwS~shz(gf; zeDxFi+p79t4{6+3_bEb$VyzR_j29%vokQGX65uZAJnr8ZxO?1X+m|B#m*ia=TJ{77 z#m{YQ$y;;5J6=s1(=KKoC6V_>-d^AFdY{1B>HLP^&zFI*5&PC@r#tf-PCU|=k+oO1 z0f%18J=n{vG3g+`A;x_|jcfWRb48z8+dnbKbmlj%$C$zv!I`$zh~Jy~muIATkC5mK z3E7qn+VKvVLfli=QdS)4i#iy7m+?B*>u~Pjy2&l`ff>6TySUoe7q)m`SlXS7wbRNYY|dOxb#8hsZ}KlWZgzkd5%f$$^6+^6cf z)9wH+apq`|?un*y1;F_T^yc03t`@zOnJXYYbS{y3PkRk=1Mfe6wo3PUx?9`{=6fy& z^PW`}=YBdhCi87Uj58B=)4dKl&ck^nt|RM=ex~fHROi+|$+^isZ^_N=CC&|)u2$!% zeg>VE4SlEYBff{Rww){j7c`jI7(tH0h>Rgc#?yblg3i8Kr= ziEP06)fu4oc-NV#>5cNPaPFg|@-$*U$TMPEM*fQP0PiQN%_7ftl&2XE%-g`@q$hDC z%+rXmjk;Mw2QC5zE&rl9XkZ#}_hX`NR_AGmg?1Qh^`vXFvbg5TSJZiD`ijweLj|tb zdqXvCz6M-6Hxu<0fs6K^;5*~qP-4@3mj>BDKfYxh)^j1&6Kfa3+P(O-wyOU^U-g5O znT$(d4~1bf>YO6u6^IoH8KC_T%5t-Rl%sZbtvLU0@*?CZ{adbu>>p+K+5pDG+U9cB z&i)s$a{NLSFIk;T?O2KQo!C2`G)@Kc#{-T1ZD4lR`*wuc56s-p{W1PQ=$lfd4?0W7 zzkUXo?k1)bY4K8maciKD&ASPlw8+G~qjwR(F1ZC`)8-T7V=WIVUP9~(cf-khChgcr zG%g}|=$8ft86Q!45No63BD{-8>A{42G}N3w&WR`H-v?Q1A;w;0j7{G`^Y807KX#<$ zX~u^NMZbu6V>@Y(cM&xBhJnLL1Mc^9^kgwdzsO8%?WG-HpUf;1&?O8=BR!a;=Ud9 z8n^pV<%)h_Cm^ruhY*{2SCa6j1TQrVFyxB18%m2JCm^?VAFAkmM6kW;hv+_3gBR<2 zc8J%!LxcIP5XRGaq=mrDeReeJr=r*Q6G`|}!-%_G&QRd~J#kOA{VC?Oc{Yf0JUA?& zKXq8gM-%yh6BJg~iv7{q7bAIpN??2x7~AP-?AIjysVLS&{?wHMYp4AwfpL~ve~pv$ zi&rnkHP*Bv9@~~r51jWan?c3eF5pjzamQ=E13h%UCyqZA9nR2;oKl|A=(b2FSH-N5bIocE>P&Fu#Vx|?+>n(^32R34}iYipzjrm z`atYeC-11#`o23b>3l%6PaQDQwqT5Ewz^k{cT`fQYF^Pk&~}U+tcDMy==Gyp+p6BC z4}|?$3SYy_*OF#tPEY4*laaqo1!|wJw&gF+%$T`kQ|3G6?}Na}v72yqhUX?$!T%w) z4s*7*N&jc1@_$mn`-eDqo%I17;r%+-6nn1#W3xvYeA*W-hJL@iNIcgn9!rG=KZ!Hu z_VzKz7@aBYeNWUD>yB}?&%^awh5SztIVu-&RI~nO=cuL`IV#qAGf$=B@M7=Xp|DVQ zM}2+p(k$etaCg>X-esrvowl>dLz6LvJj>+?ytn3TRVm&}J3F)WVb$A}v!+ULG z&wp3isvX+cBiq~98e6W$X6pOfZ5uo0UeY;`6(i%?*fIB#I&JJHfZ1td=LC|lu}5oq z>b`*G&uQHM=m!~br)^`$oV_2N(8k`W?ZiYj_Pq)#ZS02cIbvZ++SnT73&5yt*JvyZ ze3+z-9mSf+#vUuMcFxAu7%NG~a8fyo7(BLpmmcT`970|tVPorY?@{BLIg1I7GZ~PX z(J{F{o$?}Gt(BIQW=t@?jPOPI=N2`-Q$|R+E$c?~Uer9})H4l_DLWrIk~v+Z%ocGo zB_HC)`fMH^s%gNz2fom;lB*FbMVw@@VIM^00pkhP9<9?PM}?uM;sG&;J>lPhPBC(Zt#I} zZJGNPF!Grp#N-%DVh`&OeWrKasF!kAF3qtH_kED5 zn}L}a8YqJl@361&Bh!)Jzrkame$X|J8jxK;VO5e9&;$h zzBJ`?M#o&u`RmG8|UoY}*QZ>TVJ%W#6yP5h%*I@}-qo*=%b-(ME~d)^BA@1mEEwh=TRkoJ^oo)`A~x2H(SDIN zW1hf^z_jv?BJX~Wtfd|R{yUBsf*bo==9OaaCf4+6%RehpL7uQooWwY&49t|cdzMS+XKfjKJ5XnkH(Au<(S-x8K{g*wh(`8TVS0G!KW1aE&5`2D^RZ)8v zK3j&*YMx=tpS`fTj`D0e{oD-5gzUiAC#V?IE1=nO`1_OPd(P>@>fZkKmeu{!Q(vk1 zw9I<@Jo&!Bdi%oy%YV-Cw{z-mkHNknErmRUomGq)9_p5=zexQ(0KB#pwC$&4ByHnj z#cR@cw&}ZC(O1OGuy+S*>lrKH#SZF^1OTeL&Zr@;&!u-Hl>jZt7`G z`8jAzd|W3{Q;=leOU-jLfhnFJ^#k;vAAa{UXV=c{`|?`LRe2xcYCS$@_v0e({Q$gw z8oW;*%Gv9McC_<%rz$0XukGrKto2Bn9`P7aV_@%%*ct=iJj~qvD781*)fuS0A>y&I zbp~rSEz^LHYxWk#XPk2d#?Mf(&ZXe3W#BF9BN6L-3H(=%I3f8p&lgz<{#&JZRmVIf z|1mG;0sp0g_jt}HJMes|;=Px^d*!~!>PaT=T@}N7-%2;6l3)pK&)6DOjqN33n0^q1 z+AgEKZ-M>Ow8$OlZtoV;T0=a_p_}yU=&Q zNqsGP=Hva9#D}>l`!|LT*L`Z+`h!1COz(P4@6yEdo{G6}jK;DgXzp!9S*bq2;S#%L&>KQ?%E5Vh+wonfDa>}TWi0&!c zH!kie;9#Dj8dyF(Vy~x;lhU4KEi!2$;~*Y!o=5DT$;87mJ;WnyFF~8;D}iT@T*nyy zc5-nf8~1$SY|&y9linkYMbu#} zY}tf3q%AAx`FI>0v!FBkLuaM~M>=rK?z-a0D%i3b1IMce&yWYTZXyV%57oZ60J`a3=%#%$yyTVcD&DK>d&a7LH4gku+TR5ppp7~cJTo2qGYz(CJpFVN z=&s`+T0hOe8qZX6Q|qVcpzF1Gw$@LFe|ENNu(6kNR8Oc5_tI_g_tNLN_6y?drQ1^5 zOFMvxdx`V+VE>?&@TLpJC-#n)@d?U*evfg80jb0x?v-(f>r{SR%U9|**22?A*xb%n zviILRS77dtV=?{#u*C5XqH>M;%Z@wfoRllD0P`2IRm2_Yz6oCe&*_IdCF>pj_Qto*IK47H{ zNnRfC)gtdog^~2zs{G%C_zbzRDgnMh@Ph}z57zkR!VlgK*^vla)EQKF|8G#QUlIu$SIA}_dH!Dl}!H2NFry(Y?7yL!p zF7u1BH<6a_Um+&yO~qr;bGTT;iO6BJ;C!C$-DBEvdcA0qOS>W?a8%(SZDR7}I0HdG zA`W@aiq3P|e13((!7~q%*KJ;sygq1@rim%fiGypSbDhrt!`0+%@J&C+b|JTu@q_n4 z&R4<@#=JY@2d^EgWc@zK`bzlG@J&7}xU!wB{~~P+?E~ZQrXCof{zjhvld0J>d%bQauf^6A zYJS^HEcZ%TuKRLE?X}ybJsam-S=5$Dl#+1o$->A0m(Vz+1HMr=!k9(=%ZB3{HB^)IP(ViRpPO zunV7IVFH@o8K0)-3+*%Pq$%|x{W9$%ghh=}cHp0@wU6Ktb*0?fSXq$QhvtMni>JNS@R!%jCyC0Y|(C4PugORle*-;u~%a}LD{cV&68Nx@c^C13` z3t7<(c42{4+fZ$JLupq9UV89sRhy|##1+-60ZP9bhF*@}b_vj`Vhk!Hj#nhUK+%ev{_mNv`#;ZAMe*U=Gh+THSuiL51qpJlQEZW__+YD?8jS(SM-k#w)wolIXT|C zTvxUL2Cuk>I8=!k z%o@yR9pW)>xgrfmaktaEuE>X>?*4Q8Vq-at>e-=!Z+Sy&dU->v;lh15q36Hn4Xy6w zO|vR~9y*9z$eZ~87XBZ_|6}-%^LwEX{)gRo?&tjHKnGL)9@Ni8ZA%Dte<)NGDYL8> zwt#+hxI1CG2R+3rzU+U!_n9h}g_we`j~}mMZmul6Vs5THD?+}~dE7?KKOCGOXJi{Ks1JtTpv|7e7ey}OTl zF}&^T-h=3=TR#Hh-wqx~yF>I>4#PHXhCI!8$-W->8IIn6L%_Qj^C-p?&q3c$_Wo;0 zLr)I$D;NRI`&ff`Zatn`hv#xGjiAYX+~qMq$e4`Qevth^JcF@s^Eqvo0Y78gc-DBt2{I8U zXf&SnTgZb(oRMn687aL+^c}ZMcl+hp^vu@5ppjme57RRI=P-uJQ==45ZG*lJw_<&& zA*Z(Czrd3pxEaqow>&3?51$5qh<*4x_5tY72)ZmNd!J0RZV2Le^>|*0G{zn%ri?BF zZRS9pEdZU5L7puHpW&X%Ce)yY%OOveLzb+zA}1=XNb4Faa&ny&d9OO%`~G?>aw?SW z{jfS0^G=JI!zXGEA3}aP=l7oaTix?TkvhmRkqg_`OXR{@?!+CmGr)(Ved0WB9r#G| zSToj%=W%n+wM_|*2DUqa+sN^epV%AwuQ*dK_+a@ry(>TUi2gdHA^lw^Z#9mL<*lER zCr0`rv%y=L$iJAp)waBsm$5W`Ccg!|g7_!m!>$PLEpJ1<_MR50&zdn_HuTvE(7Bbo z?8XNkV{iQfc$AZAFTy#}Mmnpe_}0w~W9y0_Upg(yYOamr^!mw9-y-XIXECdix?X^W1Ni zr28VpSeLpq*Wi56g!>Qj@y(*{t~dL>?DIko-B)+%h9|_jr@6$sGrzrh6>4&^e^%m^ z>sOa+)dss+wVccD|G->w5tr%at7R`_{{0woGt=KH{gm={`th_+)$dME@8*-gJC^n- z^Q#vAMd$0`e6Nhow*WZP@xRE ztjssIK!O7O!n3EV>R@LD^HGnn(dP{nz^}k-v6cP?=zGMCzx936 z=befFkd+IfG~H(jno_68y`|oJ@cdlz`&EHQNKdRWZIxQkQ`4s=hxEBDN}oE)Dd-*A zBcaK#Ps-fhM(CNgwzQhIwsic@sM+mdKcD{ow9BC&syq9yhzwI)-2M_ z6Z3D{FtMh2+k~1E&z9nU8h%c%Y1)ucQ-`&oeN;1_z@%tIjxoMyD zehA~g$j`in*kK)T2eG!_|2yabj9jO-^0XSnXx0{6BmDK45BawayjLf9*!Nr=aP_f# z-a23+#*aZKUmEgZJmav$=M^+6ku=)*Jb1qc{Z?#23a!}^@UUOf%nb^Zb0y6$3qx-B@P)<^$Mu1~iG zT%Yc0efXIksD~ntzK=cn9{4|lYgFRH&p!N)>y%xCdvw>HTKXmbDeU38+n~2g-2PLT z*C~v73UlMwhh4}wgC98FspBs1GcF%|60CI@_1UkgB2Cx2a@5`T3U{59|U^#48=Pgy@O-Bo$u-EO`v7navA@uuPly)*1(=#{yjbXMbux3b;fE%#H#7nQ?3hjOLSc@?>C3bbuq`= zolT#5g#X;7_}fdM^Ye(+yae9_GU(X>*w4@7cWXfVO3;2uab#ZBt=@)v;rlGanoUDo zsSJMZ9DIHo)@uj8`z+RQL2+bb&A+QY4CVMK=S_d?ofXozqOTs@;EJ3}i;Y{1)qlrW z!D`SRYgfO`72*1pU4r>yeeddxSFG=x0>1Bp-&=U!1;5AZzApH^RTEkd9Psf&8}ND% zuhn>EoMRDQhqxml%ri6$ub69S1m8oxj>PL4ypG0eC0@rMPEpp?e-867=deX#3~eZi zgu1!KUSs`20oLWim!Rhyb9z91p1qb-n^~@Og2chTA_AH7Uj4xx!z9xPxoR znJV}owHe4gH({LDzUr#oKgCts@T@Pg)c8&@AAu7ck1w+^l!RqGrr@h zy&P-o80TYD#wBiX&N9XRpusyf2d5!xwoo*LvYk zpyMMmuJV_=@>-!ErcCgcigQ+dG2lS|9jwJ)&jD2EwmiA8)(%~Wkt5Q+;7gd+;29eWxiS3 z@YADBpR9U#DfA+A2<|k@MGS+oJ`3N?4Kxj-+=MKH+-TeZJ4dYv=T6#k9-5vZ*l8TA zp~@He73Rjz@bAAce%7B|i{HUdfsFxsk~|FB?aH$5o6#M<>jd~r$PMqpKA1PanzA4J zyb*M1Ys-gzR`Q}uzLr9-g@iPkk(Uj7T#;i1==W1HwwAAROUKrRFLBp4U+S)9 zubd!wM)YZeykLLFe(;r>Hjt+J+??;ZS=qEVM*6#fo{bxDPu2zOji;AFUXaGCG52cF z2=rsFhjeQM-S#+akf33MjEC%K+AvMbOV}Tn7wr$q4cZ@rhq~c1TRo=(lLbumA&eM zcJ2pNZEaT|o^d7qUsY30d+eJ-{Gku92aqcaeFS=kfv**|$SM51j&X|QZR1&77kuYJ zyz1t<2)!n4;{w=VWzcD5!UjtdI*qzM4SZR@=DRfwRo_D#;yZ#L`{lWy%iJ{?pkLJP zD)9L4x%Nzz&qMwkhOk*0~DO9P$?XUByE1{+|_$$)yGQVJ*Imwb1Ly z&-NLMxD;eT!Oftz@&|so1+hW=Em$pO4fh;ke~%+BfHeW_-o%{txTQOrj*h@1YCpb9)~O>xB+{UdUzzw=>hSb-mauKMSD z#LukR%MQ%P&$J)(cLo~YDZ}4r6aDO2JSPE9)fHe~g_ze6@X0X9?-9@sBk5zfyv&_6 zm%vvog|9jpvGdyyJHH)r{!aMnQ{j70!*}4f)+_?H0?@1wG#i3B4TGE-0ogPXvTEN_ zJO_Sj3H;Vl_^p$nKW_8kIq>iAgnvKPhv)brb3d_TMHc?W#4|)p&yHsVfw9@1H@hj-2Xj?`@n-ekcI!*_C5f9u@5i@GbSkPz2$Ci9WbY|A2wcs{ebUWXg_=f z{FnTGn27x_0sEmeYS;D4bL@wZ%U^R1))Ta?9}Sv|z2*)KwZNl%54yuvdpuq|f@^gZ z*9x>_+;kiGjkM-J9iMw$#HZ}|GUHQgReY)l_FG^0+x76ZhyV7Rih0{UbAgYlyz~BR3$wK45)0L|1!T9jwO!_#3j+cL zt7BU8et*w7Crl!UxXb4g&Y78Wd7l6M`aH4Ad--oWp=p!f%LYgM7Jl86IyD@++UyHW zycV5WJtcLvW>BwtUU2Tge;~G<7l`uv>*S&Hk=4tQ&FWF+w{4a+IuKzT$48&0&xBm9 zWtD}wcJEI zO1))_h%$M)2%A$o61LBc9Z?bqHW{}_s*G*Zrg07=JH(Stox4VEPN#1h=3oB#m4ctz}1W?Mh-K+nfrK7 z+h*1u+3LqHC=Ol;%$56&U@NrqZejt4E3uhc=a=r>SLm(36T9_}94j=fzzT(V<}Z0x zgl9#0mc|svu1KhUisz}9Ry9z1M?3MqHogz@yYjhrK>Hm&YK}erP)?>lv>w|hI9a*b z+~5+eMSs0j^@ZI0)@l6;TFW!(srI0!@zd7w8}>of)42t$(~1gOmv}OgUOr=M1!^Cy z-8rqqAL>@EL#n$fIn@(7R_O_KO!9;}CwfB4xw`A?+i{Xx1BZcU$E0$8FX!6wP;zQ{ zs0}@)zP_J=gD`MtBX%X-rhD~_+lCz761Hg}QXio6#+=cxGOkd{u6-61X@p+!q@(g5V zj**$jQ)C`6Y8**Sh3_q7PbAa2r3IN*V`LiZXd%<$tB`50Tfj9V=*qKcCy{5Yi5-5O zeJY*nQ6^!xutaAOks0kJRf#;qpkkfqLRj}vT`x~sr zz0g`QG}dytRi${$9UR+%^L{J4{&}wH1pZOrFWvW9@U@Za|B+)DT<-C~|8?cW&i$#s zf{wy#JmiDQjqO+g45cp^w}GSfJGAoxnZfC!PB%oEa|LroF7}#3Y)!eDm;A^K<#qY2 zc;G(f;oc({#(-fA7{-8M3>XS#=`i{a!H99a4@Qi)7mWD4MKC((PyHh>l1=pPqRO6p zq;2nAW&FgBBiO~B+QScKF3ihhG>i4Ja zDsP_kQck9I_^N*Uo_(On+c@3SLFXebSeM+BpM2%d-BlG1tlQvI@u$g8)KSB6(9nV{ z$9cEplJxqYMwqx?+2k|Xw zE}Q)_-rE7a)i6(c{|D80_*o~QIQSjS6S~v2&lkLE=BfASeR`grW8x=_$;_1+)}Y6o z>#NV!Hsv+W(p-^yO^UT~Y-X;idAXJv$tXNLh+}*6>4sq(i}q z&u1^KgZIzbOGSan)H1}!+4jP#kHp!h@*wFxTb`BujFGGc@{ygMe(0S-*IUD-SuZ1640ls_lzD~ ziEM1~rykK5xemHE*JhyC%sztHIFCQNZs+~{QBP9;_@hI2+VyFk(_`6BW1z-wVv?D` z7nr}`;==Hgz_1t}_s|wM2W#_yn}e0l&1S6mjMecoKa9UKOMRF45>fn!v)_5Y zztg(t68)XJ!FK&@4gOBumA(C)vDnfRu-#jzEll@!kX2XCk-t;q_&d(A$v)!moT_>0 z)_}>u`2KafaxmeM-V|$>q@v_!!pNmd@pq05fOoj(V*bvP)O}pUuTArJiX4BZ$nkfI zF5>SL1x}5IH&~-zWAAcoTV(LI3gTwb1Jc|4@qGliN#@Jn@nBQRp6#kBbo?0SNDZ$1 znzN<7eUc}jCF92&1XlbO9qdj0v;FZcgj`emSk! zf$Y7`^U+hX&u?O_ndsZ-G5nr%`}am@BD@P5iLo2|7yHcEzv%t5O}%}wo1A$@fM1l~ zjIOhMfzJ;?&uzhW<{1g}eH;E$`z~x#-YfgJ9UCly?c2t?UHdnQ{TuCT|MJX!)I~*j zmiBOv?GWFJZ0C7x$n_rkm+y`J%lBb^@3^-jg+6)7wSAWXpQnJ2Yx^$0?ZUS2?1|~N zuP?d$leX=<#j$;5k9g4`$r;$b)3JSJvmr;%tsR0No1^<%1vcWd|~_6Ipp|I=1hO z@{n|q*5uhO+Xoo5?*JBjr}ZlIjO&qcj_tczw(n{6feRPN?G=B%t86m4Ic(l-Gshd- zciSvtL;5^>qJ6BHI}CE7mEvECJ>`pbC38L@hz+cJMhBe0HE4#48(E>mmy}Z!5@Z zRbEDG?R0YQBoDp91FfpQv5u+m+BA4=bZ&0z{=(eWVy@d)1m9qXi}n-Xwhj9^4t~Ax zpl`Idai*U*F7Nzama!AJ$xe(O#Kt}X46&hS^4?iF{?xyv|Nc6^zu`#@MQ&Te2L;xX z3sv8BoEUW!`{>w@&NPJO`(X1+zKWiEV1!(IuJkm0h15(^mn2vzC*JcrFpM_A1K4!m zXeL^_GZ<7vJ z{c{96OJmiTyYVez&~$7I_AYcC+lsx5U$NBWjPVKNcNZfE7>i@?n!YW@c(cZWd{6x= zJYee;)@$OsH@_l1qy1{F;Fn#ymzs9J&#uF>>zS@JcCW^@99oGQztcOW+_Utx{kyrJ z_vwDS2AFs{&n>(fniS1rL!J-LpXmi>d#|NlaAxlEZ7O=;?0+re&)K)UC?0nD>FZR_ z<@Av)HRtx;nP25R{aH8mq5DnHeH(PYpSiSerLO_osT01DJ)7jc$B7fk7L8zs+P<}N zsmci!m~};t5|eoq`~69H;LIc>Vi_FH5_ZYgMaHUUhOLyjXOj9dU#?ZBi1+Utbwj>9wP(4e7DU`GD@^e^#$ zTgc7V;?FGZ*YfOxTYZf$VB;^b`X`&nFYNa8Pv&Cd&tR^{kh#aXznym+-;M8$A1;{m z;0!*L4-jK)`|#hyXLByZkIYjr+38&O@>}>ljCB*ZEyiw@FV@%pX>$A@;tW*@-rEMw z4_KD%12Okwz@f(n!p}ON5A->~>>xD5wZ;b$%y^gHt><;}Io$_(@SP9u10@XJ@`6V= zKKC5DiQ^&u?7buU2mio%1Ybsc`zq((;~LjL`Zb^BlgdYG;r!d?H_@^$xP#B?llzf5 z<_BNom;}cQ*xxLP{|4>?vI!%*nF}}<|FKtINH&pt*p4@hJ+w{skZKFol7}7x4CBOj zI-&2eH~O2eFDq{zSI*vNvHtcN{iOrU8vTmJFRZkhlZ`XVmdv#tE{9&CF>u$89#Txh z#H9-Zw<9ZE9rasiR&@j(bdP$dW6+EIy-)qe*#_}T7&#b8mx0(pvWwQ!kEI$~J?G~< zBT+!D{kHCxWP>T5(2kz&cy!~=X8v;UZ#y0xzH$b;N{p)mJ=%)_><80d(dLu38_96YDLnZhcQT&W;-+sS8w326EO8)0u z|Hj99YL%74>%PiLy;BIy6m!0W8vU^r`F8cIjR~l~ATojRk3?>_AnW-JdNTFfC12wE z!TMYrR1R1*^|OJSsc|1{uMv?aybiQd?_R}Pg+8vAoWS;)sT}`%*|*sG#IETU+~hw# z?7&R>l9*(flP^2%^B8~b&i<;m9&~OF^BChKVleodu}bQ?fOnjENzW`by70!pXRfjL z4qlRBohJTP<$kYTgXlbeYO?!#j&*tuHIjXQFNB6-&=2{IR1A2`V(v8$As4t;v6I=v zXfnnueXXv*YMe8K_fJGlT+MjKGdAE;418pJoB7iFBsxj*oW-7{WnZ|tqWO!Ts%)+; zFKjTs1KPtTj zyOJ@czoP_vDBqnYABWnE$LG)8`2@8Y`wRVLM+>ZnE&Tn+IAB#tz8;%RI8vRh;36FD zkv+p4BjYp|%?q6fUi!Yrz%dQpF9T26S%O#Jd4K0Ir(XwryZt5qweTFDJkIk?KDsX7 z;5+wo^56UQ_TTY4)fcKBQT2;^V$!cm)@p)<-7UFeeQAm_nyAgHhucD~2f+ixshkPgb&5Xc^e%!Z)-??{~co=^C{t@7>XX$e_uz*&1 z-k=KTryBYmLyv=x-!h>2YUs&3jnB~g`tbAy+L` z4cgM2Ko0LjrkpDA4|D5CR?j9syBu3oz7Mgfv^tXV)MtQ~Z1lvvtzfAHNZ)s{2Y?|~~9chp2W{Zo_3NqB?9pvQ3i zIow9UrSgo@bqW6DzqH>2FN4=8aME)UOWt{m1gZd*_eDrc=e>UH8rA zKKgZAh4bP<{)RIr=Fsjd#pc1!VBG4VQk|ahdCl5(R|Sf9Q=`$q93O!mn0stGKIi85 z$m>Jj_gN`&=c{YFSTD)wBxudpNf{W7Kk#ySG@ zUAgPEgm1M>tz~qNU3d2sH6Gsr_ru_Euj(<-b*KMHGVNo?v#a>KS~WM@YBmlGDAzm3 zM=t>WMfeCXeVuu}!8!6fJtp}9y#T8v(|(qROyeHOG>z>-H5fIF&3(7tD_poe8hv{K z^c?j9WU3Br@IN5iKHuCi@;+++&-G=9Hj!`03u-XxvI4Exe(BFgej)oZ0&l72Y8CTy zZ;7uH9Mpl^r5 zA9{Wa9w|oNJ)nO28NhR;m3qsUL;te3SKsz_cv~@;nWnE~P~aDg(YB#VjJ(tQKSCgkkf;R@2c8=i~GIn>{_?K{0shWuHZ2t z5EQH$?dPa&uLStN1)k0_hxB;qa%cSNjggJUzUTq>84JLJJ+J2rN$e& z9}LY8;qS_GbbkO_3;K(-g3n#h#cuG_BHWUns>vz~*Yu`;A2A}uvu5}7!YJNhVuptP zGe!U0b20jFV!Y`z-?#QsxN~)SY~a1kiK{->++OTw@J2K zpHFU0exH0E9XE2V>dar!b&`Et8(swLrb1(t7Gsd#Xa(J8nz#`D;omaG1Y;EML@NDU z4=*jU<6XM9gL`8Mtstp=PKqY z`?YNbJn-gRiiGBQG+?9n5#DQy*N{&)Dw^Sa(1% zqoY<{a?By((Zrrcm(#CKZ$Sz8m`EPY_PxKlJr1qdW6BQx)|?BczTmGpFGgqnc_Vzv z^WAsZev$ni`9-pmqXU5JK>qNNMm@;$vbjE=u?+zJ1L|l(C*h{u2H9C{n-DcngZKn5_+?;I=xpQt#yUAMCi7#rOU|8$k+J8^&K$hsNIjX|F&^(WbRGP}{*-)7}K7MNG#F5XJ z*)*y?E8=~ODFJ`B!AI@Tb_X%IPU1Yrh#4ixp&w@quVrIn;e#o^7A2Re-nDou@q6O( zZB4#V`p>y@9%}t0~vMFP3YbWA2;E7$#Mws3Z7M^geiY7d&#WKlM3m)DHODt*wp#_b70e z46Bs=^xgh}$;7YkzXHBG2)-5~XMiI)dwMSJHokJn$B1Ph=g!5p@sp3hGkMmxCJ{Ht zho&;ErH^g8&3|Nn;_=tCc0+=GYyBqsQ1*9%xMgVzduHTVhp{(XH~o3ZnoZV{Z(3Gn zz1CC-AHcpv9wh23LUXgMn-b%vmF*sdpU&D6`hE&yOpMPfON>LVPav;1o|+tFP&?OG zBO{}X0T~!FK0Nr7UZd9oy*42*BL{so0lFARe03qU2=H`5HroMUG!I%F@8MZl_4|nv z?4M~J-hiyu{gvqSsfAWZ`b=x{ZpIebjE&vCbW~vT{A=HlU)sdy8b1FIxqscG@hj$< zsP~36ck>=NWrDbq4JP<9o&)Qw=kpx2BK%yY|=x z^JUaC(#vuTJi689>cYnYIrVm zV{A$FzRAv-%Ja0IKnAw4u2Zk(3a*PEwCzh{clxnA`FtDK4j)RKcQ~<$QRqlwQF@N4 zxl()!-dHMG>qB;-FXEMz)G^pHRkbg3x=%I4Gu4Opu|RwPJTs8B%ZRmEg_i{)dH6b9 zD_qJ>`|S(rf9+lS(6@dh?jvtrO#l66Y`ap9$fyMGY@13wDfJ@>>POmCKSE7J&@{?^xApl5d@`MYmF_r+O{PNf>E9^uLK*V z8(Gl=JlCR=UqshVMek0hZWUZUgAV?|op+Z#$huKoE!vBhcd;k0dAIK>``wjSnRj-64X~aEtZUJ=3(<8vJBcnkhED55 zw{@V;R*&i;{>A+>c+Nfa-Jl;%pdX;+)isZPiu}gcOs!jlYw3dy{(ca8qLu4wxi)R? zyXg~M2d;LjZ*(}vB5XnG)5VvPiI1nr^r0V8rhBp9`pWb<*>+Fk@3PLx7Rg18rAMx} zf~(pOCD#wRa(yK|h3Rs=j?a?o^QpZO&7DuKt8Z~1GI9zu*ml&P`k5mqg&%#Eu4+eD zbs&dw$SHLK2lXt<|LW|~RXM;lJLt}9W7@n-UnK9=vpStQ%6>Px%b8;b@+vzsr@kF| z)sDP+o;p=;CUL4FqqlnYFn(_S$am!b*y~oxKgbH+$lToCa?Ni_nk;>sHElmg=J&;o zJN_@Fjo+2|7sAcU=-d^Idxg=t8TD=1|GNG5bF%-C;xEr3=d$uym*VHyf#>EAH#)$_ z=NdkH7=N5`uh?S+Sl=Ub)wR~Cnb}i_kHDuhkQMh}2aP=2@L~1XF!@=pL)(uSf2x-) z;m+^2wE6YY$FDrwyBd9V@SpJ|n8zk`jdU67`=s_jSDDaN><#*? z(&$Q`(`}%=$jUbEm8{%=ert2+O0ajwJRoh%y1xxtGBm_{r0+(e?_B!X0R50BO5JYj zI)j7z!9f%BBf8$`j5X7t71u7in9fZfPcriy@47m7IAd^W!D~Saj9;|i=-flD&UN|H z=g@-t`D=_T1{`XDM@%qmwPk>4Zvr-OZ~K)sQn6pB&~JGu_G|157qDMzki9Mc_x7uc zzqM)b>P2%c%(3SDG$(kc*{>IsbDt3Wxaa>;&Q*MXoO>W`PJQKEkBoEX_rH;G?>u~A z8Mlet;RngMzCMMEkBMnx7tB5^PUf=?NSa;VgOhpGXth7->9NaeRBOxUR~UN_PCoO$ zx69q}=YPcUUr3I*cKP?x#+z=Jr^~Z8nI_NL(UTGQ*Y@dbdFJYWckI8^%zj`ERmVCJ!BhMT^u1EepH-D7lPhx0n zDb5^e@UzydKeY(C9j50-{zp9Xg8s)L(>Hn^|6?R$h}ZV`ABTGU4`gfx@$DY}gU?rU z?WOo1J-!F}ddi#~jS(M?=NzK0Lr0=pod&5?J- z^EqN4#0TJeyp1o^#dW}I888;?dVCMyXM7KiqBndGe53rpC&6_o`q?+cC*Q-s{eat`t0xy1cz z@HeZV1J>>eK@0dd)JftO{+ADX{tVCK`^ZF|hs_%2nQ?qW#Svwr)DWMx^WhoEY1C89 zEG2W^gWo5S>#kSqQ?a605d^xS{e}3|*cFU^YO&-;vH#^$IvrjT+ zY+bjuHiXUzpJ8qjnOhU^JqbR9E5)Uq`Scpc(hH1(xoRBq$9=SMGt;dsYw)`p@Vi+% zuYE0R=rvJ0Jv}pYZ2aYAZ?&-Ax372q!f)Ye#lk-@F56_s5IpowlO(WNoBlU6Vt}GxwAo=Q)eL8Z-B;1ZMTX zY!xtD1I!wL*?3@fq@b+JS75`e&VgBFK@ZFftbmzdC720@kwzP4U0i2i?cV2e?yJnR zudmCqVcn8qQKhsV0S4v+DD zqz-zS&NFzPOWSqa#?LzW;7d1ty+mGYNJ29he?!Hbw zyJkFdp@F46wNJ_;Si!#szOp02`P3J&)_&ks z_(k+BXfyL4z|{Y7N#&yoKhMb>}% z1ID3ztKenws>Br)lkgU?e=*;yc6cKCz~~Lt%Ar4wI>$da$2ZJz$@bqm$JaSdo8>im z;z?F+@>O8>R^{c$wY*-n3yr{Ca&7vZ)b^cW?a(#%mTA4S67*I6js8@@_4HE5ri6Br zYm2f*f%d&QhOW$~4*2^w<~Kf5!a54nkw1Nn^346sKG~`TJF$}3SW>!9__gbkW5mu} zdL9csA5Ze^mFPTl@SDst&OBAS6@xC{#?sAjHiupwP!Ov#?r~SjxjEc z|GZ=8I*nW7*Vu*AW6cQJ>{0KL~k&B-_7lPX_fE)Ib>dkh)BbceyydZcrFf%e>D=;H({JFW%Fu3^& z*I4{B`C+HNm%T@O)%PmK8lLB@K{SDLM<<-|q7x=KIRx?t732}T$Ro){)!NKP7QxF# z&MSW~;fuZOccTlWv*Ppm*zbJ4j%(9(!iDk&-Ah>eXbEc{v1W4jlDy__=%H;ovGIGr z<3wcaBr7$X81jlcas%;73!CX{+Y?ifyA#1XV-J&~XeURZ`U^L|to~}{TQ~pJd$yc( z>V@4p0KqRu@XN*~%lD^#2rdLa)pzG2pVQap50Avh;{-F}k}r}os+*V0-S4hl zL{0Y|U+>!WlXK3!!_DIhSNi9^ubEg|`ug~$t^oU>+W#(751u+h~TG1@zG)fv0KRzCCCxAkxyzTm()T2sFVEBvHLPY$wftF-Q8EP z78i9=tn1u;5Pr*Nk1}c|!uWj0Sv$77yO7_Cnxg}-M;D|2v&m~Mz1q|aebb^wZZY*z z;4p%pXV*}8f-AUY1=svkzas~dEAa#BkqxU@M`I1Wukcv`yw?v~pg;M!B=0=V^N;g< z`x*Z2>T!d2d6zek0q-g=HOtuhg|@v%^()eK{PQ|G=%s7G;%19{~n0GVVpdf1$;?=dABGkGwqcPd!2>82g*d;a9xxBy&(d z)N*9`$r>xvhP>-U-f7)XyN^e@vmf%;#Ig^qux<`~9y~-_`Mm}BGVa(yV6p|6)B=-v ztbezpysUE``kc9GJ|}DZA<1y`MNo1#vPkc@Qp6b!-*tILJ;mjz=W?yo)+uIN~NWXb|N-(ZgcSW@#7XUxMr8TIi-`fg+N*#P4x@K-)%Zb?@|ypHiKp~l6s zex&tFYq?hIovKzqw8Lf?^~sg!cfLz-a9o zykwh%>9=s#W>ri(!u&O_XCVA&HfuXl-&skWC$c>x`=c1Ym^#raFEz}A3cQVPHT7O2 zxdM4_>YT>ID?XmJ3O{KLJ*C+G(p$=%jK%iOpI>`xa#2=UcrCa^wkLP^=|f=r(B{+N z@&s@Zy(ngSLil#{Uk~o6!#L4R|LSgVx5G-EV0`MIGjzL_c}&u?ES^{24}zPS3$A-dwyI?MQgD*w-L)Q1eG;4`@y(Lx%H!C!#~XMLI1nHH znd=k4XZ;P-w$OhoT9GX&_{{#eRh5m+Flb12~0Q@89(s0v9ga0!Zf`1e6ul#86AKDlG-TqW^ zBJl6xd5!1be=}Je z%%SRT-mwHZd4g+mu@S$q;ET8F-dTK>-2N@RFJD6E@;y`=@LznljeV6)cdvczsHdp5 z-~MNw)jG|RWs@v#@-FsYr7es^EGjv}UhelOMdD^F3z&oKFVUo4$vV!1do_{Z_tr zag|4%!Fh2t9T?qr4p);j*Xhi40&{HuSNEmi%8^YU1y`?7JO97IRbPHl{?*0bGxVFD z7k^WM!_p(>Yc=~Oenq=AUrz>-feLI?U9?n+g_p)zK5F0+; zNUU@rakNFmJ0Bt5xtKT^@!bS5&^BVA?ZiMkh=Fzz13fm@7fQZZP-fQQQ@nQ^`WU{E zJXIcM6Y-l8_>MjX_&h856f_uNUI}#KX5!?}6Sr@E$X}L2+(L7nq`DpKuSvOf+#?tJ zArJeZ8y|ZZ_hw=@oE??f_*N{lmrlG1K9k)LdmEYBh5mp)MVk+?K5PPbjG{guOk6qw zToMz2)i}w)^3;j7<*C=hf=*9>ThZ#Q zSs#s7Pk^7lW9;%c4ZS+?2sT4{UpykVNcJf<)Ng?E?^)NhpY8bwe*y4UO$O`0oVTV}GEnuzKVxmwNd?wv>0r^mbeH;h!_be1 zUe}VztkFpv>-euvHAJ92)2{;kcv)ZFj%m2@fa0LJ{-sfY5&2Gh)`>fGcW2=*W;d%h zR(AHM-a6H=51nJyUjgQdbA%W1+av6+mj2r$zL%Xw{KJ}gV_-eCRM95&wb|>h)Nh2w z=3%E7mN!osQqf#-btQgZ4t`&5b98N9v*dPcI&?b&-nj?fq5ruZTDRAUwD4tQr`UZI zcKud*&AQgn$qD{XKlMawP4C{l*KYj7Uh5d> zg-bv7{=KiPmOtNn|K9E{Zz`P4TFVPPW$IThrMEA(hCcbvlF#)ywf&XOvCcj=sjjwT zP#`t{*+?yQY#{Q|hrG;2UgmSY=ELk2eW3Nv#3H%J>2q3rp+3I_3uH@J!20}a z%oA^0ZE`TmMKIuRs=LSF%P8@|GTL z{)zjg_2aNN+4Eh2S?fz6IJ%Ger?Da7DT|DsKeEI;< zeHvGn&ew6yweN7g)b!;}2yD`OPukD#)f32=)BU}#I^&i9VRB;p?mlA9?lLZAMZzID&OcK z?wA1X)!@+k&&bh*zc}~T0gy%1@K3rl4 zI_8EcW&7zHc>;P}3B9)0+w?lfM?CFy#>P5pUdE*L`6cIUUHh@X+AjD2T0BcmHyy8= zop(pLH_C5};gq%X6M=)gJ3J9N4vh=8yR<$X@;$N}-ZA`tF0K|ogFfNAJ@_2f(!UBk z&sr#o#m5+Lc(;B3e(rbYVsb#M^t~^rzI+!C0pVIa3_dk>;Zt^-e6wR|YYu1)i|Aw< zpTk*mK=@Q$|8wf=H~7pl_*C9O_>AC##J?im^R7zHJM8~n;h2evqeKi{St|y1enq+*=VSL~fJlz)f5zoNa z+g1`Tdq2M&fUnZ|jnAoh@Efu-0US2oK=0&D_WOF|{dG1hHq5kp&QEZ?=3;a!b635M za0aZm3D(*R=t4M?uj%rjaJGCzZ=5+ixb1vAsC6geFT!`5t<>JD{i&^)7l!L-=%jr! zHoeXW}R336>yp(*V}l?$!p;d``0U)|7`=W5nU zx|jLhgFJ77$5z7E=q>FD+HnvcjQHVF)7Sp-z^$U2Byl6?B65(i*Flre*9zc}co9AT zUTxfmZCQRO;0o*dz%SoL?{m)v;3T;9(1F7f8yudf1zv5u zN4e*4lAI-S4c=al_dBVP>D7D9;{NXq9P=fn{0b8I0bY5XfiDdcI5737$bM z_c>j_=fB|{3Eq)8)Cwi;vGbzJ|GM$7SQBt#j_S2g+@)t8&%MPyK8h0+g=|YY$ zP7mXZFiy#+4?E6>{}5v~N!I;e0-YfHM?iPif|rrh zsEr!r4|TOTHl@$mPqNZJw%_LsbyRyp3F?&Eiao}+$wJ>{bFXM!`wDpRkL|uf?XBhX z7MdRNj|FZOO@U9@lIgHs*CWT&>um*peLp-19AisFS56NH_etkugO|39?4G?nwKj3j zvt(N`_WQNBCu5(ly*(Mb_SSliTEgeqTPw)kT3XM3sp*0Ln4Od0p0YvcHRm1fyIkJS3f)4@TcE%LG!RGfEFi=f_Y-BQVDP+YG*1p_;uA9eR z08{&Aw;mJBx!+zZH7_}v_(Ki9#R_eGGaI~w>#_p_hjiKdZE*f2&eg9G-bLSVorBvJ z=jgNdZ%x3n>Z@oY7u2@O8w!udcbGt2h4~1_QRY((o)veN&e1yjVUEg2i|?r0*ruA) zpQOMw&(d>*L&Jl+xb6|~3LM&jM-;fk!KJ&uqWDm_H0zugTsk;ptioXzWBkGdfAdr9 z)A}U1eEKGDvwE!0;gZ@UuH8TI+`HMkI+Zv>zU*x)6x%}V9N8CL%(_*^rt$Vqzyga)J!^!Wzp((t><*W?9H@!8JZWCu@}bKB26#(7`5IoxoL zZlbytJI?RJHpGszZ31VHh{ffp$A8%U5ypSy30`bM%YtG9M3Yag)APbdMMwLxRCt-u0(uvGiIEX@mi zne}Xa(32Os$>6!mz;%yqXn|&o>~rrrw_=$Y=0C{;D{5h-dY}XSMQDtl@BRg7XEx@*Lv!`=yF^ZthXb9f>&+W?Lxz|YhoZhF4^ zrA@$zejBqd%`o`|wa~I?glCg0T`l^zWkgo6>mA@!>rdHwU;Z)mF}#!7X7ywr{yBOw zF@My~L_rokUHSUfvt62X^y>8^y)6 zHh^pj7f06zey?}$xVR4g3UG}gw`2#wvu3PDpYLYw%=^C??|%GQ%gi}D`PBEisS)dk z@5=rbmR0zdlb>$>OAYHkK-cnDIu4ennz5Hgv-X14x?WGrvKYBHRCQsysAJkuo(it> zr>6g<^2nruX~|CP!JGxPw@%CTe>2JWA1HbC*&I*aQ|yCz;RXwKl2 z&wr&l8t!#zMle;MVLLE$=c#e;08Tpo$T`~U&axH)_b2#^^Cy0=<58KxaL>6f_y^95 ziTC-w<*XCwv*QWGE5OUggExPk`?Bdz=sH*PV&aeg2kUn{?cnV~>v#O=zDroY!)M3u z7fe+=t9SgqVlZ*Mfvh8v&svJi#qjJD>;=`VfG^~e(Ut!sI~M&Ap*Cb#j;A$-&Y4}{ zZHbnQ>MHbSiWtgrXF@xqhn z*U*cVMcfJf>49FL6Fmby3moCI)_zj$M?40-d99aLAggDQE1yfQ+^r+<;sa_8)XYIy zjhhD%|1IPh?{&ZQJa(t{+K);>_O!4$KQkE^_59GUjS#`3bG8RRbb`~+ip z5;;O2f_V?I`az<*aJBr&rQdv!wVCaBmK~F?`+j*@3wuj+ms+X1AD4$7-&r0?RH8qo zTA^sE(W6GTMz9Y)OTT^$`bS=u#gUtJytni(-8Y$ge^DM<@pJ7*asGSD)9(E}{G)qx zEp>43d(SOt*T(N9X5**VXB>Qvd=jqoZo$WeNym86T23-ZJ~})Oxqv^l51G*-J%_9S z-`IGbz)P$}modoSoON|MYbzG9{@7*B8Q?A6$XLcQ?{Vd!^l^1}41X%{ zFXJc3zuyKQZRKwt@YCLyUwHFW!xlaV`P($p>*$NztTzhCjer{=lWLJuup8JT}QnedbDXWcb8)T|*8Uoc4|j z^)qpyZ&34k@_B#i)JFE#_6$fyORTD2_3Pi-|FZtA2j}`j3-hg;9%5dFd3To;=3BQM z3YC`?_qQHiPmJ~>!-%Z z`yS6CKK0N;vWP&wqP~tDUu{-;ghoOl@&_uVVD7l2YNJ3heT8d}Q0+vxzIepO5UCvf21; zE*~A(=`S0JOg!*oe_1#EhkLNgWqZ2(FZm+*iq9BImoHIdZ47wNf=BH!j|)60oBd+4 zVNHKz!~k11th7?I$cMzTk;D1OGv>A)xIPD5Wk(x*j4Zm)JfhS!xbqkU&NQAm$awnb zObyE%)qkoj%MowZh0?NW5o7I2~8^_||`HUWB)T;e+;U#OpZ8Trzp zUOC_pbKs!4+jAxcj-L5{%-f~SZ}Uvi=LgZ{AE;}399mz&UmbtT`3w6Bv6+j4OU(HI zb1r_cZLRCIR9t<9_H^M{*3OFEXGFr{@-)|R)6ZJY4r@M zxBj5|;AQj~n6(e)QVX(@Yo6qquRGT$hclOJvRDJiwy)Lu zlNJ02t~EACoz>Ipb0x49O%8Tp%-kaR*oXsw^+5D7a}dlI3g+075$2j+bFvq@aOdBN zJUQR|g%{1c!kKR_pFPa8#C-PFh8xyC+jm@NRO7<9PIEN4zreWeyui4$$Ea|lf5v{V z^qP8?1%p-ZlF_T)CA^9`uYqUbi&FHI@*eVoW8EUvm9h_^S7i$7v$w zndXz-4E!YLOiwJoEj98kFYu4=A?sGbH}?QHWVdWi3TMC0c_X^GIBIJzjKDgv$Cm$Ee_tU z@zSTHIOCls>|E12ay=Gn()ZK4QjBvJHlgNMjV)1w3<@)T=|LSOLx^`%vpz0RB=|8O zv(7nlQV(4wv>+Mv9CX|^kt4L+cCSD5oI}sdv@*~D~f?I^+2g#4JG`OV8HSI?w*yx`t-z2Bg`)gz`E6&`E+!H)9 zfd}zK?Ip7c#iJ5Cooy^JLmUscU4T0NGHot*C z;Wjjty?U`TL*Olx#d%-6eASuT;)~4f$i3(2H61U9nVXA`1s53qoqfh%;f(!G@T9SO z82fO>Uc&cFtc+Uf1gav)D9Nj3oRjaaji8gH2PF5U>-)}Qx-*YEFEWqy7nq0gn=X!w ze)2i`2^*GLmEQVkCGxWVJo*WFJ=5r?Pxt7j$Il>Nk>_V?dh4fW7^l%s^~g7VbL~9k zuVX9GJ(8u!Iq9d%nKv;3qYG5WVAfJT`?VuAH&};PvM*ho<*UCR{LTfxVV*UgniH+p zt=Mf0d8fF5YD`&5`Z40|$WdakW>4kzN9XU94)J2I zD~8@)gI*$@F1|RYM?M``!aPmhgV=OCac%WNN-k>M>4)*~Eag5`C*i{eSOVPa9JAYRMVwrDW@@{}3trsguiV^@f?^*Smq)KIDS@5xaN!9L(DO2+X+W zVlZ0)%-nbDy^3eM^?4r%KgMrzsEps_P<_J;{Kk-XyY^}iFtqb-J@DiAPGV>2?=rCb zoP0cQD*N-qzG9;L^xB>5Gzlwto=UanT^LycJ;-a3y zWC=Rrg=XRo&hJm=S%cjB-Rts8=usSD?4513==552dfqjbS^wJ`QQRai_zB?ZUjIvY z&hSnybU^L-n%l)Y#SZTbb$G`^T+RH(C zAoM|MgrNs-GHU2See&<8iCLlv?zRA_V(cUdY{W%hF_@Dzf*AXIdH0Uj&=6Y!08V7<)qK%movT; z{e!7UJ8(*JzVg!ek_goA%JAsY+?n~kq=3(+gp9@vaw{i65tOL5>DmtUBt z-u0pQg?^@VezEHUa@l*u=9vfJnd$JzGBQqa_aT>!xvhUTzk-VB&kh-Z?u2j z^iAbu^&aac+2;Q}j&)>^f03i&*$Vg-9hk&6CeC+kb9vA6rvHQg>5zVD7r%miQaXx;dKjuNfspV=%E;(?jw2uZ(GvPPZ z*EjlU3$SSfPHTZv6X#1Vjo&^k*l^FqVDtNbboh;TUlPAD54*<4ferIeeMq`~S6xVt ze&YIaVB^ly<+rn?z4tfi09Ud_vo5B$;KP0BtsHU$x#S3rA&(W?7&h2bl>@(+*amz! z8a}Lt4{PB=?LilQ9P8|(3-{P6 zhY#04Q+3eSO6aTJ;lrk@%OcdiT&mt{It8t9-^FOHocUZx?@dAPZNiq^ge|#@UMylA z_ButfC7IJ)tuMx$=4ss|=A?C#)T=OZsHb`KC~tEwKIHo6s543DL%~V$u>}2U^@0=Y zTideJIkwnG1E)vf!$%xGTnub#fzv|Zw1{(h*wSt5i`j{v7i_raVz7Ca+5-38efhBO z9!aMb3!#w)JrWYS_eKoL2f0t-16MjozCuU(Mw!P0zq%V({;pSfamTma0 zqKjB!8o!NA(|gs9-cy`V{Pw^P{VC$pFHQ53ef^>}b#AGJ1_~TJXK8W$F=By~_f0>w;|S=3MNz(dBoS zEwHSc)Hk>nn>TYZx%N94$7hJQ{iHlp6DkkME+4dvKBQt#C~}o2lmITu%WUSl4P4j3 z`!aq85AW5rT9+j|n8WqvIt6&WAtIEm4P#=HF zs;VQ_P(htw^-im71NSy@Z`fy%^Ytb-oaA2e!K$}#?vdEL#T`B$k zF-N~UM_(U)sdnT_4LouW{Bke+av$eLzh6}rVZFagl`GGjgm<{_V!SgJ-nkUHV&aOD zE6i!O>49>1sO4jZhp3S@a%BYTu=SEFT)&#S2hGW~rv<0I$dw5FuwNFOTCQ~Ty91|6 z`)K%WHF9ODBUh#an~A__5^$>IoLU$IbH``Dm|VGCu;CsDHmfh>v&X3$iqTJ0!@EC( zTroX9bB+IgWnlJT)q8%-*7M9`KDE5s2dA)XN93{4nZLOGH55IEQb?LxZKz<4EXn zti!iWSC&O;FNtr-<6IwD`zEx>eHWw6Pcgqs;M;Sw$((F^;7Z3Hxbl5E&*58}Ho1NS zwG=Mj3Qi+{ld%Wpc~UC{r^+FYJ>VQ$?4yCx^YHCphi|U}Hu=D50B{<}`MeL!w+1$! z6KuHWVzBwsKRA5LyDy1vnTKr;3~}s%A@75YV-MJ{;rjbjXCl6J-eut9*aO!(_JCr) z;#0f+G%Fb#Eqh?*&Qb8`Xk&ld_Q1ZKwmp#l)x5?9?9qK4Hu&|}1mA#He+93uWnB>2 z;9B!zJvKr68&;_EC_XAYd!o^kx(+@5wAZ@nI`rk!=|xQ*a6k({q^Lg#-MA*qHDkZ zN_lAOFVV-IykzuQtLmxTg4PH6<+V=F#Mi|>>Bd*s_Z@0nc<-^1$g6UCSEkr8@CdLf zd31PSgSGUvm+9S0yg^hse6C|YTSMicZP+my_l7lARg&7A z`hNMXUtm79%%|8}kX-&vtLl{IbC5pdCg91ugx3i1H1yN9no}A0Fkjui>Lbi)8gr5z zw4U+EW@5dsRCo_-e!Xnh;Vu7$Sqp|5x7?l@H^ugsKSOUPqW-JF;JF$tFwc@o^ zrGa?9e|zmm7|*qr0OO56EHB$gjpuOacntI`J9NR5&;&YW1@zPi?bcE+SPkuZR+6`y zNzEePo7}C%p0e6kX!v;-T1lP2RAd18 zu9@HI)CT!_o(X|O0Q;lYW5r}G#mI-$nQ5evcw0cYWx$Cxvc*Pe8K}OQU}48 zt`}?!{5j8s_ww$vV`8G)CxEr#Y4XZ0Ps^ru`FK0^Peai;*bOg*YpApI%T~O?u@wi~ z$4dL?%Hmi%GEFh+Bz*b?<3H+6MPuSw#i$3Dg=>229$(G{^E^iPgpMPtxaVTJ=U(b& z((@F3_e+&*>sd#DIn31BfWE=@dIHQr`e$g4y^ervXeZBO>l?1$P5r;}UGFyC-n)Ol z@@A9gZU@d`WJm;A62r!+(lHA0xkpj|N}-HGH9K)dSdmU~+0?d-qH6 z*2$?x`n(hHU>o`8l|%iksa($5%dz^VRqw_@YYhU6aTATnDx)Lt)RZUm|S=H{m3oonm)Xc?9Q0RH`o)3GuHS(PpG>c zTe6kU2R(}Qq&y|yUOY{XaWOejWQ3`G*vtAJ=GwvKAzdFE$dP+u*nhKDGk@-N@5@ZP zFW$iOr?V?M?@0ic1oyT9n>Oy1?2T+oyO+N2KatB7eZ)$=tg+49k++EkV9T}b(~;HC zFh=p9&aoBv%2wdm>%5mWuUwk9*A2`vEx!Z4i=oTW z({1SEeauny-RpVpOx3wi-+ddk`x#DscUQ|G_8tHyzRU43EW6Hoi#HX&7kp2j5^9?< zB_#Ytz)=UXS$W=Ka&q(_n40dKp}xl4%l#<}8^gsBwXoY%3#)OJPowt!paooPJavL6 z124e}ICa%rZu4D}eeB*1e*y23Ob6!FBozwgPJO4YuQB^sUJi|0b`3c9*x$ngJjb@Z z2HMxP3^dopc4N2KL2KF8Es1RA)jc`X?wb{+Q~QFaI229O9qXIf{R(%iqU8H>cefUjzS4rKghdcWB&$D;SgT zP#g?u|E0CY202vo{j1G>qY340(FLD*;=P78c;ppo>)W_y54x@mJc{SU6RM?jbp(2h z`uV)%w1f0KtfgNZo_MS2uc*P#?Nx)n33)5MH5Pr6T${!Eg14uV@ageIx2KN7ORoK3 z$CvH(3a$ml_oLU^2Es4cNC|8UTV~VmD_j2R(m)Ag)tJrw?tEO`*6I&k`TpNm*NnP8 zFx}c>fKBAnv7d(FH~gSqzt$5){aRm`>ksuGXx+3BT%OFmyKEtK(b%zN z-Prud#j1ty{X_8mY3j(&_=>3iACTO4Ep`3y$3qnZ8Vl(GIHj1LRa6@(w5n9Apx@-D z=vYiojoU-;rg=tx(?d`(Ts;Kz1zbU2z-5NNRxd)ne~a43Z;_`i_6|xe8-{#`PNN5` z&<)R(m)($I-TVW_wj29Bd2jnx=yE4L75G2vfN970ic~Isgkq!-FX%xK90Ix=ehV$ik&W_eyWq_>Hb;VuXzm7^#eSijGqu2#SclRIRlFp zf9Q!mW6`@icz2HHE89DGcRSCCLqEcuo*5lb9&*oJ*csdO5@7auU?v#80N#!=c0co1 zuSrqG-DMApZq#SOIF1UB%&UK}JoO3R^S6AFYYv^htL#_!pT&7LoOJ&>u6=<%kY9No z+x`MQAe$Jk`|O!K`zSEc^K{J@t(*yWTZI!|u!h`X-?P}2%<`Mn?|r>za@k$vjqk#@`vK#8kQmkp z=uS8jU7lb+;~#kZh8OgGatrbmdJeyBg}%Vvmg0@OZ}g{TpnHz{t_z;>6^tqN_D|x= zRP_gD2R~KVcnaNfvdHF-hvAPk@W&$fquVnuSwjAewK8kN%y$61(9PUuaxUI2=csp@ z@AVnjp6K$HWxyXk_(b#}`D*h?L9n|H{&?FTGW;P~jLd0=2Rh&Z$r{O-#}UEc(EVR{kNzp%m7*?uz6FQPhI^)&PkPE$>o=}|8TPBrKHeqhhFUURM8+c3%e zuJZxG+swJvbnPE3<9rOh&vg8*1M|o3e6=92{?1G*q!^6$oRb~;)b{SG1;k-Ij9v9g z%ZY<_c3B~Y#Ao5f;(h7%V_doqoM}vX8@j9JGp4=R@2_CT8$X}gMcIXU^d{wu$ZPD_ zr5sOja6CB7El1|nWA73#@=l@F=u_AsD=SRB_y+hY$y_?I7fuY2?^A%^njduMvx50_ zqPLTb{loy|CUbG^m*e@~)Y5*r^)>e{8)oMGwxWUm3=9FN38=P_V#E}@2Xnupn z#5_;@Epq|pf_*wJI=Hv<3^^fSeFDEC39Se&Vel4VzN#-(E#rFTtY3E-z=UQJlFZcxKSz3=~Y(?t9 z`Pc5ezrd)B}~1Lps(@og6yWl^IHQXNF$oIpyGX598T~Z&MB5Z6MCk z)}ZzN{M(1;vi<<;hyS62F*Vr!w&<$|kA3PY7lX$(whdm{_mgZPyJ#Pu`t16II!Ruf`u1( zPpr#^1^Jg1#A%-uEPNHI4Xk0+GY53my5SB@54CCf*7LwZ<8j|@;4(^Zu@3(NdOCp} z+Hd}KJF{53LG%>f3hnHc-R()%9q+EXlKCh2JePasI`4LSpl0%J)pgJ2-4WAUUSUQYXdFXwviZgcbo ze`0=fh_WsUP_653Z8Fv8?Z%Kc?H$FNytFb)qb{@dfn#577JgoU0e2^N*6lr(dz^2iT0e z(ecZuz3#w|i6YCz@1w3gmrIU9f`bULqS2J*E35 zalQ=u=QL}l>K@To-~08Od;bC5j~%*M)qkY~#$}_j8jc+UG;~(&c z7WF$nj4G(>Ffal>j{v8C2UkO4)be_Vm^{tf$o{>oYjpZWWSbW~lSREzf18J0J}S+# z`>01$;QtvvG&6X6m12k)L27hYtM>Qwi{+_FSM;wrgr9oaf%? zX8LI!utFoi(;)h=H<8vE@jL6Wnqly^m0$nx$JzJH!@7{bQENY*?)IdTEz+;z8|`^f z5S(MyMamC6(vA%TttMOWExXxwf%hih`D5s~;|GXMaR0G(Pilje-};0nzqQSm)jBWn zl_PC`e&VTewn{kD~8od&`dz?Y#+IzOczt z_QF|uzB&Is$1t{M#CJt-Be1p42a5;IngP}SBbjCY{$2CC)=(-6eus1MpkSihn_!}~ zH;=I%-V2xeQ`?Xg)$Aj-Z!UEvTddUG@TB_s58u=pu1WyixCr|lqz`rQOzkqk= z&>wzxZetPjHV}IIGQI0Rf<7jBFE{jd20EC9j5*cnN!2_>Z1x-UeD^bS)6);ul55ND zmx)t~#vksm-oK*Xpz0f;LFQw8q@V_)2@GWhbN`}{)~NGEsP;GqTn&_f01$7{6eJa~;>(+jVAu`Ny=0I$fAhmj+P9lSnF4F)pr zX5m$N`@`VXmIXz@n}jQ1eCohC+`88bw~94VFqkGkih?84?^$4l4uj8u$c!7k1A~Xb zsSla)MUSt((8!GbW)B$Q;MCjTz{m^j<74E7!9}fu3-Rcww{3ah?$IOO5MR6rZuTK7 z9_KIN%WSj|wbU}Y9Ub*|$PQOOn28NTM~V%1u*Rx8x4tyy($_=KnRJ5Woja$xGpuhl({k1; z$xJ>)>`?gw+3Y_rTpD_X{?J+2q7M|(KPfx4+^QPgFSoU-D7W>k*qC1P{aa_goyF5b zqbFH6Ekh1Hg&gYijb`7J+%dX8`e~~wAK5&5bbjL)>)q=d0euH zaVVG3+2TocPp^ z&X7OEuX%@cK{BkRp;@C?A10gUwUnnS_f(cGDI`vU?&@l>`=0!_;$z%~ef@`14a-?i z)~w-vAO3H(H?@ZxrS&p7+kASzknf_aDEE~-bEe_{v-UpVQI%)H_nANWA4o7@v}i*J zh=3L?Do$}XGnpU=Dzwm|rTg+HC}`TEO}p3^`zDYet?0s(_Dgruei5VM3~iysE}qgB zG%BrW3re?a%kIm}oS95QgoJ|CBW~yW-Oo8^G84gW_xiXlu9KNL=Q+=F-}iI>zwc)Z z_;ALE@=me$4qR%C_pc6BbEbUu80Cx++sFEjxy&JOI%YKI*5zwIv22Kvkd_)ES7x%E zD`Q`~t!uiQdMcio$hvFpglFxh#%7P#oXA>gSWA2#pZ8O5#hl}wYkcvNYkb%OM^z4% z*fWg#&|K`8*2$r!Wn$M%4y|wShs*1=aK$~YaODbjc&NMHET{je)>VyxY-VV%iW&{4cYj8O8W3$dsC=d`tWnVgP-sd z=jaEH-=qg#1>KCq%|G{on}$htOv}C+)-}Bg-0(~WH`~C)jx5}?^SQ&uP0eIqeEQ^E z+;mN{aKrctH;gN|sklc2KQ?Z5jlfON#tqLnxbX{am`4UT!8-H6Coh7V#SU&hmV=wm zIk-7K2U?qB#!t>6CvJ|JNX;>m19QyY!8vB?+#Iv-ojGRzg*oP_^c?IQa8m$oN(46# z`38|ULj@LYj@|=q*oU#SreA2a_MU^A)Bll$o5k$CrTCM`_0USM2(9#j8}4^-Qzy7t z25veuGoEhIql?*lyyJ>E`X2HK=kyQ^E9bgWM&WXz_J+(Y!&}Sk#5HQc| z!|uZlmT{ePKm7Sz``6jS7vnR%Nocv%u6ymauO6G0w~pX5P0;T8ELz^c=VqIhgOhym1(R}V znQ;{i8CTIV<9>k8Y#l+%wKgsDtV7FBO8<^*K2uBV^J28T(4pn)a%edWPf~oQ9a`>y zmOG*4E@*idw7eTy-UBV~gO>M0%Lkz4gV1vK9AxGk&Lx}!Eq@U{vmnD~t`=GrJ_9{p z@Ko42CDzrU>07gDx&fM7<2KK-AFKbK{`8-qziRgHjr_jOZLXl+Si5OfC{`hSy8@cG z&IQ@L^<4W9bTa1dK=|_iRTsYE{vh-*LD9v9?g^oPTn?RhszZ;g(ZXjd>dkYN(8+k{ zqzXFmKqph6lZ7^&uvhw_59_RuG1wm!kw2VgPvH}D^c1DH;#Uy4?a1nL^!dsDJgCl9 zDvCS^9-{aW)~c)cDaSMLx&hRm4U%HQPNP?VOZo0ls2t zy93&wL7CtDEYH+=&<8kICc9sN>c7F5 znf^jufr(&{X~Eebiov4kvLn>3g4S)yx**H}qDvdf4Pe9yKIS7F)lg-dtITF4=um4$W=? zK0>o`zDKv=SyyQHTkHb^pSlMfu+^{hLUqO*& z06s_gKF%{yo=NabvLk5DsiUU1GiaV5r)L*)e^&ItN&fKb*OAlHP)bfZG}cv0?U@#S z4c)M})1`8H?nmG2s|`|%LEU?obzW2cl|>!DM2CEx`!=BKNls5ASEn{?=T34ewrFN* z0G)nEz16S=_sl3zl;iD~eReBU7T34E{e zN{k{aucW5f$}7PpGT<#c@fR8Gb$X(sPEYRGq>IfeF;wCl%&|pJ?q=S*G~MXJ-@c9g z#@bTbSQoeu9sbMY$j13QfSw!#Zi(r4=uWQ9#P49Ia<6d?eC$I;)>ty~LW6znvaV_L z(s-KZ(f#Vt{S5T7!~(Y&ME9#l_cIpq85t__(l9Rb83UL3WQ^5PW55{qOTX}%%j`PK z3Jb5n3M)UTwL;|wC6?Eji4El21jpF=r+w|Vu4(j*#5=?Yn8RbtAvxWRuI4s3Gl$2R zLvkjcXUQCRe+lnzwa&4o6|XH4>ZBxg)=$CBtO$#&k~o!gsT z^(^0l-}#S9S3jzB_3_w}RqUg4e$xxTN^YaZr_|fAg1M|@F2B#dw}yMCxJ0ktt8s>T zEMIhTi^s-!*YwBXgV10MJP3@J971OePRQApm)rZ&D1o<@)tgE9Z7=*b1;6cs-}cwk zlgC_d4j`}JLSCOnUY|i;56-SPhmhB2J*#}@w$9Vf?{3l0muTRh{y5m(R{T)%z6$V> z6_UeRL=XOAbvAE5a{Ls2+W~m!Tgda%#6Hi!X9wZkx1V@V&d<*El*!9DO?8#1*?vbf-AVzG5p&-=+_q zd0d2zS`1uEfNLpm9R*xR1J^R(S{@nt<6nnsZ8qE-xUwz>uCua#x8eGf(B6cK(8dvP zeL~=R7`U#p;mY0+xULeo21ncb(7twCSMhPhj|0nfTu%VkV=mEak4m4bhYWPlL8XIQ zb+1adEwl8oV42csFMyw~VE-w*Z;>lJ?jEZS%hGGhM6bo4QXaYI)v|#`8#8M#2#x1J}COk*w56V(}+G(ZtFAUmfq_b zqx71y6?JBeoUu6hZU#AX2~P-prp~+{_@y{I-a7lN3OsVw^#yV)*#D=|Z_co<2f=5Q zeNu#eBl0qa+!J|t6FI_t+$%Cg0>b01UgSEz6FE% zwq9ku&*@1nd7+!eYAXJ|=_&k;d>+L+WS%kLz_}3Ly3lR&7f-p(Z>;P2E^iJm`S?Ox zhvNIV$8D~WzD#M4E;4u-dXB+7R@XD1W5g_xWy$rLdH-HukI!w%3gP_|bH;18$E*81 zG=gm;GF^OnsSU_?;4kAPj>$MOhQvnm1|FmqCb~g0J>&@FaZZ!OJa!_R&Ql+pol~Fh z%$4sg+WY&^j8jAHlNeuOC@XK0XRgS3#sn^+BdYtgo7iVpgeLM#yYmb*c)t7coM+z3 zenxu1^7}ZRDI^zDa2G8g*PY(jZ#~c07n;NA)=5@RH0E`L`;5k**?NKe?{z`qLFhf` zY7OLn8$Fs%Z*Y@5V70H3>?ec$qi#?^oy4_ZEJIj@f7=cho{KeW9#b0M+raGLjPv1-&{!^ zm2px7M_1TCjM&RfQU~6=!+(dmNc2N}CS}6E037R#h!GGBY@&B0A0)W#t=pk{?!mUFG zDQGx0;vLg%IuN)gfIE4?dL}>nI`T4||li=HN5 zf}Y5g-3&dgrmjupV|K&056J!krmVZ|9{*Phu5Ed9i&pS>TJt{KaxT53U|!3c3C;U> zr&jpzOZd?f;5c=Vd$od|wm+qBvd7UAdxmi#@VFShzsuU`sjeq@XM^V5ihR+fK0OM5 zcmw(|PSly*|DJwfH8^IEXZC!u3A}Nho6wc)VWFo>*=0%Ky)z5m6$;)~zjw<9!v;_` z*oW9=t;N>Cim(#ONKi+bXVPp>}PDz!#Dczlb~}vM_!T4rGPv&`gU$5&tFIX z&|hJ03PvN~e4*Q}Bk^3^&pRw*J}&vC<_5umT~kspp)Oo>EqW$nSp5HT%jOJTZq+Nb zUT)c<>UV5Y-l2Q}>UTb?-?>stV?A%xrd$Y)v!5TQp5NG8a7(lceRVfB?5;Ycmx)dm zSMXPQ*xoj+Hgp4Ui|=-u^dL54yQq5w9)c_HBQ-B(uifF%_S%pK*4p;6w(;mN=;T&y zz3BJMZKbLalQl9|=4RE&$Q=D)7qw!Zau>c3^!y2)a1n4;x<1cEMb~dB41L@LW_&OD zTN60@68|6O|3mzb)dtOK=qd(}k0OtH`q1x?5pnp=1kJrQ+M(&j?4a5Gm-J8WM?c0# zuMhevW+mmGWhJBePiJE&T7t zzczIzwOL!42RV1*ze%wNMaNC-VxHLUR!vsH!0X>jFZtEA{&3F?_{lt@EE)=qB2Q2Y z|Eio==ssk@jaKc^sWm};x%kQGy&%5SJ0=guMDdfU+Bf{Idw)OG^u-e0s@kobe<6<9}c9 zr}pFgm%M;Y%umkP*zs?o?-WPg81em+>ifb-58qdb&WfEc{nEw9n_tHmCD2$2c|hb0 zX8UvhT7UWg@xW^Oea7kadBxff_NN~VWciPc|BnB-K>3fus7f5|>l;6buxR(A%_yc&Zgl9_mKZ@sa&x!b>{alpqqYaulUY-#>ZZY~)^BA7F zjQ^Yi)1`6dukZ`F7ih?kLn2fuJ=L#|f;*h+=3U#*b-^jGHK zD<*wAW_U!7>v8nXdfuC0O>-D8d4PVB73im|Z7y?6q0`Uf9dc&r9lWz2*reApmjU=A zI5@T5*@K+%0PV-2@wJ>Mqx=l$CUURneg^j^(B~376VHAIUUY-xmB9Cq)jqjj^tQx^ z`x7&R=0^Op)_$KF+HbwXtVS;|_G{+qQtWzoRI(XZac}Pd>{#eea+wt@gYa$oVQ2r{ zMyy{02V&dKCpTI6^%nRwHN5&%eE!oIPkNh9{0#jmMir7bQrPo$!11~SOd?ixDP&9_#sN?+R=i!Y{kT+7B)$eK}c_TvK z#0t#5-Q>^h(#(}}l>C4`tz40>a5l4>J>+2z#gHTDedfO~?>W$3bT>4y3;jyy4EZZ? zF!qDn9)Sxu1t#Kqao&9hy2<|hGd`meoA&_&fuq3hGT`UTX%p{l<-Jn#_*3q?UEVn( zXddEy@{Ts>I>~!QzjNO0yjNh{L+_52S766CjLw1Kd-JV5uHWOmWN_p^tb>{Uhc~)Y|(etYqtzB z&nmZfpoKZC{;%{4XMsiae7`yKcE9;&zka;fuk4zMw`)tTz!qy7eMQeoa?YB_ zJxjaEADTm~hj>Qfux7qfT-nofS!K_9et&0=W;PX*N4!om-|h69SF&IJK>mwXBsMSS zMUpFdp|#ZV?{wQ&9&% zq*BXw$#^O*&3hy+UAe-J@#6;_qJ}9a|K$XG1ix0Cd!0F^q+bN{SjC=D`7bB<`;Orp z3xUzQR#_ZR*4UVy*b9;p?$R zc-rn3J-U@K_O$5xPl>PEK4TUAK=u9WwyrAo0$DfI2rNYI&E)UH_<-%aCkLi4lc#f` ztHgTNu&*^1{?psQJI`eBj-736$ijOwpIdFbHAncINt%z+rfE<;CzX1FgQmaBE}(kPv*jGoL`l}cV#wC4RD%5 zpOCl?a(kuZ)o{k2$PmeE`@G<^owcs9ak|CAX`SG-)s8C>BU3o_*f?zmmsQ|#4OfY+ zjpuK8#z>srB{;=ix1P0e8nmwICUD9#8JsQyhs(2YifwPKv2og3;)`!B$;Bz-Dx5N& zm19EQIeS@R8kH+t-MDA0nnEIBgT0 z!k?+hVjmCV^yy<+d)UTli^^m3hBl7C={uXi=?>P~08ZJT(N=KE_`m5t*Pd>!!d|iQ zNnB5GGqeLd7J$PBt`g6}?zqrk$Jo*T75)tST4Tka9NzM1_PqA+EOw8>TfUP0+kU=3 zAipygc+wZMe>=$c-NVnV$^MNveYD4AY9+`AzbjNd5&C6r1~DL^-=E1^yICtT_`Fe; zgPR%fWYLF*p!K2P7@zQ{hZl-XUqp;aZ2BT{XXNv649d!>8KZJ)h^g(>TB<@Fhn%SaSaF zT$Pt;j|E<2tbv)!c^*6cS})^e#nZYAGUMECkCSR9-h^Mp8E*@*n^ZU7*?t&zl$tP79w;Un=B+jeZRvSTl_7E|x0g`+|A?z!mQ z3j(IG5Z$}=abI$2zeMLCp^W)I6rsB;qwN@k(#d; z`7T?hje060x3bq~@!zT?D~{Zh`MW4`BY#(^*a-Ah!d@D$=|&a*u{R(5`z*U+yr1v= z`sw$r^HI)vMk#w@>LYTVNLh|Ok%zvUkKW69;nULSd7J*x>gSfaqOhYMJ^B=SG(Lgt z(hm#WQ`L1zpVysVrYG4PbhSJD=I$o#g;L^5TfbJ)(YVt6MxCo<>s=2tzI!*iD77kQ zU00#-gmyb?W3YJQ~N;S@SSe+nIX4eLDS(SI|h zML)e>(~t1{ZyD!?{(!!SzEc8=;aZctftSC4Px~W<9nUf6XPNt2=39uKev*27KYlN< zY4Oi4N$w{PN^&L1%lYLA=pX$fhOX`8EgSGD>AjI6PH|>8`B-!D6Mm0+IO(zK)s`%O zUkeMJIQ3A=ADEswFWU=loqQ4UQ}px{mz-s^_gUg6^bS%vA~C-2=llDZ-?J+|MtyzW zz)I#PxoM&|%k>QJcX762l3ekFH_(fKeiyH@{?}N4FK|))#kiM!jDPCt(ElUrFjz;5 zbdk%+pMN6nLBCDRk8O-bIurpf2dkL16feQ zIEruEc#v4(>wNbtvQ6semeU7s8ga3=Yf7li%{_lN0)G%4;CW*2eVx>pG?FX5E+Bb{ z)LP%j+3i-(dg+xNZvgg3H1j25_tFD!EpQh-c{+RZRF`J@;RgZuL0u7Xk<(_oMyyY2 z$^+pX#DVf&Cug*QdejAUKvWFK5go&&ru)uaP@)QuF_*m!2ZB zw(Rl#`dIl9d8fquL}oU;Q*cZ6Jil}Q`S#kYw6iOLc^o3CB>{XZS#ywaE8 z&GbS3>U00}=o&8sHwVA zp>?ZgwkaTj@#(h|h3*goVCR%ujf|12^Ht@*aoRCmECV4)0+; zFJTOUZ>Fz81AZ0yD%6ovBrtc=k6GZJ&D++(6NEOi=TgTwA4ZE8qr)2{c4F7i|C#6e zpkFs<6!$G>FBAVzw74I7g|?-4ba4%_=HFFGt2NhR-o>tjih~Jw`Vc zD}N_+Cgz|JAcM}qXJkCZ z|KO?YUEwSB=pJpFD|Gq4pKW)>kmtmHi7f+nOF2`n)U{Q5&NWPMz2PB_CNwJa?R85X zOmS$n{4tJ9ITVdQ^Q^5t=VKVawQ`lbFX+uGd<7!;v2n~F=Fy^bz?q?O zvZe*Bg*_cx$TdrbZDfBY_gV5>=B{iSKHtNd&U;4X(0UttPtp1bXb4;-mwEL2S?g;n zZVdJALWjlgnW_cf*w(2IuGrGaCXb#Rq!$Zw7aDkqwLZ;yB<4KPj@5g~Eo|d_(jBZt z?v=izg6mAI9{yy_%{qVXM&{#-1K8Um z)^WsMN8bth;~emt*ZQz2hzH|qVPED$7vrFdQK5G7KV&}6yW~AF$*UAuDmvIM*0{%( zp##)4t)XX;EkCJorN;kbp))-HHujeED>N2j$LvF9EYQ^Yi_rxhTf6GklbZYC2hsE4 zogtMINqp&-)yRW|7G9I!t{3@*Ef$G_n;7^;*Vj|*lfHE4o7gdpp9hxD@_e(<5PQt( zbs)LLoU2Q1M;r7q8~6&H^sZ^)S@ZxU7l~;x-t)xw^B=kPk>A5>pDn!DIL(=Hrhdpc zulfCNJYT52@vBGY@0dE-|IK2p^|eXeShsC|W9vl8H3pK7f-wCpQq zKk(gW_|B^3E|F(dpM%LfD?RyS>{X0i<=D;@md*V0PcV-H;9TL?Zvl52|5W_VlW)aK ztHoX}%(0ha!js{{b9nA{o|{_+OxgEg_Wdd1@^U88sw(WZ4Vu}D-z?QcZOIzwfp}d4 zzAewrD=O}}mY7sg9yEoHr(&7SWATxX3pdgWXkbI0FUJ0t80E4W&N8AWkz7AdPojYZ zF8!^AF1>_jS0WQj&;i}(f3nY3A*1`&@h-c+RDv^!q%YC_-?QJ=W%k?AOYOH$2cg9Z zWJo3Y)P6s6M@I#A{SB-QnwNUM=t20w26#&zv0ToBEIj?_vBHMjP1PJdGAhq z6wl+Mker3Ou~yE)yy}vU;xU{hJdPY%yS8URR&CEl`bZV7BxW{MbY%A1WZ-nY1*fOk zLw&6Rr((5lywVe!o<&~}IJE+&>l9xah7&SE_|nr8te!Lb*=6tkS8LU~ zLNkKPAkP~$npNjF1Kv>uK4ycfTK-qDFYmN*LEne}RB>2hr4nbKo)u>w5AB2V-Wh`T zs))cst(E+VL&VwJR%jt;S@pLo9uZsT+-|cN|C)-e)88W#Tkp!v{TKosGG}yneeI=U z>*N(l4BLsV%U-tju*B9aJ6P%}B(@#{j)|Gb!70$w9JR)yPF%f{Gkv}2|88{umx!ys zS7YUKM5oC5ypa_WQx_Ts-o|ubJ`?Y6@4Qp`{bhgt1)o==$0&UamtnNgQ5`5-kV76TeYB`x(~$ zeP~YcE^HiQw%`2Uz%S_Wo6%XopJ(GdCvd{w#Ga$>@Aur#_t-JI!EfTPOg9%I3yb() z%zyHP8kj%4y#Za@2tvDa74HQ9V?+1I^PUZofAZDnQsxJ*WPZf%pqE;!e;~SJsD*ie zD_&dU>nt7ZnrEzYZD_m3VrboUf9EG<`z^=eoVEb-eQWFyTGdVF(E{*- zp5oBKmqyURCYuhdd?CxfU-Ui67s~bTdyt)8WG6b{w1d##st&7{`ZLskY-TS@UwlV? z-VTgkqu+fe{;Qpwg(AHtlIT0f{~dnU#e7QWC&4o{@lmx39HK4yE|p zse^iu@8)lu94cd-0|ofE0`!&I%KMPT#x~}&fc@8rUOiWI42>E%>Br@cM7y99-V;ZM zIklVp4let_tLV}x@ZQ_0DcgVkjoAKM(UGuogJLf=LEGRsalop5c4UL4AA2MJg6-{f z`p^>_TP=O)v90fS`q0nBre4pQmeuLW<#j5DDLE+qfn1w7z074M2I=(zTsH$(V&^LF z#J$~uYu;E-$5X&m;twO?S_NEJaxO|7o?z#nv)5*Xnq-eTJ?D9!%Ij^l^2$|hFz*z5 zw?XC7%Jyv*7U4cH`-e~08Ly*tpR&STw>M86IV~gLEXL~*J9JByVqTt6%zVvXv zcgW_@Z&`Bw>d=Bq-A6n`+2rsTe1za; zddSbc(KPD~B3t1JRhAz-qszoP_#U1hYjjV5w)x!ZCkE7I=baeVHI2UnJ!-Gka$9IR zW3E)b1DE5sKI-`7;%TM-4Ufm?b&MzZnQ?eqd^Xow>u-qP|Y@`6Qpmg?^F! zuKn_^cc2&6XT7gFMDCCogNMhP&|{VTXZb-E9V1_z?~DU-zZ+k##e;6}C_e}?WoGD@ z%nv>*c!{myYWW#5IJ=l1CAB$OooDUF#pT*&82L6WC_%+(1;@9ws zUqk7yZNT*HgOW#(JFkDX=apy=n8|~F^O;*Meb%z8Y`+H2tOTwqhjSVHYy}~$ZY*$ye-ZdDf#G0d1LcCcEQ(#zrov%t|TT5T#i1g&Pd5qXQZSI z*2DY62P^LsAFP_g0H5u5$0peC$6mOJccWhnpN#?!Ht>nkbvBAKZ=U-F zb;ZteiCUg%2c9;+5ndy5={)C~OnN@x^K#~j#L=vtlU3ANS4BQg4e=Amr-y{D6)cKE zbD*2(ImQt=M^Et@dW*Z^BchY6P&Vs~&~0+hpk_``=l#wI-7234tQZ0N8~VFBG?VY3 z(q?iYHB51?B? z<3WqQ)id|oet6+W5(`;j-zzaf$8V_kdW$>sqc@?$UC`iS^g*HTs5%S4;c@Cb-p%4S zqn|V0w6k~AYfFxdBadK=MZ*t4!=D6KH`1T(q-)H; z&N}?oDPYn{+#gy_thCPlnxM||@rHT324_lf|g(8{scAh$>Z=betU+RYv-BO(B4xLA7gD# zBQu1azt8;|v?THVdzqWaV~O`$bDZ>n^~tz7F)luLFb4RL8gsi=Jzw!_BSpU~-lcl! z^SAg!WS=?vCHaP;UD1#D9$(loB_G-6lQ_p6y=kGfmtOJaZ*9X5gdP3HTwsw}aa(8& zb?d9)?VXnXu-A#1kx!!bRU7+C>J4PvCg!Jjrp*WOuVi><5?;77i+?8K!+h{1Ia_M| zF#mL(Q_pN?zpNkTyI;(D&e#EM%@#e|+G~C6JK+~MkpGfoPG^Xjp2pU@hO^V28?W8c z%bq$6&rZ>AAYG_E?4m#OVRYdm=)|(eiipb%A|q0k4tz9wkEPjTEAgv}PA|HByqR}z zV9rPIlcL+jUT|!CYBrFUb(~*ga5h^6yYf-KwN;7Rn& z7q{!Z;rWX-Li@9_M{{prY>82d42U3~rzo)x|< zb(I@g*G7B4Ik`+N_I}%B@3*7!t^&y)x-IlI-nG-t@3G!#<@eY+aYn|)dPcmL&%a5wdCuAI|G@i)_qvtaGxFURi)nWnV;M@PL3 z87w;LH4|Fi>@~0pI^>#saP7%yh3fh%-LCk z$mA8smSJ5JG3(XJsHTc{Q!)up6Fy+PDN9AvQmHnrIXYnUgVN*Vium3)3ldJJNNN=!B_~4@3 zup#k{iSIU!|4r%UqMu;veqQjt!w)|MKlr1hM|hw3CARSypGzsgB$>+;nLvz*|e#RQ4*AhCmnQXwO-Y5PI*FfZ-(@XAOyE+py z+`^hlgjQAT*BkliN1&xOyzc<>Y7o0TD{k1tXNenbfydf$!|Uw0;d1QhRd(D^)=kXt zsKg9EChKM_6*Jtzm_mDuJk?+hzTW$2gTuA8?$tfZqAHxY%!&S$h`-#-MAl` zqR#_Y;H_*po>jIdHr!oV&n2LJqe(L@UN7g>~_f6Kh9vYtz@Z?SbhFz;(*-tcqTqcU&ttyw(IstaAsnL(4` zTUBc(({sSJ^%-bfXu4K&4@^(PqgpldtD?K3AE}t!R`Pm(jZOMX)(2cAE+=>pxdJ?q z&)D+N+OL_L$am34&Nt-tAu5Fql|KW0LwYX~leT;-#2_C#%5z!o@bJ9&&*F@QZtoMm zB)pnh5R+J<8ExhH9utm2X*-ua;Y&M2}xx{&*31WY$^$v8Tnsth za9#hm!Sx@r;o6;_BOCwqHXE)r$lUd;6Q8-VpS1Cz8yvV|;&+ zm(<;hG+zyPo&=t~nMD`!i4PKf@nfllp?|RjfAR^U> z8tur5J@CL_p&qUBnuquLO>#(INMX<5>lrICjMQ?qFZOEMN7z$x-ep1LnEspA^45F$i-GeJSXFs^1P@kl4XQk#l=wPf9(ClHGgTm?JcyVE%W^F}cUDi+!r{ zypd~izFTaUrhN8FpH;t!yz@lvWxvRMEAT~2KaZ>L5`C*m)gbh-&op!<(NC-7yh7?d zq?WjE7xL$;E8fNDVfNE!vUa1uavpOM|C&q1gL?Tp1r10)g`at}Z?VtK81+5zV7bqz z^y-Q6UOidm)q88adTNSS@0;$``)7FdQ!~BvF)p|A{DS472WLy3UpalKxz?0fJwhAG z_@3BJSDETh-8Y{4#5DSC!$NiDQr= zk3ugkZ>Ej-&Ys9dg5L1uyR)q`t)|k$HJaBC-8qaxDecJAn!%PwPwlxkTufe0A-R)%C&{D1?vg%BDkq{LKZK2YRMQGW zM^i)XU*r3#G1|jZ=W0u;#%T{vn8Wo-&OkboUUIQ{Lxbi{_DCGL?d*k5QAh154-$W< zqlPR%Eg3j9%B}jY8tKOhPN~noPx`NRjj>`{=xSd+MBQpbZtu9`vu#`CNFDikb>yhj znTZp1X7VKUjYgfBqV}nClsH zgVdKU^9_3D>gRyfImWck&m0r^R~fs5vD+EDGiV;o(|!^a8l(n)IeC1Ss{fQ;%Q4my zXFah!*uDGs%zERjH@2V82lx!HjMa?x#ioz;Is5WyiB}mTddf76QZ#mk{w|+?P0bm{n=CK{Dvz>KGk&-|TWf2!Wo$d(kcMPk*fZbQ!?KK&|v8lQs~ z(@)CmgP&XdMDhpRvyn++>ue=v$2pbHmgo08_cOomB(~VbQT)a`pZ*#30qHBk(W*K# zR#RurePyV96|rO0XZkR(L+?H${d@Z^54}_*eUa@mVQTV2-)*ADEPOLqihrj-`-${M zi0ZOE#DZ{~9=w8i`4c3%Sr*4?t7YV3X%1~u@Dp{uSE z)r)r=XNFYJ*SEZ$8u)D^YT))5M!GL*gZooXhAV7{}z;x<{dkY?=2HF4Pe(-(@ zyi1GH34WvvI_noH@Qu&PooB_EBS!jiYVg2-{F_bUQdY!(Oq@ z7pdcX5o)`GMfUk3QUj07?=Dif8k`=WcSFEDI};qu0!Q87@FnT5lma(>;Kn&KVgTH{ z1#X$FjoH#;WujbHz5I_)xQHAd>Re^xaQTI97^!#Zs@ ze-H8fC2=sU8}1dmqlcPPtN&XN8RSPd9q_<((G4$CI-<~?^o@Fk zUOmtx)8|oq9Y50FE-FIw` zop}X$#L5r94cV{*-M77t^MufUJJEl;(0_NK|L#Wr-GlzS5B+yP`tJes--GDC-RQqH z^y%3#M?c%;=)UEVrQO52tnjp<+B)-WunwKXI!9&K%R}uCk=vm9_1N-fg~*>LMytO3 zapaC8gWi9bGh#$;vG~>A z@!w9&@n0mDdGW(|%?pOzJG{p39o}GF)0J*?g(~tPrI&nFM9zebE~GE<9{i~L{JP}k z#}B{@;kVKsQhGzCkcX0oBsEN&&G&6-h*Nfau zR5p`1$#wuR-TiX{iB+xa`KU*63cV`{`oC}AM%Qsf1=y3i;Nuvwz0#k?Vw*TZPCol zoVETOz20LFT=QabOy1U~@j-UcQ{x%@VuQ(&HjCtCh`+?`eAIG&Q_Ae)X(p44xt1Q#a1pes!M3)>hB0 z&w5Vzr?Fdzi|TLfh91(u0$LG2&)htE0Lz%rl_B$h#$+CXQ#l`8>Tdd=H`!C-H>ulg zpR034QOBWj>#T5mZR)J>`CRAYYpc?V2X=<(=dlBS#UA_?gU|wVdkLPe<_Evu&-_;Q z7tH!Q-v7lqE!2pgshK_?r%t7poCBV}bNTgu%WKhpU*y++JIb%uYGWJm4K7)(jceS< zwOPBoF~GG`8{O#Q`e8UcLtmaVf`vA5(eu1~} z3!Huj+x-H*6Jxn=$iulNO`HG6zLNtlA#d2DG5jY+53tAnkyzA9YGUQQj4xvUd~t$b z|EKG;o8sUn2%PJIa}rvV9QIB0lkou4E^^qVHafvtH<$81OBeXm>*xYC_BkaD_O;8p zrcc86cqU`#;6pIb2b}&dar6QMeL&ec#%N!BV6@T&ME7}F>>S2fRfZ10xU1znqngp` zJfnPSk-cMG=x}ayIN}_(4y|h5s>B}0cfh@lE?|;_BY4W_0?5EG-)!ju68qo8n&QaY z3pI8waf5Y@?n3q><6kw^9E}Vi7VLJ0J3#jvkjInj>S7dMWFuX|k^zY?7om?B_LaX&z^wjt|;Ixiw6XQ3!IEyyd zuk|H(zR;V3rRSscyehF^$CwIsjCH@N@4nhT`{`eDUrV?G}H?6Dv|6ZFvNhJYDsMt5mNciDpO5`4m!+-CQn zVyx`ki9Pmw#m>9|{pE)u6E8y7@y}kIuAj}K>+k+bbX>dlS*v~Rwyx>!5p=y9df1ai z*ZcUq-==F1bX_unt{F$sHRCGW1V??4uDeIj^>~}Ex!0lV;7Gbgzx%~a7F`Q{W@sDz zcqDB*XBHJ_)2>b1Li0lVp6uUjx<((}u02s6dWrm`Y`VT@9dvyHy2cNp=o)=n==x(q z*Z2oip9A~@+5HaUC!pu0z^Rcd_H}eIbX}8sPRh^Nr$X0Km!V*WZEV4;*rMm|@iyID zWzlo+Dn;LK*IW@AIo1@1o`H=Ynhn@Ay9$~OLbDBuW<3Kd?-)U|j5W`u*`HF|G{=Kn zFMzL?;0G+jFI$0Mwi3RMZ!T2@U$23$Pl2ybhp#u>>wBy9Uf=00_xjEt^ODH5UgBIS zs@U3MRR<8l>SFlrY0n#IRP?#mhCsG<{`LGL+J=GD)j_nfKVdbrLU?7>D# zyUan4+m!yfAFf+8|F_1u7~EzE+^*0bexAGxx$cyC0YB++HW;|uw@yQ!#TVh?`-?qa zCB4bG|D_xKX7}~r0(f@{tY_uIx))fB4pNA`Y%MM9SPiTn0M@g~_m=$qXqKv> zzM0%-;!7!Pg6d%%M8yW<#4H2CwSE;diI`_iU)f|5tMOR@S8C|6&VBSFvljXN? zMHaE9p(C7ECGonN+_MS?;QdPHEa2>5&MSDioHXsq-Nwi1Urw^_xZrXL*EA4kfMA?V~RbmI6f9{I&k`y%Rx zl<&fpBWJ;LHSxKb5}#A{&E*QuFJA>7*(dHh-5q}PCpnLOEzj5Sywb63S@V?mb#KcL z?JUfdH9!9XzIVnB66c(AMIc;vRb9AmTb+-+`lUYfl78&T!ZF|Y7m2s1IA?chXqD0} zBp#!M<2wS>u^=Bi0%o!kKZxf^Uuu{1F2OI2PUiTfRo)DCvz0HNhb@y2|1OAFer)*n z5qg;%NA6vOU#oLpuHt+m`Y3!DZ~LLv@}{zzE;2?GKLUOMWB@jH32`fINr{i0DF~P^ z#k3H7RpMA7d4EP$lmyI!nl|t_HOk3-$m0TNxU?=jX>1^T%~jB4ceyPu$0#`|XLE`k zIFVY@_)NDM<@cCT7JC12?OTW5FPP=WoK)dP8;x>IWS8T1L z8)|M*K5zB6akJVF>hG?btvE$P1y^*ut_ptR%9)2>tfjyA7Pon(vR*&)4*Z94&s^ZT zkk4tZjE~&Zt$UfjdX}piiz{Gb>nzHjkgeBD+K*+k{{`fsi667vv0)BhiHkTnP{23f<< zhpa)~H2^<-3%Wh6@-0V`FH#2WmglU=uWJ215vrDY6?(ly8_u?$BS+{@{68zXLX3fb zPW55Y26rK^q4nM-=v4eD;zL1yI)&~dv5G$IxD;o4M&UD}cb;a= zNqij2AICl*PuWcE!B?^yUrAasPimtEzR;Ln^26H#;l1@jS4B2W7AgAqA@cjoTxylK zX(qI!4{oi4HeLE4GX9^?ySCi`AKpe@th;Pr6MbmP;Af*hQPy#E3^h;qrDh}VA4cxa z)q4u=8qd$?0AAE7+6DSA*=wSEJJ5gUQPoC1BX&4*P&#+(SWD+-j?yD+?IbOH|5dK= z>ap%{qN~najUBH1s2AWnUGT0>;-@NRFjeJD#(C~?@?@eH&~LlIV<$cx__*ZnpWZ{9 zX}9G!6F;WZ-HW|gh@Z93ATIzvYyW!9EXLP*Y6If~1B3M^Sii)Klla?ud0u>OUwtp# z9$oAM|=A ziu{;$K~2R-R4x=TlC_+R-PefUe&f_M`R>y<{;B)0eo4t48u74-YaL@1#SZ=VAhO} zwG}%+_B!wRtGHwht0fmf#eIbC$EYhOmCUBUbtDS@B^NIWOk)DO z9oSIv-JsvRj=V>QA3btlsC_?ph{7}MngPY@zQp&IA3i^_NBwTaW}N39RKLr2WszO{ zF1lv402o!^FR#SUHeSQGtLe!K=3j}9KOXr_9{T%JhGQ7<$`94_Xps0PxY^J9;cIbVh94T32@lSX1dp5TE#;hjw+r7j z{A#t>iwyzwyXf1*K9@vi^UMNG)ws7zBCqXQ`ggnlz4p?NKFGMUc+UdhH=FuC@da|$ zw!{MyL*fGw;sm&;QSxd+gd>HUjaGudk8(H%@{=;ix(A7_~ ze{16V_52U=+bqAiFZ;I*e9wMwk@FayDGtR-zQ$Q4^tZ%DmVWkyjp(%CDad)0bI9GR zyDCV3lVbXtl!W6|rD0X`vJ|*41Bc6@8BeP(wFchUFdVDDq`q1UeX-7EzdL95)6G+Q z%{#y(L%${9q70nWK)+L?tylvv~Ume7!N;Vzo~d!Yq6r& z2d;-+TT653Rq~{w?btgV_>p(H%*n`CYDRuybRi4*Z8Cn9`^XQLJRZpp7F{>FSd;VE z$T|9iogbVRnbu8yu+S2^`%0cUZ{+5P-@u+!eo($gw(_hibT9Gh=wfgJpA=c~F5^$) z{nD#O^cTs|O)Na$KJjYK3c?Q9d=>ndJ_^udrq=r@WSj8trw>{6v56Vb(=u=h&c%*s zV=i&%P~ytG_o&qm(;N8=J`}Ir4<*rlS-7{eBJAbe3HGn_6>$7G(S-rk-(=O5?8ydx zgI1(RSG0*ag7XO$Ege<%5&K4RjV1^!J#=j-Aig;20fa{iEq&!d$qO3?9beA>%COYp zi61}FAia6;6@qq45J&@{9iTdJ9h=!IT&8NJZa8>+4$zgMoGz;-82 zsqD^%+&&3+*)V4fW^6HeB}Svjkb%uL+nn6-oBUK zMW4;dw=+(FtL%8jR^FrdTYkuy%d7tZf8*U5{)XP*7kcEr=niBHG#G1d(Hn%v$=~ul zbkTD(moDi0plnM6zG6TJQhSnw{w1GI^v9>zA5L%4IQ}uAuSxhR+Q(BvJ_tTY2fi0`Zrm9oF){y z!+GF;f~v1C55Ip7e_JA1wE7pH3;=3o{hyOv&!XHErVK2vdF17)BPX-m8=S(uJQuY9YB*e{`~~uQ)s(JtYCZe~f1|{#o@Snx&tR z$Mu)8ahZN-BWp)C(c4b=PXj*a)%ZlE1`hk^sKkn{;VQABW@1G<^EqGcg@7;amOdi> zA8&fW<*RmUH*KPZZX$bT(|70kmWyv0ex!bX#^v+Kn(+m0;%}+-*z^oOzvqDg>yVlf zfr*vF;#M@1{dXODKs9tOJ>wpvZu4!@zSnsoHr}83oc3tfsUlje)vXLvH-;Df4e-yZX$$@)?U*E-8 z0&Dpv@Rsu|`_b9{QudKc!Wv(W1?xxiI@;K0QmfNu!+Q07#q@8*vx?s;%banJnw{QB$AP3#8nave1(($|z)mFb+D(&(!9 z?dEKg0eD0saezkR0L>ByK*mL&xtM2K1lzfBCGZeB5`SJ4+)JO^IP3W?xR*64naf&| zHL?cuEY{%6U-4aNL-ZLLBk*3qEiv@Hjo&Ts30-8bY2+Fuk7AqTJyARTq`FGIS3!o3 z=4H{*W`576Bej>IrIVAgY>qPeTaBQnv%x&Ie}8p@V`QZ(mUYB|L=v56kP4?=!33PHeEkp z#aE6>d?hXMm8r-octP(1c>P>#^JSV@pmYCHc;wHatspdPudR;xE~jqoap+>;kyS62 zhW+NKXQ|QU?43>21vic=>DfJ|q^A*D+RgqKIF~Z7QOs+=GoABeN~WFU-j^q7OMZQ` zx8uoioUJ#;;%{GMUY(q6DK)|0{~r5{*h|a%=_O)!3@p?1oj*Z;?aJ+2+X60y-zXiD z-a&DG4-<=4HW)AxxgEyh}}#eI9OlE4Z#C-nkrm zx{Pas*wtLuV55|9ZM6I=(KWzlo#hjA+xiUgrlB_KujWCIN(WxUSiD2x*pmwFeiToM z&f--%i_`BmQMnM^Z4rKTjoy>4aAGTc{E)$-vuLVLqA(Qi_Jlr5PLaYTc8H?y#lQd_ zv4}XIp^a*Zcsjhz>&XIz=*M)q_ztP{W>vCM|S za{L3_)4Rr{i~X0vUvROxTz`?dSo+u!>Oky%zTm-=Jr_@2W-istMa~|E?sTIA`w{qa zRxWjQ^cYTahHxjp%_8q@HhFZ+$EfA+W%wGPL($iwV&l=Das3;^FmZIl*w#-1lTQu9 zq;mvJuzMVMr|HWt>%9$_h`(CFo6lks8StOvTW&GIHRxe-(YAIO4rtWJM`5Vsz%WgX%ZwiBTGP|2p}-MEz~5zaR#!W z>y4b{_l!I#VUOd}a&*JwcyNhqnO9@WmJ(nw9-LNK`eAZBac|&d`2(zex&8RPv->OO z0hjEv&{h!-%mX&PSCG30U;m}e*9A6HfsN$uNgw2$9|1P-g5D~44thgc<}wp{n}zRY zubPKVOCJxFQxEPbuY-Q2-b(5qgY>5^3a7e?p{J5?|L)STfy`cs?$Chl5IrKeBd3tu zxWZDcXKi_5Pa!=2mt(E-&-&Sm)i?Uhsn>I_I=5IuCQ;)$E~~dPI4uOX;B~JZ^WUp- zHIV`6jZ6B1K_7iSW=#vt^*t!pXE*B8yxPsD*aHL5Q}fjpA70?{>rcRke+?f-4k7T6}l{bT#eUbA6}iNj2@C=lUXCiT!V1MLvLB8^{3=-6Ns$wW`QH zv1*1b-NU0~_cUbFa%2UhUWGuJr4H>K1*D3wtV$ zGq;MscScXN#_1QFG#6kW(^q%_ecHK4_P4>>pyj>d6B!L15A*&4czvP8`?)_+IhW7# z;QL=Q|NY-uHd7M>5e<|@PU2Of)8Sr~`uhdpk%gx`Hy4Uk_dKK#UQ0-?D=yR94H@eQR zW4r0b8j&Z+BJ{@I>F|pgAB5e-aYnzkOU;?@bJkbzVfPlwK0hkC_CNiJ@QcF8yVL*F z{to};Z|Apt>NnvFd66N0%kThflWgC%+W!;n{g0gzuWZpBf41A!F|GY?`LCyzN$Di;*0v+wq%kWKztVna-e0prSOU_f%d?Bd~Ptcc4{AJO0^necd5%MGo zzjpDw*l%uh8qTv)v6GkC58?-P^v%@;66d-;wCET3D|p8CS8Tu3*$ii<{i)q~x4c*A zN9;8hw*F*%7|&wkKZ_3|pyi1^uw88bJZy|)#}atUV))9Z!c(ucbb`smQl#(e3g#d^ z)Z<;=koW_$#}^;7mmG*Zav+j3SRZ&*{R^Ob@yl;4_v^2^v~R`P3-#3L#gRP$)-2B@ zp`%)Ix6n(MWMCQ8%&7{NWx&zu^Y6S*Y9Xb^oA}+u7aeN_mRtCneH?A|`eMkuiNI8J z;u>H&37B@$C&hv(^#cm7(mRiy2sT{b`#EssxxWV2?*Lcl+%S2c(AY#^TJLplZ3Cul zz;vahV{Lczp+r0W|IS6>zFiB$*Ai>IhFIeyVvV8?WngM}LM~vc)*!HSXsQ+&F-B;r z6gc41Pmd0F(_5~=J33@E0o#)1AB$dz-`~nvT*u$&1Ahxm9gwy2%wJpky{z4Nx4iei zPg8e8Q+GjAcV3#N&}ho+`mG$s8OV>2z9+6+xuxDXza7x|>7eM@+)oJWwH zY3s^DU+^lSFX^YR0oNA#qls=3QgEeje44)T>5^f%E`z>UpV(f}g}iq$^tIHcFOSC; zMTg3UuLt^S7MYvbv-bHqHf=Qse0k=t!Pli|Yj~e#`x*n5uW`GhPe!-WH+~0w<2&x4 zU%ZCD(M7*_%h#BpsRnoG^T5=SkyflETEN=Sdy1nodOM!;*85&7&~AC|T|fDI`HgkhSzYha=aoJ9JaE6` z{ot{xQFQ}T$(`$4`@pT(WZxWM4?S4@`oEO8iXU%8{>gK@@nN*`teSVXWtR&N&vz9^ zde=_9^*MB_XVIwUy*k+ zhonuD!@fCduG#Z$%lPK<2Ik{yc)Qz$Z_b&!I)Z3|8JBcq;W{6h5kDp$e4G;II3TRk5*L-I;{{QkKC{TqxgXJRB7zZksC zFS=WFu3Jvcp5t4NPO=f*qZk~QfaAA3QzeIJ+ClWbiTFMrziw2=d{@2iLGV+nl{Qvm zJIA=E$(iE_c*-6Wn5LL(AM^h==KD%Lu$yPWPIMUYd$z4`hr~B?l07=@&)DPk`ri)b zeE?Q*_K3i03uC0t!5dRtkvDQiYF~{;evIYonF>s5Ia_Jkf2Eg9qc_~CwGX~ns}(o; z!9jnOz_vIt=OXiVVB5=lMZXb!tsfojEoHArjJ-H=VyfsHMf_bD`49EC)#L5o_&Z0} zC}XeHU~{nFJ~kms&nWZryRtuFmJ_Cvnf57$Ia3LFly zA6n@*#n=hfEHe2yaJ5U|47|k8bS=1=$X=*pFK{-Q+6zzfzAoNtD41sZsV#nE?FH-a zY(KTy3$3yja{bg_wDFrDA42)5v5n$tpG}JV#F;0ySsa?;%xdMQehvDu{9gqFkBeWb zLPI~LXG&1^LVnI(`;UcId zug=#c{oJ8XY(iw8|Hr|3Zr?;;69+#*^i}q#S?A|@a4+_joI#@KHt14zWfVAj>Akmd z?dlg-mug!#;cvulGJnGu5-V8&?^1CSa9_o~*b4q~o`=SzCipkk3f~a@Q^iq~9rN`c z564kn<@X%^QEBmxsw{ZMEB*SOESM_(5w!giz#{uRpBT?ej)$DXlWxvO#~Idj(rFi; z-Te22)6jmrfiGk^EGS5619!Uwp5o^Bx+UK0fWC%#@{rLU( zP0q~Od#}CrdhfN@=5s%vwEq|$^}0mQV$%TkFz)dQpcBOQ7yOwxGJS5bOCf}I*LtsSc!bu(2Qcwq%E-;gGIL+Z9i1ii`7Jgp?~Bbk%{r@nkDS#`*cUG)r$)}e@~&?meo!uZ9zkp@ z=Oekh;^)Qp>`$ge`xsrNeI8x3tMNsz@h4;;@pxr7%U;(Ht-Y=Wv4No3z+A6!6L1zm zLw@$LywHyy+6h2Ak=fW5a|DkvXPGa5D|yui{z`B78*mX1*deik?Z0lXJ;Af$Eow*! zjg1i+OZWQj@0GsBnfpoGg}$!qp^t;_Cvz4wnK)ar(KV8Lc8ab0S{mV(l@8CjD(md! ze(U>Uhsag#+#Rm&0G4}MLiwDdoW^G{dyWNsuH>FT-V4z-L_fr5@w306ZzEU6pHHq4 z>o|yY4D3fo9iCy#27ezndX3w`OVIV*mwU!~lF1*IdzB=gI2rp*{0WJd_G_r*OxDr; z_}$n>e)3C>zCT07bZT;!UncrFM{e17A<1nt0_O(u*A2{KmL$c>5pW1-4I|Bkc`82|_c~8Mt z1yczUcHczca(wht2Rdvg#;f zNZfw$cg%Y*ZyTOoH)as=-vO4KdZpMHhn#w9k=&uzH@fi=d?s+!2Cj;~;Wh49gpY8y zIo5M47)wj5K2A>A(P5@sxROyrK8g76g_R~S&!vqi)N2PPqS`geU3P( zqxTi%dr8j1(OT-S)KPzh@lsjuquY6Yh3B2rW8pnzA3}FWSzpNoIJSF+PxfY=oKKd! z2&=E{Q+Ge>TW+oI1FY|LtnXh~-wH?nXzn+((x+M1YS#5B)>ZcT?B9>$+ejb5rQjD` zC3+`(7#p*MHQECWa&{+LtQp7O(TtP8H-Y;%?cew7%7%vmSsh9w4SE@I9bvg7&4JjO2``Q(wkg|8${N z|Ko2s>h(LE^_PQ(FtLQ_PUij!b5;3ElaPbdF`@kxQUf?{ywEGy0mKe^gEzX<8^gK4 zEOID{EUs{5L`P5O+^dUmpm&K0A4|()6)sP z#peTMT6EaT_o>ifYYFE7CjN^jhZw*@#jj@k)(<@fpvU0)A|upAZlbHmh`5Uk&PqM2 z#%7<V$<)74i7l1b$rI__5bA3f~^h<4nZQHe zVk^m~$dM(o-(Bg}pW4+?n*yC2>D5Hdkzddra_ za$E`x_idUwyX!v(o!23YYUA}FcYf3UXWS*>KL=cO&|58XhB1YAQ=;_5ruRmKeKxoaB;}3!_&Ja(2x}TYU_tYZ$K8n7o=1vHhJ|GXr z+>gj;keE{eb$%u0X~tl?*F@qXBYJ_=#)-gb!x)c?agU|eJ+(;I(B$9yf$6CWtl>gy z4Ue&g$63RdSi_%!OaB?oXkEuTu04MZN6Q+XVGY-sGUGg4uIrXL@i11=ugb+G57&>) z*E$xPjI*6$1Bsq+X_e1NuBe9XE_QAZIV!mMBlp~hZj+8ZonpEWN_dzE|;XiGC%cC#+f+L*_jb+f?He` z+3&sDij1c1&rcfVnpE`#Xik8=Cf-#8Ji}hvnWhsh^a| zxZ$0=ljSgm@x6KHm(=YyYe8Q_&9K$lc)fNfbWT2Wc&91v<^C=?11PfjII{Vev{!eh zjW^{px+IUajnF32=rAI*i@d`pGCFdY_%N{AbLwqAp#qsJ@)fwlON)%H?B5(aOpY~k zIZ;+boF+Y*2c4f_T!B9V3?`3?4(kh#CN#bvyNHtAEWJY`dREq zZhVseo0F2On_Vf52R^A-M-9*)ZgeD9+j9$%196O85}A+KpKoG!NxyGewwIl++rl^p zt-Su%vA+a&CnT@Ins;pNSW{U`!GWx8DYlQ$)GTOL^39yg(NDZgVx0C_CFCr+*{$Co zYeJh?U(BhQxv8^C);MDy>r+<_ZT=rEU1V@mIs98~^Dnd?Pp1!&A1X39x(?fhxmClz z6T}wFa2Q9oL+@J^|6)^%FMMe^n{qm}TB{N4_I%Km3Zi)OSV z2T$=lg=hKgIOkE@(ML6ZcTf2}^&n5J_Zkl)Uqu&)juU*@Hi|88B6C>-cuee^c$p}A zu|MZ5#a27HQgpx9xc;54ov%Fl@Yx(kRYPT`b|-fV4^sa4QT&k~BHxc<7tW&op5$@L-wi*b9lzbjr>vw1JKka(e+;1^sITg%V+2PFpDUoZ) zQpx#xl)sy|c#XZtukZ?F_!0D0mH4Vj(J@b{vzTWCW04WafFszE&xw57!n%a8XlAxQ?z1WoUm9QXGdLJMh+x$8zN8#GPn zFo|#cz}8{F7O%thSa7xNr$!Pw?6%v8BZ=HQi2jx$5*r_Y9`BxUvwg~v}h1V3(FExO- zn!f6>?dS>Q*a_8#6?18v?t2FrKJ1b4yX21CZP%i!UF48bKjL*_OBu+Zep51HHBE;i zj~*fhHGt3S7n4IlO;gUBmImOB6XoD`DX}Eh_xM%xgI;PMuNfU*M)&vSF5U;RC8{!e z(8*F{ipYYl`A(yqSYG?#%RKF0;(gkj`YP?mI*pF;PUF->@RJ2jvcb(z@Sj6`BOknt zbQ)hw78_5~zl5$UN|P7^zBhW#tQnlCd~RD-d<#59z=yRD(sZGGyUWO@2`xpxUkXki z1gGW1c%V`7&pX7Q0Ca;C{1=kvfSaJ7$z{w+I9Y)5n7Ju`Y=fmZr!@c9b3 zokEVld#?}C3$T~G$Y`;bH?k+%G01D2LBBuJha6?sfN0TdVh3fceJwU^6>+YNA&niE z4QT9Gt{GGB@%nZS*CtQ>Z||e;fAZke71&$Z4(+v5*tH_lP9q!7V9%b#4lv;Hmzb}8 zPB?bH^)UNw*eS{$#UFX?@!|RzV38a${7-NrcTQ7ZnD6AA$#l2)I#cyCuXOW<<~+tJlD!}P7CTAyLhbRM zS23&`bQ_ir7+2z&vOg((gi4S@#mJ#Gn)10fsJ)pRh(Fus)HsU--TKq83tk4fb{k-xm|}pKR2&(brM>jMBG?cXiP}@ksM-5qxI+uV(zy7UB-A z=+ekg^Inam+^2D_DpkLKDxci1@y!A+=UfMKb|kz0M8S~yV^c5Zxe$LF9X#92y_1~j zSp2S<*b4La^QmH57OsEJoZEo$DDXvra~$$*7=dSvX7JRk-X^&RFw$O~<{`ecN`s0VGvz)6LvVSk<$^#3S8$Mq5S`o{wO4he< zUxI%fvU~xwj7=UtzVJm4`BxjqtI&SOa^wv1vJ<&^8eX?){S51M7TIaA9?h(wtdYb? zTA5cH^J-y^Htz+?@E^DrqLbRL@j7q2e>|@&#J`*fHQU9T|9#H6$j|{0?hMETr{) zhq~W&b~1Ye=$$(q$Q)!~4t`&rl7Vv0LgE@RIk-dl|EyD-9NcjsIoL$5g3M3h5q?lQ z1RRR2>qO>RII9u)@G&@)*vJW?cT4`wPS%V}(V=1qJH81G{0bTf6AL&E ze34%8H{ZhFiHsuSo41)UU1T73ti%wQ6Zjq_Yj2HZ!>MF8u*tf|!^_$#I3-7sIEJS; zT`6%wk>w&6e@C3~Tga*ZByJZccXlMm9pE`n?ttT|`UfvxK<*SEccvkCRw`Pi{rPfd zvCONd+}Uvvxr3Zja!0|kn{ngiPGBN@vjW{bH70kOPhiS6x6B;iENU<4Rs&$|PhFV;p6yDC5X|gaP)tgT!t^*kfVrvB*T|b}Do`4Z1C0 zuRWA%-ao|txspd^+`lXGXp_{sLLSv!L7wr@`eQq@B6}RdVisE%Im{@@OvdB5r))Bb&xV7TB_-4cJ=ohg*18 z35BThx<2pr4DOv^!{0PUu{phXY+y!8b3AwyKoTy%a{*(O?;21 z_BkwDpkMTd$dS{oKKLGed-!oH$bl63c5?S@PZ#&WEy5-^*;3>iPrgSGS$(Wli_O9B z8h<|g$ZNsJXWCf6ejFJjeEHwl`knjJd&t@MkWos`?k6@5Z%4EGd;C={Uw9=nR{_mc zL33-MxoTwPT8A+MS-BCr+6#V7dy$$$*w@xR6m;X(kN*17XPE2%aDK`c@Bf6e;h~`#F=%|TeEg4*8g)035BNoQ z4WiFyr(S4~159(0lpN=}2gLtk-yr7=ZGZs?2<~w^hA`%VIfz{uT6D zW!`7K54$mdypw17Ug%8j#Fd;Wl~+Wbv-m~L^#3|*+g&{K#U~_tTX#M ztKEIcjku<`{^+=(`eTy{>rdS5#b!yvX6aLZbbNY!>&U+KEyIAdTr=+B-GkH!ew#aG z8YdLi|M^C5{qfyN_0d<7IlqvCd~w$w;N52IC&{M@%%>f6*^0afPi5ZI(DT@+X8b(0 z;i2n{TJ~M0HbZC1{(&w7&~OmilzoSAF>Ol7+2y?y&HL^Mauxlvd1nsqAPYj^PHGHD zKJGVor}C_OY9bE&^c|0rME})ZKUuH7vR-cbPd|UXehRO|uTMQWYw_nD?e!@jzShY4 z*w5iLn%WDy(E9AN)<@PRyhhIAIHGru{~2I?Mquxm>*Hm83R#~b)~A>?Nn>sLutw>u z)#qQI7S<=&%lb$Sf)M^gs;rNTz3U6Ci^lJqFYq*9U`=GL&s=NN2D-eSMbwj*^^v_m z)_h7cYnyVm>s9%_nKgXjOxLUb%-a28;Dy)j8P-nYpISe+w`0@GT4{kZGkPzdLo*+L zx3g?oV|-qD*R)i_Uy^Ec&2f0tSr*Q($=>&$lBjb|omrK4<+AF$H`H>Jrvgq%Ct zf{vE+FZxoyPVEV0#4kJ^;=F@LB+zNqv8Xqhjl`%KYry-!rZ?6?reZCdl_e^vSoV%j3^* z`Q%;$)xOI5L~hG-XI0O;OGjGm{e16V?l6`}`y)=Df|v7lPV$$7*ihnMN`6G73thEP z)AtL{F{dDMsRDV}=Q6GI8qP~~pIJ`gUXtW!(FXL`QuwzE*}e{$c1|+m_Lt0(OuOQCn(Z^5oP(zhh~ z+|L9WdT-f1H$KnVpB8W#9`?r1%Cw{g*Rl~eD&M$TqjiwFP=a4Tdca%GbS>^ii9WrQ}3)^x*B^hP zul{?^noI2ip}$4=C%K}xq0>%ajrZ%WvS5_;QFG*XEltLnswY{rhaT}g-Pu*U@fqz^ z(-s#WADU+k=bz?$#&+^FH=d-n z!~)G1;lK0~SPngdbLoGk^tqKj=g{Xo`eH1hp|{C7v-_~|Q;uwL-35M6k&pOw@C%*D zcoMsm_`T?Z`^bU3n>*@L$V)S8olwi4dybs{Zr*d`zAB}zmGdfZrE{hN{HMj8hYzst z6hMbW$U&AohoIyr6Uz`fm?U&C6#mO0kEiP99(cVAxgfk1zb3)`srnqw|DNXE#9WKr z*88VjH|U9dy=wgy;5?0gH*$>eoxq{79~79Af-X)m{PR+b4TAgGd|I^f#*X&d7@aKT zopSzLG$ODFolLwCod8EXovgE9h|vkZ+jR0Ba?t~`XPR{Z$Waf@^ZFkCeRqDkT3>W) z=#;DvdIx^Aag39e&EM*7^Jn=xR7IXcIkjmyQy82LPfA<~T9h?Sf}hcM*imus6r1Y} z&+m{LhUb38JMeL5RnOcLmyJW_9OO6ffPdLvA1gI}(1ihbRO~pF$Hnh$_V=6k9$P5# zO5p|TokhxkX(zOy=#=_x^t~Eb?0RQ?L=Nqw5A?Xy<59c=olBg#xqvw`hxmGD@T@xX z`~*2q@%7F&3^nVW1!)sFNxLe>6+Vo`+*}RWTg-ZA!-x+^y|WLgSt0j&D0#l$`gB?H ze1BGtHGb_%lV(GFADZtl+Nsy#-|qBDuBz1c5SkBQYY3i1mP^dAna=}WO>bdcTi~}a z?@BF=h=R+lYDSwm4%EG1J%iY$ku5TB*@H}pQar3w;$b1ybqRERH*_5)#wYi=*=r

    OHBV- z)$%3ZM2#af2A=j)V^w~~PV%i{K0)RiixX~vcA2xEPw}t95+kMEGtiuCOy#>v@RwG5 zlgSZF5`QUn#<~-j<9TVX1@Et+cYl<%tN<@7<7r)drE&W6oc~aJNEP6GB{{{6@jPu3 zY5R72{uWIK(BDGi-`Yw0DrlQEiKp!w{sG#Sd{bof1!;RObC-P6$bx^4w%e|VqwN;x zA%U(Jz0i}cheOw)7O#@S0oE(Xnn?bFoAqgdCPNlY`h_OpHOUPOLw^D2Px86tOnDAA z#u)sF^XM-f`pbx;Kfz~ls(zQyU)9L-=+DM~kem*=6DXdZ#!}N#qvjJe_NEA&1)3Ip zyO4Y|;7wsY-2+qV{MW!cqr8f4mqE8mHU@-l)1sUSDh)iO`IOwHz1_}!M|7M`qebN4 zh#eYFo6&9LpfZmAzVPK67M;G9NTnh-N^@txe+VD1VKheQrYSduAv4Ifx}S9|3ok zoD0zYf1KnfAMr{JP|iB3Jl7gkw-lMbSJRZ72_i@3Y@YB!F8m?;KyOeV>dk@X`%=SU z3GeUki`@#GuVY(h^PbYT&`J=Q9D)~wFNAJvnEu54WNyMM%@0~J3bDaxW4|jh?}wv^ zQ#{C-8RBK8KVg14pTY*I5#Dn)%-!5xn}^&{HFJyMnG*if=e4o#uYf-JZjQsK6uUA! zkh;ub=TRF%;kb|fT&Y=?S>#)owogz$cO!Ta85$qU7kEuwV%9zVzn6>eXzHR3_U<0W38+JYy! zyHxm3o^2f3cbdwcl6}s~K3}zU!VFJ!Cj5@QDd!+I+-lYxcIKM(snW;wt$V;RU7eTM z2#hBf`<>z3!7$paVc*Vk#tqzCJ%zI_(}+W_*NhWW*^91)2l;KnvtDBdb)DOXvFF3Q zH*8?v2VbZYpR2;DMSnmoC^?G}cCY{0(p8$C%6&fH@1NS3?0`3uW!G^}g* zv{vrglbqooF>PvyvA1`t=uTBvK%Jdh?=@~={?Yx&3f zQu|;ZwDCGHZjdu^^ck@FT*7;I^Ui8MW!+3Wh{iHB47G(7A_xO=UQ?g$OUc8{Ip_Srqlb(7af_^A|H;kAKgw| zUTBHEedD;>VUVw-%O37tb=FH$cJ`Q;(CNS*Tx0s@%YZ@Tkja0phBtV3b)}}4%6qbo z>Ro69d({7-hOKC>t=*@}?+{!ZF!zGtZN`kVt3HG-fzQvU=q|heo9TZf^?+J9-`uj0 z8dRFQx(%6@maG{$g_`)bH7W-R8Q6LR`L=B2S?Nb|?M$7Y+HjcM7Qklak2V^$Ev#o?f@TCKnX+aX@|3ww_K(wy-?EnwT*%o+*7J4x_zlmFZ{cG;V!kUr zHMBT6`60ezOlKu^=Fz=7c~|0AA5XhgoiEm)ZHa$MoU5yBTD8Q5#h3X3vP*EfLVad6 zJk00){Fho$LZ|nt?^7GhSUB~UH?`L;;XC^|muLIkf8~40@0U6wQfK#R^7>A@I9CJg z@%sEGbc5*BWOCIa}>e}P!WQSc!1Q??Rw4-(6;{l`Pt^){bN%mq2V zL*gs*$wibJAGzS}2s%&Uu519f>sbdSYV|GW`9tJPgQ&F zEZpsg$6X`16P&#d?zbaH=Jv$h2QPs;zEilH-wW<&(*t)rUkUCcmO$)jM`G-0iv_QW zJ*{^ep=#jX#OD_N6VC~iXZk|mAv7`72m@QV&TaZjtV4JwF{R!7PgsXh7g~pe*vI!1 z*MZ;db$F0<5FQV|Lk;OBhle$(k(iLRCN;7qA4#5@*gn9#l{t#Ol3bYQ`8$XB-5+Om zsJcP%Jmq(5$d0QU&hs5<Lfh(}z#zW3w3RO; z-Yw%3`(pg7W8?d?HT(cqGz~sooa$%a|&2NSHrPH}byo7tip$A_wf2Z)bxyNF{E$9Egs_^D&m}lWkU`yOLllg78@Rhjd za)^1^@ZWm@_-~7cANYza*l%P1QDAof`!#%@%lGRwS2<^K(IeiMg+Gx8rR;^32Wr>< zOmvyZM8RF+JVsjc82%aacYsdcOBs#fsH zeJlCI*~+*#qYT|Fuu3da@(;Y!(9$Z0DV-@g?&}T2OR$$i_<@UP(^=N@-i*b}LF7}A z?-g$$U#sycLvG?(4Sg(o56vk0|3Z36OTsA>F^u)6KT~)-!sH5Xs z%DVgM>lR|r0s06|grA8q$zGr6Wzl?eZIWrlrUvedMD{cZp9>bgoO)V`wIB+d?c}XifN;eG_bg zVfq|!AoUiS7kK&I>yy|mwMer4%q5I1X4-s74G%mA%>1Si$JX|a(yympM0{;RRo}9L znjjU_KbtSS?bJiq!Lxq{j;V9&;*6H6Td-W#s((GPWInl%ql^1Ey0ZB{q#pjLDf4FQ zq3yJ%E}+CR1lJO)lQok27(yZR_8$49f3a`byA2)WvzYfA`7BG;rPkWV3#iB9GS_Dz zIz3cw{+-TRNxhK}>%I`&%6o;pH;i`ztZDuPY^nmD!C{1TkeGwiV3GaC$O`0-#5q^e z*Ya+ANY+m2Fl>JluQ%vMJ+{^~XoRt(j)BzF3)2Vt6OEAyZ0e+>>M~@Bi~p;k6}y&; z(7 zp4YQ3ip?`A#I;;f7o|V(aM4kAU6k}9-(h|edSvZAq1kbFGVzlNVBFd(;f>nz#-7+M#u%-3b5PR^)k+`gFksUgK8e z%xuQE9U1Zfw)~$RXLmlp8S-tXzjt`s_1dBSj(*ks?tNg_9<5(_fbsvFMm;9%tK-c3 z&uQdG;J;oCJd4yh9IN(UiNhoIqIo9J=GPnaGNG$Dm|Ni8c(_~PQ8^#zFX7GzV7nH3 z+=e6h-fMUD0~UNu-wDS46=N4-``wP+Hx&MqGj`>`bt^WX?K{Z6_6hd+g~mmeN}o0^ zqR_SI0m(&(r^EQaQx}=GS^?+v`{3uECT9{k-owtVgjPk)_65Jk&S}Ol{GxIEeJwbr zHe581J8=7w-*WAwzIEHcJG3%Tp2eS%+Aghg$@`rRzOds@G?J?`2R)DcJc%rpGpc<# z=e})-Hf5w+o4hJTn{+y#T3)~rZ)-2GU^sq`e4p*~hpiuK&!_$G4v zA>_E!-XeEqOb)sA&TDwjn^Ly{dfhfi#T09#Mt%-wC^zP5rQ4uGp%tN7iQn7f`&mDs z;qGVlTN0i(5Yu=9`aM1$-yYay4m;Ak#vy3**U;#p*WaKW%F+f@4_Nl_ zt`5d}n4IbYZGft&d_8jT;Xax#pT7SBedaiUnfaRM0L;8jTju@l#q(*ibuRoG$5&D0 znOZwwvSF7q0qxMN)Z!8Piiay_+4Z{y09$T~=9>sC6M^Md$r|%8X;yMMzX{A69GWo; z7)?L2A9rt znTl5@C|qPJTufm635=gdKij~?5o)f<*$AnJBl&UNdi4hV(SHCJHXe?HhZAvlh=(hA z*@Ru0z~%rCvL*w7;|_TDPK$R{eG2dZO{zK^5~~wmxQjdwIa4e&Ap9$zLOWL=|K)Fc z?7=*HgYGHKWz-r6KMv-%7hKtOofb1snIC&)HB!^5kon2}nB-fC?1+#12_2ee`?ZE6 zj4w5vY&j*eb{}w$;H-D@BO`Wg`D@ptX5dJyB{dTM7yCuVZ9&e&<2Fymrp;%Kz1JRl znknOD++5^gF8VeX+bnrm?k?(YSLa}xxv|aOC1$W1+^*L$qCfm=S83CuOLkokUr&Uu zbMPY`Cl4&Me`e!DmvOfD951Ba`3ji&z+vb$g!OM zW*y9j;Qi(B{ztCs$^Rcbri*-<=a4Jycc#>3I;VRcqUPQnZE(3m>R`@`uT^z@gBRPx zKc~=R^M}ZPRa+8Viry03UXagb7kW<25m`tLAJ$m-mY4+jyf^8e{8DVX{tY+5BSOPB zNCkeP>(2Yk{S07FC{;r3^=fLn@?&!xu+zRdrDfd!P1ez)%n__vA-zsR1j+g z{!+2Y+OTO-rbF+y!XLL|Q;7`@y^25k(v6*p&R*Ch@!%9ybAHqB3XzSj@{P)luyW;G zF4O)(X9ORlj|G*!@KW+c%CM_X;s-LX)`D)^!ol3rn7hCv_oet<>F5GS^!01O!8PtW zv2XmD-SZb+unHZRi!KOUNxf9Ln+Q923Z0>9&Dcf-u{@98tb+Pna7 zK8Nhzf{c^>Z?OqqN5)8PW);IwxqNm^)2X|+AZuu6$(p7M$+^w+--7&>ItG6DP3F1< z7{W>J>ea+UR}&A7FsIE6Z`R*jcFoy0w4~});9YQG$0jRzpSmdn9~V5+PYr!yj}0{O znWo*RavV$Rn~tqbU5vOb#c z?Da5lonxHnY{?9JZQmphzueD`_Qw)3*jzqS$DUh3NZ zxApEnvbMu7ac%e0_y6|V{)#>m*A^XGBRX{KFWPJGQ){2zuuOfbJplFFHT-7Qc6K)` z;y0xy-S8*1N!5Aae9adg2@j1$UyV2Q=gu_7aw9*os7IfHF3Crij6|1=MVE~C`o?0T zXx2ZaU#r|IKGv4z;69189`P}$1DU92^HLq9Zs<~KDvZkQQ`gphhle=dq&8?*crT58 z&H{(_a2xwp>FD9U=;3ql_yhPPC;0pe@!s{+ek)9Nl(yk>$sS{noYpY=$bscfpVXwh zUwmii-abq3rq4C-w|#HN^^9{2UrpdMWzXMh-0{-?*h|r0zye1(p~2f}H0G6%)rRVb2yD zN$?TfkN=6CWzW-;ZNqgX(}7F;PJ0f`RT?oF&Y3JFu7+Y*`y4DQ|7f50trxVZ{BhTYL)4(JDa4tDJB3kJy{RcI!yDY2mRE1`I3wyb9tTuTN{l8Xpr{~*Z?_wM0j@3$+b1rw{ zwqaAe>U`Z){c+aW{|e(XZeCxnk9e++`(J&|E3sYFzNbTfRA`|L+XX!rPY2;wyhbH@ zMdY*m{kYfErN1A5Y@@#y$XkAL82knf4q}77g)NptOy{;E*Z|mEE!bW{@5`Wf?v-p; z_bicjux!hZtL_9H!?U_srJu=_czgOvZ z%6y>hF!c2V_T!V-lf(0>l~ zn0D7R{XJk&HmT5K44!LZ_LN=MMCwb4jB?YLTj1eY&h`wB!E=q?f?N_FY{T9;3LjGA zhFYq9R6Rfc7O_!fzgcQ(rKxy>ZToyft%Z5_u)u#IJM~o1!(zHpfSK`w#mp0CkM~6uqm3n{TgE0@OB^4wFD)xgtpV9VwhIP~TJ*-FKo#O}N z#!~aK;FVf{Z89&$mwB}cEheW{r!ucp<`w0=a^iSn?;Uk^lq0prynetqZO9JETadL< zbK_a&wl!|Nm`oO*;h&Jn|AtQgNBcU?oGv8ePck=&QMLke7J2;74$vlLAm;`l?>b$R zsCh7O%zCM@@f)pl?N|ELb)x4_T6+H5$h|Jn@2~OO3x%F8?hsprui3e&n>Vk3-j%N2 zWcrr5mTwu)p9AC_c}|P+u&lfbE*Ox1%15TH*(5@=ndlB^U#O6 z=tW`=O2%Kz&bi2Zn#4B6-f0qh3R|T~>>Zg8{LplA(Fm1aBlr?q&4%e6^71xtepSRa>?yc1_v zG;PMdw(N=>wm$F8u2_~qY#00-%ChMxl%mZ)42H#wbRHt?8z}R>{f2F6+g{s1X~(&+l>at0^u%W}dA^Ph7~x z$Yp$N4An;27{!*2F*{~s?1p2fz!5TpHmLYrcFaE*Kh~wmz@}boj2#!VG2V_Fr{P`&@103`b>HBJ)g6M z#a>OvHr!$7txL^&k%dma|2Fs>iQL03^~o4PbgUpY(t&H2lPPK4w z6nie-PIX!KX&ZJC`QqXe#^}e19Vhm?X`@QKF15kK7)rihy6x8Mdb(Io>E{ys@m||= zk9&jYGBYHl|ATkRySR8C%VyQ z#RE=Jr@s@}o(+0{ZD6#JytmsPaZgo#eM6x!*`rMv1Pu>{hCiZ>)X2JpHm7Ox+TvSi zGbmcfK3e^?+LXbo3O)bMr;>4%U(i>RV`brXmm1b_z~~E7o5zT2S;<6 zbJ_@PN;davy+7QVvo=mIiJNom%x}V+Z?@(vzO>}V_n0Srq{uuEGS3bF|L1AXNzFGf zIW}Jd*v{a0oC!+(`E0euKe$?(GURTr=Po`?dt|(xE_r0kFCUqd2VKd1s>2t0J-N%g z9<>i7u^aYx9LqG1O$&?Av&bnWt3)o%B9AF&341{Boy{|!#ebH~+ba*+yq378_FV0G zG3WM^0WCJ?-!bR2tnrYto0#*EsDpD5ZG*Kb8PNXa@PKES_Ug&yK1*Jf@g5lL2Y~m4}7%bBJfo80?%C*Jc3VK7CFJCoMVxCCh@Ql zlSD`N*M|aIXoc5U%v{wyHo*8}V3hgC;PX$`FO{w@WXoJCP22Q)(vAa(eub|@Uncre zbNf=~o%rXMGl}6+^K!j&Q1o$P)~%cHQRWlRCST614bFL3*29YDDBb_sdQ114@wIN< z559yxp93F4KXbu_vLn%hi9Fqkub61d9iOM-Ad0V5jcs@#-v2wzyiU=tZ6kgex_&if zQ1!Ead+hMDi?u@!-Z$y&gU*4~$1R(|&ZB9?X6Q>!`f=h~a_2=5Tkw?1sYz`ZqhOT# zG_o2JanxmWWve|v&aOyKCh;-+wVQP4Zbz<`t2ch3qxMgyyC!`Z8|o|AQ1h^%&Vb7! z&g|%O;L=Y`x&S#CLD%3O_`BQ2-!K&q>&9P#?c}-`{-Ck*@Mp%6O#ER_CeA03j-+;_ z)TOZTIS)JRqm=CG_rT|S;B)(ZQ_gO84z}@G6OYeb;3giQr!9QGN6v_OKgl4$=MHQA zc8LGJl{RPQQLk>DW^Bpx*4K|ItlxS=5w(*pr-srM)KVH+AKtynC;8INhw+=lUIs?& z=Nhq}PyKgSZOb}p1@2{UW*)d^f5wLWLOgbn7{d;UF`P8<)B{fNv_tGQbjS{|jXqjH zJ~lN=$5O+6wdCDkQ}3g8kBaXjbDu>1%9&1d+d$ivzZ4rgG#9zD_Iw-L^p~CbhrjG$ zW7ovuzzKBnsNj4pGIH)eWn-)JT^H*ncMGx*3`%QaK>h3&(%iG7S2nR@YW)b+v4|656^78oRoF4Qus%)=cUuw4IW? zGe|tT80DfGA z-d{Wfz0dv@`z4}-YwUawiHj;7JWSL3(Z^Ek1M$z6)_6Vc8tk8LKW&HYr#&e9dyFf& z5pU4uD71g;K21Lg?H3Y%7upxwxefZ1I}~R{CEtu3TKLO7+*{x0+QRz2li{x|In?-1 z)$bdxaR-3ZYSrq)Lm&4^9f@YnyxaU``=^(~XW^X3eJ#ARUUQdw$zzLGS>rdk4M{8~0h@H}97i6#IRS`d#jv7})SsFTai8-m? zjn2+(O4XN+gvLS^t>sG{PH1g5w3ZG1PzN}XcE0z4DbrgmnI5oYy6}_K&ntjGw?co_ zioVQyhHV^Zp`J^^1j_8AE~CnHNU;%nT^bwGn|Z+AXM7V}`50!tV;X1i6YJdt9MnY5IsxdgN0B_AUEbO(ZU}XPB&Nkt{bkQEWzO`fx9elUO(Y(H`!I%p;FW>bABnKxU2?y(Tq-sbz}26=I(g9&1`nyn8r2 z*2>zpjVJCjk=%TENA7Vt1|J=#{W02}zy^KXk=D4G|0Cd~7;ZCDez=djkg)Sr>|D+? zgz5W5&Ynmu#9)C}*20kUJ~Qw?MFz+6*yi&c@?3DpIZR`#1Ue$EO}tM4cL z)>_Q?$Weg>-;Hs`>t7_lR_+FsSa+hoJ7S5~Gcv*FO~I#in|^OiEJkOIEq?D)jGfO~ zhl|M(;Bztb5@g=?yd+;^%g;M%gT&YuFrN@}vvTZe?AjCJtBGwdv2n4tSJ0=}OOh8a zd-)sbmosPZkSn^3^_R2Za%L(p7W~YGc2zq^Y+d#+o~kK17yZb3gn%b7l69OT@0#bz zZTRH8^=!fUNN^5}f^%}3jF}eB)jfOI5|TeDaEf0L;_o{J=ZxFJyv1)_#Jt6CJtFzx z#Gho$7UKJo3ux2JPk~G3FJrY3bC+7TfbBYB@amc zq41!YJMV6=;g++kS6Oh&IkLNjR_OcgL|Q4~I}5)GPdw)+{8Gak+Olaz=qF{_@UuPW zY##OQ=vU?(;qT{=>zT9-AOnIG%zG+xL5?<0WB=UZ@o+wK6CAI^ug9K|bEq7mD_z4` zPIq7I5@2EfUfC43ZE}n;(ilVZhHam;sWt7}(3vXwNpxFUgXF=B?1|9t0{YzqEdY8+&;SQlw$v*t-_P-R4(odXpQjgDRg!n$p_a}Jo z1a0Ju(+S%3Cr+5bep|aMiMu7Z&*CmeX@By)`rp#O?wvuLHyNPz-F7Tz-|Zu8$oCds zt?nCe%yX0;-$VVs5|^(%%W0e#?=+f=UA}06%NLpE@*SJ%^0iKM`C7)id?$A@{+1MK z)4F^|N4k6hx4`eOOQGJ#P_rIOmG!yb`gC1s&ZpXCbdWPQz@be#M6TQ+c%b7kYJ{xf ze}+@tfz_vvHZVDZ{GR^Wq>dSUe;YXz>>b|w1xM+`Sw)_S+@Cihg;*N$HQ$N8Vr_zq z8-^!7qCQ{q&LZRB^X%u#9mDvUku}9eXl1eDrC@cj;jf|&4)>+VnTsNLs^t~t!`P8@ zr(xSUZ`8q4)I;YChtcv1cOLP3fZwS(W{iNBZcXH;e&_KMaW5z5Z{?nZl!jZWWf$2_ ze^oBkXJieZ(m(hZEqw5x38Ol5xf~eFd%|eL*Rr)6#=3YIx5mM^<@3RqBQS0Org96$ z2Q3(vyNoXGyg6sBrN3?_>rE|&O*5f`nb1rzG*awqE-r>XilLKYU)$JXXrmbVDTa26 zeaH9AgrXg#%o*c2;FV~l3YxPOQYr?cOpY7lItQumzx1YUl-V0AH zMsK^I38^v6eG|YCnl{rH%6Iv~1v7o&9G9;v8@d>q%E#&p zsEfc^Px7v)D?|NZ^?rV_PuhfX_@rHkHj8SI1GKl>wQcQgw_YP3Z-k@t9`fm$T_YMU zgxgETE3_u-&~eV`JH@<2#%@NwDV(1x@|}7=-E%}sF29YsrXRsqXW*~1uH-RtKizY= zj?%%LHT>XvL+U2Eva35cIgQi#!+V?^{30?>;*#x~ij2%z$eEK#MmzlopXRtSqj@=w z(h1JXt25!#FMgu#0-Myn$m?r&O=ysFX5gE9O}sCEh`k!=a{Ai0OgB2VPB%KYPd82j z-=Gd{(izue-pwxG*e(Kkue1C3FV4aHcf+IfAvEIwa6Oeji2A- z&I5^^h~2Upcve@Y=)d?GvZ=O+979drmm&H-fGlaYWLS8eQ}RNAoqCtZAM^eJ^Q_N^ z*WhtvS`b*oCJ`AVcA(73wgW@!il}#F*@65$+Kt@=+)IGF47f!WiQg)DvJvEJGqSX! zqS!c%-1-Q)bp~1Xev0<$ueI#zJ)9*IyZ4O1_KL%39w}`HWA_d~E)HT|)XosQ7g@QK zc}XqH=8;9l8Q?n2ygHcoN6ho|PKVJ!`;Ta!=ge;0!v9ucaV;))V+%e-OW)KV?sK|L zyO+MC&ZC@dIx2YYMP6MhKb?Aiwx?q!`NtMqYVXf^r)QAVzGe(lz7J^l-6vhOwk-Td z`j&j_4(2Iq6c6X}JZ(yc8=Se&!)v*h37uKN*}F>gRYf1pLgm6o?5~~rFx}JjK6ec6 zAFSkOCor96Z9d}vgVdxw^&cgk<;b{GKP~Yb=8UXYPf9#Xn2Xqna^JN*m+S4h z>?N1}jqY6f&ax|e%%vf5E^C>`Iv267LZc#8>nKAu$#`=1SUv;f1Dieoxti7-|G?Y? zZ({%3I2q)1=rT|7JCc}Z;<)M79MwKfH9DosA%2sZqq+wPIGdzCZZ%`lx81MY8!qDu z95R2Kz9KGoeJys$rRrLDks4imp?w7oUt55JDpL7afkH_!?GED&54tuVIjQ#QZejg%8j8SAXgg;O@&$h;J&0@@ z%)a=0wErkM)1tvFegDs(!DykX#S~x-9PE$S^s)-OFu)p+XW6}{$8$;ww)Gn1BRFud zzY<_>4&uE%+JPGfGFWt?E;Ql(V;tNoVsPi44|kOb_c$AFo_EuB6wkKY?LdYe-dF57O&oB~W!#Mjy)Pf3 z9a?_1_i)7s?cukO(^;(d@>zF!Uco*;d^vjw>t>RlM?HMvCz*XR8&9vDY3$%k@E~;Y zV03aOHh3reC_E$dBQ}S`QAGZT97?&s_wBnKhJ9vC&UgkmgCqNBo%@IN;Mw1@-Xb3Y zvy)=)2deTss_iFtcmmbd-)H%IjrF&7rzf!1`g;R=d~=e_w%73ex;#(I@>E~zid0|Q z%2eOcid0{;D%E#vO{&lFMSO`I-Yw-b-)b|EHnmn?oFNI6Sl{2u_jP%m;QBnzsj*4M z>G4V2;hSUxcJt2EB<^P%aQl_{4m*Q2F|_Hv0rZG%>3=p2=%5q6X0pE z;AyFtN$q&{v|K5A;@a-9-U;DLgz+V+9_ylJnAEUM?J>7))_ajM^zhtdqjS@k9>0&Z zem~9koe6bfe`&X!I|KV2_{CRQp6)x1KeC&>c$vT0J;@@s6Z);T+6oO16M0=Z0vX4C zFYhg(-dK2ik@3XdV$Yso+QZuk5TnS7z$xuhh^k zN$Ltr)5Gsz3mtYE-agoQL#Q*5R{3s__e7^kT&AkvRBaeIpCCs6_%Qa-h|wRg_Ha~; z9zQ&QuP(J?q%NPdOHwrpZqf(-1Y3%>&kZxz_(FSQFDL!2R_r9H{T)G8`Jt}>{@Ihn z=-(iA`dnsGbs_X3c(U_jrSA8JWqD^^;6>tU8|foQV$1k~4z2Q;4;D}_iCDzPRWpqu zY;8HyuVN|1ldRf3a@KxO!#ts_5~rmLuhI*kPk#k-0*`rLM3vFGkj(dvGu*h!f zTwFZ;2Do2NXj{pBk=;Ch2iW{8MecfE7M&nEL)zH+sKJsVL-H6@8`P)2WY_}mc*W--wjn=yo3)u(_MXWf;9%3L)Y)bJH zY&-mkT68%5VtY17-`7w_!amncTyMt#zow^H=Y`i3bCWS``jYd);`^)y|KgXZb5GFb z5F6IGn8796FN!{)P3S`TGRTYB#MIPXK_Q0`d7rbD1x^*unFSv{xoq)`M>OZd_o3fP zn5%iePEy0c0P_l&wn^lD{0wMUVv7C(XdauT*-d;4Kc%&6{kuoB)bjh$hvGX|P#5bt zaAey0F2!f?aQkZQ7X2o0CALnpyNb5N22YX!aM<=sPtjwfev{-e=M(>)t(}rB$aSYmfex z@$frqG;N}O-%p^;2cci)E4&e4{+8TtirFj7-w`kOd49>Ic%VkB%+kL~AHCRV-R*m^ z(|%6-3)pGh?Zn=Rr)i#lL^}mLe)lwiy z^<`81{(>z77Yf`eE_9>b4>(P@uCsN1H(c~3u)YrcI^mHJ&tIbLA9y~nP}3#XNMdCl zH9Cwv+Mwti)W3TlpZmYq@A?4U;_0WodKwySUP_FDcnA4*HD9ClqvYG|gI>?&n|kJQ zP21sd<>|&jr}62g!TP6-d}6bmN#TFG(=f2j*!VI(w^*M;t?x5jKD+&QvD^O&j{jPA z3u9az-N>B?$B`jY6X+Om)F^VKg4#gjM3kN>qy0H}kv%Q5PLO%d4Y@+x!l^&_WAd^p?F35}f2C;~r)#+fqg`k_@m<6NQS9V$H7uu6TQ zW1`QH84{~JPP}z1wU5f#|04)>=%@FNJzLEknU4%m@~i27Y=HZbnJbdbe7kaTp`^B$ zoYgyyE)J2W)Z&yqgTDOTuR+DrfXN=uj&rVs_Yz^D)=l(YFSXG63~qe7f4@ebLo+D! zByzLq5ypLlad%qdZe!fDYTSO@&ufnRwirqCUxnh4JEish+UJ>vdpRA+U%KCa`GTu;j*IiTPFC{oqFlzp6P2zw&&y z^fOV}Ey&ob^Z~Sw*)4Zrw|u>a-J)bysy#-x-O@cqMZy?7-_95bHj9!wtD%+P!~~m# zXRpA7ofCxKi=lxse4r5b(uY1QGBy#5!&U*-@p|)*Ia>q1L+`WR{1!Z7j_tH$o9Ki^ zjDcKJ`@rJAj;8Mjye@ku&G7y{WrLdgkz)7Q_d3{o{%vT==5u9JE@v$GPt~KMK1}XH z?NAtgUG3NO=a=Q4-AG-k0@IFY5_?B%7iv-}oaYJ7fgu$b&LPL7)_>O#Y-Uw=Cry8u z`SfO+ovXUS+)vnVeY(tjsMnEYDvmW5IW*5@n9tYf!3D@9Y^q=xpWsDur9$Aw51!;6 zFxe+E>-(GfpSfbgC+Rl{|0sTCZ*nK^FJKLj&mm;&^dx8XYHa1zd$mJSTSaJG%@1Eg z;Jcgq)y@IeQn@1&Y*4j;lHgVLxM(wTdwZ?Dmdj=C z$U>pdKsujsYq$y=MiwOab3Ffs91q(Dl=YN#m3^>0=GWU=I+>rnh6#3Hjo5)NUF1xZ z16w5@Ozc4BtLTOKC(=uR`S-8`c^<=hnY@;zzfT|ksQkY|a*8BgXUl(;8$MotL*R+C z?e;b{*>?X;+i&wMd4ECnJQ@Ta zYX2j-p_aeH^NWmM?j^5{Snq0Nj@T+HzT1mEWZM|$?WOi+8zB$GHnQzF+a?KP^T|Dw zer&xUcAoHIye)PdIAlL;On-8^<~xlyvc2^OatiC;8d-#lGWS@|xvntxQj4$9myyrr zpH@uX5Bj0%N%l_%>u)YMYQwXUEhWXqo9uCIBnA@9sPcuj6f$m+u^)RSu%7X=Wqk4& z=CRLl#)04eq%V-=@@aBry7Fdy8n~9Wj=h>ESclF-Ck3;sd`?SO*tI4i>rH=JtqoSbL+)~bCa?RmD_-)FTK*z=RMSN(JG zM=bcVfNzxzAHOU3nCE%$F=z4jWAO28_x~?e|8Js~HZROqzJD`wlrzQxqaAZ;o=fZ- zx|Tjt1V*0CK2jPAtv&=-`{}2Qe(nRu$ARf-@Ne6wt(@O8^$D>jas$;FTi$Vi*8p&1 zyQwj4zc6CK9kYFS9>G{bqwzHJzd^4;t2T|=@SZ_We87BU|5oVqI?1cFay>%SZ4ARt za-aR9$2l*`@8`kQRph(WoP@#bd&^$mWb#2*`yILlFXoUJHj7&9r$bj0lk9ot!ZYx$ z#HF9OkzA$hBqI{SHfkw04wA3bf zCf2YAU6t|J%WpAeDrf#BH?OxmiZFHwb#~ZGVlM)}XoK1ZabQyU%yz*(!(PT)vr8p>ioQ$k&j)xnAJax2I&QMncQd?w^p*zKO-T(I3v1K{v=YAyxA;RdU=M8`UGC%A!+eF1QTe)q{bT$!H&&C zt_#f^?3-L?(+&C7MtFka{T+5}!*9hxf*X)E(9NhW_H@PelK2)jXBhot)A}T2O=XJs zl+*OT0E>SQ`o50wiCN@w-cjVCgL96|fwOzDm`LpGp5!7pEqmWNjPZEx%Xq5K${Teb zeIg5Yh+N9Wc5X(#A0+4E?NNm)?;;I*`2cwrA|GWR*}tFhfjP)~b{~(BtK;8aWE=p7 z1JtF&wicgLo$FhJ4rtj^)bsox&(TjiYR|c>JiNonK6Ab|=`A6Ao)+SS$gEbr|2(qC zj%|p{k-Qg?KkoyZmJd$A?Vc)zn@4LAzIFGc9e=|5n8 z$QqgVD!wNNyru{}aZB9yEBXFA{I}m*q5i%?#cJ&LZ&2^cz4uqhSpwC^wQ+sir`pKx znGH*0e-Cb064&pdxWE6EzdwRj4i#zoN7y9)NxY(0d_ljLDyt>-ataz;Pwllo{^8To zPJFEnWNTguGVUFR$_WfjWsQ=wCOgjYa~+%i9c=!oMbJifoMRI7V$$yQdXDhXhv-9S zG0?)N=}#%TTLq0Y7o&rr8_|bKmh!w98fhlqWgq&Yxf~ma92oJZ7K=YM2N0Jv&S#}7K?xYT%flf=XS zo%uSxJC`uRM5kRMw?&cB%aa+ChZ_k~|%AF6-DYv3=3 z{i_ehnRoYe+51#k&_Omf=TPD$ImpOj%@--re9f~pU&|bgI@Fr4ZJy>kI$!fe7ihj? zWt#6e=K>@LSUU}$WqD~2O%5ezDhD}S?4`Yz_Fme1rH(c2y|kw`@&YgIy|iaPwbRNM zuHx(hd+%+1)0l;w`kTo@xHv8 zaU|~XNeyuU+DNTnk)yWXPfmfwALc!XKl?lM4jeMBz0WA{JqZoJk(81cAK78=#j=;m zxwI0_q}{4wB5Q^@h>Msp5tCo7n8+rF?jWDi)`i!_&7a!hrY;m+!1#Navqt>Q%F#{Sv;?_$T?>a$izCe4Th-(?i_XRLJi|L%lvP z>#^@k+Oukm{hAs>`u#fn%6&`&oZWXdEsDFVsofe!#*%+3U)+_i*8c~WkuUBV-ZNi( zXtEK^VJ|!(KXVzhtn#TQn02?wj~gTRdK>hzYf@FsZMn-GyQJy9!^K7;pXH0> zKKJyfqraonpUoaWzF`FZZ^JhWyItVMfk$Wotirlo<=?xwJ!lV8_YVW zLTlaiv=i(Ge4EGsoC+ROdyQpU^MxM>sVN%0;^sCN_4COv(SFtbbE(Xu& zz6^4v!9@!(u2yvYQE1kmJ%cr#VStPn-u~Uj8^0yij#YT0cI*SZ^N--{*D}`<)`Hw> z2R2j@^>~V?A1nLf_IllAk9(2znj`Q0gX{GSV{3AT2pgt=_8TpKnz(FJ(Zb=n_|!Ij zZGS&pl7L^H#mBFpFT0)SKU2nCqbGImrz`t*HER@Njiv4b>o+h7J4v3Uk8je4DPN}P zLuEcfKQY?LSNnN3JT@Ih(3d^vhv%;gPN5qWV@jZ(ZEHV2{mi7_&!Qip9ibtce$wIB z@-N(}?gCgeAD&!?PG9TbUQUNGmNOya$n!eJ9=hByBX_(=y*SC?@+4~m7f{!3Rc;(_ z4>ox_fPXWR{L?jksPAI=A@7je@>x86K;G$vM(mhF03H_mD;9I$IgL4+`Ym1mjkGVY zWy1Nq9AF)LwCCA4*S)4MNc;0-LY}=(8?*Hy1qo})a|`_>uBp<8*mXCWYq}#rCe+yZ z8@5c4ds~vkZi|x%hv-+H;D0Hs& zc`aEfbR#-P^vyB;UkiO-2Yr8Yp7!bqXxyf4Id>wtihp5$8~Rl^&$$Gg5B?lD|7sl0 zQ!Wwbz0q-r-48x-=UV7^n&Jc2>}H#OyVnf*>LHVOo_dir`+jWAZi?4wG5S?|1MsD+ znM3GznjL?1G~}u^<1997@n!I7>w8&;J?tZMVfAFO4YnY6# z^iFT|ej$6{KJYdQeCA+(6%sdU`JLA&N!4DparwX{;Bv|5z~vTTMGm8@$Lgih9v>S! z7T&oQR7nhQ&W1#wztM^ zEA%vGP!9k*>nL_sD|VKR$0uz(V*4u}9s6H=bo=-3$?p>_zld7F`Eh4+Y&rPt&w=M% z%!7DXyQbZ!-%WdyZ(}}HOm74xCfH9r*V9&Hdl*}46*luKGly33=H1BjN-NLi@r7nQ z>KD9k%ZXXBu`bQ7_z`U*YYSD5YH(elilvp|N6LP^oaGjoH^pNp#66MdkE^oG^}+N)w?+xGS}N2O=dK63Y6IX(6ojzGKOv*&gYFRDv2&gJKt zc`lqOP-{l+{@JIA>wp*0BLVPY#U{Jg4V*wv-LXlYr!fcrN%m#HRp1n#XZSCEBmO{< z`0x1YLGma&Lznk}=NlG0LE@73yTMIEJ?d}HTm-jTe{<#{xW)RLe52rY>u=6nNQ_gx zPY!(Wm7$&>xC!n~@dcsx;2u8ld4v1;#P1CrO!29AIcpKzY4t(wS&$g1H$~f_RSwX1 zG5?K(MdHp;#O5AhPGakzH_USsJb!Xl@>V!UQQ$IO*g!3T*)C(lbZS1Zm-C!`W+7o6 z9<$~hshiH;nssI&0XNTB?}V^V!>svN9_GwKXy|!o7Aoz&%7}p;ajA2(oxB%c<8Oui z&Jp&?-O1Mdw!>A-NX3s_=HI==38dz~_<3Rji`)@;FEm(Y#ewDC1j)nf;JI^rk?}O~ z_s%Va##-XNtlRGLq;D=Mtvn|(z2P94*cDOCujzQn;n>a7F zp7WW+o~54t818R7Nshts@lNA8YM%s&A#X}1PPx-z9|IVU#~Afce3NCN~4AtF$2rnKcG2SmV%GthBn>| zX$LhR&0(z6OEu&42TBDyX%%ETwq<5GIVbl(E)9y?bj<(refQqUNd%3Z=g;%-?2~a z=6P3OxOrdaXye83a&n>7y}6*O{v`A0Osc9spHx-%Hov>MGH&7IQ{ZNlc{VUl`6t&* zq3&*)Ref}DTDAPeN1@qn-OokeOG~Xjn#F(a9Zj=d=&Eqx5qGaSml*ieyY1C4Pp)dX zF}bQ9dwhMl->!d=>u#=l3XI<(R?*96qYcW}44>sH9=n&l(RS_WNZ{Hcc*Hoyl(2RaAs$g}LQWWxf{0QjBlrxxAYX}C3ne8JV*TB9FyqpBA@Lq>Uh4aG?D<~J5!UIT z)@cxVz0%0*l|9U=(wH{l!{uCt$)P7aQ=V!^k5?|1q{#Q&@kQY)_2^FGGhIavK6h2P z*SK?SWQ`h2ldBq8qsARv!SBXr@XLbVjn8ofzg36D!S6IP$6E0EQ!aihUmEy*Q271& zgZ<{`;+HoM56=V}Z_eq|SXpxR+b5U2Vx4%ozQ6J@e7Uuw8D}-LaLnk4;E-s6nm4>(t$GFt{l$(sG+8^k(1sqI zb@1q*y1@3vx}A2}qtMozaB~@Y18^{U19UFELF4pnM0LPJ`z_&<@oDn+RMy}lb+D0r zbTES-cN_T0X8j=@jB)1o(ZSTe7w5a>BXqC~#_>@)nDj5<;2Gq+C;ucXgUtUh->OFZ z|Ks{gwS&x2&b@DKZ7;9l@8SY0tTPPC%hk*oi`L!9v2tVe|qx@W8R3AO%kHAa%Y4^N96Y;oVQ%tEizSjabH*LM}z zuU+ltM?MdXjzC9;eD*3g_k}sD$@exfLDBQT=?F6A5dLoZ?5|T9SpqFdA8Ll?TF{x! zyj=i36p&lVk3QtXF7EhbJX}-$$-F9ZR1NprSN^ishK|p|)Xes9O88{(EW=uH$33^c zG_x{j&)LU09Ppr<7=~@g^v6o-I7===4`PbUZ5j-h-@Vrz4Zj z5o4LCM}Ey)pKibXgtg_Zn)t|k{2)6ES4|Jc-iB6B`N|#*f`cH$*hw(L#cJjByUr{G5xzcrrK^|3o;As zz1})yAUoe=o#1(W)`{;Q(K=-y``=_t)!@oN)@k_1uhUOhr-Qq?pGU^Cmlz%12P~th ze(lNOkz>M7=3tgkXPmMh{_OAKiAMuXE_nkd+A`iWg&*H!2|4;C#jiZLmIDBe4 z-*4!X^KGT-H$cCvjp5I%O@IDu&g&)eXV&O7+D0GQDWBQbXyXajXXcF0$!Q=TRi829 zBU2weeii#*J=I=*o!|4~FT0*})=W;{XiW2+f?;Y-VW2{pM-M5JSCwM$Zb^_T4v_GB=?HQWc za#c7_ut_C;n0b5Sc>>*IVmi9y;Y*F3QF}(oy&Ucpaql+z_(<8;O>7N)i9S5tsOkaf z4)BKVg8uf0o%>eJ`HN)Vb&SK4eKB;P8g!vJI+4Q<$h}NVmg|>9uk7_pdh_DX5ghb zC*|w+ax+;FI>^1Bf{~M?rs8R=@^Y<2+)4qiY}UIgiNrjSY+OoAZdwOXm@DCtH;h$!j->^N7a& z&Uh@w6XSV~3)95@gqy3h&mm8eqf7cCzq}t>0e@@3-5AfcmywPvnq0}8&yvUW{<~Md zv<~~-dhB zD0)5a)lo~id)#}C@I%M0pGJLD+4WN*-vmC6TpfhG?jCsycDJ?I-)_bxtbLT;`NKcG zUmiu~)-z_s=r>|3mw(L1IBP$Def}Qo=1-WoNGmd)THA`1iW579?XaEW0pUMT3thB_ z&Q#^ylg-||J3TENr*6aXgmrDUyqT*Rh*=}$(GYLNcL9GL4}VQO zPg~^hS0@*P_$%{q`0Ev}4e|=Z6V}3C*H7?O-g1S%((G|u{581AH(z59Zu($89<1W< z*|pdXizb6p?4xcDP(Pb%Lo_wK2izQITPvt#V4sVBy3amLd`x@O#|{3o&*%B)@DU65 zo!9~P@Zi2|ps{Dz2Q(mu_n^1%p5i%bcrW%0vUU%9)CS31a+3f<*>CFPBe1OJbT40|<@gGiuuKkhM??XR$+o!W|(E9A~4Lg`8 zV7@gzye~_GX?djO1O?z?Y3XSY6dVX9ujtzaUc>5l7=117a;S-2q zU+=GTd>n7D1eOD#i$%=Q>s$Q}n71Q)EOXGNKtATuEK+ z*q8B>ASV`2Oxrz$Sg+h+j+`h)PW%gU;vwY3d~AHa73l4ZIX2B#)qK)tFD8CwKJha_ zc=~+tcKCVWuM4U|zb&YWy7QRCJk);;ZTFN;=H7gO}+ z?Yrx$9h;zRCc>{ce^=6m-v1Hzw9Y|fNS5dWU!6l2?lq?$eU$p`3dxWi(8OKP$7bjQ zpPrE+p%M9sGGqcUn1~F~8MTahV<2g{%8BZXyx0CS$!+6QvRVtIkJ$v44xje zy}usBoYv^9V_benuFOfgGq=fg^*6>}byZ=$MyAXx>zsNX343RdDJul-)~_EQe5 za$HyyIafnpUl~sxAeWbH0zNB&RS~dS_sMz54+jXJS-{8Z`xEgJ=3(H&JPdr8hu||l zVIPwSpBV4|lVAf}68jU42_HZG#QV;kl;_ymp8u9$mE*#y$h}rLSMU2cwmO4XHv%8o z*sxi|mbrL!k0Iy2mA!~YcYw3dQja zfNY}26{B7xeS|Tu$rS#4%GFCgW#HxQ_r?$QSIYJj_4H}pTLzqr-8Pzr?tqOH7{&0Z zM-ME>w|r@HtoOe2{V4m7=rc+A@8jz)Ah+IFa_i~&VPv`WUdi{(vz&!?kY|>j$)<}> z$HWtaa!qW((N*~K;K@2y`rvcv-M2G$v?xvh2dI{xdxD z2(kr!A$`b`KL($8{;%%y?dV6pB3G8))9>1o4i7D3yiX$+p01h4IEJ)rb;t2D#<6Tz zuu8RHp2SYyG9qXIdYV1M+q4Z27r(AY<~5-EG-3m4Iu-1h zuh-u%;GaLE?>APf@1ZRP?{*s)JVW0%0E29QM#~y%W@Ze{s%~-n&U=Tx`@vvq0t^!8 zHk!G4F!uWVC;E)OiLAyivX@wf{bLKM`vqQBWT69C@VTt;T4EZya)zNBSe3Em3##Hb zF6e>xE$ZtK@IH(zf0OtK*17g%5dU^k%Tk?d|Aa8`=6|QgWzOGaM1BWdIkm4cB5&#U zCv0<7pE(AZV}Yq{)>SmjnOlW3x32gwGv`<-bKKE8$EhDP$Nw^8RjrMJ#zI4b`p{4*yjC3M)H(5&sSgA_w$EH(cg*EK^r=|&OIcrM&*#W;otKF}=jhz32j$B0 zgWfqA*|FgA?veN_)g-1O32YZg&J=o@NZs{60Ev(d@z4bcj}x@ zXuKWT_4Fa9&Lwrke$rPjGWE9@M}PgO33`x@)B;U_m&c`xon@S@j6-v7hfX?J>rQCp zzkzXk_5ypDKdG#9^aA{4!&?0C>&};f1M_!kB`IgTY9(bw7O>aej*a1u+pq!Cce~no z8Gju*gL1~3nn|orhr2%G{YlhHN~%_!r2B~hdF{{lnL0^9?b&HZ{@7aD{YUoBi8`O= zHjsH~KAM}xqWRrra7O#!%*Ysn->Sov5qZ^|*Zy4i_xDI&NatQ!TkT1pT)5#R5ACe`4(}uHd)X6CU=3ABjUB%%NEy%RIY-)(w-9`7sn0ejIt?}MvJiT)`5 zj_duoyg!!rC-i$Co|(j6*0djGkILU~>;0L$e8``c2fEE?|c|*kgxe9?o9X z&5Oo-yuE5Jc^(q%kjIT3lJ|Y8&%rzr`-_&M_i#^edIi0*_IJRj$jt>;;a=m;HG~bX zsP>X@{3c+8t-W?7a9IY7mII?3KRJwE7$A(610%0*^*dk~F%JVH#_!l_o!oKS&tDKm zy#Eq45(J~f{>Cb|+?LdE4f}BIla@1XL-*)2YuCcdc3}Hi5C5yM>|4GH|JZL4kI^?b z_Y&lZWE*xM_-Io2jcxRUpHgk!xY)5bd3ImzVU>&b3)d4*egxeWo@Z=cu1~|MwZMLj zzgNNwe~TV=pUVqxffvd??q|O*yYRkIsk@)TCcF=Rh+Ww5!k={G zj~=n?SC|X?;^&pu5+~4zRVJ2iOt^xv`pA%MdTJ-Oo->U+6Wb2Yk$o~PNW2;{AFEM}EewJXSBLUHXah&a?Wxir>8V48M)ONPi1hJJF7C#)8L; z5dBoRHJXTtHv9gZe)JOxI6k;V(9B%uXCCx3pWp1YqM^(C?Dq#?GdBDtwq;=aW(#8% z4iCU)Y-GS%nHB>tN#NS z#YefY>08eVy4zWFaBeuBCqDe0XKSYcmuz5^1B@npavt;J0m9{Tz{TrZ{SKJNFb~6H zaxQatOwnaMe7K*@(7-0f`+EczhsT(?sz2FjmCL>k+n?-xP7ZCSE`(@jeG+zV@K1h( zWa?Iux4Y%KZtR1{(D{r`ay2@M?B>alJmwrFCak*~+B(K}0pgmlNs6xwgLY(3SACK- z*d*6ulQc5m2>v_puMT<=Es73R6Lakk-Y?faEii-HfY|pe?2e6$F&o}d&AvwY!PTx} zMPukmjp(3F2YmL}VX0=%FJ6@)UHSle0Aq@yf2yvF^c6EMzQ0*?Mcb>Go92ERo;H;| zg2pM^X$5nCg8gYjcY(d0JTEa~Ynr+gH<#A3hMKPNYWCQ>iGihmr;aPNJdMrb>hKl7 zB3{k6^w)$fuU!IJB(w z8wqZvf~OhaX{JldM@Ho*+U^EQ%WWkCqveOsd^|1dJdekpZ#MQ84_`;Q_&Unq>kjI2 zDWB?nqx#cwQX~cp{-oUfuHDX~<*4lcC#5eqxu3c!+-uyqmU=o>7x;&66YusDdx9OR z6Fby-ev97){xTRnH9#0G_)B2Kd>q|sqyr=7+7@~gN$GMC>0BfhCjfYI&=*6~%L zpsnlbMb352Qs-K<%&i5|Pe+ivk&bZJr_PzUJJnH)Wdgh5#L2sODLd(A!MwuB@!J)5 zuQ@$1KVGzgx?XX=Jt2V4r2#m<4a`r`)@gpjcM@%WAE(D&H$XTy69;3~o4(cW$MDac zy?X3O$4<(89NBWIku9G=woJw!IUd>K+DQ*O{`5=3%LHfUk=UQ%VL4gh-z3nm?4;8L ztGMguB6iZq<09wkeIKv(+c}Im{wDA_1gwq#t79&HmR|Zv?4$>!`*(k*5B=`EnC|}* zV3r7{3)o3__Si|8gJUPX)U}g3@ESkZA~wcHY)p@x)PWQ4Cj+M^(e(;fxpq=`-2WeT z(kAeD%02sD%Da2tOH0TVKjof@FYPn?bYDjvGU_&LD2n}IPk&so*Ok7MVn5&4-#zZ7ca5DOwWp1@OdBbYEZWGUu5`m0Tb{WXpp?x>sNusCs=wuxbN3`$lx$ z7Ie`P>bVypa|ZG5l6#6@T8W*Y5cyV%43f>anf-kud-#UAzAEuQ)qIz2e65i)UkqXZKm--s8ye;MD#KWwv(rXmY7&}UU+cev~p$k5UJCRS}?jBir0#byL~j{F_Y z-en}?9UZj){@uR$n|@9F-UpeV?#ZRKlXrKLzbVMK1$_JWv{M*Js996mo5QJv`XQ~% z)8uffu)=$=n-wJFa8iCJ%l&8K;YyQCJlqCyJ)SE~=@SoEgKaIk%(55KZ{2*$zJ|W* zb1Zui<7t>=+1E1u#(9>#nDI1)EPKkMi}IU&)|?#91CQriuyh)8hFkDPpP9Z3n;iVN z23wkHTi55P9krqFgZ30^=b7)Rk2jt=dHug1`!V0=EFi`M+mZ5xDTYCI|04Vd(%V!s zc}fbl&p;Bk&p;pBr{t7)|3T z=~C7jJKDKYf1mh@DsV(?tuklyW`|=uk6}B?Wh{;Rndbri&y=o|9hobA(1k}V51d%4 zv0oTA8pCf{J2zGW8`Kry=gB!^WE1f7QPXJeLh`+Kl~hun+4xY%+h+TH!Kw-T4$DR3;HFU2%V*}$!Ykz!b(abFz&*?QRQ@KNb5K zarW^Bbl(&tqECy-O1?p=%&wi2Xv-; ztkY&@lHLFBn!s4h62w%1x3%l&BQ=9Ftm#I#!EW(F9sS(J^DWpwbjEetEO2SJU4G{o zbbwMP4t5m0^a!y5MHX`CBx8M>v(ub8uy#%gkCPvq_k>?MV|VL>PHZ&j1Lck#am)$Y z34O-VAxhor5$CEJ2=TYceOt~x?iA8#=y?-oU$VOzlPWhDVx^HT0*xp1_9j8T_k9@vk1mzv{D6r0+Z5O5bO^ zMz3PL+Ou~tUY#}d^s6aX_UQYL-oX3ksh8ljukqA(FR_m?{;neq47=k2dot^t=9?F8 zJQc7TP6zBd?lthd0sLr44L;i-{3vzsqw9!soy0c{LF(&u^8R`7ql-O$H&@<^gIjT8 z1BE9&^?Ec9?d&dOFj0df&1 zvCobk3fVP>3T@@^-8}^Teo~+cn?_YFW4dnvZM__@@2Aar+T1~#4YWyHI}5MK@!}eZ zXCas4`9ixavE7$@+r3ZiX4CHIgmz!NV7mtkCr=IM__n;|ja%)0BeC5Vd)wWlc1P0g zaN0cr%tY3<h=9A6Zg{_r*Q#)L+?I~d6;+> z=3)2=^AJC|Ks<}XM|i*P2k80CBe6fr$5u$2Jq&qI%SvhXH3@{(F2od?E}Cny9PF^3!)SCcz9J5)93^W+a69jZzXl0$f8s48QDRdr@~sA}-F zR@KX&vD$A1zSMA-eRhAy9)f>RzRn@?3-Y&o;jbq2eU@`|L+~rMW)#{(@geH_O?>|d z-^Ztg>;QhpWWLW_#rOOj!#Djb-~V9|dSb%bd+VaL(3*Jb^JR3%h8M{ju`*znf|o_a zES3-pA6E{UiqH1Z)qev$3J2mlQhMHv7tP8y-w}HpFLr-(hA+O({Y?&;_$K!^Ib`Bx z?zhywjhD{iy^y_zxa-(bzYPxTw6=WK_^bDQi}6DndcGDOR$GA_<2}hS$@qq)h48-Y zi01yl5aGmwZ$0n_>z;AY&V2UH8;QA@OiaK7>({^ZUCt5^Lz@5ZUk}>Vx1(!w#$fz7 z|B7_vb=uVQ-HK~UOO~#e+TtJUUvcGNU-gKr!PV#X1Pr_{L=O+TuoyxAqS+Q?K-2k* z{2J`Vz4I6mxl4Qn+N+W6mbuhcpdUcD-W&{VoL`!+v9!S7&+G}=->vfHYn{Dw4`qWa z`xxuAjq~l!nTL!>K5HCjpZE&*&!q;#kFFWkXRZF)9bb1tx*gq(p0kJl73ub2uDvM}911=O8D>BTFVAOXOpcUtN7Gm&F=z41U%VcX|bVM(3q-77p9{e6FE%GmpdQ z1g~71P&fDj4#qjJ^X@xb;kJXE6KwXnERnTJpb&zXKDwBQti5i zYZwc75x>T+zY!kSLVe;z5zz@`G3 z{}eKRKQdqPJJp4aXCq65&F|`gP01h!HlxF9&vbGEqtyH9#;>4yRL~b(9XFWt4~{>b;lt7GpW$^IU-vve2(XTi=J_0 zf}>{yTs!Ujh?YT$vLNT0NsMzSv7mmGl)|(Hu$26`8BjP9-U5hiUIg3cFNBA z+C9BGhw$55!^gpI=~s??wIW5VVONlQoCND@ac|nS?*{KavUsC%P=JVCL>{po2 zZS%P@pW7D&E5AD1s=VzBzRKGd_Uv2WZ&TrK8Ic&@yso+$(30lk`6&*gi~US63b-%| zxz|$X3XBdG-7t|lj7iQpgvO;!aPjQ6y~9vDS6Ya%BffTDyIc|Y~}_wG2Y)MxB!#H{<;E_9GnTc*HY)& z-NimU;MmApkPBahmp^2GDgR%HoppSSPR@-K)>yj6Hsw&*GC5pI%x2M+K)8mOrC0`X z24Bw^aQ|U&e`=C7=hhkImz^54AAttCi7Ab>`c@1fMxix-$nG~U3EFQAGkd$8x1S8z zKc~$ZYd#%5O?;d0tZzl@H;4(mCunD$@jc&$ypruoH3=k}>33%l{cGQD?SNjVKL0dlD^^o0_UT^+O${oIQSV5X zlAZXWVb-JMfCH9{i`sBn55ct7)kn3aHN-xty{9V+>>>WFIf9LJu2k^4;YX9g%5mL< z-l{w>PQId~NRDuR{pZ4K*#p*N7n=jzu;Gk27oXmT@9YCd#lz~eQ|#KD6g!FUw*UUB zaP1`iW}jc1mtx1KrEump#ZKngzU{f;y16O9u;kggc|4oXvrvki!n31{rG8NgFbF4uTe_uo2@)vjO%v1|@7ve&+Cf*uuAFMj+4t(O+P5uUF6ZLH^&+kJwj`Qs1^*3K#cXCpGv~7VMJ5TPq&IL}5@6N?lvd65! z=3U3W+_md-=6rVep}XN-=ivcuNw(Thdv);an$9Ghl|JDg;VWB!9IL0#Ymj9NM>+ba z7Y{S8ar4OlwL8(fM~tgOr>3v1manX)b5ND=wYD=Oe~ZblF*N+^d!W%b!ClsPJbGgx z`rNiu=Y03g8RTa>Zsn(N-=9W|47^%db0@ZW`JE$05Ui8<_YV?#> zQ~Tg{J?mj~Z*;4o!>PpnCAoH-KsZL5|G>UUbC-`UPFuC;oPtMeIQq}ZkloC^md>U5 z;uoS>Z@;R1+TNKaFORl-m>t>I+VlNZM@Q(8Tp6s18n>v_z4ebV$Sa{<`-TiS0Vap;+}G{ORw#duC+U+ zU2AvdU2D%wwVuB;*$SWUx}oYcHI~N{!+aiG=|IQse9mvT?+&nc749hif$A?RKFi?G z@$Klf)xbIaa)Di&>FC)_z`>jQnLw!O?2F|7SzgFkL$npLJ6@*l&~t_Md4oq*kD_BdF(>e^ z7)j`_q^5=cjW9nf1?l|4aGQ zADP<@4EFf4iY@N7vmVFc|J5%zG}Z|3*V=7Nu|`ZsN1cJL+R6JR*u)E;w^p11W?9Iq zJFdyvJ>zI7zhkmBx8n$N<-3m3G`n+0n%yxPnCDz;pQr6|+J29DUcK?|tKWm~ya(U0 z;XCiccm6)r3V#4EP(AV|S&z<{e*64L>NCv?*dJgQBrbxrxSTm(=BKCD6F`e^(e^Fns#OlpH4qBi(QYJs4CzRw!HCwrE=M(@Ml{w~!z zarwy0%5KD`xE!D2KaO_j{7%+q7wa>V^&3_^^F86Vvp$!*>oY7;AMafs(%A9ak zKV1JPm`}nBZAZXv-H*=07_BWi@V`qUG2k!+du?K$1IC5@(CUtmS^q}hLhaKL zx{l;p1OCRq-8eWbnfm8)d~*qOJJ3D^8}S6SE50Cl%(~|K{Pwp~=d@O^kKE(8+e*<9 zSs!fB@OAV?L*s$Sy6x@dl5yD1i9J{Bmo=vz{!;^=iNb>}XPkBX#`h7f<9j_jjr=a+ zJgA;$={YnM+d=G1alo!E1$Nx`_}X61XKzQ2{NS7LwPIv?DKZ@zs8|0x3aK$>ok+fW z(o6O5-x~OE6uyiO5pDoBjliY}*eFL$A-2SZk^r_icrtucd2_s+H^dy!$Gq^j=|kgd zC<*Z%HbwZNVlS2ZMq|>P;s@|s&_;|l_9i8lZAZp#N5*a>cI(!G`K zbA!=1`W!KOad@TVdUg`J z+%eV%m>*_JgUIk7TyA8M=W%)($Lu+s$7^u(wa5x7XI{U$)6a2UX{8)a;u(F$(|2y;XF@hss zcX8zFz~NEgFasR9Zo>@n-&!LaSO|XyM}9{fLyWztXh*OX93ocwhu|;;IkAMj^h);9 zKKc@#`*!8dzbNBLH8C>OX5TEF4yCh(^TyorG~&EUX^IRSTCn7{VdiZPDPgokD_UhrT^a(dYk@L&meFdiOK z0MA+K?3a!kdk*s-yI~5dm-e<+BU;qxd}!INaxW>Ca?U-+Un4J?_Xc#8IxQ?QXN@vZ#+N}tuyjLl(*Z_i^H*hq^nyEI(P z@7znS&-dc{j4gqEMJ@ZGI&3cWfl1U-qFw=TxirUmRCe4!w3#!cfP5OnBcxl;3(n$E z8`nGhNqkB8C0HlQFu!6yh*xN0Kj+|AU);Ja0oL(j$go53W`kqk7yZ_V$6zD$cuXNY zMtkx8xD|rOh)4Q?k?6;hWBu{Lqk#forT1hH*@m2LcJUz*?-wPEt(h?yoOj1$?3Unr zvBCF@vNNo~b&P9?i}R8T5!Q7hYqx}Tow6a%=rZ0~{yysBzq@8Nf*-Jp1H)SQn`}1q z@VExX*a&_%PG%i8CEGQ3Cfl*Q$d|X79AqWr%qyifz&3qP#wPhg;#dvI8iNVfNubSbCEDM1#=N&+&fZ{(6o3uKbIuh}%&fD@Px{GMq~d z549oK$}Trn`9EG)48V9d2Ee@r9Qy=zk)6iwyfVqj(@=yQT8`bBv(K@c_zmo$IXR!m zHvcQ>K-k0o=gvO1`QsO}&3_wsU&uDU1lzoqvwI^vS1{?ZKQkX=epN3Q4 zqbuOTE#zE7ik-L;d(EOGdo4Do+NHp19&nov+(P^Y_5+EX@L;uTfUueYth~O}Z%n)% zKerG3o&qg;@G5ZOWpcP1U&c5SbESD0p9b@gPlNgol~>O4RbKUZ$6oKjE5^KkC|EI% z#Qr>Z<=xGhc=%Tnb|jsRj=}5V%dt-tp|h7Dv!`KKOJ(ncf4hdg*IiS^tAI}c8liqh zJOdiZghqx#BO{>^>XkNcynn0%u%6`E7d&h*NOKgy__^!VV) z+@B7qj1$|R^K~aCLH^yr9`OjD0vaybRbR(i!sY`8mRufQv67_gd;)f#Gq3 zFVm9jBGxTF6CB9_9+SYAJeSTY#^v|Nn~UW`0dKI2O${ga#hZf{qp^z9qOo3F=^y7W zc=g2jGY11N#%|!nTm-M2EGGxmM9$~PKM$@PH|HUEKf{HGXek6O6=65dAqIMj$$^v> z)*e$dzVB;}y;MFNV(~@@ch=|PU%;U{cqa&NOgTT#=+o{>G}8qNc(GI;~B6QHNROTJb=wt*Pu;bkX?clvGkF*qWA?2l~J zTz6q#=!6ECuWEGFb&)G7ExEdZeQa!SO113v3!HtibJh{L6l72QKluNpi_K=;PVxJ& zse3piTyv*62YY;6kh9dhr*-r4uPJ6IiS~q-%1xb4e||TfCWm(XLC)|>zvp>2f6ITP zzh%crCU!<#X>QQqfX_x})wvxPH4%<<3sZpP1bFY~N>BxLWS{jFvlv=>Q^ z)N+=7zT(!&!J=9u%5%6Hcyo5pUW<)Jx`<+B|7Q|BW)X6DDLiHwJZ3pO=0kGwy7#*65rNKGdFfe%$-co$fm^zAbE@MQkfMJJDUX zr+tC?22ML06W{rB!aHMo-&xH&=8WV4YL%2aao$}=oNIIvd#1Mw?1LNH%l8vc(?EQ7 z!*F=>NdBktjPs+FiO)uJKRZeB4+pK|v!N|=C(veG`DdZ44@S{f12(5Ujt{ZHwL58_ z)c`EDw-FvZoUC=Z03Mvik5J^dlY|GSvELOX;6Vd;u;(ws0}iwG!Gorcz=M`Pc(B9Z zK?623t?5Abv9gt2VE>Bznj8M|9n8(Oee~JCy7T*({p-OC?Oz-JyQ91v-F&*0Ro2d) z>kPOVg-01b8hqQ^!zS7m6K!XSdq>&O{@HeL|A+7?Cl69uWEa2BKnHu0tqu|*uDBiC z&Du6OJZ$4vub%IB=y?}3bp>mECQg3xb+XN7K{u*VJ~;Bo%gp;CV`*H+I>RG-{9AFy zuIbsryuLIx*}`P=@a8vvipv+~IDBCQd|{SyFo1hxy#Ef%YF_Y#RH6{PuIU zM{%vcfyNu*1^V3xFHmh*#itD(gdIn`z(1n+f!7{*>{Y!74qVG#z7hLHqigqSXOATR zMhCFRzh&%R9cJ&Qvt;sf^w_=3+W+V6y=#9lSR}$Baa}st^J)I_eVDUV?)tW~Cmo!U z)w3tfVo%x$%!gz98Rpo&4$8Opb7YeT$1L`z^6@$Tqby?sV=s7I@f=?UmmDA8;E4Br zBl9yb0=EuhXIAYtt?N*5Vi3ON$-cC*G&o*S>`yJq$;B&vIZg_>}$lgAFdTG9V?AjVv&_^4##}1_+PeYb=6C z+r{Cbxef#-5A=h_t-xb3aQG%Pln4jejs7(O2DkCN9{+v=cArLk{PI^wZXDebaL@6j zwWK4@J)APW_(GlO>zfmBAvh_0rl|t|#(w_e<54U_KDnlfz`GXgPx&s+)l(ZJB_Y0J z5I85jK549=B9Z$wi_p|-Q!_{z^z=))8>L( zx!7=CwFZ@GoJ+ay+HlO?E&?pmk-ba)ZhZLP@s%Voj{tuc{q6YhI{Gnj9#=SV9-^sa z=9UaS$*-5f+*DId^tzIBHnKZ58D5pl+??10Z*KoGz_~4!7Z!F!#k1OyN8Gye;oKs97LRUm*2h_nyeHYfw%OAL^-Oq;v2%5S(>!B8#dkj9gRnI`f=+|n6R!UQxqpbY zIcQl~;k~!B*9Mldarjx^!k0c{&Je^5&%}PpyS2wS%R@Z5#oUzf4H@4(R zk~=opG*|P@x%kvRV@!9)7~_7>c(DPjsJj#2 z-Y&=HThk(b>C_={?W+f+m$lv2hn{y{%&ze8Ddxnu>+Zxhy$gE}{cFsgF4rL3XFfG8 z#KOZ17vPKVa6bm_HvhPU&+8z%gWCV@05&n|*vcjrqSlgV`P`p6d(K|g+|pjoHwWbxuRY0ny&aJL-fpc; z53fd_(b-G0|DeC2mv)xFlHjXpW^Rjtt?=Ib2FBzXwU+{8`7o|CFm`+xHIwj(ik~bM zPB{4l6X9DvK={sPuFcFvK8+q9#!__INrm)l(QihN3?7dRE&!I-IecWNiDL$qW05zv zAWyW{9!GnsJG&L!(Hzb|SD$t9rwRV=%`xcCZ838j$J~Ucvd1glKzuTBE^7xk7e9TA zFKRy6`0YeHy`T7EjYW2Pmk;jr_~0P+dAacTLF*kmJv@G=czo+0JIW3HjM4b4s%&_? z{7YJ+i;aKH1;#&Xfa8CQ{=D&PtQVTYS@xx0y1*QoI0uzGXm-yW;{08dHaq-FZw^D8 zImpLT3Ev)+Va*Xf>kRSz@b1Uq-PwZw735h1$CXztg}iEqujY)#=Q+;{&I{l36L9@A z7r^yZz|Q*H>~M|p{3YP}@=N{?xSr$U`l1Wt`hVRzFkbR4VDTYbUj(k_d@@`QfX~A9 zTRhmh{8g~kx@nD?;Qe_g3i2~NICF;R{@XdXe@D>3IhN(Zne#ga&cOT?c&-QM(;dA$ z4CieFg!9-7!8rt+v;Q(U5B>-^Z^-;; zdVKN%^mxMn=h6BH@QO7xH0km(t?h;A@+#Kh`U}uyF6)##drS{q=E$!zYfSiU+BUpp zp+lEuj|Dy2=ekEe%6xb6KZ<_P@l986Ie^}R+^ajZ(7ri|{DnuzEf3D9_6NG1sa-8Q zNL@KH{H_2x4)IRNzP&~keGZ$m6Bj>>xySE9o|fZ7G52J%CvODtS@q}`s$KCbVh6@& zC6z5?KG-F9dU4*{IDenBe*AlXgum}+{J%Fm-^r=}d*XeZv%-N$7x$y+Ua$5ad)q>r zHlM%HxZ|4xcHM5`!!9!J_*WVCX2!kyFCVw;-1ji_Ojo@Q38jc@DcKcKAGGSxdFgz7pAXCfnI} z%RjGu_hMHDK8y}Egnhyg)@~^KgiO}24f&Tv`=@=GE!)^Kf+vNJ3H zvd*rwCg@g|X-p<>^HAcfg3rp{@HF!u0$e%c{QRx##UI{q>(w6xqbEHW#rwl(nD*iZ zMmG)+M(_OIg;9LqFw(dO0;iUKFuENW{R^4YGN*(!>wP~f=*mP%;;ptUUzzyW3NlYUiZ3{ zR-NtI@pZodz9Al>dMvWz|C(5ul=ZhaozcBkKU*zUCV5&i!Z`)w1p zyVKU7;^f!vd+em%!*+-M_xwcoNV0n#rOu5JsmF$Qlr|LGpnb7;R)h3dbhd)AZX3YOp1rO+w|Z=G{r9@kPZzoRY0sVl9p97L_W)=0J&Cg&4cOP@57pTsoj*!E zdn6lsJv!9Uy^}a|l^q$=DLY(BWGeXk2K28voF->`^WT23Lb)+o**6`B?oYx4N~TyH zsv&cUKWP8rw(q_5i@|&U^v&g=Bm`7do5$DA+uRPdf}KJ>k}_`CQCVEhff zeWCFB{6j-6Q!jcge{VDU4B2#to4v*#+d9D!pR-R{^;vTktd4QlGk%BnW=DQR zyJo-R6R17r*mk}EJ=VJGlE=Daxbdeg?z)^|U1a||Yu073Sr^&6bUsVAzeIg}OTxN% zw!0Sbi~urzKfHu>c?jE`7q_zp8>!aiOYXYJZYMj{D(s@(x(sJs6#JTop5D@LUA%K) z_2N~?NSzHcXX@A&wz2mM!*_I!PG^mjv$mEo%N8u($F1*mugHLQN?acp`oBXvEk3(; zliz;r1>qPmy_;y8ImqVb&7;Kift9#Eup!XSt-c}Ehg{mxebEkfBWNeX(2jgyf~~$4 z?UeCMKCl*OM|-#yXr~2yk`L@*Xr~q0q5ebhf!DUXKCq0)qrk$+ai1l5bWr)^maUOI zQat~V$U{7@BfjyFHKgU=$+dNS!_8M`yFP)R)87czx~`LRHFwD;pjrh(fJbuVLCqC> z5j<=0hu3uyW9h>4EO2an4tU;Gh|SwFdGkHm$aZc1*{;ohIB*#5A6{L8&0oGi-4`4V z()S_k^5P*)qcpDDuhzGMgJhg|LmP0=?>69|b3<=%uM_+KJHR2^e@XGCqmMi$KV}=a zDjp;JXk!j_*!Qs$bwrr&t=K!BCa&sd%=@&vuIk&&yN!9@sd-Cw$`_Ixxvu}b+j{5i zwbgbf^Jm_&_j~g`?XLf6cm0Pk?-RaZ)$?6nhwj%fx1Z7XY1h~BDtdjZJJ(j``UbyS znQN;%*AC{|DSqi2UVK%;Tocc0J`C@C208fVhD}$u;s0oZM%#%EON{%?Cg0q6Y%PlW zJ)1}S%cQdlKNSC)<>_7lkoj@eZOq&B%^IkdVk`9hTi=kf zv(WdK*himbZfBWWD|2gu{|GPSSCbwjyf zPHR31y3Ecta7?<4d^gU#GR?fO6PdHP_5ayBH*_EKzWAr~8O>2=YsHf$cSv@K4ujAB z1b8@px*?Ir_+6L4s~$$qUyxUwN6v5d+mAg@f9H|&n-h3d9y~WtX#XX=ioHo6UUdLG zz8J51x(~0q&+sbA`E1uu`+txrW<6Ur^x|kAnc~jxqhyNK?Lso;JFL$~$rKO&B}-g6 zV$NfC6L(fi+}Y3CwQd=a>1NHee!cv-WmPXfo@}0Lf0Y`UXnxBdnI0K$e#>{48p$@l zlY992Df7MTv{q!4dFIq*cJ?1B;gjaM6F-y1bHRB|GPdo0@kG&7;&C{)W^!SY=kMm< zf?uiRcgny{nMvNhGt^SavikgU@=+$6e3ZGfm5(yDPd>`%I?E1`FEhRadn)ZLBoAfX zBJxs_N3uSIenqZ7jji0d?dm8;Ul~{In$t9KDC71GlWM%ge;swW%-*F=L;mgP^ zh8<}eb|k?w=p#?oos65Dm+@k9w2&{cu7tK1(e4h~+{D=7m#Qt;ie2yx>?^I<-&&WF zD+Jn#-pSY!zEiG6eXH*p;DORBmt2bPYN=%py=To!t(z@$O{)WWyW$b{Uv2Ea+Sq@! zv;XQ~|7Ffnun!SWmEW_o#Dec!n3ooSr*(```RjytJvt__Qt}Tuyv~Z8{vG(tcoWB& zIKS4-!K%)ZU@yOAPMSvtdQyLW`!0NAPCuUe9QxB8@SGXrr-wV>y|VS|{JYLQs7|`! zQP{G7sc{%zT6(07IU3o^UQ0G+wX1xc+a_2mmQm|q)8NeNcJ$7+Wd0XfCRV4Jb-09D zgO%6`4`3%eO%B;7$6G7*0>2dK=GfGf-8EWQt*>h%oPM^myu0L6;K6YIkEpz2wXt9A zG&b>FmK`nU|4rmV0LQUUaR2gf?QZVv;XnP!$J5aB>~rDT3hwXczif-!Gr~0)vMnZ= z7#-Q|KcD5;yskp89lHLutJ_$gR@aVhelw>ScJy}UW#R|Gsg)MzU6G&B&EVmUoXa(9 z?$Efa>l(iF+WLX5cM))IL(X-urqUs#OGG!brsM`~Pqyect4D^uiVT%L{8#A1!XfW0 z@L|?*0lJTDi_2)QfZv}J%05NirfYE6%2 zI%_(aHBDQ;{^};iHrZWM^P4pt&zeqQP33>eGi#detm$2>>2k|%F>C7Z;zYRIFhIDp z{s;DW*0crKC^pW-f!qa*maAWU#R=zL{0Zk?w5DF%kd<)m<&U&CnQ^AU&nCmqCg&DZ z=FKRqoSGl3JUj1_%Er7)D_drctegzLY&-&d4$#*#toL*9kr&~UFSG84;B}=1RSmrL7^35~x^Tc_Zer|B;a z4{snZ@5zFymgS4`&wztxr3*8E&agWJ%5lns&D?bVRL+6(f6RSTyDtFD{hslv-*4atFzcL7qyB>VbdW<^d3*;gmj05~M}J9zN8a}m{+53u@8)6EkheM( zFM`*PB;Ik6WptQ2c*Fzbo6GiDU(+675a*(rrdhUgW+xEVnW^R?cnEf&!NbZPJ2T(d zFWR48{n>CU`R3mEa&GwPVc&b~EPBk(=&yC11wV!cX0q1oQy(VgZQD-^?85Y{7fX#D zXK17~{6Tp%nRDJFsUglcjoc^xXl@O7CjO{=ICXsE$v|^vh5NNUKeFQkWBc*!Jcqsk zEzqa>>+T*_+1>rA%F9=_mt#L}FC-Qr25*h-;{TnDX@1Zip7>1iSMnBqZSB0w#Fct6 zrLm%<@cN;Sok?=Y8ym<=?Kr2_rhHTyubzeQ3C?Ok-gjqJj;D{c?wRn~9keeVuRf-a za$;9=dinb@(}$B|$>jNlf7QZUw-eJ=hdzj%@kAYRSvg0(g8m^`dT{(PaC|)FFN5P9 z{or^ja1;y$%kFOUmF^MzzohcmKPJFZdPxQU;axTGg~N%@_H+M0@3X4JXU}l|Im?OP zT{Y48|Ks?NB;R6j@`DNnz%ULh=X?Zw|Et-7@4wUbK;e6S2(iIE_|ZGBFl}r%YlL3a zZ(a{3KI=EH(!^)(yja`g*3J>=W7t`kk2km9)3-OT+C{3lO1yg@se1dLOLlFyzWx0= z)_E_n8U5E;=NGgmh?Y=WtRkgP%*^MJoswZ5-mPRjJ-Gfh-<;}QgTGCDcAER~-e-T6 z_^g5ZE&O+BWJ%()Htu)wzl1eMu7whxo#%cR|6P3eeB!fi?gxB5&t@k+OXYqBb%W%) z{i;8_TIY0toxum@`=H>4>=E7R?1bS1$l0W?qr;aXyP%EOa>w6ScO(3iam5+mY4S9r zt0p>l9M_uXF@}}U&T`AHgJz$C*VLjLY~dO$wy43*oaS2gtI*UDX!-S>(9?zZ60$E^ zd=b9HedW;q$^Cu#(myd)wXJ?UzT~ahpZ+0X%^u;MU3yPr!EcuMtepD}e>!OWd3g8< zbH3S$c^7{Q0w)vSn8=UZcEpdepqJ=Pz#+%7W0O8Sj^p&zLj&G8&|_+HfaxUkb)NUo zS>jmQrxVveZ9c}}@yjucWjQj?(Z$k?K2Woi@o!eY?1j783wMv=|7Au87SBAGIM)|> z_htUOxKx?=>=5^l^geqs@!2u%SMz@}<6cU9UE;Ghxqs5|op$SX>Ud_#2T7eV@tum~ zaQk5JtRFrZyaU&SR~|nUUM*qId_g?g4 z`r%P3cqEx}bK<;qFt0NHE8pvt(^w15%cY;3r0~BouO|R_A2~()HMB3hc(BRgqj%G0 z&-(VZdC+>@kDQ_|8f|&)?xW3zX!ApB2`m+d_l3mqd28v)#yN@4`mN=(#An`Gx;QX7 z@tM1pMvlHWCOi(isn*b2&wCkPBJMf5gB2-#tFP{S`gKQl{yBbn>1(4Ob?PAmqCQg( z;n$~qD@O0VKs|&~>LBdke;NO?)AGCATJ_!d7IIV%;V@^c@S{ZU#COlVIM3s}EBM8E zKd~Odwo^V+4GPyLr`tC82M1itSkNE!3TTl zA@H8sQOsX1@QfZICk}i%o4v;$UZS0lTSv9jy&iF{aq`9})}l58{}J&EQS$KA5Th9* z{;`g;15Yu>SJS$j$)u%9Wr0ZPqpf9xd{je!N-+O>`R{PX?z(5XcX?kGS1W5i*py|u{E`+kgG^P`}t11i`nMuynn+1NpB#gi(I z#hir%r~d1>;z@~M!+O7`_VD~dlRH`8_>u4C8}7a7ezSHgF~`7QJFt-Mublnb zlPhn(=2Odfdh+^@0uJ=!>=B%t{!x4fH6;!%$5_`_IY&G}I9=-2y*=Vy0}f8-DE4s{ zwH;Q1*MV<8TU!KPF9)x01g~%6H*NTU_c-v{4;(I5Tg}7ocZvpv-@BNv*SGo={4`G= zxZXc!e-FG3uDkVb8NbdDYhF5Yojcj8oH(ktMsN?V^ZdPgvE4I|#Qu~|Q|CQnr6v#e zL2HX@P5L8Y#vh$W{JEi(PlYc72cpXyyb>O4Cr|kTbf;Adz@NE(d-b)f6F9TxI@;n~ zUL7&o8n4dKZq?b&Wz@zX==^`%zF7IcMb?S?p=;^2XSlz`XW3`x7TOQzT6QM*5S`iE zZw=4C2926?@G}eTMZhaW?swTrOs!nLE99QB+kj^ePo=FrTxTFJ<-Z3{&M?P^lgXiq zZ&5r|*M~p--iuqg_dOr=LVV=Ic-pt(?0lc8$^LwP=I(RT{PsIX`krBZ%N=v;H2j;3 z+51)`+pWWIHF;hSQ^WrBAnT4TL%0sXKZ*^c^{$2Nk*ycB|Ceo7@f1_&ADAAuwtOM{ ztF^!sA7=bcYJ&1^Y_sb35sUBG*bVI9^?h=Rr!rSZ*2%}KeWWik!SK|~@ZYj#_Yo7Y z4?ANr^qB3~Ee(IXpLWjR@6`Dsoi!djmh-~=?Zng%j&!^!d%0*xdW99KziFY}uyUc@ zShUb?TF2S{;)Qn0riF%AD6UI$k)LmVmi4HUf3t6$sx%i?(Yw;@n$2l;tRxMeKpOD| zX~eXr+0psLZj=@fgAeSV@U1vAkG%btZ+Yv58P;y_=HPAM%~isiRC2Yy+PCfXZrk!t z22Bop;VkEZdAAU`{6*op+rHPXhX;!BQl0uJc=a9hn>yxM&pd(8^L3N_iqSdoHFD8v zz1C(}BP3hJE9*i_s}3>NCyRY6WdGlrm9qQ3tf2iU=R7uZwqrFh1Z%l&Up0nW6iF>L z8+8Lc}#OkA`B- zjAa5Z-qD)tY>505KTXH>yqkCTkh8pkeC6(%o$0q`I%n4iE&NBO^=N!|D({o$ydu>; z18qDE{y*)zKL25I3N$jude*c7{-ZNg$}=o}BpegGRAX&j>igyTE=sQSnggkJ?3vU) zYx(L;&=G4nl(qcbY-cT1e<4$A*$)=)g3ICoA6iG=`z`rdd)AQtyfzgxCVEa>$HA;) zw(O;c3RLgu`N%J%1G%+_11_HrIoE)RLxs;1Qyquj#&wQ>yqq=Unv0qEU-GgPQKy-< z#={p2;rBWRG$Ac$?;)<{Rs8dbXHlf@!SjzRXT;sCUxH3^@M1d6r7o>$ziV=)0Ppe8 zcLehi-{)+1<+`!H%A4KVt`2We z&UDs}Z#D~#j8XGZ+^0teg4bbW;!43P;KC~8UQ3;;1FLlEWFQmSOV!Q4o6kP~>8xIbQ10N*g#Q&s6{^lz7{5d>Z#r|n7aur;OE`?5zLnZKv zC7ex-&qe3TL6(qj0xk@pSHskKYRnd-N*axkrDyZD~JT7jkn`EOK&FsO@#& z+78-oc)P$(MPJh#Q&-U@e=8<)eL@?mTOG~jEHgYjjXV@-W1aEoY{_?NBMuJ;kk0CpYB)*oz0q&xB|Tv^YxoW{aSm7|!s#6JB0dqjaiQ(M){$RE zC*(b^tyic)5xtQw;7Q~~mS+znq!27dC5 zn{RnGQZU>CJb>p2esAKP2y5=~FAM(ltrxWSa%)nTy4NGl)x%TOq>jtJF&a9|fF?7c z$>ID4hoW)nF8>Am>)O==<6rf}S{NIBKmN54{Fi^I2i`s)f@;p8FN!KqvpV>L?4rj;6xgqf;y-$i zc$(_JIQnFEy#a^2f=s6>a zp1gD4*iqq$#7Iv-*6wk1Wk;4k$6FYOeEZv=f63`w#TNl@QzHNvYW^Bi1^T_!)p>d@KwI3$E*(GQ-e17)H^<~Z&K~Ot zWW}ISI2wzfnQIdQ{O^def`NR@}rN0>==1z>p6q*3hP-vbCHSTP&|Bn zroXCgxzDa$NxO0Wd+SQx-*H;ka_IOG_+FfKSV=tKa_lvkg;h1X0zLH_7P4;2`*aO? ze?9$aJL{QPtKk>Fk?(6!)i`)m&CJxQ81gz^O`D@7H>{2tV&I&;5cQkAId-S!2UD?! zSVO~qLtIaEIs61XkY1o#4r|<64jVXwKZtmhLEP7Q_;hpz#c5=icoohGqd&GVPv?w{ zlNZv#-MQh$mGIx?PK{8F{bKs#{fxhbdH3Wb1@0P4I&)8q%}`F#hw!!N?5EBFt4;45 za31Y_Ib8z^_Aoxe$ z`Uj2Bpm@;P`HSt=MT_mW&|>>d@UVT}@~WLF)-1*GOFpPp-jl>cv;*g}BZ;@(oS^tmYOCD;oNY`Ra(B;Rd&V0t8L!_1em$c>wsPAuL~M>o=*_BL>FNQ$Fd4INKB zxUpmCoYRm<7O>a3A&sR0pZ%HP5 z&N5H%_G_Y-)meKUTcCX?IaaptyX%N!kL(IuVtCQA8;vjOxbcH_2kJoJ9ja*7pvne^wzo``0}i^e30F?dk}k4f24ILYdmkU-OhVE z;UmMyH+;h6(Y_+TeW}kr3%+!?{G=0pqP)oO8h$d|oX2lHMNIrn)QvFoHjK4*a%V$t z2bD{FFzepKQ~Irc!$|hr$NJ*Inc?69>)d*ZvEBqOEG?kzLX#U=`GP!L=!73JmJ{R2 zoqYqew+w#tHx57A>D40K1fE>Aahf@U--eu2%=k{?LE@~x+HGYXZxAon3V)Kkysh-Q z{M%Gh!Ik4zffH|#SMxS%Dzt(JZ=_ROA*XM?g#+M|=%u?Y8M!glsjcv2dLLe&?b1|R zIdI+$yc?26PNDTiABSX%-w5bZcg}L|B*cS(9B1|40@4W z$<$qSX-0OK_Iro!&RXL?@dI*7!Jo{TI%?6+ekYTfYyIZ)CwD&WoTu!_EHpI~6hl>; z!8w3OkQZgxtc^V-$FT?T{maTP;r16VgT^zkseIg6A1N?)z_(~yV{C=LzM1g*H~g*v zH)G&s9Q>5*t1O|Gg4@r>wXZfsv=kYd zfbR|E;QH`hes^XUV*{@h2WRsCy7M}_BS61H%AV#-75o#JuW zJZJOw!8bTZaMgyX=6roy&Zh!1Y}4ddknQxo3&*Tgu~n zM>BqB#Uxb|PgDHFXD^V)IgL3E2Defp$^ls)xS}VI^WMSMqfvOXWO2?I@;HyXP#)(i z@|#__wgA`FjHAWC72b!ej-wYhA)6eT-6O9JJpcR;3Gl>5&;(vNav5Ggzcs+?VtJf} z>t3v+m&bW0aA_7SklTXAh1R~AF%~dJy=V5g{~vYl9$!^;=Kt?=PC^oL#h{?5NeFka zYVnpbHYW)b6ct-&u|sD7qXmquwRB4T+Lmxp)TnTZZCd$u0z||Uq#)>M#_0e?MH&^9 zX>IFtIG5Z*2nZ^t*yj8Gti5+~5&~j7zdwGwUSaREFKa*RSsi=MZO(YdkM(ck zU~6M6%{V$R#n*>WZHxFi&VtLW<4jGU?eTS--SPV-aK?{WSoj03D74vtJZ?l5H(}#7 z17pjJLPkH$rAgBKeyfZlFjHze7a~my6$~!zeD&-QO=?NQ0b7*>Tg3omj&)- zjN;;jYtCfv4Fuo)`P+T#ICs;O{B8PU>NwLMQ^%S9^jF6jdC8oQ;)T>2=AC=MPrSb^ zT(vwnd9H$xi+)m83llk=H z)F=4Z7i&JnUNl|!@zG0dIP-IyI?g#x9p@aUj&m;eE#kzvP95i5r;c;3UB|hLweQqN zcKdGEan5z>IOjTboOA6sL|v|3#~B(pt&Vg4FO@LoqB_o{ z%(-;Sr!x6io|=ikt9e&9&Z5`?xdek%C*uTi)W|Jz1w7Pu^^c&2^RQ_>HJr%_2$56p z=M`}^n$3NuhO>KrRqy+|saa&5T>2C9ZbhFO&g90pHJlssi(}QqdX`}mDsREWLV#QQ zM~}l+2~WfZQ>;6Q{p-BS$L}5g`2ljw$nZM$q1rnw)=)ot<2;cVeBucEef3xI=m@Z%RwtTk|HAWbo#^j!t~${R=%c%4N;SH% zF{x);+FeH(-#?(ay69+p^~L-F_r#~+o5jes(fCT(_okNeab(&((1o*(xX@Wge5P8; zs+U}7rI_{8H}t8Ydjt1Wzod0D_M2?P%^tHp>vvq6-m8Z0@+Va%IkjOqt*nLVz{YcZ1`|h#v&qlqLwx=dt@{O1USazfYvf~G3(nja*8QW-yiV}9d%-RCa@04Cm=C_kFl^`iqL|`U z9S5nui_O}-p3I4FWr5pF){}MOe{|x19PniJszIyoxix5SCBB=*8o>jLE|05?nq}s+ zv18Y$-re(p0lHV*GJ`&9&3XnguL@}A+r)BywdmW|oedw%+1mIR(ib1u%E>VJIR204 zhL3=Yk0EEqhsNt%aFR-VNi}(0eB6s1cnduA)JC=OpqSI*I2@=pYOmNHw4wO^SmJj! zO{LnkQ5~AH<$U^Sak{@klO|60GI6?H{1JaszQ_>PGvp^(*NWCu6E8kanhveWr`0&P zK5ajKtikEOo+D2GfxfvhJkeDzpVpzNbZF`{pOzdv*QXT@U7z-Ce9*V4mnWZAG1EGJ zYu(>)zGGsh)XP)MRDP&x&E1e~T{D*ak;}**`4x5Mw1)JR3z4bB)84u|W!YQEDyD!8V%fjg=F> zwX!Y_EQ5z5JSSgJ^E5j>ed?m2E4phf>Ku7+##)Orh$+aoJfzrZPpw6lw*TQA$Kj8! zJN4(_>F!#KhtLr-iq2YVQMiwQ76r< zsib&(26QGq&op$F(Y~D6NvH9jRX4+~H|6#(;T-$75qSE3TlCgRe~+Nwm8;^)`3&go z?Zk}kx>6gdE2a4S4B{tlf3-K(1pKE*ANB=QH%YW+?Bj=gfmM7i)HlBw{TYKCk5my?&LOV6pS^pb9qp}b;>wP!x&S;L9B@I!Vrr5srY6ZX z-s}qXiT##i@11AkcL{dii_p*4&~d**|6Oy}L{pQ@uH$imspH}5zZ0)X|JgN4^iAn` z)dUy>URR?7sde_wpu6t9?rb>P=;A1|FOG(G>%h;SBaRLT9@zw$=Z+)w|6K6IJW($k zEdfVYfE(2$i^q-jpZ--GUhb4liLZmrQ=^=ofy}=&VH3MG$rfU3Wk@bvjy-(8H zDEkukRFA9)`BJiiAJpDPf8E$}v)$*W z*~B-XW4l%{ea2oM%Nl#P{&>VnsQ`Yn$Gl{Ny9aL6*`M_$#z8T}CTl=NlM@eZ+Cn?@ zk6b2lG?QxzS#zo}F*HqVdBMW@*L6Ad;#fl;P(E>ZJUCe*n3d0H=eQ;^KJGgjpQa_m zW8%kWd{L~+sUg?p)R5Eov^wLXJs)&EOdTZl6b^I&$0M8<;|FUT{?N~u{1?}#F=xi4 z%hH%U_~d>)=lCpNBF?Wl@+M~tni+#IZ3zd8^(yb7+2|^}j=HO-{xJ^shStEjXwA?W zI3EGd-P+Kvkn5mzzth0`R7WN&?`t#s;Nqjst&1)@8JxDgik}J$D}kkfak%ee`5&s= z;@`2EF;XmGlR0{8syUXnqk3Qs(@4XS7s943}Lgq_Wp)*pwwQbm`t*OZc zktF`0tseT$40ynC6dA3x4Dornt*O%r+K}6aS-a4Yy1e$tsv_BRrho1?&Hfij(+aL+ z9IixmUy1C_Sa{{h3~NxuTZ3%5?bh*mGtr94$9^jhAJxnar<*#Gn&Wtgaj^HI$gua! z058JTQ{ZU|c-MI=f9v^eF$Su;wv@iM(N|Mgt+R$UQIe`>K?b`X|x{ z*FWa9Vrv~e;==Pdax)!x9ve>mE(adPbu?djhk-}>aBw#~?zqTT*V_L=PjdT1jGMie zM~bQcrg{g$?-)ZfDK!_EqxL>Xs>wFzi8afe`fvMhQ9L@aCY|fyb`R?c$Solk{Z-4( ztN$i)X_QO3!WPCB#~904?I2_de%55_0)}24ofrR z-^9C?$tnLl?~2dJLj$f0zk9UuM07;2c+*#bNq){I@|GIcjVd@59dGB|luoeoZt^GC zv0C=4GBM@+k=!RXTRPH?(N>S-Iete+npka96}jkpiFZLyd!SS4Lh*g6@CU2|=%0?F zOSdm`=nHEh&?o30;3wy)zBJ8KQA!?O>2A+E=UcuC$yUWKeZ;x@_F;q52esYPZ*uAB z>)rPf!v)vc+uItTd6e`(x`K-g)9EaHJ3_4b5ok6;x^&`X@GRaN}N9G)>?W0)(g-qQ~#gZ zRVU%V5P0oJJ0|=N9~T~4x)h#(cgzu9GDmnw$F8bG)~1syy@Gw{CKa(?18d`1n;@Jw zjxIK9eL5H$&9STg#bvC^X_^GRijLtCmyR3BVUZ0+jJ7t+`i}@}C)A#7yjNILerKAm zVoF+~c;|pSFGozj&lvPE?QTh2xtU>u&ilXAEmdC)o0VzARK;UcMtA z=(CXz(NXrCO}_T(l$;oC%ZuvKMot*{z+RtC^u@>r*5foG4<#dt(Sg##k_`>a!${7} z`Wmp&C&?#c55ObjGIz@gV$by}krnou1J66Z#WqlXwdNo}Jkh5=KXdwH%OS~E$w=+T zH!3iny+ls*p|K?Ad6%Cb0_QHzNKVA_v-sDCO;Ui)aQXSoSB_O)&2Pm&mXRYN`>g_e zKO#PdmmV@lTW{F&M+g4kFK* z`f+od`f*d8`f*G9)Q?-idU>!KID}0aP2rsf96ZuAs-Lvi8fzDk^db~cg=70*-ayY+?q zQ0jj%=8@^hkX3g78taP+^!>IaesUO`{frhfPBR3D6&u5TM#;p3lZglKvyv+W|9EVu zakgD`z|CbC%bwI@snNY};TRJSwsZPZ@W*^L`Pyroc<>eaw&UwH(Kq8y;R`pd@WC*fxwMq#ObQ%PT?*BGn9IIKT>rMYeo^4aI<8e&vGwG(Th9&->={6eaYauph$lb! zpmGm>RvZ7Uavtf^3lvWxOoM-*$dq?W7mL7{F$U)b?924AK7`b0psZ={~YON z&mMBnc)tZYX@*YB-ca{54%BtPzva8sy{5KX^E~UFjaHJWLpRO#e-5~Q=lX@CyX!J< zrM$C{(dPc5f_&uD>(#k({3&duSIEsQj;mKk-1>mx*59MOJ;0@Ub$jTesaIF( zk3D@8a+IPG*?tJRjU0~O%Ltclfp|j1< z#uj*V8$7oY9(@rWT}-{YgH!B!b#((xjTCpS{U7*-y}w{`&F?tRLDotqNf({>lC6vG zK<9NUA5M(^@p+8?xdEB`*UZ7aYQAMr^KDipas-{@Po)NGHnIIAYJfnCS~n2Crm6~A zC%GaWvJyM7VTKj^GydH?*4CT48a`iljkhB&;(I~oc8xcmsqwZauEtxGdxF!zSCV1i zTSOh~6D3)_^kWycM^{%;K?$%;2DT|V)bs(~sl)uSX~21^I@z}MqRuft#jyeHV+yo1 zmfYvo`%?Cr7q*g>z0`Ve88Y_nGIXaD6q`Hy}Sp z>x__MQYcjRxg)K6 z7a|u1(!U#lm;DE?(*9j-t5OQaUI={Tf(xcX?JpeExWrd7)Z!^o^()@q4RQaTCd7*$X-7pjVh@4>NCs?HY@mN-FT-6AixDx9-Eb zv|eRZ{~0_N}8fzxm{^mjC42!?YLr)Pmh^9t`97XM8fh&mXf~ekjSZYaF3t+IEX~ z?LAVO&AIjpNU3SyTzovR)3!IeoOePqE%cDh+r!|c&`et|UFGnNct`)lKV79)w4be> zVDT`2tsh=lH2Cy-f(f+!x70^G>-XSKeQ(g8POrz<@^63J_a4Sq`D^Bx>oMNwek-mX z<6C^|f3qIrh5g{~`M;q*$9#4@#^7bhJ74d5j3H!2G@Fp2CBYPi9PpfzN4S z!6ppPL4V;(x%=&C?m+FeV22$xalRDhFICTdAaTe#3~08EXG*_%EId(pZqFmTq<%4hLG)390IBDS_QI4VF~g_oz;Swd*nieu~R*)J=S~OF{lczkwazPThDv^ z{sQmegRW6bsd=XHLD%G!U+l(|ws*&rR#U4B7|pwiDe-$e?>6NWF@EI1GMCdnky!5x z_!oI9ncBD*-MIw4zm|Q3;b&WS+V#-3ZXkA#?bpTniE+ofW^F4f3O;wUKX`1$1;Nge zA;E2f7>_zjYcOBv-06?4{ww1G?j@r&$I%Q9JJx~Mdl;ii`ddaVR-W6&I3Gn<982W= z6u*I2drBPR?!+5UXTk=n)JL8Fu(pcIvo<9SJy~cCXNP9dB zo$;LB&v>rrGoJkZum5z$v&JXU`#uCw;BJpKe~v2zma}5&?nJ`Xy7-|u33@U;C3eC zxeC5@#`oERqTse7f3UMIJ9zlz!NF&ti^JP2;+XgEI9!%k@Hyra-rn=Mz>#XkM0B?q zU(Ttm*YzGWQ8z1iZ2wIDhSJ7`!Om^a1=mCQ1JHTiUNm5@HA;a_Y@R;W&C{9ibQU~4 zsAiOCU@34;;(Jpa8h{2Hp+A?W&j;^^iPC(VV zhX!W%Lj$Y&&;Y-u#L>V90jtys%w3mUQDdkenj8Eo_EFF>i?;B|FUJm? z=#PEhvEz+>ydurm#}7ZN`n?&w?BmEG<{*xHVtE()4>GTL@59W^sBTvy^Bzr|#4u-L z$MH-wiVga){p_g~j;&nh9DTN}d?LTMeKrO;CVMKx^$@n={8IXHxwkfSh?sk{C>9|f z{Y>jPHJ_%KpIvV+!`MMqxfRfQ>;`btd@ZZ*|LGo1R8ZX<{cc zh@Dh=I9+!_n*Q_y8UF z0Fv*8o}~8MvES|WrJDawF)F!0hen|=C{ zsc!`i4`o^RCgb0oDslX?70$8FK6aI8u05ybO7?QrQMF0-5ob`$a367oR$v%Q-cB1h z@pDahX}*?k!<&uZuFA676}Oj+Y=ll!M{ol)6(R37`f*Y03;XSyw(fXSXHieQN#{=N zrN4NS?C=)&$kZ-I_Ql1U4k%8!im_^>4JS@{#x>X@f9=GZz)N?$X$xbB{Q8u5)As)2 zO@nApF``Yxn_dG)@*}2r%HLHS?X0mR`r^cr4E(dt5&jSVgMI>g6Ma=IX*6@wZhXv3 zd`xYYaD7UanV;^iZ!!{Hw27R6L}FzX& z^9()M`#5Zbe_H$WWyCr5Y=i4nb`|jeC6(i zOy2o{u^&!izfyZWe2MCKoR}2YLfeLRAFydx^sGGy<7J`fc?@-0=%%xWzL&qPdaV}*8>X5(&jTx| zYu>P*=MGvi=F8St*sdF}rz52Uy7N2>KJF8Pb?|LsusS~rPiT)3*(8Q9`r(OJW}F*O z%mY^@1{=>4o9Wxkzl|quqP=*YXgrRb_?SO*g~ma(!^J1@bk%RXwGUlAevbW_;Pgj) zB3e3ae-P^MPLAUdcYhFM$I;^C%e(gnsaBpazlYM^Zg|{EvjV%}an=55sbk&%S=fRt zWI;R4*u^=-#_#Irnk5^ovF>#F_vg2cR~9B)$5N5SNmluN&Hvy(*wXmGyIodtS@V#p zCv{KbE0D?Q{T13tT!`<y}=;VAkn;6MuDmpLwibzT6KlRKW|=Kb05O^rs&lroDJx_%8Te zK@3lFLO5l9y}lTn7F$by;s>X{{nF9O+rgKq(a?jh1J;O?KoRmuxK@6+WXQO`17E6J zZ{$X`c(Rv1HTc?jj`;d=fB32fUo-wTd|lrMU!%ZRh`JQn@L-6(%fHUz+|El#s`-n) zzoOWl^IPGq-9*g6!nVtymg8N-TveM#vPQLyAH@IO2W>A}xahjp?12TYog#lSLVQ4R z0<%V&_B1!Y9NiY(hP^un+f%lOV;?flVQ_R8IEoM(3K1hR^9R^Njp&r7IX!k!8#1U> zyoQbm6GQ5|hWks%A=YcxqSMU!ZFu?W{6*tWiZB2C@63+?%P0?dl=MygFu8`n-sHgC z3e3{SdQLEV9ewQP6u7V!#=&arS>TM;?!GY7&z0A#SA4{!( zedyjQ#tECk)CqVKxb=>E|L5FmPGucwqP;hi^lYQ>@ARROK5Ssj8l67ej(lV<4c9(0 zxXz4&Uvk}rT{s0XsS-pm&7-jlkXn>@MEJH^**z*Bgp6zfG^f8*l70CGLaYjNuTTpYN^=|cl>to$CfIrJi3yO?JhfRS31FEm_B z?i_g~yO8N&bjAZiWw)wk7CA@EMXZEZX7GH3Hs&QL1}GoITk}KuAipon_3#4xX~s=$ zHeeq~cbFW8c~*B0!;Q>w-AP;Dq}>HstU&`WE!5>7VPFR>KR>Su6b9$M%9w8=xt-KaFv4ti->yb1B#h z05~+)vI;mJqOZyyCGUIISoV|dV%=i%_J^Nr^`+D&|K;IFl08<1U~}PUFmPyYa{zE8 z)fD!DqX9S?T{y(wn!9c#BUN9tAFOV z{LVjduKvEyv4MU*w4Sk}UE*X$uex+6T9JKGa}4`}{>m=(rWXZen>JKl6pXAM7W875 zMw%64V(*6cz}frEB~CeApR8BzmSc;Gwq1SlvlAaw;&(qU{hy?~a(J}a;n5bxJGooV zB)1Qj-@Fc*n2OJ8WTVE+&b@VMe|Q}2%dS@ry~!zG2W(UQu@-nYIWf6A4v6oz|>zhDO5B$l2_f%2BpG(=qvUd&c1Nw)0N2?TbGvJ}bdz$(ix__Dwyq zq!&IbfxqOl;qyiKNBEo%J_(o%=>Sh8UI#kB)3e}7F$PyYwN4@)2Hq4~Q2vc_G{`~g z75k|2P!H@|U9%2j`!+4Mh@WBuzl`1lzr`Nt@yaBLf~`b zZQ^_B`U*QH6pyF2y*926uO;RTE`>9*KQX-BMa`^q*?#14FXY%+CYsfLtC=^@x?{w}$14-)U%1RqY%Za_j=Am8mQ~+EKO{FFLT{mB6#b5i(ald zW@pK!67OVzKlrM?*?cFdejG4N`^!U*4DGNrq2&78=QB42Lj=!x+OHXgweP8O=Tktjn|WArkC-4Sb&yB?EfJd&39O zd+$NxhmgZQ-?&}i`Qh`dS&M%7Iyd> z^wc&XqZ^~VUud_Z_CnbDDdWoDO(x%<<#Nt1B%U|PiVeJkc=UJ+nr2^9#>d1jN(R_D z9;2<;LhPO~ix$45bx!YgbycblKKM7ZpS~W1@7|-IjCEs_em2w3gGIG1(5`s8ZM>hn z*@5l#f9aZ)cpp6QBc5@-C3(9EU8-2|QtE>aM1OBahX%jnH~AKMtV3YEUu+=pVd+xk zC1}mxi7_ebPF!onKJ@jj{T^k!6vq~?G?(*-TxgyP4DjS!_9D-N#-sG7aU!)4a>dL3 zSn>$+qRGeG^K6OFbb;j58C^3aK(BKoyZ!&I)j9ZAD!#NT$O#)5Y~O;+o&yhF3(vq85%?uq zLYq^8aXNG`1A3haEzE{*c9N@hu-MKGD@ibXSo$fp?-=~hPqlra{V04NZ~JbPyn_zI z`M?BCMxn(9Xwule4*nXQev4l}&Gvl;9{W_=7dSLGWYeN;`%4qu@XlXIDv;w~meakzn{Ksm9wMFJ%K$A6{z7_7sSpzW6IgXQYCE@l!Uq9|BFp@l#87QNaXw z%8L7E_{(SW*Vs#xU(%bu%wEE)v}a)NzFz6{ReYl{7yu77O-CNWLz0Vjeuuq}gx0RU zWu?_m;BPDWXh(eM^%}9Y{9157gK?S4 zxRhwTB`2M|Ss2gbpFduilVCkpjt`~r#!jfXdn7gqJW)uU*56<^MBxeXoQ3{Zz5@Q~ z;6m!cjy>PLclW}w>#7nx_s-|p2sWAQv#NCW_tNgXHs!(VeZIlkP&;%IM^5F}?jrygbU`Sgy-qbu5JhpwDR`V6$l6~Blj+c_p zW^w>aq2GJ_tSN%#kgv*H3L!(?J!qPFw}n4>6PmyAfJ=)=I4qJ>J0i-3#x&?lJCdB{y>yxtWWIDQNs{x*kwd2A|4) zRQ_9te5fXlIj#+v3VfOH0`fq-U%2&j-XG}jx%gZ8eyr2(wI8zdQ7FfX`HjBP8XIC@ z6VUOrx!d?Wp1=z?n!O>`6k8(##Q0*uwVTHj&L&?1|3q;eZ!SIUfy+<(SL3}hVXXm*&e+8TOWJ{ z8KY0zKl(~^Mts|9^FL_wZ^@4wYjUkG>dv+HCqavhMHl1L)s+wo`#gbvxtu+!=%Z{t z>DCCkAUe#7H874L`Wvpc0%J6W$o(*KKLTzHd@DS*4Gw%y0H2#nEj3`|e;sou?DyRI zIraJcZWy}tAu@Np$#1KPbNLHy>;aHh++3dFvU= zSa{Jd-(B|Sr#{%Q_qQJueeL82qLm!R&wY>n)O#4m9CGq{s=jQdFC!lU z7UH5Ku~$c-YY#cL=+pQ)=(4LdXRsMtRIvOb&kw(@w=H_jH2MuLqQF0&d*RVm?2eVR zNxSZMj9o^5-I(NW;$xD;MirBsM$SaMT}F*|Vv>)Tm}CohZ3VBb;PnuG=6dj>F=#-K z$J=OSRrvI9c!;hpsHo3baI{tK>6Z3V72;A#Ud`F}24jRr2|Slc@Dm}D(u9*%>n z5x6wof=gp0-Py$Rje5?=e7m-ZY6H8pL+<1g%IVuU%O9)0js2Lv;g7lZWRozS_WgO> zzk~Y=d*3HF#lC+x_rJsa@AbZ4$$djF(1z$k^{zkH@Rwe69V!975^rF{cqdQ1&TGp* ze6}*=qQ+wpM~zPtbny!KtOK8~LPP483-1pF3w?bW{5LXI8{_yu<29E&|8~atRqzuX zPwo=7n)uA*1EIGXzQ(uCf!~uAFL^YSp&jA1gMIKi0SIE@-C= z+F>onu{`wAP2{1yHQ}*$AKUuu2UVVQlXrIab@=!HK<*Owzx!6sp}Bt*t@3U8=f8ix zAG-lP@cAu_OA@eRAIM+$aa{hO?1e?lJ;duj*$T25Wb133Bgl_(HC&)~p2Z|LWj`bq@?? zo+%4?%i7J?=Up18Vk|Wd(kY>4EB4f6_+lFGf)m#lkR5B=hDnCsR$}ku!83)T1I9WG z?j#RCB+h`Z)oZV=ned}*(N(nB{66|^Eq;6@f8bg=@Cw?Fc&uxyksI@YjT#xf;u`gg zwcfW9v8${EYUKI?CuXp(YBPDVec&oe_SP@U^3)H%&3|99<=-*d| zO;4$Rcu-3H*gO5T`z-6Ko6ymZhONM5yt{S&7XvMfci(Ff?Ab`%^|_w3_Au~{yVGCr zNSbvGaVh2u$ldbrtwem!Vd#dX$wBb6X6v%-KnFIDY!1oS`@x<2t+}3b1LwG9MFls; zlCBxc`vbvA1~|Dqk^DpA*Ij}eebkncS^t~#f%Ui0{*63WNN#FGaShg1-9Uc|Yl#H| z=S#pz{`Jwf!&ifc47>dewEq$9r`zpk(*6}r`#Ii$?Zwnh9XK$nzK!;0bhn?`K3sE# zecE47`(|x&xPbOk+H=9f<$SMm{ulV2*}fjT>I!~mMJDk(t9?Gd1=mk_?@F#;dAqI; zYTv_ro~~;Rf;(<~@%{k!>~%|-HMKjXXR?eg_&0MdU7Jy})0}6T>)SbZajV*q5#&r8 zdVex=g$du*M zPtdPqQ54x??21D1C_II3F?rM2#(m*;$9*m`xt%!*_4AM2eHmEupn+L+01|3ea4wx= ze2Hv3p7}pPN1kT;Yol>%Dqa6;pRwrAE4Bq4UH#NPAk z)C%WV=Nx?*b}fy14||ZO*=sDTonzEKc5Sxn=(embirvL}@3x8Q1@ixGTTyki*aH?> zrktpMpMtHz8okhJa@BdJaV`1k?5#OKeg%04_>2eKd9pCIRPs*PYj5PA%C3)ct(0rG z?f?hVOKL4YbTZvnd#XCsSr6(Q$z4|skQ3x&$FKWa3_c}WLtGCn^~7pq+kfn>EvE*n zRXzd#8CxuAa_k$x8TL&^Zmxvo4XYE*A6x%xA8_*j2I^rOz*V2HUr2248 z#8D!=+q4?lGlTV9yjSS)wRdFW1J&cptVMTJplcShRnVz;2Ob_anYe6;sbhI~$mCdi1^k4rX3HgPkh+t-5>L= z);VE|n|GI?Hy=Q6hImf8VB;J1oXWt#DeIGSt%G|<_*1Pd#SwMAket_)8f#W6e4=M6 z2Bp@23prUf2wRDH%YDySv$pWfU-8YYDdzIl4^YyWgp@U}Z| z4r(8xdrGK@;yXWZ?+lLARR8{5jw{X&{9u6%cD*daY>|!UzwPq!BlK{O4ukqud_2ufPe3-KIffZ#P zKRj5rM|GA`6^AqH$x~H3rBA=6I{g}?ZETNDCt6Dm6n*S~kE-y!hNHJTwkhW<75ZgA zZ1~gV+czio@U2bT=vwGnZFX$)Q>zslQFwu$cgj&QH7Mvq82DSj zVG=niZjSvkR#HU=bM)!pFwMcCYTZ6dyxd|aopqqjU`TO>ac_J)^+4ZRswk%Vbi%pp%jLkO`5l9I z){jKW7*Bkpu%TOYsa5IumbrN zyFJB<-A!Ctv?@FkH^2HuV$!+PeJGVoZ6h~^OfjB?H&PU@zrJI9J>1{Wm@Sb=P(MqM;w}PYfqas zfMIVSW8r0{o~vwlt?wlF@IYzE8(0S1MwbGI`>bTZR^aV`J~|llZOGluuT!5eqcobP?zoo(XUqeW%AAFmt>ub+q2Mz>ke z?J>rZ{rO^<=NTT`u6^!^wOyS_-I&f}R|PVmTkR)p(`{CbkL#sJuL>L_*TAJ)L$Cj2 z)2rf5^4E1O-J4z^8b;4LIobH@)C&z&TCsM?{1utV{M24DzYG~EnV;*({0?M(2e|2g z);po~qu|Cvt>dG#-vw?qf}5k@Mr+~4SK#M>Y+K)_;b*bU&n|wBf*;lW3lSR-&0h|G zyZaS9XZ9;tx?>`Ey28Pe>JM%QPix4f%=-SAz;^2N3s1Jb98|MHYe$g%4;wtmZl%^B zFmFw<@g%u_9J$}YzSNz>{Ey}rckh+>oc2nj&qu4R*fHepN66iek-K5~{V{DE^1|cj zh|bN--OcvIJ~sW=y73F_{v&JaisNX$Kbmy<-!Z#Lyl&ITW@>I%`(uLZWAI^WSPLJ> zEZavs=8orT^~dp5Tpn|2U2<7=kJ}H8Uwoc@CN`dAbB8UPO|61&0dod( zn$pv*Ojd2wOXBF-*gEi`Y@Hlzw(01`c85>T74G?eC)`)SpGW(^z7^Pwy%x+3q|=8U z{$vkQ*&NU02HMG8aQV~pV+#EMr|L`B(o3jYcPW24!7iT%e}MQQd@EZ{zEvhT>4ZKa z_*9+s*azT1^xF=O4X&Z5Zd_w~H=ys`u_*Ld?H$aoD_^`}6@Jw{*vsPe=tc0lw->M9 zjqDV!%V&>n_8|{0Aphf{UVg=$&NI;}_Nm)To7L=9SBKv=eQK>8le7IW>6)(*m-AuI zG?d;}@KmvNZFI5b`7R80bzQ{YuwYlS6^p*d+Tp$E)BUU+#x6g45FWe7A3GMcV$ksm zovYYG#hY2t$@P}~*sKTf;od_(ypP^EgufM~)dZ8V-57VzQ{DJmPWHIMs*-vnV!<(Y@Fmfim z*{XH*l4|p`A$#SANiWF{GkR%@RV)9?<u_v4uL`^htj1! zUT)99CYW_0i;xp{5eqD14putn8RlRoSgG}jY2WzVqfZ|8rPY`H<Tk8A~wrNqfyI9d%Hs{doh2P*r((Mr9A zHU|#Tl<4d*FxoYMuycI#3wD!_NngfQ!4p36quRF6w{4!-;hi38J}~D%JX~?1I^y3I z9*g?!srBifJO(TSD>`1({?=T3nRwJL4>2{K$0n)pcU<}>4L!4yyzv(qub1&>c2VoL4xeT(dl1wY#X?((?0k#59A~Z-9s&26 z@Oy^QacMOP9PN4Iv>FfRvIUdOF|{U<<1u*R3U5}$QF!9U`Bp&n@T;uM_PY+T?+Ci2 z4P4&J7#zLdihY^!I5yoAn+d%gUuwmc6F2)a_K@hP#Nqpout`6Hr#^ztK8E*CLTf{l ztU!$Kba{uizXBd&@P4GiTM)t~3;TvbD?_^Fz&D`RZd<0J*u-ZW&_$A!ZH!yDyo9b? z*&v;D^nSrs1YG0=Av;bYFFumZ$~bF`Pa-#lBn_?jm|FE8Q>*^>-XRr&{h}l*b|Eo! z$&UMw9kuY(&*9CXOU49#f7i8f`-}|jwp-sPr^U|WWbZ2HyC2cN-wkB1ZtzF|^!W?e zEBl(ezJHy;1-$z)cIrv!Jsua>AT};m_k#=U)C+|R*Ed`Jx8p+nJPjY%twWN)!v#Z( z-I|>W9vr)MF?d)D9*$$TzQcYZOW;>~KM~ojgKF0G>A%)|BXbTYe>)F*S^3+=|D*hE z*-ci>Ok~#sdXoMtfTeWqgIz#Jdjf6(cx)((W`NOog?Z-H(Gh;B4bLkygEZuvU= zFsGlf+d@CKVN3M`n`$X)9%GBg$9~q@qnoQzaIboT=71C$a(8PVqgz`WTaZ(UuxES z4&(c(6Ba75ViR5`COj2*3r+6oQLDT#km@IAp^)4YatTEnZk@g(Q<;~C=Vi}%v8kf` zzLlJjBf$B-r@UZ)QE~8{n~Q>Pf4PLZW@*9By7b_YgBigi3&4LF_{S%SE(ZVAD+(IX zEAe&iT1%jjN%&gG2D3K<^B&r-^0r&aMc0^5S1wHXPrftY13UlJ$rV1q_j}OCipJZ{!Ok5O1%;b}Xfq1M6t(S5nJiCAAzT6DOU*Gg0U;GSSlf+OY=4ewnrG$wc(W zrg>Kc)?4LI7Ls#_tvpNj%yrh(X`NT-a>fHX&L{5TvwYO?NB|eU8pdOL9?vunIa;|J z85g=7yh6W%MfKkmd+WK@)28xSwN|97YXG#C#9wmo3-R=FEwmtd7*Bif#Kib}(1qwE zG?9Cwu~*~oK{v`pD;J&p{)#|230sME98r7%tt(#E=#140J6CQg{beq4)&t}+Zz9Kk z*MC^|HVUU)7f#iOMBx;>p_IO}zOa51IAuQMCo8SQ3e^&I$A&iUV}01c*BP5#)_^k8 zjx#oHJNfuG8k?SWmYR0{hjxTh)h1AV3C-{SALTwV4vK>;G3WO6@AajxO!zXJKWOZQ z4X4YNg$|vG*7R?;Z|?8xGy8uxf8hrD7@rT8k3Zt&Zv;9lk-xd*E^GjPA3n+`{tj8b zvON7B%y0hmdxPde&3sov&F#>Ha44H3K8M{5+(h};IbA1KZe|Z6L z!E2$-RZsT9f%G5a-CCnDmJh*tJlNVVn7TlJD-jKuR+;j1DR(b>W zMEU@H?S|f3?mxI<;WtmNq8}|>Z%sz`n*Jo(^v3;V3+J6&PQRvbe>(SX;(jAE(~f%Q$CFxGX%n>PhJa={Di= zbiVf0Z0yFfucnIgTjKf{PoF2Ndh_+0edyB@CmY|2qtBFn`n!hyT7CLEyib2OJ2~F! zvv^Ok5PPHEL!Z%?wLbcd9<1G%VAWQ$FBJW*P2xP6^Zxp|Fs`3>az6MB{rt~9{nS33 z@qAbm*U!HB(LMFx&rP2mzpO_Vh@PsPZ+{l~^*7NI`0JORxGs7k*S>5~A9|9E3nSw` zjh-^%@SMu|zsL14o}TXLgXjOh(bIoD`O&Z(2}TkSm-<83VR zr>O_{g}|+!KU%pOJQ({h)%L~e{}mjivev@oA;*r&i{l~TLpGFT8S{9Oabv`h5kz`7`(FpKHH= zckrj%@4pZp8E?fhUg^OXbAGnJVDOb(4)2y@i<})_i|9){zTEXFignAs$LS&XXYY&StLge0wKlMq^ql{%N!Ny6>|=i?S-@=jObg@s z@F)79?@5;Ed*(af(0thG(${(@5eR#?8@ zlv@6G>;A&`9r}3Ph1_l~)3 zaqfkN6vsScmK7AHS@%9m-;=JpwO|43Rgy*&6@(WQ$0B9LvFJVI0cID+8Z+4!byzVn zAgN}_C9M78-Cta+Z)dSj%Xz)Nz1D4?{F5-bCy~*#Gv3Z8R4!r@xroh^ieoK>#l+Ey zV{KE5W9`$6Z6DA#!pz0=#gpZVJHH-&K2ev}Yy3V0&nL)-kH@vofz89X z_}OnMQbEne)x?{bGbv|&)+%Rz%Spt%D#$OwP7O1+qqWhKoORR4!>glf+3OJBNW2kI z9Gu^Qr#1Jad1lS2xqf$=!H*r|&Z%L20n;TH2W(ks-&4PyreCgobga&aN3q9T-}S=C zpy$cyToaemxh6iR^E=t9bE8nZ!PcyV-qUjUU(3=%4yxUvq55Iy-)2_bG|KCNO>j7&rEAqwQwmojJ?_KE~Rj zI%2MCVphkvsCk%;B3V9ib}gglr>?hbLvf+5I0t+&phR>M4E za#{zu!J>XGu+2rE`7W^AoML(E8;Olkueg5HCl5XnouRpm0Tqg0?i!4YLLP{wR38Ey z9LO6wEU=N9%fqr6TiR56dPnOn&04ytT4QBhGjgzExc(hi^WLtZJ?*5s?HrgCh!ERK zp`9r2F6EiCwl`GmE!~mF`;P#VU=v)zt%2($yS)$3bK2v6e0#lMQ(MH-l&i1)X>8=% zn|3DH{fp90{QLd^Zl8XrJEwT#4J8rJR3TpVtj<9pB zsCTqUaR{qsm*s7L1HC=XN~~|Cw%Mjn9)4sK@lN&ePI!K#bdYF_Z>rXq`k?*@{(s_r zBjc&H#KiyF6(3d&j41b;8RHh-`xZKGzVr$-6ajbfef#ru(7&FejlMaq%5UA}xBKAk zBb!8CtMDF0zS=q6i8TS!j|8K?^cIdO9sk_FZO zw@0sk61Uc=Ti%t}`%mn<3wc-4d;f{1{LF&pcJ`KFzR;aRi!fgpWxlW>no-ag^~7Ey z*4ntls-438&KP2PJ^Zb;&UW6HfxRTd$gZxXTGYSePSjSpQq2Vg(p^yVz%$mwM zKbU`Vo-gNj3@35vp~0^G&OC&b6lg6tTDbxK^&odcyVNG}**cDU`EBMc(*s5}t{+7` z!2yA<7TPreUAgU{ztOd`*}LqvpfAe`CJyxkqx+fTWL`u5v5{x&-3h-S7c&CCWKWV% z74bFdAM^*$Yrqpeb?)$7`FFx|p94?s8Q|FDl{o&_Fz?1jMx#Oqxi+|sEUFpE{`!m4vb>J!b4Dh`6cfynI!1MeW;JF%j=6?ow zHvFCNw0_y9XPB_x@frj?%RU1dVNU#Lu_F%$^}usL@m56bjw(GD;UN#{2tI)AGlj{;*jNP}+ip?i(9Ij*y53ytIg?5MK zFKF27DY$=xb#&f}DY36Tf4tH<&w5^SpeYl1Z!R)@Eprb%?@9CH$9QXM-$QR?p|47f zPB>tp6YdZWN=;n^vv#A9Iltf)=#7dX|)-2<1$j(Er7DV?J z6)YWtt{lT07q#D%IAC%g9lKYp^rrL>eKFpkB|8uSyJ*HL%=bA^ZMtADEY`rM< ztIm}R6HT?>l|33|KQLWS;XI!_1)Xc0OPq6jp24NgdA!UIqmM)AV&z3@4NW0y*T&{! zV}YYPa>+Lu0bSHX3+Qun^>+DK($SGRPoV7jZn=Lzc}6~?r~9YNJNT%pr(L?-Nlk@+ z=DPM^H)}TTA-9M)?r_G@6K5}HdQY?@yyrJ*RpHF@R;Hx z8kZ2)hmfCPu2*nrIEAb&$9xV)9&NoF<=J&$n!1(yzFC_;? zo8RX7H7h4i2;}QG^u_ZBR(@j)aYlaI?HyP-EivHIEBDu|e0D;Bpda_m^J`YlyEdR2 zeBIwWnHCVeijK|qv&IDE+jakbbZkItIJ(=vH7y`|b#2;cp%v4%FSwBVUkl`sQ%H*~D0A z-wAzJzRl~JgX6nqymEbk5exH8tv~X$50vuzHomX;oaXlA%Qu!lU-#1w$t}}Y(%-5;y}PjZY_@ZJpYg$y{fkG%>P*yqoKe`>$nr|Xw- zomwgPnLe#Re$4R4LJQp71KT$VL5m*)Q?AJY|3ZMAm;-tKVS)cS2v0yqf}>NpKa$Cu zA2#Q#4e0w0HOb!Lop@iYJD;rDDlqwEQLCUkpKLs`0AKC8U-bBD-T7qIo1>7H9;fjuPFMjp*o?U5&e0hw0C{bG1c8N0zEjE7!LJWdFEDh zd|!V~Jc8W4FH&#ar@Stc+rzUdk|&cGmqNy+-hUsy(0#)3%7NDNeV=cfN$n5f$`Qs} zxfP1#JS82z+ScLov!~cTnDzO<)agenH9tO|+#OTf$|9z>x~QPbvc9_^>%k{g^J_iV z+;3{$T6VzvOs9?VD*`4qbFDvimEG2Td9)PW(<(A z5oD}#h#RUOpnYf0@n~;4KI*jpmHB_JjI!@k5A8a!M)b2{_9h;!pAAS3U(_ z;>#DnnLA(fF!hA~nmM$4KCMZ8l1zejRNE|qtTOe^s=Wn`bF3Ko70>ILX8PS)W+3TjOE0K7{fM94YxGD9={+T+G-Sl}m-DNsEKpGbvd^EOrC{aJjgxOw^i<*WMw!BSW>m$ z1@u5{dtL_L&9-CP<VzSt{ z-1{=WTacB?-7RF@Ry#gV8hOBvQiHeZ*Ves*26uf8E+Qqomf#bdKT0Oj0 z`XF=#uf0cn`F;FLWZ{h|R|mEr8yBZoPi#2S^?Z0LxSq=&G@$uTjavj7I0Q^#Xh3oW zfA_ihd{?qU{vvja$)jFsvDS+DpF5c25G{xf5}|{px&GL0E3ratDR1#6#y^J~$0#|D zVPrtGE$JG`1C4(*^riOZ(w2|&mM!FV?ZihxE^F=PblNVXzJ}IlrLjg!H5Tu-(pckW zujgz><{d5tek0RVJIUS?7kWCd693>b(bG=uZ-Li%w;lO&xRmzMb)o~o)3%K~FTUYD zKgI0lGu@^yvu?2l`ckcH-=eW6MOS0s{oUk6h^90j_-oGdxz^Q{9t<&d;*%`uZ6Y^` z6@MY1I6`Q#k&WA}d8|D^Hb(J-B^M*5zQCP-L^d*RQO2!-acgAUni#ic#_hA{^<5>$ zD?PvwuJqf!EB00dc%p)bdcDfmPOz*3m(EhL!ws$VL;Ip*-TQm#e?mX>Z(<9K)qL`= zUHYGw)xeK2YQWNG^5n z^_mRbtY;o+E_CxGb0qSwuI#3roSM&Z{sh<0fp53FeEUGM^+fnU*YgdV=?m>CXVLiJ z#=d6%nHze>`bV_gviU2)wrw+mhhLl(JhJPn!IsS#{LbWe7QY7tLrdt({j{|dT3G=N zu7UR-8PcD981Iv4pL5wi=l$&5 zb*}a}ALYz58GY-s*SoYbciY!L(YQ3DLs~Y&d#f1R3hOjqWg&4kpNIT)XkBs*9O9!~ zg^wcJIj80x)(l9`_4R3v(^uJ=Vd1~j8*twn#$3GkCd9S>=DZpDSe0!(FFhQVPlB$s z_+C;XwSTFLGuK&HFot+XGP)-R+1`Tg(RINj-Vc=kdm(+nzKTp_?;LcIU>(f;dT77< zUG$dTb>DNJ6R$;~^*e}bg{u9grYdw5Oj6J%G z^+ao|m(tC8qHejH?+qmV;eW@UnqPd}#5%M-MKz=Y{lH)mn=`S*OyxW{vL6_le*eD% zgC7`f2N&|^YHECA=|WZ9aE zKS!}M8>09lrBX-;`h>@ zcM@CJ^^$e3^w0z7fjbx8d7XZHSVN*UORoK!7EcrKv-ldiJYc;#AyCA=ncXxI^#taN zCXgLbNno!L4t+PGz(Dm4KKi=``*`7J6{p5bU z!4u?}C^ZiIg?Xsm&U&87XFj0cXMS!!Q+c*$TI^>Y=b4f-wF8d`<_8QsKRykf<>JLL z*9S`J&kyxX>eBw6SyK#ODb~H1XY_2pFeiV}eCsZ?L){cT(^t=4h#2+;`C*Gb6Z&x|IJp$gIyzq|e^gB$xZCLskK9>H1h!Tt&zAR`9H@NVgsA}z4FTf!<@Mh>1M@|G^e=J9GC8R zPDki(oB93Y9a}lBXWX`!>q~b?*M^uA*=+9rXoqxdF5_9v(a%w}=I3$LKFaGk{*q$| znpmeJWBLmnp=$ycL;TR(Pt9*9-^f`9n`>+?6A#~>=f5Oy(c7OA+s;9sAcIz}J-ZBQ zaO^}|`ndYawioxIulnvE*R&a1aT_vdHTqyJV_V60h(9z$iECGDobC0eS|>df+G*Ws zKi`Z`sdsHXmQ?fYwo{cM^jml_Z7iXU`)OmTMSR3l8(Dob``+FXY^s{U-nRoePvtx< z7(uSTLViP*>qPLv>lK0Uj2cV z8OPyo2ee9c~ z{3dyJMh=n_9lG2TOD_WU+1}a{rK!E^FIA;{(I4;M?!h7IupA zGuE}9s?P2Mwg93s^Jh*BSG<(Wm}d534pCi;UN?=ydzX9a^}J;5zkdV`AB zxiE&g7va6#_$f`h=qo&Hp7*eaj%B^DDIJ<0PyR+TxND~$W^as%fpC6GU>o~d=j59F z%r&lG6Qw=GBEAIe#|?0eqcE~ zn3ar944-c|aj7ow>LVW#Tnp!=@%NIro=Tp% z;`s-L2bPiZ?8fpV(WJmjzx{w(aCY0Ls-0uhK8A)dRym9n@RX1jQ%qlo?H$|qL*=#d zt;NK`ppy`CRpYT>%bbF}+0>L^p4g(6R2OS`_FVk`n0x>DsH!vZ|IUy6B0xZ}s6mqu zG(bSKpg3a7B$E&XTinGh?$X@=BcS4zT6RB3X`4u>SYr!!>8EL>ZGfmap%y-%OI>yg zm{x3Q3rbsd7u(G5Nti%DaPboDeBaNx_a-v~SlaC$-@IOVow>ixkLNtkbDs13I+Up! z1D{OqQ!o8Jho7$W>9G>sA-ZaNFXhkEH_<1hSKlQ3`lf*FcS9@5Q}Ye}5fqdHPzZV;?xUK{Fcj#1C|cdEORsk(2!hdyk|3mp&=>diV%(3ww$haxA*p zXT)erawO-lr-*IBw}HKhjL*(9lK@}x*rSN;Kd(`8Oq1)GdoMpHe#PR)?%kb$cjmE& zQE*}JyPmyoVjuU|%c$=TSl@B4HSN3LD2MSK>XmVyy*X`;t?{b;XV)-v8*5ZMO83Zk zXJ)|c#(tOu)9bL{u3&cNo=lhl_d6~FvvI^WZ$p-_V0OlT=GqLHMcD`2F#A*CwTN*` z-G3^)=B0fn@cNVmuNTtCYU2kvW3_danYvowb@A8fI5q&UZ>HB_!K+c$$fJ_)4PT`+ zJnfb`vT*Dj{D1@p`f=>rSvZEy*oN1igJUDpaOF?IvD~!p1ZLSWD!0L_WNk_a?)rv$ zgeN>KIfUQ|k4~n9CpPThyhw-ld%827facMtPi>@+#+v;O@D=z);lWXS;iK^3=sC``IN~rkciV{4 zrx<;S9%sG7H(sqL{+^=S6Z-Y5n8aK9k%` zx%9QMQvWr6BEdu87W^?e z47~k`?8oS1yn%7-r0(sX@vsNJGtu@LPa;RVBfVbs{u`^0-l|8~53a5Tj^prwNNZQ= z20mM&bOVpe^NP&pud{AeBdatat2`plZ{hil&v+JM+mv}KRWj=*!RwOtYW9+YnM3=x z=yz@-mLU7R#k}XV-jm<*9=5uXp`DDwt@O*l&Xm1W|Ns4F)&EbCGfw<|qQEn!)a!}u zC(mEzSTBTYI_)dF-C44m4Oesw=)6t1{+sx7>=c+H8y=Rp!IE}ax4VFI zp4jA(3&bXGzteT3TG{5wo&SLBI}_k-P-LSW%!kNIYv3uDk)a>^02#WTXVmYd{`CHb zcYqgbI2ZVjjMILvpnr_4$yXTT(KOt7k}*oW`vEy0R&(i-1UHY6?Jqq25xyQR!`PW3D z(MD)Ay1_i-DO4}^2WN7~`{X*^Kp&t{C-8FsJJHMh{*y+_!aw9qQ@jkgh@C4?ekm^t z%36I-u3na|i$%8i!`puuUiRQU=UUzZW-?yUy-G~c1oEL_%RBSJb;I=+A6|4`ft~JCs#U9j8dt9Huf2UN%095Kv zOC8X+172UY@OE{caQgSr4%5aY-#Y~lxjxMI2gC+p@eFv@E}Lh0;aReGlRE6Z+hyrr ze2BnZq5t0_kMz$se(~+#D6ro3!UMNn^?X+`-~XIB-|G8}`QCd~^Nm0LC-svP)O?$D z?7gb_R^PpIneYCb`Hmd%8VjLc(GM*KCqsUdeor+(zu>H_+d{jcRVE#Ww+rq&+j~A? zw3I@}vZt1F3B#+1XNB&c6xnXOsVynx???3NL$nB>8n(TS|-ulb%g1?!5uI0zzzS^T&eO#B`j|+^sPwjKhX!l>Q zKbgMIWe@US(hp>-2(nca*(!!?6-Ty8AaiBPS9$On+mBQH`NhBA^yyFFe=&uAh##A& z8`9d3fV(BE#lbwy=+AXBLNlUmmS1rR>r**=r2=2VO3gUwcX*P^9G;%#4$r9-X5Px1 zz5)K{0oy|6s0bc4f_2vRGcNJ+J$k?j{Cg_#x$#%=eHGtV@qLx2qA$x{)MVKg;gcEp z4vVpavtJ61LY^ikN4h*Um^DP?=}Pn^ z;-b6!>DNsd@8vtq`b)RR{!ICZX4+%L)+%<_lhDsSCTIaxkKLXP%%w{ zN2Wi`LUP`|4xNd9I5b)GEM{&-+lS=svNT$oMqAVQhkuJ6=5YG68Qk}&T%#Mc^TYKJ zb_11z(W19f!ST7^&pcp1pFPk5c9^!!*xO*z+=B_-cLN&wIcN#;fdS z_L!NQ7;_Y#A>%^7MjTxk^xlPi@MpDOf4js{u)K^sFJ1YJ@0X6px4f5nKzu@>?X!!_ z_g?$il4sw3$bjM(nR}VBv;J(<7IKbVI^Xx> z|Nj>n`>TvS#(c~8aj2lz-9#}7~*0v&au;tm0=KD2iyh>PBI{p_(e2LGUVNdC| zt8D=PHfct<1^nBr8MZwxn-0E#A6X_Hz^}mVe`P;@IXV!Wj)1!f!AEdc=wOA=jPMFz zqim|+fbgDZ0d&Co%1@eiBk~P&AZtS$`cU`}PRm*JLKmzPXJzi8gVp!`<2MxEG=7kJ zKw`oKr?!GC^6Zhv%x8jQZ(2Ad-$`7SoaZMw8zgUq$l+pVR(P|W{_XG@Pn4$dS)pU0 zX~Adk_wn>+7Cn`UO!NF*dYQs0OQtDz>TewR%g|FPI3<22f>#lXe#CBUtn~bPkYMI ze{{UW*$z2J?>sP;yshJ~&Aw7)jGk?@$Q;}NY|B}n{rL4N{t4U_y$&Yk0oaCtsjcf> z0c>TB6aPKdbbJ_Q=!@|K@?VEfgc+~7(f{C0X1peN76PZj_28QyIF>hg;>+Pf@U$-Q zKzw#j0@q7pHZ$eAe`6lfWr>fHIdZr9*z3Im*dIb|6<~i(%1DZY_{Yy_J zvJfieLk zkCJwX`@WgDZ?Umtyf@Z*uhgLr;XRSh!YOEXF8Bux$H2ij^qg2BFh*WSCJ_JIBzW3W ziOo~=G;MXBXMyGECeD6ZkFK3_XcjZKr{pl|!n_rnK$@_#6d_b4s#AI-=MFMIfrJm=KSd8=KK}f$(r+{mz(o;-n+^EMbyMLzIMVOmpN3~|p~nf9Yo7EyvG7j+Gw{xGFZZdVh&o1ijeoWL zj!b@;tNcaA-zxkvKSRC|TUxXNn@%PE46Xu?*fYdFC44OkuT0RlI50|7vKA?MAdkFL zxyfI$SBNvNFg#H7zmj_*xoxd1b4>X(w=CE=%ws z4j(e{Ui8*;Q0zI+y!r3a-hUCkm?hAPi_Y(eRIi8%D8=&3H>6Whz& z?t>nng?KOY;JVin^W}S#9kPRGDb^wUGGtASABP8@;NCgzUEms8jYC_)o8!<{92$xX zU9t8Y6qN^+(bYzcI!(ID)h|k{_8M@d4w~>WM%tOfH|83guXOl{h2|Q3a++rJ zOkoX%r^*`q^JMCQ?)i+fnKhVo^fdU=3%;#@5BGwP|G-#I&*Ry8)|MvvFobr5z6)q; z%;U&c5~p3^g*K!A=deDn_HhJxS7_*NA>IE z9N^IaJmz{09Fg#o1>Xw6wIa=kG-;mbDCo8rx+~$DwIKL(mK@zg&VfuUY^fJ)ZQ<|f>6P|hsU*mWMZOM3`muMaB@jMLP3qNLE zv*=HJ`*PcVJl3?EhAU*gk;9o+$zvcojRk*5F&F3~g)X5_+53Nnd%;TTDyL4`8FVAG z!@O&f6XQUo{x&&Yf|blmIXFa}CLKEz9S`iQ?cD6v{d8E3pwAYp1Ww<|hSLbvI}1+P z=P8`E;=6t(`Y~6ge&9;60#7NQSj{*H|2UxHNyfpWOWHp`Rto~RY#;MR=tTH(sFm^g z(F0oFyo60t@lL)~W48R2#g}{ux@YmHT{q11A>TqY2wwQ(ihfaS?g>Y zm((RTxYwZpXDKqXT<5V^la8&dW3q_ALcB~#6ks0$8IE>B# z9usM1?u8$10vG>`JQl7yO#6lM!3S2NxB2*G`k{0mN6Yl8bbVU6Q(ylV>PKkmxfao% z1%YD*u4L0enjJ-G;n?~to-qP=q}fVlP^V%R7QZO|#@e^f`llz`W)l1A9F}~9viSRJ z-#+i3e)xMAX9QZEnl8BPmAE3UK(E6mEqKnQ=2Lt@s^Fc0q!ySa-wm2X7` z75WeJPIYjEZrA0Od@bjEVq5pfepci|d6!s4W#3g@}1aCB(InKo!CtzjzjDwBC``e+iy2f^{3fQRQ=dZsy<=bO~U(%Jr3jpiT(R0 zBh}J}y<|-4* z#+ZNSomLloQ}XeM9u)mW{DYR)v5SN^aeu$d2ww29AF8L0dQaqVt4GfH`_v8SlGnJ6 zP=nhDH@S_-dbbhvjrGJfxQ#yFSba$`{%;-S`ZDoLCP%dLHEt^78b7#>GOj6IV|Y&s z#5Vbi7sTeW-$(A58NZE9sX@l$T*2uz=+$blLv8aU>T0rd-KMT1J;%#E;N(T#uXRZd zn;E~2sPWi&mB>xdCu@O>ap0cduHaM3KfPIUnFN!-Zih?xQ9X-H6->B{XQYg{jHjjS zbQw=cdBSC^lk&LBSS#f*V5)p)o%)OTTnRrB{6n{SM>OFx@G&u>5lZB9;jvE6#Eo!2 zxq+Nb=p!OL>*9Bi^R=UbR}X5hQO7RfNj2bbxKr>@!@ro4y+HUlB|4HY=LAU1pNUWC zPkHaR)Z_NTw|G}{L2pYNja>815&3<9-+cEAeutRLAnh%>nfdfHpUarf<;>>_=Ci5X z6I;c6HkIp(ig&EQVpy#^d@0N3^~_9mARTkm48;4+{?WSO!0Ujxrz zuZy!CZ^_tSY~El-h^qr*s^!>*f>v@>|gy>I%{zU0djQ+&wPlA4ko!!*Wrs)*v z<8N~5TL*n>p>LZx^PINNmuKcGf5WOjGM6*Yr4Rn8>_;>E_#gH=%`=V2{Cwd{yVQA| z!k2n|tj**LL}2@{_mhDS{n}gq&whXYEPNwveLkZK zd>8+rQgB|;Jv1%!9clHkFLEUh-T-epT+Zaseth;d$h&ELKzM-c(dS$b-pm1S=7Kl#z?=EtO~)8dtX}wl z(6`{p7?Te)jWPLvt5nf_pRd&915KrhFU0ox4Dy95AIELb$Qk(Yu-BdVBzW~Q?+Cr* zD^I>u;v}a_ia67igN!gZ6kd=|E+fi%$~6KT$_C11lzS+bQ#Mhqpj=P6GT-QfPYOP- z8L3^@2i*(Kh8a(|fp_RbxQVivay{h+%4W(A$_){jU;QR$C;RCy`04X9FUtlQ5#}SZe2@`kj-o3D8P$z*Jbl!)xM_rEi}(aJmg?Wc zXKOg}hv1AIzhT29%Dd};$@QN*_>$*y0vC6ZShfeED`y+-(N06@gO9ijRhLH2WzOYP z>)QdR{%LS0c!YMrbN4u>!bw~9i9!?ZiB9EX)l4) z<$5pg$~tM#U@hPE$ zP0)G^YsY5jy%l?xQ)6`R<^1N3C7xttiKi#A1RNjQzQr-)x2F!X z4n676PqncQ<=_iTKTpxm{SGbJ!&zPziw5XMoq=M-@!_+;Im4s%aR<({XzBOxV<^wQ z=N+xz#Jv)HPDCEs@YS;|Z{XkCHB8fjBsfU_ll@Zhw@mq`V}dFFe2udB#Y^R%^Weib z!y_|z$$jv5k#CC0wIDdOII_Uw#P`&k8}IG~U-E8pebD!GgUhMT%M_fkpA~;lukMQ+ z?)sqkY2q7Sjgo62*gBZpa@w@F!mL%T_p!c6EV9T!f9+YvIps1gyDez=PA9QXE-m~c zzvgTf{gJw+Zn>6v+5f!iCvZ#T>2F8Qwp?x;H(29PYc*rH*J^iZwfL^T^5?V}o#8f` ztaiUhyU`gn_-qc-Tf5J;D4GVA=ed_o)AwAVAEv+Z$Ml!*X9`Yt5JA3il{%H}LVkDQSK;0=Odkf#pJhI8f8BKneY;2F|Fmh4;l8Wd z$hoK5$gQb1mU)NiiR1Z7W)avgW1hDI`#fNuuO)tz@5ocISJ%K^uJbL}hkfwtO1BZ4 z<~Cje9`VWWa{ONI04B0Vp6{5Ffm1@?f>US9HQnSzE{i{pOzSK81K>rWO|w~di3Mbj zzPgb0bc)+}kNVELhG*0nx9WVaqg>B!uhV*F^T0A$H-Xi8-c6sI-&pU7Y-P^JXg$Px zVcxrjeO?fmGK5T7hM&`WtV`#4mj1oRn%mQJ_+~D=V;;O?KC;3Bct<_F!_WLIgLf>4 zcdV!}k}GSBo>eubO-Rl2(Dtbw86)jf@-O*}X~TD$tj&T4uJ-#sWj?p@^&#eIEc9sF z4ZXYL;K*iZ@~4U>-OCfuoA?i>KR==9(!E^h@~0ME%6rT=d+6NuWC&cN4^o%FO!)dw zz_m{BO#1WsSf_EI#!0R%Xx+y+q2Jly-Rq_BZ=Tnw-`B8Sh|OAS_i-)qvfXDteQpD{ zT;SGEw8)RvX)c9Z>YBdE^-nC^S_eLv{x0tJt?&y?{Q9+f^xxzE;XoZ!)_AM!qpH@o zgY+{*zm@+heG&gxB`ZS@5$>1L7pIrsJiC$KHK!~eu{z$RKM!=J(Jt?#&+n%!{K)1Z z!93zq;lq>G0k^zrqb*HmW$UZPD_^{U^Sr9y%kX@oI*+{*x*qNRZ@qosovrUqY@`nM zvo^n71gsos^DA?kW6f=xITL(OKMYcTK;`}HaK8BuLCI)>>t2wpLk^IWIn)IkG4WiSnG`99KXXP?OwLxCjDPAB{8OiK#?o}oX5x&dq|Z8=2_7W-&5_LM$h7_n zOnv};4F;cwXgxoA*)dqrm%4_&*mYQ*Llvk5?$}l=gZ z1!rR5OdOm^fHPg-OgA`l5}ZkbGiod@6Ibl9IIXcrd`h;wDEjq#IfE%(zn((ZoodxQ zsRmcT;!PWE-ek(^-rdvTO-@C7j^z=H_UvaS?Ku?fIW5|gcSJYuhxR@l1h(iQQw?s8 zriQO;BZ&Rhj9`TZZW0SBx_0P0L?0Z;iJ>9dGzapFqfmQQ&P*#C?L9UF9oRzFv>E8l zWNnl8UGTFR=-NWG722%Hz6c+LYxGZ-qVJ`>@`=^Pm~qv%-^s>)9|YD7`Bv77P2%f= zEv3*$c*bxZoAa9v&q8&USb;vBy3Dm`xV;u_l)Y9+)*{-FwJ1EwYk0B8j=9Te zi0`9Q)+3&MiMm5P8?%tu9BaK?#l5u$ga@OaljrQqMc+4O;xJDsWA2-yeba7xwB0r~ zW%?lNwQBpxw6;y2Znn3O`qn4OiOM|6d|t#xQN^A|?fXlRGqAfTd}%Um5?+Z_YAn;8 zw6lnKZMCivJ5%=9Xw{zDw*-sz5H_74Hl6G`rM?jLUarnlCCtGHugX^ylDtx9CjZ%W ze(c|n&o0xJjqfwpnzTFXGWdSB<0jMJfHnGjM`_0TsjArEmd>VQQE&opLmk2#4f%n@OLpj^ZNlgVmIHP<@@1Id~n*#Gsd^3oj?C>TK|>3 zQ2F)`$X|cSIbFwm3hv)1a|*6I;ZJL^6WR0n=g3ZR>N4lW9P^)xC(kQ95#H%;e~UW9 z$beyRMEX|6o=^7O_iNA`SmtK4;?`|YnbJY_%P{$I+g z!tokL>qQCiNA1(R&#a^a*#uN>FpBYCZB<4U`q;U z+T!n@z|OR2#>@{(^B3NvX-mKV9_K(}GdokJ4b?-?PmuK<9rYP)<89~zh--l5sV;KpWY;yHy2`TanmbU}kt@~p#HDrBP?y+Eq+bX5j`eX@ z8D|TnjpwL#9q}0Wbfu5yPQFtx_YK(oMaKND1@jlv_}AGcGv1{Dne2R1rad2-#)xj$ zjMxs%i0{OPjvYVT3M@PEyW^QAezsaZ?K|7QI-2>Ms~LNCzuU46-fHVt`#L{p86$bL zrkiUxa*o>5-@>>|zUx-Fv_5K}}x=z6xIzn|cJgj8bna zHi@sJPmRDU!r07x!@Pmo>#72ErPYDRh(Uo^aUtj53=a69t;lj@IcQCEC}NigQ-pHw#kNn~5(jLbi`lJYG1Hz?ie7iI@Oa)2@xGEvXJ|%*dLF`WuHP0&9gWl< zspnof=L(X4yB^ejnNqktaPR2xj z3!l{KYOVtIWlwwppA6!9-s^1%O{NXLRWW&W$j#)?PS1fKox%84NPCnkDXAyA3Rtb7 z?gskO#Jy?UThBOrZjbWggikHH&MiJe8^y=AR&0hXpHg|(y0(9s9BKCl#*EYgSD|L*`+-$-@qrXGEK(V~5N`R+yNvr`k;4 zL)KTmPE92BNpL!NBKPhcBa{ub= zI_$p0D>y?XtB&dK^8InXhql8f=*PTE`(S_HHKW#;36Fi_=}+njcx-lET~gNt>H<%~ zebfc6T&XWzzFK1`^#8`UU6-xvH`H~~=l8V3Cr;P-J?L2OJUz$naf0Kg!S!$gT#V2L z_!$CMd)tR8Uf^m8``8F_`D%_qhTt#vABIlj_H=e7!*LCPz|>wA)6z z+i7ND@9ysN+Ey!M%u&X2WsGG}ixXUy*%BEtv|6Mq2F z4|iJgC+9QCe0DN_i+C5gLixRP4ky0x2VBF~df|EJ`n1)-gu`=kgWr?%FY(m#{Y&f( zeoo!X!5{ID!NfIE^a{!!hPI_X+3PFb$$jMyW3?miOS|>7qu#UHt-n@#yzC|U?kl@P z5fhJ2UWWF&&~JC68wStMyrC6>=e!U7Jt{O?=TNk9IiAsl4WJucqWbQ(8Txke5eTh) zR=)EwNA>9Uu?HN~%yl?=Grn$(H|vs{QR3Y~N5ID!2;R#EF?_4zYF}fuHk@#1@1Pv-Vr@(Bhjfd|1vuyPq7uu_nJ~KRS^|fZKj_B~`7Q z!M$F4t!usC(+$i|ZeQx@0^U5ovkSON{A)dMmOSYK%MuIb5;y9WYv$<5?-Jk1yIq}^ z(xlCM;@D6VJ8Fz0F<>wqd_6=zJ2Z05FZD>BZ_=NKX;;?4LDVaF#h1Z+Uz7XUYF%O|Vz-%Ya7x27(;Q6ESoVbY44xVq9e(-$R!1KlOyqxE4 zJZ~N7=jp7qE}l2=O&I>Ru$%A5Nht8S9G=GuYmEfwdUeV9VD$CPF5WMuoz1k|l`rnAl^Lb}tH!kjE=T{;u!|=%o{$76G>t+@pp}?HM)yy`|;x$ z)`!_uE_F_fjHj!Y??*6>P0;g{T4b(T*B>Z}O;Xc#gVmzR4r&p6TB+*!1u54YvGyZZ!RRd^ehYK20|&{~lSV z%=Zh;_gTl3UtovzzUwCQJ>O00yO{qWPb@;a>zUJLY_a&-#qqm~E#rQI`@QsYF8%DJ zoXmYc^HLkflN6v}4D3O0+ zeI=e4@=q*9iQPAbA7HGmioFNz`Y0DrHZ30bemdX5+hZ%Zf0%x(q=dJ}R#76y?AJ=Z z5X)iH#`r#4GsSOnZ|lJL&Hf%IVbC$M=V*Cnfbzy6DI9 zC7xIz&rk54k8&FC9pm|ao*$>2!u1KteOz}^PUbp7xtHq%B|b2*I=&+|BDReB_HchW za8yH$w_yLV8ztN^53!jFm9JPJEYfZdry4J+2j%&G(+~xY1 z!kbw6vVnQsgf-;YGH_=WZWeGH2UJK1J|0B5W1s~3_zFlB`*E_*Ar;*se zca^+1nfHo$uY~tpOMn&df`((|TsKo+1?2|HO8jJ7`DQ)8+bFm5e}Uh1JYPdOhcZGr zmvRN=Jjy=G`IHTm3n&wm^^_|q{glg=cw!eyJnymZ$)@-1Pnq-{E2PgKvHywl?H5^_ zA}QYMt1-Tczf1=_Ok}Wh`9$Qd2(m{kO>Pk%0O4V_-16<~;9p1R8~7dO-5~FVkX20E zhZ(_5kzeF37oItFK#K-m&I*g|sUgK*yUgJt@Q<@yIadzNty%ITO?&(xZ&pFz; zP^)5pI~_xk&bitHYljb2XL9wi&d7OhUq`n3C9y$`k4$?1_w1!bckm8A3n%3F3f87I zwb&0_%`z|eSs-`fgG9eCjAG7~^IYBmF3P4Su;-bqT@qhWf<8G&e3$tBR1+_7Q{r9o z+_Jr`&qW#YI_zjNUt7`T#CoedFKXf&!ukdu3g$rz@FmGnHv@gi1oR~$|HgaCjRZ`V z5hs#JlDi0BbUB|=a#c4pK(pkomNK;hd7$25bom|X{9ZY`7yTBpy?IWro3X58EQXAO zzDPT9`jALUeKHPHb`It_=m&BOGHD<`r+NI@FCQDfReP&|ylVo(M}gsNbRyEe%F#;u zB7aPnqy;A4;Ru{0zxRaUn(-gNa{zt?#LW)Uo#2Vx-m5(CS;c$-Z@~?FFOvZ27&2FaQ|rO01aj`v;8hpn`&xn5 zcxH$f-&zZfO=g)|037E4$GHxpdmek6`5z6>7l5aNBWp$%^Vb7xr9TRu^b>s>{Q{oI z*KNSlf9A`_{9ClQT;Q0%)Amc3emo?(Z|R4?^`Ws^;L(YWKy*PB`Zdi^wy1u5grD&K z56MrGu-e@XJi|>I{6I5;DaPDXYYZNuz4G-%oa<1foz1@!eYBh#tX1mMpZG_0=C#1Q z6ugyvBg$yXhTWoj53#3^vz%mKDCethCC}8y)O~B;$-ZCqosyeaWVSNsPxhTvl*0cO zQOe$BE2ZpRBtKKGl$`4zdzTRBI*9(G3LPr4tw-qma{G>_nWL{UM>f5q3^_XcI}`N7 z@*R7HzdnUr$(+g@ZxPsVzVUaiJJZs0yvj59faVbxG%@ebGUtP_KLhWhkAc6B!2_^s zE8Dij4!?sRK$3U;!#Q{ATCY)vjauGa&b#clRm`w$2Y*Z6WnK%31-9R5=A9(-P{=&V z_?+NqgzGoNzu;W1A$!uBMSq(DPn%4-lkp2}Ca26aDs!|~*^8e21$KfLo!Yb=Ztc~c z9bfc3CV5D&wC7;%?ED_%iIp1vwL<+QIp=;^fgd^TNSo5uqqK9Cb?h3SGed7DSMP*UWp^UI#`_unO;zQAjzT_Z0^lIw8mmE3cZ@gW9lzhgIQEzDZOyhi0rr*my zvChceVvEY>a;F~V`S-B@f0uEIo@WmB(q!a|p2`C7sq>2-g;z4x$labA-f3W*Ptva> zbSn3VQ6AZVUSKPHE(y)by}PBZyqQK%s+MyuwO2St6kDu$7HO+PJNp>pnZx`gNAXV4 z%*(!WA8k}(L%Eu9tNFU4P|eq^+3+l%X+S@(EVud~IaV6z!=$U6E9%}ge#tQXQE*{Y zcHO`W_}r;rvFUD)$Q1%R+MBBIgL}zDt+Cw6Sb?R$Nuyolm!leX-VLL$yP^BVR%Ix= z!fpAw1D+5>wi13ALbeJaSEb`{5}Itb=BNQ2DZR>ZK%cwDzc4|62HJ|s zlgr=(R|#|KJ2U=k*Xt8Fh^RCA9y^raSGNxVhLFqfMj{bIye`J*UZX4f);2~vVmx70s zUV(RbSlfcwNHuhR2Z?``vwlim!PiCUo`6@upm8_L&z?Whc! zP6;p(UK2Yv%aC}OMdTz=aWUJ?(!XQ9C)zg)`6Q=(;$U!cI`}>##|Zn_OVs5UQQrhl zY;F#F$?@i1(lx={OZp~Qx`tcKy`!tb(lu15J!LF4%ZR(~HR8lFiM%iJMGznU*nWK0 z%Rhce+{w#UKQE#SQ*kGCGmX%knMQanabELg8qxVPjnfNe8gb|(;h%}`_)L7qXQFdn z=}9)N^z^J>>FJLpRxRW_GDhGQZ`O|_4eCU(26)YB$<6HErU-?hsGhb#8 zN6clg*e!PAU7A*;Km9Rq>kx5Q$N-Dl7I@H^PZL>5WSGVr*%N$RZ{VF0_yxB6c8T3A zRk22+^wsk15w{UyJYjTu5p;Xe1bar`c2AuBarg0A#>v8ajbzciM$d?Q&3HSBIoXz< zF@FvVE{V?BM&bxEX)$&j^f#v(#C}G8m17^asQw|Nl!-6@5q$a41*ZE-M)CI&91vf- z_uB5%v!B0XJ-7QFqK+`{UB~$wA=(>5j8%{}y+W7!+y?6wG&oiF$`}t@@S%Oyq&q_A z@HYn@BL9d?72*0Rd}b~J1KS5=3;bI4!2(Me!#eV^2Z2+Fcf!Ca0-U12N$C+HvyGwb zw`GjWXk$HXoIFHblQctkz5K3TBxl5H?T^vUmEfHKUUE(|z8bs6FDlW4jPV24A6kOM z+J;8CjmQS#HY(i4$tm|5gW$h&KJ0w@umgYlEA@+h+j3Vx)~BkG`p=O^R}lA^KGp+_ zHG0^bD;ckhdlutWag+4@dGgB0*z9<*$c7rDZLA5uZ4$@I^_`3>MI1?KuJ|9~3pxro zu}^zoBzri1N2#ZY{4!0YW?gnps7B&gWggZZ5Z@84eJu6tKrXiNMdnNT*2sJbEW`Yk z_io@lIh!KZgdPXJAaf*f1Bw0MuSQ;>O2#AmF5ZvxPJ%w9G%fil@}C7I_5~V$X>3)X zeWEw;gQ?YlAKv5RERS2wGdm);nrC>FPd4?@{>i338r*+)-)B5;0Vx|=l5pfyO!kad$;zkpTGM;Ao1=xE$46)pZ4e@ z-+O!A#pmCB{?KpUt@+IR??#EOly8=ZZ@DYyaBKm1fSeFc)*6vs^!K#&%FYjo;T@xY zYZoQ(pFUPQvoHmo`pd9E$$2c!_Pyi}=y~PY355 zmN}F>J1@!}oOYK=TsZBT`rnC4zqjKyE%0KgBM=zp48-@;lE=u*In<9w%x##y-z2#x zn9C>8ErjWBg#OwzK7upIquBe=S!Lj96q_=*Wvr3?CO8w}`dR#SR&g!si{C%r;~#GN z{RN>t@+Z7vut9{{qJzL!l)dh20Drs1Cv5vQp8#`g5T8PK<7~g z-jP4R$ib&mtB@)PmRHhhOLmvVaELvIpcsnrMH((Lke!tKt~SeZppb_$lnK%iCza6I`FMo;nGI-HQl1%C;Fv_ zIUCvZ8N^xi*&*-;IXj;vZ1WyZGM4Ii=gIcmL-wIR$qi^;DcJjLdRQ=DQWAGi+X zxsC8D#)Iuec&X22#!xTBmr~|nA$SkZx+4g!luR^vm;81vly!hSj`+@8WQ_KD6KsaI zOQ^FPKCf^^Y``+lCG89F7l`ofBIXLF9DY2 zHO3si7n*&NJ^xyC0c#g(y42CngV7;~&OmVOCww2?>sGu>V5mV8m5L@REt;^(4zu*L z2lk)$=#f?M1#~6RHPFFwXkrC4vGPx%iKFW{$Mb`0GH7C#oxd!bCZ408cH7c!I!#oN z?<)aKBos~L2~F&hb$OZ4gs;-1g{Df24^=8YR8gu0#*cFZDsStjiK80*3G;qR&R75z z8SU*g*R;fmSw>eU|8tl>=1O!(-TP~diba|(eh6hb=u-Gr;4eM~Gqn8VGo0ftv7!mq zpb&f_w1;_@ydA`4UW8`|E=g>^(od8F%L-swiL5&r7*By8Pea!AjW_duxW=330X8A~ z3V&^?Q0M>kbyS$=0=nP<)mRD;m zMDG>?uEGayXPhzS;YDB_p}z;wYiXC!vGjra_=VfXzr^j%;l zK4FO+jFERjJP-2T&06l^S^U4@&TZ~;m@wP;)D@~hBxjCN|FZ$+E@{@qv3w$#F7BaCe;eV+;6^)hD(#@k8X z*V1?CxAZ?o-^31M_x~2F|I()PUvhK{T%`Xp&N0X!Z}R_wJEwmPIoIYqlf#;F=@@d_ z+ok`4OY}bnz9RKX-d3Bhyg>h@ojiC;7+O)XHf4l+I~a%9-44Z5uN+}MOOTE5BYtK0 zQr6z42_~QEuu4}JpQ(oqp!bL$-ZBr`m=A3%;5T>{EU)wkt);KQF6OrZ*evc}gN0A3 zHCXYR;P9*CH(#O8SIuJ>gR*5Z1|{n-203ptoyQ0sv+kNahWF#hFw*xc?F~NnU1atI zvAV(=WRJ57-i&WM^4`&hRo z(8auWLu)1Q!L|6L=jUsO$6cF$xB%Vx&;F2l)iuP#p+}$r{F&}>7HGy9dP|sW}DJZSm=HyI)b*_&=F`ExhbBvU}NhDPNTaF z6{904K}Ud&FU~$><2sr*}<5M=%{7LF92y()9&TPu>?iqAOClDR!b8klYl| z);89W5cDQzKn+Gm@GHsH3ckp?avObm4p@jS@7n^C5%8uW`nZOFWSMg}fLkM&qaygt z8Y$roJd3WHX*^FHYLNHWGH>C{fFlw%Kds^jXv)Ic_#QRrO;Z`MUGqaVL8y+SnJ%u_;lgJ=3J{i0&~#BnjPH?uXwop z{Ug*J;kSMM;P=%WxZ8imef9=tv_`jn?=_68L&nOuM%9p?*x4+0;v@eFESiK4Og+fn z-ywtUXMJK{7@mX7CH>|7diH}uWIs5EI`+c@2Ui8gj;zL4+K10HYiZjga~~L)q;eef zmEUUSJo4YFav*6Eo2ZS{E9i$qBaWcasr0hK10^oeiM$c*U_8R#kt=iH?{VOo3s3Bi zDdhPw#^&@2euHDY=a*|_G==B9U(a=%XNh9?DZEzdx6f*ftS6rYd{_9Za|?TDuIKT7 zaJ$lZsP`ULa!-Z6Smoss-4|o)xJB`#!rNSdf^qJEvot3lbLKbzYX0!|zsgBP{VFFF^)Hp2RJ8vv_Q-tv+?|7+ z0ryB(Aa}Gouoheiwz&-l?S*+~i?X{F>dlNP*j8gmF1yg00X&&xL?q!?eH>_QlKC7mFNk zug|9M$wd7_&NNVMFdmiPBMrd{vRx_`5vdkL=*352l?3pB7g=`SNaRpF^8+##4H1rkqD0@u4K| zF?xAsw`sRmpz^s6#FM2;h$Sx9jNoMS%u~#`V#$?}N;w0_uN(abK8fB0S+JOY;y=T@ z8)m-oZS@G=i5%mfU#sAR-DFo;sZ;-d@AkGJBarX2L=RJc7`vgoADqmdX$o>i8~OsP zj%~mApd}^o(dAj=wBofcwx78qeoOM)%J>Tf=JYiLtb|7Fu}W!=_oL!n8;&DWA@ih~ z24MO>U-%Q_U6D`IkDa6K`XZ|Cvvcj|H4i8Hrx+OhCs*Fx|E+}J3%F#+6IJV^4ef*bTp z;Rf%9@ehjNdxzYzOXQZ&403~$AC&x@?4wkU*=Zsdh!0eF8vXXs?>YGB2v5)Y_Cs>9 zIk@lU+we5WH||a@6#0hlWlt9Ld5y=qdRwrq-WlXuIdik8_1zX^pjYIbLA(=bV9ZUX zpOpQr+6##f6FlLwe7}X<2odo4A#`XV>IqYi#J4p&n7RvxKaleq zUvVnF!g;{Fmr4x^yqv3e%dRr`N@zZ`xPX8Bo3+7X^sU&X<(wc>9&@!j{}tM)1D9yC z23>A#DY!HiT=G8Ysh)`65&a)HV@i0m@aJ4);ymR;Cga_0QR`QRkcji|Bf<@ek}zn4?R^@TJR);Q)G9Eq{Vul{JR9 zUj56CVLW3H{w`+$d;=H@j$iacdoHian`qLO%d}5h@2&eI@4XYS`HuBn9y9~r2^WET zBfvd)q8(F5JflZwHu3lXKMF%Da^6CETwTId<@uOJw^zfT=KuCm{`4!_xY~I9Vy#K# zBp+`uZ-{Zed~$}~D7ePlZ;IY{art7EQ&(gTSzqg|oVvopg(f6_ z?xN@9j6veus4G-B#0cYCt#r;6i#-iI$1e2%^mRwX%CFmC)ggE-c72IC5x=emE5EM9 zoJd;@R({MwY+vSy?!YFfWD%k7%siuCc7tE&NkiyJ z!wu*$kd>n46Fo6xrM|XGQ^t-|nlg5|C7VPnJzn`ZOQsf`z7`Ok7!r9i={7p0Ot=k^ zuY(b6MpAaVjsKGJgxfeS<#D&U~3%eQl$itM+8F#u!ve++c!oY+9~b?t8x| zvH9q%dG-l@p9Ic>$Wx2FxzYBol$a2BopG|061nr_2}<@UCy!I6=c(nriPSMjWK!Oh zvvS5s{f%7n&CT-r0KfTejI@=y&p4@Rug;bjjp5hnC;J9tkCyW%2P;1z`7O55r0btn z<4beL9DMkauBoeosT%YlwX6x)i3)3tsQ)GW>}!=heQ9E`C*i*j+x&e-_wxIUjlae( zkNtdT^03w6J;-3q?0wk}pQMf?b@WijDe5?F)e&EDA2Q0NF`=iAi+`Wshua8O3|k$k z9JX5U_EBQD>hXnon03RBk(3y@Me5qZdx?*F(u$G9_dmP;{cR`iGZIPq-b>%vCrbVQ z*!GYWCn;w_6~do~wio@LzM!87?Vv9{#)PiA*~4DyP*LBb>v{n99lbuRdRSzZp|m zasOW|rt;wDMXvbDZfXDF6-zu4qbIx$yiqyG#fMd5?gVed=PNySvPAGl-8W+=OR{1o zOC)ykALTn@Hqrf@D<8HxL`*}FcoWqgafDL$o75rg34a#ZMfh^Qv}@t3@MYnh(w^f{ z__WC5#ID$L)s;nW@m0*#8p#)$-~MBvk7M9uJvh0*&6(Zk0l~+US>GfZ?lXFt?la?* zt@zC#--lfIWkYve;CMIwoBt#A9Wm><9FBIchj%nv_4LPc=JS04-w$e!%lC(&jm_|N z@(dn?&&arm>)e-_Iq;K9uG5_|*kr|pmJ-1-mN19E>UaUfDIV{V>ePO!B;F1Z0^K02*6Pki}h zJ~|~P^t0yK2?=;%%B!6nw*Y)1e}~pMPA`69new3)nY5JmMaB^yYKid`A8PhK%7FQu%t3n>L(wopp{f|d_;(DI=UT0YcXbOgcj zQjgLpljk&D@B9KjXQG!*`34z@J=iEpDABzn$|=k5U!B-AZgm1WOjL3WT_z?|LVt-4 z?n94>LzKC_rzIDS)ILm$D*nfWx z_u);Zervp`GlMsY9)I(LW)5l5Z7r~VOK$sO>$i$eg1@M5Bc{#05B?(G7SA8}_QYq* z-}3Ed>$mz==H0i{>{r_`Pojfy9AX?rgNWN4WR9cGdcK|KI~gx|tHs`uSXRK^i*h+- z9pwtjDGSZIQo}uo$=2_}Ydncc>-TZ)&!>$Av~dJj9kXB+S)2*0BEG4xzH#yU81+w~ z{(8!3lnW@QTi;e%_}ekuY`fgL-e+A`Sl9b$dk5_nGoMHJo_yPh!<6LPR`WwVV8(p) z@jmpH*v@;cm4;_VW|+wEtbW5n92dM=plE=gD=addKjNw0am^xSYy zs1II+%uz0W9$ojKkL3(&Xl5F*m%+jUBUEILZ3(iT`ZhV-gH93JF4kWhj6JM;p(h7l z{#fCsj2v`OA|u(hyhProB(JGy2ZL8cxb9vB@1V^DZHk@j1ThxMP7S@gkfUUe=|ooQ zmYVcKJ|Xs67gorG_;kyw>)*!(zK{)x-?;Z#eaaF&rc;Ps@CiMPP>Q)5jZ z^3+}M5!RgKad_~F`;25qp3!qC&q#K19pU;g*GKYHp7H*7_Hb`++B^HW-k+!DZut(M z@?}0qomcD=@U?x^ln?c(A^ITVk=`J;jKEmxz}I+cl0GjV!r9vBw63Nue14CPf9(_c zGx)ggp)P^#@*N92;+MV^U5l!F75!r^lYMyuYbO3QSJlq~@oE0$c>N^)#NVZES)0@A z`xC}{bo|$+>5nqrXRPrqZ1Z^`uW+@ilmYc4b_)->2Lc zAGyXHS*t#-JHSct`wXtf7T~vZw{2D#G0XGiw`cI-OOEk_(coT1;cG#@ zmo~Sdf2rPbo6;kE{mlrAP7i3HGwiv%ZJvcZBslio6*^evTu9zlToo zJb0MS`yaR3OsoPg#ecK|y?86~K@;)jv}vAqTG)PSeGO}=clW+GKUDK6J~pN3bKmQ| z)SvWzt4_(yplqFE$U~atb6RJ;WA{BoJ;*eAb?G(wTF#%yhP#YkU@W$qD~&Hm9SQo` z)mCFXG6)>RkF(jpH?IYll)II!{&H{;-_;PhmGj?Zk66y{7W|*k`-n^;{z9^M5Pl#w zEYYKj?dlou_?FRLY*kg{_Nfj`oQe-4Hmap^J_oj$hbt)C27DSHo2CVt&`rgU)nXIR zO}>mCFnWYJ;`$`|gh&Z8%O>O%`YB_TwnfG;=~MJUndi^S`LMFypWa_%{M6ylPqPjj z%)tkQ{zpoXi8ir^n&LKkCcBMO+u2iXVElWL*+wA)&T$imkMF@;H#SWzIcPBQDYBvX zWr{E6t{QJ(&;3<_S0AiqOq0}}pwB?Ix*L$+`6`$qpHOg*c_dnPq zXZ}fCzpI^fVV9qrPO>iSCYCPDdMEbS5d2N~YITt3#cJmy?R3#jH|@mdf>(3Ei@llc zNE}?yMg71@e6@U1|96M#HONuVU7`N_t@=+t87n9rV3xyC8x_f&DNahf?kU6O0`mggFwB)EW& zYvdd}>H<8fkGV>bAH#)RJ`cNmA$EDo~m$~{J zK@x{3y2hTz;O~dfD<8&RwJ$a5X*K{~UF#>+-Rypplb8Vfd;aBHqE+ZDVY@znn>zboET8Yjc`B3^OHqGbhgGKCvcd=-siyhz%qR>}4LJbz)2M8cQX&8}li- z_+)1!Q@JZ&oTiJE;)EVB@=*OzP6?!@RJc`~ShTh@X@kYx5Z0xC2F8TlR_|Ff7R*+Ac zI?Aa-&bt(wl;qhC1A}lKCGe1(i3f7f-!^*m<^l^>wYxHK6&=PMu_hB&CEtYjo5=dC zaF+YO{3rCQ>?a~T`#HbGza)rV?!~)I9Nsb&9461A;Bc5VO>p;l&Tm+!U8{dgaF_44 z-IIm8Q!U)xV&d*A)VuXA&TR*0{n+3A2eh{w_$msniXVpyc`evHD-hXK7l>`1i66Qa zC?Dnsl;%4FBD=Dm+NjZ9xXq!LakfhOT$L$%ms8o%!}P^x<&dl%O%BOT1=Kev5N<6D zgy%Bn^T3Vy;Kl;45s$1z=bLTQ5`2(c7pDK1byTQ9`_lcU(t_{V<1CORIcdj93z!ToMe zIFFq5h1KA+v%P{mq32zN88Z7ayFdFJ%1LwSkyEPSZSh#V$w$Z>G`1pVyfI>L1) z*AcE0Tqn6saGm7(2-nBB?&bO%*ZXTc;kGAls(4Pep<;c+4G%`d|QZKa4`FfA?*jSp$9j^ zN7^`RoH1wT$lhj;t=@|q>0m#Tj}KrbY`$Z^vyZWm=ORqL49Q~=F5=t~a)5{Da6Om2 z7W1l%T6jaSl`*KknLdW__KoY--JxIWE~k@_k_zIjOAtEtdq z=-G$|`(|(&?@Z_28JxefS>h42S3+%GLv(%d=~YI8Tq$+L!oQ(;J)Ix0_eVzVeAdz( z^B&9T$W+6%fgtaOc=!5LZ_De%s;aY2cL4XDn#9N))!r=E9TL0Y%jvf#FUA)`@JQMd zJd*N&*ul%`Q-#yaC+-@mY^SM)kFjQq;{Q7SuMeb-3BRU)mE^&wrI{&(xk81@U*Z%)(2 z7HY3A=PQgB<|t!*k+memS|VqehbB{+YsoG`MfLad?6t%^3jscT)V2$L)LL>kJ~Q@O zGL7H;Ye|i@mUvk!W@WA=>+ru@r(L5rw4sQmq|QESOJI1k~Y*ODso5myJQ*-wXC3s_IcNxb@6{z*&Yd1+g-NKCZBiKQXkwfsD!ww^YE+tA%zSwbx5ho{KqLW-P5puqh)|<$B&Wvu$M6ggYJXWadExH>vw>=JE7w} z@b|r(=icE(KO}yCF3T51jf=N>*{^@q(}g^6FTPCBuW|AmYySn-ehW8FDVf}D zt^X2JY5Fn6EL=&T9};}&Mh-Y>$pK4Gq*@lq`qjj|tY=OvIV0T3I3u)=oDoCLm?e2S zH}Osj^R(Gvu5(R=rjJl7-!*v+$@Qyvk99v|oj`BU(q`?;=Ygy9p^*j9M!jZ4{m{TN z*1F};#tO~oTB%_(KnCh?d1Oub-NW#TdEnoC@MHn~s;6Im`n62fI^ePbI#~&wtO6z- zKF?WV2F&%x%uoNwaQKHWD?j}v+HEC95Z^4BBgqLG;$A9M$X;b|Kw?Y8ul1Vr`J}Hw z`Wo4Q%)xvwV!j8ZKW7Y*FRc-IMf>*>m5*Nhbj0619C7OP%(vPzPNzNQ*4B60`O0v4 zMQ$C4y_B`V_O&&6x|yT?6mWQ%_>I$ZyvDCY4>=duOa~^=r>swL<~G7yOYWbZ7JQH$ zuH-K{LnbEho&%g&AEQ3{z#Podz$Z62#F)PB@dh?jRR#1P(8xrX47#cWxq$qF- z_?`y7y}&mD%|;_l9$7P=y54K7ztQAPNpLSndm+_sQTx&VPPGs(@k&pf4p>JyNgC{S5k-qrLUHVMChHy^2oY z=nD2(8`ulJOzyaa4^Mhu@^P6wO7dunjH$KH#{bLon|8O09#Z-veUU!=kZW_E%~-YP z(i5#VGKw7(U0hTH2q&Kh8u@=epk^ z>sM~Z`V~6CxQ~P9eYDj{o8XS@6`~2+OEO2j&_Yw5r|SZFw3H9^B>hkhdbgG8nmy1+ zy+f{7@$GT;)la~afMuiFJ98cccr+Op%CmBwjrk|m8erIfZ|B3_5Abam8jDV6oXmlo6Ck<&MgMEJVdi%hIOntnZ#vWBRsFnO|DN;kjdWWx80uxsdEi|lsRVnvhV9=p35XgbqX*NT3G|Xm?pTGmz+?cJ)r#b!T+1_ z)tC4c!7I^MJw+c}^htCJ1=J&PgyN(6ue6shx&_88{vNxzmiR-_#e^1U#yawZrBX%k z4`+L%ueaqO_^i&|XaIgq)>`l&@i`G!|2iP+!h<_l3nIWe0nC%&R4=@(X}u?L0p7+~ z27FXMdOyE=4%eEXo_q{>rqy?&R#2AU5o1Frb0$v7n@r5Zhj>?z&ktcVr= zJ!{WD1iC9fORS6*$RS1`j~D^jS384@nfLw=;}skTyYeJ<2K(C-{p^iWw^!Az_NTzO z4Zb4rr@3PXV7gRbT58#Q!2v&Ym8v>M=)>rrLt={#6xq5S)xX#ICJGLy*dlP*o)4w# z;r?G!hsfuO-g*9Mu9b{F9~xq;5`!dT6?=0XW0iGH&X$k#;U`Tzk-#bscy!U{d|;sB zl^V^lPM5m3@SAt1dE5r&64!7=$x z?B4x2&HYlT(`(jwBfq`MwmF0xUer0)sVvj)G*eu z;rw4C=cy?k5n2yD&4)Ic+25k8mHZ{Ush{=#XxV|1jQ*;+nbVBAx&EIO@W2h!H;?(= zL^+p|`tAC@Z`apYX4kjNj(rlon_XX6>T6Noqw^b~f5ZHKSDAP0CEq9bJ}-T&T)!>f zZ)P5Wsl=4ea(U6e(x+y|xdD3G1UEQkEeVmv7lcQJMSF!C|P}zbxiu!eVFxj4r}&!P2xyLvG;?YUI)Lw z7Mje_heC_}^w0AI_zvxy{XECoJdferA?u&;!%uSh(;;GG>$7s0mT1&3LSM}F`*Y%0Q!sKem5fsmxQ$}q2rTQsD~T04A1TP7T?af*=p)7cRpN;5y=Cn zPSU1!9S4s)fbTJI_yoASAN+=ANuNUGi95i2{3m{rvaSW8>%S5I^$XBJAMd3E*U>MO z=X+v>?0=g7fqhv$w)%V(Qx|G3=6WfC^ilTO z)o&uN`G7|!^ci7}63kf=n(?pqbe;1u|M(^Bhjuz-PgAIeTD`{P5%^c^q+fiKAuI4r zoNv0wSJ%Cgymfr{C_1y*2M6nw;)|&Eg_%D3F=Q6uhsr~&CI>$-t(O2|9Q@Ho)ZOsWyr{E#o#|;&Dcr2&*Drp@0{G!7zAe~_Rd_##NM5~ z2#UeW2U85*#NLVDM7C6U@7ASsbfM6o1TScTfr@`mx5c9XRwXFR=`{J z;w{moH_u@8pO|M)gwKM^vnMmJ2Dg!I(0fH76{`=VzNhP_kOU zQ^%;KIPwE4S0DP=CriS@6}XOqXL21%#BbtF)nx7fw|2gh&d2T#zRqh}_|tdmk5{C} zr_OU^COnogk3$Xz66YICoNuUb!(5s6QE((YP6andfb*!&R~IG5eT>-tY-^BN<2$k$ zoNt1Lt)k-v=vL0Gaq6{1I49{M-?925n;93^k4X=-0{bR@^V~6>(b*+=IRjg7vj(;% z^9I(n`Kg0)s%q8lAq5Xzo|9iEJsIa&%hViH%@%u3xq2A+lDtc`=M%g?0bLWkHvw%U zz$!Rntdqo9CrL~vF3;LWau#)~W4D)dByTS{R8gAhoKJ1`N@`dyEM*>E$~?Rj8&PV< zT7nlFyDk0-z+aZ~Shh3PRltm2l*wN?+4yTa{Iv@H!bf`Nj~V<0j4@!01LL{Ern>V- zjV{dtm*VX~O>Y`Lx7U5*;6LFX?5ua&@P|$Acy8$YoTK%n$#Yb{K5D}j9Uc7-?RTfMFPb%!X04&@`>_)nLsy;A z|0=dpuK#tY!dKFX-g+Iqb$Ej4d}-6*d4I};GbQA zZ}PW+g+2KtrTwwT1)RN!zFCI8S&A;nyTg~t{gf}wm+(*Vq3i4%jhsNgP&>H??*8=z z-)$OLJwB)4k5xGEyZ(gVZ~TcX`r}Xd^V0nZJgXA_pdx^Ncg{qZkG`t$g-os=u`SJ=HtTGHe$6txFECEh{;^+$wovHnwRf*M`wQXS_X+ zuX4DOYqRhTopTlB)48#+y~M`W-97fi%ivTx>H%>765o5|fH}iX|Li}U7WZl(zk8Ea zBD(ySOBZP06ZdKea6eG;ecmM>SkKFr>s|Wo`oq7@@Q3BwPUMWtMsVoA$X|CSXJgLi zY|Ohy2OBG|2{d+Y&B2%QHzpf$8#^}VHR{}jzB;#+^B-MbbrN%=kwb#iFDY|!LIc$0 zw;C5v7vnC@f1F2M46Xe~1`~rac^0Fw5z<5crrjSx&Ibn!uWD^A$h*RIx8lQ1qTe9> zmYMoRsvB55D2IFvf1~{2p7*e){~6wq<_{AqJ`P^xA9V3qsNAzGax7flo(-2n11T0V zd*%`@{*JX+_WGB}N4l^_1{F6G4mEem1BZ{XmS@-aENk3&O^|aj^BdbY6>u(QpT@-2 zz6OWCMvimA;j)W@jmyFJw?~&YE~O@D{HYx9Y~wqzCa=+)J&In~0p7o4;)DTn&RV(o zZs);<(HRkRhRz?34I>Wz$0O!UjrgXus})bRag$^76~CW!aI^XE;KqLj-24LE*z*f} zzy7a@Wqb3L-2M5=S=xv`-B^A#b(r!x1Hdd<_L1WguR=$1|1$K}ss#h#~TQ5kWk3;zoKy*xL}dd{7@i|3x4>#+;Ns=0^$fp(icJZJD*JJ#@9-#v;~ zUz?_HqYM2d;ql~>PRLKiD)}zI6#Vt`F<0uumpOucev>t^xADr=kTv6;e0FhT3cyz zy=Cx`^lKY6rP|PiZPb-&Lmy`5a8LNksrq6+XEUw>wu9Dl;T1mZd0AQUyQ|3G4{WLA zoZD>tQbV3zF|-&7E#ml^#?NG|+497728Vm!(5LoV!}o{kN>jH-e4$R(Pb-NVz0SI* z_QfTUhj#cy=lI6)dENeFtjpPJ7n+0iZ)$6?Qp%}GZnsh$+pzoi^@YgfOCPpoyj3wA zp7W>i+%FxRd?%W;A3u* z$2_ZVAoV|W&=Vg^zVbxp{9lb*YX!xe`&&W%LY?(1UFTz6Q)mAsUgg~1P4K9EKK#WT z^3S7t;M*4DW;V3k1|GK~OZc{0qY0A(9wB!=I`zTlpvS(7AB`}%-~~POKsG$`8?l@- zokRoPW8TNRt^lUt&`I@)Mj$iN?@hq3`xV4m)OI#{5}0SiX>ay3>_E<#ABFj?_KLB* z;Ouc6`Zwz9G6u~J!ua5k9f8!H%zqyklvk(t3HE2DTlab+Ie*m)E;}JRW3PkcLtDMi zYI>5~2D=6>wQ>5>*K+s|I>w-596BZ#e;eaZGJe&!b@Mfe2_LOkR~UMf`SJ^Yb9gg+ zRT?hVg9|TiiK!2X45N>9oUW`mniq;Q-`?WBCqpM@zGnvSxg1=M0+-2xbe`8b<7o> zxA2=aknlp}B8gnatQ2wAqhx(E&r@#Yg`sB7t_U+fizJbQnBec_`FHWHdvTZFv@rvB zcN^Rda&YH-axR2$cD&*8G~HK14yJTpjO(%fIjL_AM7IyjMYqxSDs<<;YROa&{XYu* z8<719Lw|pdP29zre~&G6blhXq4es7VPD4Zfz1>gwv@fr@A~1#;WxiBwVX!0?98eOk z43@+v4=73a2Za)}No*>$Wr^`h-rgx55L(9^^f>h$ygqS12kr>(DMCNI#r@wETPq*A ze{fp6uR84%ETc%X^ly=aD=-o5!6`^6>OKTE{+%<+oxp?0R20(3&+s=6KYqnM%IhH2y2f zQqlQkj4h|>o#USS)44a3|0?!t)ZS|DcX{v6;@<3>l!czK{&)>*>K`B{E@1KtbZ*Mz zN69b1)eQ z81FB1-oNjoA>rUL@BL!#k4lH{$KLy6xJS-u4}8Gjh3`#rJ>T+Q68atUxJRD9ER9dw z(D5dgE14r!9mUQ^m-C5^imu@kd5qTaS-|HCKEYjdE$1k%BIaDrKd?p`xV{*>D;{2= zwfUUR2II3be=X)Y=qCH3@3wDX+pCeRnJ%@i4ON~(=ZLT2^(cIOSs!1W?9#@7)|B#$ zzSDYo9{TP$Hu)NP+Lt_7o&XQ1{z!n9r#KN-Fo!A}4TP~pe$%gX` z@5Cz0QgQCZ>XB7)f@0DI+>0nqgG@>nl%osW_sBNty|HP?;i9rs+hYFVRqgqkrE?hI zRo9ntb7I(HGvuw{Mff{8Y5vXw4*bdDATnOi8ELLrog5WR?cjT&dD-gZm>{)+3p(4H zA6Q)$@P#aJT!=5QnZ1B*_4wOstd!O*Pjc?Kk%JcdQ~e7kNpwt{=aT4{FwZLf9s?g{ z9kE{LBlnn|$RKZ1o=g zW9XA4`1Iau<@#RYFv>@|c}R%772>2$J`(Sq0Dl)UZ-{O!O>Mv)B*4XN{H|(v@Gv;g z@5EMUwY@ZTIs6peL2PoHVygKjrmAy&701?jZ}xhXuL)m@HBq05f3}Zhw`14f;(gHx6_7q#CGsm%jY&<>WBD{uk#N1 z$;unrpuM`)%BLu3y6bo7lu^LNd{4G&EqG6$BUNK<)1U`dCmUFM#pmqv@tZ=-!&Y8V z;}7+_;M=PY5nt@2@6N5n)S&glzW#M@oGeQ{={vvmjWy(3`OdF9(p{F?;2YR#)1ja# zxX;nIj3W+DB(@S0V?1sCU}~e4-`WP;FY0#{u^E0VW*ccBe?ZTz07k}eym(}qT;6fF ztyfHL`l>+c>(JBnPvgsTQ>vfu(z?=nk3FY4lOntVyRqul)I9G!_T*}BV;Ef(K|g)b zdv7h*sevOM9>L~(#(QrQ*EjP&isu-^H1EBqxW1Ktr@txQd+dGHUPxyr3;w&Lf7=J?5_1b0ER=g8mm;0BwQ zLqSO2W@1XGO-pN(cqJP-)BuBCk~q%<$ap-DPQR1dgQQ> zeing)>7~FBNd4_$&L3~NI87$MOx~Ytz1C+EtY0T+r?ZU1tXU_V9KQyvF!T4y>oWEzMVa0J$5|<)}0Ql zvSF5L8@qO$cFTvP+w~aw(SM}ihB)+#L!&6Pi9wrcbDr>sPz0X&_kqlb!F|H;OGxd)WA!xpm@8&98IiZ)Ws+vBQ_k6?63RCG8@EkJi_4T|QSb z>s%GrNvc>PIW)s6aPS`xqhfS_q-CGjlUL5gj6Zm#g8c);`2$5o8{j-yBF4c>^!w)6fzJ$So1lmw5m_xAhbi&BT}AozO? z{8c*mTLAumU-)|~I0F95PxJNv#o@mf;lD&J{6|d(@<~$B78Bz?0x6knMOP|2@D^E4@8oINxG_{|x#HLRoc3|SUE9b#`kHHVS4e#Z5a#re$ z$WR|Ku>j{LX+LBjwE%jY^ncKqKRBPY&S#7L8E(l*MfMO+8|sO}9ppFtn)n(p^w=uk zF!41$r4#Jj$I+peP8_YjjQCpKMR`X4l{>v#@iqD~aW(o{pfj|CoJ-0X+JZ@ElRt5t z#hG-z#>ZH%dwit7Q9gZm5j=7PoOhb|+CDqJrabEphW@BC5Ej83NAS5iu>rLA;^^Ck z-nl*W-go2(>v8t{z~zBft`#!h=~tPP_vBLC#%# zGVAO3R^gen=b88-)sgpiKB>IZ$-Jk+;v5@0?k&0Lv76}php?B0=$67k)^n~to`+sh z?!9VY+d7GQddNy#I9rSkLbs_e`9$;Bv!VTy(b*=K{T1yKSw>9Z)&+N-Ftw})<<_;p zXUbPp{MYSUbGFI>N9%L3`SF?7b3Hn58e^EM_UH!g$7cqfTguqt)2-+77(+hqYMY2& z02dL)9i2_vU?8P>Mqb<`!A%m}w9`hi8>hdviO3rEAyal`FF3b#hW0C%Jw_9Nb-ab2 zX5lZ=$8^qp*BHjZXRfcq_{UQ(R`5?`&X{Lae{boaWvkn!2cE-UuI!^VM8;t9z8H_{ zWNQsndsqGh9=-30PS?AMrOS8XnOx|R;5~T`P2BwjZM+AWGWnKjeSvWaU*=7^TOJJug`)} zC$#>j`T=p#;FoWanF?tBHFY!#o^o~nH)&O6GjT-MFf-{0$Fq+dUCJ4atQ@VR-NzgOOm zW4{jZJx#}neuKgLP;fJh@6hs!3|hMD!HHpk)OQ`a_Ry1Bao&3UVd!^1{&HEly^k>$ z|6%DjhJ-fabLJy6ZxGv1|8v!b+HA&u#6Mm7*_%1%MfsrB-%EJg?DVvm(%a^LX=BTO zZ|=47q6B~H^S!)CL3qQ5F1&Y}e5Ky=8U!!7F9s&y-d9$xJ=e^&m@h0Her+hhoKP_B z^uokiNl%+Ty=}Ig1*YG5VEQvKnf3Iboxec>2{;_uBNKhlL64(nySu3=(@jkor$)+@ z&yu(N1#$(D1?AYgd-K{ELkBW51>2tcVe+kt;5F$p^jZwvxnRu$`+xP<|L&Ty@3pQ4 z742PpzFE4a&%6J;s?WPMt?lUVi|Nnoi$IQyJiyD+4auP7NxoCxChd!`@$KYo!0X;T zG~s=XXN*yFfcPe@o=l6q->rjl|Bkn$?{^Cy>yuSQ4liPK;mih2N za1ylcRlf4HleX*}UQWDGF|6X;&<vA7y^o?>xdeB|h9*FMWN>BUUDy8Cmzx=b>4wMU;F zYq`YE|GL(PJYAZWj}z-;?I_6{K1K}Spg(o$uNdU6fd7Ff|XkzY{-a$9dMV zIq>WD%h?!s?Z%^|J(YR!ecc}J60-%yfk@kP9IG4)a^26NsqYeTFF zKj5>*>-`IOKXt;7)!>`|3jB6}U-G&tef-`Heh-4*_3-mu;P+SHY&ZC&9t$bu){K1i zJM6wBaNyw2?fNX*BOzE^n3Bwg?pkTxP-E&r<(Ya=sEH1@TZ~^!2N6JKvUEA@=#<`Y3e>|s79Q& z&{aO;zMg%1 zhk@|yV0d>Zv8Q3|1u7&yTFhRcQS1d8!(O1V>;)n=b%@wh=LA3XEIvpb)r-<%Sj)&0 zlr9c41`A({c}Qy!x%fp^;CmWdk(E;yWj!o9zHrrzIH<5cP43Qe^bT!ebvbsP-F4)stjI}e zjV88=wRWC~U>`J=i#P){I=-|dhMjyAzicV>9TPEPx#P-GUqlWf$npsBJ+d5N4Oww~ z@qMJ=TU&;scdT_|LzU;B&i8*K-$HBpMaYNveh&7j=#e6`mo(DAI!gxc|I(b>ZOe$u z_o@rTc(0F*Ez{h%7bpC_K{)Z~u+L0J@4iY7ojK$5^3Y%CpJ$F%1PVfWR&wOV_9DzhcUYPV=j0U9{4vg|F&}C4)BQ1 z@>3hPZg>K|(%x<}Ugr7Yr`KpZ5+1mW{YgtlV;|rh?PoD_K<597?^TO84iY!o2Hyk2 zGTJ{t`;8Z=y<&Ru4fC7U(N2EZTIQ1x`4>AFZxWeNn}emPr(cF|RC9V-X^CnNMCBK3 zX1(mG($qk56T(SiPxy19**yBVQ!r6Su(yvq14|sgAlp0sCZ1Nl3Hc~dbhToO?z_tM zF8&2a6c{xomrv!}$|nwwg0^GIQr~;(R6REK8Tre~4beO10MA^WU;dL*^?qok^Mhj8 zw%TFDq69B7$$308FMw~_ANc4eLO&~BLI$}XWE_)dqg;F0Z@pW2R*@h$V!gy3qra&V z97TeRnP*t5Y|?r~g{jkR=ZFVy<~{V`zDM(0<<7g$&*FJKiw|^zSB93|=9Qr?*7s%pX{pn&TqQb|AuS-YMqc=$-d#g!Jl>>L&lWP6NFX)XjO4dFTK_F z`F@;7DSwolCG_FSrQs6%<=oEo@T!}`Wo&r)<)Lp9A2}1RLgyh~++LlA+bcsqV_eAM z(F$shNiP4MetKv2x#RW-Z9kX=w>6G_l0R)~TNam@eUK-e+_RESGvC-}a^!-@$mAS* zo&P)3VjrwrBJ$j@kBU!zcQriQBiDsZW$cUg>b3v=ZiZgl%UTZelwlMU?XJMTE4KYR z{F!}aJN=<3*TVC$ah1rWe{d)|f%X-BLl-@azi!!nV;H?7d5Jb4|9jC1$dBY>ZAM?& zR#;747>hEVbgacOH+;BrB*^g zC3X7vmzgJK%@Qfa$nX>im1o*VdjK+*0G1+E#24I1C*H_ za)`J+dyY%mrxI^s-LQdrOXb#ib#tIm5k9Kol80J}%@V_}qNb$$LH4hf#ITof>}3L5 z*@n$DKEzafSJwK}uc=)Juix$q?1xT6>}!QhFDqZ6&kO8CD8Goh^ z@_F#))$7kr^2);Xp#Zo5x6KvSgmaRGrHs*IGtVju_tJLVFV7+i%NyyyOc5L2`0YqBS)5M^RUZ06xZ?W^3(d*4+J8up}xfY&!aadpU{RnTd!+=ZuC0wy69T;dMkSUHJf+EpJ&tA@@a-=z~lPL<5uxeJ6u&_P_^g9KM+f-&A<`CQ!n8=htG&Vf627K>@e`Z@j69-)_8V*XJ|hP1jh*inx~VgD+qF z&i*TY^OLSCzVe%{j+YM;2kYBe`Z@0P4LtX&%O2jp;PofD)~9m)XYCkYk><~LP_GQ% zc1+&e^~PQgx6j3qjn+Ep$98qqN5)#l4i&P8Bub1TMvP*|`NSs3mx#>fUIn_6v1op# zdFwjq(7Loa{YuU0|D8CZ8#_YJH!GIa7amnD;&{O~w`eVunxf51Z@f9gTrm}?OPkZ< zyI&sqHMM?aL)4aa9{IRE{!V0Qnd)=(&guDGDxTJy+JQ|vOnbImJrO^A@CBrGh>Y`?;U?#mT~vg_8FWJ%g}G$$|4Sk zUOveCiEsb9%!}sDe6 z&COPpIoTEPd#~S9*z{-iQF?9nr!(jn-imB20*8yiC3Z{k6cYncOcWn7ia#m*g}2de z2|2*U_=U6Bp9G#+>))sI&ZT4RJhI%Tm#G=&w*uz;@)vY&+O|@j3#4Z5?yA?bb9vUC zmwVr_!}HuoatY#_fad^xq6^Yuk84iXQ+M<|T~8e($1FS$Io^~-jt^wWF~5tUO^+O} z>6POjayIxG_18dKe_aKCnsq9EU%-2=;P+{8*PjmerCH$qso?Gp+~`*)X4+iz>=-*{ zTHgzo3+va++2v_5Q#0qhAD=tgKVz+c-yP%|Xgus`D6#snA3GDjtI)N@PHtL-^V#6! zsBNaskj;zDM)&SP_qJl2SuYF_`|szyx0ibd_(zU&z1Lsm+G{!52h(i5UKEPbSIpfv zhfcot`^e)g=suxGUsJ!gD72oq_5MC-bVlb63f(Du6@ae^J#=2#qpxRW(3#(jj33*6 zRJO_N(R5zb6?bIV##yv{o_A~DBS;jpxW8D0%^p1N)FCRsy^_junW?$}7#oYZFc8cGh<2_#e zd2gw$KdXgPo&N`1*eP3UT6 z0_dt9JGPZ^E_Un~^eE@vg%73MvD0YCJ_TdD`cV4}`&EV>boY`w zc&hgQ&F0yOHvKHE2M+oe{>V4CjLbs6ZOV!4R{JdUo1H;FexD@Yqla(T_R{ZbXQN+t zY5JN8zdMvS;<0~y9s2R^m7-q=xD5Ts)8$kC+F9xMd){}h^m~c6$Nu|ty6w8mj`#M^ z4ZCm0QDj$g%sgzf-rga2r8aN)Ko9XY6DKZu$Ma4BT!Bczui9&`mCGcV2x?xc%09!0jU1uFitn8Yh;% z&a6e3ggyieilx`MvGfinmj3W}_xoOWyesnLZ@YGpTX42m`lJk6#E2o6Yn|vdJBLT- zeJFqD6NB;Vh>eAdbMU3{C+aQMuJOBCeC)-=f9r3hDhgPSB!6$%uZW)xW?znVVq3J{ ze*SL!Ld97l{0_H3AAE?3Ym{ve;|6tiv1%7{G^M%DkCSmXPhR>Z##U!SJbJYjRw>kV=@4RD4v9+>%Dr?<*&Yfm|R!k=rWc*9z#rlme|LBA1 zy1<>6pJe~uH^Fr~{Af{=U%6i7jfNrzWCQYuV;7jbGS%OY5m${9SB>tm`7;;3jCcAt zbB{Sh3p~L3p1ba+^}hPYPt~{KAMZl%JkMNb#impB`NVX|ANd;V`ZIJMIx+JZvZXp3 zE=j!gFXRv5BjcxB5sEMek9Lx;-y+}GvAHa6CHTE#G&w=Uz>?f=2aYRVet7@4pLn9H z@7@=?`ab+dmueIFh;_6N3f$ZH@WUpjC47P$GpC;y=*Ru8`mgTyUwZo|4&e45_j~$x z-m#UoVPIFB#2Y)7U)v7eJBX)fjl_*F-|-H6gusW+p6kG0@0d8!V~u1mm~1E3`J}g3eNEWT}4BkR0l%a?f)9-b;U)k6)Rk zzgPc({SC^}-}Zk%e?jmooE|@ZIzHF_1Nt-cV?FkdS^BH}2ln^#Ed9-YAN@5N{=Bp& zmsH1~)`xxK3*oPSO+nJ@m%KwA@COL9$@};nO_M9!p_-J;lxL4+`d zEmP0-R&F$0;ZNm7oifvEfo$b@C)F^VI+ml|5TpOQd5s_d}!Pua{PJ6hA&W0 zADES^O1-=5*UhlkLpH3l&rf{iGfus|jJ~wbL2#6Q)}odpXJ?$3Tc`JYiT8Yo_k`~m zY3lcBzOTNOUlik+Uzqo4A8~Gz{3#b-kCLB~%X-&*EBnC$b4ZDrBX0XA$iPlxRnXM=5F25kJkJ{xS)ZP@0JcU&&K zk(VFL0^1)1Tcu#L>BM^K%CenKUVa8WwKwPcXMs)gBE`#CAGFs3_y_7SFRb7T(4?@!!Sw@O86QJv#KCz)<>=@9eMnqE=UT%L8joTX%oDGVper^=dEdBlrFmz-+w$nVE#p8(E0>dSlEMu9np z^QTPPowVimf6?}ZXTafDXKil2?bEt@<-#lAA7D@&!Z7=)BDJi~qv!3sxhis}0$WD^ z&fafi#)qyiQjQ31bgvCPxdwgzqS5!cM&B!+(R=?jqw{ksrSo6(=zMhB`0zAxt(w@U z%zNVS$TDV-AD-al!G56&T^_XT_>N%AywRoDtKLxr??s7&$uDsEPx;v5!FBFDqb1kg6K3KFzRs8MF*b2->Eq|+)T#DH zX?OPw?a7|V_eSD24fo7Hp)qSuHu1*m8}1ol&K%Mn>`Q_F{x2vtQPAnfE-uG*{Tcf$ zT)VbtF7(`hEy}?bwOG+-$>lY+$oz(G`rYE#qFUJ^=q0{g49#p`#)db7efk6a$@ad$ zXSUcud?fQAHxaZ<8%HO~4*y;Z1!Kv?U zesQeDt`FXKfPB0Qdgh3w0~vp@l_~>H?K4-chS)g#KEaN?y%pFK_*}OYFa~s`^j~C@ zqf;i@Iz?xKc6SeGw5tDefBDiKT|2FvU3;(ZLYJ_=th*2Q`Zj8>eiT0_R!l8A>_G&* zLmWC3sbH@uauFwwSn?-X4IDUHPn_=QFtV-n?$|R>}!QGP?ZO94TvLb!0zKea7 zlKq{^d#@f5x*FLiom{gY9eJ;@?R~70C~Kt=t(O)f>zO|Cgn-HAsrhU7)9fD_5*{aB z^My{mbj0B`yOz4mclLMj(E@0@$}{JFFY|51gC0M6I=@VRul(ZgWA;~e%-8u6{nGYV zMy3*{oks4)bYIHUY-WA9jkUHU`ytwi;dWF~(~Q_-=OSO~^~FAuhnVa5)^{SGc^SU- z184B9*LZyE2RwQ<9%FCu5@L&!i4XJML<=!T>0agojgKRPlZjEs;M*4V5HBf(S1#d5 z1*>`Y&TB$#NqC?WnI)e6nBRIPzZ|~aZrdHz(V36V8Bp%n97}Z*2Q*nTsC$-i_Rdx4 z1nq^h4PHGHbFc*I4KNXugo#42)Abj|n;H zfZq>oV!xJUJ#!oXoE!19$r0IO`&G*6k-h&6ysq_6YIg0j0^>p#>nyg-@Z40%9{NAy z{s(k_6ZeDMpUfFz8Tb2fzq|Xx$l0Zh(tojvf>7*;m5RTOO&d-9jgx^?_)R-j9968n z4*h{I@+k76+JOC%#I@^abI?lZTt(SrKXU=C-(o{n7Ts|}sEqdez-4SXa{e~5P5anM zJ`eKwCZBtF9-Lf({0IhY!#=N$ug%c$wT_Oj_3C)|LOT9$@P?5!e?McB1XB{2+JVpS z%g?%3zVU3Zy@v0F-xEhaRb$^0=%_;W0N<`$#f8BB8u@tWz&Wg8Xure&;&TynQ+yjd z2rg@g$scYcKX4ZMZJTYwbVh{uBgna@U0-_B*d2{KeuTY%+V{?LZtcd;vG+>96VRj$ zn(VQt-3U!|Mw)D74s~84=<;wq_Zh3^UCQ-w=_4DrzU^pz8#r%=Z#cuSDO?Xfpr@Wg z|EOR6C+K@4eYepU`=dM8LF?Mj@!~15NCoY61&V`0Ip6y*O4J#cQPW8~RGCK|9Tj6Ed8OALd-X|K)goayB zr(w-=QJ;tVa&#XQ!cR zL74cGL&N@};dE&D)af)F^mk}j;l<;b;BGSW0Bm#^`>%YC z@M37Uhp{XIN0S-LCVUZiQqM$rM(2vCeT?Vgo50OLYDfUr!%bgz{%b;PQu zFQ)bH3idj1J-!3qReRRS<%(?Qd}q$k);hV?$k(%PRP*H> zlYJKqF<`kGo{1)bXD@B4bS^=pC6yQqn_i@1U8wmUbiq0Ux0=c%5jcN*U%zbC%9 z@t@o}g}F_d=X&8bcm=2NJ**F7pUyZ2+L$pwhn_L;jH##50RAU327W7k>>a~j;+`=y zaDU?a8^bp;#{eAi4QyXVXAUU$fwM6t_tJ#(c7|s9n2-Fk?PGdrE+6yfhv6~g&h;e~ zi;*2nEQhBKFgDsOR-Ov-q_y_wa&QKZQ3H(q*YMy}aIl$LRpPZ) z$dzOsEx%Fu3$e|CRMN$HEAL&B!8f!qIH!FN&Uwc0&3Is1!#}?>abDxa`5Nwz|NA(9 z5jZmWW~c|}zYv@rxaG^ZIwS@y6d#kXBcG=Oem}H{^ERP{<_+c?x;^L~=IUwd8H174 zq2PEJ@>+OCv-yFM~dEVgADQAxbB#ZI6MlnAfL;qvxe_Zc*gX>Q9<^s6u zGsm3zir+T#_rX2$clnvO6)+}b^Lb*5Ef+y+oq_O$G1Sed+A`<$?)nk^ts4sQZgfajpI6aFwcyHN7xg%$+Dh_(npX!l$SXK{%nT_lHe+aPOyCbx>D(E?y236eqrk0 z+>itp?a<$yA88Gt_ge4!qToIT&J|a1;{fiO!r|AB)ZdRzGO+-7Jv^O%@EZZ&ZQgq` zxju`3@E(B<2fg=ZbG?Fpoma|PBBnNW1?wqJUi5W!iW4|>>4NsW-7Ak~j^SP}06+bK zmwElyC-?G19Xu)8>d&3u_Z_0x%!hhu3+`oGBH(}GMb$rF*-d)-L4TAakesaB39R0K|Pp?+^X-DTUMRuCq9n?V*|cy zj2xj$uo;oTyo(&6;l%5r;79p`51vo|yqh|K2f(upIx_3^(I~-j+eh+-i-&XoUdtoOR+r~pX4lx{W^9P_JICl@P>(_F)rnw z8M+mc)4kJr<={x`YooDw8~fzd?N;nIH?M97zQX`~2NyQQt=#Xd^$^cR22K{-Fp~aM zOCZQujBVg=H#ttbE>VsXH44dbss={~IpaADY=TL#vM{`-v1p8j7G`{fO}kDM+(3*x zq&P$mf3(nwj8)_8i5W6hGbeNS*E`mweR9oMU&zg^ zTkDL~->y0C-kB8D6g9yL8QDYWkt$?j{$!0~wG!C~hJ<(>aZrQxPlFiTX3sV6t73oON07M~x|1_5N)&g=`%s{<;Ih)jepi(>CWiHIOpZFQ@zB@- zja$BiXCq6#_9LIMpUG$J*I9#{ zFSsCZZ}P6pX$-S@XSt(y zMb2}o6{`7#;#L}q=lSu%nQ9pOsh3K7BTxHo!Yu+`%i$;SPO^Ebi;@MwR=j?Rcd6IY*gF@Ll8Gy21gFYi1(zO1;e zV#|s#3lI1TrpAKVO9<|yTa`b&{|I|L>X8}v0lFWnflsNMT(X0japjKecy)~7U7mk| z=M4So16m^>j zyXfKALU5L}QZb&3b@I7~&zNOoUAR|Vv_Ww|;HqMNR?V23scYedbJu5?zX4|$IAwF9 zv=N*wtarGuH8`-D`6%#&TNH=OH*vU9#b#Ib2|Z8yyR*U6^7mnSAQL9mE4?t~IJk?E zhv35WEnw0(gtO)Izq^0=)lYRTfATk7dnQM^3Km>`A_88b;3Vw9M;rJ+|2=&WT%a3f zRH$EvUc08S_L~I{!G67XnB(9hre@C zD2MicMn{~+!{>mfHqOvYg$wGgX!VS3pEli-QKQyx6QPklqr(|*0frl5y*k2^4B<8k;Q zsEqbs6-@7g#}{P6^o{H=HF#)O>%o(7|D&bjAYbk3#f%hfp})BADdyO=c%mq#X@W$eu9_7#1$C^Ulh{od!; z-=fY$8sARI4pY!$4+=dnW%6y2bk2DfhstQ5AgA+8@*Qr)?k^@EsNJq9p3PQq)_NLj zX1xQtv>RJhV9w5KlO0}#>`dmIx8 zpJ(5zjs1QG+`F>Tnf|?We#wEe=e!HS<=9w5=lg6ruM|wK+zGaGwEJJqgz4ribOxpv z^+{a(Z9EH1KIw7UY1%6v`AjfrJz4(N9BjDO3-j^0RHs+-mG15j;X8e(F)AOeB0r>g z_WAf&YA64tOmiUOJ~6Iq{;V1)$Dislv14<_CGCvANguH__?FY5=``k)%oF4b%Mb6^ zL0p6VWO}Dr+lD91JZ}y2M)*ZFzh7ov8rxx|<`d&o9pc^0v&C1s_b~Ag!J_{T{D(&T zheP-s6Mg;6+U5n|wS(Us$h58}*TPdX@!9YJ$6UsFug>akWIcEA27`LBwx|# z?1lF1d4BMxUG=Xe&n$C)B=5kh53;%kPoQ#Rpeyp*Bv5 zSDz=>GM@6 z8`#otSO*R#o*NFAzfTgoGl4?W%fzMWh~ou*A) z^!co}&v%$#x^kU>h9+kL`E_#^-c`;5zfJ%8M4mTYWW(Uvp9=6H-8Kk3B+wUbTsg-2 zrHhXlf(iY!gLVmU(#E@bwN9+5-v)$bnH;(;-iF-Gjxc95T z{hFmZp)0LV4G*oy-?a5DYfcUMp{2{5^9Qo<`BPpTfuF2=PP{C<96opOqj-vo8}a#h z;&brQgOlapWCDCn`y{+|HeK;DIh1FzJFdPLzN6%C%|%9o==U6GW%8`pn>>$e%baV9 z_inKKb$K1&qc4#6|ELx zr{QTsGx*w#SH!?o1@V$Nd{7M@;=Eru-i7GXkMzTDfEQ$+l^+$~Y?-qd5*3QQ^yUw= zAxmxD@C@=q96Y6SI1|bpAaB53gL?UsUG-DiI1{y%u}bf5hSw?rsiC^IjceE@H;2vm zr`WK0jK3CsFy~Sp;h8u2-^O!{<%`~XZ*%>mk)vkocYQ*;kfSL1BFa_O{+BIFZ8^&3 z=l)UpLpsLMb(uCd=Pl0Qs)e?|toWwK&+W0fH^CEW_M#RT#|O+A&zZd2*Wq24XCugh zc=%fJZY9rwe=qMIae4Y&cy~6m+H_{#9VFh}1bt`!f8*W9K5p}_;oGhBnZdW0X7Fv4 z`ZKYu0dQyM5uFRqJ_DZ4nP&~Z=AO>44GzD~dhh&N1i$_$;o;W?XfrF2s?@bJ@awa` zJ2Suj)O*k2SN7N(wMI_})nxE%{#p2SR0h9h>irS$tH~v-vUxTezkc_BGx)WNv5gC) zRx9ot3qViRc=oj_Z$oQt?bts%p6zd{?{sQNIJucY^!S#`kJazu-__l7@OgEH%y0g~ zSP)mg6nXO?R#vs|mo za_xaE*J`p{yD!VN#aXU>J@HK6dg+q2iEjr=-2oJbeVJyyzAC2 zw9f&|Zwk})e%5Q4$2NP`@|wMCdEa;@<9s&WDgVdL3-FoT<7{JlD9hM5pUplmt;Ie+ zta0h-=ZAG4Ko8C2oReDry;0d>>~I{rmUt6cMJFV&VeQyaYJ;Q>VM9Byp|210rMeH~ z+}m9>l==GLM%4;7K1G)N{QNWI=MVGb=jVI!^OY0I8sPZdKY~^V1K8gojjX?O?)U|v z1a>5hy-#qCSOU1U=OY2^dDcIdY`oeUpLcUv>asD`Gl`R$Yv5lOtX0Nu%55qaJ&RaV0|yasAQ*J6bhLlz8Qb4~ z3GLn7MB3-U3mY%8p3cAVQzefL?(Hv1{dxcY22#0U_C#COGj0yn&(WWGz>yCeS{ruP zg6E#slY8Ukmz7?AX@45OzmHu{pM1W1Uwm=d{8FFlQ4H&J#T-o@t6WzVtZGP`(=I!`6DpS8X=hwp+}de^jLtPcZw zoX=|DuL1u18DA~qWrKyQ@Cb zXnggV)OkK|q@KCKO8L6+7GU1P|0?J)9lzas5C1K^m-^+Jvs`jxXbyF#qW*m1ME03! zQx}t;26dy!RdWm{aYu!Z(EGFz5BcS9})u%78E6flsgr#!UEJUb+H$ zXl@y${$h-M(4|)G>KyP=wzQBOByy?-<&v*ii&?#}@uyxGp8|(lEqmVgqkfLRn&-sY z{7vut`KCH_3iM;=d$!YTs&~mz|bz@;oiPCoMYc!{>?>OEL9_Sw|GJ;q8V~1{sGm~BnZGgi|Fj=+4z?IwIFCBz=swLIOb!J)Nb^Wz z1154kh%Q@*-IFL3N)Gp54l^!lt ze#1p}E@X^n;Q%egnrN^LBC zt6uw#+HDj?PAz;H-3{C3r%K&uj$l}e#*MHI7eqRF<-~-lw)_6V&AL9+iwFK zK27GmNH_22y{1h!ZSZ%PI}pRUB(&pymWaV{hoF) zbXOevmU~S`yDOb`<-SlW?cy_Ob7OBC{F&?H^<2BoviIDtV{b0McdG4lt_L#OuHxFw zPTMeT`TY!S!&T4*-5p1F=T7N;#*Ar_3u{iOiMHi=%vG!Xp_$;-#~#h1zGu+gn7!Vrb;=;;L!$pw?7m69^y-}W3oeAur$+dU! zF`f4bAIeMol)jhqowlFg`&?ZIAGh;;r_Q;o?jL&lPmFJ}Jr?iyqKkMxxXyKP&F`Ce zPO&S!Q|EF;&^?lwudgFlj6MS8?Ca**SNXlpjA>BlAn!-cspoNvea`0e(h^`Txv<&_ zsXx^?XwmqbaYbrv93A%;q@8d1GC8S=(P}Jy`0)bZ3fBRP#>BH1x?|<}5AZ$WzYssS zAjCM~vnxXnccBOB7?VXlH}B|6n`<@_4_?9f^1!QpN08I0GX&RT1FS(m-XEB~u4~+l z$Ld|YtVd47Lv07q(>LenY)IBL&}-of%sY=y(mD0;8GN^AbWKV3dDhon$M1e&WNArw zcEIFsQXk~r7&!R19P5#=aucD!_rZ}592EsVmPYp)=@0so4D`@}-~U5DK46dVt_Z$y zMDN}XJs%kX)SvDbc>N!*U*Ot(`4v%*UlHJW3*9Tt6(3)1JpfZ2!Awj_`m-BG(=YgJcLH#9jx#zJy`&G7eKOM#g#}C?9gb)5pUBh0#Lkyva z82m))nm(kt;DR|f-rwDQ9f%w18yzT_c*_5^UDW&YU1@(;?LX@p*15TV)gojA8oTs% z>F?#4Fg^}>@%KgtLi54s>7nT8Vc7CQe2ijZ52J`ZjA1Pu`|j?OQ7q?^6VM|C(78Ck zv(R}kbRG(whk>8M0MCNYQGwI;$o%|d@7@WEKR4cE*Dvd>e^{z_<9Av6zPH~RysoQk zJo4Q?kh+Pr8CM?6I6Sow`vQ~3t@pZr?)w|f-kXbh_GgpHvN0W?iN^zis zy$Cl1k-edE1t2UXK zO@3v&Q?Jaux81~S@=a`ElM}O1n*?(70PoXUQy){SEWhb9KY%`-J`>1h8)I1>4wQ@{ zXIgzN4_hVG_$h+Jt)Eci)auM&mt4ZmAm&RhMZO3 zQ*q)_<-7wkdwh6D?{jfvCxI+gvDUU3S)O=b|3=~2^(!aNu#C+bxegl$&m^$j+G}$g zbc$lPT)JqC4dnCt!RsU|_UuyDQnmJJelsThp5)MFDVtI?uipsI2>#*F<0Y3CK|AIt zT3ib))_G_l852E@)!O?>evMB5+rSU>$e3tx2edd|VWs&2pTPFX5BScz2Os=Rj&)t; z{ac;;Vek_Jo;LWn1G&-O5IfFd)*{S)Rqe6Soahk$wmz_P;BWgGajl6~DiXv-Oa}i` z(QVVvZOjMSW}@3>q1$Go+bYm)^U-aUR_ZO_JkB1uH593P_sA`c?^al^tn&kx{*sJeU@AVquFahvY z3>`9c+kT!u#`72CfX@cI&g*(lo!2ghF0OpowD@ojEfgcpadeK$|7P7CIavb#Pcr=P zuS_`n@7}Zd-*0q|_(e4m)g}yYN8xKf?-WnJXll6ln{JdGz{63-6N7%lT1zIOlN1Zh zLEq#!x+HBxUejAn z->O|?VJFgR=C)Wpv3t?u$KX@;>**}~Ec*0izfI=)1D1stslTz??uAUeb!De$U!5{C;R5JdgZoUvZQ+S|gA=k)BnOF*+ifN3v;;s5( z z`0%bSMrU5H`E`)_qo4luJyEJT3pJ%?S}Dz~%6XsGIh6yH!+XM;81o8rhl!)wwS+YP zXm4OXL{4Nxwt#(TaoVWwD7q^#Q+uKEIv-*^OtB34<>m0V>e74~e60gdVdAyMZ~V?B zWC9_hwz_Q-JThIi_zUU+&KMUkr+bhw zwv(T-Yr*IfufjCK(G!gEcYJS~Sz5xn&etEKk0gHU?m^2}w@t88d+0CuU~%YIeD-;+ zUnn`~!PUts@l9dV#lRr`NWvTKo59-|>V<5_mYs=Ll&erKoij~1U=GVTgfHQ#4ZWMJ zvhnpL&dX2?OgQ(0tJq}mBW;&c7tQjwicSIiIK?l7>j$VI5?%|Oz-Q(p%**cn&5`;F zXjnn)F!mJh+R7RS`?I~VL&fftPjcyfJYUQ66QL2X%>!=<;Cghyyc6+N_y~jib-RJ1 zZMH=&jFoEZk8BcCL^eytK1Ey#ec93*Q*7>uDXs$M*(RpAvL~iki*G$Kka{KRnXAw) zO1on1+je7$v}>c?8rqqd-y-s+iu2R#+n360TO3{t?dAFb#ygCd+tAX~x4idW<=$)jSMeM)S?s-ckn1u27jbVaHO{^Fl3efPor>di zvrp7}?+Ewa#OG4|w@-c0#P5~YXKFDpre7{`^5V8R`Jd>t*-ri^GCCx|?*uxoZHJQ= z*8&cWjw|S#+v(&-EapD+_vA+yJ*T|5+o(I)1`c}i;uZt{IQ$!AL3T_33Hrt!J>5oM z%3G|)|1b3PouKda+RH%SwtltucO~dkYh|up9YbFU`U;lT*fm~upif$W3tef?Iqmu` zkMn-nQR6GL5GV1^{zDo4PrsBn5&y3KDK+z#oX}UkPHjF%C%M-aaLq!V%8(`PxqO&h z#y-eNUwHLPtdrlqeq^YS-0A>*bs)o%U!%unA;;*s_zH3%u@R$v~ zRxh~BQy)3s#CjA{`?r9-UsC%M!|0jFeDsQAOI%zeO*|6Y0DZPVd)xQW{=wX)FO$Qn zG45bpOyhq8T`s?6N5K7E*mNns-%uN$b?h+l^Mic8!RM2{^Iv+>7uf$5Y@6`&Ebs1E z!+61=o16af)o;~9oBb|qf*}U3jQ(@rOoGFXHNCWZjQ9MOn9RW|?D)an1z)|9`P6j> zb)ERZ!FT;%tKqz#-x5F2_ac2KexUv4Px9Oj=ehIm{>qKt<+)#ReZUp$)1>Ws&P^F` zmHoX`->6;MKy z^G}JJ#wVbw1HMpvBKD6x_zBvXTm#xl&hoe?n*LwRox{`6H{-1ovNT@4%7c&K7fyrr zbX@jTCvVKTZ(>pXr3)`@`q>S(e=a|GA^lj+pF6)f+x+POG|Zeo z-Ou~p%lxU)`2W50C(U=v9BQ3ie_48W<7#5?s_9fcF!Vuk`Er;Klbh^v*{V0se=#J z=2_QU!+*4Y-7nX5edD9xad05@AC~n9I_VjGKhAsQZ_Ir1Uwl3BpCRC4M+W`fdbl4q@rK@dxWR#e)KvIIF^BFdYRp#k z=b!qvRRbEk7h&5gu-}!;Ri-mOY!~?sE0<2`8;WDg68Nx**~sJcK&l#>RD(^@oS_5T zuNoB(`QJ75#v{m_bX9j1wQ;NZHg>L{_RlKhig{6l{X;iXAGVVHES0{SsAT~TC-RRB zN5)ZK-Fpw67M{$1758e%*YVz)%60ToxpEc$^`p!S$W=fO#+({9wf8!6Nv8&Z_B^AfDRg`u&D5e1PCWTQvdLUUc$e5-9yAoT)zwrw)&_|miVoq+C|XWg!v6VN3N zznB_Z@P?_eg^ds#ZeMNWU|-DdNq+c+wUs&Vc0ZlqJ&&PdH=%1EM=y5p{)xW)&OSq} z8P8jNTl@I>wjT2LX&rO;z5`#Pw#Omn$5+TUQ>UZ$LVUSOV1({@)PG3$^I9*b-HWG| zJruL@>X>`Jg73z9ruISfYr5(6BlYTUJ^gK@Kj5Mcx7B$C^B(DS*^N?1ud8<3di1)5 zUe_Ak`US&nz0UU=ZvpqnM0l}yj?X1Ff4tMuE8C`a+Y&bi($2H-L8BgeT^UGSZsoV$ zW}Wz%V$}z+FOO4iC?8u#?tE(!`$X0mZVf$zGfm$Q>{;_;~N8?ZKlRr82 z75r~-yTM-5H+JzZ@VCyXeZQevv2p5;eN1bGK4J^#zWMOoRMFqke#KX!gYxT?_c6tx zf#%cr7}sn3+PBv3+E%{5%6m3I$H#zeHooFvY-tPlNT+#z(=Rxi!iLLk7sN(|sXeid zKHdIBN5yI+@-_EX5V&ggA2z;-MxTrty!~MZUo4Q8y@vmw5!n6Bp??2ep@as;s zX*G87sasQ3cfVO5WvoHqQ=CO~v+I)NHdR^H*FHf_VeHLwa~QY#%=h)o%q+tfa=CXmF@=Y?J{3FF>ENOg{;Gt( z?sn!j@=sK^%FdtY+jI*!vFDD&wDN3!Px!l&XYK-bI?K;~rXRUi%DKpIy0+(;+@@CU zPrAbjZT#U6_b>b5b6v}R_$U5TT^sM4v}U7~Q@2s~PEA_%=&7ZxYc1cgg#SObJlec; zwc%IvKpV3C*vMW#^8xzReEKmbuVzCSnd0{l`h1jJ7v-mhm`}+kKfpEl*{|>^JM?xX zu{3y8yz1ps`H!-NqpqWUK_K-po_GDHv-yjYzjwO7_}6jo&0l11JpS3my>lDjWiGivz=VKD zwxIcb-nIA6?3qjmhMwO)zdTQ#z4z?3*LvS~z3W}?ZLP)sNZ!HY*W2F>;P=7G&(Wye z)zv#yawLNyZwz0@d~#J4&P5>|sUBE`-$g~X@NEyC%j|7Nz|+P4&V*;RB=*w!16ve9Z3f7`OW@weluTe7!hq~wV4IR1|^{*X)9FwABA%kvug z)WuxUpMUjUp3zbI^RM2^`~mGmN4D~*?pa@{KJPT^9kM>i zyIijK(cT2!i7qexY1O~Bc!k6Xgs&e3R~2*bf}I%A--DDc9I{uU;X4kygefN z^z1-KR?iN32F_O$elcnvyJ@Ms=U>V@z(1Fy81l;2KdkM*pE3u$^QC zZq|L0dR4qQ&xjYN+2X}=o~<=soT@bZa}O#X!{uRZHj+n|%bCP6v?+3PGV!fp|1}g3-^0uSs+niM{TTJSBKQ?ss!P+eRxDe@!xE>$h$F5lHgrzqe=? zbgJ`y{a=L6`+Yk~fBjs^-_ZWA(qGA)wC#oL+w6jN@Q%{))-tZ;5e?{c$JZQ(2|Bw8JmEqlP+bnajv6am(EMydC~N=mIY-7`!KU6-`CBQp)uSvId;Pw6s;f*rCyOGiEf{U2nb6#m*|9s8{ zYqa_OU#0)u0xWIme+j13q>Ff3F_d!1!ZhtiS){?*fD*As49BtA6&ldsX z`RhaTqMiQ#D)_ct0KQEZ0pFk6fX|puZ2B>CR-}Ec?5AYU4(v84?}mr%{F%YC-M-xo|Jv=_40*QM_q&CEQ{iX+#s14s&l&FisTuA(*0See zXOv>wM)LF&aBGXF@3Qwt1W(_75j2@?qsbp^`oyuTWxR&`Pri|weocb*VNR-cYTy;@ ztt)%Z6<+Ioit{^jT`4Tn^~}k7XxS0;%=}brjiQH*``yGUeC#18wv(YJ8FPq-HG+}9 zNga8!jPF!mCm=r$I3C@t`uW*bby)4Sl=YcqStlJ?w*^lI@eFJ&cMfI!?2j(~?#QxE zVxKuLIv!nud;z8%c_)@0ak2lf;N}6h${|aS6m8n5o_Dios*T6gC%)t2hB-t=#U(Pyj4`-`ljXycM2l|zj0=Q7r$-O^=CRlDLVAXmVh zbJ+3d8pfHA+^xv(!B;Ojx%5aLbrfxSw<&MdXF}(CnMa(dd@H;~AFqy1Up=^F>5C21UVOC&-%&o=70O3z`aLz-kEeHk&JlTLO8|XH z;uNBDUGr1o3D_Ev^XpURI$i6%oP4zac7PL~{JpG;v*Q2ao4_A|4QRyb#W(mv@?!#* z6&{iGfA7#n=Cr~ToPAwrzHr#bKQwA@zRrMl?fH`iu4{WfOXFR8 zKFaYn_^kQtlq*r?|NNX--WgZ7uz0j@oD2WBOAkzTk(<~pEXI2U>-HqZTk-+&lsM5Z zB(05~G+nPArA8x$VrKjA1A+}Nb)Oq7QU8!*rvkIe)#A<=EeZL zvfA7qpm;xPKi~m}$tTv?T7dx(e8Tf#@*n)z7v!q0(AZa5$z)eIBbR+4a2K=J{&M!* zN1s2&86>`i8T`h6Da$kTH8%d}r2G@M`QZyq_n*U-XeKALG>|BGU%i2WP4V z6`y=5`MW{#cSkcWB$p*c&aZ&S8UJ2?miT*|^+BG~HEsViVuILf`!k7sSC3{5G%>S+ zp2j}BYiHc|W)X6>)Rgl|Pliq{^0Csup@8#&b|cTEe5J_hhm5&IWV4z}Ua;m~g9jC_ znBR(gYi^F^%;lK!mAhNZIUg_y%uDR=7+W&Vkb&f(n0scViwrbkQU2MjW#FI4W4Txv zcm@4+AGs|e12btO6aH=`15NmSM?LOHdWg+kMI90owE84Kf5=$qFZ~-2PWZJ0tbJH) z>)%sFNk%^6f4Z{I6m<`mMh2h~uM(LsDw8qTsk~}j zCV2gu`xxu{>x#+eTAo3h8ML3FAAm-zqtffQI`o`7j6I74J~`)8>SxXRinJSJy!Wwp z%5T>)F3Hm#J&C=Ks9Wj@(wfY!`Tznz?dV$~W@g{!nUOav;fL{)0>C8k2u;aB`)<~?o#d{xm!3+zpAsxrdHPysx zs0}abZVxa2*YsPaiP!rVkJnEGud%K1^2=J{6RF;7py_ukyvB4Kuiy_%yvBy`8hR1^ z#X80k$M;OU7Ie92ejF%xU1j7g%XqQ(*&6mIO51a}H-O%JZjH%{*g75I#YEy&(oWI8 zxw5Ci8`75K<4(FNgy)h@o|Z8;l`$t}vLeRaqu{ybCg*lF)@);;Wvs#b)>xA<&`5rQ z)MJ+wn}%*`Iym%T)4?GPQDwzOiLFg)M<$>P+U3DS;M)Bi-~uLWhHa^@I^C(O`CsRB z*B}pA$JSG>yAoXPT^j!}u23Hd9^`_wB{Oyk4&O8T2$^B;BlvGc+FjpMd(uB|^-%}q z#S-Zw+9@65$`+e$()VnA(>2sL5-$?j)!UR=k}D@Nu`@K7JJ_JXT$2WZv&eA^_ZB(X z4$kwyIZ}ow*;waNvT@2K;yMXjUEgb8Haa5u`NOZ8OEUV|aHNmJaHMZ97RTGAU%zkm zD|EN_tHO2s&E9#8{VOe8Z|T_B6MmL<(nq+mbERLuAL`eo5wb<~EwDuP?Mm>TdbJI2 zldoI)_8ahXmneO!__(LR$G+93tmz=WlVX|Ehh78^gD0^~HSbzH`~&cG^bX;ODU6+5uM*v|35yMb%IZC z$-P9}PYA!$PSKU%pCP<%;_rAmgg-Fbamc@sJ&Of@^5i4&A8*6qM}p^=@NbJfn*Ja1 zyXI{5t=snP9jXkn^Q!Q%uKN9Dquw0-+R zW2&f!E4%+K}a zPAX&IGNEOJ4!A~irP+o)QM<~7r-OJV#=+l-u58gCPNK7KLTBHE{_wD)YjKVn8xH;9 zp$8v&^N|xvj~v2=+v!NkPy5o5eXx^fP6KB+%JUkX=POuS^$W+N8QhmLXU$B_bWd=2 zw#-a*y8WCpytvSKUR>yO|AS|lAN^lAr0%oJ@x@KX?r1o1plS1@&!mld2k%1l6sUR* zwbWCvMe5lv^#J2ynMctn?Q&o7!jc4Zu7WMUwP@5qeewi*t4ce0REjd(hE!v5b#ZtR3Ab`ZYR%_-^6lCpR-r)R?GMW5m7lSBwenkK?l+3_s-j zJ7cOw@%@{J@E;%Aw9yz-{C1pq?;0ud8u%jJwT=%a1I_k2Cp$gH6{j zIVo+_`~8mWa{T3aGKNn$-A(L)w0M%s-N-e^Twf_;A!4kpNc&S)ZzgtQx-EXh(M`!J@hv_4 z;KOfLEL(QuaN>rhqtM6!u0o^54$Zw&a6s-%1xG12jCj!OA)8dW-9AV5XWdy>y58~V zRPLoO7N5^r0YQEFXi? zD}f^wy4dZeuf9Z|_B)i_BsN3;DrakbYmCd(w+fWLCAyfUd)0xbH7=Drl6?F&bgqY> zN0f2bnD**OrDtbeA}uDt1FpX~4S&l8bnHl*;%#W)_7*ADt%mI%MoPWlICzuzEpi`nn7&xZFqa75Y@1=8;y*>KK{ z3AdvPV=vl{`r^yxUc0f=EMMS5pKWT|bms?64{bDjf#U0(#o5i9hAugRZ!q7_c$>xg z>Q%duaoiWdcfv%4cI+2a+R6AXPGIzNOyFS@QnaC&gon|C6|mv!5OU!z-o+WU^|I^?I4 z&9@t}S;}08Y+iG?Lv{m$rrU!l6 zNy(@mS@i3u9wfX<|G3_at~)4ui1l4z_5kb9rUKhc)}ck(17pZ}v2>Dq1pbI`i~087 z_NSu%9!~3dwRbIZza#HJFzeO{?ETi}>5Li=#><*b#%CY>NQ3wV}0Ixn8- z=qz?ug{2cO?#|f-oZC@6*W$mBPP`5{EdG0wGU=<~YpM6mP`w+ecX70Ow`uxoQt#?m zldnVdF0<9UmNKIAMU!ptXk*%&sou5dl>ce6;Rt z#csw4c1lG%cFN&MJEh;si?LH$>-YI*HGS53B@j5emMvf`F zCZOL(%B`6_9r{Xvdv!vq{{EQ_?!}Z*V+5P2)fhQ%_&(IF;y8UF*|KJ$5O&n&`1p(fK6STFDtd;_q7(ORO3>DK_BD z)L8co)FqEr>5Ro1EpD;RAK9`$0J=ttKQci6fyA9827gUjEO`X&#NW+% zyZ(#TV@BaUshjcz?7Bp}6N$SAWz6KlAK3jfSBLmxQXBK~%$M2U6S(qyt@-X%g{R?v zf15Hn{o3ri!)ZSv7EK$=FA;|!;NW6E0ck7v1Muhv9vee=3~39GSIHd{JUp%Si=Wx> zSWFqkfAFDw{HuQGYxKiUEF3y$qqg86ewn+?zCi!6ALvhmBl^p%xAujAgap0G)!9z=3>+nK2<5JgcpK&>Z>=f`ist4)?U-FwnxG^}KsH z?L8wNcm7wGHt%i}ISh?N4(Htl4#cEpCWdgBKwPTTJd)th9Rk0nHT+dWLVCm5|84G- zmu1wscuA;lqt&^1k*1%ZJR5MflI@3Vbp|ODbxz%5%u8=xB0a1*HS2r8jlXQB$3}~2 zbLuS){eOTd-`A-X+-q!bZ*L3kYyhDdUPu`w z3y?MTaisK^D-GE1wP5etFb*)_h`1vD$~PcTX(-W317R z#Odk(5sTTc>a_>2J^TC5C67@265WVR$zC#D%6}_u61NWm_ZHqSS;yIh8$J56S3SDy zPq`CcoPk>+xOL;(u3@;<{13R{=UK}jC=Rt#=MQE;1X!|f^FN6Kf#KRpfI=dMfSpGo*z#cx#E4c|6; zkJ{77rR`56PAO|EioKSy?8 zp^>LNFcDvz+LuYIFY4mV_TNjcH2$Yd&9OgoAZPZtocmqpixyW6&S3v(*}IGN^-bj6 zT;tg8JEYC2g5Gl*W$m(@hjW!TKsni)^kvR{t~w-pCunn8{8G|4^krMIkZaqb;mrmO zn@h}b-oY`L_>noz@lD(1mFlNLqm3G?4NnK<)n2oW2pw{__z-V2a!C$aZFEqFJkSaM zR44Rc$tU^Bk?kR$M9%N>oBWWbJ^j4mh4kpW;1ympd7<#zj%?YtT>5cAa)!R1wdiha zAsK7d`UH7bnCwvbf^t8vFhPyE4cC%;F@-$q0)v+l$XBpOM-{p9)tp1deo~98DPP1Mcmj*Hx2oONT1fjB z%UdhYM4!*;`@?CI483@|)h`|7uUYtV#I{XubYxFLC${3;4>LZkIJfAW5*Lv?5Q$kY z-)O|FclR)2t5@N-&LJ+6!LyW^JZagHhLc9Fh{S~?W<8s=XcDs)U)mvZMVj9y&T87& zvS+fyO*XUMOyb;*?neB2@^wc1dTz3rU-I9qKjU6v=@J8(sl~Y`2#s_>At3$5ua8xh>3G|65OXb-0@ta z$n(Q#sRpln`b$$5br64Y9d0VZ_Hh040=#kuFoO>;pN*DZFjepqze-`8`;*fb;P3Yg z-^peR=8p0=IUHFD$Q}41_%X4yJs$m`1L!F48FRVVfeq+14a5*;(~n8cBz%`i#WKfd zqQ9tftlx03XIAvNzW!}fk2w%A*YC0BdO2HIEC2bRi_l|`A@y%$=#g{%!|$~}*Dr#W zk$TK5Y17nW3N2cvMVUtq7~><`qICyz(`Q+Ub= zXRY!-My{#Z$lO@O+?f6j^CD|!WM9+Jy!ebUFQ!DF7xzn_ne$@mIrenA+ng8w#6FhH zi;wM!GB5s#eOr+)YF=Dz@TY$u^Wxpii%%Kz;;VlM&5JJX)x1cZE%RbZXkNUN^R?By z$oFbq>>FiXqvRS^W!B-gPjhCb^N) zPU$w}-4!8uzbUrh`PUs?RL+siZzAiGSQEE-*6ZXie$aI2^%E+WD(#HnL%u>}IdkZm z(?;3rH!eG}oZO1d@Wk@#jJzu~N2D=FEDg;Ok`u6;dapmQsp*jq4m35~VdO?mJ*8zI zq^!&r4(?^oXEhfzI^EAfo5gpz-1Fti{3`9*^+t5MinJSzn8rO8eL84Mi(gv&09mg& zqUI91m@8&Z3)x-FO(XJiHT}oHHdAwXBl7_~@PHM^$`<%%hksi<3;)0Tp4 zwQwh&q809a4IBRo3-=D@Ybo5Jt*aE=+sX|GUg3AKITh|RH2rG9-P0O=hYkMA1^y?) zzb$^8_@Df~y7jkB1449*vv7~_3;1Py%UL5o>+dg^GQ}&#=Yo(R<71i<}>@6IY&e;$mOTV)A~E-H(`s+MR!fz z-g_eO?tAfgPj0JkdmDY*_Y(0H-)0puD>x6nrf(O&5b}c$ zp?|GB5aH>T{E`)#J_xvq3tRib6K#B%+7|5d4cI?ld5L4vguV1>6L#WYR(z&S*k9E2 zFB^e&oC{^y_8=5(k++w5zl*or5+S(|ktW&H3leG2TI+f8sS}8xg!R zSK7!neEvbJjSlk45}Dh7lQ|Wif znFw40#Ws|@ z6475~y`qiGdPUn-k6-*ae(}}##eMk2?-X7&W|~wkhY97aJ6#( zIL@}4<`CFEbY31`JOMvyMxvqfJ&3+shOJOr_tZzO2M3&;l%VO?LX(@RFViFY%O{qP z;J%;mjo^3>>!QGMS9XT}&X34L<-7(bKDZz}MZAe~g1+mWYr*`Z2$-`?m{)gJewq~O z6?k{w{57+R+&` z+7o|b<)^esj;owe$3C3w@lvp|6y4@N&50Y;S?o)4=>NP2U%+eH_Fb=?eWOKRy@xf9 zj9+}&#u{|&x{Gbw{~2u~D~kSV;49}=T5V@4oN2d*L*GTag750rZSBGrVeRsKvF%n$ zyUclce=>CSNPq1^tl?T?+6r1*)1HFoA+Y4{80`Gmh6 z<a}}V;UY^$2sc_?TzHwNbFkng<@Pwj-BMktvkt{8Rg)(kbRng zV>kU7%)w{2+&otf-LvmN558jA&w7wIFkHTkDSwW=sHzrb$UNtk{WVq z6I$fSUQ`+S{p=65#v}VfiOgbusF4}s^D7QOC)wBhiQd`^{teKmz@X7oXe4{i8#GDr z1}GoQ^C-G_1jhn{E}fx^qC=FjH`&TvEG_n&G{%0`7HA^eUZ)?KH)EcLA4XZaZVWO(c;QBGtl$9ss;6H- z=jA)`kuqiu+wF?J&_>ouJehu~Bu(zk_TQtQtoB{pOZ!5@1*F(G zVVD987uyGU^nvU#XPg@;dp?`zzZP{j_JsTY@w;=S-Mj?_TG_dvakb`-DX%w_Tm#Rj zeH}k0?(_-&rVP5v{_ZHh2l+=AZQ1XPI<5WA*8iCO&Q>~fe}ks)iV=Byt@p(@*zc^t z*z-|%%-Zv@YGsDRPgD#=_$Ht@~c|r-brSJ1rvm{$=~ScIb5KN6={@bP9&(RP{UP6pTVA_LU6ld!7dg zov@#TPSe=KbpD&S{GZY3T%I|m&2f959nV9I*^kh5W!&B~#G8g6H9&c>Rb;Q$Hw4co z!1JRJp5=n)M^W&6A_7mI8`4gd?CD|PxsH7b=if7;T|CdFhr@f59o~JwyFUV6%3JUj z3%rj2@BR?H&kDTzqrm$}1iU;~3cTHI@E-2kKD?#TWoLpN?g(CU*x$9oYyTlQ<%83{ z5KgxXPWz(Zlplc;&&$B6FK3ULytZQgi~$|S=_Ae#YD>->u)k{ur!>K7IyhB^aOx>I zRYt*SdIU~9|3GjG%?HRCt;0C|)(&?>Kb6?uwS&`%d%-CWoOXtAI=UU4c1FP|F9Ii? z`+`%L?Cg6*`#436m3%wA?TnRO0&foRvZt>#CvO#a---fnP6WI>pG~C?F1L-9MIE1$ zzh{R#q7QDeziX!tiUp^8!Rd_90lIHBjDxv$C2=^_;$PSUZ`Krl_s0|u6a%GuAZ@v&`k$<{jB8;P^K2$$F~`{ z(L>)MZkwrf_XgSH-zvA2J$q&D!5(p2zxg+3=<}FQGjm6C?sUPH@;1s)-{H(L!@OC{ zxog@eLp_HxZ@$(WWUtN_+bBal6`40CF$X@qWqBKA)(Y&C26(gZr99V083j+z;R>E- z+9*RkhcoZ`u2+0?kGD}q)l(PeO$V?1@G=#OwibO@!zA>%uZ=R)Q;}KKS=IA{Hp*A%%xVFoz$b5XLx0JnxZnc#;7fdqvB;DkbJmX4V8@O~~Z+pu8 zSomav@JUMf0f*MJWvt+LlRXGyjj?iA*-_@$_Q?MD>-u}sSE(8+ zv~#WZj%|#U(w4DO(PAr&ix?|BKc8}{q^eiT*hc5-eTicwLcdAMVE=daS1(uc%D^c? zX1{NL7n0d4qS=O53%(P!`@42d?GD>%It1*gdoIPshYPU}KAA)iOKi<8K^kUeak z>1X;jB5i=Fc3eyw0DfGd-FTCCD(zbOwAcc_6I>nxmqVJ~!q)?!SCL1bY_G@U>($tO z+LJxKe)MQNU$2vTR#6Xo=c8{ZzAh1(9Ew7d$0BIL^QTwC*X)TedMy5e3h_zJCoWU9 zin90uu(5hNB_6}`hm;M`qP1_}LUY4~-bKnz>Tutxs&f|CM`x7l+=L^N{8j-sD{{W9rS-%N_3i#2%+7X@_e)ao)g;2hP?c zJBlmW&%Z{+pv-v^JZHRzzn7RJFQbJkZcJ+exRRp*=CCujMbALtGCDA@8gI+TT55MVF zvy9{?NPS%>8>1D@nNM7BJ!eNqy;bBduwL(!#0%sqXU91gG){sN-)nX&Q;~%A|^@WAds3nhLw3aQf zr*n;jr<(d$n;L?N@wCi@NzUz&wTc!_$e^42&BTL%%~vYlaYnGMorGJAcJfADL_3V9 z$8GIcZS*By$AUY-&3REO9;Mai-Atb&J6h>oz<=wjwt2_Yxg@q%1^m;rnEl8Jm6K47 z%us9E_@2jjnE(5Cc;i=)j@i#8)K+y@yEeX!^{qn+T;i)e?w?qO>uS|2PL9O{GM zwQcvoKQ^?{2f%-!J~(9m&fW)STlYaVpRLYlgMYVVpuW;4E-pjd=>YKFBq3=O`hmw z@`Q{d`Z{5twd_bbj3Za7hOtn~-rn)&7cQ23pK2|EHd4xi$eldTcf6uoNKTW)Iz+F? z|3hQR1JGyydR;AfN3{|3%dx++)9*}*cWM{L1$47$xa~ihN<@xYedYgx81ze=y#pKp z#*>WMAha6;?W!10@BKU!v$oUjy~_>SWpS1Bt}Z~k70O=#pZ~z3-RS7Fdyn%CEm@P! z{WqjtMc(Sxw7U}8^)l#F5sh}q_IDxLRcL*`>zxYk*=cvbMY}KH`7k z79Dp*i{BtCLdWHKejn_s(=GOuS}#0b?5h&W+U+Zz=TP=S_LT+yz9{fB#wxTSL%kWU zaQLqj_(uc(OCk7^1pb$zz&|*ruiRTU#-HV0 zo!{BH{D|B$-^#a#xEDANa(!EVSLcOxE`OhU3%0%7=bH9KrR{!~t;`>6zyF?lsq;;) z8~8WQG3{Kw&HQ}}*ERfG^}jABjwF+ujf9+ zex_X#^HLAwYA*QY9D)p>Uh zW^w*zWqjCqcYYVKXwm7DklpCE&CQo{PT;rr?^PDai}k9xpFJ`B^vR$98=G~y%K0*E z)>Ompv&yVtehag=)Gh_j*W|vXsF3O0_8MVw`jWXjXlhsz4Mx)HFl*u#81Vv9pmK$>&wj=k|{L5O{ngWl$ z7k^{zy&jd*PTn-{WY3;B<-3tN-iHoWgI>gb%Jp}2M*qGS9+(2p+^wPe!jt4B1`F7e z8h?o&yCat~5GA*9Q<2y!rj8)72D7hwRLVKB9`|msIE0^Ir*fI`EB?4_?xx>Pjhn* z#(YoC2X&Pfue0fE=wUu$I6mxFKQWW}_IDfjo!CIC*eWaB%I6*k${tgOz4Eua(S;s? zS4M|)p#$WM1V*>kg{p~L#M<-acB}9BC0Ec_{lIHIcvUZ?uZkI)$YL#K zAoL(MoGyK3X0yes$!@21LG$e!We583y};#=W$;qgyPk)Pn42hPC=-u<)voyoh(4ms=g`k9A? zcdMXFknwme^aw(aJYYBI;i|7>T~JVD-zeyiZ_&afeSbLb@qy~wp3gP`Q+LMFWo0{P zuZ8~0DZi3+7tm&(taE{m+Jn>2#&wT_E*|}Ld)X4ozC>S1EbH*~Ucbav^FrgwCFANb z;J{`l2BU1G|0TbqdK7$N(pcot0(iALKVn?*JPI0DXYsocgHp0fm3@rg>^2h5!zkO{ z_!F7&r7B0pw2av{bQd|7*OL@oZ}|&na*4*G^p&En#`(PI=qsGn`gA!s_^byhFRGIhB3B@ZTd>^$qx4$8mPnzNH767IJ3qQ7yjS!8^tdwC?1630lh> z_~>S?%z=-{6`A{xT;cb8xx)Jo%9TEv&h<>5D{L+cKrg{Z=087nvtML%J$)*&0DpuZ z-t*^hrJrQXORjw%bKOUpLmTlqd=yz{8nl->MTU69z6Mqqivilc6(3uT_!D`403NA9 zzvAjvYXl29ll6-XXo^kWEdE|YKiKYXM$eG5g(Gzb(GRTHY?7LB%BHM(H<@A!up*A?NM3#BzELf zU`X@DskKkCu1Ecj?#DXE6=}p&WG||t$=2`BO8LWSi{fNXVLhZlLti@laJ`0nPb^dO zxhV@vIm`DN*5E0B%5-=GS%j=;)TSkP*AP>%WO^XoOe>G4`96{>lMW(^LKJVtaHAl&n%xz&0voX z|EV~(z#QZ`MQA&K-;p;`R@P@dhis}rw~DjN8=iYoHY9IES9L*mnFp-cqQOh@Z23Hm zGOgcR^%(rznrD6S;M9dVDoI0@TwQ)ew{Y3?56%J=dDNUYtbP!B@7GD+KKoTs%2_3c z;IklOyNYohfQS8+4!0I7{GH%k32hvRvb0^7d%3DH%$ccbOgl^(SaYD91urr?hJJU7 z&dBpe-$FiDX1HSuHFq_<`O4$OIiAkYH$2H0Rj~+1{e2RDqF;S#-t=tQqt=lQ^Ilnw z&dN7ypLVp+`T=OY`f-P9W9@2Vec115L&Y}fpEXZ9^fYwaw8m#XO3T$gd`EK>ufuj2 z16 z^zH%edKq+otE)-(ED!I{9eOandjS`EKnwkQ3;lbC=nvgxU3>t!8$9+BrXp7-|Vth4tVk81SI zGt}M8dT|H$e5+gEE;@OzY5eQ8Qb+yVZhVvA*|CuQh&FI85%WyGzpIul>$Ph(INW~| zy&O0)_^quvrZU$7$By@gEIG31q1P2`yOBkEhXKnA?0dw$!kPM{UeUFD$bulUrFo2Y zYEmpXdWccl;9PWaQ&Zi>cbgV5_X(UCov06*>|?*dg_|}s4LEqPY2S&HYF?a*P9$?l z&1**e8wFU(Pe?mY8l^buWlgx3T_Q!P%JhBV&)3 zTB|OZFWZ3gr%~z>_-FCEzsqf9{^FQ2iCv2P_K(BndP_6pgBIs4Cf`QM2QA%@4{v$g zj#SO<7xZ=k2@osy|S8P&|PEsk1OlM`pILgLv1c_l{LE@a+cDHyu$w8AZ-c{ z)$tp)&Whap+w?%C<{h!2No*hW?C(b36cPt#O{45@Xg#Z#GJ3*4M~a>tYRkv`5JdhP zGFx;B@k2Q9JEWA?TC(4y!>H4ZEjp&)U2Nk0zKP$dq8Oz=9%JqOnWDHb{V`Ky%qq<- zGU7~73)9I;kXs_#r}Z^tM;`bGkx{vC8AlVV(~v{n2y82W|bxs+zLq z5<}L-nflPx<@W=Z_%l#zTmF=On|14{tVP6+oXPc_xb|_*J8~v()c!C%Hz`5)_ejtK zy%NyJ#D`+&xf=2cn*=@ARez9i8H;R*V{9Ik{V$MH8!S16JQ2B+A-^G~#(%Kvh&=B` zKiPnsY8KhReJ%1Zk@3YED3jeOrz zzGwf-nX0~&a?!(TwmS4`banA_%q3Qm_N1|2W-?>T-(x&@jb}dubj_sklw&^w;%{M_5s{@?hUB-iNOc&Jdo<_uI=C0zsh+-18O!-y@L}~E4!sJR)oo^fhSNfq zcmtnd20niTACZkd=wZ>P3R+Y{Bk`xy5PSWY`t0w6qb8AqWR#KjwWl+vpZpXpuKw8L zT6U-8xZ;7a#vCqtEG%LUe-GO;e#XGF3E*6(d{3RqkBct|c((TxA5{YPoy+$^i??Vm zhq|(UD!!$-@?V{AF7Y*BlT>1ZjZSn2!3CKs=t!x(G{-LA-qxz ze4m%1heqj7kvUTzxlPx|>C$q)<-Pk4r%KY}we7N|Qv3y?EB@?vjU}I_U*kOk40f9$ z#vJpXr)%Cbytlvm>T*LKZ2lGS$H$;6#-J<4pr6EmSBzfWCkDA1qt~X#=yd~P^kai# z^yAmZ==H;6^b;dv^pm4v^v_1e=nYvh`se9aQ-5k${jp}-!Tnjf3xAZ7osZo{eqWXz z2xjTQ+ARHro0>`*oWlRD`FN_(2ws+X;+&b&{W9nCrePbT;s5X_IdxwT{>A6>;?>?Y z604+~rPrUjv#I1vX^$|N9x!pPDazE3Ezi`CuguhaB~ENoCqA7_)fa|79fMqsDHr>> z9vU0_#IxT6&kg)refQTk`m9iF=?e13(K8ngZz{Quy|$1|+coq}t*{@tM}`d~e42tk zA;5f+Np64vdrEn%R`~p%pJ*y+gs&VoIdtcD4Sn}f`211$T>Fkg>8H+los>@cbq`{b zloj8gT)Y2}ypsnQE6yIT%|(ZDJ`A7H2fkQYJJHX(mb@Ix7M)9d0lx8Y{vNhX&noWc znfol%QLp%K?@eb<27?Dz2oG*~n|)eb;XL@~?fA*~_CEGw$S`#4!`7N~4|amcA<>^d zqR#%`W3HiW7G=@#L=QhKHUlzy1h$_3BxPrt`nGWfU~>7p3Kp##{Ch^@jmzN;2kW3C zc%vd3Z_HG@ab*~997R6J{8&?(r61dzr61p#rTgA+>HfD|dawkZWt@H!-uQkSywRP$ zIE8<6*ta}-1?T)o|DQ?k69&uM7A%heO98MHW$6>~m*o!~=&fJq(ud$PJ5dZ=(}7WB zswqbz;Zu8*m^?cac&>zYs=d-H!rEJHwU$%02k*qK#Re^7Ju=u9bX$=)_UGVH+>tu2%5>BQ|~=^zQiZ~xR00}Gh1EAt19qXfSjL)oHu;CvE{kQFJ~8GK`WUTKc)_RP}6$jx3c8-M;YYG zjsA=1LDe6lE36b<0UhxZ<{iGN=9}6Q&O?ziGz)uqx02K1(9k&wHABB%j*KwJn~Wjk z%!sP}Mm|UtbCBdii=1)Fc;ffdmyr*V%RTQJxmW%LV2VvP#$k(Z6}V!1nzs9D%JW=B z`RWpWXAc<}vn^#m;kVvq*@{l-AO8I(l6uDdof6j$J4d0NnJk{dQL-1!Yyv6#CYw&4C@~6yW z$M~0he}_|-;#KO8#;bvJc$HjOUoZ-<9x`~ClG+pi8!u8(+ES}gOe=xJK{MEcZ-m&BL*t_GJ{=o5rKjEP$E%<3q2 zjBk#YGERV@3Rvn^F;qKh2IANk2PNUa_y5^Ev1EY%D8DgY{LtBPvnc~) z-0*u7`4!Gx-1Dx1dx>#WLC+Za#@=56=&j8PY|H{zUpr0@J8G6XG#@=ko zA9zme3W+N#f8gQyg~PnP*Egzf<~^(QBPEaSN46CH%R9tt%LWv8el>eZZI1BXoJbhqT8=r)= z5&rH^=DUBR4c|Cq*F>itn2h|o8{1|Iw#~gxe2PxJHV@lvx>G-v@6?Y!;?(OObLyX$ zCZp3|7S>izQzrWQu)i3x$?{u=+n=p<`DprmwBK6fIC903mTI#eV3p;hW3xPgY0Q9mFnd6kg!^Pp+cN0B4vF z{^o>mAJ(>Wt^Fs;ACKSi>!d3~{@?-BgFifgzb#0tq6+_fwfK8Svj-x+9zTAZOnkxt zd{@?(EL(5My&GDMN%853&fv$tBXX~0O!9kuvN(rulq-Q zIIfZYx_7a^Eq~qn_!R8%hwgGb#DD1O3+(u?B-ca6 zjBh0H;#+?e{mkJY{yfB^e~G=H$~${KK5z`;m%X4bt|)|~_~6P-T>b>in(fcqVEq`j;G`0a^Dj2-3CZv(e+z&ajSZimhj@Lx_Ob~OoF-vJ(X z5+|9Q<d()lZPiLu}yKWAMUsO>elD^VROw^!j}E;LL$Gd76H5 zil%?|2s|RO17Zli24ax#qS$b`Q^xA}D%tPU>2)Ai)^?J-W%gJD&H!>X0Ia@o&?XOF zdJH<{;IsH%;SuN5^Ch{l+BT=M$sLN`%>_wiZ*op>i_P^EZ56?7jzS#X9{rDmJ^CS53V_@G343p8Rk$u(Jpck~qrvvju ze4eYCN=7kvS3g0nhcDB;lh~!K8}c>qKA-yT2B#_H7bR#fSTWsqZz8AmUfvf5Bo2O3=Q(TT%qzq+?Ay&L+o0p#+yP#RC)jPTdY)yUX1ia; ziqmp-l(z=nJ|=uV9DYZ(*9}I#GX_q=@1JEM@2A7}%=xvWfHMyr;Cj}$_}XB-@CQP`>^&a#YHQkMT4(^uV8A^c`X}*JvL$l9QVJb-~JH=QGdu zcP1AffYvH@&3J8`sOhH|zbV%lF%S8+kMOUnd-+u8WW`Q)KZTwPe~*^4#-OLj{viBY zHJbS8^~9hUr?sP);|IfU@b~fI=qkwV6U3FBa3d=eNXUepS>^CICyo z)wBFGdQcF)zl>ZQ#ow+TQpQvqbXkK+BMN6uGUvfU0yOmk> zjOV;mXmeQQT0KD>%x}9ScJZ>AGg=zb-@N$jBjw^{h1H<9*RqFv9kIG&?9X$Y{oCu= zLo*~hyBhiA%(c5*Ie&?S>jd-_xO}G_a~g7x3q{Dzkz5yYMRqh4a~;feIag#z!%D8m zlZFzm`CMP(id<<}#TA*-P|8*0%Ld>E&j5G^!LtfHtHHAdJZoP9-&NoXp2xwnUhsr2 zvfkuG9(W_WK0}rnarEeL|4$3t8FLzFr|}}&@k7r5^z^%u;PK>(rqfzmdv?4Uz^m~B zcvaC}HSJZ=UiAgqOI7QClFPqCJGtR%DJZRi4? z@%-ao_nnTPLvB3lWbq3S%dWy_TupqjrWgK^KKMsc@Qh)bhi@b{<*2dx z*q58k9Fak4OltVY<|BWD_a?fl@yq6rgLaaLk z6i27}G<*W@k#mqj&cSZvx5#bDIgtFT44$j-{rcX(@4J=w2tHpkA8SRLnRBpd4x^d* z%l8JjfuG=3g+EsE4XR(t(EloO*Y+-WFZl+%mv<^(1AnNj6S$qcxq->C#qqI*Y`5YU z8^|^2&sh!={+gUEkk8d6_TlH`s_>>ghxePsFS zy?-%sZ+$t5Za=U{e$cyY1n#3u02&9OaTWAm`FV3muH>l}_V5l{WBPbJw;H}}U{`)@ z+7drDe%Oi@AF}wD@%gmmV)8s&a*Ob*D*q(yykyHqewVyO;pMIO;<7YoP zeB7J>u^@@RRDA-y@F&;c7p@gQHgT=G`V8VF8N^FCoAe9L@Hm%2-w3{4%Xc|O{{{Zp z?#r3v-X-g!R~X?koP8eq6P6~%~_hn`YZN&h`*%s&8mrIbsHv?9p5~m?8FSHyg{ir;6*?>qUu zl7CSV1Cz1lzxPd?7Lp^y-J>VaIi<8O5f+g1809}dq0x* zqs;g4#k6F2q$fPWm=OI<={V$h?#hdB=C~ zkmTK?3sz`72Y547yp;G4IsW3y`}S?txN^1R15TxXUx?Cw;?EWt`gPJ3Eqy2JBE&Zt z0I$(KwNr`syGJJ*dkL}s#*TgmmmYbST;x^k4>VWSWWskM2h=#MG<>u2-5PQPrTl`8 zOOA|XO^cLI!-kDb=B(3~nK$Tj*&878+x3%{9U04cs;YkGq!`MtBDXn>dzl*}%a87D z)BIjw<@=h4 zIM-W?GhiowaVPnU2JEfzuD*`%KQLgIoIPn@=w;y^!}qINaDTQH?p9vv?e_j=Ech5t z%J(}FnPGot^8IS@4b4t6_p}gRFxEkqj3pkzc#<_3tIhRVi^;{Yt)Ez7t)B?M*Z2?A z927v05I_8(&ZqFv;bUgLVt*<2N$u)ozES#!6<=yL``j1L?_J=VB=`rtP~=L`(ORzD zXY!%)&$Gr#a#7#U6Me9Im_F!3S87I=^N&K`8;9PPg}z68ta>89uX4GYOYmoY#DDX* zk(*bQHJ?VdGIne8;@#rw5#NpIIpVt!Kg=EMmy*Ez&=%<` zFR<(;cR%3eH}PUeNwMl&$tp^*~!=?|8tVym|^7DTWu^R$No4u_KV4}7dSJJ z-3hTC{e5`<=j7NAI(V?@{SzmZo;Q^o{yN5YUA|GjJ`Q_U40k(pzE^Aip1 zv7p_wo-tZYc^~pzou!7Y63im+avXV=6Eo?!wf<`8l%@;bSz zhqFgmUMKJUeLS2+lHi@5&NaQ0_rbw(m1oW<$xGmwYiR=Iw6f|R8R#Ir%aqPh80W32 zL|56zzbnpL&G-|aX*J`mnm&AmInzf!?jmldo^SE!;&%htsc zYTBIFQ`>$fE8MR83o=Udg5#7qj*WPnZ;oRpPJlNj+}_E1ybHg<7ss&~C9ZS4o;(!h z)Z-24%;?wtW_0YVuHMLcZ|P#{8}ZmEU9eG-(5s)%3$$G)r|>CjJ%;u*W)1p0dYXr8lproH;S&hGmB&TgqEe>i*) z?BsoDl<-4m?;}}Ui#qc={7~7M-?_TF@Vi!4Kbd;+se^vXpL!kZl)BV=n6qX6bTAhE zFR}L&vXpUIp=krnyjfTI@zvPMuOa`@{qEy^U?F(&4YmX2zU%$T%lP$pHw{^w$NM1i zs#$IXF|F z2yJt*ZTug>yXd5Wk7@H0%hzL^brbEomOi<_cQwRo_xjvk$yJ}qJW^eXu3x~IHGOA_ z-*fwW@Bc4o60eP{D)8vlrNm5>-5#s#cEtzKpt<>KV(BSmK6ups6tOtYXob!dDz^0n zb)Mt@E#4tdGwko0r9Fr2g}~bMUf#LnTn0+n&k}he`rt3K$mfNgLHMi+ddhgOfro41 zVS_(4e0Z#%H(_q=?~`>f3FVC&qtiD7`lbr+UVu(xg(v76jlB#c$6DgZYTh>c=%Q%7 zlh`nMPPO>I{NlTS4uK+%?%M!O;UDFngx3N^&|?GhAL~@gzpZ6|p4Y`oytmwLON=vR z#&gIR*1PF7PhcZImZ6`6*JljBO+UtU(9|2e%^JQA{Mi2G^ec1fE_hbf%)f(;F>TOk z_O{p1?csIckhL-5d(5F-#yUO_V~-DkPyD{7Z(Hs4@Zn31>Ex`)9v`x2N)uuampB&P3kF4_@_#N+5)(Qu*;?z7KJbE&de0q5F6g(O!XVsWTCf3y# z?l=a`3|>t}kMCYS5uU7aO1xm0SK=^AZ-tjFndE=XqyL(HimfvESH$nKLULo*L))S> z_D|4m^}6uA%;0-xs^+zRONO?2G9N>~^|?1dzu5ZS$UV)B+dDfWM+TlQ`3ZRXw!#Or zCFe1S@7ZeqDcW{H1KAS-eN?sGl5e@yqsP#$*um1S z?A;JO4_ovU{t{XWU4I2V+Z^-sTZoQEOrq78S8_H%$=RmY6pi8AVcryAvCmgN^u3PC zP9O9VnIPjsFoLBW;$dUd%;(@VTTgmat#8e$DsseBXudljz$X$eCWqn?A^m6zrq(A)knqFZFZg zfv=NTt8K2=Ucona;X9L@DND{NTRBT>vCrqwP9wDK4sV^wBQECbUO)Hi=Ik@*7(JcD zXnAMkGbJc{sq8_?@8}$6FZu6A2YiIJt>^{8d(jK0gzu@<~X|b+KcIZ*m5EG-=yp?V!Y}m7jWw?C%s?zZm;o-o=>j#P=$B zBA4RH58!3CCSo^d{`O&O3 zoJ9Yy7g?BZX$)gsbjW6OrXcTvtFV_7r)#^aCKW5qWaK3WMM@$Hp->!+@oiJE#=vYmHpuve>dWN#hz_U2om zU(H0;Sc?66Ek3dw@CNsO(5SjV<4j{>TX$>BIohd{*hO{373+q_x$EfTV{f42ZY7t8 zy{GEw1F`kyVXxNbpnEb_WS==X3)<@QA+|mb0E6ng0{EQvYwspzmgCtWvbRojQ(zNZ zj&IfUF|nPC=d*r)ey;XmC(b(-UHjTtO&{Fd;FWx2?Q6)|+u@5rWw&@cJ=j;xWybzg zoeX|?^%n0o@<9wagd79j`N^8M3Z5AWpU7Cg6x=@lRfwN22{&xvHgVg1V|3ieZGR>b zw?qRs!OIwf#J?ZOaA%RL=Dhl}l3nD0Z0mQmVlsE&ROWHDwR;a~Z)C8jQW8*$dH+E;9ZcdO8$lJ{@HcUi;(=u?T8tNiOn;LlM~ zKe`U>zS7g!H|ZVxJ@554`qGN8%;zlc)ie5@m3W1FmnON7w|eui>oxZHU7v_g0UC&IA!kul z!`Ew+Ov%_Gd#YU{x;OZ@;ED`;($?pUsU3cJwLg1J?1fkN!mCa#uDF(c^Tr|9#GVw^EPiq*5O1_%#)&Q@pYptcv z#8wCZZ!PdjUa}qLi8h$+b+QNC4q0O%ZPkFs-k7*BJj8b}9z4dGct}5OV9bqU%+=m9 z$QvKRqau&zzs0f#2e6Q9>8+u!;*eK+k+G}9j*)$o>7z9I$KuH!Uv;|VoA9Ifr`6sh zBMrW6iyxEh{5U#-AM@dlkp@53z>gbx#ucOY>jC(&&g4gH{n1{k-pwQ+$N6vQR$0M$A>)De)_=&l)XQhfY z4D>z$jH)jB!kQy51~#Y3?-p!-u)$`*)fZm3c^^}5XQY(3v4 zumM*dJQ9R{Rq*gM^q4B-5PN3m2L(R>{Dzk|Vwnei{x>=OK%h zOS}9teuLms1wLVL6t)2exC$Ka0b57lNWTCa5>pNWuh@km1I1<(+s@DxJ1bpLaN0}1 z$aRmpO1Zf5`=E1X;Z@#|%h5B?H)7YC`o>e>%luuvpWJrNx|VhB>!BxnfIr8OL)G^} zFKkA`c2fCQDt|dABp!0Osh?OP4)+q{k$ZO$Nc23rmssyucE(Y&XAZ|6}ne7`ruCbawGez z1t!DK=vWe;RIz_}Mf`M%XXpdT-z6_i(IrrV?JnP|{$j0_=%LUc2tBI73!Yc{szEEG z4+SRiPvm0{M(T{O(vPBhhRv7s;bHNa2>!qppdV%5E@?;h9#Z=uQl^+31ACbOFi0%2 zivDJA{B3^9&x1zd6DfjD!6_lV)(;)zJW}Rk_d4SJLIcV1^wCxg{Z!4p&`W-oIW`a4 z$UCuDQ@|)lb z(fi()-=Spzd%X@sPwlI@_B;4zeZl@bzR%-)`Yg@Ge*HqznDSTQb-T_#%iTLv7hmG&qcBEN}-9(w$u2t?7Q2E$=KKb82xsocPjIV$g%R5=#xJ5 z6YXcR|3PM>agL!??q}#gDe$HBEbDw!xf#ZpI1lq)Xp20IEc5@EdmH$wsw?mR+&*Ou`PjsfV8y~pQ=SoASg(*a>X_s>6AAC6N^&B zQER7wQPk2ZFMS=S<-X(%f_FjAKwbov1 z?X}n5Qv8BlW|k>q=LKG4=>CFGM?GI7_YHI1*Hi|5RrQ=y<{JAFvDdE{td_0?a?%O&}Wt=?4No{dv(1?)Q7;WIO z^Aw*{=An_M%rMI2gX8oL$B6MTvX&T%9f4`Y!eIY@c(i&kwB#NCx#Yx3UN27%V$WU;Z?GP+37(n8Ty#Bi z^m^9MGK1L8JlFj6GV5kfWTo#e%TC)}4v!3lmtKa}nI8)jBc(W4jr}Wr&a}3!2)*_r za;l*ht-IRD)ji^;Tj|FdXW!>K?fZnzW&ykOcq1c`SL{zNP`mYMnH@U7%jf{pKEl5b zK4iboqMifH`QUMY;>xB{M_#%$Hb7s}fVZ6UIi6x&d{$bZY6Cj+#vRt)UDWY1a%2Pg z^Aan)Y6lL@3ZVaD;{h*CU&ZGKc%~uQg)&Rtu0}#q=NMY(S~y6?O+~S zYgx|`_q1XOcHHt-WI-Co3EDdFiJm`SpMB6e;0fagZ{-sE$FW0TDII&EQo<@~CaJ{8hV{<9B7h`uMJU(pT-`Je`Sw7ozjv$hvE#H$kj3Fny4;h;IR1G|3c9Sc`Fvt>|0{z9 z-uX1<7sf;%fWpg2lxFa z#YZ~jBb41uIqC8S=Z@UmRf;bH_#(*ccKj~2AGS|zLME}sRnQ3SD(+YNo8F*L2ZyVS z)%q~-_oVOF`A1x3+8yPzJKAY?%%pfPPrFh0JqA9ptqP0`fXkXH{S8QSM6x?yq9@C)I8VvP+Dz2?mOmFkIa$0 zx$XGLa{pr5x7RD|_}G!eLVePwGd@-^v9cS}zx@rXavP=Y-P?`vH^FN4>BAb2jP&(cZfWCeDQ=$*A&abt=P1222!ce(Cw z?NeXR%CO(@d^xeSm-u?(f9csW;pg{1o>fFHLLcia@KDyrnVe?`O^O~A3kd#&zkAKS z;LEK2KKG}ht^FUIOk1~6mv{cM^{Wdz^tZr{qJr|nc7AK$@%A?0DYh%qlePQGl$ zv;3pL{35Pu*OyDa0{Bq;m_9;!X?hFu-c;ooC3pAkJpQp&ckArLQsnMmhoOHV2WC=t z8oy^!_blp|HG(VjG|S2wTfupDr94-ERlkpS(j#pd?C4sI{}fN(#Y@#re`O21`q5l` zUZ3%tcXnr@q7&T7sS^pV4;a#a!(EdgyC4F}Twi#~3t$AMM3m%O2jh z@!L{a?3MrMCbITHuNEA&y{sxI-Q?(y&J*}(jp1CENQ zTk$`+7GBb;5Af<}Js!Cw#h=heS^TGnHxeOKpo^!IU2J#9(!^`OyD zJMrHR-rJ{<*SXz?nnDf?@P__wa(+qQG`K8dZsoc3%?RaXH$?bm3~ih5xc?Ab7X_Ty znf}3exR0ZYGoG?P|K~H%KF=b&OTd={Z?*$32{aP;;h^bnCqHQYc?*8qqF$^&XBuAv z=kE?Qw)AXdimAKKrb*%R4}Uva{SI}Swdk0=7M zj%D-J7HYoc+gao(|0$O5NE?xe)|ph?JvfMkcE6ahz`^f`P&OQ zJdOQjeq>9-?N+>5dIGV1(g~yJE#_P!Gw=FB6&lyunb(=`ns1>F=27JXB?h$i5Z@^m zMax1fUh2!LvTcjZ+7je#=hySy%%L`2bmYrh$as+#EE7D;2urRKyT!9? z=)yjq%BsB;I#j#6tjwxgFGaR9j-_Vquv#iP{}YkIXojrbvEv^2w#b=K}PY zBtFr(F->;{<6&nF(T+E>YF{U2Mg6ItS5zRF4?-7*rVu9pe$_X8NyI1ks+#Z}HQ_Jn z$$mVYiPZwX)Wa{^;TPtgg5kj4#CVmDu;w#wOfA3Mn$MhVt`X&jq29a`?bWQ?zc`I| zJ1C>I2(3S;B@E2F7SRasr>t)LHDSpS8nRa2ELA4sO?Kd^y8h&-6~QG27AC^gNw7are2# zOYe`5Z{w8(~&iX>4dW)!3Ag>nfG}xx5QwRsSi-L zV|;A=7ketrtmo<~zG-3}kZ&s=J5csoC3{{J`?So;+}%8u^NP404D?_v_rc}EH5QCX zPhXF!UW`dLV^U7+lI8^AwW&;FlFgXNe(lAWWOaOscjFyqmp`9O06 z-yUL24l^bd)GgaXK7d~#*Og~TydPjrkR26p<^-)9RHDl&9$UF0jgOT%LG!^f#>0o4 zjnY=0<*zdN9It2Y2XB8?zH;h|c<55}e+hUKO-|FCh+aPtT9m)VOOx0eRq6EqHO-Cm zUp|5yA9*q~C(;M>Nct~3)P~|_?F6@ zzSje5rPKGyq`qsdufpm3VyExd()SAbF1?@qz*QB@fhLZVzDo!Ba3#8CK<~)?Mt>va z;HlElW9!nKwQPIO?b(X4q%ZO_^x@w1bEa|M%e+&$wAw80Gd;icz6Ch^o@ed+mVD`b zDRrKz-Ar)U3*D&?W8GhK;6=3s$86op8|S&kITy@w{#<*kOZs)%V546@;_7`K{rVHm zkm!njJ;Z_z`JaY;Uc_AHPYas;7V?YiL>Bsk!Gb*gi!9%-vBCDqW{@qVt3WpXmpXfY z?nv~nPx|!hup!&g1tOJ$U&U(6QYuMOacFe|mkAN5SKjAdO_{o-+ zKP=36{wBArdin*{bJF+Q%d>0HGl}EsA8HVP&X!(@o=H1KzoZSbjve?u{@uHXQ_iV< z=)$(@wS$N!fiLc74SM@WzWM6s{b}3}@Xe3VN8(8ewqNcu^Thqx+z;~2FNF`x8eY`| zvz9mgkqNZV`BGEp6SS@Ve7K;K{-RT$Kj`1^IJ{xoJNDk#`v*`bdFU3=R@lUj5~HK} zhI2L+A*;+YYj{Zh;rnGTQ#Ob{QSW!+A5Moq7p<{E{=v%W;;#*3Uub{B8qqzvu37Jb zf2B|CY_>u#4?4LVYi;{iTRyXwuzqyXH%HOwoH`df->PnXBiR}r&74|7JO?oUqj2(% zsz)+xQ3de>y%rjuzS|Fjn?mcw1l+tpyv_Niz|9)sj2QEiaI>QmH-6_^)lI!GVpr}r zxET&Dg42dk&<0~LjF?i*JDQI~%m07Gn`k)#Eo*;xcWBxBUA;r|ItS18i8^QI)!B5f z`OzP6(pHRH*cGtR92UL1;0Pjnz>BEc6Lmz)b&dnA{c*6~)mV_FFB^Nrz;pczl|ZM4rl z9pAxwHm$hjZnQ#+FYKTdQ{El-hJba+x$uI41>Q9EmUhxI9l zmptETRSo&YrbO~qvT80 zI9;CpyowuBLkF!8ul#O^lG0q!~-S?<; zkyp`WCh~h1zqKy7ntTGK$XvnuTWqQ(#;rZO^V#b>)4So9b6(H|$p7Q*Q-@!{{W$Uf z=zbjcQ`v`)-+K7xg9S@JXulGFMe8?_$bvgM?>WK9%v&M&F^T7M<=uL{#W&P9r00`|6dr1F5ti_xHX@8;dSGyq)#=pcIs1q z^_;J&d=qnxf3h>)LjK9i@lVP(IUJqB)LGf-kK9UK+W%twk?U=L0h!Dl!wOnjnHdLpuO4nF6U&6U$a{BXlD-l zsI``|lYYoo_$R(;8V!9RtD5_=)}r%UkTsUhm9Wksj^=LmxcX`zc^F%Td&y92sCXrL z?eS@@aP5?eY~V*O2nJo{&-?~)DP9=WPBX9^q@6>+p|zR^u^F3ltoTUQcn(tUwYpNb zY_gFbm#-YzO1HHis?X4-D6qg zSq*&8;N}{GoA24U!CsL)lYkpyUZR5?+;A0c2GWk|6>Ms2J@%{oaB626J|5w-0(__* zH}WpVk0A@ab*~3T;k1<)2CZ3&HUj)^zANu|9yF^u-$8CZ!1yf{P2Dy9xP0dUXzKHn zThBPGhnMDtj#R5&H@{Sjz9DZ-%v+Ru_5Dw31Ni0dS(`L|FEW0EIkVV{zZf_Imd^Yj z{CrYb+vFAKd?+xja=vr@sg?Nq^1)eO;9Hz)g?_;|L%`h&Toq%hHrzdtS~F5v z>EJ^s`;1d|GgtAGkqyrJh#Q}L8@OL&@UQ)}8MQyqn1VOSuQKk1H}vb4--5Sh@Kqz6 z;o}K{vvZLv6|9%V2I8jz2ZF_ojf00e`wC4y1PsFC^dww8{vWm+@b*LTHkEu2z6M0O zzxNd1PD_F32<3fzEB|wpKE(L_Exy;1$O(r-%jTJ z6#nl7Hw*cmF*@J-{Y|_>|B=7o7-z83CiR{lGCr&_p1($%1$&f=f9DI8k&m(-m^Tmy ztTm>{Zu9}pXA_Q^a*7IC26MHnTKW2QMyUF6z^>Eo$5`qcZ`V15{aVF?E;q5j_3M4) z7}5R#yUw$z)6~VY>)*{ByGeNnfkW-BW3P9yIXjg24sdGcQB1E*=Nlt?0vWdN$|)a( zreph|YiM6>jB?jg-Ex_XMKAEz2O8`T4Gt7f*>P$=Ig*+;8|s1u=OLHGpM$?xxv#Zs zd`sPZ#0HTk=|Qf8zg&6pnVp5b~-% zN6GOK$qa__b_@;W+_&h-96xeVdJoUn48V8Dwc(j;qsO>wm@)dbGaEnK>*)Mr9G#>h zVCKGgRrKK{+5-^d;fJoDm_p9DeDB_zR5POLtp? zPH;A6dAU`y&~p!6Zzm{r;*}8;$UUwK>;!5@F z`Rq7z!%_tPc^#2+1N_WuG5sbcDgq3Ovz0t^=ivx2 zB>0i}{Wq=Sug^9V^Qtm*P#6zXZKd793~g+Hn!0FZaCCnc0D= zq3i=~fHxjM*2#`**bNOs^A9lBo8SBS{T9E`0nG2W_zgcOZdWnlnm43xOUHhQy*A-Z z*>S-$UGN}ZG+t5ak0OI&)T218dg@ml#~9zoW+a}Q^A~WdK33p6KcF0xe)3sc7jot# zwBH{dC{Z1@tkN9u2XC2ylo`xF_3zPh%1R$9giiAYEP6ajUB%QD&7n*_|LAnPyx$M! z*(mWD^&cP#`KQwVBD-Q`!P0wSIM@+d7%I{L_K|3QaYkTz8(E6vW@YP z4rIzc>yFJr#u-1ZQ_s1qX*P~0P5~S?jSVUmvt=_myCmz#BU+`gD;nUdiaeE#?u0G| z-Y;gX6i+vdG0~dWOW*MDndg4I=l;akJIj<=X}hIwE$!$Z_&tJLcrQBvzvbTdAMpMJ z@1MGXJRiaMUEX)?k}2R#?|^N-_gyA<>(z<38QL>5H7As>`M}_8IP&{GTYiJnb>J;R zJy%qaf9ct5ayR)C_Tc}@p%3A9A^Yr`cpqjzZkRbyGVMn^b8#!YBlB0JlKIPMM|B@# zT)cbyH+t${N?odZ1@hWkrp!88*za56rh3&r{%14R!WICH4; z76LfkImF--yY|mrsq>eq>+DILFHK0Q6Fd2pGt_CuDEoqxWAy&zZPkNIlIp}peC7;w z()T^ZS6|f03!c7*sdHg4sZQ+A$Io2nisGwN_kA~YzWs%yI&-nt&s^u0;$tJ(i*(OP zWAvZYIevUnokPiYbmltu6faBN_qEiyYFtvCBZBc;&QRxK(Nfk}n=g}S=^^Soab;4S zm$J6fl{%l`Z1fa-bSHH#9Mf6nc+b6|RpKN*x8fW*4PJ8pdO zLL1%{O;%w_cnuxgk(v&^E&QIHROc%Ueh7Z}-EN z)V_feoJsk@d6xA$|9|4Yng8SbXPs|Z%eelS|0nt1+qZLnC2>Fr@$bd>6-qK~+k729 zDE5$6&BVqd1|z-%y^(!qyJZi}z=xHW?W>xOZJ}5c<%1#Cgm-Bz;Z3U__pZ~}zF2>4 zCjF8RC_Slv@H=gENV!^!o@f2$j!FFlK*U)ZaQ_^Zg18*zuSnQU93HWPl zeLA>xIP0lRJJLfh-4k5d_|b`F<$?5h&BTn#rb;ez;-hKiy?gpt%OFLzJ0mHU%@Yksw+?LQjX=kwo3s~Zb__V- zTbr-4{+IhJE6emx31ECIXo-gkTRoU=j$c3I&s4g5Xp@Q#;%PPhJ^pMt*k9qc-N zx7OM5hW4JR&Uiz`87kiJSbpM~L?bdtzC7V0!n$m#|Bvz`#CG<%uwVK_Qw8S#eTT(-}7mpT6WIy>IUD_ed=f5ONL#d_{ffu9~m zzI5jA{LuC3mvqJ?Y^IK5o^QSQeULfzlRlmMuhM2Rufjuq^l%^geE{8g8h&T3<7(c~ z9$4+&`^|s>AG%4&2&H>9*HeXYa4Q_Ooj9oR0X;@HFr}nRy9Z z)q^v|sYGY9mIf^B$q!}BwEeCbz@&J%%sbHMO&%HIwvZujki#a8IX^-^kcMfjX@8S) z=uvCtutxG7Vi~Dp8v2f(zQ(}$D<&rXbD>rDvxY$Vb>Fe)A9u}s%^Z8~Sr=4nj8$9E zhU}We9@cMaPZhcN$Qu-!hhE~$TWT3QD*F%|qC$@j_`rMlL7VApx% z_0+31$9m><$piy`1!w6@v486vGu5>gJddF59^t#U9-K2`ob}P9{qm`@X3@GHooN$e zwT`iRQsb6x_jd+!hGLb~=X!j_ODtdL8*ZO(?(FkM77fG`09>U-tRU5?)jk);tce9P3I&G-W+H06L zXPD`;mu{lBGfoTGfA%Tq{x3_qM)wPWObK+)?|FQmitZ!8-9h(-Hl4e) zAI2x=9p5a*_jShC(EAvh-YXg3ji(r2?N#)S@jAD!U8MIf0<-i7#UUzh`Cl35RBf#@ zw4T`3(r&hupVXGdTr|Cd{(9+Lbg&dWkQdXYb98ypdA^6vH$vyGoJ*$j>D`3uW8yFr zvla2sxVL^+j=D5{ZHoGDb!3WHmNYr_s-MKpK->A_)*$O5lhNO~*el_MI}9 zoU|T|uA=$ncvI)R=#3R=Kp&aq#EVEje#7L8>D&*kIJqX~5S@LjIYR4BT6fE0u2C+9 zEasXlU~0xj=mAa-GUsWJZi~@Z%eNjj`f4xEU6wr0W^J-}?dJaI!uj9}IU9v;V#rF- z_ldqdr(YH5tUl(a50S0XlkBqPTNO{XYanI7^#vWd4s4ys)d3RL;_16`eK!G{aPa(T zaG;zUO~CXk#?YOAg^!Wu{H#Hpb1yiEAUCzIr{Naxauank_b7K?CO9EyMJN-TWP*z( z;pqXEXO=cb;kP{beOGi1KHed;blZX&jX__cBkVltIu@f(+vK zb$p*n2JPSsaP6tq+#3UqQpQ~KsTo7`n;)NTJ*MZ=J^j@gy4r8GnLaC)G9rDW8+|VC zVxKQe)o0pG*=Jx%=rg~2pQ6u|^jW#hu$zcI5xqi#(DB#ltNBfCJjFqL)&0#}r}gFw zp;23ZKRsW%dFcC{fiAxeO`3SF5?ddvVgI!^-%5mWNQd?|Kzr$q?w1bzH9)6Bh}#Q8 zo7!&>gJv_ND>=H8Vh+wmcd;~<@VDE)i`5_aGD4rD^y%QaPJc@5{`8P;MGWbKj&5ai z320q1wvu>@Oy-&_bSudNVopPxjn(4nR`yDa?>bSz{; zhmPgkuT^Xfc7W(ha<>5(8+oTa;?lPSx8l*1J0TS;>zD`ZJ!#r^o(M~Hara=kuZys_ zIIBk|(|qmzzShBEG5S~(IWP?zmVF8wZtEu8H@a{`->1UgA5Ve5A*aFLqbcA>nA@B& zyqxyspU^njqeD%!S&x|vCg}f7Am4N@=;QuV}-v|63VQdfh`Z)OS4gPh8 z_gM+}|Ldae;s5(?zo7H3;Qt7?mu}?Zeh;`$38TS%Y8apECX8SCJ7IKjybk;d??=ehl34*P#K22;BUnKzKh3+J6(; zzulqzGUk*Rx`TC?v^}{ z67#qmdE&bR{onY9GHbD6_gL1&q0ezXafkhiUSjN5`~#=4U-#&|fo!)=w(r>J_(m^G z@*UUG7wu6_@ExPOIJVrD1m7`wO@b}Q@5lK*$$m9(_vJkCdg?XyD{ve86`N=+`w_HP zrTHxESDrietNA9n6nzMN>Ej=I?ALDe`K@wCPMx98-%8bI+D+MKU`psSzrTKpKI=U4 z7=1SO>rL2min2>zUT1OnF=1ZE z?vt!@=a=s2R!d#{q_X>vR~>erbDvK?joml;G<2Rq&bjkTGHjjm%gJ)Cw41Pfr1%Hf zq}_zg#i{0T?;QS&Bi}YKhbt~&J24S0xq_i1Q z$hO~|Lbfe7He!OzH8Ax|0h5sftfv^?rvulMz;Y@$I&}zaM)*9JFuF$G8v0*EfNEbFZ>*?qc@MZD8M=@&x9w2EZQD7aQ0& zw}E|gJe#+O_1K~8o4c5ObNcP$w^=VXYxg=cC&%6w8pt$zvm(&PPUfj~{A*ojhOP_D z^*P3GtDpXc!C^}|djuEy3Km(`bHZ~T{`1H!&KOjj71}|3m~drs^82hS-v_71=&N@x zz>7{l>zRMjM&Qd;-S`O<+YqH}(CptnJ9O`l8Bb`ieiHfd%8LqYpJ>qNhw^tSkA}{e zvG)@PY8${;BltSt>@!q;@k!w8HSjeYd~E_>2gsvU1THp$uO{%d34HO)>@(Z|zJ`IX z?N-LTT;e5q^&lQ%EaQnD6vo!odh^YUv%$eq;H~1_BaHP*#=4rZUd33iW~|pU)|(jX zrx@#JoUtZvq!$Nwxnuo|GuC75xH$O*wMJZ~b?%a&*#oMp){?FUFH5YmLw)WO3`GTL zy(;$Ie~)j~hEm_&bJ#N^yqo>Q!uw?629of8i_>NUcvp^(SHb<$$QkWb)P6?gfN*gi z37lib;sT8Ub6o^`DmtF=qD{5EhVNnviwf#H@bBbGap=iif8P?Z`Ts1+yZ$5j|9g;= zIyrvL#PNV<&6)S@{hNu8YTm1uGTy`QXwn^nIn`c@pBk_*zsyb&KkaAlO|Eeo5YFRdux<0!j20= z7u+IU@FmWvR=t8nd4bU{{bn z?_BSRKyzB-$=pF660?^#K;AW9?FEe2G;*5kW=W|4OxEB)R_N08rBxh?~o6Hv@M;y3mlB!_^> z%iz2B(Ir-oD*XC;CA&w{W+`#O){W_*JmPoV@lc%Jvh&jav7u#LUuq~f=BDzW==#7m^l%=x4?H= zPi`g-P5E4#h)*-?|Io3&C;O_wQ5ErV$~iubv$x3wFtxC^)w-U%F3eZkW+AKpi9R-P zmYL!&4}p)CK+oOtz|}l(mF??Qby;s~Z<9qX!BP16z~kuFd-uQl@eh{2NgmjDkqeV~ zcLaV}!I%h_jrp9f3qC*lN%_jp`tN--Wc90RMOOCj0X-gXf3C0}`KQP;(|_)~M{)+ov694m#^Fb>(f5!)^bu??_SsHHZ*k>DDRN^5`ith*nQJWe z^VxYqlnX&Nz{SKyY5ts<7Bn$Gvl!b~t>gc>@%T6PXC8fI-|)ZvqHU9JN82k_W|eE# zZMY-&=muf}GvLFC@ZpjH8LM9X+6(*cUwoi#!y7GaCigr0*lz2E%mAhU{JoyDNF^hQ z4_{H7#{P2bqBO>P$%`UzB z0QPkfGg$|`uK@e2$cEZCTdRvG7o}gawXSp8pU$&Xb?O|td!0I8R-P2TiDcfl_4Cem z?d_R0%A?sbnej9_6Xy?u#~5;}X)?M8Z8iWyBk-79kp{Pt41COnj+L{hz0AycE1H7iLdwJ1Tt*DRH0tGf41GX;aOr+;a_vxGp2CpH_L%mXL4gOdfocPD!NLS$IE@EY9u-FSO-%M@&1pD(079!91qRVn0P%8Z-%!Z;sb-E0N_KhgSG zdO^;UTuT)@t1~aLqnSsZA_h8kfPR*yh3aP`pIR8R7-QDN`XKPDYypQiB{S<1bw(A>$UD6;KVB~XWJ^iUi>-efm zai6p98hSjun!Zj6;-9rz){}?kApINZvvx1DtlfvmKh=v|Nw9xZsb9}^rC-Q~Xp)6ZXXjRu9M|0Bj^i&RQyE9qn{SU*hc0)>^sz_PLF!ff zMDjS2qs)xs-CgM~vMjm3&$|5`o7i8suXewoe|SPM!^yN?53cXG=^y=m5IP}z$XM*; zypBNMAbd~+9~8p}CD8V{(E31VeGs%RKDdeBH}m_e{Qg(|&*E7hp7rHfzZz`jt6aKl zxYNeJOPk?&&^6;?Xo`C;ZQe(pL{s^UU;177$7AI#Jq23oI8&klJa4ez75<40-(3bh zm3{QU@nzHIPIjwtmp$CuF(!B-_3YG%w276#*opqm4nfmCGtnpxmq zu|pZP-<`r4_C9NDxEdN+1&ytScGg2*B@+q+r}Ew>*MFwp`YwaH82crZ#XQvm9j*|V ziaXlQpl#)=cV(|XwC!&A1Q>L_!%OT%>xj+o@EO|YpZqg1Gs!UOEMs#HiqnS-#$L9Q zk29(?W;;3GA`4xk2jh_A^R=u){x^<>mJJTFYKLZ^|Kjgi2@L9cqeQtG#B* zM@CukgN)V1R>tn0zKq?w?#W!$gnhS*T>Zm*8CAK|V^NRITe1O^8$6@-9Q+K%7Yux_ zLX!>D|0?!^`swDOi!jbRu`49sU&h}lpUXh{x)Z%V%2<#Kt9B=}yc4_@Vs9_PZzUal zC$#-Cv>gVQUK((7u>V>yM$m_Rey?$VNlmkEat13`igFwEp?u^e+v0t(zVp?+~)ywiN@luK;^&Y;knN`DtGRSSL33S?f@a`p9_=%+T+L&+0#EZ;Up(TOx1)CkU}-ub~7y0n{czAiX{ zqXRG3GY^8B{{c6t+Kd|9B(~Y7n{7UIiZ)#wjG+I`g+-dPw>4LS18@}~4yRYZ8sPHX zb$8>hu4Ar&28JL9@{xHlWRjhy>E5l4$TP_xb5)d9%L=LK!AA|A3Xf1{d{S)f5uK# zOvV#E$OjI5izo;0ZM)c!&60PLS@pobnC~k+-~ajt#6?uu{i|PK=Fhm=d;JgW9dEw? zoA^ThFRH0ufGlpJU%X>YD!z$28e6P*(-HW;FTc?b8sFph2jKGr_y8|E!C4eMb?Euv zOL~5ot8|wqkSR;70ipZvM9xyb>NaP@u`h7f4(1qiaPhEWJ~F{y)B3MtSA3(U<=L;* z?7rNpc@0_h#t47S4`eqz!&sJs^M%NBBdZ308}y|7%+L>o!)F+~@*wZ&htpOC->FT( z7y(|vwUB2QS74tlf!^=r8MxE@W^z7|`|~>Jyl4IQ_dhkrs;ZrH+i{&|whTFUTRQ#Z zeva-Nf(6UTk(f^Z)Bnl#J2XIpqF2R8B8vy)A~VBJ0q;uMhUWU>&x_H%#;-xJI5Zl5 z%6=~&Tw#XwSTx2vo~)0_Aln~6t~9P>T;I}}HP*JKDRw^$ z?;+1$6(8*fhwG{LkBsXy{7`q`<8}7De1;sdqRoi*e$Y1)F9d&_DqiRbXRoORO&B@; z9m7L=I`moAsU*MMy{12n5ibOPCd3O(vtwtVojnQhLhIol?_N`W|A6nk@j@=#Y2pj& zr7eSRdv8Qq?O)Rw1NC>c)8AX*EAgDC&#m$seTqKUeXnbMo}Q}Dx16HStCRZ7@2{Mq z&#y67^3R)iA<>=ow?KDm)#tbA^D6p$fHA)52+X1B)qfiCuWXsSNnbc#N& zO6oJe2b`kM%RPP8xyJG--hY&H=H}7=(fCNvr#~E3+_7grJla`bthDu(2c@^*%elnS zTk?q4iHx!hlVmA<)B;mStqSz-ofvW>@Grf7uS?sUQ$zE zor6xF6`C^~Tca#1blYgI>$5^-W2~B3-8BV6b0-v#^RqTqmsQ}cubBR*KFLYN3_T$m zfqG^Rlue-eG&f8$b$)YfkoK&anFD+^-@L+4`+=It@)yb8sp!jGi~SbM4E^E}VwjMJ zu5L7uGJ1EMe(U--u9qyeoDbK@GddS8 zkzW5#H^-o##^843Ss^+H{Nuu^bL4EkDKmIT?;A-Gt+a;t|dOhl?w}!!sit zc~k4)&cp|fx8noxkxmuNL%`k0F36kV-GsN!ftNF2I&ju0Yl`E_`;@AE(V6TS`OLh$ zliAJo*Po$%;U*utN}roQ?w^3Amfz6N-cjI6wv&;~lWf^6TzTyn(b+Wodp4cv{5_pV z+bNs>=Z@~ln7afkb4Z8%REZA}`jQP5nM4j#;7irMjjNN}|7ADZzxfR9yST{%FVf{s zX=|3C?{(eQH1asqO;|5WhP9+ywx((Gj&8Qu_Y`f)*384+9x*p>9P7OU|6AqI#f|^Z zbN>qW!rP%fyid{z6kDOS-NAq2T_$U*ts?>#K+U*p2)=jz9id z_N<@EAKzZ7bsx@-F7G4%&Wc@}bJU2<)EGz$Y0o46#Q`z&V$o=naR}eZ{aMyFa#`*v zyMAI^*O`;;>#Qjg%;b`8JsP6AncpJHcn0#&-)HIO8lXvz~Rjvk@1FELjlOQXWe0{mOVmkpz=&U~3c9g5?SZ(e8mwBxhJk2$ponbKr& zKGqJ-TjTe}w)Snx0WMp2VXVFSL&mN+0G!lUulbF-RfmboLm!kcH99;Jb(=H z`n+x2;BR+mJ2^&3G<_@dD4O=h1x=?Om%bq?VinHs*lRnHvO2qc2lkMmp<5>67qIVV zPMa8i8DD~)&nlZ3fBx&_ngjol9B3dP`Wa=`--w&BZ9v&_v+?EOQ#QHGwEl9D;*=y) z(c86NPf4<1_4>Z%O%?$Y-6aSg{wr82VOP8@`nE8tkg0Wx?D~4BClJV~n8nSeY->j~rB5 zV=O_}%g?Z$lU&gm7>ey_Z_nbtM@<9$X;|tnm_Ql&6AGdePFO~cT4HdA;FGY=?IvD{ zxYH%*W0x;rzM{@`%M9+eblA@oj{QtNLHR=8Bz{BR7A=8JwdOM@AboI);#5n}2g6m9 zSjWAFb=+%N$DLR+JlCqp&GOac_x0CYJSb2jd4UeNM>=4X^}NqvPZ^qm&n3fLS@@?v z*mSei!J!>5V&m_@!o>I%li#Wg+`wP*(UoUet(&3sbm*pGGO`BV`Wfx&s`j%O-%RHD zSC!WY+~`b*hlz{U+4d9ent8kd{t!-wv0m_H%4b50SXS`o@)H;xMd#FZ<^-^P z5x&r0zU$!9ro&ELCehGB;c_vI`ow<5}#yR4z;}bP=Y1O@;}cQv7P8WR3&R7FP~9W9Gv526~fn zXYIl+(|X?l^z;0`wNFinKPPuqD*Qd%MOa5A!+Hw*{Rw#8F@F*mmG8*APiFo5$o~}h zv~|1G_?+2A82!mGrog9kI~Rui_Tepy%nDbO^P1R#}AkamqSj2%g=QY&OiOt zLyOmoZ=glynq*p3jts3eD^DC}Qtwu*-U#?4%U5ppFZiIB$;f>N zKpYb1*i@RrOaoNmFH5ocfOR5iDcJA$BJA<8eq}Pgnbe@*_n@fM!&B-0- zrH2F>g!V2^qP>~G=<52qdiB+sPob}(zn)fK-JC*S)tG%+o%M3z47qtG8h!JBJbe2P z&{>C^MrZBSMVM-mVH$O^&iV}F zhA{;`|2K8khr0;pC@-9+nM3|x>8#Vb2=~WtLo3p+f%)&zSxXYzThU>&C)t^i)3hgf zCw={YNoU=ob;|R)2+pw5B-0wvsO4T{BP*2 zbE(@ad!>73!MmDs&vmZSRr_=A>a6yATW9TU%Gf$yUk^b=G4#C&u$<^oL5@-!+o_5TEopx5GyoorWLzCd=NJf!|AhE$Ocf$de60;zOBJ z*oP2`;X8`lg74PEqo&u&&-G3pd%G(`8%eR` zven&n)x{n5Vdr`#`kldJj_`O>hYoQ{e*3Tg29Llh_>9kal-frY!t?f;D*71p2=<=H zC$0TzeOvlX6EsutDPTMPt**iLqh#37Lk(=ecq-V^fla=~C#}pXgD>!=GsUCWa1GF9 zn6*K7kD2ySy7<~JnDDW5)^C~fI^=IV$al^7O%7qF1byjMHeY1c{s{Vy;p2#cpAv8r zeYEMo&X<#t4v?Flh7NA;B3!+b=>U1$T{@WB#kSgr2@uUGHt$q) zaGzKHl-cLWXYKLGow8s-vuCfKs0L+*HWha&uAh3o@!=MOg?%bf@N2^W*kEPI{-7n=9XIvMzozF_vD@vZh5 zq-ry27-i2v2k@7%IC;nL z`={?Vxo7cxHyOYGQrqv(`jYD(--v&F2{Hbu{QfsGUu$2E;S*>?dXeZvbsa>vl;2-- zfoSA9Vk@*aGlt)PS4zKsddqs^5~cxL7FYQ+FW&J0et*C5`(K^X@1I^f+JQkds`lNs zUB7=iFlhcA0ltS(*9QI@*hf6!qxD9g>?Sy&Q<%ef62X_Cn3#wFP$`__CHM-%~OHeXStVd zk)X@q>wN!Bk1XjEjJG07Z26I4_9ONfN&HYrR>FS7a3A)V_4mbNgV~S9p0q~xr$q<) z;tkjxSH44@h$eEnD6a{z0L9@;LhIR|P_I~oH94Hy6{x+Tff$D-&TuAQMNoSmKCp-{ zXRi%*Ll5Gf!n}*%TP6p}(c)#FvCrAo_fGDW&-1;f%%0*`dfDfYJ8f*By)lVpjut<8 z)k*bSl2~R>@tT1r)sv?(ql)4cnbx*?;8JXVba)YK6jm+!1I)ggC=cqdZ$nN|UgvnMVsA@_k7te(ml3pcTFoKeL^+lc_B8;LYy^Fmu&)8w z681Il`)0mR+Sg#NWcsJ^+5s1lE41C&_!FIFt7Fo;B>BA*MGF`d}XWW)3h; z1B>F(!Rmhw``+F2?sIA{LN>OS=hU(LoOWy^`pAAs;vM|tkGXGa z4En8)!NbTctwT4}WroTc+pC-3V;yZ#TBsSA0?aGTv~%zPcBH4QyU(~D`flX;H2CRT ztlw!}G4h`Fev`Y8In}$5d<(R%eX82))eK#I7FZjY^Xk!|8e_x{!Mi@jPxPnwp%;|5 zVKVixE~z~ZGkHHt`=pR#GbuLa=-(ph%3WwkyGZ_lA@R_|9H{{^zS znYLfhTn;W?5RdR%`mXVvlw_Isn1jrD!|AvBEZa`sD7S?4Fy;O+`;ftr@ZU}x%pv^i z11hZ0u_M~Qo0zZgPN&b>?{$v)OCDdv)4z_rQIFi!el6wIQX4~f-^}}iN9aHB+4iXN z0;SP@58BVFt$Me;+IOOTTNY(E;D6X&L2TQ{?NblZ?j?86I)0nZSfzi0(}g)qKQ{7A zd*+F83F&vlfnWWrM|Nxfc4Lb@-{<(!TMjXYHlvqBfF<{?ImdrrakRSBvYyk}^``A> z7agrG%(YraAxkyiT|=(K*U6PQf?SDDk}FZMGEL<8@l#gc4F4!|Y!mG_V_zMlkC*r| zSqJV(&b6xLEwph5Yr)OHkk0c|@VT%NuQlKh-yh?fW^CkxfdRG30hS<79ow*BF!;@} z;!XL`1Tyv~zfF{}vHtXZAblT9-*f1DJ~@IsI-KOMId2I4=9501=Pw0$t{A!u@+L*J zA4l>PnQG)Kebre19(iTcRA;=}*J!^5Sfv~4&#nI;xb~i37-apFxI&WyLGhWkU(b#| zokq;zL(sJMS*|tXr{VtA$3Cu+KGw(nLDMfP4o<(Qgx|%3$}Wm#S|9&DPTzY4Klb(g z_C>klN-xSCRC-aQ55KdfUzBUz_0vfI;KvsCKJLABC*TzvUY~?Rol9Xl_6K~jg z9%ESYxgsz0I%o1OB1fKdx+0xT`s04){9Mj9U6B_a96B+C^LDG!jVyI@tm;|mBk3jv zHp+c*>7^z{E?u!}PQ6>HcPF{uRPS2Faei&c$@Q+Z>vhlPHT70|>Rn^kd*t`7AJxXU z=;kc?{099r^KqrE&tGfKlFAI#m8Pt0N?<5a3=cM8>;cI~hU$2~^|H<;g+y6!MLq3^&`k%)C#oViZI|V;| z9mc=FW}1bh3gFJIIjzR33~dXa}C__v(J0IsKXXshriX} z!-=tXWsdMM+Ed5TQ{bZp+r}H;toU=qc(=nd?W?VV_VR$)Lo2$U!CA${jGLWTBDi%4 z&z1x)3*ACq!b)>iv438Jb5?P3nN{YjV*kA9$lprmtYVc_Tj7CL{C>_XuAn}P`sR<+ znZ;=}B3mmsHWY?N+;`#Oq8D=60bdxN4g=#kj~vzc;?G%WM--4jeqCdKIToud%I>~mAJH>PF82)N^rwmx>8AF#IYM@2$`O-mT zr|?nzT`1=?K$TyL&8T5X~C7`VWzVw^=g6|~!wqP^4Y_t?(3 zd1+Dge4Bb&smGR6mXT9yi3fG%RGZUAM}M$+z5Vf?mn|AhJ}~_%2I<@3Xss@7BOswtY+vs$+q^iT1JfL9X}$`ylV#I`_TS z>L@z*vHZRXxpU6Ze4lUaeSbarJ9@}t{?8`7zsz}G--jFk{fp!E@I?c>T;Ge|nfx=K z*E64Yym#jFj`x#!H--Nk%I5R^G`=t6xBLC=+%MqYt-qZ2m7e#HaKDm&_xshnU+;PU z4EN9S?|#3X_jR84Z*jlh^Zo$uW1ja%xPOm-xBhnCVw^QL|v{TodG3VC1Rc|V!^DW3P!cwgpue>?XJJnzeSU+H=O2=^;J?^pAFz32Ti z+&}Aizn%AWp7(EYzu)uz0Pka-_eZ#Y&j&AH2SNkuGAs5;#+-A9OW%Dv}LWmfBuNv@bj2o zCZlgp!S-8#Jz2^8QWk`Uiwhb?7Z}~hq$$vl} zv}WBp+ln78XFca4d!O8U;Ab%S4wG{{f^D1k&^e(fd6$1u$lkcw(7*-c=XUVs#h38o z;!*e#-dr3CUoP&BmgC=~p7*eAH3t3B$Lh#Wd+9~i-qt|2ofo`k@X^u!zExilj)z#S z*V{B>aQxVppKiP2o4;w>_Om8~Y?oNAoDpSs%sYm_$KJ-XLdBFH<-#}U z9}C~JJ*}(Me%S@q)G?P>dyfVB?|zK@?*BrY+x!ET{}31pi>=loaNqZ~J6`Cw>;8RT z8Md)4$KTJKpRonr-@D;~efn)-Ter9O!)`viCd^q9kwE|2>0dumy%@eJhHrFkMtCJQ zXEpiew6}0aPAImDXN-dtJ}a~{3qQBc1uoNmy0qG@*=@$>ek_)Fj>fS4_T1n26#V@> zeEw1}9^Q_;t+V2>)wW!)eXD8YyW>16XsZR9J&bS7D`T}!RQ&Mc>Eg@a)|XEt$`*5`Ns0H{zc{QDoT*UnDmSd{q7q=Enuly=2XIfgxh^%8Qb1 z$3A1rYK@_h)!%-|$l#rl-RC3Y*7@d7=l&qyo-cX*Mf>a-m)G?DW8eNw+knkB-{vtN zP|u6M<1Ce_$W1d}sP6NFcmM8byKbL;e~!9;&AwskZbc3qMJDy#bxx>}cFLKr7DF%Z z^$k?b&oI7_J@eTo8DdZBd~#MDo%7k_nZOc-hK}J=jv>>&N4$t+ehlAX8S~;e`dO~L zgvjx$SvxTE#qAU0H!f_ejxcsUKfXBlFFf8~;Lb7boDya1m20@3`ZT``o?*-8BGJJ3 z;sSlIvkKn11$y{2xI>e!}KtapwK*8a8 zfr5JUjb`SWCiILLx=wU7<=U+RXvX+DHRq^~MsySt|6zRYvh}p)My?e4to4S8e(N#L zE7%sM4bf=>bwo!q4vc}$WKvG!MsV5$?wjF{gUm69%1VHv1UO0x#G|{&$sImnaZeu0 zr202fe{L4<=|{tfV8I$<^}LuTJ7#zhu2o{uD_nlO4 zN_c^j^@8V=^HOUS%Ihhg`ZvJW=og@~;mE9f@HvXLa-M~$+wx^yWgWloQPW3Y|8Q)l z%^#*uJK%Bac=@C1*N5YSNj9G2+v{RE+YWTTVH_figVtw*FSS?4z`v!=hzXnzv9Tg;RRuom zo%}C6%i1zy{iKic2F|v^TvQ!L zk*TUfa`GAKSb;`^#^>+4eL#)OO!lE$=w6 zYF_*8@yx3vTjhUjqQ5V5y*16cYB{ozv$w}KzGoHWn)S%@Li=YLKh>7J3ZLz#V(jIU z()jzy{VV&&jhT!=8v%S++8>^lOYAJa#n)#OM-zcBeHB&#>rw^2C04kWrRZ@#yzoNL^O3&n|EO$1gf*@ecYE`NZ*K2OPT1gokTh6uex%w zZPC%J2h%_0n=L0VZhIl|1dM%*ytehMZ8tDJ>W6G5*^*0$eU>emL#*HO0oK%|(El>% zKj%uT^*79)IihjKrr8R=A6v3f}$TI}h*E@9F$*8U%g5?wfC+ z2RuUEIiE#e;GS>e?za!V^V_y-pKekeEj#=24QH<{`|=O=Jt^L?vgYOK8M9C~&;^#-$JKd+=LN8`yk2Yq}g*9z)0It@?tdKGiE8kbISoBWHru znyo$-S*_DOa6b6X=C*@Bd$sMs&4&$~i`Zk^1WsN@hgr6HQ`?B&{@R=A7`XVmrY23AMTrYLijaD1)RT7gW-`4YM~eR0~{llPNAXa;TOJ8i}kAJBz175{uX zxXz*7asGkfjd}3K@aqbO^uXRO9TK{)6djIoX1;RqNO>36 z{piz4-vx(+zH^4}#6PN6ZA*Wg{Zx^$`R6=SL@Z@yi{w7*0>~`ow$7@(BFOl&rVwVV zHy>}U?j=0Hhqc@*wpsewYp))yeivDSuh)(@4A}Yq=R#-40*U$mV=Iww*iJfoP`R?* z94*DyRP3v}3OlW>wb~az7b~F*x@al+faHhRNE}MooKy!YV_Z%D8EfG(d5p(1 z#^^B5DdxRGYfTpGx-*=$reL0#!!@QIYfO`p#+2W~7}Ll~o-@Bks=1Q?KjE9}d4>*P z=z#em#_#i7Iw(m+2R&-$dg)*?a8GgQU`?-3q>pU*PCEEi7Id&akq*YVbWjEz+zuTq z0LOO%-$LjBT_g&eU7`bERo^x!?~zLf4$P;bgN#$q!D9{`h!*r`&-eEDy@Ab|oDXaQ zbf8>16VW3S4=@Q`qKPpqf?gB@C0cQL(q5aiXY> zZvv;c7@Y30=A6r#$il5raOm>ZT;Vj9h||An%<_pRod-_u1g8tZX*oEp1gF?nQE=5I zoWh3@=;lUnYUq7RC%tb!=F+=O7vif&UpZQ>m>z?#zeAo?w5FD4U;J~YJj;jnkz*^0 zgO_$mp3No}#48(;<=OK$pDfQRnA5FgUkokM`GonMIL{W&%Mx+E$i?|TNS?j-H4hyJ zY#g78j;Dh6ze}Eh*JOD%sbhRQ<=OeP1b#e{a!H}OY^Xw zM?;?jWt+$jW~{7B(35SyL;H7#=Rhv2UxKF$ctYY=v1Tr_G5&XcL{<&=ESh)~nqy5&gH-b&kXH9vLEj_`kfp3w)H- zo&Wz#u3QBL1wli`%qiTfm4h zK_x|7W&L#lW3?@nJ?Jjdm0z__#)$x}9`*WV>OrDt}RIK~w_2QK|&&=~Z=X}ri ze!k~>gs+>iZ~gT)Ow47wQ_?{n!krzb=A5m#vC)6Qt;@jOJqCB#Dcsrb+}wt2gS&ft zxKkYu?ZIn3ggfC(xy8rv7yTV)e8R8A ztHpC2_{|2t<@x9&bLaLY;Vb5o<2s6dfj`2xCdMwJzuUj%-lL&;T0IpTg};eCBHuEG z?GmT`eR4-kzAbRdk&Vkd+=!+gVGR{$z0pZLyNNnCI#XcUtex7TAFbVutR44SUU~xG z&tojn?N0b_8J z`8uC9e`>Ac&{%Yk$EWb-qsH#dX;@#V_!f9)PTkSZ5RZQ1dCt>X^Z7n{iSbV5KfAcK zJdxsE=%@?t>RATwLMInTkPWJR^kr~qc$|JLJ$Z7WS~Rs1nzArOhncW$0M;YWl4OOU zCDx=IT5|PCie9kE482r~UY31i=%w=+^zt2^sb4>BwBYAk+5NAc%#geoe#*VOkCabr z&%Tg-p{#-JzrDbjHTb@|S3&K-?W#AL5k5bbxx^$k&Z;Gy-mz?x{r+(7+1N_gbk5$e~j)1RY z%lS*}D7K8h*p`LZo*3DKBeM&W#@FC|<@@M;JKjgQcO*tT4vg>e-Q+@SQQ*k`P~7R; zJj)9544B{2=XrddJuj(zpTo6T@;|~w^RmJPcddA=AS=-RhYr>LQ(eWg!zVNT0P?QL zadS=WTvo8}pfRv7?b^TUllE7DSuut+0$1*RCfdgjG^_+~s^3um4Px$&vu!T5Qfo(W zrWxND8Y(Fm=-g4z&ncNp4b$iG4@1Q9<9uh|TgQ7j?4?a+FD)m>+4cf^XgLF&@8VxJ z-k?2i$wKBUU8nuOWe1MbBp8o!sh)G?Vf9VWF8pRonx0-xTXh83jwoBJxJ3Hj}f|EhO zmj8dF>%TYOWc>HscD|n_eX1B`teifV6f!33&*wELo)cX%FBvO`CRrEh&&oV!eDp-> ziw+DPnSLVc&bT%@PF0LCD)+ZsFd3)p9KB=LJ;JloSbP26!qPnA%tN`wH*nU;-9zE- zRx^*>h6wsluoA%5d)7BRAK2<^p&5TxgX)3CW@0NXE(CT~s!yxCKmIy!X5ynP23Bf* z+|R>%k{$1_otL(sAbHaPUC7RnU(-f>A+|uc(SC+|Zg89OJXyo&0`NoJAU=(_Dfc(Z zhfge;$C)O^%h;og-JFNu`F40kd-P!iB>$oej&AIDe+cZpUO9;E+qDH=Xr$E zeCj!P_Mq?~*==pY9PE0(O=#NP*n};}K%Ik$4MHv$Ip~DHNxV)rM=7v_dd8Y=Df9Gu zlWTuvu1zItqcLdQ|Fz?A&1;N16W>2D`J|oon>BvfoUjJN#g+~3);r<9GJe6-I%`e;Oj|kJ#vX;9hO)-plwh#)cTt>ru`RPE`DXv}>_C8cX79B9%jiV%YPko~>L%GzwHG@Nz3?V6iC4&x z*iPTiiEo^3@xMBkPDTf;LF6edx@3 zgy)InPI439wIC0+lM{98FP&N22eYR*9UB2#cMtn}{n#(O8@r(F@dtMoKk&p`oLgPA z0{L1wkQ}4xz_-|cn-v?+nO;vnd>TI9gl>2?-{a#~obdiD4%HNz*hWD(pFFlA`3*Zt zQu-}r-_mcI-$46nXfV3nji+P#Yzq`R+oG?qM_%nH&SPxjjiTS@_zgah&Z|ogXU)U! z;Mqjp&)VRGOZYo)^x>NO@|?l7*F3np?4UdMoiBk8=02Bw*!g_^Eav_%zPWEs&3#1p zH(xWh{bBC?O`H2pjo+KQ#+;3Rmv7}T&--W&L3cj+d^Y&d-h=P~ZyS6xcH(0`@Uq#H z$QBG_$@}cl7cuv%nfof%egXTk(_Vh^tvycuB4S&!Rx^L?{jT7%wL^r@=gGAzT{+(5 z-`+@^!AE=5Mb5CWXm4k$GixKX7ex+580#+1%{wO%iwFP9bgl!rnC->jqz4p(o9xBl zbau$K>lMcjZk>aju{_(2!AS%wO_1-9i`e6W zVd{x277buG5`(*mGpfRYd~w;^Z!7kg@lMNP{nm|fYRn55a~=L*K0154)Ap=vVbPRn zGe)(id;Var0Pzv{T6X+E$!K6}92VxI+%4{>DGPr!@D~t!Ya`Ys8-0QCGjpmI`25T| z_~^e`GougTqoL3ezCGuoio=(lHX40OP>H>+MEbJAc)5Sa+>hahP;T7M2XY+Ya{=A`0?yokq zIo+ep3j!q;hM~4%lli9OfxuY1pW z#Lt)q*ZO#Hb|()m9S+T}^>}c$j|Z1{JUFf^51u3*%y_3|2|PINALqfbk_o^zJm|rE zkzB@qga`MtR+b0Hvv%`L?w1puHOG_Z75&n9aHmh6YcEwi=$Gd|e9_}QzFW&@#bTtp zERPsIW9;HVV~-=h;0<2NyA?gJpMZDr1;Cc3(bf}&AafZ`1-rNyWy;KKKl?| zZ0@M-fzS3L^N-1A72WU|&%QxlDf->g$!E`=51)O&*gK%5Z1Pe*13tTpwXuBGOnfQD zXVmieJ?#f`oWa}4^`AdfHW0dxyr-9Lb9s(Cp=PZjC#&xM2X;#r&ZnIkcLv{Wy1je8 z3vKS?yMFN9hJl|g-%0093E&GAKzxUxe=skKq$&f4q&D6?Yz?soBG$jmGs zpM9ORGknIKK;QeS;WKpIkTgCsvIP_lV>79PyQ2M|z{&Rk~7wzA1FS&e!z&BlfSbgpT zyBD0`+JZabk=5|S-rFABt=z(p+R9PHHe|oJN8b3~+q&nCjn$rQSm4fW@_Vjc$^qw^ z-;K;K7u!(vLKJI%4%={*u?=$PulL~+Li zcB1lLUp*E6SPfrb8!C1x_@*uyxM82c(8bNzOE)8{3;b~p#&SMuSU^n5zXsa(s`Raa zX?ts+v+&w0HM#xx;@G>`gl_I_mH3o#sQ)(NP|9!5@5UzV+&^n&KRwUziMxN6m)b|a z!P`GOhc&kPXzfJeT;BdvBl#`?hg`B91Jd}!(7wkfQO1&~kKQ65!PtU)cZknX#@R(5 zG43>dL_4A15|1$YNc@7%F?uQJ>7{|4cAw!@=_PDKqn9GCUV04}?~hF9moI&-dwv-$ zetDff-hf~Bd^Y^D8-B3-5(JkieyPn1e~$LYSE{}|U-~q!UQR*fe z9>I5B!Dq|cnf}wsJ@ClRf9cd8-+veW82s7lk4TNHGmP&vr_*lhE&izS^v4`ef500p zOFg@7Ja$`-^K?FXL^<&Jtef;oK4*b;Xb-a@C#?J`D_^y~$}tOizCnV|ckf`0u`RyJ z8f(8%{#O<-tS?qwK+IL|RJi`x{j@X3)Up)b8UK&lh4tQijn495{-bu`Wzdf0!=GQ) zX&1gs4itQNxF|TZXFg=!nS3}9JQ+UZyZ(HJm%8#HV^8Bl+FAPTr_@((lM69yWIF$S z2fH@189sCE!ba<}NCbG`Q z*K<4hdeBgKXr0H`bA5ch48Fz=(Eg+JVB16|Sx0PSRYrVdGx65U_gj|fJ-w6S!{+0$ zANjW2oQGkoZS`(js}X!`i1w&Rtor{%?$OH7=Ey~R=C_Sv3J44z|ovH4i>#<9?- ziG{niqxr3gsW4V!JFav2Px+kEdnTrW{SoK;Lf$ntB)>UbpEvNF-whMYp7o>YW21b= z=YWZv4UCiwCUy~Vbz~pGDhz~s@po)-Ion!K<(+#ik>;U;RDVneA zC>M zQzeYUF@AqR_)C_ic8vQ(H1!j3Y1SW_GWL-#hK>GAU;l1m*!S_iXz5=5ZW(d7=D(qh z?dNi4#=}R`n-AA7u)MZYR;UI*x0y1^L&9qW(}Gdl;KY{jEUG1x>trK=>kZ^pztVuXN|`|4zUE9eIeJziMoYCSnHiPvg&Y zljEspjLDy$y%N7NQXa(K%W2rd7$TL_73&(y`BXfh+$t+W_l~zR;AKXv=HyXe>s}TP zQC~xOsQ>-ep_&ikz04WW4~pHhqS_muc#Wm;N#SS#d%eZz#_iyeTGZ0#QO>Of#Y20~ zV6TKTC%}l4TdMP1zo(|bBHovsZTs6!KlZcj`#*T5J!ISdWk!2zM*GQbVAOZ>>=E-G zd(7;mlvbP`o_uxJzSnj0-VZb0yR@749_Z%1do$h}-OYQ;yLs<>8Sf42=Dlxq^WLo) z@Ad2Ez4C6}`$oolA77P@|1X*EJJ;h28NYvv-=y>5yPDo7iDTM|S5q1mbS-V*Zog;6I0O zRw43~I8}5E@{~Q&_;6$b?@GprZxol?bJ;qkbs?r$=|M`Fc@Og#& zEpna?UP@gSV9rzAu{aRkPurdoD9uK$aX!n?(c-JtHGD* zSUdc)`B2BoAE}GK<;iki{y#8|Cx7Hq;JtS5W%!|QeLkep7Ca%`hMz2b+ZxXbxALxHvaP(2%|Tui`^w6-`Q`|-*L?QEPQN~6 za&0a)`3@n@?LQ2i>u$4J>16g~pkLnS{4VjWrZ2D$uKgHd&dR~dhA+y|S4G6oCXv_k zJ92Mt# zW5j&oTd*;nBA$SK()yf}Y}-!lhbAYv4_k15Szbwdd0xqz3-U_dsmu-^&CX4$zc3J; zsoelQUAR^Bh-pH7d4Ji|mTCwv(MW zvGi;syG+~IJ=s;tEs^ZH0lVh~{5;97Ah?N+%?fY7gnofpXk=G*_&M65vG-piuQg3} zxpj!_+M}Dz`KDJ6OIPGHJdgb#ox1o+wY3+JpL%wSdDi)xn`lcve0ad}n+sd=ZUDS; z#c{~HMX|2(?&Dt^2fvlM^}Thz+J9e9M;W}f#VIklx1*e7Szqk00jx7JZpt9m8eK9K z9n^|GnpPIv);8AJHr?=FZaw=r+{186cptiE?>PRK2f}-Sr+vx2z+A@K%|l*Biiv$- zxAxJVNijN!zsj90rQUL6jH@>yqgW?&%a7mcsJX_{$k=omIYTr;{93t`%8k`oHJi^S zo;qG%PUqi5BgT&1;)E}SCImAm8mSG0FA|L~kN3+mXr#=ot&&M2Q=t*9cZFSV?{`}7 zwX9X<`T1k%w?omc>wWiethYITiX7;2o^p*-V)ELDILT7hI>=g=O$5)QoNXgnSF`4< zwd@UIRn;##r-xOWCBYgdus0H{vtla=;Fx@HbiQ(RgXCKuBo_ZaU-bBURQlR&IV)W^ zMxdzx{Y~`v`_t@+YV8We-)o%kOBchBz%+ZJ*d|T1I~b$RFsAc&$~G~w-SYSA*d$uJ z6YbhHb=oE)!Mp0Y%Qn%!Phy`e?`Hi@I*#=_Qs(N%-WRAILWX`sc6T)K|D}MdBhgtQ z)={-o%~^YNrQun4aoW}J>{56ZUe>)ASF%?7W;)6H3=j8595{`O0)4~n$lU!)_+OqK z-Vf~ktnq%}KgarXbo6t7x1x8r9T~kDo^D4@w-;xJ+Zjtcbzj=~?a}h|I)pjsG3gB} zjn%Ih>E+Lk%lfVzgX$SFj^@(Cr||xrTZ??}XO1Jlc{SzVnsKaS9P7J`qp|e< zbIdu90mpz7D)7On1x{TTIL)O46^FTV>qj?r+9#RgSwRiT)Oa=nXG=G5s^y2?xwZWm zaCQ<$O~H8zIL~wgXTrpAG3V<3=f=+QU@sjm;*6uoO~!6}!U>j~N39v+r_H)YA@2(| z{x#nE{*8*s%lAJpo4qe=p99ze{fU?Mf_JkD@n3j8o%1tU*ix#eF@?_u@SzV*3MNm$ z|BpO}ydPKk-Pl@evKr`NU66G^AJt-i)M0BNo1Zup+TILZZ@~_E3OnQ(?2zZsEi;LC z1Sb87T=}OXOM}~N&8+WJUocV$+|}riDr_VA_4!GSpT)-mb283&(0=>>;eVDho@wAW6Sl{L7WNImz8?Nl4N}h982i-LHcJ4@=3M4zy=ZIC z_YL6N_ci7i_*Ks3C9*r0GLL28b~(BNJlHdt#_q+Ad(`tmKWWb8U~sp=!|k=;QZOrw zj?NBWNn7W9BFLZjx1)!$-E$0*jqf*gwvAs(3{YqFGWGVC@rN>>&E%Qi-g|p$dizjD zyFH`bmeG!9wD)AR-=Ho1^R0HzR`kXy+hOHXhijI3wUGS!=WOItX1&TNxYR{b5~@X^dy9j>RxDyKG0?<7>^|%& z)kusN!^6Yj;feS{$X3}FQ`xJuxdJPObpKn`0uz2jL;gJO$1?J`AHx?=9`|E5cL!fU zIo#_{#OCz%FL*Bwai0G9OxATg^lJCSy>ok(wtsq)<-1f)a--c7FU2<~t)R{Ua!vVf zl4s;3HzUO5f;g?9I48ErQ(Q}7uR%*;+ zfeCM`R*gM}a-HpKEYFqW|KSzpPCDDyEvddzbE!U7UorZMpfBY&jrYMedb~NG^8?Gb z0=rQ@_Dofw% zj(0#eaP9tdg7Ky8kEZ{R(_OgaPT2I82_Fzj!up72J|ZN{Y&D^OSsMP=uho$ zYmD$2dkD#WN2m`8-OCS?4_41UfRTmSt`CzLyG#s$f8k;ArM+M5hONLuc0~IEa{xR% z2p%2+4@2LkMjw5>(T#jMmVfh_9YxRM`L23{uPM-u4 z+~_2JTZSBFU3~UT^{26CI2Y>LGx){dywDf-#V@**_DH_J9(zx6lN!ZF_gnhCxR~)s zJ|XvXW?yp9=j&B}8edN~fbsPh&o%Tfn8w#D4}_$V;x|LOq4x)Y@mbM({C~RA z`*)55{*k6^_r4i&9gjBUrk!_$){`Ch37Ir68Wr7(-YxALx?i5}(f#OfD|FccUA90s zEx<^l`{jA=?}DSkt!W(_toON*5Q+G=FZCUtnkrzc3Ld+e~^vxNu$WD5%Y}wQ~g=wZE3%y z5O_L+dLuSZ-3ip8RUhzdDfgU=ApfV397)OG=_g~0@Ld_-l~K=VE;;oHz3pJ zdS^UJcVKU0Q#=2W%3C(P^E~#m*#}0}+qyi&!reMude+@OF!ql2uD(9tNX@tZ34TEq z$rp~zM4qFAtqq~Gti6Ug50y{hH^?mI+Z(+(l=^Nyy*Zou$oPZRMb5=3on-ZK99u6< zC((Xo8#-hTV?Zaz%E?DQ)p_Wu^ghT(JT*;+UO^va^ifV9*{)xbvMCb4Ow*yXe@P!! z25H<@E)5)kJVGw24yWS#vOj%3N%g16LrnQ3$fMC0;FAE;_$1j`;gPgs$Ro+@_qVYA z+3*PTYhsB{b++BTvRvzvq{*If_yLkVx9zpDWA}HGJr#|IYX%)>JnG%SUC&$J4xG%KPmE-`GAGRYcjk07z=5NkdKJv$ZstF!a&e$Yi> z*)1*5F84i!<%<}Z1B^%UGnPr;QfmNPw0hHy3&OH>%8@%dj~{R1FY+gj+==sheBr@y z)-k@$DY+Y8<$d@^>u7ifepd~i7-R9ppsPPk40;&-%#(k+&I$k9SZGJ{lYd(l2#0A$ z)&)E3-ZPd6V@s=h&-Xi!38wD7zMIJV(450q{k9%HZW@jKWWP&e|JCNv7__@1+r4A1 zZOh@BpB#sNo7)Y2{RtSK6@88AhQ9vuIN^Va{od-8!3jO?_ug_ca>d9<=m2{7EbK1D zv`rj|{q~bsd;fm>3AF#tetX*bj_}s^Yj%Cn!FGKYgS+F|Z{PJsSN{IS|1bEzqDTCr z2mep;zxDid{69(ic<}!`cB5qYhpkqIcjAA*apHebH~9bf$>Za%E2$IS-TjS{t%?b0 zFDQh3)xJ*0@+>#sB$yRW43eDVKfYQFd1-Xpa{Lh^6RBS<-9}q?Dq3CV${lyU|If}J zd2H$L6~_LT_~_ zL*@%d)Y0CSy0-zHU&~x0eTiYSPV&KbW$6DSWoH}v{pN3Jzi3RF{T^AI%N}_4wpa&u zAaE~Es(Cw0KaOkMkkFH$DzyQ=B03 zK`8mka%w}rOYY)pf#f^NY z)S`GNyOe$l(qLTV{f>R(!FG&Mei!3+GqC0TG=NWWxb#_QfIX(kzBRDCq&=q4Y-g5m z{|L5G3veF!e@;?kuzphQvyQ2S^6-w_@H6C7WWcX3{rzQT59?eXd_SG+oawFcI&Y1i zOJCy`uLSSUvBv9;Z;j`F{`l8;HRHEyZ034#Ao<9IK-zpaTo5pEzK1J%<0m-{-|IT( z=F*FYh0DR|A!=>dx-J$k>m8>(NWQYp-uh{-72N(h=*DOD`FZNt=uWEZf#32*DB1Q@ z=lnMXZO&7EdmnO19%Fs#S)X&@zpDZlhgExU=QL;5=s+-eb}n}+a#nrcRA*LS+WlzX z1`j)*L!?l#vSK;-;3{mdqW6#PWa_{ zq2%)mL)4J$-5x`qMW5l`Q+VRd&4Fb5E66wQNZnhj+Ds>qo70>6hTJWmL+ub^@~c=+ z;r8K$E?&iRH{ow@nCIcu>1*&hQftw~9VGCL@S*wdtqrB-*#1h0{z9p_?1RS+vK|)C z(Pu)8H=yyp`uxegtELm5y@tI^;d~)|K1QFT_bq#^>E_YzUCmyoatre5vlQIMv->vW z@cB`mMc)l2=aW|vtGlLzT${oA8^g|jVFNtjIKOz|aozpy97&LOE?-6U!i!3rUnFY# zl}JX%l=n6vV0dhi=z(?0Wxb}d1}{1j$xq8`Xa8_kCC^s!9X_^!A$=6h7oC(QAH6k{ zyos}+@s~IgREHeZUaxazxQg6Y&ByAxIKQ2DYrvduO7Qvac`hzrCFenPE#oi2M|C0A zMRj7`d(WPqt?x>c*V9J`9Qk=0IyK`Fo$mlf3b*dO8cX{XhvNf+TQBj=i*Yh9<=y3( zd*AK&?fhQw*1*b-CUCDkiRZz49eoIgdMC1YN-|3A)4%LRX2y}3^l9|ukIpxG$ByMB zzsExGdvc22gubZqDByZ$?LnOBv45Fm^H9*m!tGSu?KfA%Ft42 z@>{^t{eZFBYf7@_;YTyh6?gY7iM-9cHeXZ1x#vqanA$_b!>8Cjc4)7_T@SmyEzBj? z+r!a5SDf}&f!zY^)-BhR5dmd-+%x^dFTiPKr{?g>C?}d^($+cYdolx@byTt$8k4VmC=Bz-Zo%MJV zt)boPO8^sj>#m{bgmyE1Sf0_iV`IyV&3n%2*5(~!Y~JV|))E^f#+qnfBv|2|AODb; zWeiy;n!DbkOFO5?o)C3P-Ttmuf3%;bKb_x*w1FphQggC%JkQRpt$X|x9Vh;N+ztK) z`}*h(f4zZ^$znqqizf4+t8Tu2gUDF>qHa?5I$t?0Fvy$<$tYl(Z7WFf- zlC3kcl5I1yl6z-oCHKwA;!fzSWP5oQHsZkW(b^N!?7I^@+I=4$R(vVSJ@GN_dyfy` zesu1TZy8cbo+$c~JJ zxlii-o6PsA9AN`} zYWkKD)6`uElgqd#j2PvVY1}(TEORRHhE`$=JLDf?qx}oHO2{qhNV+u^kS)zt2gzR! z_+<<2ZRE!IW1;9W;0zC!TR0W@R+k+UP91Qf>#0A99*YuB4Y+!&^BsJ5ofA*#G1@=T zJIqUU8`8!}97JcxQ+kZ{8jX{*s^VzQk1q5JM!^;@^We`9BTbx_G{S z=KlMSe6awBf2MwEle?eygQBkcdDpNe*Rl@Ru?921|L2**Ke1jN9sRkR`UL(DsGpcs zQ8Mm&C#-pWhy0*Z$kF^8vh-c};f=e3YnOif0p}l2S@fQFF4BIt>|>paJjI-gT>7zl zE>gcyP1FP110@Ha7C*n z&Pq59en0xx$N|aR2k=`|A1GP{{jY)c*9Mb`8vNLG(EECF7i-B`tRp{TGdYV}$XR?! z`wO1Dn+-hx7n`%$))9BS8Xe!I=F~Ol-uv;P`nkHW`Bvrd>{atblXZ8#$95ohe*ryL0kvmZ{Vuu|COJ;%>MEu z{x0Ef8Go13_cF$?9KNk&-+2jZyo@zp%sQjvbf>YcjqldM@8#aT*W~WwRcJktcO~RK zMLBn^H4AV*V9~SgxmkbzQD6$T=ASS&VOGOg)V_Q%GCbS{omidf-%s?vuQBO;YYVyK z3#7*9e@{9=GG{@(D{~Hz*JJbDGxz7F=SybfATM(HpI1MeJA!-9cV)&c@M0fi#(u`! zj?9>IXK?M9k0dktEPB(E8TPx0A4z8PF*0M!N3P7!Z}t{|*J3B>05gJ)fX2tang^dE zul5$eJH^3dpHqWLYM(vbHxMeRA{Tl8aM4*G=p?xH_Wnm|$dze!D*A_&Z;5}$eP{(H z$5nJK8}fPh#?-n3|Iy*lv1iX4ABR4Qpzo|8b|v4P!RIL_ffxE$-v#JU!SUBjIVZ69 z*{ghY_s(H%YM;ZrBzJBx`G|cQmLcE#xKniiGuVR5D$AaL*I zF@W1Hc?^2iT^_>#;fT8~z@LAQK{Wdx;N(~6LZko60wx~5Zzrf|yhYFxp>pm`aY~AH)@u~7 z;H{W=e<{E7*|yJ|=sa}N<@`o+inTSe+>?7&R^?F-4PUL<=1^Fgyc?Q~BV*EJE$zF= z=ZP$1{>$mJGMM}seI!*2u(OZD)>pHA96$!*t2O(4wPu?;m;k1HHN|TUz0Lh-5jf;KX@^|nt6`FR#O}t`&j29@0`q-=wCU8qTMe8D>04yioz)+XTp!F*&3}0 zChIcCS*`rePPyI0I7`txHh^y zdo|j4=w|5xzEd4`;23*Nae;e;Yvg(wu4xww*W78lfjMa232?BU`?-s_V|YIML)UY5 zZ63Pm$G&;d-{I27b4h&2mTmlEoE!T&9-XFT;c4h_}E2KBCQ8Q!NplHa#}9{EO*awmC* z^8d#}hgY+XGdk(CRAV2<^YMm08%w>MTRZk|Fm~4#aQC)ij4xhH{>8xTD)JoDaM*(E zvhkr@)=2lrNS?h)4v5ZS$li#}!R}1&6MA*ez1TiO-Qdg8YYcc0@{Bq8V zq{D73{jz)3$ihAc*qJnD*TUxHDwdNY8Uwa+ls5w3zLQ|?_i$b}4?21gI*NdgyoG1J zr!^HVZ4xbk%a*aM7vt1@W%|5H@OUnqJm7y633C+)3ox3d*6-R9VOc*YGMw=>lOEO#zU+5^pV?e$~O+x zv@8lH9}PO;mTB+={H7YCZR0~FdnblU_Cde<;l*~=^3B=!CCvRGIEX9-U(3MLYV2!o zUTwS=XAfd8@q~TY^(LOdyKe&H0I&`Mvz;;TXUuOh<~VDxZ#F*C#6XG8(jFWiD4EOo z@dj$Oz5*_q!O4lx-Gy1$)LAFCM~kWTgkEZ0gfBG{+-0B0yavd=ZY+JaAF}nXt+#)< za}UV!vG&zg;1lZnm+o}Z**4`RLu<|2&-U!+#?ry(nppSOeK62f*!b@GuPF60fl-o} z6e!7fx4M+rXf1Km>wNFFP70L>k1smh1@D7X#F@5M=Gp_S=F+dZ=g=k!7Grf7cMGsu z!Qmz+Pp}%LKMR=Ge9pDCfWHrVIn@iwCMWOZxA*W4_5YHQ8LZJ5PY-)A6U3X|=eJ+Y z9ubb&) ztvpu@-^e6*GsarBvbJ&7_BiO0IBO?eeiNT81ILY}6W9YJAM+h*a^-q>@#A76dFvJr zTIJ^DzSX_us+A+&HoC6T)peibH|)bVIu*I${kkV;0k)avKSiPaqRH;P2^C&Vwa*^5>T@0n)aU&>cZe>=9)i|nmuVkL_cO{@31DyN4)hJ)og#;^dt@_TFM65A z{a?_F))Ps&p&IM0&FbIPwuvw3Mx zXFO5(N51#_b31d$BCJ(~&hF;Ohd(8JkX$U_u?Onbi#L8d??hQ&#bz}h@%B#mM>0tE zsIg1oPuX?GKH~Yg^p{oP+IVO4S#moU{(K*vnwqV7Er*X>yCVUAnOv4fMu&HxBV?O* zj%iT%x9*s#iz*7uT%&xic}UlE854Zo?U;C;?;BH&e@u(WaX!YFHrQBlr5hVKmdz)= zJMu{Pd}r;uBILB;zwAE7f3ClU_;Gf>^n5b*ETeC*Pse^;oc-|x`)n=jU$(Lr+s3}~ zUiR>=$;Z~Ia+25f#oocrxNZox5_XE>&4(%-a)6Sl6_6sjIUrbz7|aW z@cQ>^BJlln*oZF&hJ|C$dUOu&t_>!2uVdu(VDeWJhzIhlNWLE5YoFWLApAx-Amn~0 zLvm5*A=jKZC{v2`_ zVjbv2#ud+IPna=H=D*Ge&ByjB<$ny_aS!;7u%=P?%EaYoV^eyz@59(q_`kE15F(w*R0&4H>#hZJsm@jkKiw&H~&EWpB(s3J_)>VsY~;2KJdozuHV^Gg^WZNi4P<&bxxE)$4iNq%QqtjuTuCb zV}F5mDX~w*EJMUBRMT9s^7-_2J$;D=c3g|jsSDa1z-q}{blxRF=sg?SmR{OUZbEE^ znVWw+&84S}H8>jU8;^&h&bj&P@5}^8v%7)g@!IJ=IP+6Da_KijtU@^YuS<m%YZozm{)g!*ix#N)~*yBt2 zzbugaGj@rsQHX!vEZ;wL3A)Vn_f7k9+W%MM+U+0L0>-q6|BC}j<*Q_lYk0=EhS0WS z9_;&kV#e?KXS92pwqm@TZSm%ulkpoTqy6E<={R|h_NE<9*kP>-hygbIp<`BEVX(e_ zbf|vw1*P?E#V6PA8*@s1`?w+XZQI!cr~c=Pk2_{1wqXB1)hUPP63g)8ItJVV?T2EA z_7uZtgSV7hAYX0OM)WWCskPDK*Z_$I^nq?}g%;c3xxL8JhrB#3$NOjex2E34fBV5w z<^S|e_uuf{lxrEocZ=h@CGg!^@ZDPR-P-Wo_BIVD+1C-E1{}G7`B|+u@h+-*(Z)#yWxx zbodq8uN}jm!(KK1++5F}LyjCoCm#Y2hmjY4e=Z7+V>7{HrO%(kzk747{J9|hT*&xy z2cA2*{!r5?^+#SAQXhEWVHu8Z;KSmXWAVL!9(Bj%?3 zxkls9X{~1RE;f_#=bEVh1Fh+q@#pwH<~zv%lewOL$MEWYDuX1c4Y!}6(s^up=f;~fiR&`MjpDx|ct1jo+ zYV`*#{|Xsl=22z*yk=W3%8nyR?WYj%ZM`DFx4F=YBc$2zw7(^|(3fa12K^n#gx~4s zxoZr3{Jd(PpJ&FulJTnsUz(ps`zwMEKS$x`C(~gc_W5}R_V0k*(>mC(r~D*fi*7@L zkB=9{7yF?PzOic?mB(*#2n_tKp922bf{*-(B7g46gx~2$8u&l?6!1?JeEdAcKW<8g zpR!%;+TQ&M;HUPdJ^Uoed9gT+H_a$1C;qdXdmu+ocd1=nbis*X)whWBU9NUx(X5f-fogN!hIVt& z=L(g3I5-85TAJFQ*Z_R<{zDfk$6|1y+h220B%eK2;!|F{ZKMwmcPp0htk&@^Q1blV5EU$}Kq^r|-k@kbYiY$Syfs?(*_|wP_x$PRQqP}G zQme(<<>(OkeunpDv#zlIG`g=9T__n^=lave)*eCrQM7Y!>~PATMqeMz&;$KFSsYyg zt)jO*zq-@5_GEGj7fU@{cz*ROzHx3G>WugQ&fwnjWqypO>TZ)G^?!7~_M3FV*7rrGUeD8f}bd<1ygu9PNXH|J365pIkV|e>WDi<`{4S zXZhgZ!?xgqX5go>^qX$o);oQ0qU6Wnr!?C=_YnRw_$f(b_bJJE|8VIGMJ8wDHsAa5 zU;XdzEOg($0k|FceM;n8Cx{~__zb*ieHLGT=df_^+-%ypvi{8(6P_AvfOeehk2p~X?ys$?4-gw|8NPpKsGOIBIl}7{_)}r|Csjo z$klnL8(toU&XHXegO_!_%;V+il%H(vE7uP+=TM%z(Bv4T*39sT=QscP^FA4b-)z@R zxY(HKH!n!X#lHv_3&6!h7Z)dji|)pJ0NLmtb9eUOG5plj`T7;z_|L-QvHa)J;4$St zdp>Fcd-zZ3eyYLKx4@I<)0y^dwEwThmE|ATT>LcRObPtxA9gdYt24$mjW+(T8RKN% z=TOG)F3)I}WVA2IXkVDoJ};wvc1HV5+J0ZU&&wIUbnQv?`!)}%Z+~iVecNWAFTD=m zYdv)1>4EDzeQ7hN0j8g7(5w=zYwR?8k<0$M=$-{rFGO%joAQbQ*(iO`Hck-GVG^MYp!$PwdT}%zOBL=ZCioYB>(dL35Qx2E8`dqx)i3fV7X zGwc`I-w@nl{3T?SIqL!3SO04482km-j$!Y6R&-R#jyY`Opu4W?l>1hG6d*sMz0>9M ziM^4}V;FM*YdBo%W9)lZE{!s}+sOTAfTwfU(j$I&0p!tqo?lNqbspb+)XRCuk8|ZI zn;KsQ{GAB=;ryM%c#*-1Q=0m4$f}ky)@?lNkNj@q|6XIe=8(&0&o1VYztoF;)81bG zlDq$I<#-c!(fVw!W@~%-#}Wm8oPOk2`p$J!cYChG+uyf5J%bu^_VYD-E+DQXT2B5u z_n*mc_5E|>LA^{o=(k@|Jg84vJm`IRgxZSRq>rG(W}n|?@cuQe9k^6%*wUlXgVfKE zy_Ue%md(}z{*K1e>n&y@!z9-&%|+2$Mz?tOV2HXq7Iu*vZ-=%#JxLu6!8i6GyxUS~ zYAwjeaP)m?hjqXeX4t&N8qm*HeeNcS$B`hHZkvVx8~~Wo_uT6 zmS4Y>fAD~LcRp}ebNA@zKX`YflN-63yGJ{kfyL*D$v+Ejy#rXIo_Jt)K6fxrd+_DA z>ZTkt?<2Ejt>XQ<2OrpN?q=>!oA-4Wa}l2-sEJMA!LwX)%}|L;JtgJH-gJm7ce&Noel9hLfs_64FOkhR-e0O_eB*`_}rHY&zia0ahWx_(Ve^2bQQe2`h4*CB=dRV_iw%Q zfcu@hrtX@^SCCC6S#>@BLnNM4auLsT-ZwGZNzPRcJ33eAM`gb%Zha1NiM|cJM$y4K zFSi5V%ei<0`Dxks{P-U1A4iEpEZ=ja<_vzXoEzn47#{F^OUq-I!BZAqz^4xx=Ov1Z zD=wh8LzeP0Xm2Ig$-XO?#09r0-?U$U@7#P-pYV?CxqnLi#>yto_ZjBnJ@6#oo4L5Y zPjs~F`@A~Vj)}d%TIN{S4KI7~f;_S2m3`QEfprjj<}ba2$?LKW9!!i{@eZ>W zzXls;EjCUKdHvX3`{R>K+H1+*sv};wnYEk~L^qO$svNokeg(b_jg))wht4xqMlbvv9G`$s`7*VL$Rjc~(_-SU zYh=?b$gpW>pRIhjcKSI)KW`JSr;kT`eW0sSex{|9AJIoPeb^YO>?RvejsY_*MoN32 z`goTJg?fGgYv_+G@go)0$VZC_iBlK#ix}d4w+nhS3iOu zGj=boun4##@ds9tzYmWn=cMGtLe7wkq?AKN}B z(#Ht;_u-}4;@qxlCSJA*eqZ1Z2qp8=;d8FqjoVoG#ofTSadnG#@RpJ->x7pfA=kec z6iT+tfcMk!Q*Gmo{eYdA;l>+>Epr|7yTsLY%om5_-1(fi z+8vL7jH=fxS)0J7R17yx`)e8_ZS2o#?I}Ngp0P#E=XySS{;_Fq%4l!QX#X^${o{=G zzh$(;8SMvX%l5VP5@iEV_=(ott(6%1$mX*SG4^lo$;xLvHO>Bw)&;id&U=gZIJ#c@ z$A&+hbHe{loxPN8X>@>l1||?P_E$+_bzX^mH#(g9M2auoKQdg49)7_0ZosU^M00=A z#w*+y(8H{k^lHas#+;9AZ8tVJ@j&;!NmFGB|}4?q2d|S3?nNJc()t)=`v5QGN?+PC zF{C>7zmUx#JJpPp@yEbHCAcnsVQ}~n=sR2n-40+pZ+GJ1MuUf3#byi+BSXo}9UsEq zMqW+|B_qh=D7yBZiz{~D2|k0=z>ma{Mf4?EEj|1c_=sRn*j%Uxc0d8O?qd1te-c}h zS7O&mxb6q8V{4{T+bpnhtx{}HY3^JEe{9#eRF~gzIeE}`ZT*Jk(w9CD z^*om+G?y~w0?fqK%tiVI+d*@=%FbnvHy6Iso^^%hf-PiousAP~HWy1jqC3s!&%=H5 zVa+ukjXhGCS8@;MYS>4^1_O36;~2#lynQv*R5~@wdFb1ck=RjDbgPkJo{ePrWg)e( zto-oo=w_?y;^?%reJk1#<)MsWo@42ATqx<#$DH&&4%=9~?PCUgU?VmAY^0RFmflR$ zd$eCtAC{l(xF=x8;}d=kSlBKp`=X_4YRRV4?tIPKFSSlykM_&YfvbDxW6+*(xQR8+ zNgsP->2Ju7Wc_Xbh4fdRXXBqk5KV$5P%BdwQ8GFh;a(cFp z?$+3$wHUOfv44lL|MA?kwWY?Xo2PBZegxU~_r{(&?+@N@rVso381{E`Mo96!r`6wA z>2I5_KV)okY2yTQzTNis$8P$wc3F40x|aSDb3(~SbY_20AfbBz@FFF z8rbvtE!bN+N0YM0XphfWgIHb2_eTe~-I9#&eEDj| zu30=rd`LYT&jwm#+U6Xc`F=r0yPUT8+?>zx)!aJoN6>vfdfBVF^+#*3lzI0LvDf6k zuQy7~>R1`_#p4ylM?G8RaOpSuhrh-73F~889+&+WCDv1cZLk8{LAj>S=+2;V=&@oa z85_m#5IikdJR%$Qu749RjeCxi~SURiF(EfEA z3-2m!coy%zXwDAjwa-TnKf=3`YdWWx*p&_gIyhWdyv z+>Qf}#pu&f*g%|zOuRykv0cHE{~CwR9Lrn_oa7}sD=#y1ibD2ALUe1b+;kV<7XE27H%^G%9Vh!&CYF~+-UgKGoC_)cq@CEjC9(MjHV zu)bPvi|@a2<|Vr)8B5=3GM4u3z_;%TX3VQS{u^TCh7Zcz7`C6Te{oKyZNHVz2G9A7 z$w$NAuSuuj&oh2s_&If7?mlzB$Em4W0OZ?m)0s&-rZifnKFEJkx5Cm7v}b&o_2551 z9XjYInSgFh+?jQ?Fj9LR9t}R>gKTO8QR(sEKz;K z@Ws#`JQf}9B!8%LB%;IN!DIwFyH(bc`)cZJC3_pUrS5KI>je9CvbyoWW-&sftnzBP5v2fFp;Ze|aF`{L96 zsm-iMon!c`Lb8E=-oA*jEy8B513&PW@|fgTS5^eV3C6xsJhn*Rac*q0%V!732N9pe z7w9f0-AkXHR%`7RWWM}_pztc5Ud)`AfLqTV>LdJ?^Bh{gUNXhYsR6&uiesDwexWP; zD7U@|_-(XyP^>&7jzjxr!tYYXxQzO9;LXA|veMhnu&@UJdjzn3@rp*P7j14(DqaC> z#c@^%{&L_~a-Uv0{OZzY2U;7&jQw5YVo&fBz!Pl<$2pQQ9{k&ZZ{JbuZzcA<^t{&N zDXj;3<%Ge@w~rI{n?LjL&i!Md zLhzpspS!Vz7o%qk{I4AY?>*7-YqpP(^f8+K^7K9qm)?JoId@|5Q+A9#dZOq5pbtyW zrrw6(W$N-sXQC5~OdXignPx7M1*7RJQ2>u9u7%8LLH?{7Xkws^3((Q4(a~+_%Y46$ zN&9E?SBHMzOFz8=qr>+u9QB@LhJ7av>?ZG>=S73G!@|QF_!}Ki;mJbj_AM8}>&T{f z6?%;C6SBqN!^zNZv{>>W(2!+u1{~&6UHVP8u8PIk-_T3w|3;sW)o5djmLF2KKKyYz zW3j(iO|ICwU=sb(yb_yAXHsOBh2VMFQ~~O>Nsj*b>@+#oSQ?}Tg^%|B$QWFn@5(cl zHdc|lp;)ro*D{8?X$uFg?VW4v^0qnHZ1bEjILFq)c9ShfT^^0=zIQuJPCB^Z(8pji?yK?F z8MpSdDm814(GTBc%FA2q7^ZbEFIOF73^Dpl+ee`NF?lL6`myrz3+eE? z$jjS-Z~22YmHm*?K~dnP$xGUzxfc4+TqG}trNi$cFTa!;f7i9|Zu~D>*vQN5bl6?w zrS3!TiLSbX{fvc;ynJ)CxArdH8%s0f<>=#ty}{z$lb1)+;dhaj1A*TY-s9j|@s*VB zH+au!SZ(|8wGru4tp$L;iC--&>mn6Xcgm-sQtwGprQ<-V1l zf2FU)a93W6hOCT9jL)z^X@8MEBBO#y$uRky^fxO9nb|^Lo3OcBkpaJ6IP$$020HSI zI%Ow)SAv(1kqviCR?sd5*88+`;5}no=QGB>jCBBVlQ{o39-^;&`s&ME1_YB|#dnt9 z;pSuIxcM$$!9K0bOSezoaFUVNfdjqIGc{5Mgs;8;SnGiMI!wp9CFK zdr!}Gjz&Jn1Dw0P5!>h{yoNnC?A-`5Om%Ut_t~HKa_^4bYnzf!^gPgOn-rEyToe5sr1B?}3&P-yB2LlqUdV{m_C;7nW1w2=dTo&#C$1BL0 zX$7wO$O+KbYIrf1zR(q^IoiIk4^QthR(Jn@XQ}6dPV4esN|v3_!@Ki?-n-b_8GWW? zRR{GX(rLu)H^9EpBg{*+E;HUu$)Uqt-o4D-b7G&!yj$t5>%=ZFQgUWb4=~tap0$zw zQ)lGIW7ilS8WzqY-_Yt6@wUxfmaidOOZwF8A=18@JT?Q))tbi5j< z*fz9B@>|(J@{Noyw8+q27u)BDU2x>C(R}I%Yyd|`<2h-2EJ5U%+5cJ#{?C&Z zbPeq~{$jU8H}kiOzgze_gTGJlcP@XQp;r2+PMsKiiM89+xqg28P_kk%V+$~bEa>0b ze3Pif9YtKV;iy= z`APh20Qo5=H^i9l7q3M30)sxQWtR%>7Gv+J9!$W?mCQ3XpK@zoV2xXu_YUm7mf4-} z6;K!QmJd2i-jZUL$XL!uyE3+ja}df^j3C<*%QT04SH5~S-UaFF(rEJuqlF&*TlqS} z;IGl-G%WVk*pq7o!XN!Q;A);{^BEu6nXEGcm@K zZ%cgrqZf^i@OO<(vQA zM(dY8+vQzXzRf2lZQiX)lW%?)&DQU%>jB12atMulTkW0AaOE2`J}mq)IV3*$R&C{5 z3;c^c*D2p<4_ZfEG1f2Fm2ZZZ?!m8YVGVQr@{M*c{TBI_i+pP-<1g~91^JeXd{YcL z*OhObFpv+qe)&fGU2+~w%`;cNb^aDvn~Quivak^OM*B_ucDrhQz;n-GJ2koSw(H3S zjLZ=|Q@hvX=4sDuWO%~)_#I6=e~$4eUOfkSwB1RLfLzbI+*d^{)~2OMmv_# z{@;xDUozT%GVRVW?9TZ9W!nCE{4V4B7c<(=XSDy*wA1Igjb{aRpQ>-Ctz8*Tx3x!k zwl?OrYj2n3x%oB9FE8trW^e1f^wHw{hOOI^=d>NdKnk5cFIRHgZab>?B7@@KsaO=#b@(Ya{#hrR@tH zGONp2T^$mzHuBZ!WAy8gDLuTqagry?yVF0O4!N|4cSDzZ?{?KcDIGGZ%eyXpMKAN- z#je;S+UTl>Qaa?69$89(FtQ zcBqr)3_p9ZQ;qX6#uT9MEY{cBsj`jdV;f(~^Xqti(6fy-XVn)u5OTtY=rh6{qz4&G zfpbFpe$|xD2<%1YJda`9UFs%QbvQHQN zec7@R8@Ls?DgPV!>GQu`Tg~=`Y`MJ4SY7&wV&@uL&o3W%&o5if@8R7Q)W|aL`sIUt z*OM&;J-k~)K8AVMFBjZ*Q?g}Xmv`Ou-AN9Hc^7$V))%>ulHD$hlx*oBw>O8i&1F5T z?lLi=0iJAGmSLYFTh1b{sXP1h06f#*FI#9YBJbqDSe|?KscOk^$JHeVSi}B)`;_)P z{dOA9ku3+x_={{gFp0m&mIKI({+?_}!C1~SzigpBLomkk+>r_kOvZboGTOx%?ShQ< z@Qn75jP@YYHuEt34aoSuFKz!k@-x2AHf?gcy*YFgrSNLteL&mVy^1Zr^q_0+UTO2O zn%sP>-X0^`;#IxKF}K zw!{Nrofl}ST zE2#(n>N(_F&j^+1zOgpqE3NX+CPIJk8hb_C_6~Gj-Lr7?vmH*a_FB%^)jRpS&OXrz z@5}DZy%;~ZPv5mN);46J&TkTfztr~qy!=5^SH5e%PtmXKPksCQjGI1-=`*{%wm0#n z_m;o*82$F5U){%1{^7m%y|A!&LX(qSHTjNduiY@vxuf)s*{@ySk2{2YV^%iMv^ zku2~MAIo~P4(9#?Z!K=uS|C#y_cr~mnBSFyi)`9@UwH_EWq7?Q%ka8j{8hO&_?7ZE zqrT7oYd-5v(fo!t_-yIZ?12n-w#An?C8E{SJX$sTAj3K1wj@|GGc#YO%-s(;`y2Al z()U9muP~R_xU;J-bIxasYoX@}&eM4VgWFa={ja-64X)Ff%SF?vf7$DqAMfsUXantD ziyY!DEo+?QZ(d%vd-PKq&9e~e-5OBNy=r>owNr;})>-H<-GMO*eb%d8^>y>Rpd^`ri-ls<(H)u-YeZl9g}^wHV$>4UQu+Kw@Xk*s6E!jaEv zKf0EEn%;pxijP))_=EfM_)dLJ_r@wa`v%4uWUQ?JV2$%Z#;JJgeOb<6;WL0A8aHuL z_w4+N>#*0Vw72a%J(97?zBc)h@MfX%6is~*ox#j$SkE{k*ojAL(__qa(2231t5`?A z!@l6X(cxDvLf%1t+SiJ$4kquUPSBZrx5=Cj;trnkoLS2C(b@PS`c`~(3hhnAh=jMP z;BODM?Ze0;=>p{|`qyfU@b(GT>RNBDlv`=;wqC4QwCo}0)mF~#a-Y(KDc)L5rT-U= z9L#IKo3+wCE1B{yOuvGq`$i;(Ob!_1c*(5SsAsh&S2oI-^_Y{Fl0R+8pX`OBo>i=B z3hT9i{BhCOLe`A4$7aot*Wli*iC)NVsZushUX^n6rQgS403v}($hNbgx@~tI_iwQ z*71JEaW9{9hupvWo{#IzIueW3I^siKVAfIh_nb+Nw0K}=FFy|=x8T7R;$AKfE>FqJ zml^vf;lW$IwQIr0mdq;ZMXey@Zq~x035AYRm7C*~%wv4N?*DJQ?+HI@##cn{t}8Ew zx#J^F&iIH=JH&jI1D!s`QpT7mBOd*P9haIEworP>@qqcbd!m}nw4oMzOqt7U^ zVGr@V5k`(n9(Bs`D)q(tt=-7)O3vWFvJ!1$hmx@xA@rtk1~)Q>@I#_J}QEt!g-b%zY}g;BOOiC}Iu;j6DYa zWS8nbOi!j0_a}c{wxsZfoEy(vUY!P(SNX9;OU{2MqSu@E~ zdtPHD`5$HM0la}tBAWO;c^j%ttoLHe)u-(zyJ1S9?0BaE+v2bj92f3Q{Sa41QZwAc zc^Nogp2E3gbf?YG{}bYTGh@)ag!40v?pfYNX0aEA4IXIEGW3;hcfUOf`toS&ETe1A z!ZyfjFNSaHe6;ltYS2Gb+=+xv86%IoCTA* z?^F4LKVc20WOGLpe-#IkovyoJ66p4O*jq`I6Ke)viv4L1MtE;yy$aA_=N#ym6+thx zU_aFIZXCORBXFWi;bm|;ozJq9{NsjMv`m{gK+U)!P*n9ur$g=Cc@4XoS{R;?37O53UOC0`? z#2t!Q4Ccqq%91r005gl-8306Mc2;Coe{u1d+0<5g6WBg?4_qrc)L@{kmNENNS#|H71|&F6d0eccTyj8*wBRc~tW z?m73~ci(;I-Fxo&b#JdR{;YpxlS{Js_sP(=H`jE2llSQx^iO^IDr@pLJ{EoJ>#WOX z`F&ok%d1-FKj!_lHTlKAye9uK{CkQ1{AY|`@$z@l7e9|nzd2m`{GWpBTl@*B^UELl z%wMCf=>0Y5{ZMp#==-2-NulzJAb-(fh(CkBe<0p^<(QQ5i-Qk~K_&WSkzpq$~f9kXUC@Ovm zc@3HS>TgKqeUowgb>^6UXY#8&_iH@2!aDcnW6^K?UvJ}GdH;wp%X)TMzS8fDqkpWi zZ!#*W&cBch=5eCFci}6KUHy%J7Dc@;^SfLB;3pRTQ0Etpm;Z} z?~c(|F=iN~!tV>aJ)n8<KBzJqkAWxlW0#T(40e~l0SwRy=dSD*TQc#X#SH%R%7 zp>KWjbomeVpx<76^|SSOQsdr!&%MRCUu2v~2e|i(eD_jxcLlrUd%lB|@2dEp_q-#z z3lHDanE27}i2k&~zNFuKd-R20+1)eQ_A9{RH(xo;Z(;uXkN@JYML+e~dgRX#Zx;W_ zp0UF-zQ}jKCw&1QtYS5O_WK!Ie*=2(9exyjVVripKDiG2o_9ufb$&_K4}OPxQ+w3@ zzxHKGePPVJp?GO@7sc9sO|j67p)WHI#nZmB$e1VpH^nDOvoUj`Uo+9&Prz%kere2p z1DbGtCTsr3fAMb{JtjW&`{ey9G|Tj@4?$CYpYYs|#*^Rt9o_{S!MX2?C;niW@3yQo z(DY~i{m3Z^ z@A|t;eEyF7W9$U}5a^nX z1-A>MvF{G{&mKNZ1$!DB7@$6CXz`qp8h`0H+uLa^h6J}cVpf7(!1e{7bSOb zjtKlEo8MpL-F^qTMtVH!hUB9MnGS6JPx|wl@ZD2q@ef?M`mG=4S^u5Z)NeEIzg@oM zN{xr?x#MFsn}g`n{08IuKJ$ma^CzGC1Z%O@@-ICm+MoL7%bGv$=Y8Nm@8Vq-SijE7 zKFHZnfBb&rF67*=qI0~#Z$kera+d}J-1Eo_(bzwahxXrN{&~*B9sfOM#Xx-JQ}9*f zAj#ri{Bhn7IdF9Dq5tkOXDPk?8&zZ<{Gi|9{jX!c(^;5bl+Es^kqeObBxAh^&wD7D z@8j@jcmy_zZ~j-v#GhomehQlXOL*O<**o*`c>0^Qzs6W(9s6VS@UOAXe1kRPO~%aE z*ED9P;g@BP4Y|izVeC2iA-!aaV!ukhbQ(STi|8qOzWVi%>;LEH zex<@bw;QAN?HFRFJt5}F^%!GR%WwCzm_)GV?uTOha{~`VP zHST}wtukUmg}>?7zDEDP_A%a(K7Rd0-k0(G<{s${(mQ;MI<(&*eNyj(Ovre85xY(u z-`2ymtKZVO>q=#Vliu^k6Y>K*`I-Ou1K8tfTkXoOmeJ=Q@*CK{$GH5xH=-|0xt;4l zlQCJs=k?})`3&c-KKt6g{mq-N{r(4|*ZyEGe(is{a_Y68)wq0?KEM~g#F~r$>vjDe zvDx4Li&LNZ-*s;3v!ieDCFZYwLo<8+K^WH>=h78@ZO&ppPlxp_(hEzL#yEceFW{dxyux#)<=?S;evUlNiH8NobcOejJcoSy$B*$|@VT$T_cUK_ zF<&zIS@PYNzmxC%81M7$tM+^6=Xn>+AIa0d&;0-Mx4moV`+4iF(|ps3*BQ#i|iyB>h(YScb|*kxnG9o*4Q`t<@eyDCf%Zq*C>-5C*Ekh@^>O1 zZ($sWmJjHA_RYUA_I*o#q5r4p`v>?Fzj+^jzs&lp{*C%0pUvdw|7H9qpSwqYzDPgb zhtEX)YLNbNbZYOnnYZs{fqZ#3pKGsLsO2*iE4(1fd zDUeejr$A1DoB}xoath=W$SIIhAg4f1ft&(41#$}H6v!!%Qy`~6PJx^PIR$bG<7;ue7{^O-yd1~Z7#-;CqcI9`wA zkHqmt99QG``8fWuD1I@DYf-!v#q}s|L~#_n$JX>@A#dVFdj<*y%~TI%rEUx8} zc6{o_5r4<=si&Lqsg))E*7>7sg|Zdyd!`zny2*X3{H+16asOH`KDE9WpW3WOr)uZ< zo9C||o!aX1cNm?j*ZJG!kGwi~LO-?}{I&U`&UTMKz zI!*8<_cf{06n+q$+N<#gz6ajo{ucMPxVLqIzl;3w{MH_S(4fV$_UX(1AUf6F;_nE$ zP}br84rN{Py43ITobEP%-JbqvyGOkq^?KCnCH(F1NBce6=<%LC-X*0x zr97pLlr~cG``q8>{yy*2C$FzO`fxz|2b3L9c0j)m==Z_p=+q(iAJX4oYhm#vgbqrs)EOK*oudNDqItx1)|#YHYRR=8BFTxwk|`?_?vZE?`! za>#8M9M!`n1tqTv@NN8_EU8^Saw3^)2h1;s?RdukX3stJeG`e}S%4PE=ml|E$>|Bgb z-`)Vdy$RWGs|U~3X!Q9Gr28=j{^{D5E{z74R*Oqp5ToaGjp1>6s|LEYwZ)|=lwosv zYp@-iuGhM{fYzB#r|Wx1T=td6C_G*7_jFO-KoFzmbR(gl(FAQUNlrI9wAUDLN3yri zrA=v~hbJAHPZ+nSlOvTLQEz+Dj!y3|S5NOGpu2kRZi6Z>r#xdXIp%UeUMrzqi@AHc z)z+m$qpc1v)9M@+Pw%f)qtp8}^7d=owx96aeJ1be{gf*E175!kpI|71w$;DR*2`SB z=}>0?+7&grs?x2~d>5v1x~m4dOjj<->ruI@*YE0%UX4EY67qTp&G+=kUUF9#D);m< zJ+;!)3-%7_TJMm8^zub6B3P=*sp_S$94@q+HtAn_SCELE_8@24-_u2T1HM*z%!ATn zn(Eg;`!(+9>y!0c%F~DHA9ESNzfKQ&w0uz0MUOmGhYnS61P40(3ao8nzs74$q#anv zM0(7(n&>z8lW5{xlesmqz(1~yMvrT2r^B_klX6WN)DsI-)wNIQwOX2RZT2a>)@dB; z+G%k;?vuaB5ahbmqs_&nDL65>(@<%r-7eWxaF=@*t>vX!zZOq$rOr~5(LJ%$VdhON z^_XiDO9Pn8#PZ_O(_CB3r3p9&J-Oa&QRjLSMlx}|#blYd-s$bxl{(i4?Rq?MqsJVb zfRXHS?WFYT=?)BPVx`_`b8T<)rYmi@8rQU6va8^}mFgW=(nToqOoypD0m~uhS$pEm zq_!PT+)TE)_hyokf3vARbEOYAJMasxb%S^2~{gGyy{0+DQ*M{nBB)L5?9UwgDN;_N+xiYGwiMkl;L_P7VW>9^% zMxA<7PptDbb%pimx^35XQ7|*E-e(GOg$Yi;N_V1(2BY1s+yzVB(>0||gORT*LJe0~ z7S|pkZ1a7&GJ}eCHJGPwGmpsOD!2m$5DgaX`VqTUxpsOyYx{14x7+R|YO@Ew)%7k{ zu`90dritx=D7Mql*V*ZG?20HfvBRv4CU$Fj_g$@5TvOg+S1ZiKu6;qSw6NRUQGSz^ zY+{%B%hlR%?ssXq$^6w-Z{1}6autK0Xj*@oebIy~@80Zppn21J^>T*=bK+%YG}pAl zmF0(=y=KF%>QAetan;fa%JmgSNQ?Q-l{s!#dfu{LwV3I^%yhfb0?QRO_l?^7%z9w0 zbQAlX2H%k@E$nMa;@YPFtXu>Xlsd? zXloUj=(HM8tOKvmmDOpYW7O!tH=>EIQJakOf*bR?_UIdnAr$V`TdGq>u$<^NyR^`4 z4QQcj^P+33Mz^PDaXrwLHF=_I-=Yhji6(mX9l6qGuYSP$_Ut=y6ZKg@X^kb5_In)` z=82xx#R*nTp2Zb7h5y)<`e|KbIE5GKsga6ET`o6Yfakk+n4Isk%A@|ER31H(Y)Vm^W6tFx(2EG zz?JtJ*jQqPxUQf3#AJyvIzI@d0)#AzP@J-6DHxop2l9sxwh2N463lLaG_g!b~@($Pa-IZwh znS8p2Y)QiU&kZZ>MslR2f8o3(moIp7ktCG@q(oFg06@(lS*mVYB7&@>%hg*-R%@%4 zAnJgvi4rU6=H`!)zYI3~>lTgCUvIOY`tiP*7b5V(wT_yS| z>%C6D6Hk6*kcjdd^n#`l6n3bxksz^>zo69QgpaDEzw(?V zD0h?97W|5&+tOD39=N4O=~7)v(;d3(sI`m%IdZHE=@~3FpLQ#jG05SD}h@HdJKsc zdJ=1;uIVIf0Jog1YdR@O;9HjTlrWu0;Po$hqAHqIN|;q7#s()5Dh^b0AZ9!%;erk} zlC8mx5*7$0U6}kNQ@MXk!hGeW8^_HyRT2|NCM7`dgk-;~Du@t0C7O-JN%)r@n;2W1 zWCZK!$$lRmSHd*}0C4QJmblspWQZr!J{yat97dD+m(kpOcav=136GV4RW@sM6%+xuI!` zDGBpkSQ{2jqBWF6DjrE6ZB2=l`O}-}{Jb*73zRVXEkXSirpGo@CY};Z3`#bt3rcRU zE-Fd;RyOGKV$A~#7189&691#gmRN!k39OSXu>>VYdU~t5uji4ln2=~4SAr#KlCdg! zk_g+ML$W8S?KFA9e(hy_qkT;aB}XeumLP6Tq9Na;OC(l>xAsgH_{n`+;V1XeLLkV# zxJ@+KhFj5ji6m5Mo1jc0S$MLI+OJGLH6&>J91}T}X~G8y>

    S01~b7lbtRMhJ+{3 zPh^kUz9ni58AQGA)@=w&@^}u+Z$}f~UD`^- z1SDT?tZ%5|K^3u^N)_E_6w+$L+lGH3)KWd2s$Ri4zM+1pyok#z|u0>Ez+o zH6%@v!S;Di=1Ig&NqY96LuaapDM(wB$69uyNdy(<%Ds2SW*dL??ce7%@}GO$@sQsC zX~$psJD$GrPoJ{#hZiqedT-9txl5ity!ic=-wpT~o?-v4{zsOqzkA8ck1Lj*dBxN2 zowpkvy~F$Q(tjVG6Q2JlJpa|u-h=G9PkQ^WpZE0Mr5S7I!QU-ddi8Uj-V5#C``i8= zum3Msy&Tq{e`f=J=I?v`=)1fhZ~VO1Kl?MDzWQ-bqfdBx=1RE#LU?|5U#K4iI-R-u zetS;zn78{VJm;mK^>*%s{JEd-b{>2@wD;qlK6)kK-}+u_XT5sH)4%I!^b4Lo{KDHU ze=ekFAAg78_n!MsPaku9{n0xOf8!h9ZE5sr&yRlddkpXXmZvZMkDfjV`LF*|$IpcH z^?&8<-1}cWjROACmmKdt=lwYwzVD-_9q(@VczE>Br|o%Xe&5rxZ}azfie@~x$hH-tb>f>^K)6)kby?@*Bv(I^Y=6O%=hxFmZ8=jr_) z_jK+jJbifV>7!RX?S}N#Fb=yv>G=;r{a62%<5xqwX9Irry-ueyXFWap{y?|)dHN`n zKYaX(y=V8Fr)S=Jo8f07{|@&9{wUyALwfcdPOpdG>FL$?dV1#jL;8MCAAFyuFFh90 zcY1m?)Vu#~$Gd;s)7QV()3fjK^kJy?=&a-SzQ@xu@ACAG9|-Aphcx6zA9VcnkluT{ z;}1UI>D=R8v(z1&hbZ~|7SlG%0qfJ^yADAdj3lv_VnItsP}}YXW!@Pqd89> zocFXF^1JhnpScj~h4gHAkF$Yp4~yq~e1FjS!mE#a+WkRK*E9b3A;%w{^Yo=BLivY1 zeH6+cgm%t`{8wkgeF1+M?u&lxN9?(8Jh*D0R@?Y)v{crqy;0K@d z^!`tI`o_mSed*Hy|CFb%{-mc5KM~S!U-SzBzvt=IklqXV_bTr(x;%WBud5Hf+tZic zRIrCq8`rrq@%j!LPtZeDk@AdTIC&PU|xNP}nKJ4lJ z4}1IF0$w8#PbQg!)(C;r!{$cX@j6yFGpN z-68*-AwQ&7L;2ZvdH%zIN1^`xEdP7Fd@iKxk2!w!?Vhgxbx+?2_=D{EZ$E4A_wbjz zpWR>f^!5Kdr00Acx%Y#fzW$-Gt~~DPgOHy6qms4r=-+tS{kNXJ5z+_$hvP5(yO96i zI{$kV(pUd+z<)TTzu@1k`yYGy(x=1syzl87q5RQj9AE!WJbe(-t0Di5zZdTN#c*F} zXFbag_0NR*_dgrzhxT6$`By{z*Z)&5e<|d@9@@Pc?(1gt!g#%(joS===aSLs{<}Oq z`&!ZP^@}cNtsZRB2rQ5>ZVH3qV4rptaj-OZ zN+A{A*=y1c)q{H!Quec#CwfZ|#sOE<^a1p0l>SEsN#U zTH9Q&Q)}JYUF?KYRFVZ-DYl+?%B-Y(FU+Jh%(F@{6OrPf!0AYe&aHgeNL7#FfmwBG z-L&C&ibxNIb13a&)1KOZ{tMi%RNui! zmO?_(BxT%??j*1%Qdx9YNsUjD8h;|~?Z^Z-RZHv5=5?j!IGVz?W%*kj(Ic9|9%B94 zI+n>DTt1TL;j=RJ!e8-G!Iwy7yA|H-?&>}2t)|S4q`aW=Wxu6AMAY2C(WMkpk#_d+ z`YCPKaR@1epD7g|BOUZMR3A^MOq5C$d_pRIMhYKWSy#G~U=JldV9Ho3oAOknvnbaS zX;to9QVaZ;Y8UA&(Tps-;IpM>Fq2Uzu{Zj!2EKks4nMDbLyNb@tciNikoky`8$*p{I5_3x_qH zv(rhAuz-@9g>h=P);bVf9{<%^czXJ~+Th_Df!vJ&vzW(sGgKcsSnlip}`pmQ@N zI*j*g!cPgVBPCXAF{He2)A(yNB{#JCj|D zFvaMU$#kmSQNWH;bJLRcneX6TW}eE8FIx&fj;8Q$r7M3Ock8B&+irNjZe1NDAO559-)$xgWYX4v0ZwXs zU1^7C4bpy(DNpLw&8fSAK5}1o_9Z{n8rQi`sosOMC3y*^JHX6K%JW(iM0bAh*P=+c z&o5F&hVX8pd5smCm5j9G;~HO^(N(7B1?3-#k495z?NCmqDNz+W_Y^K~)(53pACzK; zz7bOT15vMuUsy^zq&8k;s1|+9VEr5^>x1EY&F&rgpLWawPO5bR9Kzxnnv!W6KLBa7 zzQ^|@3XP>yDQ^xvNag3TRQ!?Hv_+x^ zS!aGJt*V?}H|hUj;0tEjrv4!eKzz|Y|6E8{LkfM5d^{AOzPY;!M8!U#@VWwDUQ0Cq z-Zyzm3ebjX2L`ZsqyWc!N7!$Hr~%`%g>xS}Zvr^Ll?-^nT>9iF<4PnzWB`C`&JrIC z09*Xv<8k5KZol81T>+pUvoQX`IeihnM8PC=M0f|Fr2{O|1tew*6DvUSh3e{gavF_A z$$J8pBv=&?+*`++9e~umwS|SgJ6sD2@l(iY;Tpt}lmO7T$gje+)}BHw$RTWsffpAL z*lDw8z-`_F0N%WW%q4&^rW_OAQvv(?61N0sW;?(Hb^srkfOa}SWD=lHP|5($=@D$G z91~vwv}{_-d=>oIg{9T%5=$@uD<`^y%GC<^d-!e1!5UR{(B0AOn(&obe^)dpbBE9S0nT`o`b0s)PM7F{(#9|_6q6lR~Cr2=0>`DE0IiYK$@~VkYiH5aypHw0tN+aGKm1v9R_4AE=b<8 zcPAQ~?+aA{csj4V+F9$Z5@7*A(83YqUG21QZ(hF=7uMR+S7>kzJ=7?Mq^~GHat3{W z3zPZvnbvE^s9n6y`reMe^7>xi^r*tRtrzrgodsDMSpki}$t#thrlDmzf!eWH3DwyM z;&6c{dxHRCd=zoDSs*~Fv*kz^0kCKS0mz!xPSS1RMN|%2i>OKfMhA%p00nW8{S^h* z7z~h#5CGz{RMdx_R0i-l2w?h~a)@K%>D65%TYXd46m+|(3UrlFO;ZvJ)#LrG4na8r z#Eu0RLyHTW)n%4=iZ)TF?K255g6li7d{fjTORuxp6K~*l0E;sfU}2;M=?(Zj;{pmp ziliSGG^!hH6)2dhfG*{LSkv<_q8>D0Uk=R21;u`{uOKSa5ZF<`1Q@RaXf#YT5TF1V z%h^yQnsQi=;m^!XTV@1w4w0h@3_50$+F{}z6GR3e%Z4iVcohEn0wMJDc1r+pfvlbY zX`*GYu+`!{b-P&lS{EL^HPC{{?e>ikZ3|K%Fnc(VviKLYM%W{W^P?H%IL~wd*-HQs zBS;_x*D%g!0DRtaE&w0}TFcTlY*EmnBl(Z@tAQoR0AsnzVQFT`*V0A+h#u;k)&Qh^ z%judJN)hbTp58fND*&&98p684n-a<@1`9CgnQT_j%52?`vI5JE3MhACxdybfZj-~n z#{Ue!0@mRRN|Vu2Zous&16bLJ=p@G&wE=spTM&U9?|h?U!CmBZEM7{0&C95e)Em3W z+8%&&bpZ{nK?1_lc}uZ(a*n#DAPEqAR}Qf&BFnZja{xxOA`%Lw)QB3a&vQqZ$pl>E zivvinAt(SKNveeK1EARuolwvkE?KCsQ@0fs0L~`uLV!PAk+AmRb|kQ&AQl)1C^*pB z0Ukzb@m{O`73w#z};wQjCLhuxIh;mXaWMLOJ#u^5IN&sI5fB`VEqXNOR{>shv zqJC>r)tjZ621>Lqw(>iF>2WoaOj^~fP%rvIqD-7IB<)7ECph5m_9I>jxS^a zlCA>63Z1S@Ap!>d+cG8;V1_=P0h~}K#iOrK)Q3OC0TR^&*g9yyflX?ZDJK+wzlCCf?F9wY#Zu7ft}BeXz~qAK zz%yYa4PzGqY={a_43!nh%wvE}A{EJSVmYjy0z4KEU}xP}6AQJEA6LG3FCx(;Vi}@45w?7MjX^d_KXOm4vO4gB#fCY)aM)`wg+U#pO7$CAJ zdebKUVJ+QYEGdUzGd)xWOdEbCk)V8&(_|L4qaw^<_lYg^>>`u-3F%-_5l!wX)8K%v zxC#gKg8NqlB^D+rhz_Ed1qjV7Kr9@B)c-4S@m#IjoYhW7ptL^=VS#w&>&q$>x=T9Km2A9r-{=ZNwKnY>#(*X^`gv)7l%Lm{1QH+O;bRHi9+pv}%oy(^+7 zqL?9!6&bGPh%pFOg#@ZRsDrOU5R;OCb3wPg_drZbEbPi7UJMbuxS-ftzB-UuT@m4m zsF0m~R(c@uX)9%pN$zdLMIx(Rrz*;7xh0PUP}_7SL0zqPDG-Z_znl2qb*49Yils#W z0g|oNT9#S~tUL4)HB?POxPaQ8Cou;IB{8%N##{txK%mwZpQ#4lA5idW z6}4?n{4Op&n;d&+xuDyo6&7zY?ltVr9O6*w}C}dc@2bT(Qm_bS%XZ6 zyG%&xnIG&$><`7NESuWx?2t5LAR7=+18AAKIp>h`A@Xpa>bn`F9Up?=ml}US z;`A!r#px&SYq6?*V)9EBeY}bWXuE-uLGRTagDn&O1$9k0j*FXBs^Oavq`8IntjLyZ zw?q`B^scmTRmsyLCff)Q)6O`9^j=0S+-#HRVsC{_jh!}9PFw^!vaOy)#5!1n=Drza z>|SH5#?9{3dToEBJFq%4T@|$vQnG(sv`+0&MLaf4*aIyR_hvVux`;tb^B z1Te8d5In%{WgsH(rBPAZt?B|bF~w*(FK+dc+MZU+;ubU3guSAf;3b^{wdy7;2x=`W zcHJOxbccA48-kpp3t|=KErF!ydMkpY#gON`T@ZdYZU)je3BN=9eyO8p2(n&D-=(+o zp26R$by0MIO!c)qR6_aB$V0u-20cM(-=7v%2+Ok-LQwbE#3+a4Q!3VFx#%@(Km$aQ z6e$v@XRAR}6ix1?%~yb+p4JZ_Rz7`gK|NdP1Yvtuyt^QlC`3n~gKM=EKd7La_$rfP zQQc&N?=A8=zMcv)U6Z^GG8?T-7{rK)uv_tVL6! zZ%Dq9`phs&i-K%UTb`}^K&T#fw3*HzD9Kw&nbykbkO}3*9W4}6M1cC?DCOuI1%u6dxmgG44MAikEVJjGp$nGmg{Je%qU#2_)6HrqGcH(At%Q=dn+oy5kZ zErK!t6;Y4f7YyXl4$3ngOv|=QWW8DyzX=+TrB(Y3M0qVXIYvYVqya|8>UbSYWrS-qBQ4gHZS)X>_~CCW6+{g>=zOg-WRCf ztg?-`D1PYF735<`dw9fIB#$R1emP{DC&@ds(WJaXv)>9j>LVvY4M9&!?=a|=c4Zl4 zTQQ4m{8X|Dlht69S?G*v)+A<0h zWC4Q?)Kx)@MOi-tnN$Fj?#V!`R*(gJE})oS^O+*e-1&X4hEY_0*dpw{ah=uPA+7cS zVnjJ~i!W^>7mGQmgo03hcj28FLhUf>65kOe4h?r4#i8$#!SXy4yFg{{G? zp%5E++FEvj5c8R&cLnXCy|Q^32+HhZ)-9%kEoeHwYLH0}f*PG28H$S7kdrP9Dk@?@ z408dEI*bx2&^|A1r;p8}{%)`Z7B!2Vru|lJQHvt2v=F(C*P&{M(GFx=aVga&wC5V6 zjm4JdD<^qyWAQrME#$2Pxr98vo^u9RtVgF5@v`Ex)3*dNmy1Crt3*ZV)XtFvIe#|D zzLp?;OVxAv1;|xxdLYPW_n}r(nOn#MlG(>0dk^**N$gCclIh~MsFb9P^T%-}rE^17 zxg;0sfH8lC+>gy)x@=0iKmq8@1`aD+I6tg#VRYNY5qN0?UJ2SgEtvDx8#53s+;WHQ zJ~g`S1ua$|d|VY?pu2M03S{VLSP9f!SO_xE+qGOI*^*fX?CcW<<;_rT+CD#v1PUlK zfz620IW5s=X^zHZ;ji^)4*;=+r?uHvdekN0(TqoYE|0*QBT#kq z4jQciL@aLe2<0L}WuO*(D#%tmi-HBnkev;61?pf9a_N8>EaK7vT7lWK0IQ2DD{E~O ztda+w;urwLX>I;p10{o_%PRM_k#7jjL$i>JqcsCXNgZXw;M&~>gufr}cZh{6EpQZw zt4pPY14gPvewIuCQ&C)E!D31(p0Q+B3o{FpuJu?aI54RnmliiRO-!dTOc+7$6&MuX z(jtqMyVXlB4J_iq14LXENdl-z1W1O>Z9teyKUu^$Q(9s^yJxht)NEiBQ8=tXs3!M# z2?1F5qbiq{2+^g5`d(bJPpt(P@Cg5Ks;EvtMX$n~;}Wx~W&A^6yWz@lN$RHCb4pq@ zvkDo%pe{#wgj^&z6T9g8jm{QscDSm6W+MTVGr;|{rKfo;_VzvH)>4x&=^0?KB$V79 zAwx|Ge>PDx2&V#@eOI&qWkI&VWuR1NRbZJVHjQ>yQa%iu6nQuH=pQ3A5U&ZiOaPNN zMrc-NUz_;JeY%4{hnfnAA;PqAKy-Nod%JC|y{HYf9N$8;kw@p+xp3A_^=QrchEiJ`by#ko@ zI0vu90yAhOG7XljO>H#=gy13rkH8OJPkea7B|^}3iPv$-lL~`a6s8#@ zl^n!3E|6dcxyS&SR13&3jCJD;no)7-4(q$A4FVao(vmX}RWE=NHvw&pmx<58P*=HY zGEI5zy76_Z>odT>&Cbetu|$0DqKDX)V5yzD=@Ni4nn{o;i7{$NHIf2mJ(OHd%o~BM zv1rpw0tF?OEcjQ;44@dlMoj=svM$M9Aqi?PG7td15 zz!k-aqBsJEE!+&i>@C_t`GRlo`YxR69fx8ft4jnG{O< znJ57$1@lFG+fhj-7C*oO4fkSJ1s;LzgTKR9TT+3l?-F{DhHiVHuF?h75YqLZ4&{^tSY58wi(~-CeVc( zDh&2*9MW|{&yl#KR|<3q+Q97HkYM`D7Qs^LWC9Tt08JnQWIZ8zR4VTBZU5+j;bu;lRDj^t{r-xj?LEtcVGeIjVAzm~* zl*+)spp~2SsvMlBTq56L90IX1%VR4La$r=Z>%?CynD@Xys9ZLee&7fVWLJbGeTSF!lxPAWRXs4)0@2orAX2g#Zq=CsCmf540~2xDM0MGzH8C0ier$ zCr)gB1LKo`H<`h zXiJ36tV0t{Wt%QJhzu6MMOL*T$hH@+;Gf0n-qP8Lo-2_xfHrZ;z9shwB-bc|wMGu% zv^IqI8<&P~uYPd^kJZt6zh&`=CpefHOHujU$L2B%6Y%*tvqxP~{`t9Jgc6(?#RSif z|HL5)wwv<=Zj-)`lI~0m&TrZ>B&)_{nfqB<*_=K$7phSto_Sl z?Oz`2!<7@TNaFAA)xCX(F&{#cr^ecRYOFsmWScyw<0eSI7kEhL7i7K@$5kEWD!8ZY zMncIjG_L=}AnzOwEJry{0BHh%>N8zny?P&R9$ z39$k8KmgBQSzpB!>o8VH0-qel#LX6IV3golGiC&M1?`c1;>l)BND;i(Jerk_1z5)B z*$pnV)5H4>i<=caGkAXt?gGP52lf8hAOA`2HTx$#u93l}=Z1WV`JUge9nE6kDW9{( zC9%+s!LQ)l7c7gZ7Axu~V9VY;D$jC^aR)~G;`uQco-oY6Fa|TmhWYTBA=DQ*qfXu`&$+6K^Wn1hYVyRoHj`rv{^wOL+w*sG#qruQJlsqK~-PVc)MK7~NGL zk9=vNw$KMSyVsOYv&5FoVrm0|I-UJ3BBWT;3}zdxe=j|V-GbV_PaSj!6QTt3?ZTK5 z^LJ4rF1y822F(nXsNgW}WZ8(QqX2d-FB$C5T52K-$#$eVoxWES%t_@IcMI%hP;YZt zT4Q)GS~CZ?<{+>vTg+d<#2m<~rh65H9_m|k5mv>WcBw1_s7p;Tuqmi4=fFBmF}x!q zyqifS$Iv&Ck+J+>@+Y|GrMF|g@bNHzwqY@3C`U?gC<5P_MOvcY3~Dz9kg ztn63N1hcK1SLyRg8$(eT12WvYh@^Z}zVLlHMAckN{Mbj?;I4GG3`Scw7+p`F(O{=g z2AjEu@3oT3(5MeA7*lH3f(C)@zyKNb1b1*mhW2sqVqEk5O+Jzxz)GFx5UPnbug7I# zFtZ(9Wf-1p!mRXhnIjIc^DfKiRVD)s&iRQOaLt%YzVtE+{tEEA0_lL+L*fSY@~!8k zP{<7$m*sx8?+V?B1(LpCV-NT_4`L<1*&e|i6huT-LZ`~B)loYNA95*|e55fxZ@)vE zYm3$OstLCN<}^^v3k9a}T`(yEn?X~LE|rmN;dxM(dwmO(W=aP8_)$1ojhHwLdS#3U z5H!*LDu>;4EV!O9KJ<=)nUV@D6^sz=^9Y#DR(h`T&9n}=1;eIMlQgI7J#OhN%M5P9 zy@5@$@p~~5GtFfmh|9oeeztq5tTjaQQ{!2%tp3=B4Mq!Oi;2V8_>`fzuTukPKZvWa zHo>MmaUi{5dqJ87*2x++ALDWr3nU*-E~0Xkp;7A*EXZ?#Q6G1BVPN|XPQ$A9wAl)* z{Js_-dv{=#S@D0%U+wUFDeQ$(9kZ!vu2rQz_;D*`oxGoDS%y|_y)oBFfVEdF%a?ix zjAoI&ua@=!^HASWd3E13R;~_qv~9xXl4In?ih?wFIqo~Y|F}|n960kAzMNBF~So%r1hU;n57SIK3=4lzmGnm<@I+nk&w5m28mP%1ZAB6X> zwEL?Wtg)2Argl)LkJ$(c>0Zemh%JOilv&1bgIT~-*-YI=n5eAKzMyiKw{#e|EyCot z5b#W;14csA{8@xPTkcwu-dNrmwDu(7VGb#qkulU~_!GFI$)WsKYZHsR^LgRUhXbs;LZ*v8p*4ICI5)G zXRz6zL%#DXuOqogb&!iZXvyI)4rMbmkT!Kh3Gx;)r^CD;pA2{?3mJ@+ux}5A|<6%JeR85;wv@dwGBR@Sb;e^a3grJFVWX`22wt|s=)L(SJqro9W z&)|%|bu0v!aEZH783S{+@wd!QzTx+k1=&X{bq0)QcZZa9xJ9Cq7?}GgFGPiy`L8U? za5lz#mtLr2+tZz%p5L|gi=e<`-(W*KxR2nTgl7z4x@a)QWM40+6J#*uvnbjkY_LKd z5G(|nYu|WFfcdov@>3=$?kSBuw>0}2Dgz%26{g0hOaNh!$AGnlh%YlX1e?Ewdj)6T zSMUbnB0J$M-(?kteQ&+PNl$KPhr^K{)aSVeNds>puw+2QLf*aS0xBF`utt_yEd>X8 z&+@To%XuZ(OqHSj-OaEmjeN}Il6RpYWa}LVp4`(?=f0sbCIMHe^p0*Sz%d(@)1iDQ z7#E6#j{vhkCQERBYzSeOq4762Q`=_2vh38_G$LLE%mQ!La$v1Rn3Z`J@PXtXt~w{Z_V_l{&}xmYwF9s{7)m;;UFR+K^TzY+#wS&0j890+zh`)Wy(LEe)HbVVk8Krn{Yp|`~F)AOL-CXaJ!Lt7Z zILMP$$3oabzB^m}UahWK{i=L9p^p2YsKYc3W6xl}x1xiQnD0*zK^RqnkzITKhlrUO zvl1Ech9&qV&JU5JOLI>}6$#5vxR@MOWKuupV_3-fp;21Mh0J0u#4Wa%V@C+KTp>e4 zZ9v>oYe;6QH6++-bGR?A=%S&z&WQo@6h?^t=;_I#uEZ;B{25CTCvIU_tND0_+ z^*(0)PHa;yh%M%`^{u)}0%8;m2;EbOE9ndXA>F|&BDxe~kYF^gRzWoEX5D>VF|#>y zL(W2wbT))83$Zw0i_Wc_+tr#st6$2Xgq4>7rrAB#TaeCd!=oH%I*?Gm!#YAR#SM|= z6}@(-R?QIm`H)%NgLnpYQ0YZP5CBnY98qhbMDFp*Is8y`!OrukoYQwxIE^(RWMy5S zk$W7`Dmz5XZ|^1H$V5jlS!jQ{BXAvAM+_nSHw+3h%bU?t;7^8s;Q~jO|29{JVIIVbQK%>CJm+B zBOWo^-K(cpC{f7rhA+aEp@IDTTr`HjT}CAr#u1pqsN~W(a(NtiavWjsjqZV04Uzfr zht7{bbbh=6jo#5c;|*LGZ{Wgs1De~zdoGN>!iDjUUKoGQh4JTH7=O;i@#kC|f6m46 z=Ug0r4!?OZ>cPeFhh7|i=*97eUL1eurSXSe8h_}e@dhr9H*jgZfy?6!TpsV}f9U1$hdw#p^poRFKY1yxFjsVfn+`)5BCEG=-UQKZ`xWg9 zVJIWtpa9D3k;WAw*%j0(D@k0@hB1uxwlB5fQ>Ut5o}oly0eoEhV;w>ImW8-NQ%M?v zi9y=x`WZEg+aeqr=)4GGlqy{e#+fa!i5~GCh zJ4l_b#cWr^e})g$e$r(-pP8nYhn5nWHcL&gCpzK^L?{V|+g3cX51|@!ZN(L0qh5xj zQrLy`5%hd>dd0NSYv#L&D~gF<+medGL$mmI>Vn{Cp01-1yfn3tH(lC`@1V> zPe+De|MndS6=$w8QPK2D2%|G*=SMfI(<(_d1l$7=5Tm?GLWi)EgUAlul!P@zY|8>A zZZAgCQ^_c1xFY{YcD8^JS=C96msnLnNW42*^sElX*INt(n7C6 zH0|VVGlXFiMsJlbyNtABb3y(Hr#rp&0hU#RFX?Se^l-+4MNQ1XL-n$1wmBiZcJ-LB zxFZ`&RP&?f#D3z+W|fq6TIZz<5vU}@ZdObc$n#@gZc`iTJP4T*W-!5@vX+6Qb!*KU zxNRqkx*wtm~Xo`aV`I8;On#wo(qk^b%YX+74d9 z2f>&0V~Z*^pH&h~C^3)3HT${2fQSSsCHN#@=K3UtJX5Q8wwhRIRT8}Os%9<(kB16~ zD^^0-v290bP%UhNk}IQ9lg{Y!byOkTUA9oUoj{0>Vk~IYz;vcdRJRJuGdM(B&o@#8-x<>B`FaW>lLRIVUJ1nZmieJ$Lf{CtxT-`> zity#+nP9!g8P8`l*94X<-oucF<}lVEN2E3pZD>d{-8Bvc(rPlY8|Ehf!B>$q?idkO zpLfMW#63IkKgkF-t}|BwteTSGH&8(J5K%~VMV^3G2r&*w&unpqU_97MI8+KmKLzU+ z4k07zfCRH4M3g@O7HiImN){Loi;gO8B{cy9M8bd{w=blrU=pW}#mf7cxhlcF=SDpc zS~USo^M|9xeJ36cEs&?@Z+H1{QZG4pfaT`MOr{lNy?w0u@=Qk+Z04iM6wcK1(c5Bq zuOfz^?NW^(^lbAk$Z!!?iIBiu%$iTw5AUTCO#8t{Q1OET-0>3-Ti&C9xY-J%w`V8S zioAGfw7U6#1@Re&<(ZP>ElITSE|4acOO{jl_bO=n_yKHrk1C2kZ|;O?2GR+uH6>&A z`3mr;q|?r1E{G^=z0s6Vb3@dhB{rE?vKwTqtw@o_gD0V6h?ptdN;v$p%A`^W9x>!= zIqyI)@`oKJj$Cisu9^%n|4W8g@VFzac9%ns@e3Tx;9^DFX_mtIoRu!(N-+D;fV&jTZY+d{yJ1cUuY_@&9aJD4 zog!!E$_&w_E-O)N$FU5kDq*8wr$;aWh$1>tL}JeL03nLWCH$z;bHl$GODnR`s(GCp zSb>eY7Xh<(Kuj!hM1jtXJ4Yb8#oAjn-p6eLY9NGnc(u&fZ`JTjnb#hq&KC@8up=v) zMY>16iZFwNqrum#o{m2t`f8x5X-KwWfas)DX+|oMU}ijVg0m6rv_uPVuLSo2tb~`7 zpP<%Tv#lEy{S5kWSo#6+o3?v^64n_uooMxn+uVUfwtaS1Cq*_ve~ zx6x+^a`x7Q$d2SCetHK8rsD9N>5Yg1?IiP~0k48sZ= zO`rSW51TpHqM4_$w$BY?$c2sU;KE)Q+N2GW)e2${v{&&l6SiW5S-8-w9cesm zE&ES-4zz;rtHjEI%_|TUxKF)nR zqI=NS0(M7UEWMu?uJzd{vFp)Pv)75zrA!g)!}|=YT2vp;Gi<+m5s@Rq+8r(F+&7G9 z=Qwl2{AnDBIh|SV7ZpP}#ITXIM%Xf;#belNayW)5CV6<*YY4Rk~V zlBr`jl{6y3%x%E&9Qx__>7j}EJeK-#4Bj(Vc3~XD96eTc`NVw~q{qun+$Rn;YV*p8 zGJb1%yzJ5m?D7fh$rIR>aqOwN6WEEKJ$0gIPn~%BQzxGO)QP7*b>ityop}0F<4>QT z8-M!z-1yVy=fq4dGm88pEv#;=JEB6C^&!q#M958c>4MA zcb`9hqA%x9^o2!pyv-ARIe(%r=TGzn7tq*!Cq~x%{E5Ecsu`<^uVx%O(I(!Su`=8> zS|_yzD2xiR$8C<& z*4;G%l2I4q=|%e?%y78P^qBXCcOP@#2vf)yGMhFmfZ6Vtq+xOBU}h$OMQVL;4@~w( z*cs%42~X#U5%dNmF~#3cYafe+ZODB*y^Ji1Z(VB!WoW3_NwQX?uMS;KlvzA#Xfyau zOumSxuk*Hii!lrfFqE!Cm#2~LIc3A6!@*FU>u5AO%VgTW4t@_=ji>#fAm{U7+H*4e zn%Ysq4_9EpP_N}G$!uDN*?AByqu>RB@ZsoXYDyTda;_)86EyAOZzdPqL_)IYaqEjP zA7z|)Gp$1j6Am`k+6ZQQL&8s|fXP4-T;|g#*>+%}s1*k+{B&f%h_R8|0}O&-0cEFl zhGjcQrh^dYX9G^U7Hk|aCpc}YjIheOBH_R|V$n8ZKrUhI^H*TAiFdI32Xt?bNtST9< z>A$HoE&m)}$aW%7rWr;=rVd|jT&rp9dS`^M>gSFs8C=LuFvWuQKgQ7Pbrh;NG+!{uAP;r{(@g!U&0`#~d5f z9C3megW1|)W<|sNFdo96gy|n( zF%Ddn~fG3R?mm4sl|I zYss>}xWd&WGdS4TItDhjatU**gBftAv-5l`>U3IK1|wUJ9G)jkoZlikg>fU%$2yGw z4EDv$39VqxmwSTsY?m_QRz8%Y>76=~0j+5Gg5h%|2;7`LVA=6KtjN){yb|VnP(<+v zV?qkEJqotIgTZZ*Ua;*7<9yg!+ngiQeu@v2k%tHj?=#`oIyxUrhv9kf9PeNOYQA|@ zPjG9hJ71=KUqhy4$y;$fP(zj)j=$%b=9w`}ySA>Qj;l;kkgvHJ=KH~fLBQUiOOMhC z4jK0NSc|`(X5Yea4W}l%7<8tS)^K6IG|41u7@KF|Dk8QWI5w^Kvm<`ww*VVS2^nUS3QnY7FB0|m?0h3E+DH&CGh~>{48nMq zUN)<6nb>48GdyKSHmdv`z-B##t*nbvHvt>tCV?Q|9Fa|t6Z1E*r zow9VXyzpCF)15xs(j+k0_hVT|dYJYZ^NeJ$q09glWCovqUCxVDxRj*kXj;EztJ~~Y zS}^zDxK+$BRym2zs)>y)i1CK?P3%Bc1#{PkQP{8pTSKj9UH6oP`3}af%HnvpaSbLG zqmI$*9wR4{Q5+i@>a7f^+IWnYWm3rr3=Px$6)xBb+tCO`ZkPRqZYpTSR2E?)sl+fl z!r5mrWxTaH{h&2R^`KB_<>2`FX-q7x*BC$3QOz1v)IE%*<&hZmQyB7%?ORY8P_~cA zu^|VuG6@j2auFFNuOy!y*D*ECeKEqu_!(ucDQaKMwEeP@Gevrx9R%&%TbP2Jv=4%^ z;GK{z3MQp#Xg5vAq#(-lLlNP8RAD%`77=WajKPliWiy@X$V4{`{`8#1@ki784JFAn zwxi3i(F~Bwfd<_7G|lH>3i2c0a*R!jw?K%x{o3F(T8$czLjcMPW2$8L^^R@C*#UFY z?p`qFOR`fli0?7HrCQd{)8&@5z~O?m;%Ed4@*jalq( z425AC>Mtbo@DL4g*G9#IGFA(Kdy!_sFpLQPFFv<1S+pi z*d~{uAqp!)vmk*`dAGmM`HdQ}cCYw~qdd_~bvpfLCfn9wpPR~jYxa0A+8#(s!#pux z@feD^z4Hr?1#?V!rQ!^?R3m>6Xiwhr?R?W;bLe2I#LhbmHnat^9`Z=A9FI=Bo-BbwUZalh|aX{B&g3bh1Sbx1V7Q$S{AciG8d;M8ycj z7%7#nap~+P0sYcQsk4wnHSy_ck`5(uRd0I4b~kzUZG!M>R2M!s$*k zD=9XB;bG`A&s4opQ=#ISo5_wge}vsEGdHDfV=uB1Kq*@FLc0N}FgC?AVYdKXlm&W5 zdR!Cb%uK}bj5I<_kuKPPvfE$3$>hKJ2YNVm4$+J&BRpD>%kfMmpqnu-o>5G{?9O2+ zU+;0i)>iA72C!1kfNnzwQ$Zn}@z%BNV8_kS?1O5hWd@l^ls*fUZr}#Y6X<0xg--^j zmX%`lWfML_O{KQ6JQ%h?vn}rEOe$?BJ8bX?QV=srN>}hW%!Fu9#wfER1~t=ACVqg5 zS+oCAojXNN1(Poi>j8&I)}p zE9EVHuZyFE$yzj7JoC|{#~G%z2F|3l>(LCB;}PovHPf+Pvqn_l42zstpN!WiQ9{LC z*+dHI47KqPR=Qf_;8qsgs(Z&Q&7hJ2hd)Y!%A-hlV)pGQH_+iRIuHU>w&3gq14@1L zN%o@8j9G(G)Mx51ryIVSK|0V;gga^(ir5(26soiK5~L!=m!Vw-(N>d?VYTf0Su7Ho zKG(;2EGQuz!=wES9dU0^w>873WKx=`AJ=stLfE=fU zY-;CddQ}e21Reh`RO;g<`Zq>qP;m%5Tgyvjfi{LO!4;$Pm}MC>Oh+?`&5VxkG4X?e zI^MEL5;i0;d7_7=`_4JVSqvSgGp0lM1g0A18J$dyx~r>xLXU z*AG|dV40eYNk_waB#quy94)A8s?1jyo&OCwwg9OVBVWd|g~IFbaicrw1ubwsHBDQ( z1_APBRy9^ARKW+%S9pbyF_V-Ja+LEB~R?b%$XDGQ31 z@Mvy{8JTuzhZ^?2*kLzi`?G~Fn%U>z8y@7O1Z7(Jxi+k7po2cYTo5?F>>I3Q7CUd6 zwV@Jrn(YC7mc=z;PV48OEss1|GA^J1t5w;RGhv(=fw zqkH*9;muB_XoE5rJ}SnmPWJrtnN+8DLY!V$yCuDW?krBcZtmaNmNOsX%^#-%nx zFgZX2lc_9|pnQ*XrR~w>Gk)|;(g*`MSX(nLY9Zajy&yB06;;E5SCD%X(agW2Q28o` z1IY}jWCg1lD7MjCiG17YMnCDMNK`>tPQw{gL$uS?{*|m(;b(al6?hlTWad=FCatgt zi2E=@emRTXTcEO!-VF0Hpmc-x-)H_(sv}*3*JLJGN)d6bS7scQFG;IVG&4F^<^Lw^ z-Ja_@vNXSarpn>+*n=Cd5=n`Y{ZLfYKqX40R`-k}h62eFYIs2tP*t}Tj4}uukZ6K9 z=yL#(?1+h&7r*<_kN&g#IFJ4l=FR?n-&&bF_c@1}if(~>W$rwC=gwT0Z(Y)BvW8;| zG4B2i6;;BuB_M^%SMoGxT}3V<^g4temx5L+h98$&9Afg>S~QvAC9BT&7Ue{j*pU5Z z2RgMD9=0>(tLp#$&;NPkfB);GlWAm#eMo9o}@ z2Po~|&b5Cxcm20>*QyDp|CRgygRlDQdvn*{&t3nAkAqO|zdzUh!`$_wx$B*|>+W_C z%6Pdv>ht~YbN%=8`s_}8n6f^)m7+m^30Q_wxso23@ge1i2s~YR1Ec@aeqUMD-HM>k zFVRWOk*3{>TqW{5q@%&tjX%KG0{$W(PW`{W`!`uXADEYG+$9E8u_8|6y76PUUDxTk zi0j^U;cFCwQcTC!{C;sj_`2~x_*&1CP6n>+tw|QD-{*1ARkKo$ugm-F?nQez8Vo0@ zU5{7Xg}QE%BHTZwG>YT9y-$pAyJtR=A=Dn%PKSv0J|V)_`8a}|+Uxt6PVKeS(Dr)A z-;eS0e&-nK_i}n1x}xg@8x{QS``dtbwYNd;D=zI+W2Z)3GaCWt$aIQp!|_IfxR!GT zD?D%%T^GlbKsK(!y&~KY|H|MRKR~_CQ2muJTxf3d;ck?YDA#|AYx+m~QN)ulUOGw; z)GBqtH6|p7re;B^dd(3y0EKQ>WSfr?OC~sYr8ZzjSYCb z{Q8l!xAFx^)SLYOmP5C=U+1>=0hTLYpp>2*Za#==>$J<^A{@#!M|eM7E3Ye{Vy^3I zQ9!S+6^I!?o%&OW%OI?j@wk2))ib>Ri&JK1WLE9rqzT{3@Y>(Q?dgZQQ`*%VZ|EI< zKU^_DxbnqtU3@XtAa(7{#^S{SbGxq#VoAH4H7K?bRGQbj4kNgD$M3m){0>A$9+|v; zbHU+Bg8TCtg*bvp@_I&$%Mtzg{q)DBlcrverw&7mYeIpZq3HYha`$|HZ#tz=_eyo! zEV-V%ZQG?gHrHEr`}Fq*_}O1`>SOzR4}LVj*|-0r)G1mLQFHxh{{;us_P;0RYkTc#98Eh_zVSG$6mL|*$}9E~ z2}3UH*}|is$$ZaX-p?Lxefu{g*~InXsgsEO{nbuVQH+=EL}o-mv%FTsg%8Y(YkbOD zuqyh-cJwlWAF&i?zU$6x` z$moUIeQmg8=Kj8>z$PnP{pa{k@o|L>OM806{;G|y`^$BCp1gi31FUI(Il=keT)#RH zV9?+1%DwHi9f5s2)+0eL%{76ge&77P`u^qG7HZ#L+wY&7``^A00=1%~FoH`mEiA5y z=O}4nv}2T$2zDMOJ=aPb(_HzuYG0RBF%ER8*LA*Ani?39JkD!Avtkc)JyS8oZPh!8 z`<46c17A)j(eCSQ0@n_>##c4oyng|NA_qWTYqJ?);u>e5;)kR5LR>2(Nde;8&z9aw zEAe48c}-K~wC8m>6H)!&0pYzOB~#S_d46S5f|dq9%#z-WPmeEQGI+^wgW#HOJD?FlgkNr`u1>Tf)9Ek#qjoyq_ zV9R65U8f(z*TfX#HBquZ^P$LUIXtrh+zPlmwXDYvbsmK@n>9g!QiaV?^_o z0#hp*?cn`W>cO0_$VV#y>*#Yx1sJX1N(rdh;Iyx$$b#0$gTu9*MG6cE{nHLYRYcP_ z;QfuK37d|BaQ(Htpre(NniAz$Mk_mTA)a>>C&#n6D8VUmrf+e*7R_Le~z;WLro+j8+KbrVvC4QRO=7a%Hg$Uq2gPa8|d@ zabbMgEt=Aer|Wd%X@Y2%AFpn>yk-yjd=cGmpF5(+E}U{L@v10zuKgWZrHCo5uW-$5 z!Lj6;8?Ef^-aC1_|DLjh0>VZsqSBjBPGmOv0vp3gNPv?-^m+YWMdMGs{`~OIcK5g+ z{k&V*KRopG+TDV@5_Wg$P|C-G{#N*5@xF9g$2BF$6_-g}@A$JS@SyD+j)&!}&z1CtOcBWu59od;w}}#WlPWz@8EF zy7DWo;ZG=5D9j+h>K_3QVUG0IoEYk|7})zNO(lk^x^};AitjrRe+74)%!l|K+~3rw zvi!v9#`>(G(6swH-BRk$JcuJka*3|_MPBJtfIRKThi19)N?cErckX03;jvtkY&Nc? z&Q`LjRj?`A86*$RP%Kcl!s<8_beldiU;lW@2JwETon57sR@z^d5=wT&bSp5=dwpJz zuN(g9>&Wm6V0uLdN<=t?c2>6n(++1qfU#WbV2R^MgyVg=ZhcKF;SeiZwp-yu7S=UR zoRsHsdbRWA>m&G|XHETEe*EjE(0F`5otmulh~2lxoke-4ZYA7Z;-wgN>`(2!6R}q_(%$fq~ThR;t91wA+Bv}u`GBVxBHrB7+eQFwfTAJ{@=6%Pf&HX#$sn6Ksd40czn*DgThdtwK+m5w=Ox^c74TyGBMUwkcf8iQ= zcKl9SkG$!+_Q74K6_`XCKdy^cr(8=P$#$293i0OtzE->E7sJQSL6#(opj-Lp3-rRn z6gTuoPl|idpEx8)*S)7J+AXo76YUqLm77ykOxMzwE59HKLHPp`W?oM$ou9|OqiMz0 z)1DvCkhh9Y<>8b-MZ0Su@`-V&@x7WVN5;Em1Nliitj~L6`_$`wRu9`!d<*T)8`c7o zq}287h4zqrX8ay`EvF6`H5bt}uIwm+=<(bSb?s!Iw^V;#Sn^QvSMmz(C}8So)N18= z*2-sHZ_j!iuv@t}#XywnERsZ4E~2Jf@#(D~C>r_Qt=P=eQo^68{qR=1!&rmQ9bPSX z@(I=ZFhjakVkyW&rsmHJqyPx;kN~9A5FFIitzw%;VW9X&w+iU|`{zxFx(Hu?_4~hx zqhU2@fu##BYeGUd?530Gkp%CAwg>y^e9*&tksfyocv{A&gfd1Ylv}B4Y78UWk0uc{ zAA}|{-h?)i+=Mm&+ys9!RbL}Q+Jt-zheVk$2=&#^CPY!+<#`*F>s#80*U@ToqJWrU zB^1pd2?5b6Frg44F-&qI#sIti0r^cFUlJl9Mba(_5tINo(FzjOZ8h+Lln@Q7>9M%7 zu_gl8fh{UWDhENabG8=z92Nd9J$n3G`6S#D1lZrpQxKuma>#)#n+uKc0&SINCUZc4 z8v;fZ8E_B+1V_LIN?r*%C<#`~uNb(V1s0xdelP`?n!f~gqH_zM9{AU zG@b`$HH64=79qj!-CgX^R}hSL_h(S9#>omj{tY2HM;y1nE#V$P!L^7H0R;SyX+ZnS z4IuFuPb#I4(ojD=A3N2cAqe;TuJ57Cn04R6RTh-WTOj;S$2r{LXA{__@Pv`=LQw8& ze#!!MYei5fVzpx5e?nvMcQJU4I6}XcH9!xc-TKd6spA8J?S;0-*)afM5>V3&Fz9VP zhGKVwQM`n3e0aLQiCh?4lJOj1-m(T$hy}rFjg?9*n1XUgiH(MUdJXgL2@f*fyWRr9 zNOe!hDA=AbKj;I%GFV+R=q_ppXk>p&h_jx6fJS6$&*hWu#x`pRQ3AUmgbEyl@DDy3 zzw>8EmPGi4L4wr+N<*+!v09TP*dY?DL5K@wLnT4Whq`h6mtUz)Q@d**2$>dq5DAQx zfPU!j!WinI-1xBGl3>p>!UJ#!1{TV5r$AJye04;9yCt zT@K6;L9py@5E4HfskH} z5LgCdOr|f6RgfaeP>oh=sz{=jt4LivmQqjj=|&`Z1?XL7==get?rA zk+CoxiyaG?G5$jCP^^C=5D*-rh`OsZZ_LTneR8~1t4HiaVX3Ro;}eC8zyu_KYAq+r z*=KRR{}-1xf+xN2R!JlvH%GP%+Y}!j1f5AY*0z(A9fA^H`@P?-VqHIOt5S#%FlyTQ zs|SpI#1byR)T(nKz{U7JEDAWk2^KaH=(-xvs&+Dy!eN6Dz*aqbLfv^%6IA$}eJ*Q1 z2!NN36C#Y!uws;2?V$YpkhUkAUKsmp{`UqJN$K9vfmip>fw+Fbs_+`@Nhh= z@-J3vdP2gMtA~?^S1wBrsm`H2-vr9m)CZ0-d4$2+>X}9YMF)uxVf>LO$ z{7Sh+P7`4om2g+mRW@o zz3KtpizJ^u27OzLr_wJ_ngzKML_zR zADLA_us0CFf$@Rh?N%oaoazx)2)u#7!I{Lkd+g?Ux`mLKYbevKAVApG3)!tA1>~h; z8wZRILH;pzgC#MyK$sDYoz96ucmR{yBJ+?EQqd!LoybXGd1NeB67;3ejL6|m!ZRHY zy8{c-7>I_5?21E1R?o2f3?OD6!|K^|Jlv)b#J`x%IGU6mMoep(S0R*H>Q<-L&5mIK zKlt<#6M{cKoo;RIst4J2I_P`yXrE#~B3LBp`x|G60RPZ-DSRCz=TuX{s75MRXE0PH z-ihfLA&JBR&GAWCNh;p`=0=_k4jtfh>`qTBiZj zvT%!WX5>fdVuj_nN)+x6g&I)+xm%5}iz>>y)r(Upueh#beTx9ky&w{#%ow3Wd@0^m zY6kwq)ksfB_*EjwfNQ&OO$co(Fh@lLZtLt>iEZ-aR&7CQPQ~UWv`p|6I)Nw&B-gMU zc9`#OEn!ch3i)r782z^IeIO zjRi!X=TYpT`K_d!ZhEEac`8b49W*Gi@gs-<-sV2VhILVa0mX#`M5#f$@D*mhrTCkR zqSrDe<&9)Y8*1yj4p1vlZIPaltCb>?@Aah zwx=lpRh3{(-8Br~6D0wS44@N*t)Y67%{&*1_ku?*lj>D&N-@A4NM(waSPhLb#fW$f zep)la>tjG-(~pAk6zvW^DGz&6Vj|o#DKtyxHxd|k?aI?MxT_6x$v)=B!_#@goO$Ybmj3IW#I@X|=L52XdIVtCd0E|_srd>0^U zbC#j*DuLM!7NSphZ1^>FTv<9n`SzPi;kODFE%70Yb1kuFC3hQqrjMazedwv@P?VG7 z&9oaZ@W#3;u;fyer>B%!qb((p1A-!Zf79n#RJmZ!K^cTf(kGH8sEjX6V#a#~R{i3A=Dv$Eqq2}~si#r^MG0_P z^CA9QC~%-Vw^N|ro#c`qqEC1pucn8;Jfb$@sFfuc#`Ey`UY z-}P4>QY2&x#WKS%BorgcC&C!5#PU2q${}qnl=a;Ug#0+NT6>Cgz1$bs=YdM>jR|+F zcRfJQlG@Qw7RDirz^>!I&u%I#4dwnM0*%)Srdv2aeG>L9W-;&ehEoo-?oqo9>js5S zQ4i1#O0cl!Dw&ga3Hs$2k~s=suqgbNJ}*i^;ryZ~&^X^grgc(M*=JD{3O`0Dl)T#9 zMfmYxN`nYh;Ocg-JJ9q@>Q@A1EyK2qv2yc!A~5$%G8 za?WMxV`LbU9^)PthDJ6;TvSWS&!aJ?%&PyoPlbtdC(Y22h*3|!&%am{$UQcP>J;wpmeEs6$ zh&K)Bg;lg^`eS`E6ZK*Mq7H53EA$og~*h=QzY1CfFfKDn?h zf`WzavXHng_$}SlCqIj8pw4Z)<#M-RT@YZzGv6#T3b zcC=P)l`28NK9Z|sNHKjVBKubQb)kfnC>a0v1!3#_R!|rurm0f4Nj=a6;J01NP+Hz; z8dcHPgrt_(SA{^)rwNZ$0MU>l-Om&Q7Q{grj2NvYnmU=C$8$j8X#-8!Q`{oIPDG@{ zg7qWKt0+EYZ#qS{V!uzIu$YeC!$5f_0jp4EFJ*O zY`f-Q+V+%*wFc`5S9?-`NULnB8$zHdJ`l$7_Y;H?ZKE|DJk(k_eW@U3xw=d_o$;2v z_VpurSXAbYoiSRoBxCzMC>5>NFk$(EtiyDajMmZeGyLDLCAr+#8OldE3*M!<9{=S(w zyGE57U@X2OdY`;--5SsXN&`D{0uNO%+}aU5$2Vyu@~OJDmj@KsdM)27XL}+yphUoI z0K5v>T%*F2m+QC`eOcpk0TDG}Wu_Q)*M~>1>!8T@zz3N`A&=jzg%&EEGeLeZhbZyF z=?qUGGaCS|td4Rccu3+BQEkdl7L=bAE6CeU1IcVD4t?Y!0)G1_!J?HroiS zMepizV`eBtwa&l36wCRt zv~}y{l*w6*gR3NK!;t(fq#&`n#1}`D&RwaVkQ+!BXB8`hA+8i{JpfuC;tz|x{$`OxL}^S+!fgB^B$=_rhSf}{xOE!w(kSLg#wOis2u=oR zfKHkuanQq)Eh+KIB((sgNkgnLNCB(xDN&>1xr~0))NuD2f{P}>YK$%hmI&$ju!exf z%90hV|41u0DGlFewtu5nk|Mb_Noh3xRd(c%6e+MVR`!}X%XL7~N}R@xHZH|J<%F#y zrK2_vp{bAR24cDH6{O-Yt|S7uaibYd(l4slv3;UOltn^a5;pu4&q{vn=blugx=7gn z>SYp=F+DaSCDg($tz!vmiLYa*MZM;N*+iNPy%K3IEXpM2qzQ}?X)exb-GwU9eZ;>5 zItfy(U7>S-=170sdOU)}JQ&(d-K8a!c(>@49l~l3QgEsW7s(r++T#h!6@DDO%;|?? zQHb*RbVzcFP60^b##eCSWDVN%L6ohCQR+!HUy3+L~Z*wpumH9hF%Ej#Rmih7|#9rTM)Aq1s1qmU}8kAsGkK(^#A z_P|UxCh5sJ$EY8UJyw#Qaq^i$s+wNUxKrNTmh>M_Isf9GNGe0p?hcW9SUj-v0g2%- z2i5}^f9GmJhGn=BtX#-=AN;va6%+XS4#%RFLMDau^>+)TKivJQxY+5XvP7F&22wVN zF({-%(o3yR^dx&^A1DxphpnNVbn`8~-JwVlya> zH*Z951^FuMQN4s1yqCKMv68)l#0G=J)8klp?Eg@&D%*WpNcQT*Jvmy@D?{enUVRijX!N>O z&L1##fN)4>iv^C&8{v((p0X8GOz#YeVA3c@j68#M4{xdDc|LUjJfx@XdfBGgi?|#f~)h+?XWA zki}sLLsEXBR70^BvNEZ9r3VJ1J{MCZo&A%Un18YOX->~laVtj0A?tU-7FI}K^^#zsh&;U(f{ zuoY%ij4a)mF8dUEAw96iI;zxUFY5TBvOM@_62|GJJca-U ztEP~(YWS!Vun!I~SO+8U=M!8LS!Y_J9*hE^Lq0w{CQ%^s2vRS62nypQbSB>6d873|CXS0=ro6Uvgam0L z-Fvj&W4I+DV13(XNZdQcg=s$!lM~uZSPuD%+lu~pO67=pP{+DT!yKJ6k&^?RNI>-# zND;Vp?+u>(89zT-SD=VQ*&*tZ=Weu)8l=GWi#MmBX9Uo(qJzz2nph1XVSTiYGa#6O z+U(IZvOA?+-UH3vUJ`cXmu0XxT(i3C)f=>t|VAi)rJd^U463<%`h%WOVxZN~Dq z$f@v}OHzxsj@JL-uYY|hxBp++|3Xd=yY)UdD)iqOq{Bme9n@;rL3RpigmlDrtTh_Y z`ydIrm*b5$_lkyugZrM-AtppL?nVYtMbnT=pPSC9% zIU9)-ONG$Fm`}R(a&mym{p1V1oKS2B2chysw7i&{SMY(8aTAOt(oE`yVpnulyUajH zj>8idj@ld|6;2+>pTAkRsS-OT;?lcy{2-GlB|=o7;xv?+K)IA&@GO)Rdif(XEDe%M zu}Hj?Bq5RDayE|j>TE?wgbUcG$hk3Z znP}O*RI0-8RLLSQ%sh+$TV7y{X97j6bg^vHjgai|*_#C4773pd>%=ZG0rg3WWZa0p z=++xQR8~xZG<_ZTQDQLa^{(}Z;))V!$bC(Mq2MuLn-I$(>%=(*NHM-}>}^Q%3>gw7 zb^dvJ{xz`BH=qatEtB*INZ%#tbo`cOX#CYnoi(9s14KmQU|F9;EFLeOEU;TICm2*t z-mTll;gKjVhXU0{Dnv#UU@!`K#~8 z=WoZ9_mGA#`^~!4KX2^qbXL#{MG~{8@q9zdbbt~ZpssK8-w3 z^_rXwvpLrL;QYrZhlJ|TYhIjm>*y^c{cP?02ozy+9unZ&BZQdN_<@o*gCv32lBR?| zl#rrbqWbAI({6P{ORRxz9kiHV;GIHFP}yc3SryLTC#)((<8cy#M}`v>612 zNx>%gcFKAPQh1+YO9V+`RL<=Px!D!d3mvvr{FXHXv+uBBA`6V*43Ee`6i zSrB#8j9L8)`D<(fA~H-H;^3m)ok!!LeZ7Q+yT=gj=Fv>7|Gn;omd0fNETW}t7fy}n zxA4pndEdAq+;7gyV49}|Hkx*VX$_=+{TR=(_-@Uk94hoe{hr%C=~V&K=412KZ$A25 zw1Z(BvhQtxQ5)FmHy_t4+I)@|8)@n)H?;LzV5uT#SN^3OJN^2quO`D4?T%>{LY}lRB z)`*-XE!-l-;}QKTd@rU_`yo}7^=to0^h@3zG=5i$ikGs&ifr81+HGlNJ&QJ|@TGpm zJHo0L57!zpjb-=kH*++n#Ldx27Do3AC6jxLJH*mM?*UB#O{yajB?nY+1zOfud7(ot z@1ac%X#9p~%z@NNz;wJMMIKig;sTXcI*t3;PqJmFg%(>+3!PxtFKEcXY2S|^?EZV? zPKeJ`-b1z(@%G^vkvoHD33o;V|5uvKVp&YYvq3A~3wWY^(+v&xMF`cFwwv}w(jtZ* z-fpMHM(eIXNWr|Bzh)`ZPY0J>Rh4Uk-ZFX4E=qGGpwiKW)P|n>md3GZR12j zp*f6~`B2nsmi%~(fPvO}8thOt4X#e*)LM)k8oQCgG-WD?rb-%X<98~@gV4Cs(7yfV zj+PBova(-xx$P+PjdVeT+u)C+fxY7Sf(!M5rCNW*aUg*)&2>SxgpZ3W2x_{<6Y*)M2LN%c2MjuGAX)B1Lr&XOHXx`4# z&Df;Nno=leZ~9D<<5^gWM1+}lWiK*<+rUK{Ec z9ftQNZE&wHzWwHTr3p5V{Y?I#d|v#9XcJ-#JnysE=g`1s55`f71|W`ps2zu!C)R_) z9%ZhIG}?7g4V59(FC`Rd1AjJ#(9lly-(wNxc+t=Bb`(6X_nH<(zeRJ-fs2~EkcfXb zv1@^EJ39GU{gRdfL+>`wUDU6k2|f*%N#BoWrV_U-ub%djc+}I^0=0YE8`Xpm7S+(e z%%aeDL!%NbMl(QDOGBd%*r6X!N9`85Rh}6gmYC*!a*z9d1e;9Wrd~2*E1ociN=fFU zo}4fTGXn*zkWF~iS?pEooVA|K0}5AeG-&W7U3SngN6}0+w~OdfKX{0$OX=^P_=#v} z4EyJgC|ru1Hg3ET!0z~Z2-qA*MN%8n%Z=de%{)4|IG*_e;fKwZWZYyr9Ax9f& z6zuTwYzug9+D1Q1as3YYX4&ik$%Y)Ye>0CrKFEl#{G#K8bd%IiP+oIKY z|5&iPH_$mS{Vnj8LteAnAozuP1Mgcrb_2g?{$9p~^L#!vwXXod!$T{s6{%5PJae=^ zyD-Yek>OB9$ASbg&p-?tC6+#PT}Ml9yzG;3gRFkgavkvpKM}M*Nev#C;;hh&Y_R`% zA6Uux>^B>>HDS71x9@pAqA@mT!6`8&UW?M--UHAG$0uSZYguerz8x#kDU>L)V9*Wv zafiw_RG*S)fwwl%^Bb?n<1@m-+v2*WX?2FfNqoB7FfJKdR35#Zv=kKa;ku0>GAVvw z+8o~yErH0ol}u9!bt&vKxonKSr!Vfmh9g7Mu<%V!HaB58YQh%!I;M*6;Ir)bE* z7C~a;ea|LmSeE>@aQoaJL1S?6?6PN2r~AXnA6>w-882|d5D8Hyq|kV9%UVV16q@~N zBy_NwyA2&&`tvybjs|YKjZzN8n3i`aG6Ah8&V6vwI-aKXe*$CgLm;iD>J3-3H*)-bBI>p{zx&wQ){ix8zHYKZazuRz#Fkd8ek=Va)`P9d( zg%?WF4?oeyTj7QY8OCpSLDQi~=jYOYa1nNw!1}(O3tTmE0U=UP!!j)d1F;qxu6!1v zVzi6(6pJQ_86Xpyx_;=p1-Q$^#)|egFmWF6GO@P}W3`(&4`rFySTe@4Oe|{cd4f+6 z1H5a|ClMi+z5zJ~5e?Z>O^}odCW^Qa*eYUyWDIZ0(hyO?B5;-P47S7?f0{%iD>VYO zC04|$5F301)mT5&OlRosbHryhszscSn)K~~LD*9p=74(6#~!+85^MBfLyT1{k<}0b zH!xh$j~Viz5({!rLk`t5O;_P0vC|r&YE#&3^bcjv5CABDCdzgi1h(n+mgwEq5aFR2 z$tGeh<1KA6quReX1_Gz2ph`qNEUjRWNd$v@sq#Mtu5>%`-4(z< zEbq@CmTll=6ftZ)(R-sTFkfu`6P4#ty-ehGG$|zm*a(ONg?eJC(t)@PqPIa}k$_$z z8Yfg3dPLU){6OrZoYTMA5J3gE2z^3WwZy+C{6|p~hb=KRSVEg)OiSG!tr-wsOx_6{ zV?Ook*%M>=fD)n*o9(LbFh!DH>OsUl$XP_Cna&&w9R*go9Y*BJ_nSHy!V%IU3Rj^L zi2j5w05LZ9A)BZMJ3~}~*I^Athyfe^7Cr8FhW_s8_8|WIe`|0#nQ8$T1CzxLeAV}4 zXl-i@Exmj8GzU)^Rfz?fLX#;y%ZZQv`9jnx1LVpe>AYRQ639ppnYzM3&@fUH=Jo&| z^Kh3v#S&B^Zg+9!sffB=kfiN6;u0J^Q;3*P)&~q)6(WMrhGHODdAkbPpd@QenkReA zP*l?Yr(dt($(S?-D;YCq;`=^!rzbw>W1<@3(w@P7r75;O9daOE*ARPaqam83&m2!& zA4$7Ajm*BMiSc7SG0W;2;;6SL(e`Oid_)nCaEmv$_ZnG4B%Cp;Aoj$)-In z!7&+AN=UBRf`0}vdf<08Z_S=b%#}YR<|q)W;Q7P18PX)8YQ0RySg+%0y239-;TBlH z6A&A42_bP1(bJDM^&il=!f6X!YB^d~av=s@nu=KqgeLNKX@HLImN&|tIE!~MyFq^R zIfg{`jvh$~(7<||Ge@kulCFq}q&ogR1#~4k014ma%(rJxfm`8N;P!M!9=x1r7swj! ziEj+aqku~}DLsRTg)0tLh!{-Ar*%SdOikWBADYngBq)}ujxrt^qVa1RFb(l7L0e26 z0Xi))O1vn*_R<#vR5i|lx)d;|u*{lZMo)WAon5RF+4+q`Jm{kh6&xEq0g=a9!?7n~ zykPo5FR!WFlUK<)>wEGxr!!kh;`99az#nU-YT}GaLgCZdjOgY|fz6gf*!)BEw7#+( z$@FzXOgx)mkSdk|_NfmiCB~QxQDL#_Mwb%D-IjAf<}biMM4jGfyp8I@aA2i)T-pj3 z-YlxAge&mU{o_Mbs;HhF0?$Se9mEEsKYnxZCJIAe@+PtN!ZQJ{D-o(8&h8!lEEg#1 z0n(0>r3mtB0_`t_taDID!74|Wf)xe+!-(WM@ax0U*!e@-p^m*fM+?D{P-O*r&VHCk z)#TWnhe+kn8MbFXMk@8wX&GsBsf~7xALWPOWib~`<&{gkbXt)9k`8daq|lUJLb%|{ z=+cwPJ%YntUQ8|sxXp7UFR28}v)CXQv3mes{1DhF8sI3lFJ2b`lKn6b=DNF{`SsK51d zWX$QTu?5a*XSJxe|I=Gdl7QhV*UaHRo558Wl8&WVnJMMwyn(A0I8qz~Gt zN`(de3L>ZG#UW6(AT>+frHH}w%NATg#FFOQS3$T$Ef7Y_(nLk-jMe0ND)4vFEXF8TeJ8r)I~B_1h2%4c}IDH5WfZ!uM&l!zT=PVT8lfq4j`K@6n? zTsuJVQq=zd{>qgGywfF-1U`Fm^O25cQe}B5K}%Frd9eGKo-=84gNSw!k#%$u7>MeN z?-ve6@sC~UN{$JOV$LR3>5oVW^6Hv}04fu}RjbY{-v8sO*n0N^way~2?A~GoI zZ$BfjJObG+QH*9^1r?bUhqib^PBR2u`L_k&y)=1obOHDWXNmeo_lTCe1f(^;wYy6y z(ST#I<)4)Z<_33~x@@xluCLm@{@V29TiMsXHxX>Ni!T%T9(ZHU3Qx<@oFf)BhEh!`Y^>5)#?Yt* zqMii9PsanS{Swo5dQYcvXQ+T8nJ=VK~T6nIx1%UQ?Qe5JkACKB=v<%c!hTsUr0|`MJBxsqoZV65nQQ9odw8YKio{hG28InZX`cM&^M-=sF^kEsh722_e1)?xE3m!Qtara|RttrPX? zkKV!vWqGmy^h_-PMaAh%wK?bjs08X-YLC<<)mB~!Xqd*YH70!^aPHes1A;Sk0Yq!4 z!8(ninYw^(nYsW5nK}>r=*bAU?C}q0c?We6P9!GizP4KRpSx^kVfUuCxS2EWOkK$2 zG&OCN9r6_e{uxk9u49Z_`qp$u_w6sQ^vk|+=CXJDqrY%KrBuCmirb&LJk&p zVgHVQDpc4b(M}oJ75tWF{UMI)(U+w98XK?M<2NZ|DSCZ7#g2|*JoGXXWrOn55luNA7;J+X$8M@?U| z;gC{L1Jz{9^{}R>C@r^zDf2sd5*P25(V55{cAB(XfTK!1aLi^@Zx~PkV0&u#7jT9t z12Q5}7$Meau?Y0M`n8}&tYy4gPnDo7&O-g#^x*5eo2uW$p8GD$JgCV?c6V!8O7$HA zoO|g1L#pEQlWV9V1RI$1GVVXvjSK{yA$Abo-a;yDQmB*}4J6bxN^-v?q}Wz};n$MN zElc`(NtBxEwQqqs996eKwOO6iLCvB&<<}}$Id(i-_T{(YFu%YslNx*HP6l7{#vuS| zrDXw9j9YldKTQbbnTACJ)jR`b(FL;0>;(0U&@$`Z3uC2vtS8f*^Zq)5F&&3uB~g@pgH_58;b(9uO~T;)On1(Cfh?6zb{OPS`f0CgkT5brGf5P`%rE6*fmh zHRuNjyThS-mxowh<+Qyd3?$$&QQeoDWcb60AVOx65v*`wr zxMb@R0Ta}aagVXZIIzoKNPXclCxkuO#u3mLeM8m3TBH;%N%Ki1e;U-F=HT;dksec^ zzA_Ji;JrSWeO1HS7{S!((ZSvC?tb+cqa3H$=rV9!sp$F$HWy`}E^qCheowBWLP8F= zk0R!5beYDJ!|%s~aLdtUe?IG$i53W*yNtET?%`?qGB6T5f<~7yi}p`SS~_;36247! z+~Xjj{j#DQJ?D)+Il8><)Xw``jVFe^sl4-fqutaJ*XU?JM>bvtWkVYw29mX@@Kc06 zBRtWuM)A5H>vFYM$Sq2Exz-bEC^xD%NYfO%mw))vy1aQl$$~ zqL-~2JUuF5D^W4|av1ICrwEtg9~?m~sowGXf*VJdVf;0|aQ48dxre3>lKq4+jV_mr zS?7g9GJ<)T=+76xHE#kT*>&BC?(%*>sqy?^H_F9_+DGkym|mdX{LHF;F{K=VCiQy- z!o<$%E~Aw#tR1L|=aXz??q}>zBr`hVf$}0l|E}jrLKSEi>Hla_@I>X@UDlis;Hgy# zUJ`3Z)Kk-62iHYTuU+vYKy=jU{w5Jj;d`BiUD=WZYfkU9iMU%W4wfZ zE$}*kCq!O}wY+@9tM5?l0{_SU2||;9(D&s5DuW@Yef*o#*8(e`W?hIODp9C%^cW)Ssf#ddLC%k1g&F?FfwJBQw} zPJr)%S`>{(0rhp4(TV~!Zes~eo#z_#jWp&xuuftCcA0?J{MvjyUPl>TR%Hv9Yi%*W z%Zfb&qX*69op+{=iDK6_VOmwxQFyFF$u; zOymI;6y=>_gtCxD=;4Xm7*_DUJoPK&)8_H3 z;9OAIvfD%ZA{2!P8sZb?j-7G1fZk^-{YO6l{C1aT@u=UeaCo_*fMV)7!w0+|ZB z%Lbuj?lLlEbC;1R%v=5YrN$RyQ&D$m?*=VOTTHL>?egA0qs3_7Vl<@OOuZp5z<)vR z%|B$O@V_9pwu}vqATJ<*L7o4;9(($`DoW98a0FDiW;W9S8~NnB~$v|S!FqN z8j&N250M#|A}{LRiS!X2$&VfBjRxcpvG%=c5PAnJ;y?@8{bDoC!c^pANbY&^Nm~v5T|eAd1sj(tC=#)nuNeS@idKM`O>BYrN!^575vT(gRlVMLE?PmHSGycjkV|MRy%i#;`lX9En#BBqk^vgf;FY|52mVMkczyx&oXvWYEKSm zlJy_Vv=iWD7#6Y=se6xh zo+OM>$i?wnRER68^m;luvwA)Ki-WoMCcI^G!3V+W;&mFbxZ~5K(1?2S591RoAStL= zL_IlpL*^Ov{2s&{1LXa``!Vq|jvyazeY@I2W z#<$`Oi!5%y$Uc((3T5^#SSnZ~xv5lcZ*+x&%a0G34c^KS5mM?HK1jVy0t0z*&R)a( zGUH@lN{I&Q;G3)J(=&>P0M?AIWWIIax+RxFWR=$JA-jmByP}ySYGl{bT9d3HPZe}B zhy7h)3JNP>-S7Y|O>$*>)(3$$`tJ5f#N*3f3B3QC2i2tr(AtMB9YS$sDwp=hs~+7+|q0(Tk*7 z{7Aa`nULD?VGXN*3^qs!v$+%8x+{*I^AE+aDMtkkb{t$S!A;#fC6UNS&WUT6;I8<6`bzbn)6iL?4^sbquOR}^ItZ!_cb zGubc;#-5P}91PWFM;xsO*@XlNe00R$vqYaN85Rh0&)r3D05^%ga(G}MSSI%jvH+4- z`0mpsi~|=2Q<$YB9_&v+tF`9~yf$EXkjWYLN_~2yg~O}~&Vwu^)0lq5h6cs~dbP+N zyDQd!?Tl{`va4aeeTm8+kQfo#n6}*_-S*}pJ&=v=s^a+WRurlxEsBo*wSZBWzQovv zu4AT(PEu1Ep~sO?XJS6n%>q+EpGTq$qy&8tNils1lw$f4bj0+=BrG_H>8WA2K*$0; zmZ9e7yONLU<(<*IExpA;Os`sB4?#dLdZQ5(g9XYJz&(SaJ6_m7ZLYNEXp^IkYh+ExkBxB&1ANFxPwpgvP0# zy@@m!()(Bg(WUWL(G}kN(ba&HLW=Zi9=~gtiDFTqJ0=L>{v7m9V!{+*Zy6wKKk2cE z13nLEM&nSrsX2$quTB2~OjWKgWD0s9Qy~%qf@PYse~{)w z`piBP$ytFNZ6gef3+jg`7j`} zzpWiPOMf0~x7Pj@H7cfW_Rq`T-PW&v_3eEBpo9IC@dy2>@>l2zp2S)CQWbOoek#4; zl-e$pE_t^pYb?<%<|jmgGMuyIM$Uha@Oamyxp%cee&TpgxAHuFf0hXDhA`n;`U|4) zWu+@prKQ`EAI9g9Zp|BoAG5yg?`373WJp(BKjK@#{)7HAKM#W2>!g3qUJ?(-F+I;d z&EL(T_a>7^GW$z^bSI*B4_%ilBHpeRxChlF>kt~GtMq_dvAw)Tng8Tg57M6>?4YN! zirEwTh|(&0dV)`EQ^f`}^r~z2znijJ7)Aku{JTk~1iNcwNgcep06>MJUFkKpAz-3P zXDUF{&WUtMxt~4(6fdG-@H?6>F}@v5SPFbqa{SVeD0En^;~fX|K{Om6Q+TDusq~;Z zlXpOmt=-cr_{9wgT)DsVfUDd{xgdy&&56>KUr5GT{O(Us5+pB3SB#Umn*|NM~N2LcZ15^yixOFe?F18_DM&WybZUvrJb^vXP@ zk^>eI>#DeAh=#zde-<%$4V@Ejh|X*236Zsyr2Eg&HA|xVEI6R~u&3=>nDLxNS+Yi~ zkl*CDh3@)^-qhbu-ZlMMa0joCsNr}&;Qlb2m#>E)lDjmTZIFX)BCg&NIc-2X=DzQlTxsa`d zGZ*N=Cr4K^e>O~N6$~Tg>kZ!vx=|cIw)6+eAmH#3{YR$qyW!y$(EI4D@84722o|b3 zsaGvev}A@ypImix-;bwnNxnU6;`^?G%byx1X>}BSSJ0baQ78RX$HnMsscZNEesIFW zvGbWN(FL?EM97)0TK^o4qthZH=h6K^`wjqN1`x&QYMPzAJ#hQsJ>v4H&qV)-_4{G( z@gu=24CmPzT~z`s@ZPgPaxr=%2lgsa8rbSo=CATG_^`fDnxFhOTgCS0=qgJmLfp_v zcPlR*T^)c~v&>XR@1h$f{6gyP)uF!i)MY?8eClcgy7lgN-s?x{N3L_ym<#M9s)OL% z%$O2AW5j=4-9O~hsX zo`U_ltHPEk<;JN+vG*bovd}>}!V4^ED^vgKvArzLwQVEit`6eH`rKIPv7YCmcdjaS zO#2)JT7lzQ8h~ev&tq}2hJZp2;5nxVhQfVBkH}c2CXNw^sHLk0ot|6}5jK0ZHNl%Q zQ{F}w^d5}bmN%0Ku6cT#Y*6U=n^d&qBMS%Wt{P#&0S5xAJQ1RY!%ie}ZD;@e2|<|x zky!s`H0uA3-WN{CZxS=Fo{Fu|Eld^ZCw7rsRkrEkKI*Po*Px+7C5Iu8&SF|(>SA&% z?-G{MV)n<0Ktjd|xXN0mcuL`u)A{}A+6CR!=~$psPK16kjtILtjMvihhkOrF%~Ha7 z$LnRi(e7%4<}~}RyGlu)(|g31pWEL@4aJ=2w-gh20&JHE6q7Arr@NNos|R{Gq(vu1 zTnm6^(c*W*GLzg5k}`8Pr-rK0Oami68*Ih<>t{(p-BAOb=I{7=nO&#1uwAL>Tbs?QX#GPL-b3 zo6#6^4SnFnTtf}L@K8gDMsf@uq&tc(Z0kiF9sX4s^0#NbJ6m_89T0pL{_9|9H55f| z;52O;TL0+inuB|GRV`BSFy`KlhoPZH=Crtp?(o)%Qd{F`IZd3$ElULPpOF;u!E(m} zIO31O9hu+v^5BjAZCScUca&5-7-=73+&5^S?dY(_S5%WFA*9|>0yUB|s3DP)ITjfW z{f9k3<3`krWi;3cUz~_ijKzcVVZ$jrPkNxFaxc9pCT3^eY5b@9wP zZX8`dl$~o8`@a*Cv%NG-!x*9f^K}hCmWO(11(GX@tJxr{Q@~#wnt~Q+2Ad zS{)sv0}G;|EN9EqcBp(Dp{yi=3;N;Bv$vD{YQjL#*LO6yM~1wTu*jH&;Mx1DpCs9Z2U0M@HS1Ae)X^o zSux@+X%s3tbZEx*xQhuyVavl*60x;9?^1-ok{g{zq0nJ&^@ zd!<@s%yk>?B1qs`sC0^k)*Du>g@zfmkF|Qp=8Q=*IIe~V8BmgdN30?>I9MydD4{Y5 zhh9^ecuzN_(oO>e&<}OjY$x~qaqUED;cE)GV74(#;l_;gYCID<*3m#k_pJ%3n+NAl zU;KPb{WGNVq`M|lR)~hyZ|jr4W@%&7&}H)!A#Wq`8ah(ip{+BNDWNja{+T|FP?b26 zm~1x`uNm=WLaE}jQiL3i$HUR!_^GWL2oy8IP%szpRx7-1dGzj@W%XCT|GoAt!4Kn9 z9I~O!qzV|byN+r3Eg274-o$|X0|_a$e6!rppru-CL)*kHOKp&7>5Y)y)^N*G(}9*^ z0?h@>yQSAqU_{Ia?|iDKe!e_ZR4vsmqki`?;I@iibl&aKWA+z zic0U%)bI4Kb0js71TY5ddnq4h1#kg@TJB446!>BVX&zR`jr zKCgW8Y>jjF9{+oW?sGAvUhVa?wZx+?&cMLoxM7~rlEzjwVA9&EEm_wYeJnj&wI%aH zs-WX5~ zso&1Z(ATqiN(RMRxRlxH_Z8C9rcYQ)+*1*p(!!=A7p`q73u^J6dipdx{Pp0TU`MG# z4qD8f%aEm|K@ayHgf@J=m_`1QjW<Q-*cmXr*JX_sUfI+laUAURYU9AGXEwFZQ9n7S>Uwh)Tj+@r z`O+F_@n@fHT5CJTMeI5cQ{5AJ;G0r$S+!`PQ^)W3Erpzh5cdd%L0Ayk55sKgq0@p1 z)VPGOaw5JzT1Yh?xLITbT@MJmvYQ&iTUshy-L#}CzsGY3s{&5f{yshb)o*lcgHDKF zsDp7`O5W01BiBP5hPKEHSq7rN!~M-uWm`s=Le*JmQE0wT#pxA3{Yx#4m13M=o1pBc zPt?N9f<&VIzH#9MWIF4F-;t@3Cz}mTlIsIEWk4HI()ju#f`^Lo-R5|(}W^HMSg+1SL7K7KdX4%+XS9mLP80&3@0T#+2?=z$3E&}_WLRq|i zI1S1bRjv=cfMFYizB6ozuMsWPrra^vrI#vKc;ZlM^REzYDs*mzP4pH zm0SJd{GH#JU^x(WCU^XoqFh(kQ)*kSu_@3AU0Y&m5=Yf zIzBr8K$9HHYD&{A4X}zcYV@)Gt`J={tgpQ*nud3cKAKPBMnlUqqmPsv&1n#6 zrG#_DPZ`!r>+ANQz$-pSPk6R-?@*|ZCp~|1s3HI>MafF2PUTNYZ6Ld=swLOS7Ww)5V z?jt##B2yg$<(Shwumzp4*?lDK85!-eh5ilQq2%W7BLopf5lAZm#00mz#Y#1r13x4z za`^&q)A9wNCO|vKpsIe?wzEi6i~^;EV8@=w@TMmdr?Px>%G^a7h}~yi{(<#>WSPvX zaX7~#&d{0uD5cLns*ljQ-{9E#5gY}TjaT4zmEp_7%TnqYu9M7+0MJx2U(@?X{YYNZ zN1J>s6Q=T5Y7xAgKfZhP@fQat$A2x#rPo{u z<>&VrjT^+~U=Js^TA!YAU*lWQCz4+w*bw&(&Yv6v4}Dxz^?~S(47Y4cYDe@n;`gZXiq#n7nE!FBlTlBAoFD`2<9)V?T`LjGH>f29V7y5jbYDL43HeLW8 zgOS4#tIF(jFk{|V=KFbz|7Tlyz;Kcu%|aQDF-zNE#|-b2zW(5pfD%io#kOPPkXCvJ zW9oHsc%D4((*%B39`ey7y&iF2?!4y_dX2}yAuu1an@?GGQ^iB#QVqZ}vPSy0wp>!g z&e4{tv`=@G6cv1|7+s#FwCNlQK+@FHRAc?)Mwx!ZOJ|&mYiPG^RngAsF0|RqqvVuv zPsjU*2-TRWY8PJzBfsV(Oz+z{)i|ZCd>0?fZLz|2CdZMjwYS13e67 zi?B4*tO+qqMwC7_=al}|I}H;4?LKy9P`td#p+7yio_c5hk4&#k^3)DyyS6nAP zW8mYWH9k;HYAt8R*RO%xe;kZ)XF}B#SfuTc;%oibkv{`B1t>P?995Y=R`8F;kS~Sd z_DBQVeYO7@r6}6;49nY4%$|+SR}0{WfdV+)eVk~xv~tQV&Axx{e=#|sdK%_9n36QYp(UV*46y z%vTTzBGwG##4W3P-Y6Pm6A@okv)ag0OZ>(ZCInL(o6(C}%Wo!z zES}wKSr*o%u|}T6dFSIuL&!TrMmRt}5A%_1ywR*#*?y@<1svNp?ob7ZE&JwpMgl8b zb#UiF)%yHA(?R1ACFEcEo{&kyMvY~9-GcoGnaSSP50@Op_JIJ?)U4A0Lk(>kgMIan zJorsFmbes!`QK=iKl@Sw>i2e(1)Z8rw&%xuVQPV?V!EQ-_W9$7D5};@+^~#0)h$6@Vz1htSZc zQ?}BuvFYbvn7A{ZPL^u!a(gOAHxl~<`BP0o7k5A*__MqxYE**$eYAh{Xad>}NFvNM z9U7f2{~xz@zxw&BKOh8DgC*?}HKqclw~z3(BQn_4lW`tnr3+{jXv&>V+t0|Jk{JEoEOm4P z?ef^Ku&6=mtDM@a21y{NsZPT>8ii z8aZ);T;G0*R8;_$^X80K`SCRLvcvKi{UnWUQ1MND?@uT#hX-pP(1?PZW1+C!4Xkiu z@t!b&6@7j}cVkTM9XQ34$<}*dj{}2nAtGkojaGw{X2*LFyA~?sjd&asJv>aQA95Bj zniQGcH;!#5#k?y(or2L=Hs?|SX$%;V)q~DD2P6&~@x~rDDB}&QpM3GBM|*^p6H#J= z+kj$s!vG((M7N26sl8+_g;}rJ`-}s+Y`Ee!_s#C zi-qmc-I$h&11IlgaMcwgzYUG%`!W$ipG7IgSU6`9bT=|$A`;Q}c4N++EyA6{0EoIh z4KB_#GNt2F1?W3KVy@B5sGM;JDj&yb z-mqdtazuZI#)O(AaYD|`dCj;5!n&KJ4;@aXU%up&T?)BRrZ2yI_a$=R%j3h-{qE+x z`a94I2dxXbUv2g0n{E!3KezU5E<{e%;b6fe>Y?# z7-{@t?wJd*{Iyb0M-IK^cek@P*q?S0uhToDn|($3IB|#%*jL7&wZ>X&8cSWy(3{)V zUMnuVx@~<*5ZkWVa;a6-wzfxxFOJ;WpITUB=Bj_HGuNF9UEhLe&}u%}4o_>p6Np!% z3XD)rqob4QpjEppqx*u14q7cS!lxO_i`MeZ=OVAg>iSmv!=wNh?=qI;Yy|FM^+ zT|yGyLOf8$o6EHCSo_3V4_f2fHznVfwQA2wdB4B(UWUjJhQYnkvIceF2dz~rE-3Aw z)p}M_6+V9VCkIxSMC2xP!uPhCzvsDV_Y1AhBsPYvWg6yG!~ETBmD7WQo3+gKur;^0 zJ&eYF;&=1jqWimKg50))*0K=F<{!3ZNC>FK^pBh&f0nJGZ2RbCjDYHpX<8jfUk!pd zGyP^CJ%P7_LO5u*=pQp%eC%#dJ^oSY6XP105jyTo=JgE)pV)KubD&S5o*tl2seb#- zElza9Ns8-o|E*kyieWV`rNGeWX6n0vQO@~MMmNz|W7C8P9L7uET#S8Y+;p~#ZmPmc zx^_e9c1f5pgGM()fyRD+bxfg6)Y>*e`ew#T5QvG+ix6twnP)C)TMSFZWYoslQ=|$g za(A=fp-WY#n-su!U%ah*leE+;uagVSxr*XY#|Lda3FKfwMYT|wy*1PFeyN?4~bdaz=A<@^% zTRpNZDthKf6jsCOG29j#W<$QHG_uBYa?VkvYt zV=X>g65@hdd@~SM9ul2^&-cUL-p*a!Ea_ibAF2A%{ChFarP#ENDNV&UGh?apcXO!x z>ecxEiK^4;4~H-yaz=p=ZACI#OV#Hk>k4gC&b5e9;Lt^oUbN5RZ0~N?*y3utB^oVd zzHf~OuJbJHrMo4au;8MLY9Gx8KR*EOskxVw3n-JCg>m#<1}KV}Bc5w1rg3Y&5{s3` zJjVO^=$19Z9vD=uDHa0>8+t=tY^mbN26HKyTUB#xN3E)3ZSIcUp>DWG}iwWtuzXZZ-QX^HgYxc6lqxX~aC--k$w7v@jnxe)~Uh zck@EGWm}^UP;f;6(?WCjt7!EYxBnB9nsVoX7yuR36Q|p?*3dUEm=6|UzB|p9TJck- znHr?x(R$4YzcG>ZM91hxb_oLRgU#Vtj%Jh>d5;$rt6LvZjslsywM@f7)TSabXyzwC z-*O^&wsRhhW!#>wU7Ky#4w|_ya_#nt#xQ73HB3%8euSSI4xZ9qA3x(O2X{Bknd`o^ zxvv1aths-}rN7++tV^2(c4k>n4_?cohCUNaCYOUYe}cGWK0`7}p^3W>!ZrhCIzIxD z>7mz8XquTQrMg3C|r^?YBtMC)syFBFP@Yb zcb8@$(FiUrhaC=@QwQv;zvXY|-TC^FXxz+NHaCwEl)O8&;l@m%8BB`i=tmV%`|Ngy zKqt+MKqoeLdbw{I>Rgha7iCCqE!3IIv|4L>{I+$$Go1q7yMmwX-UIET$mlJ+yHV^D zj`Rqmng@hsYb)a+9o-7QGJw!hW$~6uZAwq8kcX0Win=nog~XFD)}JCPrQHM7V_D(U z9o=Gi2ycBmK3sxgj&A+96y<{*6h-kSaH7N)NPf8yz_7IUOE=g+wIWOoadW%2xrZE;|<#qJgYzi2Jh#;LQ` zePR#{?eYW4gWEqW|8@U&zob6U9&9=#&OGcC?P)2Q6AXbTwfF305nfPxFR&IR&ai#a zm{}6BQDT0}8F|kb!qFGgssm;F7n~_VEqw5(@~?!9O8X!vsd1NPJ2QXhc1df29U*aT zyp-Rk9hfQ8oD4@K*wx>kwbFE|VI!QfJ?Bjz%bnZJMH#=DVlRSJAn%m+;FrI z?O`?Fxh+fo_4s{X#5sRISh4C96y3@GI*s42E@VWLY7-z++aA#4cJ8dw-mku6n>j<( z{gYNHk#IZTf5&$$X(0SQuihvvY}!GMu0ebGKsGc&gbvzcmYz2iyJGw*-m5lVwD7t1 z{4$tbS>Qg~17&yVhbXlI77#+%zu$s1d3sAxtD?PmFfmdln!?TEf;oO^AH*gAU!M%y zYZNcRiXn`L?fLln0+}JYwB4UR)1L;lyXYb$>p_8BxPYN1qTje|+-3#(0HI_&yvuNVQLPT||g6nJ!p*c`=vTQ~Tcj z%YooaqcTSrebNZcUcG7fe}ybcdhZal_@saq+X!uh5WxvEGVD>f`8uR%f8r8Ssup-8 z^ZaCTcJ^L5HZFJZ@U;7c$bDxGf54>vM8%S;fMR2C_Ma+hX^DVgb)Q%^KAOB#p#c19 z;5jnOL6V~;)F*_65kq!@umr@Fr^D!sgg74LSx0+4cFX6NF*Y+Qr(vwW52Z@~HK2x1 zcoMuw3WD`*=r-Sv86Dh0tE~GZzy=FrP$vR@Gp95|%s$b(>1E^`6Emhk0j_7phh)&tSY@5V>xPycqS_AqDXmNv5!*Z@;O+c)mlai}T&$ z2!C;e`iDl4`3B1%tJX83e_Gt!DGw=mCWld+al^kX(sg>wr;R{+g}y*~kVXcYj*Cat>Fkc0bk%CK48C5#fEwi_HX3~*?~Du zi^s@Xa+rpLwGub2NcaQtmX)+5v^}t;Pv_Gn6FesbDD37>pHYv0Kcbtds((P3RdIJj z6_-z!`VGvl1&y)nt1Q)KJw6~~ZzxPZwJ<|=B2cn+Vc>>&EOqy(S!i!}#wswQBcKcP z`qQ(ht5Lo|gt{~_ET1wtzw{Q}r?VPIv5P!9p=f?umfNS2yT91M&v5%CQugA-CYs!r z1Zy%b3~7T$4ZzD#ZQMPlhC6#@+$nV(5;B(n(`}&RreCm z5~42`kUfk>E;rR`4+#g3H>;A)K3haV`4yVe0{m_EsS+&5Xt~&(+wD~uBlarthuwwkSeKE%qQZ6ERpr4;Z8W_VF-^-9JIEE9W}gZnXT3?hCxuz0dUN#0Z-=y&` z?J>yaU)IClp(gbYdVm`>B?%(8Kj!17$bOnRk~X3jvZ^$32p;1nS$R0sBiE@2C32iW z>#|1)Xtn=(XaBerYB5IG>@5>eX(xjZIYw$h%TAbJS0a$eJ~kAE{3-{qKdu}|dNR~oglit%s%JSKxaZ|H7ULv4xwQ-P)3ZJmvx zP{l}U-ag%%zBic31KCsCeYSAQ>;mRR7l*+80%v!ZUuNy@^2@xPE{z0Ps)!D|ELBC- zrFoS0CsRA&rRRjmB9Qr6kpRV8xlkg5QF^vn!l8yzV)R*ow-$VV#V%!(o^cX|%6eZ& zf&Z+!>Db0B33d&kzI?(8>oZD;ZdnrM6dKoOE&uhCv$VpFDT?8s3tQ?rx6I{a4!WcS ze^4OX(4q%jlELP2A0i}~^ z>B_+4W}gh}5r4LnA0OTRViIAaSf0zf6o&lOxBty9U*G+2cKP-j`1)t_ z=>&gPB^4c=R?;p;pB2om@M8yog~kqC#|IdF)<9c}zL&@Qv)A2cP5$vy!kQI!Yx#1?XEaPx>x}S?o;|K}1as%Aar? z{aN=J_}gR}2W>rV+-sa!HaXvN)u_)De;>)Dg94(6+-In0#F8s(~ zLgqy0!1x(@ z&WHVD{zjkwQjj@Gm^!KC^P$XIDof`2EEOj1(=d!>(u6*CV-)$ATY7-7s87FHgDK7_ z$fM8aeOG8qUz$;uz4@H?V)psJyT2!Q>HSw<|Naj;k$OO&PZ}@3U2r{DqoD62o;nEf zUhLDyxQnL_0xDbG`F8<;N0n8CXF-|7YGf<&(4#N_?%cKIuyV|yo1 zMdmPN(t^N!QgAJvr~eX5%v9r9pSRNI1KDnaKFyO;K4VrS>Yz_NF_4!YxzBxD)(2w( z&eNyBE$h=POJ~9j`XphyphYJ*>J zlH%Cd=I(<%ev2_|bhQfov)jST(LLb(%llxfyvpzU!9Fvo{qc|=?DO_E;BY{@!#))= z{&#(ky~(gov4|*+J3Ie(w@+nvOJ0pW-y!`A(-*P+{vM$iFE2lJrgFSF6-ji_1T z=Se=s)Dw^}zo}rpJH?;#IeG#{nu~rAWe_05u!y| ztF88Q36h8|tg8f3Ll7;zNP>_i1yP?adhg{~izusGooDsV>iy}RXsg?A?wvC)c{eBL z=3Bq-+n2n|f6kdRXU>#6GdDyz$;57eV6BtEOg;ORtWwx>3lU#D-PQF-sgx2lQ#KAP zlBtQ38xXGnO(;`x5~o*!(j1VM;&IBhE>d1RD^Ky%oaLkjv*hMAKv}70T~o@#BaldG zR$}A2i-B2Aeb5hSSx(8BD5sy;1{>QINPeL`*f^t4>579 zrHLoWY3-@EOOzta*ln#(D^Xje{}qA8E)lPk0PUd3UMENd?cX*YLKCIhc8`gJ$ea8m z3ri%XDYi}cSRz>ZVci<+#kWhOgf@1I0(%LTTO&3R7k4DtE1n$xL_6j?^VOWXi0@+A zx;i^K6`*@CXp>r+FhZ*6M-@*98k;`m2i$-QTcR9XouqTbVt2BmpJXRTH_cIK-dc(155;uNRQTv%ReIAGbc0fg9= zCvKjxjV6*)iG@`-idNsdej{xvSR`Z*9+W_A+bsjX3yItrm{9f@M|r=H8{0+4-YzT- zdx1n-D*gkA(n=J6OqE*c#+5Rrh#X=kXsV5(XsT3A&@PqDw%To@cBzu1BwPDU8Di2% zC7yl2CQ`dpsvC&i=PCD+rcQ-zDYZ+*t)=d!5sjW*lf~X$iKenON3p>aO9innxr0XY z0<)#qZi?lVVl>7zwa+Vc2w@gT~(Pn>v-)Bc^Uq zf;~Pw6_^t|Ce?76=_P`s?bR%78rqXBKdCF7P1Sd-vQ#V|Y>cP$#f{hyDMWcfU7B6N z&(<)#*{#ZKBO5zh+&)5mH%IbAWHxA$N+*XLyWqsmP_sEQ(a=cSB(lw++_DuWHNV5-VLluH!wWXeFr9UjEGD_bU{GCa_wdJ9mB z=SZw^iDb!RDE4JVgJOK;-U(aaf!u6UFp)qr3xi~~L9>`-rAn3@BWxQE_^X_F-^d>t zmBHdz^1cz)aVrN;SP_tL2X4t)f!O(Gmn`KD1N8x+*lznGvFe<|@u}isuE=1XX#+M4&UMpp2%G^>NB`MRo2z9cj1RZ3J2Icihn&S0O8jRVvPC9>_uF2Cf} zmE`dS?EbM!M{EMJPnY&ypfu7Y56QU2?8~79|1@?6+2zOC0BnO0mJZt|gr&0upXA8E z^%K#D#RN~@-2;Q3S>KF?W4J| zQ7S9Wu&VF=QkGhjCgj6TNAow-Dn6qOVan+b71W3I=}D-L_@#1eB?Ylq>R4KiyFTlx z;q86i>I?H}Uzw^d=dv7AG&^e7f_*~1LWyo(uuCWgtk@m~yM)kxrPu|O zyp*(1E0vp`BA#2Y3@BmK;%`WBh z0#brCvSaF$8&-F4r4yLj*-fz zqs^!ukiL}4dO>Yac&Yt5bdqf$OZR1{snB>PKcuIDjAuc545ii5gj9G1Oj4Z}q zy1}Q^fngOx?BBj2m1ipst>VJM*mIqRk!&&_6U0`@)!7{z&;+sD64{WJPxe?!cK$I{ zT4cmro<#&dJ{pEY7-@}$UGyUZ)Pj_bq%bT?Pf~atKzfqGHfPDju6^2O>8XEk5lPix z&Bh`r&bYC@8opI8*0Uw$Esiy2vH0kxu6U@snZ*jEOUlNaJOs7*A6r&t`_I))F?LCz zHQRy^(=lGl8~|YOyFeSJ8@W*Nz-;)K%YISOL^~2GWyO6hU&uCS|D>cHEVwB)PKTni5RX69in-av60Q*nXQY zq_sV_REBw)0i3M^fV5%~WPACAvJssPSe1nhby-|_J+vlm@&JM@m$AKJ$_gcakQkGk z)^389#)Qo^r8kOkSsG7U?9zferuEPTPb;d*&Fd(z`Y5kh~22VIOdc%T-yompl1>1vc$rODTmky&t=Lnq3MP6&qhta#C(T1^FpZt71Ff(i7F_ARK<7G6Vxj3pvK};vUjE0%Om7Dx?fnde2zWOe_Y3DIc}iB~FeQN}Ng6iAri> zTMV+*EIVP}hdnkCZ?T0Vdub((U@H-+j_*~Vqea!^O)#uU;fYf;Yrg))+jSa=S)hst z3FAQsrYvdZ+%r05BvO4v>G&&9Tj*`mOm;!IvYWnQ`kECFG3iOISf5{;Bvs@d&7-BC zdflm5fn);}SY(97Y8R0jCP%H=L^+VX(X3aDx*vr<%2vK=%ijk9d2`Q5F;-+_d)6Gl za<&$rNo{L30%y%forowq*le1JKiWQ%@3Lvg^cP2AE9$fX7M0Ys4L;McOATGC@c-0L z1Ju-rV{?_%r3AMAF3wKy)R3v}wt3~9C)@az(OGffVD)~q z);^8Md6-8@siIwX#Fko8y!ktIhg2yYts(iPXHt5SD>Ha#50%8Q)#jecl`^TenhM8) z+Eh#wLQ!dP-*UAPkJEkSI99X4W+(n!t*Kq*5Oj|t2JDyh$cm@D@P zWo@3_gQ*b?vFb`QJp>*8!4fNj*)-F$j`9CW&$>qCMRfeB zB&!?fIh6ck*8~*cAe?Y!_m3WKeeF zvFH43Z60nd@kn`KIbC-3fLM{L@k3>ME0^LZ3fk&g5Xs@WX$adFqu!D(qP9Bo(-MjZ zHFk-G0>0*~euc{jvfr7@_p2z4GWDii56nMUtU*W6>N1oa0a1q41;1?&U5!!+5fM`+ zh2w&$pS5|QE~2bOHD-^Wv9&3jP{I*=NuP4QmL0Q$-;@Z)q5)0}2n>x?ucv0GWtE#5 zZI{9;M2dMRx|1o@Y&0doFBDd1u5Clu70v1!CQ=cVxnHq<+%ZV241pC-+I{+6;!I5Q2CDQw-~3 zdd9GG`Z4U58+P8^&&v>HcY48-uhS{7h*L**#8e?tJVJlO0L%b14^#fD!i5Q zW>8U`2SFv;Vzd&q?JKqlU9mhf?PSdkO7EOah0uYW()^MaYwRw*u7dhQWCS~Ur0gS9 zmg#yZFKAM(5K+C_g@web+z{e%h<|Ukz^AT`s9CcpCjO$1wZt3*C^Z*eY`zVNr6(T1 zR7Dj`ah?>ye9CWzO4XpFhUZ9bY^hP%)344k)dK)5A_ua|JnUZ(V#BE3nhhY}Y~JsQqmLqgrLQ5e9C|RM&yjKrl38j&}TI?drp{@|qQ4yXT=**etwfAd7*u zE0>hC|FXar;`8tMpK52xlBK$3NC)*V7{~^scpRv0;#us(x@});KKkb*p{V_h~ z1(g34&37;G(v0zAfS2CT{KH;1_hS48Z?3=TBh8ncJ$(?yuV2aaH)W*jKh7hzFveeK z#O2G`X+FHH$4!i11pY7Qp!qQ0inlR--Y_VCL7IPI%DW5W%e~~~w-llI``g>y!uWmQ ze{wOJFTVS1LyX@D<+teY{o6)Q!T9>Ox&G$Y5QzA%QWnkUx@OTMFg|N8Za?!}ntxe3 zn-SxS0B>;j1&RDaEB{Qc%il2mt}|d2Y5O(*`PpEMf4YkEvJM}8{u}E5tp#J6uyWxT-!PH$mI)$|@!z%fb6on%8H|5(m8Ulc(){8bW9DLfc@wXH z>xR}mBlxdYe&2ozw_$vEap3#5Ao)pc_pHPCOis{#!)V@V!S9I}UuG&7YxJY_zq2zN z+J1lc1pQaj^?$9>vVSo7&ab(AYff7K<-guS`|qGkT)t%@U4Q;DCm&++6M#4Lp!pJ; zTcZ8%U%<e_Md@Mz<+bm{!?*@a|uko6T}bedAj~iwcXqd z<99f6`^%GQ{!Ep%pD^A7>}Lp~`Oe>#U&Z)x5PxM$D{ct*uQvYlKHmR5#vd=r^*8It zkK6GiKgQnz-VjXd-yrL(Oc)<3;;#;0<gSduUx*gkd}Y@wA&DjZ@m`c=TO>zpPj35 z1>=vt<-B1S%@2RD2=(8yTe$w#i?sjza`jF$CVyEh*#8SXe!2UjH9CJPH3s;pwEUG- z$46oE>i}=wLyzBI9ceKN<8LkH@+~^!-|qe&OJV%?TTp+OX#L&pmn)0$E1=mMI@0Zb zMv2C#{~c@z`s>*5LTqqpOny$7f0_Ez^0$`w%^Tx~Pv_;g>Xd)-g>RoR{_{KV-_CUX z4fZU7j=$r3@bXLXwEmNON6o?HPXk__M%Q1rS8I-8{OFuqzEx-Z^Eh*!vlyRo9oTOW zt^W+?>5dp*^ga0BP?~SH<=JtJHyq=<HlBuUG@ay?}Pm$ zPkR2c;moRu7~dJ>%R2nR9aoEEybR?x>F}4|C2qj@)unm)<+HT?&bRG26ytqCzC4_+ zzn+~hUB~zuC&2%7;(vlw8GfW*Ki&uaZyipzzob@w%)|J~tw6qx{>8@(DTeVK;<^8s zhwJoThi2Bp_(-UK=^SnUTJtSv|M3s_pP?t+{;N0Gvk;Tt1j=tR(e?N8`~-CTJQ?Dr zQD^+{V9>VCnEd%mxcvMZ+0g%6boijZ+gLFE-y0BrOmzKS8gvcqKVCh9 z_Opg=|6jM(dxOe<3Gqv({f>x^|BCUsjGULM(DJWd`G}T3&nwQGb@X@bGZ|gK-Dm;% z0rdE3MSpz#(GS)SEz@cLUAFBW+W&aM`iDG%ZvXF2HACmmlVSd8(P@9rZuUXfU&CPj zZY)FlkCZnAUH|e5_Yo*u-WMqCVx{nk3W`fbo=WwV(e**Zz9_NNZS9L7u`VT-}mA9 zkMS!lf63U7zhLrx#QJ4pI)3dQ64?mj8$zwi1({f(mQKVVQb^!a01 zSihD>(|o-jhA>S3L(qP#I{YO+R|kymB;wB~y8aHdX^-|_3G=!C7{=22Z=JloGA7>( z%5NA=%dc~=Ry@Z44C_adAI(RfSQ~-yzT)|Tj{JEUJ|D*T8Nz?Y(DFw-2%CcO`C$Fe zqGLaw9f9chXWLkt^$I|v&ekDU~On$B=;D6(2KC1LvG=8ms`m^fr6+D`v>o;XUzVRB}fApzw6Mg;H?RC{4&JsL7#tY7wvBX&Cl;Y0rlUL z;D08a`s;dNWqVBjOyc=l0&RbXwRx6ce0EUVFoEWO-kAS8#;+FbZz5g(T~Z@7{#OG1 zEjs+;+D$KD^6LX{)zSa;eUGjf|3>tGlW6^G|J8dO#vg?EB~7MzpVr-$WBe`P%{u&* z;4xb;-UZsfc_LkZrH^Ghg7N#I{wzA}KmVrYhcLdq@W0CR_$eT&8ybHdGx7Lk(eeLv z2Oq4*^t!&#!nQ_|8(p( z(%cO7p9`SBX)101$Xlh*{%4UGKOU#YKRNG5qWd4>q5QIr{|zcxcQ01{=c4|n(fVJU zd9)VBUwOs--=rgdUYWe;{CyhuzjT@QpVgN?#bNS4Lj1Dm=-*-ds>c}bD%!t}{`DH% zU5W8^1+Sxj^Y%46VtjpwpQbBx`TupYRKoa#8$5nVP3icPbWkELnB+HO5y3|FzDf?LV^R-)k_wH|!s=-k{|d zaXwib;~OvF_A||*<@XxW8tp&2PlopEL$}}3pI4&#e-Pu(nRNY4f9~#r>F+M~ujt4R zznuxS|1uH3boe#@IHKc+Bd2-!t-*Bv->^?!^!Y)JDxA06r2Vhfv9GzY@>gmKypI1> z-}@L{f4Z;&_}O&*zy5P|MofMH*k77U^UnW_Y=`l&z#Hb!^}qj761snFBJjpLwExT1 zelcM3|AF{x*3mylco}s3-?gBF8o;bO==v}Giz~YSxWz_pf5Um5_}%a7C`|v~g#XW@ z?Y}=)i>(;n5d6npw5W_;`q4@@=~OdCyIMhVccRxc*ih|DEmo??a5ABE~N|R-A;`_G4tbsA&*?Bd*iOucCP#aB`u-=*Gv zvEen?Zyv3Gv93-%F@B6_|5jT63A?+Y&p&0TKZ}n4lzs1rt{+Z?@r$uHUH%?E*K=a} zPY~^IK3)E;Wn$6wqs73>cj@vsi+qBP|2B&Hzen@i^S!B#>HiVx&*VwR|AmEjjKTOo zAMQWq2)g|^Oq_#0|2!z{_m!4^x96dMF!@h`x9F6Ai1l!4{N{ z;=I(H?myi7Ejfkp6X5x^tiykCE1QV%rvsq<>hSR&hN1TV2KF;9q|0CbsfRBn{{hIi z=*X|px6ek59{~O%FQ(;xUvcRY#{blfm*1+xpPsa>ImVY>&EuD82`ztl$Ho%IR|Ees zE~MLk$nkDDF#a6GA4?Fue$^s-)r%N^3wZef-Tt36`-=8I!<%vY85Ys{$F4hpu3yat zUTQ)6f3sn+v6%if!0d)dI)1$I>xa%?dR^!BXIM(t-{oB~$1wS8lQ=Ky=s&>xsyD`O zn#y_eV%mNmPF%}`@oT~VED!1WGY`v#`p+)l%~k05S+Yqf^!fY3sl5IzI`&&q+WG|3 z{}TAW=@G5}hWD=M`ukJSe#~_JwaC_WBqqOKKZt)i^%v;35qAL>t9M$7->?)gcW z`~;A1*5SLI%jb{rnX_{JjZ0|%@qXmJ0OP-d{p8uUa(ckOU0(AYYYBMne6|n`r&>S!$v2XOoEE zFKGK+uUF!4to*aUepVg%gI7Ioi18H{asRchpxbZx^M@8=e4!(pH|x~@c2nF_jL(?J zc|$+C{EhQh3dHzrF#a&Tru&bwZ6D;p_?OWBAg|=Vk-M^yq$FXNQFaJr`-!8es zK1}~LPdRVW@!v~7%vOx|g8H-S$ak%6%!cs`FN6H;wEm$xlhF8?P=fOo9sLh%oo2!0 z?*aLS9kl#};1`)OK2rgBepP{9|5y?JE-%K`$CZj= ze67vkKRWUo)&3ri@!v)N`-=bY@zhL|` zG5`He$G@hvtDxhD?_&J8itc}{KlMkSUu^>aF(lIb*{eg)=ij-r@%l6CjNj@Oso4T6 zf5vH?m*3I#_b%_=D2(p{{kK&|e~=z9^*Gc{4(kI?|a{&=>Dh5F#fO}p!+|Mn+XY+d>`Nqdujd0HOtf= z*yu{$vX+Kl1p7y%^s` z%wKfu7w7JT_TPg*zEwwl4o~w{On$L}-2aV9^!$6%(`wr=-sKJFO*;B-iMaR|#y5iV z^U`}d{%5baF%09si~ctw?fe370y%H_i>|-nC2OM3 zk9ySPyj4g3kG7f7`Tyk6oHu#V{{P_aW_11Y>=MpPAL;rl9T0@hpAz8yE8{`B{KGEZ zMxP(71pTE$H2=$`!f5|fBL~;tyq_+A<3&j`u=-mD_BZRuU)7;k0gSH!^>1EA%l9lA zjQa03@LyTS|M$;bh4w%FZ^HOx6Yaly26%kO^grJM{7;Af9QiR3;{(9{ma%mCcbBTP z9OK8Hhx*%0>)*1$Ml;4g2K_BM{yU;%Y!{4o{>@{gUq9fDjZ&!o7~Le{w)f|O~LqyjUj$7r{!1cUwkdbzXbhF zCu#eA%sCg8UjypTs?&d0DC}DXlV1(mkJOHC{}ZG4ox}J>z{@(ksqC-EG5#9F55pl5cERh| zKl+a=TQPo`h4wFMXlw-zD#jP>ioD_%pQrXL7Azcm~9898s!nZKF8)@Xpq zuRj&!pQY<>QvaI^F@7kFKh4YO_A_`%w-*?np(*rVzteoLfR5<=xqfD@ze&e_*>jdc z*B@%a`A>@uU$^G%9+>_z@RC0re=1yzb;J0kz{@)PkY9q(`18aW%CEzFefxy&pBT29 z^Tu+t{U<+af{tIi3;_9G>G%=(9>2e!_#LSKe`)!1&gRaA+3yuRzmdPu^7{^Nc^~8B zOLF-}9r>GU4la-J8DRa?a-MEK6M{Na#rQn1er?!A$FJ~$Gtv219$5c0{YjU9!@cQD zeCqf+Rjgm?_)piC!vu=so*S~At{ev*Ra4X<1(DK9D zwwsUfRpI=IWfnbt7<;cg`usya$lJd>o96F@I!wUiA2f2_tn>VAcb^I9^ZVJ*e;HzE z`B&#QL*@H|{$?FMe9P_UnEpoK4Y9QR_?zB4buZoi6S9v*pWk=b%-g>~qU-NQ zbis;P`B#hmQ|0OY_iET5-WY$a1eY(}qWR2;(K9jr1E_7%iT~#D7cyYHAJo5jA8o%s z5_2!X_zcsz{pC5d{oYDF(ewJ@dVlJ;vOCfBn;>voi;nzko@0N;^p61E z=uem5tJaNv82{MF6}IZ=U)106CyejD2Kawy`*k082z`FN2F7pJa+t@iw-mj>|#|XIp#Cn_N3q*Nj!sNHv1oj_H>%YCsi#Zs7T*&`U^W6qz9)R%^ zLB8=Y9e?Uyazfkxt(#!K1+@J6qqj}N@E~!~G}5AGG|!i}QED zMi6`Hn0#}6K2{;0#hTrnAqzjtB$VHirwUy!9H zx_`rQEyUlszWfLHulD&v_4!2?Vdbv@>sQv3wErxb-ai84gJAu}q~rhdmkmbyuj8fw=nsi;r+G7lXUxS>RxFx#=kW}{L4v~|Kr`(T`@i$%5OMD%O8@l6}o=r zBi0Xf>{rusl_w@&Isz5mnT~(QcK>n)GDhCMxgVj5ZM1~{hRjx7Qa=;_uo(F@}(|x{JCSaYjW51m1>VC!Kn??Vbmu`Q1x_+*U@k5~f$a!e{UmI5go&U}R z-td~X|Ka-e(C07T#rQ#ocboY6IHvzj=)a5?Y5NyE88ijsbBXt_C(-(sdXRX}^<`ilO~SQCR;qT%yZ=A^(G3SozOF`!`>v`NG!PwK3ib z@y~dL=3Q&w>4fp;g#W&w?Vs4bBO1R;fc>Sebo|cu(Q6$he>L>q#>}+*e}28R0pkw{ z|IbLr-_kR@(ec*@u)pPRy8T{i&@LR4za086vyT0?pIeVUf4vL+ul$xSfBk$ts$%jh zL;Ep2qt{R5gbHUdejN0F#w<85I<=6*rvn+E-!i0w`qg-e2X22+|3A^~&$C-=^!bw& z{LiXW{@wk8wqyD~h4^E7N88Ulq!K#*Z3z8`NymRr?COQCpSi*K(X2E7{*mLuX-xkl zD8KO{?SG#tpZSLI#cM(Q(y@P$#6{@*u|DW;y-LTAuZu6E{f~5%dx%BHe&2R4MV}vL zh5Zjw03AQ}OuA76D}Qc~Z*4-`Pii*-<*S1IOnGVlUEo^tJtjXC{9o45zf7S)H!$8P z{7;9^_|^f9KSP1H=dTO@9Fjzz9+mD#@~hgk7h?a zev9~%Fr$uQzf|$Z0`+fn!sQEo$*pOXFuqtFp2C<3moL`AdhPFlKL0Vp^Dp^l+JDw( zC|nFH{}p)tX84)*-`K@h(fRjAkT2z<<?LyB{8m&Od93{R4|>`5p-g==r&P@!-E-X!*gj|Bk}Sze$Xr$ILE&p=;vgrO@5q}JsY5OlZlV=|$Kie4Y z|7MBqKX0~r_!GuYg88SMf##2NPuz&{{|f&dPuE|)YCi8U{vg!9F)MAqQCHWX=l@m- z{R`0YU0QvK!Q}r1yg7m9`*qHSt{-1N4)G@+9X~fE&P%}LzY+akL0Z0-wWvGF!}#B- zQ-7moeSVAaiO_yb4s`uDjGt2h<9CYje@2?WR>OTV#{ZNP{C61b|68N)q2~uqi1wd} zUcV_Z`^x}Keoc@sb*IN4u4RVy$M_o{-};y?|GxgOyfMC$*ng|z|2bOybp_)`i1Dir z?SG4;Z|MB%WFU{<<|nlNHQeU=V)9=I|0zWKZ>gsPBQXB8GnX&x*#FbxMdLC4OC{+4 zba>0K2~{vYqZ{WfI{ZM-{5}|;19-_u`;XOm8yf$7#rX*x{`8kQQ!)AFVf<*);p=Vg zaT(*?-}CYtpVIa3PK^lkagG>QATqnWib~ zr+$9X3Ep34%|`b>-$Od0`{x7U{b5odUH`crt!<9UKLGEKFbt>T-@?WraTtH2DvzI5 zo%NR!-k&pL{AzLjr3l@AeH&Lt=MT$a|CgMZuK($=nbGIZMlpYRj<5fS@#}*lpI&16 zpL_%LpM|#H+p75cqaRM=ye#Ukx@$;SSZGviXpmb(XiRLwxaj^NU0j2rtg5;85zdPr*i6lTmz#*-5SJ&h6T3` ziHQq~bupAzzG)rd9Rc4|G=xM)M@GB2NY!Jb&yZ;4PyV5?y&D7u^<{qu>Khu-t01oy+dgEsOhtZS8{i7S*V6cFM)k+FlleE+ z3-B$WBhG5 zuD_w4ef!bs-?4Z?Ym6^ZnDeG8O@(RIPc6UmkIYpueii61H>dSaYFP3(#xEJl<;&i* z`~n+4{lNIZ44}Ub-{(=0JQ&}pFXt^f{O%HKV=;c&1kOv1Y5g646xxLGo8|%UL-U!d zo!N=;CmV8J_N9664W4NE7eo6oRkM$u+WP;te`6RX|E`eViI%_lYtHK!U!oJ&-=xD= z>V07f#>@M;+nPGl@;?py5{&Ui;HB;~|Lnu_P8h%NImDkZy8Q+8SnrJSUmipKMbh$J zn+=J_cxPyTmS~zU*X{HnjNkn`_}@^PFZ5%Z2gVNu`O+|&-_)ec7mObO_Or~O`4fkn z0x>=TcvCcO|KnF0x?y}x@IT9JT7JntV{&4ADPjNlG#}7xT0xAj3-?bL=h)9*we4?n zL~IX?zXb8e7)zJ`%Zw(KF#h=p?!U&}bo+njk@+IV{{i-w7SrY5JNt|;#@___a!b1Z z{?Tv2J&a!p{%hP%>%V@O_s%U^nKa~r_QjOno zIPmym4WsQ>YVfD=81D?@7ik?WKg;z$f-wFM&|h9_fBsQhf2Vh4O2GL2%>U(54wCf< z?SJFy`-fxvd1ybzNp$;t@z;|E7@q*+7n3h7zwP4PsC)~Q-@KFdpOs$+q4DDa@Y0{O z{XY%daT3%2k+A=Enm@5Jb485rC(6Hz=J#ZNZov2p-Ff_zchmejL*`)^KON$~aVlMZ zza8FL8snp2{9$&Z<6o4|5;T5(7WUgq>;K?j;YpbMWx{@kXnt|AJ5d<#E5=VpXnxnr z05tyY1o`p_nxAlBSz%0mHE93xX`0_$?%HRJzXJV-N0X)X_gM{m+B_rROxiGGNgIjDHRNr>w&}v~Q30 zAFajsONVb6-)BB1zbE5OEdH84(E2yH{|p_!+=uupf1&v~i{rCk@;?avE6v~g_{jQ0`iCqL1Aqmpju z_}w4IZ{l63t&d z?~krOW;+DD2hGns>$(+_Z-M?-?rZ=2Lfd|i&+dY*pH}eZ@~t|2x0*%K`PXakKT{Yj z|DTr`&6xh@g#Huh@oTL~QJFD*A;`Dr@Ld-sUcz`Y$hU;k`WJI-z7gXc=5zZ=ku-nz z+Y$-m^MU_c=F$G2c}Ty#81D+aX+F*Waq!|CjIRg0RfivcXz~J#zYg{{UZCqQu5@;^ z|Go#~7voTR{htmAU9D~|o@@u_>@#kqe{#J{t zbO+-T!T%&rI{ryl9zDnS<{)1lPV4`&n2^;hKm z!af+^OT_;XwEhL_x(vnm6R>__G|~DWo)U=8f3i;GY!eWvw~T(igrzF#odX@O933g<^a^u%B@fE&sURrZpH}0ospwGR;5e zx3f0J*A?T3iM0KK9==7_e|*4xmJ4+J=->ANI(}>o^>0x+@)ZBH^WQ$7D&5EQ4+P$H zk(MtHy7w64$AbOkOEkZ?`p$P4-&Z{UnnK&Z?8z3dF+NcE-!z)DlD z;QyvAwEh<-otwq9C3;W3 zj`2P)|1nRY`DFo3HekFzw14RuZNDPT0?_>rL&W@bCSCvg-Cv;bD;Uaennm-?XT`3? z^dH0g*Tno+eoEJ0!SY4-VSGO*zsZNLzd4>h=<}O9*SY^#gX!_lviCz#`>%!Zqva-T zf2THg(D<8o7x?dN+J26wccA+hp2GM=noIL17p_Ow-yGomJ4V}!ym))i#_vPVM=ikY zUl@3K9xXp<`bqTp*9g&mbodtKJ-spcbD94r|12SN{h8l%ME9>v2LG3v(f)I;c&(k7 z{4o%}jq~XC>+W7wip-X#IDb^b5h{ z9~SmA)Ajdn_91UEUb3j+OOlq+{5wmzfb7;8TK~MYXB@@& zYoh;OP4l0hG--wLNx&N%==eAL#u0S>X#o8VW}3e`GwCBH{{X~ab0Ez-_1-@g<7>kF z!CH;x%Z$5t5aXRX^ZrZPNZT({=Dt%g-UG^S*5RLAI*X29T8i<@CR%>4e{!Mmd!1-M zFKGW=)Nk5KO#fm~eyfiB7rAGb#P}s*{Ir5@za3_kDTncW#QYDDC+3w;IRM_2}TgC%(;x+CRe$Za?`?TK}MsndtnZ zGR$ABI{fIF-7aJHYj~H-H|(J0k2F1LjqyF9{aSQ*d0{+Sf5o0~`No~J{EfN7&tUT3 zK>ugnMe}VsMfS${o=|?NH9i0E`?!7)#LypcUYM@96k(?dvS``Hk~SsK3{A{K`7F13G@a2JP2+fNnqEyj%k@ z`wa*GGp?b_fBJ6W&KTbs+K*)~U4IW=Pg{ubK~VqJwY2=O(QPYX{Bx*3^E#TJx3(j? ze(_Gkzx}lSo-1aa#pExA_-{<2>#u$BY_Bl>l9)gG((UJVqjmW)e!U{U3_CxNNY{V$ zsa30D{O_=SEWM}wcS2Isb&QwA_;WQa|MayQ==gC1tX~*9(Dm2j?QwMc+8Fu|i;n(9 z6W1=o^iLH2x1N@N*l8Bp{{3M5X!4@tPsOu;J7DtbPlEP;koLbB9m>DN`2C>2`4G)J zCB7bl@$F#$j9iS?|8t2M==w*kaIU{~6Ky}gF`hM4nEnO9euh)D{NLhEqy1+&;I;2h*S4PyXU8|j z6!!MJBspa-XE^zGk5Vp$G>~w`M>u4;aYy~=X|v=`4<>3v;JE; zL))*tTqO+Sr-}7L&HJad@<+uCK=;oY;Qk=(`=hmd$t;bAVe)5)^Ano)M{D`jmOC{u zei7qMO8GVK-_`Q|S#pJA{7R6oeSfr;_saPQ9Y5}_#Qn#lBftOc`OcX9CD8u0?~m5X zZ+m+SI{#}2{%_K}KU&M58tH+ypJ>s3w$c4x-yDO_VftIaf3)u()yn^;P+fHX?F{1= z?fXBq{KoIM%V6@$0dLT}e^bj>h$$U|@tLzQ-%d zbpP{H7{ALWXx?FU-RhY9o-lqjo~QYFw=L-N-%>Dsvgq(qp*%-0`3W$8moL-uEd^ZB z{d?O*|9y?-s|{=N5|i%);~(w&Q?>QKBA*3q|HGjF)4o4d%g;K!>^mlZ9`M@tk81hD zbKj%>C$2p;4x-1;#$_>AF!_6-{mR$q_}^#DmQxsi3V7}NKehV5TwZ7j#+MM|cb)dP z&ua?0f9eLvH)`G=s+GStew)Ln_&DO5I-bWTK-DUaS<4Q0G>Y@b@-~MZzf^_LH{Cr@4lji+jT0ZRK+x8g0TRgur(fY?^k4NKIQRx4*@9)yekDR_{ zGbVo?Tfep_>z|tUcWL>08JDlZ_%h(XvgZ9yTE6(MuITt7RM_8xj^EqHUO?AhH^KV5 z_Weg%`OU9}qVum>pua`){v$2_WN1Tl{B;@pSNr}QEpOZ{Z@}zV1?o@x{ueDD6Y*^; z#&?17zxMqnTE6-=6Wad_1N&>=|Domcy_?VnliyO*zvlfDTE6`+EjD5N9f+UW_a|ui zw@y9L=T{bpU)uL4X!##s%;@^%AgDj>`wz7IwwynnVEQLQx2b*qfR=Aqq#@e=FHPq0 z%j`+}f1OXUc`^C7p#L=7rN<9hhZO&c@mW@J`9{tA1GM@VUi<{zKT=MKe`S?9BrSjL zD{L$W@t>tGoD2k4M76Y%n zKU>THxO25HX21O4KNg+xm+WEegz+2Q;rWS^s0eNkt^D=g&CveiFz{v_{wIT9X-s}U zF@MtB->j9N_``7;#{UKT*R=OtXr_!T8mrxqn+Lf85OjX#8Id^DpiF+gd)`o1ddG`QO3*hP?Lkhb-I;Z1*q!__EW) z_$u(V?f&J<5P!t?QVo7jv}=#hUT!`SvFv(j+fQ8r;@G9nHQ8;^$=`{eTm&dCqxSPl z@6FUTT*CvS+Mgs6XID)S4t8A<9|y?SclN|9BW z7#S8BWC)Aw)r;Ad8PdxTVsP!luM+oe5Za6B{a?sdap65eqW=r&r`C76$-c?j{+}{a zkT#jMz}G{9f_uC9Mu+ximDM~Xo_P-cCay-!sW|z#-MZ#l8>i8Onkl%f4S+NK7od zY(G*7zM8+OFt#^DDKA5CU~HhFXN+4EZz}$Q zu|d5XDc>>8Q@tiYsa@YdrJh+RjA_?9B%*axNCf*PBtrYL0I4o7w~pp4Ovc9q1%`#W zwGAAg1UVP3yTC&u-P*FIpwy4eMfr;#-26g&MTA7Rj*5*ze6+6Gj|8!*42*Sa=GQnR zFg7lldnSD89nmW^A|!x098bi$ml)OqwGE8u6~d%rHE!!os(A7i$=t~$MJH3G3bZa9 zXQhlB&?YW~y?h}gJTxdWjJ>G1s$dKWf=KZ;Mo!R`U96W<%iE{&>FYYaN_e$sPk%!FKh$=>Mt$6(debmF#eYT zoEP^8rNu{2A9)Pp_rv}{aeql#e5G+?C5*ogytw}$Exz7_(fKj{cOf74pQOcqemCPK z#!Im5E%uM3#TRdTt|G>7E6P1Z?4L-BZ=H3q?Ao(}c^HC-LXE zY4ME@Fa=abi-ziI$+)W2}P`?uI4{xQk|MG%Lj(;NV2>!SG zuMapmI_C1#@a2qb{VN@Omb`z?%#|gJgRTFO0@bYhXJY%uvN}l}D{)CeZ>{{UW#vs6 ze~Z1pQm*14-3Xw0m)}pxcd#b{@G#_ldOE-|UU^UGg^X zjqxQk{$px^>wm|qX-PxK-B;KhVy&2_V*a)FYanv43odGsYd^dc=>buYYxKrYFho_9&TYb z@hN|uR;T$ zEI9EQv2b+plbfImaU-tDU_Q8mH6Q5Tm<;jZiZ8Ys)%tHkyKARS<+zR838u?-$ zgy6*Ibl?5~7$2qKC3uc6IPv+d@WWde-&oWCi+v1&6Q3KWKbeH_KG6O|D>g>r_V0f$ z!iez=Vf-t2>t#It&Z?gjkMV&p{uI1;53SH!drL z*~c>&pSOfPZ#;tQKictPM~wFx!8I59i+j|BT=7|`L5qGEKLFal;Kez7!HLhmeF~Sw z_-h*fwPwNFPxah?-^KXu5dVdIQykuY-gXUWit&Su_Vt(M_~ZDGkr-cKsy(09_(8s# z&<^8|oUymRbRF+M>U#!f#`s^K+Vf%^RoGp8PHMAG+5eZy|34<$>z`Kq?=<(*8jR1p z+MZ7DecYpR0-AVjq(5Ctf;9 z>U`rwUAF#}Mf?25rwdCdJ4n|*a3VJVTHZaN^nQ%b6Twn?J4l(}9DZ7S?|V&A{-h&Y ze{Ad^)ylx*Kw5ljht9Py`HqG0tr)~&(#$SJJA&Gh-RORr_X`1s-M{c|n! z`HP+AY{mF1%JYYo`uy02#_1UEs+2z+eB0s==U{vS8$X&_>C4|R?T;ZCpP#iqOFH;^ z89w}j@n2c_<<_a?b8isdD@j?4_H2^N!6EBL&GXADMz;Ry>mUuwMEg&MTZ7#(`Q6$2 zf!tP~U+H?{J;u9tW%g%$*&MX|*o&VEVf-?s{rEXZLvzu5)!*)x!T6_)mpkb5^Pb$A zg7FjC_{EeC{z-1rzZgG-)xXK#L3*D=$B+A?u5ZEkuS)ytsLu}`{;3AW%YQNd>8#H` zIA*Dj@g<^I{dIMa+;rmC1?yTX#!pbj-vRpky4KR#S@8si@@-op6R zI{ts+Pz}_7W;bJecL!;*PW*gSYU~0`{@Nr~|3-bj+?bgT7~iiSD}N7t-g)tSG=8>Z z(_J}4pTBwakGYuqvfY{g_tfXJPaKBEkEe?Mz4iGP^-mAN z{cky5V|=RpLoRPv{D{}*U4O`pF!?^&nEr$G`LV&y7ct(8$+ryF=L6q3b;0;;Zy7(# zL0YfVey^+@>W%TwmN5NI`uyK}Gos@UXV!n3Mmb3F*XjN@Ec@{jnEZ=uxt`t3tjlM8 z8km6bj#pUx9j(t#de<;J#_#XXZ&JAWf1yte&M z&6xKV*8Wd1{Y?nZYa=;+RDEEMSrR5*{xpUL)b$P@JC?;cul9L8^Fyk(+3Z@4`VoqtZVF#Au^ z=O2Ie{27z~n4Mph)4^w5EurJD<4k{3I{0sm#$3SUKVtqTP1e`{+;qoT7=J^NpAP=O ziC0b-e^{BnO>>YIYT}Prw_w_-|7Q5doW%C;)X&W1Pfu=bV*a1}4d*X9mHL&nKS%BS zuVzVB{|K+$zw@Qe%f7iB9W(9F%pYaOOEZ$C3He(68{WD+pXr}jyML=G<7I?T)&8Gd zZ^-PIs{ec9%*v1OTK$jguGt&Ye`*WX|ITud&ex~o|8l=O!?F5%Q<8DBQ}bH+*;c*m zhRI*SMD0=pc1a;yC*!?60-oys=M;Vfq&cWc(5bsX0`k z;I;Bs7P>59{&#;5>wlL!NJfo(Eg$pT(F@~SPGy?@uFv1@6%~T8(rRmWC#?T{xR#Y4;kEL;yo&#d$xoQhQvTr}#c1rW&lVHzq&3w*6+Sl|eEd&y>o3q8>#)zxD_^$o4-LJT|n0TA}0N{6)j9O#f}E z1$?N?j>J5CRD!s`DGYj^VQWNT?Tq5qtYk2W*?b7=i~SMC`3KpnC8Jo z87)H$J9wIW;+CIRS58y1v*6LuLHu-}I5k`!%|SVX*@KPL;A^G=MX$wrd2$l>sTQ77*Vl$6He+bYXd5M=T?wV%Z@~b~>7!8|}%iD`3Yv zmEXM#%7N)P^{l@eJ1-i+PJXI-V0py!j*JTn_KS^-GPtr6npHg63CUP?4qGV^`&~W6 z&y1s-)@OM%MD?&8_4KTfeAJU4O-*s&)3YWV_|(ayYGs~@axXy@&y+_-t9q)J6|e)P zx|*;X4AfJc{6uHUOsadpao#jDAr7&_8F`=JkO<{$vT9enILLAK@EF!|T*c9Ac9vQ> zbKO$;a;VfO6%ohK2>(zGhw<#16A7e%lz;Cbf%u8Q7H-abYaJ2;XO-V&G^x%ZL8gb5F*v z?0i-pvu1uB1LspMGn%Ryn9lG|I=9q+{b`)jQY`!DCaZs2+N7{ZSUY*nAq1PJxr(m zngPi63$@r%dxkt7yBez^ME)NpafveQTNL}(Bn>b05}#q>2l(undEam)f1@V8JM5zpLpA-A|EbtQrzDyJM;XrX*1OPZr1#M z@sfvfJ~xl=ZhQNL&*ch;`vK)b>C0a$|Bh+W9mPHdjeW9rlYfCU^4Id3>?CddFWnF|QL&HKf4;-Im3b#`ztTnSpQcn9YQ7Nu1)p2H7gf#| z+wwO)HmX402H*gH@_glV=5Nx7>-yraE{c85Y3$=C;)BNjwY(-fDTn5Zd;R7uQu5!Z z$-h(@_Sf>7?AWha?7qtOF4LQAj*fW@d+q%*^Cg~4?0b{p{E#Fi&nfIOf?uq4`48gr z@ZCa975mHJ|K{gLHNl%uZhz~1zAsR+@_HBz`K0wRM)QZ4rAALt>?3K~moW|dYk5s} zk}UiO{xD|X-hqn#Q5yTZfd6RybG$Y~&F^elX!mdM$KZyF{#H%??rGGombc4{{gPAj z#jv7}uPXWH*4W1@jr_H|COavY=8O1aQ&%ea8#MVhNh5zPugQ-6YVThoDwUb5_-B&F zKA9$P|1pKNP_vM4bN`X#)H&LH1I=E1H)`#2)jy>@_WoaHJtT~T{O|Dm#XL~(+D}>Y zMW@=kn<@H7Y1&sf_@}mg>E&VjwfJGXyc4X^!`x0d8@{i1uHQS5V0 zW1j(O*hepa?cZO0`fO6{6Q$9AR2uft^2wU=pR&Lg;&a^7I~|yPDr?u5PIln_BRBU| z3Hbz%51R0z&ED4giu_$WIPb>t9}Dv%YZ&hz< zmj5_0et>o>-S}_$XE~d@GnW4>5&t1B%Qw@Pe-@4XkB|EG7FNHFPjUNLJb1e`-AZ5n z_Pwtp{p>!dLpBG8Jlf~$H=%xwxxhc~rZ0a3=r7{u#oIp31Xe?CI|Hx7k}buWGT^Hh=~J{uf&Y|iYT#{%(92L1Po^^Mc5)Pl(A z%wOmYW|Hb03K*&8ujzmLiusEt)NeZTFAo`u&$>%Gu1;y6V{rdWPvJi!xP46bd5O~- z--P~=ecRqt;=e6^LjKFZ|E;4T|408V|HredWN={qX@dE?Sbw+&@!6Qb2>x%F$n}@gnZGuEPOR?hlhXboel~#dr)dlKAL(`a^!EV6i}qDIVe8S9 z`6q&Z*53*7p#t<@>C9i~FY<4;)NfMy^w;K}P%P_fCI4xf z{JVqxrdd3HOFHu}udz?-%T)|Y{`18857=iuv|srtw~zGZ|Iwm%j{pmxs?xBNLSK)wcNg1ln(V z$X}eR6#cMXd;n`oH6j0BI+sjHng6F-M)fb#_VEPr1MdHpf6}MF2jnaKsQn7I3xnyu z5$v-A?4R48YifGL^EZ9`|MD01S(yJ^oRa?z$Uo{j*T4KFP-Gd@@2B+Tp93)Q;dt=+ z1_vd6iuwinkB9X`GvqI)Gk;+h(SF|~J)NTHe+=>$?Y9=_FYetieNLbL^FVPEd>Zd= zDxb1`$3y)#gZvFR;|b|85TC`J2+2e?iDs z*r!YOZp!`odCqC<(*^W5Z{+nWe@&nMBL6HP=S+9Aa{qsxtD=6vKTE*)*1Qe;=STYT z_kes2@YyNTj$BIqR>)rl|NH>sfAM~B3*0ZH*M1Fdtm4rLeyR*3X;&4(&_4 zKRXj2r|9MndW(a$U;e^xZ2DS*|Hs;yz(-Mg4?Kky%3Thz z+(Wq$YN4D~VYv$ml=~8x(k@UbZRsH(po@Sa2o`?It*!?mpjbc=6?7F)5YPe&A_$Ah zA*d9QTlAl7-rFPlrnB4r^Z86)_n7azeR+AwB$?z{s(om0DZioKznj?~{T^kS_Lx{- ztg;64voJpFg8CiTg<&v0V#ZhXzkBZbDoX##i$MS3(k`}$!0dy1qfEH};qpTNY0!Q~ z{p$fA*L86O$ZraU*Fb(Xa)($y&mDgXp#0jg{(}7iYa=KWdYVZpxu<@aqU zzwbc%1o!uH+#47l?SlDGZ&K1B!B^+sy)Z^9g3rx6Y6ZqeyC8pM$A`BGet{C-c)jdO zcGw@sQYSDz>Mze`EVpxS@%(?~o5+Xyu}n>fKd^s}EkM3{|NH1Sb#GGlzpK$cxIYfu z$D8@TGQ7a1B`p70+#jj)57z--?H@MdtDhGPn)jdRA5)+2FUjXui=>VZs^`mZdH!O) z;ye1{8gr@gyD3M0L+!r}l#kcxdwO6s&iCtos{{F~_TQTE(SK0BGViolKgusY+=BZ@ z_x>;S1M|-T1R^)H4!cT_stLE=r-_!kGLD+J?|MQ3iBZYkm6#iZV`>5x;LHG|k4#*K( zuT&BG+kww6=&o-b<{$^}-)3LNyIxzMf0CIw5E!uFUU|XM3$w)fS?>6+{U-TYU>}_K zfc<->eAHj!+2Klm{o}1a_HR^#@~hVG!SY}J_C2xwz1u#>?+EQr2kw6e^Ak+@N`SMi z*ku**Ek+r?Yl-zQ#83D5vYGuA`@H;hjV_e_almKF_?M~v%Jmz}xYSAbr#e3Py@7w4 z@*(itgn`f%oi}~r?LRBPKhHz^3ip4qLHse}hbs1;QoGY6VSkHa|K0}n4^e(UxS?Cr zcK;{;sbT9;Lf9ulX`g>)5P#J36&$Ohyz$9`E-8W^qwx0|@YVAb9Mj+plm*t?yN&WH|7#d^Lgo2ep4PSbm+IU%C1x z)$!SD2K|#}{20YP5e=(c750e${jq&pai(+>Emz*3I{uJx)Qq11{0<-w?s@7F!H)#K z1KMwAA<(P+Z)SW|{~hf&O%;4i(f=cZ{x>te4tfsY?+SiX;153|zmfVqd_n2| zG2^5DP2u!{HDyi;ehl!je`yx*)&7}a`7zRtM_+ieAFA;c|(^S5$i)%9u9o$e>ev5Q@y`4 z|^bveriT}SC#DDdC1;?CaeBYT_ z>B;M&{oqvEpZ5#>8~D$Ec+jMNROc^!b^Y8^?YACe}($P2PImx zZ{n>#){n!WeWKo91j~=E(qXc=e@FWue>vF4y}xCYyuUN!mjb;}l<7CHjNt3a{1yw; zkLvh1?qh=Is}jpCzF#tT%rBz-phNjZ{W}@7AA;rA{QRdguJKL9|C?a_u8eP*@uz{} zI>;|tU#%?S&qUBa=Cu5z95{knznk$J0vAQuBO#;3_(+CgpEnG~N6h%LwD5irxWMyG zZ~Po#*YCmwoiV&(Q3TVe?IUpK>O_u#0Ry0G2^SBhfW%LLd2g0CH_BP zP`{|>gSu`J?fy^x^K{zII)b0C@Jo-CpR4tkdcJ~VXdirkPUe_hg6~xLRSo#+`N%=3 z!#@ci-#+zf18@K7@RR&TJ(wTs2$gZo@}u-@<@OLL9ue;O*Y)3&K?%RP;)62(WQ0L{ zGvjLt{}snO{Y8AsRm$%WgZO5~*MUDAbT2YLSe zn03N`@_-)$@n-<`|D1&J_W=10u*-Ikx91=JUhuaAKLg@Vp27W*nf^L(F@G=Jf2oz= zJJ3GB|J)!xoAE8cNAZ&0>|4=3QRi=e3iXTaDvbZul;zBfAAw+yu@k=ABHD-Q{d+x# z4{H0+jIVxP&Dv;yh(GH1LJx!Zsh+Q>t3E!$ei+rXvCtp;SFwF!HRxYbruX~d-4ANR zClzP!+am0rr^L^v4f>zW`0bP{e)!$L1BHEJl=jo#J5%k@zaby4Y(N~U%WDMtKk0td>!J$ zVT1T!##in0``WwDiT0;cvCk^7kG-I;)TEk>4`%#opf`%yPcHjYlrNjoKJR7_AI$jb z=dQ2ZysAU>$)qn;>L`@D9!@dGaZSIY0tIr0qk{?3elQ+dE)>ylaB1;0Sy zUj{y|TW^DT+V1q%>UkAFZj6%e}VyDJzv4G?#dglCoLN+_<0IH%Yd(*ui*UJ&&Qt0*eBx81*Lp# zHi$p!{kh85;SFp*R6X+SY7rj_Fh0QirKdoD_5Q_-AER7w&-AVz3I9~v|Nj{HzZt)x z!aws@^i|P5k5J-6ra}8$8QxWBj737b5W+9(`(3na{>e?SPdvou?gsJMjBin{xNyyn zc9FjiLSgjJ1S!Kpv%RB%f_9~ zsLt2dipB5Y^966V=K0&)QyHrJ4CD7z83}KopY=Q+^%Cd9YzW4X|K~-%{?-E}m;;_4 z83yC2>iv%yzwz`}I#T?~fAZ%O`To4vKcnvRt8($Rs(*UpDPa`E`CGh&i&;AQ8$nu5b1^65x?h}dnsuH;pEE#uNeg+O=jAd!|DxZZY`${xMT%bo_J6|ii|v$P^`A3-PAqYbb_Mr>w}9A?=RRSo-gq8pUWqF?StzxI9mi)zu#K>n&=<%<4Sv#lpV0biNx|_iHBKe>&#mX)ztq?M!Is}o-uP(`rGL_5T7TTpO-MW0QwEe$so`Q`sf2Oztk^2)K}tzvtrTO&)xr=wV2{}20q#!`N6giYwhWD zg5r->^mi1<_Cv7z(F5)$+lMPp`o4YGb&k@MAf ziXWwvFFiu$FU~g&w0zyuIpQ?MAE4A#B`3OJzZ!RNeQeb?xd@cRQQWN5+!39unlsUEI$or#GZGHJp;M;@bS9rY3i<*VZ}{2&$Yq)zZ2Wv{KHmYA;16Ey z>;I^~?H5_j46@hHe+FM%vY+Co8}Oa)fS(#%0R0B#&%?IXr}#aU@{9Thd;j=KWhdFb zoecG(n!lFi!Ns=?Kddf6>AzK}zufvq2UosMm3%3g;*SUWVEIM9HdppD8JOQMe=~-E zFV^4i^UoPd`wjWHUQeL>sZH`0Q2dn!e8=73?EmxDXWpRr6QTU7_QBr~sQ#6fjvGSp z57qOnzmOYj{hqSnFS7sYEb!4kah?duK=n_awC@W_{~=2I7W@BE2FhRmP?aAj{)bBb zBG(4v&4Kd2X&L({#s41oXdl})h-*Q%pAUTh+BX#cyXw+&(0{PrwR|01`Q3l$)EtWc zJ+z;ZkK+rLX2J14ZTj2_ia+xY-}vvmF8h7l_hAMZfN>e+^uGCXDSq=(zV^}YNWSGB z=w}U(AHR6`1&TjR)xS#7?oa=GHbKk}@r!Spp??GY#~t^B^dHN!d&&I0rIcTHTnLii zr`;p>QTks}>z6U|{>c6l+~);o|0~yWyHNaxmHs`{AEg1_uYUP^{w1B_kG`YCPtc#m z#v7qs@1tL$eDuWp?G*o^gU(8u4IR80#QR__UzfHOS#eT71 z`}b-^bra8r`q}^f9lrj9d=}*R*Q)*xlJTc8*a!0$`MAz;p!r*AQf0DzvMt;IKhptxw!dih z`J-3W$0+{s<+A*;o|0=RB7b|gwW9ylPyY$9z8~ui_Aes;#VZ}ZrTBYcey=4#@*PFw z|6P4dG{s-CRyvxkEyRNZMYDgCzn>H1zkc>PjrxxO`xlYFxWuMo6h8%?&$0pERz!Z= z{8(}S>!<%O@O*@AB-p=*{K3n5iSb`Q{@=i7Va{*4621(ZK(8TV8CUB65J zx1>wHt%&?x>pM@U_!VIOsv{HZQ$+s$!&gNAzn^_(Zi4bV3+w~?qXlc9rAwa^{WE_2 zIMAOxDfyNn^24URF8U|^_`_gcjx7`7e-ZhOS3bFq;?KtC6JG-Rd@E(J_8ET8@)yN# zi21t`>{CR3-7e>R*1yI2@iDLudl~roMbqEDs-tWD94s%$cfk4*mcFvT&{jnL#+#d~ zQ1%%M{;7W^kyxvDY8G$Qbhj6 z8~t7D+o<-R4DAQ^yeL?IBUt^zG7|B0I?pQHF?9+x?y?#~!3|Jje?Z&UoRqmplrhVljb zGX~4=`tb|@Qv980pWV_v4Av(!<2%3+^FW@O5ba}s9o7e^9}V>*)LV`s@++^|;#xlw zF2|6+65@jc;wC#Le@C$T*Zyd^nBV30Pvq~y^=-f}Ek)!fWv;70@$Jw)#C02OMdT-> zc6yWIABFtIeJL31UlXi-dPP+7sejQvl~zFhUXpgV6p>$kOc&DrE3y6szO9J->jht| zr0g>b>PK7`o*gfm|9mrcUPFqXi+otO-BLvU?I-4ZN%2d6C++Wmb=z%4;9rMm+bt;Uer~GrszHxeg&=lzk3j{q+~vANJ2u&-Z95|8pvDTw1v29*W-q z^w(EQz6JJ&GUHpI!#4)xaJPdzP%3}DxBkO_k@{cSCBI-hB=3(b z7Xs7Y=KA%XKjm6h%=PAD{vLt)SAPcd50I~U(60ZM{Zs92Dt|9S`%^zI-!#bIK?|gPoX<)Bv<1kIQ1l-*ecWfR^#S00w9i23pRwGO<;xKuUo9VH z_dUCXif@;}e{4Nvd|(#?vyaMedaTMr6n`JYH#_KW36O75?DNgmNT2wI_6dXfi`|0w z6DS}29?RDYe=Uji_D|;t-KD`v)PE58XMlVg=syi)hnKSc@#fEm^*3ygzYbV`(gyb# zs(k_D7V75*_wLsy`(FnA9ZR8p|GjAW`%%>vBBEQ;>QFkbQ7RI-qCEpPs-{$!# zuK#9?*ed29y6unga}&fL-7f1d2kZ}MW*_9EoOJN}2fX=sfAPX1sfayY`aioB?|Q?G zuglZifA4&D`wUgTpTYi_^`L)%eDu#BAb(FTJKxJ&e+TSubqn}fi3F+3?V{=b=GU>_&w&;AL_{tn=72e~@x^;f<5xIX7G+#g}Bj6aqD z`8MF9{Iu3{^}PA$|2uz_`D@RB_#Yr&&Hvu9v0qa0IpQ-=q={_*u)BfT#{#FJcyB^V zcPf8%s2>^Z&*%t{uOk>_%;q2eruaWPrF|^hz(1iMQT_c2j@jT1Y+nuOcs||R{@A`+ zd|vXk?UK)+AJL4j`sb@5+EPjC)odUq<8G+KK6(E z$0pFfm~UGZ79UI0QnB!qW_c}_QGdA`a}Oi z7l_aH-QfSwk8Y|zRC_TXtv`<}vQKD%0JiR`1L^W z&+x$P69M^);>hmU3)KBrKJ>p?21%|XK)$N~w)K4%Q2O5w{%Hd~gZ*dK^HEQf>gP|q z-uoKGcY^+oAz&Zae^xyoxhNg*5BmR<^6%aB&R>k5Z$L$%9|Zp|B0rpc-iPAv#Q6_b zWqfl4$hY7R0r_J5vERJ;*#2MNQhouSJHl})Gy7-?KVeZn*ZRQtHuA?qSjOkYE#(9A zPYZ%Tp3dHNmePL;@bP&jT>sWge;aU7UihR+v?Y#&-G24{cd&t+A8;v4dR zEDs%|TcQ80i2Q@8hig#!KXX7DQ2$Kw9Yy57^yu#wDgOIVzq_Bus#G-lG%l4v}59 z$37T8Q=xt0g!1bsBENI9w^RB1|G9p< zkNsJqON0N<_1h`?7j^x1i(;Qc2Nsg!7cnq@!~NV~y}PIaw{Z)R*?B8N3elOtLfo~}yzx4Fc6)3)r^=~-T zF9Gt^^5LAdvJ2%u`(XTqB}%(E0_0=8aufWhY1_qpz4O-&u4X8~DA9VLO*m&!0ZKfj@uxzGwaREV$oR^UsW*v+}_k6#sFl#Gei%t1LR+1A023~Ch{r&*_E^i9ml=5Jb)GOgL#sL|q_4%#dh-+X*dT2j-* zjFjm9X^*5QCilusb`YD(H9 zYi6_*-O|&tt<$pOw5f?H*}XE;b27B%S<};!qKCO(&oV%zX9*p+?);~xq)mv^QnH36 zW+zS5#-*pHidTcInU7ohXL{b`zpoFeRdixbc6#>YjIpupwdNDEvooTT($mu7G|&4T zH2#jzG#WHEWMyj2Gp%Wfllf2Vmos^sHFKbRRrpV&^?E!pHOHzwmNk}VR&~DfnA&qtoR*Q8JyAo; zB`0PlYW%~D%#_Cyv#ls{6-4at% z$0a6B;#!UxE!@xNU7nr%hw>lEKS)T;nUIpkX?;mrQuZ|YJ?_!g%(TQ*w~J+3ldNgk zU2{@WljS#D|4P5*I3i)W#E;roo_m&;&r^~6MW?2WgkuI)Qan0 zLe;-n$q?r37|Q-Pn%2MIlS(XNStZ1{rOKamrq>pV->Xyzvp*2ZUNzuHym>FnSmoZ< z!;rsOdp@1w|4@$a|IsOw?K0pyPDe8PNvtj0c=!4y_|CO=n!QNzU+&1`d*@JgLg9C4 zEb})auQp2{68ZE_Qz`^OyM`TMRpf6qtu4V>>+e$!TR{dR*EAu1I=%f=lA_9QZq2Z+iVfy-~Ja?i@|=uQic+hrkW7t*UItYOtP1p!%;# z*(&CT`RSjgN&C3@)r!XN*ze!xD83_-<~uT^odVUr-N=zWDgI)GZ;Dg7%q4<9(^}AM1avcYPtKXmQeyAeFA3R%@FSHMqTbvK#eywBx)>|kyu^nwF z{&@HL>C#V;XMYmfSt)_l?=urti}7zi|DOTvLyQl|cYZGO*^w2mXf9u(-Y6@6_rV&9 z-xk)#ME^%V%0T@y>iOQ06#p5eeS&sJ>7F;K{0h_?<=?X|lI{O7@BjwpuRT-RJJ|Yn zOTn&iO8-pv{tz;Mk&p9z0*%jED~`lc{QtSv&y{|Pe5_{z<*)eafio2UeMNsQN7^S? z{hK^kQ_K(Z^UuhtzVY8(AI8SZ91So&{}*;#%#ZiuPlfs&^B4KfkEQ(4^@h4ov}{{!W-W-Cuo{2$c#0DSlQ@&VfC*Wq7@`QLu}4}tZI{p^GLlLg5C zJ9gJhihuPJC4QoPKn5BgqJOZ6^(FoEf4;7?yF30Mx2&uO><>z*ga^O&Tdk9SlKYEP z-r?K6LjOS-X#Or=cV4U?&Wc&GN&>!uO_jM?Z@>g2bbJf8^*Zx^4BqV(AOz6Lb{^6YGdH-k6Q1;_B(L3hp zAIAQxf;$yi#ueUKtR(3bo;PQ`a!)O)e{bJpu1PO{{z(q_&ntOI@;{Z|zIAdhia+8{ z-p^SCzG|P2nZ3WJ?DGWQA6oAd%927v4tVTiroYPXKeJ~UiobSL2-6<+=SMra9XgbB z+eo#K%Kz)a$;K3a!qdEevVSP!yLS{z|4SK9jHUR$x8<6Q_2*X*;Xerd*S)&ECB+|D zhTEUuH;oC7-($>wizxm>V|o8P!4Ecne;eL6lj0xi!}C}7w@*%EZnq%p^K$eb8!7%P z+&-4c{`_b1g0m0HoADUM51q!CmLAHUF74|-4|FP=AHhEs31!D8%2eXJ7!_vQWPrPcAHfBE=}B`cI2>O#ji{k2j|Uk-!T z2;&m@DA|s1a{u`CncRO?VRUA!8KAJo-#stfi!J_jbK!mMf3afx!cYIJI=6pLD0`Tj z$UFXEe8vz87`IUQ9TvSloEpEV{|Fyn_aS7j`1sche?E?HYW1R6e#?3u5d5dc&v!mLGMDoI z&IOD)34XBgVauryJHc20d#(yvI@fYn$e?HpZ)*y;GV$At#y0+>=@$Ws#?eml|Kc*qK zPb+i&jdv}3DE=q>{>5Gh-^uxo0Qf()T=N0N5827>Z!^|EKZ@&5*az*7j{Er8KKD`O z>lWX?K_~d=KaLJjEaGKz`-IdQH=EMG5g*^w=7zEwe4eCt`NjOzBkQmPeyBbhGA3y1emEx}($NguXF+XPUy{v%XtM=EI{BWAG zf7QQue0wI8J*Mc7_K(O9X9g!6?Jni$`?*8q6)&BF>G`U6D|9A!NKMO)xQ^kMKK9=Z; zOt<=vU#s!?k0uwYQ1R3D6)#?e@N-*MWO?Vz`On|d$oBu%MDCx3@B^)XljAEi;Px-C z+J9C9{!5<^Wn$i+xBdB)J$Kt*Tth8iYL5T8q~2DFzrH+=4|~Ik&F_D+L21tSo1e3T z^Br#eJ@-eLzxJF`tYEdOy}$oA_;c41O8=iZpA9I!{*jJrS1Eoi?w@Q>@%c3q-nl~Y zoAu@V!NK!Yiw&(CdbVsxNDaHv{+W~L`^^HJ$L{;K-z&BJ)_e8y5UTvn=ktpkOG8;4 zZ`V@snN2Lq3R;x)h8s%;UqdQ1;62g6{DjtY0E-)Me}-Ka|9+>XTkv zI&&HoAAY*RYD!Pnv~i*na`LI2#^GT|5 zl5t{ka$oLHuDQ`LE0@1+#+idiJ>3(ETg!8j)3PR8v$7H=Sfhnf&Ag`^Ys!a)&G^W!}E2&f9-a)o~q0 z{EP$t?xFY}ES6_jCc*P-F1{zut}|%Ipx!74E$#9(#sBwFslVgXey$5i`+N8$%gJ_< zgU>M*2PWjAoX~aoHi|Fi7mH*A`xiFPSj;uXgj|%#OC!co{0Y4ve+Tq+o%+q2zV&D< z2MGJ;&Z^`(jQA^m`Z9y!i}}kUIYIxz<}r)8%$QJblm$bUEui?-VS0{Zk@TPUo~QM< zIjS;oU_vg+n%7RoQ2d3L{x&Ds!{^JD5MVbCm&!;K=^SpmlBnQ~%xT3$Kk<>pwK7xq@6LL|8mbpsCpI3oz zTPf{h#CN9aMxhU_su`-w9S6U*^aL$nN!H6GIq8bwiCgh?V5K^}>#TU;Xh-9fK?O)h) z2;x};Ovpufr|+%R6#x8Hd4_Yd9PgLUA$a0*3XjkFMn3vFj?dv22PEX8oHXVwGX9I_ z8$_~${)Ii~Af9!=gj|$UPQ;g@^j|LS&v>#N;02W@mH$CM-amdL)O|1R`V#+xT$IxW zo_U+%i{~d?sgkt6%6H!<^XDAIvlN(+i}KSCzb;4dTjhX%=E?d|<>P%+{^r_D9GH-c z^1$;iFQxdd=QH?8x{3bcISp}OLN3Zv1KU)l_%Ah-`a5%E`BL@A@|9q(!Nh?HxhS_; zo?S)pBfp0H-7M{6^c;wjKc^uMOvpv~V|XjF{qxo#$#>++`q7B5ABtq+z=T|s7gv{g zpVGg_1Cp-~l<~ocAM;Hl69*>bqU`YT_B9k=JRc*H1M=61FP@VT2PWjA%=l$A8Gpp{ zF(PRZ(*IRH`oDNiMjV)si}IIGs;{T?pLbgFElUcwzmwZu9GH-c@~tXUo}~EkA4opi zQn>%*aodXn6LL{rFOfpV&plZG!u}D%F8a2w&^~HEBXUu`^XjHrl>W7#{osIk)_0Wl zC&q`oj#ZgBFd-LZpBj@Nr1)B>w2wYQmR}>j<$~lC{KF!xHlCQJR%nbPVyG2NP&~-uJ__Zz;Z*U*<{;rT+&y&kXfO zIs0%zTZ+FP;)7+dY(J>{RiZyEfcxuu7yJB0@x}Z#k#qz7jpnhT-YCC37e%%o{)F}M zv?O_d@no2<{X?pRxcuL~Jc@|}6LL|GsonJ;rT=}ar2fuD(mpCb<#EZ++Y-gZfeE=N z`=4<%r1&4zm3+(lvi+d)MgKz}@!{6|UDqi7oiNF_FO}t2f?>2CreH|E}<6 zcPM@rXY7Jsd{&k($@la>?Bmm&1M&aeVQ+4s z_-SH(D^L2*(*8x|KYjG(pA>&(fz;o2TgLyQ@^^GT@Dary`lIAK*U0i!RQ`ev+Xhnn zIba{>>(c*K{Krett9JrJMssjZxr)?dD7l29{~~{_Q=W|JvfkpJfZ*`kUgvHbwH;TgBtQJ|*`g z#Xku4(JvIw{@uC`C;KN)0pF2Yyz+Z=Xv680{`t`Uu@|#^CA7=DLGfEa`^V8H!R4n# zZJ$T&?YEZVpNIIs{wZF3c3=WS-&sulKYMa} zQ2Ye&A6qf))AFMzvVDFX>KEH@bo>w0{xA1>bv~v4V2D4qcZ+BL*eL@qQ2ayC{?RrS zk3Xf_*hv(B62{MB`v0kQf2^eV_qBugd9ir*?{RKTEXB6~-~I;OKM-jC?%18Oi{giE zknzV+O#7GnE$lv$pDX$H$#nZLQ2ldHzTq#k2qSYgS#S^v}TZn^rvi*?mJk zruYjnKEGEy|NrdgzGVCJ2K0~V>BZB3Ovdi_DgD_AnZM4R#p6%y^Y5<|-v;*A-z=X0 zckZ!!H^m0e|?m*t3+R=Y56)%5R_e{7%>0cG%8~d|(`k!vyWCg{44E)ns zO#R=Q(}?VU$OHRmus^tZ{~Kt0P6@l7L+M`)>z88MC+>+0Wc#)O@NLJv@83Q5cT=Xy z@pr9ULnaPPc;A9Da@uw>K8y8fM6w&)9~rGvgItuSvOd{M+2_kYp#3n4j{iM7^XLBq znE$Z$wSAQ+{w3f$i^&hGdT0j4f95x-zwOcD>7RUmN1fu|^E24zMY{Y3YM)nHP{3t2jVkpFa2|nGXDhUZzNcoF>zo*F3PPREL}$Ndps=d zqyH)G^Py{gm*@T~t6gB@*Da4^kk8i~!S-!Osee)Vb*4-s{l5d)-}$y|Kb#@vr{UZm zA&u;#Z&*e4FFgeD8TTJo`TLVOF@X7FZ)a~iMcIF92Wfxj2C4rhWu2+HPX;zW>h9(a z{^>rn6m6LL}hmbZ@V z|8#~+zU4c~e}V(N=cnQGDUN@_nK&@ve<*7m7)Z|FcvqKvTSXZkbmjTSOW>bo{*!!d zHTityN@yRlAEf>&zsdj}-#V6L&VhAYhmroDZu|E#W&f+XJi`Y2&jz|q8QKNq@^T-3 zNAb^;mG-e;ko{vt<+qCa+Jb?Jz{6O-4N`E`n@7ulg_p}eOe3|J#CT1WxKkz5; zPkoH^Pu2eTe7ddQy-XaK&~H#4$z9ln(qF7UCz1vBFD`5yI{pS} zzb5dVCVch{XNv<8a#2>9{N`DTU#0*~7z^<@dkZ$o@~UzN1KXgYt|1FV=Y!2PWjAygaIJH%fo8zN0I_{@QB! z4Rn04!Ol(tD85+VQ6$_ST;;p{hp+P})_TN*dZYaAl`L}p_J4f+B#|5tpH=>FamyY+ z{J(hi8FKu^wSJ`F8`uZ+7wbrh0~6|v^6dD7btwC+`1o%EiivfhyB^5{+{yn*~@{o&wDg_p+BYnRE!TR>G**9XK>qy0~6|vGH#iz zCB+x(cZy^)v5#2CQyiF(i}K2}c(Q&M>vxLeG~tVNJjH<*+8H?J0g0m|tWmC-1LS|H1l& zEw9g92V4NTC~rI;OZLx9e?gvLS?%pV9{)ss!hk3y4ot{J`N7_CWdGP!@PGTybbP@2 zE8kk5i31aIQEvIC>J-X8-J$(sODvq9(TDp#KQJK|Wo*oac#6Lc?;l6V_PJ5~arEZ- z%MVP*MfvrPo#gz7m74S)Z5*wC?rdK6>V>kHp1geV0~2ylR^4-(Y~Q9s{q8Wy-vXYu z;=qJlx7^w256V8XUy%Ac8LdCYpS%tAnK&@Hx$s8m+IKaIp9J;0!@xdRzr=9civyF& z*Fs-%SFFX0N#*yk9wWye#rnGMK7ZVMbp*v1>l2HlMN9uIY@K4URxu|059PUjYl7=k$@lpGx-2BM>k5oc2VlD zu0!p%e{u!pWonOcWcx&{Z!MDD zgfG^)76&Heq8wH*e?Da&vA(q{#T2eT=CKif{D$S7DgJsWzuI9LpXEB&p7?eI`nU70 zg)(tqLcLKYHh5aQOxJpSPI9=h?wNN%6%>iXzwA%C4=bpD2OmqFhw zEIthVqt(}x{UgvnVL!|58C zySOM35dc~jVEgb?NbPir?}Yfwn6&?5m;F8VxzLE0-)`pPv$LLEk*UzJ1o^AlxUhmn0A$h%F}FExPgh?Mr1`up<>IA0u?(C#ShPYol-_it>F`s>wY z`^1PJ)1(X&2PWjATsuFCoWD^H?!Rmc3fDi6v&Df4xhN0Ryh`4mwgLZllq}r-8I8*@ zabQ9&%Fgv)C;NxLhxIe{g;IZ`b@m+_%P?_ZLN3a6!}{Dy`KMUF-<4uz{5Rr@b^Kii zTmZQ!Gk!lp#?Sxh@&sqT)c@QO-}w)Cf2x(O!Nh?HxhSJPe~#?mt7Mb<+ry;&d))Tr zWBaY(%W6yy7Rde+2X|IbMF)rJCe> z%9rRL(_Rl{8MW%U4kP_DN`AYF;-^6WwiDvB5nroakBI{l+6Cp8?f)V9BjEW0%g1v3 z*ND&Ra<(`iAs1yr=kX0G{omDO{@O;${59e`x$fe?gj|%v^he0~4~t;@#Wr5nUq<^( zWL&Sy#DNL9C@UWS;!{e0v44d~I+QOXzSzgYwU-540J$iy^(Z%y;wM1+!MRxar@D_t z^hoKS4r^T|4mOlrGv90H0oZWB>zz0)DJL_NZww-DPCxR&FW`%)xkq{PGPSzr!7fp$Szx!;Vwe1DQy{NnuMy6a!Q zsU~Ah zS_aC$!uoaM`>RxTeB9IZ7459v=s9PnT1A(Z}N{cy`eq0Bi*>Td~9f8?V4 zcg4zBiZ9j=w{yNWMDlF`@>TmZbc`H8*=HxOPgpBs`&@dLwttMr^sfJU=ie?N_)f+C zXF1~fE?6cE1e=FSK{z>q$C1S*{4cAA};hr{o`2IYVBNY7? zE#d9sj@@c{Wo(n$ZD25YKO z{MO-;U($6~$9)On4@%r0Tiu5h?Se8sV%IAazvgeUe4_o4i~D+`oy_dh@Me4oivKd$ zU*)6S1Lgm_ZtYHr9}DB-$VVPZ{5@v+XIg7SQT*qx_}T}#DD_IR-DSpKbpO%6DE@B6 zK3b0SN8BGCuVcoaoiyP|ir=P!^dIzp3>oxbJDj9*7j zf0g3@3-(v_$KQcmlt%g&L_VEF@o(qJ{KfKxT(r9?jri?WuPa6I8~&yE5A@TxuLG~K z92@aRZpp1q@slEavmu|6>3GyDSR!D9NX7yKA#-(vf7)?)sJB_;g$`1{X~ zmH<^>rXg6$nQ75W1iwIO|AfTz_7&&bVSRF2Ir%%#FO2wjJ(L5qcmCn|TWuQH2lqdJ z8P-QaZSvlf{WQ|*vaeEn_9;Ice4ipr$VGYfolp@!{rDY@B1xVZv6kkC4&YoSwY>+$qejeT(Pse_k@&dIA#t3+3u>XHMh# zx5X>s{pqexA%9{FzWi?Z2{it8x;!j~oA(pT1p$aedL+ph+v|DDF49;Wya@O+RnRr0XD(*IWY;kkv{=j?->22lLB zz&^;wcA<7HIDU&4$}OY#XOBtyI2OwG0@}w3d>iC%1j}{zX$VKad_{Tbz`%JF|41(I zC(C*S+k^J&ivE!iA>JVwxhUIx``sLhKR(}=&qhl>(r+mI_}mhO@k4)q;|GdAQI~wn zU$Wd{eXiY<`~t8~NW_Xl^Y`QtV^mpTCU0^c=-65Bj_LQ2*+;6~0OSmdJ}2_eXy5=V^F83;Adt z?T*3^8D6M;J_&6{malye%lt*YTdI5$`+Tx_>TOE@rh9$)>}T1}ZU0BnziDov{y*ly z7t<+zPbGhKyUb_(uELMVFVsHc{<+wX;_rs|fOgSJB)I%X`&Z#x5(+I}kB*$PlH&jO zi?4kwo2C9vm2YDILz(NwQT$$t{q^4=&i$w8ADU69eO90O?JUJVT1wWmXdioq{x*U6fo}W2eWN{0(cdJ0f7#Hz zHKl)ClA;o`C(I4;gw9*RSr2MA6Ts@THABX(4&y(@MITs}G z9rb1X+f+{oEni6a`n~EMdexL#=d zEEoIhGZepMsPun3@GX~Q`@{)+cl#>xheG-7j@8&t@t1>rkZ*^5mh9!E{%(HL;f2PZ z?7w!3{#8HwOlk)AY`1*vqnDR_clobb~)xAm0Qu~$_5C!}ei{3>lvKS1&K z!1^urbXo6W`%teW`R@CdkQIgAzZ{tN#TOKR(0Zvq^0lF|9BUB@pO;@8GZJ9}>s^!= z`z#^-a{$Co2J2Vg{e=_wZvQm7zj!e6IC+0m6UL1!+ho0q_OVw6`$K#vA2O{_``5hu zJX!xfbXVF(FOc@P{3pw=UPbbq5FbJ#3kv058hqq2%Km@A{Uh?-{$DjXe*B_!6)FB{ zX#XQ0?c-GWAsq_Uf7Ja~PEq`maQ}{ctRL;w6#ZFDq5Oof_rIk0pWT%9$Mth8J;46= z03Y%cR2POnaG(|5orHVgWpBRQTnG~ z`((ZB7jQuTs{LL?|Hz1vh1QQvmQ|woa~1pO$D#cnsqjNH3bns&z_J30|2g;%_Mbao z99ydad@Nt#h2Ot4x2|tT@!Lau!*;V{CDdNx ze_-v!pLhgK@7I3&8Thz9l`T`YCKW>EZQ&_C?vL;1C9V4nc_wvh)8QTzqazQXl|-1e^@oc&jCu1@y<)Pnec>)Rk- ziwcf^YUh#fDE;SQ{|u9H6ZuZyyW0;Dd4<-G`u-}6;)iaP^&^AzC6I4#AoUNpeU)E^ z?BBbup1gl?ufOq`^dG&U!VfRJf3oRQUv{VTA9#;1-wEq9XpMs7Z=CcZS%1ZY|DgV8 zAE(MUX@741%<(v-|C?C8!2TFN?Tw}W?)wXq_W$Cv>ty>s1@AAE{MDN%{0MuY{GnUwDGWzv4I9++#P^0&@sl8=6)bq4=$F8TRh@wu?} zRa}juLnwYawojnn%7*RF`-0>DI;G-T6!*6*5PANHi= zJA>q(&pUaQ(*H}vK8}~b{`Uu`f9vHRZlw4N75~(A*}td91joO4=B}9E=+{0O0R5k6 zf6FIe|5m~AbH0mSPw_WG{6xNOH`qT&{>A*?HdFiq5Py*G_!jKnTG2l;A*8VQkU6FK z-xU9xn!nJ0rN;)xk4taSl;U@T{u8(U|APJ71jp|={ztO?d_}R3B}~R?XOR50x4#zi z1O5ExB^W<->yP)pZG+SQ*Ub^AK)Z5-& z(LX-F(Ei~b-`1;5*=K}Oel2GtSMQGk|#LxJC zW51#JjTJu2lYD28{Q9G|llAXZ#Xj!&KfM(FL-PuapIT~j zhhAFQjpA>B@dbDN2>ZZjy%oMm`?+<-to{^#pHe^KIHXhMo0PBrR?Rp`@h2+rhkXF? zzmKB7N&Ry8wV62-|02wvLHn@&(EfZ_;hX4xyZSpbDE>=||2Xc#{I^FGzDfP^{Luy< zQT&CfeLe&KSNSIOBv%L-tklH}U^Nm8u-1_(PQVjN{{aKZS3Sze|5S z)`H@H4f7K)e{FGK|Nj2`iiOng3)-h$qWI&L@@wA>_E-5Pl&-KyZ9V)ep)0qmOI&>TlU2?V}A;_%RWM)?e$g zR~)7EU#Ik+SO&`S>s0wBICNd8w{XZ%F*Zz<)M{Upnm{ZU1K zllY(6F_G*)NmA~=^fQvLk5>35?a$leu9NleR<->D>s)GMg5#eWci&RVKF7uUz11b$ z^&`e1r^+|+|7*#Y$>-MwDEHSmzGfe*=+DR3$`{gpc&gQ$e<=O`!2LZT{I&Z^ zK777uIoW;=iSjMKxDJYzsPN6o?<+^{r}RIB`3uj_+Lwd>1K&M98(#SQ-Yy$c9;f(o zuzwQx*gt6>C-rypO~!xk4|};S#jjoDEpi^<;&Mkga4-}e3SfrYZX{6{|4kJ@B~Z!$ls(xY$eq4>=dK3>PE z@=fex)31-D_zwXe>n-Hl)1?0H`JX1w@63P5K|X(X2ik|YzLPBh`hU_T-#x!8L@P9Z z6QA9Gn9~0)lrI~uKlZVVZ(4?;zsdZ`kORMy&qv(50qS?)TdK+VjZT$s@_gmM9W@tI z`acQnLkIBP{y#<0-^Bhq8+H)uGx(LSGoMQREv02#K>yS;CEs1YM-)E)YFWa(_bC2< zz_%-WEh{+w_oE`o=Znv8k@~Z6U;Ujy@`v4%bcfRa8JM5I5~W|FeeBs%f46^{%&+^f z)D?36Y7^-Hv6PbS5-ewWj^y9O`Dx+4^DA&JYdExdKmDn1Icj|~u|K9Q$Fn}6x__e4 z`qe5w_SBYL6klJ@m^Q=1H`+f)?Cln_qP|xP-S^*$7q(8I);~Nno9FKv#_J!7>xmR0 zh37B01-=npVd9%&{W^7hn{6HV`YrGB`xh)<^`L(SP892vi=^_=?($Q{;#;oH7VE<} zV7?!&Khx?bzAni7{_D@kyKcE2I>l#-{?4->O%>~hsQO<{)b^!keNM4{sYsgZFJBud z2A=zJm2Y{ zsUK^z48W6fvaQp!=2_FzlA`;H|KqgrDQStRDNk4*NuMCE#o3dyCS+;NQ`09*ux3UN zO3%zr9G7bCE8d*NhBtR<)I2*iE4o{H+W3?SEj0PUnwgz4J|!tJ+Y0X_rKa#@Rv)%b z?=dZjFNr!qAX;cSeC5}U z$F?Tmqe;zEt%=F}_jgO5JdS5yc6z3kl$A9$F-xe9Z}D|*Q`6I|S=y-4ULR(pTBi-N zrdpH4NwXM@pUg8W)!HpFX`)q|oR~36T6;9NuQhXgVv<#xF^ki)vW8??lOIV>N=)sS zIGJC_>#M?WhWM$ODcRZ9G}jus?b^g?Q@I0Z&0SuAYv(3w%>{yAMQfgB&5q_r&+c(r zrgd^+N}9;%c5OI*3~8K{w3O^&yukG2B}bb6F=?9~(=sxfXAX?97~`Y;A_-Dp38?lB{vs<684+ZDTq{i*G=2(1f-4%dXS2xs{rO-*dh@ zVO&AETWe;e;!BrPd|j-@BEHCoi|hY31rn|o=z#TqaUDF2_bB_8uDp};t7$MF8rSE# zIEvRF_i=WVe9l}iko_-iMe&~~`493`**)&5sT6-nU0#2C@f}6v&p7;60>%G6jK_B` zzIG)r{qbj^Jh-Oh4qiXiuq*YStrTBBH?cH+joA$NH(_07w2S)$_-FahZTC|ATa!bW z#@8># z?g?Wj_&RiA4Nm<1M=Nr_<@>rMY^u%dm1;0-r#bj*XGPCC`FMqgw?^GZ>7U5=Z?M(i z>-S;0O6RY*zDRg|`O5Qm^F41hq4>x9a(+z@UoRqmias)*;t!d}`L#WKM}T~c3-}9` zZ+q6t+kYk0_Sqt_KSaGSCe{%aQ38KI+S{@}k`=rY$?|$|lGi@DYW|LmZS)G2zpe^p`s@epE(E6ED@>wNxN)xX(*nccYlrBwZ`bvQrD znD6XTm9c-k_+6_q$DJzf--*|md48^i$A`$h5Z`e9xPMx4enVq^-a}Pc%-)mzVsPMDa_E^R*AIw~zK`P@myztbdVMy_Ta%tC}4smrRRVq=UOr8?|ukiBA znuf8CAtL&F;(x(j-+e{Yea6-Jv;6ko&r zWbyb@PK`gOczk2cim(5GI)hG7`s-YO);x?QDfX%V8ow@~e_q!{EWc4BDD9{{W2wpS zRigO!E#mR*zA*MAUx(b={_8|rli=%DqgdWAQGWb#^HTFD{<_87{;k4TH2*Ux1UH@zX8@Q%6uGli{hW*eCIF^ z-*TsD{Lf!W>Q3>0;QdGX2oK+0ME<;Aw~wOu`MY>K>QN7${ZlmkE6n_9HpM^B^|y`o z@bx0{UmiMUCdF@5pWk1M@$el1@_Fg-NvZlf6*=Fp{n?T8Z5_gx@DCsVPv)n4`Tx{P zzOQ}Y{6&LlpL{~;KdlVkUtyd_f7{)n+5cFlg1HnwVK=vbl85gsBLDqXdr1GRA)a5F zb7`PTC8_P-GJZZKS?y= z>+@Efq4?AJ_>;qn?A4jJ(p=ghpj}|8?2zO8aDr#`W(O#za3mb$^r_5yiBY^;qqN9)A@+i*~`^k-ln4 zBdYxn`vT|pK)$DbQukfl`WW-sryG9W_+Osx#P#>9AFuKK zWo?6y@A1!!=KPm?)sHJj`L@?pezo;WHc|ZEeE&t;VC4JvKiD2G#S#XDvU{HKy&l>f z!WUAg|xO^miEW&vz+Y|1Z`gb*A{emT>(?dGyyx(e@Gh!ir>MpUtJ;eaguGww)gP z+YI;}dH+*k{O}H=-lOyv_P2TI?+lQy`sd$$UP|SBKmWfd%rQEQ{m9!l-tp(TnZEvB z_q6Y8&o6fUEVioQ_pPY=-;un3*v9!{-%f9ScqiZbM7=*%`A_8jl|=C;b3PkWeEz1@ zO>Go^$YpN-BJkDvcly@v%JKR)Os#(#{K)xZ!&n2p&!2bwi}62qE8o-csk&@V8DD#0 z4Tkdcl7+LW_Q`%ef6l?jU$K3Hh@=H%`ltA7t>aShM+1 z4}F1b>*S1q*71C!NIrDO{}Jak=L1w3iJAOr(Ne@|sp(1laE-?D;Wj?Tl$e@h^&ZIL z7tqOHAO_4bx+i8Q%7HL|@Nro2UNeNk>o_evHMvW2GJmOly_w+^z$%oDd~6^F@22Ef zv$DO13B5-Yi*f}Mq<=Ofl2&q$rMGGaJ9$pb&dz8pewsCt4+f`s4J)^5uZa(%UEk=L z$p=1%@!?GCK=^U97<~yb=4tI~%}yN8hwr6z-DBADGp{jM*LbnlXsWlFL{5w&e?@xQ zBk76B=z?P0*X5i1f_&K4>i(cmx1MC3E=E`RHIm6|xZU2RBH!9Hy1(nHT{0(R@gaTB z8w0IbIjMXEU5@SZf!4_xsd7KmjMSV7DQUgMYon`hH|&8X#qOKovY20?}p7`ITq{^-7n)c&^_ zd*#W_Z)CkK#&^Bzk>~h0nrmO4cKp_iAGqIiLEBg+4x@zEMcMTBn$pzuZE$_9q3nM* zx_(SrEE7km%Dg|VI-f6<9_u;+z5cuV;>rDy*TeqodWsx(FuHz%9?QgmzdvTo{}J~c z@KF@+`$I_RkkCQe0*ZhTj?kMNRS?A}h!wp60Rka8Ql!`p0lOFrBBFTM07Z?0pki5+ zA}SIP6+z@c>@D_+{@-_Jp4+|6Y;xiM_49l4dGl_$-Dlo+>dw3~L*XIzBIphI%0nMM ztJ8mr!WT2j$M;`C`VvEb-$jH^>_xzZ{Pumr(Bb!-Bi|5uP5R5d^GNJ>YMT{Qzip~2 zN-~oz4xUEofySItrX*V&FaC}@kG9a^Ki^8VM7B!&r*CC^yPf#-=dtagFE_@X$BVz< zu}if3w|}ef&HosGSpV7$bo#ezE%gs=`)~D6n6cwl9sUIh-@pC8#UFf1-3>bY@8-%F z3|}Sl|Ld-C{0r!V!Afr*HxntuNRI(JX7(bad&t@g9^IqEzu_bGh60)Yc3b%NcVq)< zM~CP;HQc|E#mi<>cxarN`)HWr#hoSH<_@RJqWmvJAXQ@iw=JQ^$#%_SEpOjjqjy@ z@%ZL~*^7V+`OttyLv;9-{|dbXelc!*=+AyE%=nIDKNe;$0xsm4m#<%|!+)0gPne83 zPW#*Cudff?TStBt=e4l-lS`@JZv&m5Pv^v51YF1#_l!%_;SXm25h61t{guTJUD!e} z17GA2HnRr-7qZ>5x{G!A4WCfy?-CwR6v~gNEPnX<7J?c0r8l<_%w7as$iHs5v6>FQ z+lLZA@@)C|#c3@BGw{tZEd;X{0T=Rc_3Cfv@PB_$*}sDL4_!g_CkB4_DzXQ$7XcTt z>+D6h>+ltlpn1LUlV`eV`F68!)ug%oqFRQ20|CQzI?;~3?1HY&p=}+uM zz=f>(!ynh`@Gny3uW?oR_$l|2{=~p9S>8f0dl7IUzr17Dbvpb%)coSe`tr*^|H&-` zGw_SLlK#YA1YF1ocR%>G4xjxanc#Qn75_oX`^>;Ep<`w*0xslBAKdtw4*v&L|3+HL zenBsMW8X=F8Th5uss17MBH%)9Ut4s#4*yzJ{)uZUi2nkLe`4Sl6_Wjly$HCFpMATb zlMerJmHs0e%8&m*c1ytw{7^wl!R$rAg?w^!(v>>=dHDX`Ret?r&Y|`eG4PA7X(^b! z2)K}Ue3W~$4&U;hrI)}jw>&>u_N8_E(Z-AaRP*-Q{+~OP{-)}Gk@)ua2il*$-OU6u z+TW#g%<=h>Y*$_n+I(_hz~$zqI84nbXKtv=23|Sr2Re0T5pW^z+cC}5;j{lYQ>X&{*$1$%Y)?4QpRsUZH@PoEk1?5EG{MZkqjY4+1| zI{f-+D*Z3emw!nArGGXM%)k%QF|!u|7jpUs-(>0V#cT2nf$L=bKa#p5o&EnP|4Z7{ z7R)IBBXrE{MZksJba0rq{%QE3dV^Y*+6%vwu$UQNQ28&~6E?F40T=Sf_3vx@-zKe= zFNi!O%fAD^#Ezr?)h)LCA44zXdcgdpo?!MO;6molZ8unF|2|998#>7NcjNyvi28;G z+x1;{AN}6Z9~UqFw9NIRbofH`|3@au{x3IvtNOCPk9B66QygoLc<~2cd#CpM&+^}= zmtbA*%KGugi~mSbjX!nzvwuGm_D6N&SLEj}pDz0!@eUc8*!E!^zUBYVkE?aZ-S`#F zVD5k}0D0?Q_o)*x!!ghQ@n*9Zs?M7$?&cNPiE{d+a=&{?_~i zdSyWA@5V20o&wKR@FM69xo^mib#(Y&s`@9gNq&F0@t^7+oBr1|kmn(qBf;!Nz=iDC zeNQ(X{_U##_wOHTy{aPoeyJyx|MEYaq%Hq>{sxn&>|dFA96Xo9i=a2;eM5fuN~ixP zO8>wC+5T|jbNkz9PUF4Lw6pjW^6L&gT~$QroY{+j3wcA&TUzVzcd7L6zf0DCUije+ z?F2LMi|Lrzi+~IH>*;^&)8SXSRN6muK*qlpzDZcjzz=O|Cz!nmxR3{WRnd-r)MNiH zqQLF4{_(`$M)<_QFWy1=6MGSGA$!dFN?ZSqQ0XsHLHq|^r+GcZz!zHyo7sba3;FlZ zz9F6c+d}_?<)^=N!eRz~DIGI=5pW^@`k=u@I{aoT{>2no{&?A6Y#}US;2W=z-#D=s z0T*(?Wy7D*;rCSf`wy0%{z_jUeTjjevbmjL_9EayJ~VsYJRSb;X#WzHQvM?b zev#QuFnbYjA?LgpdP|3Y1odA9_`X+Y{T*W98x$61F9I&))$hGIT8Ce^hs=NBJIdET z;e-6p~ zcXcvTMSV$MV&E5zq;p~~0xo33Z)NoiC?zVlRT;koOg?sG-AeO!GgP z!uLu2Q~!y@AM_NpO?y-o#m)OzJYq_0dt5$U_CIhTe@^eXNr(Rot{l+9cNA z?*HCWkMM`t-`{JJ<$3VUdV<-DfD8FZtLEDNuboPN^B-w{Igix#Kk~g98{cy~iI{m@ z@#43-_4!kE`tQ13z9I7Oe~UjaS(NJVO`2b9Q5D($@L%cw(W|%i*5UK~T_(&6{{NlF zYrTyAA>JWZHys();SYLQrN39C{l{7J-0k|W<|i`#{cofS=G8P$hx23j?Nq_+MZkq@ z_K*3U4uAgpO8@n;AaLXJJVM4ZW_1$G4I0bzXJ&U2%w7as$brW@ysN`sx?SQMeP#SV z;i~_m`v1^h_=%yv_`N?(DkSzG;6mQ@<-QahexD+VA6ETu?s>%Ly5{9v`ebZ=^nfoD z{~rdMXz{K2%k&b=i+1BX=P`3UVEl>aF*AD+^o9)GaQq#e{%McPH(=iyH$G1t3z5Ge zV>4Y({gLuW{*M=b-T3dc{V$u<{*%UQGX3qd%3nMEzrH9I&)6-`OWSp#{^0o2-&c2j zI9I2CbDE#X6nP|9KjEaJC0@*nADRkUw;(uO0vR_cr+k^Utx?fgAr5nm5V)ugG&ZK6PUDH@8mx zNT>gXl~Vt}71I8DsD5#Nf1PzK7H&gJz5h$8j%_!ximk7+8HU!mWcr*gc-HYB zQknnV`Xj#uo3<0oU!{=!$^RdDB3}F{cjaEF!_Rp}>K|wz)1Sn*agiNWX-!M&f9Go+1iM3~6=iGj53BKS|8iOWxb^?QRsJ8L7dq<$5BM_m&+fBM zIjGa0*AHRxS8?Lo`d74$NWAzRuAJl3;opVy-_aTWHa_g1emeEP6T|)`bj<8UusdY6 zL+z7v_(y^&{nwZI-)(>7KXHjc>l_%-{8vK9%w7as$XCxv{8)$o7xi~A8J)`4KQx5W z8!_}3LrHgL4+1V^w>@duI{Z$v6@H}r^k2Hf5X`{$(=oFb0T*)ds9Xj|7>DxeRnA>b%C;nWxV($;k!Q3 z;ZIZfFMOpw{~`US45I#jV(1^HV`eXc-jJgr+xP46|3&%Nu>ANB`l#N|I7GkXzmA;Sf4YUkgKJ5%BZuGZtD{0Sd21T*UY$U#Fedl7IU z*FSvsdR_d#puYb_9f^Mpz0leIMf(eBp8c;*r2hSOP2oTtzO}v-VTM)xQ<-(9DwF@# zKCoTue_1m_+FyjE{u1A=fBskBKLvTmYU}j>hSpDGGLt1fuXClde`$sg%oVLuWxb64 zA>JX67$t90aP%)pV{w__2-7zow^EzS7mBoi$*1x!s{qLH%*MI%?Bl(NSx3c_o z+rJlm;v(;{%vJrdxQ6$;CF~A)_Bk7l>GUsF@gFYM$N%tAvG||%qqKSg-#_bmY`;~9 zzen|d1(NjoyX)W8Cs_Y}H=#>&9sXOi{uxu`4mtnEZU2qbEMQxwS5Femh5cjg;kG-@ zVRy*w56$kS!#}F}-$LDG|C1a40++rgs{h_K8%uTgbEr&V3OuOS|Cydt-c$cm`frk} z)|UDQeyJ*$y$E_k=KC7lro-Q_%3pJ&KK&h0cs|_4$}0YF$Bh`m1Q2KI>u4Kj;lP zJ!{%To&KFv`Rh;nZ`1!%O9yM`zw!EkO#VdK{+9aN{r~8H;B^Fj^8d=8qy{Kx5?c4!rKp0&>foqG}RA&>mL^nIQEM=X(Vh*Xp1 zFRx?hY=11H@qcH1Z>F4B`DeWRR+ue>zW9JDLgEv}?=ZamKRW#%`daEA zxL=Mxu|1vnAK#nd@zmcyypQ~U0<9B8!2O~wAN3hmtb91iEsD+qx>trzq()!s`AgIV`eV`F63`j?$ypeLHUbyRe2p%XZ!=- ze{(g#4E%IDX7(cBLLM1xYS-U5Ma};XB+Bw{iL3nCMJk#O|AY7Fg`Dp}@!~&QZRd@; z^w({kdP9=LA7I75ZGT>Wim}9}^dUxk7b`^Hzvd@3Eshs|if@#*|I1n*mR^E&XDho- zY`pk?Kh!i?r$4VB%Y^-FE4z+ty!iKS&b>#6Z>=v&FTwt{{}ukpV>Wlx;q&^l7ODMj z|1129#;iSGhhJDK;f)7m`Rlb#ZRFY3g4w-JtqOe^fqVy$v?82-72@=C?+eN ze#X?y>9pS_Z-tso>;KX^qqJSBy-0AuJX*6iFLNsIshLfSyr$;S75WwJ-)hLGQ`2*; z6<9ECDHx>ofE``T_t|V1OGy*H<*Br?>2e0?0?`wM(%lWzYhP= z)>VYR3$;<&Dg7tQ??mVgDO6Jk_*gfvEV8@;T*x2(_`01A-?xRz=B^3iokx`Z9{9X& zClm17te|+KbvwNXxR8C0ecwWdzmwJ{Fdg_}ie7&=e%B*}PwT{a5pW?hK0T>{4*wA0 zi&TgHapIp|N&J^C@BO6?KWjhP-+?bO0hmrLa|~IB(GbU z4*yqbANuZZBbvHiNhp^U1`N>`%g4ae#r*kiID~*U*Cr|Y#m48gNg}k5r5CyJH`cqH_ct$Ne_o#?MEG9zhyJ`a zNlB8uJ_oN&Qj+MsK8G8>@Z{gC=5Cy;-X-+>>B6Ce9uxb?<4^oCrv{q37|_`x+)k2&zg z%=q-LsQrO*2lCRzgFn{o&$;+P8UP|n6w<(EFx@&g2Fw1ka6i>=(n^Laq$Kvyw0^Al z2VBT^mUsC~hkxcbvJUaW4>eP`mrMT{?7vl6{BdbB59#n%t(5vFsg@@6ckAsRBkgjc z`Y%}BySfhl3)(w`sVe<3x$%Juyi_2B$KTiC@0=uYVSo2Nz7?HYf!6#(yhAqV zciwm%{w*D1@u6o$va;~7)|ZpOAfdtxLa+LLw zkOw}`TVn$LPV&>>aS|^AF64wdukO|14<-E2WE)=u_4>QtJ4|l4Z{vXu%JWGe)oaU#6vTS@YJ3jqK4yJZ%Irc}sgIuz*|0u%m1$&|WS#=Gi zKf=ep$&p88Kcz8R_7|0?{l-(8rB|s#47PRL148);Vv|aL zB2TaXCRh5)?_D|j7xevPpAP@wA1UNlC5U}VD*b!l^Sm)8r2p1WQ=j5X@u&Z15A;8# z!+$+MdMry2^Mz{vgH&)`JB$GC~STJ}He4tYHN`>S;LOK+$2@4yemi61(JFjvO^ z{rAeudHFj0^w+7*bKr}D`1GIQC;PXGAAi-s16uq5;fs51`-kGhzlQK5De>bMKQe8) zPX8N9DgGV!qA))Ft#LXUC-ox4JLHZtr{1Z<-yImi@28(%(0+gO{H&1Q{{D5(PbzPIR?2Bjyx^nz5W@aD z&C&IA`unz#{Z}T4F$pUF&(X&}hl>e%C7wqo>^JN|z=hoRcf{n>At3HlGXisG$z{Q6IP&Zo`)J=W5D9QdI) z@f#;suKxLZ@8hL9{f831>A)BB;?o~~;?gQ*|0CT)=De2|B>d=t8mRx<)uW$QzfZy`7>^V*)M*ANdsNZ|u-sod~~7|C=>GWpt8= zou6m>M>*%G6y0Xe58}Bg#dPjP&>Qmi%UW*G=|6<#Cz+2r^uH>;^w;4FvVXhy?ceh2 zQ?&hWzSl{E$83CYb$s~AjVRkRjlcf?Dfyi}I{lAO{pTnAYgGF);9muhr|%ek)9{|LGK5fBpF5 z|HGDhPtxIUF$jNKf|&KE?0*P(;LoD{f1UW8{)~qRe|q`j<~?cLocGWq9+ihuQC>y*dC?>V#)YhLQvSvgr#=bb0d zXrR6zV^VhJxZJ|L$(f^brqJL$2d0n)<9nnHFv>%kp^Ycq?x$)G(U=WT)wMYHK%J?@ zibi|)zCFr`s_uPzdd5}vzP-vsR)t{YrNHiey^~<~zGc&3MPU7WtGpTem21X+<(RQwrOlY;E6d}I?> z(NRGHN%Qq77p!kNU{t~wU=M44F6DJ%#U z7L24_+Ih!%-o!lLZi19;lIY`)_AH;0KRsh+re;5KtL;;eou4WpzfCh`)^_r%N3%)5eGQ$}ZNhk122-g0}K zRG5`LMcv4lT#$7|=1{&uTGQ6-+~TxOqyC^l!+J$9WAe;Q-gaJ3_%49#)@b6Vy7u|7 zHPk=l@Q*ZZk>3ZZJ5WHvKhjWe7$2D6r|*Q~vfruhF9);Dkw|i4Vy)+uf98!M!+O)} zOX&M(74?sj|0TZ#;r+c6z1J~M_X{46ah%`VIrdxyD=P3F$SLOElXdz}CjZQk!#~rw zRj)t%GYy5n>)M#qKNvifE;Ms%YwH30`d8oJGGFV29sWBK5~} zki4%u_gg|Ar2mjf`#RlF)=vw+gB)Musf%^`f6nVS`w~QWpNfBlk9-Fi-X}w1r~sWy z{qvzFi6WWSQ)KBT;6e^)zNfnmKbiUm{e+*S{1c7a_3@vi{1bsMo~HCi`zp6MO5xD> zi2@h0>(vV%)#0~aO#L%ywtr^W10VjGz~^-h&DM!x0Tmi1&98G4a3LFPJXPC2_d3tt zrFp3E4>gMP`n&NftN*WS{@9_@zi1NKzn6_4juRjIT4O&)xBl*Pqweq{y7d3p9_ou9 zYNsDV`ANE;Xa7`Z`iFmBU{5nqv3gf^8@t5*XH}2HOKl_a`8Pclb@q=xTRoCGM zw-ElCB*FXkIPq8f9E&%J#-p6!8MG|+oX%nhdO&Wvd)_#m{Raoge&M&SpS8?_+3Yl9mgeztCL4r&l-2@@p)Z+Cd2wqMfN*n zH`><$>*=e@p5n~cMxU%p|Ba6levTvkD}48h*e{0T6#BqF2kFE8d;AXaxkryA>GbbO z^QX*v?D279sa}7Kj~faI?Y>*4Q~YVhX@Cp);NVLi*WvqLrx!Z>Gs1D=V_hlK!xibj zZ*ys?4u1scA9DC7827}dKk&W$6reZc;6=N%^?#K+$o?x5#L+WV{qKQ)RJzMX)89zS zk36sR0&0JW;bqGo;6g6lzDqkkI+@x({`>9md1IMgfA|L&%FrMA2%pLyuW=IKa`2eC z|NO*KvVXHTl)o3ohjZ_s^(kLUBL4*Gql)KHzXZ=}D$J!#MARSQ?54tZPZNRhp&*?b zbY2m4U3~k~y8Jho)^9ZD+xgG9SL*M6AI7Z_K8#Zb&Zd2AirTt=9?hrt{j*PB@`o<{ zom)zeuCmAH!U|uOHgYWoemTZx4L)HynbPf`s^XJb6n~m=Lf9R0(S>WOCD*8t7G1yT z!+`agXK4M%$SX8Hs@5+-N@6_cJZdYw6AsFoiq`Q2F66g6?y920x7H6GQ87M$Z?T^7 z;#kR>*#fB<3N&!hlv0Yfa}6M zTKY?8|9Q7low~rbe^}wW9#?)NcKwI(>GX4HU5Djm^Pl_qX2$AGI{aMnj}Z%PeB=J| z;=e3@DdDHDD2tDDk8or!`aDSKzjieLss4{$w0==!XA+H1$M%0TpBuYw{?_r7{vG`v z>v(+DaSj|vq&vvSAI-J?$+yw?cxZEiSggi}jR*Ac&+CdX8P%S0K*8%G}sLP(>v!{nYri=fJ$Unz_wn z>f@isr>oH0p%2EVgDu*KU}MVvx!P`U?!w~^;b2A{_4%b{=g!H@8>H$&RwV6{%%a>yb*J`-+fvp z^=fu9tPWN}M8B#r(w@y7?aWT2;m4_kIg>l0FTAttA3k&3d6~gHXHR$<4Mt*2+3`3H z6*!+D9cO##I4m=-AZu#Y>_pSM3Chw*{6qNum&S3`r(>B zJzc{!eR>&XpCB#swU9JOpOaaTO7WeWO;IPigK1!fR|VjnaJf1FU6?9=I3d`C4DgiQZm?cL|9}fQxzUw9bn8oS|1^_d^^5W_AaF+5o?qn#Y4V`j9IQ${2UW)N^8tN-zww4WU+b2Hj^?1YAgC$l7!r{#^>+tN`Dt|H`H!of!7_t)lNVV%R@G_n1Mzjmj|{>g(`#@0U+R3MKyU zuKYi+9;G*G2jjb79i8KtCFao^9qJ2aP!v~PSbomy@9OY>r2aXJcF6c&n-$wn7j8#o z1AT`Ble+?O%#!{4`Mx>3fyL@=Wy+slu6S~^4!^-V`9$D5sXzBaJJa8Vgdd>tt?0&< z7N5=SB>FBadXCPCQ9c%Jq;q1BTmQG0{iR)Bl=~-{{HkB{f7MUv#&7?7&QYEIM`o$~ zzhCBmH$M7bLx0y3%!{j2eruU1O6i#SK>{+i(tg{=>sc(dDO>(G>d=qZx9lBlpR4cV zsz`s&ont*Zj`|_1QcDo+Kr>aww=tuyU{3o+w%h$T^%cz1&Xec9JNgP{kX!%nrbY}M zeyZBv)W27zza*Nc>5P9K2jO%UYTQ#Wztl~hr!?y+n1eowJNiyYX+-D5AUFP%2lr~% z*W&(RCR4@#|EizZjepU_owV!wKcVzDKa~1&Kd@8(>*~ekH}`rL=@e0HACT0hZ2WJX zw*5Vw{hO-tPkiK!Z&LrK?=bZP5i@>>`h~*>=)07d`={CdzC(1M806N!hRlq zFP{i}B-6i6e+!?me8j*n`jGY;AO^lc_n1L${2$L+xl4!tB+`Ec_y%Dy13$E%`bCI= zpF;PTL2mr;mKW~O;oqe8HxAq>%Revu&7-uxJ2CLh2%QrHKXQcDdn5+A@w){Rp3vbh zRes6FUFGA8FX-LGz!#s=IWh19pS2UrAUFQIFQ)X-;itSNpD;6J`NR9$I@3S$Khk&T zElO{W`sn*<@umNoSF|hC;aAC35X>l#4LWA#_P9y&IDK@?407vV z5Lt9UhrhOs#1Ac(?N2X!@fN+C82I6xJp?oGi|Lpd@x}d8f8O8MiGOiIZ2Y31H1KUb!R*yf z>(>AMZ~FJu>3{4xi68k!#y{_`>coe=OBz%B6E9ZvufItT!HoJhy=f1@407YI-g&Qf zeb<)HO8mgL<>QAM_7Kd#FQsE<;71zu5X>Mq{??kOXv^Ow3zhx~pXZ6|^bfr}STINN z>9~|QivP-B>SrGe_%iLk{s(7k+y5JA{ytOWJE^}HzWMxM!3=!g3xfqS@Js2K8RXXg z^p3r>``ceb_(d-b7R(?w{?WOMwfhUs9;5I}rT)CXtS_OvlV1H~xS( zcdyaue}lpg{7^oA%E^RB4EzusGXvk(p{`&Cx$%7mKl)6EU++VuzryEr3UvCL9ce#h zV&MBabrQ_LPw(7GFoWFqlQODn_m?pBVTi9Ww*JxJxI&407Xd z{A2P;o&H^^f8L@)>6YOAZJqkBe^a&ZNA?mv;{Dxad7P5iOEA|8sq;>BP7HG6-#P7- zB|7|D`%3&kv21@xe7hf-ia24?_%G`J;&-V2r*X2#nY|?Mmgl(dg)ht-wDoUYQ^mis zzgvHl|B)Yi3uf3q{ioivep~OT{Y&YX8RXV~x9M-K)BjKO{~VR|@4N%C^)J4E!{dk0 z`rbnXzJL8!3=zy|pM>TN5zHVrzCW+yMLPV(ynZ85;Affs-1yKxkT*myL;n&wW=8r; zDHtM{L2mq}LyzX^@E4%{QzGmCtgm9f|D*VaYlr|b@Pl;B{2&4G_pdKf!(uP|j@^=O z(&2yly?i3FNv6LmUHChwzIXZ|!5;wW?Fah);`=4lsXvMsCAuV|4g~HmS9Hzr;m=A(f?`CF*C@GfAr-$LpuBy`^fk=_DK7C;fHtDqV}eZ zZ@fu(#K142V`h*WKX|0dUpoBP=g21_`y@X5;W+i5;g{=_6xFCHnBk9N)T}9(t?@Zp z$D^2znL%#+w@0ti?r-(xWh(u@B;((WkNg#(y^NXB|6W?BreMZ88lk#11vAKvpD^iX zZTstiHS!7LWr=^FZmj-@|Kd5d1T*X%m|IIQ&+S0vAAO&v(=jv1jbHyzzb|z5Pow#} zOo3M=KKtP~?GHbk;uh53ObmaV;7QcqN<5wLLz;0~H-6s%%eCu!mu!{z;r%lHz5HYZ z`N%LM{TI_QGwczjV`h*W|FiqQYopUY{c-t3WVk!4K;Gw@63m>J~8 zUq4G<|Na|L_#f)^Z#PKRuc59@1T*}SBB_K=jPj_Ij+sGj{8tCHKSQVg=7aJHs zTN9)HE9uZ!Fr)qp(>-R8TmNO}|Em4|o@l7@?{BF;`@uN#e-!@}LlhAMKgBcza}=NM zg^59K{2q_rt*!q|?C<)zEPveigXyxfzsFiPhW#;DwXqoWLGVHHQy>Pp@zc$7wEH`< ze;AXg{L>-@hd}OzfZjICj_hX*WrKvgM1?LiM0PU zbm}bsQU8}5swJ3F-v&OW_9t<){Yl5^#2~l+r@nHTc7Nf0bLA6(Dti2HQ>kxov;F93>f`xE$PD!rc=`2KG71T)ItfRFm)i9v4s;DL9>>GV%} zP?djbe`o0@YU{sn3Z?G>cKrT!Pwe?46j6wKmR|VbPtVZyf6aPAJ`t%Z?eF$e9Z@^> z{r8;_dp`aU*2!hX>T)5`!8QIJ*>lDtJ1&eJJX5?xBUkv#^S}h->zH#Q-6z` zqQieYL#4k&r~Y>SAJ|jkr%*eUd8Nw#utE2_@_sShV+OhLS8g6vMTcJt`mS;3?bSMbLzO?q&wBf>QTB(um){?o z9y;`jJ@?YT&BBsZI{XjR_h6Z9Q?qIcWHl1VynODLGr($W9Ay2CBAr@ zB8FL!TmQ=z4cC5u+@2vHFdNJK&wk*}`gbM;%j)l5QC&ocf2aBIe4awb%=rE&U0z)< zgWUMO{{oVLH{%Q`ZD#CA9w;1EECA9G$Gw@U1q3{rc-1uJxRz9t> zf1$z`f64fl_;&s~gItO@?n}3me#GhOJV+h0%)U{|{@VzfS&{uoaGVlQD4x5y(zy6?6>+Ha7P4ju^5{EX)A{nLVPQ2ViN68T+^w1V#6 zJ;stMRP-eviT$#fI!YmyC(7S@?W534{SI~*-+9|C!jE=PVSZr78tUKfSxrP{%Je7w zukHFb+Wz{wl?c7qD%$??ebY)5(K*^*#<#6R`sP*&)n4Zi_(!%4dQpe}!1rWN%5)Xs z7k}AG7%$lP##gOq{N2Wn(0K`+gJ5^ab$8c2uCxD-w7;dsr|G3d-Url*WqG+jQx@S>eBd=|JPb#ZPppq!~S>m@y~wI zOu#Q`sPJ3q@eS+O_P;BpY1Lx zA*z8tIn+k`JpvGL7H z;)@k}{cE`J^Lk%j-@VbXF@H`~&AwM~#{zSs> z=k~uoeu(l)4|{zS(*vLV;+Z;1A!gT<_}Je_U5*Omd&r+hw$-i=aqS(1?^qwk|Gqx| zyYZ3#F&_i-Fc1Jk9Uve6J^rcho#o$tRsN>DLHU0|Ej%Vng^zp>>BetWRoTCZY&S$- zpbnrn3`F|*UV;o_xcFW^`QJWGEvlMC*Nm!;MY)HyTG5M?2q-PW5DSI=??hMUp(nc5aGchMYwlhj?i8B; z6dIl&#;NsT%n$YHkLP7DLH`XmD|@MZ-6V?r-;E!9H2G&8e)HCZ--*}98D%}}KcL6w zc@a#&f4)ok`0n^Wc6O67y7>PjjZ#>bB3)Zczo)K^gs*j%lsazb(~&AqT!0C;l@k|9R;Te8?KL zH)z+7pHA%`)3H90U(JI+yART>KhI0yc^Q}wa0-2T^E?m`eJ01y;d9<8<@8tVYX9;4 zkHF)${Y{0BatG3lzoWXee|Vw3{B`4BdfC{%I((l05pm%A55*V%72%`&f&G6?nrfy0 zl#^t*v48gqJpUstDY`zB>4A^+nUMa^sVm=OF4gPr#;;j&DX&k^yqODs58;O#`2LUe z`kyF%4V4P29=QD(UH&^n^PfUJ9QwzJ|3+h#|9;fxKj;tq`#V(Wpu<0l>L1b5#`mjv zAV_zRZv88ZpVj!!vvl~kQ2&oP-d>-}j1xaq>2JoVf7k2|uj=r5{!3(?o&Wq1ef;yh z6egsqx@gDhMpsQkpD=0`nO3@<-{|*`$gpnZ(E21I-J!n+KK4xn{(Y+bA6XP%`DecLHLnlc zyhaNdZj`^_*Qwq*&&KzEqSxPz|AUJE$Z9>lJN^&0J!PRT{^uT`{yzu4SxJ1a_(!<~ z`@i_J*v9L_xYuWVxs>YPaSr{DRZf4=MIZmu6|i5)!FTWe*qQ!D9SvA_ipl<_1K*4j zzo4GVe?8I_LadN)x6^CNfQv^v@rw?~Uo@{t{cqzP`hOaq{wvk@M|hUw=}U|LeCU{V%fd%{cMXRsJ(3$nQ4bK)TDHtvQEJXZ_b)Il=k~`XBG3 z{AW7w{h!CDKk|R5hu;2f{4tlU|5B&_=j4ACy4azAocI-$fA0AIYhc4Qy7+&I^p803 z{a;j4e~2{_Y}taj8T9O5%H!zpy{#O)1SE()GXjwvzq<8{hwB zeEP3SmiaH_AB7|rBY_LK@vecjboiN6{)kC7zWG1GciX?<@LyN5{fk}ppLsdqXWIDw zuj11m>EFx#Zu}wh4c@=C`R^|L^LtbIn`Psh{}F!h?v$SxU$l&^|LY&5`hSLv@BcbJ z{Wq)jSG@Y)otS(D)e%KF|M-5WcZS)}vnYuX*lwi8wu~ zKhOORS2;bZKhOP+(0z~_|EH~wXK?z*eSCk7p!vU%+{Ebq<))ekj&ui!{mVP57wnuW zzZXMQ^!2YB|A#fF-lWr?=bs0PDgHN0`+MonbI*(38yMA}=bne(9~jl2=bne@KFEzf zxX0!uI((jg9wGeDOXcJ9-1EQz8=vQ%hYs5KJoh|E_d#y_s$*Ndqr>O<=YeNvecD$m zz^A$9{*N5^be?j^#^<@`>2x3D&i}Lj`Jqsk|69+c@^_vi|EqcEh<8Yym(GOve?qnY zyxPBR{Rcd9e5Fo*p8p;p{Ud8+{x5I-yFaT=H2!(+duT?TX#Dfs_jI}sa^vs4;QRhM ze4hUvc$V^iUitVu_g$>E@ppU)IR6$8`7?eL&xTOA^Gq z1F}5zt9jtacaU!Up1oE5+af;v??ybSEq{3adE_}t|9_6P^eb=vdFhk>sQr2Fx&LW@ z)c)4o^QZjQJNRFX=#e~V-KYt#Ph6(|sc0Lu{}0v_wH{UWRO6}88h$8Pkdb~ zif<}>*d5Z1ze4#x1pbiW1ui7?hD=^HzOl~!mp@KVJmAp(xA^qOx(ry40sYayhu)C; z`Zmqf>3>HNJ@LLne}xadAuFpta3L3-*Xu?d{*#0sXjeOGf4`as3tY(mU;L~^6B_F9 zZzcO1wQYR!e}wNYe`omzkD&N3Q~s|Y{0QyOVBRC+o%Q52k91R+`M;5oO%VOj@(1?+ zu5fFbPJebE33PPCze>-rJEYtGwW`ScYMgp*6w`SCT*x=CThdmCzmwwMKfIb9|9?t5 z02lH^@e!sjuY7O^;g>0Ylc@hQG}lr8dEoQBNT!Zbh>fcM#UE$?=gCbDS>NAo|C5sl zKjOgm|E1U8jbHm}RsMVQeubf9(_{5odmT>1(?0kJYsPoPU-5{oy|zU;Lk} z`rp0!ACOLAhc?Aer#SU5{xDz#%unl&glK<`sQz){?;bDhFRID!2G|u6@eaA;jcU&k zesqC2*ncO@fA`b=9En2O0P*ZsFA7~F$2ZNCbnA*aT-qDszW#fqz1)8ANPm#^p1Y!i z@XNG+E+GB=4?EKTKk|J@$&d&a?CKo%jWkJ&<^wPNKk9Sn1zq`fkmhWKeySO@zhBKm zN4ke}PaN|4cRhWyab5AKQOL zCujNx{$h&%z!}w|_-35=@c%O#>hnL+9qfN>;|tdKkGuR|a694C{wT3H~s|&M%B=@|BAL#|HGNpqWET<`0uLpk9ot; z6Vi?UPqm%g|JU3wq@Ec6<@vvnHyrvW>B~R2{>zmARpg+){D<8Tp3N`6^pI}+WlsV9 zGTp{EUw;){p)=; z>;ql=uch=S)+a>q%{cM5tM;E)|BKuH!R>_;boL*ygwo&nN#c$xRsWaL2hT&^aiu)! zs0=(^=^wBCFD?4>Q?`GR%l_sLYRA8jAU+==@l6l>&xgd~N9~^^+YRn`NBIl+{+g?J z{Hsj+Ybeb>5t|c4H?=>NzlMxYw7Vd?Rg(zNAMKLG)yaOe9|6iigah#p85aHpoc~Ip zziR)sn@8neYR%~WSf;{<-645iFca`ELi+nepZ}mY>M0{$5) zzZyZk{_gMJVe?XsGQNBM3C}+d?6UFwb@cJ?#!pcBFY$e3J^bw%b-z9Kgw%LrzrTBo$`H}0K*M@wbs=3hI8G0MrXz$9+i;+A@j;L9iEKggCp&iY1I{?`4T z>fg=@wC|WI|B_|;NB)82eaV=7Qi$<`sNeeOs^SBxm(1Q(1r_1eI;^}Nuz#C9e;@cu zAKCY}4nKq2ACCFgrUyReUjzSN>h|IJ*I!fp8=jRU?xl6Y`25@&bpA_XwEr6T^9Qcq ztHWPZkILU(_WV z_LYkN`g;9u`$|T4DGd0y6=B5aIE@f5Bvuv_1zdg<`Ek{W{|hM5}?Hkd*e?4G(kqA9mG0=e8sLhdRpt z22y`K2g&{a&i#@x{^uV<`=Avy5!^g5U!;A&=-f}|Zkn*S;SL>s4y}I}8gAp89{Ak< z!bt%3jIK*KkoMuZ&0d!)JQk>h%AY^&jofU*Ws$=cRwpPx~<4Y3pA~=YBee z-jI1KcAuR`x;68Rd%y%&iCr8`riG$)m~i}6J6ft9R(|yC%ls`x>8^{*l4*IWPUsX&)QzFLQW+woX@Uy~El-|&}jf8&n%H|p@a(0&t6Dn3E{$j4M65_#!= z%iZ7op~Jt zYj$G#N7Oio7yjp8J$RZ9f4d96_(bu?#pXZs|3bd{Yr7ODKE~gA{^3gh%}-4K@Lbss zdFzbz@@r z<3rn$5~@QW*nf6@pUZczb##*EAdboh@pl=xj#|Cg_2<@9&2L*u1?yTsDpbodL} zN_?z;QCvyWcj?WRpsZUXJ{BM4 z4%$E69{>Du9e!`s{=)p{;!5HVsUz_*4(7JMGJ~j>UU;h$ALAdFsPb=|>VNaKuAKgd zRX=<{`E9%Lq5oeAN79`5DF0g5R`IX!iz|sA?FT*>TmK^d5f8Jby>YD*ALai7)&7g> z-==ck9k1QANbJ!jnf8}I`N_ZyY;31PpI@)TuJ;zCjDIq#P(HFfxbHnI4{mBcSR?F>tAv%O3|Uiymzy|mw7 z*QxR!_V=A!IsLH?XUH#~^TL1R^u`Bt`lp}d(!Y}UiK^Wec`G*kyYv5=^A~E{e~+s2 zcZHh&;5(&q`prgrUf$y&X|DB_se5%9m@4_!WLHtk!_&LX`uhQX9KJ3!})DzR+tN?$( z!qZ3U@Xu83pJ@D75`UwLf3r>b@&DvW_hjhsFIMeO;QKmOPX9lFulxX!{!#8i-n0F- zbvpbihRpw+)OcobCGqzxQ2B59D61ROOG`jm5Y_^nm>5B%av;$PQK+5e;R`~Ma-O}YcMsO|sWr}`hF`d1SFcC3TjIX3?B-3R&Jh$mY(^~d+$5LNyI-`BNr`n&yL zy!4;6W%IvIe0=}4PmWE0#g)WwqRQVu)7bA{_lCe|)uYU=?GbhM;4)5-T>oa2OKiD0zpw6++SpO2GKkR=6xBo6q z66k*|_Q3yCt#@kvA;SlJ_#t8)aM&Go!0$SAxo8CW-_~*af0yhae-ZM3WdFiM`or@W z-xrtF6zQooqvQKQI*-sf=KYEQ-S^du?h98;=S6fbuGKmxu{%~~-g)GWlsk)@!3xQf zs4qEOWoKpP6u7U_5A(?{$>1M#?>)fCFU%?+N3MeG{M5-=!ReWKCK+adgb8|9{fnC|@%*ZduE1Xzhb%y9wT{w(LMktrxVL#8|4hr^jpFz?w2(f%OB@P~+8 z+e$EBKnaTXW(m+eX87lX=pM5dAzY9%I)C+&E_}Ry3R6Js+akkf``^G%*`)nbnBlL? z`=>C&Z<+T`VeVEfc7GrF_OkyGuBc3yKR_2g-d}|&QbG85e-&ngkM~z$M)-Jt73LES z-`2T(TIj+zqK*9i4d=`LD``L5&&JnL+QYw~6?t&C5_75e+WZJ(cS$uIa`4!UsVky@qTO4or{(0@U99{Sxy+Xbr^s4M1b%zgrgs>0% z2}6sL1vC5#ODR0e@GlghWMQ#K0NwU0&i>{iUHHr`@&y64?+fqqk|^x_3;UJa*HkdW zeku1i70j?-gzhmvdyIlLg!Ttr*3@E;;6?pJ5YCM!t*)gD-xa(*G?9OTEdSD7cERHvPm(IKSZ(aCy^i%0?lx%;q zpC&hbP>=iiP zAgAO^e?k|&(SEvF?dU_n7B)ptM4MfdM*Z_9BD} zvTDteOkMbr#>()S=gRWg%YMOUTMA~_Ppl`~5W{|9I%bA{u75*I!R$o{7v!G1^0w;2 zcSeSMLuhxpb#MXs$vX3ImjSYTF1fXlVD3xyF;A!Z;-N+suP=_xKd)!Sp2r)$Hq(E2 zTNl3T=BPJ3A=~HdN9@cWmyoL}mlw#xBPsvjnB~>3^YOP*_{qN)zlk?|FTUJlj4pij zdH)Hb(0W-u^F9a8`eVYI(tf~mmp5%P>0!tIe6Kd3_c_k3muvnZULiOAnRKx(d@DXw z4?icv$LoMQ!*^l(SbLSa&P%8~MA%s({&7tcH0u(=1^La<-y7+|cklhuevwHs{qg#3 zyp{pVzb!tAUmB?+m~(%X=i;+Eg1P#+(!S}(>ImjHPLub;N9qV>FG9E=?^ts4tGe)Q z+91Pcs&$G(G>^$?Ki*#xwqRLzsj$*xN%u~IdDFVs^mhJLvA>TueBo*>p45eJ#s~5Z zfsL|!;q|wi`D0CID$ib}`r}T&#phi_--~n}zQu3xPO4u_%0Gdd{1%_zRoXLjuU{~G z5$pyz>QJpzUHCdJk#7h;BIDN`zPb-fd-yINBA9u9UTeS9j3FXI%=`25Ic%In;p6fr zJY|T*@rLhx^X;a(@a3!eL%e&I^{NLZu>I`z3kM(AEc>ebVKizim{Z;)d%jUsm?t&1 zIHjZfeV|!m!R$q_8|0ebCePA^?u5=y(mulwSqyqY(I~ zhQ$-R;bo zO$0OQ-@u(s1T*U2V)`w!7a?4bsUuGAqYK|68Lc9`Mdl9~KD&LjzrIXgp(mOM=1-~p z$@VItW9CVtRD3>3;UhkU(j(tDpCWyTy$IogJaj=)LtXeXdHx1bsEXcxn5R@SirUY_ zn6Fean$C$aZ>i)=Iw!{brEpFY!R$o{7vwV+Pb<=ekJp!Cil}w1r2XvtfqATK6DG`O zjlA51)&*)}^%sOT+xeHK7oAZ3c53=RLKnWSwUzyZ^dIm_fBt)#2xiQ43DPk$(qn** znUNmT>6qDzU^mFOmjCgYE_}UI{xz%0_~m&ZiGubbS1(3?itnf)n2{dC#|**z4DXjq z?NJ{cGxxuh(h8N=#;I*BjyHS*R%Sk{3ttwkAH)=S!Wllh{=J^=$(WV@qxrc_J7E%I z9*^Ikc`L*Z(>}YA9aJ9DF|!xJZjc#!_YBpA?;X{C32&A8SK80czuZsk4Bs&7F9=cj zhHGgzyY8#}i~I40@0cYm?5H83mAC0|RXTMJ}s0vlk&;knjDrv8~R2lkbpk2$x9vb$pb=XUFfTQ)GGyeqL8F@1kx7gq0=Q^QE8F z70mDUi@hIj_#Qs=#JRfg@%k`K8290ISe)%scYYX^6pPRK!x`S&`^KKjx0n47yFm_X zbK4)f@V(Gp<_}}Pw4XbCr&IfY@xx0K1ar!%@;pFuPMO`|=kl6=Z!Aj?%wB|W;eMl@ z-_54*HF1yc)Tpb2c?MlPYfKdA#9k+V_ifI{VF6@f-PA+HbLyKkWKAzq;t8J<|9=&}WuGr=qYK|qTEB(KI40BI z|5f-_URrXmE_{DqBf}T@KMvnp$s4uptLt~k@P$A9zqMaxhh^Jz_OsSUqWF!db(!Lc zUuXS+^cT39)_5f5{K4yEAdOmyNAnN)0`mEO)4S-x$NmdU5#={go*x7IGDN@M=$L&O z&>mzz24;M}u^$7o7a?4bx7NJ>G+p>wsqxjw9@+lmb#$EN-_NT2joPDAZ28fN+Ao5} zXM#H#S-iiCykEStkzn>BgbQ-$-R(E&!naF(UmCZ`@XfNqXMbNVOpgr@H#xa}NUz(* z;&nI5`=!;}2q42}jEX86E7mb3v%#2ymql4Gbk&Y|l$W3L$74(n1QLG0p0o) zg>$Gr@0K8bFBmDGR^yb^47LdJclxeoqUMrC`Gn|il_&;2P5pU|6UFR%sSKxnz$(-p zH11CnwWrg1F2z;Vugi*N>Js9w?`wy(`?T2}_cpm*%#r+zJ(kHkx zMo;eWJ&=5m*FP!~J|mIF<44%xGyg~7^Y?Ek(${&1&z*lGtG?;r%pX{v*))YPM%m#D zsClNy7mx>j;nZj6k8Qt6`JU= zzol|?mTkYVNBDSuJ+@^>^+N3L=iXm*y_8yP>ad}K#^HzHl;||tCntuov zNBBe_zVKn*zW?ml@WFomyW0w8FG9RRzL$4j8(sQ)bOp7qR#9K4vR_z*5A6a- zwjUGH-@kVYVeG0ZMv=dR7*SQ6I+e1++f_v#r9YF_y=y^+;c*Wyg54lzfAVe%o&A>6 z_*LL)JAVBc@!8L7{|DGFG|>>uUW9N#2Hx-Xh%S7?dr|$izz$y|&hTwZQu(9qxiLW) zO{XCqUz^v~;+UI`6T~ZIoj%GJP#gVNu1cKAY*;e6p!Z(t}k6t!# zxr{`(Am=r_g7?=bQ@%_trSwAkJAjPI@rAFV^2Im0ohTYbg}4VHULof;yQxqYzhWT8 z$DrEw{tq7E<8dP{3p*;jVX8bA*T=SBtnoD(@5MK+NALvf2KiLC>Tl@m7u-hW^Yym< z0#o$%li{=5e-+uUq*ZOSu_hNhp$^dJ}1a)D(744JX;T_3;dY16tjD2W}2pRlRhYOycWG4VB}^` z8I?i3Nimat!QA>+ntCos)bX==KX^L{+ilk*>v+Vh73*5Txjsc*P-P4TtrA2YIK`ljZj zMUYB$a2Q~MYfxezi=P2nL2<>y{1|>4xiCXK9Bi-YYVA;R4*wS zJ~Phn-CRZ0@2>fPm=Ekk`)zi8LHKQ zUg2x4!Yz8rc<>5ejU@R&@_V9`o$s8>`xjjV`vyM`Sclg9w4T(zsP-=qGxhPy^M;uG z)_)-esP?%(HMV`UN0n>X*QiwCtH+|kE|KJ=JGNa_J2@et%=-Gz(fFd#FEJXvaGc>= zsKOC)?Qb8QhpMi_{?UM`1Gimoc=P&$)e{q&cU0*Q^KWO-_=LYxLNt8-?D*{Wh1&nu z9ll%8E>Zg_x$T5-y2H0LtwAF1&*%1ENUBcx!x6qnoZ+jj))R5>&v$QU)lR4&d(Zr9zrXF+9I>0{qP(lw=*VM-RG7|-=p5rvDI;he z7M;7vZNG!H57qjA%)JME6-5{KKLi2+fy9D>BCOQV0|*2GU3#Q>5k(ZsjSvXZLI?;V zx)c>eB`6At%2h#{O0a@huA+iih#kRl#fpt!dr%+cJ+pIucXx+fvU&9Xf8Wh#a_-Ky z@18kxrtIu2<=<+${uYt_SvBaPbt55C=@0q+tig0f*K?8M&ZPZlJ$f#^hc+Z#43JGL z9tUR(O;5J}OKE#7lAe5z!y1+@qO`xhWO0PS^06u#Jl~%y+6rbd8 zfAYOGxtR8UA#UXNu1&4~X@V9H|I3FZ1@wT3R~r;8cKbi%kN($E{iAJ)cypDqo9JYJ zKFrT=@(K4dhtR$c{VDPX$Lr|`9)o{C{ypWZza<~OpOUjDYVT3{0_lXF|0I_Jf4&Wx z{>~c1<;OH>2+qPe$(LY0q&TF`SG&K`lX<$ge|9(fzeJ3HX$h;pB`Hnh_dAc^D^DkG9<$S8mm!aqD^6U@WuRU;5BM%>! zACXt+4vu&D#I$gHCu@EVdZ^9u7IWkJ*bbS=KOnb%HNJs6eRqgldyh-x{B|cee6avN zJRddry!)@@_V~^mj!{By*TN5bcA^!;!@oq{+xn^GE7tt;?M3sO^ zgZ_LOdc}9SaebW+@sJ<={n7-=OlicZx`pcvA{+CrJRbc*Z>&kHY%jN!Av@>x1_g1jq{z#=e(h=Jsb-wyT2R-D+ zcW5Q?o#gNtGyWOh+8o6P?y!72(yuD><2yS>e03eZ_&?-3a78#i*d65XCueLTz9Z@f zGiCo>C&&JxGnM|Taza4r`2)|-YJEyO()g{4K1YLJG59(gUVQUBKmE0Og81q=`V&|E zv-G`y?GN>DkH*m7U7yE~NA50CGzR(-e_qXDF`TRCne?k4U@J4Gj_tq;{ee33f|GV&3%D*l?>*{d&3*xg{S1f&@$J4hzHAM2QRc}DQN7(fJxX+3MZa$>%wbDPI>eyfOnsE9HN?&}pv%K;H=?dBUrdOLw zz7j2cpOyKemXp5X+Hic^M*KVJ3%;I*9?bUBUt|aQmo6#E`Q2gxe64Bxo?J}(KRq%k z@K4`|G2b}PXAzXXuuJ%tamyy;_|>1=525tUMk|f3Z~5y_=R-X&%KZe4EyC8H4L$(; z=Ifb#rT$7eeK&Ld?JxPdI{Hh58B zBeln!_mcgc;poqrLgVDr^e=Y@X}FH-xmX{z)6 z#{fP#Z;M<^`@ay?xc-cEQ%>zx#80xBg&%$A3s?Zszbs=lSa|EMG(J z|BHW-V59!f%QX&haBPUQ=w{xUdyQNA_nK>epKzF0`UV`?itJ$*+lSMlHr z(jT}$UFAvfh2Qgqm*lvkp3oBM=Q{uN)%ACir8rQ|;yNovd*g%jr&0q)3DJ1OjW5&l zg|r>o_c@>cfW{|K`6jRL?!P}UnvQk#-?x?S!nJ-o&Aa4YzewA@Ufb@Fs9#weVX*w7 zOY>XZ`2+cP;hp54UHY@G_t)Pr8hu>e6-=IJ70zIE`@kJN->o17U z*!J)6HM@RWBR~CR5TALrqd&2*VtlcGNq<-O=&{F-@4g=?|GM~M7333J{x|(aIHj{$ z_8xknJw7gn{d3MIQG3fR^nQd%g%|A4yfK{q@ZGV*I#o~M%ZQ=JaQ^M5@=XplXwu+y zlp`yj7_d$1FT#8%f1g@S{so0A9g_&)Tg3A?n|$6)Tz}Eaj}Q5|65^2$_^_nV^UbIQ zm2Z*H_x0zi>-rO4{}j=czaM2S^4DM2N?!kWZylv4<3?})MyF5zik?j|06yu#!dcwqcpw?MzNpE(NZv-D1BXg(VN5R zZx%maHP7>=@9ozrKExZipeCU===at|TNXo_CjTs3}_`AXTpj3fKA1~};(3&}T-^@nx_)N_#YFZ@mrAM}Uqc|Tocx$SQ)w=Wm% zruMmfxqugQaX9_$=&sVy>guf@Y}fn?(hui{)bq!sO>R5W&9|HR-XZ@i2046*kbI}i zQGCWYZ~Jm9_$n)I=m%Vo&>#4pn0R=+d?k#_3v0pT|AKm{Md_&M(e;OPh2GcKx^=%CAGQ|h%g-<0r1qPLIDFAt z{q-m3EtQLD{||0oE@Z!r_kn}TH-pau{e64IV*CBI9h(0BOr`P5gIs61EgWA8p7XMv z_;S?73a3BV9rW1!;m_`u>01i@asGWn`oGq$=f5HOmi?+Y5(B;VcOBa$+MT#Q_#vS; zaNgCd^~aKLH}frLzSGxI`(vn+zUIu;qu&cY2M1e@VV?G`@a!k^P

    vn(r%})2` zkNY3x^nKi$zWKkh-`T9{)nU_j%^ed)NxsaJ)p?P=?@;|&oR^a1Gwuk-mwb+;rSCd! zU!va#`hi{`vo!sUduZOfk}r$-puc_>Q~o$THOUtb$@df2pUwRdT+)_phH?KXx6d;@ zTb&hye?q^VvmQCcoxTe=e_TR*rb~a(W#RPq#^Wj-#8)}aMd{b$H>!B#U*rSNPPBq} z==bvcad!JCTT9>HsQeJ;JLxNyhvU<~+l=d)e_zOa0|&eD{<7 z;x4{eNIuw~?q9af_397$0T(3rz<={;rH@L!DDxqGbIHHNhdcT+?+mBETuo27F1`nC z)l=gqgZK~+z9COly58^k%({m3{PN*cf$xJS0{DI@BRinQwEqiHhUXmoT|kZ&$?@am zjBnb_2gF&vow&7|JAdr{ENX9wy-4FA>HT{w)?NPkYpeBNMN(8c8qY;=s4ZW5M8%6{ zs@+uT+3Kw5`YXO-%DIwnxt6}C8RTCsR=!srZLA2#mn`3Ad-Ly9u0M-`s(yv^bI8;$ z-Tvmx`{G*37t{FuE62BA;_$@-_~iTraxv}yLIl?RozQd{@%@YvR(BBwwt8e0WZd>*D=| zu;mBzSLv6FZ2K$G?C-csseE(snfF#ue_H)n=YxHLA2OSN7%Zno(_6{(-OPO1d!qK1 zChI7DU3`g{o7Ib5nKoU*&1|o|AKUf9q#l3M)l+BrJzxEc($^g2q;D)FU(oZ_ z%Oi>p{?Dm-fJ{k)S7C>*#@AhC=Z{m=@n|2->qPS}4Ry|9J`hfS7zcrLOkSP)$K%{T z9+bYi{{C2ze!rjoJ|q7e9q#ZYLh|YT1mH_~SlvI`Z_b&qhmyz_21m~>edm3tzZ}+| z!TDnYy+0mz@mZ_>nf@N(e1rB!kpA@i(YRsvp)!9&m=Eu79g^kS28tx;q+6tk*Z&3CAL60M zE-!EIC;19sf82jy&86~fG$@EQB;Pwc&IS1Zd|~Sc;Di3^^gO1Q4T*#6kv zjqUkSupiRbApKcUC;!Gn@@?UMT=UNyoYIy*KjbankPkdN(MkbFm@Mymbe-M*%&Q`2 zU)26-5}%pt@I^O-OWz`{KgT*oa7tVDIn(Q3@;zIf6>vj;#V_@=pRX?0{7dRV@+mGp z@lZIvpz#sKJH34H9}b!NWpD)e%)fqH;+H=LpC;?4j{agH`B1+S+WXxJ=7aq~PdZ-~ zM`W_R=d!`SOTHNE5B2+#NPosChtGUCoc?C>bF5g2+8@{7z~fF(FAU-{_yFkdr#|P{ z-Np4#>pwX-r7hbn^QLbQAM}RwfAs2sm8AaGYURgUvVP#= zvmObjKcug&zh|#jd@&wp8^mYuU4ie7kGjp0d~uC0bv>o;7)O7`#)|PF9ihbM1naY$ z@qhVz0QC6r!47rY`JD0d@sND?@^i}Ay%C_5lYW(RtGfsXwE>vJbT1PAjG(@Q;=Wf0)+Q6^=JeTsX<>HHlc29_ zJA8=%zPZ)ZJ|-3`k%^<@f@0?MN=&v`oVU{Z2p1mv&WnE`!m=M{ay7w*p&iDT0_l_ELWZ;A8z=zl+k> z#TN_7H-_Ku!FwLK9Q0?g{-7Uhhcx&Hw!i#f|A?Re>$aBkH`&pj`BXUlJ;&o9FwPX$ z{pn1ve?~fDJLCfXkD>D;v{eb+_$zY^FV>+d=8&sJfIc#7W- zhz0OHRmodF_}~hqKa^w8%i@VD-n>=STZ76E=ntF+)?IduU;aI{nD~kuKJyuW{pozu z>#BSjJ>acB>)b*5Lp=Dzt}V8I*$n-0{$2Jg*`JFq5t485e5EJ7{->ue>$=+AmKoc;1k#{w0$SK>B|_{D)iI z>ARWpZ|*!wUzh%3A^GOq;Gci>^o4zaAJWkHmgY`)T=JE2`hxE&;uA9+{h2TL>+dto zKmWnw*L44ael5fY@j-7$|7#Zh_hMUrr>gr#{a|3R5b>)VzC=jAp#I&kr?^;gZt%FE^-BZQ8{QVv4MSuOhtBqevv{d&gx_k3S^T{ec&fn#MesEn#J$}@^ z*I(e*|6=5l{au}sAP|6So{5yEG>N(77^cUCw=1q ze2-}T8$s!-_pc%Spf|_`{G)*7%iB(V)}4PNpGWO256-9Z*Tolo$zOjuU){=_zB|12 zzclVQLc2syN5)Bxf5!GT9nQH#@?~rKyDyvk-!&=Xk!m^W(3ivURq3kukWX>lQZC={ zd?84GS$qJ}`M1$??fIp0m=FG?*6+k;Ief8@d)eW^=E1QSLi?0$0z>D-(5og8uX*#CBI{V?U}I_1KoVk z-?K}|zsz;`5+V6!V0@T1J`w&I?WUmgh5o?3YgtJT**?PjyBJ?Gob+e9_^j>W^tZeb z`#F9O1=p#<&kf_{yq^NSf&aVq@7y8v7iIff&i?sPnjb{Wcl2lM@aMz#sZ0jJdyM9} z-umB`4&HnN`vO0t!9Tz`?4!GeOTK(9f7GG*Ei4ybJS5-uL%bZgZpSg+c<2Y)A;AUt zW!IPO=f5*FzE7!mieK;OFZyaY{RR2wFZlUy{5s{Yg7~r+)L{9?{)wLFgJ^$D{(*M5 z!Qm4-!|_EMD?ORjz3KZAj~_=o^uriQVel_(-#e|X-9Kq*`g^%Pm2WP-SV+FL%%}V3 z{pW;BU!5=I`xd*U{VmY=ez=J8?*d1E=4;{f_fPrs^qv3XFZJC159#{@=`Zf$ON8Y6 zr|FAyg}i51kG*a__~#GFzr+_h`m{ce&-VhrT*43AIjfYoSq5Y;(R|a z9+D6BXI+0yd0tA?PoW>qu1Ntt$U!I6v-{Vu1Jbw0sZ{}D~^}ac~)hC@6GXHNdYd%vQuZ;>AOSA zA5GWNoGMMLi?1(He$_1X*WcIL{NBTOo)Xv@F8nz^w-HNJ`3C#PcE~LLVX)l$=}`Io z&*b<&_`f*~Y5en(&im7e0KReGsuP)fKD5u{b-d*p>VJrbeeq#|qJEVQ=lOmADijPx3>wnD&1mN_d>Eo`3QFN4)vb{R{F1ZS<@v?itSg-S7D8@1EgazM$_P4P*U9Usin358qZ&fD79P+}PtI&+{3s z-=8Aq$GpQS-^9EAe2;5<$@ZJ}eUif|Dt*eE{~qZJ&ikUT32A?IIenqOL>lR($VuN= z0N+)7=O)X4I=_5Uk^E!Fw-^8Imw&fiNn@HeJNegq&p-c4KKJ)~t}tob<*8Lfaawh< z$?8czY*eo<3J#|Ue8;kc){ALfU!XV0u8({y-)}sk{Prv4{Jk63kbXPYAiE zmWnVrz95}`(0qWKvq(}o@kBK$hq}}Ed!;;6ea|;e-}j+Us#5=*{O4Vq6jSk&t{$|B z`qye~*2cg5Kzy;|XnsPvzI%Q`T)$*i4N-h$4Us1wL%ZfD{EK<;oyzQHiYx1C+J9ON zv5izFd1JI5qvQ3(;0WmN;{k&_rmWf%T#y&%sy}4^;4XjBzkBCiN(Wc|jqdi>UsU^k56W5NRR(7T{>kHJ6R#ZI z{~5eL{7mn@Ssf)`4*QqQ?Egw%qV#>*$-m-5e?Cm{Wb%3O9Syzw7|eW#NBZ$$Ns-CF z43>pUD_!K)AL=ic&7d6~bW$M}lJ8NJ6IVs}3Q8PCyM*hf(2r*)TFK%FgXMxqw-5dJ z4o69UTOIwGd&222h;JRYkBsTc{(|_RS7_#>F>T&;^Pzt53q9YmdOCcGkbFP1Rr$%f z-)n!@bN_+3TaAms^;u0xVel{T8&gKTC;6h9{cWZEk#OnH+8a)Pm|q!oh70TcM$i+s zLxKz2zsWwflUsktziViGd*b8jVqgmUzmLN4)qsC#uKXOXJDuY#PKU7i+xyz1KS{oP zO@Fi3lYepLk9bJFp#Fotl{wwZX}@Li4H+zVuDaOs{xtIM^)smay(cB9zv#!|^w$E< ziTF7*^!Mo|FCWqo+aZyzkaNbak?&U=Q9oEu`m^qJ_{1lQuPUDiQulu!Ws%;g9)NN; zpA=$JePHAyI*`igGpTwXr|%!%c?PY&dSv}T*WbB!{^;qyhyDb;pBKH#`964z`A}np z#P{D#=6;gPU;X*Q-|QEWZ_3jj?DNi>3=YzyJ zZ~JIC_{y1I1?dXewfVN1?);1T!5A7pnRq^xzM-e=CJ~Y^sQvND9Ce=PnxmJ$&>JU* zSkmW#@BE&xwxIVvto{z4l?bQ5-PbD)z5f8;JxvHze(3d3@WB3%{yVPU@|IhFs2^0? zLw3E|Nnhi$aD4bq1?&vhJ%sO*aK1+RVLPP3KfrhKH?Msl`O+Gy``*p)Awhr`Bg+c?th5| z@YP$b2uudKjMFz!6aktoSM#`3@ZtKNooL122*~>?pSn!iUxf7s|9n8!54Jh!YkuLc zziaq>CdZd+O};>R z{XVqq0=MH|j{U;67$=R-N6`#zE{8JS1Op&Ihse5x$ZV)tDQ6S)Q%V3iJkfQ-@WbNWK``AJVtc2J&O; zQba~0b>Gpi{q>j8NS)i{OFYQ+13i87IA6!t=h%A&=?~`t|Kh_Ne|76GdvDY}KAXnB zSoNqg1Xlx;;N2>-VBbK_|AVl^FPD?nUubki_hF2PJh{44}hL< z~0h3erhzC=jA>O2p>ak5u`XQ2Oz#}^0LANb&> z`wq)}LfYSE&L5~>y-)g!lmEkFee18kOs#xd!{x8pPWfRR|EpFmLqFIKY48th|M}4Y z_V{sZNB;f37Uho(DIyckKfVjcSBd*uQO@GL+qhk4)>P>mq(5*$p7`N4&D`|^q;Jp0 z#P?8&n9AixJb-ViR=%aAsC-~<7y>j~R@LIe@;x^GmYFhr6Po`UM|`nGRg!$s@BQ_s z^Pzkb+Wdcoy%e{#P37FMe80AP&GUVBr0@9kq`!w9{fQsK@jcp`Ike{=tC&x0JUXAw z{n7Rt9`$PeKzV9r~Nlm7&`C~Z!;W=Qmn%W;1o5JNA=J!UtE_Lp;b$ZN|`qQ5;l>S2P-|eYl z$*lhNDH0+1@-e~AsGuZ;E;YoA}zG4C?KKmcZr+?q2^cB+IqYhv6U^x91 zmva71@!DUqUqRyr7o@JgEeG-*_S4@3G(I-|n8PQ23dh&3y5h5L_Ljd*x!(_S5dz5>IZtdpVjP*_ICPe;}1${{J7YdmgE!v z`FHr>|5)8eh`MZmX)IqK{k=UuKX$bCN9~{QK2G)15vk%juHVN3_^#9H_ucMSc5E*6 zmcMsgtm2dN4(J(y0T2!Q>~r5q_WaMAx&DXzyY*GFgbN)$^N_#(bUrInal~%%`WMu% z(EqHbBlH6nG;RQDsekDB*|D^|)zlaawGZ++n zmu)?`-rfI)_U|jyzY%Zf*q``sIKEzeRsI#4{$`?nQ2*%t8y53{bMINtw3B>?*uR*2 zqV^uwlm6na^o@n&d+j7{@A3Y8Inj>mfAO`757)kt09FOC0845=!*PE+T#{`S{jSMB@u=s&QkdfP|i zx&J`-JJ1`X&Uf9(OFx!;85-Xds=q{yYDqrh@V~>S`)zPR>U^7PywzFqnHpbdoW@U{ z=J3V;CBE|Xr`wzb3@{txz-Ap0|lox6z&<=k1cVPe6 z4w=b6P>=cjg(080{a*>^j~dsJ|D*hoTq=d*6HS!8#us>>eGOp z2W9`k^A4Yx5>9_J8gqWv-jBlfIb-?CKRai3(}?8!O^EGz;k+w6_9v*~Ld#m&KNNS) zk_gGSBt`MT&g_%Xzebh4@j>?ISiCxN@hK;@m-^HDC$|uv>Eg3Ey+919=MUrqOVeL+ zTp-8ec<@77`~&=LjotS6`zZVi=a17bC;Pj#inxW_A4ZjM=^He@E|<&S1luv}A6$@n z{FOVKcJWK!rnQOhVrTq8JS5*EoQ|gUeBo0(zvOu62V9U5{*ldc>nZR5>CV4p{QR;V z)lV(r>&E#pn(D8=ZdKKZOg>*4%CT17_8Z1^h_e+z5TC*4fxP{yRQvf`F{dw{U#45s zzPzo9==+DNFNv!De0~2QJ=0>^|LKz}%!hUwM~gf8`CxhDHw-=i{(0WcI!mSgN|*FrpC9pMyq^x`hxH28B~9Hu)4_n zP4Su4{Pmalo0o4F=L4N@I>vqK<;N|RT23u0oHnY+m}T@crj46aR8Umd%_t}wH!-(x zT;5b;QeIKp+|i>82aTIr)Xf-^J7L1*xueGG@l!_|E#;n5XHM-iE_Xs6ouV*r>a+<( zQ;kvixs&X(jHV6e+L3Z&(X_%zd85@<5X?4ai>3ZRZF8p;O)i>Pa9R6KM$4(=CXJnt zH)g`PvH3-9`xj20R?y9GcId3_Fp8Mn+q)QaJvxIsF54J0ZPKXB7Dgs%Ag^#t?x;Lt z*6h|sUSZ+n!WO|;g?YIX`VH$_Sg7{wCWX;*)P!-D<>yT($Sa)MmbOhUykJ~W{*cK< zdGf~P0mhiAZTk)DW=za0${jOqLSE0yNo|EmuE|q-7LJ{2jJyP(uKgmpMftoVVd)F< zEo94)r|hntmex7>{DAF$I(?s3E>?Tx2S&8Rc{xKy!ty!W>?pH zMaP{c_V-s*Xqu zSNcn(c8>c!D7?p8@?Kpb1K#Hq?~~`G0G=pqlVQ8$eY~=Wyi?Z>c)z#o-MT^sEZ~Cd z-?7tFKfZ>aFyH&CowfIp0KU%kL81$w$AV6q0=O zJ3;{qxFC-|ZBd3F-}AEnn-=Rj#kc3zN*?<=Fq$^H@<&@~rmpqdyV3o*)-Tewuh+KA zYsm#%kZ;{s)XI-9Lw>)RmUt^w-;v)5cju3}wM8;*Wg0ha=H=Ns%DetthIc(e{tvbx zrF}8_2QJ9yc^BmR@zpXEU+gcHf8}>d-F#~wQs>V&wu_MA;MLyibtNA6^{p?}daQ02 zA;Y{4YCV2J7a;={a6wLdal}SHKKXr1xy0^P=_|jp>E>%o`iu8*^2Zh`FXVdU-P(4j zMft_eHzH**CH{V6wz1MG- z?$y_CwY=L)c6irEYsagr9httXo}SsiV(TJ%tR%Ud22{PZ6ik=SihM@s=rMSn(IHSMEsz z^eONHF38L7c_P(Me>>Kz1EO10y;#l@AX{sc?d&DdoP^7NWVZ0Gm+eyPCe3Le!{%0s zCwg-YA;X>=wI08vhL8aZxF9!8y>65rpM3vVF2?)p|Hz))>Fa(ES-y*0k@t}0yU3pR zkZBzYxFDZqeJ`LWX5UN`KOZ<$}|K3v%~sJ3jE^yK#l$v#Kfo7sQunPw#P10AEJO zMnZ-lz8GzjAuQkP7v1)WAK%N*u>PtaoiC#e@lXJt*|w38A&9S(w#g8dZ|Sp@PVwVw zLGPc)B{s{=S2>x!hshty`it4Jp&jrZjM1FZk3zEkMB5`2p6XGF>Qzp9FZolYZ%M0$ zLIx~ISI8S%71#3Pnv7R6S2OT$}{)=Rx>Ye5Z~9IS+o84Qsww1S`w9%f05bJ?f+afi zknN|~i&P%mL**-lcEd?Ok5(4Nv|WbGfExc{P=3q_K1W**;_G?iytn=MBjE~hGvGJ;Yp!2O9=Ul(!j7maIyAQU+ zgH*-)+Of~9vnq)KS9%Jvo#UrC+e^DEUC1jUT_Fb!d!nwN{;V~M&)BQ{iyY^r`{xAt ze=tQ~b@*i5vTCGHSNlCKD?YCFiY!0e$E&Ly$+yzFAyM(36Re9`x- z3K_!knba{S0~T;W?(2Ezdq4fj@k?^Sc%DwS{+#;DJ(PY@AJI+K>~MPr+Syg#FKDK= zmpxuh$RLM>$^FHnbRdN_QocgmY|Kont!F($$5X%pF32nYUVfe* zU*9GweG{K4`%`>Q`=~`tb$)qGx%B7jskOt0Biedaj(7jvt-b3(e21G1y4{aYjt`Pc zjK`yd<;!}J^g#i9#oMY08NerAAYD-i%hz*do7H}Na(sqd;yi9djuUa`Us?Z?x)L{% zVN&q(FP7$Cpj#@Z*F3i|teC>&NHzUw(Z5hW~3aU~rlrUuj(3 zQIyAx`0=^#-;YnuBZ+-%|J>JE539eserZ?Rk1qkfuY&c5YfI_JXK8%y{loHgX?bHE zKfc}vl>QPIDn9v~)ZIQ$qvr{7o)laY^%JZkf1Cd~LCB!zhpB%n`%C zcJI+yo$1I2TTKW8R29LkS_!esi>94k|QK`jhqV%Y|ju4RFQ9nfr{bllg zv1U|I&|*we?NW{wm^UJ8Qb!RP+cDWbHYax!F^aU>M4(ev?!4xiD~ zpRYCf9XFpoj{&axJ~c69mk z{+0QM@X(GsoW+R zBbiT9JVk{gFVq6{EO&l#?Bjm#Cv>@mc59w0_Wau4-ap#RUw`tsgIj;!&gc8l#<%=U z&pX}zrhOKj)>WSXR0jVb_iZno>W{SN$KEkpR=|b8__Qv?l)h)AiqH7_TB5l>pX`@* z^F0+XKk?8{o$?|&p{BU_VP`!unF@1Wzz2C;N`^hYUbnxy*UIpg-P~zcNHU1Krr@#H(U63NZG&wtdy-~M#Ig0qj#XZ37E{Yeg==tcdRD;z%L3&__$*}RCxS9MLc zFM0ey{kg=Kunzg-gsj`$ zd>CI^rV+I(O=aX(L-Z37{nLO;+S_|{ZO`_|33o6|SH zy0X;0Jb!mt1^Kd>!@PfpeQD^g-WP12`Zy*A1Q+D(_jM@n~etgx(c=<{y$ft84eV4al`|Is*f0>-nNZ+sCty;y8Z&ep> z`bM%UroSremlCge^G7Cse@lEFj_<>r=U?sSgMZ%ggW{W=uFg|dLB2Bn-mtjUTYeNb zXS+P$&u3`*JM{L1#cn?2k1tP=wGttIDO2`b+`eM^JDJPj_>zcyo;3Tv5Iy-lL5x4u z?JvsvWwLzw`m|*pzCCJ>DVfUtz?apbVthIW_%M%|l~Cmh?2K`e{sr8P_jW9G^TGe^ z;r!e7Z>7J|3i7RBKPURCau$4R;TO4m0uG%I+|6cu>s$W55C2y)$3C>6W5x8hIP1wIMU&iSb;|uy;Daz&8x#9ft%a`r`(2s9r zQ!ii1zswgM7LIS}kc_YW_^#IU7wPox>Mwp_IKC=PhJ5eGH+r;Je`WtNpLJ025-*WSzeEXBzANam`L3YLThxUhc#ZcRS!awWvhVuOL;q}ct{ttY6SbyNl=vpzp zAtxyRoH$h-2fil5xqj7L`Tg?vo}B*qcYgW_Ay=I<-?#pk zhjy_(#J{%uZzXum&)o1SVU zUA>h4%#*$L_aDp;d{#L7d!y}jd4BrKn&agw`5*aW|B&y+$-lhp$9G9hul+^r7mnmy z=W2lr>i@fh->0-zdHdJSU&wl$7q0why799OethW~Us(nDqHi%rQ^f)QatizB_`+~} zvn%a5=*M>s_aDIiip`4IUnlNAHJf<(44xlEGz!P}_6yBD{ssAWD7P=cm({ake9a4$ z{=}_bK0V!a|DvxSxa4rATYq>ze-`(TuYmunAm0z%4=#p!{ma=r4~WVA($(3XAu{;~ zIFEh1t*3u?Irl$Xxhe;Mub@}O^cUxOIx(MB8edoEGXTaCeh>22A71O{)*sS${4vVE zfG?wW#rU>tQRy4k{PV%TIp1(R^aMX*eJiHFKXX+& zT3Y{AwaZn!NIQD{8GJjlF8#%i?{@Zo;LGY)F}}ky+5X~Q|5CG@=L-fa5^_uHAKJS4 z4DO#i{JmFyr4{4@M{J9iuO9Q^xgqp~^aU4W<~uVN`te=N{m;-}LH~;BuOoBle0XjX z#FxdOkX=%8O5A+KA4Tmw(%An+yQy@_$f+3LCQjez&EEX`9LFa<_kaEYy+NKadh(NQ zKBVswZhwHUq=I~7S%2nWZ~iSRCw<{xAXk=*yxz?R|D4%Um2cpSoLw>frJ(z8|Eri?&*9e-yk23yVm@3hGGR?~}gJz%^ zl|OCL_~b@=?d(ZoCabwr&MBl*)4VCT`W5nm1i*8#446EQhN{x+HskU}(bP60FBy3W zU&NmEWnvypQB#z6&a|R}X+^)@S< z2PPAwfR3b#NmIy^TD#jnK_^U}Jbqe%eLubFJfl>4woRUfrVElvE9^(}@Tj52+Aghm z)*DEgt7qgTa?YW%BRy$;BFxp(P0lrR<>bQg$=P)BC)3@jJ0rY%{PFw}b=;&Y@#m)NBw1NfATM9 zs4`9-VhvU0hw|ELOrnf`bCnzmP5a6fTAHz6Hb$v>fr=GE|L!@;4ZJs8JUd+!%u2`Z zN!hUHgq!@n-KLx_p|!EUx)m2y*TS{E%zVvrFYt_ zUXK3a%%|&5j?Z@M@3gB`I+z0^o?B_f^S{C0qkKq?+kTVAY3J2F;{CS?Yfh8jhe{4G zNBMTbZaRIh6j6h&E|+06e}r7}?f*1(md6EI=}NDd2O~B{)khPLar*w6V;^Duq9pk6 z{V21GDu*rJFO$!2u)KO~Em{61$4_GZx5x{$!vIHr;yi!*>q_IF-TJGWq4bCEXz^vl zp`6M1O50zy*6beZdWj+_i=4bUmpJjzW7

    s4JQIpfIXyCd>k?q$xW8)i}dP1EP!&v;1)V^lS9GwG)){XyTI znyPs}@E*zrnuo@H|0C$V75Dl=ZC;&{o!;$t9_KwD^ajRN?=7n%$3G{>7xVbt4(rM1 zbyIz8a$jq>zy9R-d$;{nsjT!DE%W+6%!`Tnbz#|ZUK{s&UeE*h8V`N@Q@{BopQ8Eq z&9kavH(^}h&u7*2@;#f*>C62;IKgUsS6myOPey>lmx%9|i7-0oNQI(IUH4|ctz*SWLL ziKv2IE@78{Oqd;#u&Y1e{pIMeeTVi6k!tgkWQ(}%u%g_{C*%#AIq~wz6M9dcMyr6RN&f!CPXYYJIq5=W^GRy4NOsyXI4R zh}KbOl5#(#hm?`##|jyCY1^Ys>3Axa%ofMm;TCcya(^T9SRq5u0&d9s=MTN&$6vR; zDyd@AmETqT&ipA;$w19hseJ24*P_sUBk|O!lDvm0%gJw@SVffeIo1wI{nNh16e`uA z?etz=0d1Gzn0#utm5}}QJ=P9k`CCt(cb6akAm)!=d365L-p2|Vg81XTjukS1KT51J zfZwETGJroq=aM04f!-l^9ZWpz$8RyeG2`g`v7W~Y8G`tWP0}|7@MjUL4B*e8Z8Cu0 zpmWI(w16A(rIxF1^5w6p{Eu-^jn4_PAF~zdj{^8J+7J%~*iTj#@lr_g)4o|0z#nf< z=|chhv9_cS3PB6FA**Hg+ULhVh38ilGgUb)`yr|dXMPWQHPe%StI{PC(%vtwZ-?RM z5dqDYEAymWmdv2~7R^7R)(#&&>2`0srsqiS{$cs6yfAWsAHQs$$;IM!q-$`aqT6fKlf&3fo+DORot~OuQ z)~EP>A2fuJAz%SFIIfW$z*}&9 zBOyc3e2wA++Mhzue2w~TfE#jJdy~eE0f;GrZ6&{c6QlElD`G< zQwZd5N&FQ4SN^Z^>mTQ*|1WQ0|KI=U`~~fZkHQGjzaM`*tC5f)h(AJef6DN`^3U)2 z*$_Ye&2tpLaLw=O_CL^njC3bMoAzFNg8s`|H4-ue@msAa{V4pe{8O$t=MO*re!CQZ z?6C4b%Kn{x^x`*(w-41HFE#A&*qOAy%YLrE&YK>8JfO-iBi|4*ERypRPo*&dOhT7-R`KP_$El-D$f0X5GyrE%-2m8`t zuKT(CNwqz8nnB;SGDN{!Y90Qw5!FBCZ_&yScA&%k7H~s;w)H&U`C-qVsg6!`RQ8|S z##{d{Z~o9oW74Nw*j{<8@EmSMYGr~5JJw+wRremVb?Nxx-y zo%rQ^X-E%s^&|g-8*)nePrmaz<$a`%jrLadpFwVpiri%VA&r_Y@>(U4+Cqjiss4s* zODX5qbg#?#HKlzcPWH>l-|@b+g$%7~@%aYO`6vV};D-G4fq4->{TFX%{$j;1=dX0P z-#_B{$3-o=76r5qOVa526xNbImF01yCe24mp+Qf@7pqP4zfypI!u>qbOKrF4TrvbL z;D)R>wbg5W{FiQE{>o|`zMMbO?LT+WCE{c+LXHEYu$k%)V388`V%DH%cND(q8B1hT3;&<$)Pj9;38;(8Xwf5HMtC2m( z`vc?rv%S1)9`LUJw%NO09zVAK=go(PlKzjFzjF!mC*B)u@2c}ldv>=+B2?uCYuTkK z;)99Kx{SZNGo8lePZzXuw#P0>5u?s<*5&@-(hgwt{64(N z<0TCo5FmB_&!^rq&yRl(@h9G^p5!;DhU3ThIh}t1kL$p9>A;_s)6XWweU-;=h!lJO zG?t48eYBtWFU0MdUqyLCkFXmWF!d_G&OJ%73|hxk{eij_Q1NIZalCG`u*1^oN? z{gvq31Jwrp|D6_Zar`e@Jh`}|E=V`Xlb-tf6UiUns`QrN=cCW(;j8HvAPeicSZihak>Pz!5gk$Jm*d~ z|8Al9W&e5fvT8|w!Tr$ShSd3kzAsq2zv8z}SNQ_`AMpEnxG&g+&W&}QKk@Oxb$G(wQ^;^Y4e_l*54iPvQI+Zxlh2+p^LTzgjQEYa9DZ?C#rTaoRer?fz>j!?H-I1UCJqRY&^zR|L$BE1_tpL97~)S1 zbNJ&G0dPU=SRHGkNEQV4Ne#A zck0&{BxL^0=kb>qKa;+M{QsF%1m-t1ulDCZj>ccgWrPv}@Ac{PlitYVE-;@wu0NK? ztze#N=#@`*gs4LGR`;^foZm=(KfQqYVgEnQpuLVu72CM}AZGjXZ_~!V1T~r32S|NO3M z|JWL@|M`a7zwssNzS0=5XLZgO9FO}7;?Lp@2Fqu+f9DxLj{0*qS&i=D=--^{&;Kkv zcaRJ8pZrd}HvT!$PH~ElRlNds-ktpt?5CpqVogJak|8DNWaBPu% zPW)J``TqLHdlMsg$M1)D^^D^?YVRMwe$sFA=4%571js1IM_6w8abBt0evD7l9ueX< z>HQAOUu#|$j=$<=#V=;(@D-FeiQC1A^{PJ)>HqUQ-k<#v^x!$zwF3Pc92d=Bmn-?R zSpRtc=vJ~H%f&CQ563^0=XZfUFx>54*r|xeA!~WU- zFP86z^mgb^8JmHr`;qUb$p!ka+k^E#*<1fi)+vH#)xlF3{_BE}mQuv|W@%>KSe0o%`RF27n#BL1@-esNPce!RaC)A+Y@JqP&$ z_Mg^_?P`k37Y1_$3Elor$XHe)-#^jcAB)KG=jS;5@sRvwjTBGfDa8YhW4WG>`akUa z`0if+UkwKYNaSzGS+BpJ;kKWwkE8aH-w?kUarmv9{q--udoLH*&)3|ZHNVQSB;xS`^gut>SR{zo@;}9-#mKulWC5wq%GJ zBpiR{Q0C|F1N__kCZ7=LRCvp|wcPw8_D1bJYIP+2w|Dd}ZVksju&v_P?O#t9*ncO^ zFUZ%K%oilUjeHz!b;=qyKiZEAsr-s=aQNdP`So%N92Zvg+7p1%Os*}?k1o!&c4xcIHx!s$QAezMuG#`t>_&>#9A;@sZJ21tO!aqyqVo;xBc z^?yk7pTA1`Ki4V0%%%SP&FKATxs2fJZA$aEAN{><=>PZ6)c#@pX8~Ua*IWFbI#0Om z$NDU4@3CPo+0WoA$@llg?f(4o{e8LMeC;|Z9&?|!{yd-Cx#myGuR?!oINlf)uKr`# zS98XJMxI|?B>4?}{();L|8{idABczK51N0VnASSCGi!4Vf%| zpF7r`za^jb{|&|uRHORa1upwv=Fk628Kn~~u%Gq({6+Vly-@yg|6vASKg#u0>~C;< zkN`K1KkwUf54!b_`87V3{{O<1>c=26_hn?g8q)VlOFwg?xeIbcyXqzX7+_ zx4(~CtoffC$^PSVkUTHuUH<%S|MuFy-cO6;Z?f2axLpta4>ow)U**-GIlGBsby?Bu z!>w|Do_e^>j*p`D&pPW!bav_wVnsOqjoi*n{29S1Z5iQw9UrB}Wfkz&tXI{2p}*@J z=JFiuTFK(y2FuH@*xo?$$65c`>_0mhq<(J{&vgQez^Ww-*eQFE6~5eo4OazJlD++|FdZ^@kbr~i+jWIZ_QUc&@%{Tvt5~g zs`~=}|Em8CK5?m8k}vrWvHf8DN!99gd>Qd~Wv^X`R2aD1Zsw2!3zE%0;y+mqprBjp6D%xIV@k#Q&@6KkzF!PM13W-hOx6^`8YA{|i)p znPVJ&^MP>uLG9m-+$De$DRN!rY>GcF$|5qMY1O1m* z|2H^Ea32eHPO|Gi+02jehm{J+|BQF|#TtM9VOsyy#iQ9DYU2k=8msh;4_5gX_Fq>U z7livd(sEP`xFMe`d#a_>KlaD_BY(;I&(suw@6*Kt_@C11&!=}*oW=%k|5Z=!*Frq_ z%idJ`$F_#^pL+S#?A$Mw`;8yibQ;-@i{D!7uYaBY@f%ss+VkIMdVAxMvkn(}<8fcm zr!JRs1pLrIBhz>M;mCcY{~|~K=DKkF#qTJdM4`9*diM+F&kypDWQ`JsCcx%tul z{f6of=9Lb=`A|51eBT-4IdOT6Gekc>{2#`fiHPDaul=k0pN|i8>F?)%8rLBEaq$bD z#|Yy?AjA3}6MELhFI{&Z>!0JHSKPNQO^(Q7c~|b*CLaBB|COA7DM9o5;`@v70Dd_y zlU$JQIcF#yagn$F^BBLsX}svI|6GjmHvGIelevO~o_|kWcx`>Z{M&Io+0WHZ`D;Dm zZ$CQ!;Nw*J3p)Xa-mXFZy_ehd*k88~91jV*LpuF%|GizL{_CEq^alICJe%x?_@RGu zV>o`jpAFZ=_*-y7kGZY9_gh~5XE~qHVre|T@nOktF#l%uKlK_@{inOD|FguO|B-55 z`x(X0-*x|UDnHjod=6j#^U-W?+QZ-t%heBn@`+y3$V`$!eiE@tg(vU&{6$udMu!fdc}h#qk9!zaHK8D>wg)y-|D1bUFXYwJAw{ zYg0J=BcGZLB76lURxa@J=kwM$`z4fXGdxEfxngnD2$tOjKC!^fU-DVh-tyKU%D*mt z^U-kp$?v0aImMR|El*VZxG(7cO@4nL?fUZgVK;U8#6K)~$bNoj!v4Ac;rh2I|GN0a zW8wHu=KgTl3HS>x^6DS_$FseG-@pL@ayiH2KDVEISAD7f2>cJ{-yylgZ#n)m9+H1q zo|h9C$$k|crw4w$U!@oa1W1G9(^zJu@3)^{V0ZY>2c-X>lOn8|D*sxK`|DrMuP&Dn ze1hsNls`0Us{F{&;*S(ApKuK{}soVSAWRn6K1h&c4FOrZu`ghnJypD4htRq zn@{-j&)lOP_<;YQHck@!t$V0+LA?n2$NO%uH`q6h(mPpSRwlhHqXx7qlN@_$i6$kAD{LtM-oR zIm%~6(|@zM!@T3)zKq%j)spXDEOzv7u|84ngw*Y4IrGG)dh7p9FX8)2C_SsI2(g#j zHR4tETr%GW*&PM@f_$~@@^(`H3HCobc>Kec2T1=e|M~>Baf>lYOGf0 zj|cGASgo!Ae&k<)_mmmH;CzkxXBx*}&gC-V!`7eqaM2)t^-u2iXOqt_sQqFtrSIb~ zzxA}g{&oKOsp@_)9}cclho8$J9{gx;B3{=oj)#QZ8ywN9;kwDv{xkUd5qN%j)?muN zx4ZoRR)79`hI{@0FO?O)ZYR(2_yLSd0cTlLul;}vyt;(_aH1}S0 z5vA=xOBQc{Tz$byw*Sv$`$7HTp0#woEe^l+tiS&E)KVuz{!Kp5)#}fBy#o5v?aBxO z=Xlr;j<57Yt=FagvzZ_Izp$A4ukK0__f1{tX-uAk&WbZm3_mN;{c<#j}bN{<8zM9}{Fh`*?g;Jb)j=RKfp4fdA}L zL!BR-&|e1o)%g9YyhFNpDV?<}{)u#WW69%k{;}lq3)COxk^RJ*Ir+$n`|E!oyD0EK z%H?lV`#wu$ey#_8=>IU{IlmYVs_!qIKQf_?XZ#QNR}z1$xx;V1@c#xs^q#?Yx3=ol zqulym%l_Z)&hA|``F$qwVmSUDuoM0+JCulW7VQ_<&mbQEjQnfhfB=blFE(#`;l(!c z{jbO~Ui-go2HDR&PWcrN$$u4(6Nryc_KfS?Fh-pp?+>CJ!TceJcdm#dy%P2VdGXp# znQr~(bN}sDvLA7;^ZhPsTR8pqXFsEl-@B9j66z1I{~x=m`-<;S&+lL#UTS9z$3bTH zy4y2;bvN5jdc+LuY}V-=8rP@yXe5sIg$R;b2wi&Qu#eBKaQ_`{xMIv`C&gjX#7ti?y~>w z;rI*AW_!?{Uth@fqx;Wc=d1n0`cLQ``S*`w8a8+HWBkCS^!=1XQ4LXVHJ^WnKYu-~ z{fPOXjF%!%y)9?4|FPz)d<{F-=WB&tJqNp1viLXTrPsf@QSxW;_wi7F{ydk;-<+z+ zBjW-5xoy-g@IOKI=P$WkhJH41Rwm&2f7#xtwp(+jKmRoh z2>rtztY$etx8<&5m|y!o=3w@psMq1XJO{g0viUdC;hWrh?D=!BOPu}BcXIx~$T8vy z*1veopZ^NYewuSXNo;)tr?h2{&dksGI*Yenk96U9YDOM)*}+@mEa%mpZ}&gopxEB1 z{qy%OCeZ`SUovVtu{smlxR2SPhgOkp8Kxf3ugm-}3ZtGAPnv)V;C(GXE}M z`>*?{;-5*+kHlJs-+Dcq{@+=t^laAl_J3x!^xBWX9Jh17qP11sFYJOhA0coYflko~2y3XM@-w4OQ4}M9n=+iG3yiTINUj zRhyol#!jjxG8!qpi8uZE<#!q6g8X|Ka~eh7dfG6po{#Gf*4mqO)#(EN=kONT&#d_m zdh##kAIKv8C+a%<@sRwOZ#+>+)yDvm-&*M*nxf*tIfDD!W1PO_*$?g;=WX+N-g#30 zC9Hq6-~XIJ^-r=N=-=8EPX7;T{Uo@~NnHNI&*L$Ru7B7Sj?*RX5Bqg!_}>ANAN!&I zWH8x}x!!3Fng55m^MH?{c>n*91QLo8dJ$v+#efJ$4vZ3R!}UbfPjjg6%@rNhzO`hQBgz=RKUvrnVsizw>$2^CEWM-`X8_1$;{5~ zzMp5GDLXT}Tag_9kWBWsChq&Mg?wLzdLH(V9;fmn-2g}esq>G2ZKCV_UEm*kH~G(y z8u6oi>dh~|>mh$5l@Q=J|400=JLKXHw? z%I{N$OZa~dZ-M>qo3!6G{|o;qkn``)rN#KowaM}K=K4@*{7>+>3g%_N|01UcxVHg7nKgZ z5~-2T8%&lTe6q$hew(-5vbQX!`J-?s&L2*aAML5}BF>~v)G=52No1$$SHMr6Lcg?` z@}FGhN+jSn*nUsfrH{$ycXAAMeANFfss0JS6z30oo}B$xKc)&IX2$)0eRBM<@t;h$|2$D&=@ne= zzAmHL{z%vD3rfe32aggWR7t+veevw(NF`;zv3- z7X?*%ypK|{n z^(yoNpDuO&KX=@G(2KwSQFQYa@UQNA$>8?dn5p=6|A>RDzchT&_R>lA`rClUADB=1 zTV#s6uTk}LV3W7~@4iO$Tv{O0EWEkDYy&a20LoB%yK_!_?E?0=&F)>_V=j->CBasOF-<;~wq>;LQX zTsZ%J_=(@`C!0`Scw8$7J0y_chwRjBnBD(b!1l-Z=LD*M#0BxzJe+|4+LP3Y;6Kgy z{tNXyFwRZU_@}`Kg#EwXw9lSD4Z(l-{$<2hWdAKS#ZBn{f9-Amn>2oWe?jMueSd-1 zd7_@tzn^uu@|(;2xK8J-cy@==e=vS{HQ7Hnyhe=Q{3bbmeVrTZk8zdo!|r}Ukjs0R z->U=rVn1Ex^Nk<$C|`K5>-|6FJpT5@-8BCBVf7flh$P34_27xyK+d+fno`yuHXK%e(NIno3>Wh5&ciQ{cW8odY7qmvCW&mxAy%G zw6lR4?sgXGhL%1_sN+|*{e>PMOg*l%{?fo%HDdhXO7dIdl|RFb;Mes6 ze^~49VLx4h8}hvMPuTB&%hC7;(2J0a{5XGLd*$pO{y*X`ezKb>?eEk0|GJLG9~}JV zx0T~JwDrUPEBn7yzuNJVKUd?w`D0qYadzDPg6j>ezky8X|Nmot_|?e`?y$!X^T3b$ z-!Sz*+r-OnxU&3OIfeZbmEUChp9a8L4t}S|9zV?2_^Xvs`7O^7ccK6Dy|@3|b&@&| z>VJKm8%{Tz+mXmTRjyI~#&EyXY@*uhI@lqBY^tSCy?orq(tipy{!P?=nQx^DKYv%w z+~Ljd*S;T`d6cRTF`kdp4aa@4HvhW^D=v`y)4q(bu`l3;Jc^nQ9$MN{h?JmKxU>rx|4vi%R{a#eI#b{?dt4i%L$LT6|7H z$<)bL6c`;kjGbCEe&U2qXQ@qnjfq7QODB$*%yFZ`82`jh1Ii{&9v90ozQh<`(&@Aj zeT}hW#ugTo7#(ccX`qaaC@Ae~_$QZ5m{>#`Mvdmf=i4cC^wNSU>X<6Um@c04X6-bl ztaNJW6#peXj1GmRrT$Lxzpf<(#a9#*51d+5)YpjR=;_Q+Tu|aC9SbffrgM?bv0S}4 z*Et23mlc!{Wo%2XF}|#5Y>s^vGK^#Qj_!ThCxPpN@x%p)tx!VTT=%IRxV=+=JJ#qh zd1BF|g5pj}kVQ)irjb#`7M2xFify!GLyE>vr43W3_$N*-Ap4X}E-f)ejpqGb=>tcQ zS6nu{pmYq;7fkjS6qj@wI(1@^yb%701!KusVmp#k78Fk@7&mcDX~9`#rT(%~vhJaO z@O#K1O?tPN^>?tTDhC_5{;vNVjbA=pU2Nj#-oiht@`rj0a?@xb(&(Sbr>!_e9VfES z-G2|Cpwh$sd^;!VZ@R^&@0_KJ@+B>Vpn&H@%3q@_4E5D1X=xPn6QQ#maP%J+O@kQe6M3(jx@qlrOhGmFDoD=yuEACHrUM zw|~lS{d<-DVK>Of`F$n&_YMd1xT^KJyT6;q^N5jjb$#;qESR^$eJs*>b4-96^1QOT zSzi3DzjE{YeyJLN_q+&42vArItUOBL3e;?Rm_} z@B7-a75@BBxBY$ls>Uz2c-tT47j{n8{@IKLxpDK%R!)9D_aFXQ@8*wIk>5(h|IMNO zCkv-{yN@X6VhQ={v-iz(@&~_F_P6%q0IK|k_E*jRiTDFs56wRl)rZDEhvSgBb9P?t z(nQ=Ir-6lcuM2<{a!VGgYBHf z=SBM!j41o>(D(y94ja`t5rtlmvp4_U)5#w||5@{&XchUzcJJ~Vs5p%O09cbKw~$#E zz2~YwQGWNx{*V1*|Nos81LpP4w@$)C^sZyoFAkEWR4+{08Nr@5a9uI{8um z-1}b~fcrn`skMKi`(KpbME(PQ$Uj=`-RR_p|MzU-w!c3kwfxp!hqiyR{NJ=#`imF; z8OON!ebrOTAFd)l$}QyjYd+fTIJ{wt3i8U4@0)t~ure3qfN@9O2` zhySmA-_0MYky`s>{6Xi3|07+)6@D$DMgQNUUi=F+`};Ff%OA|}9{&V?p~i_QK4}Gc z_Pon~a`IPvZ`oNVXywxm^Fh-Oycr zqgCV&e5>l2EIxm%|G@3teXAJ@4Wfp zKN#oH`RUPZ&!3{BxjEi?;U&d?I{BCJ_-*$BtT0mTm%mok_=5@f%|Df1O_@XI*YDFg zo7ljAKt9-YMbOEgx5=_|%+dY7cGdW;@4f9G-lWpAnMdb`fAi*;7|Ct{Ik4~%SN|=0 zt7YdMuK7ZPYTqNRO6(e^40lPy^^v^!Q$q)PcR=W9p^{U1n=5Yqy z{^&m^D!+;BKh3RSNZ;a`H#G|NmyT=KqbVX8!=!lUWQ9tN+(1|Ig#o=>CuU0&qiu z8}j;=7r54+fd4gZ{fWPEYWb~CQo}#>)_<<|vi}uY{o`wrTK;eq`LnrO3^}01DF>YV z73@D}Y3)}u#r)RShqiwfy6s_t?=4)OxevC8g{DRlTnZ5)93y5;bu;Lw7-jn!2sOf!@wH4XKjtM9@h9?so&WylT72cjU%!{z{?SzPCs=<7`zPYB zV8cV+*05;4lOOXJZxy@wL&v7p{<#0r?T`NdDmaKH!427G`ikjJev|Kivwm^&`&(6w z-}pn-Gg-`m{+scoN{5~G`ZE!KIb%UKKlM*n{~?R{J8AqrqiXzt1pMYYu0NSa=bs7l zY4!&<;MW&7hk3-$+pHmW~O0r(Zg3P**0T4wLYqJJ zwXYh#mFCSK;pZ1-GM~0B4%I7Q}>Ey@w!_hU}^-r{l{NV)rVuNazQ66>v zLLHpr6`BlQwf1Kxf8I9B&T+l={9vd<)$9*H&*Jl<{x^C26L!}5S8;w_==^nuZ_D%I zueA*h$o2n;spS_uet4w(ds;nxofm&y{rQ)UspXIG^CL&f-(`9WSN|FQbFOy(5=}9` z`Kj{%BjrEq(Q9+O?Eiwk{{N)Z+CP{g{t16|de@7;Muq18ol?s$s<{42FTd-5dCI;1 zXPadg`KvYm@pVoue`IZH{O8ohE8g_7|L2AsR)2+cLb}ez*|G-vNe*5VCpA_?(8xLK6^Kkj?+9duTxFPqgnK#pm|1YilhPtKJ{sxc# zC-R?U`4_cq>Z*TW|2B=>{ZD`Q)bg9We&a~_oA@f;^0NPU&3}A7Qp+!R{`5%sYnEN~ zA20q%<#0gN|BR-XAM?LQ%D;Mj{~x^g8~^C$5A{r~{lh7;f6gtIYyCg`|9NfwjK5cE z`LX`zNbTQs%oNx7C-^_q_`#Xq5gd;HngH?{ocwnO(H67fe_708QMT<+@sl(YXlr>!4|rkFo? z82%k`le_-X?f=i#+V1DSnE#+wenTgx*8Z4(udM$BSsTdy&maG*(|;B)e^9%B^!H0G zKc0(8#E<&LWqgY0_CG4?@9s|inauyBHvZ;2CAIu`E+Y~DDjl5T+11n^kV~q4?s|WV zvCXnGysz0mnqvL{KmU@5KZ`jPZTx@T{tZuU?wWr`{rQ#l{(;b`skOgR#ql@z737XH zFL8~3qWxN}uYWUB%O5$6{mbJfcl{OQ805qAZ|&psf0W;o^zqOBspZFWF^T*K_I1Hi z1nH2)r(bc2lOOiaOn2XZMN`Z#emr#hmB{|MErBfS_0@|`esh~;tGr9|pU{BR+CO|4 z{+S8NFYFF^Yq$F+Ir(A#F<;;SJpMm0wfx4;D%zjj0_(Sjx9fV6li%RyfBR_nU%o-9 zumAZPFK)pPP!Y*qgM zf!6+p2B+5kCcnQZQT?+D?i)w9|B7-Pa_RMRUGqoif3`h<1F-*}mRkNWKi8Ise}~46 zD7YaPH7#+ie+K_hjo){AYWV~F{-4V7hgcEFwyoMMclysV_Me|M|B0rUAMgK3#J>Or z*CgtF$kWH)?Ye&qGymn9{X==FwSSP`UzCVHQT?CKZVlP6+UV<@_Fu*PjgCeI!2UlZ zwfusgD@??n$DEq^|J8qZW5Q)eJNeOmtzL-(D1P72)biuG$VB|*IylEGGgWYcb@t=`eexr)>r`e1J+2*n(F8{~<<0#F4e8W@AZ}D@fiR_;R^J#vBdLQ!E zobt6!`=kED~zAd(b`{Meroy6-wu8MlBoTv;Bo$HDlt7W^|Ozr)F(G>Fs55vDILHPwYWb>LMzIO8awkiHbf8zkE{SBR+TKkKAhqiwr z{%r2nKt56b@orB3Y`*{cv5kBD+<#7L`K`n7XQBILdqey`w7Za(th#xwlOOGGzPA3v zHzKwC;luEk$B|us1vv)U;2WJ|DVyu-+bq%mft*Z zX#Yu6|AQN{_4FHuI_(es60Q73Q_LT%BEQ~$7`g1zPELOGf4(f%>i-K;YkxeKov8o0 zN-ww^4{5T+JKHXH@}vKGQ@NYpKQguacrHE>f1>_pHe*5d8uy56{5-nVvNfEc)jz%q zQ_GL%Iur3{!F+6Q2;F~u_n$-CpT$i@Pi~nW) z{`aC3+yC!F*FVYfZ~yue*Yo?Z{{ve6;~$k;{y>WO7vDB}k(d2{(&kTn7pIm#QdNE~ z7ZofY{N+8@`nMfierv`$u&VzYO)e}4O0&v)`~VEgCl<3ImNEx+LBk}AuOdLMFlcg2Hh&#WF@IH`Ukfom0djSdgKs+d(SK{D@%zW5mS6Du2NL^+5Z-;{R)jwt^EbRfA~oG-@50PVlVzj z(ZS>I$@(XxmLJbwRF*$i^QQsLpG$Z0qyF5l)t|n?)bgYL)cH|=`ZP{Nqg<^(mfzUP z_54&ezkgsC2B_Ko(G>F={Qf|lANA)BRDS?xiE<0Ms5si$X@8X8M-SovJpMm1wf47o z{aZqQjT=#LL$;aw^a?NjecJbT{FkMcU-0~6W%>P3gyl)k{o2gQ5C7kzjlcOOrI?@J zpQiJ}{|hxvMDy_n%U0E2f6a@3xmN!~Q_PR?w?zDT8YiN#KjdvUcXF+tME~I?ZT>wp zIkonW@O#O0ew5!t_7AZlkV7}WJIiVRtgV)vqmSPIpORXB+&?DbUjTz^GGB}D8~tdJ zlOO(np2qJhN-aP7r8+t(A28g-{Sj3o!{X1LT59N&X4;V4Of(N0%YgKxvu&j?~h%j zwO@XJ)%fwAJ)Pg;=ihbvqx{a)!8xAK^TLoN)7!h=-&_8zW#`&S!vz-2afbZW&Xyb>`D)Qq!!~e2Bw_l0uUzouDK~9Gp)u55<{Y56%pFOno ztD)km*+0PVN!IyMf5Ok<|L~tVN%Ft{S^g(2Me_R*Hz9$7;{b#(t?w0-T{&Td7{K3QUXS1K^{)75accXm9f;@TG zj$54eZ@SI0cR5~rej!v=HT#P!Z~MpEHRjRz^I$$rfgFw-EQj}hf0vWr*l5{Xp8QFD zz->fzRYUl%@aCVv_h)D~`LLqd)#|<{@UEJtL-}oo^z&6Z?B5OP|552E*Ek+zfd81r z@{{ZL%yIHpY_aSu1CFj?OYr-ytQ`ME%oASW=AXdnV!b*Z_)9rGa@QI5c?<3T|NWnj zlMI%B9Xkn^jsuUn`9sqxXaD8QBQ*Z^6Y#I)bmPWD^XD@^a>$kx_vQ7oT zkw5U0o4=x);tZUm%7wvzQ@%}(zmW5Te^v7vUEeR8#`Z6(t^DWL=;`(zp=&B$gQbsmG$b&<;n*gkFfK-c_>$@RbQ5iY-Vl>PkIR*ru( z{CuO^|1aeB!rFAUO#=QoCo2B%9(5j+3!NX_*uM3xk*@E5ZQ$>RK8Nzl{J!ax-`(Kn=Cs=dyU_JedYK&G-l5EiWB~$ za~jM8y+nUi-f}oy7swC!^4|Ad&(EU#j=MP1-gRj;bv$37a{Le7t@y=D?*79woE~{u z`8n*r6#085=l|fJGGm_W`w{5>G~oUN_@kBNpLHMef8^$$$LZlqR66(XBso|Hu!S^~+vY`-}SX>7J_p zjQTTLN&Yh%vOQa>`$5#7$DPmh>IrW9?`Wse#lSm-@^R||IEtqC$j%5H!3@uZQT6t z)aL8;(xLkgusi&x@S};Y=hx7F)#UQKj>oTjw^oiH?Wv{pA5KL3tMwmxak}}j@~cGk z54a(HO?sc}v_JSCzCo4Wt2V0Z9jzpP?R%6xt$J?%X~yZ|VRc`YE!6J>PB$B={zkI= zp{UW`i@)X!H-G51%Gtk10{(#s_|L8)f59IuT<;Hu{jbpY{kK<+|B?j!QxfoBQ$_y8 zw{&~l%l_Lme%~FHh=@zh9?ky!bP2a@#*zN&b5i@IRJ-|HUfu z5AX3#z>EKKjXzXgIs30jz`r^H|Cd$d&)mF1ss@2j6X`Av+U&sP0s^xs1FR?hw>6s!7E+@t!FxPRHf2!} z;regbe%z7~uJH$qKcB<*U+rtCO1>;P>5MIsUi4WBVWNzW>$v4d&4K!50JPKXm?!_k~^a zr{Mpmj+;MPN&Z_;RQC-c#r)6<_YHgdS+4hQWBmWLTFU=n|Ih=Kvwye)`_D0M`v-gS zb>VSN*x#&hr?=J(pTPdpiZ6V`=|4gCAETz*{{GpOrs3Ss-3Qyz2ihj{*Lad*xC=T^@Cqj>&Eu%E+!F#j(8n`e`N|GVXG z{|BFLfAB*-|H^6Z^?UIDQEL8ZSeiPn|G~=fV?Bwv$X$M?p`AU^J^phOr$?Sq>B;i1 zKkDVt&hm@)_ic^e_fX~d?*XUA|0vQm{^ye9hu=e1)VR{s|AGI{;rbu;k5-bu-G%D9 z1(*~5<3B;A!_M#@e@9L~TFqA`YyV*HE<@9^vYLerwZFms^Z3qcB5;a8qrsa@h@(m zjuYVZ894tp+#f3t3)MQ5lopqbEj6w&PBY3T z7M1!-i~Aa##*~##EuG@OB-iLrSX%1uB>(GLQc!$FLGi$;MMaJry`4FV3rhS`i%JSE zD4tka;5<$jA7?wK;PSG9l2XS3x^ywdmlci8vCngk>i`|yJGD2ai_l?!yBwalOLE9v z6C-!66f!OnNt6@FZ$j7HRx>NBXZYIl?OZe2KhF7D?PSzd{qUWoLS%~S0@wA0enQ|H zO1aEO`AR{9VF^{Q;gjjQQ(T5OC%E%hCqH)X|6M~`(3zVaOM9j#9nTS0H2>!R z{Ok<_z4*sorS=H_ruyNEKP|?;llYwH|KY4^uK1XT)%FTsHz7lMZ57Y%&`rot_J|NB zy+aPicyy}!co*H`jwj*|=FfS>i@)0}=D#N2{^QLjrTsHv{I^oMGJB^Bqx!LSXjE6l z!E*s!DEuvDje4pc$*y*+kOBGx|7s~@xSpp!ERkij~h{E7Ub z!fa@Vi3AX!{i76@VJgMVzUjg&Y-op7{ntX^{`u@5=Aafrh8Z_1ezOn7DQr7i`BP{}3n9bM9%_4Fa0?;B{qs0~9_6QSR1-Si z;&c%_t%V&fDN)<4(_07`@B=qwqt@4a>Baxtmuio|HpTx;^)#3LPdl0H*FWyR-&3;~ z9u$wa>BqdU9W4SBzNkUld&Rdue>}Ab4*!4s6qO&>aOQDjJE{*5PsHDU-o6@M{BGM)?((|n9(VlF*>0YSldB2ijW|#B9C!XZA9KfB{N|1);@|tt zdmnl6FFj518#7h;y=r4M;*Zy#8>s1)_A`2zcIZLnLB{<(O*<^^LiX;HE&`oRJKR9! zSsarge5drc!vPr&r;B`_X@~c}t!C#BcQl0zdvlfkMmst_1^nPQki{Q9TJFVvXB)+D zeWChGTj{nZQ>4f2e;U;{VJdIgRPo4gfjl7jkH2wUI~2Af|8iXahw3Pv>}Hgo!ZwQA z`I}OH3KM#(?N*bzLIz()6*n8!6*AxlZpeM3YEJRuzhs))!~9b54@;B$@%n$WkNBxy zB2H~=hg{;7@ob9AP?$s4gY*mbZ)}HAMRYt_|IjuWLLDgHFYZsLP`5rz*T)#p*ba01 z(Do1F+ZD~f+pkYsJyYL{fBLg(4{P(G`6F3Pgbd)1(%&+GzoKCiAp`i0noWcZiTERw zSB7Ny+noLDPA~q*+loK@weo+fue<#^*hyVq)DPRW`lH!g@}CwNvHC-{U&t$^|6@A7 zqkk~wTvdLMr`MnE?TY5#_FtF#TmvuuNv|vaH><1qN9Pw*zXj;}o88;kp?_a0e^fvE zN?X}s(*x@KL5jr>vNjgaBZ%iO%%rl`2lvyG5pcBxz6MErra7q#@_|73{b7d5>3 z-_z=I=o4(%M#%7VK=H$#;Ey(HBVczizi{cN?clv+4{y%sh^?yF5 z{_$eN4tdv-y$4f$^s-@x6UI}0@)6ZHFB*0zrcL1&s6JY5*x?we00UIthL#$3=-p4X zSK-$TAw#drmH*_gFoX>Fq27f2D`$PF7k}V=wTJPd;x9Q#mfv{)=L6~w%lZ=jaYHY+ zzjmbdM{W9LGC@+8g{WWg`A#kITQ^i~rh% zY7gr&Z+>%)yZpUL{WE8MvU9O}do%9O`(G78hISMWJKDDquejs09(Nxv5&xtwU;o34 zzuPZrkI3`N|8@IkWw`BATi#bYc)p;x(|)7tyW>R{xa0c~S*?)Ypf zEYAMVW!Jgm;cR#Q;Sajwj}oBs_=)&GEnbu5#b5D-+9SA6^&hIj@AN0h?~F@+lj

  • J#e(DyUM!!qTY8&!gzREtW*)YarTjh1X|7Y|x+L~j9AA!F(S6i{o z?L9s^LjeDhqqZMWFe;eD_nKSCH_}b-dhd?S!D#UE@cvielVYEBX$)J0{HB*v??}oY zLk#pzi+y0cZzRsmEBHEpmGbn>9AvV-8HrvqlJ8nNtM{e(Yls1yX1*VZ|AfB(lD@|$ zTW!(zuQ=aVbJnRTgR@Ag$J^(gj_lvPoH?>pIpuU;=W%^JZ8{R8=LH1l+aP_c7#8X5GZSue zi1m~cJJ-ZI+{k&z8?Txe(YjJC|MTu1!ybU}b2r2sKM`oi#BhOc1<&ssc;p|VdflJk z_r`c}wg1!_R6!s<J3LHIfUMc5Ttk1v{H zpOH3VEc*_F*1zV{k0VBE52AHc@^|i@ipK-wV=vJQ^A_B@Z(eH6v6Y;6tGSxu83ZXu zwvf4Z`PZpT`8&Jc`LRQqyqw2SY4QZxp8_}XUzb1oTlk8L&s;wy`7{%+)|A)C|B9H; z_*H!apBU*I^XOBZ*DGI+rlFKUzYeE9udG$uMuXQ9U@ZYw_|Ev!d%x+4+kLmpX2h4tvrJ@P_+JGu0o zIjc2nEzv%SYWlGl+*Z%9`BVNpiChc+1RH0X&&pQ00(@0pWi82PZ<_fAI_&ukbB!TN z)B9@ZU?x7cbEscsye-^NeX%Kd-{Z@)w;EV>a(4ZGXslI&HiRW|R`7G*u09x{sE&D9ZQQ9UA#>&h~KqH{;MqPkdpbJImo7w*#G3~v<>}bJv@9b`p7Dy+0JS37#-Jkv%iQbIe+Jnb4}+7*lrbL%CK@)m*D4CdAP-rFw8(>~jw zJnZc$CQr~U&(n@K7;E}$2eA*5Fw^D?_I1nwW3{O5|20SM+5bNL zzQuFbP^S7y{i*yZ$X=}nrox|obju=if(q!tp0}n%=VfumX!(Va`ENV(Bjyv5cggt? z_8#Hq3HCF|S2l3D)}mzB*O{q|Gt`s9eB()E`^&5iEAM>fK#T_$?^rtWM8M$I7ya9zqF1@{ihb;q7(JpZ3E|Lwhrzw-Rw==tUe^WWaHSnc`$Oa8m%*Ydxo z&U5_hU2?#OOmyYpV)pNQ^>g7+_!Do}W5?S}TVG$g@We*;V7`hEXsRz9I)Gk)Je<7= zde#31c%F5WWworE=J~>pFn@bQdu?lYpX@tVZ=Y;+Xs@64&NQKC#xt20S6X$OpxeON zS_cYLMUe|nL3jPnq7PZ~_S1(69du{9_6p(yfFH8jeMXh=~vD5 zRt~Z0qM`=6;Q4O)H&)3R*8UTh3g?aJo6E^B-|pq)uVk-@%8>4i{&aCA`9&Mbe+zk+ z)3$62yM1Qv8r-A4kus{E`i~>)R0kUhn>p?^3^f zl;wNv2kvu$xqZ;?%9&5Pc6sS8{X95*wikSAJ;58_!x!}JEy(`o zeIu-zW0Ng^>953d*z$k&3ve{9+^mV&GRWE6LH{*i|9?Q~Lxr#MI_1mXzWnhx-!r!? z)xImWy<5Ia?DoJHzW{p4EU){k2R4hJD^D`ae%!A4bwj`xGV|##(BFTef4%*^9^85R z`_)#bzXSQ9p8Y+om;N?=ZE&9-%BQb2CKb}x>YLvor)}Ez?0qS;_3O=QYntdP9O^5c zaqXz?`jht7YM*WEb!L5S+3J*umrTdsqF!VBC$_BQti8RQ$ys0eN!g>NMqXxCUFo}X zUtZ99A;*_iKiTJNuN=W#99~g5**aIXd~9SOZObQ4gO714UwgkMeKX=?jwAZk8Lckw zFNX%@KM+J_Xgu?W;dP#`F?h_1;#ae$fLPudTZIFJ#vUR-ab)o()v z?PO1{;BjF&^n3Wqfn^S{wsZbGxo=pe_ke}x@uvX`K2Lkomn}Y#$(U2-^DmJcbm0lG zN6-t;>;ISVq@M;n+E1;0)D75X+tfFVV=as;&9a%GGbakIj)O(kvMlUpl5ZE$pT`;F zsvP-t6Y`-ycDu|T^6e`Qy=$H<`KG<5jiK%|pDvo0uCo)GpNzg!i0lH7<}7*SdJE%N zE8|5Qv~aK}ysUjpST?Mr94r@p$nTYdr&W%j5#$#2&hc5Hxue)KlxKC^m|`uHUGByV z{tw_TLK-_19}2mJx} zA(N*c>%+>E9<4EXv<^KWD*EgPeM&c2%zUKZfDGwkYuqw2m*t%h-OF!5xQvjuoqo_- z=%*iHBcUzEwua3@zZ^V0Y%a1M?+dz5n(;ZMHt z(%)F{yPVkZ;!U4;bJ)Ny#1D&1e}6V_#^`4|&aLfxW6NiIPBaqwb$v3==D+q#WjXhA z%{?PJoV#e#j5o-*q-}R7bS*lDrj2d}uG}+>7fkGufk}JsQ0NX^^gJ{6rC!eGw&OE& z#e?x92Zejh)BI!cAwV`35TDgQGK{~Izx^rtLH5m?(JyoQzx=qy{G^Nu*lkVfOU^Ur zgqoOlnr{c7iv;aa9*x0`jNRpo`wat`+XJ)a&CG||ucZ7KV|<}wSNsF>^O{f7F8#c^ zTpNtW!YmgznfQkGF&=8p>iZsZGT-Q)}U5p4-|jlZnTxbe;0 zzQZ;k`_>eA=VN%ylubE*?(v=LTlG_5bZJ<9@Vf~%eLmR-{_i*T_OAFC!gUI`)>!~u zxK2yrdJMS!74w~R#+)q192eKGBWEPzh3}mP-+?5)H#+#nM*Kn?9+GWWbDMn1s=?nb z-{etcfvNQQa)=7t`9Q?9*bIxyarbE%&7IB$K|v)8t_`kL^cs9_&)&-(6#?hdT+9X+3MYZG%0 zwd+2OTi{B*^g8=UW0GWyY#wpmX^zJnd5z}CW9psQHRuS<;70y^vWc~jM{xq1q1y`P z#$dU%R!ow^*cn@qQF%)josh5JdC0IT)@zDG&kxvL+-?Hq8empDB=MK& zcjy15z^rzA@u#-8klqRn**<^r_ros}JPWrsf*)Yod((h^RjT7=@WR^V#fz7ncS1g# zvf;@8P%9Z(95y? z!~$o~&aQYaZae4D&Vv)M8C^(>gIVE@_h^@N)9lI0xD}4RxH*&G>pne*@ ziSlRNfj?_8__DxPA}|nnlo@Sm#NV9qnrR>V6*`(I_f-dnvKMZoeNEGO=io7kL*6yZ z=L8)3u=Dsdo?K?^JX>YwS@>TzjSBZFI{^I)XDYKvW%BI?<`yYj#_j<9N`KP(&Cs1~ zi%5&^rjEF18$NiG|1SNi?_Ik0_S+)xyaGDX+GK;)`M~j9@IDWGYaQqc#s}%qvQbrd z+9|szx|b~*fLZkN4E0UM&Mdhp-!<`bGwt0$dvj=SQz5iPnb@{Wo6n=oD!ZwWHuK$1 zr_JuVbR}(lg-bkCK^y-m*|uQxQT|JpYN9-~HMth(@Qtg>CH3G9_PoFLd|OT_=0#HH z-4G7#@1frwtqhp`^cjz^pT07s+kX0nmylt|=XUf={g3_H>PYOQZQEow()sN8bHmR) zV{oC(o9rDaQBV2>NUbebvTXs2!R*{=#lwxWl9ku$F8mO)<3I=X#Ip z2v;ibJaZP`pUwFv=gL<&yle}$i!-kX?|+`F%ztL-`jyt~qkMY-``i^zOl2s)%IO4_ zIh5N9|6R&noMzvJKY_QO3NLFVui4MD z4OuTa{cCsx`7^G6hLJz+9CFOkyc5LSbL4U+I96S0(NFOmu;p_9D0}^fw3T94u0}RL zYb|RjvB#%D(BYAF_W1M%*#K5q9g#2Dym~vlI+*e4Ola0?<2)O=rtwMZW^wv5K|HMl zb-Ck?#;7#pir{Uif-Zqy^0Qlek*TfEhL^RK+U;(y#ug6md)t3xRk%ZIv~IaSeUtHw zGP{ju|2O43I6Xp}k78Rr({F{+Q>|s`UnPF~mzm@F(%Tn72gi}+0}PE1rY~I|wk}=e z&g z(zLdREuZJr@&%#&P0&r8x*EW%p&f9k{=R{8;p5PgcxmU&tZi~1%Y8a_fY-U&u;bmx zyldts_pe@WWmGATbY}Tl?$Z43cAF-esN)4>m$7+Qo~o}%ZhPtB=g2P6gXFjNHWv4w zg%$Wa#BK*}%5A7j+PsZElhR9{n)NI74S85^>6iwLqtQ33 z9lrVneW5y3m-3lCf|MiNE`pwag`95%@2&E;K;HKQ<^<1n?87wUZ!;rXb}hvXNspdy zcqmApmOVF?F@yLrrYu({Vh(1;j1eYJS~Q36TcBg?rV-h!BpXVgp%`>3eNK1zu6bp_ zO~CBJt9n`_GiXB_bFzL8uWLU+DX{zCb;&oi*&ZYNMS})LV#Yuht~}`}OC(2H4ZdtS zBA%37evENKb4&RE$*;#N=QSQ_jj|QF(eRYTSvLLKugbAzHz5xb3(@l)wK~|t(Qzf~ zCI#Oko+tBu>2XCFwl7W_>V?5@=eZjI4JuK zW5jaGZ)eS}EQPqS9i6j_&a{?AWzf%DU})apjwOm2+kGtg>n_F; z7bhFQ#bz59q9ZeY7@D*3LagGw=ixgoesF1O^wO~>)&Ps-mh6zW{+b%S1>Y2V&u(V) zKGGH6xIgF9Z^PeX#uUaqUrPJ03gy$#uYMC3`%3C(plhamvTAj{l}21i^mBM{tM-@P z+KX%{`+V7Q547#dmM0jiW&)Et9%!7o8UK>lt&VId>n>Z~d;Qe$A}L$Q(?I=SM7C6b z=LYILlVz`D07Iv@kw?kd!I5ub^a#=zj%t-t6dm z)#yn5*&}=qxlk~kF>2|&6K%4uI6Tz?zjmT~7qh-M8J^149iEC2OKmbdRl~jU8p))f z;U|?>K^>c^qZ*!B4lixvou7T#__sx-BAYZGN*3!|tv58md$xWi`$Lka)@VMNCcIrk zyTJE0^0DVW+5}&*=LH$*@Rh;0%~!kNt33R^p@ls+BCBsiR*zab=ERSv$KL0f;mns) zqK|=7!C>#9>KC2OH;m1sr$lw8c@cWYh!MicjVETY7fbCZK<-{e8?Nr3V(PesIv%2q ztCpU3V*1iiCnRT^4F6_2YZv{a_n5v@JkYf0o#ww{lbsP|zg@>ck z7blfvK!GxEuq{UUzWjj;Ak!vvkU~ah8rAW$UuDfM0cMUM(F+{iS#en$u~2vc@v? zi|C(;{%k+zL@{SYhR&nkQ_TFjIoaR#9#v-yHZWHKv&v~!AJb0B2_rj!-KBGA>y$no z4ZPAJy7zHvG|S*y<9t6u`)dCx;4%Bff$<9FsiHmk*l2%pK=`CRjigC`>xT_wD&K3o z*aDBF(H|}FM<-`oYAn@z`LU)!6YhI^TnR>XPNV8dCy&Mt*%q3Ltd7=X`@4-Hrv0fH9e02^4*me@kKa3Ov-h)hpAX7ENj`S# zz|T{_*hG6<(1|B zY44+a$W>N5b+=Q8Tdw>qXHt*)^dPjYJ~lAWCd2d4xY|6~7i^EVbk3d%KS=MN3vSyA zv5PNVd_vzpm5y&kq0Jlfz^i2Hdh7uC*a7}O+TI1cs_M-D-zO(m5^e()TWwE5!XQ%*1O*I-qyR`^{)7G%kThx0Muxp zZtQP4U(We9zTDOqPmw=yhwTqAd-B%8yANVVZ{uJ4bJn8U-2EVm<&=NpJK$3~PdKgR zK8kH4yYDT7U+tI949xPy!yj3LoQW+B4h`Rdw-|O;9GuAplU?T8WC>dg`Z>urn$L+&AO0CR>9K24u&tVB zTKqPkJx0EYV(c4@!S(D}h*7WBi02WjCK>9+s?8x*?GN-<_V~@Gttu`cw%#`qm}w*1TrZJ^Ew?_>wQV%ir@Q$o*k zA8^-Wv!VCFmf33~UwLL>Pajl;XOFlWZ?n$qHS1bWiA-~1b=hmcx@cJecJ?Uj>@|a} zy;@&ciO-GPk{jh$EalyF-qo|tc$oOrZZv|ur8$v39}@3ap?$=|$Zo-JH+3H}b1t!> zf?qT%zD0)a4d;t*E&1;Z-+uNt*pm6k1=`bhJK(*oNj&R^UpMiuxo!sU?KU$)TTOdf zAGAW7oVI5IZ!vJ+#Jp9u47PKb=BvfbWy@FicBv0;+#NBn9iOGn;#~220RNwCabM_B zQ|4xQiP_92Tt2!6#0nmN*V`B{yPYT8`OXM^@dW;4 z+TTK-b>{W~-YW)SEAn(R^JnQewP*VXofv82GFKuS6oZ^gykP+`mF28^Kh1Aj;<;W>;(}Ne_gB!+v3lq z|6S(1tFCx{?PG{cB9Dt`6du?NjkzsewdCg-XRK44v7W(L+jEh$(4UD1Na0z!q@jk?Ob6!;~afgZV77V}qFX)Z-XHYJ{I6ci-SV6{lIy7pLTlr%2KB^ab zKL#w~N$oid0Eg&ewc~r&I)&)oC!GuLy12LnJP3w3ysK~eOYc9XEnB}@p%+ZMsa>>L zYSU(v*m;e0D($9f44@mgUD-ERdB(uSz1DqKgZq5&?&DvwX(YIQk~VCd`$8MJ*P7s7 z#g$%>m(46MMij7qrYbhT#=SkaZg3mAx;VbO5bockGUt|6YKDzl!p?@Fr zZ)o4?qx7Ko@yAXZsfkh?%iFn|Ju43KGIl4YF+FpzN?2X@OQ+v^2{6$c~Q6X ztL%+K_U9?K;dsfiTz}>i%dClBQ}^Dh^poG{7wteFwlDSQJjQ`J;b%@hPYf3PpC;Vx zhvs>n0{+Yy7PXQ|TBDN>tZTlyh;PGur~2j(wKn9k_sGTTZ`2QM*RYf}8MT{ElDk{6FApcr4fvUI1@D z;hx=Yuc^Fuk#}!k!(;+W)6&rmMcC9oXD)OnXT|L!7Kb@$ndab{ugK<*-SpZ(_zjyz za5O;&TJH%zVD~#6d7Obf&P0v|eCh2Im~$)UNIW2U`5=3@V|?qzJka0WZd|cq9;9DX zw{6do?}#`H;aPZ)o|F$!w6Omo{fPpXe0rKUX|AdDF*D!LIG0&_B|lGAS{?B!-&Et1 zYqXX~232jgmfQrbRMjzGLWXFcPLq{8xtP7h)}J~zrV#&MVlCann({Je5ZmEfd;aoX z=SHooR-)%lagNF(#JoPjy3uKD!DoFrwNcua|6aLDVpZg#bLd5RqtxEqNp?GbN^zu2YSO_Qw`g~$GuUn>}w z_?Fxx*oZscpU3rH-;&&1uKd1vtm0OJ%bEw+czuTX;Emw*M2>ICL(un$RNs=MKGQPcMwQvVK#q0}V433n5uM(?jy=?qBR!WclQ~*yNbn=Z4S?=#B zcVaql3#Ny-3Z_=yl00mmV(OdsA?quqzPXeu`;g@(34ZztFCSS=Usu!DAo*Zcu}8h+ zp7H4Xsyz$p!3lg5gMTi=rz;(oj$Uc5vDX6kDput_t7Gk78QXEU)=n~63(P>DdDnhE zhCGvAQa%^?d*y2iD|SYCEuDCkRK)^7yT(p|pJOi|^WdN68hD#AXu6Mc;VJKysXmB& z<@;`Wi}8~z=usBgVC2GL3!lZe_v}O_lMi&+)9|%;a6Gub30esp@GY4GZ3K#;4aR3H z@>%>S9#%X_6FB*DmbGE~DC`v^zf-h5nc?+^$vTUpR ztUe;A{^P98tLkr<{&{)jEqtRcE>ySr-y1A{&agHJ4#6N;`U}TO4;*_g0!IiqH0FZE zhi!8}`*eUOZ1M#J>i*3BTD@~@8Y9=Yp-ba@Qv(g8@-JIN&#R!D3fhe_p0X$Ba8C}a z4)NUIAs1rEy7&`ThyO}s9ep7O7dt4K z$knHA-9GBpUhJDVW2lI04%fNXxtEAFZhwaPiS%6)_3B(Z_i3+5!2mn9 zUbdmVcD&n-2NI9?m@A1kQ-a75p6iI`QCoRBTZerw5oj$8?>umkw)K4z-!=2yy_fjz z&P%-i>LuR)-6h_C;S%p>T;l!bF7n>!aN-!`PdJE=I8wwM(82p34|MHmh@j^Zdm4(s zaX;`rsSmt={37sNi(VFuy$2uVau%rWwU<|M{j$vjX9a$Ijj?QAyRBeqQLMAI~SzkDmMJN6Q_3({_;gbr>3wE&hj#eD^cz zev$vka(Es8oGZh3OV2>NvPmQO&BDvknaq{HJjmLx^@Gm6qEA-`ympcLjUIrHlXYh2 z`{>LJ+RLWhN%nru_I%GgbW(6xIp5%FF@LVVrI2}mH=jgtHt;dmE*Xq&8peK#3}D8O z5N94-oom$%nsZ^}rUA?;@Utkl!&Y=*1^FSF3)cJg~@#KM%IUFe^Ec$mppUZ|0>^m zeGTCe;0GLKFz1u~A^-807|SQHS)Jia_{$cV@$1@;qgeY@*eS+eb_)BNG0}X~_FqVE zYyRr&5B59zZ#3RXdM6K^^Ex`JCd-=4`9*epyIE7lHqaWXiNB$)E9eJnaQMK|93NP4 z{p*&mR{pUtcI9Z!WIyqq&)66~_W8>O7Tw4XqjgC6R9L&)P=g;&z6)aS*Xvx}L%Sb( z(%X(=*zwivZN?9%`oh3r+adPapuwNhpRK?{Jf`D=B`=tKu=s4e-*n-_E-##SfA8i3 zw(Z~li+2hB91O2BrhYGf!f%{A*kgQm5%1~U&mTsfM`v0cky5Lpoc#*VG0)4-B+e%2 zTT-n19PZDsR>0g&HiNMfhE?sk@;jXyt5eUtgv_jq&Xn(%J#Wkz1JuD;xn*H^JTk_T zFOGBjXd^KP{Py}-DQh&E17erTFWr`doe5v5eT(x?MH6AkHE33T`9aJnMRRX5)(Jbq z&|uQObn1-&%P*;~8s8E8$9!mP-K_oZZ`|A^-;d_yOt$%tZyi1LxN9H8siWJzSf1C7 zNB+_t@}=j#*n^JG(zSnjfvcQ3k)QPw&I(|D=ugZK3-G1OUNy1Ql+*f#z3+nDa+1mD zQQ5`v4@H1Oc;1SSy6IM8NjGvnHhgBEf#whWo<7G0ST6=zttF4Zqk(P2ZNM*qz1ZJe z#UC24*sZ~3F@HWwR@Ljpw{d7Bu+6vRl**L(mK>0+&NnsI@;xdeI{%&X&0N+a?03P$ zJNCtm2<-KgJGXqjTkhw2_ZGec+PBMnD^czc@6;!=-cP?K(s#i=hxYTFd({*4o%?Zk zV{mFUd+t?7lfS^k8hgv;@_iHUis?fXSwP-L^8AxG0sP62GxrSoe((qBFyj&Ukw3*SyA-dE#NMb-8(V?XfR4_L0AREB>As^3tWdXZCgN$IjE9&;8DR z?D74hyY_LHraSrho`XKa*t+7)f73m2c+WBL3} zKZ=oc;?>v~c=Y{M54*gIzI)t_la0fhsn^(Z(Nz2mvO(W0J~wto4pBwnDyI##7^1kqNByJMQwXBXjCkpyyb-U9+F_ z?%1z&7$5AKRNt|E^Q|R|xL>{6cdVZKEXOyiy@g@;WQ%Cp^!?j=zQj1pOm6ag|)r{sH~InJa6Q z=9^Oe#y9wmklE7JqFc{-d^Juk1L#F_HapI`@9(6`S;KPVR&aeDa_bdzrwdaBJgfE& zgR@lD3j^3@f>UiPzEwVpbnw12Gp%+ZXZU8MWz;r-Tj^kZi(D^D&;9<}JASt5zZLiO z4E3ZTpAqPvmM`Jh0ZYkz2UYb3AZ7}#NyAzZy|7X%Qu2e`bli*@G!+qpf|{G ztNR1UjoaSkcL#sAZ0O1XA$>c>X{(Jk-1>C}hu8kahdT8H`xgu4pB!$lxsK#FblsA% z8bj7$H_?ARuO!!wY!IG@kAz3_SPRfxWi#)K*+W<~7ClVl{3q_U_Njb4dDzOMsDCu|)916=bGe=R)A=of-#YahWe)Kh zu_TphpLNP*^Q^PNrV*x$6EG>bzEX0pC96iK8_>!im-^Jbf9%{aD%y&>ndv%3|~f z{z7Niu~gNUXj6MATtDS9+SFQ;i(la?pZb-*OF7PDw~80=oo;9bM+fkIzGC}66ZqNh z_&Z|cW<>NGT2>e$@iS+Zv&d|}h96$*Inuk_r1+;jgi?zI--V=PZW$0g)tR7^kt z@F^bPBx5tC=n7w~gb$w1v5u`{KjbRnv&Sip-id`B|8e3NoU)2t zS6RibtE^(zH$ywk*czSIfXXcJBbsyLr)r4p7A>DAHbFe9{VR4%r7zS5-P*B7CT7>* zMQ6emU+?&Xp;P?9M-|g{ANgGLPIFGhvX$C#2BsbCm(R#2Je_~pjccmin3A;6A80p) zXW1$L$-QKMDL#@2_K$QTc4%2K{t@XcFAeQOpH$K>;a9la2~Hm(wrUYLElNvSvJyVf z7(7FNTj+Z$c6~GQGlq`Z3?8f5%l;i~48=#pu-%%Gqb;=Aik+b`)ZY3cnAX#-#w9ml8i)z!(&B)m+5rS?rh1;7u|Jnp##cf!HkU zf^GP@3*cSZ>6Gax!0%ST*n4qHopwA#u3|rJ`?bvAmv}zf*0=5&aw)zI!FUVrtJ)p^ zIb~LG-a7F;xn-|{#4IzzqgKw{`}Z~G0q-w>o1^wKXZEZUpBew zN~5lQPF-nEU1`*n_|2)y*pm6xjn$dwrrgOtv4rfy>*?ol>036K7ax879)KrLA`=rZ z>0a&6$KKPu;N$)%_}3o^K##sXs7C24CRYIC=sgH5#9uLtEsQ+>lSMv4H$^=z#w%J=L7+ zoDv^X-B>Y%7)J8wr;KXT<&*f>9x?E(yQ{@l4Y%s0J_SD)hn+=tjB@*1?Mxe{w* z3EyQN@p}Pu<^bq5%A85|rs94(;p+-`pcB5%!gjLfI=#`P9UJy4ICABa@yR=L$@EWk z*-_EK!H!=smz3Ia<<%_oxmRCBus`IZz^2=q4=hz*Lv{ei8_78b9o*jt?hVa2xd`LP zF~`SYXz=UMNuJ|dL++o+`Q>b*SKqcipI!^V|8qAl~+Al zpHY5-I6hU`txtUpy;^gl9Wz;dt%-e59Ej$yXUGR;@(iK>Gq4p>Sr00}_j#$dWLrh1 z1v})&k#FW-nX@W)MrxLIjB_!MWD-A>>8o1b#+)hNmsxAZ&YdH8{SXcgmDfvnyuS}T zDv#HXz@-ZTDY?Q|0K1WhT9IWrf#dn|Z^pOyQ=ty56o;AFT z44fwgSD(9?pkI3`!x^8DO1B*rF3>I51UA|!#bAe1|B|UTqbsH8*{Zx-?}HKqk|7? zZcXe`1lif@&pbk`@Ub@fQ-~ZdBo218FTJ)&@{9Hbhw@_A1KUb)LfK{G-gxwF&c3Vk z>6vxAq9$9P|Lz9s%>4Y)4y_M;9$ZLPGy|t(;N0w)PR!XS&`F9Pmc3%G~FdsmBQl79aNzmL`L z$fQlkj4cV7ks8Y2T?`$Z##OpwCGuhw@?w=EFI<06wMSljqrjFI1)OUtJGly<=~awf zH<{pp;j_q<9x}u8ev9PJG-ys^0p7Il+t&FupSkvYW@8_^iSg^9n;6e-x{2qTfZMj` zFQJ=U{ss=)R!Tt*+UFhHddAs@3Yi7)4tE7eAHgMVdC--rGDSbNVioW$}tz+xE_P%?*=AvsP z-#^wR-;wR|QRGi#4ub5C@Ek_|-l(|>GKKlbkrw1<3-RnN$eFR&IjzVF!DjZ$;AeUd z`mgz`pyqu?wQn4sXOA3uXXuX`mn{F|%furnUj+K{jN+0{9K*(f=jwqa%s57%WBK=+ zp3eOii3mX9nuR15rqRWQm%*u>m(%)$lNcP>R#g*cxKVt|#9gvK!r&9!2#0ZGOY2O=mT}Y=w;!$U#_w|)UB8d-^SD2O z-hC82)U#KhnCmI6IkvGb1wQQf8|f4EFAF?ohyI&9B%=lqi}9Dv7d19!yclQnA@E>7 zPk|0h+)np$|3Pk~G~#1}=j?J3%1D>SC@1~eL^;kr-x&OJ(tBt^G#2Dt{t)X$GcN&7 z6Th^VSP0##Klj@)M3TFrw=lL$9`ktF0)o@n(bRJ__29dGF*egaCxyU?vgv%Ua`IE@ zD!m*5&rOt*u4x8$5nzl0qw%`{^KfF4H1^5Af0^GUyOpa;dom8tepjqaaD5p2;;S=> zKLa-PUv|qu=3uf1knNAl4^;P3H(9wmG4Ft<99enP_0=f$A=NwY;Q81{TecJ5@_5g@ z@5yrnt;srPW!Kp66f5BRk+wo3vYA}i?(Pe=F1>S6*g_u)Hruyt^q&J;*WBh}?|Sx0 zyjzL9(0C}0iQE*4_^&4Bo=uFmWTCsxxX@Xjv-h=ShE@Q#;>E{l?gcNFlEb>iIm>({ zb+4jsl~33RZh3fIG4Lr?M*{GbWnJL41q&u)yGw~v|^O+Z$SSNs?9Li*`??tADK z<_q8acz1pB^(24ME;AqdR6=*i4<}t_{PO!hUH2X3&lzFwu~rOg3I2;B$7iDXxX!#t zgU)UE?Dg^r))eJqyc-{5iTt8Vw>I1bJ!>s!9lp`@r8^qdf@kgNKg>6oOLsOPFUil8 zRrxIZ#y+^plf+u2FCEix8Xl>qt`hh-ZD~Qn8dFbNyZpiFOGh=VrY*%Z5%1CdG-ZW9 zFD!a)Gh>q$`n9>HhJIX!`4+e*r%C0_;M30@$9l%)3*4tJ9ot~z)?R~VO`uNlX(VG2U(0zQH98ZdYEOZQ z*}bxE@QdtStf3!ks~bn5JN=B8pO}#OsaB)69?ikO=8VNZdd48(_Y|JS*yoKLy1Y9* z8$6AvZftPyBwXpw^*0nEpSv>+d>iKRw zxOBf`4ZQMM#$V;--&LRE{%`L29_7?W_q+Ve>bF(rK)zuf*;qq6`Ly#G-^Hd?H_qp| zfM@)MjmlTIE~(w^j6=Mrx=}PKJH*bpW5-C;TmDL|$Ese@+&3v3#)gp0iss8VRNeUT zYUF#qqd$>F!xQ{zj~h6kto%#1jI{H0ss6OkUCH%LscuY5s;`MQ0`%_ybn;8^-h-x{ zvAUy=u>xNS|Kcv_(7V1CrXQLI#;{#v^JD|Ne3tW(5z<4S2R`|hMC-~AqF52_hm$`C zoSPgSk_~qer@(r)$y1dHZELN)6vO& z8ivkCJ_@EI9vXD%@5A=*Z~u?`_oSzP8~f3}cSa=f*CqP5$gDSXt&eK_G_Br_F3@RLgY~kdf^1J=MlzCIB(@lZsI+Hv#ROZ3U7yE&ir!Rt+pL*zd zRxk2Kw*H;y&bwH9mu)VehhpSf;LWDX$=wUD#=(PZW!due$ZO?nli#ul-rk9g`806= zyE22ziqb5z|5kY6OpeBB)ML|sX6OO>s@zO>;;X)k*b%j*xvH6isI6=4w(z5xwyJ37 zP05n3b{e;F*89_$_^#Y`kWq1D4SLM9^AEHko$Qs9Et51x;z57t?|I)esk)K5UE@wG zvsOOR_%zO~r+xLWll8Yp8C#tf)q)&y%iW}M$eK3JoZ6|pso+6zFm5@GHF>Hk@1^V> z%65}E@Tl~4Q7>bZe4g)N;@pz;L2u)uJj{k}86SLf&?x!Bpiy^Bo@PvTF(x6#q>ZsC z2VV!kCArs+2~O!3cU*?jx8(k`(VsE!Lo0nb$v75)-{f&K?K5T-v~R`=zH!Hj_8V!x zv5oNo2GjmZ+DtX=r&gXae2@|PZ{}4R0~e2NjEmY8-<)JzwV%S}pUwpTFqRJgL@Dnb z>)EU^We9HOdI4WnWzKnItJCHL?2T537Brvpw%ZC#sO^)`!n?GcT+dtYb(UqDda^4` zJqg;#4xwjy;ICD*0uE0?FQUiZ=;7s$^^|4b=3B3Qu+G@O-R&vczhlR;Y7Au0HZcZ8 zmcRX8#$X*XFCCk9f%y#^*4S1%8xA46_7N{B*;QnvwjV~ud2QA#o?V+&d|J*o`Os7| zxK2lYsq6&mU+LIYQO2<8cJYX@sgCN*hJV{b4!PT_8}qTJ(w639Px))z@w*edN_L>+ zn|I9gJXY~{=(&%XEB;S&%?SOKx%xvxxc1O}@YLN&I27-B@z+M*z46O_WSsoUx#y}l z7usj+{TbYkCMWWP3wJbBrKYs6qt7KguUfdJp`1S7OFtuy-$OKP8G5(u_^+j#8a6r4 zvv{|X=OQbmGP1M&NxQG|AG>*m?D>b*6Mj!TkFNizxE`b5{h?nwzx|SHZ+)GZ)YsRY zzN)`I`jz{B@p1PIc~`$LO71^>R}5Q_KBob<^quB7qj{FT!=`L+V~oer|3wR*7R?yh z(njCz#y+nHKk8?Y_j4C+YM8rlY{LR<@I?!A8}7z_w#U`&XKHAR>7Vk4rH1M~_un`7 zwq5hRKKlE|%ewPNZ}!U~GvDa0-=({Bo{;t#n>7@4v2tQ)KLYdTy%FrCFuHquDY<{3 zZQ^Ds=Q74c_?I?u)qIjMY;VJU3{Y3toS#0n?v5AmYv4cg5mUBV`!a`2vDZ`i-tlYf zcKsSUyD7!%*WmdnVk0znwb<92h$&0xecO*~@R#__-ruw+2|v;$&w6n4Q|Q1Q??QtQ z&v}NjxtRl=De3AfFqpn>=IZvXps&6mo0I$26iAA%;d#F4o4u#ZPyc$v_&9MBP1IKe z%`Jq6wlGGlNgf%+dbZXE4_I15_r#pIu@+{%H7zuz7d+hU!NWceKM>P={QM2X8ofND zL)ZEHX5gzzZLeW`T_22iCFRN$$LB1ZcTW4iis6f7{t+*D?f=eBA32Lsh-YGcQeoBI zh`%h14I1ScKgkirv`P+ZuCH}i?|7CFZxcFyVPhlzE`Mt*r#gLzdEj@)bC$6Oy7Gnj zv7N;0l3_8wf1LanuMp#2ft;<$@z+Wp+-dI9YO(32Drb&j?&kmxzETrgQ-NMqxr69| zzvKIDxz;grUIy>u#OSSge9e>F!QZ|siAiUir1$s18=KW9d}-=`XQzLc<~}EgV~*+! zYQ{}|9@F1aXC6oYwU(ti1&ESt%g+tW<@iq|qslKQFS4$= zoK2!}0ry{_uhY>1y8jIKBawCG;4=?=&I6CqOF`=JgWH4bM~#$PjrfWiMW@%TKsMp0 zh?Z72D({-=Fk|WPpj$qh^7A;4N_A;2ll+~AQ?xPOp3p zn5C~}lWF{A=Scrv3})$#Gm1xI4zK&u+*{Z{=#BP=!EFg`&o}j_R@TyPs%ba1y^weF zmu>@|RAY1b-VfHIqo24~Tgmvc_fw{Xj?$*u{&%h}Jw=Ae_WD$)(4ncwuZ zr%TDNyFR4+`sQCQY+T2`3xnFva@tRpUuO^c%y~11$4Z6{P55vlHSlm1`^ex~olz>8 zFP$C72d}wIQ&F%ZQX`pa=XS0Vo>^lc)?9fKJF4K{Eu)YH$RfpM8Cc-8Vsvw8F8*NZ zDa}l&RqkrZ#MrG?M-ed!4-;G5#2P4Pk&&l9{m7X2*FLPW${CX7V_z*i&zzxMa%Kp7 zeDR0xc5_lAFH9~odri*GNu3hfLA;B-9!E~;{Yv4O_^FXUEdmwq)(}0gCGm|FzrU(3V)<*UeOctKNe_jPH(GxW(> z&dwb4!@ynP1>mF7>S(6Sq5Wg(nitb|%C+2w-z48(Cm5wOKEc?_7CwkCy0bHTSCsEd zSVxMMi#CFLViou#VkwF5zs&bG5BW`uUfXT#jViY4bY52;b3ZTqZrf_N2pRe&v9(!@ z#{kA#W3PY3&DCn`t!y*)k5IqH-aQ)u@$4CUt#QgPX@$ll#-7|jj7#fnR!25^>>kEq zAb1-Dy}IXmwc+c~daBkvyPxZol^FL*#=Q+6gw|EH4%zKoFUsjG`F9xi{p8}Y&p*ow zU9IuP=hUC^{xPy4#ToB&tmA90q%-5T1)aS*4&H@x&39xE-yPFlQ{|ZG!WXfr9S<6O zrMGW_SLEXXUx__#!k75jv57)|pe@F9x5iX;$H7xNczWGRtIY&YS=1l!**VH1GvVoc zXa;=RIjxmLArpM32~W&1eRX-@Np@tj_=9oKnH45q!%Tc`l*4b+(FUG!iB*yeX+ma- z52Dapsd$2Nr8ZAI?&XOY@WfBR$qWZa_MTz#Hwb>((K<`+Cw0!(XX|{#LFVmGsr&mc zT-ccW+ZTKJ?G}EMJ)n8eSD_oxo$C{j3~l%;+b)P?6W{9Wzdc(s*vQXa4LYxDXt(pa zkb_g%|918vV$UMeQaH~!rGxd-Gt7JH?jUda9Dm?fx!5L>iKFIF_i=a;`iV{}(HdE! z`lffE;@$a*A$3(%)~@qgoomdw<_|T$6VJ*zY<^vIa7srMTP`|`>v8Zof-AHay&|P! zULHJqKRg@YH~az7d|(=rLYynl)E}Et!gvNkH>Fv_UAQ{Sf$JB*HL)jL=XiI%Vz2|3 zbB#IId>cOCI#V*|hPvpxzK$q+O`?C~`U~LsGgo9-^t`VNu1>%et{=Zb*| zxK47$)cLJhroB7q>-Or=bxl)z#3NU~-89YD(ZoB+^$q&2!t>qrS#?blc~9LZ@J-{`A^a*ltnm7Wke0kjlAB4v^=_sl-*XB^JXcj1HZ_9++n2oP4yOmpx+UuhNyN zb?bjZ-3O@~85f5aR~y<&HM}^@jHBJ>^IM&3%(>><zGfUS2K?BdVT}f@vY!%C-{1X=ZYN0%I3u*$Y>YuSDLm5I5cEm4c;#= zAa>os`)$;7JN4WldKi$vd!?tI0cQMc+@H@+)N`if418KdIq_*J^~|K6*&4sBL_Gtj z$LRH%p+>JaT~XYz9o^InZe`1x+#JaBfb=-?tr_TzVvk~+Z@tjk$G}$$_-b}+$Otk`ayE+mlkZ_1>lX*<)9W5S zB_^@sA!9#g8l2$^G<>T3vJ2UVEBn#LnS3_3t$mBZ8L^q*D-(PzV(m`8kpTu@Sq5LN z;4_BZ*YaoKOXq_a+uGQS8-%ahgS>;LkSFLc6Q?M7-UiN2g0CQJM|SL=KlCNx44zEz zCuREL&;7mNEZ4zVBk#KFm^7nfa-|3U$oOIl2e1V%rei)0>}Qjpe22 z|4cvV|F^^_B-8)v%wd!1Kk_c)d8>t7=t=*%8c*h^k{Jp5f46t~Z$eh~S6=i+|IY!h z?0?aJGxYsBcH#o|)t`@L8hyC{ecKWrTh|isF~8;P#(b{4lfAnDeC&7Z@Y1i!wsCZ9 zzCAA3ibqRibCshDWph<9E(;i!O6kTf9jp1&#bo-;hd#PYzt8mZ(lR~LVvk7^bG5$a zXbsOG)0vO;km)VG%k&i=VvKszhtr)g>P;V>o^@ekD>5nrAAw}K#xRV03P?Wvv9m0O z42gK;6KmH-KJ6p!Lo!|YT4YDK^2saH?HHw$P=TRol7IVQ_un4ZocDYDb}?E!`J?{P;uY*+bK_N$ZL^~W&P&sxvCZxPpXYm} z#oh83Tqat)qZe8{-#ab-R=TDa+f48#`~?@W%{DtYc4+Z&$6sJ@cQd$?e0|N;m(Zd7 zEH^*hS+*5g+3cZ1ub)M9I0ZWN;;c74xr(;6=F$Wm%EuzRLV8mBL=$#}Xs{fdb#{}h z23K!}pv7`Kxd@CFYSFZgv<0Il};6?EC|E;7uayZid4yBWgWeO`why&Ye&>VlX*lXnh{nJg!|G$M60L8se^TS$z7_R47eH6I(n{KopKd}*u+Z43_}=VWq! zg4U8*#1+<0x6IiS^KK%y4ESM=zhoinswvdtr#{Vf%UPdQtcY^oDi@pTy1f@12{-xt zS6Iu}m+)WC-hs`mk){*?7ynxK&C~N(p841FW*etneIeedM_+(beW{`^)u}!E(rdd( z_3mO#Ke^srz@mB=QSW|mnvA35=OW8$4-*^XrHe4*+5OqhllU9O0D&j1ss7S)|F-A; z7u?5(*?EZ+qo%QqUBTKJc)6KawfRfuoRj~1G~*Dk(%MVtQ+ODA#`sPi2(vv14UENSY)up8NKSGFGSq%#>imx z-`DQjzw$}pDG2G^Y>494?|0>&-B|48c0W3EzyjjqNH$O-iKmN~Y zGsU!F)&`7?p;(QBJMr-ZfR8aX?ekk0A3bny2nQHHV3Oa)(1R0qq%}dovDbkkd4H81 z-`5on7MY}VeD=J8v(3p4F1zXzXBK9Zvx-d zMd+*coNB!_PJf#Wt+MY6{CDd!v?+XzfY!XS-Oa5ee0!qpP)=R^=zjpaMZ#!=v~9vOUi9=Sr0B>~1L z7aj=T0gi9=O^xldmhI2gK3ZShzNgu1erxemAA83m`-01eJ6-0lw(2yFZk(z1Sd(AK ztZSHjG`xGir;k00MBRq(1IU$6btY_!|a&U1V69_rWnX_&0UaSYHNK==4&sUMpBR`^v!ja{pny|3kpK zC<)e4jN?AWP_St%S910CWgoO~55H;6_0NpeCWnSHE;7!k&N#dKk%_5u#yK@K%fQMw zGcS*>?HXt8TiQka<+s?m#(mJDV$EcmMDe*PW=G#Be}Naigx+>&xT%Pk7|E|1e2h5a)o)`@SU*vUn*Q^@nxRBr3xAop&c-`vTWYLtZ^ z4ISi>x8hI0^&VxPvaBH&-u?Wp3l-Ke#fd6+h5WuofAHR|V;$#5glQ+R!oN%PxHt+p zd$vLjK_JRm>hR^ftv3AQ)b1C|bcix{hi%(&rGZwRC)q#9hHt z1?=fx&AHCgci``+f}acy*^5bCiq+BFD_#mN%-;V=_*WIPp3ZudylVr#Vg&&u;rO zfjiFrnH|Iw3+Ha`txcRwe?NLiW$m@u^w4HghZRyRrkBnZL$|AecPIQ(56t7RQ!|`C z$Um1wpNfcsT7~S<{zP}pFRFDcrytSn^rNDCKX!mW^~0Ru3LKJ$?)|rgL;4e+g8l`M zl85&Ejd)39tZ<~g#u@ThynuZe3!7usuwtQ*qT&jYV?q24JbBb~mc zJ2c>qp;sSX%lC%f=#OH~B-^$#W|slW7S=2^#@;b?;rkB*pRFUj@0C*o8;mu-OoJoU z*~EA%_jC9*t79}c)7mi`iOZU><=p!AQ(qWgkjBV|-bsO9%|0uK4g`l{CdH>;g(h5i zazMO9U(;AaZN3dV5V|mY&2O@?G_UR$`oYFD=v{Pf)>rxNJ${odsIMBY!lr(Ga z4ES#|ILTxy(=3E;LE`10VdZ8<)}UkTZ> zH1Av`aCFIz)X;iU)(YLp?_N5hypbE?(;{TYfIei$JY;_t;`D^lsm{asVD6?!uM>H_(26>E+Xc)!-nwNBS-d z&eD+2%8RPl10Vd{37u?#PMTStwrPdf42L(D^@3+Fo!E6-p%Jvxe5-Vubcg6AB_w-Y zw6eva71z$)0j>DykJinzDCeaO*KhDTzq|LZdhQQ!A8>qTnoE5$lkf1Cy^wTX-q{-a z{PtaIHGk@Ue*68{YT;+B4)XXNo%_u6j>t~?e%|xb&AeQ{SG+L2BQ^p(Nq_e13|Vr_ zDxPkh;zu{wXAb|p@;E~S$TZ3^zn6>|!PVhkSC+?j2AOZ#x;aI%hUX(gKG>*s=F@(B ztKI&cw6D3Se!q+Mn`uAM_A|^~)b@P4?J2aK%Kj91)yzdDH=1bMl^wF9j4iTN|vx@6n+Np17|sJHE>K1AF1+iiD{2ex1R zek!SLp8wHpdp7;v=(K&Sr{A~r(eJ%>+y6=1{pvSzxf{-TzSZ0I6Ca}O6?WS%_oLrU z$nV$_@?BaTG3e!v&#}f^lWyYu4c+nXD&Q#L_Y&*6I(<{fbAraQiP^x`eoJ=!V>XNx zcg*OBG5<8QS`OYE`nE zSPi^!WK%cZ(6fsx+Kw|PQrmaZc7iu(yBlvj7VKCh-uV5;>q=?+YyH5L;f=LP_&FVXf{a)_0UFGR_O&|SkwfjA+zx`gG)Hcr# zdE0)V-))~MnPB((J@Ri}L?(3g`+=mkd0ynUT}!{2%Nm?N=IQqnee^qLyczFb()LAU zLRZ`OCAH1-&EB^0^YpXrGbLqqzkl4{ejA-{nYp2n13Zs++kT3EW1E|{>plJ6+DE^y zvHQKTzx}RE>Nn3h-nJL?yX`Y2E9`zR?Qg#qB(=@+=|K*EKSRHn)0uuh@9Fmoee}D` z?)U%K-+oslwaxRtd)vm>($BWflx(y6{n`HZyF96Fo}YKyei?h?4yWyX343GrT?Z5P zMt8Zk)b95c{q6T1Np17|xVP=w``z}LlDF)BzfYdhe)0G1Np17I#BKWs{br78aQ+KV zzmNCP@9*3F{sV3Ii@$G6YMbZ3^|p;|-Oskql)Pv6`)B>__pM27^E}CI`*-wvw$t_r zPrqY*^n1VE@B04sdv;RWJP-G_jbF|5`_gTnDY^0rqsOZI+wYl4ZS(x6fewGS)9+HJ z?RP!>{$n5gj@$j7+uwedCbiA;ue@y+^}FpeCDZMGm-M&aMM-V*{F2-DdHOxgX}iB-;Z;qtp8hkcJ{a5f}2G>7Xv%BreZ{p5S{6nmk&DHk|f1 zC$;~DkI?=){I=eFWE!s_8PX=Xa6+pTL`N{4gKbi7xtz*oU zpKRVm@{j4d*Kh!?H;Z!4L|Sv_8ix*cyN-) zMG6n4d+1bg8n3uxwAH4K1FQ|WW2Bhyl%`M=?2sTzq)*xw-Uu*yL~Pl0T`$^~~p-mcWV( zt^Gdk`iBG8Ssluwk+Mm;DiEqBUgl#wr{3gzf0J3q>H7W_t3&JHDRWZH_xJO?_TL7k zCw&)m=D?Qy-Q9dw{3*`UtRBYtkrfK!7qhA_tJ}anXTviGZJu@Gm{vLcf6Fu08gsXQ zg~XV6<*VeT&T~T^cBB>nyY>m@+I^EejiNh)_}Q)M8_fResDJ66ML%S18hKj9cX6KQ z7j*B#9CDkd)3FKac z-iRV_cHf@Q310YKF;O*?kMUd0H8#xJUs8cSs~&6PeN|B7X@zotS9PmS?dPasE&LH= z_|wD|`0*2JtnD^FVfv`GynNa*F@m%+mv83Ue#8U~%t2ooyx?DV_gVh;0O5swHwI6f zcZ-fv{0x5U;c58JUt=9YYf(kSExk$miUs2wZsH0!2Z?w=)bzNt0tKZT>-*A3g&9#RAfG5`28;|yuuRC9BJZF1oT=adm#y;O_ z*Ox@&UFV-f%Ng?ua1ZV>=9ElT8?1MA9748n*3!5lUuOHNzb6M{R#xpH&VlClsV9b$ zR~I{DG~XyEt&v0&2D1F(uhI*g1q?wphe9Xi3jn3yWv03;xS}J{0UD)nQvnG$`ypOT)U}3Jk zhOOL4uOMr+Mvsfq99*^Lj>1O@whPp<^Rr{^BIDD8`?}QIE7F*y$(e&+% zXS5tXselHKkb}39wb{zzse(&qh?uoE{1J+AD}=Yll7BVp^orxJE-a*vnYAZ|SW{nv zhDQPCXkgrtZS4g&$KJq}*)=4+cKgDG4P(Nr2Kibdx*Hf&?I_F7wrG>*Ua4n<`wL9uZYo09Bw?2FS_!jiKi`OZVBfY@VT1tK( zaJ2LD)@0?w3Q$jkHTBc%qwei{eXCgdzTWM=$U71_^;vEU@5W%$j-=m;iB~+4@~aiA zKg4`RUg|9eYKpNX2hjgp7@M1Y_!s?Y<4m5U&s$~BWeu$T!oY#G|H|3t@A?OYIt#6{ zZ`=UQRalLuXR`mSl>OR^eN$68mwC1I`MRf;E;hMti2Itnov}P=XeSW*F1Qe1oum$( zlWt*GjDtpQX6<$Y^m26pwz_h1DfUul)tEe7gSydiMlW={176w$9Y<$Fx6rWY*}dPI zWsjHWh8Ug3X1)>aXuR4M+jM;ze~WT?okH%2u0{LfpiSU9_Sew%nnhPPtQk6>R{h{0 zn5m*I%?ZyuOa3*M)i^W&k#anO+Pa&z9GrzVUAH^`J*FU&Z8;_z;90mD3oeA~Oz)p)W<^Tt8YWDc@*a5tKq_aX80f!6wwA%-Rw^u*K2 zB3qV-E>A(1?|A5P0(1$C#~y<&Ut2V>;kBVTwZaud-ys?lo_+>x?)qiMln}U^08dYZ z_v?xA$zl&pIenUUrB!xv+1=+((I10H_^`LW&!g|kZP!=73qEAO_j~)@3onxA+sM%V z_WKlleb(u_XkE|JA>-)pztZ;;$lxu*t+JbzU471d@8am6_y6H`w=bYu8B=4M z*4TRS($9mD3xh&OMc>F0#S$Dg_sZFq7CL0^wf8nHbkN*Oj--VQKbV{-Iia7L--qz~ z;Ly*^y}*+QA#@zB~0o_us4=>Ym`Yuzw)+=7hGH z@^%iE?dD!EWrlvpeV`Yc8h>n~Vin|v`_l*1lL6ggLu<}#=1SwS53hjVz?pac$QgRr z*4@v4jLuJ3imv(9#I z!Vc!_wT>2i)7iculbcP!Y*8MK4OZ$fpHjX4mcnNdj0Q0gbw&-#C<^EnHyr@h;Vo4vv6IRAO;j2p+D%UoV|#Yi)k zw?dC*e6Vpe_ZH`&S=OiOhVahRf&EZ0y{oK=&p>{R3OeOAXXp7_D$l)LKDSP?L4IKE z8EnS?uh{IJ@UYqQGf{FxbD@mT2+o=dcLt|g{vnei$P3xaWB6_@I8ki-YnE-B=srvx zn$Nt7958d~N!Y@ax3a7$VamRBp1KUZDo41p=gGmN-bW}Oqm0V7Jo$~X4oWAx| zPT!VF?oloR+;b#Xx!wpbn|(*rsdsU{Yobm&KASl-zqP;CQCwTuTg%c^x@77V67>Nhdm;9wT`N%w(UXh`^qgOeue zF!LFM+w{;<;pQ(Hlbh)KR&3|yO65QI*X~45L>J4i>}$slP!?W5jw5iOT(>RKk36Ts zi>s|q)RjNU{F(l$ta8Oh`9?VlbxwI|PI_&HnM-JImEz(3p?uj)w6{oO!T0hF2wz72 zc*bJxMaJsO7kTIUtKE5Wd<3)wPdDS!X@TBap|>{RI|-cP^Ya&a;qwvT3O-jpc+o*C z_-zBulfa38A>l6^$==gwrgdG)`*V&*u>H%C>DAzCo^@`D=tX;&^3GMQKVS`+%x{zP z&V6gW=DhB^e9CW4x2}s=nUkdtRCZ3cvfrlc<&*i1vMYL&tx2`6D^2wstD0{uX`^iE zYWsej?)O{AstVW_%e~^W)o%F;-xB3X_j}6tJ!Sl!GMY=POn@>m%9L3CH}lUeU!QmG zo9vObzCL%z$|v)HpE=eN?Jredr8j!JN>=L6_#;Z~e9Y^xS3ej$EU{(~xzFm*-U;@$ zb*x5aDh7Pt`~D@HfIpC%GBxcM#si#YI`}j6QflYk&45QUmW@6qpTr4#K=KJ?@O|b@ zHebmnl!GlDXK$O@P+Quc6pu?MbEvCGoSE2$@iy5-AM{Cf00o7dyZ zb?&yWHv9ne3lGnsoa`Lq%e$kR^4QYY&-!kgWxdGy&A7sE&Dp~_G{)ZtOt2@Phylmjn^)zk8OR*y>pwHW>%kcI< zU{RcXR!HUAZ-?G1td1`X4R+j{X}x$0^!Vyf>&2_`N~S(K)S9CBimQCskcHR}_z<64 zQr%c?4Xl){p!2CNqb=pYl75OZHwZHij)04i$P~dIr2moG@bLoRy%l(Fv*A4nOzprV zI87XSMRlX>Qq?&sm31iUxD)x7N874LvVW7tAp6`)QR*m0#%X_#i+6n^T)SiB{vMy% zb3D{JV=i2L!H=F`et6X^@bHCT$6q5uxA_>yQqJi}W1Vau z@mIVX#k1h_1df0~`3+ZEX@+ivN9fY%LDd(b{5^bc(+hf(angH@pX7l1djPxPPVjIS zwA2jUNS5jS_MlZ~!G8hPIUdH}s=Zznot=Bfe2%*LeauworP$UfCHU{cw<4Fz>GK_` z!`{oY?MjRMEaU6m{I0V{02@L!Ny2xBtzvw4`)z;p!ZiHEchE2NwDy^}Flui_7&^@R z9R50daZ&u2s>j_^6k9sh>?!&Z<=>{yRYTc3#`t?>itYc(2n|c`-By(Dxaa+zy5sfa z^QRBm{?|oUN#0%7CGRTed!=P?sJIW=gWAW}6yscEWMJXklBsRwzNyOJDxT3EvvKg- zc;rPVIl|v$&En>v8MQY-mt(=RY(@4z%XIOi)k%c+X48GU1 z>&9ATl|I|=Rqo4ff0X&~fE#T8OZN4A7c}$d_E$7c(4Os=$}v6wcZ}w0jKKSrON>!x zD*jc*B8GhshyI#k)r}gfmWk-qBF3z|c&eROo-w1o2r^>;wy1nj_Y53h#_e9#BcT7! zEL=A3obv0OG_ozn$$_33YE~PD53@tcFFt_2&BnJ>^+{{VSo}{XORWyZcu6sN8nVGj z4mf$1b17JZn>-L)aR%k&f#7BkINFy+ZVL8c|D5lttby(Kf`fYf#vbj8H0*J{Q~7%E zR{NvcCvzw>kZYlD>>1%=3<&_76Pr@AyJ~e&NxFAMp*Wt>pJgepgQS)6fb!Yqik^ zfEIh+9nIj36bHu_9S>kpo`1o7x$4Wa&%vHezi)x}MMJYV@1@dL-MG)nu53sD57Kv| z>^;IUpGkc-yYdmyq z@xI&qm$~k5K7;&W%r&=bV74u-ei<@X`*_E31cC}nW_ zEBLxjPa>cHZ1VZf6h7>^c+@|%8=o)eCqB~pgAdWw6zlvaw>$!gRbLUR8d&K~LE8yJCXn}lo& zu&2Ruezd#(mNl~b`dfSf^O5_I|BI3NmEa#6P4S*ulZ&7eCG$tZ7bRC(*J*7=eqeZV zTor3KBau(DR($*T&5IT_Oh8^pR$PtDz}HzB#b%SwbIT{u56Fo(7v0@Z&UwXJdq6Kk z8w1)a@K=ljS65L6KWY0a@)L#dtNwMKRfnEDx)_`<2Iu9-yA0s4ajtcVKuGa62Iq{G ze6m~c$;t;MpKFy5y1Lvddv;M_Ll(~ypua+7ah2d1fxO7dt}PsxUE7Af8!!1hki16F zX%*)}?!snhg$}FOyO{@%j>Dh1&l=Evnl&ZK4ecc~a-+tU8?{UCKG!~;_1dN5&IwPl zyS9%L&e_n|4hTk4Dt=hK@uM^aZCwvxM^l3dQnCG4_CC|`vyKZ~{d zs*l_9Qtdvd-;tNVR>oTCaOo>zTFT^ye+T__6aD~=jcW^0zT*bIv)4VdLZcWL<$V_Y zro-nM@cd5fSMAk2v~$MEFYL zDVW`&*HVXf0FKGn*UCdg(U{d}G<_ez);*%G>OwYB~R$X7m2gF|> zcS9~tglqZy-zf#J)c-sDQmV(@3w;=$j#<+}?#IB{JCtwbeg=N4^sHcq1znxM&x?Ip zR?iqSer4LfynXkBPwLs?S+t~eOvMkSW9Mni+%~;1-<0OICHl?`9XD<1yu|MG*7Mnx z87BVB;LG?WkLD2*^7ZR3Y+R!lBx5_}gjOZ)2ZyT6y}kalf_vMx8W>t&Um1u6SQ4}s7M zzL#APK=yR|4m#3!r_8ax`#RrkzLNMJi?cjv3m@lhtNLSg-~UqY@jVYaeeNy3=d5FY z&tm;H+5ToOYun%tFh5>vbqvJsun#|NE;8xVWA< zQP`SVluN%ian=t$e9H>di-VdOii6 z_*klTeA3G)>!C3N(*wZd(Ah}Q8PC6=yzcEfa_geVjBviy;m0QwsS>VILdM@vgueq_ z)2mM?-|-3Yz3~YlXL|UAitq)DN1u$bke{3t&9}hxB0iCE+gHpnIZvXh2VJf?zQ$bb z8of0IpUN2Mgfhm5LS6DpzmD#1<-ZL*+XBBTUZ=1Cxrh92LYB8&o>@Cz@}Kb@2wozr z^C^b%_+Q9P1}sr;y~uUd*@{dzb7$IEfL;DN^s)drRfljJ0Y>BV0mfi&@byxUnY&Vc z3~TbHkH`wUkLjk5mVT%0Qrc1aH%$KxIatOcL&*U87QwQ7SM*N8TOeG|T_CVt-vjLrOR zeB=e-kna*ca>|OYV!+;VtHs$cz=&RukNjUYz`L}evMsk#j&CC9b@@Pg^O1j9@}Ks; ztDHW3A1P89$4Bn)sop=X_rPcJ@{KKt>^+RUbJ z9%pXQ`1GQM*9VAgSx7!1#XHK+g&oj{@4itqBpBa;o(8h!^W4fC>Rw*9(8RgOhSnUn z06!P!gN+mIB;&3LS}<^96NjfcI36GD_)qMdhp?3Zy=?5cXvVHO%`*=fr5`b zY3PIP&U$h+a{4;n%U{1An|f}#wO4eQiBIno_IW02tL2XGSn@-$eZ%=)XM#0hZ;3Xw z7Q7iccWGPeFD@*t*hXF&R9|g_5~ zy?!f7#dm>UVjD6w%>3sIP8r1ss_ZQ1I@7t%aIU4!Rk-|H$yv(&jjmo>hdJn!Yc&Ve zxga^Ao6L8*&kD`pUUIP1TvJ0|CcCEY&mOyGF#I|UJoIAM zxa&0S(8nq8+Ucy-TKt*y2ge>*#60Cv_CPsfe;OV8+{!EJZXWvRlaCCof3lMQ&B(+@ ziCd7r=mhlp2)+=VwfFOE>qXfLr{E*m2kr2W#{DFGE}KENgX{&_6tW%U|4Y<`TvT1B zpf%YOQ**2hS6~-MZo|%Y)@ywWyY!)ST6{sUBlRBFcJdoNn{R>VYX8*0{rn#E*G05e z?&#S_WmjGC#gzRLaNNiBD_!-XGd|-hbL!lrcxxZI%0Aeb%Dr8eXYCg~n>xR%tbqx= znmWfRZvhj}A9P+|zmyA0Zk^~LjX6sC4akie(RUzp1w0~Nv2#9ZT{ImUS3XF566ge$a9@eoVPs}eDFf|=e}fOMwZo4f={iSxx$<9@zYD^oy&s9JFTqtLe_{r z3k)gDfjY6ro`$!>GqI^|VZ6}C${+bR9pqelpA%C^i_xr^(9UyG-ZuUboh&NlR^51emm^i3Z+L2Iy!8B2RD zHY;?GXyqgDbL-GSh1xWbIk{_(bAtWm`|$K7OBx|9stimr?sV zb+&?=0Q2z!(1l{4-1>B;vSOR!x!upFUi~zkjmOa*qtc9Puolh;>E5Ka7 zuk)$Ndj_l-oUP$EXH+Zyj)8~vGCxTSCH|0yXv^H=*Nq^{-^dJh92RcyOV8!`FnB=5 zPx0Z8ecGH;omsgF{4@`P_So~XfGkLe6l+h`zfn$QcQ_^^%?yjTTis7J#x+POx&NEIP1EV zZ)`o5hV78vE#K^o=&Uurzp!xw|1Tjce$2nV+3Q^Qn5#duo2yH&(g`^Z{q;C+7#O|# zo5CZA=|`5{6zSX;^s%;x-YC92*inMaRi8$J!{E|64Yq&DGPDulo00SnUA{zPnoIw^ z@6}K5^EwY~?wQE(KRNs{th&+NFX!fmUH7@3`C&V2t&Ywr-_*|Ab zAZh$JO|_=H%71txGUF-a(lj6IndlT`NUX@$*om&`oWhtRYb@(ZXK#ux^hzCYpl>>> z2JN!n6(!!italY^CudiTF^nyz{i?ycI;)24VqNd?iv8D;2a)=hGq0@TT7gVQw{h-! zU2HAagIs~zlm&L}g@~c|Wbei|0yA=}`6*}(`5AzhYr&=B{yLdUKFpe!dk?dgwICBa z@#_p^JXX@*hcvIjpOZy=aptm34O(;78lQ5H6%t20X4%e$PAjugb+%3`Zq%3rp+S{h z>y$lA>~Jgl%`~4?U4=ZWj_3o}`P5gOW!1ItUb0(sKx|fH3+vljdsVJGTW()jw;eo1 z9{{(~+ev+Esi<%RYy(Sp#Y_(x{KVw{TXsVrSGxa}SPM(BE1c z4OajUx>+#HgZG3>yWOI?wQ9GLb{V7Ob|cskWAN{(@0m--G>8YojNhLmbHMd8;51Bo z0SBiCz{?v3FB$E-MhmAqJvg=6+la|11kcPRZJZW$;nZ7p5%bI}%7z`B9?oa%l5nc= za&g)QPFoF5wa(jx)4#b0PFulg8#vW`)WvDr(s2zfnFDHDQ^6@TWbg>Re^{Je+aH|L zcP~zb<9hJw#lvCz=EB3n;I$UKVlTG0eFFb2eXsXrRo+WHmy7><8CTI;J9rA<*Ph3k z-rd3x-x>OKa6L^j)TLEy)c*}$|MGa>wEF)NufJEjm!j2P@H&e=ySy(viO*ZXQz!iJ z3j5nK44>z8<8$FjJT06rLg%}9YNf0Xo?hsozf*nC-|kD`>6C~5SXV!GYH1<#mu1u6 zN8su8{lQZbPq!>Dp4vi;`^)U1pR;^=hpuxg?d!ZM`&zNszRthTzTR0g-K;A`??6W| zr!euQw_@`%N0FZSOD%pJKmK(5BQb1I#e-`7Lh+#TmuM}-)^VvuCz?1B$tvWQVt3-m ztS02B)~*!C;kKbzhW~9F@`wLeF?rY`d%3>Azkd6XbA8@<_Z-(}o%;~iUC#YZt~>bO z?mTbhx<&U!CmJ99?!5gs)UCVPwj~aZ=NmQv0fUU4<@ zoBu0uCXO#Y@gAA(tdZEh`0adS;C1$k3%+f@cfzr?U3>fNK|4SFEM(Vv2b1#C*R$@3 zEQ^kyuh@p0h$ptHKUKHq|7Yz?;Oi>uynpVNr7c}-6{Ll%T|t2XX(MWGl9p~LDjiW# zlQb<&4GIXp6euKZT3QGQm!eTRPWQsS=uis`#ARAqx{(oS`>NyMOzx88CJi7392;%P z`~5xVoaE#-W$~T+`JB%^>$Ci~=f6GA^C11qBS$7re)!VJCz)rQ+JFv;4ytwG7U8!H z;%}8b9>mX}HRJHx?&x2WA&>jCS2;ztFPizU+*?MQP0rkS%0PZT}AXYx2XOfbK4wYrbzmV~T?K{V(81oLr)UIR=?9L5WN4p;TeDv6pUx>c??B}9Cxy*`g zpWur=UhI#?E(}Ef2rM;^wjEfwu#t}=xg`+U7bTuH9$FZyKENCF?`7T>Jk=lR#&%!) zJtPw@2ykCEj_eyh@@qA1nbdyA(R*sIpV5ZS`8amRc69JIo^R&;#&fco7M)WbU6NlB zT{lg)Nu~B)PxH97N&3I(QOx((f47|j;Dsx{}Iv74QE9=C}*){UABvI3h>c&V58VM z8KIa9%OzI0MY`M`?B#vuWK(9CGRvGYD<~(6aaV9KE{+vrRBN#;gc*>zQn3+boq^9JdV#s{XnknC8(TlC{clJ7RPGwToBhaVhkj^9KTyyQSV&608_I&&% zbFN(VKx}RQc__A;bFZzEc+-{@c^-a@BU6;GxjRt#JC{F=yZ~pJ_KWD`USQx~w&gj^ zd+w&szGYiE_t(XL@9gi=XxlEDpS;+#B@nCew8O}+QOIi1FnlH%@e8M2Mus7iT)*0X z(N1@MeDnjf$G5ELIsdZaLAI3IQ|7d%^gY_s{2uK&USZ3xL+DR$S7gYq2W|OPxpCC- zWAIcGJ~cQXuaGego5vrk{~ma_02u>+DrUsEV4mI1{l5BK?4Ds9*k01NF906%`R85b zziMuVJJzKtxqgtGQ0Q0nxaFvh>(5X}mFnmVA)~T5vZH;oDMNK!#J}o5mZhds7Is3a zl%oRKR>Z$s4>;RRT+y;FF@3qplsAI1&f>6Tpt0GQ50YBKcQwI?e2l3YY_}Wv5Ac5r z<=@6RGRoL>_0U3vKhoaFe^DUPPJM!z`rl5ytB~=!PF#%)oiBM6tcyZ>*!R=gWHT|R zMfU_#z1Izmy3hQ`t$WB**;PB~IipuF&UWq<|M_~7*d|+9^P-*WRp@c;dl^&Reli}= zPi)wWO+P;*cuuCx$k%Lmy5IJ$u=!Q@=0B`aU zs4W`T;ykm*U%O4xP4nQ>dH5Cc=&$@HoxF2^Z;?T);cT@&J|d?z;4|x%_vYjRXYAUQ zz;FLKR?{KI)q{2n^C34cVlU$=d%>K&Cu~Kc>H@ltVs~CC>k1=fB4J zujXHHkjxR^|LV9ck1p`YBjXn|ssuzF{qvuvaNS3<9|>HnPJ%r#-m zn>Q-l`-DBlkb`AS+rV5z|Myv&Vfh_LzvT-xjSP|7MPKu*k#&2(4Rg_YHm|c5jD|km zSbEcQV=lqJ*7Vol-PvOJXf}8HR>A5^>bX^s6r|%8Cv2_i+10kcE z>c09{?v(9+==8G7Gs<51y@9eDL@$(~aoQ~_$@`;em)g4Lerv%<)7FnaH^qJ4Un z=O5X#vI#qnIkqFYeu*5bk(XF4wM!Szcpcw$o92#JlTUCh`I$?I2{dD`&L=(qe|21A z^(LQ07OjIPr)VBmX=MDeZ<`p~vGw5TDXaIZz-%ToxiJ)OX@C}i!F17_e4Fj-!@Z9J zb3N}^!aL{-iFL@MC*kd%$mp&nRjZhdY}YhpyO zRW$t%%=hV}9Qn&NPio=agTH?sopX<^b3Wwi&%68eO?#Y9!P9>vPsHT@1CwI%6DCeD zdg?>&oVOzK7^HU=qIVwVUGaJ~IzlP&Jln^a7yBpR5oeAllg-Cv;>Lxw4QF7p4A=nY zeYJ~cqz$~XdvdwAuXgeb;Y9G*B^i2~-REsNq1H}dvTsDF^>Og39QwVM^-S_JA#rM#;Vq!2g$$6|__BlFTaq4tsear#fiUW^f_xN7rP4RDZXt5_C2YIjpnE8X9eLcd`OEmvc&E}A ztdp#k&LR1tf60C69V+id$}nYKt1|PSd!BL*QqFGYej#hx1iAkL*U~#)xY%mhx(WRQ zJ!m^JeG+peY+4=gpTF4zy+W(il(UG~3-aLj^R!_xa%(ktGONiA=%}+=v=^CTnUXOs zAD#_7b4Romp5<$G zd=Ex;ZX*7hK&BKRQ_374LyGGfuJ1qL&bR(Zq~rne*nmkPatu7QB;h;dd=)yptUVMK zQkHVVWQQf|)kiCKCuN97=P8GbfAU&wdbz@;m&c)(gTt(69(U;FMdV;9K7N~Ca%_6} zq_yC4(86!PVViH1p_ku)=a&t=jO3kBJ)37RUf)smTpPY@n_hApddcz7OHNEQXXs_R z%Cza_MK8UOlQ)O^2YD}tvHc+QvYi~2D+AW${P#W%&E#oL&1J|A(ZLdM+b@$(r-yaW z67$!375DAHzv!ihx4#5ERDdURRnY^!&~e^6mR{i0apSw!aR+sD+&ECS=yJ3J?^nTv z_;YH34exEh8yo*=;i7|QTF+sCPeTseLk8{($vYRHwgL<04H>w%0{52;+{LHEd;H9k zdC~A`$boyvfqTdU_fS8dYHg08_*6ORA>h7`x}=})1McfT#l8qv&opD=Zsv1o+!J5O zzhZK)kh$)C&v^Kd#=}pDhZ(n$yd$2H4W#lGQC^J|Y}NVV`7_x!FwnHhjEk&|1CJ{9 z|3An#@3^?~BiP=Ii|veyD@XWRWgC?-E}C2o#>H1?TmPPXxADv!7diih@>om`%|{}& z_n(=ER7NHbNiPu(#Z(6Py4}HLl=!)1t#CPUr1i|Z;joZc`g`GU54Q6M!J%xxp>SA^ z{Wl~ID+lAy&R=_P9KLX01`cm=a7cOmIJ|CX9Inp5VL5p=@21-b{{6bmEuQg{^LfBO zL$|>uxBUxC)W!_m#w`mz`@~SX&E=G5{GiZrE;to#HMZ&BYvasXmT%&idH8~kVGFGw zhP{#)wsc9!FwJw8{;KcZ#I9>sxg1H3gbwm&+W7x(4ttIox%Zs^C&wQ+{)0pB{Eq+M za=7mt;oR8H=!F{`U*D>npwSDrq8F}!_E$P|@9NSG&e&n+^H{M{#OjL%>x2C;JNNH^ zSvTdmFjJr34{YQ+5RWE@6X$NmcT-zn^u@=3)sIYnwN61O_5*Wn=l8GUT=A36E8uTr zHa7U-Fg~sdO^nSJn&51juviR{R|yS`rDAWtvNGp zo9Xi)+}3z-OTEdu!MJ^D#bDgtrgdwmJ5guj_J{Q0bzt%uht}Zf;r|$ii_bLY?}rzR zoWPFlB3|{MeDeoWMkw}s^Pe62t#f_U{A<37KlU=`AEfNVl)aa4_BdtjHvieNe{-&X zY5rxOXUAI1c~0zE=iW2UJ5QPa+}O{Y`%jvG%~c#3Gx=xa1L{25e}7DDyE(V-Z}HsU z=(+#n{_{}mQO@(QA>zZ);fI5hQSjYZ4*Xsw@A*PsX3d5k`@$K|4N;pp`f%A)OOXGc5pa-xdIwaigTi+u0T^D1LaZRNA| zDMyTUD@RlLUn|HT!xm|o`M1338o%88&l5AU$Fq0uPiFt5oBfs?&!BR^nTMpphJ7ZM}uBqrC!{th?*bm) zvNq#qK2uq;joh*>qb%in_4N^h=pzO}PFClJnY4Qr|G6eU*EyZ`BeT5am&>@ZJR|K$$gtv4?p?O!RLTZpzmtX2eym|G--{R zK|D-sMSba~ap!u8c|W^}SY?U$DF+_x%du__>tAw#|0T$U{Z@7i8*yA8YwyP4xjtz2 zdH#u&x2O$!S#N$l&$Gz8>)d6P#Gwy1YkfrVn2lQh%gTy;?q0?e^d2AMw`fGRi4Pi) z-Qr{XmhON(LmY^hG;xO!lqWqzYq>o5_NiuH7`uaaq`Ne6?XPnDa=gEWYtcwh@qg$f zi2bj%u7de?U2YCQk}(W;8C}7@oAS6`#<%fH!OO02iNDxil6<1Pgtfp+lEB{|=Kclz z&mpDDVk?;& z-gqmqCTLXaQJlv&DtFfJ`kGUeTb)sEl~eAb{&Iu(W^AA2oc?k{v4xbY^3cV5cfFi_ z{3qaOHFHBc1K-}cZ^S;_#rC>4i;*AI#ps?>+&<;Sw*LSbqPj1(dKX?c0JlZ-tLj4A z7rL-Y{j%$wM!nLtswk(LavnX0IevT}zDfP^n|?_~isn?WiA9aGj_-k{_I=XYvCaBu zWc#wJ6W3$+Yg~Zl7gT);-k^Nf7Be!{q18=R!;!<(`ICI{z1|7Ne$BOe{vzk%LB*EL z_<5;yJ8{Pnjh{t5HjkU}^U^T)!zIHUez)UI_W0Rt#?Nv6{OxCMKqYP7EFN28G3VId zRLK0w@`lNgF#D3uokyR~mtXwi{yCQ6e8o`Ciafm5)}gfC9rSMIudV`?@;4Vl@8Tyz z4_yDA92u=UP7Ff4@v>{b6u~RfkqYyz$V+N`MLd_h+zP%wxe+`U!yl3bpCzU$y~S>q>`~39Ape)PDSm2j zJC-;Ra8rKpFS*~>m%}(?k2#tHmzoXV@lF!`!K_Jxd{sWOY#_l$^G%D89jSG5$*-A5 z-pQP3H~pPl;ENWG@kb|qG!V_9-6`%>BR5Q44MmY;kw0>BxAT?I~oiw{3~0S<%$GD{0^CXq!o4w&`8jOp*t--EHe%qW>|_c$)DrjxVYmxg;ESBKPvp6{bN8amLcs;H87HU?DUh znsDi3A${qm4P@Ka9B2bM>(Zw9d?WPM1z&82-dx(a*rAOi_hpxgPM348@lkD3{+Y{n z;{*nIoic{JgI@%*D0N`?Z7nT6%*$FTAjd+;QIjA96nAzbjpo@m`fZ zUKBESNbkMMdzQlwE0JaFInY#$Ojw0XXkhGB`xDT10Wx9C+`)6j1+R@Bcu7tPW`FA* zkWWuLaFZ^gpX8It$HCv{ou7i9f@~v~_w}#PC4oitOtsQimmK6_!80cUUdOQCg@-$MEJ7-6?v?cS8}Zj@`i`!7yg3W`~q zW4X27``v(ELciBaM`Uyp@;COs8-9g*Hf z9;T7cP3ZH3>(SaTd9mr9awq7VawRhh;a%}nqspc{U=)$8s<5mkm1*={cs>u=UnhSK zyyz|8jIlg>5!@9spI{sFaPXDYp_`zqS&O?uGmt-&B2enRgrip}uLf0!@D~ zGGlOiHCBuMuW;yJ^FCdAp9_6@*R$0;IOPtnJh$P9XyaVw+pS>yG5rtN`fUQ*O-=_# zv!U1d%41&IE#0pN%Y+8A;Y+Vu_jhoyo>1o98 zR>?nu{DfxQ@@54aj>tYxPU2T)Xk7;R{50O=#eSMmhpS5oM@PB_WK^ruH?Mrs{!HF{ zLBp@`9l3!$_aUGB@a&@6>KSHDP0N4t9_UH2(uC_@cJc9%XiJp#@E;Uj`oi`G&Udat`uYu<^Eii>K}X*VA^jU-D13kIgrq|OB*XaZIJD5*EUdJcSe1xOMVm8 zBj3m>%il^)TkDl4@40WImDN;88;WR)^x*5N+_|T2?xpf6g0b^5U}1bp;Ih)w7WtDh z^Rvx(W9W5Yza?^F54$kf08W($y0CWPj7o4hpL6*~G)4#xmEbD@&B=a~4KMxQ56;~0 zOX-vBfW^?mF1~N#9J{z>P9 zjT(9#=wASMD;GM%SXD}F!=>4KXrp+gub*b+TX13`PQ9CHH*+RiC!Sn=UxO8DVk~R@ z&vApt{y{YBw%71pAhw=7xJ;V;pY#B~X-xu`UOq6rUJSinI5fTf^y_D)*WY>SABtWz z2EQ|ELcgu#`hs$RUnTlz7dXxF`CIoxx8!!U&OLeWeQ_(dsfe}|)24}+iFWbzkUR6_ z4G#U18*2M0M88?FZ)L#6rQat#Z4>>z;(?FLzug)1%h-I_;1@hgkJ$x|MZ@g%H>3VE z8V<%5LU*EJ#X4OY4nTWu8Cv7JRBlINI@t(41e!K+{Uzuj z1s!XA5glh!R<)ty?02Q(TRnX}L_gjBohEO?;gXf)<;hP`3V$Y$C(oLHutbjEI7MvF;tgV_+F=6IW=`fA?dmo*}`7X+QJzYx=`K>>v#`-D{t9qlMCN&=6reSTehow}Q_Ge%i7Znj=6M*n|o6#Y%M2E$HCNua+z; z-qHAI2X-}aqnJ0gz0T1Is8cHfE>Qv;XijhuchP`c-QYpE&;AJ;HwgUMLj+Za{13f zPDIB@j*u70A^k_OxHP=j#X0N9Mtb;vHE_4F4b;ZJyv`hPe2s}x%DTqtO;y5&_=Xn( zmn8ZuxPMuDP)Ikr0lXVMb_sYZ#UD^Zj_Nhwle(mr3l>HPq)vm&y|%6_Jc>4kfx}(w z75M=Ew<*w<^zNzb8+NRA>4{_S^gXM5qg@v3I`LlDvf2|HIIjU$d92yE7kv9iv+j&< zSnC}54v_P6POZJ~pp~OIzz%n<NXfXDloZD->gkrz(oc}xLUYxmO#3T>iG)6p3UE=RTa%s^+S}K`;BYWA%M&zUT za9|Dj0h!~<1NA>sA1s!>z_*1QqQPp(T#p_k9-C8j(&+cH3k#9aDaI81b0y_g@WpZ~ zd}I%K&63RvImA;5*0Gh05zhL3K(4;v(I;Q;7@*7FJAKRSUo|}89~~|!;?UapZhi08 zXSctZD%9%6=7nJ#KVlM^AHj zu^gZ8w0}R`Dd{|c*g1x_Wy=I&ALjf8Pg`Y6xb*#P z5B^2pTGPtFY>TtMEV9vU`%wDPyS5*?mi-|;UF~0N+8;FSucG}`%L<-bysR)|ewA%= zbiFP@3IOV{|>{~@~vx?8~YxK6G+uO?p0e+qkFGQDFqZMxLz)qH}3menK~t9;9DNM&r>&CR;_nV%nW9d&jnC0W zjmt^yCxlaQ6yRGEx1xR0x$41F0{kR|C*BpF;`3E5*Yu+uc`9DCWvSysbLbJ@;M2c< zk^CMGS1;JaJf4Ex{>bt3Prvu-5cksDv;9DUm<7)Y7Op;THEEEZE4M6j3eKr!${}3=fP9W_Eg}=>O zenq6f-*6_>s7ih zAEWx^y+0H@Po++Wr}iMVJU@*$Zhp_9nUZ${`8}yd;BY5>xs7(#3m$g9hT*joyi^HK zA;%7kvm#w}$P4XV*sjVJ(!uOFluuK9|(SV=!dganDXkU`D zkOJ?M)Acu##^VrW| zqyAZ!TX4(!1i4P=C5k=TdcB>0RA6L^_8(@=I^oUCS@HFpHPKp7#5zR@Xg*oNIOy?B z)BtxQhoIHiXx0nHub*f6>l820{F16d>MOS6N@mP~uDfXaG1@+xc5D4f>Cl<$`wk@#3w5&O|t z+4#Z&t!aE=X=_-M_@Wznql~9}z*#AKCJ5J~pto+WyWwBm?}mpj^buQx-d?K_&9RQE zXs(nxkfYs(SM2=;;o+C1E1U}rYAn&5ziw##HDs#xHB~%a`z^c%e{A$gR}lXPV*mZx znRz2lF0j^JcX8w5MD5p+rVo$N2en!27^)9{0H$fK)AT|2wa!!;JoV6in{RA66gTUW z+k5Z0ZST3;!$0UC$~RM;Do6O09O}^+;j~NghO!U;gxJOnODE6BUOsbOUzofNa52BY zdb#e;7ej zzI%pfV_Lbao_4x*t6i_rX4a|gZ?op%YA=-oOFuRv8{bHJd3c@M#va-T?LS@bwDESQ zjXkuHeO5fOXSk8&+OJ$W^WOG7I#m0#2eYSrYF7{K5^j5FkM?lMuDxJJA+qFE@@55Z zy_2i}{u$Tp&b9F2zSG9N%<}cE)_EWBL%4ApTc1YW^n44S!xs6{EPrbn{+NAo&3y@E zlkk-}ZhRbAXxxx~z8&AHXi2hIKIfJ2g!IUi^aFG!`H)?j`V#Pv4lEti%q%+es73xzB|M>H}!uLiv37=Q1H8aDtDW6 zdoR*EIXC*cXo2=TI7Hds7^3X2a8EcIO1IgcI9<2-HS6HI_H$-@EjiXYMLDOiaZlxq zB;R~g*j(dNI2GsKxz0TU-@X0uHS<0?>M7}`QM*p=g-@ZMp6WoCdO!8Ob=K+iz3$w5 zxB4D9Lw(09oP1ICLH6d0#-TUaPOdL72U;$(Lao?vt=mqnCEgiAUy&@-x|PJ47(?R7 zc-eRDjQ1(VZx`0H&?P!*tdjgM6PHF0Pvo9>R`OmscyZ|PTa=y082%bEOg7XCeE#{! z$V$uVi88n9di>^XzqHrQ)bk+kx83BsSw16O$D!$5=2TtJym7rJS!tddTCeY)8zlW_ z3wdFZ(c1ek4UhG~i;cXea+J^c5z1C?D}Ux=k#F6Ftwj4} z+iLt*e`E{DR~lzuCD{P>{-Mz6McB^4tfn0Hy2`1x4&RHclMwwND@9`nm_t;oF z<%Gs}@tO7_JV}f`k9LXP3*YWrAibi4wr`^C%CS{{YSc&CXujiLa@B3)Oxjo+^fj$w zUyoH)*5MHLaVKrwj{kEPu@u#9q0UEhdu;5z$9E~fYA=&Lo+Acbh zKfpUCKSLXnj7zdTHLq$S{CFjNoP|%~3Gh)*e%7XUsc&LtedxieOLe;SX)Q9@u`XPG zNS)%TD`%}%J=u2$}ZpMF0e@^q??zL&PoN?{v`%g6=;>aAM{_nY` z-}}uF_g>_lmp+Z30UDj*p;7r5w6476`ML5um-yB@qt5O3zbcpB^|5pSU#&?id6@+* zWeLC5mHC_g*}ZMTDKtuvIKY}*(w!i(tdy`2}x zzlLvz@|1gL+m^xD->$`nbgJ)J$z6N=x8r45`1G@h+o*2oKe^Q1Mcr8|uwSU#qVCh` z!*>{?zPP8p=c#WGaioq#_Fe*U;+C0pseEtU?l@uKIu>}G4ULW$ZJZx#Ya5UQg0cKK z?PpW|c;=Fy0p8u%Fq!et0R2foFIpcZLD_zE?eafPF@BU6=R0kMo|BX-J+GD+N)R5Y zL}%K<{aKdPirhTh8OUl~MP5rM@IHV%-F2CDyo^4+P`l{FzSkZ&vic`Kd9&k*U%%P$ zz^iX=Kt3uS(9XPsZQpy~$hI5)Mfd8S$KTx#6DQ8l50n0D#r^!TYmvWd_biPC9{okI z`Jo3k+Rx1^AD4c8uzXAw1xh3zB_~sp10{BRuYRX^PT zfoo5cQT%WAS<};P8;;<2t_$-`HhFtGSDk5SQZhT;XWvV+PMdrV`ZgQi?DgaWW)X8& zK46=Z57@~!Fdf%+K42&EMEQU!_kfk%+UMj0>N~|>)A$Wk-wo8)>Er|IUN-rF{r8D) zs$PAw&k8j?3vAo)5xmMb2lB1Mns;(9a=z_i>*jgOp7YzVcS*19D>=ca!&tv!CLvO7hUnI`h_t-G&kv#B!1Gvm{@So@4KTj|K|AM8~=MW8z z=3M`xgAV8b{l?IN@;7xZI_PldpaVM4y$**CRK~tbt?7Bd{RZe&{+^$}>v{S19(Wzd z#ZACbKJPZm(T$LeqGNl!(Eey(zi)z!F`S;`Vnz&55g8cejz*+fJ zg5fjZK=rZD)`AaOPcpNfrtg`0($v$DQO|nSGv)8=&%w-kS|2!LJu6fXa4f*@@Im|Y zFQ?UG!)>VkEKxns!TpSZ^0O5nOFw9R4`k zo^<-{3nN;~Eob?hbvb8+AI`ZeysoRZc1A9~xT#!EzJMMPM^AoRr6_~BK#EOidj9*j6Px)Z_Rj#GG5~PC9X#<{q_vy zOzp=nm_@!+7qHUWbS|vUrS09o>KL%uJBn+WW8H<}2yE#f2R)f$Y0w4;X%V z#D(20Htf2A;W6OX1N>gCFXQ_%z6YibEHAp)I{Xl@99?_Sj6VU(p8?C`z_J@y9s`y= zz%mUi-}tCia{N52$qJMm*0yX|uM1PzT@P11Md z=bKHR+}N4?aJsh_nX?O@MFsy`EUQ&CS8HWA$&a3kAN>&VZkvwCOJbZ8y^N%s6uQ6G znbWnMLu7141A}XTf%I;brI@?uMsf6Ge51XR`piBRg#$+g{{UsJ3W^Z9_PFkvR61_)dNI z!a_D?DZ1|itXJHKuM{7x$uZr6&afMuL3+uLa%{a}gltIkh9{&yATQ#;#nl^l-HVD0cuqjzN0HBe`k(L1v0?xS9n zD}7SFu1=$SWYu+|d+2_Ed-n6Z*!3r}r)&IF?!t}aZrN}N#lFV5{2brpKf#=h&pZF0 zGxwE?y?p067@#QcLW4pqu{av3qLB#aa?B$?@#XB{S2tFYg70nf6Ws z9bN6R%o^mu$OFqL54%TkIN5fZ%dUJl`I-{+`Nv^$*UvWVGDYI!kzJN@5@-w9vF zUUO}eY}+hfp6MYhh@J@DxC z)OS4KKV0e`-81)ct-m^WedA?cVjmwAoioKpFFjPDB>Cg0aj87unxMw@!* z+W~Ur(uxbBqLCGZmcrf+ooW;KC`>o=Q2 zTrkab`bOlG{&`<9weDMxVRvdQ%{DSn^=QApf%yKgLGoxUbep`B`fsuDE%P1kC+UyT z53UW{WrJhI{p0jEK_An%(LP`@51dRR#wOlX8+7f$U$*EV_~&0_;J;4rr;N-x^sT`M zbrhX#UH%y5ze5={=+9d@Pcz>o4NlTl_~A|~t7*fc0bI-e)%qfxOKh51p}A9CV~p%sxZ%8G=LOGXzfZ8S35d@VtZT4sh7X zzj9eRz@u!eBsffiOZoB^B1a|j6|eE?&s%R}96=82Ta)8N-8sS4%4=Gd07t@W8oY{z zRR3zlI;p#gx<5zVX0LbZ^Fia@`ZR8-KEcM-6;$_Hr#`o?H2#hx?LjiO zzrg4!=bVea4gd51n04aWL*#js z{)&7K{QJ6}jm+!|T0hGN7v1!K7qRrc=-iK4*{#^L@I$C|@~JiVi5CP%$%r+yUGhQr zokSU3(3RxE=24mCoaK;6#xvM>}Kn zesrzdEB&aO@4LWz5B@IOkFNPUF^MJ^g$=$FX<@uz6;s0pBQ~X`3s@g7bz#Ro=d35&>Lgj=Knm^%=$Wm{CQD$|GnZJ z@`EMu`*uzSuG67q56!#zX{!Hwg280^j9gD$!2dP;Pv;*QrMPnyV@9gT&fyn7D8EDOk- z0b(f91J$pI^vfGl*>3ro6ywmk+tOJ#vu8#J{ZVe7a%gS&Xnb_0Khm|YQ=jOIWR_z6 z@k{APUby#rk_nX4FB5>U|8$CQ}yd+jR}!&6KZntpd47u(~+#m z2Ola=yo#RO+d=tScU`b^*Cvg_Yhh?ZI-z7=5ps+YYkvZH;l~Z4Ji1?3GJAxWC8YBiCMA3T(Xgk>+Duj2}M??_E88uuY`0 z-uaJH&BrOjJ7;2(XTFElE)|Q~@t=^fhjOQAzpCuRKmKcJbc5fDoGLPFSo9{deZ8sS zzTWmxKJb}S(s{Oz+&b&&(co z9VuVSQ`FmLjWxMtHjRyi7Ubs-?_7oLyUH3J@r%~bGun|mZ#1co;oi5PHCyKTV_F9^ zQDM_f`cCSDFO<`JYu4DNM_ylk^pQQ*;kT`EMn-%W8Sz_W#4pHOzcVl@^4;sgQFFd` zWaPFQ=e%)b0G5qkY zo<98}efsltUkA2di}u!CH>mA@ev36y&joklnKj7lI`Fx~>J3X4Qn&h(+?y47`Fl=Z z>VV}EWc(T%=0mmV5&H5S=vF@PQgp(p=r`m)v`#(C*EE$pnW+iu@KXF`(>_)nz3>xd z(T{&R9DRM)+3YiR4tryLG&=R8_``nB_`U%>U_JP2MgRK^^ApIyD8T>LbqzSIK?Z=! zbfai`n2{0VKX9@bc8#{R97&Dej@T=MDb>0>3d`ylOKM_-zeQ@hYR z_JWfGVal@C^pY;B+$Zg!b!b2G^E&AnRq({o+B^(&(GhS`SL4oE~@Ezv*SAQ(U;F!zyIVH*X=&Jy7lAz z-<%goJH1S z`OxTA--m4ZcnfrW3*)9WQo0>$AS~2+Mpo<{#)bPG_h?+~WPFqlN--!~rrP-!?M1-+ z0%+t?r|ikJjdpcjBs_+Cj*(YzfOvf$@p}0#*HWMED=yJKp7sGtci!|T{|((|JniHA zN@zg3e>--PTb|^gY$k7gQ_%005O0^Ar+9mx6K_|HUUr7!>WZPKop^gLe$;L&x3%bZf2)p>eHIxCMD+ zk0GI0FZb+u*sP1l`Dru-4b8})p%22AZa;aY3oUE9N^nf~|ax9qjg5_1hP=YN+&BUeHrx-VKw zLL*QA3fNJ03fd4|D2}1EON<>teJZaAI#>)H1ROfp<gKL3CRzVE z4{nrSVRNUWFT3`v;nBhNtZdo7Qme(?e^C5qVoJbT^G{_L?S&Tm{fckl2ShGi&KP9; zDvS{+V6XU|$=L)ylD+61k<>Nd`D*x@_g(+WXNi^NvLzR$Zc?!6(c{i)) z0dT|OgA1~kUB67RUSh!T+Nhh?!h;=CLb0vka0I&zJJ27KO{0I&kN)Ksiqpmfd?wnH zesC>o-{y_Bjz8}Ba5}*2HvAl&TYSb3+(5YnqA#wE4Ooi**J6z~U)7=C5+tJo3p1 zKFpWp!(2St_F*RJ%iYR@qpn-czd!aJ{)dv+|Nh&-Jlf!)1y^3X`S6EW&)b_1FMr10 zOAkAd8GjEwd<uACVSc9!88F*+oxp3 zRzVZW_sW7^-0zp-t8GWVbwC%!2arJ*hnYJnx>yUX36?|A#fiSmx-e=I7_>=L%p|wy?7c_0ppOJm*jG<0FGoiVE`NgT` zUvXs8+`&-;G?(~q(H!gln}2`oxBL%9a~EaMobsW(@<;lm<}P^G+ml~RezFbl)&-Kq z$eDJ@67K0)-*oLCWseP#{eqj3eHFGIkcQ8a&_*2Dqx^C+57p?_=uC#+?0HPx;8r?l z7W6fcFKNr0Ifk}!jJ#PYxwNcy*)Zs5D(k0|p0ef5XkQHu`8gfcJvd?MX-54WadsvmZ(o7hUkyR60LXQ?PEFZQ;upLW8woR`W93|t9yV| z2lYM1_^6!LT&@oq9XY420e?v*oJ0dl9Q;WpE;8piv4zgPs-bW?7F=LUXk2;j{|=TX zt_^XYgJXC6UkV?4{XKEMuSbu<2e+UU|GDsh-B1#DX|d5VewBK3EAe?LG0%I!LG|)0 z*A=wivD3%9)#Jhs7sPMhiGIs>^-eCg{aunV-H(1 zN|{%!E9kn@E>q=u%I&WshdR*N4E&w8m14^*rJU;JUtCx4>T>6M%JP2iEsrw#%NwCK z-#w^2l^-;4XTFa45AU?hzrCjEss9>+zlyYe_xZ6eW#XZzp=A>|aN*x=Wck4QCxU(c*><5)*~rd9lYb=U6i{C9h|um#}nYOeDobh8-Y)lwY{L*n_mPs8^K8; z1MiAK41zV^cSA$0_gAu=a@+W}4EfDEy2lH^LHUSVDff<}3t3}u3*}ewpJ(Ntx%?q; zDf$YG2$x*%l&@UF@|DYwQc-;bWgy!4&e4Rwdk*pI$uk4N{q(_BVMwP81gpD&l+`$PRK4hfIgOPxFV9|dMkN7T^y@u zyJTb_gl`|Xy7eiByZ4@x&GNG_w?cOL4tKu;jS1A*Lu(0AMS6T zvRzD?5 z3gFiO^TH-^)LU6~=)8;{vLA!7VRKJ5YmDn3PxjjM=(Ra6@z9FaBX{*njrZ@n{?Xx< zNgQqPn7968bKblDF+V-h-)8_@Mj_k@_@Bwqq#mf#@JonH5}dc9zvF9=I`N; znkL=;UUYcva~xuin@?`Un0SAdb`R&A%8Jm`J}bh4RerRWV+lJnwW2|mxy;1SyH$CuEoHFwC3`ZPpmwHPG`K?M)%0q%&*H*G^=de67m;GVR~%_*&_| z+Wk*X-^u4Px^n_sJ&7+-ep55=33<2yxNEI+?g)II``1TiwL8oXt^W%DpbIo}0kj8^W@K906j?oqtSdpKTmr%(2yNf|4xoXhQd_2!-}o1NTbXAI~D_mgN>2kT9s4>qU4W1O}nT>5q1ON%ZH{pZF= zSZJ30G}L?co^iutUwuV%o*VnJ^RIF3AI*7o>>B>hMEm4|wBYYIJPD~?YQz`YKHwFSteb<&RunA*^yJSi7JuHuOU+=V*6}gcy9@e~ZnBT- zU6${7l6Uq^xcg{U?Y8Ik6T@fD?Q?HX@AjbYu+}?mVml%5#xUFCxP>VfqeLTlb z=*{7IF3)G856u~EwaopzRf4|L&j)4bM6x;TJO^LwFXR=-Zx`bIEZ)y{-j{w<4c}l# zn%oBIP_OdtU|0oXPZ-z)V$q@C;<0UgnXnlvosJlm2R{AqpkG761KnVufrr1ff_|1e zaF`1n2o65rP|W=T?xQQ1xqk_4A?e2&cQh_1CJ(X3Xg}_QvD=*feD^*2^Xr#0_|56h zZ-(ek)X3*^`s01^1B^Al;kbfvj4_AYlZUi#lITl*)PKFf_U~ywE9ubE4ds)r$A9xN zU@*~)N1>itWcEFlkGO{K_-17EMR>P!-)@xC2pY$2qx8|;+&{))`(1oTkKBQej&HXxrYc8G@qr}%B+dOzAR`r1klfWe7kTt)9(0hTEK??M zlJBn_8JwbhRnWWQ6V=eX#_S|}PnB0qHaYk^XAzV4op{#d@X0^Ux-;eZ|6ray!LvMk zBxfOqOdqH}N!@N+>u95JsP-s#4ju1oJ5Nk`U(UJ}0Vh94?FMJZl$&GDL$N;2^Q5b+ zq1{ci>p|MPjsy7+7R{`oy-n2lAa$+__ufYNu6%Ime=azFFMDDW?GHfflQ`O-^#WZ( z_mem>?Ta_*^LyDBANA04=KKrWzR2sRU*#9Q%)WiQ$@7uVgPhHqljx@MU6fgkkAjOg z%F$O-{MVqThPh|!9kyNbIrfS$FhU**E`R-v%}ZJ*+2kbE*z36ZmNMe>MY`N%WWfOk4MI?*PvZ(!WEd z-$7$fgz5L@5msxM=Vd&f$@5t}N5|`Zf$?Tv#(1+Exs+q%o#LZe!~-Rttk`GCS#x7d z#3%=iZB@v$Dr8y(--^!5d3W$QCAbA+RzKX}W8V468Q}J%47e#K=!M(!#35X`;b%FG zf2U@^uaLe6I7AE212fsl@)6Wq{+=?fHQq}H^ONUM#9{lK*lVl_`;v7EWM3A3xuHdI z^+o(|z;;>ztrdQ)p=A+=u4OkDR&mW?o&!zPCKI!s?jz5W`%?j0R0{$WFl1Uu8 zF3@!`*Bs_K@DEMln!`NTHFn1&j$OzC$@9>2$Zrl^tN)>2a?N3$oBrFrjJw}Q|F?Pi zzsI3bm%qE2W8@uQG`_Yowud<%5CUHFgh zr#-vyPj3X4lle}$Na%|T^i1<}cM(4^*W6bg@gef@){G99q(`&f-v+D1oKKi_G`-#` z(YNXK;gY%d)z{)P&I#RhG~3785jYne8TLb>2-WVJ?V9PgKo7JKX%Sp z_4YSBTf=pF!px)T2d$FygTRk=Mu~~7#gCrjTW-I{vo&0&$CVvTH#z4Mt~{Dv!#8Wf zC2JYia&qss-{syKuDd2w9PMhfN-FcMQ49s`xpSdQEl5Pr{{+esz z6>3ZWb7B^1fB*GpuA4pAja#u9{D$9D-f!QP~4c?FWCXF=24` zIP2OH&%dwT3O1?Dg~!?FfOm~-+-r};>H~d>+CcX*l_1 z-Ox`Ue??1u(7GfaUq$5vJ62Of8-(Zk7^nR_FQkp;pSBC9FOpMcuIZcbHP5}K?-uXp z1C#%v?D%l`$o;V&D*q{PmpT8bIk$c151VuO)I+fc?Hnm{e!sb|y(2=gdpSRC41`wY zH=5~=l&3d+2zj1sB_iph5bw0oaI# zXKHOUY}9Q(`q7cqKWce%^^g9*(fj6V@-4Tq@Ax)7J6XPtHO5;No17(kmUr*r-FtZV z9^T!){L1z09n`d+XZv|~A32&^DHnfNFaG)+_PQ-vuhAEKVk!MWH%>4{Ced{jf0Er` z=8IOK!=i8d@j)0}7oA)0d}o_Cj)oxyqmE&4i5C5`%bXIicBnIZ@TcO$r}mw zY~+1A4^c8uxoXRH-ZaE_iZ!_3$%m)-!|$a750&qh9bv^TCeO$1%YS{7z5pAyFDuNP%Q5uD*MrW&y!ShIUZwUxPwunK zK7@zpLutl0YQJJAYWGCq&MR3T4Zm!p($j8F?Bb!Szj)fc(Qdb&b{igd{ISAk0r-5x zL)#WVcRa`(pCuEt&jq>^^O_4H(kIn-Ke|cz$+opgbgejcn64A(>e5$!bOHIw@Q-}+ zymQdi_q?)3bf&hv!`>If%X;HyXpbFV8sN7I-j&~V5jxaj#$@q<=0U}Y*H{g?5&Xvw z6=?2NkuNfQBJ<9flOJbYMXOg(t%e7^>%6N=22F>4S zwCA%Q!awkKC# z;eDRT7aqf=kCUHh*4*C!e{Bi(-md*Ip_fE6*XzT*-{rcmFJQNU`B+}l5gr!i=9EJg)goY>bx$=1&}^zYhb%JcX>yx{U<6dg1(exv-r zBz;L;YW2>9AGSgB+o1V8bkh~+n##Y`Guax_UBf2#cPc)mVC)X|?+l{9EW$sowHOMZ z;Q~X$J`*>SpF=$F^2fqo054$el_4&@mO`(RzwY%F4*d?*&-PZE&%OOT;Nf|O3HNGUxHRK)rIp>&h+l7t(Z6zf_QJRFbEPd`D>~WX zY;50jfH)0vp;?cvN&M>i^vKCG>$b{Q+hy9%+WO?OXg-_dX9x7rPZ#I~n!Eefa+@}S zS=RJH&!7p#se0}vz78z_mlDOS%vu%P@2nW$i+;HYzdcdJTKXROI|_J+2fgz5#h*hL zlqDJbB=pn&y;ttyFLe2CQt>;@t~}1ehTeppdj<4rd~R2Sd;eAC(VqlxG;BOvp$}3R$aWV;l82o3fq?_zluxK_uw->p|ULBK1U>;K_g z{TW2_$lf^_^j_tmb!3}W0B`y^u&+)2nHvYtGyPnCz-K$iJ`+F7XHd+yZa#rv5b(tF z3v@lM0eiUt`x1MZF(c4#uR8ug#%ALGy*%&n+SA9v?`=ADUw?5x zuC#ez?84919|r7ua^i0OEOu%k`~&R2*#N90-xC#9i;uPnmx8bMB9ktYPa6`A)jN|F z#1eA$oLhF%H$GtPID*Va)rsKHQ=@>n&fM*2%eZ#GZ4j9`uj*e&0YYwB$^+@|GJWMy7{6 zv^ds|1#WlYGq#~+DF0N{;A?!pKR1C~&|F*LY%Ms;dA`uByHWrRWue1_9K306+FloT z6}B!D;(3;NZm+dt^H+9k4CAS3xAWd0UKz_+1-~qJ+v)fxH4grM2z+)U12e}%jdktF z?*qtz$7%b$w0mlG5ww=uBi%!J^Rkcac|GVc$k5JG>Sdg4r~V{5hP$_<=8!2ylwCV@ z##GkJJ9cu;x@`6X=wgna;@4+EJI9Ds&I?(em>IC1#uw1r1ud;b-qy00R(e@(1bwC# ze}a7<8Qp)MbKUP-o_oBIaeZx=bx?0#a-xYc>hIznygvN)x)bw!!<&ZPKKaD#-tfa( z6Q~=VyV^^Svfa)`zA=8c1E&t;p4JKM#;>dSR&mCdF6?N+jHCgPVY3|7jnJ`3*;&Q;rYc>iikbMWdN`%e1G54}n9kJ^kPi__Y1$1NNd1 z_~1`_M)-K;Q|QxA&FcNb$-d@N{5H>nOL(iKbho`;yYv$5l5qw5Xe&4*c7~q+>Bx7N zAhW@(e5K!kMj01hmYuW-y*vTTWcQYV3*lLL7=`)h=G=dl91Gde;(PJ#Ah;lNM5jj% z+4AO$`4=XhJ|J(TOPTu7qkYN`0^Uj5eZ}(dI=|7MeRU~xV)@0~XXB0D>@#|^-_e`( zj^tDgx^lr}+rD}dTVAq8vJ5!%E`-k;lE2$b!Yos!psz|5&uF@Pu%#wkywYkCSI8TgJ^bM8`0>hUQ*IzTp<-5Wrg+ zOApgt(P_hp@WWpDCE7aQ(3$4>G#nZ4p)o*N{$jC;bhY{s!tgoc_Ac?EVG}Jq4Zq>YXG! zraqG!XZqaa>2ooC7M~E$b8W%Diw@krfBp=8cjHqh*&9TD0M|a)?U5B;{i559R|E1w z^t_UJ72?_3XtP=Gi+*VhI#(XteEont_%`o&<$-J<$$)%#!`SMa`yF}k6nP4nGQib4 zUiP%tn-8med+&Tq^a^87sm|-cS>_rW*#>8)ud!j{EX&|5+rgPxV}o%kIh+1bZfd@* z$ID+|3l7H%e~bgscUW(3Hgax0>(ww8)>IX-eggAU(4)0SLmXe=g}md^v}kEB{2f3? z)*O!2R_ZzB%80-F@4?@?x0<$~M?5pjXI&D7QJA$e5+iZGw#uj9# z;Ae0SkGbQA8UH=-%=E>I{}9^i^vwV5k`f|k~PJUxu`Nc=dPc}dvj0S z+d3_hHGUrNO^xP^pXQ?vKI`VWKfCwQXd_>Shva=_Tn_wL)HJhE3B92t(Y8{ ze|yb|MZVyR!zIUWFFK*Pt@}*-JsjeCH#wqS{)rlUVjzE2Hb{lW31HJdPP~utBPp9A zWBfq=E~sYwSOG4o89(w}dEaOme~4uKX663Ct2*DnxvN)*2L5)ymH~tEZ4EyS`2WJ^ zqx0e`TfP{c#@=Sm-i`w73fZ}F{AgCgha=B_jc1Yp&}Wrd7vqzWn|R-S*GKn2ZzOq|SLh5o?($M|LsI!k%g$BfT- z3)i*`%8PuS`V*`_t9pFw4^VK^=tyQeY<a zU(LX$TYjeg@7iIzv909i)U{;9?mWTa(#YM)K@(rvJiKF}1A}&WHt2-`*L%rDP|k>K z0kbaa?p(u9c79echMo3^#((b^k4;Uy%GlI93as47Lf?Rla>xF|^d}A+M5oFn^}@@Z zk2g4fbB7lN<*>O*$C z#~K#V_%5Ga9NS%a@#3>M{m9S9PAd-M7e|hOBlYdC=oaCC?FSc*;>ZT?_^-aZeC54A z>mB4Z@9G=xeXo9es|V)WfVoRQ@8&OFN1sf2&iEr*ET^3J>o3-PnyDr~;&gmU2b2D# z7?*Gv26t8CpjnMW;H+vs@^lP7cJ!%41@<_!wqlrdx$MC#2aik8yRwm`iraSq*T10? z95i^$uIqMmc=y>W29M0WfF=$)c+@+Be^SHV>Jp7!qvOhB)N z?vmu{1;)V}tO?eLUMzZYV~CRF^ugH0lK(3=DrRNHj*~y4d`Hdi@bPWFi6=1T7WpF| z!l$b~$$sseOl*4<2?o+PrS2*QX z8GT}Eq_*ZHwluMjhO^DMoB(fo&da4T*m|(`Ye50dV%{sc=|+u_@8u4 ze}fg-$a@Dq?u_Gm?QvXn6avpU<%oX7XGZ2ZG}D8Qo}^rrUk*%-4sZMu8ndx;F95&j zQc3iB!Pm<>-gB3aT)kU-uu(pfY}!2>nm~rj-&Wy~(c-V;jdr}mwm}E>uP)Pf$c-@X zNCzwD`y_N&K^ZCfP)u7J)SoNp4|G&0-xY0CAKksG6IW0MJY?qEq=>y0`Ox9qHR0Gh z2weW@s#DGQXP-8@hTueh4V>`x$xj*2qYUn`UR`sNdITfUPCuNeQ*bgcA|}ueqek1$ zFF1S#IC$-Cdq1rK`_dhcynN2M_j2_Tjr~3&qjy{QtEfkH8Mp@=duOa=Vh}Zw_q6l9 zRFBqq9T%X`7;!j#5 zgIqq-KIuP6aN~YIWLu#t@yVd}57nn^U_YFCf!!z%4V`KIN!uPi9iB<(M1I@N_^_(8 zZMhhLr^G*t;O8K6(TyjsM=mZlaxqxf>BvR**_}o%+A-$Ej$G6`f=iI{WMg(pCV~su zs9!8ZE{aYW_vM?EJWJp|=$C0VzQ|d~H21kHW4v>17bCBjr`kW)b}?SMi*IyE>a53Y@!ZB_rOqivh^i@%+*siea6@T(~Ud^j*>sbl+Bv<>i599Q|wm| z8mtdCpx;>NH~nM1%PS6Dx&EMK8E_cN-|DWX5;be64a9T%q;E;rqWv11wBBd{ep&?2 z%!Hp-Lu1?Erw!ON7JbcvpZ4=i>l<|9}jPLEz*MRZH0_gZ^=y)=8 zj2s+jZ+0|`acsYJX{7TC-Y@0Y>x;Al6Zr|-jSd=$N`3_BPdzX|ek}+BgH_zq92EJJ zj7&ifOo3bJ*2U-z=*Gmg?R~;VR7huoK4?QZuyx@geL?oUVn52yb7hfq3-_H3z^)9q zi${&#sPQjg>y7>TxC2Y|H8}yB8k@i9TIwY3uJ#yzQyC)MmIjXYV^uS|2J)nL}Q>t zdwv?(b0c+%)~H|YFm?xW06Was9e3nIcQ=Bc#{b9O+kjV9UHSj#-kX=3SHb{-3M2sp zA}TssBx;A71m#t=|N+2L0G-~OLRud9l1mR*OVuy}*rl5$D8(%2m6w^+PqNv0d zDArm#Q}aSdLO@_dB^2fV`R;R0a&ifZ)|vnFd!D(^bDn+fKKo_uwbx#2?X}n5yCApW z4ruRgXaxS$L|^TNk2KSlL1^(+_K^7d8GU(`>$4K*Z_hn~b)4aDct|k%JA4gv{&HMa z*R=6Ntai;gf?2+fwELiYotyfylc$k2Px*!g;ZMO&-+vVzx@Gy_S*vog`&Y1E+3>xj za;qYTZ!Pe=R`|cIOT|~V!1r3=`M1D(Ci;A&Pd2)g)`ypy^@gPAt@z$+&Jv(}w>gtXXDJR;E2ZS9$e~Z82wi zY-4=tY>#cu_*`uC4b8Ix(T~Buq4xs&?)6uo&l>1+FS@bx)7UM(2TJ%?Vw2rL(;RKZ%2%Xg}X$)*g6DoSD;g#2LO4 z7kE92Hfn|JCu*zX5OdHd96;nkVTsuJI$)>P*TOw z@n|pqsCCSl_bjV;Y-`Pg{T)8UW?A9kgTVwUJF2%-$Zgg?Q%lJVVzBm=$ zV%xb^xpuCGq7ZAiwvOV@Vh+mxB>JM<*tvUF{5yHof9{-Kx(oV@(P?B0)PBuRS*PDK zl6dB_>Z^Er-nz=YuUozZ3Cvxk2l*Kvjr>2PwSD+>J@uJBDNMF)X~6jGU+^iXJk7-# zNc)XnerEPn9>8}^^E~;u+ys9r2pPR-)z_ilOAbIkmxd_wA2MxO=dJ5RSrV=-`0dsV ztdN~1pLDuwr~$pAfj(*Ln1*0{R3#Ci{fp3)}3u@8z=Let1>8!lF;EV*e~@q#wc~bRPS0 z>{UyVtJ^7mFXihDwY}q@X$R*1z-;u)P?pYwl-;9)ezbp9Yix#o)L#Az>{ZmwLtXy$P?+D+H2VW?G;e=SY+gt)MM{0)Y?g0^xOBt zTbOgzqyKu-<(qW&9$ck6`ZVJnK7M3yS6TlybT3&i`;`1Gq>sy{?$;e!zrntatY}Cn z+bmj_uVcfdgnbF&wJ&NP`%A;jJu(fPBc^d)#~7@KpKaq?(SMGpXcSMoj(Enbv7wp0 z*Z$~vx45=OXMZ~MFM59j+-g3wtE;EY4!k@{O0Nle7WMiy1ULk6C*QvgK$}p zm&;swl;)!|_*Txd(3RiFiV|c*1K-pKcOwgCz>mcOEJyZwv4#sXMo}jhKCG5>Egb(dzuSXYN zPTHyPDfm}!`DHH>uL6(Xz!yh-nh&h8a_dn?$C-(KvjP1^d8OajHlVmJHXz9+t*urJ z>}mt@@GsV`gB7nG`(oYY5~ttlyU|@L=u3Bgl4JZMJN-G0O|LKfR*#nxOqpT!r z%k&_34)HD-Et22?-Ey@R52qq4mmT` z+fOOrs0TRe1^&RB_7!S;?RdU>d7?dqY;5UR)3*7QGru!uwD#=OFU#N$(4IT5ya@kC zqkE}e%Ajv}&sg|XBYi2mj`Xv|^wARfXo=HDlH;P~h3Bb{0;Z2lUgjgRlcNi65kHa* z)~q=|AMn5D_KdThE7!cFJP7UDcAOWkN3Jpt-!m@sT>P*8<#+K1*ZnuPv$+eg;h6ml z=;GRcB70grwxm7u>pj4~M7$P#Q+lENSl#zM@Vj{U--eRZ3a!t0bz`0Xp)-4kk(z5uu<8S#X z?5mPr@${MOtJA=nv8#fA$sgBNJSq3|?W*{>b$6^Rj&Whu`<(peKsQ678`(o<61M@rg-puG!%t!;_Q&nms5vjA zEt@*(dI@)SxzpMEqBZnmqmQpy$NrV>%67|h%Na&p!>LPmtn9@{TK>^DQ>S#^OzQBl z?mmnTc%sqaO%Ar8JOh5780-elT7_p)GyiJT|a95CIqZ% zm$!eFK9BOStFMw>-TTe-Nocg`lNT75u5HYlMs`8hzAt(&hnIW5ccCBfEgo0#+mm_R zZO%B*SkTWM54JAW>EBW_KyYSPq~fEcJBu~9@yQ?Rk|Z-_f+E`o2! zR;6@>4y{O@4kf)`yc?eAZG%e}YD=1j9%B7rTB$Ske4a!29@HVPLb_MT@#!*U7ufij zFu7A7Qu!bKhfQy7(3m-UrN}8rI<)nj$)WL_dp%dwHrZ1d1pxe*z{^!^?_}m_NKoe!_PR(X?#1_hJ zrQCg#tG-&{w88iloXt5kndlV2)I=TTZcXT}1)6I`UhP9K5WRTM)5-IkL!|vHuoCm@ zir=p7Re$>6fm$CpRT~6bQ7nGf+jR7K{b|oTak-ja3DQd`_Of6!Fxv?J7p~X z;9IV)C|E*XJbCO64Ket5fpaokTJxR<>*Axk`TT9*!vY__>IN3oo$b_pFs80)9=bl{ z!M!@bt?$d?sfb?nOA?3 z?xcCNbY@o<;C>>b%eZrhz3B9|{UIUh>NGEpf@d@DbY;B8tLDY7?OOI)cfPHCygI{g zrE4#D>`ooy*h7cjvrzu^6!_P?MRUNHTw1}tvDV+S&Bxi9E?s*4XYBR8PW@5%xE6lo z`WeVi;2d-+&Sf@xpryyD?S@yumt0-MZTr%0+MX=^6S(AeARMUenrn3W9dQ5l=e3_c zFN|rg{0j^pa@x1h!-sb9&87c2#{SopA8a}WKhU`pr^Q=i`b0E2ItD(i;ky0(UoNaJ z|MKvN*z>I_jr@y&_cZxsUk8Q``RCT>;S;g)?@6}nkHafTf5@6Q zpaNOc#UIYZ-+PMqM^6!7bBg#2zlnXNv`hJQ2L3b5J)0-NbM2Uu(i?bgJ4O7eQ^apN zIi7lVTCXNlOv7KnTd#>f(rx@EYsQ%F(yy}W{;vD@)KjD%eR6yraQr6t*_!F>mC*c7 zHX+SFm?s{}-g0q8{7h#)<&kZow>F*q08hBx!>?oYV?#fat;37pi>#|`n)duyt$}Tt z{%hNx^AYAgq1lC_4IUgF?kD)7F~2+{J7S*p+K2j9eE*}abClPex~0E~hFy8lYV1Ls z_E@+67pY(K#c6L{rF|5urq^C&{7DC)&wr0SRPSki6tI1w3@in_)Yk}n6_=R=U;;5E@06;9WMTC`PKEjS$F;>9oNQ)>tIET>%^ z{JH3h_5I3j=2MdI>sU`veQy7CM?YgMtF5vd`e~(|F8*EmdHu-oHTTEBd$|Mef6;#L zoGANq%Rh>#bD&eF=Fi?beI6Mv{JH(n+Rb@H(rcx+ zp1?NIuxZId)4`R_HK_%c;N)-)p?s5;qdT1-Yz1c75)J)fpm5?gKL*Amhv+>HX{0PTpo^jT&*`3mdN<{ldm4eJMNM^rh}d8@+Jj zdaK{45lccxC-bZ%K6Qz8biI`^>in^xty6g3^rcNqA8T!0&wU0XhlK9DmM6pCV`9b- z>(2GeCobYFh3k0c`+H90yzX4D40ik5KF{ye`(JeLigfmJ>;`qxcgKa=U(njZq)_{d zmi26r_yA{iUU3b%Xqh#Phj3ka(4+vW)#gb8Rz62teaHl(?Gx6VD$e3oG2wN_9&I7->%jD|gx&vp6OB1GlNZ)v= z=4df?W%3ATn!~AG@>43pe^UKY$eN6`E~Sety9@uUNvSCL@YG{k?QhxI{TP1H9kZ-Y z)C4+pPSLyTPrf|ne6afKtoA)q@i!#ToSxQ}U#GtI(3~|%kvSRGvs&K>bMEXphUdk# z)iLJ9YqbBGgBy2+t>kc-&({_pzKu2IbA8F-sXorbX3bCg&i8QMitMX;ue*jiz;!Zn zjuiCj4B`toUudPzS9^f-!OlN^---{Q$v1py+*PeLi)6-#UB*7@YYn7F+st}M8nm4n zjZd_;qylr9mD*Osy({k%Zo@ZXFE+m>*&zz-@g(1adib|J_f9pw+w$$R*WwbWCy6s; zlG&q{5?z2iX}tzJTaw*(Q=x@`)=7NKPvYT?z-`VQ1x}4$&NYKa>wMDqXdN`rOx}86 zQoozL=tr&e{TOgm08Q}RWSn9!v#+%*Fq-bB>HJ;LV^i5}sCwIID zqKUkBp}X?ria-DN@tC;Oia*B2g;FctCT`n-Q`4x|_VUeB(5h>D`L0L)zGmzXo%&ck za!Ytn`?bHv2c1a|DMSy^dd|5n9vmI3OM7ZkE26+DdX42H8bf`%fh*R&@YnN?^bY>9 z8+-U)!#}QrHaqwSXU=-{h%W86(kkYiqTRAZsqOFn>Z|jQ*8bwDo%>N-{*egXzk+}0 zuTx)nX!e@K$g5{r&pwZyv>*R&@sG8PC6|A+K(CeXj}=xD{KDoR`xr+_+*dsY{(;Xo z{3FO1O?LQ4FxrF;VeYiI62p~NQtk6rur0v;Rq>U^o6xgnG0q)cmdsv&D$>pM#n*CA zQ`__xRy>rv8@ihuc-(f33(tt={oAwS$GdHM(Q-CuVdWb z1RtNuxG%zHI13$#F)knKEXJyLEVlA(xX-E`W?8lS0>Rqk<11FQk?&@Bqx>ry8Sj$W zx<6RH3*sMz@-d+7n1~_+xrB(`OyN4?a@{ zuO1BF6<&0%;v-hDb`}q3WYs2rx?;t-@ap$TQ-BXm3;a=MIyb{B_rWJyX?GI(bP9IH zoSvLdK)wTk)Y`O9?^|)7l@^xYx9&KzVRq|Jjb{1KH-NVu*d#Y|xKB0@dgXu04}K&1iPrZU&`&=mJu_rFI;-6yU;KjEqZh!ZDPUGFni{JbA?#I2$ixV9E!PSqyEI;0kZ>GUj zCqM3lAAWolu%3z^Khq6tC-GyWyL7Lw?-3uE#Mov0%EzYA?6disioHfQ>KyHa=#SX9 z-h~H`gTBze8=<2P9nR4`r3(&%o}^cYq#Ke>G@dQpCgxkF6+Ar8tSjGP?zxTqZuCy- zf`5DG4x74}J8X)bJIuf~qy4UH|NaZ+4$M!)PiD&JcNld^|IDOqgHN76Xzrjj3$wN- zTp9b1z3wmHz-y^XesatgHd$73#k<_4Dm|95Bb|SfYx~#(Zo2rq@qYm0MSEi8-=_8V zIL4v!bojmjm;B+3-XCI&@jrt+nT$KF9mO#wz3HV(b@6}Wf1J`YZY2*x=KPPowmfwD zuFF`mQY$td>YnagdDy!f+S7W(^qBF`3Sa%KN9X=7AG}BB4aC8J;^99-ku75!9;-bL zdzp)k!Pn-+nuQN>?p*DjKwK^7;jfs6Z{-rRMjwc_ix0r(w0}+WA+7cLowZ*1<77d5 zX6`9oDEz>`Y`&8OO(#Z&0mE?e<^ab&WX@D8x$Qi3O`Wg15uPhQxN|8pi!vwn0bZZK zw%PL6a&B(z_~ZAk2qJTbAa~Az)^%p8`K`*wwH{e5A6K1;p*zA1tXc>7rGe%{bZ3g(@JU!qD#yM#$i0I=r2jfm#?@A8WA5f@>n_yFz;a;>YU_@@O^gW ze-Qm$I!-?I4d%hlQ5y%nH<9;IXkK$>@z4p(aYV;nx!Q)G%|0H@Z(0bujA7;`zdCrb zJlss2+xPV;;HU>Ytrs|ok$e3enuuM0cjexl9$InfMf)Kt&l0ViEN^C9Xzg0deIUc3 zm#NtN4nPBvJq_dRJ~BSWM(((BsCUKg39NIoFHkt}%9YFzcbubtmdjRCZdH{2J-$x# zuSrMWG~!2QpZO3l^G(waqCa?p=0FzX)aKJ^6~*LLKF6-J$+hcr$ETmcPXeD;!;AM! zB7|QHmwH?u*A1yP?`iE>zBNmD-vgb+Uu(6;T@QTt?Ef8oxX$>~W>;K8-3#Nn{{o-4 zh4{Z_-)8SGlHDpF9-WWhoAfx@HEkWi<`n_SSm6p-B#R5-ci!)A`IoBvRJ;5av{rIS zuJNh+qVnDR!-N~w6$IZj`Q&~7veU}{DtC83K707l4H*gHN6DKV6Vag3279!mh$uA-SN=F;~B^bV4!UHd+32jxi36?Ja2bu*74uTE;<$c ze?`ymLrdabS^Ylw1~GnLA$@fAu%nLw^Gm=ylyd-Ipj$>u-t-rZOg z&%R`f&9lAZGt)aJp^=(Ej6Ex0`RNVE=Xv zJP^LBvQ?&dr~JVshs^k)O!3elcDZI`LF09_#X_DSA6$Mthk14DHCFr0mi6qu#i90| z^xt&nT{ddPO=XX8p<~Z$gXd00#!dF6hSw6m9vS>P|L2+i$!&h-j4pq=;al*ho2+*C z|F`u2MsUYGt>F&%)!o2d#+U~75B%1H^@M{Q{UhJyXQbtxZrgr#BQny%%S0p1e6LRp zaVB}q_p+f~h4rc2Ye89(TV@`OKC*{)G%W)^VfGDB*NGFs%6k4c@J(wp!{MvSV|Xa} zY?~c($or{tHFL%_j4A4`cl_axQAQp4>o0e3j2@-=dKu$j4>Y`}X7NLf;2(J!)*ODZ z#X0HdQGw%&S2R)nI?fPPS+0$05pqoF%v@G|3g0%oEnxfGU%;3+hljrJoF^gcj$>OJ zM!fW}0kPjh$rVTV-X#w@`oYt%$GPi3t?==EBe@q9y4(-lXbfKW%*kWW^~v$B3$?-< z_KjqoO?&o(=K+jUqhC4WF)8cx#-opY$7zh0=P$AjrwqWZ>`QB_WgKaYYTRl3X^d)I zx?@t~R^wIUR^waaRb#w6o!QVGk!^#2s}J?bmcx5f%Oz;pS~bw2d1a1it@`W3x4Kx@X%Ec%8PMc>`g z>=e~cyBeTToej&HTdmT*$UA4o*477nwaWkS@r5fiR&;i$##aM0JPsb!O#ipcht{!y zg&FgM*&k6i*S5_!LKpS$5Sz|4H%v5q>K~`TpP+S>p|uY)23;7Ti5BVR%spnK8znK< z*cV8uorn!A8T*rM2Tbm;17ZV@J^`P(&q@tH&lv<-N01%R<~!H{(W_(w+~=$#C~N~i z^U~g46XBNUC|5Y)zHcZ z@RzsdOdowAcV->*W$Y-jdQeUpI8QZq*r|W#aW*M)t6d9Ar|y>DgKhsW+3d&Xjs9d# zZ+tyC4=%Z)9@~+b&2noeTdaQyu3a|Dy3{|wI6f9`sP z`0{~YcH%|zVekB8g1N7+(|^qDyE>b33x7|cEls_ccZIB7P1qeaaL45atK@;beZ?Q* z!-I*JKZ5K;i?K_Uao6DlbVuRhDxU4=``p#DgSl$^%q(ly^L%e*e%IIo{@d4T-_y%7 z_b=VUx28b6Q-0|KSI(Y!RP%-+^0MyV{x6zq_COvZLl^zUGw%yHYrOEfdGe(*cO%9} zzt!>1{l78z@Xqgqo5wu3X`l|*k94b7cXa0en$OKK{vDn6n?`gs*}>TtXmBPw-OT+Z z56EV!vsNAhcB6lRC+;R~v(N_~w-RbkIQoG6L3Ec^^El{-_`S^OboegQn! zHCpUZ^0k#iXA9(W%75t+!n@J^7-O>6g{jM?xzAtwo^y&e$KE&PuJ|2IKL&Gf&0 zhib_KEtkv2kr*DL_>tr_-?2HFJ68D)UIKjA9Z>ar(|lHYJ+(Gq&L~3`i;hLZqM5nS zq_LwwlY5X&5yoOGV>j4`{ANyK%Sx>c=qyCt{h>Lr#!)lrTadHCq?+#qu{9}dksb+* zM#lzzW6J;*bACLqw9q$NWBAL*&@J*zFuced2)>{>(3V(OG%q_fEQx;=EX}|odHOD} z7~1Gq?=9K97T+c>ukely*XA#Nt8wz5n>u-jcbvHPkLJOl_W7PMIMMn-3*$q!8J!`_Spn>!MJIw*WczCdW^>n<;;(_O7$X`l z$fq?rhh{J1$Fvi=Hnhff^B-Dw^G$Km*27Q6z;ETRS4o>S2blv7aSh<$PMUI>%S~z{Iqg_imY;b966b_D}SW)&!(y$lt-Gr?DCYc?+qxNVwtr@){{yxw)`PMu?!212<2r3utFpf{ z(%7!>x7?)tq|!g9A+uOFS>@XN6j#WYif8OS!h3$5)-$c>v-myO?Xt|h1%mZ$VD0XH zu{qFR?0siL;KSbin)Mp{)FWRFdp$co8h0-Gp*gELGnz>KW~*jXdboH(h@^$!kkz*js;B@y2BAtc2sRSkA|O# zHtn?{E7}9P)VxgRwM#ehtt4a|`c^T&FSIJ+D5pLVK9B+*=mAgYWwqaxWIc#262JV* zD$JfK+OK(&>DNFv@`1iQ)6;JCrR0INsvG;_V%xr0nW;Yen@;=U-PFGfUa}flu@?K{ zO548pFgA<>ci+8Pc8rbq$kg3|yjTN&jL;79DE-+f_}c^in!w*)@Yg_H(&fv+qvrh@gLRAj6?LSk<69l+>cYg6 z7A&>@caU_a34{789vZ;Ta`-juI_1ancU#Q$RY#M`S3N3U^-%u%iP-Nr*G%QBzg>76 zXjcR28)%!+acG~`cp3}*6^+33Ey1ol^kMxt(t!`zLZnm54tWnYIkR68e7z4|W#?#Q z4X_zJ_5eTjJXZD%`3P|K67g3|M1L7aeUxSNL&`CB7}7MuLsg&pXguq|uUc_tooqSl zWUcaNVqJ7N_R{GVwpaQ`>wpSnZ&ja)$GG;^tFf;>PrU3Nt?(q*-ns}sM(if61KR$R z3Uy9dYY}ubi?fs9b+UO0#};F(iN0$BubgkxuK8ID_}K?;8W>A^p$++f?*-3$2NQxf ztxHS4)>*jHXEuUEwe=(#Ag%gHW33+i>nx1hMFXU*ALFr+f~zuTPGoGP;HyYB(t;Qp zX^~?irCirWnhRYko$Ow+yLQ+}7uz<{CVbWCqgAq5WV0tqHj6DS@EBt=4n}`3UpD$p z{r4X4c0VRW-!k#G5B+aq%LpY`tf!1FL2L|_Bv9L)}7#2+B59(G4Zd|35+mXt?=z=!c~vvx44;5quNnUbzu{H#rLz4W z656K2OU)ew=vvY_G$(493Y-P-7kE`2ysDo5mOd~9el-k!)k5F2z^}yDg{vm;w3mL9 z>~D&|%Q6YUU(;Yh@S*kRMu%U?X8m9?{YHE0DMvD`elT|vQC2-^>xFyDGxCBmuXOrY z@SjJ|f7F1BNbKcQ!zR=P}V zjp(S?3+{64$C^*nO%1hIz?)9D48tSUuLbH?kA2vIB?0?pGdO5rk6$GZzCAngE&MC# zFWI0{PMk3E=Su9u8|c$@B~y3nP9&{2+>H-Z7k&tz{a&+e8(zXU`5N3MKPl=J?6b^! zI`6?~No?Ml05PjtgyWe;4QCEnV(f4mNQ zkx$&-k?_1Ltiws@euCHgyl91Ao-e!W9@y%m{j8MF$q%6cH*`ZHynNvOwyb_lXZ_w_B>=p z_wyX!`5>@hb3bS_2U}LJJLhkGyW~5&9~`(~_k(kOymhs|*N*E;t~LL+@PEF)_l_+k zr}li!w&WSm|vO`dHT| z-&wqM67|d-uweJ=mszV;`i578=gi%Di!XUc74<3p4dS2ljjpI7p8I`wv{A3(-@44& zguJL|bJEvR|4!mE{QW9YZn4X#r7dHul(tIvQp%lkxBim4E}~5pb8g={!k@C^Fm>qv zFZn;$*K@}%%GUqG&i8LoX3tyfw7Zg2R?jxsJbT`G`_>OBYd&dL&zZmVc7M+uyD3Zm zpW**S;NUvS(*F;g@6S+HuUnk7X)3E%+r}d&q|5crFa6H$nU}E_)yk}RgteFaf1SPi z=6|?$_hYkf9-SXbh%Wu+c>6soA^O;W&;uskN{HS}KD}=z{W8)&K6}>a?V-fzE@E>f$AD_6{oNG;-!DF!P zHRjuj6Ro~#@DXg&8i3+N(`z+G_^L;7#m=0R zeZA5Ru9J@zyyRO>c#RWYZNl{EBop?EPB3B5=r|LmM6Yzd7bs+Jym(W{#Fd%%Z<=>I z{xb7!^RG+wZt6~qUc$TJJ{`U!d%(R_r^ko(I()~S|6{BBTz->tn*3&YH~eOKH~eOK zH~eP#m*h8Reh$Am@&)|n`fm7*c#U`t8><|i15JJo&v}9|=jA!I4$pa#_*3wlRbHM` zW%Ha>Uxw#=>kD|!;V;2+p7{cvv%4Ffb8lCkvvY$r_)GDe$2>e|oQLPk^6;Exe+AE( z?cq7gJv^tV&jnoyT=6CD}?;d3C7n>i-_p<{)}d!&18QqUzR$k1aO)zo$Mi+^nEE5wbDynDeet0zd=-Mz z?(LNXUEOjS_y77bD_CP6odRu5nlpFw-2b?3_nc`-(G=)Q|8ufaqCx0u{2b(-FDaUd zUcZQWNDg^(UO2B}#2j?rX(>CTD^2ZZ9ljbFHKwO^*hlzf>PVpu)i;|u)HWA3x1M#u zJmW_+2S1g$v@MA4qjtC8-#m%*_}^`jzAQVZSLRvx5(p>vG5=U(S@`K>ay@g`G%w#d ze5-ul#^7hX0vw;iJZ(dUa2em0gP+69J7;dqME86{GTM|EZ2KYa8_{{@2oKBj5bjJu@hl_owIy@~M4jHfk~r#GI?XMW_$Z|OST{p5N0_)hrb z(>0H9Z?D!?wAP^h&X)i4+viq1aGkT(;;}_bf4I}Bd!J)>cgwfeH#*mUv<{#->pJLU zOrdoc{p$KL<=BY{6Y&=^H07?JQ1?Hvh9O$Q-+EPkVRnqab=NfjGxq|P8)ESAUru`u zFLv%nWDI}Sqw{{mx*M5i-^BcyIewklBcEHbll$3>&-zW+{BL7k!CXCL_7v$n9)I+T zE5S8$D%zSC5UUehhVBN042&ev;LGlXF%;hyvNgwFsWm4THnYyZ-dAx4cRDCtqYryhJT``; zQ2X9AZ0J3)Mf72QeGVfYo8^o0JbfNUN1sYqg7WD zDVO_OM`=tcuH5XE3{?F2O2#qvkNQc@IL030j#Z80iDT(2c#_Wj(^{STZ7lI8PQ)>W z<9QM)>oXZk!|ZfgXQ*fF8~&iN4UK!pal`#%EBCCqvU2a*t14Rtv-d5{s*LO7t4tVR zk7F0MdcHLb_Ep^TgX3$It_~O__ou-N#fO88`OHH5zwRlQZj)IKuY_jmIg?$ovJ!t$ zKjS|TFB>ZBQt-9_JRlApfIL3jsmT@N(cgoxF z#aG-9?!4_XYqb6HE0<;ERW2D4s*D?ARVHTnD&zb4IW`*pbT+s^W;DDu*fmwy>$3bta;`&`~n z8qbX1mmlvsey1^BPsQ(+8(Gp-zBOG84~15=79}47)ltaVuJXrF|BgV{X&8p>TJP{g z;j0ljq4OYIo+$n`6P~E^2DFwYTjf3Gf1s@ao@k$)8Ryui*<%NN-UClu0&jetexF00 zbsjsu)<|93^c`~6#?3JB(S;9|r&OdfhP%Wu){|o680>Io69~aO?Uvy8bj= z0N2GI^mOqX{NKQD2Ka@Sei44rfn)R-8^3SiOVkCI;P>C_PsZ;rW8=W@6U3cFtBhms zI-X?D8DA2=(!0I>8;skX^3PetU3m{X{yBNl{T%-s)+=|)KPQ5}?=_`p`JT|*9i^0&U?8Nc7fN4t8v0QC$zq6my_j$ zAtx+!!g42E=Y%zcvGBHl-&XLu5B#=)-^=max_jFn__V$+JS)e zx3lAeqk<_Jmk#L@${9K!FK29@g~P8JuyA;Bp#1L}`o~Slw*piA;BtwTHu1@yWM22Y zuiuZ}=y~5+__rPoT@jbQ#Ih!Gch5xbIGxDd4inw{*~}r^dRSW~zTn>#qK^{$ubVRT z&f!z8*3c_#48R@}7ErnE89w6 z{S9rti04}R>Nfhy+irL4Fdeb-`j!7KyZ`vz;wK|%e-GN9G4R4-=F}&hQ9k~*(By2M zqC=&-m++L6zEJd99;is=EI+IN@Zyw^RXmq5y1c$F{oeYzDbf12^oaw87f&3JQ#>gz zqc}M~xi~oB+~S-8BZ^b%52gq6g8aAN6_=Bj#Q&V)U{cnU;DGGn@wau3b;0X}s{q)G zfc;kBXaxRS9oR>34xz@-=kXEoFQxmUG>d$kNl4pb)4gbMCSf=6BMPB2FaPR)ez6tI zni9AoIHd@`_j$lN4>(s27&#>^F7MVS!3kXT8ms?##TIFO;4d54g;Q&tHQ6e+cKI2f zgZn=`r4fJJBGwZp*VUy@s;isw!@BzPC&Ag11I{acigMEO)4=`t#VZF~Q2ax1J2x-I z{P(_3Cv5>VkstDN?&2WMU9{`SgZ4xhE`A%~PYvkyLHaJx+uAY~TrUCF_XEFtFz$D7 zt@BmNF0l@mBOA&r|KSnX-gG8JCrxA(%TH9aG9+03TzUWAQ-)kvo?G7kO!_P{I+wJ{ zHy8gY_`oim3u$NxoSllE^gWyJBSJpfmtFkR`ug-7+Dr(|Tu}U!p}7l+2RUWslXepA zojYIA8N?)Cxwr~G|#R`K61-8=<0a6U5R4xYQGy+8T+%>S4& z;sWdX74U-6%wJFWMdoj&{3Y}GDJ8eRKe>!&2fV=hKV0swIDq|RJM9-l&A7Z*;n z^`vQp+3>CDg!zO;ghhli2$vAfB-}uFGvRi^S%l4m<%HsQ3kj8f5ux%gCRF|j{;=fl&Dy36*~jq4GBoD*s+WfberuAQ-$$tY zenRCB5GsEhq4LKQDt`i@@+T51e-@$Y&n8ssKc7(f3ka2eETQsWNvQl+5i0*ULgil(%o??hca`xlp~`rKP-UzqR2h#Fs*DYU zD&sLimGL;C%BUe!{uc<9|3yOO-$tnXFA*yL%Y@3molyB-Ayocb;`)tx;^Frvmpig; zA)(4yM5uBW6RMmggevDALY1?WP~|KmR5|MiO*;rpI|xlX2u(W(O*;rpI|xlX2$f&s zst}k|#xz2eF`ZCl6cMV78H6fhCZWo>nNVfSB2*dWgbR5V@hs+9!gCMLQl4czR{t@` z;4#JdJViW9csB5C=V|7d2M;bs$9Wjplf}8k`o9R-vL3lH$oannxv&AAKg9XJ6rTP# z{CX(=#lt_3m+JfJ$Ty|?I%S*6`#R;C%KLg{TKZR#Y2xY8-6yVR-|iMywk@%^Z?Vwk z?K?PkdLgh*MK8JqUcQ+3wf!HR@;>r!5_Z7t$iKPBzqtd(6o(u+Q3!7l4VF9MIw!1g z!a66kL{Fs4a>9@k7CK=$;Y8$$(yVjhvc?ae5(N&$g?Lw3sIdQt;;h@&elG2N6*;WE z#CthIcP_f*o9IvSG1H#$A}b-h6gcLtoO*OFvh=4s+c|f8?(1u}rc6&MPM@BR4iZOv z9PzkGv!Cb|48wE;{C*1qvj&lQ|==EF2(zZ_f63rYZsq|4z9|baGev@IANU= zS}uN^Fyw@VPFPO(WpHWrzhKG}w0)yzj`2UOUv#Hih(1UBpMLRw`UUhWc{Yep@@z1n z`o)vz7w3JA`hv<$WzK&-_cD0Pb!|33#b#sAqwBiNB~Mo$ zvCAJq`RDu(mOqs8hy9O~U&p!fUqybp`b9#ozfQlHiOtKEiJFTRI&!bv3D-GcjT6>6 zp~X1TCt zr-<|$E0j?z9VZ1l?FjA^k&Yw%#>!HBka&Ok2<{b;jwAiX%E%~w3>_!s3Sat&-qvX8 zIMQ!6pj*iH^L66UtEb2os-MoI@vgDD{v?&G*L>Ea>;C8qo&C{!@TF0{kKB7R3%c1K z+szu;)$6*h@5Zh{>OLdyKIn%%_xZ%$7j-)D{o|K}@0_m@zSm;>yUcx;+zrn<^A-zx zru+=vIB>GRmrv(W;_r0^`$p|GbsM)+F6dl`)VkZTwKgvIxH!X~!Q40Lx$C!yZ*G6i zG5f7M&qJtZt^6+^;_Fjp;b#$7SrbR=RNGT^AlzM%D+5gr!nVB;AcOXG}`Mt zhV}7>vDwPc%H2OCUp}oT+G~V1+%xez96GybbRrLDMebO_J_enKqc!*QoIOMf*+YbX z;;t^r40k7k8!#P70akHn5ZUP^V5dts!p0p=45LJG6-&39kX59fRm<8{H4!rLWr}5?D zKgr;~bHBTMSx%hrfqQ?Y#!>_J#kwN)D&v1prn3XFN7nQINWgwq8o{kK-h|mRMkmb9 z9vwe>$Y|r&IodvlstDh~8J4d$9=O*6>o(TD zti9C%tNek+0(@l}*>hLKzRN~m#UOCt?L+g8eq_G2M*9-ge>#hjb#rsB#fw+qr$T#l zK7biRuP2*xEm$`<=UN#2lE=`dv&YSx;RU?Oz&nF|IHKt!{7T|^$2WE^=Rk7rK-}CH z!J}Kx#;;J1mo_!dwC8dibZDP*!V|#A@~xRks8(ADUa@k4!!uh}^d@C43-|R+|ouyjA*o zc6ifHS!kEu9DXyt4m*tJXo3(xqU6!`tSUbIB?~QY%h5sa#5)-l2iIZruVkN~>m1;X{IJ z2z`-9+DCkG;cP3uYA`Sjpxb9$f)hf zSh#q>TahD-g`W{V>rbz`&7V>IA!!Fu=GEM@@-buK4}AOiXX%j-q1`uqJ*pA{3Ds55 zTdF^``iIc>2c*B1dT*ot4|zV~{ZgKwuTRx{X!j$^JW85jd^>9O3kxpxB~;HLe--&t z1L+374>+rC_riqmhk;(T-&pWwIbc*%n36+YhZ?;g_tqD)tLj?}b)^QKOGvGH6k3n>CsaS?3s$#K7JFnL zIu97~t-e*wR(f@jWy3Xx^Xjvyd!f%49_x#%%D3XHo2&%B2dlHKB!`~kYFoXuY#VJS-p?Vwt61RvCin0 zo*#kcM9=xqbAyMTAF<+A>@o42^WvfBN1*cnG>X3uvc{(I2Iv|8FMJaTq2~tZS?B6# ztPDC$dN%wWnmz{_zKTct@yGLsj`Mjq)41v-@DI$su?A7MS)b9^Z3Mdkd`i6>&Z%-f6Gq z8u+turU@bK#TTMIKzo6U_6}mKcRzl=sEyR!_NbL`tcf;IhJl+iFCQ3JQux65lF$R& zz`-6X4&E1E?W3;+gYG#IuEj50KH=(DvHSvm)7ly3{;=-*hzD1XF-C;D7Q&#<4}Rke z4YtA`=-(>oMLEzH->O-oF#L1`eFGgccI`OHoBi9@137Kg82g8IQY;Cq`apYzNJg1aC;L8sd*Layo%@DqFOa&6roYFY!ozuy3Ju z#6q7b`-zg*A|LR)iTrToUh;w+k&%=gMShIuJ`CpF$dRO~ddAx};C{)GL%{{FMegN$ zf-ixw8`?aay+yO2$$PB$W3M4o@}2&4<%nn{2(8eMUF1lfkt2gvOtXmh&|x0*xgNST z@n0ZE@~ni-BUN;gPd3j|F`MGA8F-%-{Qi}lS*HVus5sf9C!|WX>d59 z)E}AjsXsCg8rZMwBW@^ctI`SQzI{0{_r55KfE2DsQ1VG!7AxQ z0rZ7@tB2|PR%mF1LqkuYqaCE5MMJgFhGf@H`k4C$s^ZDl2wc;lZ_&pH=hEOB1ic`$Zcs`{S$D1DD_L zN7r#-i?2OzVZ6azCv5Q@c-sVQ8-PviX#lQ!d^fKjro zh-VKng}ou1A*b`R2$3nek7_XdAdh;aKgQ~WgUBZxQ0LcV1DAA4<&`Y*_p_cmSsrwr zDKcnYD0lGeP;TQ?D|g6@Q0|_atlV=7L%B^iTDe2NAIcr}olx%Z>qEIY*M@S>ogB&? zF+P-g-q=v?`Jqtm1y_V}M~)8VUU*3;_o53!xfh=o%DrTGDEAvfLb;=|Lb;dr59N;T z7s}1;9m>5dBb3V>PPyFWlsh;s#92u^S%GkN2%Ww#KAc^CRycdznc?i3e&Ou8zG1cD zg+YDz-ka~e_}-K68GP@-_w=yz<%hFV`JTdeboz31s&(+>nnb=Qgr!H&nm%jJ+YP(w~}F8P_|+ zo}kpqhWpbT`-AKeK_1y7?EQk5V_Pxv-NAv1-t56L@9VKeES7&*pkfmH*xc{+#HYAv z_-4{zyU8a_-C*(%7vQ`6Va?v0i*0?&d?Vd)(luPnJ#d=Wb7qTcPjd6hPBBttt!Exj zd584wmNn8TOW#P>sL@*tte@h2uTt9pU8VJedwS)Naad zpzbu~SDT1?)0E}3i9I$pKJ2uws4RTwPHq$UamqTz-A-;Bf9);H*{9>ey+vi=lV{4p z?$I4w&2Cx1wb5G^`^mg;VLx8e!2TRl)>uzj>Nf|jx81Uc`miS@<8CvP$f-bjFtp)6*&k-fH>{K4tPc-{&bWe8=Qn;_JkZ z+a}VjC4b}U$(2o!t1Iiu&~q~^_KNu`ZM&>}7M|C}I_sfMo6c~LEl2#+w)fflcWoPT z=l)&o`E%_~vg^st^c~rd$1$EAxMknex#qGl*G+;CueU0$kqwzPbl8x`g|IEzXHa#q zAuqP~sQtAz=(Ypsx_;+o!YK!c$#-0ovoYI~guwn18ClB_W zY)|&k(W&gomIHgNJvqnNlRMXEWY71)7;97hX&n6m-x2H=>l`!QKi8&QXxo$UPMdOp$EHmD{PkV!hq4>K`7fO`_Lip)41E;@c8&38w6${9(vgDrUH^7$ zOyyd?&GYM@vD&9nFEZr%x~HKl{+~F}6MFg^o?blZJUw_acwAd^TBZ7|5#1MA+1`lm z*;qsfA8nk4j3|nOrvlKoj-?92u6<~(9!XQmBaJ9Ew{?96UG>0hCqPPvv`DcNz7oteJ5?NQly z?RA8c?9B9eGIr($`rO!=DZ|*Afn9cH+1tB}XU4MXd75(x>z;P#iMUThYy9tGYj$v9 zY|X&2?-9Y_kG2pR{>J)A#~yfihiE3xLo>2dXb%5l5ABFQNw0JDEzPr}i+FV?o4#y) zA?Xt73%xq@g}Ph0p93B2O74<+3>)V-_8B%qCoQ}$$L2K=U2PxqGpRH#G8sGY)#z*3cH^$0(WJ$X5EwN`Ayvc-)Eq*RZ`wzeHRpXTS9BaH;kUzYS>Zq_665q8yY zm-b)|^j2gm;d6w?N;4v#mF|o*1Tvzls5irZR@J-IJBoU-8&?0)-?LgayiZDBj@%Et z&-(j@Td7kv#1!g#m3iUK*wHj^e~Pxt9)BToO0~7uf?bi1uvd=az3+lEBK;P;6KSWd zXDv80GH}5kc@J$qlQ1`MR@EN@eXIKg`c&WL?^C^i=VQv*v?wDy-+x9p$Cpu+6Tr@g zy)Q`nuA+S}1>&mbQJ>m)A^q}9Nd|MgjK~?-+HRyx-=R%sVuwF#L0aSo#5Z!U&DAA4 zvCZwoHaD>9N#9x3mr`dR>fB8`Ro@4kZQ5hO%h(PxB5$#NkmOIQ;taa#jr8SS+W07K zoGW{!&$fGBKsyfx(rb5??uuMY8-HKgEAme1Zu+or^Sh;eBY!OY1AQCX{O8j5BH*;@ z8`Sjm~bWbCpx?`Lyu^)?c2cjhkrSv$XGH+V?B! z-AeuH!|KvMMs5uBtx`SMqN|UBpJP0qQQsR2)50J42GYK?sut==aPXKINUWYfdv{Qm zS^r?{J;i#)!6MGgfG(efK0l$2N9n&~^y31)-NBm2HH6TKDny^O_|XkRmHFO~iz>g`-7Nn05FTG|+-jiQq{>d_jH zY}{Si2%mYXG~TrF5bHY!S>O4HHvS4YpQSx_(zd&R`v;yjz5^c^&3FXA)z}8Ap;0r& z)W!|;<4W=}_YW_{E~54cufj95YudO0TbJE(vSDkkE`fMvwl$8JMzz^ zZyUbzbLf@vPz7GAGqCT!gDvn~o_6v-0snf#C;NRWwvagZOJX(i&-Mh-&W%?4E7aF~ zoz)(sPg}0B+BaZVXhJ`ft!R!fDLmck+qMFm!9H}uTC3NwwgS!w#>TyW4CkKvdLBD) zxz+v@|3A3Y!geFOLJ!-nz?_G3NNT0uXl-)|XAPWSE>nljVa`*L?#Njy3lu+$_`yzm z0r5A6+V506a}3s6?et@azb@4NBgHdcsB1)qp$j!!PW&~jMJgWMziyioe<|_ktv3_D zXC!-tZq@y>%=MW&J*qiB^PWeUzwTkq@+kIPod@tJ_f+p;uJ9;##v7fxpsUVp)>Dyh z%hz=3M3QeeIOlC0F0l2X|1ZOSFr}y zw$^Gl>zu?r#rOL~ceHC0vhC3QR{KTJ;>E;$xXfz5WI=ocx~l3!pZ^m)_D1^l=k%-k zy_)iWu=uQSeV{jYT9rSbGkKRS_%r-8$k{IgYsL3&Suiki8*y#$h54leBXdjt3~hxr zKS0_%5Njq!cqAjvfzLMGYPCOSof!@;92jo)C5Dk*RkInx6McQE=lafI zJol}>pRwI+ooUAP#S2m+AJWH{U_U%U-~9|({LjeZHT?fMHpg6^_OR9d9(KrMi>>xQ zV~hN(%xXX2Ppj$+e|Xp5yZTD_;qE{$!<){-?zbP>_;VmNyr2F;W>;Y|HgZPtbOW}& zS&ZX1;A@gIJ>U}=wD&_~%O}Y2(Y$|F+7B7}u90g;O3#e6!wZkn_M^o04)kX14y^tz zWA`rFvVceY=^(QEHh%_o?;ch6!f%t|^COUNR|ev%Ut#>F(hstck3_dP7_r)Ss?XL~ z?YrsM4_B-GagjB|{ha@~wEx)JQ2VpUZFqil-$3u`(ZG8bW7zOt&ek4+p0a1Y)&5g! zVED89L+!7E=P32o($`JcPQ^1OQ@?Bb??XF34)m#IBi{pC7yKb|8R2gioE3R=!F!Q| z^zk$30h`bj4${u275aKrW%viO-f%{BFZ70iJd$m{U(_djM&K;k*{7-nye3m0wl~(k z6KQ8E^`{xxc0RVV@N(w>oz?zY-LW-J|DA8LQc->>RuIMfb4t49WU zRHu<|D>7U3sr7>#cv|ZnR{I6;r}kysfld2%(7q+`DcMC?A2+&+Y}&$WI_;C(ej9!# z-Q-5-dRF8$3i?f0d>N8cI98h1Z%+N1hk!09h|T)BNeay!Vl*+^Zo zp~lmH!@%Wh^yfb6GJLmWd*scM1lG@cMvg2FwLj<&R8e;O(KYI`e$_`;b4Ma!F?7G5 zJhDeu!P~c&?27!*pFsKkDz#&S`U$)tud7#pOVSwJxw2~$ZFz=vY@r<=(T=U9ebDcI zZ}gAfI{L@O(EWqdb0*I~9<@XAIo-4)ttt+kVg@OdE`R zn#-9O)YCM}YM&+fRD`@jcicObdkVl|%S~SS)EoKK=h!}ESrzN9ZOF3yR^Ma$ud&+S zAUuF9OZW9X_QALq`839nPX&@CzKZ|EK6B!7$q(dB0dfTy)HoL!Ry?xJ*!2{T3~HPe zYTv1N$+pE#`fG?U3bpT0{7B-9oOonVsHFK13V*m;KR{; zd_Bzi@Y%L)tN?qv*5z2!h&B?3$C|O3X?=KziD!M7ICmXS>%(K+_+G^Ku+wj|{418Y z@x;0QAdSR7>c*!KpJ=CNy?4cQ;5i%_=h9)#!y#%BcF*C+BH z+@A>eI_%n-%j)-Kaq3-v9_mXzHp`dVu@0^E=LxJsPdr-oK!Eih@u({qfA|&a0_P6|33d;TAIQrxs)}OftsdgCeE%w2`5JcDtczHSO5hpJvz(`vX9MfKX70lrb{p`s zAKI*IYkhmJ^IdZJR?0erJU)yp{IE1Ja)kNON2SS;k4tw%K9P>idY|Ta528Ph;<=PZ zel0za!z-EdUEuG>eYZW(YZI8u2CMIdSG?xP##(0{bOCeBSQrGK;P{_{fpy2~R^aG> zfidNULG`=1=zswn90nJkkB6SsXE3kt%OgCDbnuWKgNJ*l|5b3&1qQ~m3xn#HPr*qr zd`*2JS+tb?h=oD?gtfJ*_0<0|k4ramfJHL*0({Hf0uP6f@w=dh-O$6^(8KSchj*X{ z`P0d+F&{ek$d^(5G0!LDOJ9^8mb}{U>&x0_deuVKZY4`*LKm!08#tCbvg$nUfxiX* z^f>FGZ&-21(tUBq7+=R&gYLqc;BPC!hDUHuuZK6uXQ05u<74LGO?mL9MtlaecIfq0 zlYhW^H@$~9}gib?;b-p zZN?`-wzO8>SKK*ucU#%i&GYD&mA>SvApBs0k^gbVM`Z>&?S069*&2GlQx4Hj7ZF~} z{Pq&&#?op2o%dhyF8%th2G*^&G+0^Y1)&l)j0*FvIY; zRnYX?q?J9ZxHLWT5`Jj12i#2CWfKs*uY(h{eHHM2h<&a%FrNXueSx^h44?&9hX=c=#IACN^s{$Z$!U;9sSI}4By%WoG#4o z0KX0M8Tc6r-rm?7y27l!l8&f;Oa32&IRRUnjq8(OhR^*!2Qz$8_Q7Uwy&D{FAp9}3 z@gQ^XO;(1P%WlB8QFDyB(8dgCV<~tJf`ev!8S$GnzMb;H4MQ9I@u4Zk7Iz!-vH8rg zevB^uPw3*ZQQygYL-X66^xu5w=^e(?yF8kcg%_sC&pG@$^RXpXO4VZOh@%eKi*82u zm%T``tqC1Fk$Fb*H5PMk^l@}-*^6vj5xO|Kb}cp`*@~X9dKg>L0Yce|(yg`|GK*Jhl(GDZavts386>JR&+q|*aKp1Ma_!G-Vkdms#iQbJ=RwAC*qB*2>t#` z+lm5RZADrKIq^WJF22sAi;Ew7^)tb8N`Du=NiXi!-^GzX-TJ#Y`my}@XYzFMg>mH2 zSjNgso-W@UStPx`h{s){F>($4x&CX=mDT=1Dx1282sU`*Q24p)SHm4f?b2)G&}&%( zZ})rjTIJQx>n}9uH=*2yTdmx|Tk%Dii;v9~{847%W3ve#n<9K{o(SbKcg!8OF_g>w zzPZC64du4rdy}&+l-oMa%02gAL%I8|vvNoLJd}(5E%&?!L%I7SR_^($Lb(UlSh*Lh z4CQ{X+R7byZz%WR{Z{UUOG3Ga!dC7@<)Pfe*I2n1m*A6gXDIi`GAs8RKMv)7wAjiW zbz3O+<1#Dv(s`lWPwuvIN6!xB9=*fL&7Bd-ZJ%%DURD^&JvIp#zK`$EckltaK9oE3 zTKsn=l=lcKP+Y`dar|=B?chHa4;rmmA4^Z7%#{VZT8{eJ~K0bwMd{5^) zzCShi0M+$0{y%wL{D<%@TZivY4L(41Nw)vbGH|~byqAIVyTSJz;CeoIoWA*3FRhcCx-WiCRS%WEyxQX7fE_KS%H_{cTEbJ7fEXR+@)aB$= zSwB@->+z8x?ow}A*iKAZeIwn4Dhpn3%DT|;t#RsUAWezNLH{$pH6y#ik*&PgM^1vH z(T1~ua^{iW3tMmUbkr{#lBUR;hB{N+G=jtFi|+}JM&u810ls(Od4!8+zR{lJ$dV2} zEyq`=qdvZCuiQAdEb2N$`i`=YaVD+mA#JP58s@a`xW|Xd!JW#w#8cLPdCNjBddqr8 zWes-9I%@kNb@(t*&LEZJ;u+cLh4~fb#kT9EojTE=+5;@Tym^sZCa?2-tMVc{Ox`6i z{Y#oSZ(ih@$t%25cBS%Sn=yIsbYO1m?Awn%@xYASv)gNbe@J<;=a{@+e>vrM`m~As zjjON2@9O%>=JhvJ);-_pdzF~wcl@tTwzVZzbjtTbG4j33e9N2}+&SOU-3fn*_{<*O zzx>Gw&&KbAJ-vUq$qrATW7U)97Wrk}$U8Dy?fT1VdtdKgb~|A&C;xSJc%m`>Xx&Yr z_IlFYB!4YzSRMXa=t|xCYXxlG<*)VE+P10_A2l)l9tI!VY=5*QgO5HP^Uu@4#p$+P z?H)k8#{_++_VL;l@y{`1MEV^1o^;jgJ$>iy*FKC-m+|l7-ku``iCz7>KE%I^`h57av2V4#?x5P) zkM^C(a~99pl_wgz%F7cc&Zs;g8Cr(lR~dd^Wyr`f{J|nNZ3i;ye%E+6Wd#z9>}l8* zsQ4{DZ>L4`%0u7(LjGSLN^aWwjPc7d`;0f9-|7EVpM}rY6CM6vC+{;ZNbL0gqK#er zzqmi3yM4xPJwN>l^_&j3dM1Em|NN4=QD8u-L(I)wY z^)h~8UY!J8TYa`oD=XB#l(q12{pBO(>+})pCm%6i zdzk%Ald)l4&3xp*O}^b(2To&k2^>?gaeuL*yo(p--=Q)>0Yl51yyMAS@gV~429+@2G z?sHk6p2V8#TmK(#?*kuIb?tqh$>c8q0u6#TXn=r7QPBr2P3gT%G67Vqw8fU&hqi#h zqSDr<7h7$y1{)M5wldO|w&^X}NNEx+K443Ww?%JIL|R2@t5@z*W-^l*5ETNb3_mtpU?U1%sTte+H0@9_gZ_ewGQ?tkIVjyHf3Y;=6v*Vor|;oT%ofn z_7$BkCE06q$B>xn>hTAVWj;cmK8c;d;oAo^&(XR3{F?M{?-+oM)?b^C&#OtF(=ed< z!wt_hpPE~feue-4&i|h!?@Z`~Z)vZ9T}I#$CnMH|K=X>Z86D{V2Z8hqx!ZnfpxL+aDegNO$AwJ^B0rO|pgfEccPW z#Rqx|bom|6?|HWJ{E_Ezp3R(<$>!=XH2oB3ibD(@L))K$RtfHOi#apXeQ~NhkiL?0 zkOO6bv~0d!D}|rH;b2i9t-ibw41iPF);D|2-J`L08;Z@w(fXS7E!e7^bq6+C(Dh~h zH#TK`F{@Qo7Zr@`37_?+{$yl*0q!w`26>tr0cpjo8MWB|ACJLw`V@3iAq$kK=gpLV1nhi34Rd z@;Rh0HECm0QB-5-`$n+F^y$ssQ2Ju}sJmiA+a3qn7DC%XL)*V%Px(P@Sp=8oT;WbOA>9_V~p)0^Yj0Pw&i!^ zH4nzWO|)%?E{{S_kGA*le=%p??@QYrZ2bDrR_D!yoRyEqhGG9Z_}4%^zUBZD$R5ly%|sHDS=!o8D`^-S9rN zZLzdnXKCAPX}i|ac8#U&{e5WL^xs6=m6o=RmbML+w#zJSZ?&{tYH5o+^}pGJw3iLL zqdaFXdj%d&e<0d=>+Np#vLVgxdRv0O>-+3wP47e7m6o=RmbML+w#zJSZ?&{t+K09` z|M$?=tOrXhT^C!r*1L4o9%lA0?>BjF z<++XLTRgIP#IDk`e+rrF=ePg88Cy^8pvuf0)WhsuiP=tCcYeuPPCCWiVrr(fSq?kt z3CLatra9@WxVwC9ijyvtoG{r*%MPJy682!=f(;?I%tQI!DmKgGo%HjvS+0VYNe@*z z=^@xMAFgoHlSz+`aMIV39-9?Nf1R{@W+43*c>M-Dv$w*5GUQ_tLr6dxYR>ODA&~Ijk(ti?sGVn$VuL3?Rlzv9=Nxz62Ta@U8&s+V19V#&9$C*W9C|e}f;;TZ;qf-y(m#T^~qKk^Z+Mkp3My z+walu($IG+^YFwwPWq4B-JaUZxeE5y8?a+eZE?^82ev(eUi3Qq6S_rvJa~57+2}m~ z6WwPLy#HtH1P-Fp+~d;+A3odQ-nTPgg#ib^gSN6Eloes`( z%swxDP__%w2Z@2OwQFitA6$j5``WfZ`prEx>DBn49BvGx*Wj;mw1K(tLQVQd*dM&T zERbG{4Z=IOq8sn3N&n=IvzyaP1L>b)LviBfK>E~Y`f2bW}kz069V{Ea5r8Y zDBt=V_uq;i@dI@6V=aO7GtRK4V~cCj*u%CjLErrodgHG}XZm|+p7ci6+_|B28L-21 z_|^?}M2Dwh`>1pxbCP!e>JF2!rh@R=ia#r|8dwP)TwihtFqB{k{)2`>@z z$=HJ*qfdLBa%}sDZXE)B6x*d6T?rkq=@2$S`vb*I#9nEa-^eW1;YYA3*h&B1m|2tl z9`x>JT`_wLYvEOl)lt?K*&btmZERWIWDPnBjc>6uJ^_utgbhzTSk^Y1GmaTNb9p|; z^I4v2c&9RH>h(Dh6B<(=9g zdJb*wZg$d_%TKQXo+aJS9{LTUK~eIEXO6+P!tX!{#O z3zy%HvSxk_y53LQhma2rV_S6e9q#CfV=@yx@|Wn7CD8UG(0LYn-RmQ2(icMSH_911 z(YmY#UUtuV4F4XLJX3)FSYY_~chL46?65x^9J;lPXBf|UJZJF?;VFl3~W4!rvx z%}4h+hIhr6??A`n@U(a}-QuL>i*aI|lRgDMo@#{7dpVC=R+AnS9Mpb%d`)`)t@Mp? zJI+3XU%}Sny{y5czk!Ay1Mg3R|8D#z>mghBfWHcG0j1 zTDrE01Gcs?H%mp!Lm`)z2SaJCig}RS#aMI~5q4bGup|pH4PdpJypPJ~- z-%}mf`R@p&k)xnV4gL%45BubkA-}t`824<9pTjSQbavMCDfW&_^M*9Zr}Xe_(Q8P% z_Jf(=?b&oa$N0;i^H0!BaU69PB>DBwX809e8w#Duq0{5w_akiE)-vaQ!t+y}pYyEY zxu3_=?=^>i$6AR^5_B5E+UlNFjE7EF!0S6X1G2wHstY)qq-Y6c! zPZplKjNcz+?!3LyNx!oOUya5Z@ksmeN$^=iP5Ny1j`UjS)okds^+XHwDzfxi7fSyX zU!zkSLg^Rbr8UgUzk{dd(c7Exo$%&mJF+4=^V@SppW()DP<}YFE!0_H8}yk7zF%Qn zwXZ{0myhnxor}L^F0zNTzXH!_57A!ocb*q`w4dyueeESWgM7@KUx7Y@EPW=yN0-1um%=~t^LT4s4SpVHwM)K#dzpM#hHriQR_0KHcw)rXcjC~i z)X;0|@y1X({X)p4*Dm?KK)02l^d<1jrR-ZecRq2yJI6i_&zxv-#D7hv=DTxDXUZFp z*`H-?&^kPTF>Hb+1HthkaJ<;gEpKhone1=+IotBiV`K2+W6;DqmpuVZw%-0~GrpsS zCLYfeF$SLh%PQK_+!9S5wKQ1`O}ghZFSgaBi3{3(baGAlSc~X_|I1>0)H!2*s~-BK zEPa+hpFNg78@1l#Z9U!|N*}_nNPbQ7|IvDRu`{@71$4jM)(VZ?-aXKu z6&iT+M!rH?Ushnx=juoW=tu=dN80=k=tzIGIuf?{Mn_r?y}M@r<2uqJ`Gii&)sY_k zM|7kotd6wB)scQE9cgnP9jV>wNE^{N!h<6Bawp%rf&Z%pMPeJXI#Q$H>!hm;bm3L5 zj`SVDo29E*c%`c&-75H6;4Kzj;p#|V7kmxyMhhR|>PSljzaMzLg+JlyNY@MA1Uziv zTU;G!zThi?S6TRGS4a9h@I*U0(mr$?`Rr^Um5#KIR60^KsdS{Zq|%YrkV;3opHw2z2 zdQ>e>e||pCvc{J%=Wk;Ec|Je#?fHsRiY{Gx;@3Pc@EqnD8Yn$6nP(QyG3MxH_ziQ9 zg5S?su5JB9_nudNKlfq#POQ$hI563C>ONY2KN)`=V6y3S;RUO^8R zf1hCDL7X|C;&U9uSN)drOPVg{uJgC-4O`fM<*WL8o~=B8Pp0}YvPoaL%9E)kpbIi)=tO#mhk@Vc&VF!u2H8&QKRT+} zizadYfp6z&IC=P_GB}lhQ;EUpqu}&1a^5T8^PfDg@w=xV~W9vy-uLZ?qcCl8C+u z-w4*xozTjUS6`f@!hUXr^9LMzGSb>Jj@cd_Iw z&W)s>8@yQ8InyzCiB|pLbX5kgQs`A`=yl6KNH5}oG;xm7^i}YB9XYEIoW_Ea=L;`= zL3;ND4=?r^&R`8*XTphCDwbXY!E2zw>qqawUw(QmfnLa%*gg!B{X^6Dz$=LihD^3~ z9CVTn^DOe=P4FD!#+qU2#lH6pHVGO>$z&csY3xKN;UvCu$FUH+3JqR=LBHvbzrpt-MGdfP3IhPMk3C>@nTX%8(G85cVOC5at@u#@i5pQwM?xdyr zytbG-1Modq@5*V=Kx0!86Y@&yYb-=d^Yf# ziN7g0d%N-B5PTN!CFo~w17~kHJ{*G21dgnJTyXYwPlRU;&kuN3G52)uk>U)S^NuF$d)gmn|4hQ;>_2V$S<42oc3jMJGtX+C ztAJ@QoXp;I3->=uXMAQ4x*V}Cidl1u*jtO(TZ{1da`WoGh<$z653x`95ixpS&Kt%) zFpPa*82i95_JLuX!42EGgXga{HdJSDc-!0Tn>&e(doS^2*qfVfH_j z63!g4Z($yuW&91bM;*pK=+N}f?9u)yoszlPCYv8(&6vgQHTEn&ZhpMD z*D|t6H+%bJ_IByNBd|%*xsuM3ytAca{IBz+E}o;v9`bd42Hc);u$dvgG3V4xg9Ag` zrC)n{s2{I~k>#ESH=T`N%zjk{Z|&xsNr(H3zAByqARqSrzcLn$rTe|6dcn9m|?_31v|dTD(wf@L;U-ihg()IdH?rO=E4TaE)pkF-g}d4J+s|%zi+y4;`vf|d*(c_)Pb>?iuM@nV z{p<^Z_p_gUPVj#Avrh@$&wh55;Qj1pb%OV^pZ&Ao{p@ES1OETVe)jx|?0z=ex1XIV z%bq`oE@$*#r=I@s~V~ z58cc7OCH0IZV&#Fhw-I*0e{KY@u%B`ui}3EC3oO2nZRGN1AoaV{*w4jUie@5OK!to z@)i6gpTJ-8FZfGt!C!JW{*s&Vm;4j{k{j`td=`JncKju`hpLZmaH=nR5}!%@ColhZ zd?s7)nfx6-llWgwc^scf{4YQD7(SEuUsgYY&*U0>CVz#`g4N)S@8$UW=m)-+=ifuWmeS7^^z&x=y_|lB!Q*z~ zs^11qOTh6Ka9j+|{|lV!>BCp(!+iR51AUrD9~aTbx%7DfeVzsmU%*%MU+}}c7C+2S z;fHxOewbI_hgpXoW(Z%-PlT$+eGK2u%kc5M1Yge!L)8;5z;|;jKAfZQ>J@%bzUpM1}Mlep|5;<7KmCv!QznGfQl`Q#vcCK;66-yh@5XN*gWqQezt06{^B%v?2Z;gyBr)Nmd9ME^{*#^fPa->4C-9%_ z!hbS}|721j?@=t*K7I5DT?i<0m z9o#q2{`>il>ilgl&P2R{=(m_0J%ONx)vBy_4u&Q+uQA8VovzI2<8;wy(f7Xvn)_t9WzlfE@* z@(E6!(FWeIsSd1+iZ|f=JUB;(#h|h0P_}IF>@2e~5 zuZum{kJCx?w~UYHsQ&9(=Bw*4`7?O22l?wdpt{iaj89;w|GIAQ)%Ab;b+Kpp>-wAO zLT5B}E$_ds&r(;W41M3J`a~l;CZAMW$dQJI?0cEK(CCk)sOCM>K~YI>i5?@ z*k6|Y*_5^X(V(*E+or7FcT?{z?M@xR->ZC9Ygfh9t*NR{wjP*xO=}b#-;13u|ILyM zf~}J6g3M79*RvnJ{RiL8$~i-Q{(P>lV)px=A>&UrC^Br+$+c1X>ir&~-^dWcKSsvSJbd3&JM%U7s;^wT-dIqWR2isbRT;-8(>3#+dFeIVdmo{6uZI|AJ$(0|<} zD89btZyZ`qZ+dqv>rF&{Q}Xev;dfq$-{k#g{&)N6`uyo0>5KI3O!4z~;@ju{UT~Co z*R$F6Emh3?{F3DlB-q0fr45@B?CFW3J2oZQeNOd^65w&*MWIc}6!0S8 z2c7D>3rG*~djRi`I@P}v{2lgi)zjlt&&*%`QmWUfzK8nv2LshzMLcD+T^gt!N7=5j zKy|V_P<>Y^?T-jlujd<_T@}2eTvuhFy1)r3CVfQT@Z?)vZBf2$yQQ;tt-tT4kLo*Z zsPBsglG69YV7Kpeq78k|50KLLMbw?3?<*Mh1btsY-xBn_PH_63pAVeAj}4O2_qsw- z`o0LixdeTGcrYn_Pm}_u?{(mwpznO2W>bQ`CzOxAuMi&eeT9D0_d5EUp#R(He}evR zA4p37>+~BM^wR&t2*!{8uTWp;zs|juBS-paa4Y?f0?$Xr?1G2yf`|3(vb*5Jb?~qo z6W98Z7CFXm^qD)|dGnP%{(ENs3+KD{Kj*Rkg$r};e`0&^AI;}G4ET?Zbwc#PxxBZ5 z?*cRsTfzE;YA%^?&9YaTZ_VDX{nGOt9nnhshIG6mKN5d}G)%fpzk`uD@F3%x7;!Co z=A70qk91lW4GXje>2G2i-!(nErgg>0Q0pS#*YkaiApK2roDR?Rb1XDxeZo8X0=Orf z?uYmmfN)nC}(9V=?$E&bNEdgT@OBo!>;aWcU8W zUhZCRab8U938nA6g)*#fDpOA0JM+oAk#&H%AKij&g8ac9=W)$@17qKC$Hm1j`U2~m z`cB@v&JNMf8v028N80{xJiVW$|BUw{#yg+!2KRIWHoojm=_;ydjfYy3wlOP7+ijxg%R`AU|;)^y#!)~8r(CDwR-n9>v z(C^Kn5pgmaiou2ccLXBeRsY*vdhEbAczL1oQR7qHP}thp9!k&iz6lg|WtmfP=JX!B zp5cETB@bg5xra8UeZ}eC$++bs;|q^2=)a!v~*1O@OyG8|C^Wm>9@}CAj!+h$GzV1FTI&%AYC)Ym3x}iNFFq&^6|LHvQ zy^7fQe!hzwwqxICEWEmIq^^amf2!-LQO@qsm!1EvZ!O7lJS?6JTh_xYn%8;GU;~4-}@$pxhnvs zIrUNa#pKoffz5lV2lLAF?gn5x@HJOEG2r46?k?KS2d*`=?^@~k*?-$dx4z#~G4wLu zhw**yJ*+w4#tpD-n0NuiS6CaJtaol~0mZCUf1}Xr(^|*rk75aYElPh_XQTLmd;HLK zF23;WqvD5$=`R1N`OiJrsjK^G&qZoENX=z*zsiK27)a>G?k6vy*oHv6>_! zjT%WC&a_B}@KBrOA?~o8AGr0q<1JqSjrqm4?$>?1E;@K#&Z44Pcj&9P4 z{*Y*N((Kuhq;O{6;k(U@AK#qCC*kkRX|0z%OI@7I_q$lz>cA(Cp20VRnxxOn=liJj z;MLWLZ74WJZ-t)7yHS1%C#};SUg-+(p==lJA&<0~@0BB`c7jg=e7eA=#R>A=XWCO%C>pIP8ePe29 zYZdc(8FRUgv{`Fqm0|?(ZDn{l1bw|YUGbJsdZC@ui4CFjclm#w^0x#dA2s+w_F!}6Sa$TmbyhyWe9f{M&6hh({qFbc{?0cYD;OWQj$kCp-u<*!kLspeC$L+*didY1C(t%I1G6~r?&1tg z`RG4&T%Umn2VmeZ7TC6&wgVCEL%+?b$&Y+G1G6$4Ww+Bt zbe+|O*3KX<-%NBs2VKzWL2K)PP0zyMy~NsDVBrkRl}B=IJUrjU;ybc?j^y9}^4*Q~ zl}~Q0kpA0eeL^;gBBOX~j$*WXYmD~!D1FMvDeQwac794$`A_rCU0XW!4&1c{X^nWv zyt8|Z-r4yVru;JHF?0;J<$E;ax1l$*y%m~e_91^+>NjOIrmUB5{oUgSJ64pHJmY