From 10636bd5f5558d1ac182b2ddafc845212fbd4cce Mon Sep 17 00:00:00 2001 From: Brian Hough Date: Sun, 4 Oct 2020 11:08:07 -0400 Subject: [PATCH] Version 4.0.0 Beta Release (#543) * chore(library): update dependencies Update dependencies and fix new flow error in triangle.test.js * refactor(stripunit): fully deprecate returnUnit Fully deprecate returnUnit functionality and refactor return. * refactor(readablecolor): make strict mode default Make strict mode default when passing custom colors. * build(babel): enable bugfix: true Enable bugfix:true in build and target explicit browser list * build(lint-staged): remove superfulous git add * build(lerna): lerna init * build(docs): removed documentation.js auto generation * feat(fontface): now defaults to looking for local font first Default is now to look for a local font of the same family-name before downloading. Can be turned off by passing null to localFonts. BREAKING CHANGE: localFont will now be populated by default and may have unexpected behavior. * feat(important): important helper for module rule specificity important helper for targeting specific rules in module returns for adding `!important`-level specificity. * chore(important): update to not mutate original parameter * chore(important): add to index.js * fix(triangle): triangle now properly supports inherit triangle now returns properties in a way that allows inherit to work by declaring an individual side for the triangle color. * feat(cssvar): allow a default value for cssVar Allow the user to pass a default value to cssVar for when a variable is not found. * fix(between): added error case when to/from unit is differs from mix/max (#511) * chore(library): update dependencies Update dependencies and fix new flow error in triangle.test.js * refactor(stripunit): fully deprecate returnUnit Fully deprecate returnUnit functionality and refactor return. * refactor(readablecolor): make strict mode default Make strict mode default when passing custom colors. * build(babel): enable bugfix: true Enable bugfix:true in build and target explicit browser list * build(lint-staged): remove superfulous git add * build(lerna): lerna init * feat(normalize): upgrade to normalize 8.0.1 * build(docs): removed documentation.js auto generation * feat(fontface): now defaults to looking for local font first Default is now to look for a local font of the same family-name before downloading. Can be turned off by passing null to localFonts. BREAKING CHANGE: localFont will now be populated by default and may have unexpected behavior. * feat(important): important helper for module rule specificity important helper for targeting specific rules in module returns for adding `!important`-level specificity. * chore(important): update to not mutate original parameter * chore(important): add to index.js * fix(triangle): triangle now properly supports inherit triangle now returns properties in a way that allows inherit to work by declaring an individual side for the triangle color. * feat(cssvar): allow a default value for cssVar Allow the user to pass a default value to cssVar for when a variable is not found. * fix(between): added error case when to/from unit is different than min/max Added an error case when the unit for to/fromSize is different than min/maxScreen. This was causing bad calculations based on the differing scales. BREAKING CHANGE: If you were using a mix of unit and unitless measure or working with different units with similar scales (em/rem) you will now get an error where you may have been getting a seemingly valid calculation. fix #445 * feat(ellipsis): ellipsis now optionally supports multline truncation * feat(easings): separate timingFunctions into separate easing functions (#513) re #402 * chore(package.json): clean up and update deps * Replace snapshots with specific expect statements * chore(rebase): rebase on main * docs(docs): return docs to build for V4 * fix(docs): properly set directory for pushstate-server * build(workflows): update github workflows to only run on unbuntu and use latest versions * fix(lineargradient): fix issues with rgba as first value with spaces * feat(math): move non-standard formulas to exponentials presets * build(package.json): prettier config and updated babel rollup plugin * docs(docs): updates documentation index * docs(easings): add easings to docs * style(js): run new prettier config across all JS * chore(package.json): add beta tag * docs(timingfunctions): comment on timingFunctions deprecation * chore(library): rebuild package * chore(docs): add pushstate-server to docs * fix(index.js): add easings to index.js for docs site build * build(package.json): bump version for release Co-authored-by: Vincent Ricard --- .browserlistrc | 8 + .documentation.json | 7 + .github/workflows/main.yml | 16 +- .github/workflows/report-coverage.yml | 15 +- .prettierignore | 4 + .prettierrc | 9 + .yarn/build-state.yml | 18 + .yarn/install-state.gz | Bin 0 -> 1377907 bytes .yarn/releases/yarn-1.22.5.cjs | 147392 +++++++++++++++ .yarnrc | 5 + babel.config.js | 15 +- docs/assets/polished.js | 313 +- docs/docs/index.html | 544 +- package.json | 47 +- rollup.config.js | 4 +- src/color/getLuminance.js | 4 +- src/color/hsl.js | 6 +- src/color/hslToColorString.js | 4 +- src/color/hsla.js | 4 +- src/color/meetsContrastGuidelines.js | 5 +- src/color/mix.js | 9 +- src/color/parseToRgb.js | 8 +- src/color/readableColor.js | 8 +- src/color/rgb.js | 22 +- src/color/rgba.js | 8 +- .../test/__snapshots__/adjustHue.test.js.snap | 17 - .../__snapshots__/complement.test.js.snap | 13 - .../test/__snapshots__/darken.test.js.snap | 17 - .../__snapshots__/desaturate.test.js.snap | 15 - .../__snapshots__/getContrast.test.js.snap | 19 - .../__snapshots__/getLuminance.test.js.snap | 19 - .../test/__snapshots__/grayscale.test.js.snap | 13 - src/color/test/__snapshots__/hsl.test.js.snap | 19 - .../hslToColorString.test.js.snap | 19 - .../test/__snapshots__/hsla.test.js.snap | 31 - .../test/__snapshots__/invert.test.js.snap | 13 - .../test/__snapshots__/lighten.test.js.snap | 17 - .../meetsContrastGuidelines.test.js.snap | 82 - src/color/test/__snapshots__/mix.test.js.snap | 21 - .../test/__snapshots__/opacify.test.js.snap | 23 - .../__snapshots__/parseToHsl.test.js.snap | 86 - .../__snapshots__/parseToRgb.test.js.snap | 137 - .../__snapshots__/readableColor.test.js.snap | 59 - src/color/test/__snapshots__/rgb.test.js.snap | 19 - .../rgbToColorString.test.js.snap | 25 - .../test/__snapshots__/rgba.test.js.snap | 35 - .../test/__snapshots__/saturate.test.js.snap | 17 - .../test/__snapshots__/setHue.test.js.snap | 13 - .../__snapshots__/setLightness.test.js.snap | 13 - .../__snapshots__/setSaturation.test.js.snap | 15 - .../test/__snapshots__/shade.test.js.snap | 11 - .../test/__snapshots__/tint.test.js.snap | 11 - .../__snapshots__/toColorString.test.js.snap | 37 - .../__snapshots__/transparentize.test.js.snap | 31 - src/color/test/adjustHue.test.js | 16 +- src/color/test/complement.test.js | 12 +- src/color/test/darken.test.js | 16 +- src/color/test/desaturate.test.js | 14 +- src/color/test/getContrast.test.js | 24 +- src/color/test/getLuminance.test.js | 18 +- src/color/test/grayscale.test.js | 12 +- src/color/test/hsl.test.js | 16 +- src/color/test/hslToColorString.test.js | 12 +- src/color/test/hsla.test.js | 20 +- src/color/test/invert.test.js | 12 +- src/color/test/lighten.test.js | 16 +- .../test/meetsContrastGuidelines.test.js | 74 +- src/color/test/mix.test.js | 24 +- src/color/test/opacify.test.js | 22 +- src/color/test/parseToHsl.test.js | 65 +- src/color/test/parseToRgb.test.js | 104 +- src/color/test/readableColor.test.js | 62 +- src/color/test/rgb.test.js | 16 +- src/color/test/rgbToColorString.test.js | 16 +- src/color/test/rgba.test.js | 28 +- src/color/test/saturate.test.js | 16 +- src/color/test/setHue.test.js | 12 +- src/color/test/setLightness.test.js | 12 +- src/color/test/setSaturation.test.js | 14 +- src/color/test/shade.test.js | 10 +- src/color/test/tint.test.js | 10 +- src/color/test/toColorString.test.js | 28 +- src/color/test/transparentize.test.js | 30 +- src/easings/easeIn.js | 37 + src/easings/easeInOut.js | 37 + src/easings/easeOut.js | 37 + src/easings/test/easeIn.test.js | 68 + src/easings/test/easeInOut.test.js | 60 + src/easings/test/easeOut.test.js | 60 + src/helpers/cssVar.js | 17 +- src/helpers/directionalProperty.js | 5 +- src/helpers/em.js | 4 +- src/helpers/important.js | 47 + src/helpers/rem.js | 5 +- src/helpers/stripUnit.js | 23 +- .../directionalProperty.test.js.snap | 185 - .../test/__snapshots__/em.test.js.snap | 7 - .../getValueAndUnit.test.js.snap | 239 - .../__snapshots__/modularScale.test.js.snap | 145 - .../test/__snapshots__/rem.test.js.snap | 7 - .../test/__snapshots__/stripUnit.test.js.snap | 526 - src/helpers/test/cssVar.test.js | 22 +- src/helpers/test/directionalProperty.test.js | 140 +- src/helpers/test/em.test.js | 4 +- src/helpers/test/getValueAndUnit.test.js | 68 +- src/helpers/test/important.test.js | 141 + src/helpers/test/modularScale.test.js | 51 +- src/helpers/test/rem.test.js | 4 +- src/helpers/test/stripUnit.test.js | 177 +- src/index.js | 10 + .../_constructGradientValue.js | 5 +- src/internalHelpers/_curry.js | 8 +- src/internalHelpers/_endsWith.js | 2 +- src/internalHelpers/_errors.js | 2 +- src/internalHelpers/_guard.js | 6 +- src/internalHelpers/_nameToHex.js | 4 +- src/internalHelpers/_statefulSelectors.js | 5 +- src/internalHelpers/errors.md | 10 +- .../test/__snapshots__/_hslToHex.test.js.snap | 49 - .../test/__snapshots__/_hslToRgb.test.js.snap | 67 - .../__snapshots__/_nameToHex.test.js.snap | 37 - .../__snapshots__/_numberToHex.test.js.snap | 9 - .../test/__snapshots__/_pxto.test.js.snap | 37 - .../_reduceHexValue.test.js.snap | 11 - .../test/__snapshots__/_rgbToHsl.test.js.snap | 63 - .../_statefulSelectors.test.js.snap | 40 - src/internalHelpers/test/_errors.test.js | 3 +- src/internalHelpers/test/_hslToHex.test.js | 32 +- src/internalHelpers/test/_hslToRgb.test.js | 44 +- src/internalHelpers/test/_nameToHex.test.js | 24 +- src/internalHelpers/test/_numberToHex.test.js | 8 +- src/internalHelpers/test/_pxto.test.js | 24 +- .../test/_reduceHexValue.test.js | 10 +- src/internalHelpers/test/_rgbToHsl.test.js | 50 +- .../test/_statefulSelectors.test.js | 31 +- src/math/math.js | 41 +- .../defaultSymbols.js} | 57 +- src/math/presets/exponentialSymbols.js | 61 + src/math/test/__snapshots__/math.test.js.snap | 11 - src/math/test/math.test.js | 43 +- src/mixins/between.js | 11 +- src/mixins/ellipsis.js | 17 +- src/mixins/fluidRange.js | 12 +- src/mixins/fontFace.js | 20 +- .../test/__snapshots__/between.test.js.snap | 9 - .../test/__snapshots__/clearFix.test.js.snap | 21 - .../test/__snapshots__/cover.test.js.snap | 21 - .../test/__snapshots__/ellipsis.test.js.snap | 34 - .../__snapshots__/fluidRange.test.js.snap | 40 - .../test/__snapshots__/fontFace.test.js.snap | 93 - .../test/__snapshots__/hiDPI.test.js.snap | 29 - .../test/__snapshots__/hideText.test.js.snap | 18 - .../__snapshots__/hideVisually.test.js.snap | 15 - .../__snapshots__/linearGradient.test.js.snap | 22 - .../test/__snapshots__/normalize.test.js.snap | 158 - .../__snapshots__/radialGradient.test.js.snap | 36 - .../__snapshots__/retinaImage.test.js.snap | 92 - .../timingFunctions.test.js.snap | 145 - .../test/__snapshots__/triangle.test.js.snap | 131 - .../test/__snapshots__/wordWrap.test.js.snap | 17 - src/mixins/test/between.test.js | 29 +- src/mixins/test/clearFix.test.js | 16 +- src/mixins/test/cover.test.js | 16 +- src/mixins/test/ellipsis.test.js | 55 +- src/mixins/test/fluidRange.test.js | 37 +- src/mixins/test/fontFace.test.js | 102 +- src/mixins/test/hiDPI.test.js | 24 +- src/mixins/test/hideText.test.js | 13 +- src/mixins/test/hideVisually.test.js | 12 +- src/mixins/test/linearGradient.test.js | 54 +- src/mixins/test/normalize.test.js | 155 +- src/mixins/test/radialGradient.test.js | 29 +- src/mixins/test/retinaImage.test.js | 79 +- src/mixins/test/timingFunctions.test.js | 96 +- src/mixins/test/triangle.test.js | 121 +- src/mixins/test/wordWrap.test.js | 12 +- src/mixins/timingFunctions.js | 6 +- src/mixins/triangle.js | 21 +- src/shorthands/animation.js | 5 +- src/shorthands/borderRadius.js | 5 +- src/shorthands/borderWidth.js | 4 +- src/shorthands/size.js | 5 +- .../test/__snapshots__/animation.test.js.snap | 31 - .../backgroundImages.test.js.snap | 13 - .../__snapshots__/backgrounds.test.js.snap | 13 - .../test/__snapshots__/border.test.js.snap | 33 - .../__snapshots__/borderColor.test.js.snap | 37 - .../__snapshots__/borderRadius.test.js.snap | 43 - .../__snapshots__/borderStyle.test.js.snap | 37 - .../__snapshots__/borderWidth.test.js.snap | 55 - .../test/__snapshots__/buttons.test.js.snap | 51 - .../test/__snapshots__/margin.test.js.snap | 55 - .../test/__snapshots__/padding.test.js.snap | 55 - .../test/__snapshots__/position.test.js.snap | 87 - .../test/__snapshots__/size.test.js.snap | 29 - .../__snapshots__/textInputs.test.js.snap | 123 - .../__snapshots__/transitions.test.js.snap | 19 - src/shorthands/test/animation.test.js | 78 +- src/shorthands/test/backgroundImages.test.js | 13 +- src/shorthands/test/backgrounds.test.js | 8 +- src/shorthands/test/border.test.js | 24 +- src/shorthands/test/borderColor.test.js | 28 +- src/shorthands/test/borderRadius.test.js | 34 +- src/shorthands/test/borderStyle.test.js | 28 +- src/shorthands/test/borderWidth.test.js | 42 +- src/shorthands/test/buttons.test.js | 42 +- src/shorthands/test/margin.test.js | 42 +- src/shorthands/test/padding.test.js | 42 +- src/shorthands/test/position.test.js | 70 +- src/shorthands/test/size.test.js | 20 +- src/shorthands/test/textInputs.test.js | 114 +- src/shorthands/test/transitions.test.js | 12 +- src/shorthands/transitions.js | 4 +- src/types/fontFaceConfiguration.js | 4 +- src/types/interactionState.js | 7 +- yarn.lock | 655 +- 216 files changed, 151416 insertions(+), 5342 deletions(-) create mode 100644 .browserlistrc create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 .yarn/build-state.yml create mode 100644 .yarn/install-state.gz create mode 100755 .yarn/releases/yarn-1.22.5.cjs create mode 100644 .yarnrc delete mode 100644 src/color/test/__snapshots__/adjustHue.test.js.snap delete mode 100644 src/color/test/__snapshots__/complement.test.js.snap delete mode 100644 src/color/test/__snapshots__/darken.test.js.snap delete mode 100644 src/color/test/__snapshots__/desaturate.test.js.snap delete mode 100644 src/color/test/__snapshots__/getContrast.test.js.snap delete mode 100644 src/color/test/__snapshots__/getLuminance.test.js.snap delete mode 100644 src/color/test/__snapshots__/grayscale.test.js.snap delete mode 100644 src/color/test/__snapshots__/hsl.test.js.snap delete mode 100644 src/color/test/__snapshots__/hslToColorString.test.js.snap delete mode 100644 src/color/test/__snapshots__/hsla.test.js.snap delete mode 100644 src/color/test/__snapshots__/invert.test.js.snap delete mode 100644 src/color/test/__snapshots__/lighten.test.js.snap delete mode 100644 src/color/test/__snapshots__/meetsContrastGuidelines.test.js.snap delete mode 100644 src/color/test/__snapshots__/mix.test.js.snap delete mode 100644 src/color/test/__snapshots__/opacify.test.js.snap delete mode 100644 src/color/test/__snapshots__/parseToHsl.test.js.snap delete mode 100644 src/color/test/__snapshots__/parseToRgb.test.js.snap delete mode 100644 src/color/test/__snapshots__/readableColor.test.js.snap delete mode 100644 src/color/test/__snapshots__/rgb.test.js.snap delete mode 100644 src/color/test/__snapshots__/rgbToColorString.test.js.snap delete mode 100644 src/color/test/__snapshots__/rgba.test.js.snap delete mode 100644 src/color/test/__snapshots__/saturate.test.js.snap delete mode 100644 src/color/test/__snapshots__/setHue.test.js.snap delete mode 100644 src/color/test/__snapshots__/setLightness.test.js.snap delete mode 100644 src/color/test/__snapshots__/setSaturation.test.js.snap delete mode 100644 src/color/test/__snapshots__/shade.test.js.snap delete mode 100644 src/color/test/__snapshots__/tint.test.js.snap delete mode 100644 src/color/test/__snapshots__/toColorString.test.js.snap delete mode 100644 src/color/test/__snapshots__/transparentize.test.js.snap create mode 100644 src/easings/easeIn.js create mode 100644 src/easings/easeInOut.js create mode 100644 src/easings/easeOut.js create mode 100644 src/easings/test/easeIn.test.js create mode 100644 src/easings/test/easeInOut.test.js create mode 100644 src/easings/test/easeOut.test.js create mode 100644 src/helpers/important.js delete mode 100644 src/helpers/test/__snapshots__/directionalProperty.test.js.snap delete mode 100644 src/helpers/test/__snapshots__/em.test.js.snap delete mode 100644 src/helpers/test/__snapshots__/getValueAndUnit.test.js.snap delete mode 100644 src/helpers/test/__snapshots__/modularScale.test.js.snap delete mode 100644 src/helpers/test/__snapshots__/rem.test.js.snap delete mode 100644 src/helpers/test/__snapshots__/stripUnit.test.js.snap create mode 100644 src/helpers/test/important.test.js delete mode 100644 src/internalHelpers/test/__snapshots__/_hslToHex.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_hslToRgb.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_nameToHex.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_numberToHex.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_pxto.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_reduceHexValue.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_rgbToHsl.test.js.snap delete mode 100644 src/internalHelpers/test/__snapshots__/_statefulSelectors.test.js.snap rename src/math/{defaultMathSymbols.js => presets/defaultSymbols.js} (74%) create mode 100644 src/math/presets/exponentialSymbols.js delete mode 100644 src/math/test/__snapshots__/math.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/between.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/clearFix.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/cover.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/ellipsis.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/fluidRange.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/fontFace.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/hiDPI.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/hideText.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/hideVisually.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/linearGradient.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/normalize.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/radialGradient.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/retinaImage.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/timingFunctions.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/triangle.test.js.snap delete mode 100644 src/mixins/test/__snapshots__/wordWrap.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/animation.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/backgroundImages.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/backgrounds.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/border.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/borderColor.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/borderRadius.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/borderStyle.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/borderWidth.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/buttons.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/margin.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/padding.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/position.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/size.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/textInputs.test.js.snap delete mode 100644 src/shorthands/test/__snapshots__/transitions.test.js.snap diff --git a/.browserlistrc b/.browserlistrc new file mode 100644 index 00000000..c548505d --- /dev/null +++ b/.browserlistrc @@ -0,0 +1,8 @@ +ie >= 11 +last 1 Edge version +last 1 Firefox version +last 1 Chrome version +last 1 Safari version +last 1 iOS version +last 1 Android version +last 1 ChromeAndroid version diff --git a/.documentation.json b/.documentation.json index ef0a3ef4..dd114bbf 100644 --- a/.documentation.json +++ b/.documentation.json @@ -94,9 +94,16 @@ "directionalProperty", "em", "getValueAndUnit", + "important", "modularScale", "rem", "stripUnit", + { + "name": "Easings" + }, + "easeIn", + "easeInOut", + "easeOut", { "name": "Types" }, diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 44c7caef..583edb53 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,19 +1,23 @@ name: Node CI Test -on: [push, pull_request] +on: + push: + branches: + - "main" + pull_request: + types: [opened, synchronize, reopened] jobs: build-test: strategy: matrix: - node-version: [10.x, 12.x] - platform: [ubuntu-latest, macos-latest, windows-latest] + node-version: [10.x, 12.x, 14.x] - runs-on: ${{ matrix.platform }} + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: @@ -23,7 +27,7 @@ jobs: - name: Get yarn cache directory path id: yarn-cache-dir-path run: echo "::set-output name=dir::$(yarn cache dir)" - - uses: actions/cache@v1 + - uses: actions/cache@v2 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} diff --git a/.github/workflows/report-coverage.yml b/.github/workflows/report-coverage.yml index e7c13b75..4ffc735d 100644 --- a/.github/workflows/report-coverage.yml +++ b/.github/workflows/report-coverage.yml @@ -1,6 +1,11 @@ name: Node CI Coverage -on: [push, pull_request] +on: + push: + branches: + - "main" + pull_request: + types: [opened, synchronize, reopened] jobs: report-coverage: @@ -8,17 +13,17 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 - - name: Use Node.js 12.x + - uses: actions/checkout@v2 + - name: Use Node.js 14.x uses: actions/setup-node@v1 with: - node-version: 12.x + node-version: 14.x - name: Install Yarn run: npm install -g yarn - name: Get yarn cache directory path id: yarn-cache-dir-path run: echo "::set-output name=dir::$(yarn cache dir)" - - uses: actions/cache@v1 + - uses: actions/cache@v2 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 00000000..6f2a230b --- /dev/null +++ b/.prettierignore @@ -0,0 +1,4 @@ +# Ignore artifacts: +*.yml +dist +flow-typed diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..c4b64eb6 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,9 @@ +{ + "arrowParens": "avoid", + "printWidth": 100, + "jsxBracketSameLine": false, + "semi": false, + "singleQuote": true, + "tabWidth": 2, + "trailingComma": "es5" +} diff --git a/.yarn/build-state.yml b/.yarn/build-state.yml new file mode 100644 index 00000000..12877554 --- /dev/null +++ b/.yarn/build-state.yml @@ -0,0 +1,18 @@ +# Warning: This file is automatically generated. Removing it is fine, but will +# cause all your builds to become invalidated. + +# core-js@npm:2.6.11 +"15178ded27ab674ae2054269453d809bdb1d00b98392a34947b5d43ea7a5811e5674c2fda7d48bb653b24a3506b0a8aa126bbac861bdeba93438ec6c7efb2d9d": + db736dc4074e342691ef9817883333341256536f991f66d9509013388d3fc65bdbc8bfd6cf60ba237fe0f94d7915b02a2e398309a3f8fa1fcf3f1ef25cfe2b1b + +# fsevents@patch:fsevents@npm%3A1.2.13#builtin::version=1.2.13&hash=87eb42 +"2564bef5e1d1616dab22376e4afe7b73b2ac5539ceaea41ddb8f35c766bb8b831bf4861d53d6d930a3a5108b4d6919b585eabfd7dbce49eef2eb0f74602be02e": + 07711048af01204c0b06c7c9eaf38dcd195bfa25c74729a86ef99a133353c43a8d339271fb206001595bc6a6301eccff01f3448d27afd2e4a3c646eb231b15ba + +# husky@npm:4.3.0 +"b6c2d49d0eb0ccd03cd8d5c01a23823972e91724d5313135fb55c2090a54e63449ce42dc64f102e84407ec8464d7ed38e2521f28cf82d313cbe7425fc5f1bffc": + d513fcedb6f5fcb0f4eb96b6e9548affedacadccb2a93924b6fee22394d1fad39ea544b1c9e11cfbfb0e56d283877d29419f5cc2ca45ee0aea36b6c8ef175257 + +# nodemon@npm:2.0.4 +"6cfc557b1b3ed98544cad13ffd74462797496fe01d0dd9649602e1c1359d7df7fba294f2ac2939dc40ca1a1f18a3b7641601422c7b242c5785fec1a2e013a42b": + f4851e4132f5b7e52f8d2b20f1fcfff59132390d4ea58c2187c135e4ac5422f9e0452e68d5e2183d0a57a9f4e4f4aa5a769506ba205102a7ed394c089e0d045f diff --git a/.yarn/install-state.gz b/.yarn/install-state.gz new file mode 100644 index 0000000000000000000000000000000000000000..b7ffb1a8343c073bed9b543dc36c98e0642a2051 GIT binary patch literal 1377907 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

SIeETZ7E-I1 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

(M}^AWDZ0!RA?9lVuYZe1 zq3(1Mu`OuzM&Jvir7{LTsP#_4IsTGLvZ}#{J0$}MB&13vF+e_>rU{up_=uOc z3pfrJEbd9OS9i6m`L&*;78U_Sm)5PN?%3lky8X}*3xmCIClP~mK{CKrA^Az?4MSmD5>F>K#LA29s?7DpgGGnB0SUxXjL~-GLxGAC31`%9`;uJ&jHXlh{bp9BJrp z`P&`gy4^D0o9Vhz1vt5;)>Wxq;%k_qfOy`~8u&K9Wz)UmBnNv}8b%&g(0U(nUOTKOqsdg-Z7-r-vlGu^$O$1b5`*{Lv0iv~O}g-1cW zQ94xYQTNQp-p_nPSypZ4d%DRsNP!d(de|zoW6yQyHYyb6Je8=Xx(jVr3;&i*bvq1${Pnv0udWZACtt-KGleRQ#Shrrk<0p1HT^xH}wMf2Vr-*AM z6Kf<2!D-=;>e~V}DThOH1g3+q)R)s=<7jH8nhfa6)FghqZ3q%>YaP`{ zlnCggJx%?tqk-ug`yM>HNAkttn(@d>E?}j>zb$5Zr;3snDLE#0)I}8Tuz*)!aSZ4@X$dyGucPzNtNb#VNB6q!bL?@2y1srAM_Ud6gn&X;UK+#Xauq zLd)3vSA_?o>8*Q7+=h7$OjpKNe0xg3wuT+iz`N(0Rip$xl;0t(6 zJoR3B8{>9$wCfkwNctewq-{r0>wBgia>-jem#VDx?NH^>X9T41ac>FIc{d6xP~VX! z4<0s0XmnRXZH4>k63G>{S2L;Ut29YL+HVL%NvAe#V-w-lO4iYVwslP|(R@D*2VCSe zce(?j8(s&CrDCYKZyj9}qL41)040=)cv;}m;63z`_0decj|Cv&mS~gE#tYtFp#t7U zi2JKiZ*X|!R#F)5uXiFxSA-gjq<*t)dc_%o))j*dyO9dj59NV)3QHlQpws+;k5Ig1 z$u-xee1}|zax17Ze9e;QsXZJZO!o~HQUa@9YIyO1vPOl4&s_x6xkxzWUH9P!XR$@)2x2e-00Tc7TCbE=kqPnffJdq8YzKu0xYSsrA<_ z3Q&l+5VRYiDd}yX09e-gQ%=!RzPM7k-TIdicC55Ck*2;>ih&@!R7kjEz4s4%1h>R* zm$A9?ga%4{08D5px7DsIN&(d~4|$Jt0Ydg%g5J4iE>O*>H`dZc&`~-?FNI5=awu;l zQm0cw11iPTQnyFD3r9zM11+2W#z#o9_8lW6Ejf(#+@l)iFs@6HSj@u!z;UT=(i8(K zfLFEc+!h_`xhVEnw*nwQ;Ay*vGWv^2I;li4z3r`b$DNdw9d2EQwl@aGf8Zm4EF69- zPA>KTp@g!H;5d>(?N%|ZDu4Njg&Z8WOUXV3d_GNRz-`x?wG_V;(MvXt-G&MIWYU3K zU+sBZTxpc+K-dd3#Br}$z+Cxne1vZ*9!@F&7U?sjc)xNOkAj;Tv1{*>8lRN-%zr#$ zhlj_mQS8n-kg5huN+htqm$JVAphbQ8sL(y;(F>4zOq-(1F$p!YW@kwSxt~$!|NkR^ zl9RqZ-kD3uBiC+#A5A}X{-C2z*SxPmn3b7+Q)H?HuU?JL*B7s_>rF9rhnouXsZ3b9 zD$sTyG`eb%74*ATjG!nHLiu^|@5$c9VD2LtuqVWR2o$}La`wndwcgXE-gEA#D08EFT2_bBHYx!m!aVSgp zbV(UPbC^b?ImpzKr_P5sOR9yX55S02*4ETxy=Wwojnq!FS<4*WPtq`y13~f8!%4KtxS)-&-Atr8CCR zlVWanm&jJdZkDE}^?9G(6`p-aJsGHX9({bSDa(mGOpvEopxVf4x?Ak)1-i*_skETj z2!Dsl-QTec?ls7Uf8ZmyQcFgPh5yFMu@jp=H}bd(g}g$c-SrZ4Ve+CXe%w%cInmwi z(j1JfN6!H*5-$l$s>(k&GPgeUtuWQQ0IZ0ZU)q~6F0`#~w6Dqf6 z+DhsGg7$peera$18y~?%l4O6NZr2l@JG&ZxoSK2$sp!j5fqtq)wDb$5yqUNDmi(%& zrMO~i@8uxvQ&q|Jp&HBAb4;$UUvF#Ak-l3o2C8S30jX%}SJU|$A3-&Svvr(!mmY_Y zia9TV*6{mgXSq5nP|3O(t4v=aZ90v3YX`@5om)74?*^6=cS&@esGRQR2GqPsTVNmx z1BEi>-m3S1ySco!bSt022kZgKW>wa!V(R308yj|{c|_OOa#w6yXPc|Jl2wA5FzeC9 z~dB%8O=+mTLpl=b9p_b@G>Bpf7Pj-;y22O#oEKHzl# z;`qm#xCe$`guP(;4fR-8t})_X6o_}eMqZroH%Zx2_Py$qtwK`YDqRrl_t#x8B3{~Q zws+3?xLmVWLAQN&gI3ra6r!m=M~ydQ>e`QkN7Zn;g8ud$g&W$C^MS#mn_p3-O_^-I zs#Gap-07%3P*ixb?+)OW7r;{^h^qqBkMgH#?j%_QpCrNbT|glj*!r5}p~EYX?b}L7 zPpz}8_F`{}2gHxOrjCn%Akrg;BYLE-D_kVH@Ssv~gD1Ci&AMF{tztla)>PI-VGDh= z^)ckxEQgg;TRwjko=SeHtwJ3e`qsxbOZQg4sNBO-^8OM(y9kt-Hi}r zJ9yPs)nNKJ%ga)xM|(8$5(+)xk_M z7PuHIlrz;~)!MXxc}nmZ715-Gp(-Jjs!z`OE`-k8+jhtxPNo6*?l->um1WE$@c$~U zpNKCXSgda))Fs-JL^Y>2Ky!~cvr83HQiZM&&2b6GRKI14eUeqzIldc5c{5c$9+{b# z>RO(<%2nHQ{h*0q>((+>^%+VPenkCLxy&5rSB8zVaDwk$b=7)f$ysj~YCZsO7#KQ} zo|nd0L`$d5LtcM~XEnLY{z#RgwkzfOf4!@oTiFC%*gEf5spL=Nt`sufYU3D2-kz4j zbcbL>4IM?4v+`0N-h}4o4wZDOA|DkMAu7NAeLhE1df!RZo|hYWiA-s)kIx7w=dw{Y z5>d1~Q=@zC?e6N-;D)L$9C>AeYopP$4NnY#SnT{M(Ce|b>J{RkEG!=;A%&@b;e zNr3Ct)z3U2mbb^k1=acWS^85@Q}D~1;Wgzec(~+5Ee4bHt+C zlA99c3wGBGUpyrltsg!|{^ioC0cR9Edp8J^s$ZKh?|sw2 z4O{|X@{lPXMuy-5@DWMW{NN2_lH*=E54>6q{UlE%O{tv^sS#OJiBOT4D4zGx0hK!* z{DpILu-2hKwh*}gd3gvg!9a~PMWWiH2ba`dAai;~nU$M9EVRG!%H7OY2I3g3lba?y zq&8f^$Qj@WidbEjo_Z0JG|^FW*-e1;+q3plpAxD$A*MV#c~pIS6Rb^7f{H@5_9he| zB}NlORw&RAL`Xm!PZ<~*Yux20Ev4B6H^J7CQefN$FpOGgE`8Oe8S{G)cUQDHY#TOE zl;(0<^P`u*qI&kJGRX8DnO!cvDAjGyt4BkJv-7FMF%|XRTnNo`D*%FYue6VvN{5PD zT31;U2$JgLJ!&9w`8F=f*pLs?_f%wdD}l9mTL7n5B8kGi7kTn>%i%tX+>-2aQXGX^ zhf1RhDDzNb9T>s$aA+_sf*k)H>0(+Va+9=a?XtWmoB^evQNo+ewOIQHJ8ONuNX*%7 z5PeJe0A$uH{NFBqJ{d=k2Vjg_>C~0nq3{9-I1OGdha{zq*Tem=BNN(4gb2zLQqkyL zYa?=L*1WQFKW+K4RV$n?1dOnn0)9*dg|jAk?#h6CloO+RPr9iT{aA=8Al%g-@fV4t^sKCgIvZ7` zZnTK=8( z+3Dz{YN3?vECJuaZCt+YR#^^rY)NY4Rgwh^d{S^Us`!w~Pgj$V`>M9{U4uADvixF8 zOwS3=!qHS)P8%pw&Upf9IX&I(TXoINxhKFnEp|eLj`&wpGQa9_i|eM^7)@&P+FGww z1rf*+sRj{rP`nG)`4tPcZ%&Zjii$IBqJrA zOCOHmdw+81E&|CS2m()Ak)Qx>H{emS5miA^w#dCdU-#62q>bTkDMOLZnro2*q4B9N zf+AZREpqTP}X;j78F%pQM!^VD4kWLa%PYrxr~s-EGJ z*lv}tZslx28^YC3hB~Fzbdl;S!R~4lHiOsi1#6$m$##p}h$Yta&JR=^Tbf|u<5{Xu zo9kn!u_^J1w*{auz`Y8plAWoVtXs9_(a(^whX`8T-SadmoF#`N*Can+<0ZIDp3H)?lAO`}8 zb%U(Cx2^f3Y@%9D@M%2@RpO0{g#5!Uv60$+sl(ENrBp1o^WFa1Ves_&(hHT);Zp;m zFCF$cuupXY0ya;YGM%N=s8f&IYGO+Ze^(ekbsLjFjj4-JAKnO}ioQskeNG48iPW$( zgmi*T)KVx_FC0Sga6MMfNO$V$Qiq<;epG!2x86!CX;ySedFH2n@?>LX0Rrp_6Z7&e zuCWgllw~Rg&v_}EyPV(D1!`zAo%CRiMQK%Zd236;&7(UP0GCq@OnB@_xlXG3mCjg{B4qzlMcjTDRyb;zy9k z0ur+6D$$Dsbn8q!49nV55+;|_MYmi%4IilRx>mEFcM-bCN1(pr=pWQb<$Y7ql#Ae^ z+w(h$i}&Eb*W(QYdGo5er@s1t=P>wbNdu#g@4QI!(%`^vhY%|OCQt3fhwYxlkc9z7 zUBvcB{U8pVZiMb~%_qcOi7k|pq$c9R=dnn0WquQ&rGLQQQJfSglCB9f$s~Mh`xs%s zq9lF4NfRVCzODjLJM*o1>`%BI8VBBQ5O*mwdC%2Z%hXCFnDWFF5F=^a-3wp5WvTl-(H4uoxke{Xrc&iT=1T10uNj55(z=7GcEKRhPcND*9JHEfxFs@joElj;*g*)n%@9^UEDBX7FGVj^*0nqLXlsASgk zX@|jK4WUhkApnwkD{jLX);uDUKZ#vLs!zehx2iSGJ)&CTeKo?8#ZWePSu|5xTyC)P z_*@$Zi)Lpdirzk#u2fp>*i|Jme4hcG@=6)M98_#7f-3J^Hp|gUO@9LSm$NR!N(-s1 zJ&0G0ihh&fuB!yfe9NoDvQq3xA#{7poTmP%2xq2I3YAmR^wgxXo6oBY-+dotBf)Np z*F~DT^*L7x=~6XXZ`^NY^5slHsV%9cTZWnLfZ4)Qww=QJC)7+GO{nxK7w?tdY=8hq zfg1++#y0FBU|3is9kG7_?~_b33ZNrl)E)K7G! zs&jj4h)v(czxOM;L}nlDtfF>;wwV+kdf;9)_9CkC1fm_`Ue>*s6RB>x5rpsdDGZ(! ziTz^S9N`nRAzQm>@W$7+>8EHFpX+rEMw6PM*8@0+)3w##UtQIWeTBza=O*dn4H)72 z4zHfUh`Nods&yr=_4@1tPE(u456%CM;K-(^NGv9&+_OrXP*UIF^Tsuo=REirZqG?mN_mh`t9N=?TUNV$2865_L{nVY#2aE` z1h&wFKDrp{QR3(%+9={PMFNb7L1)xTVF>~HY}~=EX7{7N(a_awDh$ELyA}GS5-peK z=qxgv`iS!*S=`g7`b+%D<#bC8zVVNc4usDxDc=g^H1!(Ra<#}+84d;2$^Js~<4`sN zI4E+Jcz^XuOVL*==P9mvgU&y7Yqx42syryDk@w~+n&HWRpA$7PCL!wannyL|pBh@P zP(2hr4mFa_OF%zc{}0uGvo|G%-LR+D|Fm1;F~04+G8IZv3HzF{Hmx->Cs12bkf-{W z4mh%chS^RSRo)_BCVz6)sW0XchW?{E4-sT2I_e6OZC;?lKC>q%t@P!{o+&k{I=3_!`*O&vlOsy8R-*&zgl zv#Zbq(A!)I_AeTH7qG?s=r9&)UfZ=V$&R2Aj}gaL$LJ)fN+T$z;@pq!$X0~0tI9XJ zrc%+`o0|Z7{mGR;jeSb;LC_ay-627vk3CQd6`K#w61u;j&9f<4l4O99Nvw%y)V8E1K_I;07 zV$mJY7xD7`d+SovHu&{8EY@XXBrR(uRg%MLjk7ipx{d+d;eZt#$aQ<6e3N3*!@Tz> zqA1ZnMxGLKdB!nETpvZMutZS+rBbNvKv6Y316&Sm?bX1E%=CIaRU|tK!Pw_nO=?yK z&8WbdEXi8$oZCg%P-R57c|rrHjp*Vi_I1DQF%cZKy_)1n0^-pXDErv5%t0N)cFHUjB_Y|vGAn4GT(fiS; z@l*D?avCKPgmBbaQqd%t*;?sFN2kD^1`T+}E%V^%J0}4)XoQl~k&{xoBfCR-Yc5G} z|4}=?sXzzm9?Zl+1pM6E4dj%yhtzQBlS*KR_mKu)t9IB#B$tgXntz&pN{MUgOLaro zelJNKO|=?Fwx5Zpby)*h&tlzSRLEa$-!4K5e<=3G-r?F>7$k6MLmrCsxX#Og;X?sW zfa!-PYt={W(iuH_qeV^f_?w17<2oC(%N?RFSNqARKwc!>eo?az!ZFvH_v45{!_VZr zZ^!{LxxoHFT%3LI!bx4zo}rGB@$ zNAavz+ZcB{8*o9DAZi7E!xIL{z3Oq(v{{}+39^f&)$3T4r1cK^j+E+yZ!oTJbZews8Ll(OESyk58z3?H6$^Ch4 z&{)ctDZzM;XO?ip{?!*)xNdI-In%HB3$?I1g zh8NF|3W z09=?G#XUE-0J#t+fs)Eab764euZgc*thq>s^50aTh)D%yj9#HY*xQKAv9~ z0ZRe0mfQo1&WBKZ{FdAS1>=H9vNbZ~h-+g_s_Hq~vAl~r5>sy6=V0Dx*IT3Wd$`(! z9tto@F))z}iiHlI7C0WUFlh0w~;@)(A)x zQQENrN9E2CV2PuXixalaeDA^ir=#-%EWPb-)^mPW` zJEspwxi7%z5?AJ>oQ=r7Kbnvq^OH6ToY@`N-bQ+rT4nyxM1o|*Guv9?XtBkolKmEg zA(c>No$FiJl3?ClSfyiBuH=1M&8w!B8)Xpp0|=rR0>N8f+it{AlH##dLbM?k5PBEE zf|R_ey`7kGnzCYUFqRaHM%TaytEZlAP=}TFD;XccIo%?sJ?$w*$UCkih zO19KowAn`iUvxc4IP|ioc}`TPf>p9olI$VPcDTH)gqy@2K-dM8dHH1J`tcoAzbJP2 z?(nj@a?&9|h^Wf~sBqK}9?5=eEisRGy(=^P$;6N}cr{?6lmo3wf%sWPT26HqXkSky z5%SjfbVcv8!a+4BY<}#opyT^@rEs_^>8{*9SA`EXS!k&X{AGYrM?A@8}s!WLl0ze>Qi%BWP zbRhys0^73cF7DkcrAk`jR=tz2nnM|zKb+nm4-m?o(7jr>2w*vNN!tjH|Fkcp!r_)` z%ypC!O`Lemam_}@t)jQ}j|3Q=s}o*1R7Uo5DXnsxE*0ITk0EBMW|?>lWX?gL6tYl7 zP5@WtG~MKH`EZ>wL96qd;I8$hbgpNS{t5w`e4zjb=goS^1>5-iXsZy-YorIDK5fowHG!1CHYGKQzal*<0p)(j3AsJdlG%xz2S-Ta>$~N2kcsdU*#~VtM1g|yz1@CD<*GouKCxu zLlM{Z`Ci{ynm{%QdG8LUpXv~tK@j9?=&Xu{HHkxd_la+oGMZXs$;9QF^wnW6z)L?0^z@!3wa!SrXUr=1w64f zd8x91LhcuK^_VW5^lq_q=U@v*LyvQWNo1k4x(qAL#tR{sJPnL}bnO99CRf2!OExGS z%OjU{l`4%KajR&o*>Tf2md7l4b#YqBmOw%c7b&F(xz!v2KBB7TZ4nQ6EsDA=1-!DP z_)`H6wnT~Td@xmaRmY%MCtknLC8YFWlY?JfVEAlzWJ=AgR}a(OS2j~suLzhkGr@rp zzVI^uV;`8F)B5SD0Xnm81aU}x(4zL(dCOEwIg=WGxSmMH57lDOhh6|1p|QbZCs%-V z0QXVQX#!cOJIR4=txD>phN!%la46By=jDJ*z2fe~CH0&;2qI%v>7xDRf@IaANT_)c zjaDVTJV@rm9blusS2CALGFDk)h z;rA0ooB+NyILcS$>>1jNS1o~?%HS|7>f+5P6qVr2As3KyG63B_yVb^#+)vjT_nKwf z%yvHC^!4Ux@+lp-l}nxWYG0H>ggatcOA$+)AZwM(Z8n=)F-Se-WaR>GTy4l0>Q9&_ z9-btiVc4W>ygKe~(@2j(Y@24CwQAwUk=gb^PZ_`+RdGLus7DH*V&r0fhHAOU-HUE@f(iU3a)F_wK#@^9ybfLysjJVYS_cuBFhrd0(wotpOg+*(=`G0xhW zN4SeBi*NCATxaj9e519ILYGCQZe1Ax*{{suEyH3+^{dkHj($l+k3GI)X+z;?)v=XS zlHBlBX@AbmDeF{X7$4c-8WP(|nsW2Bt8@}}%f=Z$%B!MtQ$Cev!JZ_*!}*--DQ#fE z({dS;mX5&Q+q~Ovcdj&yTfBgNIg}G&+aE0!|K0X}vA!kn9x%LLN2@G7Q9@o}D}xa* z;P6T>QO{Yvh?y1$E!`Fh&*EfG|Cn8F(T7smIP0Y zdbTql$w=--QCFCi37=r+uvuipoGPKc!>0lU&N7gi`HVZ_`Va z;{MyPvU`%$I-H;Gqi${7+9@kUZZ&!ljX4Rn7S^KVxVV$SE$mN(EScLp7stBM27i;f zRhL5auVfmhVf_C(1jy30L=HP&)%m)eK+?Q&4CMIHsFq39VUI$18AR2GplwZ?bw!nY z0*GFkm|lS0&%H|m4$o(Ni~ot;+G3aD>rO(3yVJK@8M~`OCrkF&l{iZ#p?vWu2`}nO@LuOlvt4@7;!8DO`aj z8ROG@n$p5UsDH9!KHr}WaxH7+HBk9~D$w*A6ZuN*niQHpk;YuLAZkkqoKb%ePs!@l znxxC>uy-sABDyS-=b+>;A5p3y<@l%jiuzPsVIDB=M;>A^gD4oOpP5NmJ6F>FCFgFw zycDu5ahy}6Ii#~a^S*tXkGIO-U9EwJ-O{2QBu;6AHGhpBo4;3bV)g{O{=llOa4GoA zyrJ^Bz5p^9Ce+(j?rZ1ce)Tt}2wNs?>T#{+x~<46KW%|y+`T$I z=cO7COxD!26p%VzQM)TlC8OpAIes$VWNFx(22?8i|B)|^&P9vnFM_IWoC?PPiH&*ch?^Q84SMGRD0Gq0Hc2n@Zh~C<@*6 zID&jxqRXd~nhi(-NLwW5Lq6_dr#EfnKl<?-TI7V$4p1vldNcooLE)g+h`bj>AwX;y%6E$vI;?mx`5MMT7=v(H=cN@PMMWy@W|w z@G73RRgTp1T1VXEX2@AuT{OPL^UIWg9#x&|PjucC;W|&W7Wlc>CkNT@qKwK@EYYO) zj5uBTBJ)DkPjEf$x|}H=A>RzmPw{RMa`<0v3J(R}I&ki!SJ(qaj^nt#x%qhNVet5s zb^Bhoo{T{Jn$&b#=*Gk?lU6@$IbIh~wUV&*ur&@+bm3Q9<5zK2eGUm6?k|KIcjpV{ z(aEx0ibrbIP-X*+Y7B7q=+%t1Jb>9BlJaYozwHZm2ii6%O<#mFKykbXamgU?5-9vIZ`0C?H1eo+ z1aPtA_$X$}?bm~V%-J=dZe;UYk2}yHNv&ET@#acEI&d~nwd!oF!U}aeVMA@qp`O5_ z=A9Z5CAhEtnTz)abk15@s|-v2|DLAHqaWbtA#52Zn9eG)QCoA<49iuq zS5DR-7m`W)BzPTZzn3i>9;Txp_Zi#}bl$43yHUF&u}O2|RDAsG zPqx6)cb#k6l;_}y-|CMje`uoXAp~_C5tH3GtSSPy(*m+2(N+ybE8m`AKyF>xU8hP6 zEJ42o(0%TRO31gwwvXb&D$>S^EX96!%bH>axJ%-CXAfE{Inx9)P$HDGD49|?ZgJhf zCkjC=9es7Uc|%fuCCN)9mHFMaOnMKk&k5GBYS!Tx6!y6vd=us~SkIx8syD=l#lyDf z-2$QM+`GB$&VwK%C~Tq0yfb#5B_*D>(5IQ_!I%Xss=spr<+je^1GQN)w4 zBT{*99Sm(gwrj}7R>WxkySEQRJcaP_4?ZOVK20Km_Q3 z!t_;cMtYU`u6Yn+_Vn8U6R+gou-|KcXuVF^ku(Fb^Gjt19m{OT!A3I zy@q5yfoU5A_gZWID3`ZJo z|5~s8)-<_y3-N&c;C;+;y{i}u^O_UAOo zRoHVN_}|qw33x{0<@5Q8Z`F>qfU-GFAvSc-GC)^upM$B_fp*q^P&tnIzT`~cNpn!6 zPB^zjHD4QP((+uS{tU;Ixu8q85#LV&l=ZGlfDRavY8|Gw#2o( zV&Po|&Qc=zw%Qp-%CRBjwM=z$owI!w5ziGG9-6$64Vn$HjPpq5vV`Wv&8dDgHI$yw zuj^_#yV+LdiEjgPcc{*LuAYj|=DttiSnkxuk3Kfk1Zc7^lFCBBOC{Z;KNR7vg9j?d zMc8iYLF(3Zfdna8NmG;z*60!uov}6-j5XZ&9*NRKd}_9Q^fbPK9TZ$3q7d3tUlr`= zuGLm$qfNb(Z9n=CGItEDN0Pn5C9b5h*L_-MzCaMSS~)M^j^IHLJMYn%sry!_UYav#ob$!63{FU=(Bjwbyf}cLj2Xqs zpWC$^9>k@Pl#45_y6GvyCF=&%k6KR2-A0fg@A1QLjnG{NC#zXQ2H&y8n%YqE%|03L zS&8ZIc2=(#MO67<-6Mys>V>5hQt}9A^{t8Hd^9yH9&R~5le7}gs@u_ZF{Uf-;dVNp z>0W&~{%fG@+O8SYDq{Cbs8r;iKcfQ|Nk`qn`2; zps`Vt?S1pUJhZ~b!&M5U3r3I&ET4?Yv zIFzruh!nZgZC;0-mkXEN|11gI#^9aY`ziK4I7y_9POj=Mp#lRar<(gF4dCV2m+~ft zgw7o)loe+%)4JTFc7aPKgu&%jXw6+GE>85etrzTcExKHUQ6I-<62H^O<;BRhjIwEI zPD(!B_-&j0IO}R!&)Hkg1k0r0U$DD|jDW3JsB)7|eMqm_j!KuVcGt_zrADwAJj@W< z9rK$m_1JF)QM-;`YN?c;hu>Yji=|}Gv*WG37t`^R8^YBz$ zI4zf>va7A(SVHez$`T>bL)F(672Ua|GEbb5q@>E04aJeFVV5e^2t54lN#X+n6EQMa zjR;Ilv+e&o@^D6~2fgkH64hki_kDbn; zS!vs`Uj)?IHedN8E{f{$q6U2Q`uM>V?4V$`19)olb-jr20-&+HcoYQd7St<)#HhK- zQsD0XIVX_ME`2cfu&eQj!}w}TE|6(fkre4`h6r%0KG76BU16NV%XA$)EIs%ps?j_% zRM?u$AVS#Q%{AYrxc~3NR)C#yBg^jTKc?Rwm`9L+i#S(amfdyJgUvPdVUioTNpq!s zKt*6QnF?PR^ugFtO!c)H^Iwm6IYA>vF{=vW!rCswzL z^m|v{M7S6CQr{#A17*sCnpr2v&bLTGMj{JyhX9aQh})@ebmd9N;|N}!WH(xD&^fN+ zil%UNFB+jJ@>nzix27Tr>$zrbfOyJ(9H;$H+NVzx$97Daq27YQcP$s9xksG zUx8B06*|R-&ZOT@`JhO@*2tlm$dWjPN7vj5o_Z5dl5fY5oQ(8qcl9<&IP!e?Im%p0 zsOQPr?j{p+R8^e^p@svQE1rXgL_I`$cyFu1PtK8wZ+F`g%IXp00<0(%s!uEgG)nN^&Bk%7|NPNIot@$i8VB z-chi9Ch?F-u(h^qxDLnVBsmAhvg{-$O(lsr1$R+fDaZrI3ivJ{RGvWrs&qmHuSX#b z1@B))tO1V2Jq~$t09#^?D&S4Jp(y`TpFbc#c1@O4Kro|}=WkZC-kM7zR)W4RB3%oL zbQ2f8SZ3s?e|`nUqj^5mlw1;CIB?fp1xn12mb5TWy5vyuot`Ojc~?m&<1AL~52vsE z&7q-s-PBTcE#!S&T6S>KUA%dc!X$ac-iN*T*txe{;+E(PcYXYD;D2|*|}SzdXVJq!h@D5#3`-R`LN^%x0?ylDzMJbyP!sT4mVc|qv~{fXif4cEFlFvDa$`x z@FftF+j3oQ6n+v?IE!j@Y2KRK#~Kw#9-h-Oy-mFL^TEAoAd3{ z?Ut6Ud49iY@dPd4sbV-^Qlfy9J6&6~GzYJ63r>(=H>nBu;G*oSDD6^xMRIWLN04%Z z0VMlMCEMwyY>!%u43zouyy=n;h!(tL5dZ|fR8u8fIuDhOUfn4s(*akw%=#}^2V-t$ zX_a7w1%PyG&82_pda}T+ny#TKN$2I2RTV0aOm3ackKPGBb*UV-bak}h9;Yw1d)IL7 zl$wI`2wv#?gsd=hm4siM7RhoC3O%Sofk+ZvGz&S&7FaT`TBk^*+TCJ9iLpi#>>Z6}l zXseOem5@~i_$o?Ryu%h{_S`%Qn~llE*7RB=sBu&HQ?7UELPANYVxp&BnK<6ZH__Ac;gIS&fD{XG9lv|gO6S1^|vrIH9EE9o0=eNV9&x^upOC@hXaj~r>k`{9$ zZ>ndrP5tgH&WLDy)BJGQnxu>ZB5IGN3@Ap~D{XK_bMj!H`T*3GBz$l85cHrRR=Vo$ zQV8!w|C=DXIGw}okXX{G@3aWSc|nh<#ScUIWEx6oac@Za zmDj0y9Cu1Ro7uEOcM*(|$j0SLzD0?aZha?LWvK!$06eAU=uNo}p8^L3F!iW%<30Oq z=@5ewuv_{h4`M1l!!Mr>Li&vL7pW8)Vv;IJK(Bs4#RA0BnE+*gbfs+$hc>9P&j%cr zjs=i(@0+Ki@9i5oLhbXcxx#kZr!3?1Mpx=m$LiIZLFTq(qk4Tl8IR6%_C-3N~EdI~P>lPMOoZpkOMzBIW8-FGtNmdUjgP6|%EOf#<7a_>)>_C~U_n-uDV zS<1JKsL42509p`zTpK^{7@_uH~t0gqT#=4S#93)Nks&?6RJpS*~0faUFy z!S$CM*&TabAhH#l7v^!oeub2MsE_e{Ik{#^WeKCWYD)HgVBw?QXwvcUkpjp!e&#-x z-hwM8Lx&%ew0fg3%@khMCZImZ#-2}242M}sW+ca-v@-7adsXR#Jbz@_A?Yr3Uy1fR zyQIjsoa3KaFxf~aE#S~)-$LglewCCY? zAQNXQ(yAF~r!bX`I zPI-yjVS%xa8+U(THZJ7jbU>lRtR2@KiJwG7bnJj^P<3-Ft5Z36bB z5$zx++xe;FI*vlS0@w!A&kp7@T_(0|q2jG$P|g{zR@K&W_np6?RCeZvywZnBP2sKF z-jIsCvkE&Z9V99hZYy;pXrpTg^ff{U)z(yO>vG-x-Qu;!Tz9pD8AE#kGB6d9uxUD zIG)P1s`Ki=A%W~UeCiHgueNz$V>0#S7MqpukiW){T7P36!QD23Nc!gYE(u-!7UGRk zJMVHS^VtM9<)MzU1L{_KJb9;7t$aE4Ii&Roq5av9&+r!8G&P-PZi~A`bbVFOrv4et z{no4$MQo2{cWWIm%KwrsM(EQ+yAs*IOJyio@I_30m3OZ0cyWcjg4Vd7WxMXBNBWs# z)xtaHoDp>wRn4b}gsdCB^P>=hVsx7?+g2LC==kmF#;@%=^KB^4@o6Y&33D=H^?sWzC=4qC+{CiF<+pitA3cJ}y_ZN-4lm`&LeVN`K3DH#U zTgo5TgNFpl4fSGag|9mE{31o0oUMRbPeA;wu{&S!*3o^bSUZ(rQ9f_WBnv(0Rw*ad zT?4p+8>J}`UX(3~5gSp7H{QBF9OO=$i%wxdkuohGH?X*@l*B_ZOV1Jqn-^$j{ZJL~ zKKkr@@9SvtV@b?;;>Hl`h|ggTSzU`5;gprM6nsd?M6;@U`|3Ow(rO{9RBI37#-rLh z=`Q>KULCYf3Oh`Y#kXy@?9~W>Nacq zt9m=V`qIm>ltgT&6oiqfi${|}0>lJ^>-T+tXlqA$m3zMA0Dr4f!SdtU9gYj(NX$#9 zkBYiH!*l6M#fJfj)QFBr@h-QDC%|fGszA76Q1eG&IshOz%>UD1Lt z{;CG*c&dt^r(}TlR`^Eg9x~5X4P1AG(YSR4;7d9NU&S#fKqfnitM*jFdX7Kh9vRnJ z@lCD;_v0M9)K>FFy^G7SggOJ&ISU_P4FF9uuZO;)o3m8|Uyi8uj-*i6a4+>{j{Yhi z_0nZD7AJ$C+)cc-H*$tNbvPgD%iQlA#AkcHD!nIJ&zBkyF1}|#F6fR+tz?MmG2~Ch zNq-=oIK~5dZS=gVqc`_5xG~L@;zRLbvrke4$R!E{N&GJ5Tvky;-P_Km1ZlF3ECa-=quAh+@mbJf`H!7ZfDc%D!yl9emh z2p}=;P=eGZgJR_tqitZZtq$w5+`IiSPUfWx1_(%I)9aF%y@>j$8%;_#bG|)f=RSoK z&1>M4N2bn}Aq?^&V#|OJuhOOh9vPVHZ4QH>$sT6td6G=)R6A$6 zXfI_~Q`*;tGa>v@FgJ+SvDQ-6p>}3ib*sLK-RUPAV!20PK3i{D2Q_Va zoz!f*9osR+3Z@@{W;kW)N3Ap$INT(BwIUEWsDe7xO&@aP7cnXPQ@SFe} z?smw$RhRrRb=GuVrFoBK1t}@?P0ZmS(WlUBB5zcQ2C<$(`cQ3wGiVogW<4c~ zjC{b3#g4Pf1Hf?;B{>*N;dek?ev>`j(77c}4--zaeSY|7e6S@=(`BB{iN7W6KeDvI zaj_-B<(8@BeCYl}veS^vg_(Aq2)dL}pOmEcdEc-;m#j;|dZKIBjiL8&FZk6_d)TH{ zFw%E#T;wooCU>6f~986a!eDNSq!mlZgH9{PT|~eU1oNrmGZ} zYpVsd4!9O{`KVf9D%6OH2lxgL`YjS_w!fb%%a4*|$kRURR&y~O?Pb;O?Q~IpG^MO4 zn+Ca?yColkYx5}WO?lj<1SF>-@25XQd!#q0&oFnfzd${hj3jQZgYzRBBrRq6mf;0%uMU7qs2ILY&2&Y6V);t2Q+dzjD;7ZMUXqHxLbk^zg>1SDX72XAy?X z=29acrT-|PNYs{1#ndi91P%>V-JN@f@6C~IlzN>vkfMp8KYQg%&S_O2-}=K3TWugr z3sfHEyPry(t5HEw>7UR4+7u!lC~Q4$-nNbPs!9Ttwjyxc0N#)>0|Y|dEZJI_%P!IN z)mV*;xMFE3sddUPQ%?oZr+xVVz%I8Ps$?#=LO$h6Id24sTrEvifgr#oN)0lK?ah!B zOFyrM0=)2{^0p|kxB!ohqxo>Y-q*W1v=QU+uKaUsm1$+0X7JtaJJ#b|uP1Zs*-~8> zm;hP+e$yM)cU8P()tk#Vj_UsPgzfi}8_NTB+vWuq@wca~bb{=JWU8Hcg&_r33Q3xB+>ZiXEcpN8v6zKtDzeHQ`CJp7_AaN(Z2ngT9L z4w43#{Bc9tF;WnxCGa`6#Kc_y@sy&nsNH~c&F^+g7wG0Rhk(%}#cdVzgA+fMOH>T4 zDXAV>ahK8{Qxrb*&#EBk@0-T~ZQHK6X`aRHBK9fPr{v;Oc?oxz1SwI|Z zsE7QLQwy((EKW305=Z&C=)^Ba@+2m*xT;4_bQa~7lt<4cRS5Vv8g^}waMRzzc6iqo z`m)y1gU6e4m7Uh*O2MWdx?WQjV?C*YKm5@Rca)n#NZg zi)G)yjzLxD#rdm(hCE;uf}F>3^YywR!)#~QcW4s1CI}FbHBO?+QPXG%eyh1cIrO}W zEKX`4Eugqd#sy9v#coh|6_S-(eW~Pp@$J4`8cHBcE4y_%wV{Jd8)FE`E~I#{740`pCh9 z{`dg0gVcr5C%!v~;}}yt+E5Os40T4flTcSfw7eo_lSy44Geq8DrRt^)U){YHAUoGr z8D{FOriT=Wnm@pCi;)(AK>uPHB2SFR$OMG|Tr__q?@OW~+Cg&Lgq_p zZ+wUwu5y==Rh5(K>n$7hf;s7AzDJX~eo4)}YnZ=rdpV)b-^k_E99+~y?gBr#q1JD* zDeo8158f8lP<=^4lo$!*5VBlFF>Nhnc*F8X07)xV;u!UQQGbn7sCXI>Z%;7GsepoD z;Ppi&Qse%X2-w~lFh&Kemh3&M5kMgy%`=6+{|T1sc1!3ze5UJ%nt(D=^McW{R9ANA z%H9@5m|9X^3JOq?o?C+)nI&&^tHVxQbJJFtm9KIxUt184QJz;Vl-d=RF&^0y&?QOj zbpzKE+8G32@j_RBPi3*<{=TA6?zDd*qo(j15SANPt)Q#MQ^5OX*KBKJEK`BdlbW80 zuQSl_-2(5(jr*|)J&x7ylciivg(8=7zEvoGhcwJ4dbvC%n|*p6Z@%5o>33=xazeTH z)5KE+MbMAqTQ^!ctiS{Ak*k#?VYSz{d2y*jQnob1u+noSvWD9#CA*e;#}$pN;#s6A z=`*s_wn}wCpUJrwd$?(6BBJ!CR2ZtDaT2Z5B;ISG#b@<-Y9M(V^42$dv?hC|z)(Nu zu?kD>GhCV?6XzY?Dlz8Lk0iX1q;}VV(7xr6nZvi4BsM@6Oi@FGskyi{(hyb4=f zuE^VdE!S{$@`Ru&;DEY$VsBWf@urSnA4LA>V}*3)tx4SHXgx{jOgF`QB8?L5`<>c1#fvCeyd^w{b zR%I@|>zlH}AHCS_DDEXzxL8g!;fonm=cK^r7fR38V?$h*T(bWz_th!7ZxZCOuOuOo z)2mEqa$o6aKK?2Gx!x%IK3&&|MZv}RltdcRkDkkW?lQkmVI2wPMWrYnN8*C;iXI2R z0~Fi%^}O{JioT|iCk)y`LsVL$E;`-q`Jf5sA|r;+zDVfrR%w``k0Os4_bA>8)DDSa zO6<&M^M0rXsOTFv5g4pr8Q>#5&%~Duy zy;nyGfJTLtPjXUXHE~G-Z|zohn!1N7Ju9Xee!SNRavkT}xWaRuRj*_@8oE00^SlwH zIa0wLH>G{|C|jg4 zbB4e=+&iEUnG>K>V-th|KIqWYPQBa|VOLx@#pVxHy6W1G%dxUeRpRqfCO;imQ$4gC zyN910pQ&6{<9EKw^N}Tl>=efWP_DUaMJ_CZ;Q7xjVSvv}-Uc`F7EV#q$aOaGgS%{; z!^a(2+tv57YeCcmsaaVAe%n+}MK*kjVna_2yX)V5#e6`GPn}$>r-)+76-|j~y4n}+ z>v3t@>4&p~E$xJ_t5JMD+f~M4?3L)CK!t)4(N|Reh^YHt_|VB=pq0E=2mg_p*5)Jw1R>R8-xa5Bj;KEm?N~-$wtWvIfsWKtr1WhS&VJn#5 z9_2l-|7q9O5yI5`JT)YP0Sb+po)?{6x+;tE>XL$ye)9*#Lbi*A8w{WTXx2z~xS-yG zkj|}F4=#R%at*|cqWsx=d7*TcIBvdDGk_?Cs?Xc0jxL8sT@xH9EbawdOI2P~u=O=` zX9VbQ+u@1wm72XT?$douwfDktS<-e)Yp?B^*jQtSorbW|!`x=a$k?b94ldG}{4tK+n%xm+y~{ZmBhDWqAiZc`)MHS=%@ zNLnB&QRg}+R6Q+y_c5*Nq@ zgs(cZN>qF>&6V6_B}O`G;YqI+<8!eA0Z~HF4Fab(=*HmPr z(Igz>(-Y5Z>S-b?DRgNPEZ1=@AE!B?_H1X1qots<)9gsre_(Qd^u8WsqajD`NUbX_ zy$ig#-J}N4q1JwsQk^*19qnAsI{=a)w<2-=5GlS`Md!CvEpk&U(9TN zAF6cAbEW7uH^x>edH3D`6bdyEJ%DZq`V{k3FB^QQbM2*+y=H4XR+l;m(6 zEz#~zqi^cO+9^36mxj(~QAH#pF;*oUIYDtNG>z0^Tf2cD@End#$WKk})kDspN^qom z9>VZX0~pwmly`dX2e8vGt&8-BP_^ij+r?LxldovF6cxvRD=8iR#CD%zr#yH?nBVPc zQYA`cEuuzI6L>W}$jZ1?s^Ee=!v6>dFWr5tb$RN@dU zq-cf=oowIOPR@3J=Cfm8J%c_%hPZ_MyX6*FM*dThi}cFQ(l=9e{WD%g0{}?M-+YQ} zEdE*VVX?v^EW;T92pVY1=`D}^UFQ$K<{_AMdwyf$ca(Ki5`^3+lmBm=g|tG`2^a!u zek>xIVhE}-f|y;l9+w`p0(-fQu8Znxr>4e;Vb@AJ4N2W>*X0z&H5u+P-(asC2H!eK zeWS%1J8AOjGidn=0NUcHp^{BB^3~?JToJrEP|BJ(vMPT>s3{yGU>g*#dq) z?-#j7U))rh+eB&BEx zRH?P}R|6ePsxV^K^SLMigb~bg0F(9@qBs-?QcQG{uh6 zdTl^KEdU_hb*SnGl`0Wdg>>T1*$TGG4%Gqhaz*~A^h{g^naFt_@f75?XXo(+NLySg zQZ&*Y=L|0BC*#+}zelmZsT1Lv+_Uy*va&7s}ZTuREHM#q#}3k-g#8_jK`j3(lwpeMT2*i=8|b1JUU&q#GP2RcfQ zbD&c0my+e)?&-pq?k&^+ODm^~Xh*T6Anc`q0dFx#O(S&NY-53W2)I*`I=2C3%t|07 z%3XGfRl8K?eTuYzb5shqI-kIK_eHxp)TzqZFLvM`vg@}?G@2X+WoIZ=I&+d4KslM> zHz*Afiz<3Kx-z62x_TI@Nm2H2LdjaLVfY|oP3_782%RCfd?s#RU5@f~9HQp?+-n{H zz@gT>?S|Q!J%gjrq_*Opc8Oh~rlh*ZvB124+OZ@G z7D?5V>RmDjb;si_cKdk=0a-NnaG$9x{q|HlN^bn?S{QAnW)GG!-8Rhikz+1rl|i%1 z8varIMt^DXwiV4M+8u%^*K5dIe_bHs848*CBpd9h$^y5V=a!e1Y!TMqD0 zj{R^ZI4KnBr*mZAOVF4;N)z5E#WC;6kC2k?vT~6$4z%nBU0JWW^Q2*q5ATYN?GI$~ zwya`MNIX)vkj&h9Jnkiv?Tq|#dAR%Ff3@-CM3a-bmHBZjq8nf3=uYqlhX!nyy5EJ?*Bx-&7@@L!n|#IN9I%vBtWF z8cICj`Am<->j+y@@6QGOfGph#-L@j&)tIDzoOPe+!Ha&hByUbSkLocFM!uIK-*xI+ zy?O(Dy7g}WwkS27)wJ$jBlMk@8aVe9!z?&8r&U3zp_8%t*}^)kM2JQY&xE2yMY;HWE?pr$%U{)f6mc1a|L9wXepdedO8Am-Wt#*@Ih5h9|C>ZppG54u6&~zspe6_rWGPd*9F~Pk( z^~0U)shah!qMhk&L;bcT-~jRGRm#!K>c&>BQacEfV9BL3eyg+4)WwM|WCAMnpecXu zd2g^Q&w%SNW*#;?zJJaF7S1n}Q2}$ptM6s7ZCO+i)OThlojaaZr9aBw^i^Tmx#~2w6FTJ9oj5rshr# z53bLB)>kfygIf#cR>vsGy47u3m98vI%X z3c5X*hgyGz=p)6$;Wns&m>g(%w{&agpR6t&bH|N{9VYgI=$>A_2!lIR03 zxtm#6I&<>Z-7$V;M|{pcRK%f9{FH6_=4}?f!FHdhZ5|!%lgc@I%rTU zJh0X~bgXr1eJ&up3K(P~1<%|9$~jyP9gA}Jn@n|%mPS_6ogAI0d>QhQc4&e9T!jmC z7E6>vG1gbb?JzoW0n=gA!-r4g<}ZY~A2mO=fkPv64i0(l(hrEg@KN39$Z6-|p)z)% z7u3NAp?C+jzAgd-a5gtIQI9BkAXwR2k}4O{O90cND3}b|>eTn)sPW9tcqMXL+;;_- zrPhPZOiP?F9bH;iTkTDvc=g%h~1(dg*U84RAWYlu@XE~wu{|GoU26v?yIStaLE zZ=73^bq<;i2&!NHk^X|#aO<^(q1>WW(0NTNV3K${Q#8;&UQd#=m{YKt6*JdHRur0# zyF*L%u|@)%MJf0OmgQQ1Z!?3$sY&=t?Z_A=xv3vkFI&JtHq;#ZRmb_tA^pzBjwO|; zF53GT+8pbYqwC{|$&AbPyw}gu$GcUvQe|C>r<=#)TpQG&E7-*~v)y+@PRkM9+@Mp+ zDQ(XI8NP_Bf#TF!hm%(&47+(-oo>FGp}MxBga%a?0O%;!5Y)$4{YLI9aC@_sT@Z5-2}nl9zH;ZCDj#xt^O`A7w(;9bGQW9lk6) z`eFwiC_QR)QMtvoyF|61M2=Pkh=dTyt58IddinEqew3-^_$y7Kp4e%6Bz&Ntv+k&@ zm3KW#C{aNr;^LM$wTs`qZ9JO}4SKXE@X-&g8;!=0GxcaY7P(F7?DQai% zIx|+~>25{oD`$QZ!y3s_$6cOEf7G4^U+b499ro6=k)kkD(F2gY{yIPcq=Utw++S-F zf|d5*vdMWHf&db)R?3$iAAU#&@WstE5R~*8GA_|}`ZueFj!#vQD_L7;X>y#OUoM-0 z6#VuzY-G zsSvp~X>k09VxRg|7jp`x~!tt%dx*Sn5Jg7J#PvY)epOs;Bwa2AYPt{XXC?K7UJ3|=j zS)I6Be@6q0hOo&DY&TJsmjqaQD@%s}fzjpCNhl$=C$P!!BN2%6qGF+tJ)%6N|0rCO zW#f+d<2SUACnYI`+g^(w5IwbAR!mFHS~uV1-&MsQ_oMSuw?TAN#?_9l2Ixzl@lRvqZ8~e$%pe(T;%3(OM#$#cr4NZKom<(CsYU_ybNVt zhYD{l7Ae+$3llj@fpTr?c2)15?OxGR?xqXez=+@TQ4ics0DvcY7ZmAfpMvPZtt6)= ztahrKvvp-9=v}O}?jZWFt>R%xRHGa;YL$~p1U$Y!m7!VjbG3BxA4dDj(Rhy{zy`1z z=1v|goAuz6N+xGTVdQGhKlw%!L*&%CYzQJu>VyR^T4o9X$Xw`hB@mAnOAZA6`Y-ww z>+3=28B!N*QR}x{Q_zyG=&~r0U?wnn5H~v*;@)ABezS%px zjx9%Z3h%opEW_(6nQYyRLxc?=_E5}e@1=eQz~5ccq;yo)g|&v79Z5$akIAhA4C@eM z-S)Z2qHj%KN=)%g({7I=3$D3{BTog(&5v3I6z8@sD2%d2%*z4V^_EPOP-SN6mM!R9 z6lOF1xVLj!+62c02L8;5nXj5c& zn=1VX<`x4_IP->Us#*r3FJf>}_%9$rl&!t%xSr?hOaEFlQ>u0G(B8glB&vF{tOw=n zc|hyS>RFDTWR*sw^D0NL)2Rym4Aa;mkwHJZJ7l1mG9y6e*G6gwTkFA1pyeO7=mYU2 zTlBU0)%FZR^6rwuFF0AADT?ar_+D(O5Y%2uc43}Z%*Hy=t&~rHpLd?$wz-yPt@6k- z|L}leV_%jx@oAm9R0L5l?Ru3(3 z!+qWM(xs!2A*&pGj+4i6E?cizLTces0;qK#x&Snn%GqG1H}o=JRYmmj1*eKQ9uUa4 zq*x{GFeDqP#!I5ok*@jM$P-7JwnC)}8amt1G}~02sH~#t8wDNMhh(W)QhU$PzG;HB z^!6+v&a1JJoH0^vw9;Qa3u@6Vf|6HOq;dj8)SKd3gV^jS#FtZc_?GaeDT#~D#z!5T z(4|n04)ec?+0$~Ek%F*yjnQTjP|5|nbSIDwJJ`}$kVcT|Iqpc+DluA7L*w6hf zEn{_b$@T5TOt+@2nntWEqzxlegNE3lq4pTs$H0 zstHn*GaV{Zsn@wE&x*KyDPv!#Uu}+Xf$u9xrQ=mSeE6HUr8s2feQct#9SZNkm8u3w zyb0-XwrDhF@0yi>v0r8S^S@4f)qmJu%xNYq@t`lIi@{JD26?qED?5&&bRz5O+Vy{- zh`2UEz}6;UhH8ZLHoKFRv5pP#&w->ioenj~QlZGK-Or_#|c+SKK~Fe+Dxd znvV{D;e24gkF%f)Frkbhi~mST4=M1s`zF;r0`-4II){rY71YftMLQI~qO9D+nl0v0 z^|NbSA(uxXOAfRwi7@vrx?CKgjgp~?DiFW50iehcJMwxsSGRw9WbFbpNI5{~p=8UW z8uwk5o+z^CgTv)=+H^GWN|zacYFo6~en)#p%)_4?jz#aI2%Px5H_ZXnKipCvG*wYK zP2i>$s@AsLN)D0G;@5LkTF`cTzP-)sy%F$mabVea8dm5ld#( zhVph!C8XljbDhXndH_v}>Q?VWsd)?Lb;jT;eXmy1PH+b$5^?=fo%V7yNi81J)V779 z*#rn9fdkw`br0;w02cOrLW&`Uz-FxKb((Nf@i}n6Zhu`pA@P4XD7@?)bPbt~4Gp*H zZ-L#H})Ev`gbzQVH6}(c*~cPN4(RlI_~F%YM?p-H;>+ zaa-!hJPN8KE+yfFNPOMaAKrhNq#CO@%MESo1Tm zi*E!*B-^OC)j{R12s=<}UWl^Ah2+U10CB|PxWerk-9}^S|2|u9JR&BS160k1UJ56IoIw3f7QS<4xRrCO!3_Ev^X%$UH3Vo!j7~}i0d>EldWY+D z&M`P-Rf%FXu=!UiOYbz5vQpKaxA!P=nOwIOEh&I#t?8vqX{3M#queU~* zQ`eyP`xWxlH6HaW-TggL$K zRit*}J(O0CD-tO@cu7?1I=gLmxD!;~;jTl`YggA63H2^X)~zp@{**3f-=SMj@#=_aJM=ww&D#S|bvQef?|a5O)++rAL0u`SxS(@05_lsJUi z6$%4XM!a2OO?iF_Wk6_UkDg$0+_oQ5?1NPCpYG!>w5b&@Q>}#5rkgDtxMN0g)i;1y9RP|_`rX!D`=K?b!+M4LiEsx$nBh4 zu?h~Bp2STXZ1-|gY!U*Wh;GwST+^uSS_)9RlBv8%a*y{O5_~?A9k{zaR6RUs!m=J8 zo;hJZ$-5P0&x>||TmYx~TcxGPCE(mZTgi~;cu!bW02gGXF!*_*v%7(=GH<39ZC!@3 zawl$Yb&g%Sc0Yt1D^E z`rRVRyQnDqH+E&5#|RW&viCjpfUGKs@_vG%229MLbwUDQuJ8dPg$~ z5_;0vlDDqF1IR|H^81V!HPjW_nInM{0Gpf@x0|yhU-u9>VB7NHl85zUk&wB}noApiys!HGjqNc$|Il1b=9tS5hYYz~JM{#7t{i3; zxxpR0r6UdWnXVV}pSLOi;K#<{12OVHm+dDKm-+(4gQ0lw9f*-y_`2=sy2ZV16_W3B z2`)?1VMh4%g`HKA> zH)b`ku`bsVSH6no6o9-(9gI(d2HlAI@=H#dDbZytJyA8or)ViJcr=2RCkZH z1K?E?>zh2LL13=(X)mk2O=wq|>*2GI>$cY5?iQ)z$2C?M9aM2?t;;h6d8e-6S{_9P z<uds||-F6}N+yw4qA|qdFYC zaw@=(RdT3C%8c<_=B!iE%_GH+H=Y86)hU)RIDbtH>Kx3nYUVqIt7sVx#pB(by=TN z%Qj(Ub`!Ku?)nKyYVOSwggoj>(r?wojjy7X{L*dpv(K|!Sp}B&fTEe~+)k{qPIV*n zE6M4(ZWW=nZcTcmW@-+K=xrNq*idR#ir!cCyaulN;P!m`ju3a)BN7mE>Z%bHS1J zJ&j(7Ide*8mA?R(YS05+nD`sNC)t7!xo` zXsu4)kVKJ)N@+#X?PV( zwg7`bf>Dl4y7{=LuX0)N7m_3;7gp^ssP@Gbt7R(#wDeH`f|2Ky4p36T>?_~8NRn4y zAzw2;5-oHy>V9@ku>%RW53eQ_V1sQnI_I|7u>ZgZhZty=<&DbP*@Th<;Wg+)O1q&C zOv9N3<57E3MYZXgg9+D-7tX>60lcQAF#yR8!;$5rzB>19IY&y>r$@iv%B3q-Kio9? zqr{v?r1cJ7ro(`up2ee9;aqM6xf{~-7X2xMT1C1Dt)dej>*7!I7>SUCbk4u_c(FZe zkM@dg$}FLjz{hp%f$D`YIo{{9gmGEDfXx(d;6(9C{Rm3Lt2|CVq#Af-xL%5bUE+%V z#qHtix>8R5C8UJG3%5lfGXAedYT2Gm7DK;<(!F2oSY)HNQ;EWX1a?W zO?dnx6}hgE&(1zh?P@9@2Z-i0@}fv3Cc5d#`K5wY5(aEAl;h>6=?RqdhoZck1Jvm@ zG&xWAXukT#rEut{w6!ip9(*@JEIzX3`urIPi@z6P;0_NAA^`Q(N4PIq|0&%Rif*0S z<5q=qy4rVLDr1^YyPL7XTYEZGnLlB`Ftj2lTojS6b&|@tOL_!x93+iQo(B>#m?V^=NsQa4 zUnk68sBp-0ao(sPk)l69yihQcmjM)1KKE8*!R=;?#Hz)rx1-v4o$ib%Drf81r8GGO z5|%#QhX{=TFGZh=8kSrMP?|K`B*9#!(yP)_N$LafMigUs9o{`*>Y}82O*Sc=p;j_g zQS0=UkzHL0Cm?A9MHb_V5U(o-Rt^m>PjReW9YiNN8(cMtw)_DHs7IYDZu!ZbcLT^? zK0}Mq@&y;FfsINmEdfdF6{^Ka&Fv_gXr@K9f-c0=2oz27>()TLs`xOS04N|GUfUGV zdY|_6@VL7op55dkDPQqju*TsB6My?@X@{=AJbz9EFet9Y zb7>cTg0s^mI^4vsR~4hG(t-N%pHyhBB2`wvq!~Bm zi8&NcVJ7|ZsDMenn=7pJI77Eyu-Urv$>;T>=>`UndENHs!he-eQ58`SgYV8Aq6nsH zx->jiM%m4|rh=?K6pFX)uZO6E5YojC*#uum)nA&kC#jX>@y{jpqIAHju}5+Lr0#Mj zb0{BFEDc{3$X)#qE;QZS#pOga-o9%9%JY8PsV47}8ysRUYC_eq70seBxGrhEJ&iD# zpI{9=%(8TEy`RhX^VM>eO(1__RlmDx!I|eiX64<9#H8qvLXYW{C#xYFnY8K9u5*Fr zq)H_0BrVR3bP4OpH4*3C>K&2g<0sH`Er!=Mc)2Wjmsrj zeH?I+pE-3&7_W`gNHMdOkCIgG3!Jru)0&&1^0J%eQQa+H zS744>RQzI6*ic--$ddqvRL&eDpkUQJd}`RD>!O`36&$-6i=wZ~Gx^js7_M6>Fl89;%PNVH2%(~u2jZ(WDc5u%7xEua+R8c%+yi-dUcj06CK*8Jvz#Lp5l?58*J z2}LPCwC7MEM_Fd#-?msF&}oHAAqF};!xjPcuvhQ(-pzpu2f!k*8fg{jToD2IHm~9 z-o_4YZh)5-?%Dx%B69(VD7B|{iU6-QfIGxUip;vS~SsmlWH*4_RX*9M-``9NCPamMQ4ip z-h1mhtKB#64g8w7QW26cdAi)0`948ha9`A=K3Tk<4GQ_&3Lo0eR+(vDM}kc^I$pBT z056;{7sa*8jmp}duhvbqad zH$*mcE>_=sRKlsvzc)W`u_f=;*VcHDAMFg|=s@{Xxg?!XyYbFn=Y<42g%7|vPpnRn zth1e&=3ZR3VbyJ8EPDkYQu{*F!)2-Z00R7wq-+Y*A@Oo#cRQ#* zB@A6kY}!1pB_yczV(-hvRE@PtK8mBv91Y-U4?qJU;ix>eSK5HNpKB@|U=XG$ca_1D zWeIkl%HvQt1OuDM?2A_0)!~iyjh|aG?xA>?xZM2uTgg|wNF4{?N>_Vt&-}5$OBObV zMSAVeJxvPE7&^Bs>+E`r2LcwCnOv#Yh&pR9nj3Y)R8UZ9`)mXvf_lxVj+Oo6lhp8( zr=GEiB6DzQlQQ&IsO`i&qP-O3w*n*tvFn#Fr6xQ}?~O-@0k}{gg6!-Bm`}__;6Cw1 zkBlA#9ef)g9Ytx=rZ4%nggh*67((wL-}6r;u#A znv%8^91^UpV|)twI{5PImMMo~%2@{>BX1Q=Z8Vb^NQ}T%*&>UA$wfy+t%=vS)fZqo z$!h>CJ(pe#Nm|z5hznOy2*B#UZQZqA4qUOlG$^h3NgNWbDQ*RuE)6O8WtAdM*I=11 ztLs|u*@u)jW3ZPCx!jBb)$#zcf>HqV>LUa#X=;?0(h!Q={f)TLy9xuZR9%-covm!m zyp&>Hiqz$51HjdQyDTk9`JNytX zZrec8p>6JSvHlBHY)#N#UM??Gqo?9l9chvvap|-cAH~9(*SrbbO$Pw-Rk1C{RXma| zbtSr7<5$p2wT4$^mZ50aoT9hSwQ>3VGN8Am-KvhYgMMo#MB#row)oNj^oK-tQ41-G z%v%~@na~oWG~%;_N4y)e)8Xo4UD0hbJ%d}IbK^VpD3CI$!6~uJC4l4hq+XLG9W_wf z>qU&?Xv0~-DlOY7-#Ke`=`|8fF2ZTA>}Uf-K)l|XO1U*kRm#ESH0EcyS_E=1dc3!b z8I%Yr9W*!P)MkA2qZvDv8OTrWsyMfBZXS?@hoqZURr;+MiH$qe?;=0p)=BFDS}Pk3 z)^d}&W~b4iUP~&)l5t1;QQd*q$bpsn68Z~v?C!=9^YDJX@-;m$&E;#wx_zbga@{1CoJo~< z>z1c=40Xc@gFP! z8G~+G>OBjbA5NPrZv{;qY#9cgjWXecqQj$v26@AJ(MBDp%Kbufullo!2dd~Sn~O5_ zq24K`D8e&U!%#dmP!nYiuku*%=_oVOS- z^L4l0^)=R-r|J>XQ_BqXbTZSFt=sN(C;;1UEhrW>^KGWA4)&8?-p$1x&4Qk#x42rA zx-vOO=8#boeh&{{A9AGu??RzNr~v<5Z!8O4E+(no%ew|(6E!CBocN)1%6MW0l&ksZ zep^87B~Xh2+MQXF>y9kCKhory)>A6|CifTlO`vfBnKoj88u49Mv|XPw$qym?Dm9>X z+ue(znHod?)}wm(?I`#KxF%;2_tDrs{*_zus;IRKWj87LdiDCceR1>(-@cqua-;PhL3(z=giJ z5gN9>a?<48=2wo0OHsNW>O!KkSXS%)cCg(fqgyh&6aw|slp3>$ePlBQ(*|o zyV7`FpIL`X=T4)2O`ebTtXziJZ&tJNxzxQXv0n+&WGbsDN=Bt7g$>^;* z4%QZaYBrd~IGQYlbXyqY$VF^PAMq_wN<*gPrpB(WAy>KF#swFTwpCYB+PNmOseU^| zucLRBM$dZIagqo~g~#V4M!Bl4yPoZK*H#G5ZjD_1wr%n^zpyw!a$N@A5eOL%J8MUO2SgN0OgWoVW%?3~V_=EqY$C6v`CAmK}& zl{}`>T!?ocjZv30OKYF9Tvz;FDYe~=Y#oWmnu@<% zNt~Wfp|lb{-z$TvIbTE$ZRAPEzLNFvXC6ti1VjmQg?b^m@Bs+UU+m_dB^hx?ru+jR zA#FEcKk6A!KZwC|G~J#oIvO3hN{^13#5l#|U!@}IP?X~~MY&u14(UH`-0M-4PFG4- zj>~gyOJB-aic$$c{80doh>p6JeqZoM<=;AW`FaS$@vW(yDnCmahS8Zi zNhMf)0`|DcuvdF17BrtAjQ{}%;BF?S9i1~5|0zwuriDxEV70s5+uZ7_k4EucN=}E{ z9e|SKzqP_qx9v3BpP#M1qZ0iifNR;^t!b-`vLOr7W|9v|0im*=O-i66$$(_7lPFJw zJXgr-RO7iml>j}O6HR*`OWJ*~y8tX%gLopzc8Hf8WVsd&{Ohs%l3qfQZ3&Ib9ZyU- zu;=I-&rzW^`t(+s#CbPvBoB1b=-m}Feg-`6?HBtMcHR6fwyMn>39MtHpjtE=B+dUvtEO(Gh+GmU25 z(sw&V9U5NA;eT;E%sOI{4q^+>!JwK^P3i|xU~=ku(J`4^d)@BTt;Z4A^KmQzR5Lm7 zR$TU-)`@v2ATvuyWK)v3H84rbCSOpv+qcpnDJZ7Ce4mW_5MAAFyh~^2C>#=G(Wo8F zTa<$*MgthRZdDh+6+U_)QpekO3wFFqPcbznDKI|q77x$br!=9W5&Svs~K^tQ81LQb9^&Nn)SMeZUnccSihLJpf zTPMdff;`|=|CCpwqN1+KHo3sp6?{twV9_ZK)vPDeg@Sc1t2DLGJ>uu8jxJ< z|A6x@>1G_vi$cB<1k?tfA(E4bf11ZX+DX2y_YQusEj4wC#?+^Z^6u7?UBj8#^w$}# z|2fkP{l%r95fFYq$s6%?@cX5*y1+$l8y~+&QC7Y}p3&v%Yv1G3wlNWfnx>nM-uH2{ z{#@ruzD`%VuAd+s=&%lgxekQRq@Es)O3ibJFG2mJlv9gK$pN)`yWM%A> zju)uH)>Cd>1G=+vH_@8anBP0wpn2pbx8TH;&}T`YdbdihAsO(gy>QAnOiD>*|W5&qMK}P@Kj} zZd&QL%?%r2@5HSni@N5=fdw`wk1BU`Y$-nhU;n_3kf|?P(4kvOCqYxFt{x%hv{CL` z;AZtnN#vRvyY4-c@{cM^Q=e4#XR>+YRa1=+0D$YumWbvfM_xhDEN4#6a@6^#pPS7+ z7FF~)rc`}hHKnp{pyxGS6|Ps)!^m~6vy{`dQkE~g708-AdlG?_%cJ9k%^FwQY{~18 zoNwKb$rglXb!e3~Am1rHAP!$d#MxB}i{*p{{8+D+AqvJ-%_mf-A#wxE6jF8TkN;7- zu<6#KQMLqQhi%Rpbh%gdxX%?VCo&}gad1PmMa()xaf!j~pg;c2kL5K>x%s9coaJ&N z@M2pWOJq8)Yae$6eYNG!w#<@n3nY0r0OnQ+rc8Ui8GO3GpG<50$PDUg^3rS;-ug^j z@+Iz9i&w|Q&VM*L;M1l}-gVDtcO5%SdinrlfrZqvSskg5)9q}QXwz)u0v!2H_5){k zUymv-9K^Fb`|d+YUX|&(#Su3!hX8T8v8T*-lYn4>pe}%H*7AZ8YDmNEkLO7M7#2+7 z6QaiB4z$M5?cyd)<=jcQZ;U6Y(nb-7GqA_3M&LP;ZwKZR1^B9Q?%Cydh*YN5lsLFb% zFmr|ZZ(p*5Qk3_!j^WSFL#a31Eazu}XQ@cPkc#9H{E~w^8OBzgv@h7FwUb_0tLSq5 z^Q~PLs#=%I$s;tZ9}}OFLRs~3oC|2=P5LA}@Klb&G^_R@5#Mu}7`garT zMuZ0K@*dqGxUAgAsAjUP|8VHFR~e0-hX})qKfHay9SPXBF^NI$I{zP`TAq^0$WD~} z_jS1m1?G+^1@9QdNs&OM`*j!d^#@42?^pY`kp3#MbKd^P+__juj^n`Am$5*k_%(;3 zME_0Ldy(zK)_I@Zo$0R1lt>@|1S0rr+bQ_wL&^0bvRhMXZ<>_KJ>YtN%efr(J7-uAiq z(1hj6LpY>hq9AXPdy|wT79NL{&z4j_6}IFN^XKjqg7xj51Uqtm`V@ND>f}%(Ybr8+ zGQ{~d?5`)-&s4NSL*w4^B}f?#3zdiFA9t<+75DyB8hvFKfD;rHmkFDT)u7a*%1d+t zW9zuswA3W1*`wa-xq=Fwqs+;dnyrrTtyTR%@;Y~j!mfs1Sif%N6vm@6xgsL69EwYz zPENUAZ*#y}YHS=1rPkETBL;Co=XOD$1uczo!Td=@cqfzYZFgB^L$?JDry-(7DfisF zh7>aaly~9suS|;Sa_gm@%eOT07z!U3#j!pmGL@nyXE+Lb24|FFbw8I%Ld&)7)v@gh$2%DyOQa9QA2MZyjIiP;HH7L zYi14@KmV!V6RVd453sw6k?lig-0|C30^E5SKPm z&JaFn6fUGmJ`b@`%KfYY?sYeruSsPXX$-d@Z*YgLDP|%r15p0^6KZyvJQDazkA~hi zv;-b+18Ve!FB#V`O1T|7w|5g=6J)zn^K6o z6=VAIxh6`9wTfznwh2@tr83iYOZw~JCj-HX8zTAwJ)s8;RIIwS0i3U@J`ZSz7om<6 zh0&v!?a>dB|DTVquebugI--zu!1NTBXRCcAFO~=H9~FQB`9{;Q=22Z->_Q=WHPyLF zaRaV2HyuNZgI~nc3;B5K6%8J*`YFMFvho&pB8PO4?4?9Gg~O}#QIasFw{f(TxtGmt znz0nC(;-s%0{zR$$vP);eDkw32r@?z%+z!M54KQ3250fu`E=^iEW(lGr9txKGURK! zYWg(?G0Ia^$|=s0ZYuJGliGedX1mzkT=0(0rMj`MZ>eN#xv{245U2%a<5(tYeC{v^ ziCgYR;Jvsw+WBdnzqo`q`Ui^_Ue$vfZ8>1z9f05*XA{vUHT)NScqQ70koP|xn|&hB;sGOAt+{?d`=QuRXTm&)n%McnfEsY%}O~(bkFitN`AZx^L z%H2Mi*Kvfn_nA_V=&r_XmyD;#+--)sMC(?M_5pIGk&67zuHCpAZr#3Ky`7t!Hy z>+?C^<|J!|nUadqV-vuhTUC3qyPa;!GKxOe`fU^^?N)Q1TIDHs$ETIO>-?KSMb{h~ zc3_L6$NBZ6P^gNn4;R&-uCuOK9NkJJja^oElHNuxw>tJfcFK|D?%yNh+yzK3qTh^o zKuj)F06gu(ducQnl2L9m^#h z-m;rRIy$H_rcO})YO^1CKznYMy-P(9^~Bn6#^c^Z;kj#A$PE*dIUq^e5m%*J!1;+Z zRNmMyPO2jYhn1JBt}9g_N$t6G&OI_5UCjIzF;sQdrTh@q!i9@dnH*sMvY3%E%t&S*RSU8#}l2rHiD?lL)7! z?#euGHxUcHNuZq~JBJq+Jq6c8I!G|-*|)Xf>xR%PhG{$sY6YHQscw8#os_$pBH(n5 zskpDM+)Z7-0SwD*2IjXFpfTn*P1avHn;7wD5P|D`m8yCgapM&Cz!m{e>^N)LHd; z(Tywd{=gH`NV$}+4kJgtWZ}tCqr9K`k=zs>TK31-zyPzz+T=)393KTeyfA!}M|pf8 zvuBpf0bH%J=dQ#Hr5w`mA-J#V11N_`P|l<3E|!4p#KOoO((6} zUrvFf^ey_-Y^A9`?V_P&6-nMX7~zG4uN#1xR`<|LYwVDXsOngLwixx1%97ov`!61; z0fz|e(zR4CFyj7#T1CwX_T-*vm)^U>AX(WU88DG%fa`6cc92ivI8dr_;3hv^Rkh63 z>`L_vsm2Z^U!|%*ORr6nuCFjh^Ge~0J-Da$Ba?&rZmJ~mM!O4mq!bcGq-~nmBW$X; zfbTy2mn?AXopDX(tvS(AG9K7KvE;s$o?wnm^Yjh#lgm))#%MQ(mXK4Ztg6Z+t6I<# z8)UUz_7H`y;v*hoUt0BD@_MdUw}Y<8_~P3YJJJ-2sy%DRrdSlUqN>^omnwd%V4M!y zm&(bnl3YFM`{7e}Wy+4;T?z$4y~0LMF%eF{36)DNnCzefH|O~{;viM0jGQ#L^7zim z|EM(qTGpl(5G?B_Q8#!}h;yXr%-C?XQwgYYiw{47y#d7X^}f%O#H^xGd^y z-I}W=caobcPuB-%yOiwPfX4BtOqQs&B|*qPta5#lEN88`$$fImr@F$@>3IRF>G$Na zBj?^0RP9nmV|Vm&A==Jj=d6S}4S7*UF*OE7@zxcQfO8QS)WLn*#cgw=+7P@oKRe`y z(zhH&Wp!kQ_elbp#Eqrx+AaO9TtWQ^(ga}p*7C_M>zzQ;UDLb9v#hP1pyg`@pjYY9 zVt~rL>mRMGnRSckqXCArVBfEMDBtip+RL_0c7-eAv^0KXk|=q3wkF;Dcjua}40M01 z!+%1g44|Qx3dO6F##rwi=_q0e?hYa55toSSnCDg;2~*N#y=14Jp;N0y{?Wc-5toa{ zVF6~T(V|_+>k4vH-D=x70+FW346h<0uCVuz%hE7AOCl3BWl(dLUD|D$4?CaA=n#vP zLy|$VFBb+$Ze_l@*Q&TkIVr)W5Vb&@90~r%ZMK#9A@kbC{U>&J@Tt7J&D~T09L_h$ z*(&8J3=+gs9!w9fkgA5}Br;#zphsOsbvMI4hrq)Z5lc}J-CfQfP<^_~oEtgd$n@6f zrbt-%_%UA^;7xwht%vN@>ro64IOhf{Pg)Z)pi^uHh=`ivOs`f!pOYDv=bTD8m2tM( zwt$Z#$b0C^Ud9z_R8%b72*svua+aF_(qZoB;U8TNM{-}!Mfu_O77&I& zvVsA;C>$mzLrpfSdF6e(PFLW9?dqkT)SupipUxiAy`<_k&fZqUbA2KZ0+z*Nw}z8K zD)YPgi=W;(nHtq6Ew4MFDalWh_kO=~g;YIo&G!3N(Bn1T5rr0E&P18Qpjiha#Wx*h z*(aw~29X%c_4ZYZcR0b9A#`HDo>TUzz2;^Q&`r7!_xqb~b(y@scT(I7fJQtIf*C>m zbUg+6>y(gTi*|p{N_GJ_ma-9b&Ec*{qXBVwZ0oJ&iu#`po8-EHW0yTQvmCjJ2*n8JkYNzmtqURHuUjUH~ez43rSJ0-kIWmSA!wWB*F zMgJ$`U1zROeT(e)LANj7qw>?o%$y)|~cgI{6)>nbmeP1efN#<0dBC1K5)~euCr8bKO zIy^oN31;xGGyq=&+Y$y~M-^2kWmcSeU>&mQ*U0DP=WYJ-)XsQb9sWwJbY0(fRKm!r z?mSN@#!%*}TS<8Y9?o1gJqF49%e9Z!d5_%(>sP+c^tgEOEf@OFm!3*-7Z)ff%iZDt zNG5JXtaN_5@@PWy-qfOw7`q;*T(9~QH!nVWABDrmNPsKs61Oh=)@nZ%|`$8s=zi-f{6bmnuqV_N(%m%F*Gsr3A!I zF0foOKh&o_%lT$%;pb|~tSvsmXXLNcth_4;h7xu)CROc;l1FZbTH%~Jm3pnqCHuST zq7z1BH(Q1-q)@&~c0S5F+bU}-61ZC44_L!~Yv-#dsFyw)g87OYAuLPiER#bwFP^`)?W6!|=ey+d7AS(6)Fb?M4Qz6Mq;wHB0S zT{^!xWwPsvT(+uY4-m^8 zqfh1!x4|JMABBJ|_fiv}*V(7C1{FXL_6Dn{@TJpJ?O_g?coE40m0T$Ujc`GxcLvTM zP`csfHS@@LbxYRC_)eOAcalM^v!9hm)jd_6LOpnZ9;ez5aX(sY z9-K%Uz*N0?J{O@lG&Xs@)MqNIa&ep7x1n}jr%S?lqj|0`bdG^>x0R7^uAqXw4R$B0#v?WP zod2B9ed)gJ)MhY=D(T8RKJFP(XaJu^B^^<>k+AfdBM4ZQgZ4K?NFQ3WfGYJT9#L8A z=c9s;?UAl^V%`e6KBFw^JYWWqg&H)UOWlu_mvTUt?OG)m%~4Ye9d}>JekU3@oS#=3 zg_|MYr){2`FeNTnConrV_{mJ#Mho4BjvUG)YGy(!z#}JVfES$DAdKhZ^ zB&c*K1@w~0=a#IO z5Q&AL;@*g6i_?8_>R$qa9YK)t^GAA3cdS2G;37{+X(G>IZym z`UmM-rai&cba8rgQK#a(ZEs7MKXdy!iiq##nDUTi+}MTS7!c8T=bv@j7vcxKZ%WR3 z>jK~eEa?~Zh9x>DuT2>_9=Rd;Q<>%mR3JfwpSbn;klv-$BQIl7@(`T5l|Jba2%@NQ zaph2@GX+l-Kdo-(@{Sck3J10-Q#T|qKca)Of>#LMXO6@M5*0l~wO1p9PdfvT`}eB$ z-Bn8xd0VfWWYr`}9j0?P8O26H7)h`8-fAhFySUG>>{C#VaXg4M0o=MunPFl1R-o|b zmSa*nkxQ6EmD){U+s}LtWvv=7P8OhIF-hG(3hh(%3|HuO^CK!zG8>a0Ue@Fpe?b(M zKzF%jdFuf_otB0npnC69$JNg*A0uEU%q4e&wH(k6hnq@KrSQcxgt~>=6gGA~;OepV zoJ&?~0-HQ4DPQi~&3(=*W!|*|HRs#e(x+u~>uqy+&tgKCg(gP#Nv+w2|<3#HWLsw}9wXf)Md}Xlg|jn5c7|Uw~1ZjlFw^?l0Jm({Z$C z>s)zV4u5o-Ppcs1RS5n~=`__g@&H!Qh3RR+NU(DUXtg@+! z-EJ|+igs^7(<8t;Pg(v-p+Jjd%~9dsktq4YJbI1PoH7y*O$1$9VOI8uXvq^UW}LMp z_$M9(Z^%*PutsvX9SqHHQVa8Q2O|q9Y+uMq2QV5Bwo3ur4i}$Nv_4I7u3F|&ny!YQ z?E~slq8kwMwgdmFW5+>wZhfn^qiX^gaVP*&K&-zzP>MDB6TsE2mD@#~p?Rm5RCoJp(ZEp&e4Qr~VP;aZTs;Gd%Vc%o0;9!db)%%Y=VPt~X=SC& zbqA6aGxa6mSl1o&+YkcXSuUuDZ)B}O_)G+y7Q1xYAuVS$0rIHPhzzMvq8E@S z{3(SHO}}HU*<2o#ZJ)Tn4FpfVBj5q!`R2rw&f+tP!IyuG@&2riUV(mrF!1E z1EUML%pd=v>;BpY-zwYiXS1XZmu2T`QNfuBIS}ssNY^%lRO#;2{K-RAshP-}JzC?` ziNjxBjoDcxZ!rCE`?bWZck6}NY!hWS7q~Q(Mu#FqQR`c-aBQ#*YUiSwrdIK8UgfaJ zT;OW=f=>92yv|XI3Wo2iR$8ga8GdzeuaJt92A8BKKWzd_u2AGUNpVY^?SM!mWL1KUA2QUYWKJGK=LRkWUyuVB) zIC8_tZNpAEV9SDz;Gy~Z1JVT)R4Z~@0!l-zP--D>RrwT7=&0C0b+3fr>}Ct~uxegS zflqs@g!flQRZ$0%k8Lwt<8jwYmvZgIuH)|HlAd=z(Q(ti?s8%?bW(RUNWM#K8Y%&~ zBq!NMJet!^za#jOEW;sCRon?q4A~U|d=_87d0k(3N!2!;{5du3Uox26r*Ctpt`-GI z>$LD5dn}x)lv~ROJ_o-{S?KMAF}lIpO-*;}sg1LWU&QGr>;J&jcOb-#KX!F5fx#F- zD)~N=p6hwZAEHz(=XAQq?$!%v`FkW91zrGMarCamx#MlkDQ?fI!9Q;4E%Gsyh{#D7 z_@snh3l+M_J8^6LTN((O9z#HeOHV?%Zw-8$``y%iO*J)6HL=?1%^PYn+W7*c{0P*? zq!Ys7ODzhr;hZj;7+R(2u2!8W+_zX({m&^6M^3gbZEms?thsSyIGuzq^Ji7V)paSJ z2f_Zao2CwsVU>er(d6bWFr!k+85c$kVlLlib(f#6hbfF1>G`<pj6@KwiK1xjI&B;w_SKeb?$DU>AD8EbjR)9g_?U7C@ z;Hwe6x4zhm3dPO*#GwK==#oGTo6XhRP&jedRgYsXaQj{-n;eAW1~(yv|0G^an_Ym| zqw~xc3%Fm6QfA!}x*RYTMZ%Rt0r*jVDg4iKCIP!Pqa=4(`lNw{hZN(vNUP2NOE8t7 zeyjRL2IjYPt%WX%0kz#4(SX{!>r|`}rb<{unM-+6c}+?wXxMSG3k#|Y@s*Al+cAGj z;d^yrv)R#+Er@rMWR&AbRLbNW$v#=bt;f)8KmV?>CAsaJ(ASTqKf1L#N>Jw-$m5P5 zA!(A^^!T;T72(eyOgjV)7NKwLGn;?M!yA$ zgyTrt<)5T;${j`lyzj2ijUB7TE72)vg+h9Ht1P(g#v;d?|Hfl)S&iP}3bU&l$*#9? zPeT5XVNZqJGN;zvZI{xVmFhY5D)Ia(YerI5u|IZ&R1HWW2wN<~Mv7&9@OlsZg-bfV zK28STZ50YokSZ{hvn0JgGj+}8wgU=hg^NQN3-)9BB(LH{<=UmAkYD!ZQUVw*?TO3D zEsq}TpH-f$ULHQP_kNJpQnhB*E<~%x!%tsRVbDxWpun`o0imHHAs>a-X6kC`d|-j0`&tj z15Ro^2lPZHU9^*Sqgq8#y61V6i=-@;5#xh*fWs%Fz+OYMO=(2Cf$?2EcV&U_aJiml z>ruqZ?YDQ3UB-Gb+5gYuN#^ahCj3Fo_ z1S{zG>E{eK1*Ke)>$ODYziQ2(LyEiD2AjRj+1`-ADn47Q~E_Q6WmdabHUroU{*^t0cs< z2wLL>0n1p+S8 z8>C9@GJt5D`Se81eb3zi3!!gDR#ws5xMhfW!ZcRE*mDg71hNazfb;uVSlm?EB%ICD zH%&XDAsmb(iYJYRGlOE7c6AhCoLvJcV8BT&B$3>D+KoW+Qsk&A$G` zrCgCSU&nmFQLYN|FXFbl15+%?tx&u5%xd{O)f+QTov~jC;_PA!q3`yh$Izm z?c)7QP!&q^y}(aXd3m7p@l{ai=tkaMbd`qxy1m0!rg*ny_PPsF+Ib$n9SDJ1Of8e0 z-U_k;9X}voAZK=QQi=s}C-@6fDie4~Y(r}QLNMR`uFCPFc+$Ek>8MVse@HJ)_8)+o zD%%b4>hgSk=XOiHk7(;(c74rz)WuhSDI__#oww>sC$v^>Ft^5;(+>MHgN4!&QbYAT zJXR)(MYyj;_;q!s_eeBZpJGrGXSFHx2XI!k7@TI!rcEyYQt3Xhy0*S6CXzj%U)}t( z%O=J&9_y3)xXEi}?Xo3Mc7`N#xznez?6Uml@Td{^d_6KzbM=D*GhH^i^lJ~}aUc)x zmt$<(wMy|fVNeiq8A;T(AG@2=q>CCp5#Yq1bc(DnJg+}@xRlaELxciXF>IwuxKPT%sE{;n)zwun3R@h~%$hu^rza`CxJnzA-r6WrTQ)6Wt7ANc zMY%>{=jDFZ>}2@`n2<@8bZV%>;*LPdq31bD7qpl>8gCG-`&x3}i_MLp@Jt(_#j&J| z5a+hrPjV?!sQB@wt=lPGc%`$4QLQ#_B<^m1MGi-j5~#dojUD!*|EK~}P7fbv_c99< zw8)@FZYn>Opz3O(7TN12z0}{@zs}$sC)GHwq5e+`!BmCo9!i6yA{6j4Jmf;h$ZZxl$%pe~w!8$FK$TwukX0Q^x!ci9Bab-6s_u#1ygvCd zO3E);2*hIw^clsyhmdSTDA-neUPKLo##fDaJLKQ9qS1VnO=lNJ8%;y>{CY zR@c6Q6!c@#orE7e6`WDWKxd-sws3MmK)HG6#y8l+!_H~qnyE}Kuzy~O`m$aCn5x;` z^1*91Ko|9a(!2Btr4%6XxgyEOc1K)mNNv2-0qw8$c6u!WKs8o;2=q!NJX=YyEnI!I zxUI$|xmLVGm+1A@R=|s^C2`JGo5k61n}|5%i?}{j_+Md%4u4ZN1+P{pw~n(AYIYsY zDcwwUMi&i62yb9q5YA%@o?E6}oh{1c2L{@AN3{-2s%xOmq-3pWQAcX=yeNq9%?M3Z zZO}_GwKahXJSk4PVJ&m99Y9dw$_S9NZ_^UwtiGv3B#SBTxnmf)c^U^gG>QYx$wx2AGgRACiG0tNo{xNg^i? zPfzF<#s>41rBc@ATFz$yNe&qRWa9VHXXE{J5L8pY7L`w>p*+-PB^xSI{u>`*=u5;K zAQgo;@7@5Os!EWAUNx$x;(AH9Jq6!%jjyfFbQH`ZL3Vmtq#B3M4la>zucFumI4p8Rzm~i9l%Ot`5Q^Om1W=tLMUQ*z;;^#cRXE-pQM(0m z$k;=5w|U&Jyp#x5m(aQB;Z!-h`W{!r=TU`GpU_6SEEfG&w_kP>R%ht4e5C7eO0ya2 z0&$s-nwy!d-t6T`Xt9J_t^tRFCP1?ZA^7)C5L1#!6o9<$m!JL0qfVD7Bxnv-I|KSKD6?Xj*JfV%&Nfc!?yt;pi<3ZbB$foxzn$31o*4H`ShYplLgu zqr|yp4^q(|_y{_OG@`I8Ab{WI<{#zsEA?7Ovh@tvLEE}Pu8Yc5mj$Cn#En{x-%qLC zx=bf$h}YyyY&H6+&ou-~;vh;PUfiNGeT9d72ac-^(O`F}cmt>b5!(0LAg8Oj-fLzi zBWfU@0py2dqhFLdZ}PSD9=lH7Mb}<#x;KYdxj|dpr&Vs^?vux($5G~yX{)dVzEb?& z#{n1tGZf6oJ>V>>cdc50+wInXig?xi^y5)rnmVBAV4|p?Z4>2}N$Jj+D`oPP;)<#C z?seS-n4}*c=uI}8Lekj|rA1njRpX2ZxVdIX&+7cH#D*%az%aY}JVHLd1?5myMKuKH z(F#KjO+Owjo_NsI0SqMEzVSr+q%ZyQjMJ(+}4)XxJ5}6JM;w! zjMo*?=1}(7Z{qP#bABq;+R8oJEBF=~Zq)!edB{tbNxd+dky=6Rb z2A4j|n_R@dRyUC#>+ET%W+z8n`s*M02)Yew2e$1Rk*S3%fPMbf6rZc(Gzgp=gSV>o z5n`22H$XQR)uf#5O`O|m#<*hCbdR&m)YM&+CE0$m$0`fVD>O4*KhOglpQmR6J`T&%`_+lAxY^X*K`!d}JvD}E_Q~{{yJnbeb&0%BbJy!LKsZaG zLL|aappkTedbis@dAa~-vgU5ydPw&xX#rYY%RMFP)paSDq5)DNhjF%&`zTu(ChgLj z#yinpCjDGx4d)r|k0}=-Lq=$8uR-(^~Dz#+QV%68Sb8~7MvpX+6NEPSU+~`x0gZ8Nl-Y@5Q*xSva1fwydRbkhSdMER^i_QyNtOPapS?^T4fYb%ARBf$; zEwWRO?(2KskF3__DP5uUE9%!ZuG!tVfKdi^HGA}=bO=riOksU_yFka$RUpJQN|mSF zVmrFfDw=z1Z|J6%j(&^ESf!9oWy?)^Z5H<*Ek7x@KLvYyC2%WWkK{}U?&@$)A39h1 zRb1Ff(!feQK1mhBUs@l|V6Q<_ZWn>RTskW})=aNzfb0Gn zA3@2p3MA3TXH7AqO*DOzzNQJWys&gFVqCFPxNH zmV6F=^-vm5YJyZ&?g+<}tUUD#1yzO?$4LrEad&S!y>5s6dgmpaB+e<`7Jx~0ft~?zXl}8sv(xJUWlZpSpD@~P8R133)zwr^w@1+La_tnn$ zc8_67*IU$$ugfEsOFWN?b{y_;$#QIJRkH-}ph4I)IRCyfe~Hy}obC z15lZ&%S9%0%M!&>T)(p87(d*b-4Q)Fykn+ zvAMtGIN_25J_0qUj$)3lu6%A67<(qWS_5tcx(AXl0a5hCE+g_DCv2> z&))KI4LA1#8q%zzn@LL1;8LeIUs24!cnlKCuB;^KCEdgw0_P`A`IFz0NI418yWEt0 z#ERznhM|e*;`%HQ79lSTu1^tWD)+;rTn zdLi%dZ{b2}IV&5ZngH!=Q`u&@Sv>T8~60m-{nCRZ->2B#-E3GsDWUGX* z^*i14y5yXx98;s=|Hx3xn)tb*YvU8tKB*JV>PL1}bEM-?0N4ZOyLDzFi8Kv$qqy&& z!B2MvZJ&k$MB)pwZ&ndA))u01lJrb?CB&1qvv4Mdt&bGG%Qf0Z3Bamd>~_8}+M{9T zD~maAaHRFeKdxP99~K~9SmEjHe9w>pycDK!Xyj^`{!^v!8}58Q39L#!^P!s3Q&X)j z!oXa?WqPzpY)Wg5&ZCr;o7A{hs3*rhZ05e+O4XL{a^fkQ*B#$j-BMgvbqMi4!8ZzH zS+tj{R;p$`7Nv_Py<>UsArf5r=DtfMZ!U}W*stKGsYm<0TD&Y35|yu^g3;o|@h>ps za@9<4AY0jrnZ+_=UeIot%zQ!U14u&0bziPCu5=vAjOXyR3qryZJ!N1n1?&wgPF1z*HheO}pt zQ`ZM?Pico_7G(gp<w&=E<5c-6=eypWUiw6GWV@fDZDZo z%uRekE)_>oZ3UTzywdyocNPdAT2L(k^6hH8K9$mwDAqZs&VUq=;F{jIzHcuH${Y$n z4`-CB;hwwDk}bOX)H@AcS;(hz8a34=&uKIKxz$UgzKgc2T)vpf6rQMjc*$woC0%~A z_RLy%cV{e<K`kA`bs-7KQ^wt4ka!Qy!_r*mB~tdVcE^U=yFVl285hnS0<-g za^MW@Q^`x!#X{4RJAfRGY}=P2l%HgwZi`ywr#r}|;0W8=M>%|rU21VjCb#FP`RUdC zb<9FDeYgT$_n8EHWxD}FUQbF(iJuL~=T?i`nN%4T_k*`t4?$EnCsNpW!9&ey(!73p z$vR1?&~|P9-<4|V*{vLh7vWGz0;cRxm;|hKgCUNBMwFuR8(+Ic>kZEl_rX*dJ|qn4 z)XqKL<_G}!r#iY0GLLQ)AaODaaq?B)-o-X|Q&Sk`kSQr&Uu|YQZ6MyH02dII@K$t| z;jg*wEu8P}7`((0M?qB)TT&3IL7(!f4dYNO!AzL}De2K_l{#@aj0SK_t9)`en2kIe zR+T}q`TT+;RbrGrOFZbIDTnI#Z8{|YgoXIJoq^`2nZm=wTH+mdNKYqzMwl$>2lea3 zXXW%Vk>>@)G{VfM3zN%{L!Nu%yI1KdcEwdWr4R%xe1r;RQyy(W7P)?y&5yImL-5f8 znj6X;CE6rnZqr#-Vz!}`*m$b=|f71p~Czi zbWoR+8XJs9(tta93PIF2_OfcI1lpQ46qwc73}?lsP#y1lZj3dVebuAt_`VzD z^ie0aP$<|^rsf)*?90!Tz5Xg1$h!f?lO&(1a31$sffrK1qf%IF`k_DEzhVxwWeTR= zUch_bp!4WE-r2rg6|WLUj-`NhF8!=(SwZy$sF%(=&Uqbv9MyPL^#IH!yOz|7qIAkE z4QvRTEvRk!#uy*wRn+z)R}sgT+;+Y`z_+-B8A6+vJI|DURewx^zndvp{Z^91RGMp9 z%&(Cp`4B4Xzq_^0Yi<$-Tn2W3+a>xO;DlYeyO}u24j3s|O?`D=*1Lzdbegl9F=Jgjg^6 zCKgftDfPyMP+0TTmSvcZ-6nFy$VIS^Q&FBCcUybp7M8DF52$Tu>SDgC_{iSWP0ck$ z?c^FNL;B)oHpL6Pt$IeAR_Xy~=K? z9ZNEB=TO_LkE$bh(C$E-kkZpDcG=>mu;MhlG773hqw0Wz=&Gv5dw!Txut1X*{(4F?_auh?I zK)U3asZO)&lna!@Asqqxm0+aCA=7ej&;9(7%34hzqex%ZRk-4pTDUw)-jf6%iTrbt zCAyjf#I?s|K72L4M^k?$JBRX8+N=x}oJYQa+8doZO#&McUhLg9LSM5ewVmVXLLFR#R8mfG zSkKrVT(*h3p#UsxXtIm$5TS!b_(DtFVc@bT4oul}O(v4{m-1Nq0@t*snxd^LzUg+x zMOr;7-|7*|9dFe&9WJ55s)R+pqIRmwj>T9v=$rtouCv~Ku{TAm8;TxXd`P3nqpx?5 zcd8q@DjcuUn_#AV@ryu(lx;=fysSi;Uzw!Z8b6#H$2q8~p>A^lfX9MWY{_c|^}H&( zOzN<=I1U)WWijt=k3484@vgPXA;BJ(F_HtN=LCN)+~9`PpQPQ}4lBv8$spY?ahYUk zqcnN`yBPUI5B}312)LC9samvijGJrBmoCo2bb;G0RFjt$c%1i3eNT#EWx)n7Mqw!q z^0q|_0G*2c->#Gpqe6dn{%jAnL=kHMUHH5fiiJ*Ps%|@a#SY$3_prLqZ89)?%Qp({ z>m=C*)(I>2*E&+`VfjvrpSpFkp`Pbz8!q_Sc0qr4&!EP$C`vp^Nz^RT<({k?B)C`6 z1Q!8T7{18sQ5i^)=>^;!T*GL6CK*EQZZ3#?23a29A(Vygm%IusAu7>I@|e}lraGG4 z;7C|V0&>Fd)io=7sB?yUXkCSNQzr+kx!dddU(shz-;qz&miq)(taS22K}DLKew zeCp&jJ`S&sQBX$UeU-F3DsyKoLRYIg>u9d?G@WDg%HZFFp_WD~Aj*d~J8m-^uU2Ou zUJf~DkhPL|gZIsw^ej9RfT>@(PRd&u@x;9nwewOn?g1(}F!z-zN2sBo*qkVq9(m;w zcimI{Ug>sJ!XzQ?z|eRusdtl7%sLjwfy^i0xlonFNW1QzR6UV_$4y8g87V*e1tHrj z{5=%5ZWq5%KU4k6+mu~KL~?bDDv|dfGJ17saMnN+kikGAyBu;aMzcz+8=2ZA>7)dZo-dhIl`@$v9KiKS;j`a+0og!a*9;~riE`;%M*2w< zd}kh&LOEaLPwN4BZJq3LZu_m5F2~aA2`5z^On8-25CUF`ZRF+7<f zB=KK?^FiWEvC@{+(&EEtFXA=_Uq?0lSYW$=O*ffNYgP@$v_GFudAWVs=@bJ4_$53h zi5^C)$!PJe0H6pY)kH&qwH$GjsRrJ1lW8^cV%}e3GMgWa)~}&p1)Ik5$?0{ zKpkSKQgot)>G9L{icBpz=&{+Ze;km}BSg8OgOVHku7eHzhZ1M^NcgybVTTK-@Te-D z%_UBM-D$eaNHVsDt>mBjkK?8uokC0YU}YK*P2D)KP#s;WTg*ms)*}cM_^R!@D9v4h zBc@+P?Y~dwXL%x8gWj1`c0Ky^kuCWfTzK7&oY^mpA}OjSVH_ay{*(tm_PXovVb!v5 z_4Bf!aBCpPrGBo+FqwJfAofPZr zL3&p&gQt>yChNh2z6njexe!jR%Yoy6E0i4ftpZD?cZ@5U?IBUVRqi@Rt>q`CVkeP~ zs;;ar*^v984a^pbZ<4W&kYFFa#0Y;mii#BNj=D57Pa#jPv9)qn1kABigGHf@R~{PNaXS{ZI1z{E0l+kQkS!!@XO*HtEl^h4pxCTS?nzTs zA}h5rOI%7qMAxyXh7uKEBv*>KaOP8z$Nf|FRk=BY3v!(M|9K@zi|?C{#;lK0zn`-i z(7<-xO2s!J@z4wa4A+&4)?4W!x#>+fEjc}T5gn(q6qnbtlo`|0Z692>3o`i?Lzys^ zSt>&%yKC2TCV+WAi4;%%{S+x*M>ZX2d+^uzSo-y4&VA9-ekk2S*>`C%pER)K>u{Q) z*QCxe1-cQJzo;q$kIL7j4nrkUbV4N+Vb)#V6%ZXl)Xmg0a%rfkgMilZ4j9h}E{5Z=YjNrxzI(Z?<#;|1HIaq(;jyL$IGOfqIhgi1 zmG&=sFWq5DK}8o9?wmKJDTjp8*y2r8mmn3&h&Mk~4-o|})i%#B=a0PU8g2l$Ai7dnl2J=wero|N1I;bze91C*-a)KVht4q>0M^y~ z^oW2|rzfzaSKZl17ix<3(03$yE6bzYfSV?JtJy(}rzCm!lzD5a0wi#1yJGuXx}sj0 z>k4P!HzGky1E*O04uwbiV8j*ol2sPrR95G2n-V&M;fQUaDf@aO{(xSSX?hfj$V$bl zfIwCuQ;S2<7?~4f4vrsSm>?riD?4-}>G8mq`AjxM`nVeousO$Md~e^-Ls~)H(kS00A0M=+!@F{sQ!QQsk&BmQ#}Ia@;q>YX6p~SgJZ|0LqF+e9@#k__hr78o zl}*;W=rtoy)WK``kbUJ!Cr-os3T)oK4Z_6@n$};-jEQ;>xE>^j?FL8m7Kw(VjlICp-Z zqMMxxzF?3`@4HvBebc_texoWv`gPjU91dwUineBNbF1=VuuLKL@hP&Sf~?|bF&?A* z3De`*XP!#&r%k5QV+m zs4T8E_E*=Xq%Lb!NRr%elkK*Sb~*(S}(HiiGqQLXT?qX6dMHqQ}piMQTIbE?c z-%XL`K0HFwH8|=5a^IKg-%(k&kcQqm)+pwiL}o;yqtmYBLUj^nk*rsoJwz(MlzOK2 zCf={K3xVn)nVnk)G!>Qk@xbsDnw6pQ2ZkZ=XdX$ZOJFM`_zSuSc|$!Fq^?V2-)Fmx(d?UZIQdpH@kZSbSDQoa;~lC-Zk9iQ z0_}}nT}hHm6Ta&52PssfqJ{MtXhHh}RYUsFugT@T5xTE#x1UFur!w62kyhHR_|%AZ z3CfC7285+hm-XTTipCX^ut4`5563gtWr83n1!JwJ%ARqi+tpa%MvYsD zWl=tzS!?Z~X@J8c;+g;AQxuGsLXuTFwlq6xJP9)FB8HAT|M~#Ys^u%VEubi<^dr40 zUz^l(yJ7@<=V_W^ADb^9uM^10IZ!-`a%TOJsSFp%TD12N+{ntS>lmfct}F8-JvDgs z((!gWOS1%hB$RUbxtd&gs?mI}a==>;&zgb`NR!Cg`5b|ak$FA0J;(Z;Y`vn)6vflN z|Hemn!OVJYzKi-u0`E3g-rB?wzVr}K@45*AT{_}6%VI6D7AloW{c$0fjPCW_OJl7K zQjYsXsK_Hv7btU7^c1cNT@r;=w^lm&zYy%FpnI2^E9wLgAs_uU337M%()Y4L^GcD2 zOnKf`Hj_qOa_P!teQ8r;`gsNwfUP?Tl+Sd@$py3Op6c7fDYB3@ZYje=vJ~U7MY#*Q z9U6-(hbhT-kXXo9!-MoXfXqYxF@DA7E-BihbXXWiKDiQ0InS;xXnj_6Pna&#$!6R%5p`tS^uT zvGO+IW+`g5XQi~XV810;nQS>#z+Fjux^O9bmWxuHms}BwaE_YZ+tS|#$Lu!ebBuW$ z{k}`%wYeb^Og|Niv?t)XU2agNda13em*PWN=YFF`#;UigO`NBGiBH^jv<&Jiqpal_5whpA}(^2LSzHS#M>ldPV!s^9$3@%IW6kXN+*sZ19dB}FLiFJie zny*@^4B)alU(Hcv;s>cMCE=KtXM3Wm<&keqsEB{%ZItMmtvV{@irN*UxFh~rNb)xL zc^1?yHimdyp+pEucoZz*!Y;+9MXen)0Q~hE7GCL?O?u* zW8PPHQ3{ENBgOkFp;y+|=d4A5|H{a__hq>Y9M-f#Lyje?;*IHN^nh~O=U~VhiR@gq zHO*2S*R5tw#HU-YzfyuxjrXCz=%QTd3TPKQ3Q2>3`B2hL1w$n|J1Tlq)KwB**ajSS zInxpQvRB;o_(?oljYWm8{K)x+Hw4%dmr%&qYjPll&*^~utzBZS9D!*8x||m}q{qdk>O6%6- z>XcE5g73&K9_}K8m!yhPZYpUli)QJ9l$`Qi&ReDwF zeAJcMSiA#}eRlPWB7%%X8DfsmW9;VRw5^2L4H&#kGnT+B+Ijuflun~fz0H;MULlE4 zDEz|OES$PX9G{MwuXFFmc?y5<%1RmdjuXH>%zimAZU)*p`lPbOjZnff>B!;oR1Wja z@(A;<%dL&qR{hf6subYSPyv-(jXZ) z#97)7y2g4_2RB#TZx;=!v5atWNhZ3qIO~KMftx4evH{e(UbL@HD?k@DLaoWI+qH|x z+Rm>}?PbqxnHmILS?-(;u%PYRYU(DO>a??Mjofb7s?Eqf;I@NUPnOEXqnoim^2DX2 zD6uwe8kUh{9WaHmlUlKE6&Re#aIfW4HRsbc%F*131tW=YDo24Ymf*_4Q{JzeCuI4i zDy!CC#~VZOrw1+PrN4?ja`ko`$7UIM>%iql^$ zq%=F_yy*-TjviV&G`CC$m%8~XW+YelRFdN%?ow4sTz8(ecy380XUkGUQ&j^Tz@Z5v znZ&^GibZwu1u|XA`HgavAL3;Ko~U|xG`WJcc%p;;5VGFK>s z>uJSh{s0Pm{%59JRX+uLt3fbJxqfb!0hdhPY7dff3@EQND=|K(Ri9{(c&OX)ax?Uu zU?@FDh^SKs^Q}H{@b&=!`;oVx46lXm2nU_10hQ}dYSAk$OGFv^EOLEZ*F4&vtN7sX zK7^m!lcowdJ*Ks)3URZvEKj7l?6jxFJU;8G=kOKml$EEa9#>9Z_PoyXJQg09VJ2H` z&RTdBTwJ11Y2qJsdI?5WZ%s+n1q#@h~^x({ZrwDS9Uv+p-zwGuAvT=l~Or(Sj22)x;gwam+e07d1O?m0U(u+yK@C$ z*k#7&Q0V*6lYCK^1dUY0;OTPxvHjAWe*E|_{JJXNX?g!I-Rm4?-&qX}E*_v-l6rNy z1K2~Bi={m^d6kkQbu9Y$R%V zq$~`Yg_f3VwrKcdZ>r?SDP^jOmi3FjVw&Q#-7RVmlY?>q(DiAStAj}}dZyTFS=Rgavet>MQoDgu%bTqX^X1~>mIW;hth)z5il_8&Bs-K%e2D^?_ssj{ z1CqiCb(;H*eaSD*uM?)MofV}gk-6x;z2BWY?OeS^Z3))lGd40~to=U}lGB7)U3|QQ zUvDtD`0xCsq-t1Do#v;8luwB->KuFz9jD9gw_>%o_Az66aovRHJqOG8b2z$n7UY8E zMp{U}g_m0mqNt{dTJVI(q)M13>-;WB2pkRk4hlh;*qfwlAf@a63Wejv%Rh9QX0{9FG;g=}|?|s#xOma;C+n;vamC zSIko)245gZcVwPX!gm(*_NY8gP5s*aZ=*_JQ|{BvP&-0Y-;{sTI^x!LkxHCg3M9XO zQr`&(7z^*jAS&f+hp*6aN~;jv)EbY=2i!PYSafOQME=--NxnobmkwB|3DGl&xNDdz z$vP+PbnO^wA)@>vc=o-*x>dbg$zVKWMKkzGv0;1*+N#patCg_Dr1WfQ5*OaE3m^LI zX-Db+8`$+V#m2ry8kWfbwX@5#Z~0+%e+@PmRsLZiA*>ppEJh*`wup=8efn zj?i>TKXW5*QFz>+%ft4&v_k)S;4vlWbMQ}|q|O&PQFXt<**&fOm8r}$>x{nSUQZDhw~7DF2O@=U>oa`>`4)~m z3*b)IcaVbhyEH$pyv)9S^a<5;$iSupkY1L6qnpF4EUqU(*$Bl6lT;UOX0*GMCRfm2 zyXc(k3xOD@s@#Pl(NYI})D+9rW=%n>2tcapr;D#vh;}EQ6y^zI6=h%v6K`nP3{y7< zQ(Lj^bd$fVCLCZ_16xNeA;5cbTi`REyCef zTHnj%bA3VSMfLk7Lue*JC?F6hU9uIOByO~k9sB?=#>saybHSdXre*8Zb^A|wDvr*P zFHjmsnA1l#%KeievWVCGTA;EvX403mxJ!Uunb72&*H1DF!9HwV4tFxxom93qXDP^J z>8}uf1^*2NVV~cscMst`Ag2-#cdVI_W}^nvgVTN6i|F`Jl2=7IFFi^n2fHrFGuI@i zQMD=jJd}?n7!%%<_*P9`87|PUTv8WJbQP!4;i-IH>JUHhydNhA?@cg#Y*s$+Rc__u zx*Bz{U{hT+vXi@$ZZF!QII9nuLw;nFUuvEzaZ4RS*c5H)yx&%8d|}{J?~o z%{3~1LYkr!T|b^Ifs#<6;FpK7tX;CqcwS}=E{m#o0Y{ed(>;@JyIUkfRa+98Rr^cr++PgSheGw{en%MG>#yTxeVasSA%J;DA} z*@xeI-m~>|$cy_rgY|iV7dWHN9F0j?5p zRG8+>EqVIR5-e07Vups-He<=D3TTb@R-=Nf+FOeumr0~*xJEs8yGqNu)%1z*{cvu$ zSk&i9`yLQYfcUR9SK|OrK(N0+_N0Ce1~r%~FOPNrMZHmQxvykx=~ldGFd*rF5(l#K zCw$mrJJos5%hP*?Z7ojqD;33k@p4IL1?goG{P($=XjeL_Abe>QMH zJN%;Q!K)!q|LPz~2F$8Bbp^+&Eqk)dL!qJ$R8oO4macpoM?UkvC%I8)gS@;fD zdgXj1Ui3@Dv#6}KQ(Kx>1A4&*;h3eGO1nLQPW)m@ZVo*X$EZ2=Pjv5Hzkpjsgov%f zh4Qb;e^{IaLlJEyd%CO^0{K6>&&oYz$50LETTnyKW#W)C5G}< zg9mN)Y3Y#&;x=Sa(3QgVaqe1F0On2mN#rwAZmpLBE$s}Dr&!>?sw**OoNu|`cIZ?E z<>mgY!nYn_s)9TRG+8xgsTAq}!Dal6EfJ-UC=`f!9I1PYX8GD5W!`6gptSXTDr|HV zk)^UG8WP`0r>f9Aswj1hn3gN0IsCH~8xp44GjupgkdlZ`E>=pr`m1lr>eh{&) zJqmiZ*#6Sma)z6g9a6=B-0gOglB?IHeg|H`iWex&9j|K?`?!^{yLM6p z4<&kseBh(xy%meU(4{m9>+9HI9>ZnKtH^!@&pFmQp}7AJExZpE63Ei^Zli{B6-8Es zj5}?IbJ&@jIW6D0qM4F_Aa{ZROp!?Z z0Q2z!9{xThIajwU4;9M#)iY2*-OUwicbz32{qXW6(Mp)pxA+0oJRq`?n*<)f=%VU! z2UZA~G|jm^3Uw+i0=RQX;YR>CI$Q29RS%DgKg8e6TEkANZPzUFI^l}KKUZC|xK^ss z=&ix=>wp;a+P$lzYtdh%uuLJng6y@ zb(7SQxl}3kRm`gVs+$Ttq*^&a4YD z;XD9b8@KG`>hk5ly|HJl9V|cJAz1%yy6g8Cc%7TW!Q)61k(DLji4DNLYbe}c5Ptb0 zv(H<$RGn_o742xq=eqZ*0_?)r&~h$u5O^lw41kVvekqMUgAW4)xW`_yn(Y^4Jrf+K+eZ0@;^8g_YYNCawS>LWvKvj@Q7g2% z55ifc)Zw*~R%=WGWGN`4dZ*7*Qq|4;iq2JJi)aYt^@8tL$Pz@h{} zfK-j{D;46c{ESYQ%h;fQDu`0O@(PBhx|PE=q*hlQ5$zk;@^L+ZThNk+)dHO7l+?`! zx>N-_$&MOHn#cGz)X}8Yqf)TWdMYERC@O+hD9+^&(ye~;I;1A2fdo{Yh`j@aFEWGr zMl4-R4U&+?Nltb&mXk=;_>f+jQ|p7wyFqWVJ)*?pS0mep`QA;noUKLDaT&0F|$GY0+Z$ zSmh~OQ(dA@B$9Y5Lfb&JS%vwOEvQ^08U)}0vFZIp$ zQhnatK${!@j3*Y@^xe4}TH76`G_n44rf^x9flvwEi~H9AvnmeDwD*y-Q#<#I zCz=-tkPym28cN}*)A8u|#``!s#(RdQ;VzoGI+}88Uo%AA1fd)NwNV$A1#ocpjrcH| zOlpglE7lePeWX!syFWhX%ck@bA!u)-bNgb&_EBef)lMvvuLO!eS_z3)U-9qkg zj`m(s6?C2(-D#8r*g{nRa$g6sAVgTHMutR1MZ`8VGl({-2iA_@gka z`Gz8sY%Q-ev~lIiYCQAUf-Rig58NNK`_CDvYoM|Zi*g=8JiS~=CzNsc9*S7OPu6u@ z_s82+vmrZc>%30HC%$JlDL;!i-J5R?v*N)V>dHT^4rW!fr~F>Qw!fqzQ@lA2*qeHd zqtJIqmO8^0vhe1)OwN;E6#^b*z#lbvMAGM#7#)+C(%l*=jOFFX>8=P~} z!d4i3EeBjlw$;=b>=sz-LIQl2qI%!TFlHU?$#3nqx~1BFroIQOsg$lCFo?@l);8ro zBtLe@>nthn)<7|({*oxbu_RDZ<0Mez*VI^^q!?)tLCGYFbNE&@_-8$sze#2e0Wsy@i=A{r`Cr%JocI+c1n+dieF9pYnCXyj>2rzyXs^wa| zS%FuM0Pu@fv>YwEKd(vhqiP=S*-3c%yb&Q;5yMKEYX*6ho~FWVk1Y)WGXDhZKz1am zjN=a8^{H!kq^lF2bdQzIBFBJCAnW&0)YWL0WDSyUUYmKJ>@CMjWvWT4|4&e{)nd{L zN!ce38+9XJ$PGgGxj{6yy9}x{lTCK!2;NmbuPPyHPlZ6p51SAysb@QyA{D97PVCR| zjE;*qS}@Po=)*AxUgn~Zh}o3Vhum>jJKeY8VwxX;qt}%?ps-|fXYKlX@|j<; z|9888Mf@Zv4&^(PYblQ$H!uqMp3*x3YQDSv)KgWF+DcS~2>kU}xJ;$&YRPJ3t2yhw zvODQA@BjmCe&V!v3Q|n{Uc_2mT$Sl}Aw$r<>`YLxQWGhp=QR2Q3J4w5<4Z0?Kd$@i z^MvIzi93HT(YUU_b>u9l0Zytvsgel9JG`cNd>kQ{XFRQY zfnz>moRCGv_R%9;TLdizze`%435J^B3&mbdIJir|9nK3?D5yizvqr>RpG;ZBu{ART z%9aM?iutMtxs0Hjb=6`nhtr?N75fAKFD-JMQ$8+z0r@XIGcNCtHnJ0*+_hT#B)`46G?R@NNu>Gl8XepUCLlWBt#l0p&G zs9A9pDj|MYQv^GBNaVs-Eo4QI?a5NS@uyT}e_R|>hO~J$X5Bx_t8UA&@R>HCEs4qX zV9<^xsH%?)AU$1F&>UKZx%XR16H6`HV>khPLe$>&fd?w|&u2^WdEY_jAxNq{P z2u}e#<)EF&utrC5lK1R(>58*X=#?XXfEggJt1I%&xdK0sTwVYc_38qOzqa3QZ6>Fh zV*JQgiH%&H>QyO>+4xcv+u~?uyT}T*aJf13ZaXUP>rPm9wBAtds6By=W${ z?IQIjCU{f~=zFR~1Z=8O(}_yTVv|@xC%*YxC|L-ToHeQ)KpPc+B1^I-sf}W~_%>

#g}o%dYHAccE)pm+ccm^DRJA8GpNB;Pm2k1)4}tl29Pq!XZ|-{=l~R z;>m|L;PeFYa%UnosA*Ib1118IFDm$Na=2os@BY-JG8~`5Q7=c0dw45~^(m_U5smJU zj^_mDaxFb#hf^A24#lBPahH?hL(Y;&l1+8;SQYu{AWeR3F>Guo#&avI28jC9Fs*XJ_@KH|`(yR;Dp5a%Uf?vn2URUkI z^$nK|DnW*dsoZYBN-W|Y?l8w)Hfa)UT#EN8QzcoYE7+`4b?_El zRCPHCP&2dBnpjS7?d}#d9#6PJqqoq_?Z;PN5S3BVxp@lUSsC}boe!l}NUm?hnPV$X zQEt_;^P`Br<`z~9mpE-6m;WF4_MPEBbpc8MS9eRouwTrW<=bOd7JgKJInwoj)F-`eE+X^ga?Ynr+S5{O} z2OatG?h7}w;MNw5tgh{%a*>Y{<12PkpFZpo>M8eH+7mv+$?sMY@&dyFR+LlyIWsx} zm*7(y#rvgj6;N3G4%Xw8cS||KJ=MX@IR#O1x>T{!u$6Nxe!MwO#oRMAngDMR=5uLD z=EiIPj6>Z*=9IcvCuC|aV2JBy_L{cLr!D3QAvbk9mqL`oT5C6veHh5+wHh=uomuhC;(`>4#@ zJ)G}QkGuH@HnQp5<;`>=@=jU~NT_t-xgF9$da=O!)bL zGKt-~x|{^sihcCd)v_|GDOm%`B!5EBTw*KJRjU(CaK%cCYdY^ELC)2Y6sovRwB#1~ zst6?NCy^RCj^GrY2QQ=8Dsh(vNHT4qRx3kATa$Yws_3O|vhHs4J`(5!;M$3Ig+ZKZ zzRHi>O3T>zR!*6ExMqUJ^~zCiyzbn}2R#01aINaaD^aswCW};Jl1&;wAyt%`l?#dlXUH zLv=VM-fWz;hcmEW1C0FNTl)y-aD;XFCSM_RT)v2FhoNIL)~hZKf(s_I8X{A&tNf^< z2(hY4pVP^#Ll`MjZ66J&=Lg!h2ZmE~&4G_SLI2SlRUeKcg&zDq+?10~s2nwal>BkGE*nZQ zTwN(&x6%lPBgzY#`q8*^PhDpcFQv{uO5jkpIMi>s+G%wcLJ}%KnA)`I&8N!P(K_?f zMupd`6OghPB1*gG(K024D*6q4kf6#LxG9VkMY9E{hddVu=(21E9k=8S&?*PsYEWcX zw$gViGpkE`;I4U$ax#R}@4Ul)^EfsmjXS8$Ha5QZ4I@J?w50FcD>h2RBROImM-3pi>>pjX3QwXSzc^n`Y* z8J?Q?%avTKktzSP6j9YvNuMOZM{{+{Zi_O=T*U3B=?;Vigmbu}2ARC=$K8>py+RW( zY_9!GRFSb&N{O1CxoT5L^uP5G7_~^QYC5O3*a*_o=%E_1Qg8zLsB1{90t0H&s~w1@ zy-FXdZ}+LweZB6>^DwL5!4-ST?Kb4Ul9V2)J+?mE;#8T=^~88Nwcv$En`e+h*P~i? zYk#RHoAnM=Q*+C|uVupzY%$!fxpj`|KzF;Ml*w7AFRi`5nr!^N`d5)7)c#C+DMuhC zPH`519i$;JXqDFNbE6)yHthc!a=7#Gl4b2#fXetOgdn?K4wDIMlyL4w4d5z>K{NN) zeyp{^`zSi|DtCDO>^`Q$yR8fh*~>kUI~Lw~lugZ)PgX|PPeKmlrx#y zo5(ScK-4T;6Umu?MCO;r8lXp|AVp2WhdrYIS2Je73XG-K=0anmGqOGDz=6sPH} zNTn-IuItM^Z`yWM#qZ39M~QGswC*Nte+NZ_5`2^f>(PSmP(bZiF_&@ixgB?Dc9^95 z-n`AwO;6z{VUP0q8y}$+dv+@2FCdx{Joa+78xrIvchs8x&(7Pryjn$*-lcb*c5v&X zyxY+}H3{$`lhRqxp(%%u^>n+_vMXqBMV#fztb*PAS{^@lqA2>o zo9my_0h$Dp4W8vnjrwR3Gx-&u@a?clMlm<$j;5c=CBrpZ`_|RPwsrIHl|(HDYXXbQ z$-|Xq>YYPz`xNCM0pSYhA8o)U_3&`p1k6BUAU|+KR#)*0l+9g`M_vd3{jtI8V&73d zGzjTQZ$LhxqOgw)3YU3xhqx%gFLw&LfDS}lg*WF~o$}1c3t+x5M?1l7b2?MCb*gr! zRj!n=?R()#8JMgHv|3zg%gEOjt=|FS^{9R1%G>sxno-M{eS%glWYH>XIwqP~b?w=7 zr>)%om(bLfCcYFa?{tTJl+ZHbvkdU!*2%7uU~Ih)Dks+lzEeP8$7SS2t`|E}xcQdl zLQtt|U#Qbw^9bIDU}Y!VE4So}T(Y#Y-fnu94_oUTbfx|}D4YYD#QVI%{4DJd^sA8! z_Sn1EaZk||DWjT?Rh>_Rc)FDpcSd?;wO2^znvEt0KDt_g0yI9CsG}%9(2df{rVldPtKP0{|?qCy&zeJ*nJqvKaPo;_O#w=%{xMt*K*#cnN^j*2t-^R`sLaXS*S zg4f+)XXkknqpS>-9L%<>Z?XONXy(N;18B)MaiNpw?P3CNV@s*!P*;^iEGDj1#;e8O z1dW`WWmoc+12tLFsYzd5z-@X0c8{})66OH%@@jUBTi91C%}V8dbeFLUsuUdumWY{@ zri$fR3J>C^d-8{?;iLexAY~fN(X`RIH)-2P64a`1=xT2e<|j6AqeBLJo|Gu}47D<; z`TPxid*x8o%FA{oLg^a54KJ$@Zn)X}WRs(0rVm%U0CjYcBVsnEjlywlL5 z$>TVshss^kk@1 zq?S)qd1UF$O<#T;ZP$Dd4;g@pks2=l3<33%ecZs!%63%c05zzRWG^dT*ThjZgHpTY za-6M6F=a$~B*PM{xwXA117inY(ynA9O0cR8W(x5t|G45WM>m5J=Y|Xv8hoOr;eArd z-eoFM3rF@=v~4ya&ZB9UI!Z2h>!W40<~oq3u(FB48cO^Xi8gw<5r#mU>rj$sv~xFnVT^o_PRCDyWqXq48Gep>IA3$Z9Ft zOoRjCy;?zTRUnT#dRg`NSbG10q($(u&-!)Jos6=|?`e;UB`T%-)_WC9nO|}S^-2l2 z!=SxYx3vM3L(6rg{WvF?YYPHiVEDqBvBz0S5UV9U3>}KO&8a_7QZ3Zp*)BF@-YF0Smh`Q91S1vR2c68jeF5eUc?xSkIM43+sn#Zv9nTjDdr4ka94~g1cgI7Gt z1*8nQ@4+LIhIniuNP$#xzqt)nHQ4Av>*}J=k`Q`4aiv5}zFo&3Y6@xmVbk|hG~!d4 zH>Ta?$AflVSig#85C`bnZP2@&N9i61af^F&IG^Mg4K*|*Brq$@Lt^A_=pSm$vuO>K=;%Zf#nSCXh<1Z+!4Aa9SUkWe8oyRko~T~v@5 z@8)PqOPQ@kLs$@Ukc!NQUNu~I%a>r)E)Fy$*;en4cL@&Ru4%fk{m@B56-nGP-NRSr zp}KUnnp42Rp#tBkQdET~w!#n%q;VIw2CvE0PzZtaMNnUS6$H4T zrB@6&F`f0Xu8_SmYS}R0SPs2(!*g~vSVKE|J`$(1=qTr zcY!&tVeE;`&Wi{-mqA*h-AUp}?xLOVW~)tR2c;RGpEPtyx*#c-6S&~5T_h^AiN-^( z+F`^XU`(-|zlHTA`)6_wQtV9~iZ(fMms^Y6tRlNDZ8dy{GD>o470XDEs~udrU@h~S zqRV=V@d<9tr6SeCUHWofb5b~9c2zA&!djuZ1*RGaAK3jrlk*BMks@1B9iciDCs2T~ z4*j>=RLLUAy(jz2_$~_GUqwyX*SuBS_aLukLikdsk0T-N;$jXk3GQ}_|3oKVm*li90DI+te+;c%s z@K!Y_u`A~~g@!Fxbwa?SvTIXhbX@9TbuEyFqJB3ig-c32xkX3BE`_N-?G-ce#Ln@j z+oh7DuC#+FcBml?ZP9q)O_fleLMLO*+YxS<5r%piCzVQuD(Q)xj_HyK;VT64^R0*p z@6>8Gmg~K}qr5g*pOa;GKKATESV|^>TU>nQ2s+KSd3QQ5Y^_kP3Okc8X_LF{8}2+m zo3=XZz7Fb}pheJ@HD2c%YAd}}uHivz-^q`rULsyZ!T&`IV(GC(N~_!Kq*9X85JhnH`?R2oyedFS)rP|wwU zdme^<(kCekrzL|*TK4karc#?iR+O1xc|ghi^OsV@-@xsThkYLI?Xrk1@p zXDe^?n)EvRnqH4&ofGB9clzmRNh{~kTP|F;g##hT?f0h57q@VzwVsut=ZL&VsT3Z+ z2H*Bdxr%T7UTuk_D_v8bI>`p)?-mHaqV>A+kI}QuZaO`xXGx(w48>H@XLXx0hGqqO z&PZQVIYu^p3hl@4j*IoQ2XJWIXUo{tGQyu~$FXBacyyaix|W*uc0t{`P_LMm7wbA& zT&h+1av!OxczE)7r2x1~%5_P^ovse%%8D)^HS%aOuWF^9In_Jo#7}9J zrhLiBVh_uyi`z*dC|zn&oa}JXP=J%D9aC|&QuRf1k6r$iLvudrMM6x{xJV?n9f>T# zO1NK&Tb@Pcs*yN!61+kL_tW6U)0i|JYG$LWhW^dTZkc9vHe{3TpFFvJ8?6-;f}^bb zl;p5rOmR9r$s~y*qTN zbB)cfD_@Svy0*LNZ%k|T6VwhT`UJO9I+q-NlCT}btvbchJ5*3B{qu7NLrc4{G`FMd zOj6E(blzD5>nW}#?YT3So{d_34d4N(uz=5bc`?LEBSoFx6w z#&K?#zZzN`M^yrzB(?Q-KpskRmvY;v=AWo45O4j1GM*j)$e|!oQKp{;`ow;3dd}3Il$)egUpV-$L zx!E%#3G#~%(V)0}JH*-& zdK~LLb-Q*kmn`)vn5fLI@k?_?@x;^u)^f?!rea%CJ1ZVi1ExL74RW~nf4qgK%J9^r zXkOjz!Z%r!Kgvmrs-wkOqq_LIROWTy&Q+pUT3x2gx2c-%&C)>uXe<0x#D+yRnm8#{oqe7O+vypoS>M5f$o^mC`? z)TcmgcV2t4hx8GX2>ds3gu6Z6wO^T^!@1*IDD(Vj{3ip(H6cF6%~?#YZEd4vbG=Q; z0AUXHJ+RJYT*IjaL)cgfFYl2h>kDr9?7hF@84u!XZ#Zs`M9i+@vQ+XDk z_6RkGyERmqg#we%U&7kvp*}aeEkF9FCaB%VOF9WpXbxTLqS6jk&JS3%NFdM+Om+z)pkPmoLRPBhmq@^W^%jo!#@`nt3Y047NPt_4b zy%NxR5(k*wK+#9dfn3+<3Vu zjAuAl0BS&ns-?RKqKX|r-@Wy1{iOYn<==KQ)ddD+loT|P3%pSSlk3FQXTw>@r9^D#6$RbF|Fyj8sl8nMtFTuH7(5#EimbTI@cP4dP4K4gmQaL9cQ*A`!CC_uhv zDITdda8gcINUzNri1Kp}$g^OP5C&FcHzMQn+Fd8qeu^pYSfUzAWO4CKoP=o7aBtuC z4Z7Aaxm-;XsEcewa_1rYUVc8twkrx%F=>rF&m~aOnOM%h>D@BH%6jo@0V1E8BuDm_ z|6{xL7OXenZoU+p11@nymx`wDJjy0<Z%$3vIgQ(QQ4uen{4g|IG&M8DMO`er# zEZh$2s;MESpfg^?d2WTXWJqj|oolL`ES}#ZVPU$9NB(v$sON_&{lo%N6$R^~IXF+% z9+F!ggtxQR?rP*|VFV$WPS)XXq zt?AuPYKj<%ofVRGH8bm2=l1CVy{ZRdiL+zLL*y;<3);O5|Rg|0++FgQPs&P*9Lt z%Flny;OXb5+o{- z-ei{uIR_!EKzhvSrwcc-JGlW)c-t7#}Wpy?lo8 z5L-kZQzv;RkXBF5)W;5U1+74pUUDR&v$G9LHTbB;mmbn;z!LQ?Crk41sKqb6B0e(E z>$bU@+#X@_5!XD#&a%p!6a>IRH|SL#Cv_UE?KN^qo~|k=pJsVBWlVEUVX(oQ@DKI)%yaa zRA-Q#3%gmrPc zr#!EFrBA)L`RE1mYO%^)dO0*nlySm_*X7T(9M+t1*+5iugIJo~W$EfIP=3F1c2$Pf zgdN19sO|caTOAr90%?p3L4YH?P}Du+a-YKF`vpq`OxZ!ZkAkQ&b~wZKZAV>7YDj(~ zHSp=0u^Y1z6O_y-gM zAmbZfz@k?&7P+ef0jKl}$zEJ%?kKoNv3x}v3;CS~R(>}^HQAZ8mUXoiBpbY#I$tM_ z`7lz28&hfryx^MAXP@aow7jz%bT>z%NskAzh>=^=V%_hm`kbvsq~ zoh$s?5;?bzfkXCFcqSF`E6M4XPL!^Q^Ktla+ZA?dH8Q?UbOp+b?aD6a%$!}Nh`7CJ7%>brHqkBgcEAVAKb*9 zOY^aSd$oR0MrkV_pTkm{lw>c-dZeoyLKFbDS_x=Jajg*H0}*8jlhk=;KJsS=Xv7ls z_j5H<+J&+VywsIwCRR(EB=~8%Jij&-=`_8>swqpS5B#CxOh*DH|2T@)l6U$<~jzEFr)~pL4ozFrZ0L>RoRw(;o2C8~KA!a*}YWi?bpw)62 z^i~is=rr=#Rew~6TQP4Q-cU%45?xLAbtH=tT#ocCchOtoQwUUCQrH3Re~ot~A$UXC z@q`*r4opX#t6DWbMQUYMg-hCpM}rI!l2L2R(raDcjZ(rj$$#c3nY|?GS zo8+AHR7u%Xr=cY!2GA)*2h2TFwZJrdp@_E^@JbpU9JfJrLHep+WL$1zSF>unzwH*T zngLGNt9G}b$)d9Iw0`1~1_}A!>%=EM%cVl7b{OAK5QsQUpy;-L-A>|<=HzrnsiF=< zZ@1lzW~?PKZdFwXd`HDeuzRgerKSS5#1yc$?x-^KNCj4X3MPv<_P*T*{Pi6brg1fA zNbHx~rt~WJ#l~zVY3S-;H?6scx2T9+(d@e5dC+cU5E>{#-u3P3UJ99R7xSBYYR1O( zNfW7n7=APu5!@4<;%1Jhivw3lA!HVjx#hft zH_I`Ek5Qwdew16*dUcDemr@P4;?%a;?%TH$yE<#Vgl;?2h9-`X?Mur~^5ImiixfCH zA7D4oYzgKp5BZH6=~V6_|C9r>Cna$$uSnIclYB}DcU`i`s%!ds_)4=T?lrl{NAA1I zNSuXb-5aakAQh66jcIcBFy8RM6pMce4krgiRPhQ;2&s-j*g`vJFd_iZhBGmPi)L5Y z=6!Lw$!vJ!&~mm~vh8&9D?zfP%BD=4a;36DFE1sf!zxscr`I}AjO%yrMaC;zqilsUDCj5-Kqcy$Sl)- z4s1nsE&s;!c{v2gGCO6bg&Q1!UUbI&q9k#=Z4=);ZwqPaeMqpx8+Rl_yEvT5wNCJhKERt)M>GZ{ zYldM%^d6JIo$j5jb>{oJo~{qI3n?H$BBqZMHd4#!KP|vZ0Gmuay1+ z%q>8_8Y;66mB_$uMp9zAM#Pn+cDU_e0JtbpcO4CAM$&KkeJJaloiXr;hLp9b(Gx#G z*)$M?DlS+1(D-{6pGZgnL}4di3HwylF!6m-~|Bt6#M<8i-Z~@ zk=5n0*g+&MC&h=4eWI>L3&+ZFS|7UA*w1s<9f&}cd~0%P&n?#Y2;cMDPcZ>+&Ccoz zOvp+n9eF!N>jJgpV`BJf>CJ_=-N>1jf#)Wud~+!qkK%>|H1%XgkP@T!qXnzvZ4uP4 zd#Mnnw6!0>3?wn_fm0V~Z{Lf2bxRdjgMtZymrGm6FeaX3P3PauPx1&eIdz|y>p4Xj|KFyx`Pc5Gy zq}q^UVk*_=Qaz8?=^~LnP>saCgL>Ud1=E9Q`RgyyUn%RoNWCJEt(R!K6*JKQi**&BHF z$4@8fhTxn^=*q`_)=Ig&*{(!I1U$#H%V%_LND0Vt&DUO>`=S5`G} zQ^GjaHkbvNa*ZysR603_d#~-%2&na_Y*4 z2_nc`ARdbbAKA|XlZOHe2N3n$3`PDG|x_?+(|%Y)get{)LN+2?DHd@688CA zXG`s{@sEs%o;9x4*tjKC5pV@19xS_Xe`+#}n?nCH?U~IM; z>OO;+qO-A_4?hY_6Gixda=@QZVJ=NeIqZk;TtTYx$$VQ{B1o1+4^1@>cN3C0%P*ts8Eu?`8RPJ2zSFT4SC}zrByA!u!sQI{zOG$q#T`8tpIkerBM}Oz#kj5-lD5fV@ z^Oc(ne33dBN?=pg**Qv`l3l6qo17AE)z(%sMk33OeL8vPph^jQ=ebnYRK0gmqEP$E zbZSZg5dhR4ke^ctJ>ZL7^g$sWxf5M2@%Wl9g2|Zh77*tw4GI6RUV&;r%_DD2n|BL3 z#d0ZrRKT;~vl%t?aGzIF{DmszR;g5+0ZP$fT{dDczus4oMo#D%SFiSNd=i$p8Y?7H zuLZG&LASFW!U%;`;`^J|n~l0?aajBv=OwQr9lo$`@JV)*EpuH4IQ@+nr|2pNsmiM5 z7p@S#rEb1L{mEKhw+Ojp&ytZU+jMgGt+G_n9+^}(B?(F7ro5796ZU7+Lkc`PN#!y* zZ@so|#L}r17FT=bik-{bzC=?=*!|%VNAl5~@)5I;d_VKxEymW#`r$bh_rwcvlyWvT z>cnU}5XluVp=57yDNl9XQDfAbUk~8SawV0Rm5P>(eNvu77UtsRbR|#r^XW33kNVTf zA#$9fN2ewpVNHbw_cOeunu4i+vI&(VucVT2rEcJ+ru%1SvQ*XQ(7K#afaIA=rL^@| z!rbU^@q9pFV)=hMHoK1u(t9Os0nuC+$-ut3KG!L1eFC$+H@^I$rleL92Z7 zSJ_~`fH+Yhi{pk{$sv9HNG{8Klxyp_dd&z;asw0Kf%+^fcYeDkkgWIK*Fx_&C?gJ5 z71cb*iDN+4%ISGzcDd(nfBmIesgghd0qfOo!bIgd@X>XbCpmZ5y^?Qd54F0_e8&zQ znaDZnpgNso^-s(3yK^gn+%8dSzy(}$2KaklNypbKY8rPl9H$WmDBtb>yZWdmvhpBh z^(hT_x%#Qv0uZ99A3*xaT7a}0EE|m;{lS!GF%DTP$%udT!Ub-remm_5w(ivMuI5Z9 zWMS@;rI)_tO3EI*avZd3QdvVaHRmFHI=#-^>;t^3Dy)Qp(r_zu9|ARvZs{AV(eJI` zc3p00eFuQ;h->8T;yy@8jZX5WCJt#uyOV54#uF$xPqp0{qx~3T^0>JRGf4fq&{DZe z6{d2%yFS%~{1_iu+;{z%ro?Ag7&Ro7!MZ=+5Ii;ekteq?KA7;XJyg(8Mt5ia|9i1-@P&YbU-0G|~jH*-muW%*Y zG3O)@SZ$kv>If+chZXfZmBopt!0lIF;Y=Uz?fS2Dkj-1URSj{Q3LJGs?a{wrGXurc zG$8d{l)hO92VhuNY4%dPoWwMzsusTGn5sPrJZfuAsbkV8mu@KO33r{O1c~~JWPn@g z8!}|8PEL%VkGn~Muc5nKOVVwE&^m-ug;uCx#sKif7P2rK#NR=wNx5XCp%Pieu> zQ6AF8mZIWG-RviN(EN=INPKRciipwrG>%JYj@cgz8dr&zO1dfnNm7xhwuc^(+MFuL zc`}EtI@P}v+|tO_)vKZq0GSvF^n&i1Cn3MND(UnXwVv=cAHk2gEHLWF|5HwBSUB0* z={hFqwI`KT1>eh*m1ZrsTEb`QPR=FJ%I+jm z1jrg&Yan>+m{g7!A5O(iWq zO6|t;(7)3gRF%5xny1Lw=V@e3Y`dhLsghLYF!HK&Y#Ni3&=iGH4_3AJN6}pn@eD1F z*cDpO)Zpk zO6jr?CE(mLJgTd-{kFQiUAJ&3CyiCu?-6qQQ@yuKuG_7izddrP{I)pO&&V5e0{+gQ zIZz{QEwiN}yK~hv1R`~vi$K+#0)7&lc>Y=uI>$WnKlqfAgQ#SyOLATV_drVzp&F_6 zQdK^8tmFzxXMcl!`)QGTU!OW?H=#~(c>j~5PKBV?PM4bqO!~YQrPhwWR^E5m*PW0c#$X~M=dt%wfkG4 zd}bLp7L}G=ML_Ga_emU`kH?S;cuN(O)~U0E*f6UA0lIk%UoL}o9Yl3P=7Z>nPW&S> z-L9I&ZtV%V+iC5(bP3oJ5P0^$Xo^^u=>{-J_AXdF)+I{>Rn$BIBF5bTQ zeWt19*v=Y{SfikUoAibFa#1Ilh^z?g+`g)}Ybvr;)sj{BxaIEob3sDYbG7fHz4ZYO zo!#h~ddU^l2g)nl0eWu%@=Qm@GHim^M3R!9;_9MQs7Ea?-sz_*2cPQ>)0XN6FQ7^~ zyvH6ysWLH8>fTz{Df5|hdkdocQt(W*#anaCdh{luinbcxuE$@FL|p}+!FL3Zl5*a6 z5wR>lvr{@rZ%#`s1MJvTa4=6aHu~k>6a1c!5czguS9O*Ds?Vzt+bc5&5a?f3o{^Fz zH^*0;ChfbF<~X0~P%S(KZFhm%x!V-d3yiOG3o+RSp{+>$rwK4CSb8oT25*dns!XJN z(Zx}>N>2LVX6yY-?}cePZviZsI1tkKWbL*$C->P+uAy~_5g@@B0x9poSW@gxwY7) zd&mIVRwx=opk3N9spNfYA;kASlD@P)nXyUxxK2a~EQib?+jXnCsuGQI-tq_mwLpcd zxx3AQr-TO3WaX7&9${CBH|9Q+a{WnKon8k=2S>%iKyzGiT}r^few>&3;c-g>ROqJ^ z6#(i=m{xzX2$jVp6{w4#Uve0cFY3`y>2;ls7^Z}Qd$VJp$QbrsDX$o!+kY}4?mYTTe7MBEiP8C0*RL$)7E?46D_%WiF zHZN71tLtlOx@)a;)EeZ{y0byPa1ELYYRk_K4Pc)B^GT850l5}TdME#94dZ!&B<2W^ zdTX^uRjQ$R&ok8RyJpO6huyXVGUg`jB9po4z&N?DYmgis9o~5=+)gSklKp3M-iB2U zVQxT$o?ry;peS2EJk~OVD#^US1RiEc&$!g=o+yZkSgdT2)X7jEJDDQa)s&?;(HYGx zk;#`Uw({21-D4@G|E$+#RuqR1eC8mY8k>G?HX?)Vx29gv5~R2<L1YBa-y${%TbZ zFxYkkY+`DvPTCjHa|n=M$+fSPyG7!V)uG)<{bE+}X{dA@Im-3^I9{RSRtFGf^Q!L= zs&zc~MP1Ytd$$cPh*k^E1!FQbCquyqJ*`y9uC`6Q!%jclFrZ4b=`(K-zgma-!n!lW zi+AFax#{4`i^6fLj1lav*L|lV!Bf87uJcyQn%HC6M~Yp>Itr7?OSI9OyD$F`$vU_2 zc1{HpdX(`E{)}UbPTKqJTk_mx*;=7m-Q6AxcWSPNOvQnL)S-d{AqFwh?*`)cXDxpet z(E3z?-0qE3U2e&=+SKu^Z`n`8v#=t!{&+9oR%FVfMZ_0l+^TZZ=Y)2VC+DnJB6Vm6 z#l0O44fqsX8Pc5oFMtGpl?!9rX3vm*#U&vt>@jsUm+RyFyS9DDZU`51cbVKnH@p#J z^Yzs9sG0GsAi|Tw+$L5eL%l z0@w6vUzQU=`W{2S3Qwf#oUV-PqbQMCMJFA?RrhFAMn%Pt_RH85doq)}5n--L6}?^R z*?P6{vdNs)f<>9VGfJ**I~7j4b}h->-cGp*@Cx-x_eQ;bipgzZcha^ctiJ61r%^-T zTQ%Y&6{cUA@2ezY?A$A4b)Molh~MM#mTe5~5BMPHn4jidgixE4z`|p~x2@q+ia4Cq z6Pd-2s~)>7)nhY*6V|1f*w#29wC%{4Yr3<#CS7`={-*|L-3hpm`WU0B^s611b6Bf`|&eKB)mspN=kRnvvBI)p;pK}`9Mbjw_pg)qTs0lu1N$T zNY{0hh#`EHx%O$w-ARnHLqCbR5}RISeht5-8NzAsaVjwC3(a)3tefkSS-mp;ic8AX z)il*Xw2RNOB-DavNq+4mOxKg@CM)IYAnd30sl2EH1%45g2#KDz&K&&pVfWMFP?Hw0 zC16>M0IYv|>DX|3Aq zI#N^sJZkcAr{D*}kIQo7|sH`-XZ?^|W*F3_F z(`%Qwc9kcu@Qf3?rt6=pmn%jh$C<0@RIja-Zp_z^mN)+m^#BsjQhz?aZFlfQjnP4k z{xz-C`L8zRbbtRS2S5Q7^WieVvCl*Ke$p}z?6ZwpmC3m;f$EVN(qmf7McoQ1f^b~F z>zjujZacE_^3CfxiV4cH0m#`T0YGx-!}&`qIc_um3V z$&y#GJ;*Y*hh{Ltil1<+LRFu3y$v1;quK>kRV%slyTfTIy{a8Gm3g)%tQdd*Wu>b5fZ_)oOP(FIkgsp}ZkhS9{vj+hpKuxmym^yLon# z3LRPUlwvl;H3qAM9>d_NlC^#7-UKJEI{}^V(1QB(nNgrl4~bJX8I$x;UA(?-kOZfK zQ^wa5L~p76Qj+mh@{L*!WVQ$l}XIPE4WDFiolRGKOqhd%dhe~K5g zC1&uN0>0kKy*p(vn*-OpLcM}I{{Gw@Q*v{=@)oVqB~?*l6E5e`@=mM)5YUhGajX5e zB|;&3S87eo#1vPcrp;avj#YR*ivB5s32(aM@Pcf#-xk*@sHX`O*1JIKVyaFM=+HpU zZyRy;(h|x4&l?4nrEn{l?$hosj6(ZVFZI5jtgFHi@JNJvbXijiHMwEwCv*i=3E3l) zZYcuUZsO1zNOo<*w%fIUQZRC?>wLP;$Y>z> zzOI_NF8rvlvIV_|1HhL85-bVTT*&9RBE1x*rs9z#ket5ikmc00^KO#NV3#a;%hbO0 zQ>|E)+`{26>cbQrzHl>v;sZqHgh8hFlCVp{iR)qn#9+((x|4o3&(@V;6sEfr~=2zxSW*AmA`eQ zB~N95g`&EToSmgpiB?0@Wg2qo7o7;G%0McQs>(T+m5}T{lSL0%X;d9i{9;bJ_`dwd zZpAf8DM4`-vRyfCS9GAiL#UTXx)uI^y7YXis8oXFLc~@{YpcAVb2lh}Lfuw@9md;Z zS+!wte~%EKbFOM#O?6YaWQ#n0TbLPUwJ@dhzG61j9I{Di(DIJZ$;Tc(8les_N3!25 zGotXOY0=fI%gt@zRn#Mkq3a0$WjDes>lJNd=*#WD>wxp zQ$0Zq0 z+{B`y^E30^l&+xM*~=9-N@t3d;j|1OoUDb4oH|l|mxEbilF`)MFMc7)_E7E%3Wc-J zM_=XU(0Vzl^lA*Cp&GILeTDFvBLCtp>Jx5>F6`eG))iC~u1`KPZ-l)>KB-g7wL`_K z&vE-uq2U+c+{Hjep6+AO98z*hVBfdvg!2j`EPl>(Wp#$dV$*Rmhi?x*k<_K=(!S)H z@tv+JxtPFJDCw`zApczFyA`|5da2ei^_&s%@P0@KpEl}49>*vYPF7REyXHQqK3z-7 zeN!~8@K%F9`^+?qI^9N&)_T-7-7$!^rDEi&jM|~{uHz)~u$$uC0SXxXwv-=UdeDe} zT?9(58oITlf)gc=aRKnoQKR_ilDD;A=DV44CV9m@PNj}o<|v6 zz)M!IwdE}@RRRVT!3FxcNSlPiYt7=a0OxY@45*N<)MQ2Ju{I>q$84^Y;^4d4Y*$I^ z*8b~zCD>3oMXxEz6n6|pl|c-t>V$xTkH=0Hh@JE&z&pTPqwX`68VA}B_xLlBPep2i zc@z2c>1=ANF2&!;cIm8x77sy@M!uA6Wnw>gX#d0yzG&`J0ZoTNmpco#V|1F~Ebvz- za<$wV;UO)nt*bH1jeLHR651_~%?(lpw4|^2KiR0yHGH&o02uSL${5bFyR6;n3U2)< zl4C_f>o(Eg4@RsYw8Ds;Q<6biHO6K5GdrPrh4Q zxkLCF0SSdlDJs6#Ms`f1opW)HHFQcbN4&&r&6r%R&l0z4*5nS9(tx;GMy6J^z;9ia zr>0U|L4~oDqPBxVm&@bVJ@{IQ{g6VjukdN@Q^~SZ=6>o$_bZoW($7q~Pyas2 z@VO-ty(cJWpZ>qf=Ff6boh((uE{=@e$ZIy&G+OCyK!Kxv6L;#898bSa50{jR?=~3e z6|={dclWc<;Wg+c_-P<*j!<-!5?XmUhh*z#4@6lUTCZ9%PlB96#`_{dkcG5;2D|G; z$yWm--^$4=p^$9!g9(?d!2a+{LM5MA=_oy1@Radd>MN}6U@ygH0HFGP99pMKm%Li9 z%Qs3QQ{f=%;LXhADy!u6Cjb5AK-3nh*#n##u zm?|{!7`x6FQyIq<$tH@p+7T_FE>!}6?N6SX!pc)L2uAA!JJ%WOUAK~A)kYeDMz2{8 z?4|lV$Gz%Ea6+(DU(@1NSe8Tbadn#0AGgnnQqN(F$a#BQ=~q>nm}(jUi>j8anAfF` zvqmFtrm`hRQD4ugjJGZ^y4cjw)cYwmba*Use;x`Du85H(AD--|o<2tn;Jzh>YpMB3 z2BD-hQx^GS+_*=z%q1^A4~3rz&%80WT9<{X52v!mX_>P)=59ubv z0r0SmK)y2Z>*XTY>a5}cEoH#HF1~8RO_@-ll(~$297Lif`-(*a#`+{pUNXy)By@yY()Y%DCv?-=rRpwZZuW6N5tZo z%4p}UYw@t-Jnhv#Hfr?%c}obd4NI$?R#(i9@4|z3w{2}rgtLS79-{Q4@rT54ecKkP zddJ+ZWdbGnX?z;Z2+5>hsH^HR94!vf4Um^$P7F$~g6ttW&!q$IrbY@noFeL<>$Mjv zX|P<{ngg;`4joqE@?l*xqfkoPA2%5mGjor5ZrmJzIklthK(f8Ms?tAYw{i%G^QFyM45mdkEUx zA>MAo=F+iXHO&lo>CQ;<*5871N&z%p5$BTfzs;r8UY3DKx_QM|!TQu^_jz1w2$4yb znG_dNY4s-m5cF=_*pGB<)jFwYzyw*p6qhx{?w_1PVCgNTp#;^OM1BPoe(t5x8wKwh zw7_Tk?S~`H-W1h~YD&8>?FHnrXTYEa?c6$QOOIDxGFhv;9gh(A)10e0C{e}D)n-tJ z(xMz(o5jUvirP`xp6Vw3dCCj;Ghn+zqf^djG`3x%csx}Amv-wY`(?Kyy7^*> zDMOgs<_$ z60Ie#ek7Nf_6YYxN*!Ka?Ux;?VW0Wc@*)~Ng(7gMT`W;vXI*~xt(ftv%X3j!=yOsi+ch^iWrSvsCA9`{F;+SO zgwZ^bM%gWnIccw*^`XGl)m5G#YxB1zRlH6;?g7nlT1cR)AjHe5zPpDSt!}qEDWqN( z8;kO=oFI)fz~EyQMR+<@t1Bap>4QSSX;qB2lk43}HRW-KPRr`yT{`{FbCjy#G20bY zgTj>;QitvMOKKt6SdR8~h4MZh*B8jc->|fkx=XFxhl_jeJ8_IOdUX>sIj6J_IaC09 zf~l!&#-j!cpiISGAc*F=w`@8-GXaeMDm&4@sq_Igp8I4SB*%eBG8G0j9^ePSt2))9 zAkm&&`GKvjJeAC{p+G(xvDm6u+ScT6mf;@}hEUTiHFXt{;@DJsJ{6Q@rW~9-3rdaa zZ{2Z4zf~0u>5+t=`cW-5>+s`hfG%*ij8{!~RDV3jy=@}&9llnv>g{l%xbtk?Kq&;c z1=>)#6kT(gou<4VESCBHNJRj;F_2iDC&__Sjc>RZncx z%UpabwY8iBrRc;ft*j)KyP#C6gx>+&)xVHz*ZGUiZ3m~98bhVT{lt!-E5Qj!Y`@ZO zG9`gaM6MfhI(g(%N28kqd5i>V8&&O-rt{`Y0$Li>LD7lNVLG-|rd4)pkXTRqf-0nz z6mVP}BkDZPwO!_H}c6)YqZIH_NRuI_5$jZylx)t6|*t=p1F2fKEG=!fk zsi%7D)~4~OqEIEa0(5ERVQQFGG*f=GBjWFcvG~{B=5N!DV9K|`^|WEDM?iNFA(v9a zU9H$a6IoX%w{IlvE0?BeaDBLw`EXT~>dk}^`>7e|8jLhq9E*qnX4I<>(7`k1hr9;k zcoEcV6h2SLZM{}R zkB%k$G(f(6c;uel2iRafIlD4<;0?*L(}_1`RZ8o zZP!-&6!@!Yw7~7vyk#g{#MO3+qr#S?Gq)j%#cx;ib18ABf6C*seJ7}zx>GD_`1ddE zS*?i3hWDjC^-zM4)JBvc8r#@j?^Y?*we;ukw_K8lHuwkdQ&)rgkivZ;*|(9j@VRr$ zzjpV4IPre!iCN$C3@CPAY6jQq)JAz6vV(0zy!*Ly_UbD45GP--Tp{#P_uRMYJ)bN# z8{!0$=ru(TEUUwmgzAN~eAFeA4s;ApBU7*XEgp4NY-?u)pJZxZVG`$mD7mbM2{nzv z%8yRQ1Kg#4L7&Tl{L^YWsXXbPodfLFek9~qt@`2w(2dmTzxUT^c%ciMCgU#<*c_Ub zh?2{z59jL!gJq{n|FZKd7_sWxOlq`f6+U*?!xOo@P%|7SNb2aisSe22^(ER}1g@-v zY3KlVN~`NpVEE(gfIlQ2KAFlYOvP6U;>aVX!fphY4-`N8<>W)jjMOs`J7zK~XZ^ivH|1D(f)0I$HmIy0>-x2K%g`X`8vML{E3&N?w|t$Wtr9xaS5n zLTq(gUssWjXHraVVUIbV>Ja=~s!-cA&hA#bU*x=AZZYLJS1ndFib6!mT|HG@?O*ag zsv5k~DwZ?d7B2JBNM>Ldeyo$m>(z34H{)(!$5rimAKDRAfwBxv= z)PDinsJK*nn!;bIKegQJz8G&@@m(%5_lZ+HRDse; z)2YZ&`J+TjHAM3&08a*_4wd|~ax{_VFKj2U#6D#n!p)w$K2&$o+-Yb8r`n3^-aJ_~ zFAUJn6SO)7nfY2aC!IA+@8VWz`92y2_cA`f({y*oao26HVsPZvdVOKT?qIhD`Y3lA zmzQs@ocL76>d10jA7#zd^)u&38gZmrKZ4=v)>c;nP`0f-uBmdYG|bgy63SHL@VG5{ zYsq-@*9uz!4e!qM9&gv0m8Yj_b309q4>kG}ey{4^zYmuR*q6iV)mX{%JwFzQ&M%yO zS7je({5-1yWRi(deH|o01?e~_9}i9rrqsEjO<%JWuTLrk$E^$+H%h)LuptCD^w_#( z;RQ?N*s9-`%746`SB~?Se-pY_37)sxI2y_w^Q*}>qV`Ak?o0Tjr6LbbGJ`(@C_;>u zsI1V~$4%kYuTKj6krU&d3mG?*9n~pK$}&9Zou+6~#`U>)yIXjPoI45$k+{3h5-yt@ z!+g6Z!H?qTKfI=!vu_^G{&}yZ0MHdFw{X_&;k1n=e@!N^O8&2!Q`81KPoJU7)eirn zoa6Z|wMSxOh^m7(!AC1ui=NuMC+7J0nsu@!bh6qc?{rH`SHq7|yBF^x5f2I3Wgqoz z^_@~KkJ9p~Rjm>k&Mo>(x>RRhMJ%9FgJ~xkIbvVBWK;h273MrZ*7_*XsG_AUNMcNJ ztK{pl)U^z-h3GN|=aNr{2V((X3A<{3%bz5O>>Xl>UKxA zJK;mt8W=N|6QZU$)YwQ?1i};&nS2MWu4=U( z-08~b0??3}%shEnjW2~@BO)JZAj(Z}CaBP|maTjyO8%{(gq$zSxU%)gyfrb124`0# zC44uApzH!b>fr@SOgiZLSA7chQI3+YZibI(i&IvqUXx0Uwe7T&KTewlZ&O3=?&VW*ij51crwTn9V7V zWWBBe31U7D{# zo-wCeH`(3g4M3o^F?oVS7)B#HH`uNI^eLpKXzJ93C!sn}ogX#HmvS8J=jf8Dz%{Al-}!VO~R z8E;$wsurax9!VS)PUqB^@(_!;q@(GMAnyUt(_Cre)atp)5l|`)z{)Y1`O+Mm!*Dk@ zv{kOj)Euww14Q2k?B&9lOTHBC9IDL$urUw?osd{*)G}N=b#i?5a+RtlBL7*4oQlKU zB&ej)O;TN_s8=zm>SdI2;N2A;Kn&GAT{Z%=D=VNWC6J5PZd15%cDnMrmqKRpXHG~= z0`)?gxS#ewd4W~} zVPM0B0p_@jLbNz`Qa}J|z`U`v1R}Xt*KG8zuKjV9do@RpKwW{Fl(yOw8|S&r-zrK( zyAB9`ELy8_a+GY=lVky}U6872NB`TkwBwfE`>E;_K7_o^x)dW-4lO7Y@8X=9lw)sS zB7{aAmlV?=JSSZ^ip^OEmy3k2R@oi0cgyWw6X-LjNddNm(d+%Rl;%-ZQ1x-VXsHwd zAGA%ylBMj)C%Gkk`4nuGl8k{>@q7MXlzXc7E{dPr?h!lc?D`aa_5#Oe4@`2~<+vt_ z-1LDO^LDhMH`h`xJiBfLnl$@-yb>v}D-5L{TU~_LfGia8;BQZReVxx7eGMO1cDvg$ zyd;i1wPSEx&9g z3)tt?|5=|0(f|OXUANqE{Sv7GrOQ$cNHGevd{;kQ6y~FVXp9T|H9~F5x~_c`q+lSu zkDLdU=Kg^jV`M?XrXr}a<|znY>5rsL$__HKTf{&?ZHP3}UN*dWi~Pm=$AwQWZmUfp zg4TDq7)i)FzDr<*{_W~pcBj?4DN-F>mRzwlw1b8|D^WZ~V%2j9^5#k5e6=s^!bvH;PI~G6ErMvfvE2R~5(IQ0M6s50+ zX=CwHG`+NPy?8s1Y+-qEAU}%H#G@fP^3D%$+TDn`%VI*c)!3LL`GRU z4Y0x~vF$@*EAANH954g4daqpp_!Qh%9jINZb73a7Ff^r?D{ced)p_o!#0)#?RMGEN zDD>9$NdmQk@Zsjr9}SSePr!1!2ty{1cH-;O4LuwFsDE16nYdrHbZfAYMb$(CP$yjh zwKFuhQb|y$GJptC3e;)4Mt2Yg54Jo(0ZUPCr#Wf2CPJ~vq%RQF2PLjSYpbPm(p7O=Hl&26eVAPf6jm_L9QdJ{cMqGm3?Jb z%X>F#b9_IgaLdbm_51_BhOId*dI1AK)eYYIDG%s5-t3Qmd2$D&2&o!G*e0PXAvi*P z^SJFKqnLmH37piT8Qw)9l~NysNxKRuslu&EA>c$_J};Jnhq$c4@2#?ntO8yUZ!GpH z-(XSkf($I$Q9eW+op4AM014;u`btVYYGOWq2(dtu0%F9a+(OfWJ}Keg+P^4};?mw* zj6~KXLP~z60$0U~lS?F>mNf<{&%&oun*CC>PqV9Xs^Tx*g7__@9Q{&=9{2F;QAvN! zf~1Gbz_iC?x545mOwJaGWOiRvD#PE6;__l|7N!yS|M{a&BDC@G2^q`5qsg|lb=`(c;&GD*F2gE2Ov&-bl zCnHm60;xfliRZ-1VUCRP}m=P$R{c1I*=0%3!(7%&Sv-jXw_DR|kOFwYb-M>8m`R?fH#P z$5bBn18lT>nyx^~L5TR81V5!1&B;JKUbUWElTt0*_{bL}DZI$5cOZ{nG67tUWF8mGXjZMls1C@&QY60cQw(-%x-UG=gW zkN5>YxLQRf8yb=1rDX#z3skQj2GL#Vv2q?AD+01iEw1G%a$1L)0fd>+b?q>ksn?~v zk;bQ0{PgN%d;?szxTM1H0k|uZa>QOW1;UH~ z9VXJ9@A2_?e`YXGo|%eUZ*TFUKAvM}Kp3i=NmyN7?HvGx=R1T5l|R60_R-Sk#8^+? z5>7>LN&d>$COYp}skBRpcOLaqLoA81fv~-m7*8tT2Yt?&9dD9?k~d}&>nZ|~UfntA z%8x6o>?ftz=1p<3bQDw_{+93LB+5ngoh1{IfM4CVIUhSVE*IBXlNR*8a$kp zJQeW-4@n^6%|*k4`%tv4?+TdjYAxnGKqaa{EE<+8NfP$bN%W|-|EYTmCIBHw^-@Rj zPE}&nLj+1(Hf4^tMsYQU0pMw}t~SrkP9L(QavX{@NE`zhUUCU2n8N*M@LT2QmfNL? zO@;;aQ9gZg7!{K(6olmt&uiV>UFhv;zpjA^^(iIDh*RC1C*Nu#27=~JG(|%xT6CCl zBU$qlu$v^(M{Y&q$$-$nNIYKPMK^a7L%UuETFP4>>Zz)yfvuf>xymVRMEl_y+uj7b zNz!sdkyOFm%{q7fjgO%4R=s0Im=H@S{q#gU5=*CX@O#gavrUyQx&d zrTZv}DG^mqBnB$hwBI|#5cNZ+eqa6@AQ(S*D$CVZhz#=abNJSpdXihTsx1P9x;oC~ zp_1&x?ei&mmE`W&>vI|ImdK&Nh7t~s`$k1=!EAR4@ZE-G=}|1i9s25AZpaelwo9Gc zFBiUw9t`R|P?IJHdQm;Zlp$YSUNbk8W7b?dzifSV!9R#%sm2qEV;s=_H01_tLxQTk z+Vj%DS3;g?hSH&KXC*`yqS<5REq-kZf9N<;*8g&&M+v*4_LnBECsl=+rv`e}3G#I` z60e}_y00+2FH?hl2{1OU|j9qg7TEu$w<8R+#V4K-jGn zeiT1Z0doR=Oat52IE_N{gk@0TGqxF3nhUFv1~rVnluN40aE(~F)wkpxTdH(#pGDBE zn+RzwU;Xekq}ha)T>(}p84)vUm+PzSAqpmy8n~vbVqRmG~^@*14`OZJO{uL714n}>E6H+tCKcqkRg zdvaqr)ZvfGA>xLD+x5o+bG=o8g<5sa@UFYfT8Hk4E+WVx*_vy5wJCIO=kP!W3grdN?85^FYFDD=fsnyvur^i{k7H5{Mkvlf~>jy&^t~Gd%H#kPI7f3Mi4g?gEbp~ z)PaorI{wc}93;o+OL^3p;ajR;NZir)k6I}dYNFi*5Ymo5AC+09nshS#aDx3g2A4@0 zGY$$3KHz%wn2P2{*Xku{5Oq8J-~+#o=v1)c)G0sq1#ogN^inyj{%k3Ic2v8&>MR{O z0yt+uOT|m9yWKwiY@oOU2s(MY^Efgt_e52u5(Lz?T@xc+*p?+jgOT;dc|alBQIoN& z{#Jw>*GswXM9z;KN%4Lu`NwUNu@X*KQOYdWz%NTnjuxf&kWFe0!094a@m{JbM;0Gk zCq;g5_dYL~8D9yXB}y2@N3woQzJTo{2E@+mv+K>>h#dmifQC-08`p<*-iwdG>yonZ z>DOEB0v~0Q6-xii!#@=nNm;#ej{#gW^E?*#_PlPdQ6L@uS5jMniaN}Hwj#{3u&EfR zE|llgW?YlssYZ)@OR7%wx=hxp-41!1YgJuJ%lV1zJy#F#sfK|qH+7t5C)VitV?F|N zE1pT%?cOEH<2y>Hrr+MTmEHo^rW`8&*^Lcui%`eLK&Wi+k76@`D*CD}E~#hwd|D|@ zN(zl=jBZY5jyFWfzE2%7V+K)ChRLPSD*u`U-Y<7n39qs2$ z0@IM8$fuZYsq0)x7AGZB<34uzc&3k(#1zNg_FV86R31}=FlY&NsOvgD&*+|5kpj0sB#=Zs=7GaAjk8r*H7>rJSc|v=Fx(A z+N5yRj@z*a2o4I= zUXRLs_8UL)UnjF}X%p;g5Joi3=Jg^L`MD8io@ismbjfu-sKeb0| zkrdu*@la9YxcicTzrLqOwQ)cuP-RYKJ|}6bs!M%yKW>T@uwAh`lEKI=>vpOrF>uv& zK2_U9Ozb+(C@6c3N7M~{~c9zMs>Lo2#sR+Un*jN^eK$WPlED3D5 zyvp1>{67hwvU8G%Wj*?exe?y7UQWG5vVIip3N;I9rXMM|*+4y%XYI8~tXVElEtC~3 z2&$%hQyX^BlQiYjwXADovbcu_lt%C%gp6j-T@{<@*uY9zO0A<;uD5RQU@3Ei-LK9E zyKeP_UETarU|E6MKJf6SeWmE|~cM12_x0Fd~Z0|KP~ChWcWS~jRw=SZuW?yC1l zAT#n45rLW>0Fp-SpBg$;om|Q`clX>)H-(jus{G@JOa7_G?sDduAW+cQa!1gmx#7ar zsXUyb`2Ir%83oV=X3)d=QUjm=(ZNvn5>i=T3Jn{e9jg)Qk5c%&HmZ|$$?*gf5$HSh zyZR`7tFTM$x$4q>mhiXWv( zB+G97xnu(Ho;<`Uu=}u6s(845J}tbHKNURO1u@N*=csiOCa<>*^cojMiABe&CEri?a~<#Mt*8%Ayu~(5Q6{Ixl(}n0 zq^aVoJ(iP9dwVW|feooddFov^4t}GCm*aV^FsQGowJ_`oa>7!L8Q<~J^*VgVnY2Lgflf~ZTeppcw5f}YeOO>P$HNkvDr*@LKp<= zWa8y-E02)O4+BzJ@A}YQ+0RSoxUbsa)N?4(#K^VcKaCryeYiJ5?k_Kq zz>~I2IuD7huACn3df{PT8pS!fr-bCffl?@6i1VDGD#BROot6^v3tAcn)X#)@S4q=>QMB7;nrj zC3+AR900zOZDhkYwTv#13gJ|Ti8@9W6FS^h1%2L**wt&6XQ+*X{0P#6gDkRuGeO?< zacC;3-vK@E$W{Lstvy~;@{yg@P<@+@V$^kV^b7pkpCc|}(vYY;eC=uu=v6fJ{`?d( zH<3N$Zm^(=C9!x)BsN{^4-pMmcaoShVLkD zgg3w}#oh)#q>!$C)J^-8h)OP9>5sha_FY`~(fE1)g-a*jMV(mwZdbDSiQOd4?g)lP z*8@t`?9>Fby2^6~F(PE6YI_E$C8@Q~CFaQ63eCzcYY(#ZV~`@QTD^h1yZtAa8{2?W z!+T8GbV^W;Q04Timt?nOhWPyL8Y#7ebYc>8pM=i&h18KJ~~C9Use ztNX;*!!E4`l0<%83Aeg_#9{6VXE{m6nNR4Wccn+^D)(sXEF zi$C`A+j-%@8_UV^1fA*ju50o=w7a;1*>5{s3kCJK34BlZjvNJu1(98d#|wQ_FW1B3 z4e^jqy^IY+qkzArpT@KBI8Vv<(y+*x7Ga5}=4eW9x8@cxe@zqQoBOhOJsj~ZshKzk zc2?d>>(-(H-Ui}OFH+#R44x#%6kBP86m5TrAF_5A|J9Dx(&^btnFhrO)%(jQ6GeWN zS4MHqy&j5Z5*z@PBk2%A2BU7sikg9vdgJc7i>E_NcCZ4Fzb98KQ7q|oI*K-9>VZ+d z%k0vp`Rd%(%jKGzXKRk=U8Lt8xm*jEdpXfp(;Z~FR+|+4q)<@}1K3DiyGd8ay>==h zeFA$@xx= zV=bq5RFg}kt`Ynll34{=5z5uk(xj1-%UMa|D6EozRZ}l&B7{SQ_EAq9?GTCL^E);- zgR~?u6l|fTbXEP9Fg((Eg#ASM_vO>*saUVeol+$^zCprr$I_us)1M7cv|TL$GH7D{ zEq71VM04Y6kttpY94_3Y<;J9TRUCYED-BIt!9ekwiuD5gM~}Vh-yOuOu&1M5(mCrn zqVV>{;`0ds4bnwYij!P2^0X_lT_|*H3{c}^+wqfXmo>BRPV|8*Ib6zsyw47c%%(UL zfaLx0mgF*22XNeX+1*Yk!fG0nqrPUCHS4Ha9*U--u1W*t0cTk{c03JUB^a0ujcjaJ??q@oXal_RHY12 z{G9K0$fCY9=uug8Hw?p0)Qzv&h($%Ur*)|_N6P1k@CH<@qA0(fs3V9ucX4Iv(_)Td z6VUx`3QumPjfant<&%`QmElh|%o}w-1>pg>Xy{GCQFDS&;x$lXQ+;yF5b%!c>BF(% z4F9Z4RS6A8)%7BohU*q3eN|#uUr^V$9_lwGwRx7#nQ!$ifJ+-(MkHzVJ`UrSSL2nP zeuwS|kx#c)X{@&B7dgpkV&-J^r(_e=mvDU@?M95-iee+WUx6l%43_OEFt(ah z*NIW7Ta}lCwu@xTujHd7jX?Q4V=G@Z03F+HAXoXd6h3aU1)-EPGaQ){T%0m^C)BIq z|2xV+s#?U^a1&1}22P?|=W_1Bs?=~_Slign;nDCB)D>&e5Ql;ll2e~1q1C0kp_3{P zTgwd9C{@ZJQv(;%4*Wi(w30-j}!Ze5x_sgtN~gNxR#&2aT^GLj0`Svs$VhPO+Ec9=hVtsFUxZjSv; z$*27MY|q7|`H&tUbk8auWR=k9xh)ezUOF2~UOTW|e}r9=>vdh4&;dpr>O*4AD0)Bv zw)^2#ABEl9;@9b$Zm}Y@;|f})GLGsVr#j@TDcm;|2_(s>R9bSxOfw~aYEi1&Kqq(= z+iQwxB}bbi@v4afRf&tO`tbDPPjjQUJ-~HnYrz+x(Sc_=A7Nwal2$R+=ZxEN>TygJA9_` z{5n6;H4Skw;*0+4l2kxoO*z=xWz3}%x~7xV5N?`iPgNeChO~Np&65I8r^$9C#Y;@g zWb;Sz?)`%-d?JI`B@c9IXrGfQw zf1T*wD&4p<*4vN)MkJS~zrI&Rnr&0Ckpn>4K81(ObM<`ht_a$jmCNLg@m!MZ(IvTv zpL?m4LZ!wX*S*#UU|GWb{472fVLxBRqdQ{XlXoX2^{Qb%sN63}pi9@hV)!r?w{xbL z$~Yw4V5auHT#UQPp;xUaYc?7V4&h+e`6yJPuioDJOyteK&O~bW9x9=6btRnIcXRx@ z3bG3AgbytNIXlH8W2vE>Hw2!Wgq(Ocap_m$xTTaMSg6nZd`Br0a z{XB3lumEZIcI0&1YQD5pqqMxIx(L?zS38@>rxM{(31jPkPHk*ms*(uhv13cZH&41rs^GwR@g~QJSEwD@mYdtv zOtQN4?=QlGTjEU-tqtCHpC> zw*SRJ&Gx#=7az!)CRc@aM`&riMt-ejTo6chgjAO1Ds!(anOkwhsVGCKD|a=_MNI%+ z4%(0injinlAyiRz^b*aAM?FQy5W^4U8o4IuN1-{@dPxz-YQwE@oBhN2d{#{yWMsQa z@7`ArVwd6E_I6ReUUrf6p-eG0R|ikRPSwLxn$l7@rhK7x@BYWxt{_k%F1yOE=|Ap2 zxL)pZ#{y%llnXI(I*O-MGuciW6mtvF?eOtL7$^d_U}%juvvsN6hhV z_M1s99OmLxUMf2*bK3jp^el@)d!0@w&`PRUC@IY4!;aoF#jf4wShv2nXRT>W<1E== zsmNFISgPn7e9E6C^4<8tis2Z9_K;r!_}cohQf&_U#-Vt5IP!9b9RZHR z&+rp!4>70oS9xf$=%}d#>E0vERhjCzxdQ8%xkCL`Az#nU)D%n|gzDMiX~wLnxc5|qOS?gG{u)_gD2YbF zptunVBuzVB%Fa>!HbSj(+p(OGvh_^@<(#QtbAT3K96c7sa1CZ4v z`%omUODi~KDS2%a6g4yxLQ+{QBNk(-(GL z-om0pt*L~d?@s~>H9drRvtP9{nOrL&?Fr3Y)8TQA*UL)b3j~b-T|h7oPt$(C`$2RUMwlB1B{rF%$336;fxg#8A!x zXzW|!ndwsZrSiV0iMuG`=Fxm$H-~{Ar~c=u@+r6G9{Bz6)%&~wM`Xgs-I=%8Ep*)) zKq;*R;Hiqlr>SDsUug3IT`hf*e@CiY1qUa}1CSCu;n9Cd~JJJVhzI)Z-Kq_TU zU{>i{Wom9Ef9A^Rb}V-31V?h-U?;wSJ=2?mn_cayN@D5EHPqvr2lMA={kWLmzAXnc+?G{FwHyB`ig^hB zF8FLapdYyG0@=9BdhaToowPx?Q_OJKl~tYo%fT1mU{xL~U?pjL>Yg%~H7k$oiYzxB zz_^3DrL=d|N)SZzg$A168)T~D?{qtx2*vrPI;=dMS3wPKi5eT~)tyhuWo)op($UaOL?(N|(DVCu)U5r~rNCSSBfYN0pIP1eS#n^M~tmgJet9zGPF{X$A`EVB7h_ zd~8Ko9jbG{`28w=Zg<$!jwN7)C`vp0SF*dax2>=*4~L`eMkH7r6_C@)u2ml3DwLd9MGzz+MpErzsU2T;ok@Q~B zVf0qb;6(bj+|}Y(31^2YlVGd9q4FKe2bF+B`oVxz+*G|@y<(2a%v3kSg{Z$jI3(w2{;Ld323lk8CCg53KhT_-S<`=3QaNf0NnV(RVWI-vSuE+V`C z)pA;4bCi^S04#)A!xZgcn5amja=%JQ8p3}Z6n$wwU*S}j-ta#f~>2J z!zEQnfLOfvHYU5ikUe^Y7q_wwBM47%WV=fWwxzmUJLa)oDhWJQX&MlO+N{B|CI?g1 zs;5FJAyv*@ZK@hVl$y^b>*iGD)juXyn6eJCL_oU$nzj)QLQs)#C)DfamxS5j_0nuxDXr$%&Dp)8lbU6ehC z-=Dy1?oVy!NL8sMN~WPNmgCq`RYkK){M_0L95UZ~4{Mkj(vdrz8s7FoEl4GxBxS{Iktqu^*OjO9*C0rOPp zHjZVAC^s4&CmK~tz8?vJN{WAT6py;y544ac&=UjoN7UA8N~?BKOAJkpvAI$$&Wj5B zPpIV=U5Hfnr?N7NTg5Y3<6ggjC?AIIGDfK~_~)gYf1u+e2NrluXe~ z*dL-u)2nj$6XTvPd+MsS+o);Es_qj`g0H@#uUNmmiAfY_ zpg%ps+Xwj9P!tsMNEmjnjQWo9Q85%7fwu}6ZXvvgaNaw**6j%7oTv@T@E1wMFn6E|Et)xOV5QxRoUs|zTStsW)dxeB^P zxLBX6&Nuhz@=!(C3JDg+R^e2vu$`R4YpYkO4R0P*Q6x|iRqvg`nUN4t_!!-_jjke* zyD&FLoN7xQ)RzzUCG#r) z$PuO*P#OZM+If$w#TEzUk2Y{F%<~%-XLG2Sp$qcSs@dsm%8$!jj|7FR=8FDLob4{3 zm{(R(@S0!#LA@lc@IbWG&?a~&yXNRy-Ci}<-0spcoF|xmJZpV!x2qaT1C~cyKArZO zkXK_dZvIhBv{N>B4VrgVN`0!Xt6WVd1G|N|T%7`ZB)M1A_DO5?;gT5$fdoN`V{}#( z%I&}&i$3ABL<|S*5;d!$ET624qqsFSxJ8_1KNRXVZgj{yk>MOws%i95z-Y%*U7Y5> zJ36e2JhWhIx$8^hR>@1|?aLok^m!Kv%&JQ^2qP;&K>-sMo@(?crBYwQp}rYp zIew;XtzBQ8PqTDhz^w8VZ5I+kOEI~B$>-dsAq)A_#S0uP38j9NgUa7?P2H=JcMD$7 zHO2i1Ta&}LJV^Us;JDe`cDIxOPlTy zo^Vm^sE`UKZpw}l-<24aq5APELWL*XbR@Ko)a`A616DqA_hyJ+PLC*$-+!gyjEbu2 zA73gS2rb4|n&hqTRmhe>?|t3ACKu%5+QM)u!BuDzyy1%AQjRD1?FA@Q++N-a{ZjrU z5x;x;YLdMo6f*l0^@}K$*rqImXq;f^_%ji-PUlZMfZ?xdtL;IJY=NL^$$~@L26Xmu`R;>LZrKrd18;FsNoi)%I+5v0VMg9aj{TB{wk1IJ>NDOi0-09=BQuKig zh(ogXhGIvzx*JEU()=n(pe>4=Qpy%PN>dgrz*54I#sM$4L7Zdj*C9%aMFh}Xts#A< zK=K_3`VV{rvb;(Tw~G-3CyvB+WIzZ}RN4)jH&mr=Rrr9y%4lT{cRS|E%x7C+=jvvV ztA$DcQno6wEm=^;qC-EY&MkDS^tvYetfC@c&~+4DZR#2;SavJ%`YK0#6B~?>NUsjJ|-1am+=ZHefHMy-;x9%>IoB7_wF;EHI>1yhV*6&c)l0wh8AWOZ!NyDe< zRt`1JQUf{sW%SroHfDFC)hn+}^|7TR6t%iK>vAgwsl*;~x{n!E!(s|zUCSglsoW3l zycTIqy?DNk8`k7x=Rx8H)kS&MC-lXDmr7?*zH*!{97iXcb8rnn?sxK|V)a= zbI%n-4JtKdn94mY;J&LmTvDizJ3@#CfpJTkL+4vX7Yjzt?dQrCu4 zRMw93enQgw} za@|>{QN1CK!oMInrFveyCu}zGIbSfLX{vl=oMM2g{aXsPdGkJ^j0AcLGt%HowV|yQ zzdFUNHvF*VpnlH0go~PShFIQKA|a2@1#-fvOUpm?1n?$L=smN);3aOe?42STg%G(GAX!+Kir3N;`!yAhcd;^E8HXr?=ddOH34gGgxgA| zlHlg(k@$6uM_ial{)o<5)c8ktC!cRF&(ipq>(lz+8!Y8NZ&&hoS3oHaFh}8%3`H=$ z+%#2Bo^J%`AsUmN$p^95#1oBGW+KoVd$Q%S->8m5;&FhR4)tx4;?_0)vD;dy+dj|= zary2aQNz`9mvQ`@{1vB9;Hjes0GA;Rw^jLv%TDz>helS(n-B|TNzLc1u#!Le{nurp zOsm>E-{P`IuS|}Z^e7${fkWdu&c1^v4P_-9C6~(Q*e>Bo0d6LKKGaa3I!Vk6%KoJo z6!}Z(!SR!x&GLz=o?zL%u`ci2O92{J3s7~DrllO|DF&18{n&V=Qq&j-7^VzRl{}qK zPhq#y)aaR#(X%SD*Y{`$vA?GW*(T}v>-6n16a;C>{e3V;a%kPawcd39h?;wR7G66M z(*f<}9#!}tCl~B5H{q!$!Ag2b2&<~ne=j%1Eu$@~ZE_1`%|Eg_Z?#4>VY%bY4jO->hM^qnlDpH=_yi~!fYKn#W?J#Mq z0A*Kn$~bk@LrFocu)9XJJWX&W6;y0- z{uZJ+BTD8fIjrCXkDbJygIh~N0E5$u&fvk0T_S&o7$W#eV;jV>THwm^mWpj?}`m; zg)|kev{x*eQ~F^A&RZ$AD7FhsK+h6Hu3@`DH!}Ba8VAuEaZ&UabC#!D%0az(y`R71U}WspOlnJ7Z9{Bpgm=(iJrH~w{bH3xFPo5A_+!f=zAGL+BzxD>Tz3oDoJ;)b|n1|r%~Sq_t+>wfC8Vc zqns*<*`Mw;ALaccmDPoo`sx@>nkpO+>9={*m{Z!-$ZF?MoVjOiaPc&QI@F=(zcuZE zj4XO4QBUOBWyPHES0akMh!lT2NEmQF>WD)%mvD|4A(w{6h7!x=tw zel2T6cahApRVjNt<%^1&OEsvPoFdC{HEK`!to}<*&reXslWE+Tw}5JfEsao?Bm9Dr(8#a)hsa92?hmSwhM~bssSHU7f>? zZi~FDb9e;>pTDe^xI*=l^GS5C&L-<_QYdeU^%8E#?&{^ArZ@NZ_1JI(QD_Lzwddf3 zIkl-)x-KkD5~P)NkyWqAxySc;#N|pg@mKY0(IWPghzesuvlB`v^_MBjM~o1mpH?8@%!g6ZpYsh&EMT2kNa0?23} zSin%Ma8`2NAW|HasY|7P2h|A)JZgqFReHmoBCCcA($Wy!;oDpifRsrK8P>p)yxiep zPb~3+H&xKp6HXDG5bGPEa#_CV&aMS4IgxxvDb;jAdP$Sq(kJ%vmHwe@uWoH^pci-l z==Z0&fJ@ljnqwPR6|>Pke0nj+3vAnb{4cSK`EkJrbZUltZjmnmr5F1`RR-7Nn?v+mRs8+7jfXlx;psg6z zp`f={*8!`Fv+@k9j&x;FGHmeTxr##5?tm$w!gsPK(yb$$d#S%W`Khfd@V;ehs}OYG z^?IY_HQ(c!7uiyMsc*W1mV-w#xk+wklTC(aE%9Z+IPL9JknN=abeqz(NDXT4$>k?V zOViYV=Lv7~!MpC|w)65hqvgA)R;VpWpP$ZaouWZ``{eDVA?4jbSy1GYKbXOlZ za;gYFl^T@;O+npU@%SEX)|>_KoZTnlCMfNkQ~~)Ye&!=#IXN10k3R%n1PTs1KEZB| zEsj4hvj$2nxe?lq6$NLKU*1`i?z8&%IMYm91Eh3>iA5$*bIZT#=Y4eQYT)ljNOs5L zQ0AU6M6S#VZ&05No^nx;KDl<@d3MyJ>*vz>$>UNywQJvO8(*nKU5m*r96ZxnmEWO% z?LJ2P35cFtmarLb(x=1ImO7P}I}Sm54}Yix{*CjL3}V(r(uv!63N>)HFF={=2wtDYPdR%P zFKTJuZ+DUN5k;@a-m*Kq$1W#L?tYO1DPO)W16hm3VY`)QGrHpif}C}jb^^LPAxIgahk+x(6ag(ys zNYzjEzvOp=W$h{M>dpTYfH)0+Ojcjo9Y`!rk|hgxT^mwPy{OIWU8Lr`@fM1%zr=E? zkjo_^9v7LZMjKoi`|LJK;gz@$Pap;x&d-E4wH-1-DY-{t(Hlkya}tJHww5_1Y$}1u zz{N`|7*2EX;OlVVzo&A0S~M4K$pK2P=8t#}`swX=BZ4gNPF&c6PMyJyyUx`A!bC*~ zDfagRnxv@7DQp=-0NxJFqjE*%yPvZ)^t}ZT#KUBh!eXjX{cz3irK$N9ia$-!(hkJF zqu0bQtu766{dfeA_U}MQM_=41@-={0k?p;WxVOH2gdJDihbDiDKnA@sOV=tjDQ(|f zm*g_Nib)9nRdsLnA6?2IBW1DgzNpVbm>X!^bovEQUFuXd3L%OT_qm)cW-3>%d(pUX z%2Zb5EXidoJBEOKX?q|VFsE$(_`=u5c8Z$QoV2Y_gNhc5jCuLev)h77)BkQnQhvj3 zPYZnwjK=Zk2t30(@*adz&XwVpwSBZcba ze3hX{BLP}9+?L!@2f`@{ENRi;qFSnp&>@;mKG%UWtA4T+J5w>!YD#Rlm7~**S;3}g zT^VX;cGdn;tflFa)ecprWk&`-5lJmxHGY+Ns6(%6-WpJBovK$9dACa{Ty-@aXQDv4 zWORVZlP0|$_NXb9)JYPAZT{5Zn)l-*Jy}I6bn2p~36UG2>z8}F+TuN0@9{p{C0V%! z0qt^qOr{69V|J=34wU|?u9Hb%pTu8zn#x{-7Xebi3>XR{X_S43{Sx)_)L-+KNtb8Q z%F1>t5BpY8%_+K@M0I8=W%)r5|Hv)4mx3BhbmaZ$PXq!1CKn0EZY|geK5`FFv@E8# zdwCy{kz0Yw3qWypJXCcg|{ zMU!F@xNKsLyo9SwQpX_E2+>F_%IU8N&~BYvHc&nn=iA4h&^x|qZReIQ2|2%A+2!vG z7ck;`Xy;EkEN$ z-;ZuI9~q324tOBB<_@9ioz*~9TuVtsd3sq=qK)iFc0n-1i(9eeuUlu;)Kx)NN}P+K zluM(WJ~8`I{jjKREyq&f$5=vMiZ&j5J$mQmdP0@)va_SEj%pfVL3ugVxC*f;xozwa zgZtdnduf!~W`=41#OtpAvGGeWdaHEXlUEvY=VNU?#lr=0Q2Hc8#W2nAnEUfK(De~Q`-Th-kUY#_?cP3TL zBS62p^(5;V%J`~LE63KLMrwKO*Mf93K-=aFCDW8pQ@w{Tk;28eP?Zk#4KMff_yE+d zO}PalNxW?lOM;>9SBMIP9{h$_>cie0Qk`mkR}eFY|%- zGG%8$I!~%j$Y%)@J0}M2#6)7x|e^|E|kn0U>G+&Oy+rXchyfi z%xDI1$=&}Z)rZQ5&q+}o@)XxYUU3yI1L67KOZ7(pzTAJ%MG~v3>UisloLnzZsU&vf zSNN{KnrB7UKcE__R=@a;MUvM_%=Y1u9?Wwc1W3De{Ehs+vbw3b!_-U`;WQOqLnqDD z#9l6EDnv(EI`TwGv+DyDYP+si=B*F03kiLCtGas*nGE0v`NxlV6jxq^B0jStQ(hU# zeI+F$3CW)-eb3^>s%cL?G`grvdakM1qjvAoXa<#^3)6%OzKWtfDrM#APJL3*`_buL zNy5^?terQ*o%BVBef)6L=v97$>c^!#YDn95%^ zoG%W)1oUnc2uB%e|PR3QOMyGb^H@6ibwMcJ{%~CQWnT5vZ278>`_Yi6h882fzT>-!{jd46hsJ%o+pCLTuyT>K-d zR6WF>>2A&ux2mD8__6{U-^h*z<3@q$bbF=7N-|Igfc*DFVL0s|WW}k5PV!nz4oPiS zbEihXL1&Y?J-9a$6A8+EJ-%n0g?=@!H9x;dO1$)EGrb?}ez=BI)kCaN4{uAG^oNim zQE5AVmnnL2TD4m=0Osd}n0=kf;_Mjmr&6oMiPk#&8;sRHE*|s)cPD%yO98f9ih?h@VdL4!7tpQ%M zjmJgM`IumwjT~J}ylbrPsNaxXnU_P=v*d^?BuY|qVZpdi7Km33LDz~&17C?vOZ_XF zqA&n!-H0FlK2hd*V=h_APcMN?>#^+));Bh%@Hwhc6MSFg?(5fWHS2Lq$)aPeR-EAM zORDeMBDWZubCfPg$!c?QNR2?+>un9uET6XY7C}!{tbNx2GJkt0#q3b^1rd703aUAd(@SF5qqFSd?rP!rdrK*`T3f!ekv)k%A zxVI~n@Utk|^T{%)_qF78#*kSd7)=mo%uFa?Dj=YT2w+TQ+{oSP>$xCyRA8E6js5u} zbhfrb4veF?(NT#A$<^H23>llxp_Le3`B-@P4F~D~+yzlfx^G6d!$%Hf3I>1n<@`TVcQ@ ztFq~c_9|J&p9+Pn!+FsNb;_}`Z*n`$eoj!mwXx@ba=VXk=?UEnw=9ax*rd##66Bh( zO@&9O29GLx-Pt^~Am5AZwM?-UKm^+0wo^Urpp|!l6-hX$G%}?HIlNZ-O4|kH@H~!- z^j3~NLfI8vtwejbx&Yd3s-dYmf#UvJ89EZXK9YW{mvOA>iuTCsf(2EJ{Rtzdy@ACm z*NsWt3KC!k>b+mmb;HSo9jyE}P?JmBcJ213ildvj-I_a06F92m#gp{UU7XgTiV z33JgLS#eUnV5X~9vUoBxw5WKcoB_vV3QG-2D-KE{=<#s*HA6G$kZ?%9nKi!;7+~{y z&r2Qb8<<5X)gnhLKV__!&RjX!8xW@f!kW7b?ygv3lOBk{r10uaU3Uq|t-+-w>&7 z6xx24otrm6F^bxGXw^Be&k^T2-dK{$!xOh}Y zETM0tBPdlqhaX1qh~>x3g#m+y70?$w=~n(Vm)f(NcuRA z1oAQ=kXt$#`Bq>{j>-zjCV;Pg(OpY4pyMTpnF6}nUr?-(n5f@Q9{d?SnfaL7M1o!1 z=ySB?&ei4fDtZ`E0mt@P^;BQb01x&sn2yMr4&lG2T4AOl3F1f(wwGHPbb{S zo4I0Uy&Qy30IV`X>rnnq$(AY(5D@s57LD5Hy79}wROs8CHTxM$5&Q4ft@Be&MISch zXe7_Sy2d+~>H>->_sLE6Hwe0fFiI}M#rPwx-fApSz`ibDtgfOP2@O2DvJEr})H#HT z^1p58QTqHaxxjR#TC zO-gG*r}d_GTGf3NzQ^SbpVxI7CddI&_7xTN=VtjumJk{M2<(?_zQ_IfNi0;Al(X_y zMV1>sO89m_YBkhfd*-xi)2#%nT^5cm0NRyvz^T5rGsFhmKvryO*+edN#N`L2=xi1* zhCe+*WaH`pl(0+gI$*jjT%7-rrFnc*978wLMS<>^f5nnJcVEqj6Xb+v7CDE#hri|z z6Dk4xh9ldhKH+hpr~zEnkF%Ap^eO<=)mpu#v^oZn21QbFvu$P~&W3TW;pG|krUIiX`>zdJr z1iL)(Cei7su~4V2X|bo9NckLdB^M=HI)dT8$9Sx3uEk%guD4q`I`!~E^H()}%_?yy zb+x1-mCwDaKDOhv3fhk4E9|^N)jlqGJ{$;g2d=kMV z%ogl`K#Dk(`|m1)f?D9n00%In$I(a81zvYTZpNXS8w4knl}k9qHr4j2KEu~=E`!zt z3@-hoC9H5g?S6ff;1fKdLMG)A0n4*++h-;?r6Oh@Gl$dRb0I}Okd-0VKnn$Er{ucsVY?yB38S|;#sUL}~M$Y(|L zxuanedmUv4Nt;``DA%U%XmQw*Si*nOFt3wuI!Vdpx)c{(dlh~bcn={N}AN!{8dd-wJcRow1P!q8+?Ll?^m16;Oai) zW{o+U+P-1lGUX||jDPKH_Vs9f0Eh4PTrK@^dB^q`wvt(nDBdk3DKdvzXnWgy(REVe zBHo&9Cim)BsNZ%+GQ2ILVfkJ;ctv9}0S9-7TQSrA=_OE?_ZBP)b2t87trFP%A7#E)iPC7r;I)5-a;^0P)Eh2$fR7=q&(KCVWDKx z4#=GJWd$OX*It~wn51E>+h6D;-jc>d(}?sOWCHwzgN+OR6&0KcP%=W69YTfJ0Yaib;x9Uh^(Tv1h(sQCPBS z3m*1Hp`xv7wyoo>gY?n__Tg>jkbuy><7hLHA6xtTG+r3UP!w&G6x{SwwVul4%o99* ziVoCMRljSg0Rr^YefuBSv&(wQ9iS|;H3`Pv1w`@;XfyoE*{gCcUKjmuOX@Y6kDA< zY&qWi8qK!2b&o@C-s*E4XM+}|-YPC_DaqpCU{EnCzL4d+kw=e|p&t`qePtPp-MS$H z27)#=|M*oeah`^3UNVQVVjKp6)(ph{A$e1+C0zes|? zCYZUd%%L+3rVwqj*oaBpL#?3@klnj`=)Ci&gxwtiKY;F`Y#ABE_9D?&vCm^8ktZU&2&WDUhJHNYFW1_0TKUi;~XFeCF^rax{MQf=Q}(kvZMm z80iLEwrIkr>$jrIqFIXNlVTVBdtzT*t2$n`H23~!xoL!`-uVGw<&i!vRA=SgPEok+ z(cfj=Lla*~x69Q`g@w=K-P?rlRb)5=q5Z12uhC!`#^Ri%q>eMMo0C%W86Fnrq;}V* zgK}cYHgNRVmfR$pPWd3Qp0DRZOOdj`=T{OKXaKlTMTvTtWCU7rd6rVA#B8bA2q2MB zOu5e%8a;MP2!8IP7rl@8rL|DsOYey$^LMK$LUz1eCQc3-?JBODLZZtAqoPv$`_ovr zr6B&=g1U7sc(!uBpu_W0$EwP9-~AAUonitRL!;-}o%AI^Bm|W>2!lechg~Jfuy<)? z%GCiJUv=>$DuJTirl~ zB*+xSrN_}SkdzpBb$wYJ)kLRVOTNF+eHEc)_X^%vpaYuNm!x2$29S_Ej&^`ct5~py zw#A^ySH_K!3ENr3IsG43kUzn79F*7Z3s}(H&`+nWTXPXmMR}`uN^Ab$t08ABp8DPh z<^8*g`4B`%nO`ioK&$Fg@}Cg8AVyREG#A{5&IYlLQpElM_e+dVaZ$h#+od7tNg%da zq(She$g#Nqc0#;U*&#mJY5z2U_bHcK$DqKWc)$? zYGy$yD0;;3b6u(9R@-)1d;8I3AUjH<@CJJ8lXe}6-0q`MTT<<3S5h@2Q}r;br>^1O z6TL?VXs+v%0)k;&ejfMzAwR^Qt?J-|x)k2lX6tB>Q?zEflzUTSxjQZH@8Pd3`vgD* zfGZ&)QApbm({x6qM{VVjqo%F)p$lnM$ArV7!~9;Zi1u62x}>JP_j0OWr^^w?k5?WhEIQu0W1?9Ipj+`vhruVx+H4nre7d91 z-L5jZ#!2nM9e+O+*e->!a~MoZK?9#u8#luVmVrC?6<#2L1MR=oB(10A-wi_-TGbp zV%J0XIUK9rU0T1ps|sDGD4q&Hv8Zwyf^x&sf2-A^KVuG__1P*IS+xNK+Hwnpf9M87 zP=GcSr3}5KPAE6qJu`sQ_*ApeGfml9;=))w0c-!ED4aS0Th@c6(9|JV$$04|f+0~Sz?FBn%bnuG`Ah7>Z&Hhi9$<@U~ceoP+yE0T4pP^)t1&u)HalA z_L|f%YTC9d8w#vl7Nwgkd+A|99HhXZg6oF^<|G+F_Q_V_;3oAEq|$5Wv0t4S`Q|RQ zsaTyrca)}g<D|3e}BDu-j zA^sEv#F16?E-ibL>@5O=S|u&P+s?LY$!=H z=3{eQ%ud>2Nj@hK7G2oi6&}Wvp9HT<2C(WbKm^%)*7{$FQa&!KD&{}^p_fvEug6^p zFbALt<@1Nh!94frx@=cALh{MhVNMeT`);!S`Sgl@3k3kCdK1Uke3VxiydM5=v$VE3 z@?easbX`d};Cw%&BoenP)P1WeBQNk+zcNn2M``PJp}+i7{Wdi8j|89UW)pE&$40kM z6fhxgE$2o6#{IKPt*+fDU*{?aaplLlvGtQeTiFe@<4E82RVpBD-<)^oaS&RrsyyHP z^)kB)*wG1aH5srN)9&ZlU)aLQqrs?LC$snEGwp{y4pJ4v?G2ihq+&ro>t`$-&VNJOIK zX$W5x{0hU53?P-o$rFjG9M$94wx-;E1fa=KCn$0FxqietXC}_Y9JDnc_E0yOXl8!q zqyQBFb9Z&)WenjVM~ZO&?x9Q?)y+OD%o~81OT&{gbS)jKUuB^2BV}Acm!#;FQCZEF zr5PttGL3I(T|KmLxMP`de%h&C>CVy`ZsVn-1+|McICy;BRJ|%)6@b^Y*V%jQ!~--b z)Ewc4ssZo`8e6>5~0^eoP4vt+4bKUnx zy17-IYD%!#58W#NIwx$}fD$M@3t5wZX1#o?P6c`fQpQzK5`4J5ECQXBSpM=qGEHt1rD0>YZmBIw%gHsK2%@tkLdr=it2jN-c^x z?j@^FppZ4_ip0rZIa2{x=?Bwp8;@hk^!gM~@OH~V*!0-2mXw%6tQT2{r4ir{-Z+4)9E=5Hd->14yqKVgZ z_T|imnzX5m0W`UFrqNFlq)D6tC=3pv@vLSdJHb|kZ0Ymk`uW^vn+VkCnvH^>x3O8E zmq1Ki3tnresxxGr z#(D%1TFw4gFw^9t%uCzaq{a{!(zOT9?a}$q^Gt@jCok8a2Rhdj&t$)3m z>A9vDp+zrnDFb|L!l8cJZY%?}`1Qa~pjLYYPQYJFncLMxjm>mt*V5zBCX^(`=O!;z z&9B`|Im#(67b#;y>P;@i0t^LUczbK=~{;E_vzgO^wG@@@e>01ApTJ6&J zttTb%bBB9!Rn2NOIpfRjyp&)7lrmY*6(==nN*5IrNz@X;2_EOgz8S@C)!)P+fWz~q z4oNL`LwzBXX~P0rw+JbBfHKz?va)?7NL~hSn$$*01g_`&Of_}V=h~0v;P$2#Ps~Qo z2Z90-uA!!G-(x8e=D3{O+!demENw+2U0jnn@S8_boIjI@TcY&MdbSc(AHsu^k99HY$ z3itB%IsLq~c)L{ZzJ8&Jb9<>@_^JsPqMX8;*sRUBo9LQ^^=H1bOI`w9=%jd8LerN4lt zTTOYvblh@@fr?vCdT$0%*#5aq+YdH{6qY%Q}j>+sE3ET;)-WyiV)5! zS6CS&@X4jt%cpp%%sahT#4B7>^*{~b5BFkwxH-$8+ey^oJU5E}ZevlSzc-ix-5{{F zBXD&g3$c^#Q%hf)s=!FTHOSm9nP^M)SO*kpW+DVY>eZ5m5}HaW^>~5~=98AAZP_~~ zXi@qAd@BF(2@)Y)6By+EP$Y4dErSI7E8v}8_pJ&r5LY6oK8)8bswR4LuA#+U5-bqs zwK!ewNiKq$n!)Q1c|nPo0He^$c7wcrnzXA3LwV^M;dJk6C~fakAg?)-*Yo@FdDnMQ ztT|fRvZpBgq;`+XPC9tAh0#$3nYkJfW^80$-E1dsO!qu)KSxv3FL#zzYLs_%U1a21 zj^lh@m%{;K#!q?R|9^|)ib=iRqOrWktEig~@~T^?yiwOE(#gKMrs{uiW?q}1#SK+H z)6`E)8B6V?IeqQY(#BQ?F?nbgYE_dIE>@tPxFGYDYyFTRd)S#&#X>=n^;PqgC%ZK+ zQ0sz{vK^8w?_Le9=G4P!3R&D90bqv`E@Mh=43+{OiMJoA>+7D*?`7InFY-zRY3gk7cbs=2e>w)^ZrnL2EbHo19n(YZ@& zho*`9cpSdBC|IL0UDnpt5X0li{RReORR{vP{NPueGV6ld#a&Ea|;VlE=WsR zT?+t7K(@b)La2|`nH~;+c*%n=uDrVLw0Ud%*WJH44b0JR1q!7;QmJK!_KwjH_zXS4cg;HU|J70P}Mli}=hRPzr~@;hgS$WD`)+ zkyVuhP!Lu{?&-8lZ=LXGU3cgfzRw^@$sPmlNlXsB@P=U;xnpY3tSrrU%P-3IG#^Pc z^1v?zatr@O??BZ}1ro`cW#|4`i8-mcVlLj~v{63sIHYnoT1pnmOL=DM&g`Pk!&PrV zc(?OY?;XaFYNQ%`^+@JNT_)8f)tehl6{~C72+5a`jX0ctsz+67hdUji2JjxGW?tEZ zQ?nSkt>jO)Su4QMnE}OTlQ?ZBEQW-H7P6r-JRFAP@+k46hmL?+Ab^Jx=Z)e>F1=Gi zDq*E&+_bvfwILwPS8cO2%en7W0f&%>dLN*0hpV!M|Qm6_WQ zuo~JzT}3AwQe)8@K?%+2E|m6j_I+>S{zEmB_+GYPcY2!I+K;Hz!xn2z9S}|_)|}y7 z=hNn`tITDT<|Qtzr)^W)0In9>+$6o{wU1HZ_K|K}1uy$s_Mb~wBW}0M38pH5RBkf? zl|wq3cC|dn5k=K5t`cY&Npw|VCcMc;7^}Fe*Qn83u`n9$sreMFf%Ku9Bm?16G_fDg zw{2Ld0Jp4MVw$=w96M7VALA`59PswSZsj9tp3V0=A;0YmuZQ>s_gSyOOBX(~wFl$1 z)*1JsT!C>RaU*#(ehwkD5>w!tJ5dQ8TQKB$mEgL)WpZy&R!LL0ZHxi*m>Y1&?Q_}r zCd2{jLEM}*w_db2RwcVjX3^P-L$hsm06hRNBa-zq!;(vqEVZyaB1K8ld+QQ;PkqLc z1ZJf+^%IbJF;yG?V(cw%I-kc4#=IYq&=w#qo`oi6#;Z?_=y3K~ppTF2I=M9zPcFek z4_dXEdn@8&pNfpV zq2C4njKkP`ssqSq-N5;sx(5(5x4SWC`z46ZYVn4qGT15%L?kJ2ltyzzMF1rGQoUZB zgX)izWPeMEJ0mtQxU<*qBS^|uP*37nRRfW)I>5!}v(j)4Ia3S(ow?`SPa@V<-r;)q z7}VdoxGKp-s7Ohs@)u3pIh5nn8}s^PQ~=TCQ3XyT_;fxQVmN$!#r zu9nJXuaVN^iS=FklHZP4qf`ygTpc;`ps`9ZPD&+5_Y&16WxixfI}JqQHT3i5*OPU| zo#*~yU@5CCu%ix9U=`5U-3VY3gR_bgs)|$VzxQRUQk`KC!Qg#fw}zPcaqJ4DP7hJukIul3RuZ^kICe}4Pc;GdZr9n1Vcg>W)8=_;>U&L+4%vt&qHED7Wy01z&pdD8-L>EECg^cGJEhK^$=B0WqPSfNRTo%)LynK8NFg`+ zmbieIB0EP(c2Y&Ypz6 z^4hhiT*oj8ApW`ta7V%Ze&hT^)cEzuwMBRN$ETE7F<@I&HoL~EyV$#|ij0C)KuJr< z6rv4fi7SPvJr}4x3mACC9LNgfSN>0{u`eQ`i;k2T{4Z{%Ddjp=895}QIJzL?X$YuA zFAkSsROYdt0BpR#((Jy$ppnyMCBFPjI=L#adhRJUyi;)M>upqbTmHyrI3tBT&dK zba!7FNSQRyB@T?Ox=vA-g@B<_epyO$X5pd|R@|MnTuoPu{R4LH`R!xV1;wI1`RXwUsHyclsf@CdM zXaLNOK)My;;ybRaL#NFxr-w>HbCC+yy@r3(E?@rMs3{+@8Bs0)_gp)>=cM=;M@1CM zM_c16xl@SCMRY>&rf?$dIt96+KAy0Lm(bOII=5bau6N@(e$f&%CHK%*Asy*b4HoD1n(jH$Np9S7*+#ico(ccWg=Oa;M2GH2*UrF2ZO+Qk zo%2#UK>6OIp^=>--kKXrHXrwndGQ1@`XYj&^zhfze76b2nYTAWLCR?`eSO2V2ta2q zM&`rjiT0{G1r16gG2?qx5!I2^VnQ{gMRul$h? z=+u#caFK&VKW*1jgMifuiQu2J-ryba=QJ@SkSucxnbJc#Tz?1XWyye=(1_2fK5B$# zl0pg}Jf#kj`%Ae1zx)!{6+=QbHN$qrF@Z+GIvtDnoO?{&!(J)XeK;N_)=V2^eicBD?nVStTe#{2r%PR0F$?g4z-Rz-*d+r%Px#@uJ{8T($@=PGafsY(0r|gb zGE%tkc?mWrAj>0xgpBNrs`2v6$-|L2|G%`E$MTWGtcgm`t^q4fyS&9jJ9n;@g0f9R z#H4`&ab`)=x93kgs#Rz4p)}T~@LjVtBt0a{5(44^?1u_NCH7mdDRo8OC@+qxjnht{tqO;W0(K!< zSMH;5)TeS(NA`+y2T%9Ws!``c{>-nY3?)sm`X~EKjod4iS)Xd}kMEOn=(~oS%d|Bw z7$;20p3?@!rQy3rNv6Bcqi}2jsM+OL;a>kJiqAd8mF1R9-;=$d58!VV(jDN<9aM2(-#~w&5lC_==;sG`|cb+V}=$8aIs8i%Oo5Jdy- z?1*Ut?UeufLD7k%gA#6acv=Ud2XPSZUg-{p}T5P1USWTNY?E`g8y8oc=ZGz zRw}Kd5YXj9NGG5uB&PEff#?Pb9+#M|*FwXL~}n{l^Nb~Q+{{dG9~`p8Qr4TI@P1-gf2dqOq-VRmVlt723j zWdhEWY9MSmJZx^{yW}#qbEBdVC8c_7`hh4;*jL{!(19{sI_DV@J*m*`gLmT=(B65B zYq~E9J3AR(PLH$$zP6PRuhe-V|C?ApWaETPfCXt%w)I*xo|wemOW2$^8F zd^%;T>#MA3);}j~l3go1QVewm;^=hg$?TEg{JEa{Ie#WRtjfE7AOEI-~7bx}}5>AU{RXRON4el-sx#m?$*pljvB7btd z!O~uM9sV`N`pWl5W>a%+#fi5wkvOw21v?N~rVP0`J*xKIL@cTa@@NA`$3pdSUr{X= zt;UAT*6p&yqZ(?9nKKuE`dElnq{Y*YSJ=QH9wz8zkCi!MX@C2wy;w_?o>(=Ss)}Eo z$0a_AngnM)G5}9)T|yk+n&`CaLtMK)7ognya%ERmdd(%z9027TWp8buP8D?twR!~GKyrbC3Var zGy}G5;Lt8Gi4wUN7+W{$^-8LtxY6TLLguUFsvB!kNG^G+b4auQ!~+f+hx{I16L;*? zs;rm$d%837I+FHvTwk7tI~mvE=?Ag3=w?i`a`AkrgKRD)C}?*yxGY-z3P$Ye0L<&B zG>Jm^{LJ1NoB2vR!c@e;79bSRNO&4Q%;}3GJuY##G%roV%AU zPlOr$ws}U$Vv2i6VepfHFl)Gcu|G;?N0}Vh zU7?E2H6aocyd2C2t>L0KLC6aIEQV7!MlBxA$K5i%+;u`LBhBT z18KuU*~8{gqO)tdk&P8c#>&t!cuW$i}3?;TS;rq^n@LJNN7o_2?JqgR%+)JyM2!Wh=jB3 z0_|1$BX`^`n+*b2oR;zyM+18jA0CHgK#mL%a{r zsw_Ls?Q&5q-?1;@?!!%5;Qs;|w2yqPnmGu`t(E%(YEqSvCt-Vl80d~Mhi7RxbSvd6 zUtZq|&i|C=31s@Nr(c>;Ijd`~qnm4U0CbfvB%^;m@_M_Ss1aCM9v~{$>aI(Dx5_ZL z&V7a^!e6N=m?Zqw32b>40!`#Vw=K$&vUDkSuqnutlXZ?&U8H?-me!`#2Z0NCXA5F$ zex~aMPm0p01B^gJr$)OiO#6N|iZaRibBUmD*Y;%7bN+dViUVIZ-e0?+`l9PwU@wsX zs3N)w?`l5UY$A4a06O)j%ap@aSrxggwbmCbHBdv=I+zDN6DO_dUZx?RO=o4g$ zY9a$Kx8w5dM5P_oH`U+_r)dtvKi$`|4sSmZ!FU~wsJ^{xZ{be3B__qfO?{B7Jo#9g zqNGYcMa)?x3`&!xl+)3S6QM5*KYxY99M#}0Lx7CzsD4NbmqM5W(Fb;X##XzQLoZEI zOX#XBfh|o6&PQfn3T#Tg+|%`cjs~wq$Wb>Jh zIG022i|cRtYU>Y1Vi;q~uA~T?Taqo&zl2j64+juVd9MDC3m&{bqM8D4N#a3K1Ho~L z%8SL($6A3G0QiHr#Fx>zAZ5Yd}>eTNvcOD0t2c9AO4+}R+%mDF;{k_F0K z&Q>;s@vsAVdn3XyV(~Nk&{;x~n$-@!(!k8{9GPg=*ser3gBqg5fwjHKqh&#Ct zWr$BfX$m`Mx2j4ztox24D4+H^x{mY9TqSy*BYpefLSzexnsewN9UEh=yw0=$+P6Nb zij|Qy>rkVod%opB^~NXSE+dc#2wz=^m%e{fp@X*^)rlQBB!EmuY+tn{#}zs z36aO8Y02dr${$2F6uSf2A6NXyR{B%$uZu>a_l_>4qP0t*XU(}@nG;o!7z&G|avd4? zdm}%6?){xiO=r7{*P&d#=YE&0z=U=1McM}ZucX6!sa!Ut1YbBm_HBR7-T5o2iL4S$3VIu7P_9^Y?})0Fx|Fy!KhARs@GULn zBjH5rlM_4~UOH&dVAhEq#g{CM^Js=-6WbmUza`7W)Uo7#6(ahyw)(0XLw3>lOu!>? z(f2yyBoJs|>wts5A!P_$;rOyE0j)q+GA?j|FL}qZ{2J&Lly@mAshK-5qw5XOpPO47 zmO1<&B9c3x{nJ7u5$zti6nq8Vpnt6cy1g+=km;0c_L;_HOs;+!P8oZ5-rKQG0Wv z3H4(fx1yvBbD%V|RPaqXC_b7$) zH--;>i8Xp6pzG*q(s}>K+`Cvwj_XXfzKjK=#FxzBL-OB**&EqL)LrYl|D2ibs!WLl z0ze?bvp^28D7!kKt`fj4z9yBNj)JGJCv4iM23|T2Orv5_8NGkeEFEdsSsatBmbxZh;g8*h36miN}1l1Mz$*Cp$ zXoAB5aD%)_uo--Z`)J3~#tpPAnze41p0&bugi+P$;VU{^(kaRX_P!%WkQutlD!gVw z-;Q29$%Rr=?rst_GF1KJDW!V}Q6#}-PzF@@G1bm))L z?CgV|+_nVldE2K6;MQm1h>$o-97|;;ucBv=;v89J6-8mgw!ptm3I6gN)riZ(;V!ZK zE#3s;*7I)dN-m|Tx19V-;Y&~=fLfn4a)MF}#d+^_lAK z*9HExbkyrXhUVjvBH@i6pv}3mj@n78K>65_lu8+yatlpmp6kKUWsvfm`J*<$IpgZj$?2uV zBai_2&f&KJM!h~sngq6@0KWoPA4R!pnZvC;>c*_7pHbY7$p<{*Ef#%H6ZNY~jvlI_3t73MmV4UCH}7Fl*VDOzTkjpn>msM!3tmEfiXTCb0c|IS zlMFQwU!j2%*sg;cVC#|Tz%%D=Y4gqA zu)T|s^P67uo3fO0XH&=g(|6P?nMioWZk1vJ#9_Jb!>tgP*yU~n#VmcNbG#H~&MNw8 zd;iLS8uIQx#pVHb1S(m5d%P;U$Z34FKbD_G@KYb@qe3QM%t@^lCU8|Hen}LsBFbDI ze#_RCR%yaeRkYwGtdZtH5L-Md_pRUibP%!bj7E2}G)byuC4&kNK`QsXr!yFv6+=RY zYpB%y8h&ceeurHur%i%xCb^Ip_p1C6rIVB10Q^@q zE5I!__{P*pG(@VA^Wy}CYxOaK~773 zo~jUn+?FK$v#9)X$wTHLXK))=NG)&j$lx<_qGD&aC_MspGDkdl*{uVFNMUMDextIc zBzdhrC=aR@xZP6zwbwuu(v&uT73C&b5NAUffwQRDmqL{FngcU_ZPbwA;Jz|SRrtfDMG|L)WF>kAo!1T?s1 zK)t&2R4q)YZY~hZCC#F%DKK0*B0boYmPSUNUUG}H=9Ct>)Oxn5ZZr9fPP|^%;EJ)d zN&7T~=BdOC_O+9+#pFeI&AL^{;o>P0)cJ{rm}bxYlZi+GeB?xss{$!LDwwHm|8|4K zud$;jMdt+yn}Ju)lFlI0lP8c!)TE9mPZ_S}yFflH6BC0Cm~Yf1Cjym;)?E1!`13ubjb^aYEfTv9PwFaSQ+(#U6BJsBXJ zYw4TFSHa+1txw1L4J;$%Z%#{7` zNVfp-JNzl#V5gQoIhw)W!=^&6w9{Wa71quh|J7ICxFo@ueWTUNmwx z`aL-jE;d~!g9`J`8q7{hholkxk@&>w&^sy(Hq zj}Elo<_MTvy6y4!NGaFU7UtU$2&O#Sp+}8|y`DCnP|vE|&*8AicKmwMx{otE;P#2#Bwe1&nlFY&4`>Tb5(RKB)S?^K%}fMNa4y#-b& zMWoDjp^UsAVWt2rJKpvwXq?OYUNN?KT`{gIA9pn>l?zkKnEPMDcJ%dY^K!_l(UsT9 zl+&^=dlJLVd*Cu@NQx=R*78^LbACBRAEz2XL$cMMUKvpZ*gTHsP!aQcl`Lo>VG|l)Dt&29Zu_dz~!qqs_$YYO6t9DKnlq|97bo zceIk6Qit70WhF0$kCCLbFp` z76qN?%(*s*#I-UCFS`a*1<93Z&S|5ZAbY#)D-WWo>={LNC0?lJbZg|Urn3&v&h5Jj z!I>gj!Uoq*`*y+j`v5!u4H79RQ79JM_cH_pV-;&@Y8mAirPYH>`AcU>JLRoYL!aUH zHh1St6P`=S%N0f&3ZM%x*S*fTe2$WpiN9~U)E>A(L78u{!3P8-r8Bge0tRnNpQx-| z=f7MPTTO3aEz~rg;V}VX({yJ}14yMWr7sDbx`YKH<)Birqc&|1$SpWP1_#CD<<^~C z`wA#-vKNpaZdko!i73gVXXh8uvH3B(B9Ej4?p>7|S*ku0#1D>vJd?$lcfp33GYY5L zwg25fPr7F%t<|zlyN?F(pM8x4_TXxSb34hL5UgY3<=k4=PiMU1{bsw%rK_ZJGBATr z_{3iL^&>e`Z4zv_?1VPX=w)NN$U)uG7_vZGX=@&;!HD}jY-*?h1mGKz&YcJHYP3!> z6!Avuv0rli%8w`+c!po=Jc23*oPJdMT zc(fC^<%p!1po3X%7i)Z?n(T4Cw+=X&5}sUGPjx#cKgTH)S^zKB$r8T2PPK+VL2fal+_@(TGh~AlZ(U$%F3g>X6BocRkcM4 z5ZM*&mE|CF%g1)_sOg1To#BC%RE#5*fNEXBiSDcO;I#ETvp3IMd?w+`HQd*Y+OJl3 z;ehadf!`91+m~+EbZs7F8~ zD$S_zzOEbMvdAC^heV&lWhxhP+hu4{T2j3erC$mGsK|Rd?x^e6YHN=&;ZruTN0>I* z6~dg_#x8+#D8Khef#(1&@(T%LS@!6mMSkLa#C+h<1RD&lxsH3R8tCd>6lZ~dHW^t1 zxoP~lC|-shVdZl*N+}pO?X%vmZYSJY{5m}vhf}Rci>Nl+kmMd}2}u=T@hZhGix)v& zEA`s7$7P@AE}**DHV44vpeQr}@KH*=DSAHcj{|f+T4QWu0rer^fqI=IBlAbi z2N&eQeGZ{x8J#F{_}wnUyAiP$&q@L;rOOxMnLM?1-GY+43F4yHWMP}h%UTmXPQavT ztf89cdV*qn%S2sj;N9-@yUW-mw5l_}kKCYgpe`3+T*N2B2k%A8Dj614Wx2y=d3wiXR6qF`xW=kIb>=9AQ$|6Z=YI(P^#-CbG#_B#U(FoMb$Wtas#!sznhNDVWa++_+-7Ci)LL=u{{*eDb4-u-1sr2j>Q-~M9G78;Q!0e14D0I4RNl7O z(d~Ndo;|Jk`m069+X))^+ImW7+ zJ}GgY8`+tHWbdEjp46hnIl8?bymcv`R1-Tdg_s(0HbEu+({?lcXbDl7sdydHEV;0 zB>Xk1YF@Ekj7^EKA~VNTs`JAO3Zh*^z{Q;`PMJf#)81Ojoce7;hUfe!cV$VF8n zN|idb0NO_fE_LNzH-ETC`BGmrQJ=agzz>KibDEY2ya#7#lx+ljYFwUhReag>a=Fy& zzL{1DTJ&vQ+GU};nK8L|wctea7F%QLW@9GAPl`#o@x7^xr$E<|~nPhmyrg+va#VN3(b;$-vD$DU5 z)z7}J7FUmrAw6W?^JxTXwdZI!eX)mlX?3Yl&ruw`#P(@bOUDCyNdy^uu_ecsgC-mt zh1gDFD;nK$6aZEZw~Ci~MH|A-@X+vxs(DEsFF`Q#Z3D(AVI7}aM(9Q>Q^AQ{P3q5C zSptyklDj0ADH)DzN=dC-0S)hBXr#R2`SeL*$VG;`8p@wyoJ0GK{Z2P0v$g_Y+5qvd zYR=s;l)^`@h$lin*Nf`>wojvz!v{15_bKkYHHFx2#j30f9JyV-0Hbbq+>9B-B+8UR z=pk9UcR-a<#Gr?IjXYKqU%Xzvq7LWwniMEA*>#S$7LQY3y>^vQp$d(HAw$3l50ge9(<#TJ7q|p4BB{Qx zvJl57BWrVsx(=n5D+&(>8(c0IXWF-{R~>+r((Y0sjKA@jtV<@CJgiHhz$TSuIEpyjxTPqm&*hNa4Nt0+NWQud>u#u3H(yyM z9|tVSHdMkVTX!pF?lk+7P@=4$^VsaJ6i>2D@ou|7kp^h}=ynLyYU?7^O|FajavhXW zxp@~L!7B_hI=3GHSaYdUo1?TMb-Y?|@m(t4TNM?B%pWEF zu$8{t`30;}rYR5XKEIlJ(o&VTFHu)=VYI=^iwy2CT61>-DL{^-tZ2kXu0_c_x6Vsj zE&w3-xQZ?RLko;`hwdG@Y1e8Ib@69!c_nub!&<7C_YF5rw<3oQCU!{G!JBh(V8zCt z(oOe|4X!jz5XC7SrmR2Pi1~JQPts0mxXCEsdX~YJBLmt4)pc`8fZ4gZ6w|y^x)NT4 z`&4Ae%NP6Rl|M(fh%P-G1R3W&A5`GSviT6uA{{x~|@a0|R&!7j=&IzD(!+DAzPfF`+xziV?MM5Z(a*lL)L8mgvGkTkZdz9)=d0GV#r@OSOK zOhGVbpM(lXxL!wO{6W6GvRtZ$7@&!wl0`~j?{@}G#$DCATLI#_;MDn%x^z3oR3>j2 zpQweL?mEPJ?!xoctY9wbyIs-Q5M7vRuFPh^T09*RXIEElsdMW1KC$o)ARrz-1Q~Zj zC|#<|?ZY8zl;BiPA=qNft|4Mj!o}T%o?ETu^*9VA?z}yB2hE$00{$6cTB#bm%54f$ zx&KBY?@|M*($JELqx;%in&;_qW)%h*p?jy6%F@A6v(;sF0wgk-YKwPS?)NahaJf^O zg&VClyp-IN72|?tr#hAf)I{UTmG8}Gy@a2<5dB3CPn&}-5B50MS-)OSn!$zB6J0@oNip#eZEa{v1U}r9SLGT? zHU%P#3tLl47jK1IGX@sTUKCH1OQ|HbEvq}fuNoE~g|AIH-kFP17C>q<*=V5R+LjUD zqbI#CRRHS6fek}OBAg@&*XL{RvK!n;33r{YPY2I_Tj^O_ZwZU); z$#+penp31**&C|@uaAi<-Qz5f4pl7-e-NTJLHKzxpaTeSADw@W39-3~3utp5rp)B6 zpMrZTs-;UTC8k#eoE)4MPYEwr`vK~Q_Y^B|p2xahA&pdoqa-cJFuJdozmZ4k4E!4* z$vH?r%@wtF%J6UntJ>*l<&$RTJK(1?UVe*;1mnx&uXsmelM13;)#|7_0D=VlA}pP4LOi{%a-d}XX-u=ekY)FwJq&i)F%Lf5u!}mY6ZWCi$h{+630p`Unn3` z6)F$?sIp*rrQQtiE35Cb`rQ>YUOUY3M6uzGCqo*G+QC-Nsb}3W? zLqjZYmS3*`V0H9RI844xf5VAM?@$WApuTeG9D6yAmJwh}rR#;cUYiu-k(mS}?lmb& zJo4Y*LGzFgdDF$|^x9lg6M*{CJ)ois40RC4W$PVU_0=JGEA6c~Ue+h9Q39xm;1G-& zJ@;)3cj*I7jB}R2`{8(Al7ef}ZPrqBD^ zyHTvLWQ9s^7(kIGzIt9K%? z$5BONSzUG7L7gv2psER2&8Or=j>zPo79Gmfxz#65{Wh{1frJA0T<+ZuGT62q*lw`- z8JE;+Q`goin1tSVhCEqvGzAZFTGN~KQ%L^JHo&Aluu)O`?Cj zYA z`97toQz@V=kA|F@P&^PZv8F-K|(U_|- z^#1`px{TXD@~2w*dg!?1B~SL|bxGh9|5#u1v3)tJb5grrD?gu-Acc3HRe>JqZ`_D5 zohQl?K9_s{9dOYI8n3oLW2&vBukp8tAD^qVQX-slPc>X#6%Fo7rFyrNB>W{;kp;1K zM7rY?i|PU%b%kAsCgZtXF&_?s8BvX3%Q4`ns2szkO7&8l`T8gssfcVLr+Hs$PZ<8S zHRIckYqer$Z%KV41hW+COL;vA)h;O}UHUWW>%3YV$}{z#*i%i_9`E{{6$ zka&oG`3_@ZHRQ;=OHyptAhJ4UzTJ1%25C4B;coMkT=CMfG)qq5Ii)Oh>E4>IQ0QJLHa+8BF~0v2S}`L5@pw36?D`Onh-eLvwGcBx0+JZKr?Lcgg6r* zne0<*DwibMZ7CXd$J6ss7fI>T{SF*!2i8fQHM5J*SF~1zd`o)nPY0IQ=eN~AS#Kt} z?1LJTz^2R@@7$+gZ?QhMHu+@tRt}zrkO)*7UAv?$!c1z!QyPE+IdrbA>akID*Zj0q(P&n2KMm18;)3LU zf~XD}k7X-gc1|E>^wV^XPcbldZ#_RCFn59;_0-%QT>ORR>hV;BQ_m&a+EgS~$m+3v zhQ_1lAb*BbUG>DK3{V0Hm~W)$k1H3{MDj(i>+#HzZMgKGof!TLNF^?%d$$E}uVM?a zi4d-)h#s%R9Wt{Fw|nzG3SUbJKfbHOS+1;J4J04Cu6k1qWwgTXfjdcMrn?50Vkbhc z#t;gg4xLE3t+SKm?-&x=F;uB-5d7a;aH{#kY&v!lfu|+acGnzC1NtS`%IhokiPbc= zqOOu_r@&Z0r@ZefQIqsVP4Kv;+xcX=KHj!Yd1!TWRDnvPhTiCmjm2@&a zl(N7powJ;?W##$RE>*DN{JcAfO}2TPW->kIGScuR?%0mVTPD?`X#)S=TAL)LOgUwO zTGqs4Q=J2t)s&*_PuxG= z2Y=s!F6qbm$Zpqbxj7o*e|_h!VZ5X5ESVAjnu|>xUWYUS9*ZO%jVc7i6iZfBnz_8i zdGZeJU1tfM3-mNwcnWfTGA0QngfFo249|c+a2DF7)R9CJt{f4A%A+RBAIpOk)UH6rKLwc-Kef^|Vh z&$6

{4$9=_JpZO2z=7+YGh*?p>3nSL+|pqk^n6#I)3f*??n>Yo8EKmhyIg=h4lW zPkC~s5bRP|fs#{^jFVFgm5z0PN+B7ixvzv@qvosYFRxr<9=%MYtGefX%QJ4pf#rKCgJ64f2lusS zWr824t>hi4V9gakP$>B-{dl<$?!1LUUtgLo-!Zl;=MsVSeR*S}1`#;_y>&3PcMO;9bUu|0qDZZ&g)w}sX=>@vGrenC~Z8KQ{`jr6_%a;ZnK+8f_sMQKH9;!6qU5LOhJU*Kx`t~iZ})M{i19B zz9a{VNWQP0=$T9SgctFk%m{C&(0A;%H7K$2AYXqzhR#_ct2uVDSqM;Z2Q#^s#E%tw zxQbJbvTaJMXiG+vd~Vt4#A#5HJKq#`>giK7J(eR=gWroI_|E+6GD}n^9EunsBPijZtA%W?oZj#X1P$SICV!Jr&L~}zCGj(@(zIQZ$o4V>Qz>p<2rBM6T zZ+W;70qP{lrA;KfoEkb}d3Bj27#6j|cx0|$szs7CXiIKU6dv>lLrXA8>+ZyH^!cMx z&XjX{4y}v@5NMROHU+JHw%(P>Isjgps|3^&dTVdBYi?J~mx)|MlLg*&ZsUT+`uODJ zxR(-*z@#>1woDl+I63*%FimBEw7_~@Vv%gm?u+G6RRf5m4qa5RE&%RIB2UJIO zAFB58H*!Q#O=^f@hUEAhx_u-gOLLnOB%6O=}rFOm_fphX4{K7Vs)hMtR z#Q9X=>uM57wJGth=a);(2lRV)LIn3I2xbFoj}}Vja;RYAx|{h6m+p##nxzHaUq4-=@oFYSo_Bv>GYAHACh7 zhL?5;bNDIQgWtky_$GCpsnt!(24Xy5Q?Hk7UbnL;=_pc&y&gwbu&2Zp$9gUJ<~vA^ ze0(ZjplrLBOUj(tn^VezTEHK|W+8LmL}UePbAN)DMY75J;;%R;n@aj>*2)1bl$HD? zO%Gftb?4hI*zJ%|%P^ph&p0#>Jc87xI+#}VA#b_(k6xx9w<0O_J?xF^gyB%~(zs`V zgo1`*yROIu<2@hc!A9l!J~|fi6+=qOf%~gUJ-_Zw(Svq<>61!biuBjAu)dt?s*AlJNMs1a=VvE(ia2xY;zmu!_#x{P06jp$zf0_zh*DRMCvyd@J;GaE zKG72k5vK(Gc0BSlZ=J&wQeU}r89vbC5Eep!V2HvTfw8A zkewbtt1tNzW2$H{p4Xv}D`}TvDGp?*@i|chf=aP{B^8}?A-oJRTkCHs#XWQgzQ7G+ zp&jCi<_}eDn_UQ=6+jpe+@vy{CheE{N_$bN#ZYT$1Ox6ujp7ZA<$8KaZW$?-EM*uR zMyOIEw|z==xREFK*$kca8wc1q^Wh$!UrpKGc#w}2#^u76`=d+k%CUw|RWspFTSg62 zNC8yO?wGIl6N7>_lU-yIkL0CcXh|}DDcMyld*!Re9MiA>c2UTvy9Pl-kF&sK*CFoN zy3r8VGy&Dl!;y|7Vs@{7la-{>cEB!V!ge*xCG4G}L!j9fy!-XfMDdbcDp&IwwtnkQsOD%yZ+?!XR zJ6pbQy=CvC^70F`C1Ub&<#DMnt!uUNzxt+9+ykRkcjkWDoCWSs zNU@K*$sQT^V%<0DTNMu7GAJk1^Imrdd#5`XNjHF^Wpc`YA&NpA=Tm9N#YMg@|018d z@b7d@qYB_uRFPVCE50j`4v1+=Oq8x5ELD)pT>Nt52=&v@YWY7w*xOWYzrxv_W8E-*4B+L~qt3%5$XCvHt6sLoE8$#| zdS>hi-keTnR6GgG>PLAd8Pjq+iC|B%IJtkO)roKIL@K%3TS#@BQ)ftu1o0EJW5#P_PWCChmJgWY-(^QCy#o1h%FIlP5=k zPYzQ6d+>s)^vbk}NMLS7?P_4ztSCAUIv8lFEI`w8g<2~N{!!zUu2S&PT**txW0!PC zRLI|QY9lQc{5z8k4@o(yc5|W?99VLu=H3^DKf!~4qn)e6Fgcp;Rx3m@%GQ$fjmp@u z0y*DZI4OOa`4FHe1@zDg{YGsh9SKFRvy(SPa-i42P$&>ct1j}EBwBWS5wbz6}^ zl@*Aj5Z$#VjSRc9Fiq`W<%u5sjHndCC$Mg=!RI7Zh0bfMB21tt?lXX5tAdQ%(AzaY z?RRxyRxw!_i-Vxxi;DdS7t?z<(m!GC>J(J5a4H~m@rxvPi&43_RZw zt%rtde!keWnOc>Ck~)QLkr$Me`?@~LT5|7}SD-%ftX!`)J&tw=_{dbD8nX~dgcC=c zOTtxy%tHHd-YZE!narjL0EloZu=_bVCSN{kvzY|b3~!v1T^Oen^xAUr-Nwv1yNH6d zM$qz7#qB6%G8vuvO6F^GHo3?+0R1cP&>%f3_yd54n^4q94=}bWF1@gPJ z;OW|^CRhqPQSrTcZZu(=OnVAm>JK;mDe;?)4WpzyDGJjkXqlQ;l2Y{~F+f*RJ)fD= zAw_2@?Wm%#Ta&G4m!WIEm5MD|vFHFGcTkh0U35UWui-L>CJovzt5>88tP2QZe{QK< zb|d9{4Nl_jugmiU@Ou!B&6G>l2O#RT>p&ru1(@RP3Bs7mJ&&n;g!6@Js_tRcBPR8l)% zAy1$Sj2uTbhr!S!QZ2ud7A>z^dED5k;g8Wisk*8B{0vn*(0>S5tGKVK7Xf~$)SQEQ zVu3F7mn$=WL=yMlr9g%s+-2GIIS{pJ?& zXXT@+E3Sj3yC$T8&>q*fov*IFUOSJ%%ucelniu*gQyp{m%T_?J+X@ny;$2@ZHm;Zrf1eog?EO_zf~`y107PDW{}>awPch`iLsZ3sAg0*KX7X5Bjrg z;qodT{JK9^bd%tm1LlE*2H51r8TsY**aEyMEvfxHV<%vGQJr$WI2%PwaE(MHS#8y}ym4Janv@CeC7iJSST<1TlE zha$gy9FEaX9*n$2IDdG#>a+vumc3V(a1!u}b7(VMU$^9V)GD>f5Y+0|9B~}qQYR>M z!n+sE6M%Sh+#vqK>|b$om9`#Mz-G{wgv|MUPVO@>=gE2l+T`mhj#aBpa+D*otgKzr z*ZYx@Dzn6n3vpAOKN4xM!Tnr{;n$`S&kT>hRu$c#Cf|prPNhRYvORg~>pV%R`a+$M zWsMQT+)SJw^}bHfA8>c*wD(1Cf6IlL(d=8c+5mG$g_x{~B?0D-%p-um%blVr_>Mik zltAdb#O7W-SO3*+%I<6x+s;sYActIga4$4Co3?DJ=__cl`NQ3fDO@b24%TqCrk|+Y zfE_#4{4t%5)L1q;YF5G#t*X{M@8!N~BinxJ;8)VGdC~SAdBUz4_oM6oouv1E`bd&h z6{}MvRi2wm2ZyM^f#b#&Qd0L;5~J$-y6Y<*BHnEmvV+m1`%80&mdnijULeR=o>I+? z`yj(Gl8-YFd#jI=Kh<25G-pRyFYnb>(@3sx$5O|m-nFhlH#HA|!0+g)&7+0ft?3EC zkPlpA$=L-d*OOXP{m;F6;Nndf`#e$NyQTOo2vxPqqy3F^SKa)$ZR*2n{7LL3A_l#0 zQD#Um@)xLJK%^Mf*7})&o!&|Lte~?x4<+vy1^^@%DNB|}yFd?7vZ{~+RJe5KBG7it zrxFk|kJm`(FstiaE*XxuF6H?R?7KCUtegNPcch?XrIEWNVbv`FlY`{%c_q|Qi2se5 zbyb?Q4$h`q!&xZKcYeV*5_p~H+cnrnjdot)st&jmEG3!eR@KP|)l_izR?A6GrF|&^ zoR{0^)PfHENuiUcV}n3~3o=>(pIzYlO;2`aXq@zS2S$(YMz8Q5vf)GJjXD zE2ea^zaN5=Ub3om_pTxhq5F}Y4XFP})wV+<*=ioN96jEn64a<=$rO5sbNXuZnp9$X z6#rIGlib<}V~UYk5=`}M_Q{)r+#fwjlKwcdL==ZG0a6fOQXl!!yytEuLI7F7a9f02 z;u3Gdm3!4XvT#RLATS>|EwsDtQd)1Cq;=&(huau$A#>F3L7$H@6#7nnx@}v2>MEFx zu{^uO*QNSZ^~)|6AIR0O*h1M#blh4lQWEL^1Cq$PUW2!8)$Tb1^@<%j+Z9=PIHGP| zTrRRIkCdFj`7Bzjs{gE?^9{l$OWpeRB>jB225*u_pdA$$otHjHtsrq1PDWFtS@*Q9 zz8cY3EvO<_q)8)cZVp5#qvOe>5=&ax@El+JFpWYL$OoX${Ak{B>;0bz69xU}s=Jyr zguBtx99md$+H@43O65$Ud(m1kw7sq&F-`vQI@ZW42=Tq2A8_Lr-6WGx7Ebr6GM*I+ zt*XTVMSTrT+VxFo;6}?y{#THW3W3}T@as{zvFcYXD3ft*XNq^~!u;p1tf1({{hX$ruyBs!5bG*u0!E~sP}IE3Ekpmi#b}Kz&2Z#(t8z;`7wL>Wz=Jz z0{!l+C1pCQzUWGZBs~hroi;g&x>npjJrd6tw^BZD<1*|wabr~cIIaW_so_pSmHE%W zDT20>ctew_)h>YhV_Xz{lp<-8Q8fB#^+!KAYAZH%RHZ?ut9?57f|AJ-&S&ZvdZ$T> ze5;~`@2!^xsjV8k`I!XumIwu^JCLhE72l`iSFphoi5EEP`ed(*&}WfBraDBX7obs{ z#skWgCsul>Eb`bmuebNBDs}Ov+-TLOp3|XqntPmD(j+Q;d$X!+JT6Q-%6$*@X_7F1 zwV&4K9z64;JwyWC&RcBIwYa$4v3TAjZ<=!fC>@~lB)FhRbO9^;it_8cL{a7h1S4;` zbKbxseCDU6>3o1(&l{xd-LLh!ZHEaxw!E0~5+OzPdd`tcf z$=*ZElUBM*ZU=AWvely}vRG%y4k3I1b#_z^sFvTQhfeopTBy;_aNK-oEcM?TzFGJ(LW=T?Rwg$=Uvk)Y3Y5NyLN=roj66P zo8OI>-j$|NU2bW2%mkZQ@oNtE;S#nRFyWVs;R6wB>u zeTT}*t*H+;lsG~FkmO{C<557Jvsa65F*PiFT@a-fBP`8QKdHCMJ5KvuUB!b-1JHb{ zMf~aaXBjaq0w@U1F+dONTF}O;ycVTmR|;`x<}Mwl11@*}a0L#xG$3&s>x z!&NBCKa<=x81r^iDp#hes=st|ZHaIzr7yW5>9LyPo!MOn*NT1uVmOSyi{A-aBF zRlS_%?|WbBy=GVOQ~aUzZ)+!`Fj{Rbhth$2ZS(X^y+OoLTIaJv#^*Qb%HaOe7e3>nukLTk zrGhhgQ2o)rElO9w6fxoB9qCKk-M~}<;*h4AB4}X_sWFE;l2ckd3E{K9sL`)Va>oXN z-lPW4>Ps(*rHU`lSCZN+t=22{ZaZ__lax5vfDP;$wqn71ZsAFw6lrMcryAQzyg$jn!#asXABc6Mu z@;2AaFP9lU1vc-aD4~9Ol~U0)WYEKSC?wEqo6PWT2ga6uXDwZ1283lkf5uS0Bcp(eQW@eZGS}O z*9de0Wfd79K@aM6hqWAAmq4Bt%Qq_UQk>Wtc7=ImLPH1>%3dTKh9l0{d1yXhO~PR_TR zNIY^1E@x#wM-QLU*6Cz|)>78hv5=D7E^(N@?;LI**|oFYTmbMRyjy9OkX7Qc9Ll&& zbTs_F(>S#yV&82P!AHsD2tKE=F-9UPJ%M;BA^K+FL$dsK;X>S_2g;JtadYXN+VjO ztmypb)}X2vyiu2qz$Y9KlKrvc1d^|6h7h626teKtdLbD46dZ0E2stgy`J8^8R)fk% z^3%!qUk%Qzo79DpAN1&q(%~3D&)qxaV`3}#Qufv-Ehr{?@p;J|vxS5#mtNapS&Akl z@USFb;Vbup5>#IQ4OG^yLSqat5f9?Bx){1uQcy{v|9CKp1ci7baCCzkcB7VfyAtYz zvha@wNvoI*@=r1Ous@`vup29?a5pY#RqQM5)!oKcLfnpZ(xC2^Nb@;VE>22Z;&EGt z9~@p5gkFNh6LJaM7DeCAM~U zPPR_s7)mfznrsVX-Nvr&st!M~$y$Lc0D|Sfex)KTZi-j96<>V}C&0Q?R#$iQN&vX5 z_U$;^QqJ7aA~jQaZHreoxTYFkpNz353@UFm0jZhQlHF7TTs#7~YuW+g-wh0B=8zKh09P*|>hjvS>pfYrHa&+NPyaIr&fYECfP%NtHZ@G?H za@+sWR8kkj#*qZUgwW>wy`k7Iw~4^0EF;-W6RDD-on-WOO88jOH{GqIn@~f#cSPLF zwwB0&;LfSrlBOX*s9u()?yqzdj>QW52+i--cWDY?sGR-hTf3x!8bW}>Jc3W}0Ud`r z<-By*W`AIUnIr`Z;onOcV=bGOY&*3=wvNSwr*Ri$313&tNNgO`{N$S>xGR~Y*o{w# z`{Pek)$J!AR>?maK%HQ_?#qpEy&6uplf7Jebq7+%z2xGz+dtH7?{&{y=XUUBtmXP@ z7oGVFl+_B7H>+6Z(th#B!4p3~;Ui6Ued!WAe~v13Ot6sepL20;KG4vcPkM*G#!2}r z9TLEOwty5?(xj2{|B})a7PjAgDME2}8b$(exWhqVE3mXEf1s4u{J2BhDV~zfr-8Jh zlmX}JFQ>51`g1gSCTNc20O&ZVpD zCIeA!tT0rW(!vAnM9XIAbkBFK=(2ET(`}icC@Teq+d=}s$ti7zm;Mn^lpS=3{3Y{z zs;_l)MO`0D`NAc5_-9e31}E16a?Y!VDySM#oQsP zxRSLISavF^f7!nWGXXiiXoG7^#Su|!nQAAU80*$arJ@Bak5Uol(}oi~D>{+^@X+oL z1?6_1E+vijTtw#wDW|T6R+(=4xfPr>SuNj7P*1X?FNw@<6>2#zcHAzH$=fsRzq@PE zlnn)EkPl0eQ@N~uI+bXW3MY&9dleT{yd-E`K!q+lo9w2k#e2q3SB+0e;)>l$Nf@dq z$f3|hM=uJh;%NFg4Xdi^>+eN{Ahqs|uI4jiR?E{O-YNWP5lFV@C8sk0(QXFw57AG{ zf<2(tepO}AKr0mmAqX}{b1tR8?`At%A@`e8{wn$%m9=&=U2BY^({f3*Q@P7^4?;WN zl>dI)nU)`RNrQg**LssAmseFc;A4svJh{ss-daPI7DK+7r zl{X1?me5Rfm!>WEiHQd%OoZ@4Kmz`Qoaf3vLS)WZbg&5_*}pun<2xK4CW1*-6s10I;=06`XT^; zt*`tgKqGt^SKsc?S66dRpR#n?E-0T3jyo>Cs@&0K1$F)M4(Sx|B~H5)lQ+{{`VDF5 ztzVl-mU^%`WU~i-e76*uQpoix(d&dX%tuj|LRTWd3U#eZygJh)uXEV}lK707Q=K>( zD%5!wR2$+)*lpAr?2|DudG>ni9#>5JX!-{kQ5;;kSe*d7dNt?ahm2=O zquRJY72p=ptw0~|XxN6>ipL3Tvf52j&-=)#N`VAatdWwYEts(3Q+kk7a_QH}P14Q5 zW@fZ=OLKKDyR{vG*1gW4s>p?^R`-@Na=>*ScAvKgV>3?X;E|L36@Kc6RH|&O0})&J z^2T&ydSWonLAvrq$W{iuxR@D#9YCwgqKpL|neq;$B=a{%u?64ylg8s&SWY(Wn%Z1MFy9R8P&KiS3z%;10^c{UQ58s4NVYnJgD9^6 zq}D@^GB(^k6=j`4ry*q7 zN^g^gT67f+O#)pYH~E(H?2^-~*ya=^$l?H2R9W+VgiLcC8i){dby6Z`@U<^WVChC2 z0vA6MAdSPi-9mU2`PB)b&1py$6uV+%Nx5W=|N4&VTOA7#ZiM{84A`wxmNX+Cw5G3-X5~0&itM^x%7L zN}0pCeH{&}-{S_3yOC4fX#UFO7Tm3$A_`rgX{t|A?+_$z7-8GOY0MQ6nk47B{D6T*A%OUK8FMz)C`{+-RdXpJ>xIgJ;`wzKR44|%>dKqmSOEGjfWtHI`!}1qkF;eS5iepu z4np4%6840S7S&ZFCf zq74N~yBijcajX7megr${Z|G`qdik#{YOcqWp})2}Thh6j+X)&aEB#w|#tN#&Oxrw^ zhH_#n3*lE2fG0cnw{<4b z^e-(68fSp^04^oY-Ml${_&YDPqqa*U%E!J_*Vz0HX9&09`Xw%LMl^c>b=z(m|FpZh zrhZ%^?SnY0`Pkm=ZVpQR^?B~zROWkR0sc+;1H}fuM~9>i7iQ;%@Py`EL0X z8Fd#@x<=EB-9ZwcOw|89WO`Yuu`5H8ezf-dGzie(h}v*cq$O7Y_${9W|C@n(D@kE> zi!0Q)CDeX`O?l6sVs_jcU@)<|+A^BcU4^6t1z12vn}l6QpjN+1Hx52)s9YBQCwE%; zkQ*|(XP_4Qf0^-pPM1B9zeQ3t-+Ep!=!PRW%>64j1 zO>=MVuDwj<18npF3*CX?8-D~E2^>How_r-(rq|^#6&^SXmlM)@^j85o@dqh;!1!|i z6@o9$Yh3>V9CE4Kr`ZGebJS(yQY#1PkwmfX?79Iq2sBYmxt6G~CI2OBvaHtCcawv; zE2`VMIHj70T7s^-X}1TO8BuUi^$rS-869fP*D^2srXHjyvw=-0zuA^8xmWqIWsd6)GQ{Zsr((FFf@B3M(P;I-_ONt)SBq-e7&Fvgv zeMD?0zE1NWZYwuKpDwbOyT!^6ynJeK5r9NPkvNX8A&PvT$3<>XdhsSRJ_&rwSP6#$|<`F5Sk63hRIRY*!YWv%Gd%#|woL)^F z4GTo%qBSV7{V1NP?Vu=HA~kiF0rC>-@zg7~QOOs%du~%mqN9WWV0l=U$yyp}b0hb7 z!EaqBS6Htt{hzB&plVvF3~?*pLqYBGTLJ)U`9jUTD617^s(?2O&DYI9HO`BkE6?lv z)_vh%S5pcQDYkQQ5&jnfIj>_9>6?5AwO9Btqq%?fL{q~arD8Fa8YfpkgJ?4 z>l7e^j~t`W`9*EnA00*J)l{YBs&kSEtAjIMZ21!4)b>zut&l|g2xMu%f)eeZo6p9G zu$~BF<5mY=V4Grg%V#w?pga`~YLXVvJgB5~CE@?oLh0(;HO|Q+X{zsL*X_6pA<0b` z3I3bn)hb;*0O?RRR3b?UxF9*`FFVT}#>vkFqVDLJ%+qmp6*ns9`$rq!tJH=&w zfPiS)N`Vtcydu!+UDR#R1}X_o8uVb2UakK(M{LxUQA)BlF`Ti1K*O zHOXfIS)3zjOjTH_Z%@0DbSbkV zS7<4f?#@OkN*&2pC!N3AE*&`?vfs4_I3&)VTz*T{o$3zwBz;i|ukgkiI-LREge;`K zlC`5I$XV^lRiYT>&%Ew?}pIhF|?8fuB#A-ehs{ao`_C zsd$o^f3kehw%0|bo4UtNH~%iH1Oo!47NU6cb;(BMdFUg;m2Y9v{dpWICzQZe;aRs~ zN-Y2s@Sw`1)yu;r6N*(Oonvu7^S0map0OHF<9*bYkO#DG8=z@P%>yBbQg3xyIa2wO zI?%X1B^mEq3iUCPTu`xZUD=*!?q~VC*|DiBF=R8Ib4E&aV5;2|F8Q>{Fm!I*_MLRR7xD)cy8^OQuB>{bt3qg^m!>p%=RQ)I zuF4<108FVex=gt<#vK9>f!@54eQ~vtxthbGPp!ydGaH$Q%Io=-R1v0nqOf zu$n2YbcyS4Y$;6loSc42?&pnZ3Yn5Z&iZTvr--#G?DC@QA*jXTP*WYQ6H3Sw9k-r> z6fPkAMD_mMci2@-{s8$aDTc<0?-+M)sqzj15IT!U^ZIOJ= z7o)bjbYD`CjfAytK-)(aG3Grc4X)?4Wm6I&TxL=tqPcx>6V)jttLy8nJO9vsE4r^# z%3%eo@V0cvqUuIaVFsw7Xw~Qrw0`8=z@bFMOOkf&T7%n98S#{g-4S;oG!9!j1jNQf zCHNEZ!tKhep{()zC=c!lBHO`zcY zK5iiw-u3L9x+#ITfO%toN0H_yEV|7HTmK(@5jl%JLMcG2%@1)~OIOxrGg|ga zQ78nU63#V8f7;RGMGSB4qZ?n{A@gAHg*Gsw&d}_I- zTT+UfJJ+jP?+%rJE6m${`Kd9ZtE&1+`e%yr@S_mgdF7w{h3iZQRgY}~5f%x}3fgEq zh*c`z>tix2hx}DT#s{lB$~W`l2z9HVr>uYjSmNv?Du%V0L{eFeE1YWNn#%CWZq+Lc zGj-2-!d-_y#|h`HbDrIG6ozsci&3Bxu_@(?%bst{qqZXf%L$FJZb>HP(lm0I&EK1c zqm5A2!g4G0UwD-#wjFu*>9N>*Y{wMqtACt$E#{q=tNi3ZfO`byljp6p?xU21^fe%Y zVrVY`c4}MF_?erqZ0|%1mks<^D&+g@5w0)vr>w_SL0n6+zr}ysN~duSzoTRtm1(d( zmy~XG0}L(tZpls?I&GcDE(7mhvXlqa@#)iB4c`V$)^s4Jq~ez;Q|YFcXP$GqRb8j# zRun9g{rf$gGHKKFM;X8wh-xXOEzbN*5p zQ`-S8s6IKnpGz-VL#iLB6_bfp`c>Dq+AC2BYD%|f9XDO-7bbj`}Cl@?+;d!n<;5&jp;5imn!)l5pyX406}^yqu~=p>!)4Ct;H3{7y1& zk`2e>l#u!G1Q#ipM_qaSd||5_Ld$(WHkl=aG{uK0MIU9`pk&U2CJyCVU*KB4h($Um<#F}F;i6lLA&zoI{U}+^n^h_Jsn=vUQ3*TeFK(y( zte=NN7;p_`P)OB-EY2Idvz@a@(RDYX85n6VXLPq}IhrGV;%R9HIatB!1PnKO72$O8 zd&PWxOFaEFlc7W<#B0b$LDPw2IdPzsr?M zjvcrL_q7Tgbp~(OUhXZ&!FD7AMw}{p58H}-Za1TQqMXg@gN&xCv?A5_(-Ln;LJ_C# z0%9990e&vw>zJ|J=bUaTYgSF}3cDv_LkmZhKcIMe6yv5Ku5J-(E_{EV`%!OHp-*VX zD<{#P<7QQI$F)mrBV@I%2f|k0d$}&ssAW|<{}&~(jt_Yl$6OjBw&rMCb((!$Xu3N zw|xh`y6adrCb^jJC{`>(aZr_3W)B`Tl}K>0 zbj|8Y4B^0S2mPeT1FCz1tTgkYj8YI~fnz!d8?E zbDV}ndl5@P_vz}mC-b19R&q9(AT z!Y8>uw`xE*fC;niXB$Q`xSAZ(N>-!qb=)58vs$X(F>aZ$0B2(`jmpjG4{72HLQct7~yAS}(PrgL(U#6agAZLwK z764yw@DmDf@(a1Ca)EtvF1B52D4gIsPJY%&T11kPlIFBTz%L{_I4-Nb#qXl5XT3JS z61dh$-lsdcbrD9}Sj|0opBC4iYF9C}$gs87RUYF=lG<$v9DNXO`y1(S&BCSg)j<&K zoRoE?G;-r#m5=QXD#z#WY%?*6=b)0@r8I)RF0X~ND^M;3W_J;&R=Ea5&uZh6N98YU z*5CIP);fj2!14dy0fhdJwq!vn;@c4U+j1>+mL-MQ;+t}xV!2gf%T}7nP~m@j+&dz2 zU$ThxAh-Xl^Tg4aQVzlwu&6JkoVET=_c4wUT59a=aMENN%1N4EXnm$~+uKhhZ~pWn ze{1TRQ*9HebO6TMz5n!+IyFMtl?ST2%*VU8wB3CP)RoozlvWk%HjvGaj7>Gi?9 zjuUlJaHibJH5&fLS@;7V0Z2#Ln|D}BJ9@lq{ZNmCC|yf@9wmKs6WY2NOv(&pwa5i( zP8_FMPB)!e&2xd9i8vHn3Rk!-ZI8wNp&MSdf^1zmWuCrw0lrTG*nd4vqK<+?p9Hca zLJcWnO(pnhvbQ)Iu?h%^BTVU)_#UMoRAN1Ja6*POZb`D^N)x>vb-In{DZQyJ*Y z!{(Ye0ShjBGOWe;}TA=<*5N|zoGz!W#7yHi~QYk8sTZ)2Ct3y|lV{EAsWdbHi zWhi=pn)e=SqM_O+n6403`gHjX0K!#tt77W70@C};r9>5bhKnze_2s(d>+s=cw_&{l zxG8LX)V*D*+v>aVNO}2G`I6rMr3-}lXwLzX+k90X?bhN;pTS+6)z0uu z) z1L0Eu*gU^Nq1rkk@pq}$vcU6t)dT8f%i?glMu{_BACn=xT~odErg!ykt7jA|FVAN^ z_T*O-M-IC0%nd1~Q+-mvTZFd`{w6(C#s0d4R+T^Oj9JhL_rNpyxHwz}Kk?|hPCb%A zsg9N-Fo(b#X{W;-z{*>f0&Hh0EBMOo;uC6?;Kb4n*xbO$2gFNx8{%>VtY!c9K7?Pl z*}-O=^2kW+RcI_~ zhU<3dj;NZ~gcVK;2dG8Gr*#^~Qzy{2!*%#dZh7C5^c^TW_1~^pWW%MZm0i@eqv_{@ z_-Wq_Kn>0l#S`C)BhEMN>*T3#GGShVu?u=&BOnbQXkBwF4g4zJP5pF*$Aw0sdhJQm zxQ*r%PnTR_YM`O%vFo5|XW{74e8Cr?O7W3rkhdhoa=F^{xkWTpoOM#>Hf7TAi9|&# z8r7z&L|_#U9?6rHH$=ef&Jr&9RQ7ic$6>TPJbo+zF0hQIT?A_|6j@{B(05cr=lfx0yJBbX0s|BW0$xvAK#8egGdCcTQw z^J-{E^(pC^YJ}gVXi7Aj^NvLm&bOcbbq}Nt@?l*zC<)S;qX&5E%bg;M^gf3x3cB_* z^*Qe5mO^z1+~?mo3xrAz{c5UFzEiFwwVPXN6fi`1ken>mT*fO4usSs)4``mzDMvs$ z53xGwZc4hil>^n;;nm5Nd`3*-;R8bfN?qATC9Ag`$GIOZiz75u*|mI#7%Ub0J}#PT zXu{K0AqQAD54i~#^n`>*;%IISz#P956&##%JB#b@OWRYQhn-o1AuYpO71X_Pjr)va%J7S&(Zj&gAwU)SE; zZzb>Y#HfPJ*OZtFaf7{8&3zQ$ooQN;(Z`~P;-U5}uuBGO-AwR{x!TtEhH z7lHh`+=6)??F3%8e{(2@FM!x{ZpYY;M8ey>g;n+yF_y1{Z6mpHT)k@6-J?g0O>UQ0wmR zCk2nNa_QWmouDR71ZEdaUBF&e!n*w}ZOf|2ekq}n_6S0{Ds5$|AalQ>LSl$2COia? zlE+L=M^Bewmi)IY=Yf&=Wbpvs^Rv&bidb`Ux~t}i%lXXs0b3-V)Hor65peNNuUW04U}0KH932 zcclk}gfO3JhF}rJ_te*RTtg3zOLqy7Y3$tFrgW!LHrvz^r0bKc5%6XI5fu1!sX3Hf zJO_Z?_t}t=URh#7tD%G5Ltx~Y-02~QH^SWxnR8eBSG2mGU@9)E7;*$3-alW0NaBEU z4f3ScGis0VZ3$61_AFoEOtT5hlXMMgsnM8Uy-dqi$cM91Ec=Se_EPs%H9kulVP_tk z|JT8>^Lsh%+l6+{g2wh#LUP*dxVh8uUiK;8uGv%P{1UqZ$OG*a<$E6W6Nf?|9EI=O zlytn%8G0Q?Z{DL*4mppurPYd^mo1lc^Gw6hniYzUGA4}<@c%Z)c=_7Ud1ZNqo%%Ydam~u z!J3*HrmH*e zHrOY6IvPS`{oeJL>f0h7OfQvz zU|U@g7rqLqM20F&xp(%ty{r(kyLfu|IyT7qlTp8NSd?tn#q_0g`P~)j!<$dY(Qz-# z@yXz=_a9qSr7w5hC^mQ1o`~zF%n)D2z2Z0vitMX9Eu$?twVC8@#Z*7VsPub#jrAH# z@l60lmma0h-Lz2$R&s>6A5_hm69sJisqHWA;E5yh2K6E7zApY7myAR9MjQH30>(5& zRO{X!%FkP31$8ukMvq8fe-AMRg0CBTmq5WJ2H?q-17wa@P|&Ynyy=9faOXyP7*=V*_0(;FGW9A1?Rd0X0`VzU^+2#-IwkYwmE?tSv4Z* zxtovHR9Dtl_fr_-*sYc!#uId7{T13LWr$@so%@ckk+aegT^k?=|Mj=({Q~KgDQmhA z+=TvQDvmXg%A<3%qzL=-Ws$&5)HxBfOX$5M#1auyR(%~8-)=@x zHk4TJRZCiXqnO{{6fVT%qc_o!0$W{K-vr#PUv-JyNNt}KwIUGiQ(eO0wRMR`e9DiE z>N1XdU{3}8OgSiAqM?zXJ`edsL)d)>Lb}C0Wq>WKs%@aI9n!wKf?PQ^`cG^my8*&~ zq}*(g#y+QX0_jh|YOM*^Sxc*$VFnYFcg4z-)O7!q1E-wN3)lwLO=^Q>f0qax<1y_E zs6UDVRYKRLnU{P^HGOVZduxt6T8n&+- z>Hc2yIEtz~qcrC;QuBE@K0duU8mZ@lpt;MK}eExc1w%duxGlpFM%@Fs!vl6hU!Zr8{PkaGE{WxYc0IkidGx7!I~{C3t%m&cev}|Du}S!t2z6a>Epvwo zs5V%yljY)CB>}j{k`PzGW;D^CkI~e#1ac~m#EGbG3f}wSVYwgl0!1HS!%oNcfs&+Z za@%!&wCPgg)h)2=kMy8z@(|`PuWPN6lWTEvkqQXFQ+`V%#aPNy29o<+9TePlXQ*lG zr(tlhl);Eq$?to$k| zJcexfv7VcLY0eNCJh?~BFCF^Un9{Tq8I#h=(DdBy6}w&QZI9CMR=VILg^(X^{f9MX zvDT8{&=bl2Q>c+I=nTjAxW?j}0|7%#>a#nn+2TbdDOVos*_3b!6E`4L^_h`FoiJKi zXB{!MALe|M40-C0T-XQ-Ix8o>vntSs(ncnp6NroO9(otPxTNj#J)PeGoy^;sXz2h+ zK(@d8V;`~dvJ{x&wpE8Tml(HFVqIzrhGzgjtLlAnt6atN;+|{tu*#%LO+MWwn|<$q8YDl8BxIQPO3t%o=-kIBG~z~=#+mDmd)LJ=jlc#%(|`Y-905AcRPs2-e?8jXl^SyPRq z$CBVmjrLcg2c@5%&gZn<0(LLEhQD9zQz%x`Q_vWBlb6n#F|!8u*sOI7hx}{v>dc5fs{(dZc_HJw-}^0#5mVcB!|G3Z*Pmu%P-;UtQG;3H-8j)B}rk z)S=foRbtU@h$2oA3EvWk>(&RAC*w^eA$2A7ch(C-t!XL)FTiZaB*;8pcB7Nmwp}5h zl;s5{JX%gka<3LMmWv3>`HMK4*$limz*}uAfCYv2+(*nxHut*fI={b~K!)pUbBU z(Y1S9D+h;Q`SR|T{goFG+5nfb#jb5x$Dek~MDY%H=r3_3ASFD8D1ZbgiXgkuPti5_ zE~RNBR*0H1ACC64GU~rtmN9U+fWO=8u1Ech>A>=4pQ34PR9#HvZ#MTI71URTx~vl7 zu-nVWN@W{^~F+5m}6o4zXY;%Mgb;^5yzbr zXRTplt$OaqGj>0cFnRHOG!_MvzOhqr3p!7UmRZ;+kB`a}`~xJp*HLTblNoN8%}F)q z`Ef#_?WJmkI<8%MmM=H&HMfYvd)a8@gUu8LJ=KPTb_oTesJ!XmiCjm`=l#0Hwb?&M^61ctCjW0YCcU}9~V){koWnl9{0p_JG03}B6BR_ zdR=ubVr}KfwS0^TMhEmg+U+Tl$|-VDo`Uhy*_EFPipab1sVVbaqbq#mmsGCVy*Z-s z&$BX_QV=4j3!Uzde@I$U=D5i3*2408bw+Ws0sv+#J=CLcU z&+9%EaI%p09*q%~i=qApWzAPOqdK-Nl^l*%SWWFC{qx9H-RxHCu0N^z3`PP0Xy7+J z3nfMfyczvO`Sp&`9GaSg}6;nu+`1U#hm4g6B-?bAt0l@@iSugO7BlO*fyrp<<1^gzlOYAL4g_qrh zmmE+|KvFr`Enx>600M=cWQj|C**5Qv&G{IcFTkg~f4AXXYbR4wHHcO8yCcz4PN|7P zJkQ+y<&dDs_F2@M{R?NIEA#(jO@^@bng@H=&`!fP*To-R!4TKEVbRD0dM+BhqNt1L_ltxhbe-bpQGzpSVEC_UkK$Yrt#h4F83eglox_%#9{cl1A z`Cu7DsroBm!i{%tKhWQ8H2H4N7Byx2^XfwQ?IfG1zgPI5<h7iVBvHNQut_QCFVw&Mxi*T%RzOC>E1vbay$5DW!^hU7FG<#O z0Xl~s#YG6@9&l(b+uUSp!ea(->MKgwIb_Y-MCCLql*ReFl+)fa8Fk)Ld}hB~ZkIrt zK0U=r(90bm*n?dYKhm=xVWuk8OZKq4;NUGAL+j9euwS+}H0THm;t6PX2YXP#N?udJ zJ&>kq&XtqyoS$5#Qh|*Y!i8GTxkeSyz(Y-qclTZtN}*B@9(0b%nv*?kW{pqVnA*+w zUGIppl-L1ENs8h_Qr!$ic?lzcWHQZGYeLK2H%nOOcgnZnN%9pgabvU=gJ-z_WH4< zLMYH8&(;rcldtbIohqK6!WWy(p{O3H`WGhX-EjoenvlD$Wtw3`a3}x<$__!Gnez)n)Ug&8Y^jfuD4)C6B3NVe%ohObvlz zJl1uiz5B;Ml2T`|yY5SH;<^P`Z7V#xH1gulOue&YmblFSsVqX^*s^Fi9B#Q)m1M3k z-Mi1H^Of%p80TY?3M(y~TcsZ4_k%2aQl4rex^vh0bDW8rD!Q5vT-tmTUDBpEsc)hI z7g0|WA^>#JrOOdM8GUQf*lRekM{VpFODVAH^DI{iDL*0w{^#U=I{DtwaU1fPsUc77 zW9VASa|@X-tG1+{(!&o5#9wxyC3jm45ohTxa6!y>+VaT^rZ-&=8FcRD9XCBE#z(> zD{+tf!ikdIJ#_p7=K2BjC2Z>F@wZcMf?9=|bJ+mYXfTiUb9kq| zP#NHShrmqv1~eR$MUPe?O->LnAxZjGMNDrXN?cx${6yX_h32DRSuRCeatF+Wj_KlW zReNO_#K8Dcz=EM(Sw=^79Z4s=n51MrMdCy306WghCHh^fp5*A~ z(KdDIT5^FT$4$!3>Kz?b=eW3*)V#pbqv}&&#d&~67@XTQ!aA2rHY#wg1p^CUtYDkk z4ePUSt_&PyCz;3Iog!<%?EFZ!RoOK+EhD>I%T2-5Ej!?LADy4WA$^)6qr<^%1?fE+ zP`cl8Np0c%hW!~~guuYnNjhX?{WbOKrMgk!)t!R(vn@KC747XDi=!IWv2wQWSEn8# zELn!T1k#2G+L8`Q7R#4Q z#A^xM?C~4<4OhpVY4un6AjOe|w=AnXa2(BBFkFh%?$;^laW6V%f~4bPIE}M ziIynInLb<=kvKwq0 zkz$ufW&XAc2Oe1xdccR&6V&_E^pwWo$W)p#e&E!X$CBKVwEdxS9YFLOKL<8VJ_wiE zVM(WKUDqrwCuo9lRwiLqFU3nEak39btDIg}O_m6fV%>oiu*1@tq;SZU;h0&8V*AM7 z0coh@5>1gZ3DR0%s<>Unj!&?sHC+xfi>-XM-TtB2tLmX{t)EVn7Zn*mXwsxyC8&}KmR3F|Cs46s?43GJW%4hKO=Knx^G8=H zT@_S?I0`qW{A2}9S&1ticC{n+^T7~44fSrD!?Ka&*1zslV~4o}f zoJ)V#r@=14cBfB+YAI@tEV=&Ux+7UjGFrMeXSa0Z`nd>qZaWy%XzG+|DMZRH)<-Mm zv+lW7N7r`JUU&AtpGQgV8vi&mRaJyjt7C0EFPHnL(+J*ia+=LwDUq!A<*@7x0;I;H z3S%hgsC5(3%uO#6$5Jkvz@054*8KTQq;a`^Th)!w;QYSdRqcx1YV3a!?f9o|Wyy(` z9BTuXTkeot>-7}TQ2}wTo<76k2HCHdaYVID4)dj#up34$oV=$K47ER!MK>p*xG03C z@X({IqH~)?J~w!*F&;c_VVxN~|9lj_ttGA}J6DTJIO zQ-aU&+cpQ}%BP*~{YYcc9N~Ih)YW;K$N9(_ zI*V#9odS&sG*u|Qt${sHw_JEFY4p|jsoxULxNMZ4cTxQLQQz|;k;^Jo!%gl;{amAb z-ILHS{7ovLQ$-(@6Z9=2kqo6JUMd+tH^^=XqriK03^$PZhs_prDQ+fhek=D5SQqNI z>q&eu)g9hj(-x8jB`4=yf-ErAbaLsoLhNp-9Aw9?O1e_^pvMFlEH0R6Af^x;g39>mDAzdXWt*o=k=5mPzjX?bSj;N?mqyb!xv$ z`0k5Jf7wE(cB&>B&EG2(r>cTm0+d?X-=%8jG95b5AOlnCN-C-YbT?ES;S7TFiVJ9N z_T_D%u&;BZ*~nM8m8FrRo8*8hp5-`-m|eMIRN!SkVe6NcUK)uiri78&a^uM2!!p%s zlXrK4T9PaMo&{n-ESN1-ChG!(UFrpcQD&wNl``=0s;TyL2)SOV?_X^Dep?Y6s`^3v zl2ErC#GU$v9su~^QEg)f8UVk93jwR1zZla1?bpQO|8YZzfb3Td zj+>h`VH@H?tovr6`>C4Wt1B_Myx#J!F3S(%BB?}kEv-IOrfRW={k~oPgZ8YdqPwv7 zXjRo^Uk;P6CaxN#U$<@?R+CFfszA_}JCX|R0p6+3?^10RD(3)9w^!M;eY}mv0G-Dz z7wMKNTM*FX=lqlnZebIr>`IlSAS0RhG(C}&fl6I&*F^Qk(c0xDZjugSJT@KK-7bX9 z6|L*gGV$-fUQ3XZ9?v~%HCo*rmRZHCrZRek6i)2+(fM_Nv>S*L>1rEEe_w5?FvEOFJ$bJc9x+HUY#oHmSdGqAI5*bR$I@M!4!cgopc*n=J!Oubm;iMk8QV z>A1n4BNL6}rkdy#II%wdo%;xnpUfq=8`R=)90bIu#E1(n2}{0N_jIv+J+`v5)b*JF z;)7bh$>7u*Lf1)YuawQ*9gL8hQg^HBn>Vyyy5!-iPwbFn+7aQdsL%{h=Tb_tG&*j8 z4G5)C#N7LnoTP}yySCn~i7!8^gDREyMk&6url;v5wp3SlK^0YDbjN@x+#EuyZ%&Q4 z0ZP109{B`=%1StDdnn1dHB(i0%QQ8eEF~F~UH^8^z$UMNLgYDuDy#d=e5Okcivk8$ zkMbps&s*<2Diwl=Z>eyZqOeo*Sq_)?hnB^Dr6<2``8GLkUI=29}KxHO^npbG5e zyxNnrTM_;2-bjy55nu}3FA-IWq_<@{O7_inis1X6k1yg6=sR-7$#-1j>hDefXypaf zeB?$YZuCQhu1T|H88>QIl}BYzt6)xe%>DI=u$!An0%YD>@&r!^RJ!#qE#gaM%U#g2 zbG)favZi;x{fI8lTFziKP7QN^9jF1x2SazHNxZJmLI>>%$Mk6Wj%FiQx-vnu1C%#owkfM=iud3J{3_iNVJGG;96SpIznYn3K zkrl^4e3dJ7D89zijfIzWg^YUmS#x8zrbpCLNe3Iv`FOJym7R+4kv>R$=ZNVJU)kbG zOftpVQl#Ok;4l7#{9YS$fVx)>h^r%0ttI}VE~WP}RUGw-mHW^L?#FQ>;%gNmcd1Bj z=YRB{bIY;u>#jrC_+6@Dyeg3&P;OO8(VI_B{M6I|g_tK4Byi|`%d=DE(fv5?+;(o( zoZJnG_UegC`f6d3IYVLF-tef8{aQ}c0F8bt{N5zlQt1tu$v%9QC^)TdLdq!nyqGS| z07-A&5}$%JaoLJ;nM23sE0~no_A=KS1SyfXE5AVY`l-|W_i>@?CZwnbfQWzh34?8u zeJ)nHpO8ayy%{@YM1*9b{^%-hU0I6iBf61LqJK;ZZGkC4VNl<9(h0BKjemtrw1Vlr zGv!*k0&;?Q&6=px`8#4a<+mu6v$S6=uoR_tdm%S&!It=^k67j3D3Ycy7J-T)Whms# z)de4@*+G6DE~*?s;uX5+9Py+Hyo-gvkLniWh&DKHjZn6Ar}WrWO;`c{RwXvJs6upV zR=i#4KJ840V{TtEJgghs+1y>19&+iE6lrppA)SPhNk>4QI`tVa#}zv#V3Z7wI-e^n zwg13b05qRp&>$kJfC7BgP}wo1BiEuey_PH6OICGBu|Uy^>biJuYpYLgW|wz0IV#Es zyNnimJnoD}ytge6s;fS<=%FeRmL!Edg1=CY-J~qrig%)n&84FF;Lr^lkyJ?vv#QTB z+@&J~*)9Q65a=kP#DjMwzJcYdW!q?5jY9$ySeXz}zpZ85qwz!tZk_Q(i=UG(g4PU{ z^8<$0Y?4^Yxz1VIEsvOIa%)C0sT{cW)RZ8|-IWM1g7PnRn9ET=DEspe0EYzVTjh5- zqvV&@xuJgE)Eb&}zDfryn=D~57E>8rf5{U%%qwS6DcfBNX?c;8hb4su%AYo-jac>g z$T@{gwcSr+;7)4bpoEqN>5$hjbUo2C$|5b@UioUPKdXGib0Gtp3^ZSiy(x+=vabfk%SYx=4!y8B5tW++VACCwa(b-% zx*75+Ppx=jN<8VWx+Q$n)FU#qTy&R7%0p`XHiC%>D1IMzI>p(sH$~Y)jafCN5xG}4 z4ZxvUBMt{*I}9B-p-RHXA zct{Q${1bjJ#9`8H4$=qUO(GJY1#mIX?^tUObyS_WvkI=}2r?&svWMJ_+9|h28Z;emiz0JLa?I3y{MPI{#qBIqvZaLd7C4HR zu9$;E@ettEu~#ce+seWK@w5)Ced&z3UGA2``Kkb}8MTY#q4=JfB$@t!Onp>SdN9dR z%L|1QnnOA227mOI=3}c~(R_l)P{)TC+2NtDzn^76ZWP{mE=1bZ zUs-0p^~xFF(Vq(;`12_7_i@geTC6Hz6G4d)*$s0bnjAk}7$v0X?CHQr`?NO$DuHyH z7)lup3|C*1=pdVolWlMG{UOL$<5Pc~WF$Q)^Wj}abwf*8JDowOOt@r9g_@khPhFi2 z5VD&kIzNB}dHFiza0G56Ag6Qd|Cox^vo5a$LOu;RP4dX6vQ4u6U)R6=h$geDyF&vw z<^i}2HNpWg{JqGx$nD1E*L1ZtT$Ub9u0zdhzL`!quvT zosf(AY;g}|uoNL9AE|a;^k(*5YGrbjn8%R!xC_U+!CSS|zRmiP+sEqVa{0FSA~fy> z@^D)v?bR-73igWjm2c8;2V?^b+q(N0xJO!&DqSp9VS)^;gNqiDZc*zB`q>!CT%RIQ=#H$L6fkA4JXTv!#BES)ZI^rKY&qsf(e$daBrk zB8i%p{G-fQq{647)eZF0>YU%YbnN6&f2xRT59T=T(p%5d{%Cz|C=0JuwSrudheU7P~6GOo^@%c;u+@3%wEBlN^jv)sZy}0L8c>=J_JfJdiGCtcy|sZ?T!9^`gwx8jBO-T4A;WDH z{w;603D#88aPH++spP{gSet=lu7bGil*>pCQ#B?azU%VoX!kvKUnQgR4s zrtaIhnii}IC3!7m{XOD%U{#=;EF@R9lw$2_&SK7I^iJ9iyF3A;k}W^AH>T>$8jZT9 z;ZvB73bNb!N!bP$$DKiTYoV8W{SeIWkgc9%NR9OQ67uu0-J_Q!>k zW)ZF0B+tpy=eUt$Sym9S^2n!ZD_SodG)E8mnv=o+AqCuCKtTOzFE+7+jsmn4p)@=vtbm50|quYanfY1jf9;d8l0tdM#R zKXnbz$R}EGxZt5Vag5D}THam#Hl;U@13*x$oV1TKWx{^nqt=*hF^rEQgpnM1t!luUA%0=f9lGM~F4kT}_6+gf!+2sD@>@79m z$ve_uZ=z$5Tjn3Jch&(0TVb^IiuPAkyI%&-`=~DP>7tQk{yOEOkfd1L6iS^C`4#=r zD7|?bQAboal3kQ_cbO9mexCYsJgS+=ziloxsJbBY`U-Cs1p}Wj5xeCjDy20-C~L{Y zC!&DCd`7WI3vfzK09Di0H98ZJC~Q;{ULi>htaWh9&+FmXMsatj(Rj)>z#Om;^pa~6 zI{c0BVqfa>Y@0kXC`tzlJoEmo&g(Hm?j(3}L9&bUN7%;q-r<(mb9gPK#}0cAbs87f zdg$V~VyTCu*RZGYC|GlIF6z*gm=8cYdexe)Qc5}bnk^SF9VG6e&XxhnGDmgUz~@XQ=kHx0nEB8~8t zcl70sD7QCJVBLyIN9*&r#_Ht0x+d&iupG@Gk{qiJF$i@^HS>ZE^v*rNqU3N+!nMrL zgxVD*&xZsTY09w5 zA?BmakU{hUC~~L<-P6BlcM-pcieyaJU6X#g+40h+8bj8;tw>w})*MMZ&ZHXux+^Rs zshbQcXVBf5_1LzzVFH)|Qu`DXA5qYjKP3O&xd|UYH@jub<$`%LbuqK#_^SP`Mg6(d zEgG@O&C{DT+aGPjIKr}O-x-APfd7bJB)g)b{a4%Vh+bH*Hc@Q^dt%VMvGBghtOO0Z8 zfSoouZve%Aq4g;?=a$Z3@xZADj@4Wh~`64tFbS0PP+@DuUV52stRtzk| zecG{Cv7F*?vS!#3Q^l#&zrlZ$!Ix>$MpW*fD+eTZ5(Q~)owKa)BQ`kjzSIej6{T&Q z7Fp2%79Yk5CM~&vbyRZ6&bc@+J#qKt22z(K-3h--5bJ13#eYpL zbV3QAPlu`1WyN_ZFkjY15hm|SZ)YlXQB$^KX(K%^CI6l8b)~a79g2Z8m+B;9_qn!; z9Cip}=Jau;bnsNOlc40Z2y`32#zoKAXUMz|4m5A=-n!z7Sky?|y16b3k`U}S^dyPh z+d@m{)$Edzz5?6zG;IF@tHU784c4K= zvIqXUsY!^YsE`Zyc){X03Qr^(snjAMqEI`)kdnd-#9~Oc7AV-b>goi=kU3D1_@Uy1 z(`;wGNB#pT?gczb8$3hyuPdS_KdSt>1#=TbEUR?zy_K&Io1;YrB9#{o(f-`pv;=#B z0yc_dbcAI1<4>U=?4cq2a?H+*Wl>Vfrp6remh$J2k2mm+Ra927&{1eB{hSLIprjBj zIorO}*A;r54Z=TX{d*4ViOS3lWuMW-Af|rZFyMjXobLjq+aP`@3;C+)LBk z#1v6AX?WZmyBnE{yCVB!d(DzfH{KuBR11|$x1jjxNs)!kGj#7NbHaHL(}uBDHEml7 z_`nd>n%(Ne2J*EQRZH-D5M72N>cF0WtT zkzmgW^H-#hr%?EAqydyoPWjh8ZcS>)F`=tFNl^s)UVZL&B1-_0_^p%~2G-|Mq5sSJ zFgiPnjgiRaitllEvL<)$3;F^gg`l1aB=QViw>{3T%U?L9DOoe^=-hFe0$p!ET}s&v zQKd0nQOmMv`&{Y>S5eESVtcpO&#$IboUX|n;oVfsNS9Pf0-z*6EGQJ)SpYbI117FF_5IRBLXkKwV(v_8nApDt0-|2CfJ4XMPTG<&u9Ig;;|?c&4fp#G$IR6&@84dAnC<-a(AoLI|YEC8;uJdRv)a)>0(8*g3;FKl2 z^9r@c;5JhtIalaf2CA%^L9SC#`p;(LqazK^Su3BaBa4uw-Zz&enPQXlJ{}I&F?3$5 z7L96pkExS~{O-iMra)zXO@h5q|3L?6S%URk~%HOR_u(d`7SajtO zI7vidnG@0Ic@O`BN5_MkCpN0?8jgmfLdAhYWY=&(I35ZQewu_(-8h8hC{kK+E(cFu zwd=Xt>uRKAcq?)Bpon|Cldg0&b&aN1Y6dnh<&41)Pb^95tEAqtuMo=N%{G_*#v@@_ z;sgh__4KL!uKIie-tj32U9+hz1?b6Vf#N4eC1lNIBq9pEJG>ZmIegHr1 znS=YPeN|STjf-Oes4R|7n=S){;53PW+L@;d1XEbrcC~URpQ2}VXi1=s_p9C(06c?p zvd+!C9sO9gjzc1O{*n|C1tU32gj-N>kdUQ-P3b%&R`X{PjrV-pcYch%o$|FT)tMaV zE6~DA3@OE1mW4<-Ha2DW*-KGyUn<6@UNz-|DiV%a@^0IG=p!jkuX$>p5(DEuP)BHn z0}}rEfELa0H-N5Apa>&C1wH1U*eZSPEQ1A=xqdVgC}DwH+^;9I5b-2pf>8?4sg62q z)?ZoS%0(>JrF{`;6f#`gSl7F|2#bW#72^2`J>Oq;x%u@8l_DAE|V>e8B3l0_S}WVVyq_*ERB30Bv0_D)K6Cz-({ED!)VTYq(4@1~6K zQP<)=!H>}+#(Z7pAvLX9R4&#L{*c-PO%eGSH{j1hvE+8f`XT zEw{)P>IPp_RIjsD(pNNewd>-kSpQv=(>YAw2YH%zcMr|OMCQlpOIoCg%!li)vZYgL-)~VRM@Rol>)AWv<-^cR1j5>6zU#ws~1TRB|u6I z;3hA~mR8u16Bp)C#aF$xRh1g(2Dnm&O-+@fU;a1WMgIG>!0e=oZz$wn70Q{;uJ-5h zq&<0ux8;(=z&*BseTOo$!ZhV_OXMeLS*59dctEN#BjE5e7 zLD)!_Tv*_RvJ9kj!vA=|;YTIJbgIEBDGGnLcBNmurI4XgkG2lGrZGaxs9j z?Z{#c&6+Gi^3}FW_27T7#G{ujCqZ{GLw5oIzQojiHgzrqxaCHJc- zoxoGs=@PZ9Dq2UwR+~*T7S#+*05F{{fnPcVk%_b90WM_*4rwf>4=XvaOQV_6p!f-& ze4OVN25i|wSE%FI<*s>xU!Sa*L%j+YlajlITq8IBdftojj~YlBKCQCFjv9JtGVd|9 zEqf^%z$KKf%AcR7^4g0Ay?n^5BbSC^q#?q=3h%&2IRj-bk^<4C-D>>_XUJJeSGA;t zZ3!)w{-g$V5;nM)-QSFCfj*5XV&be>(G^!K1Zf*){q;BJ?IHi;Y?=;O)n_qi}h6^8X zHXBNmQf?;3a>C-g9CtxxrNZ0NT11Dwrly2&L?4VsXT}F%Y1RyurWO8u|*ZuC{q{nx3M(VJZ%T8(I z+)WKxw_}x7opxXWO}9c4=ZQLk0021P{X3Npao?W2dc0{}VAa<7?59`ze)?llo?gjm zxfGd@BEHou;v$33Ikl$%2~il!^lbdfgbAhIE0K(=Ru%OjRAqe( z(k2uWeTy6@x!m9lH%zUYLTkLVKZBN{e@1`UqZ?BF1 zS4($Zfj~42i95L7oTyNk&D^FZ;N)Yu7jIZ{f4(`n@GR(eqHY3@Ifa?qqkC-!8<%*- zy}MdE%CXMAx7mhc<_69!9umFXMTyd!s{Ac#2smx79P5cvo@*3`M6WoUI3A9-io8+lAjUtyuZ62xVi`cHO za92&FJR35G8wW|#GkvKjfMzFA*-TI;)P?8{M4QXK8gMZe)b;T*oE&SKmYfz|!|fdz z4>nnJIVjzIY0l{D==PTKH`J1fh4-haA#c4hA9S1Pnm9A1>#&yP}!d=6?KfRt_I85%uKT6ZX|=cm~X zA!xcgr&R0(-d_?i#;~oSOVN2%owIjFO{a)C?**_;R+R?I3!s{FKV>||ZGk7x|M5Ss zPVjco(0$9+j5WG@c_SQbg6&?X@C4(go{-i`{4ydcSInL@XZvyOhU(qhMlAw7Abvj@ zZu2BS4hp$GkL8C%kE9iv6ob{ftJW9);K%tT?#UZdl3L%GC~Ir13ydxk`)K#}QTLG_ zIS65@>tStOjdKy%twqGvSY+v4Z~EPizyZHiMI9=D_GlY;+0$?zokXoywi65*xtBKJS+QT);QrF4^)~aff54wJI8)6lEf10UD~e#_kFq_P5>R;tWX=5S4jz z0(Jdy`O3OHaV)I9?=$L9p`X&cK1*L_8z$yo&w|3St{;NzmG;(l)G=XKJ$ZzB;XD9| zthGgv`A$}}>oL2O>Fw;90x?rM*D5)6X>enlTof_`yvixjNu%n`<9~L zBUIZ#6o+8(A!K%E8-UNd<{8>Vv9w!8|C3^8STnP4ZStc(ky zKz6Gv%cfUUk%F%3_jbA5;95kO}nW z>B?}aP+EYhPm-Cn6p*FbOAXo{ zvAuB$WiJ1rjhCsR4u##rdE?S_S<|meJ`J$8fD92ACICnKHpN=KR#)ts-jW8dPc7DE zgN*_R(5PJg_kJOhG}^>ozIv;Ja zc&xm8wL8@ONX1nFamWe9(`jd0Wk`-Z05AmuU-v){mg_!p8Og3`#QO{pFCf^|D`Qh9 zgC#=W?)JfyTUE!dWFXaN6Lof*Zz@vq?i)8FYf+_QXD2-I^n*?#8BD#5h-Cax2Mgfx zri2U8g1X$@i`<+I9n*s%hGfJxyb2>LE_`eErc;n6vM!->vgF!3((Xy|c)PHmMj`7Q zQk=P6hsw(rVckq@7|Qmj!&aoR16=s(l%_^VH75BRS%G3%0*{svkJxW%L#JjPZ)8oq zf@4bYC>oM)=K&|Isfu0T%om_q*d6%%DbxJA^lZC}@Bqr!7oiK!pJ38g>UGjqS53P- zLBYFp?4(M+6c{BuxdEme1b07eS)Up+@PI&HZo)}6C){O=DT-r?HYtYOVCOCz^<^$j zKM4q@ql-}ZX%iu%rkQS=p3`;-Wf+N z`ReRfGc7KQuf&yYm74hH(xuFejbiHx;wc}7%t$10k&M$yyvTZbTAb9Eu|tnG*#U~5W;kb{Wi{*l*6iLLiFZj*I5pZ>I{Ny>0(x;iCu0`Vzs zrGIVG_Z*1hFkK53PK)jV*TdWAPZJVe8%r9kP!eVpsM-{uxaar%jgLTvBI+q!JCdrZ z{Lt+P^LClmU#H*k)Dq^^U0ADbmqNf5)GVK+JPa{JBn@vv$p<-cc})+goP&vHol4|m)6 zwtHWRYn)FwkPnNoBbiS=IZrp#Zf#u>O@Kgm@_x(d3lg%1$)VZeenP-8#ZI)PF{fz$ zz-I!fii;kJrb!0mW2ZD#wU9R_UcqMoDy1)o|304%V#|F7^2E@q>jv1}I_)LRn^xA9 zq?GWR>fa)TY7TK!2bgvrcyhM1T2|YJA}tF79retLVY}sN1hF z<^bTj<2)yy4-uA!ldnmN=s%x~V=Zv{Am1#9JO9{T817(e*zS@<+0`Mn_@s=H@ ztxmBckC3X;DM!(=M0;`yYo*(}{$Tr3KRZOB^sUu}kXN#KaK;UI;77 zTGdbp8MA`)lr>O(kocjyye<-!fhsXK1$9GsLenpGm8>(B&79rFD%spsb~mxNW5TXH z*5m4ibaCot#mbY-Wa|?bTghzE`n0*IJ|$?}y5Z5XYY?2QKZ$Wv72B>YF)tS#7Q4$B zM>6QqiIyJ;2B4ZKUGe-jWrO-Jg{@lID7EOKu~OrF$@iPUfus;I5W9ykw;i6?8CDt* z#7+RrnrVUECGj{jxX(J`V{yRXI0Ec#yoM>8;)!)-cPD>N!5k`;8r^{8nSat$Z-sKy z)62Un@T#*b$d6Dke$p`8A?on4>)qv6p!UznrHgQ(+F}Xw&3749fXR#U_V8kO`Rh{D zUH8}OvdcPWd=I|N!UCuQjBcYkD$JO5||ymQ0|ArMv*=&C;$SyYLHoXZ|L=> z>Y=(Vq(w`ED$zZVj1rB5gQt^ga2+@-e!Fo(utRMdheU6v%vD<^9w^kn(XP z1{{lvwt;KGh31HTl0{-^X?@zjf}M|mJek@FBya3y4moEWBu?aGn0Mm2+~4l^XMMTU z1y=!vgE{3z@>gQ8>Q1p6fZQvkGz{)q>2?R?w&ZV@q!f&JVp>~>$CfgmUaPMu=E{${ z0FH=CyEQCxu}~KLeYGXQOkX2zhQrGyRB0yw6>qQ0Nq>nCooo7PS0TlNqFr0u(S;ky zT^w*Xc|V$dS;^E)OnCt_faRRbWw`~B-W2%hLgg<%oxr6fGa*3{YFPx1eOmjX0Pf?FTwfCaWj(840L9L+n#Ja}xp3R33_9*vwE5&~E z)9lDD8_g=QTvyg>O8Ok{Ch5sWsYUf7*)UVB>YGs?4Sp=3t`B^d9pArv)z?j^M~UKg z$#re791xq&fKA|!lo9EBU4`Vh`#`7iZ96hHEqSCG9uPn}je>5$tE#O3(}19+=> z7m9hx4W{H;lWZ|rmlJd*6_R90W>Ha=t6sxbei+r@QhyjsPQM@@yRT(_K80$o13sQ`V4LiE-YKT?r0v~JLV?U(MT zhBf|#;*GpJ%BL-}C4&|QP{3KyU7Gp<)DxouF+L>&6BTK2@YJ+(^ z6uOd}pq4gafTRQX3MXepFSv;BW5ZWQGBrLK;*r%EYwxMK9V5IQE)aF28dyVp7*9Y2 z>1&*;cE0=Xd1%DQ6&@j8NUYU^9lNU2=_;eQj-h!#%>};Rj+)Jx;(g3e(B}BOSFb zw%Uyr*9_$WRmBu~zksuTKSkmThu1w_Kc-ge=EU{}r|hVgM_v24l||Ukw~O?PfB;se zv?Q<8N0I!bj?a}f@}9{SEr)|LS6wSDgdX=Dq{;k^k1(skD<``+s~GePPz&dJYEYnx zB3!O_EcKtsli49%kyG$YWzhw#k@K5iR4j}DDw=UkL8l> z&$(k-OF{2GL8rQvKc?xRoDn&$YdA5w^sD%|_k7aJrO;JCRE8|CS13jkTlKU56gf%c z0I<$lm)i<54`P=2SZK<60EJy@G7(F}yy2+Ab2Ra#&@-j-auu5b4iv?$qVS|V|6F{L z-@WvIbPoLLV&#k(L_qP}EaL%g%83~+9`X?t=Hz17N|Yrqv|Yc=$mik0sS}X6fbkS4 zYKq*fAHz)7SN=}6xX@4NBTm)Oe6c+1I-@p1T{KE_*wA0{N{N%DovkCQyvs`bqlD#B z*5M#TzS?nzndh%5v8xeGGO7Mq6r3$B%`q5v~s zK4<6NPONxQOT(TzJjq8d;arJ88ZVO5^&$BVMdR$!V)*@fzFkti>QCA552#{iJ3Puf z$8-ZKOLDy&T?1~lTZ%nEUAX}v#7*M=B6e`dx8urtfVRp< zwvfX@)Fa8*Xj53pB(qpqCmUH79a^$gnrox{1&#DlC3l~PBu zbG$XRyLm@XxNNu@A-Q0?jQGfQQJY6$B;A3^7i21(Mp9QXY~6lm;y#B0e5C2gkTcZW zilk6eXxU|wpitEO-O@{M$IBY*TJ|e%+=6DM934ow>vKyLZK}9l^;)#4S5L}gdfUDE zG|gTL%##At+CS9P++ImgR8wC)p2(Jodg@Q{j`>a7OPQvMT*Nr4#HW6`B6nMwDm*`W zw8!^z3En`ful;@Nft`0az3}_VxZ!iG(1zfWLM|6c%yRd-T5}Y6<%%Jw&WUqqE2dDI zEKzerG~lGvP}OnDWiAan9302Wm!=wam@(a2aGT0T^j9Qjd>{2<*9URP$W>++kZN98 zTA{r1V;27^R=pK{RXwyna;|uQQ$xR>76%Cbqrf17x?~QjprmqNP-rq;gV>?O;c(8G zD(RlXoUPew5DLoOl_%?RwYrkdF6AkR#*??RGs$VnEh-pX1i;CL?bMH4LH6jx8`T|b zhH2E{#!;6O6$m&yg`8}O@}o%iD%M$uB-NxqGL@RH5R$fi9!~Em!=!h#cwnPTX7kL&` z?}X0p(h!(<*FKWdiQg8a8y+`7tk{U1M5d$(xZN7Dq`O_NFSsBZmRBZeUU=3+O~ZQG zc*HhkBVtrm_?wHks;dZiG#t3Q=#N@Ts;Z8+R4+SK|Hb!6Ex6TTm3MD%m!RoZOm9TPTt!P^eS$SZ+IVA5|%q8cN`E z)ko5dK7N`4a&P)4?J?E%O?ln9I3Mm=LsV0J}@IHF8nlDyRU?(VgJ zu37OzqSur@l?2FUOCLK`(pA}T^!F8=Wz0MaO!7F^;p9*X04R77V3jEHZ#Q?ftq7S7 zZP(pw6D)85AKjq_dEP!KNVcwrbh>>3`>tNNTSh zrkehc-1$d?x32gw8Fbk)=h6(#sjSzcxF>jn_;`arNHrb_=~DwsnShEbS7ohvn*JJv zhkVp=Wi{_32scA($?DCzXQZrlE@xXRFGwle2%RJ8-`)<@w#n_eNm=F`3b(6d$j+lnnv~iE3{%9^kFINTiiH zl>+F};EKImUcqsFm4sjKf5u-^FT(d$79wlU4T@HI{O0<-3ffUXxd89{{mwQUmYycB z@$$0)0ut>y3Gp_+Bl(%oDewb;$(TM}PYD86=hW$@y=0>E`6y_x0%(QexD>Bka`K z)lB}W>uDmt-1!U>xYz6_YPZF~S0>KBWah2$ZIfr86tsA*YUS&&-cG0!hC^<2|9ppV z0g1ydlc?r7avYOA0xf$k&@KffS5SW?QU3Q4r;<$a@tau#HJZK~NCZAB}qHtUTO_-)2|P}Lzd>$1GlQPOOTq(K7xV0 zL{&l5v(rVJVs)xD@e=1+Rnx8N%kriZT9Pg8SX$EeQ8n)JBsqo(XlA7x^-URW1nRlY z_vUwT6N|UO{GZ(`|CGkucdarF93u1ShRY5>`b)i%Snst=?Xnb|lk(h@$SJ@S>0IF- zL8^YOclqVQG#>NR+)4s5NQ&RClDRx75(PNh?wwpyZW#q-G*M5qT~+RWI(gQWRGvyw zswK|z39JG}eYbmAmS%irzEIU{$roXinKj(F{(=Sa$!0qHL9tCv=K;%-J zRw;CkEO&2O(@vS%s*z}4S7o;GM;>Rd%{7+Cp2n*M)$I5w@5eh#e2BJUHcKJnloR!cRmH77G)%__1F=l*wNi9nSkU& z@f^wuMc1A~%h3(qXa#>7o#S{b*@cDN^eDbXW&0&nZ%R`+u@cVOjBX$W>C1OsRS4Q+ zH7Y1HgHIOLT%-@B?VLzBkS3~;(5N_NaX+!NWTWBg?jf(KDmc%}h|b$};Cw0ZSgP#| zZ6sUace}%JdC8Z1E4s!g{J{e!)k`q?Y)Do`NL1G|$b-{>Uy?OX*jw3n{9pQr^#KOl|PEBN{ciFc>XqC|jBiwNy#&@JuT5u@&B)`_%96b}Fn*Y4JxUYY93cW0+ zm>{;i%(p7=96d5!;ZtD?utYKSetda>{88FEfLrZXljL?Q=IkIzMkiR+Mbb{?>vAgD0nmD+J`kNqU9|$6Je3n_#{6?Dk?Oij2K2bLAM&rNTOKehNr~Ds^s&NA z=XG7wDdVvf_UhZCo=oPj18NC|I>#8AmVjl;uM+)m8#;F)LJw&pvh|c>a(J^f^#&=v#A!oA z;l{HhU#oVe;*=_}?gbkCABo-DE45^YfRfc~c z4!we=t18!*vuaR>f2iSGS0C)MF(MzwWuH$0$`tC)PZ--ek4?Uz;qE18PlG09w3I<4 z)i;T?Al4~x@gq1E7^_uy7V<;s!jJlKC*o z8O2s9sg^3+X0eLj4}d3F{aXK3M}Ye7ay!(*&Lh0cKik*?KqYfuL9vj^CqB6T1PR$y zUN$xVaw~`8TE=`8fP3wOfY^x@qY@z%40Vn< zHHzXKoNNQL2m{Urzv2G{FtvRsSd}m3r?gTe`@UJh70sX8;iL~6eEJsgb_jdD6iL}z zuXnD~xjav11&%o(zy@$py!V7Zi;5EAYWBFmPY`NaL-1viE#U2`Qeyd)Zz=`}zX?uG zCM!4vv0ee}t6lQ}3vLZpdzo&Ah#;oU*SjV6ras+U<+=qM{Mh}Pd|AatUErmPev^{K z*R$0D0d{k3pUlqNa}I{ zno#35mrAUxtIG8}LFzh^{Q^potBB6zsdq>^l(41ZLzCL}i61ZRTedA%#SOUqE~lie zAzCQD7Qor7BLDR3DZQ|TukMMvAj)4Js8E^k>tEs$o%QP_j|~$pF*=^BxlV^|||O(z_c> zfFj6HH?FYVNmHGeTXWj5OC_&xov36SArjwhVG^#W5B2KdTef}N`F22BsFL>M$|iBi zrJAPR$ao!P*b&uJqN>iwr*#QC4K+xM+BbZuFq856!-4^EBWs-g?qo< zVn{s}{&C{^yXNDXp|TN;3dgNXUa1N!gn&mQgfp&snx3HJGV1#MgwBdJG?j}l_mL>Y zIoaL4SAZwACWkF}P1B7cCCW6^qS%y@LAq$}<-6<2$8iZSG#Z|pMA+^}l0G52KPr>C z3rpPdTqeakfC<;Fi-}Htx4Nj?ja#l&*PD;H{EAA!@NVgP7Jv?<-w{%G>qJ-F#cc{6 zjgGtT+Z|uM?WiO^KoscT6|3U1lWq%{2)(4AxpJzG27&gioB;PNp zBfMoV5j;V+RMhYHGe!Z$Qph=KcyGIsvSYsR{IgYUj_4oH)Wwrdg&$T4ZiMkmM^#@c z$w8&`CI8fu^@Er^YrE90khCUe_uCefj;O;q&O!6=v^A^vm-I8UtuKmdea?C2)nwT& zs;wQUNr5;nX1iUnR~lfd0{Py~Q0(q$Z0`c{4u=gFxxOb8-Icalg%3BKUQF(&G(Z<< zNuaM)lxlha?=5ESqD2lDUR^cap>J=J` z<;?2Vr^O_}_HtA6);H$9eioU{Kdye|X^w}8AeYoA(VL2iu1UEOb8GkIx?g=Jhl6U_ z`1~$omxg6Ur$5I9{B8X&>@gBs!DROx>u6wmB3V0H?&h(dD6T`ETpiQAh9v=EmuTwT zn(q!|)>Btn_8m|zaXE%-muDz+X5091h=@A(QD3t1b_&77?S!PHC8d|!U22k2nrqMT zT|@fAiB^)ULX^s$AN~&2e~Zq6N{yjk`q^}}6PwlGESf%f zt@^9eOe5*@V11FdW?^JdS2npaCU)KqU$q5Z;J#7eNniPNaH?v`3?=!M^1t(>gp_Sd zBny4)+Y_l}ebO;e@lvIeKgul<@$HVaZ1r3BJ!&VFB-16sTH$LiEyr3*YCW3N%M5}U zuX*15KC8xCdC2H;sAC?z_t(DrHwoTNy|nsO&40hPC|9pprLrYpj`G6G1s>|Hpky75 z(KH|Ou>eLhKg6DmJ|rW$bW_%P)DhXeb`rf)U3Dn|nF;CS0%C9(2g-nh1U8NP{^?-IwvvPg#EQG%cC2Po#;Z^hBFWpj~W&DT&RdvOyUJ!rr`0bf&98dJrqSYMk> z^J*7yU#;EL=z9dL-pV<-wBN%K7$9B>HCb1_rZt*6TcQUwhb2BwWoaZEdv0O6QZ_`CP_@F%GRVqe?;OXTRe#&!ve*EDuk zO05f1bNJa-aOlv>kObz2_fjB*T(0>Ll|%+zEul3L<;U*g+k!4Kr*F)vQ|5Xo$ZRQ) z<=tp3ae=9%ZOsnH=@c2D-&yl#<*VYN)>NvJ0j)SOyAV>k5%DpHmsf7ywmPM3N?C*3 zA>*mVc#QWKPB3Jk4FDj2D9%YC-4&Hil=uvQPbNWx;ixZbY}2L1v+>d_|YA+Fu& zXVOO{$y-f&@60e82>Vy^+|BJ7(hat|IrX8s5X7g;)~w=VYN-JkJ{R!F3|A*M@U&Ff zHlL)e)rJtrvsc%x1UV%W7sw6ZB1z=YS5nO?zW?B(sn1nA8Im{`uE6%@bbj4EJzDD2 zpAs^M`gO(p(KFdqaY_YBf$e6=UF~!N4mgA>yatP8H^(W%eZ(RK&_6--^a(MqaB!mF ztu|lPL)Khcjifw9PNqkq?jS8Ko2ho(p4bgLzHa$^gx;sfR^!+aT%7*8gYQQ2v2W}W z>P=+0&f;dcu=`$joOj~9D;1>iBd*|7YJg`iTXFNtf+|WgRoApDOv;&+U~!Okx?Ci| zXGmw;AHFOcK{z~&5t5Mh4d+G0ds|tOGjHpUYY>+x*?Jh5f}gqZyl7Fnr{i)8_13Af zoIJ4CCF1>%?%Wc5`afGlz@4srL|>&H#OQkw442kqnk#WCvM%r1HQTZU-h;men-uweYPxUljP6Y+)UtVrUGeT<)@}OCd6= z5;=9Q#y3gnXwA38K$L$(5pZzMO+g-tCf7ThzD$aWrAZHyExOY(~WVa+x+jV;xaLxN}~DNx?w;`q>@||?x3`NePW7XS5mc5o_zty79GF! z`7%0^O7sKtaP8L-Z&UrNDpkiLu~L=Saa82Cv!XQ}$$y6Fqa2gRf%|C$;X;v1=zbL~ zbq&6`uqHdKxa6!%6d5?bAMl{*Bqnh-99xwFSSorrqSYaDt3>x{l~{%tRmXVH?<+4P-TUsoyFm`2ZP>@eN zb!+r1C}AV~#EP}DX6VV6%mqqnEc}*CeEM?E2wxz^A*Gl!Zh4@b6$y!yDNNR(_9=>r z$wJV~qb66#a<{R<=WT!EBaoSRMx107-_j#~a=|_;53|2{VveGvEw7PyV~I=lSmbV* zyis>)2YkhmAhswTd))9io`^w(7W#vf5cLi%1AtTg6t-(rr}MX*KqymhP{YKo)r(@j z{Aqytx2l$6vb?|J&}24!4&|Wr9a(K$bvTltZV7bpqgX_}D|cYtUP z|0GM?rYQyHh)&Kp2}8G@v_-)kP`rC|msW1l*QALhbzT+~lC^Nx6om5{gH;u?H&@Jh z*{W5wFoje29Ky~7im?x071BywHZeyUAaaMA-691i%?-NVnvc(lDASd*}p;(pAYvgu3!C_psT{%I+q5lk@3sGQKs%C``6yK@xIJRh=v;Bm3?s;0QXn^U} zOa(D~j#q*>&z-zfyW`I2^1{h~wQO~iamNm|5;Sg*P~d)w-*t{!;t%s(`8|N^K6J~J z)1;aJvFqsW*=6kT^Z_RhR!OHL^q^Nbbpb=SzMijY6z|I~aRJ`On)8i&lS9-Z?upWZ zU@86>&rkHpMysSfor#p_0vgJ_5V`}+C9igi%=Z-tdkGyzQlEkROjtl9e1zvzUzQ!VQGWg<9(dXCVkFv~% zx`a;Zbq$C3yd_sxt@PL5_z1BPvUIq&qhR@aYeo7PJo&o-TW}m8%T;aXWW*?C2!L?i zqiyS`P}V(q-)6N{73b4z)ZWZP?MzKu^rG7LZwbZTv$s8Lp-Z$lG|Ncla>{M3kB9vI zRpQ9X2IwF0vl~v-*aT>Iz}wLc4Rot8t+yPQI_%Nw_m|r|(@JX}eJD z1dS4;zt_bTC599Ke_e^St)s#Yo1;JQ5iTS3nPKpBfri8&R1Q3Cl7oZ+4MLX#PJ!#G zdGKE-r;?$s9le+i^&pjr+&qpPcyK$sUTUFo9<0efex#(q5PW<1G>iP)ocD$XFj1ZI znUi=(b^7kO1@w|)_-TBr^DcXVon*bqPAdA`$;Ai7n=gIiIjTAX+XRRf6g8fD_FZQx zsrf+JDp|O@!}aAkN(=R#3dH`&3KHyRRpVu>$MIs)TSr+Mr7-y_VASbMt|nH@$B9Br^2Tc5m1LqE>1CIzQ!!fMn4?k*dRr!ci;c5z<5T9$R__ z7F~b=vt54yia#B9@|j_O9!v8s>X1clSC$pBBDy!;J)qDt(RVVjsz+ZYMR18(`6TTh zo?h0_cDTv2WsUREj}2f28G!AiAJHg>0Z2wLR{0meqeF0}u%OQ5-vXF)RoEUJYt2c@ zDd9k%AL$4sqw7;x>yl7&xt2$%YGPLqS%Ylw;L;Ixs~)N+tkqQ6dY?Yh13Aj7;TKoj z!hdlS0xz*~wyU_~gC+AR_=QWO&y&*)4JkNDRCU*)I;bP7So%CfaT7D zpy={r9lm+U3U&cSdQHUI$XJJP1k?iFsXRI%*c|(`j7TMp#?wda)F&^JPH)zXBk2i5 zrf%;3HH}gD4>3<^GmtR(d9cb7ONYy}tPY5N84)}n2UjpeEC%AWF#-HsA*I6BM-R5F7K${ zp_cCwti6Xp$=mnRgOFfl3d2)<=YLMlBt7YH zLrdJIm{MM9lw2A{%tyu5HqTp$M^`MCkMPVTjc%(Pz00-iA!2GnT2#%R%J>4hw9reg zfNLar>E|3^dKc|A6p)bFDUKMTmN(T0# z()i75FC2WzjxY2VP92M4N}3P>SMTJL+hg_w)r}--!zGA2@caa~uLJJn+{b zrRi}k>hS2o-R&U`nZz1`6S7t5w1f8z<=;D5^^=IO%k`UCQ)C>KH)eDERNN#E>CTs1 z-}H6UPk?%$X8+yy424q#1P!pjbL*~NIuGEAsRMI3u7?VpN4Cj$dKE5HMu@b58F6x0fkX4$n z@@RVxJB#&LRwkfu>F%EvUGE$W&uGBF+5T4~U2Rxmy9WAYy<5q~twL z)qku0hXUS3Bn$A%QelA?!q$iL2qr$sQ%kUebT+_+ODR;N5QNn52MC0enhG}my6C9SDl--C?+fX&h*oT>BrLAl{`4Bf4i;8 zxtzdPJz%6SgPdJwfAUSaCMtaL&$6JXY_viGF3J~fI0Ri8MZG?hGS^g1;t?-+ zsgBt{D#EbN)l10U*5}@OmqWg-5I#MT<&3+Ac+tB0rb> z-N(j*PDgjol0&neD_m&aY;SgYhH{{wI`yvsC?;zaH#KV-Qj3y3cg1%qgW z^{ts=4>(f3tYD>XS;E$oO4Si&-05|I^y=ru(Hn8{_l%7l>rNeXsC8!B$@cGiMIT)E zZx;|}CLG#eYtkXLR`ic5MFXVjGCvy!lEUuMf!vPCkWZiT|Newdyc}J=0bj*5*JPS= ziwKjhx2VZ?lO!82`MjKrqnw2sNw>Wf%6(Itc1teQhOLG}Yt=#|m^?wpaBrMn4X&r^gyB{C2Xx|zL?sWetF9eNy`H35U{htSKI)p5s8?@Ex8VZuOpRK&LQ~R& zxsfCDsKFtzm2@eyli2O(K#c-TR;s%>j|(^?up2aAhlbTZTK>ou((c69Hy`CponTw- z@W@tshbyGZElcWY^)^19510M{tB<$34)st?CVAkT0!I&$B`8U6WiyHkHLa@*s+Oy} zz5QnakhPGVfgS6ot&hzu{$|apRH)0t^U{1nsR)<;1^F(n+KKt&DYBRkkE5~Id!cwPBe;ozL%cU?MwO9KU zm-L)hTr!r^8+INXtgnCq6DMEk58@g{W{$y7kNsdO5-kkR&t4_FHluXtm8u2aCRl?W z>!Wd{_NEdlRZj6^I9`Or~KX&8OI z_F|4z%hCV!D~j=}r^-oRB*fz$lAJ}3a7ja5i7!Oq<#9AB?q2Wp@ieqZz|C%Y;45ki8_G9s}W=p;D?imEThkmsiL$7fI?ylv8`&NlWoE_ zM@M>PvGKmB8=?pO2h?e}c>044=c3)#|M*rIVGv15IH_onev`yjsEm&joZ>2@$Ia|j zpDTEIwp@sJO4u$=_;{Bnn!BgY#U#-ZRQQL^$NhhK7TMK119TPyH%0aNg#_1|-0fGujJKpyR@zpR6*OEH^%Th~%QdlmJVy{X>i&yA#;I#sEg8;Ta@;BM&OJUE9% zc@)KxBq)WW3OUWD1V@qQUbK&I)$MkRN9lxIRgfSVh{O2ED=B7)UA2bnHQA$9B<<)c zl#Y5liX~|?%nr7AXE24oge+jm%WF&zr$%O-N{V_)`!{sSqX<`+Kpqi4s&pmV$Wxa@Q*aU| z->1OiesZUb(#?~=P^uEJ+v$#WU5ZW0s*!gF05r|$FL^$xJImF0)tSm`UkuDSsCA3e z1(C45m-FgNev(3Va!%!=O$SQWzZ`V2qZpgm!ifXzdAr<^R9AaABP6#;##Wx6xY1SwllFO))Hyy1w`n6H2 zwSeNA_g%QLI+6D`)H^s9YDiCV?zKJ6k9&$hdg|7>(!SJ-;Wo!GV7&d)BJ~5W5H4Jb z)*slPI84-_uc^o?@Pr4;1yE&%Kky0L&jzR7^9JF%z+>+^ISdL#DGQRW9u60Vqj86;cd0E3Q7N^z0`oaU`T^h? z-jVGar?VdK8W>(BX%$8#>XB0}o-Qa`iMCf09+C~me90TSw4c$l?Sy~i{8Hrsx@TT< zIOV+A?RC$>(R+Y1;&!PyE}rz!C5uvX@SwqROxlB-n_wvnKkKjln{WKEa~=L;}Ahfv5MmqONl|Hwv`^@G$s zV{1*%98#Lah=ncB_l#IM`uz4F{prRnwT8BJZiBh5K{~W3Cz!c3D=s!%frgqrpa5<+ zus5mnpF+G4;3(@oWiH9i>YscB=XEgC`XaLS56wqk0YfQQlfrwCme8~QWF67 z=;70rYdG$CWzUEW-ofveiS+XOY_+@`|CFbq_tZI;=6y%WR%JqKaN_SllH*G1FzVu^ zdp?g20q)O&5J&{pJxM23VluCu^zQKUjc{)$D%OqSXW)st7Z>c>2fcY{{*y~$9VI8ou z84UT0@=RSOo?uGgnjSS>NM*qL>`9keZMP{-p|pkKQ$B@H`V6s|nB*qbPbrl%9;QTg zpfsu99B21*M5DX}g~C5FR(^SF*R7?BoR0>u&7#jP(`AJurxbd!Yf=;J?oWWfuUk5k ze7_v3Rf9vlw_~w7xs60uYk}{!?$z^ts8867atQi~*R7j7iL^OcCP4Gglau4j|CHAP zg8I#Ng(pZIt?lMNRmM~X_zKxpNMf)O}U~#iSI``w)q{5?0&hwAO8!(XXXJk(&wXu)1nPNOlQe zx-91Q9Qg-e2ENxdz#Da`*`7%CS9k{efgAC0?6#Jp9Iu0}a=sL3z8_uiUf}fR+f=!bK{k9P>`E1W-C#Yy znoKe|_Z5VZ?{(JzsN$gfc0n(G$3x+EQ}#(fzlIj~ArLwANCHA^HTN5Eh`aAvln0x? zKjmSMez}~}b&Cq$+G7~#V2w&BQWmC6CA@%9TvLj^C8@*i#pe*C*;JGD>6X5#VqPPS zkN8VqX{wj4zdiq#I}e%&@jEBf`Z!awx}I&^<@@G$yWkncJr|pd?YuRIP7e4sc%~P{ z7vQ601&?jYI@NPkO-*RkCP0E)nubX1(yXp&IO62Yb$QagqfM)A{y1-BIw=ETIy-y~ zNA8E&gXYFM6>?s&)gZ7l)Ky6zHHSm-Y7%NXC`hsr6$I&0yFQ*cpdm~gc}V15$6{?b zlpf&M=EGNWdb=&ETt-#tIHXQo;W0Szn^tU_>m5lFCjo)qU9|3&7&D|2uOf$~Htvl3 zc+aQwpTS5{(Na40vI1A-r`aOoFKi8)DA6TO@^xI}r%Kd*tMMqG+hMA9zTXvc;|6GT z2YAIR^IB8=Iee>OTAea$1fy}wbiP1M)@?(JACftUVx-orBBs`!5@{ZV@ZOIY`z#kA z-4_~F+veBl*NBbFEw`PcuC`XVZfU7qV(rOqm6DvSOFDvWmaFctP6yddcMhhK%CUoI zE1aL#Lm7p<*U1mc&Sn7f)A%Hs2Jwc!uxioH%Q{L%wgU7cihmwjEG>2Qc6bhj-|sqO z<;KS@kQ=2oYKFT=Gm`^Pd#a!7a*LoBbQ&sU zAqi+i=+<-T;L-1mvXqDx=`z$ zvz3^cFR!}agCx5&_I)J7sEupIAQQW}3QsyKpV$2fkF~*R(z~qM6k0C#YB8YyaDUCz zqN;0#-&AR-m$Ll2>zx+$s%O29_`?uzwXYi7Pgu6b-+ErfB5u26{1I0w)jIvkF&0qXwS%Fz=Er?L4Ti!-ak};Hv4l%~P_gYj;UT^sBTih3=8B(p}pl6^s}R zf%}^bEpo2adJMTKdtzVdxR5}+-n_`qTIr^A-s;GoZX;No{70d}qI=5ZuV{yLe9M|_ z4i63m-LQ3iH}@KJyW$}}9D^wT3{9~THRYfyo!hnxbDGC?ow8nyiTTBg=-4P?TmUab zyjyY2bVvD_Gbd3^UT-=Dn1zi*&Mp}%$^5CLuv`_4QF(&OpKL_vB5H@YqJc^t*IUW& z$H}V0pC=SSK#-)IJMa6GWo6>b%0NB9;ja)qw724)mrfj1z-jbc6oe@fd;px3Uce=Q z9I(uNZD->o*&0hb>Qcn6j67GxaAdP4X)iq0+gyGvTae$Bw+Twj+7T!zIBpAUU3%Tt zal?%on<%YF^XFJ$yS2hpVW4btvOEBs_HGsuLxY!z(_st8@g+t{NG?n;b|yP#S==2r?{(%RQ9Uy~uk?XMK8k zB#p#55FC^%t2N8#Esnh$&pQ@>!v=6_A|(N6`xsZW!K-=#lmbPEEVYBcecDu#ld~cq z+;)y8hhB*5&J*}buiym%w6)hCMSozf0mvr|J#Jl4O?xF^gRd%+j=?a`qP8dg0U4`L_ zyngAn@Q-_VfKn>Tu1r@@TEhH<3t`SXQrGBU_qqpo7h`$bGQIS^3@xzkZhZ4P+adDWH|JhT;HzCA)GaWH+t^&tuQM zH0?Ute^QZ!!W*B553Mp&QjgRwp$W`2X+8sgS`qV>mT6n*Lux(SZS&`}WIwCl`+zL2 zS=V>@MsE48%BGn2IRT)w%aRWaE-Y~e)?G!JUb-$$Dr~in!`eoTATZ2UC0vEWNvh!; zSJi9407=b;OC~G%I8-S9z(;shDyPgD>Xh-@yF*YLoep`@(s~&I z^LSrR_$bIP1!`Zbc!`D#7>YDX0p-VfTr{pU@J6#2X~cYX#}$DWUiV4E@Ka@B*)2e?%(jPz9fm?9FeIG5;xnY!{ly{ylVV6?IUUmXDd++z_U)+T4oJ= z)i1t6Am6CZ&JR?&ea++9-bNjN&@Wal7rD z0lkP-O(@WYV5)0p2 zpG^!7Mg@_KOG7znpFnot7k=oJpN~?Hs@^Ug+W4x9pTCdD_!6=>M^6No@c(}0$GYYV zl6IjVgkYuE-%q)uY$fqp08c=$zZ*OCJv?siX{$GHJttv+6xa5U05~V49$q7{!OiB` zDM{brFw0%@u0u(43psq~02G|1m&*@K)U4v><0>b3t0f*JN2=VdlO{TicmC-Y_SSXC8ws>VaY?8?c3oq?Tz`Wgc#d@_X*_or~TN@OsT5q0v z^MQowNkhz~WHWVwg4k`x8VZH#estAq$KktA!77@v=J3?Hn#=d2%!K_`>K4B?SWq*M z-ndw4y8yu#mVs|m%RNJfd&Q%{Q+X7Qr@9(WwF&rHr7hs%NBKfQtfJ8Z%?u~pl*~aS z`S0yg|G-CRNr`jb=@e9~57gkLZ?0@rS)3$Wo+G8O6Upw5q9!GvI1(2RRTI%mq60O9 z3>j%)_tE+)DUzfWuGvVds3ig7(yQ2;tFHQtM$aGk2n5c(%Tiq7R-uglPB15|D*&U7 ziG58%kKRSfMsm&Vn|z$Rq9OX`ayMvg|mRQj!Nk|I3)q%P+?$D z7tXLb`U4*!L|Ps1*mPbuRf|jJBm|JCZh~XKgX&vH4wC(r1$Cyohu|3ELbo^ow?2~F z0N9}Zsq?X2vzd663GDFc{IjTBh>)^bDi>LhsI$l4_y|{1ZfkYhCbqnIKwL>Tsld>s zDkv!!)mzrNelQqs7g&H&PBEVnVvI>LeA295!-M+?_XyG|l~Gce7g(#SnblQt8#oK% z=Lyl(oH(G=8G;s_Vhi7p5`!9A<=E#g{Z`W9(MW~xu9W5LK*jP%OL zD%9T7UE-xG%PRygROvPljM^aMrKwPIc`M{bkB)k_4Rkl}MM|PSOo4p8);&c$xTJNY z3!>!DyZ22KF|?svc7} z2?kL6sZo)>tGNemfF?)D_^0AfK0x(FBTSN~2jHXd-rE84`*ueOMRN8gpFi4v+;Tt3 zWuNQ%-2qpkdite*(sH&XrxW0lV}I>^!(~JBUvAE&-o$T07ecxqrL2D_$A?!uvFD2l3JDnG`vVIw9YDTr)f1j=BH3QfV86X#ifQ1?|xP-A}N_j_A zfRY;-H{!~Q3Tqpo^*9N{n38$Cyosd>H0Oun-JvP<-Q_Wt^`toT#ozm?PFMBT{1|MK z>rz`M^y(>owItL5waFhnjev3}Clf>kT znAW;C$es1?J+XnM8<`~XrhE3YgmYjN5XcJ}YcketaMrHan~uQ6UdytMpVXDql*H4L zBtjN-=(L}%nr>450%s|!RTm+Y7U7*Y;sS0aeUWNvM=Mj}?RRO?d{Wbd{L5Px2}RT1 z&=FbL+Mkm^8RPJK9~oORe{a2XdCg$#tPDX`bYDkMK%=RMG>l-_;=tY;IsryllFPPfaW zbjasu*S+SOb2rqG{U+yM2TflDb-}baa-z^Rcjt0aJh;5s6iJj~GKcyPi!@P+Hn@{t z^J;^k?2Z%IKu|o`_GmBJRBZP>fgn7e_U*_%jl!41O?A4SumY6O8ta3Ic;vrYSrBB*b++su3ElS zr;l}C>aR?dx!-j-hU$0OMd?a)Bue|FJJ08?fyu!UsZ%+};_IJgtqENEg7h1|$(Gft zh-LcD-}nf^ZD|J@wyIM3ebaxS^D3FF=*gxNjw>d1A%_^%fo}`@R`>5x^^m=!8m~Nc zlY_%jU1A=sK z+he{T>F8Wr&Fm5VH3e55j_wCm`EE((=?nW-1DBreuPTrEA;@xBh?}J7m_iXU`Ci6_ zSgca?PboEV=jX--m5b)AWK6!5Ue?yP-2eBz?=$(veC(hc3h5``SlNDwJLB}7Lk)j$ z#`!-TJfx8A(xq6V1F2$0N-DZHu%i!&$j;|_tCDgW1F2lQgouK!@#GyAv-Uz|9qE5% zVV&gFT?(1n{JO@a4yJqM&(VdR>zs8FqMB3#PTdB31^nA{gNHOM(%HZ?rIb1NmIuF; zr&z;{!`FP&Ra&ZU=k=6J}=1ZjIS-tP8`PBT?! zUd5SpABpjwvA0Ms^KChJp~$SNNOHj5U+*yNlD?ox0)9Hlli)m9vWr zNUXHO&y49Ns&-;&`><0%DlU zch}55r;>64bovRs+JJ3j7AG|hWFILC+MM26e-H_XUGHPc(wv_1A@RODp@*{gCm*KV zf&C$88tLOr9C>k%H40f=vyP9nbyv4vZM+h7G{6!~D{;+}`Qao&U0w?0a#_LxTTPE} zsOMWOYKWlk-pVXI{G_i|$?mqn$@aD>6pNymnF@jP{Xx!}|DE>ne%&${q9x-TM+GSC zfPmapbdT6dI~SYTYH4-O#x-l~C~5rqN)na_xik#8Os~gsZGYik7VIt}?`!45Mdh45 z(sRJx1S&@pdKeP)np!jRiXQ!fYCB1j_1x1jGg5+MdU=6a|Er`>9o&By~!QBBVUW!ZBSuX+Lio^1&MVmKvl&2H|N z!N2E*Q;AOvG^wDAs~nsZE$+E(#UYfIBjTE2xgTUP;>0@lb=uXJhRC)rg+kgXlHIxgyFKbj)S9WK?yI_f7X z($n;*=TAs~2uao+z>O?&TiS;fy=0={>dd2Io+?spDfZW5zs8O6qtlVY0NJn8U7X^6 zc*xms8yXlc`!IPyL-FV90lQ8!1>wL2MUIGVa20bB4|#_E!mE0=^svwF0ic6B!q4Mz zTn>mO3SIhIaXpjsD6&~1fb+uDtN6Yuvm?8Eap}FS!`9ukIi6(e3!Si z?hQw#6gi?4?cra}c5NGt&Fa(K&6#>3NjWs7J_ebp`>$U0#Hvp-FzviuQ{coZ1RrzC zsSJ}V^$M}y?@EgF6J*z>WG6NW6Ovx%d`3Eh{^EZdC+@LN@Z_ z62LtI^|sKE4WG5?kF)9F9%Ps>5rR2m9iVGcA)_mV)Sbm`*NT^;IBF|$?h1M-^)!bg zHuJI@S|XmJ!Eln0`+E^fgT#Kgd{qT6i=gf*Q1Wk33U1Y2s4MwXV<`#FK_asDxNd4E z-T(~lplfQyT_F%;vE$O^QT5s~7l#6_m#ztJmkalW9y(#@`F@Hd8AM*)b?Q~QdmCNy z+!QS4^fi@?6R=@DdU|Y1-WAA#@Wqci%3E?=#(u)Y-0E|*LQZfvYv&xouK{F3D)x%MwUptl88X1VZSL z#%=nE^EryQu3wk*NqwoSJOt2O^qLl_|1H(O&3n-AYwE(TPo-PcN(kSsp0!xg`6xu1 zYcMYGUk{m!+y0eOFPzBufs)Gi~k$6|NkyRZ0ft+3N&w zD|Ys3kuYrFt2bP9OTS}aT4Ng*} z%KCzXt&U8pu?xAByp5_qJC@d!BUnnd%WflG=dr!VMF%nwu(etyJq`)tX!GqKB><+I zlZ5c>-hY4h9mT$+!H|r4xhmb=O?_fWY`4o1Sq4m&$P0K^X2tc3<2TBaY8DvbhFFQ1 z&IQf#hi=DZfXXYY;*?}gWThsyRkAy2HuW`%Fbb6xd+^cdA%(k{L?A3OhH4NnsYN*5 z1Q9Uq%M-5CP^G_^Ug~{G!TJU;XeyWOw9a`(>WX)AKk{|DR!yqiJ}QhIa2t_7h?6`H zA@EYTZH1i)#j=WUj`M!T)k{~a>gb2EdMQXCGu|z1TMX31;3X-Vx|?`cmf{~g57!{t z)SX>rkRb<13y4wVt7*dhX#ETbQA>Is*H8A(Ufn%Y<#v?pQHJ3o6DQ3uv!ZS4;*xS6 zP5qRqpN?RaAYPgaB%V|ztcTK_?&LP&IY>aVt83ZpoWSK`4Q>+mg75z6$09e7*ra%z z{e?>S=e=`LIiV#~3ny7@NG`LAyUNvLFCn`_wucs#p95l&Npo4UdE};U#{B)HoxRQc zD-MoA4Gwd7b(6n(gEw`qn6_bGy%)pbT@&k}<&HwY#PzD{>Fq|E+mZx#ou@&gin*(v z7JSI;!u{jqjcWhVyiTDMzBQ$=rf9svq*Xct)F=_*WBg)2NGtG!Ss#){rJtr1%CMTvRWQvd6>gS1@O^dC?{j;%W}c;m9IyWEB< z_E)rOp-?$)16s7}@3V+4Beu=m5+#Z&L!(ta2WiB>OfD;1QzPLQ0vUH9Pu>Q`2pREjw)T{i->U}2SRC@*L7mI z-Hx7A6zxk&k+d<6qwczwMsZbzng`s?FQeufO&x-ddQP459)6lSA<6E3omUa_fl(m* zkLP_^Gy_OW=xn8+ViWo}Ztu%MpEA|?B_8!bDNs1g0CN*aVgl>;f}^{t@KMh zu}fi~Tjld6S)F9$Hq!_AQrwf*v$upRX`vh!K~Z#<2wm4t-%*uTZA>Zaq&V^YIAwZg zs2bEBMawi6aMeJa;?*R^Xg5ba^aTm`Q<2CP`nx7IE@;*1v${W=Wlhf3y0xa!2}GmS z}`P}X|D>Mft z{J2GfQYS(iMi0s!Izq~z%)Fl{b|6@<;(H+dsu^}f6F_ozPFqX^>+6J9sXo819k z*{7-n@tQQH*Rt!q07O^Nc2%iGO+*!MoOyprSagNJUt8rv^rG8eo{B>N3r@`0-8m$! z#)}}|-@!qWnDtzm%mAbV3vz^6I^@$7SRT$fsa(8f?<V=iRM?ahoXY!eOz31}W|uQ~vSUgq zQ-hE&s>v~VkR;ZcLmxefRM~RUuUBhQNkt>@swm>4=%LmvD!aSZ>-N~VED=Yn^*jAl zl?SX-YjX*4=_P1o{Y|?Di_)4~As`{VnBCpKp{yX$Xx(>TD#K4jR=T~ptj`Cpe=>C(!PZkKNT1Kd^y$hN_A(0j~{Uupo7bN1EnkvKsb1a_mN zlX$A4qL#MxSXG8g0>F~sPa-Z`DTyoktGd>3Ai41MeAe)`H7Q%%k?2my2+Lg&5AnMW z&)URa&+TNh-Z~K%w_UjMJPhLP&s|3i54SO;)DJ2rpR5Y~>yhKkF?)?nfa%MqAy09A}G@LAcv`urxpWMH}yRP%h_>` zQ1)qH$yv7hrj8JaRcqVmLHF=uQdN)(M^qcmIGx(5!5xOs!0_p}b6zq7^>4b+?ktT!pnJvOWFYx^!MdnxtS?nbpMXy72E89fY-jKG<-f( zsk&$s?V1bKmfaeVv6QYUB3IF#H_P8}Ey=TUNq?)(Wys(}Fl}NK8sxWxoEk`^DphN^ zZn94tT-2zh6phdrvp&l3d!CnW#qPI#PgUSx5XJb&{0?%@9#1905G#}=l-CB1Ik#-j z1Q?PH#B;xRk~(*3d`of~TJsEfq6Dp?pS11)Yg2aHaa)Q5Rgd&TdWgmGvu7r@4zb#C zKJ{ogOU_n1z6cpO9K1m4U>z{8>7P&)`f~LW0P1p2(n7t~pzU_qIn$+Fg@*Ln3VkJl z<5>Y;sm-L5E(Q5Hcgf*rlOuk)8VV*1#k7lfs;ljEYx}Wl|0r}R6eX3_m;6+f(%@Ew z)M8gK4?yE89M=q3*aYFMSB$?biAcVYWwlZ8Kp=85fCt3dN!yLy>zny0Nx>#6lQ!1HS*D&j;SUQwutV1 z7T#)B0fQ>Efj$6FMLTerfgBqJN{Sw>OKq@lRMY^%qUO3^ZZN5YG&p&Nr#>Dzb^VLKP5GljKCe+;8gSZiB+o-eX(aWe>+riI5r07|y{hE#OYwG4o~j=% zR3!>klH;=PNO`HvlC1Agq0q6`4W8=0O%ESw;1_?CDxwz8)swWZQ!Vn5_3|pw*a#7u zh?QP>S4-*dTcw&K7lz2lOVNV|V0~M2y~|W(1B_6~71n!^=df$6ZoRJlPzu{Wk*C#p z@HS4OC3{J`rt0Dq9Ggu#wRCDFO(@jPxD?LG%k`S7;xY&+J0nt&&zIn6irfLF)tYe2 z>gk2Tv)9kg2^T3G*xaAEe^ypaNew=E}xZ zshZgnEc0(&M~1#rG~zBX7PPSiF_#*npg*;)Kbv=Cp=m4tpRKEs_=uburBK{`d^yXO zqFMXVJ8&Gm6r?bJJGr1tq4?g-sJ%}Z{8S}T!bKxh%3`wW&H6Y1B=pJS%>WZ$?McAy9BvMF)$x_r zzkm9UZaHgYce(FwnH)-%o?Wp2)G5&?et38x0eTVYi{h)%y3v`LSgS$tr}m&S=UgKD zxlTQcI^$ZEaFF#^tL`IC#kYv41n3jevx+_g6V{eE=^&7wv`w_Yq%mUaUiWtWWi<9s z*TGJ@1>Qvh(HGD8$`JTXiAdz&WeD8&AY*oobVDQVSn-;I3QNKW!GLbY@HA0g52klkPi3p%z5@20&_Xi%}tbYmv z*OJ36On(;plOZE!<9#~fvyH($^h$*YY6>Hb?HI1ePOh$jJE9A78D~=DNbX8zMbBCi(*uu(`(y=#tbQ+wY{ zc(5kt36NH0rS0Gp?k$Kgd&vQhNQmsAt1btTQNn_xB`6`8jVno2VB`n9-M zPhbWO;va=VdkYO=I1y4VKSNjLJI9M4s}ozZK5IfnXBmw$Nk7>`RW=XNhEhIr>4{P? zd~kRuiP(kcq5b*+kx!)8{+8@htq4ojE9pz`Z;8`JU$5!+4X~}rebpe7Pu-TU-aX#Y5hc|t8-J1>H9?z0=1Bl$?0-r zxs%tW#OP;P3HnnhLEqxJ%is72gxeZ`JFCgv-qJYdpd_v3kIkR26e*sRL!S;y_jH4e zFsTEd8sM?3px`tKge>o#mV16G1e`~IzRu_4RdBTlyH8oV9;uOXQO?J}_z!Ft69Uao z4|%$|6R#3H7o5QK%I%eI3GMyEhf{ftEMI*J3Jk%p<3-|I&W1mGz@QeJ0JA83UjM5SDM zYfVv7j+H-v|C-4!Jj8Y6v}OA{>5rTRBgdzxV+o_YYmb;F5@J4{ZIz$b{WLsJH7Yb^ znS5q~0tJ2h`%6sj3970e@&7FUzYPgvTBd*HsFKwj{`>S>MfWQ`A#GSu#=>R3Me_x6}ZS@+pXYN zNugYQsrPtpX>dz7b`HL?wqSP+!fRDUNm;jR3}D`xN00qui19Khp+YmnouzU z)P{qE+nppkl*<1qK7K#pAIE*j;bXxYvUQ)DWHot~QcvXv+PDpA7_f9IGB>(5I{fMp zQzYI!s8A`dufL>WNyo>H2o-601H|0(`bB}qE(Ix$sBxzL}6LADgPv`z5j5Q3SS5rCPGyJS5S z%6N$(-35G{)Vhs(AQwkPm22yA4I&#gI&)kf>itRS7gX$a+7G8p9g;UmYn5lqwN>g^ zDdVbDmAW~F=oQ*xqKZZl#I@meZhau@;af@|mUNW*@)O@W%w}E#-`83DFzOFWND%XU z73T~=y`xT8cO6fT?H%$=Q&JqCmnUZx^VmGix<$Ad^%Z6RmK5E^;pU$|Cdk^ZI~qG` zTD7pA(L7`apGfNiLXWzxlm@pBQ{>U!f=+X}eZ`NtON`fLJGybiTjY<_M`cIZGTm?W z*jv5zhND>O?YTbicXdU`RkO7La$1J)w6)iKMd6-%2cWw-zz2CacCOryuK!}~_mAC0 z9VLS0k63_om+T!j66923cydVKY{h^QMX}4VDj_Q$byIN6it{(Nh3amgUDvP%hAr3zd)|tK=y1QEEabJrDUf-j zWT_?9o8TSj_~_F7rR+8U>eb=Q0nQA|(A{tD^3ycC-D)Vj`Acqg+bn*&dS_q-*|36| z4Z^Kt2hxOP#3l&*I&Lq4>?o|q9#%blIDtIEuBb9V^61;elWbQ~Zk30WrOUPatEQU!Ip=cJXRPL9a=5D# zwA-~#HL2Ad)Z$4Q@|X*}+mOT4UJfiv(wzJur@71mu&|7rZs0YmMV`;nZ(hw&2P>S) zM~fq)Pm5~mzt;f%)X)U5hxXlPqnO|3AOUR0X;=E;eyI8yXf%p5OA?VkKwA${#icG6 z+GmJopQhU$7s3}=xn*uO058=D)Yjbvyk_fT+79ROM`gXsKkmnA@KO)iGRB1>x$ zZ%{5Nwxk5RM)Np~xT$R^80_@%wDO}zEwx)pRJ*#p$UOo=9lf-5=`fPL(5q+KUZBm5(lRf#gxt#|Dw39Raw4h#6pLFGtSYQ4BX zuvNy~_M#{Mn6UU8#MvZLS%XWU|DWBY;`|r{$y*_N>wbCh@NEHouOroOO0NbV2IZ2E z+!JcPMPlXf-AYrt0jsixIZtmi!wg?%aGzV!nj*kF zMK;haE3-mPdcLzw%bw=swkt_`Ha@jN-uZD&&+XlQxV~ie=Q5~&WP|}hwVe-uwKx6TuF1zzkOKO95&!3;a*#RQ_#MHv;jD4TpHJR8 zX>N{AToNzaa@}N4UJc1;NQMI@D3q5E(MxK;aLzQtu}yFDa8yxAhfMA^l-fBa32tXm zfLZCCso3GwhlY-J`iU@!v;NPxDUSzemEKEwcCz(%TrjkU{}UN30$5Vb-t-D_uQA2do_R7vMhc z3W6O9`EHWj63p_=UQb}&?k!SWb$4%UEiR?CpO*t^e?jh*dPkadDbu@DdF9yXF>q(6 z&F^s;MIli~>k4L+r4WYxp0;F?yks>Ovbzc@dF?y2oaN}16=quVAvY6-%h7q27kk`x zx+pDsA$E@8@OD|@Kc&gLFDb=xc8#&QlE}JHIplc@ z&{nMQNeoevk_*kZ)wGeZxz{@O>5S{ke>X)4OISS-`Z?`qJrRFMn+1XTi0y%t|!(U2y zkrc@qRM7o5xtEk;cd3#*j?<;20Jy|AWyU@OH-R`*&$#_5Nlj3M6nLtb>sA;-vPjz+ z==2m;0uMjQtwp{cVCHef9}J(vsGQPP0n)6)j5osT0oJCP1?))YpY9a6KChrNM+){tu0NYD?9i09f0r*}B5k~Q~GIlAlQn0*1AhFuQcOmUm>QH9%N z{qTx@W+>M&j06XS`iElw^?QhB4nSm%Xmd><3_woJJ5W@W_h5S$d=WIin?rRy#3v1Y zvq6Ni@gkc@&2*&aCQZ;!C~2?jpTwj$!Zk*jI=WS=A49TgMg--B1&hze2 z*Y6)-d|wKsuDQN=_1?e?eM)xb}QntYv-W_YH8k1y9Pxg*8-&ZE$Xmy&4QdnOW3=dAhX(EE?; zpjJR~%aC%(U6uyEalvz3QaJcC6t4dy#8juAy2m{u-&?!SK|Iv%8~CDs_K?kBL6;>! z-MrqLw-#gb&ATH&^GgA$6Rd72cyptdJ_`Qs4^XpQiI!cWayvosnPT{+c0i)2zqChH zzC|0NaTOi42@TH!k|5Rl{+@gUY!mapcP^xpOl{*X0waWj;=JqUoKgwTh4OJuE5 zQ(aYb$MKdRK9^g7atEnwt7a9SRm%*YduoIgF40-9QP;J=In<(g0Y;PDT(V~m--yD0 zZZ(C9oZmO!6o{a=`&KfZ@90?!y1=X5fz_eH#`)5q#5t-&&2FQFfS+EA&;0~>KpmH) zCrLhzhShyb-01HXHwgK)6XD7}jvyVnbK!`1>APbM3pCq_H18+%c86mK=ZDII=S6Mj zKHeY@Nr7_O$hWhvFm<1@1`cg-o?h2>P`Np~Y$KGs3-2S$=jXb$QFRvHV=L@aXx=qR zzD>1g%}%70SOzj|1$%}Bv@fVw&Vh*(lcZ()iUdi*AWlnwQ1I?|DfvrtHoLXF@fD-y zCx6mu)w14k;>~}rzL5FTRBNS&5F=}sfG!42*A5gG|cF9s!?Chw1<9V!xvVA(X0Tcj&l_TcGK9V=t6(-%eLJ2{iA z@u}HTXBrQ0m6)G&@RbI#)l8DW4B+A~>%XIT+1s;zZ$H#D6vKHmkKdu)0HVs}l0Oxi zqMUkVhLl8~%B;Wl3HvjOCbb;a75t-vmzO$?D_BZ>0q7#`1nBJ;tXg0>F~M2<}g=BDr_tinYspcUP0? zQ?^PgIz%K`Eo(%{KXk$)SGUO#?&cGX!HpdE&LP-q_Q=w|;L z9|16P+(RHl5koFJFccQ{NQWuFk1p~5{?D+29M@+GU z?xp`=dqS?cis893pISx=^-|tcH?i7`{Rlg&+@r5;_fyOLZiRFV7uE)0@1@m?7&?MH z1qENM-->RKp^Kss#Q|Ei)V?{`HYU3(0qI#TT!BGr?yi?p{<a0i+N8X9u+Nv7$ zUOx&XkL>0rwyrt3GoLK_r>-v!489J6*NtUKRN2ocRX_M8}p5tBg@VQqz@Tx(HtK?dtBaeO<9Y}gQmLAt3se~#aV{qCZYVlX& zd&fd~N@7)bSDM3%zpYgt`R)G{wUJG;izO<6yL`?0aV^>C>9_4$ruLW2% zt)huQWQ6%R4sl<|*xj8++v~f8Cek246*f*&{S*~_xXO=YWaE%-KyL36Vfl9-!Ddj> zZ0(4r0@!Z4)zYH%Y5&`qq${A0Qy2nEU!>)m$d*0Bm+BQ+30ZfFTF7S?*UemXlf71z zXidR@Ahavt5Ok0v<U!>q!cR+hiK22cuK%EQI$P%-;&3aXnw_FpuF6spjN(l^7ZR3te=W%sIFwPAI++Sn;)*%1-OKa<}#~BxitH{&<`qNiYI0feO|>A}PBO``k|g zhdREf1f5T%Zpv{bVpU-04^elz{SkXp(^psz0G*3Q%H3Yqu41t~hyj)ugeBdUBq_@U zaDGjcKH0e@A*42SdF?ssY4*B%BSF|!q$1;bOZoY^4V9WeMJw)QnG^;<@X+*=XzrHf zs}r`B+O71~C9<2t#ziB}IEO38C3@{fUhbRg!?H_MC?zYs6c=ih5HN40m3bK2(~Uj! z2fd`76>;22Tpax^dXlypY0A94zy|F-STT$G!TEu(zV zZGm(taq^N#jxu#qO>_#h!?Cw6{W&9o8TD(H#Bs;cltP?(mV~i51&cssQY!=7k7h=9 zp)givf^2FhjnttNR202$FfvIPFX-fH<|sMWT4lHJ?<^z_F8|S|rO2dl-=M2*p7@i+ z{eQ)l*6u3l{MPtnc3r9x_F|x38%xhM}7FhnP*=bb?pT|4uX^Y>^F=()LqOwjVSp&|Kv1lwnC>HdUMowUB# zkGRCNzyj^{LD;?6q%eyEdNt&<9rB+#( zFSUwlVK=YxT~%mXsqvOPCrx@KUp@1;#s_ZJtKPj-x$M-A**$qatlq@(Ml{;ypkOxvsABGC;N^MZoK$oNOv%KZ3fr-oF2?MImH0-Kr7xcp+Im4BBMg|6Y?fVs`9~XwaA8AF2c7l zoTBBhMHGR%Io1>ewJenkwny%2yC(ZpIu#bTuf?#E6iI)Nd{gd3Q(pntdb!`QIVK!} zxj=2k>#3*Vz6)rNG&A%M4Q(+J43Q;wkW=Ws$|!f3zetw-P=^cAv z^n?O%)7rKg&h00^i6dH+;Z^0MX%z6AOMT+IrB9iQeXlY}w+gBnrzDyC2i&*#JmxBS zu_j2KC@&EB((T-+$i~;pS54!m<3==4c;uuO%>*q8vL>3FI7jX-Zm={pX5{`G2%W`% zC5UDhaBD36DR?LD9T5HbOOHLIYFd3rr4$WRLwro_*;LlyExp{B_Oz{t-ETHkcq;u) zI#Lo~^Ifw2o3%9o?+T(562PH=G#9rx=fqV}2^E8UIUnsMc=9svl0jSZlf|c0M7u1& z6kGy$*o9p#JUi&gXXq_ufId_MDK_w@v=|bf%ZVDzaVI~(7mrfL^AR09iTJ?B;y1Qk z$Nosk(zUg!r$p0RyIj22r|Fc#0Tia>u2k#uY<1^d+~^vrckX15j@!r0wjZSgFE_v1 z#Z~ll+gp|D6&kdBuv?7@~luxFY z6dveb*?P57z6htOBkke2ph-mTj#KKQM$ooW{gU?lmKoKnb!}?Zmw502N8EH#?Lh%2 zG9)?fBeN!v-f(4$l9be$?5Aive&6B#Y;hVie9()V1jIv9E+63O8gTS2MPci9+Y<3f zB{Lpdxc9n;bz8V48-u29HDQ3U{6FXIs?$wHBl(L%=K>&^YWbH8ohy?t)V3o|J}&2H z-dGZMeLSa|Q#lksNlKynQ9P-XK2=JG^}&9AO+O-FsJ-6ykwQ|5n;a|L_YHp3IFFxV z0Z%kgD$3a-Nulvq>Ql8uXH^PaQwU0y{4uHumJjs;|?1d0L?Nn+{WHP7OTvr~Y`*D8EfB`Sx- zz9QplCmogcfYn`L4p4w@bpa`qi?a1~MNbYnD5Vg_n|3_JkjGtfo#Stn2?$pt$m#eT%7vY%!s?A~hb zN+WVO)|BSlE{JlSDTNe%Wyo6W&_wMInk8c%-8#D!@rMT`myiXeR&NbzdrJ4|aU z3OO>sN2buXm)l1Xv-okhPU}*cxAG*wC(3iqQ0jzab(6GNv&F`*Dd}6nB2%Amx5k zqdw%NN>Y9=PbDvc@|6JosL^cS&54ir_}%W9xjHD(y0}N7?$>-koz}viEOy6{@ev40 z&4KbVpzo=e@fYBBDf*^_7r61aab52MVD>46mL)O!bE(@oFhPuCb1Ow|kD*CCD+?6l6o0FiQmq3;s`IkLcbacC z+sc)>?s6!}rmBQ2?eopL$T~w*)+&<{FA7TvjZa`(0orEAOZi=cM<#`-0j=LzseBr} zL8$r~Kzfs>Z}yyDLrCItuV_5+MgqNzbXjq5T?NiIqM6f{E8-Yj3Hr z<+hLgIa0!-Eel{#kMHi^ZLW^+BHbq$5f^MDWrbqwYs?U?;f#KuMIz$L?_Jcr(*JEq zS^QFKIcb*d9a4f$SEh^F8epigtO(RZmJ~PUaB67Nf&b&knBR)aP=}?VyUSd^c|^qi zPfa!w z)~3o6S{Y7lW5Dl0Vhm3FxU6Cb#N2Qt80}a(*Qie39(C;Webzg!Ni4LB<>FyC_4pCO z;$4doDwjF5KD0%gm9-*$cJeQIAMn!@__iPkLnfzeM#Yef(z&|pPrw1XA7`D~fH#@& zQ*WwH=`DUrMQ>+*6{Sn8je}tlhXaU8{CKV~0a(F0qpotIO;xPcjurlDt5;RQ$szW| zm7nL~m5_|m2e+sLC5!fTuPsgG8=fYK;(MJ*R?i&(n+M{Kw!vwrw5}Go*sNIsQ2Tye z{iM=D5hoE3`F9~YYs~AM9tuN%^sFv=Yi9bB8&zD0;4cbmDuR>Z_|ck1EJ_D}qp4S8 zi}bmaqjI>rzQDqee$eBOe8q(z{*utZ->;W=YSz*B&;`bo=C`|{>^;cgQbqt;z|HJO z=tN|9)PV8MfzEYaeZaS{KrfSPxsTN@613*&!`WR((ooJ znePDbb|wA$rdlO0CCOHz_3KHbx63wWX(+?xyZP@dg}iOX1ZNC z6y)s@!AKCBYs|Nap(p25xhcMiD~%~=S)uPiS!cKCsxw9e#BR!E9==NQ_@lBWN;)=Okz=M;VYvK+#w7b8s!85*N8CvtbZ2)IX0EU`+^>GOoh4GImYI|;rHX(gNF(D zKw+{W8LQ~Jacgf%K~3DI63|+`9%_D|X|*!X?-*L^=9%15D^GBGU7xsWFn9Pq?@=>K zZ+6E8M91sZRZO~#JH!EBZ&mf1W)t~xT01|vc@m9PP|O^H-ZdRi`Rq}TVYEgd$!fSz zbtEl{hWeL11GNdV_MBfkUoPO+q%kUAXvsS+(>BL*FDc8a)C@D_(KK+YGR)Oc2OLN< z+%6X;KRrCeH~}0xch+izUIm10z}{DoqKf(>$?U3JK(&s&c;7Z22m#LWl+yVWd3+aV zT19z{e{RP`a$iA~0M^?bXqBCHuBSAxYjBj=T6Dk?myjNN%{O9Pxq!#02~EyUdcB_Wv3F3mZ~_ayLj zJ@OUR#GyRmRh9z0RKdp*KNP>S;%muzVuteLS7bo(0Xf7?nf&wUiM9A(ZeCV-8Ovd1 z;t?sP=||u(Y~2S{jRCpvpQ_iZu0b!s$+N;&CI1yrrrIXpT{jh0(>3tB^Ji~MX%%8X z*8_pv*#N386Z6MqP^lRKSR@`_pHqLH#uLI6(fWLx?SUL!Dyxr{-I-TQ;JL?0(dKk^ z%Og8tFL(Yvm*Ui`IwQ6j$Y=-1=hoOK(_QO{xn)vGftQ#|666>1SX^TA$0|>;03P%0K|)d+P2bp_XgZoH(~L|}L&!ZffBw`Fn6y53{TsAkvn1@e5g zPebMI!qJ|wBM@oM3^|# zes}C%Q(P(vByUdaGQ17G2%g97oI*vu*QUYI>MW|YqlZu@2YkwOs#u_G)6!VHN{ZjZ zj)pUzS7+c?!p|$EzekRsf_W9YdT*DNvI5mreiV0L+0Y076-60j>VN zYogN706b||NDPoQ^Spw8{i_{srO=+8CMv4UtV8SoyQJs@{Al^NAobJgQI9p=3;(?l z78OGzq!g`}6f$~rM|aBtAVE;p%bItut-=QAmP3i))4j}R?&KdGa^8Er8VSCt$=q6$ zt6V7GP}1~R^Vfrx=AccW3rdII_%*6jzEJPgr5eCMSafOdY2P=4rnOfGhjbUxniCUe zwvtPA2%V2h3_7*UclMAzb?80$mv$H?#e|bA-qd}5Ci8%5c~D8yT1r*fEC4VvsF*kD zMg*AGBiw#l4xQ{3WUp)U!?ORG2Z@G$v@TLdRu?E z))sw7Z2-94owKe(1)p{5=h{GU=LK_qz>p>B9^|6^u?V> z#Zpk76<3{;bT`)x=BEJQ<%8~ye3C|NThs)spboymDRAn(S=?j^S@C1+`KJ1|NwHA( z_?OgfM;jH8O%b;BU?J#c?olq%+*c4$T{Z{zXs4ko3YWur>HnyE*IrMv?YawzSWZZY zjT0w<1TYN*Ua-x&U(8#CctHpf5fTDQTGw+b?o-`VSNlS~7<>-y_pieE&0RjH{NJbD z9fY(uz8zQ9zWkqOtu^PEbB#F$qMdzchv8&8(R(+`D?X*bQT77R*x1pc(0XgXXXZq^ z<8GeIZ$>KCCZ#rq)I*rw;z-p#o7{{~fd=}tJ~uc7IxYoje&osqbwmt;a?}wLq~=z} zv;o-*igjpF>m^UP=6bbCk%1{7JjGLDXitDnzgSgW-ZsJ`goH5}Qbpa$2x0|l^)|Cg zB=IKWHIXJ(^{c9Bsoup)83d+m;F*>{0T9##PloZwt-niHfOtNfaQK<%5b;SM@3n+b zK9}nZ@gob$yh^IZc-EVXyIz6LTOmcSN(TT_Sx&alz*LASa2k=d!)sC)OJ`Vk%@{rU z#)+MwNmD>vLZuT^C$g!Y%0ay4G6oumHlZ<^lA-|`9k|5dPGTS_GCR1C_ziTXnW?Q< zB$>9H7J1;!QJ6PV$&avQvW}aoHB>)@4eLdfDdKF6ytQi4phJZhtTK%%1V|(Wt-|62 zCL1n2OSQFNzCL2@u$qdXdK0v8Rm`LpnIm&xLTqKe~5$1GuqykrZy;4)$&35 z($f@JNMn*&arZiK(=uI&h9n(x69Ey&f+i{VSPKgCCVz&+#SbcpRd0^Fa;zPlO?C*$ zD(2`wBXT3qjaQIY*0boS+^S85T-lx1XpR+k-@4JP?b_EmoD3T(m8f{CK}Cbpt`SVF z_^nL}`2;Z*?SPH6#IwvTjXD(wo9b{iMdr1*v{jIC_@AnjZHSqJpivl6ZN_y{Q^C#a zR1yyOB4*lig>haX88X1tw#LyT9vBU(bxa>8qn|~I7`9FfLq97bo~FUs3zV^26)vdFYa7IJ6a}Ek@DWtq6k^Zz z7(_rpqQx<>%<%5HHN?fKex?rI5xjuAr-Yh45^)0*WPBNq3>1=JiSu;)J}Tg%~t?pif*fFY*IS5Oa~M%6`(JP)uhy zkwJ4mn(cWCoEC)kga{LnSvAW(j6g7^6%aEH9-}GkF62C@6bHf@)frjQ#8SAC-*m~1 zNCE?&(})@#00og0XPLBXQ*h<0m>&b83G}=&>*rPca|az4&6$o`q=HFN*;dR!ju)y} ztK6{DXf*0!x@vDw}b3m3b`070TCHr}Gib?K#_>7k4|sqW*>zrfeusb>YZE zz4FjqU!eI}pwk78S@&T zCS#-cq~lJd*Mxr~$}Vs@n~-J2W{}<%V~)tAVD0H>v~UxwT^h8dmHe7ZZ4TufZq(?v z-w9D2o5%U=>YdUJ4m)`)98`!2++-nkcNjZYdQ=FY0j0%J;c`?)ny55=xQI_o6~^Y) z^FSpRa7QK8>#spcW&m+qL9UQ%mu$Vr*cpk&C2?!e+hXpc& zpoEn&yR>I}60bTbp+2icfft9QC^TI>0R)C=5HRoJs`Z(a9_K)_35}YoB7i&SJw3*T zS;bypB1d~bKM|7c%qZOIm?&=}!&A4S47zW_n0~@%_i#&s)Qa9T!x@OA)5s8fN3OIs z?vHsK=(GWiac%R>T^T%rg7F8q#$Uh33>DYaa4 z-P#zo>o5z%a2;OpV`grRItp=07^!+nwr41b)$Nnao^zN_jJc5pGn- zKs_08e;hhh-Qq#0&C=19DWjo)rdQd__=`q%)5Z~EEHH`%yqMomp^GUsH1llZC|ug} zSm=A{#9^~=;DL{b&5`nzivP)d!loswBvh4S9g_taBQ9vG3W-8GMWLq`{B;XN0ZxPw z@7Ka=1^u;db`4BqB4wu11BW85a=ixKLU-m)!Oe^^_TfGoF^FaaS(QO5rMfmmhsm&g z+E62Kyk(A77~64zTEo&)C%;&i1)s^u4G#)#UEvrB1?Da`mk1u88Ag(!lyk6=K1>-3 zX`ITg%n(6v)o~9P2_&wXO}=R}tc1iGMJz27e_4K2>hLgV1fil9?2-^_P=!diC;@9M z7-b)f6a^&UTqyr47~q-?-%52@w|jZL=VAh44mi%C7|M#sx&ou=$*QVuOa&oL-O)`+ z3)qd^vff;U%sl|{)CIeFFbs;n&`XYq=T55eGJ*}h52m@v(YPCQ#J*Lz;+~Cudtzu} zDif2|M$}7CmQy-cbh?N(xN9Ie5GW1%cv7bgxeD)ROvnbN_DFU!8iw42$|)6{h%ut7dzk}Myu9ZzC*#z?_v{60Sy9$xae@vHH$@h8YbPEl#FvKaU#X0bA}cJfhW`T>s;3> zEgmr6#t@59i-gr1sSqiK}1n`afTABFIc2b)jp(z_5hWNQ?*Xz+|2NY@P zuHr|=s7UcWd7ZP4CF<1&Mnlg}8j^T=p#Cd3s`!EIO_615(|MLG~r zVfQHaU~Wqo7j~LJHq>>Qe#CsyoEa6z24wGxTUW&}TA&ICGJP~mxCe58Bfz=QG1jS9 z#mC%{^*nGQhro{=n)W{O$jx{SloYCe^#onOG>17z$O-`14dkf3I-xClGnwb27gZ$1 z3)*zW{Y6Ky0(MyoqR{u_U;h#awwH!Z)y)hnY+4n((Mw5w=?NJ5;`hZxTkdbDto zKD6Rzrr{GC@IgV|Lt!w-myDhQ5lgQFLu2SILNDkbdx)_YRVYDb^h6?($=98djSjAA z3Fkwn-;jo2WPgqeiyDYNg+n&SrmZpO5SnH_06S-f-VjVi0k%81^~ zwaJ%EnyfgY2MmZhO$zqr#p)_3HEA6qG8}>tN9fU;rk?;irmEQX-HqM?On68Kbi6T% zfd>#n1HPCE9E@f? zg0;-B9>LTQ?ibBebRhc1qUoq`(2G~mtKC0s*A3jKparreXBo!YIcVFN`5)9kBtW(N zBbgx-ze#_IGHK=ls4F}gWYOYZ=2I2<5I_?48*~+#_D^PTk-?LR#W(|Hr~uJP!`cc5 zPg-Xx>X`iU!n#a3G3K!cJRl6_xn6-P#`KLxB~uH)qHCRWLiI6$uP7tNteVPmEvw=K z5|Yk7SK1fyKBGO3sV1&b7;=M+fapRSNPk?LRqF5$usm1k;m`(a+N%o}d8cwn`df6LFSl!wLC#Z8`3?k-P~NrH8_G4o>6R{B*C;Hd55bbERdIf>Jm_C>$+J zEjesE8{v)IV#NZs>Q1F^C=AZyJTDZW>d;b}(wH&}yE_!9rLiQH~;2wJ8iQBg=84=p;a+%rI<OW%Z^M+q1mP^K<89z=|;^cx!u-DYzL0-wn! zmtzhczu2=X)unPqr#li&b3y~(foBz%jmqqTAQ0h3F#<#h869pgUQ4JiDXw`OSd>w!|LNphc(oW~r4SBb# zg`cz*Bcz{IApJsb&s_58tzl`}kxx*-W^#ev&x)1C1#*OuxkQ~GRG1(Zm{F);D%`QP zn4W1mEEQ>GkUF!lOr;-XcNJ-ZlE|d$XQUHV}${YvEo5WxWd5F zb-a|T`O8sB;zxu@iK47P$7D`K+X-Dv?7z1X=dvL&G+7(J<5~T-o1cX9IP7SHXN)qG z8A`KT6y@)tLJ@7lfjstt-HpJrASohQ^rSY=nb`=%Mr%7AuRA7MnJ~B&w3Yj?%(l+8 zTc(I7G)N7{iJ&aSr-J(s$2F=)hi;Dr(Q!K5QBSMW^_!LM1hW}S zQhZgdBOu%%(k&$5gdVu4RCOr;)zL~n3wnE_waM)!p(#T$#=01J#7(>#tP~yK(KCus zNQ-r7QwQ33W3PcH5?;X!N}`S{q+^M?av!ct;Hv^yI+HOPD3o{=E(R@>)ebG`Fp!(~ zrb3~*ZR@X9F)?|mj8QSrD$OW00*D2jRpmk`q}Yyj_{G|RjKV9?c_xYqhE=M93M@1_ zN_bE-B=nFWRxWW4VP57nk*rf)kn!urug$uz3Le??cvVFx^n1H_-ssy;>sAElwL|4{ zpnpNIW_W0kDa*2Jp#>j77BRp(mRmmxRD{XO%W3Pb`40kx5i zPy@^oK?~u`l$kxy2Ak$~>{Mduuk2Y7xd@uvCHS*d8y_2TR)xFi zy)cf03M5y(6)QfS64*E$BO@gqOq&q{V^(JB{Z3RAM+u^;=HF<3D-7vmcxn@U(bi*N*&Xpbpi;$k zno(nYP9?O+=x$QZLEJl5q($K6b1||J_f12Ik698`)dG>s7DCxkX$~5G2Js2+C}A>{ zBIN!88HT*5vbUw9rDf{2;o0CEjxG)nt_CL?FTCJrC@SB0W_FbM7m8xT3xpv+i03)F zI7srUoPma-NLDWr=y81JJF1q)bR3%!Ua}6KPM=rBY-@UK!n?sjRajz2bqHk+?IJ`U z+d9}>0b$roP)mj4+9)b2^kSHMnHYv%Sn>#)2)`}C5xC}=PKYspi(aa7!ocPZ2}#UC zGu=#-s61^N*Y(*2t<0GBMkR+9^Tq}v;2VJVl0FNZR3%`K6#ir~2C-nG$^s}VO@gL@ z-m3qxh7ll!z-J6#v)@2|PQOv07P>N5ati`D3c#bo)FrK{C_cCy=o8cn_~=~5ac64c z^FnVi!!j`eR0g@2)DVK531b?p&#O)toLRiK8y;e20=LMX&;h8m6!Ty+(P%BkY!Q|* z8$d=)Npgwm1RfyHGR(z{r4k9*-G)yo0GVpBa&g2vIB)_w_bRZ074MiX*a`zow3KD! z0qReWuCoi^BAjIvM)ehoI}l}pi~~wi@s7h47x4Hrv}|G$%BVOd4X7rJQDyBt2*m|- zh1cpt>vo~1hPGRW7738j&r*WGf!X9h96eiZI}tgp*d^k0fjOhLrGl*Ic2tG*(T^0w zR>oH`sA!=z6VTOpRHnuuYZ0z-k#{&CBKnBWNSn|{Y`~LgK)M5}lsofX6_OF52@9fz zfxXG@AW?|FdlBpxhuB14^ z+(>~K_8Now0z1r2FzAJk>vA^aj72V{+KRnG=nx;62iK`VCO{QJq1%tt=U|x{*9Lm6 zFz)mk1xU4<(SRvw;fQ&;syvA9XoJP+9V!y=@9^@8L?2k}H6xzKfEH{UMIpr+y(tyqGh;do zX9qgGPFITgT!qd|#bM3~nTX|??%x%oS(gW0zIv6}nb5P8vdW5GPIui{-as~8k`Y2%FM7FT=5cpwv>;6 zUZEa;RzePZZx;$fQ!Cs?Z7LLquw=w^9M2}I-M{#mqXna@oa z0}t|UQV~88sc6``2(2H4IE5)X!kvny2X|zfvo73MRFi`3S*1Wm&p(5hGD;1IZaSQS zi$@(=%XgWBP)(^ieCkK{K|knpM$YJ4T05@5Y&}d*VzGIc5VH0OZW$Pl1v}=BbYLxx zdAf3vQjB)nWb{)70bU-NK5ZrKO+HWvQBCd0#Min4`GTY z%$%_gCAkYxD3zYheCFVyM>VDjSiQGk0eUtC&c$@&eYQDM$)ylLN7;IIlgVW)+z|Ie z4>=;6uG7jL20l}bE;9{qC1HK3YFB6OeOp_Y?)6fND@eLr+&iD$U?K1%$4Kb29yF~9 z<^WMT(zBd_w0!6&N@_cp5Dv3z+yttaMje5+2O8&G9_wE{Dw34v1W6t70e_h!8nw-J zD7rQbT|V3&u1VM9G#j(vUpc0~&?8(>opB*O`1=kEDd*KZQOy9j@0R3H`sU|^Jr6k-4~BlfJcQ&d89 z@DYR0Ocyr91!sBg#B-mAh6Rp!Dy;Rh;ghL0qQR63m7PjbP&t5d{@xp0w%8nBO{fon9c@x=^ZU1Y8rj75_>++G$iJfQ2=hJd2!$ci}El;0IFz9Rutznl|ah+X%%E)tsnd z9Tim2qOrr)c_?~aK-=7&XMpwZSj5(h`L{s1%~Kw|*JVAJiS`FZ=$yKvxZDauTm%DN z2ExT&P{TEzPVXi_P{kl@3N!|fj2y)>)veARGtwh5-KjGvq@aRC;3g}!Y}gz6PVFQs zW!OVHiy^??|nW5ol4JL4kTiSQly}S`8*4Lm9B2>C<^159}J9jHNeQxcTP7$V{IxVKz-a z)#KQ6Hgne0vw1q?biGedtxgYAo7c@GtfHD_zz2jG5l~|8u&Xv6v5KM)5|I?Zgkdv( zp?9K;t3z(%k_s|{AY8pe@9o%ejAx-uuox2t!W2ra5p7bWw9UTcAd=<;(G+(fo~y9w ziWVvj3aqbG@n_h0(^6ULw=O0(cuJuk55=~FI$Yp}520V$gB`#5gdYO)IOanq8$;A|Lvm6Ps_>^m zT5A#Lgrf22u~0PmFcqPvYbimOi^~>da63X*7^ruBEvl4z+_UTT9WN_H(|d;Q~hUL4*PlLvBLCrLsgAV zS2OcB*<^?jEJrFP!_UF2S_cCYxP=5GjcKG6)78;KkQ1{ud;zc-RffdrLZPwU< zLwE6lfnBCkHw8)|9_#lH#_AO(Jx*Yo#x-Nch(ls?$Dlmc2Eu+pxqorD5O4~_yqfNb zH;YW|?>rYsV%y+2C-CNuvJgJO$})I6}8$p;t-g^WvC5pOq}`VTLS5 zl=`LPqfD>um~b5%%rGxiXwceJ9Vm@8ub{n&B7|A6kJdf%?A$U zMEX+Cc3E514|ABE6qDeHn9$DgLZ6rb&D8=^r8M*s%}w6sR32Zmn(h5WiN$6zbpnOB z67n#sGAFF3&w_iZN*6s;y)&P<#|6F?8-d@Mk?xi%Htx;A*kejgUy%uYEM{r!zUWw@Sq;9Dty(H=Ot&x)t|dnI;e z#3`o~0`!Y_hZm5ze=bZK>tBWX^!tdw%GwvLpg{`;dsA-A(LC-XkBE~B4h0JNs)+G~ zS18sSRgJ6IX>K*#s46)+XWCuD*(x;AOq-dOT7n*igb#AzP@OsSw=f~CjPJ05)zc{T zQ;saI&2vFL1xk5FVP05r^^T=ZutHgx9gnwx?jOv8popy&&3A}QYh$52S0pWv+{Ho=5=<1p~!I}GuAi=j!{NB|~Xp6hpJ$D&}tCH*4Nq({~-Q*q(O zuuHFu>@d;M36FAXz*s3m5PG#0vE;lwS_(oI_$%wl8lO)!W1eQ-I@;ul>mm@vOqlj0 zU0TfTqe>O!I{h@1vtYxSFuX^IR&aM|Z($gb@sHyp3{>I$G_Hc%!eFd0z5uv{D0m+Q z_1c;9VcITgg;dK8rK3X=oVyy;6=kWaXIP{QnF!NNl~ypK9b#a}BW>)7N4pTo=_C7Q z9jjwvNr-$_29OjvOf^m~0Q$mEVGNV76yew^pzNAzKM3&{nd=Dg<2wjonlU*_(V^=U zRJ49@p;DQ(aN@i0xDXq~v$A19opkoIQR=M?u8)_Y&?$L4y7kKATH-P2QF>^^8{9#1 z&=Fd+J#}6LB@rLbNKz}ptfrW#OEI$>;lY+!R;7VED z79uqrd(f%zRP`Per)V6`glsGVB?Cl-G5IlBW5-(xn9l0FCiLl%UNM^>M&1^#QcSl5 zMIzNZ#p66&nJqAXVnjx8zBx3uLC^`Q(yWzqPEqYLS<1zYfMiwmHyo3N%+rqvT@h|1 z24LOfgqbYk2F(e?Gh23z-Ae!1tA-T%(O+QihDV_`WI~2kVFywHUG<)y{iYznGIy#H zOQn!!Q4sp-3T4y}v`UzHPy*Tr>p3nXQ28OP_T`Y0R$k6pd!a5S-wyOC7`ex5H)onE zSR@72bUN^zbD`*@kE=>{ny<{jfc{`Ej7n)qh%7rg`8p;@II0$>KH(j#EPzrKZ;`as ztFDS;c*hb^-2n{he5iP=^fV&c_qcoM!A?+lfT3rf&Ss|RG4ZD;3H63hNfe4ol1~-~; zq3RAM{`KYrLX~x{$pi({8Nt7g84X2~!o>!o@&Z89n^pM4>pfBDQDYyWT%pG36iIe& zlfevB-y#(^@+w%aEnL+YL)04;n8$_zTRLQAv@bT;SG92pW?`Y16&T`BavR9cH5@28 zxu%Y4ZANdMZ4#4F*BIJko^%k6+UHLd-ByU3Gd6`S?AifbE_xXA*!w9Ypr%Y^?=hNK zLb0kqY^0MB(W|lq*OiP^%4Bvx={lCs0!EgVJH8AKCm1+wS62HH0JsEFEPz3R_OGCf z@NXm}<8eWuT?JOV@+;c7oS3Ha6-2Tiu;*uvn=+-twx?;0xPK`S>V>!zo6wk2)DR+| z$QICth(~T&<{`lNC&NSG=rarP3qI%*9!yFO^>!ogR_3SRQ)0p*$YD1n7!zNFZtUiM zAPK7nW}*fs4+BZKG7Ma_C!zuqk^r`~s;<&~Re6RSZ1Og3u4sGExn?>*W%yti zq88}r<)p1t+`9_YhVf|Sf*{iK%Sd}563hcv9V)FH0{MKI|a$dz6GB*y~;EjuVRLtb}bS&TMkQfF- z;9l!7F)UG4xlvcwhQN`bt7g_mOtFxW{fQJ2y=VhR)8e3pLep{~c?X53^JgyA1^HDq zRz2)B$~UdqgIx;h;y6%bWwQw@*g@n*!xUSR62}d zB;K!zQ?F0Yi%|)xO(w7hzEW_SaF@IiZpvO&k0Pj5Q&zR2U~A$PMK2SQqB8@(gqfxw zuL8pf2n1aaL*QCd8Hm__Fmhs0+h#5g<8&A_A#}hg(9w#O1BI^BQ5eK03E$9;2c>|Z z%}q51p_%YqW~wGw3%xCOB(^w8qSC?RRKy%YS-o-&um3< zyf)E?SCUexvvQzus?BTOnGoj%=0Mw>VHNb^lhUY)DxGA#Ei~#eUR)4!F)Tm>4c2Y9 z1~YO{!vRx+U9tNBb3?JkIBuI;*sGV^23!lp%&m={H#s<8ycA#x5xE#u?WRvj3)Eu< z-|@|3kQK|iTai8!<``L+W1y#g(pL%4pux~ z@rTJN#H;Vse=MY29R|OOxrzq# z$b!xIj-&EZe}%r#SzIQyt)*dEm3W1E=t?Pj!NpPnb*>~EY&}#~lO8u<7hwR!N^G^Y z&xloY0MTm*er-^IKvnAG5}26*YYH9qZE6Ta49w&*%>{TLGRPBsJ>%A!+4J14gdf^Lma)AYqzf<%Q7|z%e>dRp!W7jS;k7x{Z ziH5DFHn>($Sb?i(hFm;0s<4f)U}X*l4iO45p%uF}2hN#?<3xMcBbKmmArSDIv`M&| z#$_1_tkH9s>e41(Ng%8UVXB0>rgeecIZ~}!1V@3oD=>;Tf@UK&x{Z0ng-+%8J-{Pc#S4psnlh2jb!kiy7X+gq3>j z9-tf>Ped=sv!kw}^w7H%q)?a^@Eb|Vs;YDexk1y58Jf7qwTdzPh>#(z4AZk^ zDA+70%#T$`cMV}`tePO7u@^FgVXtj3Q0{3|IV5p(s^jH~spA!Pkb}CDcZaG51O*)t zmBwmrxC;?f!9=0$(ze~OGW1ULi3Fi3(U^oa2B!l449_1y*nOdXxU@y|QJ_K4;p05* zaZ=t2Ets=m0Ja^JSKO>sf?^VjO;my)lTkCSWPwVT0pUX=ccwn}LU3KxAh~#QB)Edh zOk+9Y#1GU+@F!e02dvQSDoS>$U0{x(=%L~cra5tbWG)X;euTK7Kz=KJj)GNeaLA+3 ze^l8~y?KwxvVPkvszMk+(w4f2>!2QA8f6dg)rhI8`~f02VoY6?<&z!H!knsV<(J6XvR-42KRu*t6vljR>}-x zaU2?ddbu-Wf&{i)cIib{LzZme0SMQUxTv$(u}CiXY;-KQ^rAObO3IJsJ$>QYW}_qf z$T>m@vknHkR9zLWc`5@bW&)?0}u@97q6tYxYWAe5UH&khcF_P(t&_+;| z0>c>Ye}ep)9g^FqAa|qgXhU(g&FwuE1ygH@*>ZvGz3ot{0Hj-`8c~a&q8C9wK?SFJ z4`#E&yM@W0%xHnY+>KzCb_>n>UGeN7God6kl>d?nc^E8>8JT;OqJJ2#$>O#?WZa92lVXaS-iVHFsYsyR zOe)Z;i9$Q^+{WD=aeN$PgAe!m2@41mJt|6uIwp!)%q4Vgh@d$!$Hk3aDh|ai#TzdB z^x4=85QF-uc=|bbpFq!zFbkF%dk4l-IpE1J;MP@YEUcL;ANf0T>Jj7k7#3A*gcg|R&yS}RK()P~7vs>7UdRH$@?@L5nl$Bk9#A97P%NS^3`B1MRUaK_9z z^9~$u)kOaqAf;myhiqtJr15z#7&%Y1sNPwm{ik=P4Xk>D%Ughpj%?@(_)~>R>Nt#} z%Hk9Sv3=n(t};)`6zT+XGN_WYANHP}F-bsaC64xlCBaLmC!>wdd~~{b^*COnjj6_C1y*Rb&j|u z;`-uLj7@q(pgnvPcnj7t4O=ypP&DmvX5}wpl_NmX45qFDCiMtF2$5^QvIdIeDoD7c z)y}|dh6KoUDRw7q8Q)OnNhy;Hnx)UPAgeVUta+JBXI{eijviU@%(-k3fw~z^2}~;L zp}34BK8C)kCiNPG`WP>RBXm?j3dU4t){!G4O~%`;_`E6p6w)4cX85?GbuMg+MKiwh z7b8B#)M9(4(_DTC6jr1au?ap*6rPEjRWF!4(k|=hBf<;PUfkMC%G7iwRY!3Hv?oe9 z*o}-yOFJ>0hFovcfqYgpDXQ=szX4YM!Q@!s-T017!lEICtR@GpD!pSXu7y=hTQm1Ga2}+~PDfr=3xI!6-rR2@ryQ!V<-lnqpaqDGPX$CUe1oh2Dn9xR9u2BMktrD7gDEt&$6@*$;;A0IFIDv}N z&A!yk= z`Y2keEBLBUwRHYboncf$xlZ{=2@0a4H;HJ|RM2aob+X~|DOx-9QI*;JW?!oG{Dc4Y z_rCh;-+lV#l}hq=JIIN6$zRoGz06gzRv*ng{~a>8i$|i-5j1EJ4I}RaZQFoy~8)`YZ4E`S9sK z9N+!ixGs7RDH>Q1@WHA`I6UB4t^L*UMeW={2yXez)LJpMKqXOygbF30A`t?=<`Qj@ z&B+MdsQT&9vk89+5z6ICFr9#@qbO{Mi?-_VuYTjZ_06}(ef5_AN>ATzxhY!<9F}B z`S8_mxZl@*fA!bC9v^=8y;l1_=6Qbe`wxHk;hR7H@YP@b`u&GL{6~NK?fL32{ipx% zKln#q{k46*Js-3X>;3b-NLlr~qo=E<3DN6xF*2A?A!6Ff?pKCFjq>*9?%@jV(z=Fq zAcT||oySv za@A6WhLHG*M^*XbnS7vbO8bP>J?CX`!kj5De2{eo=%5B)cZdEog=@ZxD6&c(Z zjI6HQ$Hj^cAf`Yn-%fn@4{fPc0&&zG4G(KD^p_&+8!2!rX|s>ZHN91)(wLS~a&sD~5s+8^ih3HjUs(?mZEf*8_7Em>hOGL@rq&A7FWR70>-`I6gAYpvw3e&eG~ z!1?N*`|#~A{@`8x{r>ympZvyGCQPJEjCTGQ8|rVTf{ZD`4rKaP#S$h81!wV*%_m!- z7nds4+6mHJ)@O5OS_9utg(8xI6V5@8_yi<-LRAw3ebF2RpY(L9+L(KJ_n%S0sXi%+ z4FUy7#%WzI!sIkVxK2VO;p*ivBhL!W46|wC2{80GcK0jr+N*YYq=)7MVglI3F+3TR zt#K`C9y9Y;u`i&3ub0y{s?g=#e-2O*s?(;b8*w~FkDhJj7OLDAJ~F~js(bY^7%I_5 zP*%&=432KX%ZReP^~KLr@~8Sc5#_?#vQV_j&y6ITpsSWv6`r7yxm33X^XI<%FF5L4 z3a}zcL0JbdLI2_IC>sT9LZ0Kg%KOaa69^6|ddIGJ$evKMdBuZkM0?b%84nhYR2ibJ ztd9^@Gx4*01*|8zQ=fh=^EbQi{!6>6uK0B_zj-dUHU$GE8@XV#389XGN9NeABcX#c z;D+b4xxHbW9X&RrBPv>Pz;%IqxGYJf7nIE@1mm~15^Zup5$&?1&xQ*`-Ra$bWp4tP zs<83k9jfD?-szR}FmZ$zxjc5 zQ3r!Xo1p|cx`tR7`(aK1-OYFJ==XVaapA>mEKtJK0rnKEDuz^{ESD56&x!b+Ya7xT z7rxH|=z>^)61^v3(kvtv75$lt^s^#`U$m48>UNR8$3cq}>3gSe%{YNzi-1vnXU&C- z-$_S5ve;2Orbucia%dOQgB`-==#>fID;j#({#?s&fsNuO94+D83ImCVpna>Pfl0Aq zUE|^=CTO$iZl;wzx4&_kdqeE+AoM5-Ijqgt@*CASgvwEpYo5C{WPel!;eCftjnWQx zMAsTsO66ehi&b@l2FZEE{FOUXXz2I0A`BBD(~^O(Q`31J*qq`F(RI4tJiuDto)F^w*WhX!$1e zqtNzbz&_%@narcuEm%ZQJIX?xhp3_$BQX|Uo~nUF8()urS!q*&m}aj;h-c4 z+1~s&sJ>X3^^S5vL7D5yh{~+~-D6jOP~T7$&F!YYn3FanaRt-qzHqsV?z;J3tD3rp z5i8nr8;7ZIlo*L`0BATZ266$>$4#- z<&@GJSJlo;9IywZ99Uat4l5BM?T%1%V>qFz27LD(NF)S~YYX7p_s}j^om%3B!=3L) z2}fS0HYDC_T(i(FV_eap_IL#(89-FIT?wBVLeI>R2@EL3{@COn;(Svl8v9Gk?}meu zub1`iAM+uwEWeGM6&N2<_RQ$H(Z1m(YM8wc;Hj^9CKJ1oo7V>c3gyg z2fg3ahv!Ictsqdf9E!46VNdb@cvRiB3krh!L8&bvjv&zX#`lF*3n|R0&qG7oEAOMXKEPE6g`CJdAdPWGYv^s_K=(*CHi* zJQ18fO5@rGCXL<(YN-&m2P|B@uW}U2;paJ3x=7IQwD10Fmct?6hC`z21(bocow$Ks zbWdVILwn%v#{fmGEiehkkI4#3#z>udX&H6yhODMGeo)LOcQ4#}(Qj2nf!;Wpx;bdk z5I7`CTl>8Lq+tfoRoA z81U-32F|887)2@ z%tWaQ**&9_8A`_p>fQhRTgHpbHZsLE>q%9aF)IZN>j}7aWaPAOm~=Yu0nKE>X2Bq~ z3t6GOff}10899)Q?A9sRL+X>#UZ%f%o~MN8SY$^9KZhME*A%Ky-u*9p3e~cLvj}os z=H*l}Y3rVe7CGElZ8L|+A!HTDG(4ko3AH@9b!lYG!BK?3)^MLF6yqBR&6vWlgQ+y! zKruU!%=Gb;kdf$F`6yDo`(JH$x{axypa_Q30&LoT^QfTMSbP=SbQG0^{dAJ`Nhk)j z<+m2%qH6=UC!5C4?VeGIjEfYxkmcEMopcJELKd(>z{^TQ8{1lMmtsnRjqAdU2Ahz>JV@EBgQ>D$MS&=zRG*B*ulURi zml6jijlH1<41<``S$ILE@w@+yPl0zj+XzMxgl306m`WNXC>1X0SY%}PRFcvRa1(ci zI=IMD07jQaI1c2dJ)vS?A_qSpYbe1nTcF~+^#J*O732vWPK5$z*xPC&j(7h%p8_fg z=2NH;KoRER=3ufn8E-3`xHHh4jDpbzMdQZ6l;AW%=pK0RXG+s6)VP$N<;7d@89}^ z|LCjV{`Q=Y|NfUP(?9rUzWVJid#L~5d>Z`a-+cVaKl_J&cE10h|NJNayumgaM=Fd3 z;`JIb2pdgwwC5|t<;A5G*HU=UrKk)8d5uvkOb#nuDo*s!$yAk4U^VCmHr%=}E>mVP zW&MaQquy#00-ZQ^2m?a`erPf3_bML>BrB)DOczduzm#AK!I1Te(r{(8Ypx9mD`7GF zqaXw^Q^$|{rUR2XBCwp9Jiqvz=-@?tuU3r$4UG*21MJ!ti~t=Q=7i=$6aH_nZ@&KK zNdU-jg_{e0W;`p7rpxY|Grnx#{2(v zH+pPMJ3!gtx}f!$Fga((0x%mh&p8A9f>#xfwGBxShLtMJ7tUyYTSPwh5|K7d!%j zPewhOsb$o|px=W z2+G5P6GUzK78h>H+EvbZT=TLzzTnJqT zQXgZZ>I~Y#-H3WEeVn5qiP))B405K zg0BgETi+U)5sT=dVl*0$zN$hh(;lI+7~6a0D3cc5_c11_HiDf<-RZi%HDFH+!7%w# zluV(IIWC^L?d~S>fy@CeYN#V%$T%nkOz~npyB&g{nfZ8pCyap# zZGG*>UHCaB?(^OF^!>;2Nf|m}@%OkBU;8cow3zs-$9Su|5fUQE#HGQkXHpG#xp8Tx zn9=dwRLQvMx#|sf72R$`KoM7T9&Z#?on56oOau)7TplSq#=00RL0%ArRQmO}3@9yb z2AP5quj3~65ie%J_u!ni*i`V?(F~h=gOI84A^2FAi@8-CC>$zdDlX9r259z8xj$fl z1)=;X^cA1G2)GmD`v=*nWbQ*5dWNu?!b0a?^`Gjy)gN}_zxce2KRch4-adT#I0Uy4 zne@LVN5AfS{Bl43n?JZ8zkHClx+AMHA>6R&QGdTk>*^ILdns!%zr|IX3TU|X5S5oI zSg@BXQ)TVaYF=hLJB0ecB=z3#pActNrt)4f46*WAnx_SU6tkgDEsjBeilJb{AT<>VSqBk2dNcVtNH2B2s0PwFFC90C-aLW=7@%w( z`e9H0tCJ#trggVA3MGPU40mi4D^*oo%&`ls zfJkGkZbl0jeb5V%^|#TV87%Oiq9+AoF!6qf>{syZ}uLlVABu`^oSKL zTGISFrzp{w21klQi5VHxVbuIGPv~X{S)w(zBlFr0y&#k266}ijLZIL=ebUYwOkd5A z;0Z1aTF_E$jM6;pzu)`S{`>UJ)AJv``}Fbsho3#2kQAyO_v357&M)`lzw;OE$H(V+ ztNW9=fH6#o*&R#?pdaPHtteL1TPIy*Z2)4`DcG;K$y7FckX&P&iVL`BZ=6osVA8e; zu`Ly}ZVR{V&~9J^N4%SUV+@SqHhW=i4i*MTgj~no{U*Av6&~NwFMbU#PA}Bl`OM1L10Q$$qUkLfD5aq<$po=8!&# zW{MSQYKx9G?#)0q#<^6Dpl_@#hUr+DLwS?vp~~|HWcDFcVzsU>e$3FH``qt8Xz@Nh zElk>9%;dcG8~kZ~?&n8%tGlqIe7y1qe$WGbkAxL16O)WJ^^r%yMjke)8z*58lF@xo zTC?F|QomKttEfm-qoI^y%jzi8Q_8qZnKv@pvb(ypy zwO0~Mt*M9A-fAB0rad3;{{H6k5`O*uXFvaRK0KvbPJU4_zxFHqavT2M4{pQH&+u0F zp%b9Oh{9Cw+Cab;?@{H9os=0-SyT`yW6fJ3@Z!UgF5)t(-vm>TXjPtzzR{L;1S`x= zE2HGIDJIN@fh7zCE@GjvDHi#FptXY3e!TUAo5_d|ZV^gJbt*q)rCPj)54$P&JnE`n^eSLVbZal!fRvVJ8GYD4{SWVJ7xms;|wW=DecgzD>pN8_^L58raKakYWe zA=27eNQ^=|`mUUBfwUZOJ}zR~rBV4jt`|4ZfB$(Ee{s&I?|yaP^0V*tk+n|eyC+<) z(tO;Tul-WL+?(MC_vQ~i)mz=G*aD5g=sTjEi;mW!sqD~8C@K!u6+EvO%REF&GlC_0 z$qXsOgj*#W<4KSXVRG%T(?W0&1AEU^Khjtg5{gPc)gv2coH*Lv8(E3Raqfd=E+b7i zQYhaET3G>eRnzo6P|ZR`C756{8kq4ir9+#$EWEZdeDXeb8F+PgKk=|b1Z-eK*znLD zH$s;tL88if7lx(U5&Etl=rjJ}{hvJ5s|5Yx_T{x--%qPz^!eZF{zK~o-6GVK*62~$ z3!i4jF5((zLYlnPp68)L22+!Wn@56apC+hnfz8&h?CVs ze`_H)j8WE@Iq?(5e$3n9+TbOe(jG?`Ayc?uNrJ17((=WtrwP-KRH$Ajk`GsT8DTW2 z6~%bzv6(U{GA1SyFnlouFB(2qJ5+Tv>pZwo>qa(Z0xv%9zt8yb8?ER2`=?Ktk<|R6 zl78h^_|x#?=Vy4U`;eJ{5Nd%ur+k2Zs_FoUAp+O|lSjR&D`<^aeCcVoi23haXuD~1 zWUaB@iwXy9-jS`Whbz_2zyWIAX3!aswd)0S>7lIYk0yA;Hh2U4zjZ- z>dmWqcBeZhMBDnf4?i;`z8xRGJ9LO?6dy&}@S>)E?f3Z87!qGT$Xnf!46C%%E4Q1$ zF3&(|=(~898asi30vg()*US~Jz*m9$hm1*x?J&_00uCH5w1pdptHJbuTt(p1+;RoM zm4~=6P${AGqQ%I#>OJ-s<7^&Q7$&=WC?PS&M!&=}dZm5SQ&EBAg(kZ<)(-9vTVN~; zqj{zikh{wrf$Z23rwwHDsNj^B>IAg*=EY)Q4`uTlwjMJL?cKO)`jH*^@n`dCPSqkW z!sBbd$A8KlsRwzhJ2E@OE0zBgKLpT%j^|W%NmU7KCnRAf&QosGc91UYX1C|})v{Bh zQbSg>q>pkV6P<(tfiet`(FezgS<8ctr+$;mLU3`LDXZJa(m&q0DE~0fb~^SqH;;~P z6*7@r_n~tiaqa5Z_^n`l9(p%XR^~%H-jrJZ zP`LwUlpnHT#3AZoNB-{fLVi@qJm%Nu37SlJaqsfl@9@jr_^x=uXeMFyk;8)Ci4{l)domgYVbyoNC1l5DW+pa`<`r$`M%UxurJx1S!W=rn zYp-&!XcVm5coZ-Y#Yi-s2hc+wb|S)e-E#$dTt#;GIUgYp15U!WzN7w%M~kxhQYnGf zAfjlk^@EZ;wLq9yooQ>{lcvItgD=MD3$5|8hW?&8JLtGp@9R{Pz`>9(pk)!7|bN>SHg3tXQhEejc;4icAw~LW;$lDHYJ7%1Ae%IG2Wc zED|$&He^ZSZT*ow7Tjf89*yysQUBJ4oDpSd6)Fq+iP{nd4^vUm#36%=Ogz`rr{WQ= zLqqrqo6E-HmKCl?6Ms`(mzspMiqdj0$&xx+^mt;T@~29|{d#tU)^j}Nt#ImIWa(Fa ze?N^K!2`V29mw={M0E!_Le+K*5Fd0y57vd0v{;zoTNHL!Saap!Q5X=qVk(&~N>)O- z&EsRijQxylVxk#)Q=C{c>zkL2hzhvtkRL%c8;(*CdoiJk3i{Xt4~CF!y0@%)2Qx~{ z+ZSAtvHR#7FZ5n_!J&D%9T_923Va00-V{U`>6)i`ADn8~flzZqR0o@^%nf8KigSEi zMW$S9Ealf@#a~XpU`C|0_?V_&`5pc=toYVvUsN2>NES>MK0}&;u_ToMn0=QHsy>+W zF_k~IN&x|U1llg)dC#+-f4s!nbR`j(=A)+P?yxdeS= zhZ7O9BXMLm?zrb{B>T3TNFDe?mq)2FQ>ChS{q>VrpBGW9_k6dd)*<9P5TXmkxeY-Ro3F*5vygnB~;IFb}BAIC-=8 ztXj4GVh=LYCq#u2Z$dzU<_MmBI1#6_XYFo9g@QYf%Gc5ge<4PLp&l0y3MtcZQ5Lj> z&R@nzkbc6yT??$jC251|CmiGhr@}4jDQ4yBif@ni)1T4dr}rN|Jt@Zu4!pSZd*%1{ z)6gLg@K$$VLsPCHK{@fLLmkWCmX2MP)xOdAy=igGpEb%+EY|T(_@kW|a?#1|-q(&Z zRZ~Psy$K=d5T}S3Co*^;cg3ZiOq)Rq$=uX#JGvLQ&K=)%bf!_FFE)#g_Vm6gm}h%7 zP%sgB{9v8F2uXg`#$#9GJEEqvRlg2I`4NOdsSm-{ave=!BmygjG1$uJG0xJ?9tH8A zy7e>B|@*-aQRere{|Lq^%jQ>BWn=gJkDPmKlJXOtBm3C`%C)Q4i z2=(TvZP4Rc5xI7B02Qj%M3@uFFs_X;nbsntE-W+C_T4EnYHxKj(#B0tp-Fqo7EE>6L*p(6H(%t*C-y~Yn!+1Q{ERf%bGNU$ z5+i~<>`1rxYa z6r%!ZULmKe99ab^lN$PFe9!AACRHp~kraXNrPN#cOsI-*yTND^vNm*l%&<8kC^$9_ zLkB;ffRSmfZ6W7-Fj!PgJ>!1lNc{YK{q6bqw7&c9kH*I*OdR7&j_oVI!XM*E{JCd% ztNT#sL$%nNdg3#;4z=J^RIRG24_UTxYl5Y>1$B-OOW1k}vDDSI*hU@qyY6s9>clcf3 zTvb9;{kq4l_gA0SaKHa}*85N2d>CIpefv>g@bS~1J~?>hFKU_BexYCP%HRLtUHR*t z=&kP2J+$JgAq2`Z<4?1#h}tAVbVG%qpgM~BOE3>vEma3erG@rHEWAlvEtN9^DxyfN z<0X%C47#*#->74L_YJLJny$UknUz!C4TAPvK>m?6p*jLwL7SdJ}N+AcQ(8#SE~k8o#;26ikkI__l9G)4+?*1qAKj*uZY9E@-v+{ zbjy&+pJ;8X;O$t&Bt=P&)1(S)mEsYLYg{;;Q@rYHxv0G(c&3Z;0#SKaOB0{tnI| zv9I*F#?dQvm^73NJH?^qT#iH3JEAGP6vH6!RV6H}dA6z$rtjwCT!LVK!Ijgg5-Irn zYNKG8k&mL;qM?`d!w(v{`=s44xzg8O0Xc*?%|sAaPHo`Y52_2np|836xv}Ft%1uqz zj!@d)f@jSmVW&cQx1%KaI3x4rLb4r`O5K-}{IC5Ie{4qP;VItgUUYbT28TG@+{is+ zl_2QlAP@>`?XEZD%0xys)qy}P)@H8e+AssXeO)D~Yew=6M(M2veNQ}zU8EO_bw%qg zx`E#hT8gyiP|(H|>0vKkRFSj{N_APmU^;a0kgOjnIQGQ2Ea2CtEQoHBY99~ThoSh{ zmD8J^A}YZn?4&v!!eOk~f)5Cj=r|s#8&w&z_6XHq(dk%yYg$W>44yw*#a}!P)zRg} zE`06R_hSs6Uw;0#y8jw>E6NNy$w3JNHz36XZ2ufO(7mpM-mBKApp$TW!1t#pK|*GT zxH0+)@gLJK9bu1~Nz=wrKoF+SyK|M->OwZOBR7tof4$jbsIZP3`fJ4f%W#Qo*r`VYgdhY)cW?@b zDdT)G{UMm*AN&{#fA919A=~vw!ea|39VFd{!;Y=HUFRyoU=eHQ z9kP(mWDo7AFNhI)>{&2b(vSDy20^)b+j#6mCd~B42sL}vltO#~W)1pcs=BYTEL}sv z#DN*t;Zk?&v*)QwqOsnnBPpVG%nc|+RhIT3z$m2Xu|FwMg@TIo3%Muz+;O{#8{WlM zUVUWn{O!-{`TiH*e)I9u`0(k;3)%J;UC7sdi$8X2{rDJfbvMGWUO0WkmGTI?2(~H1 zb+4x@x%hI9;RG0hFV_~HccLM(kD#}tL;Pec*|btabsfvPL=gx;9$2qCX|VycgOa5qd2%`!PN z1Knm+ETQdDl=bu-NF!a!k8lxk_a1p$F5t9hS9TZ(ht3`FxyTt#b4pP?%E+>^TBg3Z2>9t}v7O;*u z(4=?9v$YBcVInI;&#aZsvPXe^lxv>pkCD-(OIOBJkgJNu02iMX5!y%YYuSik)n~j* z;4qY^sMhMi?M{`k!W?5zD|KbNIkZ@~j^QuZ6@M_8JlMb7t*;*qHE-GPcPJ%`&|L-RnjfZjt#(>y`lcVL#%n@5@G zVtB2pZq=S5Z|TA|-qoy%8|JS^c_`9vR#|$oM!+u1$Ej0^*~~YTBE5nUoSv)V zXs#Lfs)834)*MIm4c?VbX;jfg;kW1oJTh(n&gTV$cku0V1#|T<`vuwdwO`|x8}Z-x z;f?sK=Xk685v36uwHBDU%G(aCSQI9&eP^a04$u%_DaDxD0R zRfqn(1-zKH6oy}2V0<1OXH~wdH~}YT_B$69ZnjoQk8UvffvJtECDIDT?Qz@Yu0pAp zcA?h_4ob`9A*WtQvf5#}q}c?qCO)yt1VtCJAP`xnV;FQ|y;3r`u6P_2kp;-xLFL{^ zF5YLV(Bp0OFW&#j`wvg^eEQ>aK0GNk`j-T=*M5aRc3b`Dp5d+T!`&4g{9f1#3oq$~ zg*xT}WN){bQ!}@FpZwf;dSxD=Yf!WB)~o_+V@za_CXR0&#*DU&-$3(-{d9>moK+cU z8`ToWsK7R#FnZ*c_;ChC;3%T#4L;%yuWfxVHxAlj5pBb!V1VWc#Ij~)to4kfq6ByB z(tSSMV_>eH6E}oIQBh$kWw({}a2nVOJc@=m&Z!XZ3R})8RbEV4AG_VpYq-8XLRk0x zpFC-YY45(c3Vh|4_+#Dfho^X}dr|9zmY~*r;3{?%7sBv4_o7;L?7q)p3@VI4ZJM_5 z*|P{cidi+eq4iu45{ARqJLy|VoN@0Ecf%k8&Ym(AmINCs=BDD7@pXMgKQGj3osyQ_ zQ8=bFRT39cmug|v8`x#|<|2d2S0DODr9*w7v7sI)0Ur1V3ubLdm_-k!x#*Jkggu_; zV!GiaUeZuWvyz_H;|qt+I4XCKDDihbui`gayr<-*KJtr_<&|IHkJZm#Ji%MtgIF|; zIkq{U2fbwH>rhP=l)OT&>tqEHl?uuZW#^y+>pC_9zO{)e2f`dWw>s2%m+{~XJ>Z%2 zl8drn(+_E(<$93mh{w6IxHhSS^t##$$BmHgP+V{;*P`6X6dd-g%5_0-Ju28}owrsz zW=r5IP71(kB&^!zV49##e$%`dttxsjY;a)?=8OwB{wc?VP?GB1&4nCtkO|VmV-M$d zpI7jF{q_5AzkC1P(;6z|U$k*v`yKumGvd!b#9Q5oI%Md$pH-cZ3NGarm~*)4a(ykm zLY%L=Ad0_w6DOg281a6{LD^ANCqB3M2p1t4Z4><sN!{rda&`{|<=>^uo3sLFXk zjCkeO_+u5zi|2T&`;lg9^(ZU|>ogrk#z_3^`eSib$M}pmdPo9037hPdS`t*Q6M2oP z^WJnm8}gVwVT`fd4nA{>b!WS2Utzov(fd5Y=w%8rt(~JoBy5iU$Qc_ru|;hf#N(q7 zI;7K3ao;W{jYfa^=tm=W!{D>KsK-_&{ZtI7LTK2b3|L`!gA11lu_?&L)e-~oSWhW> z3LC0qzJV(aCY}Z}Cf>i8RsD<8S*IuCq^Lg?j1Q}MN5;!i`0zkG_fx)(3=juk^Q zL@u!z2@@#7+>^kI!$vkB^m?`MUZp`DXZR&xRYO#oi%L63VJntam7JK0&+e+G%}8t| zy*5Tf>x2SZmI6W9QN?2~X$!4~7xRG)$L~R|9;#PnMoi}!7TR8NCv^cfrC=q%mV}fP zi6YX6nCA{0$1lUmTH3825!!JBVW_oX^p~+64wFjwik*mtxn7P!S6K_&zWI3X_cxwb z@#pWK_P6?9?VS9gk@MPb@W)iWzkGzZx(iXOOt`jdQ4#gpnZp~$3|r}>g2Zuhz`~R( zf~`srGxEBHY0mOtRfLSR&~QE%%+6B#sMtsrMn+4S1Mge`A;k^7$coaZipx{(6pnlB zYF`&eGhrhfZkt0IqyQ9c9D2jaUn>CCv4_`BR!u@2)Vc~vVsJItPl9Zvjh4q$Xk|y> zQh!rw+Q7q~rl%0DB%7Cp?2?vqE2sZJMEtov;?t+|C!e1FANJnt=h7^_@=`Wc<#LsA zgRO?{rfHY5xoJxg-t&+^tC6_iy2bUe_Lvp+7lR@q%Pwp{LJ0Z-G0&5@W^9IL9>hEe zBnBZ6!v*4knSX)bdcTOwh;vRu# zsJ4-MBo#|E@UAfVo=#w`Bm(TmU8-QABL^eI)eix&PH59F6Q1zvfR_jOHXS-d9+N>|l+ z2FSt=Bttckdb{QzQ`Sw!QxWPaGssiY)-KbrMqWFTX_NYwBfTVeMi>i(=AsEx`idZ; zCVyo0xDOVNB!X1~rpw=%&bhQMmsvPvDNqs-peW>~WTGmbBZ(_aIRLCRqOn8OwB1SQ zNiv(c?96)cYT>GZ+}?a5NU^MW2OyZ)x-XO=dI(bLoJOBV&Ij9tJrb{S?x*@k?q^cE z*X^*{n~!9B?l!RCqD1G`L-}R>t5@IUyhSMg$~%NHAeg)q?6#_z0R~*SAl%R8lc&!gw>!12LMn>80FbvH#IKgO zKYxq&buH>j%oGb0W8BmqQb8uV-Yu?;qc)o8p&Cx-RCoeT%c&+2J{_2K6%h7JyfQ-v zECH^koSCeScvA<)dBT|7&s32G3LnYF#Ru?TQ@lUFf9aO*Z9^6oHr8C)Xe8pAh6JyT z(+%Lt<0v0%I=UGKGNAex!&0iw6KQM+_eAPDlP48?qSJ{s!px0 zvtL;Qiyc~P8FAz}Kz81+za>;GIT$(L8UD$&P;|Z~e(8d46v#R*0(4f>NpBwTVs%fE zh*ynXLW5Qfrqf&~eRmcL+|j5@rGw?ASeMmO5TkfDxU7)yhRAY(Qs|Zz@UODz5jGSD zya^za7<=MT0&%IqVoJ|L{#v8%q_%1~e(=+}SX){5*+$0J<3d;Y)m*NZkDjy#j~+8! z4+!4<(!lN3+`3-qAJ~>c2j6$-&Dr9!uoU1iPf?JI( zJEd;eN~=W5Dn}OpW6e>n_CDzVFB0smB=Z8HNks|#am?NGfTr}djFACXB=;5h3dlPE z++`%vzpauMWp$P90<1>PcgW-tBKL!>h$SuUz(WgV`% z8U1GRmtmgeRlw0*z$Fj4OOcAArAm8P3pNK z#)z8q24u@SN>(RWuw}{wz?oA|3Qy7NSBV{}MN@xu;sx4PlX6RkqiIwL84pDM=5w#( zM`m|E_>Jf7*#mV@UG`?(dJw-Fe*F9`-q*FL-jAhbBbn_%5=bCMo#dhEf`lvpNYl+) zby3b%NeZy45DaRuWEd9^E-|K^50Q?doI`hA@(Vf&5p@0n<6y@(*Jly{Y)-Ku$gkq! zR)!3lvpVK_Pluv>j(c|qsgygRr*ba{Nv=fR1^JkosR9;ol`5!%?z5AD2@EGiVy#sZ zz+I)QM}~C?YlvmKqbU^dNKC35a_+N{*PFjM_j&Qdr_W#hP;E@@3EAzCZfs$K1}{`5 zZak1*cJ6cKP2SfvnJbezY>QETEY({h9betiy9Tm}#3&tz@H0VIUvV;$(GGhEHo*eI z(T!oNF0#~%K77;F@k;7+>t-!CB~mx^HELu}YpY9Y>R2OAf8Nt?;@TpQz01Wst>kJ9 zfTST26!>K9K)@;eBtl&eJX`{JsRBAdsx3rEx+K;@L1XemXP33vJ!I0V6Gz@;H3HWJ z0F2Oxbr#yt)V3l6gbM|fFJ`hcxt~6N`WgRtK(7}M7%;OhV&$y|^ve`be!?5QuWM9d z>czI{h&Pce1e=hWpmj5pq7NhR*CpPpqTR}rr`*_@cMJ! zeQicxkjZ7zc}m38?v5^T5*zCN`x2I zu+JS3ko`=eKcW&Vc-34Kz+RE7U--scg3Q+Q2T{$n7s>qAqxfYVt>>@tzOF{H z#RN+aSLHlQAW0)u#~d+N>QFA5O=?01QJ3vfVPt@5k+9>3S&~q<3R8u(psoTqg-U5; zMiylbCC81Oyt*>8R}Ht@1;#S_gf24r=M}j{J)k+*O#*h7Nh_&?`D=iLgQJ-AEcTQ0 ztnh9R`6TbNB6ns*fj!IeM~9sbjk+48pgZao<-EXI)J%^7e!3s_Z375o8@5rfsUX zy+e)LTIZ)hV{C=EWPP@9WIM97Zv2??vGP&EAkuqaxq4rR`rzT>a0g#qHvFN4>`ks! z9%+49Ju!?{&eaPZM84a*8Mh|TbxMBRN!>|0czu`(={Q@NfAnH9b=>^fiwAW^pDyeO zZ#|fAF3n&5DogYJZQj?lNw(0bF4!x&d+#;XYIomdQKi|3Kn(B7$h(4-Y6i%}$^UFe z^5~u&UD9aDsg)^0AsQ)oODi@Ra#-K%kUlZ3WMaq4@`9NXm@^>0bkS=loRy;Pjia$@ z+V|l6>6dQdx=PH<=wQywzq#O6sC;CjRKW=Y%Y z#yLf>sATXK0jsOIW*(Y#Um7)Ey!`Rqdcb-B!d_hJ+;}X1>Zp0V%=@}Bi>~HKei8)s zy*d-O-FbNVn2_awM%x>}nCrO(w!4k$CT7n|9*IEXCC_gB$PHLdS`9g>zd$z)UH$+{ zHLFD6qVvT8k61yHiY0$Bn(dsKy9&H2JqPlkWOk$^1&L`g%>qX{tNTOIBIXIETKO0? zb%FfraKO>ZZ^x2JnOzFAOy{VO26?6O5<1P6D8x1f@!VJj>mDrgJ@?%a!>X zkEX;bY8+QA7H&M2KlREyUgmvWnap8K3#QP6PB08PQ0KLCsuVgw7MmO?bT#KmqH+Wu zx&~b2-C+)O_RP;tA{^V-O-VXrqfS+DdkgX*(kC(Yr{%B+sCRC7#CT{jgNke0X- zkHjzZ1ntmoy4nbt^L~xG&^u|?ob&NN_{L;@_VVS^CodlGJ}~-=>&6=op{iPbE)l8{Zo=-l6q%wgLG-P{2^D%a;PU)vGJ`=ZsdX*!rZ!+ z&4qy0wTmUoKQ~TWc#Hg_bSx z`wcAcZXW))J^%F4lLxG(6fX7cZ#;@$ormAQ#{0S&RVM?lOTLt@+UF2PbXx}WcG)td zXr%5xz&b1=#H{|nu+(Y{9@7z_4t|}wS&C}Qf~r|phbXd?RJ_x2HJ${#2U8y83>g}{ zG27S}&QQ-!g)GRflA9(;RmIdZ^OYWUQ23q|q~jT8k1wEJ`zp=6(qb|^I?Ky$7HI${mZ`HJztlRN$|QR(*$?mLQkpWg%&Gxa8|~ap z{fhEFA9`aRpT2l>Tsm$K!n>@;xbZlCS#{9mi@dKZvhD3uFlD!4yGqZK zfHZd>(gKZHAxA=79!Tfdmy;aWBZQU+V}VAlkXAr@L)F`rtTgs65;ajourLuFv<2Of z`J@K=RZ0No!w|d4tiAJI9I!jVphsAXd`lr7o;;=cSF>wvl6Z$_=St{N#@#6pF`L`D zY#)PkNIV&?b|9NyVanwia0yyuaZ3pwJTR+-Ng=IrP_MH3hcC*FDtzpOgw?U#68SK=-*xH8Sh=xbxvcC{o*o4b|FV9hq?Y*UY_=qlE*L$eB0 zfiZ{QP}wBIL-x4Vq-&NI*z~3{ng$@{e1cON?;(yc+hl**)EzCZ#}1=;wb(BLAQwi;3yIWYHB z_fQqr(p4;|M^c=n@8d8|e+<7o6A{KBz_ntg^{7HUj?ZfoNGW*V}KX`kcee227x!zo4f7M^{r~b;bMW&-+tAi|^p8A&9 zSW-OzbR2F?vQ|!qWS7+)Xp{H|Y|OyWTJfoq=rkslFy0`aa8jiS@(4qkf&FBQ)aRjT zM}Y8Bc!RML8Kg684PTJj>4o+=`+F02vQgd2a=OnWeLw{Gl@0RRL@Uif)XkhJ!FMt! z9|XvmCOSDyj;gaW^~~rXu&X1~?3n9vx*d_#TQ}_U8K?B{)|6DPC$N#i`swA-L6B+~ zti&j%AVV&!y8rWXw+ex*+@*O2Oq)6~-V$X}F-j*)>jOmJl=D4~h~16{MLH&iHw1uygx z3lWjGJFAVn6_xP`jI)^*p_wft(dfZ+**g6?$N0B?oU;t}txxZs_K$ylt{3C^qi1hg zpE822dM%8Uebp&5Xe~{dWx+taI`{lEtZ&02YT&BX7e7OI1Hh^KVB}?V2IARG$pe-Q zuw6|zJeHGrWsZc598&Cis4rlOc(c-&>+$io?`3U{7;(x_9X)F4W>RIqGtE6qxn63becPsZ=?ttOQe`DyJS!f%Fw zD~IIOY~9#6KDAumE? zmV7l53#UyQ9-d-K)tg9c0X>jlKBi~>0<1o#YGjg5IU1n75@jTLbAIoA>&H2p(eFNP zzrN%Wcx6s~gd%S<#rG8>JK%DtQGuK*_qQTf_2r7~-jYA$2Qop2GBi1smYR5mB-M;y z>5dR`_Gr;{4`JJ_7?L~^Iz66e2WBT!&a%3 zol<5C@&d|{XHh4)%2iwUtfCUDtQaL7YsrEV3hQ79)d-GRvbxtvH#S-;Ba_5ihM|5+ z@&+%e9*#DqE;ZPQ=iRBdew?!z{q~Ey>sypu8nzmo*X%kL1{1cWit^=bsR^E(9m&%z zqA^&I@3T=fr;4D&($vn+w%x5tv{9O%PO?A-Ov9WNa0t+5yUBFNOdwL`KH^P~es`?r z)A>5&PGU}C3?a7+28<%GM#5w~3386j?icI|_!qa65Rfiu0;raeb@v73O8H7PXm#J?MlTFDEIc9nuk$y`pGX`VPiTFmm0IlAm>F2^VR_^$zdTh zRTd;QzHUh-g5%UDC_zZLcaUL_hlYSLBM;l%gbOtGQuo4@FYCC^s}Ur7Tq?h?s)JZgqssl^V!PEOZZ!Zcb< zOlJ)$OX42^|7y`Cii6O$F)%wXBPn$?Nfs8?WV}nqRp-#{E0iTH!yC)JyTq7M+V=HC zfA=0MJ-FYxr3<$w-47Jt{DiCN{iG^GW_J88e6-33rC43_6X&~3&(=@@3Q!-=-K#V? z(*SnLAJy=sxs4qFfIxr048yjgjxnH&N{O;iw=(Q=kdq8e*ysJ&w|<<@XY?f;^2Mte z{r)k%zxu21m{_9N+u^;_18~0mRPE0=j?)c%; zUw<^)^S_kw{_fLfI=5-8*O$*fTfgzD5j zU0&~jpMUr({OkSCKm4^9AO8i%KRsB#`Eos%gYmtP{)>-)>5ZSe_*;JQlW*M{ajEdm z6sKOf0zB6E23J(V%3p2O(=#dz$p*soQI@M!ey3JW=)36Xuesq(E>kkegahf~Ed>Sk zOIGnzDv}vnwW``Gu+5t8OVWg-ul2hp;GBDJ-FV=BXHRiDm#I%ZJ-v*>Ik^_ko-Ze8biCyX>eE1&6b*>2j^T@O> zBaE(AdC>bg$Gi38TwNC58w}-x{apWi8MNHkEr-c$%f!H|u!r=L)!&`Bv=k3%P+d^V zKL}Py#2i6K<*d?bBLrTCZ4IIikkWa@@$g*|W-Mk2mDyavnqX8IYEz4Wuf_*(6g)n> z4qD%T#on!X7>dP5!aDF$-Qc?hGB6n*XVmtUmJ5oypU&omR_WLgw2BuR9;|O)`6q3f(2bOXQ>L!J5djy-;2p`Yv@5LfHu1|X} zOe&-gu4sx}mX}KEla~-Tf5BJvqhYS<5LR`oWs_!Leq{E9+B~AFKzNnt%0a@q?jeWxTbDmLk-}#paxY2^lK9^eSKDn=Sg3{D zu!N!A&=zu$0o>PivCHhkc+c3P8b6w@YpeXv1~ifd9E-`azXKFS1Fn+P0b``4Nh}ht zAeZ&1+a|XB-g*LKnGHhRmIw}`SXcB#MJ#c8F{PEVSuB2?PpL`3sR{U;vEBG_u1@QB zU#`c`?%K<1;nNdU#L*_}jt5OmPFV6f57k&zmN%<=9>Twiaus2kmHIbN2V4ZLGe@eq zWZP$5HH2N0w3;*U0mRU{Ocr4Bj=YjqP~k)kb}ulb3LEA-!{>-#;GRQ~3BP z7d#0A#4tb;ZpRp;;V&tVbw9pp=e36)EitcJ!j!7w2M@n8A((F^?&V@apHLL=j|8}M zgltpFLvE0)@@-Ck!$+FWUe(L9hSXM}&C)5JN&^grJzSj302fK2E@}9{QW6JlrfaCG zIzEEx@{^wt+`;^&4yG-}<*M)u0IvK=zjp3IbnC~ty1ZUdj4P>` zg~BqiPLs{7c|yOhU6*9=3BZ|DO?l|*)J01|0f?%mpY-UqJQ3Vfhl(9;DB%&;Se;So zcz`>&)0Q;(h`JJ<_cFY^CLqunKpjBfok8Q~H%5P>)|PjnWa$SG2XY{mo468-erDb3 z$Hr)o^htB=@C#eSMmgmddGA9JqTKwBnBl@~n_9SdC; zTGsNm@gH~koAeZ*IV*SQwhj4N%_hztUG<;0|b_PN{MxpADI(%P&%AS|-HCO3-!cJpIidy$6>IAMQH7>AQ|i zjPdp`tM7Y*So2UZ=q5KVY0Eab`dH_V*xjqELe_DDy}O52!X$_pHpwg$kWpBXVvs=& z%c}S60U)tv1Bzzw2B2nz`*TZ3-cH7!{qs76`iecdtge~@+(o1j*B9wL1zhI zPZbY?ib<u=g6$?u3r$6)iKl#BoU9?4zH=#7Y)q^fusX=5F zBa@3AbbiRKqHNWn8>2o8Vt;^E$xXu8T?p(0@H;&;xb99;AU=4xn^a!_c&Wj;<^V(u zz#ynRXhH@nPs-HhTo^*)!bR1mZIO$ut9${mq%!lu>o%z=h3KyWhydLH-#h7NO60+l z&5DQ_ptDK1fmrJ!|1LwRCXlu)+-`JsHmf%q23+FXArqs>pAb2B6*&IEXLp}{ddL~J zColHX=Z_ye|Ln=jM~^Sg0B=2**Utds`59pRdS`&yk-O}cN79mg2xPgEISqSFsupTV z2hpbHy)H_^lC@({WmX}&g58Okek(qco!N@)8a}BrOOyNnXJTGqa!VC4c50h}MQSIH zyW!>id47j{0PXaQ}WMQf*0GF1OUAn1|sOW~74=1@~`6v-MR!_X<7T5qEwy09P z_Qf5>1)qgv8da-04HAe7LZs$GprypdZ3Tl9?O|o`8oAj3>|`Gt)9id_5;yUU@J7mq zYQSe*x>t!-tr+89Nid^9untLqm_nTD#hJv^Tvm(c7XUYYoU60^i?3$+Rb2S&<)gc+ zyi&zkYG({>N6&*EB%X8zecwgGh~y`iSikZT-{a^8QZ9-%sl-z!s!Pl-B_hZYYo>2iPc7Zo)lTUl ztK|$H>`T`&mQ&t2=8eL>_G}+uiWb?9 zV0HrDh|*$(>5MssY;ScvDTCdW*Q73gU( z2+uVMZ~+&Zqza{MSkCV~z&{$#LaY}F>udy1&NJ$gAjrWIJd|_8^3;Dp1kW-Z)eT1O zqk}p6mQ#@RDorFUus)J1=~)>*WYq(z<<2{1t3(z{iekpK$Frw*Ki-e- z?k+6VZajFuvwUKPqZLY3@m z%0lnZJ0Rb~HFL5@C9jT(txQE_6D###Q`Ko0Brv&moO>4XZ8b7DhAVg;%&?0+skz%l zs*!~bJC>CqU;BQcaeV8?Id`CZzCK+~)^jb&&sp!4faa{tpxHwmfk3pSRUdO=i_K7g z7|t2>PQliBDJTxSg-n$tBqD#Iq#I;dmmRi@3D9)vU0{RpgSPWwP&XqWDpMCw3jnPH zh{?EXPxATONY^~HUPxD=?VGl)P)Cxhwvj7FNj0c5mAIQo)kId^9)`U_i8`dtI!!w| zRt3}mm%u)$jx(VI9?wGGNmnD%T?;xBKe~Hm8PD6*sKmnoyF=b0-jF_=aH!O(Ns}FnEKL@jLh0U69=M@eh@m=-R#>OMWBaOT5V z(TB654`)T+#95KVVN(veoLGgBp|Zs7NZ)%IIF#p~i8G*NxA=b8?l4h8_dTf3I>|J3 z6?WEQ+==zdzc=|g(I)s6WD*E^%sLYU0 zuvZZhaNGEqzyJjxEJMX8n@ihOWNSxYLZh>6PnGL+JHZ|jOxqelkbefB7=X2H$s}N5 zT~+yTW>t7tDEpR*D)=#<{w_U*3mNVJ>|~{=J5tu6ARMCalB#c1W2{jeXXK5%Z`u1y z-1b8XK6Y%G=kYk!6kzH~hD6beY8jhrPDO!IJGH)!WwS}LF9|ZA+Ew>NcAoz3qaFh` zFBU*PR_z>le3ZxwLSqKWbp|PUG=Tph1nY=i@EvA5Fv_4s;ezCP55;8GRGv+cq4CQ_ zHl)(Iaxv?OsjHY$bFFW%pwRAXZSC~;9C^m+kWbDOK`mIB9R!**MTMiAZ%WcgkbDTM zmXGJrti)IuR@MmVNqzECim${@0GZ<&ZSRVq%#Kp<4H|B{e8zt<^)|4m36JOk}pI~`6Tk#%bxHVH9qw%7o>Wg`hI*!bSF<47!q09Qtn7$XRX(H(MNwrm)-hAN%=2w{+= z?+s(w=>7EfAA7_FRZ{Z15h~g{G0O%C1+b!WZ434=>{2D4u6~!-0WR~OEn~%k&@dSl zv?@G;4?|-Yd#MP@3R&0Qrd#4>me$YxaUf_6B-tfuy>>kP1IHd=GSmbQMrb5bPYMFc z0eaM>ne!pbCFyfw$DXpcJzA=zk(G1~-M8FER~j)lhJB05>83g5#-=4)LskQzcbAoO zVgzA5OO2J85rY7m(?59Z5tS?VNKy|;`_o9#)i`ZTZ^1N*8IeuHON}V@pEOmbOos`+x#U7(0435BiGWi(wDDAK5?c1|Kw4e6cUdHZ2d!f#wBxMu^p70t zV##bCoH(*<=&gcvkrR&B^}Ew?9D$e_kZ%+NEXR8mrxg4N-;1O{KvC=`gjtmwz=MyJ zCILC-nb(&=Iu9Z!CJlw??o;Eitg^;Yz zR-JlhELLWZN_9r|yHauYftNk{J9zCN5l`Hit!m*3VX2h1kqf0!JMP+3&4E{=Q1aXX~78kse5T^4eoAH;Z}H(?52cFsaV~iq4J)a4l=? zwB)F$%2s<+5k*n}Goq@+y}{(tmzV~aqgS2k`eDutyC4U0LzIyj5m9~wUUxgvK6F-v zbWK{S#GA6EmF4$jeOx%O-uQ8@uDL(*_L`eN=1(7uSDfg|isK<8020UxVknv&i6mEH zWfDwxKsTtajzZT~F4t+N+lEIuRL99&Y8#S#V#q`ga?p%A)`z;8m=_U8ezHWS4UDo| z`k|8F&6R=hpyzk3I8qLzDti^5cP*YOty`cRFsgXjl&MNtzMzm25?X~%=PeED+4}*| z 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 z zwFTC7bv3!rW=?(&sxu`0S+!R-{lW4;bh1#1dW@`(m-W_R^>ubwU0ZhNi%s>4ekib#NvhV?w^Cy-P7ATE;Fa!W>1Q-j!*|4s|fzqXpoRzRC)OCD4W0Nly1nN)WfwefKbWg7TnS*^>cr z`aD0wO$e8j$geJLq<7<*Y-ME{L<}YytLt>v>{ciEXL?kdP*Z9FxWwFT7@M9mbT7%2wj{Bd zuC}46i@%!LSfg~-2s90b=+O?+Lo`cNV8i0?{?~6l1Ez8J|NP`L$c(o{{nUwi%lIbe zT>PwnLt=)PsiV9jA^k~0poZw;)Ei)eiz)&pllnB&Cy@A~U{tS~bV1nyxk=qiV8;iA zF{Zb3Y@O`Pri|%gFRVgyp@0Y5IIrlnhjVVmd;M%fqIKK*cu99yy5%Wt`j}mpLtWaL zoy0I=_E}wBnccUQY+Z&TmC=iCh6^}6LOs3hz3e*QgAKUD(~ZMKnDmW6`@=1pO5^O-GVeyK%7V)mxRrl?8WCnu<% zM1V(n3F@xO#Gov_!J~?9>wdC38FI_1iU?^WS4cpu4W8$UBSLw2&$|16fASeXt{Vb; zLIn8a9iBvAKB9ax)IOO@k`8JNx=WaffMj|za^z$b*)k-cR2-61-WKkuM;!GKz?nx0 zd+odl`8E@-iSV*rW3hrfILw}MdRFmcg11hS07;z9bJb)~r9#t{=3(X>38KT;vSl2m z%hAH1_?fXg;9O7q&pJ?t?rcNuDLFs^vk&uSFA&2*BaZo%RDPI34?w2DCk@5eID|ol z?CTpl&9-#DbN(aArM!Oi=G__ZU3=Od2{{HeZG2D2@!{V;2cb|m!$?H+y#g7tIGF`X zw~}Z|RQ8kHDaD%RQyDXreB=(`y9*MVAxA8LT+f8N;SwmyZy@x@p{R)({MHZkM1X=C z8k&4vLlof47Er$0+4v^_0@v>Ha3$@VZJE-o8}q7=xO;%O=V!{lmMzq^fi&)! zvTX2(&gA*py{Q`n>h+vp=Tsj^S1mOgZm6)X0V17=CWas@6BW^%olXDv#dpu&-M?t> z#^cuED^J{`J$6+3eQ%FF{QJi-3J~>xKmfE=mqQ8;uDMExFPslD0Pw*`P`7rqSs8-k zn0l>M=Zb>_OzEeRLPyfOTpmJWBoep09J&)fu#f<3CEW&iVpt|f7=h2O=iYVq=fd)x zKXtvS2RX<9AT9E=*`dQg`4(R$!A2gKMh@EqmFSJHC4uLO+*VhLfE+8yCAJ9vdw2y5 zcoC~X=BmcI5evy|f+OWhkoZMXfPyl)d=7rs9?rQ6wY_=Me*5gZms;!#2{Nz7ZUlO4 z!266-YYHn%5^vBeJDYzU(g@JqO@3qQ0m_*)4dhy?WmK2@ka3gBPdA~QJ*a+WGPm7c zXioZ5y2#8kOxKHE=&GdfTPcrG*TdDc<3sV8d=PC0W$h$ysp%KL6S&4{8c~HL9$Zk=@d~zA}YHx`j^^&;m!w91^xMxSdu>K=R~_Ct*WIXVVcO_4X-O zv>a8OG`1e$2u#b99nSdm%ELJmqZjut-=~jDWm8*lmHd#C`a;-BD@b(4m+EA%CWm!d zoa;(uvNM6Uz!e7UC3O!x>BSN@fziNq3DNBe6O2$4vPVh)sg}0$(r{CO9l?64=d{Yf zboBJNP&|B!TTCyNcKO05#=hBzP68fPI+a8e)%0(@oyY$M;Cdn6@}ffF!TY+MG69_RCjxN|3CnsC{6_Ldb$-%Ax7lBOgxA5dcdlM)#7-j=HAYWqGg* ze{UQ7rMq19)vApmAlgQ7oy;D;1uD7f=uUn>uvQQ7JA>FO-z=QA*k3q2U!OtTFxz6Y zyq^~+yw|0t z*iEZMY5-v>#EpDp_|`aUs9>P!1nyawUYs(6)u;5_yZn#d+!K%DPaqjS0`-l%gy~AfjYWN{LF&l)^+`AcWa* z;Ev!lco@Ah^SNGBFvOKs(@C$frNQ;>PKjBX!(N0)XT5UNw_=BSz5!4qMa;)p-oDd`1o`GgBFKRKYx_LFW(It5V{Cg09(KjO~Rc- z-T33yMLl*_Z^NFPtE$|>E8*jT2s}b&(Ukfvovp6z5eh@sjd;?Hy1~tB6GJoYP)a!{ zrVqmkt505<)}2fLZakd-SKIjWw^xr_l9QcB!A#9V3~2FD6A59LQSJ{W(XjdChNr1saOr3)~i6Wq!<`8A;2hyzD<=cK-3_I z%G9sTSfz#sU2S%#K9M_QLLJX!JO4Lrvtdu1%7-p7C0McL@rbFd72Ti?g?ee7U@g-3 z(3vA&rCtzx9MNbm9R#SH3`3mKyKGN77;PnGR}2V+Q%R0W1eDP#El&B;05wtm{;=5; zH9586{y+N!+3TH!8!ke$TMWcdXz32@5@V|}Jaq+SRaV=SL^}6QHds}?v1f7=-&ONe z34x`xM|CO`86_4rWYqQ#&P(MUr%L!%14!LR?gWTohfNmweDDh&lhTw90KIZ|;|RDI zAk=jAI0VgjrQ-@~Y0VqMn?`77h~t5<8hyLd zGAiBOxEp;=H)FswqZB;qh^c{@ z#^#9-(&&Xh*~nwWsQM|t6GUb8u1UpR`m;{qt%q}Uaewx-ntj3HuZdQ8Wz0y;)J3o5 znxN>yh+$s^iZQz%%P30*USd}dHiQ9YWvxKnR?@yw`VA`w=^Kgzna-yu6)uO;owPP^ z9@#o+9jk~-4ex+3jSxSS@^yV}Z+$-ha$WGe*9AX;*1hC*VpRZXM0}jdB#?xI>!xHuyjgf~$S7FFl;0Bv`Iu#$4eLd8fyTN?p6xuGzrN(F-*dj$-v#LwmPT)u^B-MD4 zk!C)PN^D;0mhEzDk`2I-bppgnTcySjjg}Hr*KA!=49LR;$vuw+de|KYWWF zOpkJ=q|2l{J507V%@%PbRLDio#1acBo^`F9BHV_hVkrHn-dr%*WK}8%-P79 zjWQelYu7#p+^B>abV6sr+RA6Zp(_^lt#j2CKw62g$>=*_SS586zc4 zU8A<<+mZVc%^(yHBM7^9$=eS#hBqowhYQc;lQyyvUN;CwRp}Ct?hDtQJk&0^7(I?i z9Zt@dKDQpu*?o<#+N*1&tZK}$!G})$IoMUw+VRtLD_j9U9ffE)VW$arD5+|Zm8JWh z83-toaO;liNw|ylQ)hWGKj_MapwzM?(PI|249=A%N7qGCQ;&?HyTP;j^1sP1S=a_X z*(*y2Pe0`{anzOIwo8&`REONIt?+FLee5A3fiJjxb`m(r(&bo-%ak4_MP3wqY6(RDhPP z$?^tvkq#{JjKsQN7s$7J{+9p=17Wm!#IU0hX6t5!m&HffRA8t(`xTq(I>v~+T>T~t zw%W4?MZ^A~FF2ly6tH;YmpuDv5!6__U|4OSK7j?!sv#m#GMnfvfdRw@pu?|Xu`3$W z*>3nrX$MLzhwz~i?rwF&mvsuS{pdWKak<2deDt#JdmIF&6 z*9L#sz%)?`wrptpCN6bBy8A^h>drvG3F7nx^sg1hK6YSzGX2BN21r3vQuO(8nlL2gXlMM)W8dfkYtC8TS()DAezxd|y z_1AAM{Kl=P?$hGfptQIg#I}aba<9GQ;wy|T!zY4wrmIQtQkNtH)694}H2^UX4Bbqo z)LaaKASofBJ%$=Z5hC&PU^U&qv~8CPVl01pxS%q(RJp5?;e7vJyoeG0zIm@dcy`p| zk9L{Na8@TXyAvBtYyzW|0?p1xx_VX z^X048y}eQ+ZJffz71^z)@Drk+=TEWiJZtli7RR2oF;#d$Y6LCGGg}a8w!NvlSR7T2 zF}-Emv42^?Uc73VqiU@(%XKb9P~1R&|H|cMR+|zxb#y z8TsC$K~r*)p743^s?0d`rDJuYCNRw17vFj3Nu z_;V<#uIW~;1g~BR?^anObAu{$#p3}`&?(ia8&*qlib2lK|I|@0f5+)ypA3 z&U|ziDDK9?IoB`ZyZH0f!(YFa<;z;A6c-rg2ZX*2wK!ag=;1iBk^sN=y|IE(?aFkY zt@O;|q>$AdMmujI~Qz6e6piK;A6Pxnt<9hjUuf&-cSO^X~n%s`z2me9V9>L+`Ol zNwE8o<|ss5C60{<0`<1osP45U<~EnbYuF^MGutG}0x?f&K-rV}PP(8ENqKCdJ3$Tq z6r(A{8Y1`(rbo%T8?~Qs_Cu{FyaY#E!C{OFs5k0fX2HN9X`exSjcLS1#OMu9APs>{ zWy(n!zGBs?Hw{y#p1=V$NAhhp9gDWq)d^%`hc=bLI)o@63xQHnx-LLl&-?yAl+;2L z%fQ*N^XyovSnYGH;f+*6R0T1VeT|~d!O!DDNdrA6TG?hCwvKf#W%JA0`rqg)5VLdu%GRiF7X3;7eoS!D?U83_u+$ zw96|7h#;=T!XAoJ!Kbo{a)aJp$}T*e5+C5c*nlzasIKC5Fo*W2VChO1G%5*K2_!^p z@h=nKM@-#uNZA42=9>|pWxK?}95z6wlDk!_jH6rXhK!Y}ZDZ9@USX3(r1E*z@qFp1P?2W1U@fN4ZGa2t90OOU^gDlxeV#;dUw}BNWZ);5FD$|DLOvg z6A23uhE;GjsG7F#q{i{iEBA&qjIl8F>c-x73_$G!*l3Eg{=i6e;Oc-!HaFj*FE#<- z0ONZk5P8{2A~ZziAx-d_JzMAE2I70?C0X&DlbUz)Nh;wQSutQn)eY`}lUaCi=7A4k zOR${@qPqU|LvF~0dXh=vkB!{&b$u1z8&>wLa^ z>)~9i>bpnQ^X}V+`R;1g3NZ73n!wagxouKp-|OeXkXM0{tK*e_71>An&7t7~}tF8`#Hw`8g`M~kXQ1bS;A z@CMjkC}pW2s_T{v9Gs3q?bE8>dN}7*{r0Pe@zrngp|7Qvu_`&5`&k4BNv2_s8o4Q|(C2@#lbh|xxel?^wy5bmSA7!-5<}6XN z8suekkjAgVhxRJ4OkNz8zTMPRNy2-BNIfh95ToX?Y6QN8t)*2K3!ZBLxDyemssNJN zSK6!+`Wo@gs;*!})gGyaQ4+tV8Nw3rLrM>w_yY8s(k~q65P$38oL2P@zO&_8@dCpv zUXEs>z7Q}1;n8IW0w^8C+7X5X(SPP*np129VVPgSRl(1ZPG%7D*Ht^&u^ z2H)S5IH{|38zy@s1AYefRxJ;g)%Xk75n#_t;jBx)vD?+tk()Vmy3^;8f}51SnN)Ri z|6hIni$8mIY4#gu-Tnkqm(R-Vx6WJsq>WNxl=tlgtLFF5`A&Ya~NWTaNSft!I+2S zSy_{++oa}Iq;k#NFX#I88rO6{CqwJbdFftBPTz!3RqeMWjetXuoZpx}6#kv@ zD(zVXVz>dKCxO6PAgxV0u&G`>0FUCkqU=YdbSUZkkV(p=}9D;ym{wPLVg`^&uosCazlC0e&W3E|C=9! z#NhpZs!_zumLFJ^4%Xo{u}CDy7#6=3RgxK)80697pCVyL7iJwO9qLl536|@Xu%40< z-#6a_cw&%Jw`4dAlq{umqMUDp5@2lr#Z(Ec@U%SS{eS!UA^IpgYZ6Wfy+Pp1k5C%T`zM? z2C-g5HHHPWQyRMQ9iqN8R9D`;l-Rr;{S}e;u9-nHenGmj7m3(ym@JxVAON^y0qRNK1--Ig{hKc zOE^+L*fP?LmI4FY!8~;uCyEbVAP~&bHpqv7M$rY-g-zXdIA@!Bb3J{WP`0IYY#YO9 zYQj1DRBcMp6+-rGX_YCd|8(iW@#5l^s#Ea0xCFinW5=1B%odjv1LK$4GDg+A1b4l` z4||=)#G4p+NAy5Q$&}wHTn>Y~k ziU)B`1xrR{T3ub5Lz_-ntOx?*FG_6bno|qPj0ab~`CM0RjS_~y?vA1ZDGGh4+PMCODvFRFPT#dcBRf`Px8%Jg?JYa;h z0)8FW2r$g76K+}MqovvV|K(srY*}3Np)8fHR7De}X26F|2jYB<@Rg(wq}GTD&b-AA ze9*OJSL^NxTZI=e2^JOyHh~+cp3JyDo$vLiUd|1pD;CtF(;fBq0$GAlE~+AKJDiiR z`6qtWUOh-}=Z;PN+lch)VXSZ7Ub`plFt~>C0espRj>R=*m-63u}`&ms1+B z3Y3)~25ebHW%!Z@tBtLeDy*hic1%#-URC;Oux84s;0X&;Uip<|{vtNSY$%r@Bs`po zRLaKjoJ-ShEhG6sxz`hRy7jdEgmk8%DiUe{qx61ca4G>bIvmp>$lOu|>gag3swKOi zt(ThJN&pL3hdNzJArfA$Y+Q~r|cZh z#TPf8%B$^D!l`{q_&B`Yb?|3}JewVYD$;Yp@Ru#t>B<5=&noqa@7!%F%@y7=Kn6H_ z+r)sfx()LOI8o{!NhL|^xHZb7s9p~&qBV9B>R!oeZUD($T{*)2|9apFH7ztp1sYQn zf;n<)BTHJn5=QHg-(krY_EQ1EN*{tbClzo3<#Z3RW_FV`3d+Pa{7+cT1CfW6gwxUG zE5hA?RG3eL4P>@AMnZ@iL%(+GdHkepp}Z2fm`(Lq&tA~L^{xyG*ap*IA^ETmHY$^yR6R9B zWW(gKdAbz`;1{YXc>qN#5JCZOOe6U+BbF`!fhY}v?2jv~RV8@itj=}3yZ_%lfBrIX zh*4u3M>zb({j}CcpK&%tj)sdNghr((s!!ZdX$O8yaQvz6x+?zFp^#Vp{x+dY zC^gvzlu`mZh)5NW(Kda95|WMr!Hjn+?Htpg(cP(Gh?kVeP{tZQ#7Zc)=xR>aPsA3` zzRr*XG|xGlDlDSx<{HQfa++m&8|0=Id`IDwA3C?dCwl!Cu*L=>vRj>+$@t9H{eU~C z_x|CxU$uANetGx)@j?Rr))RMO={jQhT}yxZ`QuL9O!7_@FGF9qf*MyBbwcRsF3O%x zd9QAF1Mz~Ll3H!yi||8uBetZv0^271OF-VnNa0bnQ^ani;EpZ%7_Zw44^sD#yrO&& z*Bg^mF1vExcsM7c_{*eUIY}3 zRYFs|D|H;QVRS zV;!nklzISmQg(ZbMn{|y#fj?atB9x8+j#*1Tvn}UXCLs9fPq%DEzUc}g)E7hhBa-0 zW~LjvgC&>}0pG!AqEhK9AqmTxnzbA{!E6WN-qWuVa?D4SCB}*OX+q|ELyMw#@+u~q zHHO-y9~tbDHdkIG7Jj`R{fjq`ulEDLxgbL~p1e;h*6eH0G50WKh|4)*dNtBNcT%IC zs;&-Fz~eET*ExGryGe^5H45m6WZ33e1 z&6SU5GkzoZIHi-(5;M_NKJ9nYITdifw5b+NYb8~}u2h>>zPwXexiN-`R?Q8b2yCC% zxc@&tfBtroPW|MhbjoB0!r64DRHY#qo{w=TovEmhsjBcS;+<_>7=w2)EBC{wtD>3? z1B?ej`=}SxrP$#bkEGBR)vhr(HE2yoPTV1fXrV6toJqM{hn zP*J>E=MrbP`o=CkF{m;w_eqSF4tv@r7Gc<}bW)&a8bY|W0w}DMq@v`3F$#z>R88f~ z1*fDM9f)>4yPeP1H@|xLhC!aYRo{5lu8_6-yZI5HJ^g&sL;l~Hy!r6<-9I&6J^cL7 z-~Qqsdg`C0#5p6eGo9uR<=z6uSoCO_Cbqd+Wdv10lpd<_O9K3CuPN^fm@s`6YwZpa z3UY*BUfc{YP0ayu3g$w%6DcS-Bg7uga*KRHamkiTk6KG;}=QG2ao9ylhn{- zK>`)pfgLJn1J3G>IEXxYmSzhZwCMrxMPoE7Xx_<3Qhu_j;+S zNSI^AkyF{kaX`6x1#MOY^r`MvY(c$%`@OnNMyzy|(y&=DR1l;WRukQA> z)-qv&JWT)+!BAGy9Zc4}B=mGxes3Y!N>7eiDz_ylX~?vpM1H59mtGx(lox9Cs94`7 zIANIl(Qpq&y_i#95GrZxRHNLR!XjHWb2jz26Qd_ucbk_|YSoTb zmGQ22%3ch|8vB$XXHkL5%yDm+QN$9jH9`6Z{*7viBFb68HkUko2ur`LI$1nhKzxN~U&b1sEntX|>>- zmN_!BaUO77Mpc3mWm|g9Y_*DQc2Y6G`IUIf~yXMPQk2e({sf!`>Pl5_s21Ws+)iqzuYMGRD zVN$bI9^%${HspRD9of?T|NZ$de)inN$wUyBRLNl)$rlN-fuw}U)YjB>=2t5y*+DCc zi6?_K2zNLnls zU)yj3gJ?ftR?O!fhE*Tx4GWg^xfv+$_xS+-995>#F9AHUZ=dG*k-hc>Qh58QeZ zuK-!t{ttkxe*P#Rn`V{pJ5SWq8Jc+m_;=;R;!z~b)72SeY~5prBa0<0l|zF1@Ctr~ z#B~%qzb@G@`WJwt%vhL1Nl?s06eZQ z;fRml-R*U~T^ArCr>LCvLi{&Q=wV=dkvLU}NW|7;;5W%jimUKcD@l!1j%J!A8O^F{ zhz+_q)RA;i3yODYmkhG+U~nX$O&f^%Y9R`=fkLiqcUvv0@M>v8NgPbFQfk&7v1WZUkVkr31Xvd)0X4gf zLzB!3+hPNy_8b@8^=>_!^C4e*^Z2@7JG5O2lX6+$qQo~Dm6hs@r$ael(y7i>%TgXv zg?y@&(*m(TsXCB^c;wY?Z*5;vVc4Kpr(6ig_Y4hhP%4Ae6S)AeHyr?vTWc8cgvMm^ zp;&e6>x`G%l}~cJVlvM*q38ze!c3~bGk0HmwHt(iZvkP?sY0f(fik7Sj^qXUoFOuC zUKh+03oSr-sH1yQ@f++X^;iNLW3{^wvQ~=tqNe;b6>&}A&OB%D-Fi6Zw3IK`yF1+P zYF}TwUs2Luu`NfIa7pCQsiA;!M7!6a##}wAjXSuvHC-CvTAk#_no+s^ng`!ZgyB|| z{O8lgRnIE(=4dT(9%b52md@o>&(h`*a!*B-BJ zR^t~@72uVYGF|-G5~|(m;aS+5%8k|13HW8(K?DOTI-~{@ByeTrY;~&?@iR$hpxA{~ zpEsR9MC(=hqrMesF%=yj)|8lGr4;G{AM?Y7O-~nR&);KDNg>HEA`B*_15G?rhR2Cv zEic8&0ks$ek=#csjGl-Yol57_HXh0iz<{c3h0_HTO18nmiLv9zXHa$)i|v&mP(Y@- zJd`^6l!^}F_oocR&gqypp2`cn9!}|);p5XWtNMsdN8~atEBjAn^(A7h18-Vc0grPF zRYF2(EVrb!Cvo;v;U}?2$pa55bxHSAfm_||rQWL|yFQbu;Y^JXTxEN*L$d1R(o6sw z*v?r=?#9D8hlqdrul=+C%wPLZh!CgOsa1o}YpLLrxQrov7L}e_rPTDjOT=8gu3iaY zATnv7=F0ka_d347pMA^Jet8m4Yv518^peJTH& zX1aN;;@i>x4QHiOdr2A-RU)=F*HA)Ol-f3ks6rB@r9niUN*(e_7F*B@{CWco13GK4 zY`dI^+^hrPH-f9&aSi0LRx?1{>fv@&a%cSBxy{0jhjUJ<=&#SGBk=sZ#w0aQvYlVYS?IdARwk97^pwc4fju=tq#wA?b_}^Wt zPr05j3$RJSfepg|y-yh9v|vi+yya$+bghD<*I`Hvqm>XzbqUyksZO1~2k4SoW%k>1Z?!IbofFjqHwuVEZPhA00W-%jFOg)iS^f{#{EZ`Y4TP?@2 zYygKqc)!#LB3n)JYBjA&gx}NcV#ZWeK?fbISs1WS8A|T5cILL~q%$#gaOG~$js>=` zZN(2==H8m>yfCj%!Mt=+6L>jK9Mk}@wNU$^AOQp&{D*H-g@am<64V@nba0W5gGj^U z#iSh6q!3(Zcewk2fdcpIQ7^NPI_pTZpVgNvI9JOwpg}b!ge)-pGgZ3vaL%{%Z`)pX z{r!f5TvKuHQK|$*ind#wAhX)dv;SBJ795c0B@5`9H!Ou!W17As#K9g8>I@vrIFu=; zx+Q{>d5%KPKzrqhV=?S%GsUb&Zooa2;7PyQ6q|@f@EP4oIyfL}lvQe-)b^?Zfp%%W>p2dim1bUO zL(Hc_C5_cdd^_4dT_7;0oeY;r#yH(D11Ph1%42oxgW^5d1WY2G6les{L=&5eiE4GX zl*)m-#403)*mba&KyZf$AQ53CXg901Wg-Loo-45%j+^ENikp(JmL~iup?duC?%UUo z>dtWoZMw+ey7e@ETG{OZrZ0m28$Y?6YOl+(lC{ELZk0H~HUY+Jr|SD)MV5|w)u9=d zyE=^2vYqj?fR&2L$C5;QqDiV#T58##sy!V3R!+j`-WbV?ZXN%}aQ`oSp_osk-+(ts zk#{pBTF>f=#>6BEvZStI>IJ|)Vz&ZkC04IkNEpG%s6mkQ?DN9ixS)hBr{1sypS{J< zrb@rIG_2tOUJ+Kc=@MnPTGji%bC6IS#<1bl6%k^Pl5S2|FiW)GwqVh$kN61XvnS|bW zI9E5!pZumGSf%6Z@$vOl|Ej#il44aY4-Os741!+K#yM2y`*boT;pt(GBt+RUDnd@u zx(2%S?Ig>DclE0Kb)uhTGNvS%7$_0(ap7N+1nd9-+d0r)BzQz&h93sar(Tkuq5->C zvZhc8W0J)FT*enHwyI61a-2O}T9;qo1*#Xj6}k5R4PCPs4N~c`X-?iqs~%Y z(qKW!8WnE<*tc$|3{Nny7QCR6fZ%rLLXcbUp{wTdvnS)|>kcP&_N=#_z)$O0Z{1PmD`rFr|?XQabBar@*Y{gd1oYrsE3%pj{;qDuGZ>#wb+=NEJ4=`0Fx? zF*;;)N(f~6u&Rw^C;{Ir=v|Fqd=LhxIPR-^{|~W{gMF`g5g2Yfeb)nnIR}Q1yuV_s zL|O}T*csPrBnQ1ooxuM?v)J!NM~P+Lo`B=dS+ve zOQ_)amlE+{q93XWFdYn7eFKyqqN4rG%WgfK^AT$Q?%le3d%bh7gYdEb4HgZ~l{j3N zV#`pHsg)H5Y%#cyt7#&0ZxDEE1=FdAi)-V^}U&`S1jkRE|;_ z9aOKKlCJ?D4nYsAt-4B8Qi=2T|Kb-vf>`tt8lN*XK6@Q&(hQy%#uKLsyd}DY`9!U*I5lVRqVArQ z&W0CJ@4`AWK}fn(1`zDYM@?&5&MI?KIxY7Fsr#aQ#&3XF8ZxE#}?3_T@!) zlp9arwcuFJtf_n~Yr1vP%}+T8=%;0=T_|QC5Ir z)(+`rTA{3}LsE|Dbh#S`ESe&f3zl0alaWAFM4C)+F|PX_*3jK)?ORe7hpw;DY)Y&b!6K@fIfd0Bc{PMum2Eba z2?oF}crCUyD=N4k?3Hjxu}POAN44x#23SxD9AN(|aFHb;vsp18!U=4A6U^mh zk9$G2zrU#V*2;-5LXOWZrE=~S$UF6N=_2ZYQFU!3dc!h!}@>zvtRt_vp4*` z@xk>^>)`*~?f2HF{-5+XK}k9W`~#xNQYVa3Lt|>yGMTR(mURNfN-Ib0HSpCV9Bm$^ z=|hRC>civIvv{*%)hVn)2E+=rG1UxvL-Pp9Iyiv~nxO1Ju* z`)0*^WYxkhz7dwDgU0E0*j-Kdh659{pxQ#d))IpjVc&J1toruyBAdh+b%uxYTceE% zz)x4**dHt8-OY!`HL#EGE)*(mJcZYD{K7fM?;~3wGFJmLl}vR@1Ii>dfiB(0F}0av zWvHVp$pGb~o`2wNZA7KdMZ6K|V^5It zEgAT(8ZNi7_86u*RAR4qoFqw)76~!Y+H`1i&ZSpMk8QL=Sz2kf20LKznf+B)t9=(0 zTJ)eQ9&D7Au2}C@qCC7kH?_ZxcGk=D$R{>@>(kx)|LYHa1fl6AQht(C(U>h^fN{;P z9<^8r;R8|(wDLl+lFnDI^{`SG^w3xdTQ9?81v7U62%FjfZ$L4&3sdWCRfqYlo3x6{ zcWMAeY#}&hUN;FeRf^?Has}o7KluDdaKiF(;Pbo(K2dLIJY9_5<32MED~p0Uwb+J_ z^Q#ygRz@^q2THuXbl1FRg4Q8f6NeooOI%OKGwP*j9q@iYU#om-!mlaok+|u+DpOa4 z(nzw%kF!|xt%q}3&%f}lU8|$CLpj^VKUHj&td_v6=khbD0ybPeUZ~X6R+4V*Msml+LicLPlXM4i|L=eHi$8g8Oi%nX0Nt##R~Lf1d8+ayM|BTn zQ$rN-&tT51!+IM+VSA*g1bBGl1YoO;Ycoq|p*xjbdT>hifR`OzE9^axn~Bx!f*S?d zc_R&|WgY)^b~!>mMSGWR>Pkr?WCkT|fhv67I?!aSAQEpOx*_Bxg%td445n9GD~P>r zwmd{&Zcw37wIoQ?4xqeY9bT@q=c8v)+wj=sgLWO{QmJbk3i<*aN_P^-tEWN zU*CO?mrwZq*3*gL_eW6pwdpe9IHTBOt=})ct~0IHM@Iu<5Dd& z3)um@71UUztq$Cf$L?xHGbE)s?6gO{1>1w!u#yFfYS_SIs)pnopKd&yb9{QczW&u! z>5W(bF46&Kb-OLnODnk<3|K8pRL1L$=D4W@{-I*wX{vvHY#~Qj;Q+8T`GUzErQy%sTp5%sy(w=%oDc{D$`rXC zN*OnBQ~a|}YNS!;RF7C8EXgNq(>AYwuR!;}PID=lzxdS`&e9mdd(Ii?!8}$NM|N!} zFB@7Zfs!rl_*^ft*niyE_}sGV#&dT?YCfK%=Ho|6%|BzyuJ4=A7N4WdUD!?MFfk+- zaNEm?tA2RL-@qBf0KCS~X0<_~99&U*kz3h4 zGl{wJU-sZ`eO97RHuJbvP|}B33A6+lGNdDqwGbD&dM?^E%a#)5*}g(4Oyq#e+A0j- z+M#!m)J;TJqJlYffQ%;aRd;^v5Y$tX?=d7`F+*R?u+7zxjWw)sfq45-3JKWUcK2R$ z)X559n`f+$*U}j(KCoUt<~#~<-hXrV6zMLiwQf9xFB%sw8W$g_aSQxfgXbzO9J}jf{n2(OOQv5qw%3Gd%gpv*WZRAj-?uHjwX>B!x zWfIN@OUrpR=v112;PZ85V|BDy;#|82BP9*2W`U!lntt-B#{sT-$3~_cXQHbEB9*Hv z5#?M+Hc8!A!Ut@ZrGpzhh6%;0VqmXTf(4>XaMQZ(fj)cp@HK4gT%2&@nY$L5{F$Kp z9|;oD%@a^V+uDOet286*${}vE0eHm*cL?4=w6>Bx3CGcjk>WW`7Dv{V>6k&?d3Y^g z69^*tGW8FxP!Wk)7PXx<&fAgURMo|ab!>z4KVSGRHw6HoWOa2M2|OJ)VGVqqPsbhz zZ(yR%x;c5OF{%%-4QWLa1#wfb=;C!M4^J*&-6EQ2b!1R<1k`cYc@s)94+W?dL-+9Y z!ngJ7(s2Lqc>T?<7$a-fUfqq?Uw{4Z?xK;{ttaw|)j4;vI``2%ac?cz_o5*92^9p7 zvkC2jY}s*BH(ryVj^kWKJ^9ksR-6)p7(SHFl=GzkwtQ&Y@=t&T)psQc;y@eqK^2&p zs%cFkc0=8WQ_$5yCKL?oV3KRVR-Jkbt#tn{e{qENsrJP2K&HSz9@yo)hsftDHio6{ zd?1OW+yP>R`g|NGB^Dkr*tE}CYS*gB{ z<8lB*iwO;ww#E=}R}8umHbEhTIyZGIFgCW9W(S3s`+xO|A3@c`OA*I&7jfLW<KQs zLASn~ez_}u&b#tId+wu^VS$6pF;kAK@Wwz|4Kp5;zFw97>%>@dC@!cd1?C4*0aX$? z*fLCpQ-cBU0Q3e-yI~cgA0V8(Qrbgo0h**;XEM*yG+4y})}-s913Ff|5fFhSz7n^BRT)lx(ingpD%Tc%XM(7= zvtUKcW_ammwhBqp5c~DKo4@?!!@IBE_q*}xfsvliRBkR@$K1G5MEfQ*<80#*|(U$^r7>oB^CD!}0-B)in%FzC#{ccv33?GHU43H~$V zY)3W#n~oWm+$E8gcd{6KP;iMa+w1;siWn%vj`?9faS*6;$? zL%GX@!YQ#&ukuQlW=b$FmTs7M=zdmwE5RfJy+=OIXm-_A^ae)(511C<{%|3|7FpAH z|F0kP#Cl+^Q8&<{FKH^!bgp$Ul+zgz!GHTazKzd#F*l||64Eey}xHz`uQcnyjuGZ@N5`ZzWfO= z!*BVQmQ%=(IN?e*2ks!OW5-lDV{XJ0Vyljk)ap(yXW0e3Wr2gov&@>ST7DIE`B){H zrFtKBD(0#ijtXKk=l+i!fYrumx?tO8GY{QtVwlyjrspe)=lhfs!y@ zwR^XCzITfs8?6(RCxV6z94J+l6DlJeuOx|cb^a=C&Y?CkIT0(ZYJQEbHA}~ldZ1QQ zqvO;;F|oA413`p%Bp#B;8VFZ-d$AAIyf?KbsJVk!AvCG(cK^3uoY?P~6Vo;yZt;1O zy(lGph_dIwhTYkV-44QjNsE%>2J=NRHc)%BZgEvBsL&%jHhd|%!dX&qZgG2_a0Yeg))8&dwS60Xvmn)Choj}Q zx?;DGd)(rz5~8lrCn%1%AfRg~pVmpr(5Y4)OuG$c==pb6pss0xWC<#K2>#=BF(e{1 z93!hC%N~_7A2=|M=DGHV?UsyZ!L$GK=%ZlXsED8GrtR z45_~Fm5!rbHD19pvNRpw z3hg<=;+z7x&@~Iju?IrTXe!@^{BvqU5Egj z`2%|64HT%S4%8;H0^d#2QQ&6tC@0R;b}pK-1k=NZC2bZyx8dU8Qa zp-JVl%ZBUgc{co zE;ay3nYgN}1{^qBH7BljJM5vx0!EG?CNx0Kzb-gb&?o-TGws z{_p(-jUp(|{HZ4aV?TO1EeZZZ*d3TwVHc_&%W=xPt((&8Po8kj)8i0B;nUR&z7onu zG;r3T5_8kC?)7plKocESsDmxOmEWr<9ybpTUFUnPTMy^lQ0VPDZ0WAQzII{Si_h8S z4m9<_;@PLNBP7jZK-^UtGU}}XDgyL070KZvq&F}?>tJr3`1p2Yqp04YhMCm_q_kyJ zuEMq{wfe}a=2J@z@ zasO|8@%-GegZegZw)(OBQN7`sP3+6&rw+F9_tvEv96+BrZL1AmGJYngv=5wLivcT} z-Fx@VE7hV;W}ybDm;exqkGfzU-4{pDS3_HtEOxbwCJdY_EN@)JdiH?t*4J8J#kk`qQVcr&eP8?VCNq+*x?(K(u)B)a~I>l)R6ryRX3PhPK>HHB_z8Tu!X8T z9M~B43@FBU6I?0U9S_MM+^Gfoo5GXUsRY1gicu!PklK&3{x*JkWhf`iE8A&4#McO) zc>tbboIOqzuXj8jq;f}?99X@M&BmBs-NeQQS_Io|iT219V@t(!kbad+DU)dCyb{=< zD{CZyHwgFmb88 zA2RYf#c!(JTvIw7(>eSX#FsC{7V}_eHej_gL*E?R8@IL&zz5s(;|LC)$18ez_!e zb&ZkqQp=b{)q;d@U0$rF{K`H-n~?>v>Nq%$! zs?vy^P+3Y#pl_tLf;2^@^92tNTvVoVDG|UBRZ(3d(YzMM0n;E1*o4X9gOe`aaLE=B z3aQ)@QCJdi1dl}bA;h?>CmyllYEoxZHLG*q?K=J)Z|{u9@JYf(Q6ijv0Je=|C%3}3lzvPRJCJUZugouu87jT)R>Gfp)3&N2QM*5@6d-6l z$kt#VofzrYQUSeGPSsC2Gp!L?Xb_KMW6KFLb z3tAQ6+l*j4Q1wW{{dVd>uutHX>XJcFDbxVx0zQ(Pi|6>gHWJ_Br%!FlcmBn0`RR^A|I6Y#%TVpQC z^$`!!l4MPu5m&q=e%YINx*?nyHcT|i9Aou}Q>v1cKo1{n4jDp;2u8et37}Or3^DXv zIL{8oJQhsFB;)vO16eh05w1x+d5< zwwX(b9`Hr0HF6H-sag=#fFy#OPlgxSX}3Sy#~(eex36FQYTb=*FIs=!dgd;?hC6u; z_wimMTZlRElASdS0Uk#ty;GI_*p6}PtXbmRPG|wcomRRMS$(J+@m9&38HSNpS0zl= zRT>;#=r`A4)rPYsfy$Wm@u`440F(2m0IO!4@6K;MoRd}j?0c(_s?@ckI^*KpHfL|T z8>9OUiP=qL)Uy4-%7B*{bv*2VI`AWptC`r4@gS)~x6s+%$|Nui}-4GkWO;*k)ZlG*GZoB{!`BUoZIF)s)lOqz7qY z+YW-b0aOW0hU=WFwueke<;SW$y7=8uNB{udlC|sA7)h>}3f*PJCmSunkYFEYu%VN5 z%?G=J?FHwAlFZpl(LqNDez1?Kj^_cJe7qR+!u4h_CF}+SLNF@C=x+RKFree80bs!! zo2yt&HxXQ_JA~e{G6EczY|5v4tJr)ImGw_RofunktPF zNZdM@PS{1&)RlQBI%d3_h}eL726g$9Gcu5Ny8$^$W6H|6Fsi%Us{K4VH{;xN?opZ#5p3;DAeJik z-z{ly=om{WIawFtuxr*loOazmI$nQ+Zzf>B{^s4|>sLCxdidtc%i``E&*Ih1XHJ{% z#~~Ss3>9(9K=Y6R^!o@I~QxDD%sN z5zbiPvoG8GFE6e^ZarsLuwnjP#rV&je*U;?5EniCx{6S#@}^EhsEKTw#3o6tP066y zfO~XcF6%(@b!EHTYAl9SHaFABlY!EtKklUMuU_mDN+3P}@0`joca{i1$K~6OyS5pp zKfJyFx4-xi_?`Q|_as{n_2{*uT6K4bcQs;Fw*bsq zZ9VSh0$#>7HS%HH@Yn(Ib+BFNf{JsDfQr}2LAH>dCEd|dRT}I3{l9ahWA~MogN0@( zNZ1vR#85|=(gZpSIt0${h__n0Ac1rUKllaW2_PEmJlQhR01xqYsEONq`)t`<%7SQP zfUL2|(qfaeVwP}wRWl!zNS>8tZati{hU4r0=WD#XYj58^e0eQp!^Ntj$f9a7n-~+j z6Lwg#j_t=9y3DkuS{z8oO3VSWMPC~O1mFN8hB_sHzi}LkaIvb+8w}`VuY_~L^%%BC z>*{5ryhP(|lMeq3Ad2NKucn^PNnwj?ddP!YYaiJO0rXbc+!4 zQ**6mdv&*d{qXL}qHeZOGdV~VWX7NZK_$spxp1jfc=j^O21$p8Q zRONaJF5Yg#&MnX|8#?q-q803P!c0}$k%UKPA7{4ib~@t4g_-i9!|%v&GVigt8XN_% zlrg9@EAAP~mNqt|L=A-#K@EV}t=y!fikJhYDe%o1U#c^B0IP#iGJY3Zu(7L|><(LM zXYd^&q7(!9ANWjPOzAo^>st@!%&ec_+TFJg^W9fhRuwMC!YWr=`pSiH=OopX%k~BH zRC<6<>aNjse?Xj7OAS!_JkkvC%&eQ32ZZ?$VTn_bUou#F0B7b{%1)UDi-uz`ezmS% zYAz$#7cVcUo(e}zPi5e)RRN@CG=)#AIdr~T@`ip&rZER|AjkylEJ^~#KJCnh!s}4M zrcv-y5x`O-so;t^s`g9+lfX8H6tP8FlPKXDCin zWIS4xo~-i5M(u!}*a2qFsf55p<(q>in<}(Y3sVi%fT13)QN$SLOcGQns;N4ziI=jm z%I^37?ibH59WU4+@ga;`Vpi(TN8$XS;)z2ukW4$nFZ=tGqAq_mpREL}%qM z2ZI3fL=s_7Jp8r2X1t4tQjmRK9A>EUfrc$(3 zJ-~|C%X%w=2*)EWXDri$9`P*F8Rc`q#smoqSySlNX)51=;bvfkn)OU#HMm--&?=0R zaD4B&PzUxi?`Np+hi_j!jP+!wCq#eiiTk8?M9zYs;J^;hnn0@+fa0eEfHPf7`=98T zGtt1RAk!$@(6K@x3e)xq^(`7ap?(<&@8zZ3!3{8gx)irSH)g1qY^jN zO(Iu5X63_JDJx;X_PATuNmkQ+yb`%h*R^6vOhk=1h~~g116L9GszgYQrF|&jR}CWz zAhZ~@5zBnH&bW?VnqGC)Ky-hQqv?)Zli8d^u^SwNuLOaQ*=mupD!XhR1u1x?lreFq zK9j&;m*GQ0ci^5$9v<4HJT3|J+4Je_t%q|48jY9)dVE}8u3ukURThZ7-nyh}w7pfQ zCa|ZIOc0NX>kYP|u5uej8)DLm<&f+(rtX zNq48JNJ~+1dHwLsHGU9x7}2e1l-?+Z;@xT^9&!^4{OCZLTO9*7upXDp zx_W#{Yay-$TwDPR+nw5{VWDyDEXL|AToCXv@gzW0YX-k$8YWI`sHF%FN{WBs1J}FH zUb&UjdN3A7hNX>3NSSrlFr(S{lipT7a<v9@}i+>R8Q$YT*fxXa{ePO8Mw#FCd+I)m#ZvB^+_`@WWuSkhO?+(CvoL zhvs(|94@YkL`ZI6OY*@uNtnrs26hJ;HL2^^CCHFi7H{o5G}P;ac=NBdI+ZKBs`Ru1 z;5r`-eD(h8_RZZBle{=1zV+N)JtMZKGh+LrI3u>f*j@10uwdzJw`8;FT0wWzQHVPL zfJ=Lyf7zn^^fBK5s

rq;T6f;DLk}8|#=n9BT{lDlr26 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 z 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 RbyL23?;nMnr6;$0I{>-ujz9na literal 0 HcmV?d00001 diff --git a/.yarn/releases/yarn-1.22.5.cjs b/.yarn/releases/yarn-1.22.5.cjs new file mode 100755 index 00000000..e7b989b6 --- /dev/null +++ b/.yarn/releases/yarn-1.22.5.cjs @@ -0,0 +1,147392 @@ +#!/usr/bin/env node +module.exports = +/******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // identity function for calling harmony imports with the correct context +/******/ __webpack_require__.i = function(value) { return value; }; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { +/******/ configurable: false, +/******/ enumerable: true, +/******/ get: getter +/******/ }); +/******/ } +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = 549); +/******/ }) +/************************************************************************/ +/******/ ([ +/* 0 */ +/***/ (function(module, exports) { + +module.exports = require("path"); + +/***/ }), +/* 1 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = __extends; +/* unused harmony export __assign */ +/* unused harmony export __rest */ +/* unused harmony export __decorate */ +/* unused harmony export __param */ +/* unused harmony export __metadata */ +/* unused harmony export __awaiter */ +/* unused harmony export __generator */ +/* unused harmony export __exportStar */ +/* unused harmony export __values */ +/* unused harmony export __read */ +/* unused harmony export __spread */ +/* unused harmony export __await */ +/* unused harmony export __asyncGenerator */ +/* unused harmony export __asyncDelegator */ +/* unused harmony export __asyncValues */ +/* unused harmony export __makeTemplateObject */ +/* unused harmony export __importStar */ +/* unused harmony export __importDefault */ +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. All rights reserved. +Licensed under the Apache License, Version 2.0 (the "License"); you may not use +this file except in compliance with the License. You may obtain a copy of the +License at http://www.apache.org/licenses/LICENSE-2.0 + +THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED +WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, +MERCHANTABLITY OR NON-INFRINGEMENT. + +See the Apache Version 2.0 License for specific language governing permissions +and limitations under the License. +***************************************************************************** */ +/* global Reflect, Promise */ + +var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; + return extendStatics(d, b); +}; + +function __extends(d, b) { + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} + +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + } + return __assign.apply(this, arguments); +} + +function __rest(s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0) + t[p[i]] = s[p[i]]; + return t; +} + +function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} + +function __param(paramIndex, decorator) { + return function (target, key) { decorator(target, key, paramIndex); } +} + +function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); +} + +function __awaiter(thisArg, _arguments, P, generator) { + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} + +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +} + +function __exportStar(m, exports) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} + +function __values(o) { + var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; + if (m) return m.call(o); + return { + next: function () { + if (o && i >= o.length) o = void 0; + return { value: o && o[i++], done: !o }; + } + }; +} + +function __read(o, n) { + var m = typeof Symbol === "function" && o[Symbol.iterator]; + if (!m) return o; + var i = m.call(o), r, ar = [], e; + try { + while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); + } + catch (error) { e = { error: error }; } + finally { + try { + if (r && !r.done && (m = i["return"])) m.call(i); + } + finally { if (e) throw e.error; } + } + return ar; +} + +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} + +function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); +} + +function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; + function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } + function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } + function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } + function fulfill(value) { resume("next", value); } + function reject(value) { resume("throw", value); } + function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } +} + +function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; + function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } +} + +function __asyncValues(o) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); + function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } + function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } +} + +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; +}; + +function __importStar(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result.default = mod; + return result; +} + +function __importDefault(mod) { + return (mod && mod.__esModule) ? mod : { default: mod }; +} + + +/***/ }), +/* 2 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _promise = __webpack_require__(227); + +var _promise2 = _interopRequireDefault(_promise); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = function (fn) { + return function () { + var gen = fn.apply(this, arguments); + return new _promise2.default(function (resolve, reject) { + function step(key, arg) { + try { + var info = gen[key](arg); + var value = info.value; + } catch (error) { + reject(error); + return; + } + + if (info.done) { + resolve(value); + } else { + return _promise2.default.resolve(value).then(function (value) { + step("next", value); + }, function (err) { + step("throw", err); + }); + } + } + + return step("next"); + }); + }; +}; + +/***/ }), +/* 3 */ +/***/ (function(module, exports) { + +module.exports = require("util"); + +/***/ }), +/* 4 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.getFirstSuitableFolder = exports.readFirstAvailableStream = exports.makeTempDir = exports.hardlinksWork = exports.writeFilePreservingEol = exports.getFileSizeOnDisk = exports.walk = exports.symlink = exports.find = exports.readJsonAndFile = exports.readJson = exports.readFileAny = exports.hardlinkBulk = exports.copyBulk = exports.unlink = exports.glob = exports.link = exports.chmod = exports.lstat = exports.exists = exports.mkdirp = exports.stat = exports.access = exports.rename = exports.readdir = exports.realpath = exports.readlink = exports.writeFile = exports.open = exports.readFileBuffer = exports.lockQueue = exports.constants = undefined; + +var _asyncToGenerator2; + +function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); +} + +let buildActionsForCopy = (() => { + var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { + + // + let build = (() => { + var _ref5 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + const src = data.src, + dest = data.dest, + type = data.type; + + const onFresh = data.onFresh || noop; + const onDone = data.onDone || noop; + + // TODO https://github.com/yarnpkg/yarn/issues/3751 + // related to bundled dependencies handling + if (files.has(dest.toLowerCase())) { + reporter.verbose(`The case-insensitive file ${dest} shouldn't be copied twice in one bulk copy`); + } else { + files.add(dest.toLowerCase()); + } + + if (type === 'symlink') { + yield mkdirp((_path || _load_path()).default.dirname(dest)); + onFresh(); + actions.symlink.push({ + dest, + linkname: src + }); + onDone(); + return; + } + + if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { + // ignored file + return; + } + + const srcStat = yield lstat(src); + let srcFiles; + + if (srcStat.isDirectory()) { + srcFiles = yield readdir(src); + } + + let destStat; + try { + // try accessing the destination + destStat = yield lstat(dest); + } catch (e) { + // proceed if destination doesn't exist, otherwise error + if (e.code !== 'ENOENT') { + throw e; + } + } + + // if destination exists + if (destStat) { + const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); + const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); + const bothFiles = srcStat.isFile() && destStat.isFile(); + + // EINVAL access errors sometimes happen which shouldn't because node shouldn't be giving + // us modes that aren't valid. investigate this, it's generally safe to proceed. + + /* if (srcStat.mode !== destStat.mode) { + try { + await access(dest, srcStat.mode); + } catch (err) {} + } */ + + if (bothFiles && artifactFiles.has(dest)) { + // this file gets changed during build, likely by a custom install script. Don't bother checking it. + onDone(); + reporter.verbose(reporter.lang('verboseFileSkipArtifact', src)); + return; + } + + if (bothFiles && srcStat.size === destStat.size && (0, (_fsNormalized || _load_fsNormalized()).fileDatesEqual)(srcStat.mtime, destStat.mtime)) { + // we can safely assume this is the same file + onDone(); + reporter.verbose(reporter.lang('verboseFileSkip', src, dest, srcStat.size, +srcStat.mtime)); + return; + } + + if (bothSymlinks) { + const srcReallink = yield readlink(src); + if (srcReallink === (yield readlink(dest))) { + // if both symlinks are the same then we can continue on + onDone(); + reporter.verbose(reporter.lang('verboseFileSkipSymlink', src, dest, srcReallink)); + return; + } + } + + if (bothFolders) { + // mark files that aren't in this folder as possibly extraneous + const destFiles = yield readdir(dest); + invariant(srcFiles, 'src files not initialised'); + + for (var _iterator4 = destFiles, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) { + var _ref6; + + if (_isArray4) { + if (_i4 >= _iterator4.length) break; + _ref6 = _iterator4[_i4++]; + } else { + _i4 = _iterator4.next(); + if (_i4.done) break; + _ref6 = _i4.value; + } + + const file = _ref6; + + if (srcFiles.indexOf(file) < 0) { + const loc = (_path || _load_path()).default.join(dest, file); + possibleExtraneous.add(loc); + + if ((yield lstat(loc)).isDirectory()) { + for (var _iterator5 = yield readdir(loc), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { + var _ref7; + + if (_isArray5) { + if (_i5 >= _iterator5.length) break; + _ref7 = _iterator5[_i5++]; + } else { + _i5 = _iterator5.next(); + if (_i5.done) break; + _ref7 = _i5.value; + } + + const file = _ref7; + + possibleExtraneous.add((_path || _load_path()).default.join(loc, file)); + } + } + } + } + } + } + + if (destStat && destStat.isSymbolicLink()) { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); + destStat = null; + } + + if (srcStat.isSymbolicLink()) { + onFresh(); + const linkname = yield readlink(src); + actions.symlink.push({ + dest, + linkname + }); + onDone(); + } else if (srcStat.isDirectory()) { + if (!destStat) { + reporter.verbose(reporter.lang('verboseFileFolder', dest)); + yield mkdirp(dest); + } + + const destParts = dest.split((_path || _load_path()).default.sep); + while (destParts.length) { + files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); + destParts.pop(); + } + + // push all files to queue + invariant(srcFiles, 'src files not initialised'); + let remaining = srcFiles.length; + if (!remaining) { + onDone(); + } + for (var _iterator6 = srcFiles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) { + var _ref8; + + if (_isArray6) { + if (_i6 >= _iterator6.length) break; + _ref8 = _iterator6[_i6++]; + } else { + _i6 = _iterator6.next(); + if (_i6.done) break; + _ref8 = _i6.value; + } + + const file = _ref8; + + queue.push({ + dest: (_path || _load_path()).default.join(dest, file), + onFresh, + onDone: function (_onDone) { + function onDone() { + return _onDone.apply(this, arguments); + } + + onDone.toString = function () { + return _onDone.toString(); + }; + + return onDone; + }(function () { + if (--remaining === 0) { + onDone(); + } + }), + src: (_path || _load_path()).default.join(src, file) + }); + } + } else if (srcStat.isFile()) { + onFresh(); + actions.file.push({ + src, + dest, + atime: srcStat.atime, + mtime: srcStat.mtime, + mode: srcStat.mode + }); + onDone(); + } else { + throw new Error(`unsure how to copy this: ${src}`); + } + }); + + return function build(_x5) { + return _ref5.apply(this, arguments); + }; + })(); + + const artifactFiles = new Set(events.artifactFiles || []); + const files = new Set(); + + // initialise events + for (var _iterator = queue, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref2; + + if (_isArray) { + if (_i >= _iterator.length) break; + _ref2 = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref2 = _i.value; + } + + const item = _ref2; + + const onDone = item.onDone; + item.onDone = function () { + events.onProgress(item.dest); + if (onDone) { + onDone(); + } + }; + } + events.onStart(queue.length); + + // start building actions + const actions = { + file: [], + symlink: [], + link: [] + }; + + // custom concurrency logic as we're always executing stacks of CONCURRENT_QUEUE_ITEMS queue items + // at a time due to the requirement to push items onto the queue + while (queue.length) { + const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); + yield Promise.all(items.map(build)); + } + + // simulate the existence of some files to prevent considering them extraneous + for (var _iterator2 = artifactFiles, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { + var _ref3; + + if (_isArray2) { + if (_i2 >= _iterator2.length) break; + _ref3 = _iterator2[_i2++]; + } else { + _i2 = _iterator2.next(); + if (_i2.done) break; + _ref3 = _i2.value; + } + + const file = _ref3; + + if (possibleExtraneous.has(file)) { + reporter.verbose(reporter.lang('verboseFilePhantomExtraneous', file)); + possibleExtraneous.delete(file); + } + } + + for (var _iterator3 = possibleExtraneous, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) { + var _ref4; + + if (_isArray3) { + if (_i3 >= _iterator3.length) break; + _ref4 = _iterator3[_i3++]; + } else { + _i3 = _iterator3.next(); + if (_i3.done) break; + _ref4 = _i3.value; + } + + const loc = _ref4; + + if (files.has(loc.toLowerCase())) { + possibleExtraneous.delete(loc); + } + } + + return actions; + }); + + return function buildActionsForCopy(_x, _x2, _x3, _x4) { + return _ref.apply(this, arguments); + }; +})(); + +let buildActionsForHardlink = (() => { + var _ref9 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, events, possibleExtraneous, reporter) { + + // + let build = (() => { + var _ref13 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + const src = data.src, + dest = data.dest; + + const onFresh = data.onFresh || noop; + const onDone = data.onDone || noop; + if (files.has(dest.toLowerCase())) { + // Fixes issue https://github.com/yarnpkg/yarn/issues/2734 + // When bulk hardlinking we have A -> B structure that we want to hardlink to A1 -> B1, + // package-linker passes that modules A1 and B1 need to be hardlinked, + // the recursive linking algorithm of A1 ends up scheduling files in B1 to be linked twice which will case + // an exception. + onDone(); + return; + } + files.add(dest.toLowerCase()); + + if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src)) >= 0) { + // ignored file + return; + } + + const srcStat = yield lstat(src); + let srcFiles; + + if (srcStat.isDirectory()) { + srcFiles = yield readdir(src); + } + + const destExists = yield exists(dest); + if (destExists) { + const destStat = yield lstat(dest); + + const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink(); + const bothFolders = srcStat.isDirectory() && destStat.isDirectory(); + const bothFiles = srcStat.isFile() && destStat.isFile(); + + if (srcStat.mode !== destStat.mode) { + try { + yield access(dest, srcStat.mode); + } catch (err) { + // EINVAL access errors sometimes happen which shouldn't because node shouldn't be giving + // us modes that aren't valid. investigate this, it's generally safe to proceed. + reporter.verbose(err); + } + } + + if (bothFiles && artifactFiles.has(dest)) { + // this file gets changed during build, likely by a custom install script. Don't bother checking it. + onDone(); + reporter.verbose(reporter.lang('verboseFileSkipArtifact', src)); + return; + } + + // correct hardlink + if (bothFiles && srcStat.ino !== null && srcStat.ino === destStat.ino) { + onDone(); + reporter.verbose(reporter.lang('verboseFileSkip', src, dest, srcStat.ino)); + return; + } + + if (bothSymlinks) { + const srcReallink = yield readlink(src); + if (srcReallink === (yield readlink(dest))) { + // if both symlinks are the same then we can continue on + onDone(); + reporter.verbose(reporter.lang('verboseFileSkipSymlink', src, dest, srcReallink)); + return; + } + } + + if (bothFolders) { + // mark files that aren't in this folder as possibly extraneous + const destFiles = yield readdir(dest); + invariant(srcFiles, 'src files not initialised'); + + for (var _iterator10 = destFiles, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) { + var _ref14; + + if (_isArray10) { + if (_i10 >= _iterator10.length) break; + _ref14 = _iterator10[_i10++]; + } else { + _i10 = _iterator10.next(); + if (_i10.done) break; + _ref14 = _i10.value; + } + + const file = _ref14; + + if (srcFiles.indexOf(file) < 0) { + const loc = (_path || _load_path()).default.join(dest, file); + possibleExtraneous.add(loc); + + if ((yield lstat(loc)).isDirectory()) { + for (var _iterator11 = yield readdir(loc), _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) { + var _ref15; + + if (_isArray11) { + if (_i11 >= _iterator11.length) break; + _ref15 = _iterator11[_i11++]; + } else { + _i11 = _iterator11.next(); + if (_i11.done) break; + _ref15 = _i11.value; + } + + const file = _ref15; + + possibleExtraneous.add((_path || _load_path()).default.join(loc, file)); + } + } + } + } + } + } + + if (srcStat.isSymbolicLink()) { + onFresh(); + const linkname = yield readlink(src); + actions.symlink.push({ + dest, + linkname + }); + onDone(); + } else if (srcStat.isDirectory()) { + reporter.verbose(reporter.lang('verboseFileFolder', dest)); + yield mkdirp(dest); + + const destParts = dest.split((_path || _load_path()).default.sep); + while (destParts.length) { + files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase()); + destParts.pop(); + } + + // push all files to queue + invariant(srcFiles, 'src files not initialised'); + let remaining = srcFiles.length; + if (!remaining) { + onDone(); + } + for (var _iterator12 = srcFiles, _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator]();;) { + var _ref16; + + if (_isArray12) { + if (_i12 >= _iterator12.length) break; + _ref16 = _iterator12[_i12++]; + } else { + _i12 = _iterator12.next(); + if (_i12.done) break; + _ref16 = _i12.value; + } + + const file = _ref16; + + queue.push({ + onFresh, + src: (_path || _load_path()).default.join(src, file), + dest: (_path || _load_path()).default.join(dest, file), + onDone: function (_onDone2) { + function onDone() { + return _onDone2.apply(this, arguments); + } + + onDone.toString = function () { + return _onDone2.toString(); + }; + + return onDone; + }(function () { + if (--remaining === 0) { + onDone(); + } + }) + }); + } + } else if (srcStat.isFile()) { + onFresh(); + actions.link.push({ + src, + dest, + removeDest: destExists + }); + onDone(); + } else { + throw new Error(`unsure how to copy this: ${src}`); + } + }); + + return function build(_x10) { + return _ref13.apply(this, arguments); + }; + })(); + + const artifactFiles = new Set(events.artifactFiles || []); + const files = new Set(); + + // initialise events + for (var _iterator7 = queue, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { + var _ref10; + + if (_isArray7) { + if (_i7 >= _iterator7.length) break; + _ref10 = _iterator7[_i7++]; + } else { + _i7 = _iterator7.next(); + if (_i7.done) break; + _ref10 = _i7.value; + } + + const item = _ref10; + + const onDone = item.onDone || noop; + item.onDone = function () { + events.onProgress(item.dest); + onDone(); + }; + } + events.onStart(queue.length); + + // start building actions + const actions = { + file: [], + symlink: [], + link: [] + }; + + // custom concurrency logic as we're always executing stacks of CONCURRENT_QUEUE_ITEMS queue items + // at a time due to the requirement to push items onto the queue + while (queue.length) { + const items = queue.splice(0, CONCURRENT_QUEUE_ITEMS); + yield Promise.all(items.map(build)); + } + + // simulate the existence of some files to prevent considering them extraneous + for (var _iterator8 = artifactFiles, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) { + var _ref11; + + if (_isArray8) { + if (_i8 >= _iterator8.length) break; + _ref11 = _iterator8[_i8++]; + } else { + _i8 = _iterator8.next(); + if (_i8.done) break; + _ref11 = _i8.value; + } + + const file = _ref11; + + if (possibleExtraneous.has(file)) { + reporter.verbose(reporter.lang('verboseFilePhantomExtraneous', file)); + possibleExtraneous.delete(file); + } + } + + for (var _iterator9 = possibleExtraneous, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) { + var _ref12; + + if (_isArray9) { + if (_i9 >= _iterator9.length) break; + _ref12 = _iterator9[_i9++]; + } else { + _i9 = _iterator9.next(); + if (_i9.done) break; + _ref12 = _i9.value; + } + + const loc = _ref12; + + if (files.has(loc.toLowerCase())) { + possibleExtraneous.delete(loc); + } + } + + return actions; + }); + + return function buildActionsForHardlink(_x6, _x7, _x8, _x9) { + return _ref9.apply(this, arguments); + }; +})(); + +let copyBulk = exports.copyBulk = (() => { + var _ref17 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { + const events = { + onStart: _events && _events.onStart || noop, + onProgress: _events && _events.onProgress || noop, + possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), + ignoreBasenames: _events && _events.ignoreBasenames || [], + artifactFiles: _events && _events.artifactFiles || [] + }; + + const actions = yield buildActionsForCopy(queue, events, events.possibleExtraneous, reporter); + events.onStart(actions.file.length + actions.symlink.length + actions.link.length); + + const fileActions = actions.file; + + const currentlyWriting = new Map(); + + yield (_promise || _load_promise()).queue(fileActions, (() => { + var _ref18 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + let writePromise; + while (writePromise = currentlyWriting.get(data.dest)) { + yield writePromise; + } + + reporter.verbose(reporter.lang('verboseFileCopy', data.src, data.dest)); + const copier = (0, (_fsNormalized || _load_fsNormalized()).copyFile)(data, function () { + return currentlyWriting.delete(data.dest); + }); + currentlyWriting.set(data.dest, copier); + events.onProgress(data.dest); + return copier; + }); + + return function (_x14) { + return _ref18.apply(this, arguments); + }; + })(), CONCURRENT_QUEUE_ITEMS); + + // we need to copy symlinks last as they could reference files we were copying + const symlinkActions = actions.symlink; + yield (_promise || _load_promise()).queue(symlinkActions, function (data) { + const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); + reporter.verbose(reporter.lang('verboseFileSymlink', data.dest, linkname)); + return symlink(linkname, data.dest); + }); + }); + + return function copyBulk(_x11, _x12, _x13) { + return _ref17.apply(this, arguments); + }; +})(); + +let hardlinkBulk = exports.hardlinkBulk = (() => { + var _ref19 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue, reporter, _events) { + const events = { + onStart: _events && _events.onStart || noop, + onProgress: _events && _events.onProgress || noop, + possibleExtraneous: _events ? _events.possibleExtraneous : new Set(), + artifactFiles: _events && _events.artifactFiles || [], + ignoreBasenames: [] + }; + + const actions = yield buildActionsForHardlink(queue, events, events.possibleExtraneous, reporter); + events.onStart(actions.file.length + actions.symlink.length + actions.link.length); + + const fileActions = actions.link; + + yield (_promise || _load_promise()).queue(fileActions, (() => { + var _ref20 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) { + reporter.verbose(reporter.lang('verboseFileLink', data.src, data.dest)); + if (data.removeDest) { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(data.dest); + } + yield link(data.src, data.dest); + }); + + return function (_x18) { + return _ref20.apply(this, arguments); + }; + })(), CONCURRENT_QUEUE_ITEMS); + + // we need to copy symlinks last as they could reference files we were copying + const symlinkActions = actions.symlink; + yield (_promise || _load_promise()).queue(symlinkActions, function (data) { + const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname); + reporter.verbose(reporter.lang('verboseFileSymlink', data.dest, linkname)); + return symlink(linkname, data.dest); + }); + }); + + return function hardlinkBulk(_x15, _x16, _x17) { + return _ref19.apply(this, arguments); + }; +})(); + +let readFileAny = exports.readFileAny = (() => { + var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (files) { + for (var _iterator13 = files, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator]();;) { + var _ref22; + + if (_isArray13) { + if (_i13 >= _iterator13.length) break; + _ref22 = _iterator13[_i13++]; + } else { + _i13 = _iterator13.next(); + if (_i13.done) break; + _ref22 = _i13.value; + } + + const file = _ref22; + + if (yield exists(file)) { + return readFile(file); + } + } + return null; + }); + + return function readFileAny(_x19) { + return _ref21.apply(this, arguments); + }; +})(); + +let readJson = exports.readJson = (() => { + var _ref23 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + return (yield readJsonAndFile(loc)).object; + }); + + return function readJson(_x20) { + return _ref23.apply(this, arguments); + }; +})(); + +let readJsonAndFile = exports.readJsonAndFile = (() => { + var _ref24 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + const file = yield readFile(loc); + try { + return { + object: (0, (_map || _load_map()).default)(JSON.parse(stripBOM(file))), + content: file + }; + } catch (err) { + err.message = `${loc}: ${err.message}`; + throw err; + } + }); + + return function readJsonAndFile(_x21) { + return _ref24.apply(this, arguments); + }; +})(); + +let find = exports.find = (() => { + var _ref25 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (filename, dir) { + const parts = dir.split((_path || _load_path()).default.sep); + + while (parts.length) { + const loc = parts.concat(filename).join((_path || _load_path()).default.sep); + + if (yield exists(loc)) { + return loc; + } else { + parts.pop(); + } + } + + return false; + }); + + return function find(_x22, _x23) { + return _ref25.apply(this, arguments); + }; +})(); + +let symlink = exports.symlink = (() => { + var _ref26 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src, dest) { + if (process.platform !== 'win32') { + // use relative paths otherwise which will be retained if the directory is moved + src = (_path || _load_path()).default.relative((_path || _load_path()).default.dirname(dest), src); + // When path.relative returns an empty string for the current directory, we should instead use + // '.', which is a valid fs.symlink target. + src = src || '.'; + } + + try { + const stats = yield lstat(dest); + if (stats.isSymbolicLink()) { + const resolved = dest; + if (resolved === src) { + return; + } + } + } catch (err) { + if (err.code !== 'ENOENT') { + throw err; + } + } + + // We use rimraf for unlink which never throws an ENOENT on missing target + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest); + + if (process.platform === 'win32') { + // use directory junctions if possible on win32, this requires absolute paths + yield fsSymlink(src, dest, 'junction'); + } else { + yield fsSymlink(src, dest); + } + }); + + return function symlink(_x24, _x25) { + return _ref26.apply(this, arguments); + }; +})(); + +let walk = exports.walk = (() => { + var _ref27 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir, relativeDir, ignoreBasenames = new Set()) { + let files = []; + + let filenames = yield readdir(dir); + if (ignoreBasenames.size) { + filenames = filenames.filter(function (name) { + return !ignoreBasenames.has(name); + }); + } + + for (var _iterator14 = filenames, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator]();;) { + var _ref28; + + if (_isArray14) { + if (_i14 >= _iterator14.length) break; + _ref28 = _iterator14[_i14++]; + } else { + _i14 = _iterator14.next(); + if (_i14.done) break; + _ref28 = _i14.value; + } + + const name = _ref28; + + const relative = relativeDir ? (_path || _load_path()).default.join(relativeDir, name) : name; + const loc = (_path || _load_path()).default.join(dir, name); + const stat = yield lstat(loc); + + files.push({ + relative, + basename: name, + absolute: loc, + mtime: +stat.mtime + }); + + if (stat.isDirectory()) { + files = files.concat((yield walk(loc, relative, ignoreBasenames))); + } + } + + return files; + }); + + return function walk(_x26, _x27) { + return _ref27.apply(this, arguments); + }; +})(); + +let getFileSizeOnDisk = exports.getFileSizeOnDisk = (() => { + var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) { + const stat = yield lstat(loc); + const size = stat.size, + blockSize = stat.blksize; + + + return Math.ceil(size / blockSize) * blockSize; + }); + + return function getFileSizeOnDisk(_x28) { + return _ref29.apply(this, arguments); + }; +})(); + +let getEolFromFile = (() => { + var _ref30 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path) { + if (!(yield exists(path))) { + return undefined; + } + + const buffer = yield readFileBuffer(path); + + for (let i = 0; i < buffer.length; ++i) { + if (buffer[i] === cr) { + return '\r\n'; + } + if (buffer[i] === lf) { + return '\n'; + } + } + return undefined; + }); + + return function getEolFromFile(_x29) { + return _ref30.apply(this, arguments); + }; +})(); + +let writeFilePreservingEol = exports.writeFilePreservingEol = (() => { + var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path, data) { + const eol = (yield getEolFromFile(path)) || (_os || _load_os()).default.EOL; + if (eol !== '\n') { + data = data.replace(/\n/g, eol); + } + yield writeFile(path, data); + }); + + return function writeFilePreservingEol(_x30, _x31) { + return _ref31.apply(this, arguments); + }; +})(); + +let hardlinksWork = exports.hardlinksWork = (() => { + var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir) { + const filename = 'test-file' + Math.random(); + const file = (_path || _load_path()).default.join(dir, filename); + const fileLink = (_path || _load_path()).default.join(dir, filename + '-link'); + try { + yield writeFile(file, 'test'); + yield link(file, fileLink); + } catch (err) { + return false; + } finally { + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(file); + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(fileLink); + } + return true; + }); + + return function hardlinksWork(_x32) { + return _ref32.apply(this, arguments); + }; +})(); + +// not a strict polyfill for Node's fs.mkdtemp + + +let makeTempDir = exports.makeTempDir = (() => { + var _ref33 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (prefix) { + const dir = (_path || _load_path()).default.join((_os || _load_os()).default.tmpdir(), `yarn-${prefix || ''}-${Date.now()}-${Math.random()}`); + yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dir); + yield mkdirp(dir); + return dir; + }); + + return function makeTempDir(_x33) { + return _ref33.apply(this, arguments); + }; +})(); + +let readFirstAvailableStream = exports.readFirstAvailableStream = (() => { + var _ref34 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths) { + for (var _iterator15 = paths, _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator]();;) { + var _ref35; + + if (_isArray15) { + if (_i15 >= _iterator15.length) break; + _ref35 = _iterator15[_i15++]; + } else { + _i15 = _iterator15.next(); + if (_i15.done) break; + _ref35 = _i15.value; + } + + const path = _ref35; + + try { + const fd = yield open(path, 'r'); + return (_fs || _load_fs()).default.createReadStream(path, { fd }); + } catch (err) { + // Try the next one + } + } + return null; + }); + + return function readFirstAvailableStream(_x34) { + return _ref34.apply(this, arguments); + }; +})(); + +let getFirstSuitableFolder = exports.getFirstSuitableFolder = (() => { + var _ref36 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths, mode = constants.W_OK | constants.X_OK) { + const result = { + skipped: [], + folder: null + }; + + for (var _iterator16 = paths, _isArray16 = Array.isArray(_iterator16), _i16 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator]();;) { + var _ref37; + + if (_isArray16) { + if (_i16 >= _iterator16.length) break; + _ref37 = _iterator16[_i16++]; + } else { + _i16 = _iterator16.next(); + if (_i16.done) break; + _ref37 = _i16.value; + } + + const folder = _ref37; + + try { + yield mkdirp(folder); + yield access(folder, mode); + + result.folder = folder; + + return result; + } catch (error) { + result.skipped.push({ + error, + folder + }); + } + } + return result; + }); + + return function getFirstSuitableFolder(_x35) { + return _ref36.apply(this, arguments); + }; +})(); + +exports.copy = copy; +exports.readFile = readFile; +exports.readFileRaw = readFileRaw; +exports.normalizeOS = normalizeOS; + +var _fs; + +function _load_fs() { + return _fs = _interopRequireDefault(__webpack_require__(5)); +} + +var _glob; + +function _load_glob() { + return _glob = _interopRequireDefault(__webpack_require__(99)); +} + +var _os; + +function _load_os() { + return _os = _interopRequireDefault(__webpack_require__(46)); +} + +var _path; + +function _load_path() { + return _path = _interopRequireDefault(__webpack_require__(0)); +} + +var _blockingQueue; + +function _load_blockingQueue() { + return _blockingQueue = _interopRequireDefault(__webpack_require__(110)); +} + +var _promise; + +function _load_promise() { + return _promise = _interopRequireWildcard(__webpack_require__(50)); +} + +var _promise2; + +function _load_promise2() { + return _promise2 = __webpack_require__(50); +} + +var _map; + +function _load_map() { + return _map = _interopRequireDefault(__webpack_require__(29)); +} + +var _fsNormalized; + +function _load_fsNormalized() { + return _fsNormalized = __webpack_require__(218); +} + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +const constants = exports.constants = typeof (_fs || _load_fs()).default.constants !== 'undefined' ? (_fs || _load_fs()).default.constants : { + R_OK: (_fs || _load_fs()).default.R_OK, + W_OK: (_fs || _load_fs()).default.W_OK, + X_OK: (_fs || _load_fs()).default.X_OK +}; + +const lockQueue = exports.lockQueue = new (_blockingQueue || _load_blockingQueue()).default('fs lock'); + +const readFileBuffer = exports.readFileBuffer = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readFile); +const open = exports.open = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.open); +const writeFile = exports.writeFile = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.writeFile); +const readlink = exports.readlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readlink); +const realpath = exports.realpath = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.realpath); +const readdir = exports.readdir = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readdir); +const rename = exports.rename = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.rename); +const access = exports.access = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.access); +const stat = exports.stat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.stat); +const mkdirp = exports.mkdirp = (0, (_promise2 || _load_promise2()).promisify)(__webpack_require__(145)); +const exists = exports.exists = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.exists, true); +const lstat = exports.lstat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.lstat); +const chmod = exports.chmod = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.chmod); +const link = exports.link = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.link); +const glob = exports.glob = (0, (_promise2 || _load_promise2()).promisify)((_glob || _load_glob()).default); +exports.unlink = (_fsNormalized || _load_fsNormalized()).unlink; + +// fs.copyFile uses the native file copying instructions on the system, performing much better +// than any JS-based solution and consumes fewer resources. Repeated testing to fine tune the +// concurrency level revealed 128 as the sweet spot on a quad-core, 16 CPU Intel system with SSD. + +const CONCURRENT_QUEUE_ITEMS = (_fs || _load_fs()).default.copyFile ? 128 : 4; + +const fsSymlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.symlink); +const invariant = __webpack_require__(9); +const stripBOM = __webpack_require__(160); + +const noop = () => {}; + +function copy(src, dest, reporter) { + return copyBulk([{ src, dest }], reporter); +} + +function _readFile(loc, encoding) { + return new Promise((resolve, reject) => { + (_fs || _load_fs()).default.readFile(loc, encoding, function (err, content) { + if (err) { + reject(err); + } else { + resolve(content); + } + }); + }); +} + +function readFile(loc) { + return _readFile(loc, 'utf8').then(normalizeOS); +} + +function readFileRaw(loc) { + return _readFile(loc, 'binary'); +} + +function normalizeOS(body) { + return body.replace(/\r\n/g, '\n'); +} + +const cr = '\r'.charCodeAt(0); +const lf = '\n'.charCodeAt(0); + +/***/ }), +/* 5 */ +/***/ (function(module, exports) { + +module.exports = require("fs"); + +/***/ }), +/* 6 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +class MessageError extends Error { + constructor(msg, code) { + super(msg); + this.code = code; + } + +} + +exports.MessageError = MessageError; +class ProcessSpawnError extends MessageError { + constructor(msg, code, process) { + super(msg, code); + this.process = process; + } + +} + +exports.ProcessSpawnError = ProcessSpawnError; +class SecurityError extends MessageError {} + +exports.SecurityError = SecurityError; +class ProcessTermError extends MessageError {} + +exports.ProcessTermError = ProcessTermError; +class ResponseError extends Error { + constructor(msg, responseCode) { + super(msg); + this.responseCode = responseCode; + } + +} + +exports.ResponseError = ResponseError; +class OneTimePasswordError extends Error {} +exports.OneTimePasswordError = OneTimePasswordError; + +/***/ }), +/* 7 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscriber; }); +/* unused harmony export SafeSubscriber */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_isFunction__ = __webpack_require__(154); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Observer__ = __webpack_require__(420); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Subscription__ = __webpack_require__(25); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__internal_symbol_rxSubscriber__ = __webpack_require__(321); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__config__ = __webpack_require__(185); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__util_hostReportError__ = __webpack_require__(323); +/** PURE_IMPORTS_START tslib,_util_isFunction,_Observer,_Subscription,_internal_symbol_rxSubscriber,_config,_util_hostReportError PURE_IMPORTS_END */ + + + + + + + +var Subscriber = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](Subscriber, _super); + function Subscriber(destinationOrNext, error, complete) { + var _this = _super.call(this) || this; + _this.syncErrorValue = null; + _this.syncErrorThrown = false; + _this.syncErrorThrowable = false; + _this.isStopped = false; + _this._parentSubscription = null; + switch (arguments.length) { + case 0: + _this.destination = __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]; + break; + case 1: + if (!destinationOrNext) { + _this.destination = __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]; + break; + } + if (typeof destinationOrNext === 'object') { + if (destinationOrNext instanceof Subscriber) { + _this.syncErrorThrowable = destinationOrNext.syncErrorThrowable; + _this.destination = destinationOrNext; + destinationOrNext.add(_this); + } + else { + _this.syncErrorThrowable = true; + _this.destination = new SafeSubscriber(_this, destinationOrNext); + } + break; + } + default: + _this.syncErrorThrowable = true; + _this.destination = new SafeSubscriber(_this, destinationOrNext, error, complete); + break; + } + return _this; + } + Subscriber.prototype[__WEBPACK_IMPORTED_MODULE_4__internal_symbol_rxSubscriber__["a" /* rxSubscriber */]] = function () { return this; }; + Subscriber.create = function (next, error, complete) { + var subscriber = new Subscriber(next, error, complete); + subscriber.syncErrorThrowable = false; + return subscriber; + }; + Subscriber.prototype.next = function (value) { + if (!this.isStopped) { + this._next(value); + } + }; + Subscriber.prototype.error = function (err) { + if (!this.isStopped) { + this.isStopped = true; + this._error(err); + } + }; + Subscriber.prototype.complete = function () { + if (!this.isStopped) { + this.isStopped = true; + this._complete(); + } + }; + Subscriber.prototype.unsubscribe = function () { + if (this.closed) { + return; + } + this.isStopped = true; + _super.prototype.unsubscribe.call(this); + }; + Subscriber.prototype._next = function (value) { + this.destination.next(value); + }; + Subscriber.prototype._error = function (err) { + this.destination.error(err); + this.unsubscribe(); + }; + Subscriber.prototype._complete = function () { + this.destination.complete(); + this.unsubscribe(); + }; + Subscriber.prototype._unsubscribeAndRecycle = function () { + var _a = this, _parent = _a._parent, _parents = _a._parents; + this._parent = null; + this._parents = null; + this.unsubscribe(); + this.closed = false; + this.isStopped = false; + this._parent = _parent; + this._parents = _parents; + this._parentSubscription = null; + return this; + }; + return Subscriber; +}(__WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */])); + +var SafeSubscriber = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](SafeSubscriber, _super); + function SafeSubscriber(_parentSubscriber, observerOrNext, error, complete) { + var _this = _super.call(this) || this; + _this._parentSubscriber = _parentSubscriber; + var next; + var context = _this; + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isFunction__["a" /* isFunction */])(observerOrNext)) { + next = observerOrNext; + } + else if (observerOrNext) { + next = observerOrNext.next; + error = observerOrNext.error; + complete = observerOrNext.complete; + if (observerOrNext !== __WEBPACK_IMPORTED_MODULE_2__Observer__["a" /* empty */]) { + context = Object.create(observerOrNext); + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isFunction__["a" /* isFunction */])(context.unsubscribe)) { + _this.add(context.unsubscribe.bind(context)); + } + context.unsubscribe = _this.unsubscribe.bind(_this); + } + } + _this._context = context; + _this._next = next; + _this._error = error; + _this._complete = complete; + return _this; + } + SafeSubscriber.prototype.next = function (value) { + if (!this.isStopped && this._next) { + var _parentSubscriber = this._parentSubscriber; + if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { + this.__tryOrUnsub(this._next, value); + } + else if (this.__tryOrSetError(_parentSubscriber, this._next, value)) { + this.unsubscribe(); + } + } + }; + SafeSubscriber.prototype.error = function (err) { + if (!this.isStopped) { + var _parentSubscriber = this._parentSubscriber; + var useDeprecatedSynchronousErrorHandling = __WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling; + if (this._error) { + if (!useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { + this.__tryOrUnsub(this._error, err); + this.unsubscribe(); + } + else { + this.__tryOrSetError(_parentSubscriber, this._error, err); + this.unsubscribe(); + } + } + else if (!_parentSubscriber.syncErrorThrowable) { + this.unsubscribe(); + if (useDeprecatedSynchronousErrorHandling) { + throw err; + } + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); + } + else { + if (useDeprecatedSynchronousErrorHandling) { + _parentSubscriber.syncErrorValue = err; + _parentSubscriber.syncErrorThrown = true; + } + else { + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); + } + this.unsubscribe(); + } + } + }; + SafeSubscriber.prototype.complete = function () { + var _this = this; + if (!this.isStopped) { + var _parentSubscriber = this._parentSubscriber; + if (this._complete) { + var wrappedComplete = function () { return _this._complete.call(_this._context); }; + if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling || !_parentSubscriber.syncErrorThrowable) { + this.__tryOrUnsub(wrappedComplete); + this.unsubscribe(); + } + else { + this.__tryOrSetError(_parentSubscriber, wrappedComplete); + this.unsubscribe(); + } + } + else { + this.unsubscribe(); + } + } + }; + SafeSubscriber.prototype.__tryOrUnsub = function (fn, value) { + try { + fn.call(this._context, value); + } + catch (err) { + this.unsubscribe(); + if (__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { + throw err; + } + else { + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); + } + } + }; + SafeSubscriber.prototype.__tryOrSetError = function (parent, fn, value) { + if (!__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { + throw new Error('bad call'); + } + try { + fn.call(this._context, value); + } + catch (err) { + if (__WEBPACK_IMPORTED_MODULE_5__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { + parent.syncErrorValue = err; + parent.syncErrorThrown = true; + return true; + } + else { + __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6__util_hostReportError__["a" /* hostReportError */])(err); + return true; + } + } + return false; + }; + SafeSubscriber.prototype._unsubscribe = function () { + var _parentSubscriber = this._parentSubscriber; + this._context = null; + this._parentSubscriber = null; + _parentSubscriber.unsubscribe(); + }; + return SafeSubscriber; +}(Subscriber)); + +//# sourceMappingURL=Subscriber.js.map + + +/***/ }), +/* 8 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.getPathKey = getPathKey; +const os = __webpack_require__(46); +const path = __webpack_require__(0); +const userHome = __webpack_require__(67).default; + +var _require = __webpack_require__(225); + +const getCacheDir = _require.getCacheDir, + getConfigDir = _require.getConfigDir, + getDataDir = _require.getDataDir; + +const isWebpackBundle = __webpack_require__(278); + +const DEPENDENCY_TYPES = exports.DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'optionalDependencies', 'peerDependencies']; +const OWNED_DEPENDENCY_TYPES = exports.OWNED_DEPENDENCY_TYPES = ['devDependencies', 'dependencies', 'optionalDependencies']; + +const RESOLUTIONS = exports.RESOLUTIONS = 'resolutions'; +const MANIFEST_FIELDS = exports.MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES]; + +const SUPPORTED_NODE_VERSIONS = exports.SUPPORTED_NODE_VERSIONS = '^4.8.0 || ^5.7.0 || ^6.2.2 || >=8.0.0'; + +const YARN_REGISTRY = exports.YARN_REGISTRY = 'https://registry.yarnpkg.com'; +const NPM_REGISTRY_RE = exports.NPM_REGISTRY_RE = /https?:\/\/registry\.npmjs\.org/g; + +const YARN_DOCS = exports.YARN_DOCS = 'https://yarnpkg.com/en/docs/cli/'; +const YARN_INSTALLER_SH = exports.YARN_INSTALLER_SH = 'https://yarnpkg.com/install.sh'; +const YARN_INSTALLER_MSI = exports.YARN_INSTALLER_MSI = 'https://yarnpkg.com/latest.msi'; + +const SELF_UPDATE_VERSION_URL = exports.SELF_UPDATE_VERSION_URL = 'https://yarnpkg.com/latest-version'; + +// cache version, bump whenever we make backwards incompatible changes +const CACHE_VERSION = exports.CACHE_VERSION = 6; + +// lockfile version, bump whenever we make backwards incompatible changes +const LOCKFILE_VERSION = exports.LOCKFILE_VERSION = 1; + +// max amount of network requests to perform concurrently +const NETWORK_CONCURRENCY = exports.NETWORK_CONCURRENCY = 8; + +// HTTP timeout used when downloading packages +const NETWORK_TIMEOUT = exports.NETWORK_TIMEOUT = 30 * 1000; // in milliseconds + +// max amount of child processes to execute concurrently +const CHILD_CONCURRENCY = exports.CHILD_CONCURRENCY = 5; + +const REQUIRED_PACKAGE_KEYS = exports.REQUIRED_PACKAGE_KEYS = ['name', 'version', '_uid']; + +function getPreferredCacheDirectories() { + const preferredCacheDirectories = [getCacheDir()]; + + if (process.getuid) { + // $FlowFixMe: process.getuid exists, dammit + preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache-${process.getuid()}`)); + } + + preferredCacheDirectories.push(path.join(os.tmpdir(), `.yarn-cache`)); + + return preferredCacheDirectories; +} + +const PREFERRED_MODULE_CACHE_DIRECTORIES = exports.PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories(); +const CONFIG_DIRECTORY = exports.CONFIG_DIRECTORY = getConfigDir(); +const DATA_DIRECTORY = exports.DATA_DIRECTORY = getDataDir(); +const LINK_REGISTRY_DIRECTORY = exports.LINK_REGISTRY_DIRECTORY = path.join(DATA_DIRECTORY, 'link'); +const GLOBAL_MODULE_DIRECTORY = exports.GLOBAL_MODULE_DIRECTORY = path.join(DATA_DIRECTORY, 'global'); + +const NODE_BIN_PATH = exports.NODE_BIN_PATH = process.execPath; +const YARN_BIN_PATH = exports.YARN_BIN_PATH = getYarnBinPath(); + +// Webpack needs to be configured with node.__dirname/__filename = false +function getYarnBinPath() { + if (isWebpackBundle) { + return __filename; + } else { + return path.join(__dirname, '..', 'bin', 'yarn.js'); + } +} + +const NODE_MODULES_FOLDER = exports.NODE_MODULES_FOLDER = 'node_modules'; +const NODE_PACKAGE_JSON = exports.NODE_PACKAGE_JSON = 'package.json'; + +const PNP_FILENAME = exports.PNP_FILENAME = '.pnp.js'; + +const POSIX_GLOBAL_PREFIX = exports.POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ''}/usr/local`; +const FALLBACK_GLOBAL_PREFIX = exports.FALLBACK_GLOBAL_PREFIX = path.join(userHome, '.yarn'); + +const META_FOLDER = exports.META_FOLDER = '.yarn-meta'; +const INTEGRITY_FILENAME = exports.INTEGRITY_FILENAME = '.yarn-integrity'; +const LOCKFILE_FILENAME = exports.LOCKFILE_FILENAME = 'yarn.lock'; +const METADATA_FILENAME = exports.METADATA_FILENAME = '.yarn-metadata.json'; +const TARBALL_FILENAME = exports.TARBALL_FILENAME = '.yarn-tarball.tgz'; +const CLEAN_FILENAME = exports.CLEAN_FILENAME = '.yarnclean'; + +const NPM_LOCK_FILENAME = exports.NPM_LOCK_FILENAME = 'package-lock.json'; +const NPM_SHRINKWRAP_FILENAME = exports.NPM_SHRINKWRAP_FILENAME = 'npm-shrinkwrap.json'; + +const DEFAULT_INDENT = exports.DEFAULT_INDENT = ' '; +const SINGLE_INSTANCE_PORT = exports.SINGLE_INSTANCE_PORT = 31997; +const SINGLE_INSTANCE_FILENAME = exports.SINGLE_INSTANCE_FILENAME = '.yarn-single-instance'; + +const ENV_PATH_KEY = exports.ENV_PATH_KEY = getPathKey(process.platform, process.env); + +function getPathKey(platform, env) { + let pathKey = 'PATH'; + + // windows calls its path "Path" usually, but this is not guaranteed. + if (platform === 'win32') { + pathKey = 'Path'; + + for (const key in env) { + if (key.toLowerCase() === 'path') { + pathKey = key; + } + } + } + + return pathKey; +} + +const VERSION_COLOR_SCHEME = exports.VERSION_COLOR_SCHEME = { + major: 'red', + premajor: 'red', + minor: 'yellow', + preminor: 'yellow', + patch: 'green', + prepatch: 'green', + prerelease: 'red', + unchanged: 'white', + unknown: 'red' +}; + +/***/ }), +/* 9 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + + + +/** + * Use invariant() to assert state which your program assumes to be true. + * + * Provide sprintf-style format (only %s is supported) and arguments + * to provide information about what broke and what you were + * expecting. + * + * The invariant message will be stripped in production, but the invariant + * will remain to ensure logic does not differ in production. + */ + +var NODE_ENV = process.env.NODE_ENV; + +var invariant = function(condition, format, a, b, c, d, e, f) { + if (NODE_ENV !== 'production') { + if (format === undefined) { + throw new Error('invariant requires an error message argument'); + } + } + + if (!condition) { + var error; + if (format === undefined) { + error = new Error( + 'Minified exception occurred; use the non-minified dev environment ' + + 'for the full error message and additional helpful warnings.' + ); + } else { + var args = [a, b, c, d, e, f]; + var argIndex = 0; + error = new Error( + format.replace(/%s/g, function() { return args[argIndex++]; }) + ); + error.name = 'Invariant Violation'; + } + + error.framesToPop = 1; // we don't care about invariant's own frame + throw error; + } +}; + +module.exports = invariant; + + +/***/ }), +/* 10 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var YAMLException = __webpack_require__(54); + +var TYPE_CONSTRUCTOR_OPTIONS = [ + 'kind', + 'resolve', + 'construct', + 'instanceOf', + 'predicate', + 'represent', + 'defaultStyle', + 'styleAliases' +]; + +var YAML_NODE_KINDS = [ + 'scalar', + 'sequence', + 'mapping' +]; + +function compileStyleAliases(map) { + var result = {}; + + if (map !== null) { + Object.keys(map).forEach(function (style) { + map[style].forEach(function (alias) { + result[String(alias)] = style; + }); + }); + } + + return result; +} + +function Type(tag, options) { + options = options || {}; + + Object.keys(options).forEach(function (name) { + if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { + throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); + } + }); + + // TODO: Add tag format check. + this.tag = tag; + this.kind = options['kind'] || null; + this.resolve = options['resolve'] || function () { return true; }; + this.construct = options['construct'] || function (data) { return data; }; + this.instanceOf = options['instanceOf'] || null; + this.predicate = options['predicate'] || null; + this.represent = options['represent'] || null; + this.defaultStyle = options['defaultStyle'] || null; + this.styleAliases = compileStyleAliases(options['styleAliases'] || null); + + if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { + throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); + } +} + +module.exports = Type; + + +/***/ }), +/* 11 */ +/***/ (function(module, exports) { + +module.exports = require("crypto"); + +/***/ }), +/* 12 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Observable; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_canReportError__ = __webpack_require__(322); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_toSubscriber__ = __webpack_require__(932); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__internal_symbol_observable__ = __webpack_require__(117); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_pipe__ = __webpack_require__(324); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__config__ = __webpack_require__(185); +/** PURE_IMPORTS_START _util_canReportError,_util_toSubscriber,_internal_symbol_observable,_util_pipe,_config PURE_IMPORTS_END */ + + + + + +var Observable = /*@__PURE__*/ (function () { + function Observable(subscribe) { + this._isScalar = false; + if (subscribe) { + this._subscribe = subscribe; + } + } + Observable.prototype.lift = function (operator) { + var observable = new Observable(); + observable.source = this; + observable.operator = operator; + return observable; + }; + Observable.prototype.subscribe = function (observerOrNext, error, complete) { + var operator = this.operator; + var sink = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_toSubscriber__["a" /* toSubscriber */])(observerOrNext, error, complete); + if (operator) { + operator.call(sink, this.source); + } + else { + sink.add(this.source || (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling && !sink.syncErrorThrowable) ? + this._subscribe(sink) : + this._trySubscribe(sink)); + } + if (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { + if (sink.syncErrorThrowable) { + sink.syncErrorThrowable = false; + if (sink.syncErrorThrown) { + throw sink.syncErrorValue; + } + } + } + return sink; + }; + Observable.prototype._trySubscribe = function (sink) { + try { + return this._subscribe(sink); + } + catch (err) { + if (__WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].useDeprecatedSynchronousErrorHandling) { + sink.syncErrorThrown = true; + sink.syncErrorValue = err; + } + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__util_canReportError__["a" /* canReportError */])(sink)) { + sink.error(err); + } + else { + console.warn(err); + } + } + }; + Observable.prototype.forEach = function (next, promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function (resolve, reject) { + var subscription; + subscription = _this.subscribe(function (value) { + try { + next(value); + } + catch (err) { + reject(err); + if (subscription) { + subscription.unsubscribe(); + } + } + }, reject, resolve); + }); + }; + Observable.prototype._subscribe = function (subscriber) { + var source = this.source; + return source && source.subscribe(subscriber); + }; + Observable.prototype[__WEBPACK_IMPORTED_MODULE_2__internal_symbol_observable__["a" /* observable */]] = function () { + return this; + }; + Observable.prototype.pipe = function () { + var operations = []; + for (var _i = 0; _i < arguments.length; _i++) { + operations[_i] = arguments[_i]; + } + if (operations.length === 0) { + return this; + } + return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_pipe__["b" /* pipeFromArray */])(operations)(this); + }; + Observable.prototype.toPromise = function (promiseCtor) { + var _this = this; + promiseCtor = getPromiseCtor(promiseCtor); + return new promiseCtor(function (resolve, reject) { + var value; + _this.subscribe(function (x) { return value = x; }, function (err) { return reject(err); }, function () { return resolve(value); }); + }); + }; + Observable.create = function (subscribe) { + return new Observable(subscribe); + }; + return Observable; +}()); + +function getPromiseCtor(promiseCtor) { + if (!promiseCtor) { + promiseCtor = __WEBPACK_IMPORTED_MODULE_4__config__["a" /* config */].Promise || Promise; + } + if (!promiseCtor) { + throw new Error('no Promise impl found'); + } + return promiseCtor; +} +//# sourceMappingURL=Observable.js.map + + +/***/ }), +/* 13 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return OuterSubscriber; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Subscriber__ = __webpack_require__(7); +/** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */ + + +var OuterSubscriber = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](OuterSubscriber, _super); + function OuterSubscriber() { + return _super !== null && _super.apply(this, arguments) || this; + } + OuterSubscriber.prototype.notifyNext = function (outerValue, innerValue, outerIndex, innerIndex, innerSub) { + this.destination.next(innerValue); + }; + OuterSubscriber.prototype.notifyError = function (error, innerSub) { + this.destination.error(error); + }; + OuterSubscriber.prototype.notifyComplete = function (innerSub) { + this.destination.complete(); + }; + return OuterSubscriber; +}(__WEBPACK_IMPORTED_MODULE_1__Subscriber__["a" /* Subscriber */])); + +//# sourceMappingURL=OuterSubscriber.js.map + + +/***/ }), +/* 14 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (immutable) */ __webpack_exports__["a"] = subscribeToResult; +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__InnerSubscriber__ = __webpack_require__(84); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__subscribeTo__ = __webpack_require__(446); +/** PURE_IMPORTS_START _InnerSubscriber,_subscribeTo PURE_IMPORTS_END */ + + +function subscribeToResult(outerSubscriber, result, outerValue, outerIndex, destination) { + if (destination === void 0) { + destination = new __WEBPACK_IMPORTED_MODULE_0__InnerSubscriber__["a" /* InnerSubscriber */](outerSubscriber, outerValue, outerIndex); + } + if (destination.closed) { + return; + } + return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__subscribeTo__["a" /* subscribeTo */])(result)(destination); +} +//# sourceMappingURL=subscribeToResult.js.map + + +/***/ }), +/* 15 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; +/* eslint-disable node/no-deprecated-api */ + + + +var buffer = __webpack_require__(64) +var Buffer = buffer.Buffer + +var safer = {} + +var key + +for (key in buffer) { + if (!buffer.hasOwnProperty(key)) continue + if (key === 'SlowBuffer' || key === 'Buffer') continue + safer[key] = buffer[key] +} + +var Safer = safer.Buffer = {} +for (key in Buffer) { + if (!Buffer.hasOwnProperty(key)) continue + if (key === 'allocUnsafe' || key === 'allocUnsafeSlow') continue + Safer[key] = Buffer[key] +} + +safer.Buffer.prototype = Buffer.prototype + +if (!Safer.from || Safer.from === Uint8Array.from) { + Safer.from = function (value, encodingOrOffset, length) { + if (typeof value === 'number') { + throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value) + } + if (value && typeof value.length === 'undefined') { + throw new TypeError('The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type ' + typeof value) + } + return Buffer(value, encodingOrOffset, length) + } +} + +if (!Safer.alloc) { + Safer.alloc = function (size, fill, encoding) { + if (typeof size !== 'number') { + throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size) + } + if (size < 0 || size >= 2 * (1 << 30)) { + throw new RangeError('The value "' + size + '" is invalid for option "size"') + } + var buf = Buffer(size) + if (!fill || fill.length === 0) { + buf.fill(0) + } else if (typeof encoding === 'string') { + buf.fill(fill, encoding) + } else { + buf.fill(fill) + } + return buf + } +} + +if (!safer.kStringMaxLength) { + try { + safer.kStringMaxLength = process.binding('buffer').kStringMaxLength + } catch (e) { + // we can't determine kStringMaxLength in environments where process.binding + // is unsupported, so let's not set it + } +} + +if (!safer.constants) { + safer.constants = { + MAX_LENGTH: safer.kMaxLength + } + if (safer.kStringMaxLength) { + safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength + } +} + +module.exports = safer + + +/***/ }), +/* 16 */ +/***/ (function(module, exports, __webpack_require__) { + +// Copyright (c) 2012, Mark Cavage. All rights reserved. +// Copyright 2015 Joyent, Inc. + +var assert = __webpack_require__(28); +var Stream = __webpack_require__(23).Stream; +var util = __webpack_require__(3); + + +///--- Globals + +/* JSSTYLED */ +var UUID_REGEXP = /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/; + + +///--- Internal + +function _capitalize(str) { + return (str.charAt(0).toUpperCase() + str.slice(1)); +} + +function _toss(name, expected, oper, arg, actual) { + throw new assert.AssertionError({ + message: util.format('%s (%s) is required', name, expected), + actual: (actual === undefined) ? typeof (arg) : actual(arg), + expected: expected, + operator: oper || '===', + stackStartFunction: _toss.caller + }); +} + +function _getClass(arg) { + return (Object.prototype.toString.call(arg).slice(8, -1)); +} + +function noop() { + // Why even bother with asserts? +} + + +///--- Exports + +var types = { + bool: { + check: function (arg) { return typeof (arg) === 'boolean'; } + }, + func: { + check: function (arg) { return typeof (arg) === 'function'; } + }, + string: { + check: function (arg) { return typeof (arg) === 'string'; } + }, + object: { + check: function (arg) { + return typeof (arg) === 'object' && arg !== null; + } + }, + number: { + check: function (arg) { + return typeof (arg) === 'number' && !isNaN(arg); + } + }, + finite: { + check: function (arg) { + return typeof (arg) === 'number' && !isNaN(arg) && isFinite(arg); + } + }, + buffer: { + check: function (arg) { return Buffer.isBuffer(arg); }, + operator: 'Buffer.isBuffer' + }, + array: { + check: function (arg) { return Array.isArray(arg); }, + operator: 'Array.isArray' + }, + stream: { + check: function (arg) { return arg instanceof Stream; }, + operator: 'instanceof', + actual: _getClass + }, + date: { + check: function (arg) { return arg instanceof Date; }, + operator: 'instanceof', + actual: _getClass + }, + regexp: { + check: function (arg) { return arg instanceof RegExp; }, + operator: 'instanceof', + actual: _getClass + }, + uuid: { + check: function (arg) { + return typeof (arg) === 'string' && UUID_REGEXP.test(arg); + }, + operator: 'isUUID' + } +}; + +function _setExports(ndebug) { + var keys = Object.keys(types); + var out; + + /* re-export standard assert */ + if (process.env.NODE_NDEBUG) { + out = noop; + } else { + out = function (arg, msg) { + if (!arg) { + _toss(msg, 'true', arg); + } + }; + } + + /* standard checks */ + keys.forEach(function (k) { + if (ndebug) { + out[k] = noop; + return; + } + var type = types[k]; + out[k] = function (arg, msg) { + if (!type.check(arg)) { + _toss(msg, k, type.operator, arg, type.actual); + } + }; + }); + + /* optional checks */ + keys.forEach(function (k) { + var name = 'optional' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + out[name] = function (arg, msg) { + if (arg === undefined || arg === null) { + return; + } + if (!type.check(arg)) { + _toss(msg, k, type.operator, arg, type.actual); + } + }; + }); + + /* arrayOf checks */ + keys.forEach(function (k) { + var name = 'arrayOf' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + var expected = '[' + k + ']'; + out[name] = function (arg, msg) { + if (!Array.isArray(arg)) { + _toss(msg, expected, type.operator, arg, type.actual); + } + var i; + for (i = 0; i < arg.length; i++) { + if (!type.check(arg[i])) { + _toss(msg, expected, type.operator, arg, type.actual); + } + } + }; + }); + + /* optionalArrayOf checks */ + keys.forEach(function (k) { + var name = 'optionalArrayOf' + _capitalize(k); + if (ndebug) { + out[name] = noop; + return; + } + var type = types[k]; + var expected = '[' + k + ']'; + out[name] = function (arg, msg) { + if (arg === undefined || arg === null) { + return; + } + if (!Array.isArray(arg)) { + _toss(msg, expected, type.operator, arg, type.actual); + } + var i; + for (i = 0; i < arg.length; i++) { + if (!type.check(arg[i])) { + _toss(msg, expected, type.operator, arg, type.actual); + } + } + }; + }); + + /* re-export built-in assertions */ + Object.keys(assert).forEach(function (k) { + if (k === 'AssertionError') { + out[k] = assert[k]; + return; + } + if (ndebug) { + out[k] = noop; + return; + } + out[k] = assert[k]; + }); + + /* export ourselves (for unit tests _only_) */ + out._setExports = _setExports; + + return out; +} + +module.exports = _setExports(process.env.NODE_NDEBUG); + + +/***/ }), +/* 17 */ +/***/ (function(module, exports) { + +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +var global = module.exports = typeof window != 'undefined' && window.Math == Math + ? window : typeof self != 'undefined' && self.Math == Math ? self + // eslint-disable-next-line no-new-func + : Function('return this')(); +if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef + + +/***/ }), +/* 18 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.sortAlpha = sortAlpha; +exports.sortOptionsByFlags = sortOptionsByFlags; +exports.entries = entries; +exports.removePrefix = removePrefix; +exports.removeSuffix = removeSuffix; +exports.addSuffix = addSuffix; +exports.hyphenate = hyphenate; +exports.camelCase = camelCase; +exports.compareSortedArrays = compareSortedArrays; +exports.sleep = sleep; +const _camelCase = __webpack_require__(230); + +function sortAlpha(a, b) { + // sort alphabetically in a deterministic way + const shortLen = Math.min(a.length, b.length); + for (let i = 0; i < shortLen; i++) { + const aChar = a.charCodeAt(i); + const bChar = b.charCodeAt(i); + if (aChar !== bChar) { + return aChar - bChar; + } + } + return a.length - b.length; +} + +function sortOptionsByFlags(a, b) { + const aOpt = a.flags.replace(/-/g, ''); + const bOpt = b.flags.replace(/-/g, ''); + return sortAlpha(aOpt, bOpt); +} + +function entries(obj) { + const entries = []; + if (obj) { + for (const key in obj) { + entries.push([key, obj[key]]); + } + } + return entries; +} + +function removePrefix(pattern, prefix) { + if (pattern.startsWith(prefix)) { + pattern = pattern.slice(prefix.length); + } + + return pattern; +} + +function removeSuffix(pattern, suffix) { + if (pattern.endsWith(suffix)) { + return pattern.slice(0, -suffix.length); + } + + return pattern; +} + +function addSuffix(pattern, suffix) { + if (!pattern.endsWith(suffix)) { + return pattern + suffix; + } + + return pattern; +} + +function hyphenate(str) { + return str.replace(/[A-Z]/g, match => { + return '-' + match.charAt(0).toLowerCase(); + }); +} + +function camelCase(str) { + if (/[A-Z]/.test(str)) { + return null; + } else { + return _camelCase(str); + } +} + +function compareSortedArrays(array1, array2) { + if (array1.length !== array2.length) { + return false; + } + for (let i = 0, len = array1.length; i < len; i++) { + if (array1[i] !== array2[i]) { + return false; + } + } + return true; +} + +function sleep(ms) { + return new Promise(resolve => { + setTimeout(resolve, ms); + }); +} + +/***/ }), +/* 19 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.stringify = exports.parse = undefined; + +var _asyncToGenerator2; + +function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); +} + +var _parse; + +function _load_parse() { + return _parse = __webpack_require__(105); +} + +Object.defineProperty(exports, 'parse', { + enumerable: true, + get: function get() { + return _interopRequireDefault(_parse || _load_parse()).default; + } +}); + +var _stringify; + +function _load_stringify() { + return _stringify = __webpack_require__(199); +} + +Object.defineProperty(exports, 'stringify', { + enumerable: true, + get: function get() { + return _interopRequireDefault(_stringify || _load_stringify()).default; + } +}); +exports.implodeEntry = implodeEntry; +exports.explodeEntry = explodeEntry; + +var _misc; + +function _load_misc() { + return _misc = __webpack_require__(18); +} + +var _normalizePattern; + +function _load_normalizePattern() { + return _normalizePattern = __webpack_require__(37); +} + +var _parse2; + +function _load_parse2() { + return _parse2 = _interopRequireDefault(__webpack_require__(105)); +} + +var _constants; + +function _load_constants() { + return _constants = __webpack_require__(8); +} + +var _fs; + +function _load_fs() { + return _fs = _interopRequireWildcard(__webpack_require__(4)); +} + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +const invariant = __webpack_require__(9); + +const path = __webpack_require__(0); +const ssri = __webpack_require__(65); + +function getName(pattern) { + return (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern).name; +} + +function blankObjectUndefined(obj) { + return obj && Object.keys(obj).length ? obj : undefined; +} + +function keyForRemote(remote) { + return remote.resolved || (remote.reference && remote.hash ? `${remote.reference}#${remote.hash}` : null); +} + +function serializeIntegrity(integrity) { + // We need this because `Integrity.toString()` does not use sorting to ensure a stable string output + // See https://git.io/vx2Hy + return integrity.toString().split(' ').sort().join(' '); +} + +function implodeEntry(pattern, obj) { + const inferredName = getName(pattern); + const integrity = obj.integrity ? serializeIntegrity(obj.integrity) : ''; + const imploded = { + name: inferredName === obj.name ? undefined : obj.name, + version: obj.version, + uid: obj.uid === obj.version ? undefined : obj.uid, + resolved: obj.resolved, + registry: obj.registry === 'npm' ? undefined : obj.registry, + dependencies: blankObjectUndefined(obj.dependencies), + optionalDependencies: blankObjectUndefined(obj.optionalDependencies), + permissions: blankObjectUndefined(obj.permissions), + prebuiltVariants: blankObjectUndefined(obj.prebuiltVariants) + }; + if (integrity) { + imploded.integrity = integrity; + } + return imploded; +} + +function explodeEntry(pattern, obj) { + obj.optionalDependencies = obj.optionalDependencies || {}; + obj.dependencies = obj.dependencies || {}; + obj.uid = obj.uid || obj.version; + obj.permissions = obj.permissions || {}; + obj.registry = obj.registry || 'npm'; + obj.name = obj.name || getName(pattern); + const integrity = obj.integrity; + if (integrity && integrity.isIntegrity) { + obj.integrity = ssri.parse(integrity); + } + return obj; +} + +class Lockfile { + constructor({ cache, source, parseResultType } = {}) { + this.source = source || ''; + this.cache = cache; + this.parseResultType = parseResultType; + } + + // source string if the `cache` was parsed + + + // if true, we're parsing an old yarn file and need to update integrity fields + hasEntriesExistWithoutIntegrity() { + if (!this.cache) { + return false; + } + + for (const key in this.cache) { + // $FlowFixMe - `this.cache` is clearly defined at this point + if (!/^.*@(file:|http)/.test(key) && this.cache[key] && !this.cache[key].integrity) { + return true; + } + } + + return false; + } + + static fromDirectory(dir, reporter) { + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + // read the manifest in this directory + const lockfileLoc = path.join(dir, (_constants || _load_constants()).LOCKFILE_FILENAME); + + let lockfile; + let rawLockfile = ''; + let parseResult; + + if (yield (_fs || _load_fs()).exists(lockfileLoc)) { + rawLockfile = yield (_fs || _load_fs()).readFile(lockfileLoc); + parseResult = (0, (_parse2 || _load_parse2()).default)(rawLockfile, lockfileLoc); + + if (reporter) { + if (parseResult.type === 'merge') { + reporter.info(reporter.lang('lockfileMerged')); + } else if (parseResult.type === 'conflict') { + reporter.warn(reporter.lang('lockfileConflict')); + } + } + + lockfile = parseResult.object; + } else if (reporter) { + reporter.info(reporter.lang('noLockfileFound')); + } + + if (lockfile && lockfile.__metadata) { + const lockfilev2 = lockfile; + lockfile = {}; + } + + return new Lockfile({ cache: lockfile, source: rawLockfile, parseResultType: parseResult && parseResult.type }); + })(); + } + + getLocked(pattern) { + const cache = this.cache; + if (!cache) { + return undefined; + } + + const shrunk = pattern in cache && cache[pattern]; + + if (typeof shrunk === 'string') { + return this.getLocked(shrunk); + } else if (shrunk) { + explodeEntry(pattern, shrunk); + return shrunk; + } + + return undefined; + } + + removePattern(pattern) { + const cache = this.cache; + if (!cache) { + return; + } + delete cache[pattern]; + } + + getLockfile(patterns) { + const lockfile = {}; + const seen = new Map(); + + // order by name so that lockfile manifest is assigned to the first dependency with this manifest + // the others that have the same remoteKey will just refer to the first + // ordering allows for consistency in lockfile when it is serialized + const sortedPatternsKeys = Object.keys(patterns).sort((_misc || _load_misc()).sortAlpha); + + for (var _iterator = sortedPatternsKeys, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref; + + if (_isArray) { + if (_i >= _iterator.length) break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref = _i.value; + } + + const pattern = _ref; + + const pkg = patterns[pattern]; + const remote = pkg._remote, + ref = pkg._reference; + + invariant(ref, 'Package is missing a reference'); + invariant(remote, 'Package is missing a remote'); + + const remoteKey = keyForRemote(remote); + const seenPattern = remoteKey && seen.get(remoteKey); + if (seenPattern) { + // no point in duplicating it + lockfile[pattern] = seenPattern; + + // if we're relying on our name being inferred and two of the patterns have + // different inferred names then we need to set it + if (!seenPattern.name && getName(pattern) !== pkg.name) { + seenPattern.name = pkg.name; + } + continue; + } + const obj = implodeEntry(pattern, { + name: pkg.name, + version: pkg.version, + uid: pkg._uid, + resolved: remote.resolved, + integrity: remote.integrity, + registry: remote.registry, + dependencies: pkg.dependencies, + peerDependencies: pkg.peerDependencies, + optionalDependencies: pkg.optionalDependencies, + permissions: ref.permissions, + prebuiltVariants: pkg.prebuiltVariants + }); + + lockfile[pattern] = obj; + + if (remoteKey) { + seen.set(remoteKey, obj); + } + } + + return lockfile; + } +} +exports.default = Lockfile; + +/***/ }), +/* 20 */ +/***/ (function(module, exports, __webpack_require__) { + +var store = __webpack_require__(133)('wks'); +var uid = __webpack_require__(137); +var Symbol = __webpack_require__(17).Symbol; +var USE_SYMBOL = typeof Symbol == 'function'; + +var $exports = module.exports = function (name) { + return store[name] || (store[name] = + USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); +}; + +$exports.store = store; + + +/***/ }), +/* 21 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; + +var _assign = __webpack_require__(591); + +var _assign2 = _interopRequireDefault(_assign); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = _assign2.default || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; +}; + +/***/ }), +/* 22 */ +/***/ (function(module, exports) { + +exports = module.exports = SemVer; + +// The debug function is excluded entirely from the minified version. +/* nomin */ var debug; +/* nomin */ if (typeof process === 'object' && + /* nomin */ process.env && + /* nomin */ process.env.NODE_DEBUG && + /* nomin */ /\bsemver\b/i.test(process.env.NODE_DEBUG)) + /* nomin */ debug = function() { + /* nomin */ var args = Array.prototype.slice.call(arguments, 0); + /* nomin */ args.unshift('SEMVER'); + /* nomin */ console.log.apply(console, args); + /* nomin */ }; +/* nomin */ else + /* nomin */ debug = function() {}; + +// Note: this is the semver.org version of the spec that it implements +// Not necessarily the package version of this code. +exports.SEMVER_SPEC_VERSION = '2.0.0'; + +var MAX_LENGTH = 256; +var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991; + +// Max safe segment length for coercion. +var MAX_SAFE_COMPONENT_LENGTH = 16; + +// The actual regexps go on exports.re +var re = exports.re = []; +var src = exports.src = []; +var R = 0; + +// The following Regular Expressions can be used for tokenizing, +// validating, and parsing SemVer version strings. + +// ## Numeric Identifier +// A single `0`, or a non-zero digit followed by zero or more digits. + +var NUMERICIDENTIFIER = R++; +src[NUMERICIDENTIFIER] = '0|[1-9]\\d*'; +var NUMERICIDENTIFIERLOOSE = R++; +src[NUMERICIDENTIFIERLOOSE] = '[0-9]+'; + + +// ## Non-numeric Identifier +// Zero or more digits, followed by a letter or hyphen, and then zero or +// more letters, digits, or hyphens. + +var NONNUMERICIDENTIFIER = R++; +src[NONNUMERICIDENTIFIER] = '\\d*[a-zA-Z-][a-zA-Z0-9-]*'; + + +// ## Main Version +// Three dot-separated numeric identifiers. + +var MAINVERSION = R++; +src[MAINVERSION] = '(' + src[NUMERICIDENTIFIER] + ')\\.' + + '(' + src[NUMERICIDENTIFIER] + ')\\.' + + '(' + src[NUMERICIDENTIFIER] + ')'; + +var MAINVERSIONLOOSE = R++; +src[MAINVERSIONLOOSE] = '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + + '(' + src[NUMERICIDENTIFIERLOOSE] + ')\\.' + + '(' + src[NUMERICIDENTIFIERLOOSE] + ')'; + +// ## Pre-release Version Identifier +// A numeric identifier, or a non-numeric identifier. + +var PRERELEASEIDENTIFIER = R++; +src[PRERELEASEIDENTIFIER] = '(?:' + src[NUMERICIDENTIFIER] + + '|' + src[NONNUMERICIDENTIFIER] + ')'; + +var PRERELEASEIDENTIFIERLOOSE = R++; +src[PRERELEASEIDENTIFIERLOOSE] = '(?:' + src[NUMERICIDENTIFIERLOOSE] + + '|' + src[NONNUMERICIDENTIFIER] + ')'; + + +// ## Pre-release Version +// Hyphen, followed by one or more dot-separated pre-release version +// identifiers. + +var PRERELEASE = R++; +src[PRERELEASE] = '(?:-(' + src[PRERELEASEIDENTIFIER] + + '(?:\\.' + src[PRERELEASEIDENTIFIER] + ')*))'; + +var PRERELEASELOOSE = R++; +src[PRERELEASELOOSE] = '(?:-?(' + src[PRERELEASEIDENTIFIERLOOSE] + + '(?:\\.' + src[PRERELEASEIDENTIFIERLOOSE] + ')*))'; + +// ## Build Metadata Identifier +// Any combination of digits, letters, or hyphens. + +var BUILDIDENTIFIER = R++; +src[BUILDIDENTIFIER] = '[0-9A-Za-z-]+'; + +// ## Build Metadata +// Plus sign, followed by one or more period-separated build metadata +// identifiers. + +var BUILD = R++; +src[BUILD] = '(?:\\+(' + src[BUILDIDENTIFIER] + + '(?:\\.' + src[BUILDIDENTIFIER] + ')*))'; + + +// ## Full Version String +// A main version, followed optionally by a pre-release version and +// build metadata. + +// Note that the only major, minor, patch, and pre-release sections of +// the version string are capturing groups. The build metadata is not a +// capturing group, because it should not ever be used in version +// comparison. + +var FULL = R++; +var FULLPLAIN = 'v?' + src[MAINVERSION] + + src[PRERELEASE] + '?' + + src[BUILD] + '?'; + +src[FULL] = '^' + FULLPLAIN + '$'; + +// like full, but allows v1.2.3 and =1.2.3, which people do sometimes. +// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty +// common in the npm registry. +var LOOSEPLAIN = '[v=\\s]*' + src[MAINVERSIONLOOSE] + + src[PRERELEASELOOSE] + '?' + + src[BUILD] + '?'; + +var LOOSE = R++; +src[LOOSE] = '^' + LOOSEPLAIN + '$'; + +var GTLT = R++; +src[GTLT] = '((?:<|>)?=?)'; + +// Something like "2.*" or "1.2.x". +// Note that "x.x" is a valid xRange identifer, meaning "any version" +// Only the first item is strictly required. +var XRANGEIDENTIFIERLOOSE = R++; +src[XRANGEIDENTIFIERLOOSE] = src[NUMERICIDENTIFIERLOOSE] + '|x|X|\\*'; +var XRANGEIDENTIFIER = R++; +src[XRANGEIDENTIFIER] = src[NUMERICIDENTIFIER] + '|x|X|\\*'; + +var XRANGEPLAIN = R++; +src[XRANGEPLAIN] = '[v=\\s]*(' + src[XRANGEIDENTIFIER] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIER] + ')' + + '(?:' + src[PRERELEASE] + ')?' + + src[BUILD] + '?' + + ')?)?'; + +var XRANGEPLAINLOOSE = R++; +src[XRANGEPLAINLOOSE] = '[v=\\s]*(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:\\.(' + src[XRANGEIDENTIFIERLOOSE] + ')' + + '(?:' + src[PRERELEASELOOSE] + ')?' + + src[BUILD] + '?' + + ')?)?'; + +var XRANGE = R++; +src[XRANGE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAIN] + '$'; +var XRANGELOOSE = R++; +src[XRANGELOOSE] = '^' + src[GTLT] + '\\s*' + src[XRANGEPLAINLOOSE] + '$'; + +// Coercion. +// Extract anything that could conceivably be a part of a valid semver +var COERCE = R++; +src[COERCE] = '(?:^|[^\\d])' + + '(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '})' + + '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' + + '(?:\\.(\\d{1,' + MAX_SAFE_COMPONENT_LENGTH + '}))?' + + '(?:$|[^\\d])'; + +// Tilde ranges. +// Meaning is "reasonably at or greater than" +var LONETILDE = R++; +src[LONETILDE] = '(?:~>?)'; + +var TILDETRIM = R++; +src[TILDETRIM] = '(\\s*)' + src[LONETILDE] + '\\s+'; +re[TILDETRIM] = new RegExp(src[TILDETRIM], 'g'); +var tildeTrimReplace = '$1~'; + +var TILDE = R++; +src[TILDE] = '^' + src[LONETILDE] + src[XRANGEPLAIN] + '$'; +var TILDELOOSE = R++; +src[TILDELOOSE] = '^' + src[LONETILDE] + src[XRANGEPLAINLOOSE] + '$'; + +// Caret ranges. +// Meaning is "at least and backwards compatible with" +var LONECARET = R++; +src[LONECARET] = '(?:\\^)'; + +var CARETTRIM = R++; +src[CARETTRIM] = '(\\s*)' + src[LONECARET] + '\\s+'; +re[CARETTRIM] = new RegExp(src[CARETTRIM], 'g'); +var caretTrimReplace = '$1^'; + +var CARET = R++; +src[CARET] = '^' + src[LONECARET] + src[XRANGEPLAIN] + '$'; +var CARETLOOSE = R++; +src[CARETLOOSE] = '^' + src[LONECARET] + src[XRANGEPLAINLOOSE] + '$'; + +// A simple gt/lt/eq thing, or just "" to indicate "any version" +var COMPARATORLOOSE = R++; +src[COMPARATORLOOSE] = '^' + src[GTLT] + '\\s*(' + LOOSEPLAIN + ')$|^$'; +var COMPARATOR = R++; +src[COMPARATOR] = '^' + src[GTLT] + '\\s*(' + FULLPLAIN + ')$|^$'; + + +// An expression to strip any whitespace between the gtlt and the thing +// it modifies, so that `> 1.2.3` ==> `>1.2.3` +var COMPARATORTRIM = R++; +src[COMPARATORTRIM] = '(\\s*)' + src[GTLT] + + '\\s*(' + LOOSEPLAIN + '|' + src[XRANGEPLAIN] + ')'; + +// this one has to use the /g flag +re[COMPARATORTRIM] = new RegExp(src[COMPARATORTRIM], 'g'); +var comparatorTrimReplace = '$1$2$3'; + + +// Something like `1.2.3 - 1.2.4` +// Note that these all use the loose form, because they'll be +// checked against either the strict or loose comparator form +// later. +var HYPHENRANGE = R++; +src[HYPHENRANGE] = '^\\s*(' + src[XRANGEPLAIN] + ')' + + '\\s+-\\s+' + + '(' + src[XRANGEPLAIN] + ')' + + '\\s*$'; + +var HYPHENRANGELOOSE = R++; +src[HYPHENRANGELOOSE] = '^\\s*(' + src[XRANGEPLAINLOOSE] + ')' + + '\\s+-\\s+' + + '(' + src[XRANGEPLAINLOOSE] + ')' + + '\\s*$'; + +// Star ranges basically just allow anything at all. +var STAR = R++; +src[STAR] = '(<|>)?=?\\s*\\*'; + +// Compile to actual regexp objects. +// All are flag-free, unless they were created above with a flag. +for (var i = 0; i < R; i++) { + debug(i, src[i]); + if (!re[i]) + re[i] = new RegExp(src[i]); +} + +exports.parse = parse; +function parse(version, loose) { + if (version instanceof SemVer) + return version; + + if (typeof version !== 'string') + return null; + + if (version.length > MAX_LENGTH) + return null; + + var r = loose ? re[LOOSE] : re[FULL]; + if (!r.test(version)) + return null; + + try { + return new SemVer(version, loose); + } catch (er) { + return null; + } +} + +exports.valid = valid; +function valid(version, loose) { + var v = parse(version, loose); + return v ? v.version : null; +} + + +exports.clean = clean; +function clean(version, loose) { + var s = parse(version.trim().replace(/^[=v]+/, ''), loose); + return s ? s.version : null; +} + +exports.SemVer = SemVer; + +function SemVer(version, loose) { + if (version instanceof SemVer) { + if (version.loose === loose) + return version; + else + version = version.version; + } else if (typeof version !== 'string') { + throw new TypeError('Invalid Version: ' + version); + } + + if (version.length > MAX_LENGTH) + throw new TypeError('version is longer than ' + MAX_LENGTH + ' characters') + + if (!(this instanceof SemVer)) + return new SemVer(version, loose); + + debug('SemVer', version, loose); + this.loose = loose; + var m = version.trim().match(loose ? re[LOOSE] : re[FULL]); + + if (!m) + throw new TypeError('Invalid Version: ' + version); + + this.raw = version; + + // these are actually numbers + this.major = +m[1]; + this.minor = +m[2]; + this.patch = +m[3]; + + if (this.major > MAX_SAFE_INTEGER || this.major < 0) + throw new TypeError('Invalid major version') + + if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) + throw new TypeError('Invalid minor version') + + if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) + throw new TypeError('Invalid patch version') + + // numberify any prerelease numeric ids + if (!m[4]) + this.prerelease = []; + else + this.prerelease = m[4].split('.').map(function(id) { + if (/^[0-9]+$/.test(id)) { + var num = +id; + if (num >= 0 && num < MAX_SAFE_INTEGER) + return num; + } + return id; + }); + + this.build = m[5] ? m[5].split('.') : []; + this.format(); +} + +SemVer.prototype.format = function() { + this.version = this.major + '.' + this.minor + '.' + this.patch; + if (this.prerelease.length) + this.version += '-' + this.prerelease.join('.'); + return this.version; +}; + +SemVer.prototype.toString = function() { + return this.version; +}; + +SemVer.prototype.compare = function(other) { + debug('SemVer.compare', this.version, this.loose, other); + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + return this.compareMain(other) || this.comparePre(other); +}; + +SemVer.prototype.compareMain = function(other) { + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + return compareIdentifiers(this.major, other.major) || + compareIdentifiers(this.minor, other.minor) || + compareIdentifiers(this.patch, other.patch); +}; + +SemVer.prototype.comparePre = function(other) { + if (!(other instanceof SemVer)) + other = new SemVer(other, this.loose); + + // NOT having a prerelease is > having one + if (this.prerelease.length && !other.prerelease.length) + return -1; + else if (!this.prerelease.length && other.prerelease.length) + return 1; + else if (!this.prerelease.length && !other.prerelease.length) + return 0; + + var i = 0; + do { + var a = this.prerelease[i]; + var b = other.prerelease[i]; + debug('prerelease compare', i, a, b); + if (a === undefined && b === undefined) + return 0; + else if (b === undefined) + return 1; + else if (a === undefined) + return -1; + else if (a === b) + continue; + else + return compareIdentifiers(a, b); + } while (++i); +}; + +// preminor will bump the version up to the next minor release, and immediately +// down to pre-release. premajor and prepatch work the same way. +SemVer.prototype.inc = function(release, identifier) { + switch (release) { + case 'premajor': + this.prerelease.length = 0; + this.patch = 0; + this.minor = 0; + this.major++; + this.inc('pre', identifier); + break; + case 'preminor': + this.prerelease.length = 0; + this.patch = 0; + this.minor++; + this.inc('pre', identifier); + break; + case 'prepatch': + // If this is already a prerelease, it will bump to the next version + // drop any prereleases that might already exist, since they are not + // relevant at this point. + this.prerelease.length = 0; + this.inc('patch', identifier); + this.inc('pre', identifier); + break; + // If the input is a non-prerelease version, this acts the same as + // prepatch. + case 'prerelease': + if (this.prerelease.length === 0) + this.inc('patch', identifier); + this.inc('pre', identifier); + break; + + case 'major': + // If this is a pre-major version, bump up to the same major version. + // Otherwise increment major. + // 1.0.0-5 bumps to 1.0.0 + // 1.1.0 bumps to 2.0.0 + if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) + this.major++; + this.minor = 0; + this.patch = 0; + this.prerelease = []; + break; + case 'minor': + // If this is a pre-minor version, bump up to the same minor version. + // Otherwise increment minor. + // 1.2.0-5 bumps to 1.2.0 + // 1.2.1 bumps to 1.3.0 + if (this.patch !== 0 || this.prerelease.length === 0) + this.minor++; + this.patch = 0; + this.prerelease = []; + break; + case 'patch': + // If this is not a pre-release version, it will increment the patch. + // If it is a pre-release it will bump up to the same patch version. + // 1.2.0-5 patches to 1.2.0 + // 1.2.0 patches to 1.2.1 + if (this.prerelease.length === 0) + this.patch++; + this.prerelease = []; + break; + // This probably shouldn't be used publicly. + // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction. + case 'pre': + if (this.prerelease.length === 0) + this.prerelease = [0]; + else { + var i = this.prerelease.length; + while (--i >= 0) { + if (typeof this.prerelease[i] === 'number') { + this.prerelease[i]++; + i = -2; + } + } + if (i === -1) // didn't increment anything + this.prerelease.push(0); + } + if (identifier) { + // 1.2.0-beta.1 bumps to 1.2.0-beta.2, + // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0 + if (this.prerelease[0] === identifier) { + if (isNaN(this.prerelease[1])) + this.prerelease = [identifier, 0]; + } else + this.prerelease = [identifier, 0]; + } + break; + + default: + throw new Error('invalid increment argument: ' + release); + } + this.format(); + this.raw = this.version; + return this; +}; + +exports.inc = inc; +function inc(version, release, loose, identifier) { + if (typeof(loose) === 'string') { + identifier = loose; + loose = undefined; + } + + try { + return new SemVer(version, loose).inc(release, identifier).version; + } catch (er) { + return null; + } +} + +exports.diff = diff; +function diff(version1, version2) { + if (eq(version1, version2)) { + return null; + } else { + var v1 = parse(version1); + var v2 = parse(version2); + if (v1.prerelease.length || v2.prerelease.length) { + for (var key in v1) { + if (key === 'major' || key === 'minor' || key === 'patch') { + if (v1[key] !== v2[key]) { + return 'pre'+key; + } + } + } + return 'prerelease'; + } + for (var key in v1) { + if (key === 'major' || key === 'minor' || key === 'patch') { + if (v1[key] !== v2[key]) { + return key; + } + } + } + } +} + +exports.compareIdentifiers = compareIdentifiers; + +var numeric = /^[0-9]+$/; +function compareIdentifiers(a, b) { + var anum = numeric.test(a); + var bnum = numeric.test(b); + + if (anum && bnum) { + a = +a; + b = +b; + } + + return (anum && !bnum) ? -1 : + (bnum && !anum) ? 1 : + a < b ? -1 : + a > b ? 1 : + 0; +} + +exports.rcompareIdentifiers = rcompareIdentifiers; +function rcompareIdentifiers(a, b) { + return compareIdentifiers(b, a); +} + +exports.major = major; +function major(a, loose) { + return new SemVer(a, loose).major; +} + +exports.minor = minor; +function minor(a, loose) { + return new SemVer(a, loose).minor; +} + +exports.patch = patch; +function patch(a, loose) { + return new SemVer(a, loose).patch; +} + +exports.compare = compare; +function compare(a, b, loose) { + return new SemVer(a, loose).compare(new SemVer(b, loose)); +} + +exports.compareLoose = compareLoose; +function compareLoose(a, b) { + return compare(a, b, true); +} + +exports.rcompare = rcompare; +function rcompare(a, b, loose) { + return compare(b, a, loose); +} + +exports.sort = sort; +function sort(list, loose) { + return list.sort(function(a, b) { + return exports.compare(a, b, loose); + }); +} + +exports.rsort = rsort; +function rsort(list, loose) { + return list.sort(function(a, b) { + return exports.rcompare(a, b, loose); + }); +} + +exports.gt = gt; +function gt(a, b, loose) { + return compare(a, b, loose) > 0; +} + +exports.lt = lt; +function lt(a, b, loose) { + return compare(a, b, loose) < 0; +} + +exports.eq = eq; +function eq(a, b, loose) { + return compare(a, b, loose) === 0; +} + +exports.neq = neq; +function neq(a, b, loose) { + return compare(a, b, loose) !== 0; +} + +exports.gte = gte; +function gte(a, b, loose) { + return compare(a, b, loose) >= 0; +} + +exports.lte = lte; +function lte(a, b, loose) { + return compare(a, b, loose) <= 0; +} + +exports.cmp = cmp; +function cmp(a, op, b, loose) { + var ret; + switch (op) { + case '===': + if (typeof a === 'object') a = a.version; + if (typeof b === 'object') b = b.version; + ret = a === b; + break; + case '!==': + if (typeof a === 'object') a = a.version; + if (typeof b === 'object') b = b.version; + ret = a !== b; + break; + case '': case '=': case '==': ret = eq(a, b, loose); break; + case '!=': ret = neq(a, b, loose); break; + case '>': ret = gt(a, b, loose); break; + case '>=': ret = gte(a, b, loose); break; + case '<': ret = lt(a, b, loose); break; + case '<=': ret = lte(a, b, loose); break; + default: throw new TypeError('Invalid operator: ' + op); + } + return ret; +} + +exports.Comparator = Comparator; +function Comparator(comp, loose) { + if (comp instanceof Comparator) { + if (comp.loose === loose) + return comp; + else + comp = comp.value; + } + + if (!(this instanceof Comparator)) + return new Comparator(comp, loose); + + debug('comparator', comp, loose); + this.loose = loose; + this.parse(comp); + + if (this.semver === ANY) + this.value = ''; + else + this.value = this.operator + this.semver.version; + + debug('comp', this); +} + +var ANY = {}; +Comparator.prototype.parse = function(comp) { + var r = this.loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; + var m = comp.match(r); + + if (!m) + throw new TypeError('Invalid comparator: ' + comp); + + this.operator = m[1]; + if (this.operator === '=') + this.operator = ''; + + // if it literally is just '>' or '' then allow anything. + if (!m[2]) + this.semver = ANY; + else + this.semver = new SemVer(m[2], this.loose); +}; + +Comparator.prototype.toString = function() { + return this.value; +}; + +Comparator.prototype.test = function(version) { + debug('Comparator.test', version, this.loose); + + if (this.semver === ANY) + return true; + + if (typeof version === 'string') + version = new SemVer(version, this.loose); + + return cmp(version, this.operator, this.semver, this.loose); +}; + +Comparator.prototype.intersects = function(comp, loose) { + if (!(comp instanceof Comparator)) { + throw new TypeError('a Comparator is required'); + } + + var rangeTmp; + + if (this.operator === '') { + rangeTmp = new Range(comp.value, loose); + return satisfies(this.value, rangeTmp, loose); + } else if (comp.operator === '') { + rangeTmp = new Range(this.value, loose); + return satisfies(comp.semver, rangeTmp, loose); + } + + var sameDirectionIncreasing = + (this.operator === '>=' || this.operator === '>') && + (comp.operator === '>=' || comp.operator === '>'); + var sameDirectionDecreasing = + (this.operator === '<=' || this.operator === '<') && + (comp.operator === '<=' || comp.operator === '<'); + var sameSemVer = this.semver.version === comp.semver.version; + var differentDirectionsInclusive = + (this.operator === '>=' || this.operator === '<=') && + (comp.operator === '>=' || comp.operator === '<='); + var oppositeDirectionsLessThan = + cmp(this.semver, '<', comp.semver, loose) && + ((this.operator === '>=' || this.operator === '>') && + (comp.operator === '<=' || comp.operator === '<')); + var oppositeDirectionsGreaterThan = + cmp(this.semver, '>', comp.semver, loose) && + ((this.operator === '<=' || this.operator === '<') && + (comp.operator === '>=' || comp.operator === '>')); + + return sameDirectionIncreasing || sameDirectionDecreasing || + (sameSemVer && differentDirectionsInclusive) || + oppositeDirectionsLessThan || oppositeDirectionsGreaterThan; +}; + + +exports.Range = Range; +function Range(range, loose) { + if (range instanceof Range) { + if (range.loose === loose) { + return range; + } else { + return new Range(range.raw, loose); + } + } + + if (range instanceof Comparator) { + return new Range(range.value, loose); + } + + if (!(this instanceof Range)) + return new Range(range, loose); + + this.loose = loose; + + // First, split based on boolean or || + this.raw = range; + this.set = range.split(/\s*\|\|\s*/).map(function(range) { + return this.parseRange(range.trim()); + }, this).filter(function(c) { + // throw out any that are not relevant for whatever reason + return c.length; + }); + + if (!this.set.length) { + throw new TypeError('Invalid SemVer Range: ' + range); + } + + this.format(); +} + +Range.prototype.format = function() { + this.range = this.set.map(function(comps) { + return comps.join(' ').trim(); + }).join('||').trim(); + return this.range; +}; + +Range.prototype.toString = function() { + return this.range; +}; + +Range.prototype.parseRange = function(range) { + var loose = this.loose; + range = range.trim(); + debug('range', range, loose); + // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4` + var hr = loose ? re[HYPHENRANGELOOSE] : re[HYPHENRANGE]; + range = range.replace(hr, hyphenReplace); + debug('hyphen replace', range); + // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5` + range = range.replace(re[COMPARATORTRIM], comparatorTrimReplace); + debug('comparator trim', range, re[COMPARATORTRIM]); + + // `~ 1.2.3` => `~1.2.3` + range = range.replace(re[TILDETRIM], tildeTrimReplace); + + // `^ 1.2.3` => `^1.2.3` + range = range.replace(re[CARETTRIM], caretTrimReplace); + + // normalize spaces + range = range.split(/\s+/).join(' '); + + // At this point, the range is completely trimmed and + // ready to be split into comparators. + + var compRe = loose ? re[COMPARATORLOOSE] : re[COMPARATOR]; + var set = range.split(' ').map(function(comp) { + return parseComparator(comp, loose); + }).join(' ').split(/\s+/); + if (this.loose) { + // in loose mode, throw out any that are not valid comparators + set = set.filter(function(comp) { + return !!comp.match(compRe); + }); + } + set = set.map(function(comp) { + return new Comparator(comp, loose); + }); + + return set; +}; + +Range.prototype.intersects = function(range, loose) { + if (!(range instanceof Range)) { + throw new TypeError('a Range is required'); + } + + return this.set.some(function(thisComparators) { + return thisComparators.every(function(thisComparator) { + return range.set.some(function(rangeComparators) { + return rangeComparators.every(function(rangeComparator) { + return thisComparator.intersects(rangeComparator, loose); + }); + }); + }); + }); +}; + +// Mostly just for testing and legacy API reasons +exports.toComparators = toComparators; +function toComparators(range, loose) { + return new Range(range, loose).set.map(function(comp) { + return comp.map(function(c) { + return c.value; + }).join(' ').trim().split(' '); + }); +} + +// comprised of xranges, tildes, stars, and gtlt's at this point. +// already replaced the hyphen ranges +// turn into a set of JUST comparators. +function parseComparator(comp, loose) { + debug('comp', comp); + comp = replaceCarets(comp, loose); + debug('caret', comp); + comp = replaceTildes(comp, loose); + debug('tildes', comp); + comp = replaceXRanges(comp, loose); + debug('xrange', comp); + comp = replaceStars(comp, loose); + debug('stars', comp); + return comp; +} + +function isX(id) { + return !id || id.toLowerCase() === 'x' || id === '*'; +} + +// ~, ~> --> * (any, kinda silly) +// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0 +// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0 +// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0 +// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0 +// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0 +function replaceTildes(comp, loose) { + return comp.trim().split(/\s+/).map(function(comp) { + return replaceTilde(comp, loose); + }).join(' '); +} + +function replaceTilde(comp, loose) { + var r = loose ? re[TILDELOOSE] : re[TILDE]; + return comp.replace(r, function(_, M, m, p, pr) { + debug('tilde', comp, _, M, m, p, pr); + var ret; + + if (isX(M)) + ret = ''; + else if (isX(m)) + ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; + else if (isX(p)) + // ~1.2 == >=1.2.0 <1.3.0 + ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; + else if (pr) { + debug('replaceTilde pr', pr); + if (pr.charAt(0) !== '-') + pr = '-' + pr; + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + M + '.' + (+m + 1) + '.0'; + } else + // ~1.2.3 == >=1.2.3 <1.3.0 + ret = '>=' + M + '.' + m + '.' + p + + ' <' + M + '.' + (+m + 1) + '.0'; + + debug('tilde return', ret); + return ret; + }); +} + +// ^ --> * (any, kinda silly) +// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0 +// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0 +// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0 +// ^1.2.3 --> >=1.2.3 <2.0.0 +// ^1.2.0 --> >=1.2.0 <2.0.0 +function replaceCarets(comp, loose) { + return comp.trim().split(/\s+/).map(function(comp) { + return replaceCaret(comp, loose); + }).join(' '); +} + +function replaceCaret(comp, loose) { + debug('caret', comp, loose); + var r = loose ? re[CARETLOOSE] : re[CARET]; + return comp.replace(r, function(_, M, m, p, pr) { + debug('caret', comp, _, M, m, p, pr); + var ret; + + if (isX(M)) + ret = ''; + else if (isX(m)) + ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; + else if (isX(p)) { + if (M === '0') + ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; + else + ret = '>=' + M + '.' + m + '.0 <' + (+M + 1) + '.0.0'; + } else if (pr) { + debug('replaceCaret pr', pr); + if (pr.charAt(0) !== '-') + pr = '-' + pr; + if (M === '0') { + if (m === '0') + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + M + '.' + m + '.' + (+p + 1); + else + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + M + '.' + (+m + 1) + '.0'; + } else + ret = '>=' + M + '.' + m + '.' + p + pr + + ' <' + (+M + 1) + '.0.0'; + } else { + debug('no pr'); + if (M === '0') { + if (m === '0') + ret = '>=' + M + '.' + m + '.' + p + + ' <' + M + '.' + m + '.' + (+p + 1); + else + ret = '>=' + M + '.' + m + '.' + p + + ' <' + M + '.' + (+m + 1) + '.0'; + } else + ret = '>=' + M + '.' + m + '.' + p + + ' <' + (+M + 1) + '.0.0'; + } + + debug('caret return', ret); + return ret; + }); +} + +function replaceXRanges(comp, loose) { + debug('replaceXRanges', comp, loose); + return comp.split(/\s+/).map(function(comp) { + return replaceXRange(comp, loose); + }).join(' '); +} + +function replaceXRange(comp, loose) { + comp = comp.trim(); + var r = loose ? re[XRANGELOOSE] : re[XRANGE]; + return comp.replace(r, function(ret, gtlt, M, m, p, pr) { + debug('xRange', comp, ret, gtlt, M, m, p, pr); + var xM = isX(M); + var xm = xM || isX(m); + var xp = xm || isX(p); + var anyX = xp; + + if (gtlt === '=' && anyX) + gtlt = ''; + + if (xM) { + if (gtlt === '>' || gtlt === '<') { + // nothing is allowed + ret = '<0.0.0'; + } else { + // nothing is forbidden + ret = '*'; + } + } else if (gtlt && anyX) { + // replace X with 0 + if (xm) + m = 0; + if (xp) + p = 0; + + if (gtlt === '>') { + // >1 => >=2.0.0 + // >1.2 => >=1.3.0 + // >1.2.3 => >= 1.2.4 + gtlt = '>='; + if (xm) { + M = +M + 1; + m = 0; + p = 0; + } else if (xp) { + m = +m + 1; + p = 0; + } + } else if (gtlt === '<=') { + // <=0.7.x is actually <0.8.0, since any 0.7.x should + // pass. Similarly, <=7.x is actually <8.0.0, etc. + gtlt = '<'; + if (xm) + M = +M + 1; + else + m = +m + 1; + } + + ret = gtlt + M + '.' + m + '.' + p; + } else if (xm) { + ret = '>=' + M + '.0.0 <' + (+M + 1) + '.0.0'; + } else if (xp) { + ret = '>=' + M + '.' + m + '.0 <' + M + '.' + (+m + 1) + '.0'; + } + + debug('xRange return', ret); + + return ret; + }); +} + +// Because * is AND-ed with everything else in the comparator, +// and '' means "any version", just remove the *s entirely. +function replaceStars(comp, loose) { + debug('replaceStars', comp, loose); + // Looseness is ignored here. star is always as loose as it gets! + return comp.trim().replace(re[STAR], ''); +} + +// This function is passed to string.replace(re[HYPHENRANGE]) +// M, m, patch, prerelease, build +// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5 +// 1.2.3 - 3.4 => >=1.2.0 <3.5.0 Any 3.4.x will do +// 1.2 - 3.4 => >=1.2.0 <3.5.0 +function hyphenReplace($0, + from, fM, fm, fp, fpr, fb, + to, tM, tm, tp, tpr, tb) { + + if (isX(fM)) + from = ''; + else if (isX(fm)) + from = '>=' + fM + '.0.0'; + else if (isX(fp)) + from = '>=' + fM + '.' + fm + '.0'; + else + from = '>=' + from; + + if (isX(tM)) + to = ''; + else if (isX(tm)) + to = '<' + (+tM + 1) + '.0.0'; + else if (isX(tp)) + to = '<' + tM + '.' + (+tm + 1) + '.0'; + else if (tpr) + to = '<=' + tM + '.' + tm + '.' + tp + '-' + tpr; + else + to = '<=' + to; + + return (from + ' ' + to).trim(); +} + + +// if ANY of the sets match ALL of its comparators, then pass +Range.prototype.test = function(version) { + if (!version) + return false; + + if (typeof version === 'string') + version = new SemVer(version, this.loose); + + for (var i = 0; i < this.set.length; i++) { + if (testSet(this.set[i], version)) + return true; + } + return false; +}; + +function testSet(set, version) { + for (var i = 0; i < set.length; i++) { + if (!set[i].test(version)) + return false; + } + + if (version.prerelease.length) { + // Find the set of versions that are allowed to have prereleases + // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0 + // That should allow `1.2.3-pr.2` to pass. + // However, `1.2.4-alpha.notready` should NOT be allowed, + // even though it's within the range set by the comparators. + for (var i = 0; i < set.length; i++) { + debug(set[i].semver); + if (set[i].semver === ANY) + continue; + + if (set[i].semver.prerelease.length > 0) { + var allowed = set[i].semver; + if (allowed.major === version.major && + allowed.minor === version.minor && + allowed.patch === version.patch) + return true; + } + } + + // Version has a -pre, but it's not one of the ones we like. + return false; + } + + return true; +} + +exports.satisfies = satisfies; +function satisfies(version, range, loose) { + try { + range = new Range(range, loose); + } catch (er) { + return false; + } + return range.test(version); +} + +exports.maxSatisfying = maxSatisfying; +function maxSatisfying(versions, range, loose) { + var max = null; + var maxSV = null; + try { + var rangeObj = new Range(range, loose); + } catch (er) { + return null; + } + versions.forEach(function (v) { + if (rangeObj.test(v)) { // satisfies(v, range, loose) + if (!max || maxSV.compare(v) === -1) { // compare(max, v, true) + max = v; + maxSV = new SemVer(max, loose); + } + } + }) + return max; +} + +exports.minSatisfying = minSatisfying; +function minSatisfying(versions, range, loose) { + var min = null; + var minSV = null; + try { + var rangeObj = new Range(range, loose); + } catch (er) { + return null; + } + versions.forEach(function (v) { + if (rangeObj.test(v)) { // satisfies(v, range, loose) + if (!min || minSV.compare(v) === 1) { // compare(min, v, true) + min = v; + minSV = new SemVer(min, loose); + } + } + }) + return min; +} + +exports.validRange = validRange; +function validRange(range, loose) { + try { + // Return '*' instead of '' so that truthiness works. + // This will throw if it's invalid anyway + return new Range(range, loose).range || '*'; + } catch (er) { + return null; + } +} + +// Determine if version is less than all the versions possible in the range +exports.ltr = ltr; +function ltr(version, range, loose) { + return outside(version, range, '<', loose); +} + +// Determine if version is greater than all the versions possible in the range. +exports.gtr = gtr; +function gtr(version, range, loose) { + return outside(version, range, '>', loose); +} + +exports.outside = outside; +function outside(version, range, hilo, loose) { + version = new SemVer(version, loose); + range = new Range(range, loose); + + var gtfn, ltefn, ltfn, comp, ecomp; + switch (hilo) { + case '>': + gtfn = gt; + ltefn = lte; + ltfn = lt; + comp = '>'; + ecomp = '>='; + break; + case '<': + gtfn = lt; + ltefn = gte; + ltfn = gt; + comp = '<'; + ecomp = '<='; + break; + default: + throw new TypeError('Must provide a hilo val of "<" or ">"'); + } + + // If it satisifes the range it is not outside + if (satisfies(version, range, loose)) { + return false; + } + + // From now on, variable terms are as if we're in "gtr" mode. + // but note that everything is flipped for the "ltr" function. + + for (var i = 0; i < range.set.length; ++i) { + var comparators = range.set[i]; + + var high = null; + var low = null; + + comparators.forEach(function(comparator) { + if (comparator.semver === ANY) { + comparator = new Comparator('>=0.0.0') + } + high = high || comparator; + low = low || comparator; + if (gtfn(comparator.semver, high.semver, loose)) { + high = comparator; + } else if (ltfn(comparator.semver, low.semver, loose)) { + low = comparator; + } + }); + + // If the edge version comparator has a operator then our version + // isn't outside it + if (high.operator === comp || high.operator === ecomp) { + return false; + } + + // If the lowest version comparator has an operator and our version + // is less than it then it isn't higher than the range + if ((!low.operator || low.operator === comp) && + ltefn(version, low.semver)) { + return false; + } else if (low.operator === ecomp && ltfn(version, low.semver)) { + return false; + } + } + return true; +} + +exports.prerelease = prerelease; +function prerelease(version, loose) { + var parsed = parse(version, loose); + return (parsed && parsed.prerelease.length) ? parsed.prerelease : null; +} + +exports.intersects = intersects; +function intersects(r1, r2, loose) { + r1 = new Range(r1, loose) + r2 = new Range(r2, loose) + return r1.intersects(r2) +} + +exports.coerce = coerce; +function coerce(version) { + if (version instanceof SemVer) + return version; + + if (typeof version !== 'string') + return null; + + var match = version.match(re[COERCE]); + + if (match == null) + return null; + + return parse((match[1] || '0') + '.' + (match[2] || '0') + '.' + (match[3] || '0')); +} + + +/***/ }), +/* 23 */ +/***/ (function(module, exports) { + +module.exports = require("stream"); + +/***/ }), +/* 24 */ +/***/ (function(module, exports) { + +module.exports = require("url"); + +/***/ }), +/* 25 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subscription; }); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__util_isArray__ = __webpack_require__(41); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__util_isObject__ = __webpack_require__(444); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__util_isFunction__ = __webpack_require__(154); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__util_tryCatch__ = __webpack_require__(56); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util_errorObject__ = __webpack_require__(48); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__ = __webpack_require__(441); +/** PURE_IMPORTS_START _util_isArray,_util_isObject,_util_isFunction,_util_tryCatch,_util_errorObject,_util_UnsubscriptionError PURE_IMPORTS_END */ + + + + + + +var Subscription = /*@__PURE__*/ (function () { + function Subscription(unsubscribe) { + this.closed = false; + this._parent = null; + this._parents = null; + this._subscriptions = null; + if (unsubscribe) { + this._unsubscribe = unsubscribe; + } + } + Subscription.prototype.unsubscribe = function () { + var hasErrors = false; + var errors; + if (this.closed) { + return; + } + var _a = this, _parent = _a._parent, _parents = _a._parents, _unsubscribe = _a._unsubscribe, _subscriptions = _a._subscriptions; + this.closed = true; + this._parent = null; + this._parents = null; + this._subscriptions = null; + var index = -1; + var len = _parents ? _parents.length : 0; + while (_parent) { + _parent.remove(this); + _parent = ++index < len && _parents[index] || null; + } + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__util_isFunction__["a" /* isFunction */])(_unsubscribe)) { + var trial = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_tryCatch__["a" /* tryCatch */])(_unsubscribe).call(this); + if (trial === __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */]) { + hasErrors = true; + errors = errors || (__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */] ? + flattenUnsubscriptionErrors(__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e.errors) : [__WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e]); + } + } + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__util_isArray__["a" /* isArray */])(_subscriptions)) { + index = -1; + len = _subscriptions.length; + while (++index < len) { + var sub = _subscriptions[index]; + if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__util_isObject__["a" /* isObject */])(sub)) { + var trial = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__util_tryCatch__["a" /* tryCatch */])(sub.unsubscribe).call(sub); + if (trial === __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */]) { + hasErrors = true; + errors = errors || []; + var err = __WEBPACK_IMPORTED_MODULE_4__util_errorObject__["a" /* errorObject */].e; + if (err instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */]) { + errors = errors.concat(flattenUnsubscriptionErrors(err.errors)); + } + else { + errors.push(err); + } + } + } + } + } + if (hasErrors) { + throw new __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */](errors); + } + }; + Subscription.prototype.add = function (teardown) { + if (!teardown || (teardown === Subscription.EMPTY)) { + return Subscription.EMPTY; + } + if (teardown === this) { + return this; + } + var subscription = teardown; + switch (typeof teardown) { + case 'function': + subscription = new Subscription(teardown); + case 'object': + if (subscription.closed || typeof subscription.unsubscribe !== 'function') { + return subscription; + } + else if (this.closed) { + subscription.unsubscribe(); + return subscription; + } + else if (typeof subscription._addParent !== 'function') { + var tmp = subscription; + subscription = new Subscription(); + subscription._subscriptions = [tmp]; + } + break; + default: + throw new Error('unrecognized teardown ' + teardown + ' added to Subscription.'); + } + var subscriptions = this._subscriptions || (this._subscriptions = []); + subscriptions.push(subscription); + subscription._addParent(this); + return subscription; + }; + Subscription.prototype.remove = function (subscription) { + var subscriptions = this._subscriptions; + if (subscriptions) { + var subscriptionIndex = subscriptions.indexOf(subscription); + if (subscriptionIndex !== -1) { + subscriptions.splice(subscriptionIndex, 1); + } + } + }; + Subscription.prototype._addParent = function (parent) { + var _a = this, _parent = _a._parent, _parents = _a._parents; + if (!_parent || _parent === parent) { + this._parent = parent; + } + else if (!_parents) { + this._parents = [parent]; + } + else if (_parents.indexOf(parent) === -1) { + _parents.push(parent); + } + }; + Subscription.EMPTY = (function (empty) { + empty.closed = true; + return empty; + }(new Subscription())); + return Subscription; +}()); + +function flattenUnsubscriptionErrors(errors) { + return errors.reduce(function (errs, err) { return errs.concat((err instanceof __WEBPACK_IMPORTED_MODULE_5__util_UnsubscriptionError__["a" /* UnsubscriptionError */]) ? err.errors : err); }, []); +} +//# sourceMappingURL=Subscription.js.map + + +/***/ }), +/* 26 */ +/***/ (function(module, exports, __webpack_require__) { + +// Copyright 2015 Joyent, Inc. + +module.exports = { + bufferSplit: bufferSplit, + addRSAMissing: addRSAMissing, + calculateDSAPublic: calculateDSAPublic, + calculateED25519Public: calculateED25519Public, + calculateX25519Public: calculateX25519Public, + mpNormalize: mpNormalize, + mpDenormalize: mpDenormalize, + ecNormalize: ecNormalize, + countZeros: countZeros, + assertCompatible: assertCompatible, + isCompatible: isCompatible, + opensslKeyDeriv: opensslKeyDeriv, + opensshCipherInfo: opensshCipherInfo, + publicFromPrivateECDSA: publicFromPrivateECDSA, + zeroPadToLength: zeroPadToLength, + writeBitString: writeBitString, + readBitString: readBitString +}; + +var assert = __webpack_require__(16); +var Buffer = __webpack_require__(15).Buffer; +var PrivateKey = __webpack_require__(33); +var Key = __webpack_require__(27); +var crypto = __webpack_require__(11); +var algs = __webpack_require__(32); +var asn1 = __webpack_require__(66); + +var ec, jsbn; +var nacl; + +var MAX_CLASS_DEPTH = 3; + +function isCompatible(obj, klass, needVer) { + if (obj === null || typeof (obj) !== 'object') + return (false); + if (needVer === undefined) + needVer = klass.prototype._sshpkApiVersion; + if (obj instanceof klass && + klass.prototype._sshpkApiVersion[0] == needVer[0]) + return (true); + var proto = Object.getPrototypeOf(obj); + var depth = 0; + while (proto.constructor.name !== klass.name) { + proto = Object.getPrototypeOf(proto); + if (!proto || ++depth > MAX_CLASS_DEPTH) + return (false); + } + if (proto.constructor.name !== klass.name) + return (false); + var ver = proto._sshpkApiVersion; + if (ver === undefined) + ver = klass._oldVersionDetect(obj); + if (ver[0] != needVer[0] || ver[1] < needVer[1]) + return (false); + return (true); +} + +function assertCompatible(obj, klass, needVer, name) { + if (name === undefined) + name = 'object'; + assert.ok(obj, name + ' must not be null'); + assert.object(obj, name + ' must be an object'); + if (needVer === undefined) + needVer = klass.prototype._sshpkApiVersion; + if (obj instanceof klass && + klass.prototype._sshpkApiVersion[0] == needVer[0]) + return; + var proto = Object.getPrototypeOf(obj); + var depth = 0; + while (proto.constructor.name !== klass.name) { + proto = Object.getPrototypeOf(proto); + assert.ok(proto && ++depth <= MAX_CLASS_DEPTH, + name + ' must be a ' + klass.name + ' instance'); + } + assert.strictEqual(proto.constructor.name, klass.name, + name + ' must be a ' + klass.name + ' instance'); + var ver = proto._sshpkApiVersion; + if (ver === undefined) + ver = klass._oldVersionDetect(obj); + assert.ok(ver[0] == needVer[0] && ver[1] >= needVer[1], + name + ' must be compatible with ' + klass.name + ' klass ' + + 'version ' + needVer[0] + '.' + needVer[1]); +} + +var CIPHER_LEN = { + 'des-ede3-cbc': { key: 7, iv: 8 }, + 'aes-128-cbc': { key: 16, iv: 16 } +}; +var PKCS5_SALT_LEN = 8; + +function opensslKeyDeriv(cipher, salt, passphrase, count) { + assert.buffer(salt, 'salt'); + assert.buffer(passphrase, 'passphrase'); + assert.number(count, 'iteration count'); + + var clen = CIPHER_LEN[cipher]; + assert.object(clen, 'supported cipher'); + + salt = salt.slice(0, PKCS5_SALT_LEN); + + var D, D_prev, bufs; + var material = Buffer.alloc(0); + while (material.length < clen.key + clen.iv) { + bufs = []; + if (D_prev) + bufs.push(D_prev); + bufs.push(passphrase); + bufs.push(salt); + D = Buffer.concat(bufs); + for (var j = 0; j < count; ++j) + D = crypto.createHash('md5').update(D).digest(); + material = Buffer.concat([material, D]); + D_prev = D; + } + + return ({ + key: material.slice(0, clen.key), + iv: material.slice(clen.key, clen.key + clen.iv) + }); +} + +/* Count leading zero bits on a buffer */ +function countZeros(buf) { + var o = 0, obit = 8; + while (o < buf.length) { + var mask = (1 << obit); + if ((buf[o] & mask) === mask) + break; + obit--; + if (obit < 0) { + o++; + obit = 8; + } + } + return (o*8 + (8 - obit) - 1); +} + +function bufferSplit(buf, chr) { + assert.buffer(buf); + assert.string(chr); + + var parts = []; + var lastPart = 0; + var matches = 0; + for (var i = 0; i < buf.length; ++i) { + if (buf[i] === chr.charCodeAt(matches)) + ++matches; + else if (buf[i] === chr.charCodeAt(0)) + matches = 1; + else + matches = 0; + + if (matches >= chr.length) { + var newPart = i + 1; + parts.push(buf.slice(lastPart, newPart - matches)); + lastPart = newPart; + matches = 0; + } + } + if (lastPart <= buf.length) + parts.push(buf.slice(lastPart, buf.length)); + + return (parts); +} + +function ecNormalize(buf, addZero) { + assert.buffer(buf); + if (buf[0] === 0x00 && buf[1] === 0x04) { + if (addZero) + return (buf); + return (buf.slice(1)); + } else if (buf[0] === 0x04) { + if (!addZero) + return (buf); + } else { + while (buf[0] === 0x00) + buf = buf.slice(1); + if (buf[0] === 0x02 || buf[0] === 0x03) + throw (new Error('Compressed elliptic curve points ' + + 'are not supported')); + if (buf[0] !== 0x04) + throw (new Error('Not a valid elliptic curve point')); + if (!addZero) + return (buf); + } + var b = Buffer.alloc(buf.length + 1); + b[0] = 0x0; + buf.copy(b, 1); + return (b); +} + +function readBitString(der, tag) { + if (tag === undefined) + tag = asn1.Ber.BitString; + var buf = der.readString(tag, true); + assert.strictEqual(buf[0], 0x00, 'bit strings with unused bits are ' + + 'not supported (0x' + buf[0].toString(16) + ')'); + return (buf.slice(1)); +} + +function writeBitString(der, buf, tag) { + if (tag === undefined) + tag = asn1.Ber.BitString; + var b = Buffer.alloc(buf.length + 1); + b[0] = 0x00; + buf.copy(b, 1); + der.writeBuffer(b, tag); +} + +function mpNormalize(buf) { + assert.buffer(buf); + while (buf.length > 1 && buf[0] === 0x00 && (buf[1] & 0x80) === 0x00) + buf = buf.slice(1); + if ((buf[0] & 0x80) === 0x80) { + var b = Buffer.alloc(buf.length + 1); + b[0] = 0x00; + buf.copy(b, 1); + buf = b; + } + return (buf); +} + +function mpDenormalize(buf) { + assert.buffer(buf); + while (buf.length > 1 && buf[0] === 0x00) + buf = buf.slice(1); + return (buf); +} + +function zeroPadToLength(buf, len) { + assert.buffer(buf); + assert.number(len); + while (buf.length > len) { + assert.equal(buf[0], 0x00); + buf = buf.slice(1); + } + while (buf.length < len) { + var b = Buffer.alloc(buf.length + 1); + b[0] = 0x00; + buf.copy(b, 1); + buf = b; + } + return (buf); +} + +function bigintToMpBuf(bigint) { + var buf = Buffer.from(bigint.toByteArray()); + buf = mpNormalize(buf); + return (buf); +} + +function calculateDSAPublic(g, p, x) { + assert.buffer(g); + assert.buffer(p); + assert.buffer(x); + try { + var bigInt = __webpack_require__(81).BigInteger; + } catch (e) { + throw (new Error('To load a PKCS#8 format DSA private key, ' + + 'the node jsbn library is required.')); + } + g = new bigInt(g); + p = new bigInt(p); + x = new bigInt(x); + var y = g.modPow(x, p); + var ybuf = bigintToMpBuf(y); + return (ybuf); +} + +function calculateED25519Public(k) { + assert.buffer(k); + + if (nacl === undefined) + nacl = __webpack_require__(76); + + var kp = nacl.sign.keyPair.fromSeed(new Uint8Array(k)); + return (Buffer.from(kp.publicKey)); +} + +function calculateX25519Public(k) { + assert.buffer(k); + + if (nacl === undefined) + nacl = __webpack_require__(76); + + var kp = nacl.box.keyPair.fromSeed(new Uint8Array(k)); + return (Buffer.from(kp.publicKey)); +} + +function addRSAMissing(key) { + assert.object(key); + assertCompatible(key, PrivateKey, [1, 1]); + try { + var bigInt = __webpack_require__(81).BigInteger; + } catch (e) { + throw (new Error('To write a PEM private key from ' + + 'this source, the node jsbn lib is required.')); + } + + var d = new bigInt(key.part.d.data); + var buf; + + if (!key.part.dmodp) { + var p = new bigInt(key.part.p.data); + var dmodp = d.mod(p.subtract(1)); + + buf = bigintToMpBuf(dmodp); + key.part.dmodp = {name: 'dmodp', data: buf}; + key.parts.push(key.part.dmodp); + } + if (!key.part.dmodq) { + var q = new bigInt(key.part.q.data); + var dmodq = d.mod(q.subtract(1)); + + buf = bigintToMpBuf(dmodq); + key.part.dmodq = {name: 'dmodq', data: buf}; + key.parts.push(key.part.dmodq); + } +} + +function publicFromPrivateECDSA(curveName, priv) { + assert.string(curveName, 'curveName'); + assert.buffer(priv); + if (ec === undefined) + ec = __webpack_require__(139); + if (jsbn === undefined) + jsbn = __webpack_require__(81).BigInteger; + var params = algs.curves[curveName]; + var p = new jsbn(params.p); + var a = new jsbn(params.a); + var b = new jsbn(params.b); + var curve = new ec.ECCurveFp(p, a, b); + var G = curve.decodePointHex(params.G.toString('hex')); + + var d = new jsbn(mpNormalize(priv)); + var pub = G.multiply(d); + pub = Buffer.from(curve.encodePointHex(pub), 'hex'); + + var parts = []; + parts.push({name: 'curve', data: Buffer.from(curveName)}); + parts.push({name: 'Q', data: pub}); + + var key = new Key({type: 'ecdsa', curve: curve, parts: parts}); + return (key); +} + +function opensshCipherInfo(cipher) { + var inf = {}; + switch (cipher) { + case '3des-cbc': + inf.keySize = 24; + inf.blockSize = 8; + inf.opensslName = 'des-ede3-cbc'; + break; + case 'blowfish-cbc': + inf.keySize = 16; + inf.blockSize = 8; + inf.opensslName = 'bf-cbc'; + break; + case 'aes128-cbc': + case 'aes128-ctr': + case 'aes128-gcm@openssh.com': + inf.keySize = 16; + inf.blockSize = 16; + inf.opensslName = 'aes-128-' + cipher.slice(7, 10); + break; + case 'aes192-cbc': + case 'aes192-ctr': + case 'aes192-gcm@openssh.com': + inf.keySize = 24; + inf.blockSize = 16; + inf.opensslName = 'aes-192-' + cipher.slice(7, 10); + break; + case 'aes256-cbc': + case 'aes256-ctr': + case 'aes256-gcm@openssh.com': + inf.keySize = 32; + inf.blockSize = 16; + inf.opensslName = 'aes-256-' + cipher.slice(7, 10); + break; + default: + throw (new Error( + 'Unsupported openssl cipher "' + cipher + '"')); + } + return (inf); +} + + +/***/ }), +/* 27 */ +/***/ (function(module, exports, __webpack_require__) { + +// Copyright 2017 Joyent, Inc. + +module.exports = Key; + +var assert = __webpack_require__(16); +var algs = __webpack_require__(32); +var crypto = __webpack_require__(11); +var Fingerprint = __webpack_require__(156); +var Signature = __webpack_require__(75); +var DiffieHellman = __webpack_require__(325).DiffieHellman; +var errs = __webpack_require__(74); +var utils = __webpack_require__(26); +var PrivateKey = __webpack_require__(33); +var edCompat; + +try { + edCompat = __webpack_require__(454); +} catch (e) { + /* Just continue through, and bail out if we try to use it. */ +} + +var InvalidAlgorithmError = errs.InvalidAlgorithmError; +var KeyParseError = errs.KeyParseError; + +var formats = {}; +formats['auto'] = __webpack_require__(455); +formats['pem'] = __webpack_require__(86); +formats['pkcs1'] = __webpack_require__(327); +formats['pkcs8'] = __webpack_require__(157); +formats['rfc4253'] = __webpack_require__(103); +formats['ssh'] = __webpack_require__(456); +formats['ssh-private'] = __webpack_require__(192); +formats['openssh'] = formats['ssh-private']; +formats['dnssec'] = __webpack_require__(326); + +function Key(opts) { + assert.object(opts, 'options'); + assert.arrayOfObject(opts.parts, 'options.parts'); + assert.string(opts.type, 'options.type'); + assert.optionalString(opts.comment, 'options.comment'); + + var algInfo = algs.info[opts.type]; + if (typeof (algInfo) !== 'object') + throw (new InvalidAlgorithmError(opts.type)); + + var partLookup = {}; + for (var i = 0; i < opts.parts.length; ++i) { + var part = opts.parts[i]; + partLookup[part.name] = part; + } + + this.type = opts.type; + this.parts = opts.parts; + this.part = partLookup; + this.comment = undefined; + this.source = opts.source; + + /* for speeding up hashing/fingerprint operations */ + this._rfc4253Cache = opts._rfc4253Cache; + this._hashCache = {}; + + var sz; + this.curve = undefined; + if (this.type === 'ecdsa') { + var curve = this.part.curve.data.toString(); + this.curve = curve; + sz = algs.curves[curve].size; + } else if (this.type === 'ed25519' || this.type === 'curve25519') { + sz = 256; + this.curve = 'curve25519'; + } else { + var szPart = this.part[algInfo.sizePart]; + sz = szPart.data.length; + sz = sz * 8 - utils.countZeros(szPart.data); + } + this.size = sz; +} + +Key.formats = formats; + +Key.prototype.toBuffer = function (format, options) { + if (format === undefined) + format = 'ssh'; + assert.string(format, 'format'); + assert.object(formats[format], 'formats[format]'); + assert.optionalObject(options, 'options'); + + if (format === 'rfc4253') { + if (this._rfc4253Cache === undefined) + this._rfc4253Cache = formats['rfc4253'].write(this); + return (this._rfc4253Cache); + } + + return (formats[format].write(this, options)); +}; + +Key.prototype.toString = function (format, options) { + return (this.toBuffer(format, options).toString()); +}; + +Key.prototype.hash = function (algo) { + assert.string(algo, 'algorithm'); + algo = algo.toLowerCase(); + if (algs.hashAlgs[algo] === undefined) + throw (new InvalidAlgorithmError(algo)); + + if (this._hashCache[algo]) + return (this._hashCache[algo]); + var hash = crypto.createHash(algo). + update(this.toBuffer('rfc4253')).digest(); + this._hashCache[algo] = hash; + return (hash); +}; + +Key.prototype.fingerprint = function (algo) { + if (algo === undefined) + algo = 'sha256'; + assert.string(algo, 'algorithm'); + var opts = { + type: 'key', + hash: this.hash(algo), + algorithm: algo + }; + return (new Fingerprint(opts)); +}; + +Key.prototype.defaultHashAlgorithm = function () { + var hashAlgo = 'sha1'; + if (this.type === 'rsa') + hashAlgo = 'sha256'; + if (this.type === 'dsa' && this.size > 1024) + hashAlgo = 'sha256'; + if (this.type === 'ed25519') + hashAlgo = 'sha512'; + if (this.type === 'ecdsa') { + if (this.size <= 256) + hashAlgo = 'sha256'; + else if (this.size <= 384) + hashAlgo = 'sha384'; + else + hashAlgo = 'sha512'; + } + return (hashAlgo); +}; + +Key.prototype.createVerify = function (hashAlgo) { + if (hashAlgo === undefined) + hashAlgo = this.defaultHashAlgorithm(); + assert.string(hashAlgo, 'hash algorithm'); + + /* ED25519 is not supported by OpenSSL, use a javascript impl. */ + if (this.type === 'ed25519' && edCompat !== undefined) + return (new edCompat.Verifier(this, hashAlgo)); + if (this.type === 'curve25519') + throw (new Error('Curve25519 keys are not suitable for ' + + 'signing or verification')); + + var v, nm, err; + try { + nm = hashAlgo.toUpperCase(); + v = crypto.createVerify(nm); + } catch (e) { + err = e; + } + if (v === undefined || (err instanceof Error && + err.message.match(/Unknown message digest/))) { + nm = 'RSA-'; + nm += hashAlgo.toUpperCase(); + v = crypto.createVerify(nm); + } + assert.ok(v, 'failed to create verifier'); + var oldVerify = v.verify.bind(v); + var key = this.toBuffer('pkcs8'); + var curve = this.curve; + var self = this; + v.verify = function (signature, fmt) { + if (Signature.isSignature(signature, [2, 0])) { + if (signature.type !== self.type) + return (false); + if (signature.hashAlgorithm && + signature.hashAlgorithm !== hashAlgo) + return (false); + if (signature.curve && self.type === 'ecdsa' && + signature.curve !== curve) + return (false); + return (oldVerify(key, signature.toBuffer('asn1'))); + + } else if (typeof (signature) === 'string' || + Buffer.isBuffer(signature)) { + return (oldVerify(key, signature, fmt)); + + /* + * Avoid doing this on valid arguments, walking the prototype + * chain can be quite slow. + */ + } else if (Signature.isSignature(signature, [1, 0])) { + throw (new Error('signature was created by too old ' + + 'a version of sshpk and cannot be verified')); + + } else { + throw (new TypeError('signature must be a string, ' + + 'Buffer, or Signature object')); + } + }; + return (v); +}; + +Key.prototype.createDiffieHellman = function () { + if (this.type === 'rsa') + throw (new Error('RSA keys do not support Diffie-Hellman')); + + return (new DiffieHellman(this)); +}; +Key.prototype.createDH = Key.prototype.createDiffieHellman; + +Key.parse = function (data, format, options) { + if (typeof (data) !== 'string') + assert.buffer(data, 'data'); + if (format === undefined) + format = 'auto'; + assert.string(format, 'format'); + if (typeof (options) === 'string') + options = { filename: options }; + assert.optionalObject(options, 'options'); + if (options === undefined) + options = {}; + assert.optionalString(options.filename, 'options.filename'); + if (options.filename === undefined) + options.filename = '(unnamed)'; + + assert.object(formats[format], 'formats[format]'); + + try { + var k = formats[format].read(data, options); + if (k instanceof PrivateKey) + k = k.toPublic(); + if (!k.comment) + k.comment = options.filename; + return (k); + } catch (e) { + if (e.name === 'KeyEncryptedError') + throw (e); + throw (new KeyParseError(options.filename, format, e)); + } +}; + +Key.isKey = function (obj, ver) { + return (utils.isCompatible(obj, Key, ver)); +}; + +/* + * API versions for Key: + * [1,0] -- initial ver, may take Signature for createVerify or may not + * [1,1] -- added pkcs1, pkcs8 formats + * [1,2] -- added auto, ssh-private, openssh formats + * [1,3] -- added defaultHashAlgorithm + * [1,4] -- added ed support, createDH + * [1,5] -- first explicitly tagged version + * [1,6] -- changed ed25519 part names + */ +Key.prototype._sshpkApiVersion = [1, 6]; + +Key._oldVersionDetect = function (obj) { + assert.func(obj.toBuffer); + assert.func(obj.fingerprint); + if (obj.createDH) + return ([1, 4]); + if (obj.defaultHashAlgorithm) + return ([1, 3]); + if (obj.formats['auto']) + return ([1, 2]); + if (obj.formats['pkcs1']) + return ([1, 1]); + return ([1, 0]); +}; + + +/***/ }), +/* 28 */ +/***/ (function(module, exports) { + +module.exports = require("assert"); + +/***/ }), +/* 29 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = nullify; +function nullify(obj = {}) { + if (Array.isArray(obj)) { + for (var _iterator = obj, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref; + + if (_isArray) { + if (_i >= _iterator.length) break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref = _i.value; + } + + const item = _ref; + + nullify(item); + } + } else if (obj !== null && typeof obj === 'object' || typeof obj === 'function') { + Object.setPrototypeOf(obj, null); + + // for..in can only be applied to 'object', not 'function' + if (typeof obj === 'object') { + for (const key in obj) { + nullify(obj[key]); + } + } + } + + return obj; +} + +/***/ }), +/* 30 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + +const escapeStringRegexp = __webpack_require__(388); +const ansiStyles = __webpack_require__(506); +const stdoutColor = __webpack_require__(598).stdout; + +const template = __webpack_require__(599); + +const isSimpleWindowsTerm = process.platform === 'win32' && !(process.env.TERM || '').toLowerCase().startsWith('xterm'); + +// `supportsColor.level` → `ansiStyles.color[name]` mapping +const levelMapping = ['ansi', 'ansi', 'ansi256', 'ansi16m']; + +// `color-convert` models to exclude from the Chalk API due to conflicts and such +const skipModels = new Set(['gray']); + +const styles = Object.create(null); + +function applyOptions(obj, options) { + options = options || {}; + + // Detect level if not set manually + const scLevel = stdoutColor ? stdoutColor.level : 0; + obj.level = options.level === undefined ? scLevel : options.level; + obj.enabled = 'enabled' in options ? options.enabled : obj.level > 0; +} + +function Chalk(options) { + // We check for this.template here since calling `chalk.constructor()` + // by itself will have a `this` of a previously constructed chalk object + if (!this || !(this instanceof Chalk) || this.template) { + const chalk = {}; + applyOptions(chalk, options); + + chalk.template = function () { + const args = [].slice.call(arguments); + return chalkTag.apply(null, [chalk.template].concat(args)); + }; + + Object.setPrototypeOf(chalk, Chalk.prototype); + Object.setPrototypeOf(chalk.template, chalk); + + chalk.template.constructor = Chalk; + + return chalk.template; + } + + applyOptions(this, options); +} + +// Use bright blue on Windows as the normal blue color is illegible +if (isSimpleWindowsTerm) { + ansiStyles.blue.open = '\u001B[94m'; +} + +for (const key of Object.keys(ansiStyles)) { + ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), 'g'); + + styles[key] = { + get() { + const codes = ansiStyles[key]; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, key); + } + }; +} + +styles.visible = { + get() { + return build.call(this, this._styles || [], true, 'visible'); + } +}; + +ansiStyles.color.closeRe = new RegExp(escapeStringRegexp(ansiStyles.color.close), 'g'); +for (const model of Object.keys(ansiStyles.color.ansi)) { + if (skipModels.has(model)) { + continue; + } + + styles[model] = { + get() { + const level = this.level; + return function () { + const open = ansiStyles.color[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.color.close, + closeRe: ansiStyles.color.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; +} + +ansiStyles.bgColor.closeRe = new RegExp(escapeStringRegexp(ansiStyles.bgColor.close), 'g'); +for (const model of Object.keys(ansiStyles.bgColor.ansi)) { + if (skipModels.has(model)) { + continue; + } + + const bgModel = 'bg' + model[0].toUpperCase() + model.slice(1); + styles[bgModel] = { + get() { + const level = this.level; + return function () { + const open = ansiStyles.bgColor[levelMapping[level]][model].apply(null, arguments); + const codes = { + open, + close: ansiStyles.bgColor.close, + closeRe: ansiStyles.bgColor.closeRe + }; + return build.call(this, this._styles ? this._styles.concat(codes) : [codes], this._empty, model); + }; + } + }; +} + +const proto = Object.defineProperties(() => {}, styles); + +function build(_styles, _empty, key) { + const builder = function () { + return applyStyle.apply(builder, arguments); + }; + + builder._styles = _styles; + builder._empty = _empty; + + const self = this; + + Object.defineProperty(builder, 'level', { + enumerable: true, + get() { + return self.level; + }, + set(level) { + self.level = level; + } + }); + + Object.defineProperty(builder, 'enabled', { + enumerable: true, + get() { + return self.enabled; + }, + set(enabled) { + self.enabled = enabled; + } + }); + + // See below for fix regarding invisible grey/dim combination on Windows + builder.hasGrey = this.hasGrey || key === 'gray' || key === 'grey'; + + // `__proto__` is used because we must return a function, but there is + // no way to create a function with a different prototype + builder.__proto__ = proto; // eslint-disable-line no-proto + + return builder; +} + +function applyStyle() { + // Support varags, but simply cast to string in case there's only one arg + const args = arguments; + const argsLen = args.length; + let str = String(arguments[0]); + + if (argsLen === 0) { + return ''; + } + + if (argsLen > 1) { + // Don't slice `arguments`, it prevents V8 optimizations + for (let a = 1; a < argsLen; a++) { + str += ' ' + args[a]; + } + } + + if (!this.enabled || this.level <= 0 || !str) { + return this._empty ? '' : str; + } + + // Turns out that on Windows dimmed gray text becomes invisible in cmd.exe, + // see https://github.com/chalk/chalk/issues/58 + // If we're on Windows and we're dealing with a gray color, temporarily make 'dim' a noop. + const originalDim = ansiStyles.dim.open; + if (isSimpleWindowsTerm && this.hasGrey) { + ansiStyles.dim.open = ''; + } + + for (const code of this._styles.slice().reverse()) { + // Replace any instances already present with a re-opening code + // otherwise only the part of the string until said closing code + // will be colored, and the rest will simply be 'plain'. + str = code.open + str.replace(code.closeRe, code.open) + code.close; + + // Close the styling before a linebreak and reopen + // after next line to fix a bleed issue on macOS + // https://github.com/chalk/chalk/pull/92 + str = str.replace(/\r?\n/g, `${code.close}$&${code.open}`); + } + + // Reset the original `dim` if we changed it to work around the Windows dimmed gray issue + ansiStyles.dim.open = originalDim; + + return str; +} + +function chalkTag(chalk, strings) { + if (!Array.isArray(strings)) { + // If chalk() was called by itself or with a string, + // return the string itself as a string. + return [].slice.call(arguments, 1).join(' '); + } + + const args = [].slice.call(arguments, 2); + const parts = [strings.raw[0]]; + + for (let i = 1; i < strings.length; i++) { + parts.push(String(args[i - 1]).replace(/[{}\\]/g, '\\$&')); + parts.push(String(strings.raw[i])); + } + + return template(chalk, parts.join('')); +} + +Object.defineProperties(Chalk.prototype, styles); + +module.exports = Chalk(); // eslint-disable-line new-cap +module.exports.supportsColor = stdoutColor; +module.exports.default = module.exports; // For TypeScript + + +/***/ }), +/* 31 */ +/***/ (function(module, exports) { + +var core = module.exports = { version: '2.5.7' }; +if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef + + +/***/ }), +/* 32 */ +/***/ (function(module, exports, __webpack_require__) { + +// Copyright 2015 Joyent, Inc. + +var Buffer = __webpack_require__(15).Buffer; + +var algInfo = { + 'dsa': { + parts: ['p', 'q', 'g', 'y'], + sizePart: 'p' + }, + 'rsa': { + parts: ['e', 'n'], + sizePart: 'n' + }, + 'ecdsa': { + parts: ['curve', 'Q'], + sizePart: 'Q' + }, + 'ed25519': { + parts: ['A'], + sizePart: 'A' + } +}; +algInfo['curve25519'] = algInfo['ed25519']; + +var algPrivInfo = { + 'dsa': { + parts: ['p', 'q', 'g', 'y', 'x'] + }, + 'rsa': { + parts: ['n', 'e', 'd', 'iqmp', 'p', 'q'] + }, + 'ecdsa': { + parts: ['curve', 'Q', 'd'] + }, + 'ed25519': { + parts: ['A', 'k'] + } +}; +algPrivInfo['curve25519'] = algPrivInfo['ed25519']; + +var hashAlgs = { + 'md5': true, + 'sha1': true, + 'sha256': true, + 'sha384': true, + 'sha512': true +}; + +/* + * Taken from + * http://csrc.nist.gov/groups/ST/toolkit/documents/dss/NISTReCur.pdf + */ +var curves = { + 'nistp256': { + size: 256, + pkcs8oid: '1.2.840.10045.3.1.7', + p: Buffer.from(('00' + + 'ffffffff 00000001 00000000 00000000' + + '00000000 ffffffff ffffffff ffffffff'). + replace(/ /g, ''), 'hex'), + a: Buffer.from(('00' + + 'FFFFFFFF 00000001 00000000 00000000' + + '00000000 FFFFFFFF FFFFFFFF FFFFFFFC'). + replace(/ /g, ''), 'hex'), + b: Buffer.from(( + '5ac635d8 aa3a93e7 b3ebbd55 769886bc' + + '651d06b0 cc53b0f6 3bce3c3e 27d2604b'). + replace(/ /g, ''), 'hex'), + s: Buffer.from(('00' + + 'c49d3608 86e70493 6a6678e1 139d26b7' + + '819f7e90'). + replace(/ /g, ''), 'hex'), + n: Buffer.from(('00' + + 'ffffffff 00000000 ffffffff ffffffff' + + 'bce6faad a7179e84 f3b9cac2 fc632551'). + replace(/ /g, ''), 'hex'), + G: Buffer.from(('04' + + '6b17d1f2 e12c4247 f8bce6e5 63a440f2' + + '77037d81 2deb33a0 f4a13945 d898c296' + + '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16' + + '2bce3357 6b315ece cbb64068 37bf51f5'). + replace(/ /g, ''), 'hex') + }, + 'nistp384': { + size: 384, + pkcs8oid: '1.3.132.0.34', + p: Buffer.from(('00' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff ffffffff fffffffe' + + 'ffffffff 00000000 00000000 ffffffff'). + replace(/ /g, ''), 'hex'), + a: Buffer.from(('00' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE' + + 'FFFFFFFF 00000000 00000000 FFFFFFFC'). + replace(/ /g, ''), 'hex'), + b: Buffer.from(( + 'b3312fa7 e23ee7e4 988e056b e3f82d19' + + '181d9c6e fe814112 0314088f 5013875a' + + 'c656398d 8a2ed19d 2a85c8ed d3ec2aef'). + replace(/ /g, ''), 'hex'), + s: Buffer.from(('00' + + 'a335926a a319a27a 1d00896a 6773a482' + + '7acdac73'). + replace(/ /g, ''), 'hex'), + n: Buffer.from(('00' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff c7634d81 f4372ddf' + + '581a0db2 48b0a77a ecec196a ccc52973'). + replace(/ /g, ''), 'hex'), + G: Buffer.from(('04' + + 'aa87ca22 be8b0537 8eb1c71e f320ad74' + + '6e1d3b62 8ba79b98 59f741e0 82542a38' + + '5502f25d bf55296c 3a545e38 72760ab7' + + '3617de4a 96262c6f 5d9e98bf 9292dc29' + + 'f8f41dbd 289a147c e9da3113 b5f0b8c0' + + '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f'). + replace(/ /g, ''), 'hex') + }, + 'nistp521': { + size: 521, + pkcs8oid: '1.3.132.0.35', + p: Buffer.from(( + '01ffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffff').replace(/ /g, ''), 'hex'), + a: Buffer.from(('01FF' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF' + + 'FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFC'). + replace(/ /g, ''), 'hex'), + b: Buffer.from(('51' + + '953eb961 8e1c9a1f 929a21a0 b68540ee' + + 'a2da725b 99b315f3 b8b48991 8ef109e1' + + '56193951 ec7e937b 1652c0bd 3bb1bf07' + + '3573df88 3d2c34f1 ef451fd4 6b503f00'). + replace(/ /g, ''), 'hex'), + s: Buffer.from(('00' + + 'd09e8800 291cb853 96cc6717 393284aa' + + 'a0da64ba').replace(/ /g, ''), 'hex'), + n: Buffer.from(('01ff' + + 'ffffffff ffffffff ffffffff ffffffff' + + 'ffffffff ffffffff ffffffff fffffffa' + + '51868783 bf2f966b 7fcc0148 f709a5d0' + + '3bb5c9b8 899c47ae bb6fb71e 91386409'). + replace(/ /g, ''), 'hex'), + G: Buffer.from(('04' + + '00c6 858e06b7 0404e9cd 9e3ecb66 2395b442' + + '9c648139 053fb521 f828af60 6b4d3dba' + + 'a14b5e77 efe75928 fe1dc127 a2ffa8de' + + '3348b3c1 856a429b f97e7e31 c2e5bd66' + + '0118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9' + + '98f54449 579b4468 17afbd17 273e662c' + + '97ee7299 5ef42640 c550b901 3fad0761' + + '353c7086 a272c240 88be9476 9fd16650'). + replace(/ /g, ''), 'hex') + } +}; + +module.exports = { + info: algInfo, + privInfo: algPrivInfo, + hashAlgs: hashAlgs, + curves: curves +}; + + +/***/ }), +/* 33 */ +/***/ (function(module, exports, __webpack_require__) { + +// Copyright 2017 Joyent, Inc. + +module.exports = PrivateKey; + +var assert = __webpack_require__(16); +var Buffer = __webpack_require__(15).Buffer; +var algs = __webpack_require__(32); +var crypto = __webpack_require__(11); +var Fingerprint = __webpack_require__(156); +var Signature = __webpack_require__(75); +var errs = __webpack_require__(74); +var util = __webpack_require__(3); +var utils = __webpack_require__(26); +var dhe = __webpack_require__(325); +var generateECDSA = dhe.generateECDSA; +var generateED25519 = dhe.generateED25519; +var edCompat; +var nacl; + +try { + edCompat = __webpack_require__(454); +} catch (e) { + /* Just continue through, and bail out if we try to use it. */ +} + +var Key = __webpack_require__(27); + +var InvalidAlgorithmError = errs.InvalidAlgorithmError; +var KeyParseError = errs.KeyParseError; +var KeyEncryptedError = errs.KeyEncryptedError; + +var formats = {}; +formats['auto'] = __webpack_require__(455); +formats['pem'] = __webpack_require__(86); +formats['pkcs1'] = __webpack_require__(327); +formats['pkcs8'] = __webpack_require__(157); +formats['rfc4253'] = __webpack_require__(103); +formats['ssh-private'] = __webpack_require__(192); +formats['openssh'] = formats['ssh-private']; +formats['ssh'] = formats['ssh-private']; +formats['dnssec'] = __webpack_require__(326); + +function PrivateKey(opts) { + assert.object(opts, 'options'); + Key.call(this, opts); + + this._pubCache = undefined; +} +util.inherits(PrivateKey, Key); + +PrivateKey.formats = formats; + +PrivateKey.prototype.toBuffer = function (format, options) { + if (format === undefined) + format = 'pkcs1'; + assert.string(format, 'format'); + assert.object(formats[format], 'formats[format]'); + assert.optionalObject(options, 'options'); + + return (formats[format].write(this, options)); +}; + +PrivateKey.prototype.hash = function (algo) { + return (this.toPublic().hash(algo)); +}; + +PrivateKey.prototype.toPublic = function () { + if (this._pubCache) + return (this._pubCache); + + var algInfo = algs.info[this.type]; + var pubParts = []; + for (var i = 0; i < algInfo.parts.length; ++i) { + var p = algInfo.parts[i]; + pubParts.push(this.part[p]); + } + + this._pubCache = new Key({ + type: this.type, + source: this, + parts: pubParts + }); + if (this.comment) + this._pubCache.comment = this.comment; + return (this._pubCache); +}; + +PrivateKey.prototype.derive = function (newType) { + assert.string(newType, 'type'); + var priv, pub, pair; + + if (this.type === 'ed25519' && newType === 'curve25519') { + if (nacl === undefined) + nacl = __webpack_require__(76); + + priv = this.part.k.data; + if (priv[0] === 0x00) + priv = priv.slice(1); + + pair = nacl.box.keyPair.fromSecretKey(new Uint8Array(priv)); + pub = Buffer.from(pair.publicKey); + + return (new PrivateKey({ + type: 'curve25519', + parts: [ + { name: 'A', data: utils.mpNormalize(pub) }, + { name: 'k', data: utils.mpNormalize(priv) } + ] + })); + } else if (this.type === 'curve25519' && newType === 'ed25519') { + if (nacl === undefined) + nacl = __webpack_require__(76); + + priv = this.part.k.data; + if (priv[0] === 0x00) + priv = priv.slice(1); + + pair = nacl.sign.keyPair.fromSeed(new Uint8Array(priv)); + pub = Buffer.from(pair.publicKey); + + return (new PrivateKey({ + type: 'ed25519', + parts: [ + { name: 'A', data: utils.mpNormalize(pub) }, + { name: 'k', data: utils.mpNormalize(priv) } + ] + })); + } + throw (new Error('Key derivation not supported from ' + this.type + + ' to ' + newType)); +}; + +PrivateKey.prototype.createVerify = function (hashAlgo) { + return (this.toPublic().createVerify(hashAlgo)); +}; + +PrivateKey.prototype.createSign = function (hashAlgo) { + if (hashAlgo === undefined) + hashAlgo = this.defaultHashAlgorithm(); + assert.string(hashAlgo, 'hash algorithm'); + + /* ED25519 is not supported by OpenSSL, use a javascript impl. */ + if (this.type === 'ed25519' && edCompat !== undefined) + return (new edCompat.Signer(this, hashAlgo)); + if (this.type === 'curve25519') + throw (new Error('Curve25519 keys are not suitable for ' + + 'signing or verification')); + + var v, nm, err; + try { + nm = hashAlgo.toUpperCase(); + v = crypto.createSign(nm); + } catch (e) { + err = e; + } + if (v === undefined || (err instanceof Error && + err.message.match(/Unknown message digest/))) { + nm = 'RSA-'; + nm += hashAlgo.toUpperCase(); + v = crypto.createSign(nm); + } + assert.ok(v, 'failed to create verifier'); + var oldSign = v.sign.bind(v); + var key = this.toBuffer('pkcs1'); + var type = this.type; + var curve = this.curve; + v.sign = function () { + var sig = oldSign(key); + if (typeof (sig) === 'string') + sig = Buffer.from(sig, 'binary'); + sig = Signature.parse(sig, type, 'asn1'); + sig.hashAlgorithm = hashAlgo; + sig.curve = curve; + return (sig); + }; + return (v); +}; + +PrivateKey.parse = function (data, format, options) { + if (typeof (data) !== 'string') + assert.buffer(data, 'data'); + if (format === undefined) + format = 'auto'; + assert.string(format, 'format'); + if (typeof (options) === 'string') + options = { filename: options }; + assert.optionalObject(options, 'options'); + if (options === undefined) + options = {}; + assert.optionalString(options.filename, 'options.filename'); + if (options.filename === undefined) + options.filename = '(unnamed)'; + + assert.object(formats[format], 'formats[format]'); + + try { + var k = formats[format].read(data, options); + assert.ok(k instanceof PrivateKey, 'key is not a private key'); + if (!k.comment) + k.comment = options.filename; + return (k); + } catch (e) { + if (e.name === 'KeyEncryptedError') + throw (e); + throw (new KeyParseError(options.filename, format, e)); + } +}; + +PrivateKey.isPrivateKey = function (obj, ver) { + return (utils.isCompatible(obj, PrivateKey, ver)); +}; + +PrivateKey.generate = function (type, options) { + if (options === undefined) + options = {}; + assert.object(options, 'options'); + + switch (type) { + case 'ecdsa': + if (options.curve === undefined) + options.curve = 'nistp256'; + assert.string(options.curve, 'options.curve'); + return (generateECDSA(options.curve)); + case 'ed25519': + return (generateED25519()); + default: + throw (new Error('Key generation not supported with key ' + + 'type "' + type + '"')); + } +}; + +/* + * API versions for PrivateKey: + * [1,0] -- initial ver + * [1,1] -- added auto, pkcs[18], openssh/ssh-private formats + * [1,2] -- added defaultHashAlgorithm + * [1,3] -- added derive, ed, createDH + * [1,4] -- first tagged version + * [1,5] -- changed ed25519 part names and format + */ +PrivateKey.prototype._sshpkApiVersion = [1, 5]; + +PrivateKey._oldVersionDetect = function (obj) { + assert.func(obj.toPublic); + assert.func(obj.createSign); + if (obj.derive) + return ([1, 3]); + if (obj.defaultHashAlgorithm) + return ([1, 2]); + if (obj.formats['auto']) + return ([1, 1]); + return ([1, 0]); +}; + + +/***/ }), +/* 34 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.wrapLifecycle = exports.run = exports.install = exports.Install = undefined; + +var _extends2; + +function _load_extends() { + return _extends2 = _interopRequireDefault(__webpack_require__(21)); +} + +var _asyncToGenerator2; + +function _load_asyncToGenerator() { + return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(2)); +} + +let install = exports.install = (() => { + var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, reporter, flags, lockfile) { + yield wrapLifecycle(config, flags, (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const install = new Install(flags, config, reporter, lockfile); + yield install.init(); + })); + }); + + return function install(_x7, _x8, _x9, _x10) { + return _ref29.apply(this, arguments); + }; +})(); + +let run = exports.run = (() => { + var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, reporter, flags, args) { + let lockfile; + let error = 'installCommandRenamed'; + if (flags.lockfile === false) { + lockfile = new (_lockfile || _load_lockfile()).default(); + } else { + lockfile = yield (_lockfile || _load_lockfile()).default.fromDirectory(config.lockfileFolder, reporter); + } + + if (args.length) { + const exampleArgs = args.slice(); + + if (flags.saveDev) { + exampleArgs.push('--dev'); + } + if (flags.savePeer) { + exampleArgs.push('--peer'); + } + if (flags.saveOptional) { + exampleArgs.push('--optional'); + } + if (flags.saveExact) { + exampleArgs.push('--exact'); + } + if (flags.saveTilde) { + exampleArgs.push('--tilde'); + } + let command = 'add'; + if (flags.global) { + error = 'globalFlagRemoved'; + command = 'global add'; + } + throw new (_errors || _load_errors()).MessageError(reporter.lang(error, `yarn ${command} ${exampleArgs.join(' ')}`)); + } + + yield install(config, reporter, flags, lockfile); + }); + + return function run(_x11, _x12, _x13, _x14) { + return _ref31.apply(this, arguments); + }; +})(); + +let wrapLifecycle = exports.wrapLifecycle = (() => { + var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (config, flags, factory) { + yield config.executeLifecycleScript('preinstall'); + + yield factory(); + + // npm behaviour, seems kinda funky but yay compatibility + yield config.executeLifecycleScript('install'); + yield config.executeLifecycleScript('postinstall'); + + if (!config.production) { + if (!config.disablePrepublish) { + yield config.executeLifecycleScript('prepublish'); + } + yield config.executeLifecycleScript('prepare'); + } + }); + + return function wrapLifecycle(_x15, _x16, _x17) { + return _ref32.apply(this, arguments); + }; +})(); + +exports.hasWrapper = hasWrapper; +exports.setFlags = setFlags; + +var _objectPath; + +function _load_objectPath() { + return _objectPath = _interopRequireDefault(__webpack_require__(304)); +} + +var _hooks; + +function _load_hooks() { + return _hooks = __webpack_require__(374); +} + +var _index; + +function _load_index() { + return _index = _interopRequireDefault(__webpack_require__(220)); +} + +var _errors; + +function _load_errors() { + return _errors = __webpack_require__(6); +} + +var _integrityChecker; + +function _load_integrityChecker() { + return _integrityChecker = _interopRequireDefault(__webpack_require__(208)); +} + +var _lockfile; + +function _load_lockfile() { + return _lockfile = _interopRequireDefault(__webpack_require__(19)); +} + +var _lockfile2; + +function _load_lockfile2() { + return _lockfile2 = __webpack_require__(19); +} + +var _packageFetcher; + +function _load_packageFetcher() { + return _packageFetcher = _interopRequireWildcard(__webpack_require__(210)); +} + +var _packageInstallScripts; + +function _load_packageInstallScripts() { + return _packageInstallScripts = _interopRequireDefault(__webpack_require__(557)); +} + +var _packageCompatibility; + +function _load_packageCompatibility() { + return _packageCompatibility = _interopRequireWildcard(__webpack_require__(209)); +} + +var _packageResolver; + +function _load_packageResolver() { + return _packageResolver = _interopRequireDefault(__webpack_require__(366)); +} + +var _packageLinker; + +function _load_packageLinker() { + return _packageLinker = _interopRequireDefault(__webpack_require__(211)); +} + +var _index2; + +function _load_index2() { + return _index2 = __webpack_require__(57); +} + +var _index3; + +function _load_index3() { + return _index3 = __webpack_require__(78); +} + +var _autoclean; + +function _load_autoclean() { + return _autoclean = __webpack_require__(354); +} + +var _constants; + +function _load_constants() { + return _constants = _interopRequireWildcard(__webpack_require__(8)); +} + +var _normalizePattern; + +function _load_normalizePattern() { + return _normalizePattern = __webpack_require__(37); +} + +var _fs; + +function _load_fs() { + return _fs = _interopRequireWildcard(__webpack_require__(4)); +} + +var _map; + +function _load_map() { + return _map = _interopRequireDefault(__webpack_require__(29)); +} + +var _yarnVersion; + +function _load_yarnVersion() { + return _yarnVersion = __webpack_require__(120); +} + +var _generatePnpMap; + +function _load_generatePnpMap() { + return _generatePnpMap = __webpack_require__(579); +} + +var _workspaceLayout; + +function _load_workspaceLayout() { + return _workspaceLayout = _interopRequireDefault(__webpack_require__(90)); +} + +var _resolutionMap; + +function _load_resolutionMap() { + return _resolutionMap = _interopRequireDefault(__webpack_require__(214)); +} + +var _guessName; + +function _load_guessName() { + return _guessName = _interopRequireDefault(__webpack_require__(169)); +} + +var _audit; + +function _load_audit() { + return _audit = _interopRequireDefault(__webpack_require__(353)); +} + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +const deepEqual = __webpack_require__(631); + +const emoji = __webpack_require__(302); +const invariant = __webpack_require__(9); +const path = __webpack_require__(0); +const semver = __webpack_require__(22); +const uuid = __webpack_require__(119); +const ssri = __webpack_require__(65); + +const ONE_DAY = 1000 * 60 * 60 * 24; + +/** + * Try and detect the installation method for Yarn and provide a command to update it with. + */ + +function getUpdateCommand(installationMethod) { + if (installationMethod === 'tar') { + return `curl --compressed -o- -L ${(_constants || _load_constants()).YARN_INSTALLER_SH} | bash`; + } + + if (installationMethod === 'homebrew') { + return 'brew upgrade yarn'; + } + + if (installationMethod === 'deb') { + return 'sudo apt-get update && sudo apt-get install yarn'; + } + + if (installationMethod === 'rpm') { + return 'sudo yum install yarn'; + } + + if (installationMethod === 'npm') { + return 'npm install --global yarn'; + } + + if (installationMethod === 'chocolatey') { + return 'choco upgrade yarn'; + } + + if (installationMethod === 'apk') { + return 'apk update && apk add -u yarn'; + } + + if (installationMethod === 'portage') { + return 'sudo emerge --sync && sudo emerge -au sys-apps/yarn'; + } + + return null; +} + +function getUpdateInstaller(installationMethod) { + // Windows + if (installationMethod === 'msi') { + return (_constants || _load_constants()).YARN_INSTALLER_MSI; + } + + return null; +} + +function normalizeFlags(config, rawFlags) { + const flags = { + // install + har: !!rawFlags.har, + ignorePlatform: !!rawFlags.ignorePlatform, + ignoreEngines: !!rawFlags.ignoreEngines, + ignoreScripts: !!rawFlags.ignoreScripts, + ignoreOptional: !!rawFlags.ignoreOptional, + force: !!rawFlags.force, + flat: !!rawFlags.flat, + lockfile: rawFlags.lockfile !== false, + pureLockfile: !!rawFlags.pureLockfile, + updateChecksums: !!rawFlags.updateChecksums, + skipIntegrityCheck: !!rawFlags.skipIntegrityCheck, + frozenLockfile: !!rawFlags.frozenLockfile, + linkDuplicates: !!rawFlags.linkDuplicates, + checkFiles: !!rawFlags.checkFiles, + audit: !!rawFlags.audit, + + // add + peer: !!rawFlags.peer, + dev: !!rawFlags.dev, + optional: !!rawFlags.optional, + exact: !!rawFlags.exact, + tilde: !!rawFlags.tilde, + ignoreWorkspaceRootCheck: !!rawFlags.ignoreWorkspaceRootCheck, + + // outdated, update-interactive + includeWorkspaceDeps: !!rawFlags.includeWorkspaceDeps, + + // add, remove, update + workspaceRootIsCwd: rawFlags.workspaceRootIsCwd !== false + }; + + if (config.getOption('ignore-scripts')) { + flags.ignoreScripts = true; + } + + if (config.getOption('ignore-platform')) { + flags.ignorePlatform = true; + } + + if (config.getOption('ignore-engines')) { + flags.ignoreEngines = true; + } + + if (config.getOption('ignore-optional')) { + flags.ignoreOptional = true; + } + + if (config.getOption('force')) { + flags.force = true; + } + + return flags; +} + +class Install { + constructor(flags, config, reporter, lockfile) { + this.rootManifestRegistries = []; + this.rootPatternsToOrigin = (0, (_map || _load_map()).default)(); + this.lockfile = lockfile; + this.reporter = reporter; + this.config = config; + this.flags = normalizeFlags(config, flags); + this.resolutions = (0, (_map || _load_map()).default)(); // Legacy resolutions field used for flat install mode + this.resolutionMap = new (_resolutionMap || _load_resolutionMap()).default(config); // Selective resolutions for nested dependencies + this.resolver = new (_packageResolver || _load_packageResolver()).default(config, lockfile, this.resolutionMap); + this.integrityChecker = new (_integrityChecker || _load_integrityChecker()).default(config); + this.linker = new (_packageLinker || _load_packageLinker()).default(config, this.resolver); + this.scripts = new (_packageInstallScripts || _load_packageInstallScripts()).default(config, this.resolver, this.flags.force); + } + + /** + * Create a list of dependency requests from the current directories manifests. + */ + + fetchRequestFromCwd(excludePatterns = [], ignoreUnusedPatterns = false) { + var _this = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const patterns = []; + const deps = []; + let resolutionDeps = []; + const manifest = {}; + + const ignorePatterns = []; + const usedPatterns = []; + let workspaceLayout; + + // some commands should always run in the context of the entire workspace + const cwd = _this.flags.includeWorkspaceDeps || _this.flags.workspaceRootIsCwd ? _this.config.lockfileFolder : _this.config.cwd; + + // non-workspaces are always root, otherwise check for workspace root + const cwdIsRoot = !_this.config.workspaceRootFolder || _this.config.lockfileFolder === cwd; + + // exclude package names that are in install args + const excludeNames = []; + for (var _iterator = excludePatterns, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { + var _ref; + + if (_isArray) { + if (_i >= _iterator.length) break; + _ref = _iterator[_i++]; + } else { + _i = _iterator.next(); + if (_i.done) break; + _ref = _i.value; + } + + const pattern = _ref; + + if ((0, (_index3 || _load_index3()).getExoticResolver)(pattern)) { + excludeNames.push((0, (_guessName || _load_guessName()).default)(pattern)); + } else { + // extract the name + const parts = (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern); + excludeNames.push(parts.name); + } + } + + const stripExcluded = function stripExcluded(manifest) { + for (var _iterator2 = excludeNames, _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { + var _ref2; + + if (_isArray2) { + if (_i2 >= _iterator2.length) break; + _ref2 = _iterator2[_i2++]; + } else { + _i2 = _iterator2.next(); + if (_i2.done) break; + _ref2 = _i2.value; + } + + const exclude = _ref2; + + if (manifest.dependencies && manifest.dependencies[exclude]) { + delete manifest.dependencies[exclude]; + } + if (manifest.devDependencies && manifest.devDependencies[exclude]) { + delete manifest.devDependencies[exclude]; + } + if (manifest.optionalDependencies && manifest.optionalDependencies[exclude]) { + delete manifest.optionalDependencies[exclude]; + } + } + }; + + for (var _iterator3 = Object.keys((_index2 || _load_index2()).registries), _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator]();;) { + var _ref3; + + if (_isArray3) { + if (_i3 >= _iterator3.length) break; + _ref3 = _iterator3[_i3++]; + } else { + _i3 = _iterator3.next(); + if (_i3.done) break; + _ref3 = _i3.value; + } + + const registry = _ref3; + + const filename = (_index2 || _load_index2()).registries[registry].filename; + + const loc = path.join(cwd, filename); + if (!(yield (_fs || _load_fs()).exists(loc))) { + continue; + } + + _this.rootManifestRegistries.push(registry); + + const projectManifestJson = yield _this.config.readJson(loc); + yield (0, (_index || _load_index()).default)(projectManifestJson, cwd, _this.config, cwdIsRoot); + + Object.assign(_this.resolutions, projectManifestJson.resolutions); + Object.assign(manifest, projectManifestJson); + + _this.resolutionMap.init(_this.resolutions); + for (var _iterator4 = Object.keys(_this.resolutionMap.resolutionsByPackage), _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator]();;) { + var _ref4; + + if (_isArray4) { + if (_i4 >= _iterator4.length) break; + _ref4 = _iterator4[_i4++]; + } else { + _i4 = _iterator4.next(); + if (_i4.done) break; + _ref4 = _i4.value; + } + + const packageName = _ref4; + + const optional = (_objectPath || _load_objectPath()).default.has(manifest.optionalDependencies, packageName) && _this.flags.ignoreOptional; + for (var _iterator8 = _this.resolutionMap.resolutionsByPackage[packageName], _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator]();;) { + var _ref9; + + if (_isArray8) { + if (_i8 >= _iterator8.length) break; + _ref9 = _iterator8[_i8++]; + } else { + _i8 = _iterator8.next(); + if (_i8.done) break; + _ref9 = _i8.value; + } + + const _ref8 = _ref9; + const pattern = _ref8.pattern; + + resolutionDeps = [...resolutionDeps, { registry, pattern, optional, hint: 'resolution' }]; + } + } + + const pushDeps = function pushDeps(depType, manifest, { hint, optional }, isUsed) { + if (ignoreUnusedPatterns && !isUsed) { + return; + } + // We only take unused dependencies into consideration to get deterministic hoisting. + // Since flat mode doesn't care about hoisting and everything is top level and specified then we can safely + // leave these out. + if (_this.flags.flat && !isUsed) { + return; + } + const depMap = manifest[depType]; + for (const name in depMap) { + if (excludeNames.indexOf(name) >= 0) { + continue; + } + + let pattern = name; + if (!_this.lockfile.getLocked(pattern)) { + // when we use --save we save the dependency to the lockfile with just the name rather than the + // version combo + pattern += '@' + depMap[name]; + } + + // normalization made sure packages are mentioned only once + if (isUsed) { + usedPatterns.push(pattern); + } else { + ignorePatterns.push(pattern); + } + + _this.rootPatternsToOrigin[pattern] = depType; + patterns.push(pattern); + deps.push({ pattern, registry, hint, optional, workspaceName: manifest.name, workspaceLoc: manifest._loc }); + } + }; + + if (cwdIsRoot) { + pushDeps('dependencies', projectManifestJson, { hint: null, optional: false }, true); + pushDeps('devDependencies', projectManifestJson, { hint: 'dev', optional: false }, !_this.config.production); + pushDeps('optionalDependencies', projectManifestJson, { hint: 'optional', optional: true }, true); + } + + if (_this.config.workspaceRootFolder) { + const workspaceLoc = cwdIsRoot ? loc : path.join(_this.config.lockfileFolder, filename); + const workspacesRoot = path.dirname(workspaceLoc); + + let workspaceManifestJson = projectManifestJson; + if (!cwdIsRoot) { + // the manifest we read before was a child workspace, so get the root + workspaceManifestJson = yield _this.config.readJson(workspaceLoc); + yield (0, (_index || _load_index()).default)(workspaceManifestJson, workspacesRoot, _this.config, true); + } + + const workspaces = yield _this.config.resolveWorkspaces(workspacesRoot, workspaceManifestJson); + workspaceLayout = new (_workspaceLayout || _load_workspaceLayout()).default(workspaces, _this.config); + + // add virtual manifest that depends on all workspaces, this way package hoisters and resolvers will work fine + const workspaceDependencies = (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.dependencies); + for (var _iterator5 = Object.keys(workspaces), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { + var _ref5; + + if (_isArray5) { + if (_i5 >= _iterator5.length) break; + _ref5 = _iterator5[_i5++]; + } else { + _i5 = _iterator5.next(); + if (_i5.done) break; + _ref5 = _i5.value; + } + + const workspaceName = _ref5; + + const workspaceManifest = workspaces[workspaceName].manifest; + workspaceDependencies[workspaceName] = workspaceManifest.version; + + // include dependencies from all workspaces + if (_this.flags.includeWorkspaceDeps) { + pushDeps('dependencies', workspaceManifest, { hint: null, optional: false }, true); + pushDeps('devDependencies', workspaceManifest, { hint: 'dev', optional: false }, !_this.config.production); + pushDeps('optionalDependencies', workspaceManifest, { hint: 'optional', optional: true }, true); + } + } + const virtualDependencyManifest = { + _uid: '', + name: `workspace-aggregator-${uuid.v4()}`, + version: '1.0.0', + _registry: 'npm', + _loc: workspacesRoot, + dependencies: workspaceDependencies, + devDependencies: (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.devDependencies), + optionalDependencies: (0, (_extends2 || _load_extends()).default)({}, workspaceManifestJson.optionalDependencies), + private: workspaceManifestJson.private, + workspaces: workspaceManifestJson.workspaces + }; + workspaceLayout.virtualManifestName = virtualDependencyManifest.name; + const virtualDep = {}; + virtualDep[virtualDependencyManifest.name] = virtualDependencyManifest.version; + workspaces[virtualDependencyManifest.name] = { loc: workspacesRoot, manifest: virtualDependencyManifest }; + + // ensure dependencies that should be excluded are stripped from the correct manifest + stripExcluded(cwdIsRoot ? virtualDependencyManifest : workspaces[projectManifestJson.name].manifest); + + pushDeps('workspaces', { workspaces: virtualDep }, { hint: 'workspaces', optional: false }, true); + + const implicitWorkspaceDependencies = (0, (_extends2 || _load_extends()).default)({}, workspaceDependencies); + + for (var _iterator6 = (_constants || _load_constants()).OWNED_DEPENDENCY_TYPES, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator]();;) { + var _ref6; + + if (_isArray6) { + if (_i6 >= _iterator6.length) break; + _ref6 = _iterator6[_i6++]; + } else { + _i6 = _iterator6.next(); + if (_i6.done) break; + _ref6 = _i6.value; + } + + const type = _ref6; + + for (var _iterator7 = Object.keys(projectManifestJson[type] || {}), _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { + var _ref7; + + if (_isArray7) { + if (_i7 >= _iterator7.length) break; + _ref7 = _iterator7[_i7++]; + } else { + _i7 = _iterator7.next(); + if (_i7.done) break; + _ref7 = _i7.value; + } + + const dependencyName = _ref7; + + delete implicitWorkspaceDependencies[dependencyName]; + } + } + + pushDeps('dependencies', { dependencies: implicitWorkspaceDependencies }, { hint: 'workspaces', optional: false }, true); + } + + break; + } + + // inherit root flat flag + if (manifest.flat) { + _this.flags.flat = true; + } + + return { + requests: [...resolutionDeps, ...deps], + patterns, + manifest, + usedPatterns, + ignorePatterns, + workspaceLayout + }; + })(); + } + + /** + * TODO description + */ + + prepareRequests(requests) { + return requests; + } + + preparePatterns(patterns) { + return patterns; + } + preparePatternsForLinking(patterns, cwdManifest, cwdIsRoot) { + return patterns; + } + + prepareManifests() { + var _this2 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const manifests = yield _this2.config.getRootManifests(); + return manifests; + })(); + } + + bailout(patterns, workspaceLayout) { + var _this3 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + // We don't want to skip the audit - it could yield important errors + if (_this3.flags.audit) { + return false; + } + // PNP is so fast that the integrity check isn't pertinent + if (_this3.config.plugnplayEnabled) { + return false; + } + if (_this3.flags.skipIntegrityCheck || _this3.flags.force) { + return false; + } + const lockfileCache = _this3.lockfile.cache; + if (!lockfileCache) { + return false; + } + const lockfileClean = _this3.lockfile.parseResultType === 'success'; + const match = yield _this3.integrityChecker.check(patterns, lockfileCache, _this3.flags, workspaceLayout); + if (_this3.flags.frozenLockfile && (!lockfileClean || match.missingPatterns.length > 0)) { + throw new (_errors || _load_errors()).MessageError(_this3.reporter.lang('frozenLockfileError')); + } + + const haveLockfile = yield (_fs || _load_fs()).exists(path.join(_this3.config.lockfileFolder, (_constants || _load_constants()).LOCKFILE_FILENAME)); + + const lockfileIntegrityPresent = !_this3.lockfile.hasEntriesExistWithoutIntegrity(); + const integrityBailout = lockfileIntegrityPresent || !_this3.config.autoAddIntegrity; + + if (match.integrityMatches && haveLockfile && lockfileClean && integrityBailout) { + _this3.reporter.success(_this3.reporter.lang('upToDate')); + return true; + } + + if (match.integrityFileMissing && haveLockfile) { + // Integrity file missing, force script installations + _this3.scripts.setForce(true); + return false; + } + + if (match.hardRefreshRequired) { + // e.g. node version doesn't match, force script installations + _this3.scripts.setForce(true); + return false; + } + + if (!patterns.length && !match.integrityFileMissing) { + _this3.reporter.success(_this3.reporter.lang('nothingToInstall')); + yield _this3.createEmptyManifestFolders(); + yield _this3.saveLockfileAndIntegrity(patterns, workspaceLayout); + return true; + } + + return false; + })(); + } + + /** + * Produce empty folders for all used root manifests. + */ + + createEmptyManifestFolders() { + var _this4 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + if (_this4.config.modulesFolder) { + // already created + return; + } + + for (var _iterator9 = _this4.rootManifestRegistries, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator]();;) { + var _ref10; + + if (_isArray9) { + if (_i9 >= _iterator9.length) break; + _ref10 = _iterator9[_i9++]; + } else { + _i9 = _iterator9.next(); + if (_i9.done) break; + _ref10 = _i9.value; + } + + const registryName = _ref10; + const folder = _this4.config.registries[registryName].folder; + + yield (_fs || _load_fs()).mkdirp(path.join(_this4.config.lockfileFolder, folder)); + } + })(); + } + + /** + * TODO description + */ + + markIgnored(patterns) { + for (var _iterator10 = patterns, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator]();;) { + var _ref11; + + if (_isArray10) { + if (_i10 >= _iterator10.length) break; + _ref11 = _iterator10[_i10++]; + } else { + _i10 = _iterator10.next(); + if (_i10.done) break; + _ref11 = _i10.value; + } + + const pattern = _ref11; + + const manifest = this.resolver.getStrictResolvedPattern(pattern); + const ref = manifest._reference; + invariant(ref, 'expected package reference'); + + // just mark the package as ignored. if the package is used by a required package, the hoister + // will take care of that. + ref.ignore = true; + } + } + + /** + * helper method that gets only recent manifests + * used by global.ls command + */ + getFlattenedDeps() { + var _this5 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + var _ref12 = yield _this5.fetchRequestFromCwd(); + + const depRequests = _ref12.requests, + rawPatterns = _ref12.patterns; + + + yield _this5.resolver.init(depRequests, {}); + + const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this5.resolver.getManifests(), _this5.config); + _this5.resolver.updateManifests(manifests); + + return _this5.flatten(rawPatterns); + })(); + } + + /** + * TODO description + */ + + init() { + var _this6 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + _this6.checkUpdate(); + + // warn if we have a shrinkwrap + if (yield (_fs || _load_fs()).exists(path.join(_this6.config.lockfileFolder, (_constants || _load_constants()).NPM_SHRINKWRAP_FILENAME))) { + _this6.reporter.warn(_this6.reporter.lang('shrinkwrapWarning')); + } + + // warn if we have an npm lockfile + if (yield (_fs || _load_fs()).exists(path.join(_this6.config.lockfileFolder, (_constants || _load_constants()).NPM_LOCK_FILENAME))) { + _this6.reporter.warn(_this6.reporter.lang('npmLockfileWarning')); + } + + if (_this6.config.plugnplayEnabled) { + _this6.reporter.info(_this6.reporter.lang('plugnplaySuggestV2L1')); + _this6.reporter.info(_this6.reporter.lang('plugnplaySuggestV2L2')); + } + + let flattenedTopLevelPatterns = []; + const steps = []; + + var _ref13 = yield _this6.fetchRequestFromCwd(); + + const depRequests = _ref13.requests, + rawPatterns = _ref13.patterns, + ignorePatterns = _ref13.ignorePatterns, + workspaceLayout = _ref13.workspaceLayout, + manifest = _ref13.manifest; + + let topLevelPatterns = []; + + const artifacts = yield _this6.integrityChecker.getArtifacts(); + if (artifacts) { + _this6.linker.setArtifacts(artifacts); + _this6.scripts.setArtifacts(artifacts); + } + + if ((_packageCompatibility || _load_packageCompatibility()).shouldCheck(manifest, _this6.flags)) { + steps.push((() => { + var _ref14 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { + _this6.reporter.step(curr, total, _this6.reporter.lang('checkingManifest'), emoji.get('mag')); + yield _this6.checkCompatibility(); + }); + + return function (_x, _x2) { + return _ref14.apply(this, arguments); + }; + })()); + } + + const audit = new (_audit || _load_audit()).default(_this6.config, _this6.reporter, { groups: (_constants || _load_constants()).OWNED_DEPENDENCY_TYPES }); + let auditFoundProblems = false; + + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('resolveStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + _this6.reporter.step(curr, total, _this6.reporter.lang('resolvingPackages'), emoji.get('mag')); + yield _this6.resolver.init(_this6.prepareRequests(depRequests), { + isFlat: _this6.flags.flat, + isFrozen: _this6.flags.frozenLockfile, + workspaceLayout + }); + topLevelPatterns = _this6.preparePatterns(rawPatterns); + flattenedTopLevelPatterns = yield _this6.flatten(topLevelPatterns); + return { bailout: !_this6.flags.audit && (yield _this6.bailout(topLevelPatterns, workspaceLayout)) }; + })); + }); + + if (_this6.flags.audit) { + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('auditStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + _this6.reporter.step(curr, total, _this6.reporter.lang('auditRunning'), emoji.get('mag')); + if (_this6.flags.offline) { + _this6.reporter.warn(_this6.reporter.lang('auditOffline')); + return { bailout: false }; + } + const preparedManifests = yield _this6.prepareManifests(); + // $FlowFixMe - Flow considers `m` in the map operation to be "mixed", so does not recognize `m.object` + const mergedManifest = Object.assign({}, ...Object.values(preparedManifests).map(function (m) { + return m.object; + })); + const auditVulnerabilityCounts = yield audit.performAudit(mergedManifest, _this6.lockfile, _this6.resolver, _this6.linker, topLevelPatterns); + auditFoundProblems = auditVulnerabilityCounts.info || auditVulnerabilityCounts.low || auditVulnerabilityCounts.moderate || auditVulnerabilityCounts.high || auditVulnerabilityCounts.critical; + return { bailout: yield _this6.bailout(topLevelPatterns, workspaceLayout) }; + })); + }); + } + + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('fetchStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + _this6.markIgnored(ignorePatterns); + _this6.reporter.step(curr, total, _this6.reporter.lang('fetchingPackages'), emoji.get('truck')); + const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this6.resolver.getManifests(), _this6.config); + _this6.resolver.updateManifests(manifests); + yield (_packageCompatibility || _load_packageCompatibility()).check(_this6.resolver.getManifests(), _this6.config, _this6.flags.ignoreEngines); + })); + }); + + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('linkStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + // remove integrity hash to make this operation atomic + yield _this6.integrityChecker.removeIntegrityFile(); + _this6.reporter.step(curr, total, _this6.reporter.lang('linkingDependencies'), emoji.get('link')); + flattenedTopLevelPatterns = _this6.preparePatternsForLinking(flattenedTopLevelPatterns, manifest, _this6.config.lockfileFolder === _this6.config.cwd); + yield _this6.linker.init(flattenedTopLevelPatterns, workspaceLayout, { + linkDuplicates: _this6.flags.linkDuplicates, + ignoreOptional: _this6.flags.ignoreOptional + }); + })); + }); + + if (_this6.config.plugnplayEnabled) { + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('pnpStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const pnpPath = `${_this6.config.lockfileFolder}/${(_constants || _load_constants()).PNP_FILENAME}`; + + const code = yield (0, (_generatePnpMap || _load_generatePnpMap()).generatePnpMap)(_this6.config, flattenedTopLevelPatterns, { + resolver: _this6.resolver, + reporter: _this6.reporter, + targetPath: pnpPath, + workspaceLayout + }); + + try { + const file = yield (_fs || _load_fs()).readFile(pnpPath); + if (file === code) { + return; + } + } catch (error) {} + + yield (_fs || _load_fs()).writeFile(pnpPath, code); + yield (_fs || _load_fs()).chmod(pnpPath, 0o755); + })); + }); + } + + steps.push(function (curr, total) { + return (0, (_hooks || _load_hooks()).callThroughHook)('buildStep', (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + _this6.reporter.step(curr, total, _this6.flags.force ? _this6.reporter.lang('rebuildingPackages') : _this6.reporter.lang('buildingFreshPackages'), emoji.get('hammer')); + + if (_this6.config.ignoreScripts) { + _this6.reporter.warn(_this6.reporter.lang('ignoredScripts')); + } else { + yield _this6.scripts.init(flattenedTopLevelPatterns); + } + })); + }); + + if (_this6.flags.har) { + steps.push((() => { + var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { + const formattedDate = new Date().toISOString().replace(/:/g, '-'); + const filename = `yarn-install_${formattedDate}.har`; + _this6.reporter.step(curr, total, _this6.reporter.lang('savingHar', filename), emoji.get('black_circle_for_record')); + yield _this6.config.requestManager.saveHar(filename); + }); + + return function (_x3, _x4) { + return _ref21.apply(this, arguments); + }; + })()); + } + + if (yield _this6.shouldClean()) { + steps.push((() => { + var _ref22 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (curr, total) { + _this6.reporter.step(curr, total, _this6.reporter.lang('cleaningModules'), emoji.get('recycle')); + yield (0, (_autoclean || _load_autoclean()).clean)(_this6.config, _this6.reporter); + }); + + return function (_x5, _x6) { + return _ref22.apply(this, arguments); + }; + })()); + } + + let currentStep = 0; + for (var _iterator11 = steps, _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator]();;) { + var _ref23; + + if (_isArray11) { + if (_i11 >= _iterator11.length) break; + _ref23 = _iterator11[_i11++]; + } else { + _i11 = _iterator11.next(); + if (_i11.done) break; + _ref23 = _i11.value; + } + + const step = _ref23; + + const stepResult = yield step(++currentStep, steps.length); + if (stepResult && stepResult.bailout) { + if (_this6.flags.audit) { + audit.summary(); + } + if (auditFoundProblems) { + _this6.reporter.warn(_this6.reporter.lang('auditRunAuditForDetails')); + } + _this6.maybeOutputUpdate(); + return flattenedTopLevelPatterns; + } + } + + // fin! + if (_this6.flags.audit) { + audit.summary(); + } + if (auditFoundProblems) { + _this6.reporter.warn(_this6.reporter.lang('auditRunAuditForDetails')); + } + yield _this6.saveLockfileAndIntegrity(topLevelPatterns, workspaceLayout); + yield _this6.persistChanges(); + _this6.maybeOutputUpdate(); + _this6.config.requestManager.clearCache(); + return flattenedTopLevelPatterns; + })(); + } + + checkCompatibility() { + var _this7 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + var _ref24 = yield _this7.fetchRequestFromCwd(); + + const manifest = _ref24.manifest; + + yield (_packageCompatibility || _load_packageCompatibility()).checkOne(manifest, _this7.config, _this7.flags.ignoreEngines); + })(); + } + + persistChanges() { + var _this8 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + // get all the different registry manifests in this folder + const manifests = yield _this8.config.getRootManifests(); + + if (yield _this8.applyChanges(manifests)) { + yield _this8.config.saveRootManifests(manifests); + } + })(); + } + + applyChanges(manifests) { + let hasChanged = false; + + if (this.config.plugnplayPersist) { + const object = manifests.npm.object; + + + if (typeof object.installConfig !== 'object') { + object.installConfig = {}; + } + + if (this.config.plugnplayEnabled && object.installConfig.pnp !== true) { + object.installConfig.pnp = true; + hasChanged = true; + } else if (!this.config.plugnplayEnabled && typeof object.installConfig.pnp !== 'undefined') { + delete object.installConfig.pnp; + hasChanged = true; + } + + if (Object.keys(object.installConfig).length === 0) { + delete object.installConfig; + } + } + + return Promise.resolve(hasChanged); + } + + /** + * Check if we should run the cleaning step. + */ + + shouldClean() { + return (_fs || _load_fs()).exists(path.join(this.config.lockfileFolder, (_constants || _load_constants()).CLEAN_FILENAME)); + } + + /** + * TODO + */ + + flatten(patterns) { + var _this9 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + if (!_this9.flags.flat) { + return patterns; + } + + const flattenedPatterns = []; + + for (var _iterator12 = _this9.resolver.getAllDependencyNamesByLevelOrder(patterns), _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator]();;) { + var _ref25; + + if (_isArray12) { + if (_i12 >= _iterator12.length) break; + _ref25 = _iterator12[_i12++]; + } else { + _i12 = _iterator12.next(); + if (_i12.done) break; + _ref25 = _i12.value; + } + + const name = _ref25; + + const infos = _this9.resolver.getAllInfoForPackageName(name).filter(function (manifest) { + const ref = manifest._reference; + invariant(ref, 'expected package reference'); + return !ref.ignore; + }); + + if (infos.length === 0) { + continue; + } + + if (infos.length === 1) { + // single version of this package + // take out a single pattern as multiple patterns may have resolved to this package + flattenedPatterns.push(_this9.resolver.patternsByPackage[name][0]); + continue; + } + + const options = infos.map(function (info) { + const ref = info._reference; + invariant(ref, 'expected reference'); + return { + // TODO `and is required by {PARENT}`, + name: _this9.reporter.lang('manualVersionResolutionOption', ref.patterns.join(', '), info.version), + + value: info.version + }; + }); + const versions = infos.map(function (info) { + return info.version; + }); + let version; + + const resolutionVersion = _this9.resolutions[name]; + if (resolutionVersion && versions.indexOf(resolutionVersion) >= 0) { + // use json `resolution` version + version = resolutionVersion; + } else { + version = yield _this9.reporter.select(_this9.reporter.lang('manualVersionResolution', name), _this9.reporter.lang('answer'), options); + _this9.resolutions[name] = version; + } + + flattenedPatterns.push(_this9.resolver.collapseAllVersionsOfPackage(name, version)); + } + + // save resolutions to their appropriate root manifest + if (Object.keys(_this9.resolutions).length) { + const manifests = yield _this9.config.getRootManifests(); + + for (const name in _this9.resolutions) { + const version = _this9.resolutions[name]; + + const patterns = _this9.resolver.patternsByPackage[name]; + if (!patterns) { + continue; + } + + let manifest; + for (var _iterator13 = patterns, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator]();;) { + var _ref26; + + if (_isArray13) { + if (_i13 >= _iterator13.length) break; + _ref26 = _iterator13[_i13++]; + } else { + _i13 = _iterator13.next(); + if (_i13.done) break; + _ref26 = _i13.value; + } + + const pattern = _ref26; + + manifest = _this9.resolver.getResolvedPattern(pattern); + if (manifest) { + break; + } + } + invariant(manifest, 'expected manifest'); + + const ref = manifest._reference; + invariant(ref, 'expected reference'); + + const object = manifests[ref.registry].object; + object.resolutions = object.resolutions || {}; + object.resolutions[name] = version; + } + + yield _this9.config.saveRootManifests(manifests); + } + + return flattenedPatterns; + })(); + } + + /** + * Remove offline tarballs that are no longer required + */ + + pruneOfflineMirror(lockfile) { + var _this10 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const mirror = _this10.config.getOfflineMirrorPath(); + if (!mirror) { + return; + } + + const requiredTarballs = new Set(); + for (const dependency in lockfile) { + const resolved = lockfile[dependency].resolved; + if (resolved) { + const basename = path.basename(resolved.split('#')[0]); + if (dependency[0] === '@' && basename[0] !== '@') { + requiredTarballs.add(`${dependency.split('/')[0]}-${basename}`); + } + requiredTarballs.add(basename); + } + } + + const mirrorFiles = yield (_fs || _load_fs()).walk(mirror); + for (var _iterator14 = mirrorFiles, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator]();;) { + var _ref27; + + if (_isArray14) { + if (_i14 >= _iterator14.length) break; + _ref27 = _iterator14[_i14++]; + } else { + _i14 = _iterator14.next(); + if (_i14.done) break; + _ref27 = _i14.value; + } + + const file = _ref27; + + const isTarball = path.extname(file.basename) === '.tgz'; + // if using experimental-pack-script-packages-in-mirror flag, don't unlink prebuilt packages + const hasPrebuiltPackage = file.relative.startsWith('prebuilt/'); + if (isTarball && !hasPrebuiltPackage && !requiredTarballs.has(file.basename)) { + yield (_fs || _load_fs()).unlink(file.absolute); + } + } + })(); + } + + /** + * Save updated integrity and lockfiles. + */ + + saveLockfileAndIntegrity(patterns, workspaceLayout) { + var _this11 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const resolvedPatterns = {}; + Object.keys(_this11.resolver.patterns).forEach(function (pattern) { + if (!workspaceLayout || !workspaceLayout.getManifestByPattern(pattern)) { + resolvedPatterns[pattern] = _this11.resolver.patterns[pattern]; + } + }); + + // TODO this code is duplicated in a few places, need a common way to filter out workspace patterns from lockfile + patterns = patterns.filter(function (p) { + return !workspaceLayout || !workspaceLayout.getManifestByPattern(p); + }); + + const lockfileBasedOnResolver = _this11.lockfile.getLockfile(resolvedPatterns); + + if (_this11.config.pruneOfflineMirror) { + yield _this11.pruneOfflineMirror(lockfileBasedOnResolver); + } + + // write integrity hash + if (!_this11.config.plugnplayEnabled) { + yield _this11.integrityChecker.save(patterns, lockfileBasedOnResolver, _this11.flags, workspaceLayout, _this11.scripts.getArtifacts()); + } + + // --no-lockfile or --pure-lockfile or --frozen-lockfile + if (_this11.flags.lockfile === false || _this11.flags.pureLockfile || _this11.flags.frozenLockfile) { + return; + } + + const lockFileHasAllPatterns = patterns.every(function (p) { + return _this11.lockfile.getLocked(p); + }); + const lockfilePatternsMatch = Object.keys(_this11.lockfile.cache || {}).every(function (p) { + return lockfileBasedOnResolver[p]; + }); + const resolverPatternsAreSameAsInLockfile = Object.keys(lockfileBasedOnResolver).every(function (pattern) { + const manifest = _this11.lockfile.getLocked(pattern); + return manifest && manifest.resolved === lockfileBasedOnResolver[pattern].resolved && deepEqual(manifest.prebuiltVariants, lockfileBasedOnResolver[pattern].prebuiltVariants); + }); + const integrityPatternsAreSameAsInLockfile = Object.keys(lockfileBasedOnResolver).every(function (pattern) { + const existingIntegrityInfo = lockfileBasedOnResolver[pattern].integrity; + if (!existingIntegrityInfo) { + // if this entry does not have an integrity, no need to re-write the lockfile because of it + return true; + } + const manifest = _this11.lockfile.getLocked(pattern); + if (manifest && manifest.integrity) { + const manifestIntegrity = ssri.stringify(manifest.integrity); + return manifestIntegrity === existingIntegrityInfo; + } + return false; + }); + + // remove command is followed by install with force, lockfile will be rewritten in any case then + if (!_this11.flags.force && _this11.lockfile.parseResultType === 'success' && lockFileHasAllPatterns && lockfilePatternsMatch && resolverPatternsAreSameAsInLockfile && integrityPatternsAreSameAsInLockfile && patterns.length) { + return; + } + + // build lockfile location + const loc = path.join(_this11.config.lockfileFolder, (_constants || _load_constants()).LOCKFILE_FILENAME); + + // write lockfile + const lockSource = (0, (_lockfile2 || _load_lockfile2()).stringify)(lockfileBasedOnResolver, false, _this11.config.enableLockfileVersions); + yield (_fs || _load_fs()).writeFilePreservingEol(loc, lockSource); + + _this11._logSuccessSaveLockfile(); + })(); + } + + _logSuccessSaveLockfile() { + this.reporter.success(this.reporter.lang('savedLockfile')); + } + + /** + * Load the dependency graph of the current install. Only does package resolving and wont write to the cwd. + */ + hydrate(ignoreUnusedPatterns) { + var _this12 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + const request = yield _this12.fetchRequestFromCwd([], ignoreUnusedPatterns); + const depRequests = request.requests, + rawPatterns = request.patterns, + ignorePatterns = request.ignorePatterns, + workspaceLayout = request.workspaceLayout; + + + yield _this12.resolver.init(depRequests, { + isFlat: _this12.flags.flat, + isFrozen: _this12.flags.frozenLockfile, + workspaceLayout + }); + yield _this12.flatten(rawPatterns); + _this12.markIgnored(ignorePatterns); + + // fetch packages, should hit cache most of the time + const manifests = yield (_packageFetcher || _load_packageFetcher()).fetch(_this12.resolver.getManifests(), _this12.config); + _this12.resolver.updateManifests(manifests); + yield (_packageCompatibility || _load_packageCompatibility()).check(_this12.resolver.getManifests(), _this12.config, _this12.flags.ignoreEngines); + + // expand minimal manifests + for (var _iterator15 = _this12.resolver.getManifests(), _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator]();;) { + var _ref28; + + if (_isArray15) { + if (_i15 >= _iterator15.length) break; + _ref28 = _iterator15[_i15++]; + } else { + _i15 = _iterator15.next(); + if (_i15.done) break; + _ref28 = _i15.value; + } + + const manifest = _ref28; + + const ref = manifest._reference; + invariant(ref, 'expected reference'); + const type = ref.remote.type; + // link specifier won't ever hit cache + + let loc = ''; + if (type === 'link') { + continue; + } else if (type === 'workspace') { + if (!ref.remote.reference) { + continue; + } + loc = ref.remote.reference; + } else { + loc = _this12.config.generateModuleCachePath(ref); + } + const newPkg = yield _this12.config.readManifest(loc); + yield _this12.resolver.updateManifest(ref, newPkg); + } + + return request; + })(); + } + + /** + * Check for updates every day and output a nag message if there's a newer version. + */ + + checkUpdate() { + if (this.config.nonInteractive) { + // don't show upgrade dialog on CI or non-TTY terminals + return; + } + + // don't check if disabled + if (this.config.getOption('disable-self-update-check')) { + return; + } + + // only check for updates once a day + const lastUpdateCheck = Number(this.config.getOption('lastUpdateCheck')) || 0; + if (lastUpdateCheck && Date.now() - lastUpdateCheck < ONE_DAY) { + return; + } + + // don't bug for updates on tagged releases + if ((_yarnVersion || _load_yarnVersion()).version.indexOf('-') >= 0) { + return; + } + + this._checkUpdate().catch(() => { + // swallow errors + }); + } + + _checkUpdate() { + var _this13 = this; + + return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () { + let latestVersion = yield _this13.config.requestManager.request({ + url: (_constants || _load_constants()).SELF_UPDATE_VERSION_URL + }); + invariant(typeof latestVersion === 'string', 'expected string'); + latestVersion = latestVersion.trim(); + if (!semver.valid(latestVersion)) { + return; + } + + // ensure we only check for updates periodically + _this13.config.registries.yarn.saveHomeConfig({ + lastUpdateCheck: Date.now() + }); + + if (semver.gt(latestVersion, (_yarnVersion || _load_yarnVersion()).version)) { + const installationMethod = yield (0, (_yarnVersion || _load_yarnVersion()).getInstallationMethod)(); + _this13.maybeOutputUpdate = function () { + _this13.reporter.warn(_this13.reporter.lang('yarnOutdated', latestVersion, (_yarnVersion || _load_yarnVersion()).version)); + + const command = getUpdateCommand(installationMethod); + if (command) { + _this13.reporter.info(_this13.reporter.lang('yarnOutdatedCommand')); + _this13.reporter.command(command); + } else { + const installer = getUpdateInstaller(installationMethod); + if (installer) { + _this13.reporter.info(_this13.reporter.lang('yarnOutdatedInstaller', installer)); + } + } + }; + } + })(); + } + + /** + * Method to override with a possible upgrade message. + */ + + maybeOutputUpdate() {} +} + +exports.Install = Install; +function hasWrapper(commander, args) { + return true; +} + +function setFlags(commander) { + commander.description('Yarn install is used to install all dependencies for a project.'); + commander.usage('install [flags]'); + commander.option('-A, --audit', 'Run vulnerability audit on installed packages'); + commander.option('-g, --global', 'DEPRECATED'); + commander.option('-S, --save', 'DEPRECATED - save package to your `dependencies`'); + commander.option('-D, --save-dev', 'DEPRECATED - save package to your `devDependencies`'); + commander.option('-P, --save-peer', 'DEPRECATED - save package to your `peerDependencies`'); + commander.option('-O, --save-optional', 'DEPRECATED - save package to your `optionalDependencies`'); + commander.option('-E, --save-exact', 'DEPRECATED'); + commander.option('-T, --save-tilde', 'DEPRECATED'); +} + +/***/ }), +/* 35 */ +/***/ (function(module, exports, __webpack_require__) { + +var isObject = __webpack_require__(52); +module.exports = function (it) { + if (!isObject(it)) throw TypeError(it + ' is not an object!'); + return it; +}; + + +/***/ }), +/* 36 */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return SubjectSubscriber; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Subject; }); +/* unused harmony export AnonymousSubject */ +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_tslib__ = __webpack_require__(1); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Observable__ = __webpack_require__(12); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__Subscriber__ = __webpack_require__(7); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__Subscription__ = __webpack_require__(25); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__ = __webpack_require__(189); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__SubjectSubscription__ = __webpack_require__(422); +/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__internal_symbol_rxSubscriber__ = __webpack_require__(321); +/** PURE_IMPORTS_START tslib,_Observable,_Subscriber,_Subscription,_util_ObjectUnsubscribedError,_SubjectSubscription,_internal_symbol_rxSubscriber PURE_IMPORTS_END */ + + + + + + + +var SubjectSubscriber = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](SubjectSubscriber, _super); + function SubjectSubscriber(destination) { + var _this = _super.call(this, destination) || this; + _this.destination = destination; + return _this; + } + return SubjectSubscriber; +}(__WEBPACK_IMPORTED_MODULE_2__Subscriber__["a" /* Subscriber */])); + +var Subject = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](Subject, _super); + function Subject() { + var _this = _super.call(this) || this; + _this.observers = []; + _this.closed = false; + _this.isStopped = false; + _this.hasError = false; + _this.thrownError = null; + return _this; + } + Subject.prototype[__WEBPACK_IMPORTED_MODULE_6__internal_symbol_rxSubscriber__["a" /* rxSubscriber */]] = function () { + return new SubjectSubscriber(this); + }; + Subject.prototype.lift = function (operator) { + var subject = new AnonymousSubject(this, this); + subject.operator = operator; + return subject; + }; + Subject.prototype.next = function (value) { + if (this.closed) { + throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); + } + if (!this.isStopped) { + var observers = this.observers; + var len = observers.length; + var copy = observers.slice(); + for (var i = 0; i < len; i++) { + copy[i].next(value); + } + } + }; + Subject.prototype.error = function (err) { + if (this.closed) { + throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); + } + this.hasError = true; + this.thrownError = err; + this.isStopped = true; + var observers = this.observers; + var len = observers.length; + var copy = observers.slice(); + for (var i = 0; i < len; i++) { + copy[i].error(err); + } + this.observers.length = 0; + }; + Subject.prototype.complete = function () { + if (this.closed) { + throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); + } + this.isStopped = true; + var observers = this.observers; + var len = observers.length; + var copy = observers.slice(); + for (var i = 0; i < len; i++) { + copy[i].complete(); + } + this.observers.length = 0; + }; + Subject.prototype.unsubscribe = function () { + this.isStopped = true; + this.closed = true; + this.observers = null; + }; + Subject.prototype._trySubscribe = function (subscriber) { + if (this.closed) { + throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); + } + else { + return _super.prototype._trySubscribe.call(this, subscriber); + } + }; + Subject.prototype._subscribe = function (subscriber) { + if (this.closed) { + throw new __WEBPACK_IMPORTED_MODULE_4__util_ObjectUnsubscribedError__["a" /* ObjectUnsubscribedError */](); + } + else if (this.hasError) { + subscriber.error(this.thrownError); + return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; + } + else if (this.isStopped) { + subscriber.complete(); + return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; + } + else { + this.observers.push(subscriber); + return new __WEBPACK_IMPORTED_MODULE_5__SubjectSubscription__["a" /* SubjectSubscription */](this, subscriber); + } + }; + Subject.prototype.asObservable = function () { + var observable = new __WEBPACK_IMPORTED_MODULE_1__Observable__["a" /* Observable */](); + observable.source = this; + return observable; + }; + Subject.create = function (destination, source) { + return new AnonymousSubject(destination, source); + }; + return Subject; +}(__WEBPACK_IMPORTED_MODULE_1__Observable__["a" /* Observable */])); + +var AnonymousSubject = /*@__PURE__*/ (function (_super) { + __WEBPACK_IMPORTED_MODULE_0_tslib__["a" /* __extends */](AnonymousSubject, _super); + function AnonymousSubject(destination, source) { + var _this = _super.call(this) || this; + _this.destination = destination; + _this.source = source; + return _this; + } + AnonymousSubject.prototype.next = function (value) { + var destination = this.destination; + if (destination && destination.next) { + destination.next(value); + } + }; + AnonymousSubject.prototype.error = function (err) { + var destination = this.destination; + if (destination && destination.error) { + this.destination.error(err); + } + }; + AnonymousSubject.prototype.complete = function () { + var destination = this.destination; + if (destination && destination.complete) { + this.destination.complete(); + } + }; + AnonymousSubject.prototype._subscribe = function (subscriber) { + var source = this.source; + if (source) { + return this.source.subscribe(subscriber); + } + else { + return __WEBPACK_IMPORTED_MODULE_3__Subscription__["a" /* Subscription */].EMPTY; + } + }; + return AnonymousSubject; +}(Subject)); + +//# sourceMappingURL=Subject.js.map + + +/***/ }), +/* 37 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.normalizePattern = normalizePattern; + +/** + * Explode and normalize a pattern into its name and range. + */ + +function normalizePattern(pattern) { + let hasVersion = false; + let range = 'latest'; + let name = pattern; + + // if we're a scope then remove the @ and add it back later + let isScoped = false; + if (name[0] === '@') { + isScoped = true; + name = name.slice(1); + } + + // take first part as the name + const parts = name.split('@'); + if (parts.length > 1) { + name = parts.shift(); + range = parts.join('@'); + + if (range) { + hasVersion = true; + } else { + range = '*'; + } + } + + // add back @ scope suffix + if (isScoped) { + name = `@${name}`; + } + + return { name, range, hasVersion }; +} + +/***/ }), +/* 38 */ +/***/ (function(module, exports, __webpack_require__) { + +/* WEBPACK VAR INJECTION */(function(module) {var __WEBPACK_AMD_DEFINE_RESULT__;/** + * @license + * Lodash + * Copyright JS Foundation and other contributors + * Released under MIT license + * Based on Underscore.js 1.8.3 + * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors + */ +;(function() { + + /** Used as a safe reference for `undefined` in pre-ES5 environments. */ + var undefined; + + /** Used as the semantic version number. */ + var VERSION = '4.17.10'; + + /** Used as the size to enable large array optimizations. */ + var LARGE_ARRAY_SIZE = 200; + + /** Error message constants. */ + var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.', + FUNC_ERROR_TEXT = 'Expected a function'; + + /** Used to stand-in for `undefined` hash values. */ + var HASH_UNDEFINED = '__lodash_hash_undefined__'; + + /** Used as the maximum memoize cache size. */ + var MAX_MEMOIZE_SIZE = 500; + + /** Used as the internal argument placeholder. */ + var PLACEHOLDER = '__lodash_placeholder__'; + + /** Used to compose bitmasks for cloning. */ + var CLONE_DEEP_FLAG = 1, + CLONE_FLAT_FLAG = 2, + CLONE_SYMBOLS_FLAG = 4; + + /** Used to compose bitmasks for value comparisons. */ + var COMPARE_PARTIAL_FLAG = 1, + COMPARE_UNORDERED_FLAG = 2; + + /** Used to compose bitmasks for function metadata. */ + var WRAP_BIND_FLAG = 1, + WRAP_BIND_KEY_FLAG = 2, + WRAP_CURRY_BOUND_FLAG = 4, + WRAP_CURRY_FLAG = 8, + WRAP_CURRY_RIGHT_FLAG = 16, + WRAP_PARTIAL_FLAG = 32, + WRAP_PARTIAL_RIGHT_FLAG = 64, + WRAP_ARY_FLAG = 128, + WRAP_REARG_FLAG = 256, + WRAP_FLIP_FLAG = 512; + + /** Used as default options for `_.truncate`. */ + var DEFAULT_TRUNC_LENGTH = 30, + DEFAULT_TRUNC_OMISSION = '...'; + + /** Used to detect hot functions by number of calls within a span of milliseconds. */ + var HOT_COUNT = 800, + HOT_SPAN = 16; + + /** Used to indicate the type of lazy iteratees. */ + var LAZY_FILTER_FLAG = 1, + LAZY_MAP_FLAG = 2, + LAZY_WHILE_FLAG = 3; + + /** Used as references for various `Number` constants. */ + var INFINITY = 1 / 0, + MAX_SAFE_INTEGER = 9007199254740991, + MAX_INTEGER = 1.7976931348623157e+308, + NAN = 0 / 0; + + /** Used as references for the maximum length and index of an array. */ + var MAX_ARRAY_LENGTH = 4294967295, + MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1, + HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1; + + /** Used to associate wrap methods with their bit flags. */ + var wrapFlags = [ + ['ary', WRAP_ARY_FLAG], + ['bind', WRAP_BIND_FLAG], + ['bindKey', WRAP_BIND_KEY_FLAG], + ['curry', WRAP_CURRY_FLAG], + ['curryRight', WRAP_CURRY_RIGHT_FLAG], + ['flip', WRAP_FLIP_FLAG], + ['partial', WRAP_PARTIAL_FLAG], + ['partialRight', WRAP_PARTIAL_RIGHT_FLAG], + ['rearg', WRAP_REARG_FLAG] + ]; + + /** `Object#toString` result references. */ + var argsTag = '[object Arguments]', + arrayTag = '[object Array]', + asyncTag = '[object AsyncFunction]', + boolTag = '[object Boolean]', + dateTag = '[object Date]', + domExcTag = '[object DOMException]', + errorTag = '[object Error]', + funcTag = '[object Function]', + genTag = '[object GeneratorFunction]', + mapTag = '[object Map]', + numberTag = '[object Number]', + nullTag = '[object Null]', + objectTag = '[object Object]', + promiseTag = '[object Promise]', + proxyTag = '[object Proxy]', + regexpTag = '[object RegExp]', + setTag = '[object Set]', + stringTag = '[object String]', + symbolTag = '[object Symbol]', + undefinedTag = '[object Undefined]', + weakMapTag = '[object WeakMap]', + weakSetTag = '[object WeakSet]'; + + var arrayBufferTag = '[object ArrayBuffer]', + dataViewTag = '[object DataView]', + float32Tag = '[object Float32Array]', + float64Tag = '[object Float64Array]', + int8Tag = '[object Int8Array]', + int16Tag = '[object Int16Array]', + int32Tag = '[object Int32Array]', + uint8Tag = '[object Uint8Array]', + uint8ClampedTag = '[object Uint8ClampedArray]', + uint16Tag = '[object Uint16Array]', + uint32Tag = '[object Uint32Array]'; + + /** Used to match empty string literals in compiled template source. */ + var reEmptyStringLeading = /\b__p \+= '';/g, + reEmptyStringMiddle = /\b(__p \+=) '' \+/g, + reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g; + + /** Used to match HTML entities and HTML characters. */ + var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g, + reUnescapedHtml = /[&<>"']/g, + reHasEscapedHtml = RegExp(reEscapedHtml.source), + reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** Used to match template delimiters. */ + var reEscape = /<%-([\s\S]+?)%>/g, + reEvaluate = /<%([\s\S]+?)%>/g, + reInterpolate = /<%=([\s\S]+?)%>/g; + + /** Used to match property names within property paths. */ + var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, + reIsPlainProp = /^\w*$/, + rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; + + /** + * Used to match `RegExp` + * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns). + */ + var reRegExpChar = /[\\^$.*+?()[\]{}|]/g, + reHasRegExpChar = RegExp(reRegExpChar.source); + + /** Used to match leading and trailing whitespace. */ + var reTrim = /^\s+|\s+$/g, + reTrimStart = /^\s+/, + reTrimEnd = /\s+$/; + + /** Used to match wrap detail comments. */ + var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/, + reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, + reSplitDetails = /,? & /; + + /** Used to match words composed of alphanumeric characters. */ + var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; + + /** Used to match backslashes in property paths. */ + var reEscapeChar = /\\(\\)?/g; + + /** + * Used to match + * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components). + */ + var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g; + + /** Used to match `RegExp` flags from their coerced string values. */ + var reFlags = /\w*$/; + + /** Used to detect bad signed hexadecimal string values. */ + var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; + + /** Used to detect binary string values. */ + var reIsBinary = /^0b[01]+$/i; + + /** Used to detect host constructors (Safari). */ + var reIsHostCtor = /^\[object .+?Constructor\]$/; + + /** Used to detect octal string values. */ + var reIsOctal = /^0o[0-7]+$/i; + + /** Used to detect unsigned integer values. */ + var reIsUint = /^(?:0|[1-9]\d*)$/; + + /** Used to match Latin Unicode letters (excluding mathematical operators). */ + var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + + /** Used to ensure capturing order of template delimiters. */ + var reNoMatch = /($^)/; + + /** Used to match unescaped characters in compiled string literals. */ + var reUnescapedString = /['\n\r\u2028\u2029\\]/g; + + /** Used to compose unicode character classes. */ + var rsAstralRange = '\\ud800-\\udfff', + rsComboMarksRange = '\\u0300-\\u036f', + reComboHalfMarksRange = '\\ufe20-\\ufe2f', + rsComboSymbolsRange = '\\u20d0-\\u20ff', + rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, + rsDingbatRange = '\\u2700-\\u27bf', + rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff', + rsMathOpRange = '\\xac\\xb1\\xd7\\xf7', + rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf', + rsPunctuationRange = '\\u2000-\\u206f', + rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000', + rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde', + rsVarRange = '\\ufe0e\\ufe0f', + rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange; + + /** Used to compose unicode capture groups. */ + var rsApos = "['\u2019]", + rsAstral = '[' + rsAstralRange + ']', + rsBreak = '[' + rsBreakRange + ']', + rsCombo = '[' + rsComboRange + ']', + rsDigits = '\\d+', + rsDingbat = '[' + rsDingbatRange + ']', + rsLower = '[' + rsLowerRange + ']', + rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']', + rsFitz = '\\ud83c[\\udffb-\\udfff]', + rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')', + rsNonAstral = '[^' + rsAstralRange + ']', + rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}', + rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]', + rsUpper = '[' + rsUpperRange + ']', + rsZWJ = '\\u200d'; + + /** Used to compose unicode regexes. */ + var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')', + rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')', + rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?', + rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?', + reOptMod = rsModifier + '?', + rsOptVar = '[' + rsVarRange + ']?', + rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*', + rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])', + rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])', + rsSeq = rsOptVar + reOptMod + rsOptJoin, + rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq, + rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')'; + + /** Used to match apostrophes. */ + var reApos = RegExp(rsApos, 'g'); + + /** + * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and + * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols). + */ + var reComboMark = RegExp(rsCombo, 'g'); + + /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */ + var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g'); + + /** Used to match complex or compound words. */ + var reUnicodeWord = RegExp([ + rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')', + rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')', + rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower, + rsUpper + '+' + rsOptContrUpper, + rsOrdUpper, + rsOrdLower, + rsDigits, + rsEmoji + ].join('|'), 'g'); + + /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ + var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); + + /** Used to detect strings that need a more robust regexp to match words. */ + var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; + + /** Used to assign default `context` object properties. */ + var contextProps = [ + 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array', + 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object', + 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array', + 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap', + '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout' + ]; + + /** Used to make template sourceURLs easier to identify. */ + var templateCounter = -1; + + /** Used to identify `toStringTag` values of typed arrays. */ + var typedArrayTags = {}; + typedArrayTags[float32Tag] = typedArrayTags[float64Tag] = + typedArrayTags[int8Tag] = typedArrayTags[int16Tag] = + typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] = + typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] = + typedArrayTags[uint32Tag] = true; + typedArrayTags[argsTag] = typedArrayTags[arrayTag] = + typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] = + typedArrayTags[dataViewTag] = typedArrayTags[dateTag] = + typedArrayTags[errorTag] = typedArrayTags[funcTag] = + typedArrayTags[mapTag] = typedArrayTags[numberTag] = + typedArrayTags[objectTag] = typedArrayTags[regexpTag] = + typedArrayTags[setTag] = typedArrayTags[stringTag] = + typedArrayTags[weakMapTag] = false; + + /** Used to identify `toStringTag` values supported by `_.clone`. */ + var cloneableTags = {}; + cloneableTags[argsTag] = cloneableTags[arrayTag] = + cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] = + cloneableTags[boolTag] = cloneableTags[dateTag] = + cloneableTags[float32Tag] = cloneableTags[float64Tag] = + cloneableTags[int8Tag] = cloneableTags[int16Tag] = + cloneableTags[int32Tag] = cloneableTags[mapTag] = + cloneableTags[numberTag] = cloneableTags[objectTag] = + cloneableTags[regexpTag] = cloneableTags[setTag] = + cloneableTags[stringTag] = cloneableTags[symbolTag] = + cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] = + cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true; + cloneableTags[errorTag] = cloneableTags[funcTag] = + cloneableTags[weakMapTag] = false; + + /** Used to map Latin Unicode letters to basic Latin letters. */ + var deburredLetters = { + // Latin-1 Supplement block. + '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A', + '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a', + '\xc7': 'C', '\xe7': 'c', + '\xd0': 'D', '\xf0': 'd', + '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E', + '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e', + '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I', + '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i', + '\xd1': 'N', '\xf1': 'n', + '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O', + '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o', + '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U', + '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u', + '\xdd': 'Y', '\xfd': 'y', '\xff': 'y', + '\xc6': 'Ae', '\xe6': 'ae', + '\xde': 'Th', '\xfe': 'th', + '\xdf': 'ss', + // Latin Extended-A block. + '\u0100': 'A', '\u0102': 'A', '\u0104': 'A', + '\u0101': 'a', '\u0103': 'a', '\u0105': 'a', + '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C', + '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c', + '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd', + '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E', + '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e', + '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G', + '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g', + '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h', + '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I', + '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i', + '\u0134': 'J', '\u0135': 'j', + '\u0136': 'K', '\u0137': 'k', '\u0138': 'k', + '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L', + '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l', + '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N', + '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n', + '\u014c': 'O', '\u014e': 'O', '\u0150': 'O', + '\u014d': 'o', '\u014f': 'o', '\u0151': 'o', + '\u0154': 'R', '\u0156': 'R', '\u0158': 'R', + '\u0155': 'r', '\u0157': 'r', '\u0159': 'r', + '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S', + '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's', + '\u0162': 'T', '\u0164': 'T', '\u0166': 'T', + '\u0163': 't', '\u0165': 't', '\u0167': 't', + '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U', + '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u', + '\u0174': 'W', '\u0175': 'w', + '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y', + '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z', + '\u017a': 'z', '\u017c': 'z', '\u017e': 'z', + '\u0132': 'IJ', '\u0133': 'ij', + '\u0152': 'Oe', '\u0153': 'oe', + '\u0149': "'n", '\u017f': 's' + }; + + /** Used to map characters to HTML entities. */ + var htmlEscapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''' + }; + + /** Used to map HTML entities to characters. */ + var htmlUnescapes = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + ''': "'" + }; + + /** Used to escape characters for inclusion in compiled string literals. */ + var stringEscapes = { + '\\': '\\', + "'": "'", + '\n': 'n', + '\r': 'r', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + /** Built-in method references without a dependency on `root`. */ + var freeParseFloat = parseFloat, + freeParseInt = parseInt; + + /** Detect free variable `global` from Node.js. */ + var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; + + /** Detect free variable `self`. */ + var freeSelf = typeof self == 'object' && self && self.Object === Object && self; + + /** Used as a reference to the global object. */ + var root = freeGlobal || freeSelf || Function('return this')(); + + /** Detect free variable `exports`. */ + var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; + + /** Detect free variable `module`. */ + var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; + + /** Detect the popular CommonJS extension `module.exports`. */ + var moduleExports = freeModule && freeModule.exports === freeExports; + + /** Detect free variable `process` from Node.js. */ + var freeProcess = moduleExports && freeGlobal.process; + + /** Used to access faster Node.js helpers. */ + var nodeUtil = (function() { + try { + // Use `util.types` for Node.js 10+. + var types = freeModule && freeModule.require && freeModule.require('util').types; + + if (types) { + return types; + } + + // Legacy `process.binding('util')` for Node.js < 10. + return freeProcess && freeProcess.binding && freeProcess.binding('util'); + } catch (e) {} + }()); + + /* Node.js helper references. */ + var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer, + nodeIsDate = nodeUtil && nodeUtil.isDate, + nodeIsMap = nodeUtil && nodeUtil.isMap, + nodeIsRegExp = nodeUtil && nodeUtil.isRegExp, + nodeIsSet = nodeUtil && nodeUtil.isSet, + nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; + + /*--------------------------------------------------------------------------*/ + + /** + * A faster alternative to `Function#apply`, this function invokes `func` + * with the `this` binding of `thisArg` and the arguments of `args`. + * + * @private + * @param {Function} func The function to invoke. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} args The arguments to invoke `func` with. + * @returns {*} Returns the result of `func`. + */ + function apply(func, thisArg, args) { + switch (args.length) { + case 0: return func.call(thisArg); + case 1: return func.call(thisArg, args[0]); + case 2: return func.call(thisArg, args[0], args[1]); + case 3: return func.call(thisArg, args[0], args[1], args[2]); + } + return func.apply(thisArg, args); + } + + /** + * A specialized version of `baseAggregator` for arrays. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function arrayAggregator(array, setter, iteratee, accumulator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + var value = array[index]; + setter(accumulator, value, iteratee(value), array); + } + return accumulator; + } + + /** + * A specialized version of `_.forEach` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEach(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (iteratee(array[index], index, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.forEachRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns `array`. + */ + function arrayEachRight(array, iteratee) { + var length = array == null ? 0 : array.length; + + while (length--) { + if (iteratee(array[length], length, array) === false) { + break; + } + } + return array; + } + + /** + * A specialized version of `_.every` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + */ + function arrayEvery(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (!predicate(array[index], index, array)) { + return false; + } + } + return true; + } + + /** + * A specialized version of `_.filter` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function arrayFilter(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * A specialized version of `_.includes` for arrays without support for + * specifying an index to search from. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludes(array, value) { + var length = array == null ? 0 : array.length; + return !!length && baseIndexOf(array, value, 0) > -1; + } + + /** + * This function is like `arrayIncludes` except that it accepts a comparator. + * + * @private + * @param {Array} [array] The array to inspect. + * @param {*} target The value to search for. + * @param {Function} comparator The comparator invoked per element. + * @returns {boolean} Returns `true` if `target` is found, else `false`. + */ + function arrayIncludesWith(array, value, comparator) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (comparator(value, array[index])) { + return true; + } + } + return false; + } + + /** + * A specialized version of `_.map` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function arrayMap(array, iteratee) { + var index = -1, + length = array == null ? 0 : array.length, + result = Array(length); + + while (++index < length) { + result[index] = iteratee(array[index], index, array); + } + return result; + } + + /** + * Appends the elements of `values` to `array`. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to append. + * @returns {Array} Returns `array`. + */ + function arrayPush(array, values) { + var index = -1, + length = values.length, + offset = array.length; + + while (++index < length) { + array[offset + index] = values[index]; + } + return array; + } + + /** + * A specialized version of `_.reduce` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the first element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduce(array, iteratee, accumulator, initAccum) { + var index = -1, + length = array == null ? 0 : array.length; + + if (initAccum && length) { + accumulator = array[++index]; + } + while (++index < length) { + accumulator = iteratee(accumulator, array[index], index, array); + } + return accumulator; + } + + /** + * A specialized version of `_.reduceRight` for arrays without support for + * iteratee shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @param {boolean} [initAccum] Specify using the last element of `array` as + * the initial value. + * @returns {*} Returns the accumulated value. + */ + function arrayReduceRight(array, iteratee, accumulator, initAccum) { + var length = array == null ? 0 : array.length; + if (initAccum && length) { + accumulator = array[--length]; + } + while (length--) { + accumulator = iteratee(accumulator, array[length], length, array); + } + return accumulator; + } + + /** + * A specialized version of `_.some` for arrays without support for iteratee + * shorthands. + * + * @private + * @param {Array} [array] The array to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function arraySome(array, predicate) { + var index = -1, + length = array == null ? 0 : array.length; + + while (++index < length) { + if (predicate(array[index], index, array)) { + return true; + } + } + return false; + } + + /** + * Gets the size of an ASCII `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + var asciiSize = baseProperty('length'); + + /** + * Converts an ASCII `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function asciiToArray(string) { + return string.split(''); + } + + /** + * Splits an ASCII `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function asciiWords(string) { + return string.match(reAsciiWord) || []; + } + + /** + * The base implementation of methods like `_.findKey` and `_.findLastKey`, + * without support for iteratee shorthands, which iterates over `collection` + * using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the found element or its key, else `undefined`. + */ + function baseFindKey(collection, predicate, eachFunc) { + var result; + eachFunc(collection, function(value, key, collection) { + if (predicate(value, key, collection)) { + result = key; + return false; + } + }); + return result; + } + + /** + * The base implementation of `_.findIndex` and `_.findLastIndex` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} predicate The function invoked per iteration. + * @param {number} fromIndex The index to search from. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseFindIndex(array, predicate, fromIndex, fromRight) { + var length = array.length, + index = fromIndex + (fromRight ? 1 : -1); + + while ((fromRight ? index-- : ++index < length)) { + if (predicate(array[index], index, array)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.indexOf` without `fromIndex` bounds checks. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOf(array, value, fromIndex) { + return value === value + ? strictIndexOf(array, value, fromIndex) + : baseFindIndex(array, baseIsNaN, fromIndex); + } + + /** + * This function is like `baseIndexOf` except that it accepts a comparator. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @param {Function} comparator The comparator invoked per element. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function baseIndexOfWith(array, value, fromIndex, comparator) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (comparator(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * The base implementation of `_.isNaN` without support for number objects. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + */ + function baseIsNaN(value) { + return value !== value; + } + + /** + * The base implementation of `_.mean` and `_.meanBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the mean. + */ + function baseMean(array, iteratee) { + var length = array == null ? 0 : array.length; + return length ? (baseSum(array, iteratee) / length) : NAN; + } + + /** + * The base implementation of `_.property` without support for deep paths. + * + * @private + * @param {string} key The key of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function baseProperty(key) { + return function(object) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.propertyOf` without support for deep paths. + * + * @private + * @param {Object} object The object to query. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyOf(object) { + return function(key) { + return object == null ? undefined : object[key]; + }; + } + + /** + * The base implementation of `_.reduce` and `_.reduceRight`, without support + * for iteratee shorthands, which iterates over `collection` using `eachFunc`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {*} accumulator The initial value. + * @param {boolean} initAccum Specify using the first or last element of + * `collection` as the initial value. + * @param {Function} eachFunc The function to iterate over `collection`. + * @returns {*} Returns the accumulated value. + */ + function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) { + eachFunc(collection, function(value, index, collection) { + accumulator = initAccum + ? (initAccum = false, value) + : iteratee(accumulator, value, index, collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.sortBy` which uses `comparer` to define the + * sort order of `array` and replaces criteria objects with their corresponding + * values. + * + * @private + * @param {Array} array The array to sort. + * @param {Function} comparer The function to define sort order. + * @returns {Array} Returns `array`. + */ + function baseSortBy(array, comparer) { + var length = array.length; + + array.sort(comparer); + while (length--) { + array[length] = array[length].value; + } + return array; + } + + /** + * The base implementation of `_.sum` and `_.sumBy` without support for + * iteratee shorthands. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {number} Returns the sum. + */ + function baseSum(array, iteratee) { + var result, + index = -1, + length = array.length; + + while (++index < length) { + var current = iteratee(array[index]); + if (current !== undefined) { + result = result === undefined ? current : (result + current); + } + } + return result; + } + + /** + * The base implementation of `_.times` without support for iteratee shorthands + * or max array length checks. + * + * @private + * @param {number} n The number of times to invoke `iteratee`. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the array of results. + */ + function baseTimes(n, iteratee) { + var index = -1, + result = Array(n); + + while (++index < n) { + result[index] = iteratee(index); + } + return result; + } + + /** + * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array + * of key-value pairs for `object` corresponding to the property names of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the key-value pairs. + */ + function baseToPairs(object, props) { + return arrayMap(props, function(key) { + return [key, object[key]]; + }); + } + + /** + * The base implementation of `_.unary` without support for storing metadata. + * + * @private + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + */ + function baseUnary(func) { + return function(value) { + return func(value); + }; + } + + /** + * The base implementation of `_.values` and `_.valuesIn` which creates an + * array of `object` property values corresponding to the property names + * of `props`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} props The property names to get values for. + * @returns {Object} Returns the array of property values. + */ + function baseValues(object, props) { + return arrayMap(props, function(key) { + return object[key]; + }); + } + + /** + * Checks if a `cache` value for `key` exists. + * + * @private + * @param {Object} cache The cache to query. + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function cacheHas(cache, key) { + return cache.has(key); + } + + /** + * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the first unmatched string symbol. + */ + function charsStartIndex(strSymbols, chrSymbols) { + var index = -1, + length = strSymbols.length; + + while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol + * that is not found in the character symbols. + * + * @private + * @param {Array} strSymbols The string symbols to inspect. + * @param {Array} chrSymbols The character symbols to find. + * @returns {number} Returns the index of the last unmatched string symbol. + */ + function charsEndIndex(strSymbols, chrSymbols) { + var index = strSymbols.length; + + while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {} + return index; + } + + /** + * Gets the number of `placeholder` occurrences in `array`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} placeholder The placeholder to search for. + * @returns {number} Returns the placeholder count. + */ + function countHolders(array, placeholder) { + var length = array.length, + result = 0; + + while (length--) { + if (array[length] === placeholder) { + ++result; + } + } + return result; + } + + /** + * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A + * letters to basic Latin letters. + * + * @private + * @param {string} letter The matched letter to deburr. + * @returns {string} Returns the deburred letter. + */ + var deburrLetter = basePropertyOf(deburredLetters); + + /** + * Used by `_.escape` to convert characters to HTML entities. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + var escapeHtmlChar = basePropertyOf(htmlEscapes); + + /** + * Used by `_.template` to escape characters for inclusion in compiled string literals. + * + * @private + * @param {string} chr The matched character to escape. + * @returns {string} Returns the escaped character. + */ + function escapeStringChar(chr) { + return '\\' + stringEscapes[chr]; + } + + /** + * Gets the value at `key` of `object`. + * + * @private + * @param {Object} [object] The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function getValue(object, key) { + return object == null ? undefined : object[key]; + } + + /** + * Checks if `string` contains Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a symbol is found, else `false`. + */ + function hasUnicode(string) { + return reHasUnicode.test(string); + } + + /** + * Checks if `string` contains a word composed of Unicode symbols. + * + * @private + * @param {string} string The string to inspect. + * @returns {boolean} Returns `true` if a word is found, else `false`. + */ + function hasUnicodeWord(string) { + return reHasUnicodeWord.test(string); + } + + /** + * Converts `iterator` to an array. + * + * @private + * @param {Object} iterator The iterator to convert. + * @returns {Array} Returns the converted array. + */ + function iteratorToArray(iterator) { + var data, + result = []; + + while (!(data = iterator.next()).done) { + result.push(data.value); + } + return result; + } + + /** + * Converts `map` to its key-value pairs. + * + * @private + * @param {Object} map The map to convert. + * @returns {Array} Returns the key-value pairs. + */ + function mapToArray(map) { + var index = -1, + result = Array(map.size); + + map.forEach(function(value, key) { + result[++index] = [key, value]; + }); + return result; + } + + /** + * Creates a unary function that invokes `func` with its argument transformed. + * + * @private + * @param {Function} func The function to wrap. + * @param {Function} transform The argument transform. + * @returns {Function} Returns the new function. + */ + function overArg(func, transform) { + return function(arg) { + return func(transform(arg)); + }; + } + + /** + * Replaces all `placeholder` elements in `array` with an internal placeholder + * and returns an array of their indexes. + * + * @private + * @param {Array} array The array to modify. + * @param {*} placeholder The placeholder to replace. + * @returns {Array} Returns the new array of placeholder indexes. + */ + function replaceHolders(array, placeholder) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value === placeholder || value === PLACEHOLDER) { + array[index] = PLACEHOLDER; + result[resIndex++] = index; + } + } + return result; + } + + /** + * Gets the value at `key`, unless `key` is "__proto__". + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the property to get. + * @returns {*} Returns the property value. + */ + function safeGet(object, key) { + return key == '__proto__' + ? undefined + : object[key]; + } + + /** + * Converts `set` to an array of its values. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the values. + */ + function setToArray(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = value; + }); + return result; + } + + /** + * Converts `set` to its value-value pairs. + * + * @private + * @param {Object} set The set to convert. + * @returns {Array} Returns the value-value pairs. + */ + function setToPairs(set) { + var index = -1, + result = Array(set.size); + + set.forEach(function(value) { + result[++index] = [value, value]; + }); + return result; + } + + /** + * A specialized version of `_.indexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictIndexOf(array, value, fromIndex) { + var index = fromIndex - 1, + length = array.length; + + while (++index < length) { + if (array[index] === value) { + return index; + } + } + return -1; + } + + /** + * A specialized version of `_.lastIndexOf` which performs strict equality + * comparisons of values, i.e. `===`. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} fromIndex The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function strictLastIndexOf(array, value, fromIndex) { + var index = fromIndex + 1; + while (index--) { + if (array[index] === value) { + return index; + } + } + return index; + } + + /** + * Gets the number of symbols in `string`. + * + * @private + * @param {string} string The string to inspect. + * @returns {number} Returns the string size. + */ + function stringSize(string) { + return hasUnicode(string) + ? unicodeSize(string) + : asciiSize(string); + } + + /** + * Converts `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function stringToArray(string) { + return hasUnicode(string) + ? unicodeToArray(string) + : asciiToArray(string); + } + + /** + * Used by `_.unescape` to convert HTML entities to characters. + * + * @private + * @param {string} chr The matched character to unescape. + * @returns {string} Returns the unescaped character. + */ + var unescapeHtmlChar = basePropertyOf(htmlUnescapes); + + /** + * Gets the size of a Unicode `string`. + * + * @private + * @param {string} string The string inspect. + * @returns {number} Returns the string size. + */ + function unicodeSize(string) { + var result = reUnicode.lastIndex = 0; + while (reUnicode.test(string)) { + ++result; + } + return result; + } + + /** + * Converts a Unicode `string` to an array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the converted array. + */ + function unicodeToArray(string) { + return string.match(reUnicode) || []; + } + + /** + * Splits a Unicode `string` into an array of its words. + * + * @private + * @param {string} The string to inspect. + * @returns {Array} Returns the words of `string`. + */ + function unicodeWords(string) { + return string.match(reUnicodeWord) || []; + } + + /*--------------------------------------------------------------------------*/ + + /** + * Create a new pristine `lodash` function using the `context` object. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Util + * @param {Object} [context=root] The context object. + * @returns {Function} Returns a new `lodash` function. + * @example + * + * _.mixin({ 'foo': _.constant('foo') }); + * + * var lodash = _.runInContext(); + * lodash.mixin({ 'bar': lodash.constant('bar') }); + * + * _.isFunction(_.foo); + * // => true + * _.isFunction(_.bar); + * // => false + * + * lodash.isFunction(lodash.foo); + * // => false + * lodash.isFunction(lodash.bar); + * // => true + * + * // Create a suped-up `defer` in Node.js. + * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer; + */ + var runInContext = (function runInContext(context) { + context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps)); + + /** Built-in constructor references. */ + var Array = context.Array, + Date = context.Date, + Error = context.Error, + Function = context.Function, + Math = context.Math, + Object = context.Object, + RegExp = context.RegExp, + String = context.String, + TypeError = context.TypeError; + + /** Used for built-in method references. */ + var arrayProto = Array.prototype, + funcProto = Function.prototype, + objectProto = Object.prototype; + + /** Used to detect overreaching core-js shims. */ + var coreJsData = context['__core-js_shared__']; + + /** Used to resolve the decompiled source of functions. */ + var funcToString = funcProto.toString; + + /** Used to check objects for own properties. */ + var hasOwnProperty = objectProto.hasOwnProperty; + + /** Used to generate unique IDs. */ + var idCounter = 0; + + /** Used to detect methods masquerading as native. */ + var maskSrcKey = (function() { + var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); + return uid ? ('Symbol(src)_1.' + uid) : ''; + }()); + + /** + * Used to resolve the + * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) + * of values. + */ + var nativeObjectToString = objectProto.toString; + + /** Used to infer the `Object` constructor. */ + var objectCtorString = funcToString.call(Object); + + /** Used to restore the original `_` reference in `_.noConflict`. */ + var oldDash = root._; + + /** Used to detect if a method is native. */ + var reIsNative = RegExp('^' + + funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&') + .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$' + ); + + /** Built-in value references. */ + var Buffer = moduleExports ? context.Buffer : undefined, + Symbol = context.Symbol, + Uint8Array = context.Uint8Array, + allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined, + getPrototype = overArg(Object.getPrototypeOf, Object), + objectCreate = Object.create, + propertyIsEnumerable = objectProto.propertyIsEnumerable, + splice = arrayProto.splice, + spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined, + symIterator = Symbol ? Symbol.iterator : undefined, + symToStringTag = Symbol ? Symbol.toStringTag : undefined; + + var defineProperty = (function() { + try { + var func = getNative(Object, 'defineProperty'); + func({}, '', {}); + return func; + } catch (e) {} + }()); + + /** Mocked built-ins. */ + var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout, + ctxNow = Date && Date.now !== root.Date.now && Date.now, + ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout; + + /* Built-in method references for those with the same name as other `lodash` methods. */ + var nativeCeil = Math.ceil, + nativeFloor = Math.floor, + nativeGetSymbols = Object.getOwnPropertySymbols, + nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined, + nativeIsFinite = context.isFinite, + nativeJoin = arrayProto.join, + nativeKeys = overArg(Object.keys, Object), + nativeMax = Math.max, + nativeMin = Math.min, + nativeNow = Date.now, + nativeParseInt = context.parseInt, + nativeRandom = Math.random, + nativeReverse = arrayProto.reverse; + + /* Built-in method references that are verified to be native. */ + var DataView = getNative(context, 'DataView'), + Map = getNative(context, 'Map'), + Promise = getNative(context, 'Promise'), + Set = getNative(context, 'Set'), + WeakMap = getNative(context, 'WeakMap'), + nativeCreate = getNative(Object, 'create'); + + /** Used to store function metadata. */ + var metaMap = WeakMap && new WeakMap; + + /** Used to lookup unminified function names. */ + var realNames = {}; + + /** Used to detect maps, sets, and weakmaps. */ + var dataViewCtorString = toSource(DataView), + mapCtorString = toSource(Map), + promiseCtorString = toSource(Promise), + setCtorString = toSource(Set), + weakMapCtorString = toSource(WeakMap); + + /** Used to convert symbols to primitives and strings. */ + var symbolProto = Symbol ? Symbol.prototype : undefined, + symbolValueOf = symbolProto ? symbolProto.valueOf : undefined, + symbolToString = symbolProto ? symbolProto.toString : undefined; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` object which wraps `value` to enable implicit method + * chain sequences. Methods that operate on and return arrays, collections, + * and functions can be chained together. Methods that retrieve a single value + * or may return a primitive value will automatically end the chain sequence + * and return the unwrapped value. Otherwise, the value must be unwrapped + * with `_#value`. + * + * Explicit chain sequences, which must be unwrapped with `_#value`, may be + * enabled using `_.chain`. + * + * The execution of chained methods is lazy, that is, it's deferred until + * `_#value` is implicitly or explicitly called. + * + * Lazy evaluation allows several methods to support shortcut fusion. + * Shortcut fusion is an optimization to merge iteratee calls; this avoids + * the creation of intermediate arrays and can greatly reduce the number of + * iteratee executions. Sections of a chain sequence qualify for shortcut + * fusion if the section is applied to an array and iteratees accept only + * one argument. The heuristic for whether a section qualifies for shortcut + * fusion is subject to change. + * + * Chaining is supported in custom builds as long as the `_#value` method is + * directly or indirectly included in the build. + * + * In addition to lodash methods, wrappers have `Array` and `String` methods. + * + * The wrapper `Array` methods are: + * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift` + * + * The wrapper `String` methods are: + * `replace` and `split` + * + * The wrapper methods that support shortcut fusion are: + * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`, + * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`, + * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray` + * + * The chainable wrapper methods are: + * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`, + * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`, + * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`, + * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`, + * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`, + * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`, + * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`, + * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`, + * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`, + * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`, + * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`, + * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`, + * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`, + * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`, + * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`, + * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`, + * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`, + * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`, + * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`, + * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`, + * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`, + * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`, + * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`, + * `zipObject`, `zipObjectDeep`, and `zipWith` + * + * The wrapper methods that are **not** chainable by default are: + * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`, + * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`, + * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`, + * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`, + * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`, + * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`, + * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`, + * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`, + * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`, + * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`, + * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`, + * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`, + * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`, + * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`, + * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`, + * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`, + * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`, + * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`, + * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`, + * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`, + * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`, + * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`, + * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`, + * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`, + * `upperFirst`, `value`, and `words` + * + * @name _ + * @constructor + * @category Seq + * @param {*} value The value to wrap in a `lodash` instance. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2, 3]); + * + * // Returns an unwrapped value. + * wrapped.reduce(_.add); + * // => 6 + * + * // Returns a wrapped value. + * var squares = wrapped.map(square); + * + * _.isArray(squares); + * // => false + * + * _.isArray(squares.value()); + * // => true + */ + function lodash(value) { + if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) { + if (value instanceof LodashWrapper) { + return value; + } + if (hasOwnProperty.call(value, '__wrapped__')) { + return wrapperClone(value); + } + } + return new LodashWrapper(value); + } + + /** + * The base implementation of `_.create` without support for assigning + * properties to the created object. + * + * @private + * @param {Object} proto The object to inherit from. + * @returns {Object} Returns the new object. + */ + var baseCreate = (function() { + function object() {} + return function(proto) { + if (!isObject(proto)) { + return {}; + } + if (objectCreate) { + return objectCreate(proto); + } + object.prototype = proto; + var result = new object; + object.prototype = undefined; + return result; + }; + }()); + + /** + * The function whose prototype chain sequence wrappers inherit from. + * + * @private + */ + function baseLodash() { + // No operation performed. + } + + /** + * The base constructor for creating `lodash` wrapper objects. + * + * @private + * @param {*} value The value to wrap. + * @param {boolean} [chainAll] Enable explicit method chain sequences. + */ + function LodashWrapper(value, chainAll) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__chain__ = !!chainAll; + this.__index__ = 0; + this.__values__ = undefined; + } + + /** + * By default, the template delimiters used by lodash are like those in + * embedded Ruby (ERB) as well as ES2015 template strings. Change the + * following template settings to use alternative delimiters. + * + * @static + * @memberOf _ + * @type {Object} + */ + lodash.templateSettings = { + + /** + * Used to detect `data` property values to be HTML-escaped. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'escape': reEscape, + + /** + * Used to detect code to be evaluated. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'evaluate': reEvaluate, + + /** + * Used to detect `data` property values to inject. + * + * @memberOf _.templateSettings + * @type {RegExp} + */ + 'interpolate': reInterpolate, + + /** + * Used to reference the data object in the template text. + * + * @memberOf _.templateSettings + * @type {string} + */ + 'variable': '', + + /** + * Used to import variables into the compiled template. + * + * @memberOf _.templateSettings + * @type {Object} + */ + 'imports': { + + /** + * A reference to the `lodash` function. + * + * @memberOf _.templateSettings.imports + * @type {Function} + */ + '_': lodash + } + }; + + // Ensure wrappers are instances of `baseLodash`. + lodash.prototype = baseLodash.prototype; + lodash.prototype.constructor = lodash; + + LodashWrapper.prototype = baseCreate(baseLodash.prototype); + LodashWrapper.prototype.constructor = LodashWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. + * + * @private + * @constructor + * @param {*} value The value to wrap. + */ + function LazyWrapper(value) { + this.__wrapped__ = value; + this.__actions__ = []; + this.__dir__ = 1; + this.__filtered__ = false; + this.__iteratees__ = []; + this.__takeCount__ = MAX_ARRAY_LENGTH; + this.__views__ = []; + } + + /** + * Creates a clone of the lazy wrapper object. + * + * @private + * @name clone + * @memberOf LazyWrapper + * @returns {Object} Returns the cloned `LazyWrapper` object. + */ + function lazyClone() { + var result = new LazyWrapper(this.__wrapped__); + result.__actions__ = copyArray(this.__actions__); + result.__dir__ = this.__dir__; + result.__filtered__ = this.__filtered__; + result.__iteratees__ = copyArray(this.__iteratees__); + result.__takeCount__ = this.__takeCount__; + result.__views__ = copyArray(this.__views__); + return result; + } + + /** + * Reverses the direction of lazy iteration. + * + * @private + * @name reverse + * @memberOf LazyWrapper + * @returns {Object} Returns the new reversed `LazyWrapper` object. + */ + function lazyReverse() { + if (this.__filtered__) { + var result = new LazyWrapper(this); + result.__dir__ = -1; + result.__filtered__ = true; + } else { + result = this.clone(); + result.__dir__ *= -1; + } + return result; + } + + /** + * Extracts the unwrapped value from its lazy wrapper. + * + * @private + * @name value + * @memberOf LazyWrapper + * @returns {*} Returns the unwrapped value. + */ + function lazyValue() { + var array = this.__wrapped__.value(), + dir = this.__dir__, + isArr = isArray(array), + isRight = dir < 0, + arrLength = isArr ? array.length : 0, + view = getView(0, arrLength, this.__views__), + start = view.start, + end = view.end, + length = end - start, + index = isRight ? end : (start - 1), + iteratees = this.__iteratees__, + iterLength = iteratees.length, + resIndex = 0, + takeCount = nativeMin(length, this.__takeCount__); + + if (!isArr || (!isRight && arrLength == length && takeCount == length)) { + return baseWrapperValue(array, this.__actions__); + } + var result = []; + + outer: + while (length-- && resIndex < takeCount) { + index += dir; + + var iterIndex = -1, + value = array[index]; + + while (++iterIndex < iterLength) { + var data = iteratees[iterIndex], + iteratee = data.iteratee, + type = data.type, + computed = iteratee(value); + + if (type == LAZY_MAP_FLAG) { + value = computed; + } else if (!computed) { + if (type == LAZY_FILTER_FLAG) { + continue outer; + } else { + break outer; + } + } + } + result[resIndex++] = value; + } + return result; + } + + // Ensure `LazyWrapper` is an instance of `baseLodash`. + LazyWrapper.prototype = baseCreate(baseLodash.prototype); + LazyWrapper.prototype.constructor = LazyWrapper; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a hash object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Hash(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the hash. + * + * @private + * @name clear + * @memberOf Hash + */ + function hashClear() { + this.__data__ = nativeCreate ? nativeCreate(null) : {}; + this.size = 0; + } + + /** + * Removes `key` and its value from the hash. + * + * @private + * @name delete + * @memberOf Hash + * @param {Object} hash The hash to modify. + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function hashDelete(key) { + var result = this.has(key) && delete this.__data__[key]; + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the hash value for `key`. + * + * @private + * @name get + * @memberOf Hash + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function hashGet(key) { + var data = this.__data__; + if (nativeCreate) { + var result = data[key]; + return result === HASH_UNDEFINED ? undefined : result; + } + return hasOwnProperty.call(data, key) ? data[key] : undefined; + } + + /** + * Checks if a hash value for `key` exists. + * + * @private + * @name has + * @memberOf Hash + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function hashHas(key) { + var data = this.__data__; + return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key); + } + + /** + * Sets the hash `key` to `value`. + * + * @private + * @name set + * @memberOf Hash + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the hash instance. + */ + function hashSet(key, value) { + var data = this.__data__; + this.size += this.has(key) ? 0 : 1; + data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value; + return this; + } + + // Add methods to `Hash`. + Hash.prototype.clear = hashClear; + Hash.prototype['delete'] = hashDelete; + Hash.prototype.get = hashGet; + Hash.prototype.has = hashHas; + Hash.prototype.set = hashSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an list cache object. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function ListCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the list cache. + * + * @private + * @name clear + * @memberOf ListCache + */ + function listCacheClear() { + this.__data__ = []; + this.size = 0; + } + + /** + * Removes `key` and its value from the list cache. + * + * @private + * @name delete + * @memberOf ListCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function listCacheDelete(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + return false; + } + var lastIndex = data.length - 1; + if (index == lastIndex) { + data.pop(); + } else { + splice.call(data, index, 1); + } + --this.size; + return true; + } + + /** + * Gets the list cache value for `key`. + * + * @private + * @name get + * @memberOf ListCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function listCacheGet(key) { + var data = this.__data__, + index = assocIndexOf(data, key); + + return index < 0 ? undefined : data[index][1]; + } + + /** + * Checks if a list cache value for `key` exists. + * + * @private + * @name has + * @memberOf ListCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function listCacheHas(key) { + return assocIndexOf(this.__data__, key) > -1; + } + + /** + * Sets the list cache `key` to `value`. + * + * @private + * @name set + * @memberOf ListCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the list cache instance. + */ + function listCacheSet(key, value) { + var data = this.__data__, + index = assocIndexOf(data, key); + + if (index < 0) { + ++this.size; + data.push([key, value]); + } else { + data[index][1] = value; + } + return this; + } + + // Add methods to `ListCache`. + ListCache.prototype.clear = listCacheClear; + ListCache.prototype['delete'] = listCacheDelete; + ListCache.prototype.get = listCacheGet; + ListCache.prototype.has = listCacheHas; + ListCache.prototype.set = listCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a map cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function MapCache(entries) { + var index = -1, + length = entries == null ? 0 : entries.length; + + this.clear(); + while (++index < length) { + var entry = entries[index]; + this.set(entry[0], entry[1]); + } + } + + /** + * Removes all key-value entries from the map. + * + * @private + * @name clear + * @memberOf MapCache + */ + function mapCacheClear() { + this.size = 0; + this.__data__ = { + 'hash': new Hash, + 'map': new (Map || ListCache), + 'string': new Hash + }; + } + + /** + * Removes `key` and its value from the map. + * + * @private + * @name delete + * @memberOf MapCache + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function mapCacheDelete(key) { + var result = getMapData(this, key)['delete'](key); + this.size -= result ? 1 : 0; + return result; + } + + /** + * Gets the map value for `key`. + * + * @private + * @name get + * @memberOf MapCache + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function mapCacheGet(key) { + return getMapData(this, key).get(key); + } + + /** + * Checks if a map value for `key` exists. + * + * @private + * @name has + * @memberOf MapCache + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function mapCacheHas(key) { + return getMapData(this, key).has(key); + } + + /** + * Sets the map `key` to `value`. + * + * @private + * @name set + * @memberOf MapCache + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the map cache instance. + */ + function mapCacheSet(key, value) { + var data = getMapData(this, key), + size = data.size; + + data.set(key, value); + this.size += data.size == size ? 0 : 1; + return this; + } + + // Add methods to `MapCache`. + MapCache.prototype.clear = mapCacheClear; + MapCache.prototype['delete'] = mapCacheDelete; + MapCache.prototype.get = mapCacheGet; + MapCache.prototype.has = mapCacheHas; + MapCache.prototype.set = mapCacheSet; + + /*------------------------------------------------------------------------*/ + + /** + * + * Creates an array cache object to store unique values. + * + * @private + * @constructor + * @param {Array} [values] The values to cache. + */ + function SetCache(values) { + var index = -1, + length = values == null ? 0 : values.length; + + this.__data__ = new MapCache; + while (++index < length) { + this.add(values[index]); + } + } + + /** + * Adds `value` to the array cache. + * + * @private + * @name add + * @memberOf SetCache + * @alias push + * @param {*} value The value to cache. + * @returns {Object} Returns the cache instance. + */ + function setCacheAdd(value) { + this.__data__.set(value, HASH_UNDEFINED); + return this; + } + + /** + * Checks if `value` is in the array cache. + * + * @private + * @name has + * @memberOf SetCache + * @param {*} value The value to search for. + * @returns {number} Returns `true` if `value` is found, else `false`. + */ + function setCacheHas(value) { + return this.__data__.has(value); + } + + // Add methods to `SetCache`. + SetCache.prototype.add = SetCache.prototype.push = setCacheAdd; + SetCache.prototype.has = setCacheHas; + + /*------------------------------------------------------------------------*/ + + /** + * Creates a stack cache object to store key-value pairs. + * + * @private + * @constructor + * @param {Array} [entries] The key-value pairs to cache. + */ + function Stack(entries) { + var data = this.__data__ = new ListCache(entries); + this.size = data.size; + } + + /** + * Removes all key-value entries from the stack. + * + * @private + * @name clear + * @memberOf Stack + */ + function stackClear() { + this.__data__ = new ListCache; + this.size = 0; + } + + /** + * Removes `key` and its value from the stack. + * + * @private + * @name delete + * @memberOf Stack + * @param {string} key The key of the value to remove. + * @returns {boolean} Returns `true` if the entry was removed, else `false`. + */ + function stackDelete(key) { + var data = this.__data__, + result = data['delete'](key); + + this.size = data.size; + return result; + } + + /** + * Gets the stack value for `key`. + * + * @private + * @name get + * @memberOf Stack + * @param {string} key The key of the value to get. + * @returns {*} Returns the entry value. + */ + function stackGet(key) { + return this.__data__.get(key); + } + + /** + * Checks if a stack value for `key` exists. + * + * @private + * @name has + * @memberOf Stack + * @param {string} key The key of the entry to check. + * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`. + */ + function stackHas(key) { + return this.__data__.has(key); + } + + /** + * Sets the stack `key` to `value`. + * + * @private + * @name set + * @memberOf Stack + * @param {string} key The key of the value to set. + * @param {*} value The value to set. + * @returns {Object} Returns the stack cache instance. + */ + function stackSet(key, value) { + var data = this.__data__; + if (data instanceof ListCache) { + var pairs = data.__data__; + if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) { + pairs.push([key, value]); + this.size = ++data.size; + return this; + } + data = this.__data__ = new MapCache(pairs); + } + data.set(key, value); + this.size = data.size; + return this; + } + + // Add methods to `Stack`. + Stack.prototype.clear = stackClear; + Stack.prototype['delete'] = stackDelete; + Stack.prototype.get = stackGet; + Stack.prototype.has = stackHas; + Stack.prototype.set = stackSet; + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of the enumerable property names of the array-like `value`. + * + * @private + * @param {*} value The value to query. + * @param {boolean} inherited Specify returning inherited property names. + * @returns {Array} Returns the array of property names. + */ + function arrayLikeKeys(value, inherited) { + var isArr = isArray(value), + isArg = !isArr && isArguments(value), + isBuff = !isArr && !isArg && isBuffer(value), + isType = !isArr && !isArg && !isBuff && isTypedArray(value), + skipIndexes = isArr || isArg || isBuff || isType, + result = skipIndexes ? baseTimes(value.length, String) : [], + length = result.length; + + for (var key in value) { + if ((inherited || hasOwnProperty.call(value, key)) && + !(skipIndexes && ( + // Safari 9 has enumerable `arguments.length` in strict mode. + key == 'length' || + // Node.js 0.10 has enumerable non-index properties on buffers. + (isBuff && (key == 'offset' || key == 'parent')) || + // PhantomJS 2 has enumerable non-index properties on typed arrays. + (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) || + // Skip index properties. + isIndex(key, length) + ))) { + result.push(key); + } + } + return result; + } + + /** + * A specialized version of `_.sample` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @returns {*} Returns the random element. + */ + function arraySample(array) { + var length = array.length; + return length ? array[baseRandom(0, length - 1)] : undefined; + } + + /** + * A specialized version of `_.sampleSize` for arrays. + * + * @private + * @param {Array} array The array to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function arraySampleSize(array, n) { + return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length)); + } + + /** + * A specialized version of `_.shuffle` for arrays. + * + * @private + * @param {Array} array The array to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function arrayShuffle(array) { + return shuffleSelf(copyArray(array)); + } + + /** + * This function is like `assignValue` except that it doesn't assign + * `undefined` values. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignMergeValue(object, key, value) { + if ((value !== undefined && !eq(object[key], value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Assigns `value` to `key` of `object` if the existing value is not equivalent + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function assignValue(object, key, value) { + var objValue = object[key]; + if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) || + (value === undefined && !(key in object))) { + baseAssignValue(object, key, value); + } + } + + /** + * Gets the index at which the `key` is found in `array` of key-value pairs. + * + * @private + * @param {Array} array The array to inspect. + * @param {*} key The key to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + */ + function assocIndexOf(array, key) { + var length = array.length; + while (length--) { + if (eq(array[length][0], key)) { + return length; + } + } + return -1; + } + + /** + * Aggregates elements of `collection` on `accumulator` with keys transformed + * by `iteratee` and values set by `setter`. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform keys. + * @param {Object} accumulator The initial aggregated object. + * @returns {Function} Returns `accumulator`. + */ + function baseAggregator(collection, setter, iteratee, accumulator) { + baseEach(collection, function(value, key, collection) { + setter(accumulator, value, iteratee(value), collection); + }); + return accumulator; + } + + /** + * The base implementation of `_.assign` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssign(object, source) { + return object && copyObject(source, keys(source), object); + } + + /** + * The base implementation of `_.assignIn` without support for multiple sources + * or `customizer` functions. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @returns {Object} Returns `object`. + */ + function baseAssignIn(object, source) { + return object && copyObject(source, keysIn(source), object); + } + + /** + * The base implementation of `assignValue` and `assignMergeValue` without + * value checks. + * + * @private + * @param {Object} object The object to modify. + * @param {string} key The key of the property to assign. + * @param {*} value The value to assign. + */ + function baseAssignValue(object, key, value) { + if (key == '__proto__' && defineProperty) { + defineProperty(object, key, { + 'configurable': true, + 'enumerable': true, + 'value': value, + 'writable': true + }); + } else { + object[key] = value; + } + } + + /** + * The base implementation of `_.at` without support for individual paths. + * + * @private + * @param {Object} object The object to iterate over. + * @param {string[]} paths The property paths to pick. + * @returns {Array} Returns the picked elements. + */ + function baseAt(object, paths) { + var index = -1, + length = paths.length, + result = Array(length), + skip = object == null; + + while (++index < length) { + result[index] = skip ? undefined : get(object, paths[index]); + } + return result; + } + + /** + * The base implementation of `_.clamp` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + */ + function baseClamp(number, lower, upper) { + if (number === number) { + if (upper !== undefined) { + number = number <= upper ? number : upper; + } + if (lower !== undefined) { + number = number >= lower ? number : lower; + } + } + return number; + } + + /** + * The base implementation of `_.clone` and `_.cloneDeep` which tracks + * traversed objects. + * + * @private + * @param {*} value The value to clone. + * @param {boolean} bitmask The bitmask flags. + * 1 - Deep clone + * 2 - Flatten inherited properties + * 4 - Clone symbols + * @param {Function} [customizer] The function to customize cloning. + * @param {string} [key] The key of `value`. + * @param {Object} [object] The parent object of `value`. + * @param {Object} [stack] Tracks traversed objects and their clone counterparts. + * @returns {*} Returns the cloned value. + */ + function baseClone(value, bitmask, customizer, key, object, stack) { + var result, + isDeep = bitmask & CLONE_DEEP_FLAG, + isFlat = bitmask & CLONE_FLAT_FLAG, + isFull = bitmask & CLONE_SYMBOLS_FLAG; + + if (customizer) { + result = object ? customizer(value, key, object, stack) : customizer(value); + } + if (result !== undefined) { + return result; + } + if (!isObject(value)) { + return value; + } + var isArr = isArray(value); + if (isArr) { + result = initCloneArray(value); + if (!isDeep) { + return copyArray(value, result); + } + } else { + var tag = getTag(value), + isFunc = tag == funcTag || tag == genTag; + + if (isBuffer(value)) { + return cloneBuffer(value, isDeep); + } + if (tag == objectTag || tag == argsTag || (isFunc && !object)) { + result = (isFlat || isFunc) ? {} : initCloneObject(value); + if (!isDeep) { + return isFlat + ? copySymbolsIn(value, baseAssignIn(result, value)) + : copySymbols(value, baseAssign(result, value)); + } + } else { + if (!cloneableTags[tag]) { + return object ? value : {}; + } + result = initCloneByTag(value, tag, isDeep); + } + } + // Check for circular references and return its corresponding clone. + stack || (stack = new Stack); + var stacked = stack.get(value); + if (stacked) { + return stacked; + } + stack.set(value, result); + + if (isSet(value)) { + value.forEach(function(subValue) { + result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack)); + }); + + return result; + } + + if (isMap(value)) { + value.forEach(function(subValue, key) { + result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + + return result; + } + + var keysFunc = isFull + ? (isFlat ? getAllKeysIn : getAllKeys) + : (isFlat ? keysIn : keys); + + var props = isArr ? undefined : keysFunc(value); + arrayEach(props || value, function(subValue, key) { + if (props) { + key = subValue; + subValue = value[key]; + } + // Recursively populate clone (susceptible to call stack limits). + assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack)); + }); + return result; + } + + /** + * The base implementation of `_.conforms` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property predicates to conform to. + * @returns {Function} Returns the new spec function. + */ + function baseConforms(source) { + var props = keys(source); + return function(object) { + return baseConformsTo(object, source, props); + }; + } + + /** + * The base implementation of `_.conformsTo` which accepts `props` to check. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + */ + function baseConformsTo(object, source, props) { + var length = props.length; + if (object == null) { + return !length; + } + object = Object(object); + while (length--) { + var key = props[length], + predicate = source[key], + value = object[key]; + + if ((value === undefined && !(key in object)) || !predicate(value)) { + return false; + } + } + return true; + } + + /** + * The base implementation of `_.delay` and `_.defer` which accepts `args` + * to provide to `func`. + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {Array} args The arguments to provide to `func`. + * @returns {number|Object} Returns the timer id or timeout object. + */ + function baseDelay(func, wait, args) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return setTimeout(function() { func.apply(undefined, args); }, wait); + } + + /** + * The base implementation of methods like `_.difference` without support + * for excluding multiple arrays or iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Array} values The values to exclude. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + */ + function baseDifference(array, values, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + isCommon = true, + length = array.length, + result = [], + valuesLength = values.length; + + if (!length) { + return result; + } + if (iteratee) { + values = arrayMap(values, baseUnary(iteratee)); + } + if (comparator) { + includes = arrayIncludesWith; + isCommon = false; + } + else if (values.length >= LARGE_ARRAY_SIZE) { + includes = cacheHas; + isCommon = false; + values = new SetCache(values); + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee == null ? value : iteratee(value); + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var valuesIndex = valuesLength; + while (valuesIndex--) { + if (values[valuesIndex] === computed) { + continue outer; + } + } + result.push(value); + } + else if (!includes(values, computed, comparator)) { + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.forEach` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEach = createBaseEach(baseForOwn); + + /** + * The base implementation of `_.forEachRight` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + */ + var baseEachRight = createBaseEach(baseForOwnRight, true); + + /** + * The base implementation of `_.every` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false` + */ + function baseEvery(collection, predicate) { + var result = true; + baseEach(collection, function(value, index, collection) { + result = !!predicate(value, index, collection); + return result; + }); + return result; + } + + /** + * The base implementation of methods like `_.max` and `_.min` which accepts a + * `comparator` to determine the extremum value. + * + * @private + * @param {Array} array The array to iterate over. + * @param {Function} iteratee The iteratee invoked per iteration. + * @param {Function} comparator The comparator used to compare values. + * @returns {*} Returns the extremum value. + */ + function baseExtremum(array, iteratee, comparator) { + var index = -1, + length = array.length; + + while (++index < length) { + var value = array[index], + current = iteratee(value); + + if (current != null && (computed === undefined + ? (current === current && !isSymbol(current)) + : comparator(current, computed) + )) { + var computed = current, + result = value; + } + } + return result; + } + + /** + * The base implementation of `_.fill` without an iteratee call guard. + * + * @private + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + */ + function baseFill(array, value, start, end) { + var length = array.length; + + start = toInteger(start); + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = (end === undefined || end > length) ? length : toInteger(end); + if (end < 0) { + end += length; + } + end = start > end ? 0 : toLength(end); + while (start < end) { + array[start++] = value; + } + return array; + } + + /** + * The base implementation of `_.filter` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + */ + function baseFilter(collection, predicate) { + var result = []; + baseEach(collection, function(value, index, collection) { + if (predicate(value, index, collection)) { + result.push(value); + } + }); + return result; + } + + /** + * The base implementation of `_.flatten` with support for restricting flattening. + * + * @private + * @param {Array} array The array to flatten. + * @param {number} depth The maximum recursion depth. + * @param {boolean} [predicate=isFlattenable] The function invoked per iteration. + * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks. + * @param {Array} [result=[]] The initial result value. + * @returns {Array} Returns the new flattened array. + */ + function baseFlatten(array, depth, predicate, isStrict, result) { + var index = -1, + length = array.length; + + predicate || (predicate = isFlattenable); + result || (result = []); + + while (++index < length) { + var value = array[index]; + if (depth > 0 && predicate(value)) { + if (depth > 1) { + // Recursively flatten arrays (susceptible to call stack limits). + baseFlatten(value, depth - 1, predicate, isStrict, result); + } else { + arrayPush(result, value); + } + } else if (!isStrict) { + result[result.length] = value; + } + } + return result; + } + + /** + * The base implementation of `baseForOwn` which iterates over `object` + * properties returned by `keysFunc` and invokes `iteratee` for each property. + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseFor = createBaseFor(); + + /** + * This function is like `baseFor` except that it iterates over properties + * in the opposite order. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @param {Function} keysFunc The function to get the keys of `object`. + * @returns {Object} Returns `object`. + */ + var baseForRight = createBaseFor(true); + + /** + * The base implementation of `_.forOwn` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwn(object, iteratee) { + return object && baseFor(object, iteratee, keys); + } + + /** + * The base implementation of `_.forOwnRight` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Object} Returns `object`. + */ + function baseForOwnRight(object, iteratee) { + return object && baseForRight(object, iteratee, keys); + } + + /** + * The base implementation of `_.functions` which creates an array of + * `object` function property names filtered from `props`. + * + * @private + * @param {Object} object The object to inspect. + * @param {Array} props The property names to filter. + * @returns {Array} Returns the function names. + */ + function baseFunctions(object, props) { + return arrayFilter(props, function(key) { + return isFunction(object[key]); + }); + } + + /** + * The base implementation of `_.get` without support for default values. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @returns {*} Returns the resolved value. + */ + function baseGet(object, path) { + path = castPath(path, object); + + var index = 0, + length = path.length; + + while (object != null && index < length) { + object = object[toKey(path[index++])]; + } + return (index && index == length) ? object : undefined; + } + + /** + * The base implementation of `getAllKeys` and `getAllKeysIn` which uses + * `keysFunc` and `symbolsFunc` to get the enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Function} keysFunc The function to get the keys of `object`. + * @param {Function} symbolsFunc The function to get the symbols of `object`. + * @returns {Array} Returns the array of property names and symbols. + */ + function baseGetAllKeys(object, keysFunc, symbolsFunc) { + var result = keysFunc(object); + return isArray(object) ? result : arrayPush(result, symbolsFunc(object)); + } + + /** + * The base implementation of `getTag` without fallbacks for buggy environments. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + function baseGetTag(value) { + if (value == null) { + return value === undefined ? undefinedTag : nullTag; + } + return (symToStringTag && symToStringTag in Object(value)) + ? getRawTag(value) + : objectToString(value); + } + + /** + * The base implementation of `_.gt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + */ + function baseGt(value, other) { + return value > other; + } + + /** + * The base implementation of `_.has` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHas(object, key) { + return object != null && hasOwnProperty.call(object, key); + } + + /** + * The base implementation of `_.hasIn` without support for deep paths. + * + * @private + * @param {Object} [object] The object to query. + * @param {Array|string} key The key to check. + * @returns {boolean} Returns `true` if `key` exists, else `false`. + */ + function baseHasIn(object, key) { + return object != null && key in Object(object); + } + + /** + * The base implementation of `_.inRange` which doesn't coerce arguments. + * + * @private + * @param {number} number The number to check. + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + */ + function baseInRange(number, start, end) { + return number >= nativeMin(start, end) && number < nativeMax(start, end); + } + + /** + * The base implementation of methods like `_.intersection`, without support + * for iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of shared values. + */ + function baseIntersection(arrays, iteratee, comparator) { + var includes = comparator ? arrayIncludesWith : arrayIncludes, + length = arrays[0].length, + othLength = arrays.length, + othIndex = othLength, + caches = Array(othLength), + maxLength = Infinity, + result = []; + + while (othIndex--) { + var array = arrays[othIndex]; + if (othIndex && iteratee) { + array = arrayMap(array, baseUnary(iteratee)); + } + maxLength = nativeMin(array.length, maxLength); + caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120)) + ? new SetCache(othIndex && array) + : undefined; + } + array = arrays[0]; + + var index = -1, + seen = caches[0]; + + outer: + while (++index < length && result.length < maxLength) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (!(seen + ? cacheHas(seen, computed) + : includes(result, computed, comparator) + )) { + othIndex = othLength; + while (--othIndex) { + var cache = caches[othIndex]; + if (!(cache + ? cacheHas(cache, computed) + : includes(arrays[othIndex], computed, comparator)) + ) { + continue outer; + } + } + if (seen) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.invert` and `_.invertBy` which inverts + * `object` with values transformed by `iteratee` and set by `setter`. + * + * @private + * @param {Object} object The object to iterate over. + * @param {Function} setter The function to set `accumulator` values. + * @param {Function} iteratee The iteratee to transform values. + * @param {Object} accumulator The initial inverted object. + * @returns {Function} Returns `accumulator`. + */ + function baseInverter(object, setter, iteratee, accumulator) { + baseForOwn(object, function(value, key, object) { + setter(accumulator, iteratee(value), key, object); + }); + return accumulator; + } + + /** + * The base implementation of `_.invoke` without support for individual + * method arguments. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {Array} args The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + */ + function baseInvoke(object, path, args) { + path = castPath(path, object); + object = parent(object, path); + var func = object == null ? object : object[toKey(last(path))]; + return func == null ? undefined : apply(func, object, args); + } + + /** + * The base implementation of `_.isArguments`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + */ + function baseIsArguments(value) { + return isObjectLike(value) && baseGetTag(value) == argsTag; + } + + /** + * The base implementation of `_.isArrayBuffer` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + */ + function baseIsArrayBuffer(value) { + return isObjectLike(value) && baseGetTag(value) == arrayBufferTag; + } + + /** + * The base implementation of `_.isDate` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + */ + function baseIsDate(value) { + return isObjectLike(value) && baseGetTag(value) == dateTag; + } + + /** + * The base implementation of `_.isEqual` which supports partial comparisons + * and tracks traversed objects. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {boolean} bitmask The bitmask flags. + * 1 - Unordered comparison + * 2 - Partial comparison + * @param {Function} [customizer] The function to customize comparisons. + * @param {Object} [stack] Tracks traversed `value` and `other` objects. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + */ + function baseIsEqual(value, other, bitmask, customizer, stack) { + if (value === other) { + return true; + } + if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) { + return value !== value && other !== other; + } + return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack); + } + + /** + * A specialized version of `baseIsEqual` for arrays and objects which performs + * deep comparisons and tracks traversed objects enabling objects with circular + * references to be compared. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} [stack] Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { + var objIsArr = isArray(object), + othIsArr = isArray(other), + objTag = objIsArr ? arrayTag : getTag(object), + othTag = othIsArr ? arrayTag : getTag(other); + + objTag = objTag == argsTag ? objectTag : objTag; + othTag = othTag == argsTag ? objectTag : othTag; + + var objIsObj = objTag == objectTag, + othIsObj = othTag == objectTag, + isSameTag = objTag == othTag; + + if (isSameTag && isBuffer(object)) { + if (!isBuffer(other)) { + return false; + } + objIsArr = true; + objIsObj = false; + } + if (isSameTag && !objIsObj) { + stack || (stack = new Stack); + return (objIsArr || isTypedArray(object)) + ? equalArrays(object, other, bitmask, customizer, equalFunc, stack) + : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack); + } + if (!(bitmask & COMPARE_PARTIAL_FLAG)) { + var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'), + othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__'); + + if (objIsWrapped || othIsWrapped) { + var objUnwrapped = objIsWrapped ? object.value() : object, + othUnwrapped = othIsWrapped ? other.value() : other; + + stack || (stack = new Stack); + return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); + } + } + if (!isSameTag) { + return false; + } + stack || (stack = new Stack); + return equalObjects(object, other, bitmask, customizer, equalFunc, stack); + } + + /** + * The base implementation of `_.isMap` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + */ + function baseIsMap(value) { + return isObjectLike(value) && getTag(value) == mapTag; + } + + /** + * The base implementation of `_.isMatch` without support for iteratee shorthands. + * + * @private + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Array} matchData The property names, values, and compare flags to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + */ + function baseIsMatch(object, source, matchData, customizer) { + var index = matchData.length, + length = index, + noCustomizer = !customizer; + + if (object == null) { + return !length; + } + object = Object(object); + while (index--) { + var data = matchData[index]; + if ((noCustomizer && data[2]) + ? data[1] !== object[data[0]] + : !(data[0] in object) + ) { + return false; + } + } + while (++index < length) { + data = matchData[index]; + var key = data[0], + objValue = object[key], + srcValue = data[1]; + + if (noCustomizer && data[2]) { + if (objValue === undefined && !(key in object)) { + return false; + } + } else { + var stack = new Stack; + if (customizer) { + var result = customizer(objValue, srcValue, key, object, source, stack); + } + if (!(result === undefined + ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack) + : result + )) { + return false; + } + } + } + return true; + } + + /** + * The base implementation of `_.isNative` without bad shim checks. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + */ + function baseIsNative(value) { + if (!isObject(value) || isMasked(value)) { + return false; + } + var pattern = isFunction(value) ? reIsNative : reIsHostCtor; + return pattern.test(toSource(value)); + } + + /** + * The base implementation of `_.isRegExp` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + */ + function baseIsRegExp(value) { + return isObjectLike(value) && baseGetTag(value) == regexpTag; + } + + /** + * The base implementation of `_.isSet` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + */ + function baseIsSet(value) { + return isObjectLike(value) && getTag(value) == setTag; + } + + /** + * The base implementation of `_.isTypedArray` without Node.js optimizations. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + */ + function baseIsTypedArray(value) { + return isObjectLike(value) && + isLength(value.length) && !!typedArrayTags[baseGetTag(value)]; + } + + /** + * The base implementation of `_.iteratee`. + * + * @private + * @param {*} [value=_.identity] The value to convert to an iteratee. + * @returns {Function} Returns the iteratee. + */ + function baseIteratee(value) { + // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9. + // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details. + if (typeof value == 'function') { + return value; + } + if (value == null) { + return identity; + } + if (typeof value == 'object') { + return isArray(value) + ? baseMatchesProperty(value[0], value[1]) + : baseMatches(value); + } + return property(value); + } + + /** + * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeys(object) { + if (!isPrototype(object)) { + return nativeKeys(object); + } + var result = []; + for (var key in Object(object)) { + if (hasOwnProperty.call(object, key) && key != 'constructor') { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function baseKeysIn(object) { + if (!isObject(object)) { + return nativeKeysIn(object); + } + var isProto = isPrototype(object), + result = []; + + for (var key in object) { + if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) { + result.push(key); + } + } + return result; + } + + /** + * The base implementation of `_.lt` which doesn't coerce arguments. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + */ + function baseLt(value, other) { + return value < other; + } + + /** + * The base implementation of `_.map` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} iteratee The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + */ + function baseMap(collection, iteratee) { + var index = -1, + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value, key, collection) { + result[++index] = iteratee(value, key, collection); + }); + return result; + } + + /** + * The base implementation of `_.matches` which doesn't clone `source`. + * + * @private + * @param {Object} source The object of property values to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatches(source) { + var matchData = getMatchData(source); + if (matchData.length == 1 && matchData[0][2]) { + return matchesStrictComparable(matchData[0][0], matchData[0][1]); + } + return function(object) { + return object === source || baseIsMatch(object, source, matchData); + }; + } + + /** + * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`. + * + * @private + * @param {string} path The path of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function baseMatchesProperty(path, srcValue) { + if (isKey(path) && isStrictComparable(srcValue)) { + return matchesStrictComparable(toKey(path), srcValue); + } + return function(object) { + var objValue = get(object, path); + return (objValue === undefined && objValue === srcValue) + ? hasIn(object, path) + : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG); + }; + } + + /** + * The base implementation of `_.merge` without support for multiple sources. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {number} srcIndex The index of `source`. + * @param {Function} [customizer] The function to customize merged values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMerge(object, source, srcIndex, customizer, stack) { + if (object === source) { + return; + } + baseFor(source, function(srcValue, key) { + if (isObject(srcValue)) { + stack || (stack = new Stack); + baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack); + } + else { + var newValue = customizer + ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack) + : undefined; + + if (newValue === undefined) { + newValue = srcValue; + } + assignMergeValue(object, key, newValue); + } + }, keysIn); + } + + /** + * A specialized version of `baseMerge` for arrays and objects which performs + * deep merges and tracks traversed objects enabling objects with circular + * references to be merged. + * + * @private + * @param {Object} object The destination object. + * @param {Object} source The source object. + * @param {string} key The key of the value to merge. + * @param {number} srcIndex The index of `source`. + * @param {Function} mergeFunc The function to merge values. + * @param {Function} [customizer] The function to customize assigned values. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + */ + function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) { + var objValue = safeGet(object, key), + srcValue = safeGet(source, key), + stacked = stack.get(srcValue); + + if (stacked) { + assignMergeValue(object, key, stacked); + return; + } + var newValue = customizer + ? customizer(objValue, srcValue, (key + ''), object, source, stack) + : undefined; + + var isCommon = newValue === undefined; + + if (isCommon) { + var isArr = isArray(srcValue), + isBuff = !isArr && isBuffer(srcValue), + isTyped = !isArr && !isBuff && isTypedArray(srcValue); + + newValue = srcValue; + if (isArr || isBuff || isTyped) { + if (isArray(objValue)) { + newValue = objValue; + } + else if (isArrayLikeObject(objValue)) { + newValue = copyArray(objValue); + } + else if (isBuff) { + isCommon = false; + newValue = cloneBuffer(srcValue, true); + } + else if (isTyped) { + isCommon = false; + newValue = cloneTypedArray(srcValue, true); + } + else { + newValue = []; + } + } + else if (isPlainObject(srcValue) || isArguments(srcValue)) { + newValue = objValue; + if (isArguments(objValue)) { + newValue = toPlainObject(objValue); + } + else if (!isObject(objValue) || (srcIndex && isFunction(objValue))) { + newValue = initCloneObject(srcValue); + } + } + else { + isCommon = false; + } + } + if (isCommon) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, newValue); + mergeFunc(newValue, srcValue, srcIndex, customizer, stack); + stack['delete'](srcValue); + } + assignMergeValue(object, key, newValue); + } + + /** + * The base implementation of `_.nth` which doesn't coerce arguments. + * + * @private + * @param {Array} array The array to query. + * @param {number} n The index of the element to return. + * @returns {*} Returns the nth element of `array`. + */ + function baseNth(array, n) { + var length = array.length; + if (!length) { + return; + } + n += n < 0 ? length : 0; + return isIndex(n, length) ? array[n] : undefined; + } + + /** + * The base implementation of `_.orderBy` without param guards. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by. + * @param {string[]} orders The sort orders of `iteratees`. + * @returns {Array} Returns the new sorted array. + */ + function baseOrderBy(collection, iteratees, orders) { + var index = -1; + iteratees = arrayMap(iteratees.length ? iteratees : [identity], baseUnary(getIteratee())); + + var result = baseMap(collection, function(value, key, collection) { + var criteria = arrayMap(iteratees, function(iteratee) { + return iteratee(value); + }); + return { 'criteria': criteria, 'index': ++index, 'value': value }; + }); + + return baseSortBy(result, function(object, other) { + return compareMultiple(object, other, orders); + }); + } + + /** + * The base implementation of `_.pick` without support for individual + * property identifiers. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @returns {Object} Returns the new object. + */ + function basePick(object, paths) { + return basePickBy(object, paths, function(value, path) { + return hasIn(object, path); + }); + } + + /** + * The base implementation of `_.pickBy` without support for iteratee shorthands. + * + * @private + * @param {Object} object The source object. + * @param {string[]} paths The property paths to pick. + * @param {Function} predicate The function invoked per property. + * @returns {Object} Returns the new object. + */ + function basePickBy(object, paths, predicate) { + var index = -1, + length = paths.length, + result = {}; + + while (++index < length) { + var path = paths[index], + value = baseGet(object, path); + + if (predicate(value, path)) { + baseSet(result, castPath(path, object), value); + } + } + return result; + } + + /** + * A specialized version of `baseProperty` which supports deep paths. + * + * @private + * @param {Array|string} path The path of the property to get. + * @returns {Function} Returns the new accessor function. + */ + function basePropertyDeep(path) { + return function(object) { + return baseGet(object, path); + }; + } + + /** + * The base implementation of `_.pullAllBy` without support for iteratee + * shorthands. + * + * @private + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + */ + function basePullAll(array, values, iteratee, comparator) { + var indexOf = comparator ? baseIndexOfWith : baseIndexOf, + index = -1, + length = values.length, + seen = array; + + if (array === values) { + values = copyArray(values); + } + if (iteratee) { + seen = arrayMap(array, baseUnary(iteratee)); + } + while (++index < length) { + var fromIndex = 0, + value = values[index], + computed = iteratee ? iteratee(value) : value; + + while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) { + if (seen !== array) { + splice.call(seen, fromIndex, 1); + } + splice.call(array, fromIndex, 1); + } + } + return array; + } + + /** + * The base implementation of `_.pullAt` without support for individual + * indexes or capturing the removed elements. + * + * @private + * @param {Array} array The array to modify. + * @param {number[]} indexes The indexes of elements to remove. + * @returns {Array} Returns `array`. + */ + function basePullAt(array, indexes) { + var length = array ? indexes.length : 0, + lastIndex = length - 1; + + while (length--) { + var index = indexes[length]; + if (length == lastIndex || index !== previous) { + var previous = index; + if (isIndex(index)) { + splice.call(array, index, 1); + } else { + baseUnset(array, index); + } + } + } + return array; + } + + /** + * The base implementation of `_.random` without support for returning + * floating-point numbers. + * + * @private + * @param {number} lower The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the random number. + */ + function baseRandom(lower, upper) { + return lower + nativeFloor(nativeRandom() * (upper - lower + 1)); + } + + /** + * The base implementation of `_.range` and `_.rangeRight` which doesn't + * coerce arguments. + * + * @private + * @param {number} start The start of the range. + * @param {number} end The end of the range. + * @param {number} step The value to increment or decrement by. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the range of numbers. + */ + function baseRange(start, end, step, fromRight) { + var index = -1, + length = nativeMax(nativeCeil((end - start) / (step || 1)), 0), + result = Array(length); + + while (length--) { + result[fromRight ? length : ++index] = start; + start += step; + } + return result; + } + + /** + * The base implementation of `_.repeat` which doesn't coerce arguments. + * + * @private + * @param {string} string The string to repeat. + * @param {number} n The number of times to repeat the string. + * @returns {string} Returns the repeated string. + */ + function baseRepeat(string, n) { + var result = ''; + if (!string || n < 1 || n > MAX_SAFE_INTEGER) { + return result; + } + // Leverage the exponentiation by squaring algorithm for a faster repeat. + // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details. + do { + if (n % 2) { + result += string; + } + n = nativeFloor(n / 2); + if (n) { + string += string; + } + } while (n); + + return result; + } + + /** + * The base implementation of `_.rest` which doesn't validate or coerce arguments. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + */ + function baseRest(func, start) { + return setToString(overRest(func, start, identity), func + ''); + } + + /** + * The base implementation of `_.sample`. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + */ + function baseSample(collection) { + return arraySample(values(collection)); + } + + /** + * The base implementation of `_.sampleSize` without param guards. + * + * @private + * @param {Array|Object} collection The collection to sample. + * @param {number} n The number of elements to sample. + * @returns {Array} Returns the random elements. + */ + function baseSampleSize(collection, n) { + var array = values(collection); + return shuffleSelf(array, baseClamp(n, 0, array.length)); + } + + /** + * The base implementation of `_.set`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseSet(object, path, value, customizer) { + if (!isObject(object)) { + return object; + } + path = castPath(path, object); + + var index = -1, + length = path.length, + lastIndex = length - 1, + nested = object; + + while (nested != null && ++index < length) { + var key = toKey(path[index]), + newValue = value; + + if (index != lastIndex) { + var objValue = nested[key]; + newValue = customizer ? customizer(objValue, key, nested) : undefined; + if (newValue === undefined) { + newValue = isObject(objValue) + ? objValue + : (isIndex(path[index + 1]) ? [] : {}); + } + } + assignValue(nested, key, newValue); + nested = nested[key]; + } + return object; + } + + /** + * The base implementation of `setData` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var baseSetData = !metaMap ? identity : function(func, data) { + metaMap.set(func, data); + return func; + }; + + /** + * The base implementation of `setToString` without support for hot loop shorting. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var baseSetToString = !defineProperty ? identity : function(func, string) { + return defineProperty(func, 'toString', { + 'configurable': true, + 'enumerable': false, + 'value': constant(string), + 'writable': true + }); + }; + + /** + * The base implementation of `_.shuffle`. + * + * @private + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + */ + function baseShuffle(collection) { + return shuffleSelf(values(collection)); + } + + /** + * The base implementation of `_.slice` without an iteratee call guard. + * + * @private + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function baseSlice(array, start, end) { + var index = -1, + length = array.length; + + if (start < 0) { + start = -start > length ? 0 : (length + start); + } + end = end > length ? length : end; + if (end < 0) { + end += length; + } + length = start > end ? 0 : ((end - start) >>> 0); + start >>>= 0; + + var result = Array(length); + while (++index < length) { + result[index] = array[index + start]; + } + return result; + } + + /** + * The base implementation of `_.some` without support for iteratee shorthands. + * + * @private + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} predicate The function invoked per iteration. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + */ + function baseSome(collection, predicate) { + var result; + + baseEach(collection, function(value, index, collection) { + result = predicate(value, index, collection); + return !result; + }); + return !!result; + } + + /** + * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which + * performs a binary search of `array` to determine the index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndex(array, value, retHighest) { + var low = 0, + high = array == null ? low : array.length; + + if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) { + while (low < high) { + var mid = (low + high) >>> 1, + computed = array[mid]; + + if (computed !== null && !isSymbol(computed) && + (retHighest ? (computed <= value) : (computed < value))) { + low = mid + 1; + } else { + high = mid; + } + } + return high; + } + return baseSortedIndexBy(array, value, identity, retHighest); + } + + /** + * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy` + * which invokes `iteratee` for `value` and each element of `array` to compute + * their sort ranking. The iteratee is invoked with one argument; (value). + * + * @private + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} iteratee The iteratee invoked per element. + * @param {boolean} [retHighest] Specify returning the highest qualified index. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + */ + function baseSortedIndexBy(array, value, iteratee, retHighest) { + value = iteratee(value); + + var low = 0, + high = array == null ? 0 : array.length, + valIsNaN = value !== value, + valIsNull = value === null, + valIsSymbol = isSymbol(value), + valIsUndefined = value === undefined; + + while (low < high) { + var mid = nativeFloor((low + high) / 2), + computed = iteratee(array[mid]), + othIsDefined = computed !== undefined, + othIsNull = computed === null, + othIsReflexive = computed === computed, + othIsSymbol = isSymbol(computed); + + if (valIsNaN) { + var setLow = retHighest || othIsReflexive; + } else if (valIsUndefined) { + setLow = othIsReflexive && (retHighest || othIsDefined); + } else if (valIsNull) { + setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull); + } else if (valIsSymbol) { + setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol); + } else if (othIsNull || othIsSymbol) { + setLow = false; + } else { + setLow = retHighest ? (computed <= value) : (computed < value); + } + if (setLow) { + low = mid + 1; + } else { + high = mid; + } + } + return nativeMin(high, MAX_ARRAY_INDEX); + } + + /** + * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without + * support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseSortedUniq(array, iteratee) { + var index = -1, + length = array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + if (!index || !eq(computed, seen)) { + var seen = computed; + result[resIndex++] = value === 0 ? 0 : value; + } + } + return result; + } + + /** + * The base implementation of `_.toNumber` which doesn't ensure correct + * conversions of binary, hexadecimal, or octal string values. + * + * @private + * @param {*} value The value to process. + * @returns {number} Returns the number. + */ + function baseToNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + return +value; + } + + /** + * The base implementation of `_.toString` which doesn't convert nullish + * values to empty strings. + * + * @private + * @param {*} value The value to process. + * @returns {string} Returns the string. + */ + function baseToString(value) { + // Exit early for strings to avoid a performance hit in some environments. + if (typeof value == 'string') { + return value; + } + if (isArray(value)) { + // Recursively convert values (susceptible to call stack limits). + return arrayMap(value, baseToString) + ''; + } + if (isSymbol(value)) { + return symbolToString ? symbolToString.call(value) : ''; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * The base implementation of `_.uniqBy` without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + */ + function baseUniq(array, iteratee, comparator) { + var index = -1, + includes = arrayIncludes, + length = array.length, + isCommon = true, + result = [], + seen = result; + + if (comparator) { + isCommon = false; + includes = arrayIncludesWith; + } + else if (length >= LARGE_ARRAY_SIZE) { + var set = iteratee ? null : createSet(array); + if (set) { + return setToArray(set); + } + isCommon = false; + includes = cacheHas; + seen = new SetCache; + } + else { + seen = iteratee ? [] : result; + } + outer: + while (++index < length) { + var value = array[index], + computed = iteratee ? iteratee(value) : value; + + value = (comparator || value !== 0) ? value : 0; + if (isCommon && computed === computed) { + var seenIndex = seen.length; + while (seenIndex--) { + if (seen[seenIndex] === computed) { + continue outer; + } + } + if (iteratee) { + seen.push(computed); + } + result.push(value); + } + else if (!includes(seen, computed, comparator)) { + if (seen !== result) { + seen.push(computed); + } + result.push(value); + } + } + return result; + } + + /** + * The base implementation of `_.unset`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The property path to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + */ + function baseUnset(object, path) { + path = castPath(path, object); + object = parent(object, path); + return object == null || delete object[toKey(last(path))]; + } + + /** + * The base implementation of `_.update`. + * + * @private + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to update. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize path creation. + * @returns {Object} Returns `object`. + */ + function baseUpdate(object, path, updater, customizer) { + return baseSet(object, path, updater(baseGet(object, path)), customizer); + } + + /** + * The base implementation of methods like `_.dropWhile` and `_.takeWhile` + * without support for iteratee shorthands. + * + * @private + * @param {Array} array The array to query. + * @param {Function} predicate The function invoked per iteration. + * @param {boolean} [isDrop] Specify dropping elements instead of taking them. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Array} Returns the slice of `array`. + */ + function baseWhile(array, predicate, isDrop, fromRight) { + var length = array.length, + index = fromRight ? length : -1; + + while ((fromRight ? index-- : ++index < length) && + predicate(array[index], index, array)) {} + + return isDrop + ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length)) + : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index)); + } + + /** + * The base implementation of `wrapperValue` which returns the result of + * performing a sequence of actions on the unwrapped `value`, where each + * successive action is supplied the return value of the previous. + * + * @private + * @param {*} value The unwrapped value. + * @param {Array} actions Actions to perform to resolve the unwrapped value. + * @returns {*} Returns the resolved value. + */ + function baseWrapperValue(value, actions) { + var result = value; + if (result instanceof LazyWrapper) { + result = result.value(); + } + return arrayReduce(actions, function(result, action) { + return action.func.apply(action.thisArg, arrayPush([result], action.args)); + }, result); + } + + /** + * The base implementation of methods like `_.xor`, without support for + * iteratee shorthands, that accepts an array of arrays to inspect. + * + * @private + * @param {Array} arrays The arrays to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of values. + */ + function baseXor(arrays, iteratee, comparator) { + var length = arrays.length; + if (length < 2) { + return length ? baseUniq(arrays[0]) : []; + } + var index = -1, + result = Array(length); + + while (++index < length) { + var array = arrays[index], + othIndex = -1; + + while (++othIndex < length) { + if (othIndex != index) { + result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator); + } + } + } + return baseUniq(baseFlatten(result, 1), iteratee, comparator); + } + + /** + * This base implementation of `_.zipObject` which assigns values using `assignFunc`. + * + * @private + * @param {Array} props The property identifiers. + * @param {Array} values The property values. + * @param {Function} assignFunc The function to assign values. + * @returns {Object} Returns the new object. + */ + function baseZipObject(props, values, assignFunc) { + var index = -1, + length = props.length, + valsLength = values.length, + result = {}; + + while (++index < length) { + var value = index < valsLength ? values[index] : undefined; + assignFunc(result, props[index], value); + } + return result; + } + + /** + * Casts `value` to an empty array if it's not an array like object. + * + * @private + * @param {*} value The value to inspect. + * @returns {Array|Object} Returns the cast array-like object. + */ + function castArrayLikeObject(value) { + return isArrayLikeObject(value) ? value : []; + } + + /** + * Casts `value` to `identity` if it's not a function. + * + * @private + * @param {*} value The value to inspect. + * @returns {Function} Returns cast function. + */ + function castFunction(value) { + return typeof value == 'function' ? value : identity; + } + + /** + * Casts `value` to a path array if it's not one. + * + * @private + * @param {*} value The value to inspect. + * @param {Object} [object] The object to query keys on. + * @returns {Array} Returns the cast property path array. + */ + function castPath(value, object) { + if (isArray(value)) { + return value; + } + return isKey(value, object) ? [value] : stringToPath(toString(value)); + } + + /** + * A `baseRest` alias which can be replaced with `identity` by module + * replacement plugins. + * + * @private + * @type {Function} + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + var castRest = baseRest; + + /** + * Casts `array` to a slice if it's needed. + * + * @private + * @param {Array} array The array to inspect. + * @param {number} start The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the cast slice. + */ + function castSlice(array, start, end) { + var length = array.length; + end = end === undefined ? length : end; + return (!start && end >= length) ? array : baseSlice(array, start, end); + } + + /** + * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout). + * + * @private + * @param {number|Object} id The timer id or timeout object of the timer to clear. + */ + var clearTimeout = ctxClearTimeout || function(id) { + return root.clearTimeout(id); + }; + + /** + * Creates a clone of `buffer`. + * + * @private + * @param {Buffer} buffer The buffer to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Buffer} Returns the cloned buffer. + */ + function cloneBuffer(buffer, isDeep) { + if (isDeep) { + return buffer.slice(); + } + var length = buffer.length, + result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length); + + buffer.copy(result); + return result; + } + + /** + * Creates a clone of `arrayBuffer`. + * + * @private + * @param {ArrayBuffer} arrayBuffer The array buffer to clone. + * @returns {ArrayBuffer} Returns the cloned array buffer. + */ + function cloneArrayBuffer(arrayBuffer) { + var result = new arrayBuffer.constructor(arrayBuffer.byteLength); + new Uint8Array(result).set(new Uint8Array(arrayBuffer)); + return result; + } + + /** + * Creates a clone of `dataView`. + * + * @private + * @param {Object} dataView The data view to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned data view. + */ + function cloneDataView(dataView, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer; + return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength); + } + + /** + * Creates a clone of `regexp`. + * + * @private + * @param {Object} regexp The regexp to clone. + * @returns {Object} Returns the cloned regexp. + */ + function cloneRegExp(regexp) { + var result = new regexp.constructor(regexp.source, reFlags.exec(regexp)); + result.lastIndex = regexp.lastIndex; + return result; + } + + /** + * Creates a clone of the `symbol` object. + * + * @private + * @param {Object} symbol The symbol object to clone. + * @returns {Object} Returns the cloned symbol object. + */ + function cloneSymbol(symbol) { + return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {}; + } + + /** + * Creates a clone of `typedArray`. + * + * @private + * @param {Object} typedArray The typed array to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the cloned typed array. + */ + function cloneTypedArray(typedArray, isDeep) { + var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer; + return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length); + } + + /** + * Compares values to sort them in ascending order. + * + * @private + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {number} Returns the sort order indicator for `value`. + */ + function compareAscending(value, other) { + if (value !== other) { + var valIsDefined = value !== undefined, + valIsNull = value === null, + valIsReflexive = value === value, + valIsSymbol = isSymbol(value); + + var othIsDefined = other !== undefined, + othIsNull = other === null, + othIsReflexive = other === other, + othIsSymbol = isSymbol(other); + + if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) || + (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) || + (valIsNull && othIsDefined && othIsReflexive) || + (!valIsDefined && othIsReflexive) || + !valIsReflexive) { + return 1; + } + if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) || + (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) || + (othIsNull && valIsDefined && valIsReflexive) || + (!othIsDefined && valIsReflexive) || + !othIsReflexive) { + return -1; + } + } + return 0; + } + + /** + * Used by `_.orderBy` to compare multiple properties of a value to another + * and stable sort them. + * + * If `orders` is unspecified, all values are sorted in ascending order. Otherwise, + * specify an order of "desc" for descending or "asc" for ascending sort order + * of corresponding values. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {boolean[]|string[]} orders The order to sort by for each property. + * @returns {number} Returns the sort order indicator for `object`. + */ + function compareMultiple(object, other, orders) { + var index = -1, + objCriteria = object.criteria, + othCriteria = other.criteria, + length = objCriteria.length, + ordersLength = orders.length; + + while (++index < length) { + var result = compareAscending(objCriteria[index], othCriteria[index]); + if (result) { + if (index >= ordersLength) { + return result; + } + var order = orders[index]; + return result * (order == 'desc' ? -1 : 1); + } + } + // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications + // that causes it, under certain circumstances, to provide the same value for + // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247 + // for more details. + // + // This also ensures a stable sort in V8 and other engines. + // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details. + return object.index - other.index; + } + + /** + * Creates an array that is the composition of partially applied arguments, + * placeholders, and provided arguments into a single array of arguments. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to prepend to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgs(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersLength = holders.length, + leftIndex = -1, + leftLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(leftLength + rangeLength), + isUncurried = !isCurried; + + while (++leftIndex < leftLength) { + result[leftIndex] = partials[leftIndex]; + } + while (++argsIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[holders[argsIndex]] = args[argsIndex]; + } + } + while (rangeLength--) { + result[leftIndex++] = args[argsIndex++]; + } + return result; + } + + /** + * This function is like `composeArgs` except that the arguments composition + * is tailored for `_.partialRight`. + * + * @private + * @param {Array} args The provided arguments. + * @param {Array} partials The arguments to append to those provided. + * @param {Array} holders The `partials` placeholder indexes. + * @params {boolean} [isCurried] Specify composing for a curried function. + * @returns {Array} Returns the new array of composed arguments. + */ + function composeArgsRight(args, partials, holders, isCurried) { + var argsIndex = -1, + argsLength = args.length, + holdersIndex = -1, + holdersLength = holders.length, + rightIndex = -1, + rightLength = partials.length, + rangeLength = nativeMax(argsLength - holdersLength, 0), + result = Array(rangeLength + rightLength), + isUncurried = !isCurried; + + while (++argsIndex < rangeLength) { + result[argsIndex] = args[argsIndex]; + } + var offset = argsIndex; + while (++rightIndex < rightLength) { + result[offset + rightIndex] = partials[rightIndex]; + } + while (++holdersIndex < holdersLength) { + if (isUncurried || argsIndex < argsLength) { + result[offset + holders[holdersIndex]] = args[argsIndex++]; + } + } + return result; + } + + /** + * Copies the values of `source` to `array`. + * + * @private + * @param {Array} source The array to copy values from. + * @param {Array} [array=[]] The array to copy values to. + * @returns {Array} Returns `array`. + */ + function copyArray(source, array) { + var index = -1, + length = source.length; + + array || (array = Array(length)); + while (++index < length) { + array[index] = source[index]; + } + return array; + } + + /** + * Copies properties of `source` to `object`. + * + * @private + * @param {Object} source The object to copy properties from. + * @param {Array} props The property identifiers to copy. + * @param {Object} [object={}] The object to copy properties to. + * @param {Function} [customizer] The function to customize copied values. + * @returns {Object} Returns `object`. + */ + function copyObject(source, props, object, customizer) { + var isNew = !object; + object || (object = {}); + + var index = -1, + length = props.length; + + while (++index < length) { + var key = props[index]; + + var newValue = customizer + ? customizer(object[key], source[key], key, object, source) + : undefined; + + if (newValue === undefined) { + newValue = source[key]; + } + if (isNew) { + baseAssignValue(object, key, newValue); + } else { + assignValue(object, key, newValue); + } + } + return object; + } + + /** + * Copies own symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbols(source, object) { + return copyObject(source, getSymbols(source), object); + } + + /** + * Copies own and inherited symbols of `source` to `object`. + * + * @private + * @param {Object} source The object to copy symbols from. + * @param {Object} [object={}] The object to copy symbols to. + * @returns {Object} Returns `object`. + */ + function copySymbolsIn(source, object) { + return copyObject(source, getSymbolsIn(source), object); + } + + /** + * Creates a function like `_.groupBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} [initializer] The accumulator object initializer. + * @returns {Function} Returns the new aggregator function. + */ + function createAggregator(setter, initializer) { + return function(collection, iteratee) { + var func = isArray(collection) ? arrayAggregator : baseAggregator, + accumulator = initializer ? initializer() : {}; + + return func(collection, setter, getIteratee(iteratee, 2), accumulator); + }; + } + + /** + * Creates a function like `_.assign`. + * + * @private + * @param {Function} assigner The function to assign values. + * @returns {Function} Returns the new assigner function. + */ + function createAssigner(assigner) { + return baseRest(function(object, sources) { + var index = -1, + length = sources.length, + customizer = length > 1 ? sources[length - 1] : undefined, + guard = length > 2 ? sources[2] : undefined; + + customizer = (assigner.length > 3 && typeof customizer == 'function') + ? (length--, customizer) + : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + customizer = length < 3 ? undefined : customizer; + length = 1; + } + object = Object(object); + while (++index < length) { + var source = sources[index]; + if (source) { + assigner(object, source, index, customizer); + } + } + return object; + }); + } + + /** + * Creates a `baseEach` or `baseEachRight` function. + * + * @private + * @param {Function} eachFunc The function to iterate over a collection. + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseEach(eachFunc, fromRight) { + return function(collection, iteratee) { + if (collection == null) { + return collection; + } + if (!isArrayLike(collection)) { + return eachFunc(collection, iteratee); + } + var length = collection.length, + index = fromRight ? length : -1, + iterable = Object(collection); + + while ((fromRight ? index-- : ++index < length)) { + if (iteratee(iterable[index], index, iterable) === false) { + break; + } + } + return collection; + }; + } + + /** + * Creates a base function for methods like `_.forIn` and `_.forOwn`. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new base function. + */ + function createBaseFor(fromRight) { + return function(object, iteratee, keysFunc) { + var index = -1, + iterable = Object(object), + props = keysFunc(object), + length = props.length; + + while (length--) { + var key = props[fromRight ? length : ++index]; + if (iteratee(iterable[key], key, iterable) === false) { + break; + } + } + return object; + }; + } + + /** + * Creates a function that wraps `func` to invoke it with the optional `this` + * binding of `thisArg`. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createBind(func, bitmask, thisArg) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return fn.apply(isBind ? thisArg : this, arguments); + } + return wrapper; + } + + /** + * Creates a function like `_.lowerFirst`. + * + * @private + * @param {string} methodName The name of the `String` case method to use. + * @returns {Function} Returns the new case function. + */ + function createCaseFirst(methodName) { + return function(string) { + string = toString(string); + + var strSymbols = hasUnicode(string) + ? stringToArray(string) + : undefined; + + var chr = strSymbols + ? strSymbols[0] + : string.charAt(0); + + var trailing = strSymbols + ? castSlice(strSymbols, 1).join('') + : string.slice(1); + + return chr[methodName]() + trailing; + }; + } + + /** + * Creates a function like `_.camelCase`. + * + * @private + * @param {Function} callback The function to combine each word. + * @returns {Function} Returns the new compounder function. + */ + function createCompounder(callback) { + return function(string) { + return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); + }; + } + + /** + * Creates a function that produces an instance of `Ctor` regardless of + * whether it was invoked as part of a `new` expression or by `call` or `apply`. + * + * @private + * @param {Function} Ctor The constructor to wrap. + * @returns {Function} Returns the new wrapped function. + */ + function createCtor(Ctor) { + return function() { + // Use a `switch` statement to work with class constructors. See + // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist + // for more details. + var args = arguments; + switch (args.length) { + case 0: return new Ctor; + case 1: return new Ctor(args[0]); + case 2: return new Ctor(args[0], args[1]); + case 3: return new Ctor(args[0], args[1], args[2]); + case 4: return new Ctor(args[0], args[1], args[2], args[3]); + case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]); + case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]); + case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]); + } + var thisBinding = baseCreate(Ctor.prototype), + result = Ctor.apply(thisBinding, args); + + // Mimic the constructor's `return` behavior. + // See https://es5.github.io/#x13.2.2 for more details. + return isObject(result) ? result : thisBinding; + }; + } + + /** + * Creates a function that wraps `func` to enable currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {number} arity The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createCurry(func, bitmask, arity) { + var Ctor = createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length, + placeholder = getHolder(wrapper); + + while (index--) { + args[index] = arguments[index]; + } + var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder) + ? [] + : replaceHolders(args, placeholder); + + length -= holders.length; + if (length < arity) { + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, undefined, + args, holders, undefined, undefined, arity - length); + } + var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + return apply(fn, this, args); + } + return wrapper; + } + + /** + * Creates a `_.find` or `_.findLast` function. + * + * @private + * @param {Function} findIndexFunc The function to find the collection index. + * @returns {Function} Returns the new find function. + */ + function createFind(findIndexFunc) { + return function(collection, predicate, fromIndex) { + var iterable = Object(collection); + if (!isArrayLike(collection)) { + var iteratee = getIteratee(predicate, 3); + collection = keys(collection); + predicate = function(key) { return iteratee(iterable[key], key, iterable); }; + } + var index = findIndexFunc(collection, predicate, fromIndex); + return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined; + }; + } + + /** + * Creates a `_.flow` or `_.flowRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new flow function. + */ + function createFlow(fromRight) { + return flatRest(function(funcs) { + var length = funcs.length, + index = length, + prereq = LodashWrapper.prototype.thru; + + if (fromRight) { + funcs.reverse(); + } + while (index--) { + var func = funcs[index]; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (prereq && !wrapper && getFuncName(func) == 'wrapper') { + var wrapper = new LodashWrapper([], true); + } + } + index = wrapper ? index : length; + while (++index < length) { + func = funcs[index]; + + var funcName = getFuncName(func), + data = funcName == 'wrapper' ? getData(func) : undefined; + + if (data && isLaziable(data[0]) && + data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) && + !data[4].length && data[9] == 1 + ) { + wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]); + } else { + wrapper = (func.length == 1 && isLaziable(func)) + ? wrapper[funcName]() + : wrapper.thru(func); + } + } + return function() { + var args = arguments, + value = args[0]; + + if (wrapper && args.length == 1 && isArray(value)) { + return wrapper.plant(value).value(); + } + var index = 0, + result = length ? funcs[index].apply(this, args) : value; + + while (++index < length) { + result = funcs[index].call(this, result); + } + return result; + }; + }); + } + + /** + * Creates a function that wraps `func` to invoke it with optional `this` + * binding of `thisArg`, partial application, and currying. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [partialsRight] The arguments to append to those provided + * to the new function. + * @param {Array} [holdersRight] The `partialsRight` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { + var isAry = bitmask & WRAP_ARY_FLAG, + isBind = bitmask & WRAP_BIND_FLAG, + isBindKey = bitmask & WRAP_BIND_KEY_FLAG, + isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG), + isFlip = bitmask & WRAP_FLIP_FLAG, + Ctor = isBindKey ? undefined : createCtor(func); + + function wrapper() { + var length = arguments.length, + args = Array(length), + index = length; + + while (index--) { + args[index] = arguments[index]; + } + if (isCurried) { + var placeholder = getHolder(wrapper), + holdersCount = countHolders(args, placeholder); + } + if (partials) { + args = composeArgs(args, partials, holders, isCurried); + } + if (partialsRight) { + args = composeArgsRight(args, partialsRight, holdersRight, isCurried); + } + length -= holdersCount; + if (isCurried && length < arity) { + var newHolders = replaceHolders(args, placeholder); + return createRecurry( + func, bitmask, createHybrid, wrapper.placeholder, thisArg, + args, newHolders, argPos, ary, arity - length + ); + } + var thisBinding = isBind ? thisArg : this, + fn = isBindKey ? thisBinding[func] : func; + + length = args.length; + if (argPos) { + args = reorder(args, argPos); + } else if (isFlip && length > 1) { + args.reverse(); + } + if (isAry && ary < length) { + args.length = ary; + } + if (this && this !== root && this instanceof wrapper) { + fn = Ctor || createCtor(fn); + } + return fn.apply(thisBinding, args); + } + return wrapper; + } + + /** + * Creates a function like `_.invertBy`. + * + * @private + * @param {Function} setter The function to set accumulator values. + * @param {Function} toIteratee The function to resolve iteratees. + * @returns {Function} Returns the new inverter function. + */ + function createInverter(setter, toIteratee) { + return function(object, iteratee) { + return baseInverter(object, setter, toIteratee(iteratee), {}); + }; + } + + /** + * Creates a function that performs a mathematical operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @param {number} [defaultValue] The value used for `undefined` arguments. + * @returns {Function} Returns the new mathematical operation function. + */ + function createMathOperation(operator, defaultValue) { + return function(value, other) { + var result; + if (value === undefined && other === undefined) { + return defaultValue; + } + if (value !== undefined) { + result = value; + } + if (other !== undefined) { + if (result === undefined) { + return other; + } + if (typeof value == 'string' || typeof other == 'string') { + value = baseToString(value); + other = baseToString(other); + } else { + value = baseToNumber(value); + other = baseToNumber(other); + } + result = operator(value, other); + } + return result; + }; + } + + /** + * Creates a function like `_.over`. + * + * @private + * @param {Function} arrayFunc The function to iterate over iteratees. + * @returns {Function} Returns the new over function. + */ + function createOver(arrayFunc) { + return flatRest(function(iteratees) { + iteratees = arrayMap(iteratees, baseUnary(getIteratee())); + return baseRest(function(args) { + var thisArg = this; + return arrayFunc(iteratees, function(iteratee) { + return apply(iteratee, thisArg, args); + }); + }); + }); + } + + /** + * Creates the padding for `string` based on `length`. The `chars` string + * is truncated if the number of characters exceeds `length`. + * + * @private + * @param {number} length The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padding for `string`. + */ + function createPadding(length, chars) { + chars = chars === undefined ? ' ' : baseToString(chars); + + var charsLength = chars.length; + if (charsLength < 2) { + return charsLength ? baseRepeat(chars, length) : chars; + } + var result = baseRepeat(chars, nativeCeil(length / stringSize(chars))); + return hasUnicode(chars) + ? castSlice(stringToArray(result), 0, length).join('') + : result.slice(0, length); + } + + /** + * Creates a function that wraps `func` to invoke it with the `this` binding + * of `thisArg` and `partials` prepended to the arguments it receives. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {*} thisArg The `this` binding of `func`. + * @param {Array} partials The arguments to prepend to those provided to + * the new function. + * @returns {Function} Returns the new wrapped function. + */ + function createPartial(func, bitmask, thisArg, partials) { + var isBind = bitmask & WRAP_BIND_FLAG, + Ctor = createCtor(func); + + function wrapper() { + var argsIndex = -1, + argsLength = arguments.length, + leftIndex = -1, + leftLength = partials.length, + args = Array(leftLength + argsLength), + fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; + + while (++leftIndex < leftLength) { + args[leftIndex] = partials[leftIndex]; + } + while (argsLength--) { + args[leftIndex++] = arguments[++argsIndex]; + } + return apply(fn, isBind ? thisArg : this, args); + } + return wrapper; + } + + /** + * Creates a `_.range` or `_.rangeRight` function. + * + * @private + * @param {boolean} [fromRight] Specify iterating from right to left. + * @returns {Function} Returns the new range function. + */ + function createRange(fromRight) { + return function(start, end, step) { + if (step && typeof step != 'number' && isIterateeCall(start, end, step)) { + end = step = undefined; + } + // Ensure the sign of `-0` is preserved. + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + step = step === undefined ? (start < end ? 1 : -1) : toFinite(step); + return baseRange(start, end, step, fromRight); + }; + } + + /** + * Creates a function that performs a relational operation on two values. + * + * @private + * @param {Function} operator The function to perform the operation. + * @returns {Function} Returns the new relational operation function. + */ + function createRelationalOperation(operator) { + return function(value, other) { + if (!(typeof value == 'string' && typeof other == 'string')) { + value = toNumber(value); + other = toNumber(other); + } + return operator(value, other); + }; + } + + /** + * Creates a function that wraps `func` to continue currying. + * + * @private + * @param {Function} func The function to wrap. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @param {Function} wrapFunc The function to create the `func` wrapper. + * @param {*} placeholder The placeholder value. + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to prepend to those provided to + * the new function. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) { + var isCurry = bitmask & WRAP_CURRY_FLAG, + newHolders = isCurry ? holders : undefined, + newHoldersRight = isCurry ? undefined : holders, + newPartials = isCurry ? partials : undefined, + newPartialsRight = isCurry ? undefined : partials; + + bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG); + bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG); + + if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) { + bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG); + } + var newData = [ + func, bitmask, thisArg, newPartials, newHolders, newPartialsRight, + newHoldersRight, argPos, ary, arity + ]; + + var result = wrapFunc.apply(undefined, newData); + if (isLaziable(func)) { + setData(result, newData); + } + result.placeholder = placeholder; + return setWrapToString(result, func, bitmask); + } + + /** + * Creates a function like `_.round`. + * + * @private + * @param {string} methodName The name of the `Math` method to use when rounding. + * @returns {Function} Returns the new round function. + */ + function createRound(methodName) { + var func = Math[methodName]; + return function(number, precision) { + number = toNumber(number); + precision = precision == null ? 0 : nativeMin(toInteger(precision), 292); + if (precision) { + // Shift with exponential notation to avoid floating-point issues. + // See [MDN](https://mdn.io/round#Examples) for more details. + var pair = (toString(number) + 'e').split('e'), + value = func(pair[0] + 'e' + (+pair[1] + precision)); + + pair = (toString(value) + 'e').split('e'); + return +(pair[0] + 'e' + (+pair[1] - precision)); + } + return func(number); + }; + } + + /** + * Creates a set object of `values`. + * + * @private + * @param {Array} values The values to add to the set. + * @returns {Object} Returns the new set. + */ + var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) { + return new Set(values); + }; + + /** + * Creates a `_.toPairs` or `_.toPairsIn` function. + * + * @private + * @param {Function} keysFunc The function to get the keys of a given object. + * @returns {Function} Returns the new pairs function. + */ + function createToPairs(keysFunc) { + return function(object) { + var tag = getTag(object); + if (tag == mapTag) { + return mapToArray(object); + } + if (tag == setTag) { + return setToPairs(object); + } + return baseToPairs(object, keysFunc(object)); + }; + } + + /** + * Creates a function that either curries or invokes `func` with optional + * `this` binding and partially applied arguments. + * + * @private + * @param {Function|string} func The function or method name to wrap. + * @param {number} bitmask The bitmask flags. + * 1 - `_.bind` + * 2 - `_.bindKey` + * 4 - `_.curry` or `_.curryRight` of a bound function + * 8 - `_.curry` + * 16 - `_.curryRight` + * 32 - `_.partial` + * 64 - `_.partialRight` + * 128 - `_.rearg` + * 256 - `_.ary` + * 512 - `_.flip` + * @param {*} [thisArg] The `this` binding of `func`. + * @param {Array} [partials] The arguments to be partially applied. + * @param {Array} [holders] The `partials` placeholder indexes. + * @param {Array} [argPos] The argument positions of the new function. + * @param {number} [ary] The arity cap of `func`. + * @param {number} [arity] The arity of `func`. + * @returns {Function} Returns the new wrapped function. + */ + function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { + var isBindKey = bitmask & WRAP_BIND_KEY_FLAG; + if (!isBindKey && typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + var length = partials ? partials.length : 0; + if (!length) { + bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG); + partials = holders = undefined; + } + ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0); + arity = arity === undefined ? arity : toInteger(arity); + length -= holders ? holders.length : 0; + + if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) { + var partialsRight = partials, + holdersRight = holders; + + partials = holders = undefined; + } + var data = isBindKey ? undefined : getData(func); + + var newData = [ + func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, + argPos, ary, arity + ]; + + if (data) { + mergeData(newData, data); + } + func = newData[0]; + bitmask = newData[1]; + thisArg = newData[2]; + partials = newData[3]; + holders = newData[4]; + arity = newData[9] = newData[9] === undefined + ? (isBindKey ? 0 : func.length) + : nativeMax(newData[9] - length, 0); + + if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) { + bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG); + } + if (!bitmask || bitmask == WRAP_BIND_FLAG) { + var result = createBind(func, bitmask, thisArg); + } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) { + result = createCurry(func, bitmask, arity); + } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) { + result = createPartial(func, bitmask, thisArg, partials); + } else { + result = createHybrid.apply(undefined, newData); + } + var setter = data ? baseSetData : setData; + return setWrapToString(setter(result, newData), func, bitmask); + } + + /** + * Used by `_.defaults` to customize its `_.assignIn` use to assign properties + * of source objects to the destination object for all destination properties + * that resolve to `undefined`. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to assign. + * @param {Object} object The parent object of `objValue`. + * @returns {*} Returns the value to assign. + */ + function customDefaultsAssignIn(objValue, srcValue, key, object) { + if (objValue === undefined || + (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) { + return srcValue; + } + return objValue; + } + + /** + * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source + * objects into destination objects that are passed thru. + * + * @private + * @param {*} objValue The destination value. + * @param {*} srcValue The source value. + * @param {string} key The key of the property to merge. + * @param {Object} object The parent object of `objValue`. + * @param {Object} source The parent object of `srcValue`. + * @param {Object} [stack] Tracks traversed source values and their merged + * counterparts. + * @returns {*} Returns the value to assign. + */ + function customDefaultsMerge(objValue, srcValue, key, object, source, stack) { + if (isObject(objValue) && isObject(srcValue)) { + // Recursively merge objects and arrays (susceptible to call stack limits). + stack.set(srcValue, objValue); + baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack); + stack['delete'](srcValue); + } + return objValue; + } + + /** + * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain + * objects. + * + * @private + * @param {*} value The value to inspect. + * @param {string} key The key of the property to inspect. + * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`. + */ + function customOmitClone(value) { + return isPlainObject(value) ? undefined : value; + } + + /** + * A specialized version of `baseIsEqualDeep` for arrays with support for + * partial deep comparisons. + * + * @private + * @param {Array} array The array to compare. + * @param {Array} other The other array to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `array` and `other` objects. + * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`. + */ + function equalArrays(array, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + arrLength = array.length, + othLength = other.length; + + if (arrLength != othLength && !(isPartial && othLength > arrLength)) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(array); + if (stacked && stack.get(other)) { + return stacked == other; + } + var index = -1, + result = true, + seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined; + + stack.set(array, other); + stack.set(other, array); + + // Ignore non-index properties. + while (++index < arrLength) { + var arrValue = array[index], + othValue = other[index]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, arrValue, index, other, array, stack) + : customizer(arrValue, othValue, index, array, other, stack); + } + if (compared !== undefined) { + if (compared) { + continue; + } + result = false; + break; + } + // Recursively compare arrays (susceptible to call stack limits). + if (seen) { + if (!arraySome(other, function(othValue, othIndex) { + if (!cacheHas(seen, othIndex) && + (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) { + return seen.push(othIndex); + } + })) { + result = false; + break; + } + } else if (!( + arrValue === othValue || + equalFunc(arrValue, othValue, bitmask, customizer, stack) + )) { + result = false; + break; + } + } + stack['delete'](array); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseIsEqualDeep` for comparing objects of + * the same `toStringTag`. + * + * **Note:** This function only supports comparing values with tags of + * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {string} tag The `toStringTag` of the objects to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) { + switch (tag) { + case dataViewTag: + if ((object.byteLength != other.byteLength) || + (object.byteOffset != other.byteOffset)) { + return false; + } + object = object.buffer; + other = other.buffer; + + case arrayBufferTag: + if ((object.byteLength != other.byteLength) || + !equalFunc(new Uint8Array(object), new Uint8Array(other))) { + return false; + } + return true; + + case boolTag: + case dateTag: + case numberTag: + // Coerce booleans to `1` or `0` and dates to milliseconds. + // Invalid dates are coerced to `NaN`. + return eq(+object, +other); + + case errorTag: + return object.name == other.name && object.message == other.message; + + case regexpTag: + case stringTag: + // Coerce regexes to strings and treat strings, primitives and objects, + // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring + // for more details. + return object == (other + ''); + + case mapTag: + var convert = mapToArray; + + case setTag: + var isPartial = bitmask & COMPARE_PARTIAL_FLAG; + convert || (convert = setToArray); + + if (object.size != other.size && !isPartial) { + return false; + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked) { + return stacked == other; + } + bitmask |= COMPARE_UNORDERED_FLAG; + + // Recursively compare objects (susceptible to call stack limits). + stack.set(object, other); + var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack); + stack['delete'](object); + return result; + + case symbolTag: + if (symbolValueOf) { + return symbolValueOf.call(object) == symbolValueOf.call(other); + } + } + return false; + } + + /** + * A specialized version of `baseIsEqualDeep` for objects with support for + * partial deep comparisons. + * + * @private + * @param {Object} object The object to compare. + * @param {Object} other The other object to compare. + * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details. + * @param {Function} customizer The function to customize comparisons. + * @param {Function} equalFunc The function to determine equivalents of values. + * @param {Object} stack Tracks traversed `object` and `other` objects. + * @returns {boolean} Returns `true` if the objects are equivalent, else `false`. + */ + function equalObjects(object, other, bitmask, customizer, equalFunc, stack) { + var isPartial = bitmask & COMPARE_PARTIAL_FLAG, + objProps = getAllKeys(object), + objLength = objProps.length, + othProps = getAllKeys(other), + othLength = othProps.length; + + if (objLength != othLength && !isPartial) { + return false; + } + var index = objLength; + while (index--) { + var key = objProps[index]; + if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) { + return false; + } + } + // Assume cyclic values are equal. + var stacked = stack.get(object); + if (stacked && stack.get(other)) { + return stacked == other; + } + var result = true; + stack.set(object, other); + stack.set(other, object); + + var skipCtor = isPartial; + while (++index < objLength) { + key = objProps[index]; + var objValue = object[key], + othValue = other[key]; + + if (customizer) { + var compared = isPartial + ? customizer(othValue, objValue, key, other, object, stack) + : customizer(objValue, othValue, key, object, other, stack); + } + // Recursively compare objects (susceptible to call stack limits). + if (!(compared === undefined + ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack)) + : compared + )) { + result = false; + break; + } + skipCtor || (skipCtor = key == 'constructor'); + } + if (result && !skipCtor) { + var objCtor = object.constructor, + othCtor = other.constructor; + + // Non `Object` object instances with different constructors are not equal. + if (objCtor != othCtor && + ('constructor' in object && 'constructor' in other) && + !(typeof objCtor == 'function' && objCtor instanceof objCtor && + typeof othCtor == 'function' && othCtor instanceof othCtor)) { + result = false; + } + } + stack['delete'](object); + stack['delete'](other); + return result; + } + + /** + * A specialized version of `baseRest` which flattens the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @returns {Function} Returns the new function. + */ + function flatRest(func) { + return setToString(overRest(func, undefined, flatten), func + ''); + } + + /** + * Creates an array of own enumerable property names and symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeys(object) { + return baseGetAllKeys(object, keys, getSymbols); + } + + /** + * Creates an array of own and inherited enumerable property names and + * symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names and symbols. + */ + function getAllKeysIn(object) { + return baseGetAllKeys(object, keysIn, getSymbolsIn); + } + + /** + * Gets metadata for `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {*} Returns the metadata for `func`. + */ + var getData = !metaMap ? noop : function(func) { + return metaMap.get(func); + }; + + /** + * Gets the name of `func`. + * + * @private + * @param {Function} func The function to query. + * @returns {string} Returns the function name. + */ + function getFuncName(func) { + var result = (func.name + ''), + array = realNames[result], + length = hasOwnProperty.call(realNames, result) ? array.length : 0; + + while (length--) { + var data = array[length], + otherFunc = data.func; + if (otherFunc == null || otherFunc == func) { + return data.name; + } + } + return result; + } + + /** + * Gets the argument placeholder value for `func`. + * + * @private + * @param {Function} func The function to inspect. + * @returns {*} Returns the placeholder value. + */ + function getHolder(func) { + var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func; + return object.placeholder; + } + + /** + * Gets the appropriate "iteratee" function. If `_.iteratee` is customized, + * this function returns the custom method, otherwise it returns `baseIteratee`. + * If arguments are provided, the chosen function is invoked with them and + * its result is returned. + * + * @private + * @param {*} [value] The value to convert to an iteratee. + * @param {number} [arity] The arity of the created iteratee. + * @returns {Function} Returns the chosen function or its result. + */ + function getIteratee() { + var result = lodash.iteratee || iteratee; + result = result === iteratee ? baseIteratee : result; + return arguments.length ? result(arguments[0], arguments[1]) : result; + } + + /** + * Gets the data for `map`. + * + * @private + * @param {Object} map The map to query. + * @param {string} key The reference key. + * @returns {*} Returns the map data. + */ + function getMapData(map, key) { + var data = map.__data__; + return isKeyable(key) + ? data[typeof key == 'string' ? 'string' : 'hash'] + : data.map; + } + + /** + * Gets the property names, values, and compare flags of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the match data of `object`. + */ + function getMatchData(object) { + var result = keys(object), + length = result.length; + + while (length--) { + var key = result[length], + value = object[key]; + + result[length] = [key, value, isStrictComparable(value)]; + } + return result; + } + + /** + * Gets the native function at `key` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {string} key The key of the method to get. + * @returns {*} Returns the function if it's native, else `undefined`. + */ + function getNative(object, key) { + var value = getValue(object, key); + return baseIsNative(value) ? value : undefined; + } + + /** + * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the raw `toStringTag`. + */ + function getRawTag(value) { + var isOwn = hasOwnProperty.call(value, symToStringTag), + tag = value[symToStringTag]; + + try { + value[symToStringTag] = undefined; + var unmasked = true; + } catch (e) {} + + var result = nativeObjectToString.call(value); + if (unmasked) { + if (isOwn) { + value[symToStringTag] = tag; + } else { + delete value[symToStringTag]; + } + } + return result; + } + + /** + * Creates an array of the own enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbols = !nativeGetSymbols ? stubArray : function(object) { + if (object == null) { + return []; + } + object = Object(object); + return arrayFilter(nativeGetSymbols(object), function(symbol) { + return propertyIsEnumerable.call(object, symbol); + }); + }; + + /** + * Creates an array of the own and inherited enumerable symbols of `object`. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of symbols. + */ + var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) { + var result = []; + while (object) { + arrayPush(result, getSymbols(object)); + object = getPrototype(object); + } + return result; + }; + + /** + * Gets the `toStringTag` of `value`. + * + * @private + * @param {*} value The value to query. + * @returns {string} Returns the `toStringTag`. + */ + var getTag = baseGetTag; + + // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6. + if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) || + (Map && getTag(new Map) != mapTag) || + (Promise && getTag(Promise.resolve()) != promiseTag) || + (Set && getTag(new Set) != setTag) || + (WeakMap && getTag(new WeakMap) != weakMapTag)) { + getTag = function(value) { + var result = baseGetTag(value), + Ctor = result == objectTag ? value.constructor : undefined, + ctorString = Ctor ? toSource(Ctor) : ''; + + if (ctorString) { + switch (ctorString) { + case dataViewCtorString: return dataViewTag; + case mapCtorString: return mapTag; + case promiseCtorString: return promiseTag; + case setCtorString: return setTag; + case weakMapCtorString: return weakMapTag; + } + } + return result; + }; + } + + /** + * Gets the view, applying any `transforms` to the `start` and `end` positions. + * + * @private + * @param {number} start The start of the view. + * @param {number} end The end of the view. + * @param {Array} transforms The transformations to apply to the view. + * @returns {Object} Returns an object containing the `start` and `end` + * positions of the view. + */ + function getView(start, end, transforms) { + var index = -1, + length = transforms.length; + + while (++index < length) { + var data = transforms[index], + size = data.size; + + switch (data.type) { + case 'drop': start += size; break; + case 'dropRight': end -= size; break; + case 'take': end = nativeMin(end, start + size); break; + case 'takeRight': start = nativeMax(start, end - size); break; + } + } + return { 'start': start, 'end': end }; + } + + /** + * Extracts wrapper details from the `source` body comment. + * + * @private + * @param {string} source The source to inspect. + * @returns {Array} Returns the wrapper details. + */ + function getWrapDetails(source) { + var match = source.match(reWrapDetails); + return match ? match[1].split(reSplitDetails) : []; + } + + /** + * Checks if `path` exists on `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @param {Function} hasFunc The function to check properties. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + */ + function hasPath(object, path, hasFunc) { + path = castPath(path, object); + + var index = -1, + length = path.length, + result = false; + + while (++index < length) { + var key = toKey(path[index]); + if (!(result = object != null && hasFunc(object, key))) { + break; + } + object = object[key]; + } + if (result || ++index != length) { + return result; + } + length = object == null ? 0 : object.length; + return !!length && isLength(length) && isIndex(key, length) && + (isArray(object) || isArguments(object)); + } + + /** + * Initializes an array clone. + * + * @private + * @param {Array} array The array to clone. + * @returns {Array} Returns the initialized clone. + */ + function initCloneArray(array) { + var length = array.length, + result = new array.constructor(length); + + // Add properties assigned by `RegExp#exec`. + if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) { + result.index = array.index; + result.input = array.input; + } + return result; + } + + /** + * Initializes an object clone. + * + * @private + * @param {Object} object The object to clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneObject(object) { + return (typeof object.constructor == 'function' && !isPrototype(object)) + ? baseCreate(getPrototype(object)) + : {}; + } + + /** + * Initializes an object clone based on its `toStringTag`. + * + * **Note:** This function only supports cloning values with tags of + * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`. + * + * @private + * @param {Object} object The object to clone. + * @param {string} tag The `toStringTag` of the object to clone. + * @param {boolean} [isDeep] Specify a deep clone. + * @returns {Object} Returns the initialized clone. + */ + function initCloneByTag(object, tag, isDeep) { + var Ctor = object.constructor; + switch (tag) { + case arrayBufferTag: + return cloneArrayBuffer(object); + + case boolTag: + case dateTag: + return new Ctor(+object); + + case dataViewTag: + return cloneDataView(object, isDeep); + + case float32Tag: case float64Tag: + case int8Tag: case int16Tag: case int32Tag: + case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag: + return cloneTypedArray(object, isDeep); + + case mapTag: + return new Ctor; + + case numberTag: + case stringTag: + return new Ctor(object); + + case regexpTag: + return cloneRegExp(object); + + case setTag: + return new Ctor; + + case symbolTag: + return cloneSymbol(object); + } + } + + /** + * Inserts wrapper `details` in a comment at the top of the `source` body. + * + * @private + * @param {string} source The source to modify. + * @returns {Array} details The details to insert. + * @returns {string} Returns the modified source. + */ + function insertWrapDetails(source, details) { + var length = details.length; + if (!length) { + return source; + } + var lastIndex = length - 1; + details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; + details = details.join(length > 2 ? ', ' : ' '); + return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); + } + + /** + * Checks if `value` is a flattenable `arguments` object or array. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is flattenable, else `false`. + */ + function isFlattenable(value) { + return isArray(value) || isArguments(value) || + !!(spreadableSymbol && value && value[spreadableSymbol]); + } + + /** + * Checks if `value` is a valid array-like index. + * + * @private + * @param {*} value The value to check. + * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. + * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. + */ + function isIndex(value, length) { + var type = typeof value; + length = length == null ? MAX_SAFE_INTEGER : length; + + return !!length && + (type == 'number' || + (type != 'symbol' && reIsUint.test(value))) && + (value > -1 && value % 1 == 0 && value < length); + } + + /** + * Checks if the given arguments are from an iteratee call. + * + * @private + * @param {*} value The potential iteratee value argument. + * @param {*} index The potential iteratee index or key argument. + * @param {*} object The potential iteratee object argument. + * @returns {boolean} Returns `true` if the arguments are from an iteratee call, + * else `false`. + */ + function isIterateeCall(value, index, object) { + if (!isObject(object)) { + return false; + } + var type = typeof index; + if (type == 'number' + ? (isArrayLike(object) && isIndex(index, object.length)) + : (type == 'string' && index in object) + ) { + return eq(object[index], value); + } + return false; + } + + /** + * Checks if `value` is a property name and not a property path. + * + * @private + * @param {*} value The value to check. + * @param {Object} [object] The object to query keys on. + * @returns {boolean} Returns `true` if `value` is a property name, else `false`. + */ + function isKey(value, object) { + if (isArray(value)) { + return false; + } + var type = typeof value; + if (type == 'number' || type == 'symbol' || type == 'boolean' || + value == null || isSymbol(value)) { + return true; + } + return reIsPlainProp.test(value) || !reIsDeepProp.test(value) || + (object != null && value in Object(object)); + } + + /** + * Checks if `value` is suitable for use as unique object key. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is suitable, else `false`. + */ + function isKeyable(value) { + var type = typeof value; + return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean') + ? (value !== '__proto__') + : (value === null); + } + + /** + * Checks if `func` has a lazy counterpart. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` has a lazy counterpart, + * else `false`. + */ + function isLaziable(func) { + var funcName = getFuncName(func), + other = lodash[funcName]; + + if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { + return false; + } + if (func === other) { + return true; + } + var data = getData(other); + return !!data && func === data[0]; + } + + /** + * Checks if `func` has its source masked. + * + * @private + * @param {Function} func The function to check. + * @returns {boolean} Returns `true` if `func` is masked, else `false`. + */ + function isMasked(func) { + return !!maskSrcKey && (maskSrcKey in func); + } + + /** + * Checks if `func` is capable of being masked. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `func` is maskable, else `false`. + */ + var isMaskable = coreJsData ? isFunction : stubFalse; + + /** + * Checks if `value` is likely a prototype object. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. + */ + function isPrototype(value) { + var Ctor = value && value.constructor, + proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; + + return value === proto; + } + + /** + * Checks if `value` is suitable for strict equality comparisons, i.e. `===`. + * + * @private + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` if suitable for strict + * equality comparisons, else `false`. + */ + function isStrictComparable(value) { + return value === value && !isObject(value); + } + + /** + * A specialized version of `matchesProperty` for source values suitable + * for strict equality comparisons, i.e. `===`. + * + * @private + * @param {string} key The key of the property to get. + * @param {*} srcValue The value to match. + * @returns {Function} Returns the new spec function. + */ + function matchesStrictComparable(key, srcValue) { + return function(object) { + if (object == null) { + return false; + } + return object[key] === srcValue && + (srcValue !== undefined || (key in Object(object))); + }; + } + + /** + * A specialized version of `_.memoize` which clears the memoized function's + * cache when it exceeds `MAX_MEMOIZE_SIZE`. + * + * @private + * @param {Function} func The function to have its output memoized. + * @returns {Function} Returns the new memoized function. + */ + function memoizeCapped(func) { + var result = memoize(func, function(key) { + if (cache.size === MAX_MEMOIZE_SIZE) { + cache.clear(); + } + return key; + }); + + var cache = result.cache; + return result; + } + + /** + * Merges the function metadata of `source` into `data`. + * + * Merging metadata reduces the number of wrappers used to invoke a function. + * This is possible because methods like `_.bind`, `_.curry`, and `_.partial` + * may be applied regardless of execution order. Methods like `_.ary` and + * `_.rearg` modify function arguments, making the order in which they are + * executed important, preventing the merging of metadata. However, we make + * an exception for a safe combined case where curried functions have `_.ary` + * and or `_.rearg` applied. + * + * @private + * @param {Array} data The destination metadata. + * @param {Array} source The source metadata. + * @returns {Array} Returns `data`. + */ + function mergeData(data, source) { + var bitmask = data[1], + srcBitmask = source[1], + newBitmask = bitmask | srcBitmask, + isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG); + + var isCombo = + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) || + ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) || + ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG)); + + // Exit early if metadata can't be merged. + if (!(isCommon || isCombo)) { + return data; + } + // Use source `thisArg` if available. + if (srcBitmask & WRAP_BIND_FLAG) { + data[2] = source[2]; + // Set when currying a bound function. + newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG; + } + // Compose partial arguments. + var value = source[3]; + if (value) { + var partials = data[3]; + data[3] = partials ? composeArgs(partials, value, source[4]) : value; + data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4]; + } + // Compose partial right arguments. + value = source[5]; + if (value) { + partials = data[5]; + data[5] = partials ? composeArgsRight(partials, value, source[6]) : value; + data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6]; + } + // Use source `argPos` if available. + value = source[7]; + if (value) { + data[7] = value; + } + // Use source `ary` if it's smaller. + if (srcBitmask & WRAP_ARY_FLAG) { + data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]); + } + // Use source `arity` if one is not provided. + if (data[9] == null) { + data[9] = source[9]; + } + // Use source `func` and merge bitmasks. + data[0] = source[0]; + data[1] = newBitmask; + + return data; + } + + /** + * This function is like + * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * except that it includes inherited enumerable properties. + * + * @private + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + */ + function nativeKeysIn(object) { + var result = []; + if (object != null) { + for (var key in Object(object)) { + result.push(key); + } + } + return result; + } + + /** + * Converts `value` to a string using `Object.prototype.toString`. + * + * @private + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + */ + function objectToString(value) { + return nativeObjectToString.call(value); + } + + /** + * A specialized version of `baseRest` which transforms the rest array. + * + * @private + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @param {Function} transform The rest array transform. + * @returns {Function} Returns the new function. + */ + function overRest(func, start, transform) { + start = nativeMax(start === undefined ? (func.length - 1) : start, 0); + return function() { + var args = arguments, + index = -1, + length = nativeMax(args.length - start, 0), + array = Array(length); + + while (++index < length) { + array[index] = args[start + index]; + } + index = -1; + var otherArgs = Array(start + 1); + while (++index < start) { + otherArgs[index] = args[index]; + } + otherArgs[start] = transform(array); + return apply(func, this, otherArgs); + }; + } + + /** + * Gets the parent value at `path` of `object`. + * + * @private + * @param {Object} object The object to query. + * @param {Array} path The path to get the parent value of. + * @returns {*} Returns the parent value. + */ + function parent(object, path) { + return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1)); + } + + /** + * Reorder `array` according to the specified indexes where the element at + * the first index is assigned as the first element, the element at + * the second index is assigned as the second element, and so on. + * + * @private + * @param {Array} array The array to reorder. + * @param {Array} indexes The arranged array indexes. + * @returns {Array} Returns `array`. + */ + function reorder(array, indexes) { + var arrLength = array.length, + length = nativeMin(indexes.length, arrLength), + oldArray = copyArray(array); + + while (length--) { + var index = indexes[length]; + array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; + } + return array; + } + + /** + * Sets metadata for `func`. + * + * **Note:** If this function becomes hot, i.e. is invoked a lot in a short + * period of time, it will trip its breaker and transition to an identity + * function to avoid garbage collection pauses in V8. See + * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) + * for more details. + * + * @private + * @param {Function} func The function to associate metadata with. + * @param {*} data The metadata. + * @returns {Function} Returns `func`. + */ + var setData = shortOut(baseSetData); + + /** + * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout). + * + * @private + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @returns {number|Object} Returns the timer id or timeout object. + */ + var setTimeout = ctxSetTimeout || function(func, wait) { + return root.setTimeout(func, wait); + }; + + /** + * Sets the `toString` method of `func` to return `string`. + * + * @private + * @param {Function} func The function to modify. + * @param {Function} string The `toString` result. + * @returns {Function} Returns `func`. + */ + var setToString = shortOut(baseSetToString); + + /** + * Sets the `toString` method of `wrapper` to mimic the source of `reference` + * with wrapper details in a comment at the top of the source body. + * + * @private + * @param {Function} wrapper The function to modify. + * @param {Function} reference The reference function. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Function} Returns `wrapper`. + */ + function setWrapToString(wrapper, reference, bitmask) { + var source = (reference + ''); + return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); + } + + /** + * Creates a function that'll short out and invoke `identity` instead + * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` + * milliseconds. + * + * @private + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new shortable function. + */ + function shortOut(func) { + var count = 0, + lastCalled = 0; + + return function() { + var stamp = nativeNow(), + remaining = HOT_SPAN - (stamp - lastCalled); + + lastCalled = stamp; + if (remaining > 0) { + if (++count >= HOT_COUNT) { + return arguments[0]; + } + } else { + count = 0; + } + return func.apply(undefined, arguments); + }; + } + + /** + * A specialized version of `_.shuffle` which mutates and sets the size of `array`. + * + * @private + * @param {Array} array The array to shuffle. + * @param {number} [size=array.length] The size of `array`. + * @returns {Array} Returns `array`. + */ + function shuffleSelf(array, size) { + var index = -1, + length = array.length, + lastIndex = length - 1; + + size = size === undefined ? length : size; + while (++index < size) { + var rand = baseRandom(index, lastIndex), + value = array[rand]; + + array[rand] = array[index]; + array[index] = value; + } + array.length = size; + return array; + } + + /** + * Converts `string` to a property path array. + * + * @private + * @param {string} string The string to convert. + * @returns {Array} Returns the property path array. + */ + var stringToPath = memoizeCapped(function(string) { + var result = []; + if (string.charCodeAt(0) === 46 /* . */) { + result.push(''); + } + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); + }); + return result; + }); + + /** + * Converts `value` to a string key if it's not a string or symbol. + * + * @private + * @param {*} value The value to inspect. + * @returns {string|symbol} Returns the key. + */ + function toKey(value) { + if (typeof value == 'string' || isSymbol(value)) { + return value; + } + var result = (value + ''); + return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; + } + + /** + * Converts `func` to its source code. + * + * @private + * @param {Function} func The function to convert. + * @returns {string} Returns the source code. + */ + function toSource(func) { + if (func != null) { + try { + return funcToString.call(func); + } catch (e) {} + try { + return (func + ''); + } catch (e) {} + } + return ''; + } + + /** + * Updates wrapper `details` based on `bitmask` flags. + * + * @private + * @returns {Array} details The details to modify. + * @param {number} bitmask The bitmask flags. See `createWrap` for more details. + * @returns {Array} Returns `details`. + */ + function updateWrapDetails(details, bitmask) { + arrayEach(wrapFlags, function(pair) { + var value = '_.' + pair[0]; + if ((bitmask & pair[1]) && !arrayIncludes(details, value)) { + details.push(value); + } + }); + return details.sort(); + } + + /** + * Creates a clone of `wrapper`. + * + * @private + * @param {Object} wrapper The wrapper to clone. + * @returns {Object} Returns the cloned wrapper. + */ + function wrapperClone(wrapper) { + if (wrapper instanceof LazyWrapper) { + return wrapper.clone(); + } + var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); + result.__actions__ = copyArray(wrapper.__actions__); + result.__index__ = wrapper.__index__; + result.__values__ = wrapper.__values__; + return result; + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an array of elements split into groups the length of `size`. + * If `array` can't be split evenly, the final chunk will be the remaining + * elements. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to process. + * @param {number} [size=1] The length of each chunk + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the new array of chunks. + * @example + * + * _.chunk(['a', 'b', 'c', 'd'], 2); + * // => [['a', 'b'], ['c', 'd']] + * + * _.chunk(['a', 'b', 'c', 'd'], 3); + * // => [['a', 'b', 'c'], ['d']] + */ + function chunk(array, size, guard) { + if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) { + size = 1; + } else { + size = nativeMax(toInteger(size), 0); + } + var length = array == null ? 0 : array.length; + if (!length || size < 1) { + return []; + } + var index = 0, + resIndex = 0, + result = Array(nativeCeil(length / size)); + + while (index < length) { + result[resIndex++] = baseSlice(array, index, (index += size)); + } + return result; + } + + /** + * Creates an array with all falsey values removed. The values `false`, `null`, + * `0`, `""`, `undefined`, and `NaN` are falsey. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to compact. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.compact([0, 1, false, 2, '', 3]); + * // => [1, 2, 3] + */ + function compact(array) { + var index = -1, + length = array == null ? 0 : array.length, + resIndex = 0, + result = []; + + while (++index < length) { + var value = array[index]; + if (value) { + result[resIndex++] = value; + } + } + return result; + } + + /** + * Creates a new array concatenating `array` with any additional arrays + * and/or values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to concatenate. + * @param {...*} [values] The values to concatenate. + * @returns {Array} Returns the new concatenated array. + * @example + * + * var array = [1]; + * var other = _.concat(array, 2, [3], [[4]]); + * + * console.log(other); + * // => [1, 2, 3, [4]] + * + * console.log(array); + * // => [1] + */ + function concat() { + var length = arguments.length; + if (!length) { + return []; + } + var args = Array(length - 1), + array = arguments[0], + index = length; + + while (index--) { + args[index - 1] = arguments[index]; + } + return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1)); + } + + /** + * Creates an array of `array` values not included in the other given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * **Note:** Unlike `_.pullAll`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.without, _.xor + * @example + * + * _.difference([2, 1], [2, 3]); + * // => [1] + */ + var difference = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `iteratee` which + * is invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * **Note:** Unlike `_.pullAllBy`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2] + * + * // The `_.property` iteratee shorthand. + * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var differenceBy = baseRest(function(array, values) { + var iteratee = last(values); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.difference` except that it accepts `comparator` + * which is invoked to compare elements of `array` to `values`. The order and + * references of result values are determined by the first array. The comparator + * is invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.pullAllWith`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...Array} [values] The values to exclude. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * + * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual); + * // => [{ 'x': 2, 'y': 1 }] + */ + var differenceWith = baseRest(function(array, values) { + var comparator = last(values); + if (isArrayLikeObject(comparator)) { + comparator = undefined; + } + return isArrayLikeObject(array) + ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator) + : []; + }); + + /** + * Creates a slice of `array` with `n` elements dropped from the beginning. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.drop([1, 2, 3]); + * // => [2, 3] + * + * _.drop([1, 2, 3], 2); + * // => [3] + * + * _.drop([1, 2, 3], 5); + * // => [] + * + * _.drop([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function drop(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with `n` elements dropped from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to drop. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.dropRight([1, 2, 3]); + * // => [1, 2] + * + * _.dropRight([1, 2, 3], 2); + * // => [1] + * + * _.dropRight([1, 2, 3], 5); + * // => [] + * + * _.dropRight([1, 2, 3], 0); + * // => [1, 2, 3] + */ + function dropRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` excluding elements dropped from the end. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.dropRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney'] + * + * // The `_.matches` iteratee shorthand. + * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropRightWhile(users, ['active', false]); + * // => objects for ['barney'] + * + * // The `_.property` iteratee shorthand. + * _.dropRightWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true, true) + : []; + } + + /** + * Creates a slice of `array` excluding elements dropped from the beginning. + * Elements are dropped until `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.dropWhile(users, function(o) { return !o.active; }); + * // => objects for ['pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.dropWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.dropWhile(users, ['active', false]); + * // => objects for ['pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.dropWhile(users, 'active'); + * // => objects for ['barney', 'fred', 'pebbles'] + */ + function dropWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), true) + : []; + } + + /** + * Fills elements of `array` with `value` from `start` up to, but not + * including, `end`. + * + * **Note:** This method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Array + * @param {Array} array The array to fill. + * @param {*} value The value to fill `array` with. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.fill(array, 'a'); + * console.log(array); + * // => ['a', 'a', 'a'] + * + * _.fill(Array(3), 2); + * // => [2, 2, 2] + * + * _.fill([4, 6, 8, 10], '*', 1, 3); + * // => [4, '*', '*', 10] + */ + function fill(array, value, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (start && typeof start != 'number' && isIterateeCall(array, value, start)) { + start = 0; + end = length; + } + return baseFill(array, value, start, end); + } + + /** + * This method is like `_.find` except that it returns the index of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.findIndex(users, function(o) { return o.user == 'barney'; }); + * // => 0 + * + * // The `_.matches` iteratee shorthand. + * _.findIndex(users, { 'user': 'fred', 'active': false }); + * // => 1 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findIndex(users, ['active', false]); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.findIndex(users, 'active'); + * // => 2 + */ + function findIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseFindIndex(array, getIteratee(predicate, 3), index); + } + + /** + * This method is like `_.findIndex` except that it iterates over elements + * of `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the found element, else `-1`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; }); + * // => 2 + * + * // The `_.matches` iteratee shorthand. + * _.findLastIndex(users, { 'user': 'barney', 'active': true }); + * // => 0 + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastIndex(users, ['active', false]); + * // => 2 + * + * // The `_.property` iteratee shorthand. + * _.findLastIndex(users, 'active'); + * // => 0 + */ + function findLastIndex(array, predicate, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length - 1; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = fromIndex < 0 + ? nativeMax(length + index, 0) + : nativeMin(index, length - 1); + } + return baseFindIndex(array, getIteratee(predicate, 3), index, true); + } + + /** + * Flattens `array` a single level deep. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flatten([1, [2, [3, [4]], 5]]); + * // => [1, 2, [3, [4]], 5] + */ + function flatten(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, 1) : []; + } + + /** + * Recursively flattens `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to flatten. + * @returns {Array} Returns the new flattened array. + * @example + * + * _.flattenDeep([1, [2, [3, [4]], 5]]); + * // => [1, 2, 3, 4, 5] + */ + function flattenDeep(array) { + var length = array == null ? 0 : array.length; + return length ? baseFlatten(array, INFINITY) : []; + } + + /** + * Recursively flatten `array` up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Array + * @param {Array} array The array to flatten. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * var array = [1, [2, [3, [4]], 5]]; + * + * _.flattenDepth(array, 1); + * // => [1, 2, [3, [4]], 5] + * + * _.flattenDepth(array, 2); + * // => [1, 2, 3, [4], 5] + */ + function flattenDepth(array, depth) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(array, depth); + } + + /** + * The inverse of `_.toPairs`; this method returns an object composed + * from key-value `pairs`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} pairs The key-value pairs. + * @returns {Object} Returns the new object. + * @example + * + * _.fromPairs([['a', 1], ['b', 2]]); + * // => { 'a': 1, 'b': 2 } + */ + function fromPairs(pairs) { + var index = -1, + length = pairs == null ? 0 : pairs.length, + result = {}; + + while (++index < length) { + var pair = pairs[index]; + result[pair[0]] = pair[1]; + } + return result; + } + + /** + * Gets the first element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias first + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the first element of `array`. + * @example + * + * _.head([1, 2, 3]); + * // => 1 + * + * _.head([]); + * // => undefined + */ + function head(array) { + return (array && array.length) ? array[0] : undefined; + } + + /** + * Gets the index at which the first occurrence of `value` is found in `array` + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. If `fromIndex` is negative, it's used as the + * offset from the end of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.indexOf([1, 2, 1, 2], 2); + * // => 1 + * + * // Search from the `fromIndex`. + * _.indexOf([1, 2, 1, 2], 2, 2); + * // => 3 + */ + function indexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = fromIndex == null ? 0 : toInteger(fromIndex); + if (index < 0) { + index = nativeMax(length + index, 0); + } + return baseIndexOf(array, value, index); + } + + /** + * Gets all but the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.initial([1, 2, 3]); + * // => [1, 2] + */ + function initial(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 0, -1) : []; + } + + /** + * Creates an array of unique values that are included in all given arrays + * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. The order and references of result values are + * determined by the first array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersection([2, 1], [2, 3]); + * // => [2] + */ + var intersection = baseRest(function(arrays) { + var mapped = arrayMap(arrays, castArrayLikeObject); + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `iteratee` + * which is invoked for each element of each `arrays` to generate the criterion + * by which they're compared. The order and references of result values are + * determined by the first array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [2.1] + * + * // The `_.property` iteratee shorthand. + * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }] + */ + var intersectionBy = baseRest(function(arrays) { + var iteratee = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + if (iteratee === last(mapped)) { + iteratee = undefined; + } else { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, getIteratee(iteratee, 2)) + : []; + }); + + /** + * This method is like `_.intersection` except that it accepts `comparator` + * which is invoked to compare elements of `arrays`. The order and references + * of result values are determined by the first array. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of intersecting values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.intersectionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }] + */ + var intersectionWith = baseRest(function(arrays) { + var comparator = last(arrays), + mapped = arrayMap(arrays, castArrayLikeObject); + + comparator = typeof comparator == 'function' ? comparator : undefined; + if (comparator) { + mapped.pop(); + } + return (mapped.length && mapped[0] === arrays[0]) + ? baseIntersection(mapped, undefined, comparator) + : []; + }); + + /** + * Converts all elements in `array` into a string separated by `separator`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to convert. + * @param {string} [separator=','] The element separator. + * @returns {string} Returns the joined string. + * @example + * + * _.join(['a', 'b', 'c'], '~'); + * // => 'a~b~c' + */ + function join(array, separator) { + return array == null ? '' : nativeJoin.call(array, separator); + } + + /** + * Gets the last element of `array`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @returns {*} Returns the last element of `array`. + * @example + * + * _.last([1, 2, 3]); + * // => 3 + */ + function last(array) { + var length = array == null ? 0 : array.length; + return length ? array[length - 1] : undefined; + } + + /** + * This method is like `_.indexOf` except that it iterates over elements of + * `array` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=array.length-1] The index to search from. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.lastIndexOf([1, 2, 1, 2], 2); + * // => 3 + * + * // Search from the `fromIndex`. + * _.lastIndexOf([1, 2, 1, 2], 2, 2); + * // => 1 + */ + function lastIndexOf(array, value, fromIndex) { + var length = array == null ? 0 : array.length; + if (!length) { + return -1; + } + var index = length; + if (fromIndex !== undefined) { + index = toInteger(fromIndex); + index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1); + } + return value === value + ? strictLastIndexOf(array, value, index) + : baseFindIndex(array, baseIsNaN, index, true); + } + + /** + * Gets the element at index `n` of `array`. If `n` is negative, the nth + * element from the end is returned. + * + * @static + * @memberOf _ + * @since 4.11.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=0] The index of the element to return. + * @returns {*} Returns the nth element of `array`. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * + * _.nth(array, 1); + * // => 'b' + * + * _.nth(array, -2); + * // => 'c'; + */ + function nth(array, n) { + return (array && array.length) ? baseNth(array, toInteger(n)) : undefined; + } + + /** + * Removes all given values from `array` using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove` + * to remove elements from an array by predicate. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...*} [values] The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pull(array, 'a', 'c'); + * console.log(array); + * // => ['b', 'b'] + */ + var pull = baseRest(pullAll); + + /** + * This method is like `_.pull` except that it accepts an array of values to remove. + * + * **Note:** Unlike `_.difference`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @returns {Array} Returns `array`. + * @example + * + * var array = ['a', 'b', 'c', 'a', 'b', 'c']; + * + * _.pullAll(array, ['a', 'c']); + * console.log(array); + * // => ['b', 'b'] + */ + function pullAll(array, values) { + return (array && array.length && values && values.length) + ? basePullAll(array, values) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `iteratee` which is + * invoked for each element of `array` and `values` to generate the criterion + * by which they're compared. The iteratee is invoked with one argument: (value). + * + * **Note:** Unlike `_.differenceBy`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }]; + * + * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x'); + * console.log(array); + * // => [{ 'x': 2 }] + */ + function pullAllBy(array, values, iteratee) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, getIteratee(iteratee, 2)) + : array; + } + + /** + * This method is like `_.pullAll` except that it accepts `comparator` which + * is invoked to compare elements of `array` to `values`. The comparator is + * invoked with two arguments: (arrVal, othVal). + * + * **Note:** Unlike `_.differenceWith`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Array} values The values to remove. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns `array`. + * @example + * + * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }]; + * + * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual); + * console.log(array); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }] + */ + function pullAllWith(array, values, comparator) { + return (array && array.length && values && values.length) + ? basePullAll(array, values, undefined, comparator) + : array; + } + + /** + * Removes elements from `array` corresponding to `indexes` and returns an + * array of removed elements. + * + * **Note:** Unlike `_.at`, this method mutates `array`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {...(number|number[])} [indexes] The indexes of elements to remove. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = ['a', 'b', 'c', 'd']; + * var pulled = _.pullAt(array, [1, 3]); + * + * console.log(array); + * // => ['a', 'c'] + * + * console.log(pulled); + * // => ['b', 'd'] + */ + var pullAt = flatRest(function(array, indexes) { + var length = array == null ? 0 : array.length, + result = baseAt(array, indexes); + + basePullAt(array, arrayMap(indexes, function(index) { + return isIndex(index, length) ? +index : index; + }).sort(compareAscending)); + + return result; + }); + + /** + * Removes all elements from `array` that `predicate` returns truthy for + * and returns an array of the removed elements. The predicate is invoked + * with three arguments: (value, index, array). + * + * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull` + * to pull elements from an array by value. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Array + * @param {Array} array The array to modify. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new array of removed elements. + * @example + * + * var array = [1, 2, 3, 4]; + * var evens = _.remove(array, function(n) { + * return n % 2 == 0; + * }); + * + * console.log(array); + * // => [1, 3] + * + * console.log(evens); + * // => [2, 4] + */ + function remove(array, predicate) { + var result = []; + if (!(array && array.length)) { + return result; + } + var index = -1, + indexes = [], + length = array.length; + + predicate = getIteratee(predicate, 3); + while (++index < length) { + var value = array[index]; + if (predicate(value, index, array)) { + result.push(value); + indexes.push(index); + } + } + basePullAt(array, indexes); + return result; + } + + /** + * Reverses `array` so that the first element becomes the last, the second + * element becomes the second to last, and so on. + * + * **Note:** This method mutates `array` and is based on + * [`Array#reverse`](https://mdn.io/Array/reverse). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to modify. + * @returns {Array} Returns `array`. + * @example + * + * var array = [1, 2, 3]; + * + * _.reverse(array); + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function reverse(array) { + return array == null ? array : nativeReverse.call(array); + } + + /** + * Creates a slice of `array` from `start` up to, but not including, `end`. + * + * **Note:** This method is used instead of + * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are + * returned. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to slice. + * @param {number} [start=0] The start position. + * @param {number} [end=array.length] The end position. + * @returns {Array} Returns the slice of `array`. + */ + function slice(array, start, end) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + if (end && typeof end != 'number' && isIterateeCall(array, start, end)) { + start = 0; + end = length; + } + else { + start = start == null ? 0 : toInteger(start); + end = end === undefined ? length : toInteger(end); + } + return baseSlice(array, start, end); + } + + /** + * Uses a binary search to determine the lowest index at which `value` + * should be inserted into `array` in order to maintain its sort order. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedIndex([30, 50], 40); + * // => 1 + */ + function sortedIndex(array, value) { + return baseSortedIndex(array, value); + } + + /** + * This method is like `_.sortedIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 0 + * + * // The `_.property` iteratee shorthand. + * _.sortedIndexBy(objects, { 'x': 4 }, 'x'); + * // => 0 + */ + function sortedIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2)); + } + + /** + * This method is like `_.indexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedIndexOf([4, 5, 5, 5, 6], 5); + * // => 1 + */ + function sortedIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value); + if (index < length && eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.sortedIndex` except that it returns the highest + * index at which `value` should be inserted into `array` in order to + * maintain its sort order. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * _.sortedLastIndex([4, 5, 5, 5, 6], 5); + * // => 4 + */ + function sortedLastIndex(array, value) { + return baseSortedIndex(array, value, true); + } + + /** + * This method is like `_.sortedLastIndex` except that it accepts `iteratee` + * which is invoked for `value` and each element of `array` to compute their + * sort ranking. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The sorted array to inspect. + * @param {*} value The value to evaluate. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {number} Returns the index at which `value` should be inserted + * into `array`. + * @example + * + * var objects = [{ 'x': 4 }, { 'x': 5 }]; + * + * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; }); + * // => 1 + * + * // The `_.property` iteratee shorthand. + * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x'); + * // => 1 + */ + function sortedLastIndexBy(array, value, iteratee) { + return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true); + } + + /** + * This method is like `_.lastIndexOf` except that it performs a binary + * search on a sorted `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {*} value The value to search for. + * @returns {number} Returns the index of the matched value, else `-1`. + * @example + * + * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5); + * // => 3 + */ + function sortedLastIndexOf(array, value) { + var length = array == null ? 0 : array.length; + if (length) { + var index = baseSortedIndex(array, value, true) - 1; + if (eq(array[index], value)) { + return index; + } + } + return -1; + } + + /** + * This method is like `_.uniq` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniq([1, 1, 2]); + * // => [1, 2] + */ + function sortedUniq(array) { + return (array && array.length) + ? baseSortedUniq(array) + : []; + } + + /** + * This method is like `_.uniqBy` except that it's designed and optimized + * for sorted arrays. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor); + * // => [1.1, 2.3] + */ + function sortedUniqBy(array, iteratee) { + return (array && array.length) + ? baseSortedUniq(array, getIteratee(iteratee, 2)) + : []; + } + + /** + * Gets all but the first element of `array`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to query. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.tail([1, 2, 3]); + * // => [2, 3] + */ + function tail(array) { + var length = array == null ? 0 : array.length; + return length ? baseSlice(array, 1, length) : []; + } + + /** + * Creates a slice of `array` with `n` elements taken from the beginning. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.take([1, 2, 3]); + * // => [1] + * + * _.take([1, 2, 3], 2); + * // => [1, 2] + * + * _.take([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.take([1, 2, 3], 0); + * // => [] + */ + function take(array, n, guard) { + if (!(array && array.length)) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + return baseSlice(array, 0, n < 0 ? 0 : n); + } + + /** + * Creates a slice of `array` with `n` elements taken from the end. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {number} [n=1] The number of elements to take. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the slice of `array`. + * @example + * + * _.takeRight([1, 2, 3]); + * // => [3] + * + * _.takeRight([1, 2, 3], 2); + * // => [2, 3] + * + * _.takeRight([1, 2, 3], 5); + * // => [1, 2, 3] + * + * _.takeRight([1, 2, 3], 0); + * // => [] + */ + function takeRight(array, n, guard) { + var length = array == null ? 0 : array.length; + if (!length) { + return []; + } + n = (guard || n === undefined) ? 1 : toInteger(n); + n = length - n; + return baseSlice(array, n < 0 ? 0 : n, length); + } + + /** + * Creates a slice of `array` with elements taken from the end. Elements are + * taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': false } + * ]; + * + * _.takeRightWhile(users, function(o) { return !o.active; }); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.matches` iteratee shorthand. + * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false }); + * // => objects for ['pebbles'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeRightWhile(users, ['active', false]); + * // => objects for ['fred', 'pebbles'] + * + * // The `_.property` iteratee shorthand. + * _.takeRightWhile(users, 'active'); + * // => [] + */ + function takeRightWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3), false, true) + : []; + } + + /** + * Creates a slice of `array` with elements taken from the beginning. Elements + * are taken until `predicate` returns falsey. The predicate is invoked with + * three arguments: (value, index, array). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Array + * @param {Array} array The array to query. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the slice of `array`. + * @example + * + * var users = [ + * { 'user': 'barney', 'active': false }, + * { 'user': 'fred', 'active': false }, + * { 'user': 'pebbles', 'active': true } + * ]; + * + * _.takeWhile(users, function(o) { return !o.active; }); + * // => objects for ['barney', 'fred'] + * + * // The `_.matches` iteratee shorthand. + * _.takeWhile(users, { 'user': 'barney', 'active': false }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.takeWhile(users, ['active', false]); + * // => objects for ['barney', 'fred'] + * + * // The `_.property` iteratee shorthand. + * _.takeWhile(users, 'active'); + * // => [] + */ + function takeWhile(array, predicate) { + return (array && array.length) + ? baseWhile(array, getIteratee(predicate, 3)) + : []; + } + + /** + * Creates an array of unique values, in order, from all given arrays using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.union([2], [1, 2]); + * // => [2, 1] + */ + var union = baseRest(function(arrays) { + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true)); + }); + + /** + * This method is like `_.union` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which uniqueness is computed. Result values are chosen from the first + * array in which the value occurs. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * _.unionBy([2.1], [1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + var unionBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.union` except that it accepts `comparator` which + * is invoked to compare elements of `arrays`. Result values are chosen from + * the first array in which the value occurs. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of combined values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.unionWith(objects, others, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var unionWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator); + }); + + /** + * Creates a duplicate-free version of an array, using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons, in which only the first occurrence of each element + * is kept. The order of result values is determined by the order they occur + * in the array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniq([2, 1, 2]); + * // => [2, 1] + */ + function uniq(array) { + return (array && array.length) ? baseUniq(array) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * uniqueness is computed. The order of result values is determined by the + * order they occur in the array. The iteratee is invoked with one argument: + * (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniqBy([2.1, 1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ + function uniqBy(array, iteratee) { + return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : []; + } + + /** + * This method is like `_.uniq` except that it accepts `comparator` which + * is invoked to compare elements of `array`. The order of result values is + * determined by the order they occur in the array.The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.uniqWith(objects, _.isEqual); + * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }] + */ + function uniqWith(array, comparator) { + comparator = typeof comparator == 'function' ? comparator : undefined; + return (array && array.length) ? baseUniq(array, undefined, comparator) : []; + } + + /** + * This method is like `_.zip` except that it accepts an array of grouped + * elements and creates an array regrouping the elements to their pre-zip + * configuration. + * + * @static + * @memberOf _ + * @since 1.2.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + * + * _.unzip(zipped); + * // => [['a', 'b'], [1, 2], [true, false]] + */ + function unzip(array) { + if (!(array && array.length)) { + return []; + } + var length = 0; + array = arrayFilter(array, function(group) { + if (isArrayLikeObject(group)) { + length = nativeMax(group.length, length); + return true; + } + }); + return baseTimes(length, function(index) { + return arrayMap(array, baseProperty(index)); + }); + } + + /** + * This method is like `_.unzip` except that it accepts `iteratee` to specify + * how regrouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {Array} array The array of grouped elements to process. + * @param {Function} [iteratee=_.identity] The function to combine + * regrouped values. + * @returns {Array} Returns the new array of regrouped elements. + * @example + * + * var zipped = _.zip([1, 2], [10, 20], [100, 200]); + * // => [[1, 10, 100], [2, 20, 200]] + * + * _.unzipWith(zipped, _.add); + * // => [3, 30, 300] + */ + function unzipWith(array, iteratee) { + if (!(array && array.length)) { + return []; + } + var result = unzip(array); + if (iteratee == null) { + return result; + } + return arrayMap(result, function(group) { + return apply(iteratee, undefined, group); + }); + } + + /** + * Creates an array excluding all given values using + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * for equality comparisons. + * + * **Note:** Unlike `_.pull`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {Array} array The array to inspect. + * @param {...*} [values] The values to exclude. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.xor + * @example + * + * _.without([2, 1, 2, 3], 1, 2); + * // => [3] + */ + var without = baseRest(function(array, values) { + return isArrayLikeObject(array) + ? baseDifference(array, values) + : []; + }); + + /** + * Creates an array of unique values that is the + * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference) + * of the given arrays. The order of result values is determined by the order + * they occur in the arrays. + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @returns {Array} Returns the new array of filtered values. + * @see _.difference, _.without + * @example + * + * _.xor([2, 1], [2, 3]); + * // => [1, 3] + */ + var xor = baseRest(function(arrays) { + return baseXor(arrayFilter(arrays, isArrayLikeObject)); + }); + + /** + * This method is like `_.xor` except that it accepts `iteratee` which is + * invoked for each element of each `arrays` to generate the criterion by + * which by which they're compared. The order of result values is determined + * by the order they occur in the arrays. The iteratee is invoked with one + * argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor); + * // => [1.2, 3.4] + * + * // The `_.property` iteratee shorthand. + * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 2 }] + */ + var xorBy = baseRest(function(arrays) { + var iteratee = last(arrays); + if (isArrayLikeObject(iteratee)) { + iteratee = undefined; + } + return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2)); + }); + + /** + * This method is like `_.xor` except that it accepts `comparator` which is + * invoked to compare elements of `arrays`. The order of result values is + * determined by the order they occur in the arrays. The comparator is invoked + * with two arguments: (arrVal, othVal). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Array + * @param {...Array} [arrays] The arrays to inspect. + * @param {Function} [comparator] The comparator invoked per element. + * @returns {Array} Returns the new array of filtered values. + * @example + * + * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; + * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; + * + * _.xorWith(objects, others, _.isEqual); + * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }] + */ + var xorWith = baseRest(function(arrays) { + var comparator = last(arrays); + comparator = typeof comparator == 'function' ? comparator : undefined; + return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator); + }); + + /** + * Creates an array of grouped elements, the first of which contains the + * first elements of the given arrays, the second of which contains the + * second elements of the given arrays, and so on. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zip(['a', 'b'], [1, 2], [true, false]); + * // => [['a', 1, true], ['b', 2, false]] + */ + var zip = baseRest(unzip); + + /** + * This method is like `_.fromPairs` except that it accepts two arrays, + * one of property identifiers and one of corresponding values. + * + * @static + * @memberOf _ + * @since 0.4.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObject(['a', 'b'], [1, 2]); + * // => { 'a': 1, 'b': 2 } + */ + function zipObject(props, values) { + return baseZipObject(props || [], values || [], assignValue); + } + + /** + * This method is like `_.zipObject` except that it supports property paths. + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Array + * @param {Array} [props=[]] The property identifiers. + * @param {Array} [values=[]] The property values. + * @returns {Object} Returns the new object. + * @example + * + * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]); + * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } } + */ + function zipObjectDeep(props, values) { + return baseZipObject(props || [], values || [], baseSet); + } + + /** + * This method is like `_.zip` except that it accepts `iteratee` to specify + * how grouped values should be combined. The iteratee is invoked with the + * elements of each group: (...group). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Array + * @param {...Array} [arrays] The arrays to process. + * @param {Function} [iteratee=_.identity] The function to combine + * grouped values. + * @returns {Array} Returns the new array of grouped elements. + * @example + * + * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) { + * return a + b + c; + * }); + * // => [111, 222] + */ + var zipWith = baseRest(function(arrays) { + var length = arrays.length, + iteratee = length > 1 ? arrays[length - 1] : undefined; + + iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined; + return unzipWith(arrays, iteratee); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Creates a `lodash` wrapper instance that wraps `value` with explicit method + * chain sequences enabled. The result of such sequences must be unwrapped + * with `_#value`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Seq + * @param {*} value The value to wrap. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'pebbles', 'age': 1 } + * ]; + * + * var youngest = _ + * .chain(users) + * .sortBy('age') + * .map(function(o) { + * return o.user + ' is ' + o.age; + * }) + * .head() + * .value(); + * // => 'pebbles is 1' + */ + function chain(value) { + var result = lodash(value); + result.__chain__ = true; + return result; + } + + /** + * This method invokes `interceptor` and returns `value`. The interceptor + * is invoked with one argument; (value). The purpose of this method is to + * "tap into" a method chain sequence in order to modify intermediate results. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns `value`. + * @example + * + * _([1, 2, 3]) + * .tap(function(array) { + * // Mutate input array. + * array.pop(); + * }) + * .reverse() + * .value(); + * // => [2, 1] + */ + function tap(value, interceptor) { + interceptor(value); + return value; + } + + /** + * This method is like `_.tap` except that it returns the result of `interceptor`. + * The purpose of this method is to "pass thru" values replacing intermediate + * results in a method chain sequence. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Seq + * @param {*} value The value to provide to `interceptor`. + * @param {Function} interceptor The function to invoke. + * @returns {*} Returns the result of `interceptor`. + * @example + * + * _(' abc ') + * .chain() + * .trim() + * .thru(function(value) { + * return [value]; + * }) + * .value(); + * // => ['abc'] + */ + function thru(value, interceptor) { + return interceptor(value); + } + + /** + * This method is the wrapper version of `_.at`. + * + * @name at + * @memberOf _ + * @since 1.0.0 + * @category Seq + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _(object).at(['a[0].b.c', 'a[1]']).value(); + * // => [3, 4] + */ + var wrapperAt = flatRest(function(paths) { + var length = paths.length, + start = length ? paths[0] : 0, + value = this.__wrapped__, + interceptor = function(object) { return baseAt(object, paths); }; + + if (length > 1 || this.__actions__.length || + !(value instanceof LazyWrapper) || !isIndex(start)) { + return this.thru(interceptor); + } + value = value.slice(start, +start + (length ? 1 : 0)); + value.__actions__.push({ + 'func': thru, + 'args': [interceptor], + 'thisArg': undefined + }); + return new LodashWrapper(value, this.__chain__).thru(function(array) { + if (length && !array.length) { + array.push(undefined); + } + return array; + }); + }); + + /** + * Creates a `lodash` wrapper instance with explicit method chain sequences enabled. + * + * @name chain + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 } + * ]; + * + * // A sequence without explicit chaining. + * _(users).head(); + * // => { 'user': 'barney', 'age': 36 } + * + * // A sequence with explicit chaining. + * _(users) + * .chain() + * .head() + * .pick('user') + * .value(); + * // => { 'user': 'barney' } + */ + function wrapperChain() { + return chain(this); + } + + /** + * Executes the chain sequence and returns the wrapped result. + * + * @name commit + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2]; + * var wrapped = _(array).push(3); + * + * console.log(array); + * // => [1, 2] + * + * wrapped = wrapped.commit(); + * console.log(array); + * // => [1, 2, 3] + * + * wrapped.last(); + * // => 3 + * + * console.log(array); + * // => [1, 2, 3] + */ + function wrapperCommit() { + return new LodashWrapper(this.value(), this.__chain__); + } + + /** + * Gets the next value on a wrapped object following the + * [iterator protocol](https://mdn.io/iteration_protocols#iterator). + * + * @name next + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the next iterator value. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped.next(); + * // => { 'done': false, 'value': 1 } + * + * wrapped.next(); + * // => { 'done': false, 'value': 2 } + * + * wrapped.next(); + * // => { 'done': true, 'value': undefined } + */ + function wrapperNext() { + if (this.__values__ === undefined) { + this.__values__ = toArray(this.value()); + } + var done = this.__index__ >= this.__values__.length, + value = done ? undefined : this.__values__[this.__index__++]; + + return { 'done': done, 'value': value }; + } + + /** + * Enables the wrapper to be iterable. + * + * @name Symbol.iterator + * @memberOf _ + * @since 4.0.0 + * @category Seq + * @returns {Object} Returns the wrapper object. + * @example + * + * var wrapped = _([1, 2]); + * + * wrapped[Symbol.iterator]() === wrapped; + * // => true + * + * Array.from(wrapped); + * // => [1, 2] + */ + function wrapperToIterator() { + return this; + } + + /** + * Creates a clone of the chain sequence planting `value` as the wrapped value. + * + * @name plant + * @memberOf _ + * @since 3.2.0 + * @category Seq + * @param {*} value The value to plant. + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * function square(n) { + * return n * n; + * } + * + * var wrapped = _([1, 2]).map(square); + * var other = wrapped.plant([3, 4]); + * + * other.value(); + * // => [9, 16] + * + * wrapped.value(); + * // => [1, 4] + */ + function wrapperPlant(value) { + var result, + parent = this; + + while (parent instanceof baseLodash) { + var clone = wrapperClone(parent); + clone.__index__ = 0; + clone.__values__ = undefined; + if (result) { + previous.__wrapped__ = clone; + } else { + result = clone; + } + var previous = clone; + parent = parent.__wrapped__; + } + previous.__wrapped__ = value; + return result; + } + + /** + * This method is the wrapper version of `_.reverse`. + * + * **Note:** This method mutates the wrapped array. + * + * @name reverse + * @memberOf _ + * @since 0.1.0 + * @category Seq + * @returns {Object} Returns the new `lodash` wrapper instance. + * @example + * + * var array = [1, 2, 3]; + * + * _(array).reverse().value() + * // => [3, 2, 1] + * + * console.log(array); + * // => [3, 2, 1] + */ + function wrapperReverse() { + var value = this.__wrapped__; + if (value instanceof LazyWrapper) { + var wrapped = value; + if (this.__actions__.length) { + wrapped = new LazyWrapper(this); + } + wrapped = wrapped.reverse(); + wrapped.__actions__.push({ + 'func': thru, + 'args': [reverse], + 'thisArg': undefined + }); + return new LodashWrapper(wrapped, this.__chain__); + } + return this.thru(reverse); + } + + /** + * Executes the chain sequence to resolve the unwrapped value. + * + * @name value + * @memberOf _ + * @since 0.1.0 + * @alias toJSON, valueOf + * @category Seq + * @returns {*} Returns the resolved unwrapped value. + * @example + * + * _([1, 2, 3]).value(); + * // => [1, 2, 3] + */ + function wrapperValue() { + return baseWrapperValue(this.__wrapped__, this.__actions__); + } + + /*------------------------------------------------------------------------*/ + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the number of times the key was returned by `iteratee`. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.countBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': 1, '6': 2 } + * + * // The `_.property` iteratee shorthand. + * _.countBy(['one', 'two', 'three'], 'length'); + * // => { '3': 2, '5': 1 } + */ + var countBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + ++result[key]; + } else { + baseAssignValue(result, key, 1); + } + }); + + /** + * Checks if `predicate` returns truthy for **all** elements of `collection`. + * Iteration is stopped once `predicate` returns falsey. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * **Note:** This method returns `true` for + * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because + * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of + * elements of empty collections. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if all elements pass the predicate check, + * else `false`. + * @example + * + * _.every([true, 1, null, 'yes'], Boolean); + * // => false + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.every(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.every(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.every(users, 'active'); + * // => false + */ + function every(collection, predicate, guard) { + var func = isArray(collection) ? arrayEvery : baseEvery; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning an array of all elements + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * **Note:** Unlike `_.remove`, this method returns a new array. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.reject + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false } + * ]; + * + * _.filter(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.filter(users, { 'age': 36, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.filter(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.filter(users, 'active'); + * // => objects for ['barney'] + */ + function filter(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Iterates over elements of `collection`, returning the first element + * `predicate` returns truthy for. The predicate is invoked with three + * arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=0] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': true }, + * { 'user': 'fred', 'age': 40, 'active': false }, + * { 'user': 'pebbles', 'age': 1, 'active': true } + * ]; + * + * _.find(users, function(o) { return o.age < 40; }); + * // => object for 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.find(users, { 'age': 1, 'active': true }); + * // => object for 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.find(users, ['active', false]); + * // => object for 'fred' + * + * // The `_.property` iteratee shorthand. + * _.find(users, 'active'); + * // => object for 'barney' + */ + var find = createFind(findIndex); + + /** + * This method is like `_.find` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param {number} [fromIndex=collection.length-1] The index to search from. + * @returns {*} Returns the matched element, else `undefined`. + * @example + * + * _.findLast([1, 2, 3, 4], function(n) { + * return n % 2 == 1; + * }); + * // => 3 + */ + var findLast = createFind(findLastIndex); + + /** + * Creates a flattened array of values by running each element in `collection` + * thru `iteratee` and flattening the mapped results. The iteratee is invoked + * with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [n, n]; + * } + * + * _.flatMap([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMap(collection, iteratee) { + return baseFlatten(map(collection, iteratee), 1); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDeep([1, 2], duplicate); + * // => [1, 1, 2, 2] + */ + function flatMapDeep(collection, iteratee) { + return baseFlatten(map(collection, iteratee), INFINITY); + } + + /** + * This method is like `_.flatMap` except that it recursively flattens the + * mapped results up to `depth` times. + * + * @static + * @memberOf _ + * @since 4.7.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {number} [depth=1] The maximum recursion depth. + * @returns {Array} Returns the new flattened array. + * @example + * + * function duplicate(n) { + * return [[[n, n]]]; + * } + * + * _.flatMapDepth([1, 2], duplicate, 2); + * // => [[1, 1], [2, 2]] + */ + function flatMapDepth(collection, iteratee, depth) { + depth = depth === undefined ? 1 : toInteger(depth); + return baseFlatten(map(collection, iteratee), depth); + } + + /** + * Iterates over elements of `collection` and invokes `iteratee` for each element. + * The iteratee is invoked with three arguments: (value, index|key, collection). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * **Note:** As with other "Collections" methods, objects with a "length" + * property are iterated like arrays. To avoid this behavior use `_.forIn` + * or `_.forOwn` for object iteration. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @alias each + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEachRight + * @example + * + * _.forEach([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `1` then `2`. + * + * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forEach(collection, iteratee) { + var func = isArray(collection) ? arrayEach : baseEach; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forEach` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @alias eachRight + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array|Object} Returns `collection`. + * @see _.forEach + * @example + * + * _.forEachRight([1, 2], function(value) { + * console.log(value); + * }); + * // => Logs `2` then `1`. + */ + function forEachRight(collection, iteratee) { + var func = isArray(collection) ? arrayEachRight : baseEachRight; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The order of grouped values + * is determined by the order they occur in `collection`. The corresponding + * value of each key is an array of elements responsible for generating the + * key. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * _.groupBy([6.1, 4.2, 6.3], Math.floor); + * // => { '4': [4.2], '6': [6.1, 6.3] } + * + * // The `_.property` iteratee shorthand. + * _.groupBy(['one', 'two', 'three'], 'length'); + * // => { '3': ['one', 'two'], '5': ['three'] } + */ + var groupBy = createAggregator(function(result, value, key) { + if (hasOwnProperty.call(result, key)) { + result[key].push(value); + } else { + baseAssignValue(result, key, [value]); + } + }); + + /** + * Checks if `value` is in `collection`. If `collection` is a string, it's + * checked for a substring of `value`, otherwise + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * is used for equality comparisons. If `fromIndex` is negative, it's used as + * the offset from the end of `collection`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @param {*} value The value to search for. + * @param {number} [fromIndex=0] The index to search from. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {boolean} Returns `true` if `value` is found, else `false`. + * @example + * + * _.includes([1, 2, 3], 1); + * // => true + * + * _.includes([1, 2, 3], 1, 2); + * // => false + * + * _.includes({ 'a': 1, 'b': 2 }, 1); + * // => true + * + * _.includes('abcd', 'bc'); + * // => true + */ + function includes(collection, value, fromIndex, guard) { + collection = isArrayLike(collection) ? collection : values(collection); + fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0; + + var length = collection.length; + if (fromIndex < 0) { + fromIndex = nativeMax(length + fromIndex, 0); + } + return isString(collection) + ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1) + : (!!length && baseIndexOf(collection, value, fromIndex) > -1); + } + + /** + * Invokes the method at `path` of each element in `collection`, returning + * an array of the results of each invoked method. Any additional arguments + * are provided to each invoked method. If `path` is a function, it's invoked + * for, and `this` bound to, each element in `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array|Function|string} path The path of the method to invoke or + * the function invoked per iteration. + * @param {...*} [args] The arguments to invoke each method with. + * @returns {Array} Returns the array of results. + * @example + * + * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort'); + * // => [[1, 5, 7], [1, 2, 3]] + * + * _.invokeMap([123, 456], String.prototype.split, ''); + * // => [['1', '2', '3'], ['4', '5', '6']] + */ + var invokeMap = baseRest(function(collection, path, args) { + var index = -1, + isFunc = typeof path == 'function', + result = isArrayLike(collection) ? Array(collection.length) : []; + + baseEach(collection, function(value) { + result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args); + }); + return result; + }); + + /** + * Creates an object composed of keys generated from the results of running + * each element of `collection` thru `iteratee`. The corresponding value of + * each key is the last element responsible for generating the key. The + * iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The iteratee to transform keys. + * @returns {Object} Returns the composed aggregate object. + * @example + * + * var array = [ + * { 'dir': 'left', 'code': 97 }, + * { 'dir': 'right', 'code': 100 } + * ]; + * + * _.keyBy(array, function(o) { + * return String.fromCharCode(o.code); + * }); + * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } } + * + * _.keyBy(array, 'dir'); + * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } } + */ + var keyBy = createAggregator(function(result, value, key) { + baseAssignValue(result, key, value); + }); + + /** + * Creates an array of values by running each element in `collection` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`. + * + * The guarded methods are: + * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`, + * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`, + * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`, + * `template`, `trim`, `trimEnd`, `trimStart`, and `words` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new mapped array. + * @example + * + * function square(n) { + * return n * n; + * } + * + * _.map([4, 8], square); + * // => [16, 64] + * + * _.map({ 'a': 4, 'b': 8 }, square); + * // => [16, 64] (iteration order is not guaranteed) + * + * var users = [ + * { 'user': 'barney' }, + * { 'user': 'fred' } + * ]; + * + * // The `_.property` iteratee shorthand. + * _.map(users, 'user'); + * // => ['barney', 'fred'] + */ + function map(collection, iteratee) { + var func = isArray(collection) ? arrayMap : baseMap; + return func(collection, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.sortBy` except that it allows specifying the sort + * orders of the iteratees to sort by. If `orders` is unspecified, all values + * are sorted in ascending order. Otherwise, specify an order of "desc" for + * descending or "asc" for ascending sort order of corresponding values. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]] + * The iteratees to sort by. + * @param {string[]} [orders] The sort orders of `iteratees`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 34 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'barney', 'age': 36 } + * ]; + * + * // Sort by `user` in ascending order and by `age` in descending order. + * _.orderBy(users, ['user', 'age'], ['asc', 'desc']); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] + */ + function orderBy(collection, iteratees, orders, guard) { + if (collection == null) { + return []; + } + if (!isArray(iteratees)) { + iteratees = iteratees == null ? [] : [iteratees]; + } + orders = guard ? undefined : orders; + if (!isArray(orders)) { + orders = orders == null ? [] : [orders]; + } + return baseOrderBy(collection, iteratees, orders); + } + + /** + * Creates an array of elements split into two groups, the first of which + * contains elements `predicate` returns truthy for, the second of which + * contains elements `predicate` returns falsey for. The predicate is + * invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the array of grouped elements. + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true }, + * { 'user': 'pebbles', 'age': 1, 'active': false } + * ]; + * + * _.partition(users, function(o) { return o.active; }); + * // => objects for [['fred'], ['barney', 'pebbles']] + * + * // The `_.matches` iteratee shorthand. + * _.partition(users, { 'age': 1, 'active': false }); + * // => objects for [['pebbles'], ['barney', 'fred']] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.partition(users, ['active', false]); + * // => objects for [['barney', 'pebbles'], ['fred']] + * + * // The `_.property` iteratee shorthand. + * _.partition(users, 'active'); + * // => objects for [['fred'], ['barney', 'pebbles']] + */ + var partition = createAggregator(function(result, value, key) { + result[key ? 0 : 1].push(value); + }, function() { return [[], []]; }); + + /** + * Reduces `collection` to a value which is the accumulated result of running + * each element in `collection` thru `iteratee`, where each successive + * invocation is supplied the return value of the previous. If `accumulator` + * is not given, the first element of `collection` is used as the initial + * value. The iteratee is invoked with four arguments: + * (accumulator, value, index|key, collection). + * + * Many lodash methods are guarded to work as iteratees for methods like + * `_.reduce`, `_.reduceRight`, and `_.transform`. + * + * The guarded methods are: + * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`, + * and `sortBy` + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduceRight + * @example + * + * _.reduce([1, 2], function(sum, n) { + * return sum + n; + * }, 0); + * // => 3 + * + * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * return result; + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) + */ + function reduce(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduce : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach); + } + + /** + * This method is like `_.reduce` except that it iterates over elements of + * `collection` from right to left. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The initial value. + * @returns {*} Returns the accumulated value. + * @see _.reduce + * @example + * + * var array = [[0, 1], [2, 3], [4, 5]]; + * + * _.reduceRight(array, function(flattened, other) { + * return flattened.concat(other); + * }, []); + * // => [4, 5, 2, 3, 0, 1] + */ + function reduceRight(collection, iteratee, accumulator) { + var func = isArray(collection) ? arrayReduceRight : baseReduce, + initAccum = arguments.length < 3; + + return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight); + } + + /** + * The opposite of `_.filter`; this method returns the elements of `collection` + * that `predicate` does **not** return truthy for. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {Array} Returns the new filtered array. + * @see _.filter + * @example + * + * var users = [ + * { 'user': 'barney', 'age': 36, 'active': false }, + * { 'user': 'fred', 'age': 40, 'active': true } + * ]; + * + * _.reject(users, function(o) { return !o.active; }); + * // => objects for ['fred'] + * + * // The `_.matches` iteratee shorthand. + * _.reject(users, { 'age': 40, 'active': true }); + * // => objects for ['barney'] + * + * // The `_.matchesProperty` iteratee shorthand. + * _.reject(users, ['active', false]); + * // => objects for ['fred'] + * + * // The `_.property` iteratee shorthand. + * _.reject(users, 'active'); + * // => objects for ['barney'] + */ + function reject(collection, predicate) { + var func = isArray(collection) ? arrayFilter : baseFilter; + return func(collection, negate(getIteratee(predicate, 3))); + } + + /** + * Gets a random element from `collection`. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @returns {*} Returns the random element. + * @example + * + * _.sample([1, 2, 3, 4]); + * // => 2 + */ + function sample(collection) { + var func = isArray(collection) ? arraySample : baseSample; + return func(collection); + } + + /** + * Gets `n` random elements at unique keys from `collection` up to the + * size of `collection`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Collection + * @param {Array|Object} collection The collection to sample. + * @param {number} [n=1] The number of elements to sample. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Array} Returns the random elements. + * @example + * + * _.sampleSize([1, 2, 3], 2); + * // => [3, 1] + * + * _.sampleSize([1, 2, 3], 4); + * // => [2, 3, 1] + */ + function sampleSize(collection, n, guard) { + if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + var func = isArray(collection) ? arraySampleSize : baseSampleSize; + return func(collection, n); + } + + /** + * Creates an array of shuffled values, using a version of the + * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to shuffle. + * @returns {Array} Returns the new shuffled array. + * @example + * + * _.shuffle([1, 2, 3, 4]); + * // => [4, 1, 3, 2] + */ + function shuffle(collection) { + var func = isArray(collection) ? arrayShuffle : baseShuffle; + return func(collection); + } + + /** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable string keyed properties for objects. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the collection size. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ + function size(collection) { + if (collection == null) { + return 0; + } + if (isArrayLike(collection)) { + return isString(collection) ? stringSize(collection) : collection.length; + } + var tag = getTag(collection); + if (tag == mapTag || tag == setTag) { + return collection.size; + } + return baseKeys(collection).length; + } + + /** + * Checks if `predicate` returns truthy for **any** element of `collection`. + * Iteration is stopped once `predicate` returns truthy. The predicate is + * invoked with three arguments: (value, index|key, collection). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {boolean} Returns `true` if any element passes the predicate check, + * else `false`. + * @example + * + * _.some([null, 0, 'yes', false], Boolean); + * // => true + * + * var users = [ + * { 'user': 'barney', 'active': true }, + * { 'user': 'fred', 'active': false } + * ]; + * + * // The `_.matches` iteratee shorthand. + * _.some(users, { 'user': 'barney', 'active': false }); + * // => false + * + * // The `_.matchesProperty` iteratee shorthand. + * _.some(users, ['active', false]); + * // => true + * + * // The `_.property` iteratee shorthand. + * _.some(users, 'active'); + * // => true + */ + function some(collection, predicate, guard) { + var func = isArray(collection) ? arraySome : baseSome; + if (guard && isIterateeCall(collection, predicate, guard)) { + predicate = undefined; + } + return func(collection, getIteratee(predicate, 3)); + } + + /** + * Creates an array of elements, sorted in ascending order by the results of + * running each element in a collection thru each iteratee. This method + * performs a stable sort, that is, it preserves the original sort order of + * equal elements. The iteratees are invoked with one argument: (value). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Collection + * @param {Array|Object} collection The collection to iterate over. + * @param {...(Function|Function[])} [iteratees=[_.identity]] + * The iteratees to sort by. + * @returns {Array} Returns the new sorted array. + * @example + * + * var users = [ + * { 'user': 'fred', 'age': 48 }, + * { 'user': 'barney', 'age': 36 }, + * { 'user': 'fred', 'age': 40 }, + * { 'user': 'barney', 'age': 34 } + * ]; + * + * _.sortBy(users, [function(o) { return o.user; }]); + * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]] + * + * _.sortBy(users, ['user', 'age']); + * // => objects for [['barney', 34], ['barney', 36], ['fred', 40], ['fred', 48]] + */ + var sortBy = baseRest(function(collection, iteratees) { + if (collection == null) { + return []; + } + var length = iteratees.length; + if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) { + iteratees = []; + } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { + iteratees = [iteratees[0]]; + } + return baseOrderBy(collection, baseFlatten(iteratees, 1), []); + }); + + /*------------------------------------------------------------------------*/ + + /** + * Gets the timestamp of the number of milliseconds that have elapsed since + * the Unix epoch (1 January 1970 00:00:00 UTC). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Date + * @returns {number} Returns the timestamp. + * @example + * + * _.defer(function(stamp) { + * console.log(_.now() - stamp); + * }, _.now()); + * // => Logs the number of milliseconds it took for the deferred invocation. + */ + var now = ctxNow || function() { + return root.Date.now(); + }; + + /*------------------------------------------------------------------------*/ + + /** + * The opposite of `_.before`; this method creates a function that invokes + * `func` once it's called `n` or more times. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {number} n The number of calls before `func` is invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var saves = ['profile', 'settings']; + * + * var done = _.after(saves.length, function() { + * console.log('done saving!'); + * }); + * + * _.forEach(saves, function(type) { + * asyncSave({ 'type': type, 'complete': done }); + * }); + * // => Logs 'done saving!' after the two async saves have completed. + */ + function after(n, func) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n < 1) { + return func.apply(this, arguments); + } + }; + } + + /** + * Creates a function that invokes `func`, with up to `n` arguments, + * ignoring any additional arguments. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @param {number} [n=func.length] The arity cap. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.ary(parseInt, 1)); + * // => [6, 8, 10] + */ + function ary(func, n, guard) { + n = guard ? undefined : n; + n = (func && n == null) ? func.length : n; + return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n); + } + + /** + * Creates a function that invokes `func`, with the `this` binding and arguments + * of the created function, while it's called less than `n` times. Subsequent + * calls to the created function return the result of the last `func` invocation. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {number} n The number of calls at which `func` is no longer invoked. + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * jQuery(element).on('click', _.before(5, addContactToList)); + * // => Allows adding up to 4 contacts to the list. + */ + function before(n, func) { + var result; + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + n = toInteger(n); + return function() { + if (--n > 0) { + result = func.apply(this, arguments); + } + if (n <= 1) { + func = undefined; + } + return result; + }; + } + + /** + * Creates a function that invokes `func` with the `this` binding of `thisArg` + * and `partials` prepended to the arguments it receives. + * + * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for partially applied arguments. + * + * **Note:** Unlike native `Function#bind`, this method doesn't set the "length" + * property of bound functions. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to bind. + * @param {*} thisArg The `this` binding of `func`. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * function greet(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * + * var object = { 'user': 'fred' }; + * + * var bound = _.bind(greet, object, 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * // Bound with placeholders. + * var bound = _.bind(greet, object, _, '!'); + * bound('hi'); + * // => 'hi fred!' + */ + var bind = baseRest(function(func, thisArg, partials) { + var bitmask = WRAP_BIND_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bind)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(func, bitmask, thisArg, partials, holders); + }); + + /** + * Creates a function that invokes the method at `object[key]` with `partials` + * prepended to the arguments it receives. + * + * This method differs from `_.bind` by allowing bound functions to reference + * methods that may be redefined or don't yet exist. See + * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern) + * for more details. + * + * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Function + * @param {Object} object The object to invoke the method on. + * @param {string} key The key of the method. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new bound function. + * @example + * + * var object = { + * 'user': 'fred', + * 'greet': function(greeting, punctuation) { + * return greeting + ' ' + this.user + punctuation; + * } + * }; + * + * var bound = _.bindKey(object, 'greet', 'hi'); + * bound('!'); + * // => 'hi fred!' + * + * object.greet = function(greeting, punctuation) { + * return greeting + 'ya ' + this.user + punctuation; + * }; + * + * bound('!'); + * // => 'hiya fred!' + * + * // Bound with placeholders. + * var bound = _.bindKey(object, 'greet', _, '!'); + * bound('hi'); + * // => 'hiya fred!' + */ + var bindKey = baseRest(function(object, key, partials) { + var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG; + if (partials.length) { + var holders = replaceHolders(partials, getHolder(bindKey)); + bitmask |= WRAP_PARTIAL_FLAG; + } + return createWrap(key, bitmask, object, partials, holders); + }); + + /** + * Creates a function that accepts arguments of `func` and either invokes + * `func` returning its result, if at least `arity` number of arguments have + * been provided, or returns a function that accepts the remaining `func` + * arguments, and so on. The arity of `func` may be specified if `func.length` + * is not sufficient. + * + * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds, + * may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curry(abc); + * + * curried(1)(2)(3); + * // => [1, 2, 3] + * + * curried(1, 2)(3); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(1)(_, 3)(2); + * // => [1, 2, 3] + */ + function curry(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curry.placeholder; + return result; + } + + /** + * This method is like `_.curry` except that arguments are applied to `func` + * in the manner of `_.partialRight` instead of `_.partial`. + * + * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for provided arguments. + * + * **Note:** This method doesn't set the "length" property of curried functions. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to curry. + * @param {number} [arity=func.length] The arity of `func`. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the new curried function. + * @example + * + * var abc = function(a, b, c) { + * return [a, b, c]; + * }; + * + * var curried = _.curryRight(abc); + * + * curried(3)(2)(1); + * // => [1, 2, 3] + * + * curried(2, 3)(1); + * // => [1, 2, 3] + * + * curried(1, 2, 3); + * // => [1, 2, 3] + * + * // Curried with placeholders. + * curried(3)(1, _)(2); + * // => [1, 2, 3] + */ + function curryRight(func, arity, guard) { + arity = guard ? undefined : arity; + var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity); + result.placeholder = curryRight.placeholder; + return result; + } + + /** + * Creates a debounced function that delays invoking `func` until after `wait` + * milliseconds have elapsed since the last time the debounced function was + * invoked. The debounced function comes with a `cancel` method to cancel + * delayed `func` invocations and a `flush` method to immediately invoke them. + * Provide `options` to indicate whether `func` should be invoked on the + * leading and/or trailing edge of the `wait` timeout. The `func` is invoked + * with the last arguments provided to the debounced function. Subsequent + * calls to the debounced function return the result of the last `func` + * invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the debounced function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.debounce` and `_.throttle`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to debounce. + * @param {number} [wait=0] The number of milliseconds to delay. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=false] + * Specify invoking on the leading edge of the timeout. + * @param {number} [options.maxWait] + * The maximum time `func` is allowed to be delayed before it's invoked. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new debounced function. + * @example + * + * // Avoid costly calculations while the window size is in flux. + * jQuery(window).on('resize', _.debounce(calculateLayout, 150)); + * + * // Invoke `sendMail` when clicked, debouncing subsequent calls. + * jQuery(element).on('click', _.debounce(sendMail, 300, { + * 'leading': true, + * 'trailing': false + * })); + * + * // Ensure `batchLog` is invoked once after 1 second of debounced calls. + * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 }); + * var source = new EventSource('/stream'); + * jQuery(source).on('message', debounced); + * + * // Cancel the trailing debounced invocation. + * jQuery(window).on('popstate', debounced.cancel); + */ + function debounce(func, wait, options) { + var lastArgs, + lastThis, + maxWait, + result, + timerId, + lastCallTime, + lastInvokeTime = 0, + leading = false, + maxing = false, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + wait = toNumber(wait) || 0; + if (isObject(options)) { + leading = !!options.leading; + maxing = 'maxWait' in options; + maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + + function invokeFunc(time) { + var args = lastArgs, + thisArg = lastThis; + + lastArgs = lastThis = undefined; + lastInvokeTime = time; + result = func.apply(thisArg, args); + return result; + } + + function leadingEdge(time) { + // Reset any `maxWait` timer. + lastInvokeTime = time; + // Start the timer for the trailing edge. + timerId = setTimeout(timerExpired, wait); + // Invoke the leading edge. + return leading ? invokeFunc(time) : result; + } + + function remainingWait(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime, + timeWaiting = wait - timeSinceLastCall; + + return maxing + ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) + : timeWaiting; + } + + function shouldInvoke(time) { + var timeSinceLastCall = time - lastCallTime, + timeSinceLastInvoke = time - lastInvokeTime; + + // Either this is the first call, activity has stopped and we're at the + // trailing edge, the system time has gone backwards and we're treating + // it as the trailing edge, or we've hit the `maxWait` limit. + return (lastCallTime === undefined || (timeSinceLastCall >= wait) || + (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait)); + } + + function timerExpired() { + var time = now(); + if (shouldInvoke(time)) { + return trailingEdge(time); + } + // Restart the timer. + timerId = setTimeout(timerExpired, remainingWait(time)); + } + + function trailingEdge(time) { + timerId = undefined; + + // Only invoke if we have `lastArgs` which means `func` has been + // debounced at least once. + if (trailing && lastArgs) { + return invokeFunc(time); + } + lastArgs = lastThis = undefined; + return result; + } + + function cancel() { + if (timerId !== undefined) { + clearTimeout(timerId); + } + lastInvokeTime = 0; + lastArgs = lastCallTime = lastThis = timerId = undefined; + } + + function flush() { + return timerId === undefined ? result : trailingEdge(now()); + } + + function debounced() { + var time = now(), + isInvoking = shouldInvoke(time); + + lastArgs = arguments; + lastThis = this; + lastCallTime = time; + + if (isInvoking) { + if (timerId === undefined) { + return leadingEdge(lastCallTime); + } + if (maxing) { + // Handle invocations in a tight loop. + timerId = setTimeout(timerExpired, wait); + return invokeFunc(lastCallTime); + } + } + if (timerId === undefined) { + timerId = setTimeout(timerExpired, wait); + } + return result; + } + debounced.cancel = cancel; + debounced.flush = flush; + return debounced; + } + + /** + * Defers invoking the `func` until the current call stack has cleared. Any + * additional arguments are provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to defer. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.defer(function(text) { + * console.log(text); + * }, 'deferred'); + * // => Logs 'deferred' after one millisecond. + */ + var defer = baseRest(function(func, args) { + return baseDelay(func, 1, args); + }); + + /** + * Invokes `func` after `wait` milliseconds. Any additional arguments are + * provided to `func` when it's invoked. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to delay. + * @param {number} wait The number of milliseconds to delay invocation. + * @param {...*} [args] The arguments to invoke `func` with. + * @returns {number} Returns the timer id. + * @example + * + * _.delay(function(text) { + * console.log(text); + * }, 1000, 'later'); + * // => Logs 'later' after one second. + */ + var delay = baseRest(function(func, wait, args) { + return baseDelay(func, toNumber(wait) || 0, args); + }); + + /** + * Creates a function that invokes `func` with arguments reversed. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to flip arguments for. + * @returns {Function} Returns the new flipped function. + * @example + * + * var flipped = _.flip(function() { + * return _.toArray(arguments); + * }); + * + * flipped('a', 'b', 'c', 'd'); + * // => ['d', 'c', 'b', 'a'] + */ + function flip(func) { + return createWrap(func, WRAP_FLIP_FLAG); + } + + /** + * Creates a function that memoizes the result of `func`. If `resolver` is + * provided, it determines the cache key for storing the result based on the + * arguments provided to the memoized function. By default, the first argument + * provided to the memoized function is used as the map cache key. The `func` + * is invoked with the `this` binding of the memoized function. + * + * **Note:** The cache is exposed as the `cache` property on the memoized + * function. Its creation may be customized by replacing the `_.memoize.Cache` + * constructor with one whose instances implement the + * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object) + * method interface of `clear`, `delete`, `get`, `has`, and `set`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to have its output memoized. + * @param {Function} [resolver] The function to resolve the cache key. + * @returns {Function} Returns the new memoized function. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * var other = { 'c': 3, 'd': 4 }; + * + * var values = _.memoize(_.values); + * values(object); + * // => [1, 2] + * + * values(other); + * // => [3, 4] + * + * object.a = 2; + * values(object); + * // => [1, 2] + * + * // Modify the result cache. + * values.cache.set(object, ['a', 'b']); + * values(object); + * // => ['a', 'b'] + * + * // Replace `_.memoize.Cache`. + * _.memoize.Cache = WeakMap; + */ + function memoize(func, resolver) { + if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) { + throw new TypeError(FUNC_ERROR_TEXT); + } + var memoized = function() { + var args = arguments, + key = resolver ? resolver.apply(this, args) : args[0], + cache = memoized.cache; + + if (cache.has(key)) { + return cache.get(key); + } + var result = func.apply(this, args); + memoized.cache = cache.set(key, result) || cache; + return result; + }; + memoized.cache = new (memoize.Cache || MapCache); + return memoized; + } + + // Expose `MapCache`. + memoize.Cache = MapCache; + + /** + * Creates a function that negates the result of the predicate `func`. The + * `func` predicate is invoked with the `this` binding and arguments of the + * created function. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} predicate The predicate to negate. + * @returns {Function} Returns the new negated function. + * @example + * + * function isEven(n) { + * return n % 2 == 0; + * } + * + * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven)); + * // => [1, 3, 5] + */ + function negate(predicate) { + if (typeof predicate != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + return function() { + var args = arguments; + switch (args.length) { + case 0: return !predicate.call(this); + case 1: return !predicate.call(this, args[0]); + case 2: return !predicate.call(this, args[0], args[1]); + case 3: return !predicate.call(this, args[0], args[1], args[2]); + } + return !predicate.apply(this, args); + }; + } + + /** + * Creates a function that is restricted to invoking `func` once. Repeat calls + * to the function return the value of the first invocation. The `func` is + * invoked with the `this` binding and arguments of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to restrict. + * @returns {Function} Returns the new restricted function. + * @example + * + * var initialize = _.once(createApplication); + * initialize(); + * initialize(); + * // => `createApplication` is invoked once + */ + function once(func) { + return before(2, func); + } + + /** + * Creates a function that invokes `func` with its arguments transformed. + * + * @static + * @since 4.0.0 + * @memberOf _ + * @category Function + * @param {Function} func The function to wrap. + * @param {...(Function|Function[])} [transforms=[_.identity]] + * The argument transforms. + * @returns {Function} Returns the new function. + * @example + * + * function doubled(n) { + * return n * 2; + * } + * + * function square(n) { + * return n * n; + * } + * + * var func = _.overArgs(function(x, y) { + * return [x, y]; + * }, [square, doubled]); + * + * func(9, 3); + * // => [81, 6] + * + * func(10, 5); + * // => [100, 10] + */ + var overArgs = castRest(function(func, transforms) { + transforms = (transforms.length == 1 && isArray(transforms[0])) + ? arrayMap(transforms[0], baseUnary(getIteratee())) + : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee())); + + var funcsLength = transforms.length; + return baseRest(function(args) { + var index = -1, + length = nativeMin(args.length, funcsLength); + + while (++index < length) { + args[index] = transforms[index].call(this, args[index]); + } + return apply(func, this, args); + }); + }); + + /** + * Creates a function that invokes `func` with `partials` prepended to the + * arguments it receives. This method is like `_.bind` except it does **not** + * alter the `this` binding. + * + * The `_.partial.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 0.2.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var sayHelloTo = _.partial(greet, 'hello'); + * sayHelloTo('fred'); + * // => 'hello fred' + * + * // Partially applied with placeholders. + * var greetFred = _.partial(greet, _, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + */ + var partial = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partial)); + return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders); + }); + + /** + * This method is like `_.partial` except that partially applied arguments + * are appended to the arguments it receives. + * + * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic + * builds, may be used as a placeholder for partially applied arguments. + * + * **Note:** This method doesn't set the "length" property of partially + * applied functions. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Function + * @param {Function} func The function to partially apply arguments to. + * @param {...*} [partials] The arguments to be partially applied. + * @returns {Function} Returns the new partially applied function. + * @example + * + * function greet(greeting, name) { + * return greeting + ' ' + name; + * } + * + * var greetFred = _.partialRight(greet, 'fred'); + * greetFred('hi'); + * // => 'hi fred' + * + * // Partially applied with placeholders. + * var sayHelloTo = _.partialRight(greet, 'hello', _); + * sayHelloTo('fred'); + * // => 'hello fred' + */ + var partialRight = baseRest(function(func, partials) { + var holders = replaceHolders(partials, getHolder(partialRight)); + return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders); + }); + + /** + * Creates a function that invokes `func` with arguments arranged according + * to the specified `indexes` where the argument value at the first index is + * provided as the first argument, the argument value at the second index is + * provided as the second argument, and so on. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Function + * @param {Function} func The function to rearrange arguments for. + * @param {...(number|number[])} indexes The arranged argument indexes. + * @returns {Function} Returns the new function. + * @example + * + * var rearged = _.rearg(function(a, b, c) { + * return [a, b, c]; + * }, [2, 0, 1]); + * + * rearged('b', 'c', 'a') + * // => ['a', 'b', 'c'] + */ + var rearg = flatRest(function(func, indexes) { + return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes); + }); + + /** + * Creates a function that invokes `func` with the `this` binding of the + * created function and arguments from `start` and beyond provided as + * an array. + * + * **Note:** This method is based on the + * [rest parameter](https://mdn.io/rest_parameters). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to apply a rest parameter to. + * @param {number} [start=func.length-1] The start position of the rest parameter. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.rest(function(what, names) { + * return what + ' ' + _.initial(names).join(', ') + + * (_.size(names) > 1 ? ', & ' : '') + _.last(names); + * }); + * + * say('hello', 'fred', 'barney', 'pebbles'); + * // => 'hello fred, barney, & pebbles' + */ + function rest(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start === undefined ? start : toInteger(start); + return baseRest(func, start); + } + + /** + * Creates a function that invokes `func` with the `this` binding of the + * create function and an array of arguments much like + * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply). + * + * **Note:** This method is based on the + * [spread operator](https://mdn.io/spread_operator). + * + * @static + * @memberOf _ + * @since 3.2.0 + * @category Function + * @param {Function} func The function to spread arguments over. + * @param {number} [start=0] The start position of the spread. + * @returns {Function} Returns the new function. + * @example + * + * var say = _.spread(function(who, what) { + * return who + ' says ' + what; + * }); + * + * say(['fred', 'hello']); + * // => 'fred says hello' + * + * var numbers = Promise.all([ + * Promise.resolve(40), + * Promise.resolve(36) + * ]); + * + * numbers.then(_.spread(function(x, y) { + * return x + y; + * })); + * // => a Promise of 76 + */ + function spread(func, start) { + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + start = start == null ? 0 : nativeMax(toInteger(start), 0); + return baseRest(function(args) { + var array = args[start], + otherArgs = castSlice(args, 0, start); + + if (array) { + arrayPush(otherArgs, array); + } + return apply(func, this, otherArgs); + }); + } + + /** + * Creates a throttled function that only invokes `func` at most once per + * every `wait` milliseconds. The throttled function comes with a `cancel` + * method to cancel delayed `func` invocations and a `flush` method to + * immediately invoke them. Provide `options` to indicate whether `func` + * should be invoked on the leading and/or trailing edge of the `wait` + * timeout. The `func` is invoked with the last arguments provided to the + * throttled function. Subsequent calls to the throttled function return the + * result of the last `func` invocation. + * + * **Note:** If `leading` and `trailing` options are `true`, `func` is + * invoked on the trailing edge of the timeout only if the throttled function + * is invoked more than once during the `wait` timeout. + * + * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred + * until to the next tick, similar to `setTimeout` with a timeout of `0`. + * + * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/) + * for details over the differences between `_.throttle` and `_.debounce`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {Function} func The function to throttle. + * @param {number} [wait=0] The number of milliseconds to throttle invocations to. + * @param {Object} [options={}] The options object. + * @param {boolean} [options.leading=true] + * Specify invoking on the leading edge of the timeout. + * @param {boolean} [options.trailing=true] + * Specify invoking on the trailing edge of the timeout. + * @returns {Function} Returns the new throttled function. + * @example + * + * // Avoid excessively updating the position while scrolling. + * jQuery(window).on('scroll', _.throttle(updatePosition, 100)); + * + * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes. + * var throttled = _.throttle(renewToken, 300000, { 'trailing': false }); + * jQuery(element).on('click', throttled); + * + * // Cancel the trailing throttled invocation. + * jQuery(window).on('popstate', throttled.cancel); + */ + function throttle(func, wait, options) { + var leading = true, + trailing = true; + + if (typeof func != 'function') { + throw new TypeError(FUNC_ERROR_TEXT); + } + if (isObject(options)) { + leading = 'leading' in options ? !!options.leading : leading; + trailing = 'trailing' in options ? !!options.trailing : trailing; + } + return debounce(func, wait, { + 'leading': leading, + 'maxWait': wait, + 'trailing': trailing + }); + } + + /** + * Creates a function that accepts up to one argument, ignoring any + * additional arguments. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Function + * @param {Function} func The function to cap arguments for. + * @returns {Function} Returns the new capped function. + * @example + * + * _.map(['6', '8', '10'], _.unary(parseInt)); + * // => [6, 8, 10] + */ + function unary(func) { + return ary(func, 1); + } + + /** + * Creates a function that provides `value` to `wrapper` as its first + * argument. Any additional arguments provided to the function are appended + * to those provided to the `wrapper`. The wrapper is invoked with the `this` + * binding of the created function. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Function + * @param {*} value The value to wrap. + * @param {Function} [wrapper=identity] The wrapper function. + * @returns {Function} Returns the new function. + * @example + * + * var p = _.wrap(_.escape, function(func, text) { + * return '

' + func(text) + '

'; + * }); + * + * p('fred, barney, & pebbles'); + * // => '

fred, barney, & pebbles

' + */ + function wrap(value, wrapper) { + return partial(castFunction(wrapper), value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Casts `value` as an array if it's not one. + * + * @static + * @memberOf _ + * @since 4.4.0 + * @category Lang + * @param {*} value The value to inspect. + * @returns {Array} Returns the cast array. + * @example + * + * _.castArray(1); + * // => [1] + * + * _.castArray({ 'a': 1 }); + * // => [{ 'a': 1 }] + * + * _.castArray('abc'); + * // => ['abc'] + * + * _.castArray(null); + * // => [null] + * + * _.castArray(undefined); + * // => [undefined] + * + * _.castArray(); + * // => [] + * + * var array = [1, 2, 3]; + * console.log(_.castArray(array) === array); + * // => true + */ + function castArray() { + if (!arguments.length) { + return []; + } + var value = arguments[0]; + return isArray(value) ? value : [value]; + } + + /** + * Creates a shallow clone of `value`. + * + * **Note:** This method is loosely based on the + * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm) + * and supports cloning arrays, array buffers, booleans, date objects, maps, + * numbers, `Object` objects, regexes, sets, strings, symbols, and typed + * arrays. The own enumerable properties of `arguments` objects are cloned + * as plain objects. An empty object is returned for uncloneable values such + * as error objects, functions, DOM nodes, and WeakMaps. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to clone. + * @returns {*} Returns the cloned value. + * @see _.cloneDeep + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var shallow = _.clone(objects); + * console.log(shallow[0] === objects[0]); + * // => true + */ + function clone(value) { + return baseClone(value, CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.clone` except that it accepts `customizer` which + * is invoked to produce the cloned value. If `customizer` returns `undefined`, + * cloning is handled by the method instead. The `customizer` is invoked with + * up to four arguments; (value [, index|key, object, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the cloned value. + * @see _.cloneDeepWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(false); + * } + * } + * + * var el = _.cloneWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 0 + */ + function cloneWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * This method is like `_.clone` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @returns {*} Returns the deep cloned value. + * @see _.clone + * @example + * + * var objects = [{ 'a': 1 }, { 'b': 2 }]; + * + * var deep = _.cloneDeep(objects); + * console.log(deep[0] === objects[0]); + * // => false + */ + function cloneDeep(value) { + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG); + } + + /** + * This method is like `_.cloneWith` except that it recursively clones `value`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to recursively clone. + * @param {Function} [customizer] The function to customize cloning. + * @returns {*} Returns the deep cloned value. + * @see _.cloneWith + * @example + * + * function customizer(value) { + * if (_.isElement(value)) { + * return value.cloneNode(true); + * } + * } + * + * var el = _.cloneDeepWith(document.body, customizer); + * + * console.log(el === document.body); + * // => false + * console.log(el.nodeName); + * // => 'BODY' + * console.log(el.childNodes.length); + * // => 20 + */ + function cloneDeepWith(value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer); + } + + /** + * Checks if `object` conforms to `source` by invoking the predicate + * properties of `source` with the corresponding property values of `object`. + * + * **Note:** This method is equivalent to `_.conforms` when `source` is + * partially applied. + * + * @static + * @memberOf _ + * @since 4.14.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property predicates to conform to. + * @returns {boolean} Returns `true` if `object` conforms, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.conformsTo(object, { 'b': function(n) { return n > 1; } }); + * // => true + * + * _.conformsTo(object, { 'b': function(n) { return n > 2; } }); + * // => false + */ + function conformsTo(object, source) { + return source == null || baseConformsTo(object, source, keys(source)); + } + + /** + * Performs a + * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero) + * comparison between two values to determine if they are equivalent. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.eq(object, object); + * // => true + * + * _.eq(object, other); + * // => false + * + * _.eq('a', 'a'); + * // => true + * + * _.eq('a', Object('a')); + * // => false + * + * _.eq(NaN, NaN); + * // => true + */ + function eq(value, other) { + return value === other || (value !== value && other !== other); + } + + /** + * Checks if `value` is greater than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than `other`, + * else `false`. + * @see _.lt + * @example + * + * _.gt(3, 1); + * // => true + * + * _.gt(3, 3); + * // => false + * + * _.gt(1, 3); + * // => false + */ + var gt = createRelationalOperation(baseGt); + + /** + * Checks if `value` is greater than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is greater than or equal to + * `other`, else `false`. + * @see _.lte + * @example + * + * _.gte(3, 1); + * // => true + * + * _.gte(3, 3); + * // => true + * + * _.gte(1, 3); + * // => false + */ + var gte = createRelationalOperation(function(value, other) { + return value >= other; + }); + + /** + * Checks if `value` is likely an `arguments` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an `arguments` object, + * else `false`. + * @example + * + * _.isArguments(function() { return arguments; }()); + * // => true + * + * _.isArguments([1, 2, 3]); + * // => false + */ + var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { + return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && + !propertyIsEnumerable.call(value, 'callee'); + }; + + /** + * Checks if `value` is classified as an `Array` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array, else `false`. + * @example + * + * _.isArray([1, 2, 3]); + * // => true + * + * _.isArray(document.body.children); + * // => false + * + * _.isArray('abc'); + * // => false + * + * _.isArray(_.noop); + * // => false + */ + var isArray = Array.isArray; + + /** + * Checks if `value` is classified as an `ArrayBuffer` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`. + * @example + * + * _.isArrayBuffer(new ArrayBuffer(2)); + * // => true + * + * _.isArrayBuffer(new Array(2)); + * // => false + */ + var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer; + + /** + * Checks if `value` is array-like. A value is considered array-like if it's + * not a function and has a `value.length` that's an integer greater than or + * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is array-like, else `false`. + * @example + * + * _.isArrayLike([1, 2, 3]); + * // => true + * + * _.isArrayLike(document.body.children); + * // => true + * + * _.isArrayLike('abc'); + * // => true + * + * _.isArrayLike(_.noop); + * // => false + */ + function isArrayLike(value) { + return value != null && isLength(value.length) && !isFunction(value); + } + + /** + * This method is like `_.isArrayLike` except that it also checks if `value` + * is an object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an array-like object, + * else `false`. + * @example + * + * _.isArrayLikeObject([1, 2, 3]); + * // => true + * + * _.isArrayLikeObject(document.body.children); + * // => true + * + * _.isArrayLikeObject('abc'); + * // => false + * + * _.isArrayLikeObject(_.noop); + * // => false + */ + function isArrayLikeObject(value) { + return isObjectLike(value) && isArrayLike(value); + } + + /** + * Checks if `value` is classified as a boolean primitive or object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a boolean, else `false`. + * @example + * + * _.isBoolean(false); + * // => true + * + * _.isBoolean(null); + * // => false + */ + function isBoolean(value) { + return value === true || value === false || + (isObjectLike(value) && baseGetTag(value) == boolTag); + } + + /** + * Checks if `value` is a buffer. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. + * @example + * + * _.isBuffer(new Buffer(2)); + * // => true + * + * _.isBuffer(new Uint8Array(2)); + * // => false + */ + var isBuffer = nativeIsBuffer || stubFalse; + + /** + * Checks if `value` is classified as a `Date` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a date object, else `false`. + * @example + * + * _.isDate(new Date); + * // => true + * + * _.isDate('Mon April 23 2012'); + * // => false + */ + var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate; + + /** + * Checks if `value` is likely a DOM element. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`. + * @example + * + * _.isElement(document.body); + * // => true + * + * _.isElement(''); + * // => false + */ + function isElement(value) { + return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value); + } + + /** + * Checks if `value` is an empty object, collection, map, or set. + * + * Objects are considered empty if they have no own enumerable string keyed + * properties. + * + * Array-like values such as `arguments` objects, arrays, buffers, strings, or + * jQuery-like collections are considered empty if they have a `length` of `0`. + * Similarly, maps and sets are considered empty if they have a `size` of `0`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is empty, else `false`. + * @example + * + * _.isEmpty(null); + * // => true + * + * _.isEmpty(true); + * // => true + * + * _.isEmpty(1); + * // => true + * + * _.isEmpty([1, 2, 3]); + * // => false + * + * _.isEmpty({ 'a': 1 }); + * // => false + */ + function isEmpty(value) { + if (value == null) { + return true; + } + if (isArrayLike(value) && + (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' || + isBuffer(value) || isTypedArray(value) || isArguments(value))) { + return !value.length; + } + var tag = getTag(value); + if (tag == mapTag || tag == setTag) { + return !value.size; + } + if (isPrototype(value)) { + return !baseKeys(value).length; + } + for (var key in value) { + if (hasOwnProperty.call(value, key)) { + return false; + } + } + return true; + } + + /** + * Performs a deep comparison between two values to determine if they are + * equivalent. + * + * **Note:** This method supports comparing arrays, array buffers, booleans, + * date objects, error objects, maps, numbers, `Object` objects, regexes, + * sets, strings, symbols, and typed arrays. `Object` objects are compared + * by their own, not inherited, enumerable properties. Functions and DOM + * nodes are compared by strict equality, i.e. `===`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * var object = { 'a': 1 }; + * var other = { 'a': 1 }; + * + * _.isEqual(object, other); + * // => true + * + * object === other; + * // => false + */ + function isEqual(value, other) { + return baseIsEqual(value, other); + } + + /** + * This method is like `_.isEqual` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with up to + * six arguments: (objValue, othValue [, index|key, object, other, stack]). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if the values are equivalent, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, othValue) { + * if (isGreeting(objValue) && isGreeting(othValue)) { + * return true; + * } + * } + * + * var array = ['hello', 'goodbye']; + * var other = ['hi', 'goodbye']; + * + * _.isEqualWith(array, other, customizer); + * // => true + */ + function isEqualWith(value, other, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + var result = customizer ? customizer(value, other) : undefined; + return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result; + } + + /** + * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`, + * `SyntaxError`, `TypeError`, or `URIError` object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an error object, else `false`. + * @example + * + * _.isError(new Error); + * // => true + * + * _.isError(Error); + * // => false + */ + function isError(value) { + if (!isObjectLike(value)) { + return false; + } + var tag = baseGetTag(value); + return tag == errorTag || tag == domExcTag || + (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value)); + } + + /** + * Checks if `value` is a finite primitive number. + * + * **Note:** This method is based on + * [`Number.isFinite`](https://mdn.io/Number/isFinite). + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a finite number, else `false`. + * @example + * + * _.isFinite(3); + * // => true + * + * _.isFinite(Number.MIN_VALUE); + * // => true + * + * _.isFinite(Infinity); + * // => false + * + * _.isFinite('3'); + * // => false + */ + function isFinite(value) { + return typeof value == 'number' && nativeIsFinite(value); + } + + /** + * Checks if `value` is classified as a `Function` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a function, else `false`. + * @example + * + * _.isFunction(_); + * // => true + * + * _.isFunction(/abc/); + * // => false + */ + function isFunction(value) { + if (!isObject(value)) { + return false; + } + // The use of `Object#toString` avoids issues with the `typeof` operator + // in Safari 9 which returns 'object' for typed arrays and other constructors. + var tag = baseGetTag(value); + return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; + } + + /** + * Checks if `value` is an integer. + * + * **Note:** This method is based on + * [`Number.isInteger`](https://mdn.io/Number/isInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an integer, else `false`. + * @example + * + * _.isInteger(3); + * // => true + * + * _.isInteger(Number.MIN_VALUE); + * // => false + * + * _.isInteger(Infinity); + * // => false + * + * _.isInteger('3'); + * // => false + */ + function isInteger(value) { + return typeof value == 'number' && value == toInteger(value); + } + + /** + * Checks if `value` is a valid array-like length. + * + * **Note:** This method is loosely based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. + * @example + * + * _.isLength(3); + * // => true + * + * _.isLength(Number.MIN_VALUE); + * // => false + * + * _.isLength(Infinity); + * // => false + * + * _.isLength('3'); + * // => false + */ + function isLength(value) { + return typeof value == 'number' && + value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is the + * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) + * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is an object, else `false`. + * @example + * + * _.isObject({}); + * // => true + * + * _.isObject([1, 2, 3]); + * // => true + * + * _.isObject(_.noop); + * // => true + * + * _.isObject(null); + * // => false + */ + function isObject(value) { + var type = typeof value; + return value != null && (type == 'object' || type == 'function'); + } + + /** + * Checks if `value` is object-like. A value is object-like if it's not `null` + * and has a `typeof` result of "object". + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is object-like, else `false`. + * @example + * + * _.isObjectLike({}); + * // => true + * + * _.isObjectLike([1, 2, 3]); + * // => true + * + * _.isObjectLike(_.noop); + * // => false + * + * _.isObjectLike(null); + * // => false + */ + function isObjectLike(value) { + return value != null && typeof value == 'object'; + } + + /** + * Checks if `value` is classified as a `Map` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a map, else `false`. + * @example + * + * _.isMap(new Map); + * // => true + * + * _.isMap(new WeakMap); + * // => false + */ + var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; + + /** + * Performs a partial deep comparison between `object` and `source` to + * determine if `object` contains equivalent property values. + * + * **Note:** This method is equivalent to `_.matches` when `source` is + * partially applied. + * + * Partial comparisons will match empty array and empty object `source` + * values against any array or object value, respectively. See `_.isEqual` + * for a list of supported value comparisons. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * var object = { 'a': 1, 'b': 2 }; + * + * _.isMatch(object, { 'b': 2 }); + * // => true + * + * _.isMatch(object, { 'b': 1 }); + * // => false + */ + function isMatch(object, source) { + return object === source || baseIsMatch(object, source, getMatchData(source)); + } + + /** + * This method is like `_.isMatch` except that it accepts `customizer` which + * is invoked to compare values. If `customizer` returns `undefined`, comparisons + * are handled by the method instead. The `customizer` is invoked with five + * arguments: (objValue, srcValue, index|key, object, source). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {Object} object The object to inspect. + * @param {Object} source The object of property values to match. + * @param {Function} [customizer] The function to customize comparisons. + * @returns {boolean} Returns `true` if `object` is a match, else `false`. + * @example + * + * function isGreeting(value) { + * return /^h(?:i|ello)$/.test(value); + * } + * + * function customizer(objValue, srcValue) { + * if (isGreeting(objValue) && isGreeting(srcValue)) { + * return true; + * } + * } + * + * var object = { 'greeting': 'hello' }; + * var source = { 'greeting': 'hi' }; + * + * _.isMatchWith(object, source, customizer); + * // => true + */ + function isMatchWith(object, source, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return baseIsMatch(object, source, getMatchData(source), customizer); + } + + /** + * Checks if `value` is `NaN`. + * + * **Note:** This method is based on + * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as + * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for + * `undefined` and other non-number values. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. + * @example + * + * _.isNaN(NaN); + * // => true + * + * _.isNaN(new Number(NaN)); + * // => true + * + * isNaN(undefined); + * // => true + * + * _.isNaN(undefined); + * // => false + */ + function isNaN(value) { + // An `NaN` primitive is the only value that is not equal to itself. + // Perform the `toStringTag` check first to avoid errors with some + // ActiveX objects in IE. + return isNumber(value) && value != +value; + } + + /** + * Checks if `value` is a pristine native function. + * + * **Note:** This method can't reliably detect native functions in the presence + * of the core-js package because core-js circumvents this kind of detection. + * Despite multiple requests, the core-js maintainer has made it clear: any + * attempt to fix the detection will be obstructed. As a result, we're left + * with little choice but to throw an error. Unfortunately, this also affects + * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill), + * which rely on core-js. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a native function, + * else `false`. + * @example + * + * _.isNative(Array.prototype.push); + * // => true + * + * _.isNative(_); + * // => false + */ + function isNative(value) { + if (isMaskable(value)) { + throw new Error(CORE_ERROR_TEXT); + } + return baseIsNative(value); + } + + /** + * Checks if `value` is `null`. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `null`, else `false`. + * @example + * + * _.isNull(null); + * // => true + * + * _.isNull(void 0); + * // => false + */ + function isNull(value) { + return value === null; + } + + /** + * Checks if `value` is `null` or `undefined`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is nullish, else `false`. + * @example + * + * _.isNil(null); + * // => true + * + * _.isNil(void 0); + * // => true + * + * _.isNil(NaN); + * // => false + */ + function isNil(value) { + return value == null; + } + + /** + * Checks if `value` is classified as a `Number` primitive or object. + * + * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are + * classified as numbers, use the `_.isFinite` method. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a number, else `false`. + * @example + * + * _.isNumber(3); + * // => true + * + * _.isNumber(Number.MIN_VALUE); + * // => true + * + * _.isNumber(Infinity); + * // => true + * + * _.isNumber('3'); + * // => false + */ + function isNumber(value) { + return typeof value == 'number' || + (isObjectLike(value) && baseGetTag(value) == numberTag); + } + + /** + * Checks if `value` is a plain object, that is, an object created by the + * `Object` constructor or one with a `[[Prototype]]` of `null`. + * + * @static + * @memberOf _ + * @since 0.8.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a plain object, else `false`. + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * _.isPlainObject(new Foo); + * // => false + * + * _.isPlainObject([1, 2, 3]); + * // => false + * + * _.isPlainObject({ 'x': 0, 'y': 0 }); + * // => true + * + * _.isPlainObject(Object.create(null)); + * // => true + */ + function isPlainObject(value) { + if (!isObjectLike(value) || baseGetTag(value) != objectTag) { + return false; + } + var proto = getPrototype(value); + if (proto === null) { + return true; + } + var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor; + return typeof Ctor == 'function' && Ctor instanceof Ctor && + funcToString.call(Ctor) == objectCtorString; + } + + /** + * Checks if `value` is classified as a `RegExp` object. + * + * @static + * @memberOf _ + * @since 0.1.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a regexp, else `false`. + * @example + * + * _.isRegExp(/abc/); + * // => true + * + * _.isRegExp('/abc/'); + * // => false + */ + var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp; + + /** + * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754 + * double precision number which isn't the result of a rounded unsafe integer. + * + * **Note:** This method is based on + * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`. + * @example + * + * _.isSafeInteger(3); + * // => true + * + * _.isSafeInteger(Number.MIN_VALUE); + * // => false + * + * _.isSafeInteger(Infinity); + * // => false + * + * _.isSafeInteger('3'); + * // => false + */ + function isSafeInteger(value) { + return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER; + } + + /** + * Checks if `value` is classified as a `Set` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a set, else `false`. + * @example + * + * _.isSet(new Set); + * // => true + * + * _.isSet(new WeakSet); + * // => false + */ + var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet; + + /** + * Checks if `value` is classified as a `String` primitive or object. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a string, else `false`. + * @example + * + * _.isString('abc'); + * // => true + * + * _.isString(1); + * // => false + */ + function isString(value) { + return typeof value == 'string' || + (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); + } + + /** + * Checks if `value` is classified as a `Symbol` primitive or object. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. + * @example + * + * _.isSymbol(Symbol.iterator); + * // => true + * + * _.isSymbol('abc'); + * // => false + */ + function isSymbol(value) { + return typeof value == 'symbol' || + (isObjectLike(value) && baseGetTag(value) == symbolTag); + } + + /** + * Checks if `value` is classified as a typed array. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. + * @example + * + * _.isTypedArray(new Uint8Array); + * // => true + * + * _.isTypedArray([]); + * // => false + */ + var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; + + /** + * Checks if `value` is `undefined`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. + * @example + * + * _.isUndefined(void 0); + * // => true + * + * _.isUndefined(null); + * // => false + */ + function isUndefined(value) { + return value === undefined; + } + + /** + * Checks if `value` is classified as a `WeakMap` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak map, else `false`. + * @example + * + * _.isWeakMap(new WeakMap); + * // => true + * + * _.isWeakMap(new Map); + * // => false + */ + function isWeakMap(value) { + return isObjectLike(value) && getTag(value) == weakMapTag; + } + + /** + * Checks if `value` is classified as a `WeakSet` object. + * + * @static + * @memberOf _ + * @since 4.3.0 + * @category Lang + * @param {*} value The value to check. + * @returns {boolean} Returns `true` if `value` is a weak set, else `false`. + * @example + * + * _.isWeakSet(new WeakSet); + * // => true + * + * _.isWeakSet(new Set); + * // => false + */ + function isWeakSet(value) { + return isObjectLike(value) && baseGetTag(value) == weakSetTag; + } + + /** + * Checks if `value` is less than `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than `other`, + * else `false`. + * @see _.gt + * @example + * + * _.lt(1, 3); + * // => true + * + * _.lt(3, 3); + * // => false + * + * _.lt(3, 1); + * // => false + */ + var lt = createRelationalOperation(baseLt); + + /** + * Checks if `value` is less than or equal to `other`. + * + * @static + * @memberOf _ + * @since 3.9.0 + * @category Lang + * @param {*} value The value to compare. + * @param {*} other The other value to compare. + * @returns {boolean} Returns `true` if `value` is less than or equal to + * `other`, else `false`. + * @see _.gte + * @example + * + * _.lte(1, 3); + * // => true + * + * _.lte(3, 3); + * // => true + * + * _.lte(3, 1); + * // => false + */ + var lte = createRelationalOperation(function(value, other) { + return value <= other; + }); + + /** + * Converts `value` to an array. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Lang + * @param {*} value The value to convert. + * @returns {Array} Returns the converted array. + * @example + * + * _.toArray({ 'a': 1, 'b': 2 }); + * // => [1, 2] + * + * _.toArray('abc'); + * // => ['a', 'b', 'c'] + * + * _.toArray(1); + * // => [] + * + * _.toArray(null); + * // => [] + */ + function toArray(value) { + if (!value) { + return []; + } + if (isArrayLike(value)) { + return isString(value) ? stringToArray(value) : copyArray(value); + } + if (symIterator && value[symIterator]) { + return iteratorToArray(value[symIterator]()); + } + var tag = getTag(value), + func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values); + + return func(value); + } + + /** + * Converts `value` to a finite number. + * + * @static + * @memberOf _ + * @since 4.12.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted number. + * @example + * + * _.toFinite(3.2); + * // => 3.2 + * + * _.toFinite(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toFinite(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toFinite('3.2'); + * // => 3.2 + */ + function toFinite(value) { + if (!value) { + return value === 0 ? value : 0; + } + value = toNumber(value); + if (value === INFINITY || value === -INFINITY) { + var sign = (value < 0 ? -1 : 1); + return sign * MAX_INTEGER; + } + return value === value ? value : 0; + } + + /** + * Converts `value` to an integer. + * + * **Note:** This method is loosely based on + * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toInteger(3.2); + * // => 3 + * + * _.toInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toInteger(Infinity); + * // => 1.7976931348623157e+308 + * + * _.toInteger('3.2'); + * // => 3 + */ + function toInteger(value) { + var result = toFinite(value), + remainder = result % 1; + + return result === result ? (remainder ? result - remainder : result) : 0; + } + + /** + * Converts `value` to an integer suitable for use as the length of an + * array-like object. + * + * **Note:** This method is based on + * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toLength(3.2); + * // => 3 + * + * _.toLength(Number.MIN_VALUE); + * // => 0 + * + * _.toLength(Infinity); + * // => 4294967295 + * + * _.toLength('3.2'); + * // => 3 + */ + function toLength(value) { + return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0; + } + + /** + * Converts `value` to a number. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to process. + * @returns {number} Returns the number. + * @example + * + * _.toNumber(3.2); + * // => 3.2 + * + * _.toNumber(Number.MIN_VALUE); + * // => 5e-324 + * + * _.toNumber(Infinity); + * // => Infinity + * + * _.toNumber('3.2'); + * // => 3.2 + */ + function toNumber(value) { + if (typeof value == 'number') { + return value; + } + if (isSymbol(value)) { + return NAN; + } + if (isObject(value)) { + var other = typeof value.valueOf == 'function' ? value.valueOf() : value; + value = isObject(other) ? (other + '') : other; + } + if (typeof value != 'string') { + return value === 0 ? value : +value; + } + value = value.replace(reTrim, ''); + var isBinary = reIsBinary.test(value); + return (isBinary || reIsOctal.test(value)) + ? freeParseInt(value.slice(2), isBinary ? 2 : 8) + : (reIsBadHex.test(value) ? NAN : +value); + } + + /** + * Converts `value` to a plain object flattening inherited enumerable string + * keyed properties of `value` to own properties of the plain object. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {Object} Returns the converted plain object. + * @example + * + * function Foo() { + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.assign({ 'a': 1 }, new Foo); + * // => { 'a': 1, 'b': 2 } + * + * _.assign({ 'a': 1 }, _.toPlainObject(new Foo)); + * // => { 'a': 1, 'b': 2, 'c': 3 } + */ + function toPlainObject(value) { + return copyObject(value, keysIn(value)); + } + + /** + * Converts `value` to a safe integer. A safe integer can be compared and + * represented correctly. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {number} Returns the converted integer. + * @example + * + * _.toSafeInteger(3.2); + * // => 3 + * + * _.toSafeInteger(Number.MIN_VALUE); + * // => 0 + * + * _.toSafeInteger(Infinity); + * // => 9007199254740991 + * + * _.toSafeInteger('3.2'); + * // => 3 + */ + function toSafeInteger(value) { + return value + ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER) + : (value === 0 ? value : 0); + } + + /** + * Converts `value` to a string. An empty string is returned for `null` + * and `undefined` values. The sign of `-0` is preserved. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Lang + * @param {*} value The value to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.toString(null); + * // => '' + * + * _.toString(-0); + * // => '-0' + * + * _.toString([1, 2, 3]); + * // => '1,2,3' + */ + function toString(value) { + return value == null ? '' : baseToString(value); + } + + /*------------------------------------------------------------------------*/ + + /** + * Assigns own enumerable string keyed properties of source objects to the + * destination object. Source objects are applied from left to right. + * Subsequent sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object` and is loosely based on + * [`Object.assign`](https://mdn.io/Object/assign). + * + * @static + * @memberOf _ + * @since 0.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assignIn + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assign({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'c': 3 } + */ + var assign = createAssigner(function(object, source) { + if (isPrototype(source) || isArrayLike(source)) { + copyObject(source, keys(source), object); + return; + } + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + assignValue(object, key, source[key]); + } + } + }); + + /** + * This method is like `_.assign` except that it iterates over own and + * inherited source properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extend + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.assign + * @example + * + * function Foo() { + * this.a = 1; + * } + * + * function Bar() { + * this.c = 3; + * } + * + * Foo.prototype.b = 2; + * Bar.prototype.d = 4; + * + * _.assignIn({ 'a': 0 }, new Foo, new Bar); + * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 } + */ + var assignIn = createAssigner(function(object, source) { + copyObject(source, keysIn(source), object); + }); + + /** + * This method is like `_.assignIn` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias extendWith + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignInWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignInWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keysIn(source), object, customizer); + }); + + /** + * This method is like `_.assign` except that it accepts `customizer` + * which is invoked to produce the assigned values. If `customizer` returns + * `undefined`, assignment is handled by the method instead. The `customizer` + * is invoked with five arguments: (objValue, srcValue, key, object, source). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @see _.assignInWith + * @example + * + * function customizer(objValue, srcValue) { + * return _.isUndefined(objValue) ? srcValue : objValue; + * } + * + * var defaults = _.partialRight(_.assignWith, customizer); + * + * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var assignWith = createAssigner(function(object, source, srcIndex, customizer) { + copyObject(source, keys(source), object, customizer); + }); + + /** + * Creates an array of values corresponding to `paths` of `object`. + * + * @static + * @memberOf _ + * @since 1.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Array} Returns the picked values. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] }; + * + * _.at(object, ['a[0].b.c', 'a[1]']); + * // => [3, 4] + */ + var at = flatRest(baseAt); + + /** + * Creates an object that inherits from the `prototype` object. If a + * `properties` object is given, its own enumerable string keyed properties + * are assigned to the created object. + * + * @static + * @memberOf _ + * @since 2.3.0 + * @category Object + * @param {Object} prototype The object to inherit from. + * @param {Object} [properties] The properties to assign to the object. + * @returns {Object} Returns the new object. + * @example + * + * function Shape() { + * this.x = 0; + * this.y = 0; + * } + * + * function Circle() { + * Shape.call(this); + * } + * + * Circle.prototype = _.create(Shape.prototype, { + * 'constructor': Circle + * }); + * + * var circle = new Circle; + * circle instanceof Circle; + * // => true + * + * circle instanceof Shape; + * // => true + */ + function create(prototype, properties) { + var result = baseCreate(prototype); + return properties == null ? result : baseAssign(result, properties); + } + + /** + * Assigns own and inherited enumerable string keyed properties of source + * objects to the destination object for all destination properties that + * resolve to `undefined`. Source objects are applied from left to right. + * Once a property is set, additional values of the same property are ignored. + * + * **Note:** This method mutates `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaultsDeep + * @example + * + * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 }); + * // => { 'a': 1, 'b': 2 } + */ + var defaults = baseRest(function(object, sources) { + object = Object(object); + + var index = -1; + var length = sources.length; + var guard = length > 2 ? sources[2] : undefined; + + if (guard && isIterateeCall(sources[0], sources[1], guard)) { + length = 1; + } + + while (++index < length) { + var source = sources[index]; + var props = keysIn(source); + var propsIndex = -1; + var propsLength = props.length; + + while (++propsIndex < propsLength) { + var key = props[propsIndex]; + var value = object[key]; + + if (value === undefined || + (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) { + object[key] = source[key]; + } + } + } + + return object; + }); + + /** + * This method is like `_.defaults` except that it recursively assigns + * default properties. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.10.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @see _.defaults + * @example + * + * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } }); + * // => { 'a': { 'b': 2, 'c': 3 } } + */ + var defaultsDeep = baseRest(function(args) { + args.push(undefined, customDefaultsMerge); + return apply(mergeWith, undefined, args); + }); + + /** + * This method is like `_.find` except that it returns the key of the first + * element `predicate` returns truthy for instead of the element itself. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findKey(users, function(o) { return o.age < 40; }); + * // => 'barney' (iteration order is not guaranteed) + * + * // The `_.matches` iteratee shorthand. + * _.findKey(users, { 'age': 1, 'active': true }); + * // => 'pebbles' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findKey(users, 'active'); + * // => 'barney' + */ + function findKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwn); + } + + /** + * This method is like `_.findKey` except that it iterates over elements of + * a collection in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @param {Function} [predicate=_.identity] The function invoked per iteration. + * @returns {string|undefined} Returns the key of the matched element, + * else `undefined`. + * @example + * + * var users = { + * 'barney': { 'age': 36, 'active': true }, + * 'fred': { 'age': 40, 'active': false }, + * 'pebbles': { 'age': 1, 'active': true } + * }; + * + * _.findLastKey(users, function(o) { return o.age < 40; }); + * // => returns 'pebbles' assuming `_.findKey` returns 'barney' + * + * // The `_.matches` iteratee shorthand. + * _.findLastKey(users, { 'age': 36, 'active': true }); + * // => 'barney' + * + * // The `_.matchesProperty` iteratee shorthand. + * _.findLastKey(users, ['active', false]); + * // => 'fred' + * + * // The `_.property` iteratee shorthand. + * _.findLastKey(users, 'active'); + * // => 'pebbles' + */ + function findLastKey(object, predicate) { + return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight); + } + + /** + * Iterates over own and inherited enumerable string keyed properties of an + * object and invokes `iteratee` for each property. The iteratee is invoked + * with three arguments: (value, key, object). Iteratee functions may exit + * iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forInRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forIn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed). + */ + function forIn(object, iteratee) { + return object == null + ? object + : baseFor(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * This method is like `_.forIn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forIn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forInRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'. + */ + function forInRight(object, iteratee) { + return object == null + ? object + : baseForRight(object, getIteratee(iteratee, 3), keysIn); + } + + /** + * Iterates over own enumerable string keyed properties of an object and + * invokes `iteratee` for each property. The iteratee is invoked with three + * arguments: (value, key, object). Iteratee functions may exit iteration + * early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 0.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwnRight + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwn(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'a' then 'b' (iteration order is not guaranteed). + */ + function forOwn(object, iteratee) { + return object && baseForOwn(object, getIteratee(iteratee, 3)); + } + + /** + * This method is like `_.forOwn` except that it iterates over properties of + * `object` in the opposite order. + * + * @static + * @memberOf _ + * @since 2.0.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns `object`. + * @see _.forOwn + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.forOwnRight(new Foo, function(value, key) { + * console.log(key); + * }); + * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'. + */ + function forOwnRight(object, iteratee) { + return object && baseForOwnRight(object, getIteratee(iteratee, 3)); + } + + /** + * Creates an array of function property names from own enumerable properties + * of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functionsIn + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functions(new Foo); + * // => ['a', 'b'] + */ + function functions(object) { + return object == null ? [] : baseFunctions(object, keys(object)); + } + + /** + * Creates an array of function property names from own and inherited + * enumerable properties of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to inspect. + * @returns {Array} Returns the function names. + * @see _.functions + * @example + * + * function Foo() { + * this.a = _.constant('a'); + * this.b = _.constant('b'); + * } + * + * Foo.prototype.c = _.constant('c'); + * + * _.functionsIn(new Foo); + * // => ['a', 'b', 'c'] + */ + function functionsIn(object) { + return object == null ? [] : baseFunctions(object, keysIn(object)); + } + + /** + * Gets the value at `path` of `object`. If the resolved value is + * `undefined`, the `defaultValue` is returned in its place. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to get. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.get(object, 'a[0].b.c'); + * // => 3 + * + * _.get(object, ['a', '0', 'b', 'c']); + * // => 3 + * + * _.get(object, 'a.b.c', 'default'); + * // => 'default' + */ + function get(object, path, defaultValue) { + var result = object == null ? undefined : baseGet(object, path); + return result === undefined ? defaultValue : result; + } + + /** + * Checks if `path` is a direct property of `object`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = { 'a': { 'b': 2 } }; + * var other = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.has(object, 'a'); + * // => true + * + * _.has(object, 'a.b'); + * // => true + * + * _.has(object, ['a', 'b']); + * // => true + * + * _.has(other, 'a'); + * // => false + */ + function has(object, path) { + return object != null && hasPath(object, path, baseHas); + } + + /** + * Checks if `path` is a direct or inherited property of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path to check. + * @returns {boolean} Returns `true` if `path` exists, else `false`. + * @example + * + * var object = _.create({ 'a': _.create({ 'b': 2 }) }); + * + * _.hasIn(object, 'a'); + * // => true + * + * _.hasIn(object, 'a.b'); + * // => true + * + * _.hasIn(object, ['a', 'b']); + * // => true + * + * _.hasIn(object, 'b'); + * // => false + */ + function hasIn(object, path) { + return object != null && hasPath(object, path, baseHasIn); + } + + /** + * Creates an object composed of the inverted keys and values of `object`. + * If `object` contains duplicate values, subsequent values overwrite + * property assignments of previous values. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Object + * @param {Object} object The object to invert. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invert(object); + * // => { '1': 'c', '2': 'b' } + */ + var invert = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + result[value] = key; + }, constant(identity)); + + /** + * This method is like `_.invert` except that the inverted object is generated + * from the results of running each element of `object` thru `iteratee`. The + * corresponding inverted value of each inverted key is an array of keys + * responsible for generating the inverted value. The iteratee is invoked + * with one argument: (value). + * + * @static + * @memberOf _ + * @since 4.1.0 + * @category Object + * @param {Object} object The object to invert. + * @param {Function} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Object} Returns the new inverted object. + * @example + * + * var object = { 'a': 1, 'b': 2, 'c': 1 }; + * + * _.invertBy(object); + * // => { '1': ['a', 'c'], '2': ['b'] } + * + * _.invertBy(object, function(value) { + * return 'group' + value; + * }); + * // => { 'group1': ['a', 'c'], 'group2': ['b'] } + */ + var invertBy = createInverter(function(result, value, key) { + if (value != null && + typeof value.toString != 'function') { + value = nativeObjectToString.call(value); + } + + if (hasOwnProperty.call(result, value)) { + result[value].push(key); + } else { + result[value] = [key]; + } + }, getIteratee); + + /** + * Invokes the method at `path` of `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the method to invoke. + * @param {...*} [args] The arguments to invoke the method with. + * @returns {*} Returns the result of the invoked method. + * @example + * + * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] }; + * + * _.invoke(object, 'a[0].b.c.slice', 1, 3); + * // => [2, 3] + */ + var invoke = baseRest(baseInvoke); + + /** + * Creates an array of the own enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. See the + * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) + * for more details. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keys(new Foo); + * // => ['a', 'b'] (iteration order is not guaranteed) + * + * _.keys('hi'); + * // => ['0', '1'] + */ + function keys(object) { + return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); + } + + /** + * Creates an array of the own and inherited enumerable property names of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property names. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.keysIn(new Foo); + * // => ['a', 'b', 'c'] (iteration order is not guaranteed) + */ + function keysIn(object) { + return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object); + } + + /** + * The opposite of `_.mapValues`; this method creates an object with the + * same values as `object` and keys generated by running each own enumerable + * string keyed property of `object` thru `iteratee`. The iteratee is invoked + * with three arguments: (value, key, object). + * + * @static + * @memberOf _ + * @since 3.8.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapValues + * @example + * + * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) { + * return key + value; + * }); + * // => { 'a1': 1, 'b2': 2 } + */ + function mapKeys(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, iteratee(value, key, object), value); + }); + return result; + } + + /** + * Creates an object with the same keys as `object` and values generated + * by running each own enumerable string keyed property of `object` thru + * `iteratee`. The iteratee is invoked with three arguments: + * (value, key, object). + * + * @static + * @memberOf _ + * @since 2.4.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @returns {Object} Returns the new mapped object. + * @see _.mapKeys + * @example + * + * var users = { + * 'fred': { 'user': 'fred', 'age': 40 }, + * 'pebbles': { 'user': 'pebbles', 'age': 1 } + * }; + * + * _.mapValues(users, function(o) { return o.age; }); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + * + * // The `_.property` iteratee shorthand. + * _.mapValues(users, 'age'); + * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed) + */ + function mapValues(object, iteratee) { + var result = {}; + iteratee = getIteratee(iteratee, 3); + + baseForOwn(object, function(value, key, object) { + baseAssignValue(result, key, iteratee(value, key, object)); + }); + return result; + } + + /** + * This method is like `_.assign` except that it recursively merges own and + * inherited enumerable string keyed properties of source objects into the + * destination object. Source properties that resolve to `undefined` are + * skipped if a destination value exists. Array and plain object properties + * are merged recursively. Other objects and value types are overridden by + * assignment. Source objects are applied from left to right. Subsequent + * sources overwrite property assignments of previous sources. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 0.5.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} [sources] The source objects. + * @returns {Object} Returns `object`. + * @example + * + * var object = { + * 'a': [{ 'b': 2 }, { 'd': 4 }] + * }; + * + * var other = { + * 'a': [{ 'c': 3 }, { 'e': 5 }] + * }; + * + * _.merge(object, other); + * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] } + */ + var merge = createAssigner(function(object, source, srcIndex) { + baseMerge(object, source, srcIndex); + }); + + /** + * This method is like `_.merge` except that it accepts `customizer` which + * is invoked to produce the merged values of the destination and source + * properties. If `customizer` returns `undefined`, merging is handled by the + * method instead. The `customizer` is invoked with six arguments: + * (objValue, srcValue, key, object, source, stack). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The destination object. + * @param {...Object} sources The source objects. + * @param {Function} customizer The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * function customizer(objValue, srcValue) { + * if (_.isArray(objValue)) { + * return objValue.concat(srcValue); + * } + * } + * + * var object = { 'a': [1], 'b': [2] }; + * var other = { 'a': [3], 'b': [4] }; + * + * _.mergeWith(object, other, customizer); + * // => { 'a': [1, 3], 'b': [2, 4] } + */ + var mergeWith = createAssigner(function(object, source, srcIndex, customizer) { + baseMerge(object, source, srcIndex, customizer); + }); + + /** + * The opposite of `_.pick`; this method creates an object composed of the + * own and inherited enumerable property paths of `object` that are not omitted. + * + * **Note:** This method is considerably slower than `_.pick`. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to omit. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omit(object, ['a', 'c']); + * // => { 'b': '2' } + */ + var omit = flatRest(function(object, paths) { + var result = {}; + if (object == null) { + return result; + } + var isDeep = false; + paths = arrayMap(paths, function(path) { + path = castPath(path, object); + isDeep || (isDeep = path.length > 1); + return path; + }); + copyObject(object, getAllKeysIn(object), result); + if (isDeep) { + result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone); + } + var length = paths.length; + while (length--) { + baseUnset(result, paths[length]); + } + return result; + }); + + /** + * The opposite of `_.pickBy`; this method creates an object composed of + * the own and inherited enumerable string keyed properties of `object` that + * `predicate` doesn't return truthy for. The predicate is invoked with two + * arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.omitBy(object, _.isNumber); + * // => { 'b': '2' } + */ + function omitBy(object, predicate) { + return pickBy(object, negate(getIteratee(predicate))); + } + + /** + * Creates an object composed of the picked `object` properties. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The source object. + * @param {...(string|string[])} [paths] The property paths to pick. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pick(object, ['a', 'c']); + * // => { 'a': 1, 'c': 3 } + */ + var pick = flatRest(function(object, paths) { + return object == null ? {} : basePick(object, paths); + }); + + /** + * Creates an object composed of the `object` properties `predicate` returns + * truthy for. The predicate is invoked with two arguments: (value, key). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The source object. + * @param {Function} [predicate=_.identity] The function invoked per property. + * @returns {Object} Returns the new object. + * @example + * + * var object = { 'a': 1, 'b': '2', 'c': 3 }; + * + * _.pickBy(object, _.isNumber); + * // => { 'a': 1, 'c': 3 } + */ + function pickBy(object, predicate) { + if (object == null) { + return {}; + } + var props = arrayMap(getAllKeysIn(object), function(prop) { + return [prop]; + }); + predicate = getIteratee(predicate); + return basePickBy(object, props, function(value, path) { + return predicate(value, path[0]); + }); + } + + /** + * This method is like `_.get` except that if the resolved value is a + * function it's invoked with the `this` binding of its parent object and + * its result is returned. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @param {Array|string} path The path of the property to resolve. + * @param {*} [defaultValue] The value returned for `undefined` resolved values. + * @returns {*} Returns the resolved value. + * @example + * + * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] }; + * + * _.result(object, 'a[0].b.c1'); + * // => 3 + * + * _.result(object, 'a[0].b.c2'); + * // => 4 + * + * _.result(object, 'a[0].b.c3', 'default'); + * // => 'default' + * + * _.result(object, 'a[0].b.c3', _.constant('default')); + * // => 'default' + */ + function result(object, path, defaultValue) { + path = castPath(path, object); + + var index = -1, + length = path.length; + + // Ensure the loop is entered when path is empty. + if (!length) { + length = 1; + object = undefined; + } + while (++index < length) { + var value = object == null ? undefined : object[toKey(path[index])]; + if (value === undefined) { + index = length; + value = defaultValue; + } + object = isFunction(value) ? value.call(object) : value; + } + return object; + } + + /** + * Sets the value at `path` of `object`. If a portion of `path` doesn't exist, + * it's created. Arrays are created for missing index properties while objects + * are created for all other missing properties. Use `_.setWith` to customize + * `path` creation. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 3.7.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.set(object, 'a[0].b.c', 4); + * console.log(object.a[0].b.c); + * // => 4 + * + * _.set(object, ['x', '0', 'y', 'z'], 5); + * console.log(object.x[0].y.z); + * // => 5 + */ + function set(object, path, value) { + return object == null ? object : baseSet(object, path, value); + } + + /** + * This method is like `_.set` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {*} value The value to set. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.setWith(object, '[0][1]', 'a', Object); + * // => { '0': { '1': 'a' } } + */ + function setWith(object, path, value, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseSet(object, path, value, customizer); + } + + /** + * Creates an array of own enumerable string keyed-value pairs for `object` + * which can be consumed by `_.fromPairs`. If `object` is a map or set, its + * entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entries + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairs(new Foo); + * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed) + */ + var toPairs = createToPairs(keys); + + /** + * Creates an array of own and inherited enumerable string keyed-value pairs + * for `object` which can be consumed by `_.fromPairs`. If `object` is a map + * or set, its entries are returned. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @alias entriesIn + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the key-value pairs. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.toPairsIn(new Foo); + * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed) + */ + var toPairsIn = createToPairs(keysIn); + + /** + * An alternative to `_.reduce`; this method transforms `object` to a new + * `accumulator` object which is the result of running each of its own + * enumerable string keyed properties thru `iteratee`, with each invocation + * potentially mutating the `accumulator` object. If `accumulator` is not + * provided, a new object with the same `[[Prototype]]` will be used. The + * iteratee is invoked with four arguments: (accumulator, value, key, object). + * Iteratee functions may exit iteration early by explicitly returning `false`. + * + * @static + * @memberOf _ + * @since 1.3.0 + * @category Object + * @param {Object} object The object to iterate over. + * @param {Function} [iteratee=_.identity] The function invoked per iteration. + * @param {*} [accumulator] The custom accumulator value. + * @returns {*} Returns the accumulated value. + * @example + * + * _.transform([2, 3, 4], function(result, n) { + * result.push(n *= n); + * return n % 2 == 0; + * }, []); + * // => [4, 9] + * + * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) { + * (result[value] || (result[value] = [])).push(key); + * }, {}); + * // => { '1': ['a', 'c'], '2': ['b'] } + */ + function transform(object, iteratee, accumulator) { + var isArr = isArray(object), + isArrLike = isArr || isBuffer(object) || isTypedArray(object); + + iteratee = getIteratee(iteratee, 4); + if (accumulator == null) { + var Ctor = object && object.constructor; + if (isArrLike) { + accumulator = isArr ? new Ctor : []; + } + else if (isObject(object)) { + accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {}; + } + else { + accumulator = {}; + } + } + (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) { + return iteratee(accumulator, value, index, object); + }); + return accumulator; + } + + /** + * Removes the property at `path` of `object`. + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to unset. + * @returns {boolean} Returns `true` if the property is deleted, else `false`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 7 } }] }; + * _.unset(object, 'a[0].b.c'); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + * + * _.unset(object, ['a', '0', 'b', 'c']); + * // => true + * + * console.log(object); + * // => { 'a': [{ 'b': {} }] }; + */ + function unset(object, path) { + return object == null ? true : baseUnset(object, path); + } + + /** + * This method is like `_.set` except that accepts `updater` to produce the + * value to set. Use `_.updateWith` to customize `path` creation. The `updater` + * is invoked with one argument: (value). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @returns {Object} Returns `object`. + * @example + * + * var object = { 'a': [{ 'b': { 'c': 3 } }] }; + * + * _.update(object, 'a[0].b.c', function(n) { return n * n; }); + * console.log(object.a[0].b.c); + * // => 9 + * + * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; }); + * console.log(object.x[0].y.z); + * // => 0 + */ + function update(object, path, updater) { + return object == null ? object : baseUpdate(object, path, castFunction(updater)); + } + + /** + * This method is like `_.update` except that it accepts `customizer` which is + * invoked to produce the objects of `path`. If `customizer` returns `undefined` + * path creation is handled by the method instead. The `customizer` is invoked + * with three arguments: (nsValue, key, nsObject). + * + * **Note:** This method mutates `object`. + * + * @static + * @memberOf _ + * @since 4.6.0 + * @category Object + * @param {Object} object The object to modify. + * @param {Array|string} path The path of the property to set. + * @param {Function} updater The function to produce the updated value. + * @param {Function} [customizer] The function to customize assigned values. + * @returns {Object} Returns `object`. + * @example + * + * var object = {}; + * + * _.updateWith(object, '[0][1]', _.constant('a'), Object); + * // => { '0': { '1': 'a' } } + */ + function updateWith(object, path, updater, customizer) { + customizer = typeof customizer == 'function' ? customizer : undefined; + return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer); + } + + /** + * Creates an array of the own enumerable string keyed property values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.values(new Foo); + * // => [1, 2] (iteration order is not guaranteed) + * + * _.values('hi'); + * // => ['h', 'i'] + */ + function values(object) { + return object == null ? [] : baseValues(object, keys(object)); + } + + /** + * Creates an array of the own and inherited enumerable string keyed property + * values of `object`. + * + * **Note:** Non-object values are coerced to objects. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category Object + * @param {Object} object The object to query. + * @returns {Array} Returns the array of property values. + * @example + * + * function Foo() { + * this.a = 1; + * this.b = 2; + * } + * + * Foo.prototype.c = 3; + * + * _.valuesIn(new Foo); + * // => [1, 2, 3] (iteration order is not guaranteed) + */ + function valuesIn(object) { + return object == null ? [] : baseValues(object, keysIn(object)); + } + + /*------------------------------------------------------------------------*/ + + /** + * Clamps `number` within the inclusive `lower` and `upper` bounds. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category Number + * @param {number} number The number to clamp. + * @param {number} [lower] The lower bound. + * @param {number} upper The upper bound. + * @returns {number} Returns the clamped number. + * @example + * + * _.clamp(-10, -5, 5); + * // => -5 + * + * _.clamp(10, -5, 5); + * // => 5 + */ + function clamp(number, lower, upper) { + if (upper === undefined) { + upper = lower; + lower = undefined; + } + if (upper !== undefined) { + upper = toNumber(upper); + upper = upper === upper ? upper : 0; + } + if (lower !== undefined) { + lower = toNumber(lower); + lower = lower === lower ? lower : 0; + } + return baseClamp(toNumber(number), lower, upper); + } + + /** + * Checks if `n` is between `start` and up to, but not including, `end`. If + * `end` is not specified, it's set to `start` with `start` then set to `0`. + * If `start` is greater than `end` the params are swapped to support + * negative ranges. + * + * @static + * @memberOf _ + * @since 3.3.0 + * @category Number + * @param {number} number The number to check. + * @param {number} [start=0] The start of the range. + * @param {number} end The end of the range. + * @returns {boolean} Returns `true` if `number` is in the range, else `false`. + * @see _.range, _.rangeRight + * @example + * + * _.inRange(3, 2, 4); + * // => true + * + * _.inRange(4, 8); + * // => true + * + * _.inRange(4, 2); + * // => false + * + * _.inRange(2, 2); + * // => false + * + * _.inRange(1.2, 2); + * // => true + * + * _.inRange(5.2, 4); + * // => false + * + * _.inRange(-3, -2, -6); + * // => true + */ + function inRange(number, start, end) { + start = toFinite(start); + if (end === undefined) { + end = start; + start = 0; + } else { + end = toFinite(end); + } + number = toNumber(number); + return baseInRange(number, start, end); + } + + /** + * Produces a random number between the inclusive `lower` and `upper` bounds. + * If only one argument is provided a number between `0` and the given number + * is returned. If `floating` is `true`, or either `lower` or `upper` are + * floats, a floating-point number is returned instead of an integer. + * + * **Note:** JavaScript follows the IEEE-754 standard for resolving + * floating-point values which can produce unexpected results. + * + * @static + * @memberOf _ + * @since 0.7.0 + * @category Number + * @param {number} [lower=0] The lower bound. + * @param {number} [upper=1] The upper bound. + * @param {boolean} [floating] Specify returning a floating-point number. + * @returns {number} Returns the random number. + * @example + * + * _.random(0, 5); + * // => an integer between 0 and 5 + * + * _.random(5); + * // => also an integer between 0 and 5 + * + * _.random(5, true); + * // => a floating-point number between 0 and 5 + * + * _.random(1.2, 5.2); + * // => a floating-point number between 1.2 and 5.2 + */ + function random(lower, upper, floating) { + if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) { + upper = floating = undefined; + } + if (floating === undefined) { + if (typeof upper == 'boolean') { + floating = upper; + upper = undefined; + } + else if (typeof lower == 'boolean') { + floating = lower; + lower = undefined; + } + } + if (lower === undefined && upper === undefined) { + lower = 0; + upper = 1; + } + else { + lower = toFinite(lower); + if (upper === undefined) { + upper = lower; + lower = 0; + } else { + upper = toFinite(upper); + } + } + if (lower > upper) { + var temp = lower; + lower = upper; + upper = temp; + } + if (floating || lower % 1 || upper % 1) { + var rand = nativeRandom(); + return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper); + } + return baseRandom(lower, upper); + } + + /*------------------------------------------------------------------------*/ + + /** + * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the camel cased string. + * @example + * + * _.camelCase('Foo Bar'); + * // => 'fooBar' + * + * _.camelCase('--foo-bar--'); + * // => 'fooBar' + * + * _.camelCase('__FOO_BAR__'); + * // => 'fooBar' + */ + var camelCase = createCompounder(function(result, word, index) { + word = word.toLowerCase(); + return result + (index ? capitalize(word) : word); + }); + + /** + * Converts the first character of `string` to upper case and the remaining + * to lower case. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to capitalize. + * @returns {string} Returns the capitalized string. + * @example + * + * _.capitalize('FRED'); + * // => 'Fred' + */ + function capitalize(string) { + return upperFirst(toString(string).toLowerCase()); + } + + /** + * Deburrs `string` by converting + * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table) + * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A) + * letters to basic Latin letters and removing + * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to deburr. + * @returns {string} Returns the deburred string. + * @example + * + * _.deburr('déjà vu'); + * // => 'deja vu' + */ + function deburr(string) { + string = toString(string); + return string && string.replace(reLatin, deburrLetter).replace(reComboMark, ''); + } + + /** + * Checks if `string` ends with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=string.length] The position to search up to. + * @returns {boolean} Returns `true` if `string` ends with `target`, + * else `false`. + * @example + * + * _.endsWith('abc', 'c'); + * // => true + * + * _.endsWith('abc', 'b'); + * // => false + * + * _.endsWith('abc', 'b', 2); + * // => true + */ + function endsWith(string, target, position) { + string = toString(string); + target = baseToString(target); + + var length = string.length; + position = position === undefined + ? length + : baseClamp(toInteger(position), 0, length); + + var end = position; + position -= target.length; + return position >= 0 && string.slice(position, end) == target; + } + + /** + * Converts the characters "&", "<", ">", '"', and "'" in `string` to their + * corresponding HTML entities. + * + * **Note:** No other characters are escaped. To escape additional + * characters use a third-party library like [_he_](https://mths.be/he). + * + * Though the ">" character is escaped for symmetry, characters like + * ">" and "/" don't need escaping in HTML and have no special meaning + * unless they're part of a tag or unquoted attribute value. See + * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands) + * (under "semi-related fun fact") for more details. + * + * When working with HTML you should always + * [quote attribute values](http://wonko.com/post/html-escaping) to reduce + * XSS vectors. + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escape('fred, barney, & pebbles'); + * // => 'fred, barney, & pebbles' + */ + function escape(string) { + string = toString(string); + return (string && reHasUnescapedHtml.test(string)) + ? string.replace(reUnescapedHtml, escapeHtmlChar) + : string; + } + + /** + * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+", + * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to escape. + * @returns {string} Returns the escaped string. + * @example + * + * _.escapeRegExp('[lodash](https://lodash.com/)'); + * // => '\[lodash\]\(https://lodash\.com/\)' + */ + function escapeRegExp(string) { + string = toString(string); + return (string && reHasRegExpChar.test(string)) + ? string.replace(reRegExpChar, '\\$&') + : string; + } + + /** + * Converts `string` to + * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the kebab cased string. + * @example + * + * _.kebabCase('Foo Bar'); + * // => 'foo-bar' + * + * _.kebabCase('fooBar'); + * // => 'foo-bar' + * + * _.kebabCase('__FOO_BAR__'); + * // => 'foo-bar' + */ + var kebabCase = createCompounder(function(result, word, index) { + return result + (index ? '-' : '') + word.toLowerCase(); + }); + + /** + * Converts `string`, as space separated words, to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the lower cased string. + * @example + * + * _.lowerCase('--Foo-Bar--'); + * // => 'foo bar' + * + * _.lowerCase('fooBar'); + * // => 'foo bar' + * + * _.lowerCase('__FOO_BAR__'); + * // => 'foo bar' + */ + var lowerCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + word.toLowerCase(); + }); + + /** + * Converts the first character of `string` to lower case. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the converted string. + * @example + * + * _.lowerFirst('Fred'); + * // => 'fred' + * + * _.lowerFirst('FRED'); + * // => 'fRED' + */ + var lowerFirst = createCaseFirst('toLowerCase'); + + /** + * Pads `string` on the left and right sides if it's shorter than `length`. + * Padding characters are truncated if they can't be evenly divided by `length`. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.pad('abc', 8); + * // => ' abc ' + * + * _.pad('abc', 8, '_-'); + * // => '_-abc_-_' + * + * _.pad('abc', 3); + * // => 'abc' + */ + function pad(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + if (!length || strLength >= length) { + return string; + } + var mid = (length - strLength) / 2; + return ( + createPadding(nativeFloor(mid), chars) + + string + + createPadding(nativeCeil(mid), chars) + ); + } + + /** + * Pads `string` on the right side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padEnd('abc', 6); + * // => 'abc ' + * + * _.padEnd('abc', 6, '_-'); + * // => 'abc_-_' + * + * _.padEnd('abc', 3); + * // => 'abc' + */ + function padEnd(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (string + createPadding(length - strLength, chars)) + : string; + } + + /** + * Pads `string` on the left side if it's shorter than `length`. Padding + * characters are truncated if they exceed `length`. + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to pad. + * @param {number} [length=0] The padding length. + * @param {string} [chars=' '] The string used as padding. + * @returns {string} Returns the padded string. + * @example + * + * _.padStart('abc', 6); + * // => ' abc' + * + * _.padStart('abc', 6, '_-'); + * // => '_-_abc' + * + * _.padStart('abc', 3); + * // => 'abc' + */ + function padStart(string, length, chars) { + string = toString(string); + length = toInteger(length); + + var strLength = length ? stringSize(string) : 0; + return (length && strLength < length) + ? (createPadding(length - strLength, chars) + string) + : string; + } + + /** + * Converts `string` to an integer of the specified radix. If `radix` is + * `undefined` or `0`, a `radix` of `10` is used unless `value` is a + * hexadecimal, in which case a `radix` of `16` is used. + * + * **Note:** This method aligns with the + * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`. + * + * @static + * @memberOf _ + * @since 1.1.0 + * @category String + * @param {string} string The string to convert. + * @param {number} [radix=10] The radix to interpret `value` by. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {number} Returns the converted integer. + * @example + * + * _.parseInt('08'); + * // => 8 + * + * _.map(['6', '08', '10'], _.parseInt); + * // => [6, 8, 10] + */ + function parseInt(string, radix, guard) { + if (guard || radix == null) { + radix = 0; + } else if (radix) { + radix = +radix; + } + return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0); + } + + /** + * Repeats the given string `n` times. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to repeat. + * @param {number} [n=1] The number of times to repeat the string. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {string} Returns the repeated string. + * @example + * + * _.repeat('*', 3); + * // => '***' + * + * _.repeat('abc', 2); + * // => 'abcabc' + * + * _.repeat('abc', 0); + * // => '' + */ + function repeat(string, n, guard) { + if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) { + n = 1; + } else { + n = toInteger(n); + } + return baseRepeat(toString(string), n); + } + + /** + * Replaces matches for `pattern` in `string` with `replacement`. + * + * **Note:** This method is based on + * [`String#replace`](https://mdn.io/String/replace). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to modify. + * @param {RegExp|string} pattern The pattern to replace. + * @param {Function|string} replacement The match replacement. + * @returns {string} Returns the modified string. + * @example + * + * _.replace('Hi Fred', 'Fred', 'Barney'); + * // => 'Hi Barney' + */ + function replace() { + var args = arguments, + string = toString(args[0]); + + return args.length < 3 ? string : string.replace(args[1], args[2]); + } + + /** + * Converts `string` to + * [snake case](https://en.wikipedia.org/wiki/Snake_case). + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the snake cased string. + * @example + * + * _.snakeCase('Foo Bar'); + * // => 'foo_bar' + * + * _.snakeCase('fooBar'); + * // => 'foo_bar' + * + * _.snakeCase('--FOO-BAR--'); + * // => 'foo_bar' + */ + var snakeCase = createCompounder(function(result, word, index) { + return result + (index ? '_' : '') + word.toLowerCase(); + }); + + /** + * Splits `string` by `separator`. + * + * **Note:** This method is based on + * [`String#split`](https://mdn.io/String/split). + * + * @static + * @memberOf _ + * @since 4.0.0 + * @category String + * @param {string} [string=''] The string to split. + * @param {RegExp|string} separator The separator pattern to split by. + * @param {number} [limit] The length to truncate results to. + * @returns {Array} Returns the string segments. + * @example + * + * _.split('a-b-c', '-', 2); + * // => ['a', 'b'] + */ + function split(string, separator, limit) { + if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) { + separator = limit = undefined; + } + limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0; + if (!limit) { + return []; + } + string = toString(string); + if (string && ( + typeof separator == 'string' || + (separator != null && !isRegExp(separator)) + )) { + separator = baseToString(separator); + if (!separator && hasUnicode(string)) { + return castSlice(stringToArray(string), 0, limit); + } + } + return string.split(separator, limit); + } + + /** + * Converts `string` to + * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage). + * + * @static + * @memberOf _ + * @since 3.1.0 + * @category String + * @param {string} [string=''] The string to convert. + * @returns {string} Returns the start cased string. + * @example + * + * _.startCase('--foo-bar--'); + * // => 'Foo Bar' + * + * _.startCase('fooBar'); + * // => 'Foo Bar' + * + * _.startCase('__FOO_BAR__'); + * // => 'FOO BAR' + */ + var startCase = createCompounder(function(result, word, index) { + return result + (index ? ' ' : '') + upperFirst(word); + }); + + /** + * Checks if `string` starts with the given target string. + * + * @static + * @memberOf _ + * @since 3.0.0 + * @category String + * @param {string} [string=''] The string to inspect. + * @param {string} [target] The string to search for. + * @param {number} [position=0] The position to search from. + * @returns {boolean} Returns `true` if `string` starts with `target`, + * else `false`. + * @example + * + * _.startsWith('abc', 'a'); + * // => true + * + * _.startsWith('abc', 'b'); + * // => false + * + * _.startsWith('abc', 'b', 1); + * // => true + */ + function startsWith(string, target, position) { + string = toString(string); + position = position == null + ? 0 + : baseClamp(toInteger(position), 0, string.length); + + target = baseToString(target); + return string.slice(position, position + target.length) == target; + } + + /** + * Creates a compiled template function that can interpolate data properties + * in "interpolate" delimiters, HTML-escape interpolated data properties in + * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data + * properties may be accessed as free variables in the template. If a setting + * object is given, it takes precedence over `_.templateSettings` values. + * + * **Note:** In the development build `_.template` utilizes + * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl) + * for easier debugging. + * + * For more information on precompiling templates see + * [lodash's custom builds documentation](https://lodash.com/custom-builds). + * + * For more information on Chrome extension sandboxes see + * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval). + * + * @static + * @since 0.1.0 + * @memberOf _ + * @category String + * @param {string} [string=''] The template string. + * @param {Object} [options={}] The options object. + * @param {RegExp} [options.escape=_.templateSettings.escape] + * The HTML "escape" delimiter. + * @param {RegExp} [options.evaluate=_.templateSettings.evaluate] + * The "evaluate" delimiter. + * @param {Object} [options.imports=_.templateSettings.imports] + * An object to import into the template as free variables. + * @param {RegExp} [options.interpolate=_.templateSettings.interpolate] + * The "interpolate" delimiter. + * @param {string} [options.sourceURL='lodash.templateSources[n]'] + * The sourceURL of the compiled template. + * @param {string} [options.variable='obj'] + * The data object variable name. + * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. + * @returns {Function} Returns the compiled template function. + * @example + * + * // Use the "interpolate" delimiter to create a compiled template. + * var compiled = _.template('hello <%= user %>!'); + * compiled({ 'user': 'fred' }); + * // => 'hello fred!' + * + * // Use the HTML "escape" delimiter to escape data property values. + * var compiled = _.template('<%- value %>'); + * compiled({ 'value': '