condenser 0.2 → 0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +49 -21
- data/lib/condenser.rb +9 -3
- data/lib/condenser/build_cache.rb +3 -1
- data/lib/condenser/environment.rb +6 -0
- data/lib/condenser/minifiers/uglify_minifier.rb +0 -2
- data/lib/condenser/processors/babel_processor.rb +12 -8
- data/lib/condenser/processors/node_modules/@babel/code-frame/lib/index.js +7 -13
- data/lib/condenser/processors/node_modules/@babel/code-frame/package.json +12 -12
- data/lib/condenser/processors/node_modules/@babel/{helper-call-delegate → compat-data}/LICENSE +0 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/corejs2-built-ins.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/corejs3-shipped-proposals.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/{preset-env → compat-data}/data/corejs2-built-ins.json +93 -63
- data/lib/condenser/processors/node_modules/@babel/compat-data/data/corejs3-shipped-proposals.json +5 -0
- data/lib/condenser/processors/node_modules/@babel/{preset-env/data/built-in-modules.json → compat-data/data/native-modules.json} +5 -2
- data/lib/condenser/processors/node_modules/@babel/compat-data/data/overlapping-plugins.json +18 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/data/plugin-bugfixes.json +125 -0
- data/lib/condenser/processors/node_modules/@babel/{preset-env → compat-data}/data/plugins.json +137 -103
- data/lib/condenser/processors/node_modules/@babel/compat-data/native-modules.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/overlapping-plugins.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/package.json +72 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/plugin-bugfixes.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/compat-data/plugins.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/caching.js +190 -64
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/config-chain.js +26 -26
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/config-descriptors.js +4 -4
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/configuration.js +41 -41
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/import.js +10 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/index-browser.js +5 -5
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/module-types.js +96 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/package.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/files/utils.js +16 -8
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/full.js +69 -33
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/index.js +36 -10
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/partial.js +21 -10
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/util.js +5 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/validation/options.js +11 -3
- data/lib/condenser/processors/node_modules/@babel/core/lib/config/validation/plugins.js +5 -1
- data/lib/condenser/processors/node_modules/@babel/core/lib/gensync-utils/async.js +89 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/gensync-utils/fs.js +48 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/gensync-utils/resolve.js +35 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/index.js +24 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/parse.js +27 -42
- data/lib/condenser/processors/node_modules/@babel/core/lib/parser/index.js +97 -0
- data/lib/condenser/processors/node_modules/@babel/core/lib/{transformation → parser}/util/missing-plugin-helper.js +16 -10
- data/lib/condenser/processors/node_modules/@babel/core/lib/tools/build-external-helpers.js +4 -1
- data/lib/condenser/processors/node_modules/@babel/core/lib/transform-ast.js +27 -33
- data/lib/condenser/processors/node_modules/@babel/core/lib/transform-file.js +20 -57
- data/lib/condenser/processors/node_modules/@babel/core/lib/transform.js +23 -31
- data/lib/condenser/processors/node_modules/@babel/core/lib/transformation/block-hoist-plugin.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/core/lib/transformation/file/file.js +12 -31
- data/lib/condenser/processors/node_modules/@babel/core/lib/transformation/index.js +7 -18
- data/lib/condenser/processors/node_modules/@babel/core/lib/transformation/normalize-file.js +3 -88
- data/lib/condenser/processors/node_modules/@babel/core/package.json +17 -15
- data/lib/condenser/processors/node_modules/@babel/generator/lib/generators/flow.js +5 -0
- data/lib/condenser/processors/node_modules/@babel/generator/lib/generators/modules.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/generator/lib/generators/types.js +68 -1
- data/lib/condenser/processors/node_modules/@babel/generator/lib/index.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/generator/lib/node/index.js +1 -6
- data/lib/condenser/processors/node_modules/@babel/generator/lib/node/parentheses.js +50 -23
- data/lib/condenser/processors/node_modules/@babel/generator/lib/node/whitespace.js +11 -2
- data/lib/condenser/processors/node_modules/@babel/generator/lib/printer.js +31 -12
- data/lib/condenser/processors/node_modules/@babel/generator/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/helper-annotate-as-pure/package.json +13 -12
- data/lib/condenser/processors/node_modules/@babel/helper-builder-binary-assignment-operator-visitor/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/debug.js +35 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/filter-items.js +90 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/index.js +237 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/options.js +23 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/pretty.js +49 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/targets.js +27 -0
- data/lib/condenser/processors/node_modules/@babel/{parser → helper-compilation-targets}/lib/types.js +0 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/lib/utils.js +65 -0
- data/lib/condenser/processors/node_modules/@babel/helper-compilation-targets/package.json +66 -0
- data/lib/condenser/processors/node_modules/@babel/helper-create-class-features-plugin/lib/decorators.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/helper-create-class-features-plugin/lib/misc.js +23 -14
- data/lib/condenser/processors/node_modules/@babel/helper-create-class-features-plugin/package.json +19 -19
- data/lib/condenser/processors/node_modules/@babel/helper-create-regexp-features-plugin/lib/index.js +6 -1
- data/lib/condenser/processors/node_modules/@babel/helper-create-regexp-features-plugin/package.json +16 -15
- data/lib/condenser/processors/node_modules/@babel/helper-define-map/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-explode-assignable-expression/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-function-name/lib/index.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/helper-function-name/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/helper-get-function-arity/package.json +12 -12
- data/lib/condenser/processors/node_modules/@babel/helper-hoist-variables/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/helper-member-expression-to-functions/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-module-imports/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/helper-module-transforms/lib/get-module-name.js +42 -0
- data/lib/condenser/processors/node_modules/@babel/helper-module-transforms/lib/index.js +16 -2
- data/lib/condenser/processors/node_modules/@babel/helper-module-transforms/lib/rewrite-live-references.js +46 -2
- data/lib/condenser/processors/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js +4 -2
- data/lib/condenser/processors/node_modules/@babel/helper-module-transforms/package.json +20 -17
- data/lib/condenser/processors/node_modules/@babel/helper-optimise-call-expression/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-plugin-utils/LICENSE +1 -1
- data/lib/condenser/processors/node_modules/@babel/helper-plugin-utils/lib/index.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/helper-plugin-utils/package.json +22 -11
- data/lib/condenser/processors/node_modules/@babel/helper-regex/lib/index.js +2 -10
- data/lib/condenser/processors/node_modules/@babel/helper-regex/package.json +11 -11
- data/lib/condenser/processors/node_modules/@babel/helper-remap-async-to-generator/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/helper-replace-supers/lib/index.js +1 -0
- data/lib/condenser/processors/node_modules/@babel/helper-replace-supers/package.json +17 -16
- data/lib/condenser/processors/node_modules/@babel/helper-simple-access/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-split-export-declaration/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/{parser/lib/util → helper-validator-identifier/lib}/identifier.js +26 -48
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/lib/index.js +57 -0
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/lib/keyword.js +38 -0
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/package.json +47 -0
- data/lib/condenser/processors/node_modules/@babel/helper-validator-identifier/scripts/generate-identifier-regex.js +75 -0
- data/lib/condenser/processors/node_modules/@babel/helper-wrap-function/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/helpers/lib/helpers.js +166 -26
- data/lib/condenser/processors/node_modules/@babel/helpers/lib/index.js +28 -9
- data/lib/condenser/processors/node_modules/@babel/helpers/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/highlight/lib/index.js +12 -34
- data/lib/condenser/processors/node_modules/@babel/highlight/package.json +12 -12
- data/lib/condenser/processors/node_modules/@babel/parser/bin/babel-parser.js +5 -6
- data/lib/condenser/processors/node_modules/@babel/parser/lib/index.js +6137 -5631
- data/lib/condenser/processors/node_modules/@babel/parser/lib/index.js.map +1 -1
- data/lib/condenser/processors/node_modules/@babel/parser/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-async-generator-functions/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-class-properties/package.json +10 -10
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-dynamic-import/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-json-strings/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/lib/index.js +51 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/package.json +55 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-numeric-separator/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-numeric-separator/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-numeric-separator/lib/index.js +36 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-numeric-separator/package.json +55 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-object-rest-spread/lib/index.js +67 -8
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-object-rest-spread/package.json +16 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-optional-catch-binding/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-optional-chaining/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-optional-chaining/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-optional-chaining/lib/index.js +120 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-optional-chaining/package.json +56 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-proposal-unicode-property-regex/package.json +17 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-async-generators/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-dynamic-import/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-json-strings/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/lib/index.js +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/package.json +53 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-numeric-separator/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-numeric-separator/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-numeric-separator/lib/index.js +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-numeric-separator/package.json +54 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-object-rest-spread/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-optional-catch-binding/package.json +12 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-optional-chaining/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-optional-chaining/README.md +19 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-optional-chaining/lib/index.js +22 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-optional-chaining/package.json +53 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-syntax-top-level-await/package.json +13 -13
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-arrow-functions/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-async-to-generator/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-block-scoped-functions/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-block-scoping/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js +72 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-classes/lib/transformClass.js +22 -5
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-classes/package.json +20 -20
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-computed-properties/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-destructuring/lib/index.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-destructuring/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-dotall-regex/package.json +17 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-duplicate-keys/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-exponentiation-operator/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-for-of/lib/index.js +79 -167
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-for-of/lib/no-helper-implementation.js +174 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-for-of/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-function-name/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-literals/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-member-expression-literals/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-amd/lib/index.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-amd/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-commonjs/lib/index.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-commonjs/package.json +17 -17
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-systemjs/lib/index.js +9 -2
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-systemjs/package.json +17 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-umd/lib/index.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-modules-umd/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-named-capturing-groups-regex/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-new-target/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-object-super/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-parameters/lib/index.js +6 -0
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-parameters/lib/params.js +93 -39
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-parameters/lib/rest.js +16 -3
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-parameters/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-property-literals/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-regenerator/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-reserved-words/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-runtime/package.json +16 -16
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-shorthand-properties/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-spread/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-sticky-regex/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-template-literals/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-typeof-symbol/lib/index.js +9 -1
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-typeof-symbol/package.json +18 -14
- data/lib/condenser/processors/node_modules/@babel/plugin-transform-unicode-regex/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/built-in-modules.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/built-in-modules.json.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/built-ins.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/corejs2-built-ins.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/corejs2-built-ins.json.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/plugins.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/plugins.json.js +3 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/shipped-proposals.js +22 -9
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/unreleased-labels.js +3 -3
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/available-plugins.js +47 -11
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/debug.js +2 -23
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/filter-items.js +3 -68
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/index.js +37 -16
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/normalize-options.js +11 -12
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/options.js +3 -19
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/plugins-compat-data.js +31 -0
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs2/entry-plugin.js +4 -4
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs2/usage-plugin.js +4 -4
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs3/built-in-definitions.js +4 -4
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs3/entry-plugin.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs3/usage-plugin.js +4 -4
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/targets-parser.js +18 -206
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/utils.js +0 -101
- data/lib/condenser/processors/node_modules/@babel/preset-env/package.json +69 -65
- data/lib/condenser/processors/node_modules/@babel/preset-modules/README.md +168 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/index.js +27 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-async-arrows-in-class/index.js +45 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-edge-default-parameters/index.js +36 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-edge-function-name/index.js +42 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-jsx-spread/index.js +115 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-safari-block-shadowing/index.js +47 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-safari-for-shadowing/index.js +42 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/lib/plugins/transform-tagged-template-caching/index.js +75 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/package.json +128 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/index.js +30 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-async-arrows-in-class/index.js +35 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-edge-default-parameters/index.js +29 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-edge-function-name/index.js +31 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-jsx-spread/index.js +111 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-safari-block-shadowing/index.js +39 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-safari-for-shadowing/index.js +38 -0
- data/lib/condenser/processors/node_modules/@babel/preset-modules/src/plugins/transform-tagged-template-caching/index.js +88 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/arrayLikeToArray.js +11 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/arrayWithoutHoles.js +3 -7
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/construct.js +1 -12
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/createForOfIteratorHelper.js +66 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/createForOfIteratorHelperLoose.js +35 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/createSuper.js +25 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/arrayLikeToArray.js +9 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/arrayWithoutHoles.js +2 -7
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/construct.js +1 -14
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/createForOfIteratorHelper.js +59 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/createForOfIteratorHelperLoose.js +27 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/createSuper.js +19 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/isNativeReflectConstruct.js +13 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimit.js +2 -4
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/iterableToArrayLimitLoose.js +2 -4
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableRest.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/nonIterableSpread.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/objectSpread.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/slicedToArrayLoose.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/toArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/toConsumableArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/typeof.js +2 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/esm/unsupportedIterableToArray.js +15 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/isNativeReflectConstruct.js +16 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/iterableToArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimit.js +3 -4
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/iterableToArrayLimitLoose.js +3 -4
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/maybeArrayLike.js +14 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/nonIterableRest.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/nonIterableSpread.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/objectSpread.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/slicedToArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/slicedToArrayLoose.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/toArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/toConsumableArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/typeof.js +2 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/helpers/unsupportedIterableToArray.js +20 -0
- data/lib/condenser/processors/node_modules/@babel/runtime-corejs3/package.json +7 -7
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +11 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +3 -7
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/construct.js +1 -12
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +58 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +23 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/createSuper.js +23 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +9 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +2 -7
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/construct.js +1 -14
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +55 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +20 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/createSuper.js +18 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +12 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +1 -4
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js +1 -4
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/objectSpread.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/toArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +2 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/typeof.js +2 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +9 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +14 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/iterableToArray.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +1 -4
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js +1 -4
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/maybeArrayLike.js +12 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/nonIterableRest.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/nonIterableSpread.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/objectSpread.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/slicedToArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/toArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/toConsumableArray.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/typeof.js +2 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +12 -0
- data/lib/condenser/processors/node_modules/@babel/runtime/package.json +16 -15
- data/lib/condenser/processors/node_modules/@babel/template/lib/options.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/template/package.json +14 -14
- data/lib/condenser/processors/node_modules/@babel/traverse/lib/path/comments.js +2 -2
- data/lib/condenser/processors/node_modules/@babel/traverse/lib/path/lib/virtual-types.js +1 -1
- data/lib/condenser/processors/node_modules/@babel/traverse/lib/path/removal.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/traverse/lib/scope/index.js +190 -87
- data/lib/condenser/processors/node_modules/@babel/traverse/lib/visitors.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/traverse/package.json +18 -19
- data/lib/condenser/processors/node_modules/@babel/types/lib/asserts/generated/index.js +20 -5
- data/lib/condenser/processors/node_modules/@babel/types/lib/builders/generated/index.js +20 -5
- data/lib/condenser/processors/node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js +14 -0
- data/lib/condenser/processors/node_modules/@babel/types/lib/clone/cloneNode.js +36 -13
- data/lib/condenser/processors/node_modules/@babel/types/lib/clone/cloneWithoutLoc.js +2 -4
- data/lib/condenser/processors/node_modules/@babel/types/lib/constants/index.js +3 -1
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/core.js +171 -40
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/es2015.js +124 -64
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/experimental.js +29 -3
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/flow.js +4 -1
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/index.js +6 -0
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/jsx.js +1 -2
- data/lib/condenser/processors/node_modules/@babel/types/lib/definitions/utils.js +87 -21
- data/lib/condenser/processors/node_modules/@babel/types/lib/index.d.ts +143 -119
- data/lib/condenser/processors/node_modules/@babel/types/lib/index.js +9 -0
- data/lib/condenser/processors/node_modules/@babel/types/lib/index.js.flow +137 -116
- data/lib/condenser/processors/node_modules/@babel/types/lib/validators/generated/index.js +62 -14
- data/lib/condenser/processors/node_modules/@babel/types/lib/validators/isReferenced.js +7 -3
- data/lib/condenser/processors/node_modules/@babel/types/lib/validators/isScope.js +4 -0
- data/lib/condenser/processors/node_modules/@babel/types/lib/validators/isValidIdentifier.js +11 -9
- data/lib/condenser/processors/node_modules/@babel/types/lib/validators/validate.js +9 -0
- data/lib/condenser/processors/node_modules/@babel/types/package.json +15 -15
- data/lib/condenser/processors/node_modules/@babel/types/scripts/generators/docs.js +5 -1
- data/lib/condenser/processors/node_modules/@babel/types/scripts/generators/flow.js +6 -3
- data/lib/condenser/processors/node_modules/@babel/types/scripts/generators/typescript.js +17 -13
- data/lib/condenser/processors/node_modules/@types/estree/README.md +16 -16
- data/lib/condenser/processors/node_modules/@types/estree/index.d.ts +1 -7
- data/lib/condenser/processors/node_modules/@types/estree/package.json +16 -18
- data/lib/condenser/processors/node_modules/@types/node/LICENSE +21 -21
- data/lib/condenser/processors/node_modules/@types/node/README.md +16 -16
- data/lib/condenser/processors/node_modules/@types/node/assert.d.ts +3 -0
- data/lib/condenser/processors/node_modules/@types/node/async_hooks.d.ts +115 -0
- data/lib/condenser/processors/node_modules/@types/node/child_process.d.ts +2 -2
- data/lib/condenser/processors/node_modules/@types/node/cluster.d.ts +2 -6
- data/lib/condenser/processors/node_modules/@types/node/crypto.d.ts +6 -6
- data/lib/condenser/processors/node_modules/@types/node/dns.d.ts +5 -0
- data/lib/condenser/processors/node_modules/@types/node/events.d.ts +31 -21
- data/lib/condenser/processors/node_modules/@types/node/fs.d.ts +238 -52
- data/lib/condenser/processors/node_modules/@types/node/globals.d.ts +63 -53
- data/lib/condenser/processors/node_modules/@types/node/http.d.ts +36 -18
- data/lib/condenser/processors/node_modules/@types/node/http2.d.ts +1 -0
- data/lib/condenser/processors/node_modules/@types/node/https.d.ts +1 -17
- data/lib/condenser/processors/node_modules/@types/node/index.d.ts +9 -7
- data/lib/condenser/processors/node_modules/@types/node/module.d.ts +41 -3
- data/lib/condenser/processors/node_modules/@types/node/os.d.ts +9 -1
- data/lib/condenser/processors/node_modules/@types/node/package.json +25 -13
- data/lib/condenser/processors/node_modules/@types/node/perf_hooks.d.ts +27 -10
- data/lib/condenser/processors/node_modules/@types/node/querystring.d.ts +2 -3
- data/lib/condenser/processors/node_modules/@types/node/readline.d.ts +14 -0
- data/lib/condenser/processors/node_modules/@types/node/repl.d.ts +6 -1
- data/lib/condenser/processors/node_modules/@types/node/stream.d.ts +35 -11
- data/lib/condenser/processors/node_modules/@types/node/tls.d.ts +67 -1
- data/lib/condenser/processors/node_modules/@types/node/ts3.2/fs.d.ts +5 -5
- data/lib/condenser/processors/node_modules/@types/node/ts3.5/index.d.ts +14 -0
- data/lib/condenser/processors/node_modules/@types/node/ts3.5/wasi.d.ts +52 -0
- data/lib/condenser/processors/node_modules/@types/node/tty.d.ts +1 -1
- data/lib/condenser/processors/node_modules/@types/node/url.d.ts +1 -1
- data/lib/condenser/processors/node_modules/@types/node/util.d.ts +20 -12
- data/lib/condenser/processors/node_modules/@types/node/vm.d.ts +36 -4
- data/lib/condenser/processors/node_modules/@types/node/worker_threads.d.ts +30 -1
- data/lib/condenser/processors/node_modules/browserslist/CHANGELOG.md +28 -0
- data/lib/condenser/processors/node_modules/browserslist/LICENSE +1 -1
- data/lib/condenser/processors/node_modules/browserslist/README.md +7 -5
- data/lib/condenser/processors/node_modules/browserslist/cli.js +21 -11
- data/lib/condenser/processors/node_modules/browserslist/index.js +90 -5
- data/lib/condenser/processors/node_modules/browserslist/node.js +22 -15
- data/lib/condenser/processors/node_modules/browserslist/package.json +16 -17
- data/lib/condenser/processors/node_modules/browserslist/update-db.js +134 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/CHANGELOG.md +24 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/data/agents.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/browserVersions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/aac.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/abortcontroller.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ac3-ec3.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/accelerometer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/addeventlistener.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/alternate-stylesheet.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ambient-light.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/apng.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/array-find-index.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/array-find.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/array-flat.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/array-includes.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/arrow-functions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/asmjs.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/async-clipboard.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/async-functions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/async-iterations-and-generators.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/atob-btoa.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/audio-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/audio.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/audiotracks.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/autofocus.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/auxclick.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/av1.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/avif.js +1 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-attachment.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-clip-text.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-img-opts.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-position-x-y.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-repeat-round-space.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/background-sync.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/battery-status.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/beacon.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/beforeafterprint.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/bigint.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/blobbuilder.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/bloburls.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/border-image.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/border-radius.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/broadcastchannel.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/brotli.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/calc.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/canvas-blending.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/canvas-text.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/canvas.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ch-unit.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/chacha20-poly1305.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/channel-messaging.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/childnode-remove.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/classlist.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/clear-site-data-header.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/clipboard.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/comparedocumentposition.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/console-basic.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/console-time.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/const.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/constraint-validation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/contenteditable.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/contentsecuritypolicy.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/cors.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/createimagebitmap.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/credential-management.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/cryptography.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-all.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-animation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-any-link.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-appearance.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-apply-rule.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-at-counter-style.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-backdrop-filter.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-background-offsets.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-backgroundblendmode.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-boxshadow.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-canvas.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-caret-color.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-case-insensitive.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-clip-path.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-color-adjust.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-conic-gradients.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-containment.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-counters.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-crisp-edges.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-cross-fade.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-default-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-descendant-gtgt.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-deviceadaptation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-dir-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-display-contents.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-element-function.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-env-function.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-exclusions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-featurequeries.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-filter-function.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-filters.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-first-letter.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-first-line.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-fixed.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-focus-visible.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-focus-within.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-font-rendering-controls.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-font-stretch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-gencontent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-gradients.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-grid.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-hanging-punctuation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-has.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-hyphenate.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-hyphens.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-image-orientation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-image-set.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-in-out-of-range.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-initial-letter.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-initial-value.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-letter-spacing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-line-clamp.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-logical-props.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-marker-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-masks.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-matches-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-math-functions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-media-interaction.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-media-resolution.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-media-scripting.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-mediaqueries.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-mixblendmode.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-motion-paths.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-namespaces.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-not-sel-list.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-nth-child-of.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-opacity.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-optional-pseudo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-overflow-anchor.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-overflow.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-overscroll-behavior.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-page-break.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-paged-media.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-paint-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-placeholder-shown.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-placeholder.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-read-only-write.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-rebeccapurple.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-reflections.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-regions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-repeating-gradients.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-resize.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-revert-value.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-rrggbbaa.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-scroll-behavior.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-scrollbar.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-sel2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-sel3.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-selection.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-shapes.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-snappoints.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-sticky.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-subgrid.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-supports-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-table.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-text-align-last.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-text-indent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-text-justify.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-text-orientation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-text-spacing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-textshadow.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-touch-action-2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-touch-action.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-transitions.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-unicode-bidi.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-unset-value.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-variables.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-widows-orphans.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-writing-mode.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css-zoom.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-attr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-boxsizing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-colors.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-cursors-grab.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-cursors-newer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-cursors.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/css3-tabsize.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/currentcolor.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/custom-elements.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/custom-elementsv1.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/customevent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/datalist.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dataset.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/datauri.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/date-tolocaledatestring.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/details.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/deviceorientation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/devicepixelratio.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dialog.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dispatchevent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/do-not-track.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/document-currentscript.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/document-evaluate-xpath.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/document-execcommand.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/document-scrollingelement.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/documenthead.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dom-manip-convenience.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dom-range.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/domcontentloaded.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/domfocusin-domfocusout-events.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dommatrix.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/download.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/dragndrop.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/element-closest.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/element-from-point.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/element-scroll-methods.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/eme.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/eot.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es5.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-class.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-generators.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-module.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-number.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6-string-includes.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/es6.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/eventsource.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/feature-policy.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/fetch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/fieldset-disabled.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/fileapi.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/filereader.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/filereadersync.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/filesystem.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/flac.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/flexbox-gap.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/flexbox.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/flow-root.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/focusin-focusout-events.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/focusoptions-preventscroll.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-family-system-ui.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-feature.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-kerning.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-loading.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-size-adjust.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-smooth.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-unicode-range.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-variant-alternates.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-variant-east-asian.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/font-variant-numeric.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/fontface.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/form-attribute.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/form-submit-attributes.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/form-validation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/forms.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/fullscreen.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/gamepad.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/geolocation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/getboundingclientrect.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/getcomputedstyle.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/getelementsbyclassname.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/getrandomvalues.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/gyroscope.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/hardwareconcurrency.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/hashchange.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/heif.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/hevc.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/hidden.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/high-resolution-time.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/history.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/html-media-capture.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/html5semantic.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/http-live-streaming.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/http2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/http3.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/iframe-sandbox.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/iframe-seamless.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/iframe-srcdoc.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/imagecapture.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ime.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/imports.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/indeterminate-checkbox.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/indexeddb.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/indexeddb2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/inline-block.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/innertext.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-color.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-datetime.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-email-tel-url.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-event.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-file-accept.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-file-directory.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-file-multiple.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-inputmode.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-minlength.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-number.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-pattern.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-placeholder.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-range.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-search.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/input-selection.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/insert-adjacent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/insertadjacenthtml.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/internationalization.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/intersectionobserver-v2.js +1 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/intersectionobserver.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/intl-pluralrules.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/intrinsic-width.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/jpeg2000.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/jpegxr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/json.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/justify-content-space-evenly.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-charcode.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-code.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-key.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-location.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/keyboardevent-which.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/lazyload.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/let.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-icon-png.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-icon-svg.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-modulepreload.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-preconnect.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-prefetch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-preload.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/link-rel-prerender.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/loading-lazy-attr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/localecompare.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/magnetometer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/matchesselector.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/matchmedia.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mathml.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/maxlength.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/media-attribute.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/media-fragments.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/media-session-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mediacapture-fromelement.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mediarecorder.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mediasource.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/menu.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/meta-theme-color.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/meter.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/midi.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/minmaxwh.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mp3.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mpeg-dash.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mpeg4.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/multibackgrounds.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/multicolumn.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mutation-events.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/mutationobserver.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/namevalue-storage.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/native-filesystem-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/nav-timing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/navigator-language.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/netinfo.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/node-contains.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/node-parentelement.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/notifications.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/object-entries.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/object-fit.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/object-observe.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/object-values.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/objectrtc.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/offline-apps.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/offscreencanvas.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ogg-vorbis.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ogv.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ol-reversed.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/once-event-listener.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/online-status.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/opus.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/orientation-sensor.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/outline.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/pad-start-end.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/page-transition-events.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/pagevisibility.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/passive-event-listener.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/passwordrules.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/path2d.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/payment-request.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/permissions-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/picture-in-picture.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/picture.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ping.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/png-alpha.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/pointer-events.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/pointer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/pointerlock.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/prefers-color-scheme.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/prefers-reduced-motion.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/private-class-fields.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/private-methods-and-accessors.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/progress.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/promise-finally.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/promises.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/proximity.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/proxy.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/public-class-fields.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/publickeypinning.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/push-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/queryselector.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/readonly-attr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/referrer-policy.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/registerprotocolhandler.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rel-noopener.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rel-noreferrer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rellist.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rem.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/replace-all.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/requestanimationframe.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/requestidlecallback.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/resizeobserver.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/resource-timing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rest-parameters.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/rtcpeerconnection.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ruby.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/run-in.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/screen-orientation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/script-async.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/script-defer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/scrollintoview.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sdch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/selection-api.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/server-timing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/serviceworkers.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/setimmediate.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sha-2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/shadowdom.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/shadowdomv1.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sharedarraybuffer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sharedworkers.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sni.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/spdy.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/speech-recognition.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/speech-synthesis.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/spellcheck-attribute.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sql-storage.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/srcset.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/stopimmediatepropagation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/stream.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/streams.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/stricttransportsecurity.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/style-scoped.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/subresource-integrity.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-css.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-filters.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-fonts.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-fragment.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-html.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-html5.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-img.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg-smil.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/svg.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/sxg.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/symbols.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/tabindex-attr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/template-literals.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/template.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/testfeat.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-decoration.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-emphasis.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-overflow.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-size-adjust.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-stroke.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/text-underline-offset.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/textcontent.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/textencoder.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/tls1-1.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/tls1-2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/tls1-3.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/token-binding.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/touch.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/transforms2d.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/transforms3d.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/ttf.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/typedarrays.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/u2f.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/unhandledrejection.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js +1 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/url.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/urlsearchparams.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/use-strict.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/user-select-none.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/user-timing.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/variable-fonts.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/vibration.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/video.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/videotracks.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/viewport-units.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/wai-aria.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/wasm.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/wav.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/wbr-element.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/web-animation.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/web-app-manifest.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/web-bluetooth.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/web-share.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webauthn.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webgl.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webgl2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webgpu.js +1 -0
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webhid.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webm.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webp.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/websockets.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webusb.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webvr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webvtt.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webworkers.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/webxr.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/will-change.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/woff.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/woff2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/word-break.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/wordwrap.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/x-doc-messaging.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/x-frame-options.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/xhr2.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/xhtml.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/xhtmlsmil.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/features/xml-serializer.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AX.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/AZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BB.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BJ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/BZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CV.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CX.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/CZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DJ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/DZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/EC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/EE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/EG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ER.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ES.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ET.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FJ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/FR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GB.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GP.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GQ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/GY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/HK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/HN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/HR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/HT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/HU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ID.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IQ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/IT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/JE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/JM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/JO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/JP.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KP.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/KZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LB.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LV.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/LY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ME.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ML.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MP.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MQ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MV.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MX.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/MZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NP.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/NZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/OM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/PY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/QA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/RE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/RO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/RS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/RU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/RW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SB.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ST.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SV.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/SZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TD.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TH.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TJ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TK.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TL.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TO.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TR.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TV.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/TZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/UA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/UG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/US.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/UY.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/UZ.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VC.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VG.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VI.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VN.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/VU.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/WF.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/WS.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/YE.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/YT.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ZA.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ZM.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/ZW.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-af.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-an.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-as.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-eu.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-na.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-oc.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-sa.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/data/regions/alt-ww.js +1 -1
- data/lib/condenser/processors/node_modules/caniuse-lite/package.json +10 -10
- data/lib/condenser/processors/node_modules/core-js-compat/data.json +217 -200
- data/lib/condenser/processors/node_modules/core-js-compat/package.json +12 -12
- data/lib/condenser/processors/node_modules/core-js-pure/internals/array-last-index-of.js +2 -1
- data/lib/condenser/processors/node_modules/core-js-pure/internals/array-method-uses-to-length.js +5 -8
- data/lib/condenser/processors/node_modules/core-js-pure/internals/shared.js +1 -1
- data/lib/condenser/processors/node_modules/core-js-pure/internals/task.js +7 -1
- data/lib/condenser/processors/node_modules/core-js-pure/modules/es.array.reduce-right.js +2 -1
- data/lib/condenser/processors/node_modules/core-js-pure/modules/web.url.js +1 -1
- data/lib/condenser/processors/node_modules/core-js-pure/package.json +5 -5
- data/lib/condenser/processors/node_modules/core-js-pure/postinstall.js +3 -1
- data/lib/condenser/processors/node_modules/electron-to-chromium/chromium-versions.js +3 -1
- data/lib/condenser/processors/node_modules/electron-to-chromium/full-chromium-versions.js +142 -0
- data/lib/condenser/processors/node_modules/electron-to-chromium/full-versions.js +92 -0
- data/lib/condenser/processors/node_modules/electron-to-chromium/package.json +11 -11
- data/lib/condenser/processors/node_modules/electron-to-chromium/versions.js +4 -0
- data/lib/condenser/processors/node_modules/esutils/package.json +2 -3
- data/lib/condenser/processors/node_modules/find-up/index.js +48 -0
- data/lib/condenser/processors/node_modules/{acorn/LICENSE → find-up/license} +3 -1
- data/lib/condenser/processors/node_modules/find-up/package.json +85 -0
- data/lib/condenser/processors/node_modules/find-up/readme.md +85 -0
- data/lib/condenser/processors/node_modules/fsevents/LICENSE +22 -0
- data/lib/condenser/processors/node_modules/fsevents/README.md +77 -0
- data/lib/condenser/processors/node_modules/fsevents/fsevents.d.ts +55 -0
- data/lib/condenser/processors/node_modules/fsevents/fsevents.js +77 -0
- data/lib/condenser/processors/node_modules/fsevents/fsevents.node +0 -0
- data/lib/condenser/processors/node_modules/fsevents/package.json +84 -0
- data/lib/condenser/processors/node_modules/gensync/LICENSE +7 -0
- data/lib/condenser/processors/node_modules/gensync/README.md +196 -0
- data/lib/condenser/processors/node_modules/gensync/index.js +366 -0
- data/lib/condenser/processors/node_modules/gensync/index.js.flow +32 -0
- data/lib/condenser/processors/node_modules/gensync/package.json +60 -0
- data/lib/condenser/processors/node_modules/gensync/test/.babelrc +5 -0
- data/lib/condenser/processors/node_modules/gensync/test/index.test.js +475 -0
- data/lib/condenser/processors/node_modules/invariant/package.json +2 -0
- data/lib/condenser/processors/node_modules/json5/CHANGELOG.md +15 -0
- data/lib/condenser/processors/node_modules/json5/README.md +1 -1
- data/lib/condenser/processors/node_modules/json5/dist/index.js +5 -5
- data/lib/condenser/processors/node_modules/json5/dist/index.min.js +1 -1
- data/lib/condenser/processors/node_modules/json5/dist/index.min.mjs +1 -1
- data/lib/condenser/processors/node_modules/json5/dist/index.mjs +5 -5
- data/lib/condenser/processors/node_modules/json5/lib/util.js +5 -5
- data/lib/condenser/processors/node_modules/json5/package.json +11 -11
- data/lib/condenser/processors/node_modules/leven/index.d.ts +21 -0
- data/lib/condenser/processors/node_modules/leven/index.js +77 -0
- data/lib/condenser/processors/node_modules/leven/license +9 -0
- data/lib/condenser/processors/node_modules/leven/package.json +89 -0
- data/lib/condenser/processors/node_modules/leven/readme.md +50 -0
- data/lib/condenser/processors/node_modules/{js-levenshtein → levenary}/LICENSE +3 -2
- data/lib/condenser/processors/node_modules/levenary/README.md +40 -0
- data/lib/condenser/processors/node_modules/levenary/index.d.ts +15 -0
- data/lib/condenser/processors/node_modules/levenary/index.flow.js +15 -0
- data/lib/condenser/processors/node_modules/levenary/index.js +27 -0
- data/lib/condenser/processors/node_modules/levenary/index.mjs +14 -0
- data/lib/condenser/processors/node_modules/levenary/package.json +98 -0
- data/lib/condenser/processors/node_modules/locate-path/index.js +24 -0
- data/lib/condenser/processors/node_modules/locate-path/license +21 -0
- data/lib/condenser/processors/node_modules/locate-path/package.json +79 -0
- data/lib/condenser/processors/node_modules/locate-path/readme.md +99 -0
- data/lib/condenser/processors/node_modules/magic-string/CHANGELOG.md +8 -0
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.cjs.js +3 -7
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.cjs.js.map +1 -1
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.es.js +3 -7
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.es.js.map +1 -1
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.umd.js +3 -7
- data/lib/condenser/processors/node_modules/magic-string/dist/magic-string.umd.js.map +1 -1
- data/lib/condenser/processors/node_modules/magic-string/package.json +6 -5
- data/lib/condenser/processors/node_modules/minimist/example/parse.js +1 -1
- data/lib/condenser/processors/node_modules/minimist/index.js +12 -3
- data/lib/condenser/processors/node_modules/minimist/package.json +10 -10
- data/lib/condenser/processors/node_modules/minimist/readme.markdown +18 -14
- data/lib/condenser/processors/node_modules/minimist/test/bool.js +12 -0
- data/lib/condenser/processors/node_modules/minimist/test/proto.js +44 -0
- data/lib/condenser/processors/node_modules/node-releases/data/processed/envs.json +70 -0
- data/lib/condenser/processors/node_modules/node-releases/data/raw/nodejs.json +14 -0
- data/lib/condenser/processors/node_modules/node-releases/data/release-schedule/release-schedule.json +3 -3
- data/lib/condenser/processors/node_modules/node-releases/package.json +14 -13
- data/lib/condenser/processors/node_modules/p-limit/index.js +42 -0
- data/lib/condenser/processors/node_modules/p-limit/license +9 -0
- data/lib/condenser/processors/node_modules/p-limit/package.json +81 -0
- data/lib/condenser/processors/node_modules/p-limit/readme.md +69 -0
- data/lib/condenser/processors/node_modules/p-locate/index.js +31 -0
- data/lib/condenser/processors/node_modules/p-locate/license +21 -0
- data/lib/condenser/processors/node_modules/p-locate/package.json +86 -0
- data/lib/condenser/processors/node_modules/p-locate/readme.md +86 -0
- data/lib/condenser/processors/node_modules/p-try/index.js +4 -0
- data/lib/condenser/processors/node_modules/p-try/license +21 -0
- data/lib/condenser/processors/node_modules/p-try/package.json +75 -0
- data/lib/condenser/processors/node_modules/p-try/readme.md +38 -0
- data/lib/condenser/processors/node_modules/path-exists/index.js +17 -0
- data/lib/condenser/processors/node_modules/path-exists/license +21 -0
- data/lib/condenser/processors/node_modules/path-exists/package.json +72 -0
- data/lib/condenser/processors/node_modules/path-exists/readme.md +50 -0
- data/lib/condenser/processors/node_modules/pkg-up/index.js +5 -0
- data/lib/condenser/processors/node_modules/pkg-up/license +21 -0
- data/lib/condenser/processors/node_modules/pkg-up/package.json +82 -0
- data/lib/condenser/processors/node_modules/pkg-up/readme.md +64 -0
- data/lib/condenser/processors/node_modules/private/package.json +5 -5
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Alphabetic.js +12 -12
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Assigned.js +14 -13
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Case_Ignorable.js +6 -6
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Cased.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Casefolded.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Casemapped.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Lowercased.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_NFKC_Casefolded.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Titlecased.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Uppercased.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Dash.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Diacritic.js +3 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Emoji.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Modifier_Base.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Presentation.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Extended_Pictographic.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Extender.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Grapheme_Base.js +14 -14
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Grapheme_Extend.js +6 -6
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/ID_Continue.js +13 -12
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/ID_Start.js +9 -9
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Ideographic.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Lowercase.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Sentence_Terminal.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Terminal_Punctuation.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Unified_Ideograph.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/Uppercase.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/XID_Continue.js +13 -12
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Binary_Property/XID_Start.js +9 -9
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Cased_Letter.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Dash_Punctuation.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Decimal_Number.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Letter.js +9 -9
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Lowercase_Letter.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Mark.js +6 -6
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Modifier_Letter.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Modifier_Symbol.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Nonspacing_Mark.js +6 -6
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Number.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Other.js +10 -10
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Other_Letter.js +7 -7
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Other_Number.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Other_Punctuation.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Other_Symbol.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Punctuation.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Spacing_Mark.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Symbol.js +3 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Unassigned.js +10 -10
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/General_Category/Uppercase_Letter.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Arabic.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Armenian.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Bopomofo.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Chakma.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Chorasmian.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Common.js +4 -4
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Dives_Akuru.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Han.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Inherited.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Khitan_Small_Script.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Latin.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Lisu.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Malayalam.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Newa.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Oriya.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Sharada.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Sinhala.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Syloti_Nagri.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Tangut.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script/Yezidi.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Arabic.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Bopomofo.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Chakma.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Chorasmian.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Common.js +3 -3
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Cyrillic.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Dives_Akuru.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Georgian.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Han.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Inherited.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Khitan_Small_Script.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Latin.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Lisu.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Malayalam.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Newa.js +2 -2
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Oriya.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Sharada.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Sinhala.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Syloti_Nagri.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Syriac.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Tangut.js +1 -1
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/Script_Extensions/Yezidi.js +3 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/index.js +8 -0
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/package.json +14 -14
- data/lib/condenser/processors/node_modules/regenerate-unicode-properties/unicode-version.js +1 -1
- data/lib/condenser/processors/node_modules/regenerator-runtime/README.md +1 -1
- data/lib/condenser/processors/node_modules/regenerator-runtime/package.json +11 -11
- data/lib/condenser/processors/node_modules/regenerator-runtime/runtime.js +9 -6
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/emit.js +27 -16
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/hoist.js +2 -2
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/leap.js +2 -2
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/meta.js +2 -2
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/replaceShorthandObjectMethod.js +2 -2
- data/lib/condenser/processors/node_modules/regenerator-transform/lib/visit.js +21 -10
- data/lib/condenser/processors/node_modules/regenerator-transform/package.json +20 -15
- data/lib/condenser/processors/node_modules/regenerator-transform/src/emit.js +23 -15
- data/lib/condenser/processors/node_modules/regenerator-transform/src/visit.js +17 -6
- data/lib/condenser/processors/node_modules/regexpu-core/README.md +4 -4
- data/lib/condenser/processors/node_modules/regexpu-core/package.json +17 -17
- data/lib/condenser/processors/node_modules/regexpu-core/rewrite-pattern.js +16 -10
- data/lib/condenser/processors/node_modules/regjsgen/package.json +5 -5
- data/lib/condenser/processors/node_modules/regjsparser/package.json +10 -10
- data/lib/condenser/processors/node_modules/regjsparser/parser.js +16 -4
- data/lib/condenser/processors/node_modules/resolve/.editorconfig +20 -0
- data/lib/condenser/processors/node_modules/resolve/appveyor.yml +1 -0
- data/lib/condenser/processors/node_modules/resolve/index.js +0 -1
- data/lib/condenser/processors/node_modules/resolve/lib/async.js +21 -7
- data/lib/condenser/processors/node_modules/resolve/lib/core.json +1 -1
- data/lib/condenser/processors/node_modules/resolve/lib/sync.js +20 -7
- data/lib/condenser/processors/node_modules/resolve/package.json +8 -8
- data/lib/condenser/processors/node_modules/resolve/readme.markdown +18 -0
- data/lib/condenser/processors/node_modules/resolve/test/resolver.js +32 -0
- data/lib/condenser/processors/node_modules/resolve/test/resolver/baz/package.json +1 -0
- data/lib/condenser/processors/node_modules/resolve/test/resolver_sync.js +29 -0
- data/lib/condenser/processors/node_modules/rollup-plugin-node-resolve/package.json +1 -1
- data/lib/condenser/processors/node_modules/rollup/CHANGELOG.md +344 -0
- data/lib/condenser/processors/node_modules/rollup/LICENSE.md +350 -102
- data/lib/condenser/processors/node_modules/rollup/dist/bin/rollup +1774 -1098
- data/lib/condenser/processors/node_modules/rollup/dist/es/package.json +1 -0
- data/lib/condenser/processors/node_modules/rollup/dist/es/rollup.browser.js +11 -0
- data/lib/condenser/processors/node_modules/rollup/dist/es/rollup.js +15 -0
- data/lib/condenser/processors/node_modules/rollup/dist/{rollup.es.js → es/shared/rollup.js} +16330 -14991
- data/lib/condenser/processors/node_modules/rollup/dist/es/shared/watch.js +7139 -0
- data/lib/condenser/processors/node_modules/rollup/dist/loadConfigFile.js +25 -0
- data/lib/condenser/processors/node_modules/rollup/dist/rollup.browser.js +3 -17
- data/lib/condenser/processors/node_modules/rollup/dist/rollup.d.ts +154 -93
- data/lib/condenser/processors/node_modules/rollup/dist/rollup.js +10 -17115
- data/lib/condenser/processors/node_modules/rollup/dist/shared/_events_commonjs-external.js +22 -0
- data/lib/condenser/processors/node_modules/rollup/dist/shared/loadConfigFile.js +560 -0
- data/lib/condenser/processors/node_modules/rollup/dist/shared/mergeOptions.js +67 -0
- data/lib/condenser/processors/node_modules/rollup/dist/shared/rollup.js +18787 -0
- data/lib/condenser/processors/node_modules/rollup/dist/shared/watch.js +7095 -0
- data/lib/condenser/processors/node_modules/rollup/package.json +71 -62
- data/lib/condenser/processors/node_modules/semver/package.json +2 -0
- data/lib/condenser/processors/node_modules/sourcemap-codec/CHANGELOG.md +4 -0
- data/lib/condenser/processors/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js +30 -39
- data/lib/condenser/processors/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js.map +1 -1
- data/lib/condenser/processors/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js +30 -39
- data/lib/condenser/processors/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js.map +1 -1
- data/lib/condenser/processors/node_modules/sourcemap-codec/package.json +5 -5
- data/lib/condenser/processors/node_modules/unicode-match-property-value-ecmascript/data/mappings.js +16 -0
- data/lib/condenser/processors/node_modules/unicode-match-property-value-ecmascript/package.json +12 -12
- data/lib/condenser/processors/node_modules/unicode-property-aliases-ecmascript/index.js +6 -0
- data/lib/condenser/processors/node_modules/unicode-property-aliases-ecmascript/package.json +7 -7
- data/lib/condenser/processors/node_processor.rb +8 -0
- data/lib/condenser/processors/package-lock.json +683 -541
- data/lib/condenser/processors/rollup_processor.rb +0 -1
- data/lib/condenser/templating_engine/ejs.rb +19 -0
- data/lib/condenser/transformers/jst_transformer.rb +87 -0
- data/lib/condenser/version.rb +1 -1
- data/test/preprocessor/babel_test.rb +2 -4
- data/test/templates/ejs_test.rb +3 -8
- metadata +204 -85
- data/lib/condenser/processors/node_modules/.bin/acorn +0 -1
- data/lib/condenser/processors/node_modules/@babel/helper-call-delegate/README.md +0 -19
- data/lib/condenser/processors/node_modules/@babel/helper-call-delegate/lib/index.js +0 -70
- data/lib/condenser/processors/node_modules/@babel/helper-call-delegate/package.json +0 -46
- data/lib/condenser/processors/node_modules/@babel/parser/lib/options.js +0 -35
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/base.js +0 -24
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/comments.js +0 -198
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/expression.js +0 -1703
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/index.js +0 -59
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/location.js +0 -49
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/lval.js +0 -364
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/node.js +0 -89
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/statement.js +0 -1529
- data/lib/condenser/processors/node_modules/@babel/parser/lib/parser/util.js +0 -228
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugin-utils.js +0 -91
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/estree.js +0 -283
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/flow.js +0 -2690
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/jsx/index.js +0 -516
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/jsx/xhtml.js +0 -263
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/placeholders.js +0 -204
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/typescript/index.js +0 -2076
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/typescript/scope.js +0 -94
- data/lib/condenser/processors/node_modules/@babel/parser/lib/plugins/v8intrinsic.js +0 -43
- data/lib/condenser/processors/node_modules/@babel/parser/lib/tokenizer/context.js +0 -102
- data/lib/condenser/processors/node_modules/@babel/parser/lib/tokenizer/index.js +0 -1225
- data/lib/condenser/processors/node_modules/@babel/parser/lib/tokenizer/state.js +0 -101
- data/lib/condenser/processors/node_modules/@babel/parser/lib/tokenizer/types.js +0 -267
- data/lib/condenser/processors/node_modules/@babel/parser/lib/util/location.js +0 -43
- data/lib/condenser/processors/node_modules/@babel/parser/lib/util/scope.js +0 -172
- data/lib/condenser/processors/node_modules/@babel/parser/lib/util/scopeflags.js +0 -82
- data/lib/condenser/processors/node_modules/@babel/parser/lib/util/whitespace.js +0 -58
- data/lib/condenser/processors/node_modules/@babel/preset-env/CONTRIBUTING.md +0 -103
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/corejs2-built-in-features.js +0 -359
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/overlapping-plugins.js +0 -16
- data/lib/condenser/processors/node_modules/@babel/preset-env/data/plugin-features.js +0 -108
- data/lib/condenser/processors/node_modules/@babel/preset-env/lib/polyfills/corejs3/shipped-proposals.js +0 -8
- data/lib/condenser/processors/node_modules/@types/estree/flow.d.ts +0 -174
- data/lib/condenser/processors/node_modules/acorn/CHANGELOG.md +0 -562
- data/lib/condenser/processors/node_modules/acorn/README.md +0 -270
- data/lib/condenser/processors/node_modules/acorn/bin/acorn +0 -4
- data/lib/condenser/processors/node_modules/acorn/dist/acorn.d.ts +0 -209
- data/lib/condenser/processors/node_modules/acorn/dist/acorn.js +0 -5001
- data/lib/condenser/processors/node_modules/acorn/dist/acorn.js.map +0 -1
- data/lib/condenser/processors/node_modules/acorn/dist/acorn.mjs +0 -4970
- data/lib/condenser/processors/node_modules/acorn/dist/acorn.mjs.map +0 -1
- data/lib/condenser/processors/node_modules/acorn/dist/bin.js +0 -64
- data/lib/condenser/processors/node_modules/acorn/package.json +0 -66
- data/lib/condenser/processors/node_modules/is-reference/node_modules/@types/estree/LICENSE +0 -21
- data/lib/condenser/processors/node_modules/is-reference/node_modules/@types/estree/README.md +0 -16
- data/lib/condenser/processors/node_modules/is-reference/node_modules/@types/estree/index.d.ts +0 -548
- data/lib/condenser/processors/node_modules/is-reference/node_modules/@types/estree/package.json +0 -51
- data/lib/condenser/processors/node_modules/js-levenshtein/README.md +0 -59
- data/lib/condenser/processors/node_modules/js-levenshtein/index.js +0 -105
- data/lib/condenser/processors/node_modules/js-levenshtein/package.json +0 -81
- data/lib/condenser/processors/node_modules/node-releases/.idea/encodings.xml +0 -4
- data/lib/condenser/processors/node_modules/node-releases/.idea/inspectionProfiles/Project_Default.xml +0 -8
- data/lib/condenser/processors/node_modules/node-releases/.idea/misc.xml +0 -9
- data/lib/condenser/processors/node_modules/node-releases/.idea/modules.xml +0 -8
- data/lib/condenser/processors/node_modules/node-releases/.idea/node-releases.iml +0 -12
- data/lib/condenser/processors/node_modules/node-releases/.idea/vcs.xml +0 -6
- data/lib/condenser/processors/node_modules/node-releases/.idea/workspace.xml +0 -121
- data/lib/condenser/processors/node_modules/node-releases/node_modules/.bin/semver +0 -1
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/CHANGELOG.md +0 -70
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/LICENSE +0 -15
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/README.md +0 -443
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/bin/semver.js +0 -174
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/package.json +0 -60
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/range.bnf +0 -16
- data/lib/condenser/processors/node_modules/node-releases/node_modules/semver/semver.js +0 -1596
- data/lib/condenser/processors/node_modules/rollup/dist/rollup.browser.es.js +0 -25
- data/lib/condenser/processors/node_modules/rollup/dist/shared/index.js +0 -320
- data/lib/condenser/transformers/ejs.rb +0 -100
@@ -1,5 +1,13 @@
|
|
1
1
|
# magic-string changelog
|
2
2
|
|
3
|
+
## 0.25.7
|
4
|
+
|
5
|
+
* fix bundle mappings after remove and move in multiple sources ([#172](https://github.com/Rich-Harris/magic-string/issues/172))
|
6
|
+
|
7
|
+
## 0.25.6
|
8
|
+
|
9
|
+
* Use bitwise operators for small performance boost ([#171](https://github.com/Rich-Harris/magic-string/pull/171))
|
10
|
+
|
3
11
|
## 0.25.5
|
4
12
|
|
5
13
|
* Use a bitset to reduce memory consumption ([#167](https://github.com/Rich-Harris/magic-string/issues/167))
|
@@ -7,15 +7,13 @@ var BitSet = function BitSet(arg) {
|
|
7
7
|
};
|
8
8
|
|
9
9
|
BitSet.prototype.add = function add (n) {
|
10
|
-
this.bits[
|
10
|
+
this.bits[n >> 5] |= 1 << (n & 31);
|
11
11
|
};
|
12
12
|
|
13
13
|
BitSet.prototype.has = function has (n) {
|
14
|
-
return !!(this.bits[
|
14
|
+
return !!(this.bits[n >> 5] & (1 << (n & 31)));
|
15
15
|
};
|
16
16
|
|
17
|
-
var BITS = 32;
|
18
|
-
|
19
17
|
var Chunk = function Chunk(start, end, content) {
|
20
18
|
this.start = start;
|
21
19
|
this.end = end;
|
@@ -323,9 +321,7 @@ Mappings.prototype.addUneditedChunk = function addUneditedChunk (sourceIndex, ch
|
|
323
321
|
originalCharIndex += 1;
|
324
322
|
}
|
325
323
|
|
326
|
-
this.pending =
|
327
|
-
? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]
|
328
|
-
: null;
|
324
|
+
this.pending = null;
|
329
325
|
};
|
330
326
|
|
331
327
|
Mappings.prototype.advance = function advance (str) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"magic-string.cjs.js","sources":["../src/BitSet.js","../src/Chunk.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js","../src/index-legacy.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[Math.floor(n / BITS)] |= 1 << n % BITS;\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[Math.floor(n / BITS)] & (1 << n % BITS));\n\t}\n}\n\nconst BITS = 32;\n","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = sourceIndex > 0\n\t\t\t? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]\n\t\t\t: null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport Bundle from './Bundle.js';\nimport SourceMap from './SourceMap.js';\n\nMagicString.Bundle = Bundle;\nMagicString.SourceMap = SourceMap;\nMagicString.default = MagicString; // work around TypeScript bug https://github.com/Rich-Harris/magic-string/pull/121\n\nexport default MagicString;\n"],"names":["const","let","encode","this"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"magic-string.cjs.js","sources":["../src/BitSet.js","../src/Chunk.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js","../src/index-legacy.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[n >> 5] |= 1 << (n & 31);\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[n >> 5] & (1 << (n & 31)));\n\t}\n}","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport Bundle from './Bundle.js';\nimport SourceMap from './SourceMap.js';\n\nMagicString.Bundle = Bundle;\nMagicString.SourceMap = SourceMap;\nMagicString.default = MagicString; // work around TypeScript bug https://github.com/Rich-Harris/magic-string/pull/121\n\nexport default MagicString;\n"],"names":["const","let","encode","this"],"mappings":";;;;AAAe,IAAM,MAAM,GAC1B,eAAW,CAAC,GAAG,EAAE;CAChB,IAAI,CAAC,IAAI,GAAG,GAAG,YAAY,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;EAC1D;;AAEF,iBAAC,oBAAI,CAAC,EAAE;CACN,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;EACnC;;AAEF,iBAAC,oBAAI,CAAC,EAAE;CACP,OAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;CAC/C;;ACXa,IAAM,KAAK,GACzB,cAAW,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE;CAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;CACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;CACf,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;;CAExB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;CAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;;CAEhB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;CACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;CACvB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;;;CAGpB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;EAC9B,QAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;EAC1C,IAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;EACzC,CAAC,CAAC;EACH;;AAEF,gBAAC,kCAAW,OAAO,EAAE;CACnB,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;EACtB;;AAEF,gBAAC,oCAAY,OAAO,EAAE;CACrB,IAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;EAClC;;AAEF,gBAAC,0BAAQ;CACPA,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;CAE7D,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;CACzB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;CACzB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;CAC7B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;CACjC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;;CAE5B,OAAQ,KAAK,CAAC;EACb;;AAEF,gBAAC,8BAAS,KAAK,EAAE;CACf,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC;EAC9C;;AAEF,gBAAC,8BAAS,EAAE,EAAE;CACZC,IAAI,KAAK,GAAG,IAAI,CAAC;CAClB,OAAQ,KAAK,EAAE;EACb,EAAE,CAAC,KAAK,CAAC,CAAC;EACV,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB;EACD;;AAEF,gBAAC,sCAAa,EAAE,EAAE;CAChBA,IAAI,KAAK,GAAG,IAAI,CAAC;CAClB,OAAQ,KAAK,EAAE;EACb,EAAE,CAAC,KAAK,CAAC,CAAC;EACV,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;EACvB;EACD;;AAEF,gBAAC,sBAAK,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE;CACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;CACxB,IAAK,CAAC,WAAW,EAAE;EACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;EAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;EAChB;CACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;;CAE3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;;CAEpB,OAAQ,IAAI,CAAC;EACZ;;AAEF,gBAAC,oCAAY,OAAO,EAAE;CACrB,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EAClC;;AAEF,gBAAC,sCAAa,OAAO,EAAE;CACtB,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EAClC;;AAEF,gBAAC,wBAAM,KAAK,EAAE;CACb,IAAO,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;;CAEtCD,IAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;CAC1DA,IAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;CAEtD,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;;CAE/BA,IAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;CAC3D,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;CAC5B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;;CAEhB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;;CAEjB,IAAI,IAAI,CAAC,MAAM,EAAE;;EAEjB,QAAS,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;EACzB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;EAClB,MAAM;EACN,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;EAC9B;;CAED,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;CAC1B,IAAI,QAAQ,CAAC,IAAI,IAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAC;CACrD,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;CACzB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;;CAEtB,OAAQ,QAAQ,CAAC;EAChB;;AAEF,gBAAC,gCAAW;CACV,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EAC9C;;AAEF,gBAAC,4BAAQ,EAAE,EAAE;CACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;CACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;CAEnCA,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;CAE7C,IAAI,OAAO,CAAC,MAAM,EAAE;EACnB,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE;GAC9B,IAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;GAClE;EACF,OAAQ,IAAI,CAAC;;EAEZ,MAAM;EACP,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;;EAE/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;EACnC;EACD;;AAEF,gBAAC,gCAAU,EAAE,EAAE;CACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;CACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;CAEnCA,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;CAE7C,IAAI,OAAO,CAAC,MAAM,EAAE;EACnB,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE;GAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;GACvC,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;GAC/B;EACF,OAAQ,IAAI,CAAC;;EAEZ,MAAM;EACP,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;;EAE/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;EACnC;CACD;;ACxJFC,IAAI,IAAI,eAAM;CACb,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;CAC3F,CAAC;AACF,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;CACvE,IAAI,aAAG,KAAI,SAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAC,CAAC;CAC7D,MAAM,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;CACxC,IAAI,aAAG,KAAI,SAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAC,CAAC;CAC3D;;AAEc,IAAM,SAAS,GAC7B,kBAAW,CAAC,UAAU,EAAE;CACvB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;CACjB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;CAC5B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;CAClC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC;CAChD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;CAC/B,IAAK,CAAC,QAAQ,GAAGC,qBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;EAC5C;;AAEF,oBAAC,gCAAW;CACV,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;EAC5B;;AAEF,oBAAC,0BAAQ;CACR,OAAQ,6CAA6C,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;CAC7E;;AC3Ba,SAAS,WAAW,CAAC,IAAI,EAAE;CACzCF,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;CAE/BA,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,WAAC,MAAK,SAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAC,CAAC,CAAC;CACvDA,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,WAAC,MAAK,SAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAC,CAAC,CAAC;;CAEzD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;EAC/C,OAAO,IAAI,CAAC;EACZ;;;;;CAKD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;EACnC,OAAO,IAAI,CAAC;EACZ;;;CAGDA,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,WAAE,QAAQ,EAAE,OAAO,EAAE;EAC7CA,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;EAChD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;EACrC,EAAE,QAAQ,CAAC,CAAC;;CAEb,OAAO,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CACpC;;ACxBc,SAAS,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE;CACjDA,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;CACtCA,IAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;;CAElC,SAAS,CAAC,GAAG,EAAE,CAAC;;CAEhB,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;EACnC,SAAS,CAAC,KAAK,EAAE,CAAC;EAClB,OAAO,CAAC,KAAK,EAAE,CAAC;EAChB;;CAED,IAAI,SAAS,CAAC,MAAM,EAAE;EACrBC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;EACzB,OAAO,CAAC,EAAE,IAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAC;EAChC;;CAED,OAAO,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CAC3C;;ACjBDD,IAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;;AAE3C,AAAe,SAAS,QAAQ,CAAC,KAAK,EAAE;CACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAAC;CAClD;;ACJc,SAAS,UAAU,CAAC,MAAM,EAAE;CAC1CA,IAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;CACzCA,IAAM,WAAW,GAAG,EAAE,CAAC;;CAEvB,KAAKC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;EACvD,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EACtB,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;EACnC;;CAED,OAAO,SAAS,MAAM,CAAC,KAAK,EAAE;EAC7BA,IAAI,CAAC,GAAG,CAAC,CAAC;EACVA,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;EAC3B,OAAO,CAAC,GAAG,CAAC,EAAE;GACbD,IAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;GACvB,IAAI,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE;IAC3B,CAAC,GAAG,CAAC,CAAC;IACN,MAAM;IACN,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACV;GACD;EACDA,IAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;EACnBA,IAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;EACzC,OAAO,QAAE,IAAI,UAAE,MAAM,EAAE,CAAC;EACxB,CAAC;CACF;;ACxBc,IAAM,QAAQ,GAC5B,iBAAW,CAAC,KAAK,EAAE;CAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;CACnB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;CAC3B,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;CAC7B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;CACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC;CACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;EACpB;;AAEF,mBAAC,4BAAQ,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE;CAC7C,IAAI,OAAO,CAAC,MAAM,EAAE;EACnBA,IAAM,OAAO,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;EAC9E,IAAI,SAAS,IAAI,CAAC,EAAE;GACnB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;GACxB;EACF,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;EAC/B,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;EACzB,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;EACpC;;CAED,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;CACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;EACpB;;AAEF,mBAAC,8CAAiB,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,kBAAkB,EAAE;CACvEC,IAAI,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC;CACpCA,IAAI,KAAK,GAAG,IAAI,CAAC;;CAEjB,OAAO,iBAAiB,GAAG,KAAK,CAAC,GAAG,EAAE;EACrC,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;GACtE,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;GACrF;;EAED,IAAI,QAAQ,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;GACzC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;GACd,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;GACf,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;GAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;GACzD,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;GAC9B,KAAM,GAAG,IAAI,CAAC;GACb,MAAM;GACN,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;GAChB,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;GAC/B,KAAM,GAAG,KAAK,CAAC;GACd;;EAEF,iBAAkB,IAAI,CAAC,CAAC;EACvB;;CAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;EACpB;;AAEF,mBAAC,4BAAQ,GAAG,EAAE;CACZ,IAAI,CAAC,GAAG,IAAE,SAAO;;CAElB,IAAO,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;CAE9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;EACrB,KAAKA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;GAC1C,IAAI,CAAC,iBAAiB,EAAE,CAAC;GACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;GACzD;EACD,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;EAC7B;;CAED,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;CAC3D;;ACzDFD,IAAM,CAAC,GAAG,IAAI,CAAC;;AAEfA,IAAM,MAAM,GAAG;CACd,UAAU,EAAE,KAAK;CACjB,WAAW,EAAE,KAAK;CAClB,SAAS,EAAE,KAAK;CAChB,CAAC;;AAEF,IAAqB,WAAW,GAC/B,oBAAW,CAAC,MAAM,EAAE,OAAY,EAAE;kCAAP,GAAG;;CAC7BA,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;CAElD,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;EAC9B,QAAS,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE;EACzD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;EACrD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;EACrD,UAAW,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;EACxD,SAAU,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;EACxD,iBAAkB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;EACxD,OAAQ,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;EACrD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;EACpD,QAAQ,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;EAClE,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,qBAAqB,EAAE;EAC/E,kBAAkB,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,EAAE;EAC/D,WAAY,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;EACpD,SAAS,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE;EACrE,CAAC,CAAC;;CAMJ,IAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;CACzB,IAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;EAClC;;AAEF,sBAAC,sDAAqB,IAAI,EAAE;CAC3B,IAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;EAClC;;AAEF,sBAAC,0BAAO,OAAO,EAAE;CACf,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,GAAC;;CAEvF,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;CACvB,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,kCAAW,KAAK,EAAE,OAAO,EAAE;CAC1B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;CAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;CAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;CAEjC,IAAK,KAAK,EAAE;EACV,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;EAC1B,MAAM;EACN,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;EACtB;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;CAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;CAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;CAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;CAEnC,IAAK,KAAK,EAAE;EACV,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;EAC3B,MAAM;EACN,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;EACtB;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,0BAAQ;CACPA,IAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;;CAE3EC,IAAI,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC;CACpCA,IAAI,WAAW,IAAI,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,iBAAiB,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;;CAE1F,OAAQ,aAAa,EAAE;EACtB,MAAO,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;EACjD,MAAO,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;;EAE5CD,IAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC;EAC9C,IAAO,eAAe,GAAG,iBAAiB,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC;;EAExE,IAAK,eAAe,EAAE;GACpB,WAAW,CAAC,IAAI,GAAG,eAAe,CAAC;GACnC,eAAe,CAAC,QAAQ,GAAG,WAAW,CAAC;;GAExC,WAAY,GAAG,eAAe,CAAC;GAC9B;;EAEF,aAAc,GAAG,iBAAiB,CAAC;EAClC;;CAED,MAAM,CAAC,SAAS,GAAG,WAAW,CAAC;;CAE/B,IAAI,IAAI,CAAC,qBAAqB,EAAE;EAChC,MAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;EAClE;;CAEF,MAAO,CAAC,kBAAkB,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;;CAEhE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;CAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;;CAE3B,OAAQ,MAAM,CAAC;EACd;;AAEF,sBAAC,kDAAmB,OAAO,EAAE;;;CAC3B,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;;CAExBA,IAAM,WAAW,GAAG,CAAC,CAAC;CACtBA,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;CAC7C,IAAO,QAAQ,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;CAE9C,IAAO,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;CAEzC,IAAI,IAAI,CAAC,KAAK,EAAE;EAChB,QAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;EAC7B;;CAEF,IAAK,CAAC,UAAU,CAAC,QAAQ,WAAC,OAAM;EAC/B,IAAO,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;EAEhC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;;EAEtD,IAAI,KAAK,CAAC,MAAM,EAAE;GAClB,QAAS,CAAC,OAAO;IACf,WAAW;IACZ,KAAM,CAAC,OAAO;IACb,GAAG;IACH,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;GACF,MAAM;GACN,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,EAAEG,MAAI,CAAC,QAAQ,EAAE,GAAG,EAAEA,MAAI,CAAC,kBAAkB,CAAC,CAAC;GAC3F;;EAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;EACtD,CAAC,CAAC;;CAEH,OAAO;EACN,IAAI,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI;EAC9D,OAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;EACtF,cAAc,EAAE,OAAO,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;EAClE,OAAC,KAAK;EACL,QAAQ,EAAE,QAAQ,CAAC,GAAG;EACtB,CAAC;EACF;;AAEF,sBAAC,oCAAY,OAAO,EAAE;CACrB,OAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;EACvD;;AAEF,sBAAC,8CAAkB;CACjB,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;EACvD;;AAEF,sBAAC,0BAAO,SAAS,EAAE,OAAO,EAAE;CAC1BH,IAAM,OAAO,GAAG,YAAY,CAAC;;CAE7B,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;EACzB,OAAQ,GAAG,SAAS,CAAC;EACrB,SAAU,GAAG,SAAS,CAAC;EACtB;;CAED,SAAS,GAAG,SAAS,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;;CAEzE,IAAI,SAAS,KAAK,EAAE,IAAE,OAAO,IAAI,GAAC;;CAElC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;;;CAGxBA,IAAM,UAAU,GAAG,EAAE,CAAC;;CAEtB,IAAI,OAAO,CAAC,OAAO,EAAE;EACrB,IAAO,UAAU;GACf,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;EAC9E,UAAU,CAAC,OAAO,WAAC,WAAU;GAC7B,KAAMC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;IACpD,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrB;GACD,CAAC,CAAC;EACH;;CAEF,IAAK,yBAAyB,GAAG,OAAO,CAAC,WAAW,KAAK,KAAK,CAAC;CAC9DD,IAAM,QAAQ,aAAG,OAAM;EACvB,IAAK,yBAAyB,IAAE,aAAU,SAAS,GAAG,KAAK,IAAG;EAC9D,yBAA0B,GAAG,IAAI,CAAC;EAClC,OAAQ,KAAK,CAAC;EACb,CAAC;;CAEF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;CAEnDC,IAAI,SAAS,GAAG,CAAC,CAAC;CAClBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;;CAE7B,OAAQ,KAAK,EAAE;EACbD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;;EAEtB,IAAI,KAAK,CAAC,MAAM,EAAE;GACjB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;IAC3B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;IAEzD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;KACzB,yBAAyB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;KAC7E;IACD;GACD,MAAM;GACN,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;;GAExB,OAAO,SAAS,GAAG,GAAG,EAAE;IACvB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;KAC5B,IAAO,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;;KAEtC,IAAI,IAAI,KAAK,IAAI,EAAE;MACnB,yBAA0B,GAAG,IAAI,CAAC;MACjC,MAAM,IAAI,IAAI,KAAK,IAAI,IAAI,yBAAyB,EAAE;MACvD,yBAA0B,GAAG,KAAK,CAAC;;MAElC,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,EAAE;OAC9B,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;OAC9B,MAAM;OACP,IAAK,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;OACnC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;OACnB,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;OAC9B;MACD;KACD;;IAEF,SAAU,IAAI,CAAC,CAAC;IACf;GACD;;EAED,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC;EACtB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB;;CAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;CAEpD,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,4BAAS;CACR,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;EACnG;;AAEF,sBAAC,kCAAW,KAAK,EAAE,OAAO,EAAE;CAC1B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;EACvB,OAAO,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;EACnG,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;EACzB;;CAEF,OAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;EACvC;;AAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;CAC3B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;EACxB,OAAO,CAAC,IAAI,CAAC,uFAAuF,CAAC,CAAC;EACtG,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;EAC1B;;CAEF,OAAQ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;EACzC;;AAEF,sBAAC,sBAAK,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE;CACvB,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,GAAG,IAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,GAAC;;CAI7F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;CACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;CAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;CACnC,IAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;CAE7BA,IAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC;CAC/BA,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;;CAE5B,IAAO,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;CACrC,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,SAAS,IAAE,OAAO,IAAI,GAAC;CACtDA,IAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;;CAE/D,IAAK,OAAO,IAAE,OAAO,CAAC,IAAI,GAAG,QAAQ,GAAC;CACtC,IAAK,QAAQ,IAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,GAAC;;CAE3C,IAAK,OAAO,IAAE,OAAO,CAAC,IAAI,GAAG,KAAK,GAAC;CACnC,IAAK,QAAQ,IAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,GAAC;;CAEvC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAC;CACjD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;EACf,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;EAChC,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;EAC3B;;CAED,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;CACzB,IAAI,CAAC,IAAI,GAAG,QAAQ,IAAI,IAAI,CAAC;;CAE9B,IAAK,CAAC,OAAO,IAAE,IAAI,CAAC,UAAU,GAAG,KAAK,GAAC;CACvC,IAAK,CAAC,QAAQ,IAAE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAC;CAGtC,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,gCAAU,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE;CACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,GAAC;;CAE7F,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;CAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;CAE5C,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,GAAC;CACzE,IAAK,KAAK,KAAK,GAAG;EACjB,EAAC,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,GAAC;;CAIlG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;CAEjB,IAAI,OAAO,KAAK,IAAI,EAAE;EACrB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;GACtB,OAAO,CAAC,IAAI,CAAC,+HAA+H,CAAC,CAAC;GAC9I,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;GACxB;;EAED,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;EAC9B;CACDA,IAAM,SAAS,GAAG,OAAO,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;CACpEA,IAAM,WAAW,GAAG,OAAO,KAAK,SAAS,GAAG,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC;;CAEzE,IAAK,SAAS,EAAE;EACdA,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;EAClD,IAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;EAClC;;CAEF,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;CACnC,IAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;CAE9B,IAAK,KAAK,EAAE;EACV,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;GAC9D,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;GACzD;;EAEF,KAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;;EAE5C,IAAI,KAAK,KAAK,IAAI,EAAE;GACnBC,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACvB,OAAO,KAAK,KAAK,IAAI,EAAE;IACvB,KAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACtB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;IACnB;;GAEF,KAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;GACtB;EACD,MAAM;;EAEP,IAAO,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;;;EAGpE,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;EACrB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;EACzB;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,4BAAQ,OAAO,EAAE;CAChB,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,GAAC;;CAExF,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;CACnC,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;CAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;CAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;CAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;CAEjC,IAAK,KAAK,EAAE;EACV,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;EAC3B,MAAM;EACP,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EAClC;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,sCAAa,KAAK,EAAE,OAAO,EAAE;CAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;CAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;CAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;CAEnC,IAAK,KAAK,EAAE;EACV,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;EAC5B,MAAM;EACP,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EAClC;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,0BAAO,KAAK,EAAE,GAAG,EAAE;CAClB,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;CAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;CAE5C,IAAI,KAAK,KAAK,GAAG,IAAE,OAAO,IAAI,GAAC;;CAE/B,IAAI,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,GAAC;CAC5F,IAAK,KAAK,GAAG,GAAG,IAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,GAAC;;CAInE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;CAElB,IAAK,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;CAEjC,OAAQ,KAAK,EAAE;EACb,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;EACjB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;EACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;EAEf,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;EACzD;CAGF,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,gCAAW;CACV,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;EACrB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;CAC1CA,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;CAC3B,GAAG;EACF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;GACtB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;EAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM;GACxB,EAAC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;EAChD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;GACtB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;EAC5C,QAAQ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE;CACjC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;EACrB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;CAC3C,OAAQ,EAAE,CAAC;EACV;;AAEF,sBAAC,gCAAW;CACVA,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAC1C,IAAI,SAAS,KAAK,CAAC,CAAC;EACpB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAC;CACzCA,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;CACzBA,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;CAC3B,GAAG;EACH,IAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;GAC5B,SAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;GACvC,IAAI,SAAS,KAAK,CAAC,CAAC;IACpB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;GACpD,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;GAChC;;EAEF,IAAK,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;GAC9B,SAAU,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;GACzC,IAAI,SAAS,KAAK,CAAC,CAAC;IACpB,EAAC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;GACtD,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;GAClC;;EAEF,IAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;GAC5B,SAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;GACvC,IAAI,SAAS,KAAK,CAAC,CAAC;IACpB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;GACpD,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;GAChC;EACD,QAAQ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE;CAClC,SAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACtC,IAAI,SAAS,KAAK,CAAC,CAAC;EACpB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;CACnD,OAAO,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;EAC5B;;AAEF,sBAAC,wBAAM,KAAS,EAAE,GAA0B,EAAE;+BAAlC,GAAG;2BAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;;CACpC,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;CAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;CAE5CA,IAAI,MAAM,GAAG,EAAE,CAAC;;;CAGhBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;CAC5B,OAAO,KAAK,KAAK,KAAK,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE;;EAE5D,IAAI,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,EAAE;GAC3C,OAAQ,MAAM,CAAC;GACd;;EAED,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB;;CAEF,IAAK,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK;EAClD,EAAC,MAAM,IAAI,KAAK,qCAAkC,KAAK,8BAA0B,GAAC;;CAElFD,IAAM,UAAU,GAAG,KAAK,CAAC;CAC1B,OAAQ,KAAK,EAAE;EACb,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE;GACnE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC;GACtB;;EAEDA,IAAM,WAAW,GAAG,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC;EAC3D,IAAK,WAAW,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG;GACpD,EAAC,MAAM,IAAI,KAAK,qCAAkC,GAAG,4BAAwB,GAAC;;EAE9EA,IAAM,UAAU,GAAG,UAAU,KAAK,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;EACnE,IAAO,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;;EAE7F,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;;EAEpD,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE;GACvD,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC;GACtB;;EAEF,IAAK,WAAW,EAAE;GAChB,MAAM;GACN;;EAED,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB;;CAEF,OAAQ,MAAM,CAAC;EACd;;;AAGF,sBAAC,sBAAK,KAAK,EAAE,GAAG,EAAE;CACjB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;CAC5B,KAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;CACvB,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;;CAE1C,OAAQ,KAAK,CAAC;EACb;;AAEF,sBAAC,0BAAO,KAAK,EAAE;CACb,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAE,SAAO;;CAIrDC,IAAI,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC;CACpC,IAAO,aAAa,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC;;CAEzC,OAAQ,KAAK,EAAE;EACb,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,GAAC;;EAElE,KAAM,GAAG,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;EAC1E;EACD;;AAEF,sBAAC,oCAAY,KAAK,EAAE,KAAK,EAAE;CAC1B,IAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;;EAEzCD,IAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;EAC9C,MAAO,IAAI,KAAK;6DACwC,GAAG,CAAC,KAAI,UAAI,GAAG,CAAC,OAAM,cAC3E,KAAK,CAAC,SAAQ;GAEf,CAAC;EACF;;CAEF,IAAO,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;CAErC,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;CAC3B,IAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;CAChC,IAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;;CAEpC,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,IAAE,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAC;;CAExD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;CAEhC,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,gCAAW;CACVC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;;CAErBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;CAC7B,OAAQ,KAAK,EAAE;EACb,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;EACxB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB;;CAED,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;EACxB;;AAEF,sBAAC,8BAAU;CACTA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;CAC5B,GAAG;EACF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;IAC3C,KAAM,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;IAC7C,KAAM,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;GAC1C,EAAC,OAAO,KAAK,GAAC;EACd,QAAQ,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE;CAC9B,OAAQ,IAAI,CAAC;EACZ;;AAEF,sBAAC,4BAAS;CACRA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;CAC5BA,IAAI,MAAM,GAAG,CAAC,CAAC;CACf,GAAG;EACF,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;EACzE,QAAQ,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE;CAC9B,OAAQ,MAAM,CAAC;EACd;;AAEF,sBAAC,kCAAY;CACX,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;EAC7B;;AAEF,sBAAC,sBAAK,QAAQ,EAAE;CACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;EAClD;;AAEF,sBAAC,0CAAe,QAAQ,EAAE;CACxBD,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC;;CAElD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;CACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;CAEnCC,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;;CAE3B,GAAG;EACFD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;EACvB,IAAO,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;;;EAGlC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;GACtB,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;IAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5B;;GAEF,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;GAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;GAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;GACxC;;EAED,IAAI,OAAO,IAAE,OAAO,IAAI,GAAC;EACzB,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;EACvB,QAAQ,KAAK,EAAE;;CAEjB,OAAQ,KAAK,CAAC;EACb;;AAEF,sBAAC,4BAAQ,QAAQ,EAAE;CACjB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;CAC/B,OAAQ,IAAI,CAAC;EACZ;AACF,sBAAC,8CAAiB,QAAQ,EAAE;CAC1BA,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,QAAQ,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;;CAEvD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;CACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;CAEnCC,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;;CAE5B,GAAG;EACFD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;EACvB,IAAO,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;;EAEpC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;;GAEtB,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,IAAE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,GAAC;;GAE3D,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;GAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;GAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;GACxC;;EAED,IAAI,OAAO,IAAE,OAAO,IAAI,GAAC;EACzB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;EACnB,QAAQ,KAAK,EAAE;;CAEjB,OAAQ,KAAK,CAAC;EACb;;AAEF,sBAAC,gCAAU,QAAQ,EAAE;CACnB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;CACjC,OAAQ,IAAI,CAAC;CACZ;;ACvsBFA,IAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;;AAEpC,IAAM,MAAM,GAC1B,eAAW,CAAC,OAAY,EAAE;kCAAP,GAAG;;CACtB,IAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;CACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;CAC5E,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;CAClB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;CACxB,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;EACtC;;AAEF,iBAAC,gCAAU,MAAM,EAAE;CACjB,IAAI,MAAM,YAAY,WAAW,EAAE;EAClC,OAAO,IAAI,CAAC,SAAS,CAAC;GACtB,OAAQ,EAAE,MAAM;GACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;GACzB,SAAS,EAAE,IAAI,CAAC,SAAS;GACzB,CAAC,CAAC;EACH;;CAEF,IAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;EACzC,MAAM,IAAI,KAAK,CAAC,sIAAsI,CAAC,CAAC;EACxJ;;CAED,CAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,WAAC,QAAO;EAClE,IAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAC;EAC9E,CAAC,CAAC;;CAEH,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE;;EAEnC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;EAClC;;CAED,IAAI,MAAM,CAAC,QAAQ,EAAE;EACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;GACxE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;GAC/E,IAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;GACzF,MAAM;GACNA,IAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;GAC5F,IAAK,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,YAAY,CAAC,OAAO,EAAE;IACtD,MAAO,IAAI,KAAK,uCAAmC,MAAM,CAAC,SAAQ,4BAAwB,CAAC;IAC1F;GACD;EACD;;CAEF,IAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;CAC3B,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,0BAAO,GAAG,EAAE,OAAO,EAAE;CACrB,IAAK,CAAC,SAAS,CAAC;EACd,OAAO,EAAE,IAAI,WAAW,CAAC,GAAG,CAAC;EAC9B,SAAU,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE;EAC/C,CAAC,CAAC;;CAEJ,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,0BAAQ;CACPA,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC;EACzB,KAAK,EAAE,IAAI,CAAC,KAAK;EACjB,SAAS,EAAE,IAAI,CAAC,SAAS;EACzB,CAAC,CAAC;;CAEJ,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;EAC5B,MAAO,CAAC,SAAS,CAAC;GAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;GACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;GAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;GAC3B,CAAC,CAAC;EACH,CAAC,CAAC;;CAEJ,OAAQ,MAAM,CAAC;EACd;;AAEF,iBAAC,kDAAmB,OAAY,EAAE;;mCAAP,GAAG;;CAC5BA,IAAM,KAAK,GAAG,EAAE,CAAC;CAClB,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;EAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,WAAC,MAAK;GACpD,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAC;GAC5C,CAAC,CAAC;EACH,CAAC,CAAC;;CAEJ,IAAO,QAAQ,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;CAE7C,IAAI,IAAI,CAAC,KAAK,EAAE;EAChB,QAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;EAC7B;;CAEF,IAAK,CAAC,OAAO,CAAC,OAAO,WAAE,MAAM,EAAE,CAAC,EAAE;EAChC,IAAI,CAAC,GAAG,CAAC,EAAE;GACX,QAAS,CAAC,OAAO,CAACG,MAAI,CAAC,SAAS,CAAC,CAAC;GACjC;;EAEDH,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,GAAGG,MAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;EAC7FH,IAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;EACpC,IAAO,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;;EAEhD,IAAI,WAAW,CAAC,KAAK,EAAE;GACvB,QAAS,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;GACpC;;EAEF,WAAY,CAAC,UAAU,CAAC,QAAQ,WAAC,OAAM;GACtC,IAAO,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;GAEhC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;;GAEtD,IAAI,MAAM,CAAC,QAAQ,EAAE;IACpB,IAAI,KAAK,CAAC,MAAM,EAAE;KAClB,QAAS,CAAC,OAAO;MACf,WAAW;MACZ,KAAM,CAAC,OAAO;MACb,GAAG;MACH,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;MACpD,CAAC;KACF,MAAM;KACP,QAAS,CAAC,gBAAgB;MACxB,WAAW;MACX,KAAK;MACN,WAAY,CAAC,QAAQ;MACpB,GAAG;MACJ,WAAY,CAAC,kBAAkB;MAC9B,CAAC;KACF;IACD,MAAM;IACP,QAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC;;GAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;GACtD,CAAC,CAAC;;EAEH,IAAI,WAAW,CAAC,KAAK,EAAE;GACvB,QAAS,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;GACpC;EACD,CAAC,CAAC;;CAEH,OAAO;EACN,IAAI,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI;EAC9D,OAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,WAAC,QAAO;GACtC,OAAO,OAAO,CAAC,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;GACvF,CAAC;EACH,cAAe,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,WAAC,QAAO;GAC9C,OAAQ,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;GACtD,CAAC;EACH,OAAC,KAAK;EACL,QAAQ,EAAE,QAAQ,CAAC,GAAG;EACtB,CAAC;EACF;;AAEF,iBAAC,oCAAY,OAAO,EAAE;CACrB,OAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;EACvD;;AAEF,iBAAC,8CAAkB;CACjBA,IAAM,kBAAkB,GAAG,EAAE,CAAC;;CAE/B,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;EAC5B,IAAO,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;;EAE3C,IAAI,SAAS,KAAK,IAAI,IAAE,SAAO;;EAE/B,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,GAAC;EACtE,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;EACnC,CAAC,CAAC;;CAEH;EACC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,WAAE,CAAC,EAAE,CAAC,EAAE;GAC5C,OAAQ,kBAAkB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;GACrD,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;GACZ;EACF;;AAEF,iBAAC,0BAAO,SAAS,EAAE;;;CACjB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;EACtB,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;EACnC;;CAED,IAAI,SAAS,KAAK,EAAE,IAAE,OAAO,IAAI,GAAC;;CAEnC,IAAK,eAAe,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;;CAEpE,IAAK,CAAC,OAAO,CAAC,OAAO,WAAE,MAAM,EAAE,CAAC,EAAE;EAChCA,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,GAAGG,MAAI,CAAC,SAAS,CAAC;EACrFH,IAAM,WAAW,GAAG,eAAe,KAAK,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;;EAE3E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE;GAChC,OAAO,EAAE,MAAM,CAAC,qBAAqB;GACtC,aAAC,WAAW;GACX,CAAC,CAAC;;EAEJ,eAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC;EACrD,CAAC,CAAC;;CAEH,IAAI,IAAI,CAAC,KAAK,EAAE;EAChB,IAAK,CAAC,KAAK;GACT,SAAS;GACT,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,YAAG,KAAK,EAAE,KAAK,EAAE;IAC9C,OAAQ,KAAK,GAAG,CAAC,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,CAAC;IAC7C,CAAC,CAAC;EACJ;;CAEF,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,4BAAQ,GAAG,EAAE;CACb,IAAK,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;CAC/B,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,gCAAW;;;CACVA,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO;GACvB,GAAG,WAAE,MAAM,EAAE,CAAC,EAAE;GAChBA,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,GAAGG,MAAI,CAAC,SAAS,CAAC;GACtF,IAAO,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;;GAElE,OAAQ,GAAG,CAAC;GACX,CAAC;GACD,IAAI,CAAC,EAAE,CAAC,CAAC;;CAEX,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;EACzB;;AAEF,iBAAC,OAAO,uBAAI;CACV,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;EAC1C,EAAC,OAAO,KAAK,GAAC;CACd,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,WAAC,QAAO,SAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,KAAE,CAAC;EAC1D,EAAC,OAAO,KAAK,GAAC;CACf,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,4BAAS;CACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,WAAE,MAAM,EAAE,MAAM,EAAE,SAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;EACpG;;AAEF,iBAAC,kCAAY;CACX,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;EAC7B;;AAEF,iBAAC,sBAAK,QAAQ,EAAE;CACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;EAClD;;AAEF,iBAAC,gCAAU,QAAQ,EAAE;CACnBH,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,QAAQ,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;CACvD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;CAExC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;EACjB,IAAK,MAAM,CAAC;EACXC,IAAI,CAAC,GAAG,CAAC,CAAC;;EAEV,GAAG;GACH,MAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;GAC5B,IAAK,CAAC,MAAM,EAAE;IACZ,MAAM;IACN;GACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;EACrD;;CAEF,OAAQ,IAAI,CAAC;EACZ;;AAEF,iBAAC,4BAAQ,QAAQ,EAAE;CACjBD,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC;;CAEnD,IAAK,MAAM,CAAC;CACZ,IAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;;CAEhC,GAAG;EACH,MAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;EAC5B,IAAK,CAAC,MAAM,EAAE;GACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;GACxC,MAAM;GACN;EACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;;CAEpD,OAAQ,IAAI,CAAC;CACZ;;ACvRF,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;AAC5B,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;AAClC,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC;;;;"}
|
@@ -5,15 +5,13 @@ var BitSet = function BitSet(arg) {
|
|
5
5
|
};
|
6
6
|
|
7
7
|
BitSet.prototype.add = function add (n) {
|
8
|
-
this.bits[
|
8
|
+
this.bits[n >> 5] |= 1 << (n & 31);
|
9
9
|
};
|
10
10
|
|
11
11
|
BitSet.prototype.has = function has (n) {
|
12
|
-
return !!(this.bits[
|
12
|
+
return !!(this.bits[n >> 5] & (1 << (n & 31)));
|
13
13
|
};
|
14
14
|
|
15
|
-
var BITS = 32;
|
16
|
-
|
17
15
|
var Chunk = function Chunk(start, end, content) {
|
18
16
|
this.start = start;
|
19
17
|
this.end = end;
|
@@ -321,9 +319,7 @@ Mappings.prototype.addUneditedChunk = function addUneditedChunk (sourceIndex, ch
|
|
321
319
|
originalCharIndex += 1;
|
322
320
|
}
|
323
321
|
|
324
|
-
this.pending =
|
325
|
-
? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]
|
326
|
-
: null;
|
322
|
+
this.pending = null;
|
327
323
|
};
|
328
324
|
|
329
325
|
Mappings.prototype.advance = function advance (str) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"magic-string.es.js","sources":["../src/BitSet.js","../src/Chunk.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[Math.floor(n / BITS)] |= 1 << n % BITS;\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[Math.floor(n / BITS)] & (1 << n % BITS));\n\t}\n}\n\nconst BITS = 32;\n","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = sourceIndex > 0\n\t\t\t? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]\n\t\t\t: null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n"],"names":["const","let","this"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"magic-string.es.js","sources":["../src/BitSet.js","../src/Chunk.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[n >> 5] |= 1 << (n & 31);\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[n >> 5] & (1 << (n & 31)));\n\t}\n}","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n"],"names":["const","let","this"],"mappings":"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"}
|
@@ -9,15 +9,13 @@
|
|
9
9
|
};
|
10
10
|
|
11
11
|
BitSet.prototype.add = function add (n) {
|
12
|
-
this.bits[
|
12
|
+
this.bits[n >> 5] |= 1 << (n & 31);
|
13
13
|
};
|
14
14
|
|
15
15
|
BitSet.prototype.has = function has (n) {
|
16
|
-
return !!(this.bits[
|
16
|
+
return !!(this.bits[n >> 5] & (1 << (n & 31)));
|
17
17
|
};
|
18
18
|
|
19
|
-
var BITS = 32;
|
20
|
-
|
21
19
|
var Chunk = function Chunk(start, end, content) {
|
22
20
|
this.start = start;
|
23
21
|
this.end = end;
|
@@ -377,9 +375,7 @@
|
|
377
375
|
originalCharIndex += 1;
|
378
376
|
}
|
379
377
|
|
380
|
-
this.pending =
|
381
|
-
? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]
|
382
|
-
: null;
|
378
|
+
this.pending = null;
|
383
379
|
};
|
384
380
|
|
385
381
|
Mappings.prototype.advance = function advance (str) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"magic-string.umd.js","sources":["../src/BitSet.js","../src/Chunk.js","../node_modules/sourcemap-codec/dist/sourcemap-codec.es.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js","../src/index-legacy.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[Math.floor(n / BITS)] |= 1 << n % BITS;\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[Math.floor(n / BITS)] & (1 << n % BITS));\n\t}\n}\n\nconst BITS = 32;\n","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","var charToInteger = {};\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nfor (var i = 0; i < chars.length; i++) {\n charToInteger[chars.charCodeAt(i)] = i;\n}\nfunction decode(mappings) {\n var generatedCodeColumn = 0; // first field\n var sourceFileIndex = 0; // second field\n var sourceCodeLine = 0; // third field\n var sourceCodeColumn = 0; // fourth field\n var nameIndex = 0; // fifth field\n var decoded = [];\n var line = [];\n var segment = [];\n for (var i = 0, j = 0, shift = 0, value = 0, len = mappings.length; i < len; i++) {\n var c = mappings.charCodeAt(i);\n if (c === 44) { // \",\"\n if (segment.length)\n line.push(new Int32Array(segment));\n segment = [];\n j = 0;\n }\n else if (c === 59) { // \";\"\n if (segment.length)\n line.push(new Int32Array(segment));\n segment = [];\n j = 0;\n decoded.push(line);\n line = [];\n generatedCodeColumn = 0;\n }\n else {\n var integer = charToInteger[c];\n if (integer === undefined) {\n throw new Error('Invalid character (' + String.fromCharCode(c) + ')');\n }\n var hasContinuationBit = integer & 32;\n integer &= 31;\n value += integer << shift;\n if (hasContinuationBit) {\n shift += 5;\n }\n else {\n var shouldNegate = value & 1;\n value >>= 1;\n var num = shouldNegate ? -value : value;\n if (j == 0) {\n generatedCodeColumn += num;\n segment.push(generatedCodeColumn);\n }\n else if (j === 1) {\n sourceFileIndex += num;\n segment.push(sourceFileIndex);\n }\n else if (j === 2) {\n sourceCodeLine += num;\n segment.push(sourceCodeLine);\n }\n else if (j === 3) {\n sourceCodeColumn += num;\n segment.push(sourceCodeColumn);\n }\n else if (j === 4) {\n nameIndex += num;\n segment.push(nameIndex);\n }\n j++;\n value = shift = 0; // reset\n }\n }\n }\n if (segment.length)\n line.push(new Int32Array(segment));\n decoded.push(line);\n return decoded;\n}\nfunction encode(decoded) {\n var sourceFileIndex = 0; // second field\n var sourceCodeLine = 0; // third field\n var sourceCodeColumn = 0; // fourth field\n var nameIndex = 0; // fifth field\n var mappings = '';\n for (var i = 0; i < decoded.length; i++) {\n var line = decoded[i];\n if (i > 0)\n mappings += ';';\n if (line.length === 0)\n continue;\n var generatedCodeColumn = 0; // first field\n var lineMappings = [];\n for (var _i = 0, line_1 = line; _i < line_1.length; _i++) {\n var segment = line_1[_i];\n var segmentMappings = encodeInteger(segment[0] - generatedCodeColumn);\n generatedCodeColumn = segment[0];\n if (segment.length > 1) {\n segmentMappings +=\n encodeInteger(segment[1] - sourceFileIndex) +\n encodeInteger(segment[2] - sourceCodeLine) +\n encodeInteger(segment[3] - sourceCodeColumn);\n sourceFileIndex = segment[1];\n sourceCodeLine = segment[2];\n sourceCodeColumn = segment[3];\n }\n if (segment.length === 5) {\n segmentMappings += encodeInteger(segment[4] - nameIndex);\n nameIndex = segment[4];\n }\n lineMappings.push(segmentMappings);\n }\n mappings += lineMappings.join(',');\n }\n return mappings;\n}\nfunction encodeInteger(num) {\n var result = '';\n num = num < 0 ? (-num << 1) | 1 : num << 1;\n do {\n var clamped = num & 31;\n num >>= 5;\n if (num > 0) {\n clamped |= 32;\n }\n result += chars[clamped];\n } while (num > 0);\n return result;\n}\n\nexport { decode, encode };\n//# sourceMappingURL=sourcemap-codec.es.js.map\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = sourceIndex > 0\n\t\t\t? [this.generatedCodeColumn, sourceIndex, loc.line, loc.column]\n\t\t\t: null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport Bundle from './Bundle.js';\nimport SourceMap from './SourceMap.js';\n\nMagicString.Bundle = Bundle;\nMagicString.SourceMap = SourceMap;\nMagicString.default = MagicString; // work around TypeScript bug https://github.com/Rich-Harris/magic-string/pull/121\n\nexport default MagicString;\n"],"names":["const","let","this"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"magic-string.umd.js","sources":["../src/BitSet.js","../src/Chunk.js","../node_modules/sourcemap-codec/dist/sourcemap-codec.es.js","../src/SourceMap.js","../src/utils/guessIndent.js","../src/utils/getRelativePath.js","../src/utils/isObject.js","../src/utils/getLocator.js","../src/utils/Mappings.js","../src/MagicString.js","../src/Bundle.js","../src/index-legacy.js"],"sourcesContent":["export default class BitSet {\n\tconstructor(arg) {\n\t\tthis.bits = arg instanceof BitSet ? arg.bits.slice() : [];\n\t}\n\n\tadd(n) {\n\t\tthis.bits[n >> 5] |= 1 << (n & 31);\n\t}\n\n\thas(n) {\n\t\treturn !!(this.bits[n >> 5] & (1 << (n & 31)));\n\t}\n}","export default class Chunk {\n\tconstructor(start, end, content) {\n\t\tthis.start = start;\n\t\tthis.end = end;\n\t\tthis.original = content;\n\n\t\tthis.intro = '';\n\t\tthis.outro = '';\n\n\t\tthis.content = content;\n\t\tthis.storeName = false;\n\t\tthis.edited = false;\n\n\t\t// we make these non-enumerable, for sanity while debugging\n\t\tObject.defineProperties(this, {\n\t\t\tprevious: { writable: true, value: null },\n\t\t\tnext: { writable: true, value: null }\n\t\t});\n\t}\n\n\tappendLeft(content) {\n\t\tthis.outro += content;\n\t}\n\n\tappendRight(content) {\n\t\tthis.intro = this.intro + content;\n\t}\n\n\tclone() {\n\t\tconst chunk = new Chunk(this.start, this.end, this.original);\n\n\t\tchunk.intro = this.intro;\n\t\tchunk.outro = this.outro;\n\t\tchunk.content = this.content;\n\t\tchunk.storeName = this.storeName;\n\t\tchunk.edited = this.edited;\n\n\t\treturn chunk;\n\t}\n\n\tcontains(index) {\n\t\treturn this.start < index && index < this.end;\n\t}\n\n\teachNext(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.next;\n\t\t}\n\t}\n\n\teachPrevious(fn) {\n\t\tlet chunk = this;\n\t\twhile (chunk) {\n\t\t\tfn(chunk);\n\t\t\tchunk = chunk.previous;\n\t\t}\n\t}\n\n\tedit(content, storeName, contentOnly) {\n\t\tthis.content = content;\n\t\tif (!contentOnly) {\n\t\t\tthis.intro = '';\n\t\t\tthis.outro = '';\n\t\t}\n\t\tthis.storeName = storeName;\n\n\t\tthis.edited = true;\n\n\t\treturn this;\n\t}\n\n\tprependLeft(content) {\n\t\tthis.outro = content + this.outro;\n\t}\n\n\tprependRight(content) {\n\t\tthis.intro = content + this.intro;\n\t}\n\n\tsplit(index) {\n\t\tconst sliceIndex = index - this.start;\n\n\t\tconst originalBefore = this.original.slice(0, sliceIndex);\n\t\tconst originalAfter = this.original.slice(sliceIndex);\n\n\t\tthis.original = originalBefore;\n\n\t\tconst newChunk = new Chunk(index, this.end, originalAfter);\n\t\tnewChunk.outro = this.outro;\n\t\tthis.outro = '';\n\n\t\tthis.end = index;\n\n\t\tif (this.edited) {\n\t\t\t// TODO is this block necessary?...\n\t\t\tnewChunk.edit('', false);\n\t\t\tthis.content = '';\n\t\t} else {\n\t\t\tthis.content = originalBefore;\n\t\t}\n\n\t\tnewChunk.next = this.next;\n\t\tif (newChunk.next) newChunk.next.previous = newChunk;\n\t\tnewChunk.previous = this;\n\t\tthis.next = newChunk;\n\n\t\treturn newChunk;\n\t}\n\n\ttoString() {\n\t\treturn this.intro + this.content + this.outro;\n\t}\n\n\ttrimEnd(rx) {\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.start + trimmed.length).edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\tif (this.intro.length) return true;\n\t\t}\n\t}\n\n\ttrimStart(rx) {\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tconst trimmed = this.content.replace(rx, '');\n\n\t\tif (trimmed.length) {\n\t\t\tif (trimmed !== this.content) {\n\t\t\t\tthis.split(this.end - trimmed.length);\n\t\t\t\tthis.edit('', undefined, true);\n\t\t\t}\n\t\t\treturn true;\n\n\t\t} else {\n\t\t\tthis.edit('', undefined, true);\n\n\t\t\tthis.outro = this.outro.replace(rx, '');\n\t\t\tif (this.outro.length) return true;\n\t\t}\n\t}\n}\n","var charToInteger = {};\nvar chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nfor (var i = 0; i < chars.length; i++) {\n charToInteger[chars.charCodeAt(i)] = i;\n}\nfunction decode(mappings) {\n var generatedCodeColumn = 0; // first field\n var sourceFileIndex = 0; // second field\n var sourceCodeLine = 0; // third field\n var sourceCodeColumn = 0; // fourth field\n var nameIndex = 0; // fifth field\n var decoded = [];\n var line = [];\n var segment = [];\n for (var i = 0, j = 0, shift = 0, value = 0, len = mappings.length; i < len; i++) {\n var c = mappings.charCodeAt(i);\n if (c === 44) { // \",\"\n if (segment.length)\n line.push(new Int32Array(segment));\n segment = [];\n j = 0;\n }\n else if (c === 59) { // \";\"\n if (segment.length)\n line.push(new Int32Array(segment));\n segment = [];\n j = 0;\n decoded.push(line);\n line = [];\n generatedCodeColumn = 0;\n }\n else {\n var integer = charToInteger[c];\n if (integer === undefined) {\n throw new Error('Invalid character (' + String.fromCharCode(c) + ')');\n }\n var hasContinuationBit = integer & 32;\n integer &= 31;\n value += integer << shift;\n if (hasContinuationBit) {\n shift += 5;\n }\n else {\n var shouldNegate = value & 1;\n value >>= 1;\n var num = shouldNegate ? -value : value;\n if (j == 0) {\n generatedCodeColumn += num;\n segment.push(generatedCodeColumn);\n }\n else if (j === 1) {\n sourceFileIndex += num;\n segment.push(sourceFileIndex);\n }\n else if (j === 2) {\n sourceCodeLine += num;\n segment.push(sourceCodeLine);\n }\n else if (j === 3) {\n sourceCodeColumn += num;\n segment.push(sourceCodeColumn);\n }\n else if (j === 4) {\n nameIndex += num;\n segment.push(nameIndex);\n }\n j++;\n value = shift = 0; // reset\n }\n }\n }\n if (segment.length)\n line.push(new Int32Array(segment));\n decoded.push(line);\n return decoded;\n}\nfunction encode(decoded) {\n var sourceFileIndex = 0; // second field\n var sourceCodeLine = 0; // third field\n var sourceCodeColumn = 0; // fourth field\n var nameIndex = 0; // fifth field\n var mappings = '';\n for (var i = 0; i < decoded.length; i++) {\n var line = decoded[i];\n if (i > 0)\n mappings += ';';\n if (line.length === 0)\n continue;\n var generatedCodeColumn = 0; // first field\n var lineMappings = [];\n for (var _i = 0, line_1 = line; _i < line_1.length; _i++) {\n var segment = line_1[_i];\n var segmentMappings = encodeInteger(segment[0] - generatedCodeColumn);\n generatedCodeColumn = segment[0];\n if (segment.length > 1) {\n segmentMappings +=\n encodeInteger(segment[1] - sourceFileIndex) +\n encodeInteger(segment[2] - sourceCodeLine) +\n encodeInteger(segment[3] - sourceCodeColumn);\n sourceFileIndex = segment[1];\n sourceCodeLine = segment[2];\n sourceCodeColumn = segment[3];\n }\n if (segment.length === 5) {\n segmentMappings += encodeInteger(segment[4] - nameIndex);\n nameIndex = segment[4];\n }\n lineMappings.push(segmentMappings);\n }\n mappings += lineMappings.join(',');\n }\n return mappings;\n}\nfunction encodeInteger(num) {\n var result = '';\n num = num < 0 ? (-num << 1) | 1 : num << 1;\n do {\n var clamped = num & 31;\n num >>= 5;\n if (num > 0) {\n clamped |= 32;\n }\n result += chars[clamped];\n } while (num > 0);\n return result;\n}\n\nexport { decode, encode };\n//# sourceMappingURL=sourcemap-codec.es.js.map\n","import { encode } from 'sourcemap-codec';\n\nlet btoa = () => {\n\tthrow new Error('Unsupported environment: `window.btoa` or `Buffer` should be supported.');\n};\nif (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n\tbtoa = str => window.btoa(unescape(encodeURIComponent(str)));\n} else if (typeof Buffer === 'function') {\n\tbtoa = str => Buffer.from(str, 'utf-8').toString('base64');\n}\n\nexport default class SourceMap {\n\tconstructor(properties) {\n\t\tthis.version = 3;\n\t\tthis.file = properties.file;\n\t\tthis.sources = properties.sources;\n\t\tthis.sourcesContent = properties.sourcesContent;\n\t\tthis.names = properties.names;\n\t\tthis.mappings = encode(properties.mappings);\n\t}\n\n\ttoString() {\n\t\treturn JSON.stringify(this);\n\t}\n\n\ttoUrl() {\n\t\treturn 'data:application/json;charset=utf-8;base64,' + btoa(this.toString());\n\t}\n}\n","export default function guessIndent(code) {\n\tconst lines = code.split('\\n');\n\n\tconst tabbed = lines.filter(line => /^\\t+/.test(line));\n\tconst spaced = lines.filter(line => /^ {2,}/.test(line));\n\n\tif (tabbed.length === 0 && spaced.length === 0) {\n\t\treturn null;\n\t}\n\n\t// More lines tabbed than spaced? Assume tabs, and\n\t// default to tabs in the case of a tie (or nothing\n\t// to go on)\n\tif (tabbed.length >= spaced.length) {\n\t\treturn '\\t';\n\t}\n\n\t// Otherwise, we need to guess the multiple\n\tconst min = spaced.reduce((previous, current) => {\n\t\tconst numSpaces = /^ +/.exec(current)[0].length;\n\t\treturn Math.min(numSpaces, previous);\n\t}, Infinity);\n\n\treturn new Array(min + 1).join(' ');\n}\n","export default function getRelativePath(from, to) {\n\tconst fromParts = from.split(/[/\\\\]/);\n\tconst toParts = to.split(/[/\\\\]/);\n\n\tfromParts.pop(); // get dirname\n\n\twhile (fromParts[0] === toParts[0]) {\n\t\tfromParts.shift();\n\t\ttoParts.shift();\n\t}\n\n\tif (fromParts.length) {\n\t\tlet i = fromParts.length;\n\t\twhile (i--) fromParts[i] = '..';\n\t}\n\n\treturn fromParts.concat(toParts).join('/');\n}\n","const toString = Object.prototype.toString;\n\nexport default function isObject(thing) {\n\treturn toString.call(thing) === '[object Object]';\n}\n","export default function getLocator(source) {\n\tconst originalLines = source.split('\\n');\n\tconst lineOffsets = [];\n\n\tfor (let i = 0, pos = 0; i < originalLines.length; i++) {\n\t\tlineOffsets.push(pos);\n\t\tpos += originalLines[i].length + 1;\n\t}\n\n\treturn function locate(index) {\n\t\tlet i = 0;\n\t\tlet j = lineOffsets.length;\n\t\twhile (i < j) {\n\t\t\tconst m = (i + j) >> 1;\n\t\t\tif (index < lineOffsets[m]) {\n\t\t\t\tj = m;\n\t\t\t} else {\n\t\t\t\ti = m + 1;\n\t\t\t}\n\t\t}\n\t\tconst line = i - 1;\n\t\tconst column = index - lineOffsets[line];\n\t\treturn { line, column };\n\t};\n}\n","export default class Mappings {\n\tconstructor(hires) {\n\t\tthis.hires = hires;\n\t\tthis.generatedCodeLine = 0;\n\t\tthis.generatedCodeColumn = 0;\n\t\tthis.raw = [];\n\t\tthis.rawSegments = this.raw[this.generatedCodeLine] = [];\n\t\tthis.pending = null;\n\t}\n\n\taddEdit(sourceIndex, content, loc, nameIndex) {\n\t\tif (content.length) {\n\t\t\tconst segment = [this.generatedCodeColumn, sourceIndex, loc.line, loc.column];\n\t\t\tif (nameIndex >= 0) {\n\t\t\t\tsegment.push(nameIndex);\n\t\t\t}\n\t\t\tthis.rawSegments.push(segment);\n\t\t} else if (this.pending) {\n\t\t\tthis.rawSegments.push(this.pending);\n\t\t}\n\n\t\tthis.advance(content);\n\t\tthis.pending = null;\n\t}\n\n\taddUneditedChunk(sourceIndex, chunk, original, loc, sourcemapLocations) {\n\t\tlet originalCharIndex = chunk.start;\n\t\tlet first = true;\n\n\t\twhile (originalCharIndex < chunk.end) {\n\t\t\tif (this.hires || first || sourcemapLocations.has(originalCharIndex)) {\n\t\t\t\tthis.rawSegments.push([this.generatedCodeColumn, sourceIndex, loc.line, loc.column]);\n\t\t\t}\n\n\t\t\tif (original[originalCharIndex] === '\\n') {\n\t\t\t\tloc.line += 1;\n\t\t\t\tloc.column = 0;\n\t\t\t\tthis.generatedCodeLine += 1;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t\tthis.generatedCodeColumn = 0;\n\t\t\t\tfirst = true;\n\t\t\t} else {\n\t\t\t\tloc.column += 1;\n\t\t\t\tthis.generatedCodeColumn += 1;\n\t\t\t\tfirst = false;\n\t\t\t}\n\n\t\t\toriginalCharIndex += 1;\n\t\t}\n\n\t\tthis.pending = null;\n\t}\n\n\tadvance(str) {\n\t\tif (!str) return;\n\n\t\tconst lines = str.split('\\n');\n\n\t\tif (lines.length > 1) {\n\t\t\tfor (let i = 0; i < lines.length - 1; i++) {\n\t\t\t\tthis.generatedCodeLine++;\n\t\t\t\tthis.raw[this.generatedCodeLine] = this.rawSegments = [];\n\t\t\t}\n\t\t\tthis.generatedCodeColumn = 0;\n\t\t}\n\n\t\tthis.generatedCodeColumn += lines[lines.length - 1].length;\n\t}\n}\n","import BitSet from './BitSet.js';\nimport Chunk from './Chunk.js';\nimport SourceMap from './SourceMap.js';\nimport guessIndent from './utils/guessIndent.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\nimport Stats from './utils/Stats.js';\n\nconst n = '\\n';\n\nconst warned = {\n\tinsertLeft: false,\n\tinsertRight: false,\n\tstoreName: false\n};\n\nexport default class MagicString {\n\tconstructor(string, options = {}) {\n\t\tconst chunk = new Chunk(0, string.length, string);\n\n\t\tObject.defineProperties(this, {\n\t\t\toriginal: { writable: true, value: string },\n\t\t\toutro: { writable: true, value: '' },\n\t\t\tintro: { writable: true, value: '' },\n\t\t\tfirstChunk: { writable: true, value: chunk },\n\t\t\tlastChunk: { writable: true, value: chunk },\n\t\t\tlastSearchedChunk: { writable: true, value: chunk },\n\t\t\tbyStart: { writable: true, value: {} },\n\t\t\tbyEnd: { writable: true, value: {} },\n\t\t\tfilename: { writable: true, value: options.filename },\n\t\t\tindentExclusionRanges: { writable: true, value: options.indentExclusionRanges },\n\t\t\tsourcemapLocations: { writable: true, value: new BitSet() },\n\t\t\tstoredNames: { writable: true, value: {} },\n\t\t\tindentStr: { writable: true, value: guessIndent(string) }\n\t\t});\n\n\t\tif (DEBUG) {\n\t\t\tObject.defineProperty(this, 'stats', { value: new Stats() });\n\t\t}\n\n\t\tthis.byStart[0] = chunk;\n\t\tthis.byEnd[string.length] = chunk;\n\t}\n\n\taddSourcemapLocation(char) {\n\t\tthis.sourcemapLocations.add(char);\n\t}\n\n\tappend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.outro += content;\n\t\treturn this;\n\t}\n\n\tappendLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendLeft');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendLeft(content);\n\t\t} else {\n\t\t\tthis.intro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendLeft');\n\t\treturn this;\n\t}\n\n\tappendRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('appendRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.appendRight(content);\n\t\t} else {\n\t\t\tthis.outro += content;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('appendRight');\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst cloned = new MagicString(this.original, { filename: this.filename });\n\n\t\tlet originalChunk = this.firstChunk;\n\t\tlet clonedChunk = (cloned.firstChunk = cloned.lastSearchedChunk = originalChunk.clone());\n\n\t\twhile (originalChunk) {\n\t\t\tcloned.byStart[clonedChunk.start] = clonedChunk;\n\t\t\tcloned.byEnd[clonedChunk.end] = clonedChunk;\n\n\t\t\tconst nextOriginalChunk = originalChunk.next;\n\t\t\tconst nextClonedChunk = nextOriginalChunk && nextOriginalChunk.clone();\n\n\t\t\tif (nextClonedChunk) {\n\t\t\t\tclonedChunk.next = nextClonedChunk;\n\t\t\t\tnextClonedChunk.previous = clonedChunk;\n\n\t\t\t\tclonedChunk = nextClonedChunk;\n\t\t\t}\n\n\t\t\toriginalChunk = nextOriginalChunk;\n\t\t}\n\n\t\tcloned.lastChunk = clonedChunk;\n\n\t\tif (this.indentExclusionRanges) {\n\t\t\tcloned.indentExclusionRanges = this.indentExclusionRanges.slice();\n\t\t}\n\n\t\tcloned.sourcemapLocations = new BitSet(this.sourcemapLocations);\n\n\t\tcloned.intro = this.intro;\n\t\tcloned.outro = this.outro;\n\n\t\treturn cloned;\n\t}\n\n\tgenerateDecodedMap(options) {\n\t\toptions = options || {};\n\n\t\tconst sourceIndex = 0;\n\t\tconst names = Object.keys(this.storedNames);\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tconst locate = getLocator(this.original);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.firstChunk.eachNext(chunk => {\n\t\t\tconst loc = locate(chunk.start);\n\n\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tmappings.addEdit(\n\t\t\t\t\tsourceIndex,\n\t\t\t\t\tchunk.content,\n\t\t\t\t\tloc,\n\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tmappings.addUneditedChunk(sourceIndex, chunk, this.original, loc, this.sourcemapLocations);\n\t\t\t}\n\n\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: [options.source ? getRelativePath(options.file || '', options.source) : null],\n\t\t\tsourcesContent: options.includeContent ? [this.original] : [null],\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\treturn this.indentStr === null ? '\\t' : this.indentStr;\n\t}\n\n\tindent(indentStr, options) {\n\t\tconst pattern = /^[^\\r\\n]/gm;\n\n\t\tif (isObject(indentStr)) {\n\t\t\toptions = indentStr;\n\t\t\tindentStr = undefined;\n\t\t}\n\n\t\tindentStr = indentStr !== undefined ? indentStr : this.indentStr || '\\t';\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\toptions = options || {};\n\n\t\t// Process exclusion ranges\n\t\tconst isExcluded = {};\n\n\t\tif (options.exclude) {\n\t\t\tconst exclusions =\n\t\t\t\ttypeof options.exclude[0] === 'number' ? [options.exclude] : options.exclude;\n\t\t\texclusions.forEach(exclusion => {\n\t\t\t\tfor (let i = exclusion[0]; i < exclusion[1]; i += 1) {\n\t\t\t\t\tisExcluded[i] = true;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tlet shouldIndentNextCharacter = options.indentStart !== false;\n\t\tconst replacer = match => {\n\t\t\tif (shouldIndentNextCharacter) return `${indentStr}${match}`;\n\t\t\tshouldIndentNextCharacter = true;\n\t\t\treturn match;\n\t\t};\n\n\t\tthis.intro = this.intro.replace(pattern, replacer);\n\n\t\tlet charIndex = 0;\n\t\tlet chunk = this.firstChunk;\n\n\t\twhile (chunk) {\n\t\t\tconst end = chunk.end;\n\n\t\t\tif (chunk.edited) {\n\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\tchunk.content = chunk.content.replace(pattern, replacer);\n\n\t\t\t\t\tif (chunk.content.length) {\n\t\t\t\t\t\tshouldIndentNextCharacter = chunk.content[chunk.content.length - 1] === '\\n';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcharIndex = chunk.start;\n\n\t\t\t\twhile (charIndex < end) {\n\t\t\t\t\tif (!isExcluded[charIndex]) {\n\t\t\t\t\t\tconst char = this.original[charIndex];\n\n\t\t\t\t\t\tif (char === '\\n') {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = true;\n\t\t\t\t\t\t} else if (char !== '\\r' && shouldIndentNextCharacter) {\n\t\t\t\t\t\t\tshouldIndentNextCharacter = false;\n\n\t\t\t\t\t\t\tif (charIndex === chunk.start) {\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis._splitChunk(chunk, charIndex);\n\t\t\t\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t\t\t\t\tchunk.prependRight(indentStr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcharIndex += 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tcharIndex = chunk.end;\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tthis.outro = this.outro.replace(pattern, replacer);\n\n\t\treturn this;\n\t}\n\n\tinsert() {\n\t\tthrow new Error('magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)');\n\t}\n\n\tinsertLeft(index, content) {\n\t\tif (!warned.insertLeft) {\n\t\t\tconsole.warn('magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertLeft = true;\n\t\t}\n\n\t\treturn this.appendLeft(index, content);\n\t}\n\n\tinsertRight(index, content) {\n\t\tif (!warned.insertRight) {\n\t\t\tconsole.warn('magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead'); // eslint-disable-line no-console\n\t\t\twarned.insertRight = true;\n\t\t}\n\n\t\treturn this.prependRight(index, content);\n\t}\n\n\tmove(start, end, index) {\n\t\tif (index >= start && index <= end) throw new Error('Cannot move a selection inside itself');\n\n\t\tif (DEBUG) this.stats.time('move');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\t\tthis._split(index);\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tconst oldLeft = first.previous;\n\t\tconst oldRight = last.next;\n\n\t\tconst newRight = this.byStart[index];\n\t\tif (!newRight && last === this.lastChunk) return this;\n\t\tconst newLeft = newRight ? newRight.previous : this.lastChunk;\n\n\t\tif (oldLeft) oldLeft.next = oldRight;\n\t\tif (oldRight) oldRight.previous = oldLeft;\n\n\t\tif (newLeft) newLeft.next = first;\n\t\tif (newRight) newRight.previous = last;\n\n\t\tif (!first.previous) this.firstChunk = last.next;\n\t\tif (!last.next) {\n\t\t\tthis.lastChunk = first.previous;\n\t\t\tthis.lastChunk.next = null;\n\t\t}\n\n\t\tfirst.previous = newLeft;\n\t\tlast.next = newRight || null;\n\n\t\tif (!newLeft) this.firstChunk = first;\n\t\tif (!newRight) this.lastChunk = last;\n\n\t\tif (DEBUG) this.stats.timeEnd('move');\n\t\treturn this;\n\t}\n\n\toverwrite(start, end, content, options) {\n\t\tif (typeof content !== 'string') throw new TypeError('replacement content must be a string');\n\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (end > this.original.length) throw new Error('end is out of bounds');\n\t\tif (start === end)\n\t\t\tthrow new Error('Cannot overwrite a zero-length range – use appendLeft or prependRight instead');\n\n\t\tif (DEBUG) this.stats.time('overwrite');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tif (options === true) {\n\t\t\tif (!warned.storeName) {\n\t\t\t\tconsole.warn('The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string'); // eslint-disable-line no-console\n\t\t\t\twarned.storeName = true;\n\t\t\t}\n\n\t\t\toptions = { storeName: true };\n\t\t}\n\t\tconst storeName = options !== undefined ? options.storeName : false;\n\t\tconst contentOnly = options !== undefined ? options.contentOnly : false;\n\n\t\tif (storeName) {\n\t\t\tconst original = this.original.slice(start, end);\n\t\t\tthis.storedNames[original] = true;\n\t\t}\n\n\t\tconst first = this.byStart[start];\n\t\tconst last = this.byEnd[end];\n\n\t\tif (first) {\n\t\t\tif (end > first.end && first.next !== this.byStart[first.end]) {\n\t\t\t\tthrow new Error('Cannot overwrite across a split point');\n\t\t\t}\n\n\t\t\tfirst.edit(content, storeName, contentOnly);\n\n\t\t\tif (first !== last) {\n\t\t\t\tlet chunk = first.next;\n\t\t\t\twhile (chunk !== last) {\n\t\t\t\t\tchunk.edit('', false);\n\t\t\t\t\tchunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tchunk.edit('', false);\n\t\t\t}\n\t\t} else {\n\t\t\t// must be inserting at the end\n\t\t\tconst newChunk = new Chunk(start, end, '').edit(content, storeName);\n\n\t\t\t// TODO last chunk in the array may not be the last chunk, if it's moved...\n\t\t\tlast.next = newChunk;\n\t\t\tnewChunk.previous = last;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('overwrite');\n\t\treturn this;\n\t}\n\n\tprepend(content) {\n\t\tif (typeof content !== 'string') throw new TypeError('outro content must be a string');\n\n\t\tthis.intro = content + this.intro;\n\t\treturn this;\n\t}\n\n\tprependLeft(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byEnd[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependLeft(content);\n\t\t} else {\n\t\t\tthis.intro = content + this.intro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tprependRight(index, content) {\n\t\tif (typeof content !== 'string') throw new TypeError('inserted content must be a string');\n\n\t\tif (DEBUG) this.stats.time('insertRight');\n\n\t\tthis._split(index);\n\n\t\tconst chunk = this.byStart[index];\n\n\t\tif (chunk) {\n\t\t\tchunk.prependRight(content);\n\t\t} else {\n\t\t\tthis.outro = content + this.outro;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('insertRight');\n\t\treturn this;\n\t}\n\n\tremove(start, end) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tif (start === end) return this;\n\n\t\tif (start < 0 || end > this.original.length) throw new Error('Character is out of bounds');\n\t\tif (start > end) throw new Error('end must be greater than start');\n\n\t\tif (DEBUG) this.stats.time('remove');\n\n\t\tthis._split(start);\n\t\tthis._split(end);\n\n\t\tlet chunk = this.byStart[start];\n\n\t\twhile (chunk) {\n\t\t\tchunk.intro = '';\n\t\t\tchunk.outro = '';\n\t\t\tchunk.edit('');\n\n\t\t\tchunk = end > chunk.end ? this.byStart[chunk.end] : null;\n\t\t}\n\n\t\tif (DEBUG) this.stats.timeEnd('remove');\n\t\treturn this;\n\t}\n\n\tlastChar() {\n\t\tif (this.outro.length)\n\t\t\treturn this.outro[this.outro.length - 1];\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length)\n\t\t\t\treturn chunk.outro[chunk.outro.length - 1];\n\t\t\tif (chunk.content.length)\n\t\t\t\treturn chunk.content[chunk.content.length - 1];\n\t\t\tif (chunk.intro.length)\n\t\t\t\treturn chunk.intro[chunk.intro.length - 1];\n\t\t} while (chunk = chunk.previous);\n\t\tif (this.intro.length)\n\t\t\treturn this.intro[this.intro.length - 1];\n\t\treturn '';\n\t}\n\n\tlastLine() {\n\t\tlet lineIndex = this.outro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.outro.substr(lineIndex + 1);\n\t\tlet lineStr = this.outro;\n\t\tlet chunk = this.lastChunk;\n\t\tdo {\n\t\t\tif (chunk.outro.length > 0) {\n\t\t\t\tlineIndex = chunk.outro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.outro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.outro + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.content.length > 0) {\n\t\t\t\tlineIndex = chunk.content.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.content.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.content + lineStr;\n\t\t\t}\n\n\t\t\tif (chunk.intro.length > 0) {\n\t\t\t\tlineIndex = chunk.intro.lastIndexOf(n);\n\t\t\t\tif (lineIndex !== -1)\n\t\t\t\t\treturn chunk.intro.substr(lineIndex + 1) + lineStr;\n\t\t\t\tlineStr = chunk.intro + lineStr;\n\t\t\t}\n\t\t} while (chunk = chunk.previous);\n\t\tlineIndex = this.intro.lastIndexOf(n);\n\t\tif (lineIndex !== -1)\n\t\t\treturn this.intro.substr(lineIndex + 1) + lineStr;\n\t\treturn this.intro + lineStr;\n\t}\n\n\tslice(start = 0, end = this.original.length) {\n\t\twhile (start < 0) start += this.original.length;\n\t\twhile (end < 0) end += this.original.length;\n\n\t\tlet result = '';\n\n\t\t// find start chunk\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk && (chunk.start > start || chunk.end <= start)) {\n\t\t\t// found end chunk before start\n\t\t\tif (chunk.start < end && chunk.end >= end) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\tif (chunk && chunk.edited && chunk.start !== start)\n\t\t\tthrow new Error(`Cannot use replaced character ${start} as slice start anchor.`);\n\n\t\tconst startChunk = chunk;\n\t\twhile (chunk) {\n\t\t\tif (chunk.intro && (startChunk !== chunk || chunk.start === start)) {\n\t\t\t\tresult += chunk.intro;\n\t\t\t}\n\n\t\t\tconst containsEnd = chunk.start < end && chunk.end >= end;\n\t\t\tif (containsEnd && chunk.edited && chunk.end !== end)\n\t\t\t\tthrow new Error(`Cannot use replaced character ${end} as slice end anchor.`);\n\n\t\t\tconst sliceStart = startChunk === chunk ? start - chunk.start : 0;\n\t\t\tconst sliceEnd = containsEnd ? chunk.content.length + end - chunk.end : chunk.content.length;\n\n\t\t\tresult += chunk.content.slice(sliceStart, sliceEnd);\n\n\t\t\tif (chunk.outro && (!containsEnd || chunk.end === end)) {\n\t\t\t\tresult += chunk.outro;\n\t\t\t}\n\n\t\t\tif (containsEnd) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn result;\n\t}\n\n\t// TODO deprecate this? not really very useful\n\tsnip(start, end) {\n\t\tconst clone = this.clone();\n\t\tclone.remove(0, start);\n\t\tclone.remove(end, clone.original.length);\n\n\t\treturn clone;\n\t}\n\n\t_split(index) {\n\t\tif (this.byStart[index] || this.byEnd[index]) return;\n\n\t\tif (DEBUG) this.stats.time('_split');\n\n\t\tlet chunk = this.lastSearchedChunk;\n\t\tconst searchForward = index > chunk.end;\n\n\t\twhile (chunk) {\n\t\t\tif (chunk.contains(index)) return this._splitChunk(chunk, index);\n\n\t\t\tchunk = searchForward ? this.byStart[chunk.end] : this.byEnd[chunk.start];\n\t\t}\n\t}\n\n\t_splitChunk(chunk, index) {\n\t\tif (chunk.edited && chunk.content.length) {\n\t\t\t// zero-length edited chunks are a special case (overlapping replacements)\n\t\t\tconst loc = getLocator(this.original)(index);\n\t\t\tthrow new Error(\n\t\t\t\t`Cannot split a chunk that has already been edited (${loc.line}:${loc.column} – \"${\n\t\t\t\t\tchunk.original\n\t\t\t\t}\")`\n\t\t\t);\n\t\t}\n\n\t\tconst newChunk = chunk.split(index);\n\n\t\tthis.byEnd[index] = chunk;\n\t\tthis.byStart[index] = newChunk;\n\t\tthis.byEnd[newChunk.end] = newChunk;\n\n\t\tif (chunk === this.lastChunk) this.lastChunk = newChunk;\n\n\t\tthis.lastSearchedChunk = chunk;\n\t\tif (DEBUG) this.stats.timeEnd('_split');\n\t\treturn true;\n\t}\n\n\ttoString() {\n\t\tlet str = this.intro;\n\n\t\tlet chunk = this.firstChunk;\n\t\twhile (chunk) {\n\t\t\tstr += chunk.toString();\n\t\t\tchunk = chunk.next;\n\t\t}\n\n\t\treturn str + this.outro;\n\t}\n\n\tisEmpty() {\n\t\tlet chunk = this.firstChunk;\n\t\tdo {\n\t\t\tif (chunk.intro.length && chunk.intro.trim() ||\n\t\t\t\t\tchunk.content.length && chunk.content.trim() ||\n\t\t\t\t\tchunk.outro.length && chunk.outro.trim())\n\t\t\t\treturn false;\n\t\t} while (chunk = chunk.next);\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\tlet chunk = this.firstChunk;\n\t\tlet length = 0;\n\t\tdo {\n\t\t\tlength += chunk.intro.length + chunk.content.length + chunk.outro.length;\n\t\t} while (chunk = chunk.next);\n\t\treturn length;\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimEndAborted(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tthis.outro = this.outro.replace(rx, '');\n\t\tif (this.outro.length) return true;\n\n\t\tlet chunk = this.lastChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimEnd(rx);\n\n\t\t\t// if chunk was trimmed, we have a new lastChunk\n\t\t\tif (chunk.end !== end) {\n\t\t\t\tif (this.lastChunk === chunk) {\n\t\t\t\t\tthis.lastChunk = chunk.next;\n\t\t\t\t}\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.previous;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimEnd(charType) {\n\t\tthis.trimEndAborted(charType);\n\t\treturn this;\n\t}\n\ttrimStartAborted(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\n\t\tthis.intro = this.intro.replace(rx, '');\n\t\tif (this.intro.length) return true;\n\n\t\tlet chunk = this.firstChunk;\n\n\t\tdo {\n\t\t\tconst end = chunk.end;\n\t\t\tconst aborted = chunk.trimStart(rx);\n\n\t\t\tif (chunk.end !== end) {\n\t\t\t\t// special case...\n\t\t\t\tif (chunk === this.lastChunk) this.lastChunk = chunk.next;\n\n\t\t\t\tthis.byEnd[chunk.end] = chunk;\n\t\t\t\tthis.byStart[chunk.next.start] = chunk.next;\n\t\t\t\tthis.byEnd[chunk.next.end] = chunk.next;\n\t\t\t}\n\n\t\t\tif (aborted) return true;\n\t\t\tchunk = chunk.next;\n\t\t} while (chunk);\n\n\t\treturn false;\n\t}\n\n\ttrimStart(charType) {\n\t\tthis.trimStartAborted(charType);\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport SourceMap from './SourceMap.js';\nimport getRelativePath from './utils/getRelativePath.js';\nimport isObject from './utils/isObject.js';\nimport getLocator from './utils/getLocator.js';\nimport Mappings from './utils/Mappings.js';\n\nconst hasOwnProp = Object.prototype.hasOwnProperty;\n\nexport default class Bundle {\n\tconstructor(options = {}) {\n\t\tthis.intro = options.intro || '';\n\t\tthis.separator = options.separator !== undefined ? options.separator : '\\n';\n\t\tthis.sources = [];\n\t\tthis.uniqueSources = [];\n\t\tthis.uniqueSourceIndexByFilename = {};\n\t}\n\n\taddSource(source) {\n\t\tif (source instanceof MagicString) {\n\t\t\treturn this.addSource({\n\t\t\t\tcontent: source,\n\t\t\t\tfilename: source.filename,\n\t\t\t\tseparator: this.separator\n\t\t\t});\n\t\t}\n\n\t\tif (!isObject(source) || !source.content) {\n\t\t\tthrow new Error('bundle.addSource() takes an object with a `content` property, which should be an instance of MagicString, and an optional `filename`');\n\t\t}\n\n\t\t['filename', 'indentExclusionRanges', 'separator'].forEach(option => {\n\t\t\tif (!hasOwnProp.call(source, option)) source[option] = source.content[option];\n\t\t});\n\n\t\tif (source.separator === undefined) {\n\t\t\t// TODO there's a bunch of this sort of thing, needs cleaning up\n\t\t\tsource.separator = this.separator;\n\t\t}\n\n\t\tif (source.filename) {\n\t\t\tif (!hasOwnProp.call(this.uniqueSourceIndexByFilename, source.filename)) {\n\t\t\t\tthis.uniqueSourceIndexByFilename[source.filename] = this.uniqueSources.length;\n\t\t\t\tthis.uniqueSources.push({ filename: source.filename, content: source.content.original });\n\t\t\t} else {\n\t\t\t\tconst uniqueSource = this.uniqueSources[this.uniqueSourceIndexByFilename[source.filename]];\n\t\t\t\tif (source.content.original !== uniqueSource.content) {\n\t\t\t\t\tthrow new Error(`Illegal source: same filename (${source.filename}), different contents`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tthis.sources.push(source);\n\t\treturn this;\n\t}\n\n\tappend(str, options) {\n\t\tthis.addSource({\n\t\t\tcontent: new MagicString(str),\n\t\t\tseparator: (options && options.separator) || ''\n\t\t});\n\n\t\treturn this;\n\t}\n\n\tclone() {\n\t\tconst bundle = new Bundle({\n\t\t\tintro: this.intro,\n\t\t\tseparator: this.separator\n\t\t});\n\n\t\tthis.sources.forEach(source => {\n\t\t\tbundle.addSource({\n\t\t\t\tfilename: source.filename,\n\t\t\t\tcontent: source.content.clone(),\n\t\t\t\tseparator: source.separator\n\t\t\t});\n\t\t});\n\n\t\treturn bundle;\n\t}\n\n\tgenerateDecodedMap(options = {}) {\n\t\tconst names = [];\n\t\tthis.sources.forEach(source => {\n\t\t\tObject.keys(source.content.storedNames).forEach(name => {\n\t\t\t\tif (!~names.indexOf(name)) names.push(name);\n\t\t\t});\n\t\t});\n\n\t\tconst mappings = new Mappings(options.hires);\n\n\t\tif (this.intro) {\n\t\t\tmappings.advance(this.intro);\n\t\t}\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tif (i > 0) {\n\t\t\t\tmappings.advance(this.separator);\n\t\t\t}\n\n\t\t\tconst sourceIndex = source.filename ? this.uniqueSourceIndexByFilename[source.filename] : -1;\n\t\t\tconst magicString = source.content;\n\t\t\tconst locate = getLocator(magicString.original);\n\n\t\t\tif (magicString.intro) {\n\t\t\t\tmappings.advance(magicString.intro);\n\t\t\t}\n\n\t\t\tmagicString.firstChunk.eachNext(chunk => {\n\t\t\t\tconst loc = locate(chunk.start);\n\n\t\t\t\tif (chunk.intro.length) mappings.advance(chunk.intro);\n\n\t\t\t\tif (source.filename) {\n\t\t\t\t\tif (chunk.edited) {\n\t\t\t\t\t\tmappings.addEdit(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk.content,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tchunk.storeName ? names.indexOf(chunk.original) : -1\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tmappings.addUneditedChunk(\n\t\t\t\t\t\t\tsourceIndex,\n\t\t\t\t\t\t\tchunk,\n\t\t\t\t\t\t\tmagicString.original,\n\t\t\t\t\t\t\tloc,\n\t\t\t\t\t\t\tmagicString.sourcemapLocations\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tmappings.advance(chunk.content);\n\t\t\t\t}\n\n\t\t\t\tif (chunk.outro.length) mappings.advance(chunk.outro);\n\t\t\t});\n\n\t\t\tif (magicString.outro) {\n\t\t\t\tmappings.advance(magicString.outro);\n\t\t\t}\n\t\t});\n\n\t\treturn {\n\t\t\tfile: options.file ? options.file.split(/[/\\\\]/).pop() : null,\n\t\t\tsources: this.uniqueSources.map(source => {\n\t\t\t\treturn options.file ? getRelativePath(options.file, source.filename) : source.filename;\n\t\t\t}),\n\t\t\tsourcesContent: this.uniqueSources.map(source => {\n\t\t\t\treturn options.includeContent ? source.content : null;\n\t\t\t}),\n\t\t\tnames,\n\t\t\tmappings: mappings.raw\n\t\t};\n\t}\n\n\tgenerateMap(options) {\n\t\treturn new SourceMap(this.generateDecodedMap(options));\n\t}\n\n\tgetIndentString() {\n\t\tconst indentStringCounts = {};\n\n\t\tthis.sources.forEach(source => {\n\t\t\tconst indentStr = source.content.indentStr;\n\n\t\t\tif (indentStr === null) return;\n\n\t\t\tif (!indentStringCounts[indentStr]) indentStringCounts[indentStr] = 0;\n\t\t\tindentStringCounts[indentStr] += 1;\n\t\t});\n\n\t\treturn (\n\t\t\tObject.keys(indentStringCounts).sort((a, b) => {\n\t\t\t\treturn indentStringCounts[a] - indentStringCounts[b];\n\t\t\t})[0] || '\\t'\n\t\t);\n\t}\n\n\tindent(indentStr) {\n\t\tif (!arguments.length) {\n\t\t\tindentStr = this.getIndentString();\n\t\t}\n\n\t\tif (indentStr === '') return this; // noop\n\n\t\tlet trailingNewline = !this.intro || this.intro.slice(-1) === '\\n';\n\n\t\tthis.sources.forEach((source, i) => {\n\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\tconst indentStart = trailingNewline || (i > 0 && /\\r?\\n$/.test(separator));\n\n\t\t\tsource.content.indent(indentStr, {\n\t\t\t\texclude: source.indentExclusionRanges,\n\t\t\t\tindentStart //: trailingNewline || /\\r?\\n$/.test( separator ) //true///\\r?\\n/.test( separator )\n\t\t\t});\n\n\t\t\ttrailingNewline = source.content.lastChar() === '\\n';\n\t\t});\n\n\t\tif (this.intro) {\n\t\t\tthis.intro =\n\t\t\t\tindentStr +\n\t\t\t\tthis.intro.replace(/^[^\\n]/gm, (match, index) => {\n\t\t\t\t\treturn index > 0 ? indentStr + match : match;\n\t\t\t\t});\n\t\t}\n\n\t\treturn this;\n\t}\n\n\tprepend(str) {\n\t\tthis.intro = str + this.intro;\n\t\treturn this;\n\t}\n\n\ttoString() {\n\t\tconst body = this.sources\n\t\t\t.map((source, i) => {\n\t\t\t\tconst separator = source.separator !== undefined ? source.separator : this.separator;\n\t\t\t\tconst str = (i > 0 ? separator : '') + source.content.toString();\n\n\t\t\t\treturn str;\n\t\t\t})\n\t\t\t.join('');\n\n\t\treturn this.intro + body;\n\t}\n\n\tisEmpty () {\n\t\tif (this.intro.length && this.intro.trim())\n\t\t\treturn false;\n\t\tif (this.sources.some(source => !source.content.isEmpty()))\n\t\t\treturn false;\n\t\treturn true;\n\t}\n\n\tlength() {\n\t\treturn this.sources.reduce((length, source) => length + source.content.length(), this.intro.length);\n\t}\n\n\ttrimLines() {\n\t\treturn this.trim('[\\\\r\\\\n]');\n\t}\n\n\ttrim(charType) {\n\t\treturn this.trimStart(charType).trimEnd(charType);\n\t}\n\n\ttrimStart(charType) {\n\t\tconst rx = new RegExp('^' + (charType || '\\\\s') + '+');\n\t\tthis.intro = this.intro.replace(rx, '');\n\n\t\tif (!this.intro) {\n\t\t\tlet source;\n\t\t\tlet i = 0;\n\n\t\t\tdo {\n\t\t\t\tsource = this.sources[i++];\n\t\t\t\tif (!source) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} while (!source.content.trimStartAborted(charType));\n\t\t}\n\n\t\treturn this;\n\t}\n\n\ttrimEnd(charType) {\n\t\tconst rx = new RegExp((charType || '\\\\s') + '+$');\n\n\t\tlet source;\n\t\tlet i = this.sources.length - 1;\n\n\t\tdo {\n\t\t\tsource = this.sources[i--];\n\t\t\tif (!source) {\n\t\t\t\tthis.intro = this.intro.replace(rx, '');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t} while (!source.content.trimEndAborted(charType));\n\n\t\treturn this;\n\t}\n}\n","import MagicString from './MagicString.js';\nimport Bundle from './Bundle.js';\nimport SourceMap from './SourceMap.js';\n\nMagicString.Bundle = Bundle;\nMagicString.SourceMap = SourceMap;\nMagicString.default = MagicString; // work around TypeScript bug https://github.com/Rich-Harris/magic-string/pull/121\n\nexport default MagicString;\n"],"names":["const","let","this"],"mappings":";;;;;;CAAe,IAAM,MAAM,GAC1B,eAAW,CAAC,GAAG,EAAE;EAChB,IAAI,CAAC,IAAI,GAAG,GAAG,YAAY,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;CAC3D,EAAC;;CAEF,iBAAC,oBAAI,CAAC,EAAE;EACN,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;CACpC,EAAC;;CAEF,iBAAC,oBAAI,CAAC,EAAE;EACP,OAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;CAChD,CAAC;;CCXa,IAAM,KAAK,GACzB,cAAW,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE;EAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;EACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;EACf,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;;EAExB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;EAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;;EAEhB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;EACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;EACvB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;;;EAGpB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;GAC9B,QAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;GAC1C,IAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;GACzC,CAAC,CAAC;CACJ,EAAC;;CAEF,gBAAC,kCAAW,OAAO,EAAE;EACnB,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;CACvB,EAAC;;CAEF,gBAAC,oCAAY,OAAO,EAAE;EACrB,IAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;CACnC,EAAC;;CAEF,gBAAC,0BAAQ;EACPA,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;EAE7D,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;EACzB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;EACzB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;EAC7B,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;EACjC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;;EAE5B,OAAQ,KAAK,CAAC;CACd,EAAC;;CAEF,gBAAC,8BAAS,KAAK,EAAE;EACf,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC;CAC/C,EAAC;;CAEF,gBAAC,8BAAS,EAAE,EAAE;EACZC,IAAI,KAAK,GAAG,IAAI,CAAC;EAClB,OAAQ,KAAK,EAAE;GACb,EAAE,CAAC,KAAK,CAAC,CAAC;GACV,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB;CACF,EAAC;;CAEF,gBAAC,sCAAa,EAAE,EAAE;EAChBA,IAAI,KAAK,GAAG,IAAI,CAAC;EAClB,OAAQ,KAAK,EAAE;GACb,EAAE,CAAC,KAAK,CAAC,CAAC;GACV,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;GACvB;CACF,EAAC;;CAEF,gBAAC,sBAAK,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE;EACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;EACxB,IAAK,CAAC,WAAW,EAAE;GACjB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;GAChB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;GAChB;EACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;;EAE3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;;EAEpB,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,gBAAC,oCAAY,OAAO,EAAE;EACrB,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;CACnC,EAAC;;CAEF,gBAAC,sCAAa,OAAO,EAAE;EACtB,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;CACnC,EAAC;;CAEF,gBAAC,wBAAM,KAAK,EAAE;EACb,IAAO,UAAU,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;;EAEtCD,IAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;EAC1DA,IAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;;EAEtD,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;;EAE/BA,IAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;EAC3D,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;EAC5B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;;EAEhB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;;EAEjB,IAAI,IAAI,CAAC,MAAM,EAAE;;GAEjB,QAAS,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;GACzB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;GAClB,MAAM;GACN,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC;GAC9B;;EAED,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;EAC1B,IAAI,QAAQ,CAAC,IAAI,IAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAC;EACrD,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;EACzB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;;EAEtB,OAAQ,QAAQ,CAAC;CACjB,EAAC;;CAEF,gBAAC,gCAAW;EACV,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;CAC/C,EAAC;;CAEF,gBAAC,4BAAQ,EAAE,EAAE;EACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;EAEnCA,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;EAE7C,IAAI,OAAO,CAAC,MAAM,EAAE;GACnB,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE;IAC9B,IAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAClE;GACF,OAAQ,IAAI,CAAC;;GAEZ,MAAM;GACP,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;;GAE/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;GACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;GACnC;CACF,EAAC;;CAEF,gBAAC,gCAAU,EAAE,EAAE;EACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;EAEnCA,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;EAE7C,IAAI,OAAO,CAAC,MAAM,EAAE;GACnB,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,EAAE;IAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC/B;GACF,OAAQ,IAAI,CAAC;;GAEZ,MAAM;GACP,IAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;;GAE/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;GACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;GACnC;CACF,CAAC;;CCzJF,IAAI,KAAK,GAAG,mEAAmE,CAAC;AAChF,CA0EA,SAAS,MAAM,CAAC,OAAO,EAAE;CACzB,IAAI,IAAI,eAAe,GAAG,CAAC,CAAC;CAC5B,IAAI,IAAI,cAAc,GAAG,CAAC,CAAC;CAC3B,IAAI,IAAI,gBAAgB,GAAG,CAAC,CAAC;CAC7B,IAAI,IAAI,SAAS,GAAG,CAAC,CAAC;CACtB,IAAI,IAAI,QAAQ,GAAG,EAAE,CAAC;CACtB,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC7C,QAAQ,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC9B,QAAQ,IAAI,CAAC,GAAG,CAAC;CACjB,YAAY,QAAQ,IAAI,GAAG,CAAC;CAC5B,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;CAC7B,YAAY,SAAS;CACrB,QAAQ,IAAI,mBAAmB,GAAG,CAAC,CAAC;CACpC,QAAQ,IAAI,YAAY,GAAG,EAAE,CAAC;CAC9B,QAAQ,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;CAClE,YAAY,IAAI,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;CACrC,YAAY,IAAI,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;CAClF,YAAY,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC7C,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;CACpC,gBAAgB,eAAe;CAC/B,oBAAoB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC;CAC/D,wBAAwB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;CAClE,wBAAwB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC;CACrE,gBAAgB,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC7C,gBAAgB,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC5C,gBAAgB,gBAAgB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC9C,aAAa;CACb,YAAY,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;CACtC,gBAAgB,eAAe,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;CACzE,gBAAgB,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvC,aAAa;CACb,YAAY,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;CAC/C,SAAS;CACT,QAAQ,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CAC3C,KAAK;CACL,IAAI,OAAO,QAAQ,CAAC;CACpB,CAAC;CACD,SAAS,aAAa,CAAC,GAAG,EAAE;CAC5B,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;CACpB,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;CAC/C,IAAI,GAAG;CACP,QAAQ,IAAI,OAAO,GAAG,GAAG,GAAG,EAAE,CAAC;CAC/B,QAAQ,GAAG,KAAK,CAAC,CAAC;CAClB,QAAQ,IAAI,GAAG,GAAG,CAAC,EAAE;CACrB,YAAY,OAAO,IAAI,EAAE,CAAC;CAC1B,SAAS;CACT,QAAQ,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;CACjC,KAAK,QAAQ,GAAG,GAAG,CAAC,EAAE;CACtB,IAAI,OAAO,MAAM,CAAC;CAClB,CAAC;;CC3HDC,IAAI,IAAI,eAAM;EACb,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;EAC3F,CAAC;CACF,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;EACvE,IAAI,aAAG,KAAI,SAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAC,CAAC;EAC7D,MAAM,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;EACxC,IAAI,aAAG,KAAI,SAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAC,CAAC;EAC3D;;CAEc,IAAM,SAAS,GAC7B,kBAAW,CAAC,UAAU,EAAE;EACvB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;EACjB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;EAC5B,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;EAClC,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC;EAChD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;EAC/B,IAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;CAC7C,EAAC;;CAEF,oBAAC,gCAAW;EACV,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;CAC7B,EAAC;;CAEF,oBAAC,0BAAQ;EACR,OAAQ,6CAA6C,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;CAC9E,CAAC;;CC3Ba,SAAS,WAAW,CAAC,IAAI,EAAE;EACzCD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;EAE/BA,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,WAAC,MAAK,SAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAC,CAAC,CAAC;EACvDA,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,WAAC,MAAK,SAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAC,CAAC,CAAC;;EAEzD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;GAC/C,OAAO,IAAI,CAAC;GACZ;;;;;EAKD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;GACnC,OAAO,IAAI,CAAC;GACZ;;;EAGDA,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,WAAE,QAAQ,EAAE,OAAO,EAAE;GAC7CA,IAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;GAChD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;GACrC,EAAE,QAAQ,CAAC,CAAC;;EAEb,OAAO,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EACpC;;CCxBc,SAAS,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE;EACjDA,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;EACtCA,IAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;;EAElC,SAAS,CAAC,GAAG,EAAE,CAAC;;EAEhB,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;GACnC,SAAS,CAAC,KAAK,EAAE,CAAC;GAClB,OAAO,CAAC,KAAK,EAAE,CAAC;GAChB;;EAED,IAAI,SAAS,CAAC,MAAM,EAAE;GACrBC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;GACzB,OAAO,CAAC,EAAE,IAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAC;GAChC;;EAED,OAAO,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;EAC3C;;CCjBDD,IAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;;AAE3C,CAAe,SAAS,QAAQ,CAAC,KAAK,EAAE;EACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,iBAAiB,CAAC;EAClD;;CCJc,SAAS,UAAU,CAAC,MAAM,EAAE;EAC1CA,IAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;EACzCA,IAAM,WAAW,GAAG,EAAE,CAAC;;EAEvB,KAAKC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;GACvD,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;GACtB,GAAG,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;GACnC;;EAED,OAAO,SAAS,MAAM,CAAC,KAAK,EAAE;GAC7BA,IAAI,CAAC,GAAG,CAAC,CAAC;GACVA,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;GAC3B,OAAO,CAAC,GAAG,CAAC,EAAE;IACbD,IAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,IAAI,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE;KAC3B,CAAC,GAAG,CAAC,CAAC;KACN,MAAM;KACN,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;KACV;IACD;GACDA,IAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;GACnBA,IAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;GACzC,OAAO,QAAE,IAAI,UAAE,MAAM,EAAE,CAAC;GACxB,CAAC;EACF;;CCxBc,IAAM,QAAQ,GAC5B,iBAAW,CAAC,KAAK,EAAE;EAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;EACnB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;EAC3B,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;EAC7B,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;EACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC;EACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;CACrB,EAAC;;CAEF,mBAAC,4BAAQ,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE;EAC7C,IAAI,OAAO,CAAC,MAAM,EAAE;GACnBA,IAAM,OAAO,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;GAC9E,IAAI,SAAS,IAAI,CAAC,EAAE;IACnB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxB;GACF,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;GAC/B,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;GACzB,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;GACpC;;EAED,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;EACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;CACrB,EAAC;;CAEF,mBAAC,8CAAiB,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,kBAAkB,EAAE;EACvEC,IAAI,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC;EACpCA,IAAI,KAAK,GAAG,IAAI,CAAC;;EAEjB,OAAO,iBAAiB,GAAG,KAAK,CAAC,GAAG,EAAE;GACrC,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;IACtE,IAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACrF;;GAED,IAAI,QAAQ,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAAE;IACzC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;IACd,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACzD,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC9B,KAAM,GAAG,IAAI,CAAC;IACb,MAAM;IACN,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAChB,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;IAC/B,KAAM,GAAG,KAAK,CAAC;IACd;;GAEF,iBAAkB,IAAI,CAAC,CAAC;GACvB;;EAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;CACrB,EAAC;;CAEF,mBAAC,4BAAQ,GAAG,EAAE;EACZ,IAAI,CAAC,GAAG,IAAE,SAAO;;EAElB,IAAO,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;;EAE9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;GACrB,KAAKA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;IAC1C,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IACzD;GACD,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;GAC7B;;EAED,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;CAC5D,CAAC;;CCzDFD,IAAM,CAAC,GAAG,IAAI,CAAC;;CAEfA,IAAM,MAAM,GAAG;EACd,UAAU,EAAE,KAAK;EACjB,WAAW,EAAE,KAAK;EAClB,SAAS,EAAE,KAAK;EAChB,CAAC;;CAEF,IAAqB,WAAW,GAC/B,oBAAW,CAAC,MAAM,EAAE,OAAY,EAAE;mCAAP,GAAG;;EAC7BA,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;EAElD,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;GAC9B,QAAS,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE;GACzD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;GACrD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;GACrD,UAAW,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;GACxD,SAAU,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;GACxD,iBAAkB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;GACxD,OAAQ,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;GACrD,KAAM,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;GACpD,QAAQ,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;GAClE,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,qBAAqB,EAAE;GAC/E,kBAAkB,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE,EAAE;GAC/D,WAAY,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;GACpD,SAAS,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE;GACrE,CAAC,CAAC;;EAMJ,IAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;EACzB,IAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;CACnC,EAAC;;CAEF,sBAAC,sDAAqB,IAAI,EAAE;EAC3B,IAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;CACnC,EAAC;;CAEF,sBAAC,0BAAO,OAAO,EAAE;EACf,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,GAAC;;EAEvF,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;EACvB,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,kCAAW,KAAK,EAAE,OAAO,EAAE;EAC1B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;EAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;EAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;EAEjC,IAAK,KAAK,EAAE;GACV,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;GAC1B,MAAM;GACN,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;GACtB;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;EAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;EAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;EAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;EAEnC,IAAK,KAAK,EAAE;GACV,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;GAC3B,MAAM;GACN,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC;GACtB;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,0BAAQ;EACPA,IAAM,MAAM,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;;EAE3EC,IAAI,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC;EACpCA,IAAI,WAAW,IAAI,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,iBAAiB,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;;EAE1F,OAAQ,aAAa,EAAE;GACtB,MAAO,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;GACjD,MAAO,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;;GAE5CD,IAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC;GAC9C,IAAO,eAAe,GAAG,iBAAiB,IAAI,iBAAiB,CAAC,KAAK,EAAE,CAAC;;GAExE,IAAK,eAAe,EAAE;IACpB,WAAW,CAAC,IAAI,GAAG,eAAe,CAAC;IACnC,eAAe,CAAC,QAAQ,GAAG,WAAW,CAAC;;IAExC,WAAY,GAAG,eAAe,CAAC;IAC9B;;GAEF,aAAc,GAAG,iBAAiB,CAAC;GAClC;;EAED,MAAM,CAAC,SAAS,GAAG,WAAW,CAAC;;EAE/B,IAAI,IAAI,CAAC,qBAAqB,EAAE;GAChC,MAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;GAClE;;EAEF,MAAO,CAAC,kBAAkB,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;;EAEhE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;EAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;;EAE3B,OAAQ,MAAM,CAAC;CACf,EAAC;;CAEF,sBAAC,kDAAmB,OAAO,EAAE;;;EAC3B,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;;EAExBA,IAAM,WAAW,GAAG,CAAC,CAAC;EACtBA,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;EAC7C,IAAO,QAAQ,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;EAE9C,IAAO,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;EAEzC,IAAI,IAAI,CAAC,KAAK,EAAE;GAChB,QAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;GAC7B;;EAEF,IAAK,CAAC,UAAU,CAAC,QAAQ,WAAC,OAAM;GAC/B,IAAO,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;GAEhC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;;GAEtD,IAAI,KAAK,CAAC,MAAM,EAAE;IAClB,QAAS,CAAC,OAAO;KACf,WAAW;KACZ,KAAM,CAAC,OAAO;KACb,GAAG;KACH,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;KACpD,CAAC;IACF,MAAM;IACN,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,EAAEE,MAAI,CAAC,QAAQ,EAAE,GAAG,EAAEA,MAAI,CAAC,kBAAkB,CAAC,CAAC;IAC3F;;GAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;GACtD,CAAC,CAAC;;EAEH,OAAO;GACN,IAAI,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI;GAC9D,OAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;GACtF,cAAc,EAAE,OAAO,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;GAClE,OAAC,KAAK;GACL,QAAQ,EAAE,QAAQ,CAAC,GAAG;GACtB,CAAC;CACH,EAAC;;CAEF,sBAAC,oCAAY,OAAO,EAAE;EACrB,OAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;CACxD,EAAC;;CAEF,sBAAC,8CAAkB;EACjB,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;CACxD,EAAC;;CAEF,sBAAC,0BAAO,SAAS,EAAE,OAAO,EAAE;EAC1BF,IAAM,OAAO,GAAG,YAAY,CAAC;;EAE7B,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE;GACzB,OAAQ,GAAG,SAAS,CAAC;GACrB,SAAU,GAAG,SAAS,CAAC;GACtB;;EAED,SAAS,GAAG,SAAS,KAAK,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;;EAEzE,IAAI,SAAS,KAAK,EAAE,IAAE,OAAO,IAAI,GAAC;;EAElC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;;;EAGxBA,IAAM,UAAU,GAAG,EAAE,CAAC;;EAEtB,IAAI,OAAO,CAAC,OAAO,EAAE;GACrB,IAAO,UAAU;IACf,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;GAC9E,UAAU,CAAC,OAAO,WAAC,WAAU;IAC7B,KAAMC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;KACpD,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;KACrB;IACD,CAAC,CAAC;GACH;;EAEF,IAAK,yBAAyB,GAAG,OAAO,CAAC,WAAW,KAAK,KAAK,CAAC;EAC9DD,IAAM,QAAQ,aAAG,OAAM;GACvB,IAAK,yBAAyB,IAAE,aAAU,SAAS,GAAG,KAAK,IAAG;GAC9D,yBAA0B,GAAG,IAAI,CAAC;GAClC,OAAQ,KAAK,CAAC;GACb,CAAC;;EAEF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;EAEnDC,IAAI,SAAS,GAAG,CAAC,CAAC;EAClBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;;EAE7B,OAAQ,KAAK,EAAE;GACbD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;;GAEtB,IAAI,KAAK,CAAC,MAAM,EAAE;IACjB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;KAC3B,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;KAEzD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;MACzB,yBAAyB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;MAC7E;KACD;IACD,MAAM;IACN,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;;IAExB,OAAO,SAAS,GAAG,GAAG,EAAE;KACvB,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;MAC5B,IAAO,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;;MAEtC,IAAI,IAAI,KAAK,IAAI,EAAE;OACnB,yBAA0B,GAAG,IAAI,CAAC;OACjC,MAAM,IAAI,IAAI,KAAK,IAAI,IAAI,yBAAyB,EAAE;OACvD,yBAA0B,GAAG,KAAK,CAAC;;OAElC,IAAI,SAAS,KAAK,KAAK,CAAC,KAAK,EAAE;QAC9B,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC9B,MAAM;QACP,IAAK,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACnC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACnB,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC9B;OACD;MACD;;KAEF,SAAU,IAAI,CAAC,CAAC;KACf;IACD;;GAED,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC;GACtB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB;;EAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;;EAEpD,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,4BAAS;EACR,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;CACpG,EAAC;;CAEF,sBAAC,kCAAW,KAAK,EAAE,OAAO,EAAE;EAC1B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;GACvB,OAAO,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;GACnG,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;GACzB;;EAEF,OAAQ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CACxC,EAAC;;CAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;EAC3B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;GACxB,OAAO,CAAC,IAAI,CAAC,uFAAuF,CAAC,CAAC;GACtG,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;GAC1B;;EAEF,OAAQ,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CAC1C,EAAC;;CAEF,sBAAC,sBAAK,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE;EACvB,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,GAAG,IAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,GAAC;;EAI7F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;EACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;EACjB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;EAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;EACnC,IAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;EAE7BA,IAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC;EAC/BA,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;;EAE5B,IAAO,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;EACrC,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,SAAS,IAAE,OAAO,IAAI,GAAC;EACtDA,IAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;;EAE/D,IAAK,OAAO,IAAE,OAAO,CAAC,IAAI,GAAG,QAAQ,GAAC;EACtC,IAAK,QAAQ,IAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,GAAC;;EAE3C,IAAK,OAAO,IAAE,OAAO,CAAC,IAAI,GAAG,KAAK,GAAC;EACnC,IAAK,QAAQ,IAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,GAAC;;EAEvC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAC;EACjD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;GACf,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;GAChC,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;GAC3B;;EAED,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;EACzB,IAAI,CAAC,IAAI,GAAG,QAAQ,IAAI,IAAI,CAAC;;EAE9B,IAAK,CAAC,OAAO,IAAE,IAAI,CAAC,UAAU,GAAG,KAAK,GAAC;EACvC,IAAK,CAAC,QAAQ,IAAE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAC;EAGtC,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,gCAAU,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE;EACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,GAAC;;EAE7F,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;EAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;EAE5C,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,GAAC;EACzE,IAAK,KAAK,KAAK,GAAG;GACjB,EAAC,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,GAAC;;EAIlG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;EACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;EAEjB,IAAI,OAAO,KAAK,IAAI,EAAE;GACrB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;IACtB,OAAO,CAAC,IAAI,CAAC,+HAA+H,CAAC,CAAC;IAC9I,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB;;GAED,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;GAC9B;EACDA,IAAM,SAAS,GAAG,OAAO,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;EACpEA,IAAM,WAAW,GAAG,OAAO,KAAK,SAAS,GAAG,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC;;EAEzE,IAAK,SAAS,EAAE;GACdA,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;GAClD,IAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;GAClC;;EAEF,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;EACnC,IAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;EAE9B,IAAK,KAAK,EAAE;GACV,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IAC9D,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACzD;;GAEF,KAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;;GAE5C,IAAI,KAAK,KAAK,IAAI,EAAE;IACnBC,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;IACvB,OAAO,KAAK,KAAK,IAAI,EAAE;KACvB,KAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;KACtB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;KACnB;;IAEF,KAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACtB;GACD,MAAM;;GAEP,IAAO,QAAQ,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;;;GAGpE,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;GACrB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;GACzB;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,4BAAQ,OAAO,EAAE;EAChB,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,GAAC;;EAExF,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EACnC,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,oCAAY,KAAK,EAAE,OAAO,EAAE;EAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;EAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;EAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;EAEjC,IAAK,KAAK,EAAE;GACV,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;GAC3B,MAAM;GACP,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;GAClC;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,sCAAa,KAAK,EAAE,OAAO,EAAE;EAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,GAAC;;EAI1F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;;EAEpB,IAAO,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;EAEnC,IAAK,KAAK,EAAE;GACV,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;GAC5B,MAAM;GACP,IAAK,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;GAClC;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,0BAAO,KAAK,EAAE,GAAG,EAAE;EAClB,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;EAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;EAE5C,IAAI,KAAK,KAAK,GAAG,IAAE,OAAO,IAAI,GAAC;;EAE/B,IAAI,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,GAAC;EAC5F,IAAK,KAAK,GAAG,GAAG,IAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,GAAC;;EAInE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;EACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;EAElB,IAAK,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;EAEjC,OAAQ,KAAK,EAAE;GACb,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;GACjB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;GACjB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;GAEf,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;GACzD;EAGF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,gCAAW;EACV,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;GACrB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;EAC1CA,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;EAC3B,GAAG;GACF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;IACtB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;GAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM;IACxB,EAAC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;GAChD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;IACtB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;GAC5C,QAAQ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE;EACjC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM;GACrB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAC;EAC3C,OAAQ,EAAE,CAAC;CACX,EAAC;;CAEF,sBAAC,gCAAW;EACVA,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;EAC1C,IAAI,SAAS,KAAK,CAAC,CAAC;GACpB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAC;EACzCA,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;EACzBA,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;EAC3B,GAAG;GACH,IAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;IAC5B,SAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,SAAS,KAAK,CAAC,CAAC;KACpB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;IACpD,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;IAChC;;GAEF,IAAK,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;IAC9B,SAAU,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,SAAS,KAAK,CAAC,CAAC;KACpB,EAAC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;IACtD,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAClC;;GAEF,IAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;IAC5B,SAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,SAAS,KAAK,CAAC,CAAC;KACpB,EAAC,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;IACpD,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;IAChC;GACD,QAAQ,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE;EAClC,SAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;EACtC,IAAI,SAAS,KAAK,CAAC,CAAC;GACpB,EAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,OAAO,GAAC;EACnD,OAAO,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;CAC7B,EAAC;;CAEF,sBAAC,wBAAM,KAAS,EAAE,GAA0B,EAAE;gCAAlC,GAAG;4BAAM,GAAG,IAAI,CAAC,QAAQ,CAAC;;EACpC,OAAO,KAAK,GAAG,CAAC,IAAE,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;EAChD,OAAO,GAAG,GAAG,CAAC,IAAE,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAC;;EAE5CA,IAAI,MAAM,GAAG,EAAE,CAAC;;;EAGhBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;EAC5B,OAAO,KAAK,KAAK,KAAK,CAAC,KAAK,GAAG,KAAK,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE;;GAE5D,IAAI,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,EAAE;IAC3C,OAAQ,MAAM,CAAC;IACd;;GAED,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB;;EAEF,IAAK,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK;GAClD,EAAC,MAAM,IAAI,KAAK,qCAAkC,KAAK,8BAA0B,GAAC;;EAElFD,IAAM,UAAU,GAAG,KAAK,CAAC;EAC1B,OAAQ,KAAK,EAAE;GACb,IAAI,KAAK,CAAC,KAAK,KAAK,UAAU,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE;IACnE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC;IACtB;;GAEDA,IAAM,WAAW,GAAG,KAAK,CAAC,KAAK,GAAG,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC;GAC3D,IAAK,WAAW,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG;IACpD,EAAC,MAAM,IAAI,KAAK,qCAAkC,GAAG,4BAAwB,GAAC;;GAE9EA,IAAM,UAAU,GAAG,UAAU,KAAK,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;GACnE,IAAO,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;;GAE7F,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;;GAEpD,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE;IACvD,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC;IACtB;;GAEF,IAAK,WAAW,EAAE;IAChB,MAAM;IACN;;GAED,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB;;EAEF,OAAQ,MAAM,CAAC;CACf,EAAC;;CAEF;CACA,sBAAC,sBAAK,KAAK,EAAE,GAAG,EAAE;EACjB,IAAO,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;EAC5B,KAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;EACvB,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;;EAE1C,OAAQ,KAAK,CAAC;CACd,EAAC;;CAEF,sBAAC,0BAAO,KAAK,EAAE;EACb,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAE,SAAO;;EAIrDC,IAAI,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC;EACpC,IAAO,aAAa,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC;;EAEzC,OAAQ,KAAK,EAAE;GACb,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,GAAC;;GAElE,KAAM,GAAG,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;GAC1E;CACF,EAAC;;CAEF,sBAAC,oCAAY,KAAK,EAAE,KAAK,EAAE;EAC1B,IAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE;;GAEzCD,IAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;GAC9C,MAAO,IAAI,KAAK;8DACwC,GAAG,CAAC,KAAI,UAAI,GAAG,CAAC,OAAM,cAC3E,KAAK,CAAC,SAAQ;IAEf,CAAC;GACF;;EAEF,IAAO,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;EAErC,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;EAC3B,IAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;EAChC,IAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;;EAEpC,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,IAAE,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAC;;EAExD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;EAEhC,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,gCAAW;EACVC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;;EAErBA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;EAC7B,OAAQ,KAAK,EAAE;GACb,GAAG,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;GACxB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB;;EAED,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;CACzB,EAAC;;CAEF,sBAAC,8BAAU;EACTA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;EAC5B,GAAG;GACF,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;KAC3C,KAAM,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;KAC7C,KAAM,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;IAC1C,EAAC,OAAO,KAAK,GAAC;GACd,QAAQ,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE;EAC9B,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,sBAAC,4BAAS;EACRA,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;EAC5BA,IAAI,MAAM,GAAG,CAAC,CAAC;EACf,GAAG;GACF,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;GACzE,QAAQ,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE;EAC9B,OAAQ,MAAM,CAAC;CACf,EAAC;;CAEF,sBAAC,kCAAY;EACX,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;CAC9B,EAAC;;CAEF,sBAAC,sBAAK,QAAQ,EAAE;EACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;CACnD,EAAC;;CAEF,sBAAC,0CAAe,QAAQ,EAAE;EACxBD,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC;;EAElD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;EAEnCC,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;;EAE3B,GAAG;GACFD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;GACvB,IAAO,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;;;GAGlC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;IACtB,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;KAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;KAC5B;;IAEF,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IACxC;;GAED,IAAI,OAAO,IAAE,OAAO,IAAI,GAAC;GACzB,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC;GACvB,QAAQ,KAAK,EAAE;;EAEjB,OAAQ,KAAK,CAAC;CACd,EAAC;;CAEF,sBAAC,4BAAQ,QAAQ,EAAE;EACjB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;EAC/B,OAAQ,IAAI,CAAC;CACb,EAAC;CACF,sBAAC,8CAAiB,QAAQ,EAAE;EAC1BA,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,QAAQ,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;;EAEvD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;EACzC,IAAK,IAAI,CAAC,KAAK,CAAC,MAAM,IAAE,OAAO,IAAI,GAAC;;EAEnCC,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;;EAE5B,GAAG;GACFD,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;GACvB,IAAO,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;;GAEpC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;;IAEtB,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,IAAE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,GAAC;;IAE3D,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;IACxC;;GAED,IAAI,OAAO,IAAE,OAAO,IAAI,GAAC;GACzB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;GACnB,QAAQ,KAAK,EAAE;;EAEjB,OAAQ,KAAK,CAAC;CACd,EAAC;;CAEF,sBAAC,gCAAU,QAAQ,EAAE;EACnB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;EACjC,OAAQ,IAAI,CAAC;CACb,CAAC;;CCvsBFA,IAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;;CAEpC,IAAM,MAAM,GAC1B,eAAW,CAAC,OAAY,EAAE;mCAAP,GAAG;;EACtB,IAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;EACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;EAC5E,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;EAClB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;EACxB,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;CACvC,EAAC;;CAEF,iBAAC,gCAAU,MAAM,EAAE;EACjB,IAAI,MAAM,YAAY,WAAW,EAAE;GAClC,OAAO,IAAI,CAAC,SAAS,CAAC;IACtB,OAAQ,EAAE,MAAM;IACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;IACzB,SAAS,EAAE,IAAI,CAAC,SAAS;IACzB,CAAC,CAAC;GACH;;EAEF,IAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;GACzC,MAAM,IAAI,KAAK,CAAC,sIAAsI,CAAC,CAAC;GACxJ;;EAED,CAAC,UAAU,EAAE,uBAAuB,EAAE,WAAW,CAAC,CAAC,OAAO,WAAC,QAAO;GAClE,IAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAC;GAC9E,CAAC,CAAC;;EAEH,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE;;GAEnC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;GAClC;;EAED,IAAI,MAAM,CAAC,QAAQ,EAAE;GACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;IACxE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IAC/E,IAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzF,MAAM;IACNA,IAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5F,IAAK,MAAM,CAAC,OAAO,CAAC,QAAQ,KAAK,YAAY,CAAC,OAAO,EAAE;KACtD,MAAO,IAAI,KAAK,uCAAmC,MAAM,CAAC,SAAQ,4BAAwB,CAAC;KAC1F;IACD;GACD;;EAEF,IAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;EAC3B,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,0BAAO,GAAG,EAAE,OAAO,EAAE;EACrB,IAAK,CAAC,SAAS,CAAC;GACd,OAAO,EAAE,IAAI,WAAW,CAAC,GAAG,CAAC;GAC9B,SAAU,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE;GAC/C,CAAC,CAAC;;EAEJ,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,0BAAQ;EACPA,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC;GACzB,KAAK,EAAE,IAAI,CAAC,KAAK;GACjB,SAAS,EAAE,IAAI,CAAC,SAAS;GACzB,CAAC,CAAC;;EAEJ,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;GAC5B,MAAO,CAAC,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;IACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;IAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;IAC3B,CAAC,CAAC;GACH,CAAC,CAAC;;EAEJ,OAAQ,MAAM,CAAC;CACf,EAAC;;CAEF,iBAAC,kDAAmB,OAAY,EAAE;;oCAAP,GAAG;;EAC5BA,IAAM,KAAK,GAAG,EAAE,CAAC;EAClB,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;GAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,WAAC,MAAK;IACpD,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAC;IAC5C,CAAC,CAAC;GACH,CAAC,CAAC;;EAEJ,IAAO,QAAQ,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;;EAE7C,IAAI,IAAI,CAAC,KAAK,EAAE;GAChB,QAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;GAC7B;;EAEF,IAAK,CAAC,OAAO,CAAC,OAAO,WAAE,MAAM,EAAE,CAAC,EAAE;GAChC,IAAI,CAAC,GAAG,CAAC,EAAE;IACX,QAAS,CAAC,OAAO,CAACE,MAAI,CAAC,SAAS,CAAC,CAAC;IACjC;;GAEDF,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,GAAGE,MAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;GAC7FF,IAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;GACpC,IAAO,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;;GAEhD,IAAI,WAAW,CAAC,KAAK,EAAE;IACvB,QAAS,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC;;GAEF,WAAY,CAAC,UAAU,CAAC,QAAQ,WAAC,OAAM;IACtC,IAAO,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;;IAEhC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;;IAEtD,IAAI,MAAM,CAAC,QAAQ,EAAE;KACpB,IAAI,KAAK,CAAC,MAAM,EAAE;MAClB,QAAS,CAAC,OAAO;OACf,WAAW;OACZ,KAAM,CAAC,OAAO;OACb,GAAG;OACH,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;OACpD,CAAC;MACF,MAAM;MACP,QAAS,CAAC,gBAAgB;OACxB,WAAW;OACX,KAAK;OACN,WAAY,CAAC,QAAQ;OACpB,GAAG;OACJ,WAAY,CAAC,kBAAkB;OAC9B,CAAC;MACF;KACD,MAAM;KACP,QAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAChC;;IAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAC;IACtD,CAAC,CAAC;;GAEH,IAAI,WAAW,CAAC,KAAK,EAAE;IACvB,QAAS,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC;GACD,CAAC,CAAC;;EAEH,OAAO;GACN,IAAI,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI;GAC9D,OAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,WAAC,QAAO;IACtC,OAAO,OAAO,CAAC,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;IACvF,CAAC;GACH,cAAe,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,WAAC,QAAO;IAC9C,OAAQ,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACtD,CAAC;GACH,OAAC,KAAK;GACL,QAAQ,EAAE,QAAQ,CAAC,GAAG;GACtB,CAAC;CACH,EAAC;;CAEF,iBAAC,oCAAY,OAAO,EAAE;EACrB,OAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;CACxD,EAAC;;CAEF,iBAAC,8CAAkB;EACjBA,IAAM,kBAAkB,GAAG,EAAE,CAAC;;EAE/B,IAAK,CAAC,OAAO,CAAC,OAAO,WAAC,QAAO;GAC5B,IAAO,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;;GAE3C,IAAI,SAAS,KAAK,IAAI,IAAE,SAAO;;GAE/B,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,GAAC;GACtE,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;GACnC,CAAC,CAAC;;EAEH;GACC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,WAAE,CAAC,EAAE,CAAC,EAAE;IAC5C,OAAQ,kBAAkB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI;IACZ;CACH,EAAC;;CAEF,iBAAC,0BAAO,SAAS,EAAE;;;EACjB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;GACtB,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;GACnC;;EAED,IAAI,SAAS,KAAK,EAAE,IAAE,OAAO,IAAI,GAAC;;EAEnC,IAAK,eAAe,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;;EAEpE,IAAK,CAAC,OAAO,CAAC,OAAO,WAAE,MAAM,EAAE,CAAC,EAAE;GAChCA,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,GAAGE,MAAI,CAAC,SAAS,CAAC;GACrFF,IAAM,WAAW,GAAG,eAAe,KAAK,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;;GAE3E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE;IAChC,OAAO,EAAE,MAAM,CAAC,qBAAqB;IACtC,aAAC,WAAW;IACX,CAAC,CAAC;;GAEJ,eAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC;GACrD,CAAC,CAAC;;EAEH,IAAI,IAAI,CAAC,KAAK,EAAE;GAChB,IAAK,CAAC,KAAK;IACT,SAAS;IACT,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,YAAG,KAAK,EAAE,KAAK,EAAE;KAC9C,OAAQ,KAAK,GAAG,CAAC,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,CAAC;KAC7C,CAAC,CAAC;GACJ;;EAEF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,4BAAQ,GAAG,EAAE;EACb,IAAK,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;EAC/B,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,gCAAW;;;EACVA,IAAM,IAAI,GAAG,IAAI,CAAC,OAAO;IACvB,GAAG,WAAE,MAAM,EAAE,CAAC,EAAE;IAChBA,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,GAAG,MAAM,CAAC,SAAS,GAAGE,MAAI,CAAC,SAAS,CAAC;IACtF,IAAO,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;;IAElE,OAAQ,GAAG,CAAC;IACX,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,CAAC;;EAEX,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;CAC1B,EAAC;;CAEF,iBAAC,OAAO,uBAAI;EACV,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;GAC1C,EAAC,OAAO,KAAK,GAAC;EACd,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,WAAC,QAAO,SAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,KAAE,CAAC;GAC1D,EAAC,OAAO,KAAK,GAAC;EACf,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,4BAAS;EACR,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,WAAE,MAAM,EAAE,MAAM,EAAE,SAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACrG,EAAC;;CAEF,iBAAC,kCAAY;EACX,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;CAC9B,EAAC;;CAEF,iBAAC,sBAAK,QAAQ,EAAE;EACd,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;CACnD,EAAC;;CAEF,iBAAC,gCAAU,QAAQ,EAAE;EACnBF,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,QAAQ,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;EACvD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;EAExC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;GACjB,IAAK,MAAM,CAAC;GACXC,IAAI,CAAC,GAAG,CAAC,CAAC;;GAEV,GAAG;IACH,MAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5B,IAAK,CAAC,MAAM,EAAE;KACZ,MAAM;KACN;IACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;GACrD;;EAEF,OAAQ,IAAI,CAAC;CACb,EAAC;;CAEF,iBAAC,4BAAQ,QAAQ,EAAE;EACjBD,IAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,QAAQ,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC;;EAEnD,IAAK,MAAM,CAAC;EACZ,IAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;;EAEhC,GAAG;GACH,MAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;GAC5B,IAAK,CAAC,MAAM,EAAE;IACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACxC,MAAM;IACN;GACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;;EAEpD,OAAQ,IAAI,CAAC;CACb,CAAC;;CCvRF,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;CAC5B,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;CAClC,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC;;;;;;;;"}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"_from": "magic-string@^0.25.2",
|
3
|
-
"_id": "magic-string@0.25.
|
3
|
+
"_id": "magic-string@0.25.7",
|
4
4
|
"_inBundle": false,
|
5
|
-
"_integrity": "sha512-
|
5
|
+
"_integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
|
6
6
|
"_location": "/magic-string",
|
7
7
|
"_phantomChildren": {},
|
8
8
|
"_requested": {
|
@@ -18,8 +18,8 @@
|
|
18
18
|
"_requiredBy": [
|
19
19
|
"/rollup-plugin-commonjs"
|
20
20
|
],
|
21
|
-
"_resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.
|
22
|
-
"_shasum": "
|
21
|
+
"_resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
|
22
|
+
"_shasum": "3f497d6fd34c669c6798dcb821f2ef31f5445051",
|
23
23
|
"_spec": "magic-string@^0.25.2",
|
24
24
|
"_where": "/Users/malomalo/Code/condenser/lib/condenser/processors/node_modules/rollup-plugin-commonjs",
|
25
25
|
"author": {
|
@@ -71,11 +71,12 @@
|
|
71
71
|
"build": "rollup -c",
|
72
72
|
"format": "prettier --single-quote --print-width 100 --use-tabs --write src/*.js src/**/*.js",
|
73
73
|
"lint": "eslint src test",
|
74
|
+
"prepare": "npm run build",
|
74
75
|
"prepublishOnly": "rm -rf dist && npm test",
|
75
76
|
"pretest": "npm run lint && npm run build",
|
76
77
|
"test": "mocha",
|
77
78
|
"watch": "rollup -cw"
|
78
79
|
},
|
79
80
|
"typings": "index.d.ts",
|
80
|
-
"version": "0.25.
|
81
|
+
"version": "0.25.7"
|
81
82
|
}
|
@@ -1,2 +1,2 @@
|
|
1
1
|
var argv = require('../')(process.argv.slice(2));
|
2
|
-
console.
|
2
|
+
console.log(argv);
|
@@ -68,12 +68,21 @@ module.exports = function (args, opts) {
|
|
68
68
|
|
69
69
|
function setKey (obj, keys, value) {
|
70
70
|
var o = obj;
|
71
|
-
keys.
|
71
|
+
for (var i = 0; i < keys.length-1; i++) {
|
72
|
+
var key = keys[i];
|
73
|
+
if (key === '__proto__') return;
|
72
74
|
if (o[key] === undefined) o[key] = {};
|
75
|
+
if (o[key] === Object.prototype || o[key] === Number.prototype
|
76
|
+
|| o[key] === String.prototype) o[key] = {};
|
77
|
+
if (o[key] === Array.prototype) o[key] = [];
|
73
78
|
o = o[key];
|
74
|
-
}
|
79
|
+
}
|
75
80
|
|
76
81
|
var key = keys[keys.length - 1];
|
82
|
+
if (key === '__proto__') return;
|
83
|
+
if (o === Object.prototype || o === Number.prototype
|
84
|
+
|| o === String.prototype) o = {};
|
85
|
+
if (o === Array.prototype) o = [];
|
77
86
|
if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
|
78
87
|
o[key] = value;
|
79
88
|
}
|
@@ -171,7 +180,7 @@ module.exports = function (args, opts) {
|
|
171
180
|
setArg(key, args[i+1], arg);
|
172
181
|
i++;
|
173
182
|
}
|
174
|
-
else if (args[i+1] &&
|
183
|
+
else if (args[i+1] && /^(true|false)$/.test(args[i+1])) {
|
175
184
|
setArg(key, args[i+1] === 'true', arg);
|
176
185
|
i++;
|
177
186
|
}
|
@@ -1,26 +1,26 @@
|
|
1
1
|
{
|
2
|
-
"_from": "minimist@^1.2.
|
3
|
-
"_id": "minimist@1.2.
|
2
|
+
"_from": "minimist@^1.2.5",
|
3
|
+
"_id": "minimist@1.2.5",
|
4
4
|
"_inBundle": false,
|
5
|
-
"_integrity": "
|
5
|
+
"_integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
|
6
6
|
"_location": "/minimist",
|
7
7
|
"_phantomChildren": {},
|
8
8
|
"_requested": {
|
9
9
|
"type": "range",
|
10
10
|
"registry": true,
|
11
|
-
"raw": "minimist@^1.2.
|
11
|
+
"raw": "minimist@^1.2.5",
|
12
12
|
"name": "minimist",
|
13
13
|
"escapedName": "minimist",
|
14
|
-
"rawSpec": "^1.2.
|
14
|
+
"rawSpec": "^1.2.5",
|
15
15
|
"saveSpec": null,
|
16
|
-
"fetchSpec": "^1.2.
|
16
|
+
"fetchSpec": "^1.2.5"
|
17
17
|
},
|
18
18
|
"_requiredBy": [
|
19
19
|
"/json5"
|
20
20
|
],
|
21
|
-
"_resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.
|
22
|
-
"_shasum": "
|
23
|
-
"_spec": "minimist@^1.2.
|
21
|
+
"_resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
22
|
+
"_shasum": "67d66014b66a6a8aaa0c083c5fd58df4e4e97602",
|
23
|
+
"_spec": "minimist@^1.2.5",
|
24
24
|
"_where": "/Users/malomalo/Code/condenser/lib/condenser/processors/node_modules/json5",
|
25
25
|
"author": {
|
26
26
|
"name": "James Halliday",
|
@@ -69,5 +69,5 @@
|
|
69
69
|
"opera/12"
|
70
70
|
]
|
71
71
|
},
|
72
|
-
"version": "1.2.
|
72
|
+
"version": "1.2.5"
|
73
73
|
}
|
@@ -5,15 +5,11 @@ parse argument options
|
|
5
5
|
This module is the guts of optimist's argument parser without all the
|
6
6
|
fanciful decoration.
|
7
7
|
|
8
|
-
[![browser support](https://ci.testling.com/substack/minimist.png)](http://ci.testling.com/substack/minimist)
|
9
|
-
|
10
|
-
[![build status](https://secure.travis-ci.org/substack/minimist.png)](http://travis-ci.org/substack/minimist)
|
11
|
-
|
12
8
|
# example
|
13
9
|
|
14
10
|
``` js
|
15
11
|
var argv = require('minimist')(process.argv.slice(2));
|
16
|
-
console.
|
12
|
+
console.log(argv);
|
17
13
|
```
|
18
14
|
|
19
15
|
```
|
@@ -33,6 +29,13 @@ $ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz
|
|
33
29
|
beep: 'boop' }
|
34
30
|
```
|
35
31
|
|
32
|
+
# security
|
33
|
+
|
34
|
+
Previous versions had a prototype pollution bug that could cause privilege
|
35
|
+
escalation in some circumstances when handling untrusted user input.
|
36
|
+
|
37
|
+
Please use version 1.2.3 or later: https://snyk.io/vuln/SNYK-JS-MINIMIST-559764
|
38
|
+
|
36
39
|
# methods
|
37
40
|
|
38
41
|
``` js
|
@@ -65,19 +68,20 @@ argument names to use as aliases
|
|
65
68
|
first non-option
|
66
69
|
* `opts['--']` - when true, populate `argv._` with everything before the `--`
|
67
70
|
and `argv['--']` with everything after the `--`. Here's an example:
|
71
|
+
|
72
|
+
```
|
73
|
+
> require('./')('one two three -- four five --six'.split(' '), { '--': true })
|
74
|
+
{ _: [ 'one', 'two', 'three' ],
|
75
|
+
'--': [ 'four', 'five', '--six' ] }
|
76
|
+
```
|
77
|
+
|
78
|
+
Note that with `opts['--']` set, parsing for arguments still stops after the
|
79
|
+
`--`.
|
80
|
+
|
68
81
|
* `opts.unknown` - a function which is invoked with a command line parameter not
|
69
82
|
defined in the `opts` configuration object. If the function returns `false`, the
|
70
83
|
unknown option is not added to `argv`.
|
71
84
|
|
72
|
-
```
|
73
|
-
> require('./')('one two three -- four five --six'.split(' '), { '--': true })
|
74
|
-
{ _: [ 'one', 'two', 'three' ],
|
75
|
-
'--': [ 'four', 'five', '--six' ] }
|
76
|
-
```
|
77
|
-
|
78
|
-
Note that with `opts['--']` set, parsing for arguments still stops after the
|
79
|
-
`--`.
|
80
|
-
|
81
85
|
# install
|
82
86
|
|
83
87
|
With [npm](https://npmjs.org) do:
|
@@ -164,3 +164,15 @@ test('boolean --boool=false', function (t) {
|
|
164
164
|
t.same(parsed.boool, false);
|
165
165
|
t.end();
|
166
166
|
});
|
167
|
+
|
168
|
+
test('boolean using something similar to true', function (t) {
|
169
|
+
var opts = { boolean: 'h' };
|
170
|
+
var result = parse(['-h', 'true.txt'], opts);
|
171
|
+
var expected = {
|
172
|
+
h: true,
|
173
|
+
'_': ['true.txt']
|
174
|
+
};
|
175
|
+
|
176
|
+
t.same(result, expected);
|
177
|
+
t.end();
|
178
|
+
});
|
@@ -0,0 +1,44 @@
|
|
1
|
+
var parse = require('../');
|
2
|
+
var test = require('tape');
|
3
|
+
|
4
|
+
test('proto pollution', function (t) {
|
5
|
+
var argv = parse(['--__proto__.x','123']);
|
6
|
+
t.equal({}.x, undefined);
|
7
|
+
t.equal(argv.__proto__.x, undefined);
|
8
|
+
t.equal(argv.x, undefined);
|
9
|
+
t.end();
|
10
|
+
});
|
11
|
+
|
12
|
+
test('proto pollution (array)', function (t) {
|
13
|
+
var argv = parse(['--x','4','--x','5','--x.__proto__.z','789']);
|
14
|
+
t.equal({}.z, undefined);
|
15
|
+
t.deepEqual(argv.x, [4,5]);
|
16
|
+
t.equal(argv.x.z, undefined);
|
17
|
+
t.equal(argv.x.__proto__.z, undefined);
|
18
|
+
t.end();
|
19
|
+
});
|
20
|
+
|
21
|
+
test('proto pollution (number)', function (t) {
|
22
|
+
var argv = parse(['--x','5','--x.__proto__.z','100']);
|
23
|
+
t.equal({}.z, undefined);
|
24
|
+
t.equal((4).z, undefined);
|
25
|
+
t.equal(argv.x, 5);
|
26
|
+
t.equal(argv.x.z, undefined);
|
27
|
+
t.end();
|
28
|
+
});
|
29
|
+
|
30
|
+
test('proto pollution (string)', function (t) {
|
31
|
+
var argv = parse(['--x','abc','--x.__proto__.z','def']);
|
32
|
+
t.equal({}.z, undefined);
|
33
|
+
t.equal('...'.z, undefined);
|
34
|
+
t.equal(argv.x, 'abc');
|
35
|
+
t.equal(argv.x.z, undefined);
|
36
|
+
t.end();
|
37
|
+
});
|
38
|
+
|
39
|
+
test('proto pollution (constructor)', function (t) {
|
40
|
+
var argv = parse(['--constructor.prototype.y','123']);
|
41
|
+
t.equal({}.y, undefined);
|
42
|
+
t.equal(argv.y, undefined);
|
43
|
+
t.end();
|
44
|
+
});
|
@@ -863,6 +863,13 @@
|
|
863
863
|
"lts": "Dubnium",
|
864
864
|
"security": true
|
865
865
|
},
|
866
|
+
{
|
867
|
+
"name": "nodejs",
|
868
|
+
"version": "10.19.0",
|
869
|
+
"date": "2020-02-05",
|
870
|
+
"lts": "Dubnium",
|
871
|
+
"security": true
|
872
|
+
},
|
866
873
|
{
|
867
874
|
"name": "nodejs",
|
868
875
|
"version": "11.0.0",
|
@@ -1080,6 +1087,20 @@
|
|
1080
1087
|
"lts": "Erbium",
|
1081
1088
|
"security": true
|
1082
1089
|
},
|
1090
|
+
{
|
1091
|
+
"name": "nodejs",
|
1092
|
+
"version": "12.15.0",
|
1093
|
+
"date": "2020-02-05",
|
1094
|
+
"lts": "Erbium",
|
1095
|
+
"security": true
|
1096
|
+
},
|
1097
|
+
{
|
1098
|
+
"name": "nodejs",
|
1099
|
+
"version": "12.16.0",
|
1100
|
+
"date": "2020-02-11",
|
1101
|
+
"lts": "Erbium",
|
1102
|
+
"security": false
|
1103
|
+
},
|
1083
1104
|
{
|
1084
1105
|
"name": "nodejs",
|
1085
1106
|
"version": "13.0.0",
|
@@ -1121,5 +1142,54 @@
|
|
1121
1142
|
"date": "2019-12-18",
|
1122
1143
|
"lts": false,
|
1123
1144
|
"security": false
|
1145
|
+
},
|
1146
|
+
{
|
1147
|
+
"name": "nodejs",
|
1148
|
+
"version": "13.6.0",
|
1149
|
+
"date": "2020-01-07",
|
1150
|
+
"lts": false,
|
1151
|
+
"security": false
|
1152
|
+
},
|
1153
|
+
{
|
1154
|
+
"name": "nodejs",
|
1155
|
+
"version": "13.7.0",
|
1156
|
+
"date": "2020-01-21",
|
1157
|
+
"lts": false,
|
1158
|
+
"security": false
|
1159
|
+
},
|
1160
|
+
{
|
1161
|
+
"name": "nodejs",
|
1162
|
+
"version": "13.8.0",
|
1163
|
+
"date": "2020-02-05",
|
1164
|
+
"lts": false,
|
1165
|
+
"security": true
|
1166
|
+
},
|
1167
|
+
{
|
1168
|
+
"name": "nodejs",
|
1169
|
+
"version": "13.9.0",
|
1170
|
+
"date": "2020-02-18",
|
1171
|
+
"lts": false,
|
1172
|
+
"security": false
|
1173
|
+
},
|
1174
|
+
{
|
1175
|
+
"name": "nodejs",
|
1176
|
+
"version": "13.10.0",
|
1177
|
+
"date": "2020-03-03",
|
1178
|
+
"lts": false,
|
1179
|
+
"security": false
|
1180
|
+
},
|
1181
|
+
{
|
1182
|
+
"name": "nodejs",
|
1183
|
+
"version": "13.11.0",
|
1184
|
+
"date": "2020-03-12",
|
1185
|
+
"lts": false,
|
1186
|
+
"security": false
|
1187
|
+
},
|
1188
|
+
{
|
1189
|
+
"name": "nodejs",
|
1190
|
+
"version": "13.12.0",
|
1191
|
+
"date": "2020-03-26",
|
1192
|
+
"lts": false,
|
1193
|
+
"security": false
|
1124
1194
|
}
|
1125
1195
|
]
|
@@ -1,4 +1,12 @@
|
|
1
1
|
[
|
2
|
+
{"version":"v13.12.0","date":"2020-03-26","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.14.4","v8":"7.9.317.25","uv":"1.35.0","zlib":"1.2.11","openssl":"1.1.1e","modules":"79","lts":false,"security":false},
|
3
|
+
{"version":"v13.11.0","date":"2020-03-12","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.7","v8":"7.9.317.25","uv":"1.34.2","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
4
|
+
{"version":"v13.10.1","date":"2020-03-04","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.7","v8":"7.9.317.25","uv":"1.34.2","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
5
|
+
{"version":"v13.10.0","date":"2020-03-03","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.7","v8":"7.9.317.25","uv":"1.34.2","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
6
|
+
{"version":"v13.9.0","date":"2020-02-18","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.7","v8":"7.9.317.25","uv":"1.34.2","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
7
|
+
{"version":"v13.8.0","date":"2020-02-05","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.6","v8":"7.9.317.25","uv":"1.34.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":true},
|
8
|
+
{"version":"v13.7.0","date":"2020-01-21","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.6","v8":"7.9.317.25","uv":"1.34.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
9
|
+
{"version":"v13.6.0","date":"2020-01-07","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.9.317.25","uv":"1.34.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
2
10
|
{"version":"v13.5.0","date":"2019-12-18","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.9.317.25","uv":"1.34.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
3
11
|
{"version":"v13.4.0","date":"2019-12-17","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.9.317.25","uv":"1.34.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":true},
|
4
12
|
{"version":"v13.3.0","date":"2019-12-03","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.1","v8":"7.9.317.25","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
@@ -6,6 +14,10 @@
|
|
6
14
|
{"version":"v13.1.0","date":"2019-11-05","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.12.1","v8":"7.8.279.17","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
7
15
|
{"version":"v13.0.1","date":"2019-10-23","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.12.0","v8":"7.8.279.17","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
8
16
|
{"version":"v13.0.0","date":"2019-10-10","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.12.0","v8":"7.8.279.17","uv":"1.32.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"79","lts":false,"security":false},
|
17
|
+
{"version":"v12.16.1","date":"2020-02-14","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.8.279.23","uv":"1.34.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":false},
|
18
|
+
{"version":"v12.16.0","date":"2020-02-11","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.8.279.23","uv":"1.34.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":false},
|
19
|
+
{"version":"v12.15.0","date":"2020-02-05","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.7.299.13","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":true},
|
20
|
+
{"version":"v12.14.1","date":"2020-01-07","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.7.299.13","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":false},
|
9
21
|
{"version":"v12.14.0","date":"2019-12-16","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"7.7.299.13","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":true},
|
10
22
|
{"version":"v12.13.1","date":"2019-11-19","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.12.1","v8":"7.7.299.13","uv":"1.33.1","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":false},
|
11
23
|
{"version":"v12.13.0","date":"2019-10-21","files":["aix-ppc64","headers","linux-arm64","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.12.0","v8":"7.7.299.13","uv":"1.32.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"72","lts":"Erbium","security":false},
|
@@ -43,6 +55,8 @@
|
|
43
55
|
{"version":"v11.2.0","date":"2018-11-15","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.4.1","v8":"7.0.276.38","uv":"1.23.2","zlib":"1.2.11","openssl":"1.1.0i","modules":"67","lts":false,"security":false},
|
44
56
|
{"version":"v11.1.0","date":"2018-10-30","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.4.1","v8":"7.0.276.32","uv":"1.23.2","zlib":"1.2.11","openssl":"1.1.0i","modules":"67","lts":false,"security":false},
|
45
57
|
{"version":"v11.0.0","date":"2018-10-23","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.4.1","v8":"7.0.276.28","uv":"1.23.2","zlib":"1.2.11","openssl":"1.1.0i","modules":"67","lts":false,"security":false},
|
58
|
+
{"version":"v10.19.0","date":"2020-02-05","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"6.8.275.32","uv":"1.28.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"64","lts":"Dubnium","security":true},
|
59
|
+
{"version":"v10.18.1","date":"2020-01-07","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"6.8.275.32","uv":"1.28.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"64","lts":"Dubnium","security":false},
|
46
60
|
{"version":"v10.18.0","date":"2019-12-16","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.13.4","v8":"6.8.275.32","uv":"1.28.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"64","lts":"Dubnium","security":true},
|
47
61
|
{"version":"v10.17.0","date":"2019-10-21","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.11.3","v8":"6.8.275.32","uv":"1.28.0","zlib":"1.2.11","openssl":"1.1.1d","modules":"64","lts":"Dubnium","security":false},
|
48
62
|
{"version":"v10.16.3","date":"2019-08-15","files":["aix-ppc64","headers","linux-arm64","linux-armv6l","linux-armv7l","linux-ppc64le","linux-s390x","linux-x64","osx-x64-pkg","osx-x64-tar","src","sunos-x64","win-x64-7z","win-x64-exe","win-x64-msi","win-x64-zip","win-x86-7z","win-x86-exe","win-x86-msi","win-x86-zip"],"npm":"6.9.0","v8":"6.8.275.32","uv":"1.28.0","zlib":"1.2.11","openssl":"1.1.1c","modules":"64","lts":"Dubnium","security":true},
|