From 7a6a35964b6afb45316336b5625f6047784318c9 Mon Sep 17 00:00:00 2001 From: sanex3339 Date: Fri, 31 Jan 2020 22:30:19 +0300 Subject: [PATCH] Migration from tslint on eslint #2 --- .eslintrc.js | 73 +++-- dist/index.browser.js | 8 +- dist/index.cli.js | 2 +- dist/index.js | 2 +- src/ASTParserFacade.ts | 10 +- src/JavaScriptObfuscatorFacade.ts | 2 +- .../FunctionExpressionCalleeDataExtractor.ts | 2 +- .../PrevailingKindOfVariablesAnalyzer.ts | 2 +- src/analyzers/scope-analyzer/ScopeAnalyzer.ts | 2 +- src/cli/JavaScriptObfuscatorCLI.ts | 6 +- src/cli/sanitizers/ArraySanitizer.ts | 2 +- src/container/InversifyContainerFacade.ts | 8 +- .../modules/custom-nodes/CustomNodesModule.ts | 2 +- .../modules/generators/GeneratorsModule.ts | 2 +- .../PreparingTransformersModule.ts | 2 +- .../modules/storages/StoragesModule.ts | 2 +- src/custom-nodes/AbstractCustomNode.ts | 20 +- src/custom-nodes/AbstractCustomNodeGroup.ts | 36 +-- ...allExpressionControlFlowStorageCallNode.ts | 2 +- .../domain-lock-nodes/DomainLockNode.ts | 2 +- src/decorators/Initializable.ts | 8 +- .../AbstractIdentifierNamesGenerator.ts | 24 +- src/logger/Logger.ts | 2 +- src/node-transformers/TransformersRunner.ts | 4 +- .../BlockStatementControlFlowTransformer.ts | 2 +- .../FunctionControlFlowTransformer.ts | 2 +- .../AbstractControlFlowReplacer.ts | 16 +- .../CallExpressionControlFlowReplacer.ts | 2 +- ...pressionWithOperatorControlFlowReplacer.ts | 2 +- .../StringLiteralControlFlowReplacer.ts | 2 +- .../MemberExpressionTransformer.ts | 2 +- .../MethodDefinitionTransformer.ts | 2 +- .../ObjectExpressionKeysTransformer.ts | 2 +- .../ObjectExpressionTransformer.ts | 2 +- .../SplitStringTransformer.ts | 2 +- .../TemplateLiteralTransformer.ts | 6 +- ...xpressionToVariableDeclarationExtractor.ts | 6 +- .../DeadCodeInjectionTransformer.ts | 12 +- .../LabeledStatementTransformer.ts | 2 +- .../LiteralTransformer.ts | 4 +- .../ScopeIdentifiersTransformer.ts | 2 +- .../CommentsTransformer.ts | 6 +- .../CustomNodesTransformer.ts | 4 +- .../EvalCallExpressionTransformer.ts | 6 +- .../MetadataTransformer.ts | 2 +- .../ObfuscatingGuardsTransformer.ts | 2 +- .../ParentificationTransformer.ts | 2 +- .../VariablePreserveTransformer.ts | 4 +- src/node/NodeMetadata.ts | 2 +- src/node/NodeUtils.ts | 2 +- src/options/ValidationErrorsFormatter.ts | 4 +- .../IsAllowedForObfuscationTargets.ts | 2 +- .../CustomNodeGroupStorage.ts | 8 +- .../SelfDefendingTemplate.ts | 4 +- .../SelfDefendingTemplate.ts | 4 +- .../SelfDefendingTemplate.ts | 2 +- src/utils/ArrayUtils.ts | 2 +- src/utils/CryptUtils.ts | 4 +- .../NodeTransformerNamesGroupsBuilder.ts | 2 +- tslint.json | 259 ------------------ 60 files changed, 195 insertions(+), 419 deletions(-) delete mode 100644 tslint.json diff --git a/.eslintrc.js b/.eslintrc.js index b37ada2ff..4f35c4f64 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -18,18 +18,42 @@ module.exports = { ], "rules": { "@typescript-eslint/adjacent-overload-signatures": "error", - "@typescript-eslint/array-type": "error", + "@typescript-eslint/array-type": [ + "error", + { + "default": "array" + } + ], "@typescript-eslint/await-thenable": "error", + "@typescript-eslint/ban-ts-comment": "error", "@typescript-eslint/ban-types": "error", + "@typescript-eslint/brace-style": [ + "error", + "1tbs", + { + "allowSingleLine": true + } + ], + "@typescript-eslint/camelcase": "off", "@typescript-eslint/class-name-casing": "error", - "@typescript-eslint/consistent-type-assertions": "off", + "@typescript-eslint/comma-spacing": "error", + "@typescript-eslint/consistent-type-assertions": [ + "error", + { + "assertionStyle": "angle-bracket" + } + ], "@typescript-eslint/consistent-type-definitions": "error", + "@typescript-eslint/default-param-last": "error", + "@typescript-eslint/explicit-function-return-type": "error", "@typescript-eslint/explicit-member-accessibility": [ "error", { "accessibility": "explicit" } ], + "@typescript-eslint/explicit-module-boundary-types": "error", + "@typescript-eslint/func-call-spacing": "error", "@typescript-eslint/indent": [ "off", 4 @@ -51,15 +75,18 @@ module.exports = { } } ], - "@typescript-eslint/member-ordering": "off", + "@typescript-eslint/member-ordering": "error", "@typescript-eslint/no-empty-function": "off", "@typescript-eslint/no-empty-interface": "error", "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-extra-parens": "off", "@typescript-eslint/no-floating-promises": "error", "@typescript-eslint/no-for-in-array": "error", "@typescript-eslint/no-inferrable-types": "off", + "@typescript-eslint/no-magic-numbers": "off", "@typescript-eslint/no-misused-new": "error", "@typescript-eslint/no-namespace": "error", + "@typescript-eslint/no-non-null-asserted-optional-chain": "error", "@typescript-eslint/no-non-null-assertion": "error", "@typescript-eslint/no-param-reassign": "off", "@typescript-eslint/no-parameter-properties": "error", @@ -68,33 +95,41 @@ module.exports = { "@typescript-eslint/no-unnecessary-qualifier": "error", "@typescript-eslint/no-unnecessary-type-arguments": "error", "@typescript-eslint/no-unnecessary-type-assertion": "error", + "@typescript-eslint/no-unused-expressions": "error", "@typescript-eslint/no-use-before-define": "off", "@typescript-eslint/no-var-requires": "error", "@typescript-eslint/prefer-for-of": "error", "@typescript-eslint/prefer-function-type": "error", "@typescript-eslint/prefer-namespace-keyword": "error", + "@typescript-eslint/prefer-nullish-coalescing": "error", + "@typescript-eslint/prefer-optional-chain": "error", "@typescript-eslint/prefer-readonly": "error", "@typescript-eslint/promise-function-async": "error", - "@typescript-eslint/quotes": "off", + "@typescript-eslint/quotes": [ + "error", + "single" + ], + "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/restrict-plus-operands": "error", "@typescript-eslint/semi": [ "error", "always" ], + "@typescript-eslint/space-before-function-paren": "error", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/triple-slash-reference": "error", "@typescript-eslint/type-annotation-spacing": "error", + "@typescript-eslint/typedef": "error", "@typescript-eslint/unified-signatures": "error", "arrow-body-style": "off", "arrow-parens": [ "off", "as-needed" ], - "camelcase": "off", - "capitalized-comments": [ - "off" - ], + "brace-style": "off", + "capitalized-comments": "off", "comma-dangle": "off", + "comma-spacing": "off", "complexity": [ "error", { @@ -110,17 +145,17 @@ module.exports = { "error", "smart" ], + "func-call-spacing": "off", "guard-for-in": "error", "id-blacklist": "off", "id-match": "off", "import/no-default-export": "error", - "import/no-deprecated": "off", - "import/no-extraneous-dependencies": "off", + "import/no-deprecated": "error", + "import/no-extraneous-dependencies": "error", "import/no-internal-modules": "error", "import/no-unassigned-import": "off", - "import/order": [ - "off" - ], + "import/order": "off", + "indent": "off", "jsdoc/no-types": "off", "linebreak-style": "error", "max-classes-per-file": [ @@ -171,13 +206,14 @@ module.exports = { "no-empty": "off", "no-eval": "off", "no-extra-bind": "error", + "no-extra-parens": "off", "no-extra-semi": "error", - "no-fallthrough": "off", + "no-fallthrough": "error", "no-invalid-regexp": "error", "no-invalid-this": "off", "no-irregular-whitespace": "error", "no-magic-numbers": "off", - "no-multi-str": "off", + "no-multi-str": "error", "no-multiple-empty-lines": "error", "no-new-wrappers": "error", "no-null/no-null": "off", @@ -228,14 +264,15 @@ module.exports = { ], "prefer-arrow/prefer-arrow-functions": "off", "prefer-const": "error", - "prefer-object-spread": "off", + "prefer-object-spread": "error", "prefer-template": "error", "quote-props": [ "error", "as-needed" ], + "quotes": "off", "radix": "error", - "space-before-function-paren": "error", + "space-before-function-paren": "off", "spaced-comment": "error", "space-in-parens": [ "error", @@ -254,7 +291,7 @@ module.exports = { "unicorn/prefer-starts-ends-with": "error", "unicorn/prefer-trim-start-end": "error", "use-isnan": "error", - "valid-typeof": "off", + "valid-typeof": "error", "yoda": "error" } }; diff --git a/dist/index.browser.js b/dist/index.browser.js index d4adb0e15..1d68bb7fb 100644 --- a/dist/index.browser.js +++ b/dist/index.browser.js @@ -21,7 +21,7 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.JavaScriptObfuscator=t():e.JavaScriptObfuscator=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=110)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11);t.METADATA_KEY=r;var o=n(112);t.Container=o.Container;var i=n(14);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(128);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(129);t.injectable=s.injectable;var u=n(130);t.tagged=u.tagged;var d=n(131);t.named=d.named;var l=n(69);t.inject=l.inject,t.LazyServiceIdentifer=l.LazyServiceIdentifer;var c=n(132);t.optional=c.optional;var p=n(133);t.unmanaged=p.unmanaged;var g=n(134);t.multiInject=g.multiInject;var h=n(135);t.targetName=h.targetName;var f=n(136);t.postConstruct=f.postConstruct;var m=n(67);t.MetadataReader=m.MetadataReader;var b=n(21);t.id=b.id;var y=n(18);t.decorate=y.decorate;var S=n(72);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var _=n(30);t.getServiceIdentifierAsString=_.getServiceIdentifierAsString;var C=n(137);t.multiBindToService=C.multiBindToService},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Factory__ICalleeDataExtractor="Factory",e.Factory__IControlFlowCustomNode="Factory",e.Factory__IControlFlowReplacer="Factory",e.Factory__ICustomNode="Factory",e.Factory__ICustomNodeGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomNodeFormatter="ICustomNodeFormatter",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions",e.TStringArrayStorage="TStringArrayStorage"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!("string"==typeof e||e instanceof String)){var t;throw t=null===e?"null":"object"===(t=r(e))&&e.constructor&&e.constructor.hasOwnProperty("name")?e.constructor.name:"a ".concat(t),new TypeError("Expected string but received ".concat(t,"."))}},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(37);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===r.NodeType.AssignmentExpression}static isAssignmentPatternNode(e){return e.type===r.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===r.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===r.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===r.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===r.NodeType.CallExpression}static isClassDeclarationNode(e){return e.type===r.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===r.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===r.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===r.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===r.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return o.isFunctionDeclarationNode(e)||o.isFunctionExpressionNode(e)||o.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===r.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===r.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===r.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===r.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===r.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const n=o.isLabeledStatementNode(t)&&t.label===e,r=o.isContinueStatementNode(t)&&t.label===e,i=o.isBreakStatementNode(t)&&t.label===e;return n||r||i}static isLabeledStatementNode(e){return e.type===r.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===r.NodeType.Literal}static isMemberExpressionNode(e){return e.type===r.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===r.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return o.isProgramNode(e)||o.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return o.isNodeWithLexicalScope(e)||o.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return o.isProgramNode(e)||o.isBlockStatementNode(e)&&o.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return o.isProgramNode(e)||o.isBlockStatementNode(e)||o.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===r.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===r.NodeType.ObjectExpression}static isProgramNode(e){return e.type===r.NodeType.Program}static isPropertyNode(e){return e.type===r.NodeType.Property}static parentNodeIsPropertyNode(e,t){return o.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return o.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return o.isMethodDefinitionNode(t)&&!t.computed}static isRestElementNode(e){return e.type===r.NodeType.RestElement}static isReturnStatementNode(e){return e.type===r.NodeType.ReturnStatement}static isSuperNode(e){return e.type===r.NodeType.Super}static isSwitchCaseNode(e){return e.type===r.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===r.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===r.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===r.NodeType.UnaryExpression}static isUseStrictOperator(e){return o.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===r.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===r.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===r.NodeType.WhileStatement}}t.NodeGuards=o,o.nodesWithLexicalStatements=[r.NodeType.ArrowFunctionExpression,r.NodeType.FunctionDeclaration,r.NodeType.FunctionExpression,r.NodeType.MethodDefinition]},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(56)),i=r(n(7)),a=n(53),s=n(83),u=n(3),d=n(16);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:o.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse({sourceCode:e},{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),u.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+o.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return u.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=t||e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(n=>{if("parentNode"===n)return;const r=e[n];let o;o=null===r||r instanceof RegExp?r:Array.isArray(r)?r.map(l.cloneRecursive):"object"==typeof r?l.cloneRecursive(r):r,t[n]=o}),t}}t.NodeUtils=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r={configurable:!0,enumerable:!0};function o(e,t,n){Reflect.hasMetadata(e,n)||Reflect.defineMetadata(e,t,n)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(n,i)=>{const a=n[e];if(!a||"function"!=typeof a)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return o("_initialized",!1,n),o("_initializablePropertiesSet",new Set,n),o("_wrappedMethodsSet",new Set,n),function(e,t){const n=Object.getOwnPropertyNames(e),o=[t,"constructor"];n.forEach(n=>{const i=Reflect.getMetadata("_initializablePropertiesSet",e),a=Reflect.getMetadata("_wrappedMethodsSet",e);if(o.includes(n)||i.has(n)||a.has(n))return;if("function"!=typeof e[n])return;const s=Object.getOwnPropertyDescriptor(e,n)||r,u=s.value;Object.defineProperty(e,n,Object.assign(Object.assign({},s),{value:function(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return u.apply(this,arguments)}})),a.add(n)})}(n,e),function(e,t,n){const o=Object.getOwnPropertyDescriptor(e,t)||r,i=o.value;Object.defineProperty(e,t,Object.assign(Object.assign({},o),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=i.apply(this,arguments);return this[n],e}}))}(n,e,i),function(e,t){Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const n=`_${t.toString()}`,o=Object.getOwnPropertyDescriptor(e,n)||r;return Object.defineProperty(e,t,Object.assign(Object.assign({},o),{get:function(){if(void 0===this[n])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[n]},set:function(e){this[n]=e}})),o}(n,i)}}},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(56)),i=n(37);class a{static programNode(e=[]){return{type:i.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:i.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,n){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,n){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:i.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:i.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:i.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:i.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:i.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:i.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,n){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:n,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:i.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,n){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},n&&{alternate:n}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,n){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,n=!1){return{type:i.NodeType.MemberExpression,computed:n,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,n,r){return{type:i.NodeType.MethodDefinition,key:e,value:t,kind:n,computed:r,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,n=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:n,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:i.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:i.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:i.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,n=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:n,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:i.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:i.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:i.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:i.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,n){!function e(t){"use strict";var r,o,i,a,s,u;function d(e){var t,n,r={};for(t in e)e.hasOwnProperty(t)&&(n=e[t],r[t]="object"==typeof n&&null!==n?d(n):n);return r}function l(e,t){this.parent=e,this.key=t}function c(e,t,n,r){this.node=e,this.path=t,this.wrap=n,this.ref=r}function p(){}function g(e){return null!=e&&("object"==typeof e&&"string"==typeof e.type)}function h(e,t){return(e===r.ObjectExpression||e===r.ObjectPattern)&&"properties"===t}function f(e,t){return(new p).traverse(e,t)}function m(e,t){var n;return n=function(e,t){var n,r,o,i;for(r=e.length,o=0;r;)t(e[i=o+(n=r>>>1)])?r=n:(o=i+1,r-=n+1);return o}(t,(function(t){return t.range[0]>e.range[0]})),e.extendedRange=[e.range[0],e.range[1]],n!==t.length&&(e.extendedRange[1]=t[n].range[0]),(n-=1)>=0&&(e.extendedRange[0]=t[n].range[1]),e}return r={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},i={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],Program:["body"],Property:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},o={Break:a={},Skip:s={},Remove:u={}},l.prototype.replace=function(e){this.parent[this.key]=e},l.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)},p.prototype.path=function(){var e,t,n,r,o;function i(e,t){if(Array.isArray(t))for(n=0,r=t.length;n=0;)if(b=i[l=m[p]])if(Array.isArray(b)){for(f=b.length;(f-=1)>=0;)if(b[f]){if(h(u,m[p]))o=new c(b[f],[l,f],"Property",null);else{if(!g(b[f]))continue;o=new c(b[f],[l,f],null,null)}n.push(o)}}else g(b)&&n.push(new c(b,l,null,null))}}else if(o=r.pop(),d=this.__execute(t.leave,o),this.__state===a||d===a)return},p.prototype.replace=function(e,t){var n,r,o,i,d,p,f,m,b,y,S,_,C;function N(e){var t,r,o,i;if(e.ref.remove())for(r=e.ref.key,i=e.ref.parent,t=n.length;t--;)if((o=n[t]).ref&&o.ref.parent===i){if(o.ref.key=0;)if(y=o[C=b[f]])if(Array.isArray(y)){for(m=y.length;(m-=1)>=0;)if(y[m]){if(h(i,b[f]))p=new c(y[m],[C,m],"Property",new l(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[C,m],null,new l(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,C,null,new l(o,C)))}}else if(p=r.pop(),void 0!==(d=this.__execute(t.leave,p))&&d!==a&&d!==s&&d!==u&&p.ref.replace(d),this.__state!==u&&d!==u||N(p),this.__state===a||d===a)return _.root;return _.root},t.version=n(140).version,t.Syntax=r,t.traverse=f,t.replace=function(e,t){return(new p).replace(e,t)},t.attachComments=function(e,t,n){var r,i,a,s,u=[];if(!e.range)throw new Error("attachComments needs range information");if(!n.length){if(t.length){for(a=0,i=t.length;ae.range[0]);)t.extendedRange[1]===e.range[0]?(e.leadingComments||(e.leadingComments=[]),e.leadingComments.push(t),u.splice(s,1)):s+=1;return s===u.length?o.Break:u[s].extendedRange[0]>e.range[1]?o.Skip:void 0}}),s=0,f(e,{leave:function(e){for(var t;se.range[1]?o.Skip:void 0}}),e},t.VisitorKeys=i,t.VisitorOption=o,t.Controller=p,t.cloneEnvironment=function(){return e({})},t}(t)},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(201),l=n(202);let c=r=class{constructor(e,t,n,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.customNodeFormatter=t,this.randomGenerator=n,this.options=r}getNode(){if(!this.cachedNode){const e=this.getNodeTemplate();this.cachedNode=this.customNodeFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}getNodeTemplate(){return""}};c.globalVariableTemplateFunctions=[d.GlobalVariableTemplate1(),l.GlobalVariableTemplate2()],c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),a(1,s.inject(u.ServiceIdentifiers.ICustomNodeFormatter)),a(2,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(3,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object])],c),t.AbstractCustomNode=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Initializing="Initializing",e.Preparing="Preparing",e.DeadCodeInjection="DeadCodeInjection",e.ControlFlowFlattening="ControlFlowFlattening",e.Converting="Converting",e.Obfuscating="Obfuscating",e.Finalizing="Finalizing"}(t.TransformationStage||(t.TransformationStage={}))},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t){this.randomGenerator=e,this.options=t}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],u),t.AbstractNodeTransformer=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NAMED_TAG="named",t.NAME_TAG="name",t.UNMANAGED_TAG="unmanaged",t.OPTIONAL_TAG="optional",t.INJECT_TAG="inject",t.MULTI_INJECT_TAG="multi_inject",t.TAGGED="inversify:tagged",t.TAGGED_PROP="inversify:tagged_props",t.PARAM_TYPES="inversify:paramtypes",t.DESIGN_PARAM_TYPES="design:paramtypes",t.POST_CONSTRUCT="post_construct"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",t.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",t.NULL_ARGUMENT="NULL argument",t.KEY_NOT_FOUND="Key Not Found",t.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",t.CANNOT_UNBIND="Could not unbind serviceIdentifier:",t.NOT_REGISTERED="No matching bindings found for serviceIdentifier:",t.MISSING_INJECTABLE_ANNOTATION="Missing required @injectable annotation in:",t.MISSING_INJECT_ANNOTATION="Missing required @inject or @multiInject annotation in:",t.UNDEFINED_INJECT_ANNOTATION=function(e){return"@inject called with undefined this could mean that the class "+e+" has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation."},t.CIRCULAR_DEPENDENCY="Circular dependency found:",t.NOT_IMPLEMENTED="Sorry, this feature is not fully implemented yet.",t.INVALID_BINDING_TYPE="Invalid binding type:",t.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",t.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",t.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!",t.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",t.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",t.ARGUMENTS_LENGTH_MISMATCH=function(){for(var e=[],t=0;t= than the number of constructor arguments of its base class."},t.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",t.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE="Invalid Container option. Default scope must be a string ('singleton' or 'transient').",t.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",t.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",t.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",t.POST_CONSTRUCT_ERROR=function(){for(var e=[],t=0;t=t)return n;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(r.NodeGuards.isProgramNode(e)||r.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&n.push(e),e!==a?o.getParentNodesWithStatementsRecursive(a,t,n,++i):n}static getSiblingStatementByOffset(e,t){const n=o.getScopeOfNode(e),i=r.NodeGuards.isSwitchCaseNode(n)?n.consequent:n.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static set(e,t){e.metadata=Object.assign(e.metadata||{},t)}static get(e,t){return void 0!==e.metadata?e.metadata[t]:void 0}static isIgnoredNode(e){return!0===r.get(e,"ignoredNode")}static isReplacedLiteral(e){return!0===r.get(e,"replacedLiteral")}}t.NodeMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(138),a=n(157),s=n(185),u=n(194),d=n(244),l=n(245),c=n(249),p=n(250),g=n(259),h=n(350),f=n(361),m=n(365),b=n(379),y=n(381),S=n(383),_=n(385),C=n(386),N=n(387);t.InversifyContainerFacade=class{constructor(){this.container=new r.Container}static getFactory(e){return t=>n=>t.container.getNamed(e,n)}static getCacheFactory(e){return t=>{const n=new Map;return r=>{if(n.has(r))return n.get(r);const o=t.container.getNamed(e,r);return n.set(r,o),o}}}static getConstructorFactory(e,...t){return n=>{const r=new Map,o=[];return i=>{if(t.forEach((e,t)=>{o[t]||(o[t]=n.container.get(e))}),r.has(i))return new(r.get(i))(...o);const a=n.container.getNamed(e,i);return r.set(i,a),new a(...o)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,n){this.container.bind(o.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new C.SourceCode(e,t)).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>n).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ILogger).to(y.Logger).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IJavaScriptObfuscator).to(b.JavaScriptObfuscator).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ITransformersRunner).to(N.TransformersRunner).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IObfuscatedCode).to(_.ObfuscatedCode),this.container.bind(o.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,n)=>{const r=e.container.get(o.ServiceIdentifiers.IObfuscatedCode);return r.initialize(t,n),r}),this.container.bind(o.ServiceIdentifiers.IObfuscationEventEmitter).to(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(u.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(c.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(g.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(f.storagesModule),this.container.load(m.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11);function i(e,t,n,o,i){var a={},s="number"==typeof i,u=void 0!==i&&s?i.toString():n;if(s&&void 0!==n)throw new Error(r.INVALID_DECORATOR_OPERATION);Reflect.hasOwnMetadata(e,t)&&(a=Reflect.getMetadata(e,t));var d=a[u];if(Array.isArray(d))for(var l=0,c=d;l1&&r.callsGraph.length?o.getOptimalBlockScope(r.callsGraph,0,--n):r.callee}static insertBefore(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r)}static insertAfter(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r+1)}static insertAtIndex(e,t,n){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e).slice(0,n),...t,...o.getScopeStatements(e).slice(n)])}static prepend(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...t,...o.getScopeStatements(e)])}static getScopeStatements(e){return r.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){r.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=0;t.id=function(){return r++}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(40);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputDisableExpressionNode="ConsoleOutputDisableExpressionNode",e.DebugProtectionFunctionCallNode="DebugProtectionFunctionCallNode",e.DebugProtectionFunctionIntervalNode="DebugProtectionFunctionIntervalNode",e.DebugProtectionFunctionNode="DebugProtectionFunctionNode",e.DomainLockNode="DomainLockNode",e.NodeCallsControllerFunctionNode="NodeCallsControllerFunctionNode",e.SelfDefendingUnicodeNode="SelfDefendingUnicodeNode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArrayNode="StringArrayNode",e.StringArrayRotateFunctionNode="StringArrayRotateFunctionNode"}(t.CustomNode||(t.CustomNode={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.isValid=function(e){var t=this;return"isValid"!==e&&"getMessage"!==e&&-1!==Object.keys(this).map((function(e){return t[e]})).indexOf(e)},e.getMessage=function(e,t){var n=this,r=t?"each value in ":"";switch(e){case this.NESTED_VALIDATION:return r+"nested property $property must be either object or array";case this.IS_DEFINED:return r+"$property should not be null or undefined";case this.EQUALS:return r+"$property must be equal to $constraint1";case this.NOT_EQUALS:return r+"$property should not be equal to $constraint1";case this.IS_EMPTY:return r+"$property must be empty";case this.IS_NOT_EMPTY:return r+"$property should not be empty";case this.IS_IN:return r+"$property must be one of the following values: $constraint1";case this.IS_NOT_IN:return r+"$property should not be one of the following values: $constraint1";case this.IS_PORT:return r+"$property must be a port";case this.IS_BOOLEAN:return r+"$property must be a boolean value";case this.IS_DATE:return r+"$property must be a Date instance";case this.IS_NUMBER:return r+"$property must be a number conforming to the specified constraints";case this.IS_INT:return r+"$property must be an integer number";case this.IS_STRING:return r+"$property must be a string";case this.IS_DATE_STRING:return r+"$property must be a ISOString";case this.IS_ARRAY:return r+"$property must be an array";case this.IS_ENUM:return r+"$property must be a valid enum value";case this.IS_DIVISIBLE_BY:return r+"$property must be divisible by $constraint1";case this.IS_POSITIVE:return r+"$property must be a positive number";case this.IS_NEGATIVE:return r+"$property must be a negative number";case this.MIN:return r+"$property must not be less than $constraint1";case this.MAX:return r+"$property must not be greater than $constraint1";case this.MIN_DATE:return"minimal allowed date for "+r+"$property is $constraint1";case this.MAX_DATE:return"maximal allowed date for "+r+"$property is $constraint1";case this.IS_BOOLEAN_STRING:return r+"$property must be a boolean string";case this.IS_NUMBER_STRING:return r+"$property must be a number string";case this.CONTAINS:return r+"$property must contain a $constraint1 string";case this.NOT_CONTAINS:return r+"$property should not contain a $constraint1 string";case this.IS_ALPHA:return r+"$property must contain only letters (a-zA-Z)";case this.IS_ALPHANUMERIC:return r+"$property must contain only letters and numbers";case this.IS_DECIMAL:return r+"$property is not a valid decimal number.";case this.IS_ASCII:return r+"$property must contain only ASCII characters";case this.IS_BASE64:return r+"$property must be base64 encoded";case this.IS_BYTE_LENGTH:return r+"$property's byte length must fall into ($constraint1, $constraint2) range";case this.IS_CREDIT_CARD:return r+"$property must be a credit card";case this.IS_CURRENCY:return r+"$property must be a currency";case this.IS_EMAIL:return r+"$property must be an email";case this.IS_FQDN:return r+"$property must be a valid domain name";case this.IS_FULL_WIDTH:return r+"$property must contain a full-width characters";case this.IS_HALF_WIDTH:return r+"$property must contain a half-width characters";case this.IS_VARIABLE_WIDTH:return r+"$property must contain a full-width and half-width characters";case this.IS_HEX_COLOR:return r+"$property must be a hexadecimal color";case this.IS_HEXADECIMAL:return r+"$property must be a hexadecimal number";case this.IS_MAC_ADDRESS:return r+"$property must be a MAC Address";case this.IS_IP:return r+"$property must be an ip address";case this.IS_ISBN:return r+"$property must be an ISBN";case this.IS_ISIN:return r+"$property must be an ISIN (stock/security identifier)";case this.IS_ISO8601:return r+"$property must be a valid ISO 8601 date string";case this.IS_JSON:return r+"$property must be a json string";case this.IS_JWT:return r+"$property must be a jwt string";case this.IS_OBJECT:return r+"$property must be an object";case this.IS_NOT_EMPTY_OBJECT:return r+"$property must be a non-empty object";case this.IS_LOWERCASE:return r+"$property must be a lowercase string";case this.IS_MOBILE_PHONE:return r+"$property must be a phone number";case this.IS_PHONE_NUMBER:return r+"$property must be a valid phone number";case this.IS_ISO31661_ALPHA_2:return r+"$property must be a valid ISO31661 Alpha2 code";case this.IS_ISO31661_ALPHA_3:return r+"$property must be a valid ISO31661 Alpha3 code";case this.IS_LATLONG:return r+"$property must be a latitude,longitude string";case this.IS_LATITUDE:return r+"$property must be a latitude string or number";case this.IS_LONGITUDE:return r+"$property must be a longitude string or number";case this.IS_MONGO_ID:return r+"$property must be a mongodb id";case this.IS_MULTIBYTE:return r+"$property must contain one or more multibyte chars";case this.IS_SURROGATE_PAIR:return r+"$property must contain any surrogate pairs chars";case this.IS_URL:return r+"$property must be an URL address";case this.IS_UUID:return r+"$property must be an UUID";case this.IS_UPPERCASE:return r+"$property must be uppercase";case this.LENGTH:return function(e){var t=null!==e.constraints[0]&&void 0!==e.constraints[0],n=null!==e.constraints[1]&&void 0!==e.constraints[1];return t&&(!e.value||e.value.lengthe.constraints[1]?r+"$property must be shorter than or equal to $constraint2 characters":r+"$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters"};case this.MIN_LENGTH:return r+"$property must be longer than or equal to $constraint1 characters";case this.MAX_LENGTH:return r+"$property must be shorter than or equal to $constraint1 characters";case this.MATCHES:return r+"$property must match $constraint1 regular expression";case this.IS_MILITARY_TIME:return r+"$property must be a valid representation of military time in the format HH:MM";case this.IS_HASH:return r+"$property must be a hash of type $constraint1";case this.IS_ISSN:return r+"$property must be a ISSN";case this.ARRAY_CONTAINS:return r+"$property must contain $constraint1 values";case this.ARRAY_NOT_CONTAINS:return r+"$property should not contain $constraint1 values";case this.ARRAY_NOT_EMPTY:return r+"$property should not be empty";case this.ARRAY_MIN_SIZE:return r+"$property must contain at least $constraint1 elements";case this.ARRAY_MAX_SIZE:return r+"$property must contain not more than $constraint1 elements";case this.ARRAY_UNIQUE:return r+"All $property's elements must be unique";case this.IS_INSTANCE:return function(e){return e.constraints[0]?r+"$property must be an instance of "+e.constraints[0].name:r+(n.IS_INSTANCE+" decorator expects and object as value, but got falsy value.")}}return""},e.CUSTOM_VALIDATION="customValidation",e.NESTED_VALIDATION="nestedValidation",e.PROMISE_VALIDATION="promiseValidation",e.CONDITIONAL_VALIDATION="conditionalValidation",e.WHITELIST="whitelistValidation",e.IS_DEFINED="isDefined",e.EQUALS="equals",e.NOT_EQUALS="notEquals",e.IS_EMPTY="isEmpty",e.IS_NOT_EMPTY="isNotEmpty",e.IS_IN="isIn",e.IS_NOT_IN="isNotIn",e.IS_BOOLEAN="isBoolean",e.IS_DATE="isDate",e.IS_NUMBER="isNumber",e.IS_LATLONG="isLatLong",e.IS_LATITUDE="isLatitude",e.IS_LONGITUDE="isLongitude",e.IS_STRING="isString",e.IS_DATE_STRING="isDateString",e.IS_ARRAY="isArray",e.IS_INT="isInt",e.IS_ENUM="isEnum",e.IS_DIVISIBLE_BY="isDivisibleBy",e.IS_POSITIVE="isPositive",e.IS_NEGATIVE="isNegative",e.MIN="min",e.MAX="max",e.MIN_DATE="minDate",e.MAX_DATE="maxDate",e.IS_BOOLEAN_STRING="isBooleanString",e.IS_NUMBER_STRING="isNumberString",e.CONTAINS="contains",e.NOT_CONTAINS="notContains",e.IS_ALPHA="isAlpha",e.IS_ALPHANUMERIC="isAlphanumeric",e.IS_DECIMAL="isDecimal",e.IS_ASCII="isAscii",e.IS_BASE64="isBase64",e.IS_BYTE_LENGTH="isByteLength",e.IS_CREDIT_CARD="isCreditCard",e.IS_CURRENCY="isCurrency",e.IS_EMAIL="isEmail",e.IS_FQDN="isFqdn",e.IS_FULL_WIDTH="isFullWidth",e.IS_HALF_WIDTH="isHalfWidth",e.IS_VARIABLE_WIDTH="isVariableWidth",e.IS_HEX_COLOR="isHexColor",e.IS_HEXADECIMAL="isHexadecimal",e.IS_MAC_ADDRESS="isMacAddress",e.IS_IP="isIp",e.IS_PORT="isPort",e.IS_ISBN="isIsbn",e.IS_ISIN="isIsin",e.IS_ISO8601="isIso8601",e.IS_JSON="isJson",e.IS_JWT="isJwt",e.IS_OBJECT="isObject",e.IS_NOT_EMPTY_OBJECT="isNotEmptyObject",e.IS_LOWERCASE="isLowercase",e.IS_MOBILE_PHONE="isMobilePhone",e.IS_PHONE_NUMBER="isPhoneNumber",e.IS_ISO31661_ALPHA_2="isISO31661Alpha2",e.IS_ISO31661_ALPHA_3="isISO31661Alpha3",e.IS_MONGO_ID="isMongoId",e.IS_MULTIBYTE="isMultibyte",e.IS_SURROGATE_PAIR="isSurrogatePair",e.IS_URL="isUrl",e.IS_UUID="isUuid",e.LENGTH="length",e.IS_UPPERCASE="isUppercase",e.MIN_LENGTH="minLength",e.MAX_LENGTH="maxLength",e.MATCHES="matches",e.IS_MILITARY_TIME="isMilitaryTime",e.IS_HASH="isHash",e.IS_ISSN="isISSN",e.ARRAY_CONTAINS="arrayContains",e.ARRAY_NOT_CONTAINS="arrayNotContains",e.ARRAY_NOT_EMPTY="arrayNotEmpty",e.ARRAY_MIN_SIZE="arrayMinSize",e.ARRAY_MAX_SIZE="arrayMaxSize",e.ARRAY_UNIQUE="arrayUnique",e.IS_INSTANCE="isInstance",e}();t.ValidationTypes=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o,i=new(function(){function e(){this.instances=[]}return e.prototype.get=function(e){var t=this.instances.find((function(t){return t.type===e}));return t||(t={type:e,object:new e},this.instances.push(t)),t.object},e}());t.useContainer=function(e,t){r=e,o=t},t.getFromContainer=function(e){if(r)try{var t=r.get(e);if(t)return t;if(!o||!o.fallback)return t}catch(e){if(!o||!o.fallbackOnErrors)throw e}return i.get(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(111);const r=n(1),o=n(17);class i{static obfuscate(e,t={}){const n=new o.InversifyContainerFacade;n.load(e,"",t);const i=n.get(r.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return n.unload(),i}}t.JavaScriptObfuscator=i,i.version="0.24.3"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12);function o(e){return"function"==typeof e?e.name:"symbol"==typeof e?e.toString():e}function i(e){if(e.name)return e.name;var t=e.toString(),n=t.match(/^function\s*([^\s(]+)/);return n?n[1]:"Anonymous function: "+t}t.getServiceIdentifierAsString=o,t.listRegisteredBindingsForServiceIdentifier=function(e,t,n){var r="",o=n(e,t);return 0!==o.length&&(r="\nRegistered bindings:",o.forEach((function(e){var t="Object";null!==e.implementationType&&(t=i(e.implementationType)),r=r+"\n "+t,e.constraint.metaData&&(r=r+" - "+e.constraint.metaData)}))),r},t.circularDependencyToException=function e(t){t.childRequests.forEach((function(t){if(function e(t,n){return null!==t.parentRequest&&(t.parentRequest.serviceIdentifier===n||e(t.parentRequest,n))}(t,t.serviceIdentifier)){var n=function(e){return function e(t,n){void 0===n&&(n=[]);var r=o(t.serviceIdentifier);return n.push(r),null!==t.parentRequest?e(t.parentRequest,n):n}(e).reverse().join(" --\x3e ")}(t);throw new Error(r.CIRCULAR_DEPENDENCY+" "+n)}e(t)}))},t.listMetadataForTarget=function(e,t){if(t.isTagged()||t.isNamed()){var n="",r=t.getNamedTag(),o=t.getCustomTags();return null!==r&&(n+=r.toString()+"\n"),null!==o&&o.forEach((function(e){n+=e.toString()+"\n"}))," "+e+"\n "+e+" - "+n}return" "+e},t.getFunctionName=i},function(e,t){t.getArg=function(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('"'+t+'" is a required argument.')};var n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function o(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function i(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function a(e){var n=e,r=o(e);if(r){if(!r.path)return e;n=r.path}for(var a,s=t.isAbsolute(n),u=n.split(/\/+/),d=0,l=u.length-1;l>=0;l--)"."===(a=u[l])?u.splice(l,1):".."===a?d++:d>0&&(""===a?(u.splice(l+1,d),d=0):(u.splice(l,2),d--));return""===(n=u.join("/"))&&(n=s?"/":"."),r?(r.path=n,i(r)):n}function s(e,t){""===e&&(e="."),""===t&&(t=".");var n=o(t),s=o(e);if(s&&(e=s.path||"/"),n&&!n.scheme)return s&&(n.scheme=s.scheme),i(n);if(n||t.match(r))return t;if(s&&!s.host&&!s.path)return s.host=t,i(s);var u="/"===t.charAt(0)?t:a(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=u,i(s)):u}t.urlParse=o,t.urlGenerate=i,t.normalize=a,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||n.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==t.indexOf(e+"/");){var r=e.lastIndexOf("/");if(r<0)return t;if((e=e.slice(0,r)).match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)};var u=!("__proto__"in Object.create(null));function d(e){return e}function l(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function c(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=u?d:function(e){return l(e)?"$"+e:e},t.fromSetString=u?d:function(e){return l(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){var r=c(e.source,t.source);return 0!==r?r:0!==(r=e.originalLine-t.originalLine)?r:0!==(r=e.originalColumn-t.originalColumn)||n?r:0!==(r=e.generatedColumn-t.generatedColumn)?r:0!==(r=e.generatedLine-t.generatedLine)?r:c(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,n){var r=e.generatedLine-t.generatedLine;return 0!==r?r:0!==(r=e.generatedColumn-t.generatedColumn)||n?r:0!==(r=c(e.source,t.source))?r:0!==(r=e.originalLine-t.originalLine)?r:0!==(r=e.originalColumn-t.originalColumn)?r:c(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n?n:0!==(n=e.generatedColumn-t.generatedColumn)?n:0!==(n=c(e.source,t.source))?n:0!==(n=e.originalLine-t.originalLine)?n:0!==(n=e.originalColumn-t.originalColumn)?n:c(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,n){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),n){var r=o(n);if(!r)throw new Error("sourceMapURL could not be parsed");if(r.path){var u=r.path.lastIndexOf("/");u>=0&&(r.path=r.path.substring(0,u+1))}t=s(i(r),t)}return a(t)}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t,n){this.identifierNamesGenerator=e(n),this.randomGenerator=t,this.options=n}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const n=this.customNodes.get(e);n&&t(n)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],u),t.AbstractCustomNodeGroup=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(40);t.StringArrayEncoding=r.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=r,r.hexadecimalPrefix="0x"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(261),o=function(){function e(){this.validationMetadatas=[],this.constraintMetadatas=[]}return Object.defineProperty(e.prototype,"hasValidationMetaData",{get:function(){return!!this.validationMetadatas.length},enumerable:!0,configurable:!0}),e.prototype.addValidationSchema=function(e){var t=this;(new r.ValidationSchemaToMetadataTransformer).transform(e).forEach((function(e){return t.addValidationMetadata(e)}))},e.prototype.addValidationMetadata=function(e){this.validationMetadatas.push(e)},e.prototype.addConstraintMetadata=function(e){this.constraintMetadatas.push(e)},e.prototype.groupByPropertyName=function(e){var t={};return e.forEach((function(e){t[e.propertyName]||(t[e.propertyName]=[]),t[e.propertyName].push(e)})),t},e.prototype.getTargetValidationMetadatas=function(e,t,n){var r=this.validationMetadatas.filter((function(r){return(r.target===e||r.target===t)&&(!!r.always||(!(n&&n.length>0)||r.groups&&!!r.groups.find((function(e){return-1!==n.indexOf(e)}))))})),o=this.validationMetadatas.filter((function(t){return"string"!=typeof t.target&&(t.target!==e&&((!(t.target instanceof Function)||e.prototype instanceof t.target)&&(!!t.always||(!(n&&n.length>0)||t.groups&&!!t.groups.find((function(e){return-1!==n.indexOf(e)}))))))})).filter((function(e){return!r.find((function(t){return t.propertyName===e.propertyName&&t.type===e.type}))}));return r.concat(o)},e.prototype.getTargetValidatorConstraints=function(e){return this.constraintMetadatas.filter((function(t){return t.target===e}))},e}();t.MetadataStorage=o},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ArrayExpression="ArrayExpression",e.ArrayPattern="ArrayPattern",e.ArrowFunctionExpression="ArrowFunctionExpression",e.AssignmentExpression="AssignmentExpression",e.AssignmentPattern="AssignmentPattern",e.AwaitExpression="AwaitExpression",e.BinaryExpression="BinaryExpression",e.BlockStatement="BlockStatement",e.BreakStatement="BreakStatement",e.CallExpression="CallExpression",e.CatchClause="CatchClause",e.ClassDeclaration="ClassDeclaration",e.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,n){"use strict";(function(t){var r=n(147); +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.JavaScriptObfuscator=t():e.JavaScriptObfuscator=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=110)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11);t.METADATA_KEY=r;var o=n(112);t.Container=o.Container;var i=n(14);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(128);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(129);t.injectable=s.injectable;var u=n(130);t.tagged=u.tagged;var d=n(131);t.named=d.named;var l=n(69);t.inject=l.inject,t.LazyServiceIdentifer=l.LazyServiceIdentifer;var c=n(132);t.optional=c.optional;var p=n(133);t.unmanaged=p.unmanaged;var g=n(134);t.multiInject=g.multiInject;var h=n(135);t.targetName=h.targetName;var f=n(136);t.postConstruct=f.postConstruct;var m=n(67);t.MetadataReader=m.MetadataReader;var b=n(21);t.id=b.id;var y=n(18);t.decorate=y.decorate;var S=n(72);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var _=n(30);t.getServiceIdentifierAsString=_.getServiceIdentifierAsString;var C=n(137);t.multiBindToService=C.multiBindToService},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Factory__ICalleeDataExtractor="Factory",e.Factory__IControlFlowCustomNode="Factory",e.Factory__IControlFlowReplacer="Factory",e.Factory__ICustomNode="Factory",e.Factory__ICustomNodeGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomNodeFormatter="ICustomNodeFormatter",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions",e.TStringArrayStorage="TStringArrayStorage"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!("string"==typeof e||e instanceof String)){var t;throw t=null===e?"null":"object"===(t=r(e))&&e.constructor&&e.constructor.hasOwnProperty("name")?e.constructor.name:"a ".concat(t),new TypeError("Expected string but received ".concat(t,"."))}},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(37);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===r.NodeType.AssignmentExpression}static isAssignmentPatternNode(e){return e.type===r.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===r.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===r.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===r.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===r.NodeType.CallExpression}static isClassDeclarationNode(e){return e.type===r.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===r.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===r.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===r.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===r.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return o.isFunctionDeclarationNode(e)||o.isFunctionExpressionNode(e)||o.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===r.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===r.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===r.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===r.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===r.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const n=o.isLabeledStatementNode(t)&&t.label===e,r=o.isContinueStatementNode(t)&&t.label===e,i=o.isBreakStatementNode(t)&&t.label===e;return n||r||i}static isLabeledStatementNode(e){return e.type===r.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===r.NodeType.Literal}static isMemberExpressionNode(e){return e.type===r.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===r.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return o.isProgramNode(e)||o.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return o.isNodeWithLexicalScope(e)||o.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return o.isProgramNode(e)||o.isBlockStatementNode(e)&&o.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return o.isProgramNode(e)||o.isBlockStatementNode(e)||o.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===r.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===r.NodeType.ObjectExpression}static isProgramNode(e){return e.type===r.NodeType.Program}static isPropertyNode(e){return e.type===r.NodeType.Property}static parentNodeIsPropertyNode(e,t){return o.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return o.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return o.isMethodDefinitionNode(t)&&!t.computed}static isRestElementNode(e){return e.type===r.NodeType.RestElement}static isReturnStatementNode(e){return e.type===r.NodeType.ReturnStatement}static isSuperNode(e){return e.type===r.NodeType.Super}static isSwitchCaseNode(e){return e.type===r.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===r.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===r.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===r.NodeType.UnaryExpression}static isUseStrictOperator(e){return o.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===r.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===r.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===r.NodeType.WhileStatement}}t.NodeGuards=o,o.nodesWithLexicalStatements=[r.NodeType.ArrowFunctionExpression,r.NodeType.FunctionDeclaration,r.NodeType.FunctionExpression,r.NodeType.MethodDefinition]},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(56)),i=r(n(7)),a=n(53),s=n(83),u=n(3),d=n(16);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:o.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse({sourceCode:e},{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),u.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+o.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return u.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(n=>{if("parentNode"===n)return;const r=e[n];let o;o=null===r||r instanceof RegExp?r:Array.isArray(r)?r.map(l.cloneRecursive):"object"==typeof r?l.cloneRecursive(r):r,t[n]=o}),t}}t.NodeUtils=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r={configurable:!0,enumerable:!0};function o(e,t,n){Reflect.hasMetadata(e,n)||Reflect.defineMetadata(e,t,n)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(n,i)=>{const a=n[e];if(!a||"function"!=typeof a)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return o("_initialized",!1,n),o("_initializablePropertiesSet",new Set,n),o("_wrappedMethodsSet",new Set,n),function(e,t){const n=Object.getOwnPropertyNames(e),o=[t,"constructor"];n.forEach(n=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(o.includes(n)||a.has(n)||s.has(n))return;if("function"!=typeof e[n])return;const u=null!==(i=Object.getOwnPropertyDescriptor(e,n))&&void 0!==i?i:r,d=u.value;Object.defineProperty(e,n,Object.assign(Object.assign({},u),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return d.apply(this,arguments)}})),s.add(n)})}(n,e),function(e,t,n){var o;const i=null!==(o=Object.getOwnPropertyDescriptor(e,t))&&void 0!==o?o:r,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[n],e}}))}(n,e,i),function(e,t){var n;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const o=`_${t.toString()}`,i=null!==(n=Object.getOwnPropertyDescriptor(e,o))&&void 0!==n?n:r;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{get:function(){if(void 0===this[o])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[o]},set:function(e){this[o]=e}})),i}(n,i)}}},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(56)),i=n(37);class a{static programNode(e=[]){return{type:i.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:i.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,n){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,n){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:i.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:i.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:i.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:i.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:i.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:i.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,n){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:n,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:i.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,n){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},n&&{alternate:n}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,n){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,n=!1){return{type:i.NodeType.MemberExpression,computed:n,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,n,r){return{type:i.NodeType.MethodDefinition,key:e,value:t,kind:n,computed:r,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,n=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:n,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:i.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:i.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:i.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,n=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:n,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:i.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:i.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:i.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:i.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,n){!function e(t){"use strict";var r,o,i,a,s,u;function d(e){var t,n,r={};for(t in e)e.hasOwnProperty(t)&&(n=e[t],r[t]="object"==typeof n&&null!==n?d(n):n);return r}function l(e,t){this.parent=e,this.key=t}function c(e,t,n,r){this.node=e,this.path=t,this.wrap=n,this.ref=r}function p(){}function g(e){return null!=e&&("object"==typeof e&&"string"==typeof e.type)}function h(e,t){return(e===r.ObjectExpression||e===r.ObjectPattern)&&"properties"===t}function f(e,t){return(new p).traverse(e,t)}function m(e,t){var n;return n=function(e,t){var n,r,o,i;for(r=e.length,o=0;r;)t(e[i=o+(n=r>>>1)])?r=n:(o=i+1,r-=n+1);return o}(t,(function(t){return t.range[0]>e.range[0]})),e.extendedRange=[e.range[0],e.range[1]],n!==t.length&&(e.extendedRange[1]=t[n].range[0]),(n-=1)>=0&&(e.extendedRange[0]=t[n].range[1]),e}return r={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ComprehensionBlock:"ComprehensionBlock",ComprehensionExpression:"ComprehensionExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DebuggerStatement:"DebuggerStatement",DirectiveStatement:"DirectiveStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",ForOfStatement:"ForOfStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",GeneratorExpression:"GeneratorExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportExpression:"ImportExpression",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",ModuleSpecifier:"ModuleSpecifier",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchStatement:"SwitchStatement",SwitchCase:"SwitchCase",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"},i={AssignmentExpression:["left","right"],AssignmentPattern:["left","right"],ArrayExpression:["elements"],ArrayPattern:["elements"],ArrowFunctionExpression:["params","body"],AwaitExpression:["argument"],BlockStatement:["body"],BinaryExpression:["left","right"],BreakStatement:["label"],CallExpression:["callee","arguments"],CatchClause:["param","body"],ClassBody:["body"],ClassDeclaration:["id","superClass","body"],ClassExpression:["id","superClass","body"],ComprehensionBlock:["left","right"],ComprehensionExpression:["blocks","filter","body"],ConditionalExpression:["test","consequent","alternate"],ContinueStatement:["label"],DebuggerStatement:[],DirectiveStatement:[],DoWhileStatement:["body","test"],EmptyStatement:[],ExportAllDeclaration:["source"],ExportDefaultDeclaration:["declaration"],ExportNamedDeclaration:["declaration","specifiers","source"],ExportSpecifier:["exported","local"],ExpressionStatement:["expression"],ForStatement:["init","test","update","body"],ForInStatement:["left","right","body"],ForOfStatement:["left","right","body"],FunctionDeclaration:["id","params","body"],FunctionExpression:["id","params","body"],GeneratorExpression:["blocks","filter","body"],Identifier:[],IfStatement:["test","consequent","alternate"],ImportExpression:["source"],ImportDeclaration:["specifiers","source"],ImportDefaultSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportSpecifier:["imported","local"],Literal:[],LabeledStatement:["label","body"],LogicalExpression:["left","right"],MemberExpression:["object","property"],MetaProperty:["meta","property"],MethodDefinition:["key","value"],ModuleSpecifier:[],NewExpression:["callee","arguments"],ObjectExpression:["properties"],ObjectPattern:["properties"],Program:["body"],Property:["key","value"],RestElement:["argument"],ReturnStatement:["argument"],SequenceExpression:["expressions"],SpreadElement:["argument"],Super:[],SwitchStatement:["discriminant","cases"],SwitchCase:["test","consequent"],TaggedTemplateExpression:["tag","quasi"],TemplateElement:[],TemplateLiteral:["quasis","expressions"],ThisExpression:[],ThrowStatement:["argument"],TryStatement:["block","handler","finalizer"],UnaryExpression:["argument"],UpdateExpression:["argument"],VariableDeclaration:["declarations"],VariableDeclarator:["id","init"],WhileStatement:["test","body"],WithStatement:["object","body"],YieldExpression:["argument"]},o={Break:a={},Skip:s={},Remove:u={}},l.prototype.replace=function(e){this.parent[this.key]=e},l.prototype.remove=function(){return Array.isArray(this.parent)?(this.parent.splice(this.key,1),!0):(this.replace(null),!1)},p.prototype.path=function(){var e,t,n,r,o;function i(e,t){if(Array.isArray(t))for(n=0,r=t.length;n=0;)if(b=i[l=m[p]])if(Array.isArray(b)){for(f=b.length;(f-=1)>=0;)if(b[f]){if(h(u,m[p]))o=new c(b[f],[l,f],"Property",null);else{if(!g(b[f]))continue;o=new c(b[f],[l,f],null,null)}n.push(o)}}else g(b)&&n.push(new c(b,l,null,null))}}else if(o=r.pop(),d=this.__execute(t.leave,o),this.__state===a||d===a)return},p.prototype.replace=function(e,t){var n,r,o,i,d,p,f,m,b,y,S,_,C;function N(e){var t,r,o,i;if(e.ref.remove())for(r=e.ref.key,i=e.ref.parent,t=n.length;t--;)if((o=n[t]).ref&&o.ref.parent===i){if(o.ref.key=0;)if(y=o[C=b[f]])if(Array.isArray(y)){for(m=y.length;(m-=1)>=0;)if(y[m]){if(h(i,b[f]))p=new c(y[m],[C,m],"Property",new l(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[C,m],null,new l(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,C,null,new l(o,C)))}}else if(p=r.pop(),void 0!==(d=this.__execute(t.leave,p))&&d!==a&&d!==s&&d!==u&&p.ref.replace(d),this.__state!==u&&d!==u||N(p),this.__state===a||d===a)return _.root;return _.root},t.version=n(140).version,t.Syntax=r,t.traverse=f,t.replace=function(e,t){return(new p).replace(e,t)},t.attachComments=function(e,t,n){var r,i,a,s,u=[];if(!e.range)throw new Error("attachComments needs range information");if(!n.length){if(t.length){for(a=0,i=t.length;ae.range[0]);)t.extendedRange[1]===e.range[0]?(e.leadingComments||(e.leadingComments=[]),e.leadingComments.push(t),u.splice(s,1)):s+=1;return s===u.length?o.Break:u[s].extendedRange[0]>e.range[1]?o.Skip:void 0}}),s=0,f(e,{leave:function(e){for(var t;se.range[1]?o.Skip:void 0}}),e},t.VisitorKeys=i,t.VisitorOption=o,t.Controller=p,t.cloneEnvironment=function(){return e({})},t}(t)},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(201),l=n(202);let c=r=class{constructor(e,t,n,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.customNodeFormatter=t,this.randomGenerator=n,this.options=r}getNode(){if(!this.cachedNode){const e=this.getNodeTemplate();this.cachedNode=this.customNodeFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}getNodeTemplate(){return""}};c.globalVariableTemplateFunctions=[d.GlobalVariableTemplate1(),l.GlobalVariableTemplate2()],c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),a(1,s.inject(u.ServiceIdentifiers.ICustomNodeFormatter)),a(2,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(3,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object])],c),t.AbstractCustomNode=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Initializing="Initializing",e.Preparing="Preparing",e.DeadCodeInjection="DeadCodeInjection",e.ControlFlowFlattening="ControlFlowFlattening",e.Converting="Converting",e.Obfuscating="Obfuscating",e.Finalizing="Finalizing"}(t.TransformationStage||(t.TransformationStage={}))},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t){this.randomGenerator=e,this.options=t}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],u),t.AbstractNodeTransformer=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NAMED_TAG="named",t.NAME_TAG="name",t.UNMANAGED_TAG="unmanaged",t.OPTIONAL_TAG="optional",t.INJECT_TAG="inject",t.MULTI_INJECT_TAG="multi_inject",t.TAGGED="inversify:tagged",t.TAGGED_PROP="inversify:tagged_props",t.PARAM_TYPES="inversify:paramtypes",t.DESIGN_PARAM_TYPES="design:paramtypes",t.POST_CONSTRUCT="post_construct"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",t.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",t.NULL_ARGUMENT="NULL argument",t.KEY_NOT_FOUND="Key Not Found",t.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",t.CANNOT_UNBIND="Could not unbind serviceIdentifier:",t.NOT_REGISTERED="No matching bindings found for serviceIdentifier:",t.MISSING_INJECTABLE_ANNOTATION="Missing required @injectable annotation in:",t.MISSING_INJECT_ANNOTATION="Missing required @inject or @multiInject annotation in:",t.UNDEFINED_INJECT_ANNOTATION=function(e){return"@inject called with undefined this could mean that the class "+e+" has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation."},t.CIRCULAR_DEPENDENCY="Circular dependency found:",t.NOT_IMPLEMENTED="Sorry, this feature is not fully implemented yet.",t.INVALID_BINDING_TYPE="Invalid binding type:",t.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",t.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",t.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!",t.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",t.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",t.ARGUMENTS_LENGTH_MISMATCH=function(){for(var e=[],t=0;t= than the number of constructor arguments of its base class."},t.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",t.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE="Invalid Container option. Default scope must be a string ('singleton' or 'transient').",t.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",t.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",t.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",t.POST_CONSTRUCT_ERROR=function(){for(var e=[],t=0;t=t)return n;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(r.NodeGuards.isProgramNode(e)||r.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&n.push(e),e!==a?o.getParentNodesWithStatementsRecursive(a,t,n,++i):n}static getSiblingStatementByOffset(e,t){const n=o.getScopeOfNode(e),i=r.NodeGuards.isSwitchCaseNode(n)?n.consequent:n.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static set(e,t){var n;e.metadata=Object.assign(null!==(n=e.metadata)&&void 0!==n?n:{},t)}static get(e,t){return void 0!==e.metadata?e.metadata[t]:void 0}static isIgnoredNode(e){return!0===r.get(e,"ignoredNode")}static isReplacedLiteral(e){return!0===r.get(e,"replacedLiteral")}}t.NodeMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(138),a=n(157),s=n(185),u=n(194),d=n(244),l=n(245),c=n(249),p=n(250),g=n(259),h=n(350),f=n(361),m=n(365),b=n(379),y=n(381),S=n(383),_=n(385),C=n(386),N=n(387);t.InversifyContainerFacade=class{constructor(){this.container=new r.Container}static getFactory(e){return t=>n=>t.container.getNamed(e,n)}static getCacheFactory(e){return t=>{const n=new Map;return r=>{if(n.has(r))return n.get(r);const o=t.container.getNamed(e,r);return n.set(r,o),o}}}static getConstructorFactory(e,...t){return n=>{const r=new Map,o=[];return i=>{if(t.forEach((e,t)=>{o[t]||(o[t]=n.container.get(e))}),r.has(i))return new(r.get(i))(...o);const a=n.container.getNamed(e,i);return r.set(i,a),new a(...o)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,n){this.container.bind(o.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new C.SourceCode(e,t)).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>n).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ILogger).to(y.Logger).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IJavaScriptObfuscator).to(b.JavaScriptObfuscator).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ITransformersRunner).to(N.TransformersRunner).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IObfuscatedCode).to(_.ObfuscatedCode),this.container.bind(o.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,n)=>{const r=e.container.get(o.ServiceIdentifiers.IObfuscatedCode);return r.initialize(t,n),r}),this.container.bind(o.ServiceIdentifiers.IObfuscationEventEmitter).to(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(u.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(c.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(g.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(f.storagesModule),this.container.load(m.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11);function i(e,t,n,o,i){var a={},s="number"==typeof i,u=void 0!==i&&s?i.toString():n;if(s&&void 0!==n)throw new Error(r.INVALID_DECORATOR_OPERATION);Reflect.hasOwnMetadata(e,t)&&(a=Reflect.getMetadata(e,t));var d=a[u];if(Array.isArray(d))for(var l=0,c=d;l1&&r.callsGraph.length?o.getOptimalBlockScope(r.callsGraph,0,--n):r.callee}static insertBefore(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r)}static insertAfter(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r+1)}static insertAtIndex(e,t,n){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e).slice(0,n),...t,...o.getScopeStatements(e).slice(n)])}static prepend(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...t,...o.getScopeStatements(e)])}static getScopeStatements(e){return r.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){r.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=0;t.id=function(){return r++}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(40);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputDisableExpressionNode="ConsoleOutputDisableExpressionNode",e.DebugProtectionFunctionCallNode="DebugProtectionFunctionCallNode",e.DebugProtectionFunctionIntervalNode="DebugProtectionFunctionIntervalNode",e.DebugProtectionFunctionNode="DebugProtectionFunctionNode",e.DomainLockNode="DomainLockNode",e.NodeCallsControllerFunctionNode="NodeCallsControllerFunctionNode",e.SelfDefendingUnicodeNode="SelfDefendingUnicodeNode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArrayNode="StringArrayNode",e.StringArrayRotateFunctionNode="StringArrayRotateFunctionNode"}(t.CustomNode||(t.CustomNode={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.isValid=function(e){var t=this;return"isValid"!==e&&"getMessage"!==e&&-1!==Object.keys(this).map((function(e){return t[e]})).indexOf(e)},e.getMessage=function(e,t){var n=this,r=t?"each value in ":"";switch(e){case this.NESTED_VALIDATION:return r+"nested property $property must be either object or array";case this.IS_DEFINED:return r+"$property should not be null or undefined";case this.EQUALS:return r+"$property must be equal to $constraint1";case this.NOT_EQUALS:return r+"$property should not be equal to $constraint1";case this.IS_EMPTY:return r+"$property must be empty";case this.IS_NOT_EMPTY:return r+"$property should not be empty";case this.IS_IN:return r+"$property must be one of the following values: $constraint1";case this.IS_NOT_IN:return r+"$property should not be one of the following values: $constraint1";case this.IS_PORT:return r+"$property must be a port";case this.IS_BOOLEAN:return r+"$property must be a boolean value";case this.IS_DATE:return r+"$property must be a Date instance";case this.IS_NUMBER:return r+"$property must be a number conforming to the specified constraints";case this.IS_INT:return r+"$property must be an integer number";case this.IS_STRING:return r+"$property must be a string";case this.IS_DATE_STRING:return r+"$property must be a ISOString";case this.IS_ARRAY:return r+"$property must be an array";case this.IS_ENUM:return r+"$property must be a valid enum value";case this.IS_DIVISIBLE_BY:return r+"$property must be divisible by $constraint1";case this.IS_POSITIVE:return r+"$property must be a positive number";case this.IS_NEGATIVE:return r+"$property must be a negative number";case this.MIN:return r+"$property must not be less than $constraint1";case this.MAX:return r+"$property must not be greater than $constraint1";case this.MIN_DATE:return"minimal allowed date for "+r+"$property is $constraint1";case this.MAX_DATE:return"maximal allowed date for "+r+"$property is $constraint1";case this.IS_BOOLEAN_STRING:return r+"$property must be a boolean string";case this.IS_NUMBER_STRING:return r+"$property must be a number string";case this.CONTAINS:return r+"$property must contain a $constraint1 string";case this.NOT_CONTAINS:return r+"$property should not contain a $constraint1 string";case this.IS_ALPHA:return r+"$property must contain only letters (a-zA-Z)";case this.IS_ALPHANUMERIC:return r+"$property must contain only letters and numbers";case this.IS_DECIMAL:return r+"$property is not a valid decimal number.";case this.IS_ASCII:return r+"$property must contain only ASCII characters";case this.IS_BASE64:return r+"$property must be base64 encoded";case this.IS_BYTE_LENGTH:return r+"$property's byte length must fall into ($constraint1, $constraint2) range";case this.IS_CREDIT_CARD:return r+"$property must be a credit card";case this.IS_CURRENCY:return r+"$property must be a currency";case this.IS_EMAIL:return r+"$property must be an email";case this.IS_FQDN:return r+"$property must be a valid domain name";case this.IS_FULL_WIDTH:return r+"$property must contain a full-width characters";case this.IS_HALF_WIDTH:return r+"$property must contain a half-width characters";case this.IS_VARIABLE_WIDTH:return r+"$property must contain a full-width and half-width characters";case this.IS_HEX_COLOR:return r+"$property must be a hexadecimal color";case this.IS_HEXADECIMAL:return r+"$property must be a hexadecimal number";case this.IS_MAC_ADDRESS:return r+"$property must be a MAC Address";case this.IS_IP:return r+"$property must be an ip address";case this.IS_ISBN:return r+"$property must be an ISBN";case this.IS_ISIN:return r+"$property must be an ISIN (stock/security identifier)";case this.IS_ISO8601:return r+"$property must be a valid ISO 8601 date string";case this.IS_JSON:return r+"$property must be a json string";case this.IS_JWT:return r+"$property must be a jwt string";case this.IS_OBJECT:return r+"$property must be an object";case this.IS_NOT_EMPTY_OBJECT:return r+"$property must be a non-empty object";case this.IS_LOWERCASE:return r+"$property must be a lowercase string";case this.IS_MOBILE_PHONE:return r+"$property must be a phone number";case this.IS_PHONE_NUMBER:return r+"$property must be a valid phone number";case this.IS_ISO31661_ALPHA_2:return r+"$property must be a valid ISO31661 Alpha2 code";case this.IS_ISO31661_ALPHA_3:return r+"$property must be a valid ISO31661 Alpha3 code";case this.IS_LATLONG:return r+"$property must be a latitude,longitude string";case this.IS_LATITUDE:return r+"$property must be a latitude string or number";case this.IS_LONGITUDE:return r+"$property must be a longitude string or number";case this.IS_MONGO_ID:return r+"$property must be a mongodb id";case this.IS_MULTIBYTE:return r+"$property must contain one or more multibyte chars";case this.IS_SURROGATE_PAIR:return r+"$property must contain any surrogate pairs chars";case this.IS_URL:return r+"$property must be an URL address";case this.IS_UUID:return r+"$property must be an UUID";case this.IS_UPPERCASE:return r+"$property must be uppercase";case this.LENGTH:return function(e){var t=null!==e.constraints[0]&&void 0!==e.constraints[0],n=null!==e.constraints[1]&&void 0!==e.constraints[1];return t&&(!e.value||e.value.lengthe.constraints[1]?r+"$property must be shorter than or equal to $constraint2 characters":r+"$property must be longer than or equal to $constraint1 and shorter than or equal to $constraint2 characters"};case this.MIN_LENGTH:return r+"$property must be longer than or equal to $constraint1 characters";case this.MAX_LENGTH:return r+"$property must be shorter than or equal to $constraint1 characters";case this.MATCHES:return r+"$property must match $constraint1 regular expression";case this.IS_MILITARY_TIME:return r+"$property must be a valid representation of military time in the format HH:MM";case this.IS_HASH:return r+"$property must be a hash of type $constraint1";case this.IS_ISSN:return r+"$property must be a ISSN";case this.ARRAY_CONTAINS:return r+"$property must contain $constraint1 values";case this.ARRAY_NOT_CONTAINS:return r+"$property should not contain $constraint1 values";case this.ARRAY_NOT_EMPTY:return r+"$property should not be empty";case this.ARRAY_MIN_SIZE:return r+"$property must contain at least $constraint1 elements";case this.ARRAY_MAX_SIZE:return r+"$property must contain not more than $constraint1 elements";case this.ARRAY_UNIQUE:return r+"All $property's elements must be unique";case this.IS_INSTANCE:return function(e){return e.constraints[0]?r+"$property must be an instance of "+e.constraints[0].name:r+(n.IS_INSTANCE+" decorator expects and object as value, but got falsy value.")}}return""},e.CUSTOM_VALIDATION="customValidation",e.NESTED_VALIDATION="nestedValidation",e.PROMISE_VALIDATION="promiseValidation",e.CONDITIONAL_VALIDATION="conditionalValidation",e.WHITELIST="whitelistValidation",e.IS_DEFINED="isDefined",e.EQUALS="equals",e.NOT_EQUALS="notEquals",e.IS_EMPTY="isEmpty",e.IS_NOT_EMPTY="isNotEmpty",e.IS_IN="isIn",e.IS_NOT_IN="isNotIn",e.IS_BOOLEAN="isBoolean",e.IS_DATE="isDate",e.IS_NUMBER="isNumber",e.IS_LATLONG="isLatLong",e.IS_LATITUDE="isLatitude",e.IS_LONGITUDE="isLongitude",e.IS_STRING="isString",e.IS_DATE_STRING="isDateString",e.IS_ARRAY="isArray",e.IS_INT="isInt",e.IS_ENUM="isEnum",e.IS_DIVISIBLE_BY="isDivisibleBy",e.IS_POSITIVE="isPositive",e.IS_NEGATIVE="isNegative",e.MIN="min",e.MAX="max",e.MIN_DATE="minDate",e.MAX_DATE="maxDate",e.IS_BOOLEAN_STRING="isBooleanString",e.IS_NUMBER_STRING="isNumberString",e.CONTAINS="contains",e.NOT_CONTAINS="notContains",e.IS_ALPHA="isAlpha",e.IS_ALPHANUMERIC="isAlphanumeric",e.IS_DECIMAL="isDecimal",e.IS_ASCII="isAscii",e.IS_BASE64="isBase64",e.IS_BYTE_LENGTH="isByteLength",e.IS_CREDIT_CARD="isCreditCard",e.IS_CURRENCY="isCurrency",e.IS_EMAIL="isEmail",e.IS_FQDN="isFqdn",e.IS_FULL_WIDTH="isFullWidth",e.IS_HALF_WIDTH="isHalfWidth",e.IS_VARIABLE_WIDTH="isVariableWidth",e.IS_HEX_COLOR="isHexColor",e.IS_HEXADECIMAL="isHexadecimal",e.IS_MAC_ADDRESS="isMacAddress",e.IS_IP="isIp",e.IS_PORT="isPort",e.IS_ISBN="isIsbn",e.IS_ISIN="isIsin",e.IS_ISO8601="isIso8601",e.IS_JSON="isJson",e.IS_JWT="isJwt",e.IS_OBJECT="isObject",e.IS_NOT_EMPTY_OBJECT="isNotEmptyObject",e.IS_LOWERCASE="isLowercase",e.IS_MOBILE_PHONE="isMobilePhone",e.IS_PHONE_NUMBER="isPhoneNumber",e.IS_ISO31661_ALPHA_2="isISO31661Alpha2",e.IS_ISO31661_ALPHA_3="isISO31661Alpha3",e.IS_MONGO_ID="isMongoId",e.IS_MULTIBYTE="isMultibyte",e.IS_SURROGATE_PAIR="isSurrogatePair",e.IS_URL="isUrl",e.IS_UUID="isUuid",e.LENGTH="length",e.IS_UPPERCASE="isUppercase",e.MIN_LENGTH="minLength",e.MAX_LENGTH="maxLength",e.MATCHES="matches",e.IS_MILITARY_TIME="isMilitaryTime",e.IS_HASH="isHash",e.IS_ISSN="isISSN",e.ARRAY_CONTAINS="arrayContains",e.ARRAY_NOT_CONTAINS="arrayNotContains",e.ARRAY_NOT_EMPTY="arrayNotEmpty",e.ARRAY_MIN_SIZE="arrayMinSize",e.ARRAY_MAX_SIZE="arrayMaxSize",e.ARRAY_UNIQUE="arrayUnique",e.IS_INSTANCE="isInstance",e}();t.ValidationTypes=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,o,i=new(function(){function e(){this.instances=[]}return e.prototype.get=function(e){var t=this.instances.find((function(t){return t.type===e}));return t||(t={type:e,object:new e},this.instances.push(t)),t.object},e}());t.useContainer=function(e,t){r=e,o=t},t.getFromContainer=function(e){if(r)try{var t=r.get(e);if(t)return t;if(!o||!o.fallback)return t}catch(e){if(!o||!o.fallbackOnErrors)throw e}return i.get(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(111);const r=n(1),o=n(17);class i{static obfuscate(e,t={}){const n=new o.InversifyContainerFacade;n.load(e,"",t);const i=n.get(r.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return n.unload(),i}}t.JavaScriptObfuscator=i,i.version=null!=="0.24.3"?"0.24.3":"unknown"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12);function o(e){return"function"==typeof e?e.name:"symbol"==typeof e?e.toString():e}function i(e){if(e.name)return e.name;var t=e.toString(),n=t.match(/^function\s*([^\s(]+)/);return n?n[1]:"Anonymous function: "+t}t.getServiceIdentifierAsString=o,t.listRegisteredBindingsForServiceIdentifier=function(e,t,n){var r="",o=n(e,t);return 0!==o.length&&(r="\nRegistered bindings:",o.forEach((function(e){var t="Object";null!==e.implementationType&&(t=i(e.implementationType)),r=r+"\n "+t,e.constraint.metaData&&(r=r+" - "+e.constraint.metaData)}))),r},t.circularDependencyToException=function e(t){t.childRequests.forEach((function(t){if(function e(t,n){return null!==t.parentRequest&&(t.parentRequest.serviceIdentifier===n||e(t.parentRequest,n))}(t,t.serviceIdentifier)){var n=function(e){return function e(t,n){void 0===n&&(n=[]);var r=o(t.serviceIdentifier);return n.push(r),null!==t.parentRequest?e(t.parentRequest,n):n}(e).reverse().join(" --\x3e ")}(t);throw new Error(r.CIRCULAR_DEPENDENCY+" "+n)}e(t)}))},t.listMetadataForTarget=function(e,t){if(t.isTagged()||t.isNamed()){var n="",r=t.getNamedTag(),o=t.getCustomTags();return null!==r&&(n+=r.toString()+"\n"),null!==o&&o.forEach((function(e){n+=e.toString()+"\n"}))," "+e+"\n "+e+" - "+n}return" "+e},t.getFunctionName=i},function(e,t){t.getArg=function(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('"'+t+'" is a required argument.')};var n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function o(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function i(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function a(e){var n=e,r=o(e);if(r){if(!r.path)return e;n=r.path}for(var a,s=t.isAbsolute(n),u=n.split(/\/+/),d=0,l=u.length-1;l>=0;l--)"."===(a=u[l])?u.splice(l,1):".."===a?d++:d>0&&(""===a?(u.splice(l+1,d),d=0):(u.splice(l,2),d--));return""===(n=u.join("/"))&&(n=s?"/":"."),r?(r.path=n,i(r)):n}function s(e,t){""===e&&(e="."),""===t&&(t=".");var n=o(t),s=o(e);if(s&&(e=s.path||"/"),n&&!n.scheme)return s&&(n.scheme=s.scheme),i(n);if(n||t.match(r))return t;if(s&&!s.host&&!s.path)return s.host=t,i(s);var u="/"===t.charAt(0)?t:a(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=u,i(s)):u}t.urlParse=o,t.urlGenerate=i,t.normalize=a,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||n.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var n=0;0!==t.indexOf(e+"/");){var r=e.lastIndexOf("/");if(r<0)return t;if((e=e.slice(0,r)).match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)};var u=!("__proto__"in Object.create(null));function d(e){return e}function l(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function c(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=u?d:function(e){return l(e)?"$"+e:e},t.fromSetString=u?d:function(e){return l(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){var r=c(e.source,t.source);return 0!==r?r:0!==(r=e.originalLine-t.originalLine)?r:0!==(r=e.originalColumn-t.originalColumn)||n?r:0!==(r=e.generatedColumn-t.generatedColumn)?r:0!==(r=e.generatedLine-t.generatedLine)?r:c(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,n){var r=e.generatedLine-t.generatedLine;return 0!==r?r:0!==(r=e.generatedColumn-t.generatedColumn)||n?r:0!==(r=c(e.source,t.source))?r:0!==(r=e.originalLine-t.originalLine)?r:0!==(r=e.originalColumn-t.originalColumn)?r:c(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var n=e.generatedLine-t.generatedLine;return 0!==n?n:0!==(n=e.generatedColumn-t.generatedColumn)?n:0!==(n=c(e.source,t.source))?n:0!==(n=e.originalLine-t.originalLine)?n:0!==(n=e.originalColumn-t.originalColumn)?n:c(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,n){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),n){var r=o(n);if(!r)throw new Error("sourceMapURL could not be parsed");if(r.path){var u=r.path.lastIndexOf("/");u>=0&&(r.path=r.path.substring(0,u+1))}t=s(i(r),t)}return a(t)}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t,n){this.identifierNamesGenerator=e(n),this.randomGenerator=t,this.options=n}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const n=this.customNodes.get(e);n&&t(n)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],u),t.AbstractCustomNodeGroup=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(40);t.StringArrayEncoding=r.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=r,r.hexadecimalPrefix="0x"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(261),o=function(){function e(){this.validationMetadatas=[],this.constraintMetadatas=[]}return Object.defineProperty(e.prototype,"hasValidationMetaData",{get:function(){return!!this.validationMetadatas.length},enumerable:!0,configurable:!0}),e.prototype.addValidationSchema=function(e){var t=this;(new r.ValidationSchemaToMetadataTransformer).transform(e).forEach((function(e){return t.addValidationMetadata(e)}))},e.prototype.addValidationMetadata=function(e){this.validationMetadatas.push(e)},e.prototype.addConstraintMetadata=function(e){this.constraintMetadatas.push(e)},e.prototype.groupByPropertyName=function(e){var t={};return e.forEach((function(e){t[e.propertyName]||(t[e.propertyName]=[]),t[e.propertyName].push(e)})),t},e.prototype.getTargetValidationMetadatas=function(e,t,n){var r=this.validationMetadatas.filter((function(r){return(r.target===e||r.target===t)&&(!!r.always||(!(n&&n.length>0)||r.groups&&!!r.groups.find((function(e){return-1!==n.indexOf(e)}))))})),o=this.validationMetadatas.filter((function(t){return"string"!=typeof t.target&&(t.target!==e&&((!(t.target instanceof Function)||e.prototype instanceof t.target)&&(!!t.always||(!(n&&n.length>0)||t.groups&&!!t.groups.find((function(e){return-1!==n.indexOf(e)}))))))})).filter((function(e){return!r.find((function(t){return t.propertyName===e.propertyName&&t.type===e.type}))}));return r.concat(o)},e.prototype.getTargetValidatorConstraints=function(e){return this.constraintMetadatas.filter((function(t){return t.target===e}))},e}();t.MetadataStorage=o},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ArrayExpression="ArrayExpression",e.ArrayPattern="ArrayPattern",e.ArrowFunctionExpression="ArrowFunctionExpression",e.AssignmentExpression="AssignmentExpression",e.AssignmentPattern="AssignmentPattern",e.AwaitExpression="AwaitExpression",e.BinaryExpression="BinaryExpression",e.BlockStatement="BlockStatement",e.BreakStatement="BreakStatement",e.CallExpression="CallExpression",e.CatchClause="CatchClause",e.ClassDeclaration="ClassDeclaration",e.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,n){"use strict";(function(t){var r=n(147); /*! * The buffer module from node.js, for the browser. * @@ -42,12 +42,12 @@ MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ -var n;!function(n){!function(r){var o="object"==typeof t?t:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),i=a(n);function a(e,t){return function(n,r){"function"!=typeof e[n]&&Object.defineProperty(e,n,{configurable:!0,writable:!0,value:r}),t&&t(n,r)}}void 0===o.Reflect?o.Reflect=n:i=a(o.Reflect,i),function(t){var n=Object.prototype.hasOwnProperty,r="function"==typeof Symbol,o=r&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",i=r&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",a="function"==typeof Object.create,s={__proto__:[]}instanceof Array,u=!a&&!s,d={create:a?function(){return R(Object.create(null))}:s?function(){return R({__proto__:null})}:function(){return R({})},has:u?function(e,t){return n.call(e,t)}:function(e,t){return t in e},get:u?function(e,t){return n.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},l=Object.getPrototypeOf(Function),c="object"==typeof e&&e.env&&"true"===e.env.REFLECT_METADATA_USE_MAP_POLYFILL,p=c||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?function(){var e={},t=[],n=function(){function e(e,t,n){this._index=0,this._keys=e,this._values=t,this._selector=n}return e.prototype["@@iterator"]=function(){return this},e.prototype[i]=function(){return this},e.prototype.next=function(){var e=this._index;if(e>=0&&e=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:n,done:!1}}return{value:void 0,done:!0}},e.prototype.throw=function(e){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),e},e.prototype.return=function(e){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:e,done:!0}},e}();return function(){function t(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),t.prototype.has=function(e){return this._find(e,!1)>=0},t.prototype.get=function(e){var t=this._find(e,!1);return t>=0?this._values[t]:void 0},t.prototype.set=function(e,t){var n=this._find(e,!0);return this._values[n]=t,this},t.prototype.delete=function(t){var n=this._find(t,!1);if(n>=0){for(var r=this._keys.length,o=n+1;o=0;--n){var r=(0,e[n])(t);if(!C(r)&&!N(r)){if(!D(r))throw new TypeError;t=r}}return t}(e,t)}if(!T(e))throw new TypeError;if(!A(t))throw new TypeError;if(!A(r)&&!C(r)&&!N(r))throw new TypeError;return N(r)&&(r=void 0),function(e,t,n,r){for(var o=e.length-1;o>=0;--o){var i=(0,e[o])(t,n,r);if(!C(i)&&!N(i)){if(!A(i))throw new TypeError;r=i}}return r}(e,t,n=E(n),r)})),t("metadata",(function(e,t){return function(n,r){if(!A(n))throw new TypeError;if(!C(r)&&!function(e){switch(_(e)){case 3:case 4:return!0;default:return!1}}(r))throw new TypeError;y(e,t,n,r)}})),t("defineMetadata",(function(e,t,n,r){if(!A(n))throw new TypeError;return C(r)||(r=E(r)),y(e,t,n,r)})),t("hasMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return!0;var o=F(n);return!N(o)&&e(t,o,r)}(e,t,n)})),t("hasOwnMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),m(e,t,n)})),t("getMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return b(t,n,r);var o=F(n);return N(o)?void 0:e(t,o,r)}(e,t,n)})),t("getOwnMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),b(e,t,n)})),t("getMetadataKeys",(function(e,t){if(!A(e))throw new TypeError;return C(t)||(t=E(t)),function e(t,n){var r=S(t,n),o=F(t);if(null===o)return r;var i=e(o,n);if(i.length<=0)return r;if(r.length<=0)return i;for(var a=new g,s=[],u=0,d=r;u0)return!0;var o=h.get(t);return o.delete(n),o.size>0||(h.delete(t),!0)}))}(i)}()}(n||(n={}))}).call(this,n(66),n(36))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?o(e.value):new n((function(t){t(e.value)})).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=r[2&i[0]?"return":i[0]?"throw":"next"])&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[0,o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?g.length:n.length),f=function e(t,n){for(var r=t.getPropertiesMetadata(n),o=[],a=Object.keys(r),s=0,d=a;s0?l:e(t,r)}return 0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.str=e}return e.prototype.startsWith=function(e){return 0===this.str.indexOf(e)},e.prototype.endsWith=function(e){var t,n=e.split("").reverse().join("");return t=this.str.split("").reverse().join(""),this.startsWith.call({str:t},n)},e.prototype.contains=function(e){return-1!==this.str.indexOf(e)},e.prototype.equals=function(e){return this.str===e},e.prototype.value=function(){return this.str},e}();t.QueryableString=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),o=function(){function e(e,t,n,o,i){this.id=r.id(),this.serviceIdentifier=e,this.parentContext=t,this.parentRequest=n,this.target=i,this.childRequests=[],this.bindings=Array.isArray(o)?o:[o],this.requestScope=null===n?new Map:null}return e.prototype.addChildRequest=function(t,n,r){var o=new e(t,this.parentContext,this,n,r);return this.childRequests.push(o),o},e}();t.Request=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(68),a=n(30),s=n(122),u=function(e,t,n){try{return n()}catch(n){throw i.isStackOverflowExeption(n)?new Error(r.CIRCULAR_DEPENDENCY_IN_FACTORY(e,t.toString())):n}},d=function(e){return function(t){t.parentContext.setCurrentRequest(t);var n=t.bindings,i=t.childRequests,l=t.target&&t.target.isArray(),c=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(l&&c)return i.map((function(t){return d(e)(t)}));var p=null;if(!t.target.isOptional()||0!==n.length){var g=n[0],h=g.scope===o.BindingScopeEnum.Singleton,f=g.scope===o.BindingScopeEnum.Request;if(h&&g.activated)return g.cache;if(f&&null!==e&&e.has(g.id))return e.get(g.id);if(g.type===o.BindingTypeEnum.ConstantValue)p=g.cache;else if(g.type===o.BindingTypeEnum.Function)p=g.cache;else if(g.type===o.BindingTypeEnum.Constructor)p=g.implementationType;else if(g.type===o.BindingTypeEnum.DynamicValue&&null!==g.dynamicValue)p=u("toDynamicValue",g.serviceIdentifier,(function(){return g.dynamicValue(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Factory&&null!==g.factory)p=u("toFactory",g.serviceIdentifier,(function(){return g.factory(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Provider&&null!==g.provider)p=u("toProvider",g.serviceIdentifier,(function(){return g.provider(t.parentContext)}));else{if(g.type!==o.BindingTypeEnum.Instance||null===g.implementationType){var m=a.getServiceIdentifierAsString(t.serviceIdentifier);throw new Error(r.INVALID_BINDING_TYPE+" "+m)}p=s.resolveInstance(g.implementationType,i,d(e))}return"function"==typeof g.onActivation&&(p=g.onActivation(t.parentContext,p)),h&&(g.cache=p,g.activated=!0),f&&null!==e&&!e.has(g.id)&&e.set(g.id,p),p}}};t.resolve=function(e){return d(e.plan.rootRequest.requestScope)(e.plan.rootRequest)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(11);t.resolveInstance=function(e,t,n){var a,s,u=null;if(t.length>0){var d=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ConstructorArgument})).map(n);s=d,u=function(e,t,n){var r=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ClassProperty})),i=r.map(n);return r.forEach((function(t,n){var r;r=t.target.name.value();var o=i[n];e[r]=o})),e}(u=new((a=e).bind.apply(a,[void 0].concat(s))),t,n)}else u=new e;return function(e,t){if(Reflect.hasMetadata(i.POST_CONSTRUCT,e)){var n=Reflect.getMetadata(i.POST_CONSTRUCT,e);try{t[n.value]()}catch(t){throw new Error(r.POST_CONSTRUCT_ERROR(e.name,t.message))}}}(e,u),u}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(124),a=n(71),s=function(){function e(e){this._binding=e}return e.prototype.to=function(e){return this._binding.type=o.BindingTypeEnum.Instance,this._binding.implementationType=e,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toSelf=function(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error(""+r.INVALID_TO_SELF_VALUE);var e=this._binding.serviceIdentifier;return this.to(e)},e.prototype.toConstantValue=function(e){return this._binding.type=o.BindingTypeEnum.ConstantValue,this._binding.cache=e,this._binding.dynamicValue=null,this._binding.implementationType=null,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toDynamicValue=function(e){return this._binding.type=o.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=e,this._binding.implementationType=null,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toConstructor=function(e){return this._binding.type=o.BindingTypeEnum.Constructor,this._binding.implementationType=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFunction=function(e){if("function"!=typeof e)throw new Error(r.INVALID_FUNCTION_BINDING);var t=this.toConstantValue(e);return this._binding.type=o.BindingTypeEnum.Function,t},e.prototype.toAutoFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=function(t){return function(){return t.container.get(e)}},new a.BindingWhenOnSyntax(this._binding)},e.prototype.toProvider=function(e){return this._binding.type=o.BindingTypeEnum.Provider,this._binding.provider=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toService=function(e){this.toDynamicValue((function(t){return t.container.get(e)}))},e}();t.BindingToSyntax=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(125),o=n(49),i=n(50),a=function(){function e(e){this._binding=e,this._bindingWhenSyntax=new i.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new o.BindingOnSyntax(this._binding),this._bindingInSyntax=new r.BindingInSyntax(e)}return e.prototype.inRequestScope=function(){return this._bindingInSyntax.inRequestScope()},e.prototype.inSingletonScope=function(){return this._bindingInSyntax.inSingletonScope()},e.prototype.inTransientScope=function(){return this._bindingInSyntax.inTransientScope()},e.prototype.when=function(e){return this._bindingWhenSyntax.when(e)},e.prototype.whenTargetNamed=function(e){return this._bindingWhenSyntax.whenTargetNamed(e)},e.prototype.whenTargetIsDefault=function(){return this._bindingWhenSyntax.whenTargetIsDefault()},e.prototype.whenTargetTagged=function(e,t){return this._bindingWhenSyntax.whenTargetTagged(e,t)},e.prototype.whenInjectedInto=function(e){return this._bindingWhenSyntax.whenInjectedInto(e)},e.prototype.whenParentNamed=function(e){return this._bindingWhenSyntax.whenParentNamed(e)},e.prototype.whenParentTagged=function(e,t){return this._bindingWhenSyntax.whenParentTagged(e,t)},e.prototype.whenAnyAncestorIs=function(e){return this._bindingWhenSyntax.whenAnyAncestorIs(e)},e.prototype.whenNoAncestorIs=function(e){return this._bindingWhenSyntax.whenNoAncestorIs(e)},e.prototype.whenAnyAncestorNamed=function(e){return this._bindingWhenSyntax.whenAnyAncestorNamed(e)},e.prototype.whenAnyAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(e,t)},e.prototype.whenNoAncestorNamed=function(e){return this._bindingWhenSyntax.whenNoAncestorNamed(e)},e.prototype.whenNoAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenNoAncestorTagged(e,t)},e.prototype.whenAnyAncestorMatches=function(e){return this._bindingWhenSyntax.whenAnyAncestorMatches(e)},e.prototype.whenNoAncestorMatches=function(e){return this._bindingWhenSyntax.whenNoAncestorMatches(e)},e.prototype.onActivation=function(e){return this._bindingOnSyntax.onActivation(e)},e}();t.BindingInWhenOnSyntax=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(14),o=n(71),i=function(){function e(e){this._binding=e}return e.prototype.inRequestScope=function(){return this._binding.scope=r.BindingScopeEnum.Request,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inSingletonScope=function(){return this._binding.scope=r.BindingScopeEnum.Singleton,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inTransientScope=function(){return this._binding.scope=r.BindingScopeEnum.Transient,new o.BindingWhenOnSyntax(this._binding)},e}();t.BindingInSyntax=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.of=function(t,n){var r=new e;return r.bindings=t,r.middleware=n,r},e}();t.ContainerSnapshot=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=function(){function e(){this._map=new Map}return e.prototype.getMap=function(){return this._map},e.prototype.add=function(e,t){if(null==e)throw new Error(r.NULL_ARGUMENT);if(null==t)throw new Error(r.NULL_ARGUMENT);var n=this._map.get(e);void 0!==n?(n.push(t),this._map.set(e,n)):this._map.set(e,[t])},e.prototype.get=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);var t=this._map.get(e);if(void 0!==t)return t;throw new Error(r.KEY_NOT_FOUND)},e.prototype.remove=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);if(!this._map.delete(e))throw new Error(r.KEY_NOT_FOUND)},e.prototype.removeByCondition=function(e){var t=this;this._map.forEach((function(n,r){var o=n.filter((function(t){return!e(t)}));o.length>0?t._map.set(r,o):t._map.delete(r)}))},e.prototype.hasKey=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);return this._map.has(e)},e.prototype.clone=function(){var t=new e;return this._map.forEach((function(e,n){e.forEach((function(e){return t.add(n,e.clone())}))})),t},e.prototype.traverse=function(e){this._map.forEach((function(t,n){e(n,t)}))},e}();t.Lookup=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),o=function(e){this.id=r.id(),this.registry=e};t.ContainerModule=o;var i=function(e){this.id=r.id(),this.registry=e};t.AsyncContainerModule=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11);t.injectable=function(){return function(e){if(Reflect.hasOwnMetadata(o.PARAM_TYPES,e))throw new Error(r.DUPLICATED_INJECTABLE_DECORATOR);var t=Reflect.getMetadata(o.DESIGN_PARAM_TYPES,e)||[];return Reflect.defineMetadata(o.PARAM_TYPES,t,e),e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(13),o=n(18);t.tagged=function(e,t){return function(n,i,a){var s=new r.Metadata(e,t);"number"==typeof a?o.tagParameter(n,i,a,s):o.tagProperty(n,i,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.named=function(e){return function(t,n,a){var s=new o.Metadata(r.NAMED_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.optional=function(){return function(e,t,n){var a=new o.Metadata(r.OPTIONAL_TAG,!0);"number"==typeof n?i.tagParameter(e,t,n,a):i.tagProperty(e,t,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.unmanaged=function(){return function(e,t,n){var a=new o.Metadata(r.UNMANAGED_TAG,!0);i.tagParameter(e,t,n,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.multiInject=function(e){return function(t,n,a){var s=new o.Metadata(r.MULTI_INJECT_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.targetName=function(e){return function(t,n,a){var s=new o.Metadata(r.NAME_TAG,e);i.tagParameter(t,n,a,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11),i=n(13);t.postConstruct=function(){return function(e,t,n){var a=new i.Metadata(o.POST_CONSTRUCT,t);if(Reflect.hasOwnMetadata(o.POST_CONSTRUCT,e.constructor))throw new Error(r.MULTIPLE_POST_CONSTRUCT_METHODS);Reflect.defineMetadata(o.POST_CONSTRUCT,a,e.constructor)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.multiBindToService=function(e){return function(t){return function(){for(var n=[],r=0;r{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(c.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(p.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(g.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(u.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(73),p=n(3),g=n(15);let h=r=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,n=r.limitThresholdActivationLength-1;let o=t;return t>n&&(o=Math.round(n+t*r.limitThreshold),o>t&&(o=t)),o}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=r.getLimitIndex(e.length),n=[],o=e.length;for(let r=0;rt);r++){const t=e[r];l.traverse(t,{enter:r=>{if(p.NodeGuards.isCallExpressionNode(r))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(r)?l.VisitorOption.Skip:void this.analyzeCallExpressionNode(n,e,r)}})}return n}analyzeCallExpressionNode(e,t,n){r.calleeDataExtractorsList.forEach(r=>{const o=this.calleeDataExtractorFactory(r).extract(t,n.callee);o&&e.push(Object.assign(Object.assign({},o),{callsGraph:this.analyzeRecursive(o.callee.body)}))})}};h.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],h.limitThresholdActivationLength=25,h.limitThreshold=.002,h=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__ICalleeDataExtractor)),i("design:paramtypes",[Function])],h),t.CallsGraphAnalyzer=h},function(e){e.exports=JSON.parse('{"name":"estraverse","description":"ECMAScript JS AST traversal functions","homepage":"https://github.com/estools/estraverse","main":"estraverse.js","version":"4.3.0","engines":{"node":">=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"http://github.com/Constellation"}],"repository":{"type":"git","url":"http://github.com/estools/estraverse.git"},"devDependencies":{"babel-preset-env":"^1.6.1","babel-register":"^6.3.13","chai":"^2.1.1","espree":"^1.11.0","gulp":"^3.8.10","gulp-bump":"^0.2.2","gulp-filter":"^2.0.0","gulp-git":"^1.0.1","gulp-tag-version":"^1.3.0","jshint":"^2.5.6","mocha":"^2.1.0"},"license":"BSD-2-Clause","scripts":{"test":"npm run-script lint && npm run-script unit-test","lint":"jshint estraverse.js","unit-test":"mocha --compilers js:babel-register"}}')},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(51),u=n(3),d=n(15);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!u.NodeGuards.isIdentifierNode(t))return null;const n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return n?{callee:n,name:t.name}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:e=>{if(u.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};l=r([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(51),u=n(3),d=n(15);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){let n=null;return u.NodeGuards.isIdentifierNode(t)&&(n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),u.NodeGuards.isFunctionExpressionNode(t)&&(n=t.body),n?{callee:n,name:t.name||null}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:(e,r)=>{if(u.NodeGuards.isFunctionExpressionNode(e)&&r&&u.NodeGuards.isVariableDeclaratorNode(r)&&u.NodeGuards.isIdentifierNode(r.id)&&r.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};l=r([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(7)),u=n(51),d=n(3),l=n(15);let c=r=class extends u.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const n=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,r=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return n||r}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const n=this.createObjectMembersCallsChain([],t);if(!n.length)return null;const r=n[n.length-1],o=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),n);return o?{callee:o,name:r}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;let r=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===n)return r=this.findCalleeBlockStatement(e.init.properties,t),s.VisitorOption.Break}}),r}findCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;for(const o of e)if(r.isValidTargetPropertyNode(o,n)){if(d.NodeGuards.isObjectExpressionNode(o.value))return this.findCalleeBlockStatement(o.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(o.value))return o.value.body}return null}};c=r=o([a.injectable()],c),t.ObjectExpressionCalleeDataExtractor=c},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(3);let p=r=class{constructor(e){this.prevailingKindOfVariables=r.defaultKindOfVariables,this.arrayUtils=e}analyze(e){const t=[];l.traverse(e,{enter:e=>{c.NodeGuards.isVariableDeclarationNode(e)&&t.push(e.kind)}}),this.prevailingKindOfVariables=this.arrayUtils.findMostOccurringElement(t)||r.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};p.defaultKindOfVariables="var",p=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.IArrayUtils)),i("design:paramtypes",[Object])],p),t.PrevailingKindOfVariablesAnalyzer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(146)),u=i(n(7)),d=n(53),l=n(3);let c=r=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){u.replace(e,{enter:e=>(e.range||(e.range=[r.emptyRangeValue,r.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=r.sourceTypes.length;r.attachMissingRanges(e);for(let n=0;n{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],n=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==n||n.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};c.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},c.sourceTypes=["script","module"],c.emptyRangeValue=0,c=r=o([a.injectable()],c),t.ScopeAnalyzer=c},function(e,t,n){"use strict";const r=n(38),o=n(151),i=n(152),a=n(52),s=n(39),u=n(74).Scope,d=n(155).version;e.exports={version:d,Reference:a,Variable:s,Scope:u,ScopeManager:o,analyze:function(e,t){const n=function e(t,n){function r(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof Array)&&!(e instanceof RegExp)}for(const o in n)if(Object.prototype.hasOwnProperty.call(n,o)){const i=n[o];r(i)?r(t[o])?e(t[o],i):t[o]=e({},i):t[o]=i}return t}({optimistic:!1,directive:!1,nodejsScope:!1,impliedStrict:!1,sourceType:"script",ecmaVersion:5,childVisitorKeys:null,fallback:"iteration"},t),a=new o(n);return new i(n,a).visit(e),r(null===a.__currentScope,"currentScope should be null."),a}}},function(e,t,n){"use strict"; +var n;!function(n){!function(r){var o="object"==typeof t?t:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),i=a(n);function a(e,t){return function(n,r){"function"!=typeof e[n]&&Object.defineProperty(e,n,{configurable:!0,writable:!0,value:r}),t&&t(n,r)}}void 0===o.Reflect?o.Reflect=n:i=a(o.Reflect,i),function(t){var n=Object.prototype.hasOwnProperty,r="function"==typeof Symbol,o=r&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",i=r&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",a="function"==typeof Object.create,s={__proto__:[]}instanceof Array,u=!a&&!s,d={create:a?function(){return R(Object.create(null))}:s?function(){return R({__proto__:null})}:function(){return R({})},has:u?function(e,t){return n.call(e,t)}:function(e,t){return t in e},get:u?function(e,t){return n.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},l=Object.getPrototypeOf(Function),c="object"==typeof e&&e.env&&"true"===e.env.REFLECT_METADATA_USE_MAP_POLYFILL,p=c||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?function(){var e={},t=[],n=function(){function e(e,t,n){this._index=0,this._keys=e,this._values=t,this._selector=n}return e.prototype["@@iterator"]=function(){return this},e.prototype[i]=function(){return this},e.prototype.next=function(){var e=this._index;if(e>=0&&e=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:n,done:!1}}return{value:void 0,done:!0}},e.prototype.throw=function(e){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),e},e.prototype.return=function(e){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:e,done:!0}},e}();return function(){function t(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),t.prototype.has=function(e){return this._find(e,!1)>=0},t.prototype.get=function(e){var t=this._find(e,!1);return t>=0?this._values[t]:void 0},t.prototype.set=function(e,t){var n=this._find(e,!0);return this._values[n]=t,this},t.prototype.delete=function(t){var n=this._find(t,!1);if(n>=0){for(var r=this._keys.length,o=n+1;o=0;--n){var r=(0,e[n])(t);if(!C(r)&&!N(r)){if(!D(r))throw new TypeError;t=r}}return t}(e,t)}if(!T(e))throw new TypeError;if(!A(t))throw new TypeError;if(!A(r)&&!C(r)&&!N(r))throw new TypeError;return N(r)&&(r=void 0),function(e,t,n,r){for(var o=e.length-1;o>=0;--o){var i=(0,e[o])(t,n,r);if(!C(i)&&!N(i)){if(!A(i))throw new TypeError;r=i}}return r}(e,t,n=E(n),r)})),t("metadata",(function(e,t){return function(n,r){if(!A(n))throw new TypeError;if(!C(r)&&!function(e){switch(_(e)){case 3:case 4:return!0;default:return!1}}(r))throw new TypeError;y(e,t,n,r)}})),t("defineMetadata",(function(e,t,n,r){if(!A(n))throw new TypeError;return C(r)||(r=E(r)),y(e,t,n,r)})),t("hasMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return!0;var o=F(n);return!N(o)&&e(t,o,r)}(e,t,n)})),t("hasOwnMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),m(e,t,n)})),t("getMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return b(t,n,r);var o=F(n);return N(o)?void 0:e(t,o,r)}(e,t,n)})),t("getOwnMetadata",(function(e,t,n){if(!A(t))throw new TypeError;return C(n)||(n=E(n)),b(e,t,n)})),t("getMetadataKeys",(function(e,t){if(!A(e))throw new TypeError;return C(t)||(t=E(t)),function e(t,n){var r=S(t,n),o=F(t);if(null===o)return r;var i=e(o,n);if(i.length<=0)return r;if(r.length<=0)return i;for(var a=new g,s=[],u=0,d=r;u0)return!0;var o=h.get(t);return o.delete(n),o.size>0||(h.delete(t),!0)}))}(i)}()}(n||(n={}))}).call(this,n(66),n(36))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?o(e.value):new n((function(t){t(e.value)})).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=r[2&i[0]?"return":i[0]?"throw":"next"])&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[0,o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?g.length:n.length),f=function e(t,n){for(var r=t.getPropertiesMetadata(n),o=[],a=Object.keys(r),s=0,d=a;s0?l:e(t,r)}return 0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.str=e}return e.prototype.startsWith=function(e){return 0===this.str.indexOf(e)},e.prototype.endsWith=function(e){var t,n=e.split("").reverse().join("");return t=this.str.split("").reverse().join(""),this.startsWith.call({str:t},n)},e.prototype.contains=function(e){return-1!==this.str.indexOf(e)},e.prototype.equals=function(e){return this.str===e},e.prototype.value=function(){return this.str},e}();t.QueryableString=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),o=function(){function e(e,t,n,o,i){this.id=r.id(),this.serviceIdentifier=e,this.parentContext=t,this.parentRequest=n,this.target=i,this.childRequests=[],this.bindings=Array.isArray(o)?o:[o],this.requestScope=null===n?new Map:null}return e.prototype.addChildRequest=function(t,n,r){var o=new e(t,this.parentContext,this,n,r);return this.childRequests.push(o),o},e}();t.Request=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(68),a=n(30),s=n(122),u=function(e,t,n){try{return n()}catch(n){throw i.isStackOverflowExeption(n)?new Error(r.CIRCULAR_DEPENDENCY_IN_FACTORY(e,t.toString())):n}},d=function(e){return function(t){t.parentContext.setCurrentRequest(t);var n=t.bindings,i=t.childRequests,l=t.target&&t.target.isArray(),c=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(l&&c)return i.map((function(t){return d(e)(t)}));var p=null;if(!t.target.isOptional()||0!==n.length){var g=n[0],h=g.scope===o.BindingScopeEnum.Singleton,f=g.scope===o.BindingScopeEnum.Request;if(h&&g.activated)return g.cache;if(f&&null!==e&&e.has(g.id))return e.get(g.id);if(g.type===o.BindingTypeEnum.ConstantValue)p=g.cache;else if(g.type===o.BindingTypeEnum.Function)p=g.cache;else if(g.type===o.BindingTypeEnum.Constructor)p=g.implementationType;else if(g.type===o.BindingTypeEnum.DynamicValue&&null!==g.dynamicValue)p=u("toDynamicValue",g.serviceIdentifier,(function(){return g.dynamicValue(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Factory&&null!==g.factory)p=u("toFactory",g.serviceIdentifier,(function(){return g.factory(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Provider&&null!==g.provider)p=u("toProvider",g.serviceIdentifier,(function(){return g.provider(t.parentContext)}));else{if(g.type!==o.BindingTypeEnum.Instance||null===g.implementationType){var m=a.getServiceIdentifierAsString(t.serviceIdentifier);throw new Error(r.INVALID_BINDING_TYPE+" "+m)}p=s.resolveInstance(g.implementationType,i,d(e))}return"function"==typeof g.onActivation&&(p=g.onActivation(t.parentContext,p)),h&&(g.cache=p,g.activated=!0),f&&null!==e&&!e.has(g.id)&&e.set(g.id,p),p}}};t.resolve=function(e){return d(e.plan.rootRequest.requestScope)(e.plan.rootRequest)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(11);t.resolveInstance=function(e,t,n){var a,s,u=null;if(t.length>0){var d=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ConstructorArgument})).map(n);s=d,u=function(e,t,n){var r=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ClassProperty})),i=r.map(n);return r.forEach((function(t,n){var r;r=t.target.name.value();var o=i[n];e[r]=o})),e}(u=new((a=e).bind.apply(a,[void 0].concat(s))),t,n)}else u=new e;return function(e,t){if(Reflect.hasMetadata(i.POST_CONSTRUCT,e)){var n=Reflect.getMetadata(i.POST_CONSTRUCT,e);try{t[n.value]()}catch(t){throw new Error(r.POST_CONSTRUCT_ERROR(e.name,t.message))}}}(e,u),u}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(14),i=n(124),a=n(71),s=function(){function e(e){this._binding=e}return e.prototype.to=function(e){return this._binding.type=o.BindingTypeEnum.Instance,this._binding.implementationType=e,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toSelf=function(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error(""+r.INVALID_TO_SELF_VALUE);var e=this._binding.serviceIdentifier;return this.to(e)},e.prototype.toConstantValue=function(e){return this._binding.type=o.BindingTypeEnum.ConstantValue,this._binding.cache=e,this._binding.dynamicValue=null,this._binding.implementationType=null,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toDynamicValue=function(e){return this._binding.type=o.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=e,this._binding.implementationType=null,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toConstructor=function(e){return this._binding.type=o.BindingTypeEnum.Constructor,this._binding.implementationType=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFunction=function(e){if("function"!=typeof e)throw new Error(r.INVALID_FUNCTION_BINDING);var t=this.toConstantValue(e);return this._binding.type=o.BindingTypeEnum.Function,t},e.prototype.toAutoFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=function(t){return function(){return t.container.get(e)}},new a.BindingWhenOnSyntax(this._binding)},e.prototype.toProvider=function(e){return this._binding.type=o.BindingTypeEnum.Provider,this._binding.provider=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toService=function(e){this.toDynamicValue((function(t){return t.container.get(e)}))},e}();t.BindingToSyntax=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(125),o=n(49),i=n(50),a=function(){function e(e){this._binding=e,this._bindingWhenSyntax=new i.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new o.BindingOnSyntax(this._binding),this._bindingInSyntax=new r.BindingInSyntax(e)}return e.prototype.inRequestScope=function(){return this._bindingInSyntax.inRequestScope()},e.prototype.inSingletonScope=function(){return this._bindingInSyntax.inSingletonScope()},e.prototype.inTransientScope=function(){return this._bindingInSyntax.inTransientScope()},e.prototype.when=function(e){return this._bindingWhenSyntax.when(e)},e.prototype.whenTargetNamed=function(e){return this._bindingWhenSyntax.whenTargetNamed(e)},e.prototype.whenTargetIsDefault=function(){return this._bindingWhenSyntax.whenTargetIsDefault()},e.prototype.whenTargetTagged=function(e,t){return this._bindingWhenSyntax.whenTargetTagged(e,t)},e.prototype.whenInjectedInto=function(e){return this._bindingWhenSyntax.whenInjectedInto(e)},e.prototype.whenParentNamed=function(e){return this._bindingWhenSyntax.whenParentNamed(e)},e.prototype.whenParentTagged=function(e,t){return this._bindingWhenSyntax.whenParentTagged(e,t)},e.prototype.whenAnyAncestorIs=function(e){return this._bindingWhenSyntax.whenAnyAncestorIs(e)},e.prototype.whenNoAncestorIs=function(e){return this._bindingWhenSyntax.whenNoAncestorIs(e)},e.prototype.whenAnyAncestorNamed=function(e){return this._bindingWhenSyntax.whenAnyAncestorNamed(e)},e.prototype.whenAnyAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(e,t)},e.prototype.whenNoAncestorNamed=function(e){return this._bindingWhenSyntax.whenNoAncestorNamed(e)},e.prototype.whenNoAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenNoAncestorTagged(e,t)},e.prototype.whenAnyAncestorMatches=function(e){return this._bindingWhenSyntax.whenAnyAncestorMatches(e)},e.prototype.whenNoAncestorMatches=function(e){return this._bindingWhenSyntax.whenNoAncestorMatches(e)},e.prototype.onActivation=function(e){return this._bindingOnSyntax.onActivation(e)},e}();t.BindingInWhenOnSyntax=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(14),o=n(71),i=function(){function e(e){this._binding=e}return e.prototype.inRequestScope=function(){return this._binding.scope=r.BindingScopeEnum.Request,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inSingletonScope=function(){return this._binding.scope=r.BindingScopeEnum.Singleton,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inTransientScope=function(){return this._binding.scope=r.BindingScopeEnum.Transient,new o.BindingWhenOnSyntax(this._binding)},e}();t.BindingInSyntax=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.of=function(t,n){var r=new e;return r.bindings=t,r.middleware=n,r},e}();t.ContainerSnapshot=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=function(){function e(){this._map=new Map}return e.prototype.getMap=function(){return this._map},e.prototype.add=function(e,t){if(null==e)throw new Error(r.NULL_ARGUMENT);if(null==t)throw new Error(r.NULL_ARGUMENT);var n=this._map.get(e);void 0!==n?(n.push(t),this._map.set(e,n)):this._map.set(e,[t])},e.prototype.get=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);var t=this._map.get(e);if(void 0!==t)return t;throw new Error(r.KEY_NOT_FOUND)},e.prototype.remove=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);if(!this._map.delete(e))throw new Error(r.KEY_NOT_FOUND)},e.prototype.removeByCondition=function(e){var t=this;this._map.forEach((function(n,r){var o=n.filter((function(t){return!e(t)}));o.length>0?t._map.set(r,o):t._map.delete(r)}))},e.prototype.hasKey=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);return this._map.has(e)},e.prototype.clone=function(){var t=new e;return this._map.forEach((function(e,n){e.forEach((function(e){return t.add(n,e.clone())}))})),t},e.prototype.traverse=function(e){this._map.forEach((function(t,n){e(n,t)}))},e}();t.Lookup=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),o=function(e){this.id=r.id(),this.registry=e};t.ContainerModule=o;var i=function(e){this.id=r.id(),this.registry=e};t.AsyncContainerModule=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11);t.injectable=function(){return function(e){if(Reflect.hasOwnMetadata(o.PARAM_TYPES,e))throw new Error(r.DUPLICATED_INJECTABLE_DECORATOR);var t=Reflect.getMetadata(o.DESIGN_PARAM_TYPES,e)||[];return Reflect.defineMetadata(o.PARAM_TYPES,t,e),e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(13),o=n(18);t.tagged=function(e,t){return function(n,i,a){var s=new r.Metadata(e,t);"number"==typeof a?o.tagParameter(n,i,a,s):o.tagProperty(n,i,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.named=function(e){return function(t,n,a){var s=new o.Metadata(r.NAMED_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.optional=function(){return function(e,t,n){var a=new o.Metadata(r.OPTIONAL_TAG,!0);"number"==typeof n?i.tagParameter(e,t,n,a):i.tagProperty(e,t,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.unmanaged=function(){return function(e,t,n){var a=new o.Metadata(r.UNMANAGED_TAG,!0);i.tagParameter(e,t,n,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.multiInject=function(e){return function(t,n,a){var s=new o.Metadata(r.MULTI_INJECT_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(13),i=n(18);t.targetName=function(e){return function(t,n,a){var s=new o.Metadata(r.NAME_TAG,e);i.tagParameter(t,n,a,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(12),o=n(11),i=n(13);t.postConstruct=function(){return function(e,t,n){var a=new i.Metadata(o.POST_CONSTRUCT,t);if(Reflect.hasOwnMetadata(o.POST_CONSTRUCT,e.constructor))throw new Error(r.MULTIPLE_POST_CONSTRUCT_METHODS);Reflect.defineMetadata(o.POST_CONSTRUCT,a,e.constructor)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.multiBindToService=function(e){return function(t){return function(){for(var n=[],r=0;r{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(c.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(p.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(g.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(u.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(73),p=n(3),g=n(15);let h=r=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,n=r.limitThresholdActivationLength-1;let o=t;return t>n&&(o=Math.round(n+t*r.limitThreshold),o>t&&(o=t)),o}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=r.getLimitIndex(e.length),n=[],o=e.length;for(let r=0;rt);r++){const t=e[r];l.traverse(t,{enter:r=>{if(p.NodeGuards.isCallExpressionNode(r))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(r)?l.VisitorOption.Skip:void this.analyzeCallExpressionNode(n,e,r)}})}return n}analyzeCallExpressionNode(e,t,n){r.calleeDataExtractorsList.forEach(r=>{const o=this.calleeDataExtractorFactory(r).extract(t,n.callee);o&&e.push(Object.assign(Object.assign({},o),{callsGraph:this.analyzeRecursive(o.callee.body)}))})}};h.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],h.limitThresholdActivationLength=25,h.limitThreshold=.002,h=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__ICalleeDataExtractor)),i("design:paramtypes",[Function])],h),t.CallsGraphAnalyzer=h},function(e){e.exports=JSON.parse('{"name":"estraverse","description":"ECMAScript JS AST traversal functions","homepage":"https://github.com/estools/estraverse","main":"estraverse.js","version":"4.3.0","engines":{"node":">=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"http://github.com/Constellation"}],"repository":{"type":"git","url":"http://github.com/estools/estraverse.git"},"devDependencies":{"babel-preset-env":"^1.6.1","babel-register":"^6.3.13","chai":"^2.1.1","espree":"^1.11.0","gulp":"^3.8.10","gulp-bump":"^0.2.2","gulp-filter":"^2.0.0","gulp-git":"^1.0.1","gulp-tag-version":"^1.3.0","jshint":"^2.5.6","mocha":"^2.1.0"},"license":"BSD-2-Clause","scripts":{"test":"npm run-script lint && npm run-script unit-test","lint":"jshint estraverse.js","unit-test":"mocha --compilers js:babel-register"}}')},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(51),u=n(3),d=n(15);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!u.NodeGuards.isIdentifierNode(t))return null;const n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return n?{callee:n,name:t.name}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:e=>{if(u.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};l=r([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(51),u=n(3),d=n(15);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){var n;let r=null;return u.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),u.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:null!==(n=t.name)&&void 0!==n?n:null}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:(e,r)=>{if(u.NodeGuards.isFunctionExpressionNode(e)&&r&&u.NodeGuards.isVariableDeclaratorNode(r)&&u.NodeGuards.isIdentifierNode(r.id)&&r.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};l=r([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(7)),u=n(51),d=n(3),l=n(15);let c=r=class extends u.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const n=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,r=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return n||r}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const n=this.createObjectMembersCallsChain([],t);if(!n.length)return null;const r=n[n.length-1],o=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),n);return o?{callee:o,name:r}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;let r=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===n)return r=this.findCalleeBlockStatement(e.init.properties,t),s.VisitorOption.Break}}),r}findCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;for(const o of e)if(r.isValidTargetPropertyNode(o,n)){if(d.NodeGuards.isObjectExpressionNode(o.value))return this.findCalleeBlockStatement(o.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(o.value))return o.value.body}return null}};c=r=o([a.injectable()],c),t.ObjectExpressionCalleeDataExtractor=c},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(3);let p=r=class{constructor(e){this.prevailingKindOfVariables=r.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const n=[];l.traverse(e,{enter:e=>{c.NodeGuards.isVariableDeclarationNode(e)&&n.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(n))&&void 0!==t?t:r.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};p.defaultKindOfVariables="var",p=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.IArrayUtils)),i("design:paramtypes",[Object])],p),t.PrevailingKindOfVariablesAnalyzer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(146)),u=i(n(7)),d=n(53),l=n(3);let c=r=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){u.replace(e,{enter:e=>(e.range||(e.range=[r.emptyRangeValue,r.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=r.sourceTypes.length;r.attachMissingRanges(e);for(let n=0;n{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],n=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==n||n.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};c.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},c.sourceTypes=["script","module"],c.emptyRangeValue=0,c=r=o([a.injectable()],c),t.ScopeAnalyzer=c},function(e,t,n){"use strict";const r=n(38),o=n(151),i=n(152),a=n(52),s=n(39),u=n(74).Scope,d=n(155).version;e.exports={version:d,Reference:a,Variable:s,Scope:u,ScopeManager:o,analyze:function(e,t){const n=function e(t,n){function r(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof Array)&&!(e instanceof RegExp)}for(const o in n)if(Object.prototype.hasOwnProperty.call(n,o)){const i=n[o];r(i)?r(t[o])?e(t[o],i):t[o]=e({},i):t[o]=i}return t}({optimistic:!1,directive:!1,nodejsScope:!1,impliedStrict:!1,sourceType:"script",ecmaVersion:5,childVisitorKeys:null,fallback:"iteration"},t),a=new o(n);return new i(n,a).visit(e),r(null===a.__currentScope,"currentScope should be null."),a}}},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus @license MIT -*/var r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,s,u=a(e),d=1;d=i)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),h(n)?r.showHidden=n:n&&t._extend(r,n),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),l(r,e,r.depth)}function u(e,t){var n=s.styles[t];return n?"["+s.colors[n][0]+"m"+e+"["+s.colors[n][1]+"m":e}function d(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&A(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,e);return b(o)||(o=l(e,o,r)),o}var i=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(b(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(m(t))return e.stylize(""+t,"number");if(h(t))return e.stylize(""+t,"boolean");if(f(t))return e.stylize("null","null")}(e,n);if(i)return i;var a=Object.keys(n),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(n)),N(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return c(n);if(0===a.length){if(A(n)){var u=n.name?": "+n.name:"";return e.stylize("[Function"+u+"]","special")}if(S(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(C(n))return e.stylize(Date.prototype.toString.call(n),"date");if(N(n))return c(n)}var d,_="",v=!1,E=["{","}"];(g(n)&&(v=!0,E=["[","]"]),A(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return S(n)&&(_=" "+RegExp.prototype.toString.call(n)),C(n)&&(_=" "+Date.prototype.toUTCString.call(n)),N(n)&&(_=" "+c(n)),0!==a.length||v&&0!=n.length?r<0?S(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),d=v?function(e,t,n,r,o){for(var i=[],a=0,s=t.length;a=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(d,_,E)):E[0]+_+E[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function p(e,t,n,r,o,i){var a,s,u;if((u=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?s=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(s=e.stylize("[Setter]","special")),D(r,o)||(a="["+o+"]"),s||(e.seen.indexOf(u.value)<0?(s=f(n)?l(e,u.value,null):l(e,u.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+s.split("\n").map((function(e){return" "+e})).join("\n")):s=e.stylize("[Circular]","special")),y(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=e.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=e.stylize(a,"string"))}return a+": "+s}function g(e){return Array.isArray(e)}function h(e){return"boolean"==typeof e}function f(e){return null===e}function m(e){return"number"==typeof e}function b(e){return"string"==typeof e}function y(e){return void 0===e}function S(e){return _(e)&&"[object RegExp]"===v(e)}function _(e){return"object"==typeof e&&null!==e}function C(e){return _(e)&&"[object Date]"===v(e)}function N(e){return _(e)&&("[object Error]"===v(e)||e instanceof Error)}function A(e){return"function"==typeof e}function v(e){return Object.prototype.toString.call(e)}function E(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(y(i)&&(i=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(i)){var r=e.pid;a[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else a[n]=function(){};return a[n]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=g,t.isBoolean=h,t.isNull=f,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=b,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=y,t.isRegExp=S,t.isObject=_,t.isDate=C,t.isError=N,t.isFunction=A,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(149);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function I(){var e=new Date,t=[E(e.getHours()),E(e.getMinutes()),E(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function D(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",I(),t.format.apply(t,arguments))},t.inherits=n(150),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var P="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function M(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(P&&e[P]){var t;if("function"!=typeof(t=e[P]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,P,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i=5}__get(e){return this.__nodeToScope.get(e)}getDeclaredVariables(e){return this.__declaredVariables.get(e)||[]}acquire(e,t){function n(e){return"function"!==e.type||!e.functionExpressionScope}const r=this.__get(e);if(!r||0===r.length)return null;if(1===r.length)return r[0];if(t)for(let e=r.length-1;e>=0;--e){const t=r[e];if(n(t))return t}else for(let e=0,t=r.length;e=6}}},function(e,t,n){"use strict";const r=n(7).Syntax,o=n(76),i=n(52),a=n(39),s=n(154),u=n(75),d=n(38),l=u.ParameterDefinition,c=u.Definition;class p extends o.Visitor{constructor(e,t){super(null,t.options),this.declaration=e,this.referencer=t}visitImport(e,t){this.referencer.visitPattern(e,e=>{this.referencer.currentScope().__define(e,new c(a.ImportBinding,e,t,this.declaration,null,null))})}ImportNamespaceSpecifier(e){const t=e.local||e.id;t&&this.visitImport(t,e)}ImportDefaultSpecifier(e){const t=e.local||e.id;this.visitImport(t,e)}ImportSpecifier(e){const t=e.local||e.id;e.name?this.visitImport(e.name,e):this.visitImport(t,e)}}class g extends o.Visitor{constructor(e,t){super(null,e),this.options=e,this.scopeManager=t,this.parent=null,this.isInnerMethodDefinition=!1}currentScope(){return this.scopeManager.__currentScope}close(e){for(;this.currentScope()&&e===this.currentScope().block;)this.scopeManager.__currentScope=this.currentScope().__close(this.scopeManager)}pushInnerMethodDefinition(e){const t=this.isInnerMethodDefinition;return this.isInnerMethodDefinition=e,t}popInnerMethodDefinition(e){this.isInnerMethodDefinition=e}referencingDefaultValue(e,t,n,r){const o=this.currentScope();t.forEach(t=>{o.__referencing(e,i.WRITE,t.right,n,e!==t.left,r)})}visitPattern(e,t,n){let r=t,o=n;"function"==typeof t&&(o=t,r={processRightHandNodes:!1}),function(e,t,n,r){const o=new s(e,t,r);o.visit(t),null!=n&&o.rightHandNodes.forEach(n.visit,n)}(this.options,e,r.processRightHandNodes?this:null,o)}visitFunction(e){let t,n;e.type===r.FunctionDeclaration&&this.currentScope().__define(e.id,new c(a.FunctionName,e.id,e,null,null,null)),e.type===r.FunctionExpression&&e.id&&this.scopeManager.__nestFunctionExpressionNameScope(e),this.scopeManager.__nestFunctionScope(e,this.isInnerMethodDefinition);const o=this;function i(n,r){o.currentScope().__define(n,new l(n,e,t,r.rest)),o.referencingDefaultValue(n,r.assignments,null,!0)}for(t=0,n=e.params.length;t{this.currentScope().__define(t,new l(t,e,e.params.length,!0))}),e.body&&(e.body.type===r.BlockStatement?this.visitChildren(e.body):this.visit(e.body)),this.close(e)}visitClass(e){e.type===r.ClassDeclaration&&this.currentScope().__define(e.id,new c(a.ClassName,e.id,e,null,null,null)),this.visit(e.superClass),this.scopeManager.__nestClassScope(e),e.id&&this.currentScope().__define(e.id,new c(a.ClassName,e.id,e)),this.visit(e.body),this.close(e)}visitProperty(e){let t;e.computed&&this.visit(e.key);const n=e.type===r.MethodDefinition;n&&(t=this.pushInnerMethodDefinition(!0)),this.visit(e.value),n&&this.popInnerMethodDefinition(t)}visitForIn(e){e.left.type===r.VariableDeclaration&&"var"!==e.left.kind&&this.scopeManager.__nestForScope(e),e.left.type===r.VariableDeclaration?(this.visit(e.left),this.visitPattern(e.left.declarations[0].id,t=>{this.currentScope().__referencing(t,i.WRITE,e.right,null,!0,!0)})):this.visitPattern(e.left,{processRightHandNodes:!0},(t,n)=>{let r=null;this.currentScope().isStrict||(r={pattern:t,node:e}),this.referencingDefaultValue(t,n.assignments,r,!1),this.currentScope().__referencing(t,i.WRITE,e.right,r,!0,!1)}),this.visit(e.right),this.visit(e.body),this.close(e)}visitVariableDeclaration(e,t,n,r){const o=n.declarations[r],a=o.init;this.visitPattern(o.id,{processRightHandNodes:!0},(s,u)=>{e.__define(s,new c(t,s,o,n,r,n.kind)),this.referencingDefaultValue(s,u.assignments,null,!0),a&&this.currentScope().__referencing(s,i.WRITE,a,null,!u.topLevel,!0)})}AssignmentExpression(e){s.isPattern(e.left)?"="===e.operator?this.visitPattern(e.left,{processRightHandNodes:!0},(t,n)=>{let r=null;this.currentScope().isStrict||(r={pattern:t,node:e}),this.referencingDefaultValue(t,n.assignments,r,!1),this.currentScope().__referencing(t,i.WRITE,e.right,r,!n.topLevel,!1)}):this.currentScope().__referencing(e.left,i.RW,e.right):this.visit(e.left),this.visit(e.right)}CatchClause(e){this.scopeManager.__nestCatchScope(e),this.visitPattern(e.param,{processRightHandNodes:!0},(t,n)=>{this.currentScope().__define(t,new c(a.CatchClause,e.param,e,null,null,null)),this.referencingDefaultValue(t,n.assignments,null,!0)}),this.visit(e.body),this.close(e)}Program(e){this.scopeManager.__nestGlobalScope(e),this.scopeManager.__isNodejsScope()&&(this.currentScope().isStrict=!1,this.scopeManager.__nestFunctionScope(e,!1)),this.scopeManager.__isES6()&&this.scopeManager.isModule()&&this.scopeManager.__nestModuleScope(e),this.scopeManager.isStrictModeSupported()&&this.scopeManager.isImpliedStrict()&&(this.currentScope().isStrict=!0),this.visitChildren(e),this.close(e)}Identifier(e){this.currentScope().__referencing(e)}UpdateExpression(e){s.isPattern(e.argument)?this.currentScope().__referencing(e.argument,i.RW,null):this.visitChildren(e)}MemberExpression(e){this.visit(e.object),e.computed&&this.visit(e.property)}Property(e){this.visitProperty(e)}MethodDefinition(e){this.visitProperty(e)}BreakStatement(){}ContinueStatement(){}LabeledStatement(e){this.visit(e.body)}ForStatement(e){e.init&&e.init.type===r.VariableDeclaration&&"var"!==e.init.kind&&this.scopeManager.__nestForScope(e),this.visitChildren(e),this.close(e)}ClassExpression(e){this.visitClass(e)}ClassDeclaration(e){this.visitClass(e)}CallExpression(e){this.scopeManager.__ignoreEval()||e.callee.type!==r.Identifier||"eval"!==e.callee.name||this.currentScope().variableScope.__detectEval(),this.visitChildren(e)}BlockStatement(e){this.scopeManager.__isES6()&&this.scopeManager.__nestBlockScope(e),this.visitChildren(e),this.close(e)}ThisExpression(){this.currentScope().variableScope.__detectThis()}WithStatement(e){this.visit(e.object),this.scopeManager.__nestWithScope(e),this.visit(e.body),this.close(e)}VariableDeclaration(e){const t="var"===e.kind?this.currentScope().variableScope:this.currentScope();for(let n=0,r=e.declarations.length;n=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"https://github.com/Constellation"}],"repository":{"type":"git","url":"https://github.com/estools/esrecurse.git"},"dependencies":{"estraverse":"^4.1.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-eslint":"^7.2.3","babel-preset-es2015":"^6.24.1","babel-register":"^6.24.1","chai":"^4.0.2","esprima":"^4.0.0","gulp":"^3.9.0","gulp-bump":"^2.7.0","gulp-eslint":"^4.0.0","gulp-filter":"^5.0.0","gulp-git":"^2.4.1","gulp-mocha":"^4.3.1","gulp-tag-version":"^1.2.1","jsdoc":"^3.3.0-alpha10","minimist":"^1.1.0"},"license":"BSD-2-Clause","scripts":{"test":"gulp travis","unit-test":"gulp test","lint":"gulp lint"},"babel":{"presets":["es2015"]}}')},function(e,t,n){"use strict";const r=n(7).Syntax,o=n(76);class i extends o.Visitor{static isPattern(e){const t=e.type;return t===r.Identifier||t===r.ObjectPattern||t===r.ArrayPattern||t===r.SpreadElement||t===r.RestElement||t===r.AssignmentPattern}constructor(e,t,n){super(null,e),this.rootPattern=t,this.callback=n,this.assignments=[],this.rightHandNodes=[],this.restElements=[]}Identifier(e){const t=(n=this.restElements)[n.length-1]||null;var n;this.callback(e,{topLevel:e===this.rootPattern,rest:null!=t&&t.argument===e,assignments:this.assignments})}Property(e){e.computed&&this.rightHandNodes.push(e.key),this.visit(e.value)}ArrayPattern(e){for(let t=0,n=e.elements.length;t{this.rightHandNodes.push(e)}),this.visit(e.callee)}}e.exports=i},function(e){e.exports=JSON.parse('{"name":"eslint-scope","description":"ECMAScript scope analyzer for ESLint","homepage":"http://github.com/eslint/eslint-scope","main":"lib/index.js","version":"5.0.0","engines":{"node":">=8.0.0"},"repository":"eslint/eslint-scope","bugs":{"url":"https://github.com/eslint/eslint-scope/issues"},"license":"BSD-2-Clause","scripts":{"test":"node Makefile.js test","lint":"node Makefile.js lint","generate-release":"eslint-generate-release","generate-alpharelease":"eslint-generate-prerelease alpha","generate-betarelease":"eslint-generate-prerelease beta","generate-rcrelease":"eslint-generate-prerelease rc","publish-release":"eslint-publish-release"},"files":["LICENSE","README.md","lib"],"dependencies":{"esrecurse":"^4.1.0","estraverse":"^4.1.1"},"devDependencies":{"@typescript-eslint/parser":"^1.11.0","chai":"^4.2.0","eslint":"^6.0.1","eslint-config-eslint":"^5.0.1","eslint-plugin-node":"^9.1.0","eslint-release":"^1.0.0","espree":"^6.0.0","istanbul":"^0.4.5","mocha":"^6.1.4","npm-license":"^0.3.3","shelljs":"^0.8.3","typescript":"^3.5.2"}}')},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(3),p=n(16),g=n(54);let h=r=class{constructor(e,t,n){this.stringArrayStorageData=new Map,this.stringArrayStorage=e,this.randomGenerator=t,this.options=n}analyze(e){this.options.stringArray&&l.traverse(e,{enter:(e,t)=>{if(t)return p.NodeMetadata.isIgnoredNode(e)?l.VisitorOption.Skip:void(c.NodeGuards.isLiteralNode(e)&&this.analyzeLiteralNode(e,t))}})}getItemDataForLiteralNode(e){return this.stringArrayStorageData.get(e)}analyzeLiteralNode(e,t){"string"==typeof e.value&&(g.NodeLiteralUtils.isProhibitedLiteralNode(e,t)||this.shouldAddValueToStringArray(e.value)&&this.stringArrayStorageData.set(e,this.stringArrayStorage.getOrThrow(e.value)))}shouldAddValueToStringArray(e){return e.length>=r.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}};h.minimumLengthForStringArray=3,h=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.TStringArrayStorage)),a(1,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(2,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object,Object])],h),t.StringArrayStorageAnalyzer=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(17),o=n(0),i=n(1),a=n(77),s=n(22),u=n(158),d=n(159),l=n(180),c=n(181),p=n(182),g=n(183),h=n(184);t.controlFlowTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(c.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(u.BinaryExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(g.LogicalExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(h.StringLiteralControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(i.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(19),l=n(78);let c=r=class extends l.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,n){super(e,t,n)}replace(e,t,n){const o=e.operator,i=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.BinaryExpressionFunctionNode);i.initialize(o);const a=this.insertCustomNodeToControlFlowStorage(i,n,o,r.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(n.getStorageId(),a,e.left,e.right)}};c.usingExistingIdentifierChance=.5,c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(1,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],c),t.BinaryExpressionControlFlowReplacer=c},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(19),p=n(9),g=n(10),h=n(3),f=n(4);let m=r=class extends g.AbstractNodeTransformer{constructor(e,t,n,r){super(n,r),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=h.NodeGuards.isBreakStatementNode(e)||h.NodeGuards.isContinueStatementNode(e),n=h.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),r=h.NodeGuards.isClassDeclarationNode(e);return h.NodeGuards.isFunctionDeclarationNode(e)||t||n||r}static canTransformBlockStatementNode(e){let t=!0;return l.traverse(e,{enter:e=>{if(h.NodeGuards.isWhileStatementNode(e))return l.VisitorOption.Skip;r.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case p.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&h.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold||!r.canTransformBlockStatementNode(e))return e;const n=e.body,o=this.arrayUtils.createWithRange(n.length),i=this.arrayUtils.shuffle(o),a=o.map(e=>i.indexOf(e)),s=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(n,i,a);const u=s.getNode()[0];return f.NodeUtils.parentizeNode(u,t),u}};m=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(1,u.inject(d.ServiceIdentifiers.IArrayUtils)),a(2,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(3,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object])],m),t.BlockStatementControlFlowTransformer=m},function(e,t,n){!function(){"use strict";t.ast=n(161),t.code=n(79),t.keyword=n(162)}()},function(e,t){!function(){"use strict";function t(e){if(null==e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":return!0}return!1}function n(e){switch(e.type){case"IfStatement":return null!=e.alternate?e.alternate:e.consequent;case"LabeledStatement":case"ForStatement":case"ForInStatement":case"WhileStatement":case"WithStatement":return e.body}return null}e.exports={isExpression:function(e){if(null==e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"Literal":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":return!0}return!1},isStatement:t,isIterationStatement:function(e){if(null==e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":return!0}return!1},isSourceElement:function(e){return t(e)||null!=e&&"FunctionDeclaration"===e.type},isProblematicIfStatement:function(e){var t;if("IfStatement"!==e.type)return!1;if(null==e.alternate)return!1;t=e.consequent;do{if("IfStatement"===t.type&&null==t.alternate)return!0;t=n(t)}while(t);return!1},trailingStatement:n}}()},function(e,t,n){!function(){"use strict";var t=n(79);function r(e,t){return!(!t&&"yield"===e)&&o(e,t)}function o(e,t){if(t&&function(e){switch(e){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"let":return!0;default:return!1}}(e))return!0;switch(e.length){case 2:return"if"===e||"in"===e||"do"===e;case 3:return"var"===e||"for"===e||"new"===e||"try"===e;case 4:return"this"===e||"else"===e||"case"===e||"void"===e||"with"===e||"enum"===e;case 5:return"while"===e||"break"===e||"catch"===e||"throw"===e||"const"===e||"yield"===e||"class"===e||"super"===e;case 6:return"return"===e||"typeof"===e||"delete"===e||"switch"===e||"export"===e||"import"===e;case 7:return"default"===e||"finally"===e||"extends"===e;case 8:return"function"===e||"continue"===e||"debugger"===e;case 10:return"instanceof"===e;default:return!1}}function i(e,t){return"null"===e||"true"===e||"false"===e||r(e,t)}function a(e,t){return"null"===e||"true"===e||"false"===e||o(e,t)}function s(e){var n,r,o;if(0===e.length)return!1;if(o=e.charCodeAt(0),!t.isIdentifierStartES5(o))return!1;for(n=1,r=e.length;n=r)return!1;if(!(56320<=(i=e.charCodeAt(n))&&i<=57343))return!1;o=1024*(o-55296)+(i-56320)+65536}if(!a(o))return!1;a=t.isIdentifierPartES6}return!0}e.exports={isKeywordES5:r,isKeywordES6:o,isReservedWordES5:i,isReservedWordES6:a,isRestrictedWord:function(e){return"eval"===e||"arguments"===e},isIdentifierNameES5:s,isIdentifierNameES6:u,isIdentifierES5:function(e,t){return s(e)&&!i(e,t)},isIdentifierES6:function(e,t){return u(e)&&!a(e,t)}}}()},function(e,t,n){t.SourceMapGenerator=n(80).SourceMapGenerator,t.SourceMapConsumer=n(166).SourceMapConsumer,t.SourceNode=n(169).SourceNode},function(e,t){var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&eo||i==o&&s>=a||r.compareByGeneratedPositionsInflated(t,n)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},o.prototype.toArray=function(){return this._sorted||(this._array.sort(r.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.MappingList=o},function(e,t,n){var r=n(31),o=n(167),i=n(82).ArraySet,a=n(81),s=n(168).quickSort;function u(e,t){var n=e;return"string"==typeof e&&(n=r.parseSourceMapInput(e)),null!=n.sections?new c(n,t):new d(n,t)}function d(e,t){var n=e;"string"==typeof e&&(n=r.parseSourceMapInput(e));var o=r.getArg(n,"version"),a=r.getArg(n,"sources"),s=r.getArg(n,"names",[]),u=r.getArg(n,"sourceRoot",null),d=r.getArg(n,"sourcesContent",null),l=r.getArg(n,"mappings"),c=r.getArg(n,"file",null);if(o!=this._version)throw new Error("Unsupported version: "+o);u&&(u=r.normalize(u)),a=a.map(String).map(r.normalize).map((function(e){return u&&r.isAbsolute(u)&&r.isAbsolute(e)?r.relative(u,e):e})),this._names=i.fromArray(s.map(String),!0),this._sources=i.fromArray(a,!0),this._absoluteSources=this._sources.toArray().map((function(e){return r.computeSourceURL(u,e,t)})),this.sourceRoot=u,this.sourcesContent=d,this._mappings=l,this._sourceMapURL=t,this.file=c}function l(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function c(e,t){var n=e;"string"==typeof e&&(n=r.parseSourceMapInput(e));var o=r.getArg(n,"version"),a=r.getArg(n,"sections");if(o!=this._version)throw new Error("Unsupported version: "+o);this._sources=new i,this._names=new i;var s={line:-1,column:0};this._sections=a.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var n=r.getArg(e,"offset"),o=r.getArg(n,"line"),i=r.getArg(n,"column");if(o=0){var s=this._originalMappings[a];if(void 0===e.column)for(var u=s.originalLine;s&&s.originalLine===u;)i.push({line:r.getArg(s,"generatedLine",null),column:r.getArg(s,"generatedColumn",null),lastColumn:r.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++a];else for(var d=s.originalColumn;s&&s.originalLine===t&&s.originalColumn==d;)i.push({line:r.getArg(s,"generatedLine",null),column:r.getArg(s,"generatedColumn",null),lastColumn:r.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++a]}return i},t.SourceMapConsumer=u,d.prototype=Object.create(u.prototype),d.prototype.consumer=u,d.prototype._findSourceIndex=function(e){var t,n=e;if(null!=this.sourceRoot&&(n=r.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);for(t=0;t1&&(n.source=f+i[1],f+=i[1],n.originalLine=g+i[2],g=n.originalLine,n.originalLine+=1,n.originalColumn=h+i[3],h=n.originalColumn,i.length>4&&(n.name=m+i[4],m+=i[4])),N.push(n),"number"==typeof n.originalLine&&C.push(n)}s(N,r.compareByGeneratedPositionsDeflated),this.__generatedMappings=N,s(C,r.compareByOriginalPositions),this.__originalMappings=C},d.prototype._findMapping=function(e,t,n,r,i,a){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return o.search(e,t,i,a)},d.prototype.computeColumnSpans=function(){for(var e=0;e=0){var o=this._generatedMappings[n];if(o.generatedLine===t.generatedLine){var i=r.getArg(o,"source",null);null!==i&&(i=this._sources.at(i),i=r.computeSourceURL(this.sourceRoot,i,this._sourceMapURL));var a=r.getArg(o,"name",null);return null!==a&&(a=this._names.at(a)),{source:i,line:r.getArg(o,"originalLine",null),column:r.getArg(o,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}},d.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},d.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var n=this._findSourceIndex(e);if(n>=0)return this.sourcesContent[n];var o,i=e;if(null!=this.sourceRoot&&(i=r.relative(this.sourceRoot,i)),null!=this.sourceRoot&&(o=r.urlParse(this.sourceRoot))){var a=i.replace(/^file:\/\//,"");if("file"==o.scheme&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!o.path||"/"==o.path)&&this._sources.has("/"+i))return this.sourcesContent[this._sources.indexOf("/"+i)]}if(t)return null;throw new Error('"'+i+'" is not in the SourceMap.')},d.prototype.generatedPositionFor=function(e){var t=r.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var n={source:t,originalLine:r.getArg(e,"line"),originalColumn:r.getArg(e,"column")},o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions,r.getArg(e,"bias",u.GREATEST_LOWER_BOUND));if(o>=0){var i=this._originalMappings[o];if(i.source===n.source)return{line:r.getArg(i,"generatedLine",null),column:r.getArg(i,"generatedColumn",null),lastColumn:r.getArg(i,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},t.BasicSourceMapConsumer=d,c.prototype=Object.create(u.prototype),c.prototype.constructor=u,c.prototype._version=3,Object.defineProperty(c.prototype,"sources",{get:function(){for(var e=[],t=0;t0?r-u>1?e(u,r,o,i,a,s):s==t.LEAST_UPPER_BOUND?r1?e(n,u,o,i,a,s):s==t.LEAST_UPPER_BOUND?u:n<0?-1:n}(-1,n.length,e,n,r,o||t.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&0===r(n[i],n[i-1],!0);)--i;return i}},function(e,t){function n(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function r(e,t,o,i){if(o=0;t--)this.prepend(e[t]);else{if(!e[a]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},s.prototype.walk=function(e){for(var t,n=0,r=this.children.length;n0){for(t=[],n=0;n=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"http://github.com/Constellation"}],"repository":{"type":"git","url":"http://github.com/estools/escodegen.git"},"dependencies":{"estraverse":"^4.2.0","esutils":"^2.0.2","esprima":"^4.0.1","optionator":"^0.8.1"},"optionalDependencies":{"source-map":"~0.6.1"},"devDependencies":{"acorn":"^7.1.0","bluebird":"^3.4.7","bower-registry-client":"^1.0.0","chai":"^3.5.0","commonjs-everywhere":"^0.9.7","gulp":"^3.8.10","gulp-eslint":"^3.0.1","gulp-mocha":"^3.0.1","semver":"^5.1.0"},"license":"BSD-2-Clause","scripts":{"test":"gulp travis","unit-test":"gulp test","lint":"gulp lint","release":"node tools/release.js","build-min":"./node_modules/.bin/cjsify -ma path: tools/entry-point.js > escodegen.browser.min.js","build":"./node_modules/.bin/cjsify -a path: tools/entry-point.js > escodegen.browser.js"}}')},function(e,t,n){"use strict";const r=n(84).tokTypes,o=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,i=e=>{o.lastIndex=e.pos;let t=o.exec(e.input),n=e.pos+t[0].length;return"."===e.input.slice(n,n+1)};e.exports=function(e){return class extends e{parseExprAtom(e){if(this.type!==r._import||!i(this))return super.parseExprAtom(e);this.options.allowImportExportEverywhere||this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'");let t=this.startNode();return t.meta=this.parseIdent(!0),this.expect(r.dot),t.property=this.parseIdent(!0),"meta"!==t.property.name&&this.raiseRecoverable(t.property.start,"The only valid meta property for import is import.meta"),this.containsEsc&&this.raiseRecoverable(t.property.start,'"meta" in import.meta must not contain escape sequences'),this.finishNode(t,"MetaProperty")}parseStatement(e,t,n){if(this.type!==r._import||!i(this))return super.parseStatement(e,t,n);let o=this.startNode(),a=this.parseExpression();return this.parseExpressionStatement(o,a)}}}},function(e,t,n){"use strict";(function(e){const t=(e,t)=>(...n)=>`[${e(...n)+t}m`,r=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};5;${r}m`},o=(e,t)=>(...n)=>{const r=e(...n);return`[${38+t};2;${r[0]};${r[1]};${r[2]}m`},i=e=>e,a=(e,t,n)=>[e,t,n],s=(e,t,n)=>{Object.defineProperty(e,t,{get:()=>{const r=n();return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0}),r},enumerable:!0,configurable:!0})};let u;const d=(e,t,r,o)=>{void 0===u&&(u=n(174));const i=o?10:0,a={};for(const[n,o]of Object.entries(u)){const s="ansi16"===n?"ansi":n;n===t?a[s]=e(r,i):"object"==typeof o&&(a[s]=e(o[t],i))}return a};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,n={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};n.color.gray=n.color.blackBright,n.bgColor.bgGray=n.bgColor.bgBlackBright,n.color.grey=n.color.blackBright,n.bgColor.bgGrey=n.bgColor.bgBlackBright;for(const[t,r]of Object.entries(n)){for(const[t,o]of Object.entries(r))n[t]={open:`[${o[0]}m`,close:`[${o[1]}m`},r[t]=n[t],e.set(o[0],o[1]);Object.defineProperty(n,t,{value:r,enumerable:!1})}return Object.defineProperty(n,"codes",{value:e,enumerable:!1}),n.color.close="",n.bgColor.close="",s(n.color,"ansi",()=>d(t,"ansi16",i,!1)),s(n.color,"ansi256",()=>d(r,"ansi256",i,!1)),s(n.color,"ansi16m",()=>d(o,"rgb",a,!1)),s(n.bgColor,"ansi",()=>d(t,"ansi16",i,!0)),s(n.bgColor,"ansi256",()=>d(r,"ansi256",i,!0)),s(n.bgColor,"ansi16m",()=>d(o,"rgb",a,!0)),n}})}).call(this,n(173)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){const r=n(86),o=n(176),i={};Object.keys(r).forEach(e=>{i[e]={},Object.defineProperty(i[e],"channels",{value:r[e].channels}),Object.defineProperty(i[e],"labels",{value:r[e].labels});const t=o(e);Object.keys(t).forEach(n=>{const r=t[n];i[e][n]=function(e){const t=function(...t){const n=t[0];if(null==n)return n;n.length>1&&(t=n);const r=e(t);if("object"==typeof r)for(let e=r.length,t=0;t1&&(t=n),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)})}),e.exports=i},function(e,t,n){"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},function(e,t,n){const r=n(86);function o(e){const t=function(){const e={},t=Object.keys(r);for(let n=t.length,r=0;r{let r=e.indexOf(t);if(-1===r)return e;const o=t.length;let i=0,a="";do{a+=e.substr(i,r-i)+t+n,i=r+o,r=e.indexOf(t,i)}while(-1!==r);return a+=e.substr(i),a},stringEncaseCRLFWithFirstIndex:(e,t,n,r)=>{let o=0,i="";do{const a="\r"===e[r-1];i+=e.substr(o,(a?r-1:r)-o)+t+(a?"\r\n":"\n")+n,o=r+1,r=e.indexOf("\n",o)}while(-1!==r);return i+=e.substr(o),i}}},function(e,t,n){"use strict";const r=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,o=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,i=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,a=/\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi,s=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function u(e){const t="u"===e[0],n="{"===e[1];return t&&!n&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):t&&n?String.fromCodePoint(parseInt(e.slice(2,-1),16)):s.get(e)||e}function d(e,t){const n=[],r=t.trim().split(/\s*,\s*/g);let o;for(const t of r){const r=Number(t);if(Number.isNaN(r)){if(!(o=t.match(i)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(o[2].replace(a,(e,t,n)=>t?u(t):n))}else n.push(r)}return n}function l(e){o.lastIndex=0;const t=[];let n;for(;null!==(n=o.exec(e));){const e=n[1];if(n[2]){const r=d(e,n[2]);t.push([e].concat(r))}else t.push([e])}return t}function c(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const[e,t]of Object.entries(n))if(Array.isArray(t)){if(!(e in r))throw new Error(`Unknown Chalk style: ${e}`);r=t.length>0?r[e](...t):r[e]}return r}e.exports=(e,t)=>{const n=[],o=[];let i=[];if(t.replace(r,(t,r,a,s,d,p)=>{if(r)i.push(u(r));else if(s){const t=i.join("");i=[],o.push(0===n.length?t:c(e,n)(t)),n.push({inverse:a,styles:l(s)})}else if(d){if(0===n.length)throw new Error("Found extraneous } in Chalk template literal");o.push(c(e,n)(i.join(""))),i=[],n.pop()}else i.push(p)}),o.push(i.join("")),n.length>0){const e=`Chalk template literal is missing ${n.length} closing bracket${1===n.length?"":"s"} (\`}\`)`;throw new Error(e)}return o.join("")}},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(19),l=n(55),c=n(3);let p=r=class extends l.AbstractControlFlowReplacer{constructor(e,t,n){super(e,t,n)}replace(e,t,n){const o=e.callee;if(!c.NodeGuards.isIdentifierNode(o))return e;const i=String(e.arguments.length),a=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.CallExpressionFunctionNode),s=e.arguments;a.initialize(s);const u=this.insertCustomNodeToControlFlowStorage(a,n,i,r.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(n.getStorageId(),u,o,s)}getControlFlowStorageCallNode(e,t,n,r){const o=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);o.initialize(e,t,n,r);const i=o.getNode()[0];if(!i||!c.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};p.usingExistingIdentifierChance=.5,p=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(1,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],p),t.CallExpressionControlFlowReplacer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(87),p=n(22),g=n(37),h=n(9),f=n(10),m=n(6),b=n(3),y=n(15),S=n(4);let _=r=class extends f.AbstractNodeTransformer{constructor(e,t,n,r){super(n,r),this.deadCodeInjectionRootAstHostNodeSet=new Set,this.collectedBlockStatements=[],this.collectedBlockStatementsTotalLength=0,this.deadCodeInjectionCustomNodeFactory=e,this.transformersRunner=t}static isProhibitedNodeInsideCollectedBlockStatement(e){return b.NodeGuards.isBreakStatementNode(e)||b.NodeGuards.isContinueStatementNode(e)||b.NodeGuards.isAwaitExpressionNode(e)||b.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!b.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=y.NodeStatementUtils.getScopeOfNode(e),n=b.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,r=n.indexOf(e);if(0===r)return!1;const o=n.slice(0,r),i=m.NodeFactory.blockStatementNode(o),a=e.id.name;let s=!1;return l.traverse(i,{enter:e=>{if(b.NodeGuards.isIdentifierNode(e)&&e.name===a)return s=!0,l.VisitorOption.Break}}),s}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,n=!0;return l.traverse(e,{enter:e=>{if(b.NodeGuards.isBlockStatementNode(e)&&t++,t>r.maxNestedBlockStatementsCount||r.isProhibitedNodeInsideCollectedBlockStatement(e)||r.isScopeHoistingFunctionDeclaration(e))return n=!1,l.VisitorOption.Break}}),n}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(l.traverse(e,{enter:e=>{if(r.isScopeHoistingFunctionDeclaration(e))return t=!1,l.VisitorOption.Break}}),!t)return!1;return y.NodeStatementUtils.getParentNodeWithStatements(e).type!==g.NodeType.Program}getVisitor(e){switch(e){case h.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&b.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&b.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case h.TransformationStage.Finalizing:return this.deadCodeInjectionRootAstHostNodeSet.size?{enter:(e,t)=>{if(t&&this.isDeadCodeInjectionRootAstHostNode(e))return this.restoreNode(e,t)}}:null;default:return null}}analyzeNode(e,t){l.traverse(e,{enter:e=>{if(!b.NodeGuards.isBlockStatementNode(e))return;const t=S.NodeUtils.clone(e);if(!r.isValidCollectedBlockStatementNode(t))return;const n=this.makeClonedBlockStatementNodeUnique(t);this.collectedBlockStatements.push(n)}}),this.collectedBlockStatementsTotalLength=this.collectedBlockStatements.length}transformNode(e,t){if(!this.collectedBlockStatements.length||this.collectedBlockStatementsTotalLengththis.options.deadCodeInjectionThreshold||!r.isValidWrappedBlockStatementNode(e))return e;const n=this.collectedBlockStatements.length-1,o=this.randomGenerator.getRandomInteger(0,n),i=this.collectedBlockStatements.splice(o,1)[0];return i===e?e:this.replaceBlockStatementNode(e,i,t)}restoreNode(e,t){const n=e.body[0];if(!b.NodeGuards.isFunctionDeclarationNode(n))throw new Error("Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node");return n.body}isDeadCodeInjectionRootAstHostNode(e){return b.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=m.NodeFactory.functionExpressionNode([],e);return S.NodeUtils.parentizeNode(t,t),S.NodeUtils.parentizeNode(e,t),this.transformersRunner.transform(t,r.transformersToRenameBlockScopeIdentifiers,h.TransformationStage.Obfuscating).body}replaceBlockStatementNode(e,t,n){const o=m.NodeFactory.blockStatementNode([m.NodeFactory.functionDeclarationNode(r.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(o);const i=this.deadCodeInjectionCustomNodeFactory(c.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);i.initialize(e,o);const a=i.getNode()[0];return S.NodeUtils.parentizeNode(a,n),a}};_.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",_.maxNestedBlockStatementsCount=4,_.minCollectedBlockStatementsCount=5,_.transformersToRenameBlockScopeIdentifiers=[p.NodeTransformer.LabeledStatementTransformer,p.NodeTransformer.ScopeIdentifiersTransformer],_=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),a(1,u.inject(d.ServiceIdentifiers.ITransformersRunner)),a(2,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(3,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object])],_),t.DeadCodeInjectionTransformer=_},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(19),p=n(77),g=n(37),h=n(9),f=n(10),m=n(20),b=n(3),y=n(16),S=n(15),_=n(4);let C=r=class extends f.AbstractNodeTransformer{constructor(e,t,n,r,o){super(r,o),this.controlFlowData=new Map,this.visitedFunctionNodes=new Set,this.hostNodesWithControlFlowNode=new Set,this.controlFlowStorageFactory=e,this.controlFlowReplacerFactory=t,this.controlFlowCustomNodeFactory=n}getVisitor(e){switch(e){case h.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(b.NodeGuards.isFunctionDeclarationNode(e)||b.NodeGuards.isFunctionExpressionNode(e)||b.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!b.NodeGuards.isBlockStatementNode(e.body))return e;const n=this.getHostNode(e.body),r=this.getControlFlowStorage(n);if(this.controlFlowData.set(n,r),this.transformFunctionBody(e.body,r),!r.getLength())return e;const o=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.ControlFlowStorageNode);return o.initialize(r),m.NodeAppender.prepend(n,o.getNode()),this.hostNodesWithControlFlowNode.add(n),_.NodeUtils.parentizeAst(e),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(b.NodeGuards.isSwitchCaseNode(e)?e.consequent.shift():e.body.shift());const n=this.controlFlowData.get(e);t.mergeWith(n,!0)}return t}getHostNode(e){const t=S.NodeStatementUtils.getParentNodesWithStatements(e);return 1===t.length?e:(t.pop(),t.length>r.hostNodeSearchMinDepth&&t.splice(0,r.hostNodeSearchMinDepth),t.length>r.hostNodeSearchMaxDepth&&(t.length=r.hostNodeSearchMaxDepth),this.randomGenerator.getRandomGenerator().pickone(t))}isVisitedFunctionNode(e){return(b.NodeGuards.isFunctionDeclarationNode(e)||b.NodeGuards.isFunctionExpressionNode(e)||b.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){l.replace(e,{enter:(e,n)=>{if(y.NodeMetadata.isIgnoredNode(e))return l.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!n)return l.VisitorOption.Skip;if(!r.controlFlowReplacersMap.has(e.type))return e;if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold)return e;const o=r.controlFlowReplacersMap.get(e.type);return void 0===o?e:Object.assign(Object.assign({},this.controlFlowReplacerFactory(o).replace(e,n,t)),{parentNode:n})}})}};C.controlFlowReplacersMap=new Map([[g.NodeType.BinaryExpression,p.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[g.NodeType.CallExpression,p.ControlFlowReplacer.CallExpressionControlFlowReplacer],[g.NodeType.LogicalExpression,p.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[g.NodeType.Literal,p.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),C.hostNodeSearchMinDepth=0,C.hostNodeSearchMaxDepth=2,C=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__TControlFlowStorage)),a(1,u.inject(d.ServiceIdentifiers.Factory__IControlFlowReplacer)),a(2,u.inject(d.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(3,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(4,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Function,Function,Object,Object])],C),t.FunctionControlFlowTransformer=C},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(19),l=n(78),c=n(3),p=n(4);let g=r=class extends l.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,n){super(e,t,n)}replace(e,t,n){if(this.checkForProhibitedExpressions(e.left,e.right))return e;const o=e.operator,i=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.LogicalExpressionFunctionNode);i.initialize(o);const a=this.insertCustomNodeToControlFlowStorage(i,n,o,r.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(n.getStorageId(),a,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=c.NodeGuards.isUnaryExpressionNode(e)?p.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(c.NodeGuards.isLiteralNode(t)||c.NodeGuards.isIdentifierNode(t)||c.NodeGuards.isObjectExpressionNode(t)||c.NodeGuards.isExpressionStatementNode(t))})}};g.usingExistingIdentifierChance=.5,g=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(1,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],g),t.LogicalExpressionControlFlowReplacer=g},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(19),l=n(55),c=n(3);let p=r=class extends l.AbstractControlFlowReplacer{constructor(e,t,n){super(e,t,n)}replace(e,t,n){if(c.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const o=String(e.value),i=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.StringLiteralNode);i.initialize(e.value);const a=this.insertCustomNodeToControlFlowStorage(i,n,o,r.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(n.getStorageId(),a)}getControlFlowStorageCallNode(e,t){const n=this.controlFlowCustomNodeFactory(d.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);n.initialize(e,t);const r=n.getNode()[0];if(!r||!c.NodeGuards.isExpressionStatementNode(r))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return r.expression}};p.usingExistingIdentifierChance=1,p=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),a(1,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],p),t.StringLiteralControlFlowReplacer=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(17),i=n(1),a=n(22),s=n(88),u=n(186),d=n(187),l=n(188),c=n(189),p=n(190),g=n(191),h=n(192),f=n(193);t.convertingTransformersModule=new r.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(a.NodeTransformer.MemberExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(a.NodeTransformer.MethodDefinitionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(c.ObjectExpressionKeysTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionKeysTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.ObjectExpressionTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(g.SplitStringTransformer).whenTargetNamed(a.NodeTransformer.SplitStringTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(h.TemplateLiteralTransformer).whenTargetNamed(a.NodeTransformer.TemplateLiteralTransformer),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(u.ObjectExpressionToVariableDeclarationExtractor).whenTargetNamed(s.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(f.BasePropertiesExtractor).whenTargetNamed(s.ObjectExpressionExtractor.BasePropertiesExtractor),e(i.ServiceIdentifiers.Factory__IObjectExpressionExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObjectExpressionExtractor))})},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(89),d=n(20),l=n(3),c=n(15),p=n(4);let g=class{constructor(e){this.objectExpressionKeysTransformerCustomNodeFactory=e}extract(e,t){return this.transformObjectExpressionToVariableDeclaration(e,t)}transformObjectExpressionToVariableDeclaration(e,t){const n=e.properties,r=this.getObjectExpressionHostNode(n),o=this.getObjectExpressionIdentifierNode(r),i=this.getObjectExpressionNode(r),a=[r],s=c.NodeStatementUtils.getScopeOfNode(t);return d.NodeAppender.insertBefore(s,a,t),p.NodeUtils.parentizeAst(r),p.NodeUtils.parentizeNode(r,s),{nodeToReplace:o,objectExpressionHostStatement:r,objectExpressionNode:i}}getObjectExpressionHostNode(e){const t=this.objectExpressionKeysTransformerCustomNodeFactory(u.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);t.initialize(e);const n=t.getNode()[0];if(!n||!l.NodeGuards.isVariableDeclarationNode(n))throw new Error("`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node");return n}getObjectExpressionIdentifierNode(e){const t=e.declarations[0].id;if(!l.NodeGuards.isIdentifierNode(t))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property");return t}getObjectExpressionNode(e){var t;const n=null!==(t=e.declarations[0].init)&&void 0!==t?t:null;if(!n||!l.NodeGuards.isObjectExpressionNode(n))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property");return n}};g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),o("design:paramtypes",[Function])],g),t.ObjectExpressionToVariableDeclarationExtractor=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(9),d=n(10),l=n(6),c=n(3);let p=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case u.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&c.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(c.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=l.NodeFactory.literalNode(e.property.name)}return e}};p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],p),t.MemberExpressionTransformer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(9),l=n(10),c=n(6),p=n(3);let g=r=class extends l.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case d.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&p.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return p.NodeGuards.isIdentifierNode(e.key)?this.replaceIdentifierKey(e,e.key):p.NodeGuards.isLiteralNode(e.key)?this.replaceLiteralKey(e,e.key):e}replaceIdentifierKey(e,t){return r.ignoredNames.includes(t.name)||e.computed||(e.computed=!0,e.key=c.NodeFactory.literalNode(t.name)),e}replaceLiteralKey(e,t){return"string"!=typeof t.value||r.ignoredNames.includes(t.value)||e.computed||(e.computed=!0),e}};g.ignoredNames=["constructor"],g=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(1,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],g),t.MethodDefinitionTransformer=g},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(9),p=n(10),g=n(3),h=n(15),f=n(88);let m=r=class extends p.AbstractNodeTransformer{constructor(e,t,n){super(t,n),this.objectExpressionExtractorFactory=e}static isProhibitedHostStatement(e,t){return r.isReferencedIdentifierName(e,t)}static isReferencedIdentifierName(e,t){const n=[];let r=!1,o=!1;return l.traverse(t,{enter:t=>{t===e&&(o=!0),g.NodeGuards.isIdentifierNode(t)&&(o?n.includes(t.name)&&(r=!0):n.push(t.name))},leave:t=>{if(t===e)return o=!1,l.VisitorOption.Break}}),r}getVisitor(e){if(!this.options.transformObjectKeys)return null;switch(e){case c.TransformationStage.Converting:return{leave:(e,t)=>{if(t&&g.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(!e.properties.length)return e;const n=h.NodeStatementUtils.getRootStatementOfNode(e);return r.isProhibitedHostStatement(e,n)?e:this.applyObjectExpressionKeysExtractorsRecursive(r.objectExpressionExtractorNames,e,n)}applyObjectExpressionKeysExtractorsRecursive(e,t,n){const r=[...e],o=r.shift();if(!o)return t;const{nodeToReplace:i,objectExpressionHostStatement:a,objectExpressionNode:s}=this.objectExpressionExtractorFactory(o).extract(t,n);return this.applyObjectExpressionKeysExtractorsRecursive(r,s,a),i}};m.objectExpressionExtractorNames=[f.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,f.ObjectExpressionExtractor.BasePropertiesExtractor],m=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),a(1,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(2,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],m),t.ObjectExpressionKeysTransformer=m},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(9),d=n(10),l=n(6),c=n(3);let p=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case u.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&c.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return e.properties.forEach(e=>{e.key&&(e.computed?this.transformComputedProperty(e):this.transformBaseProperty(e))}),e}transformComputedProperty(e){c.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=l.NodeFactory.literalNode(e.key.value))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),c.NodeGuards.isIdentifierNode(e.key)&&(e.key=l.NodeFactory.literalNode(e.key.name))}};p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],p),t.ObjectExpressionTransformer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(22),p=n(9),g=n(10),h=n(6),f=n(3),m=n(54),b=n(4);let y=r=class extends g.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[c.NodeTransformer.ObjectExpressionKeysTransformer,c.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const n=Math.ceil(e.length/t),r=[];let o=0;for(let i=0;i{if(this.options.splitStrings)return t&&f.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if(m.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;const n=this.transformLiteralNodeByChunkLength(e,t,r.firstPassChunkLength);return l.replace(n,{enter:(e,t)=>{if(t&&f.NodeGuards.isLiteralNode(e))return this.transformLiteralNodeByChunkLength(e,t,this.options.splitStringsChunkLength)}})}transformLiteralNodeByChunkLength(e,t,n){if("string"!=typeof e.value)return e;if(n>=e.value.length)return e;const o=r.chunkString(e.value,n),i=this.transformStringChunksToBinaryExpressionNode(o);return b.NodeUtils.parentizeAst(i),b.NodeUtils.parentizeNode(i,t),i}transformStringChunksToBinaryExpressionNode(e){const t=e.shift(),n=e.shift();if(!t||!n)throw new Error("First and second chunks values should not be empty");const r=h.NodeFactory.binaryExpressionNode("+",h.NodeFactory.literalNode(t),h.NodeFactory.literalNode(n));return e.reduce((e,t)=>{const n=h.NodeFactory.literalNode(t);return h.NodeFactory.binaryExpressionNode("+",e,n)},r)}};y.firstPassChunkLength=1e3,y=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(1,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],y),t.SplitStringTransformer=y},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(9),l=n(10),c=n(6),p=n(3),g=n(4);let h=r=class extends l.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return e&&p.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return p.NodeGuards.isTemplateLiteralNode(e)&&!p.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case d.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&r.isValidTemplateLiteralNode(e,t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const n=e.expressions;let o,i=[];if(e.quasis.forEach(e=>{i.push(c.NodeFactory.literalNode(e.value.cooked));const t=n.shift();t&&i.push(t)}),i=i.filter(e=>!(p.NodeGuards.isLiteralNode(e)&&""===e.value)),r.isLiteralNodeWithStringValue(i[0])||r.isLiteralNodeWithStringValue(i[1])||i.unshift(c.NodeFactory.literalNode("")),i.length>1){let e=c.NodeFactory.binaryExpressionNode("+",i.shift(),i.shift());i.forEach(t=>{e=c.NodeFactory.binaryExpressionNode("+",e,t)}),o=e}else o=i[0];return g.NodeUtils.parentizeAst(o),g.NodeUtils.parentizeNode(o,t),o}};h=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(1,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],h),t.TemplateLiteralTransformer=h},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=n(20),s=n(6),u=n(3),d=n(15);let l=r=class{static getPropertyNodeKeyName(e){const t=e.key;return!u.NodeGuards.isLiteralNode(t)||"string"!=typeof t.value&&"number"!=typeof t.value?u.NodeGuards.isIdentifierNode(t)?t.name:null:t.value.toString()}static isProhibitedPattern(e){return!e||u.NodeGuards.isObjectPatternNode(e)||u.NodeGuards.isArrayPatternNode(e)||u.NodeGuards.isAssignmentPatternNode(e)||u.NodeGuards.isRestElementNode(e)}extract(e,t){const n=e.parentNode;return n&&u.NodeGuards.isVariableDeclaratorNode(n)&&u.NodeGuards.isIdentifierNode(n.id)?this.transformObjectExpressionNode(e,t,n.id):{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}transformObjectExpressionNode(e,t,n){const r=e.properties,[o,i]=this.extractPropertiesToExpressionStatements(r,t,n),s=d.NodeStatementUtils.getScopeOfNode(t);return this.filterExtractedObjectExpressionProperties(e,i),a.NodeAppender.insertAfter(s,o,t),{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}extractPropertiesToExpressionStatements(e,t,n){const o=e.length,i=[],a=[];for(let d=0;d!t.includes(n))}};l=r=o([i.injectable()],l),t.BasePropertiesExtractor=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(17),o=n(0),i=n(1),a=n(19),s=n(26),u=n(90),d=n(87),l=n(89),c=n(195),p=n(196),g=n(197),h=n(198),f=n(199),m=n(200),b=n(203),y=n(204),S=n(205),_=n(206),C=n(207),N=n(208),A=n(209),v=n(212),E=n(214),T=n(216),I=n(218),D=n(222),P=n(224),M=n(225),O=n(226),F=n(228),R=n(230),$=n(237),x=n(239),w=n(242),L=n(243);t.customNodesModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.ICustomNode).to(A.ConsoleOutputDisableExpressionNode).whenTargetNamed(s.CustomNode.ConsoleOutputDisableExpressionNode),e(i.ServiceIdentifiers.ICustomNode).to(E.DebugProtectionFunctionCallNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionCallNode),e(i.ServiceIdentifiers.ICustomNode).to(T.DebugProtectionFunctionIntervalNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionIntervalNode),e(i.ServiceIdentifiers.ICustomNode).to(I.DebugProtectionFunctionNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionNode),e(i.ServiceIdentifiers.ICustomNode).to(D.DomainLockNode).whenTargetNamed(s.CustomNode.DomainLockNode),e(i.ServiceIdentifiers.ICustomNode).to(O.NodeCallsControllerFunctionNode).whenTargetNamed(s.CustomNode.NodeCallsControllerFunctionNode),e(i.ServiceIdentifiers.ICustomNode).to(F.SelfDefendingUnicodeNode).whenTargetNamed(s.CustomNode.SelfDefendingUnicodeNode),e(i.ServiceIdentifiers.ICustomNode).to(R.StringArrayCallsWrapper).whenTargetNamed(s.CustomNode.StringArrayCallsWrapper),e(i.ServiceIdentifiers.ICustomNode).to($.StringArrayNode).whenTargetNamed(s.CustomNode.StringArrayNode),e(i.ServiceIdentifiers.ICustomNode).to(x.StringArrayRotateFunctionNode).whenTargetNamed(s.CustomNode.StringArrayRotateFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.BinaryExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.BlockStatementControlFlowFlatteningNode).whenTargetNamed(a.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(_.CallExpressionControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(C.CallExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.ControlFlowStorageNode).whenTargetNamed(a.ControlFlowCustomNode.ControlFlowStorageNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(P.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(M.LogicalExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(L.StringLiteralNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(w.StringLiteralControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(S.BlockStatementDeadCodeInjectionNode).whenTargetNamed(d.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(m.ObjectExpressionVariableDeclarationHostNode).whenTargetNamed(l.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode),e(i.ServiceIdentifiers.ICustomNodeGroup).to(c.ConsoleOutputCustomNodeGroup).whenTargetNamed(u.CustomNodeGroup.ConsoleOutputCustomNodeGroup),e(i.ServiceIdentifiers.ICustomNodeGroup).to(p.DebugProtectionCustomNodeGroup).whenTargetNamed(u.CustomNodeGroup.DebugProtectionCustomNodeGroup),e(i.ServiceIdentifiers.ICustomNodeGroup).to(g.DomainLockCustomNodeGroup).whenTargetNamed(u.CustomNodeGroup.DomainLockCustomNodeGroup),e(i.ServiceIdentifiers.ICustomNodeGroup).to(h.SelfDefendingCustomNodeGroup).whenTargetNamed(u.CustomNodeGroup.SelfDefendingCustomNodeGroup),e(i.ServiceIdentifiers.ICustomNodeGroup).to(f.StringArrayCustomNodeGroup).whenTargetNamed(u.CustomNodeGroup.StringArrayCustomNodeGroup),e(i.ServiceIdentifiers.Factory__ICustomNode).toFactory(r.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomNode)),e(i.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(r.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomNodeFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(r.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomNodeFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions)),e(i.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode).toFactory(r.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomNodeFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__ICustomNodeGroup).toFactory(r.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomNodeGroup)),e(i.ServiceIdentifiers.ICustomNodeFormatter).to(v.CustomNodeFormatter).inSingletonScope()})},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(26),l=n(23),c=n(32),p=n(20);let g=class extends c.AbstractCustomNodeGroup{constructor(e,t,n,r){super(t,n,r),this.appendEvent=l.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const n=this.getRandomCallsGraphIndex(t.length);this.appendCustomNodeIfExist(d.CustomNode.ConsoleOutputDisableExpressionNode,r=>{p.NodeAppender.appendToOptimalBlockScope(t,e,r.getNode(),n)}),this.appendCustomNodeIfExist(d.CustomNode.NodeCallsControllerFunctionNode,r=>{const o=t.length?p.NodeAppender.getOptimalBlockScope(t,n,1):e;p.NodeAppender.prepend(o,r.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.disableConsoleOutput)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(d.CustomNode.ConsoleOutputDisableExpressionNode),n=this.customNodeFactory(d.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),n.initialize(this.appendEvent,e),this.customNodes.set(d.CustomNode.ConsoleOutputDisableExpressionNode,t),this.customNodes.set(d.CustomNode.NodeCallsControllerFunctionNode,n)}};r([u.initializable(),o("design:type",Map)],g.prototype,"customNodes",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__ICustomNode)),i(1,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Function,Object,Object])],g),t.ConsoleOutputCustomNodeGroup=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(26),l=n(23),c=n(32),p=n(20),g=n(3);let h=class extends c.AbstractCustomNodeGroup{constructor(e,t,n,r){super(t,n,r),this.appendEvent=l.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const n=this.getRandomCallsGraphIndex(t.length);this.appendCustomNodeIfExist(d.CustomNode.DebugProtectionFunctionCallNode,r=>{p.NodeAppender.appendToOptimalBlockScope(t,e,r.getNode(),n)}),this.appendCustomNodeIfExist(d.CustomNode.DebugProtectionFunctionNode,t=>{p.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(d.CustomNode.DebugProtectionFunctionIntervalNode,t=>{const n=g.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,r=this.randomGenerator.getRandomInteger(0,n);p.NodeAppender.insertAtIndex(e,t.getNode(),r)}),this.appendCustomNodeIfExist(d.CustomNode.NodeCallsControllerFunctionNode,r=>{const o=t.length?p.NodeAppender.getOptimalBlockScope(t,n,1):e;p.NodeAppender.prepend(o,r.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.debugProtection)return;const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate(),n=this.customNodeFactory(d.CustomNode.DebugProtectionFunctionNode),r=this.customNodeFactory(d.CustomNode.DebugProtectionFunctionCallNode),o=this.customNodeFactory(d.CustomNode.DebugProtectionFunctionIntervalNode),i=this.customNodeFactory(d.CustomNode.NodeCallsControllerFunctionNode);n.initialize(e),r.initialize(e,t),o.initialize(e),i.initialize(this.appendEvent,t),this.customNodes.set(d.CustomNode.DebugProtectionFunctionNode,n),this.customNodes.set(d.CustomNode.DebugProtectionFunctionCallNode,r),this.options.debugProtectionInterval&&this.customNodes.set(d.CustomNode.DebugProtectionFunctionIntervalNode,o),this.customNodes.set(d.CustomNode.NodeCallsControllerFunctionNode,i)}};r([u.initializable(),o("design:type",Map)],h.prototype,"customNodes",void 0),h=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__ICustomNode)),i(1,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Function,Object,Object])],h),t.DebugProtectionCustomNodeGroup=h},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(26),l=n(23),c=n(32),p=n(20);let g=class extends c.AbstractCustomNodeGroup{constructor(e,t,n,r){super(t,n,r),this.appendEvent=l.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const n=this.getRandomCallsGraphIndex(t.length);this.appendCustomNodeIfExist(d.CustomNode.DomainLockNode,r=>{p.NodeAppender.appendToOptimalBlockScope(t,e,r.getNode(),n)}),this.appendCustomNodeIfExist(d.CustomNode.NodeCallsControllerFunctionNode,r=>{const o=t.length?p.NodeAppender.getOptimalBlockScope(t,n,1):e;p.NodeAppender.prepend(o,r.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.domainLock.length)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(d.CustomNode.DomainLockNode),n=this.customNodeFactory(d.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),n.initialize(this.appendEvent,e),this.customNodes.set(d.CustomNode.DomainLockNode,t),this.customNodes.set(d.CustomNode.NodeCallsControllerFunctionNode,n)}};r([u.initializable(),o("design:type",Map)],g.prototype,"customNodes",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__ICustomNode)),i(1,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Function,Object,Object])],g),t.DomainLockCustomNodeGroup=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(26),l=n(23),c=n(32),p=n(20);let g=class extends c.AbstractCustomNodeGroup{constructor(e,t,n,r){super(t,n,r),this.appendEvent=l.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const n=this.getRandomCallsGraphIndex(t.length);this.appendCustomNodeIfExist(d.CustomNode.SelfDefendingUnicodeNode,r=>{p.NodeAppender.appendToOptimalBlockScope(t,e,r.getNode(),n)}),this.appendCustomNodeIfExist(d.CustomNode.NodeCallsControllerFunctionNode,r=>{const o=t.length?p.NodeAppender.getOptimalBlockScope(t,n,1):e;p.NodeAppender.prepend(o,r.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.selfDefending)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(d.CustomNode.SelfDefendingUnicodeNode),n=this.customNodeFactory(d.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),n.initialize(this.appendEvent,e),this.customNodes.set(d.CustomNode.SelfDefendingUnicodeNode,t),this.customNodes.set(d.CustomNode.NodeCallsControllerFunctionNode,n)}};r([u.initializable(),o("design:type",Map)],g.prototype,"customNodes",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__ICustomNode)),i(1,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Function,Object,Object])],g),t.SelfDefendingCustomNodeGroup=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(26),l=n(23),c=n(32),p=n(20);let g=class extends c.AbstractCustomNodeGroup{constructor(e,t,n,r,o){super(n,r,o),this.appendEvent=l.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e,this.stringArrayStorage=t}appendCustomNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(d.CustomNode.StringArrayNode,t=>{p.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(d.CustomNode.StringArrayCallsWrapper,t=>{p.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(d.CustomNode.StringArrayRotateFunctionNode,t=>{p.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customNodes=new Map,!this.options.stringArray)return;const e=this.customNodeFactory(d.CustomNode.StringArrayNode),t=this.customNodeFactory(d.CustomNode.StringArrayCallsWrapper),n=this.customNodeFactory(d.CustomNode.StringArrayRotateFunctionNode),r=this.stringArrayStorage.getStorageName(),o=this.stringArrayStorage.getStorageCallsWrapperName(),i=this.stringArrayStorage.getRotationAmount();e.initialize(this.stringArrayStorage,r),t.initialize(r,o),n.initialize(r,i),this.customNodes.set(d.CustomNode.StringArrayNode,e),this.customNodes.set(d.CustomNode.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customNodes.set(d.CustomNode.StringArrayRotateFunctionNode,n)}};r([u.initializable(),o("design:type",Map)],g.prototype,"customNodes",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__ICustomNode)),i(1,a.inject(s.ServiceIdentifiers.TStringArrayStorage)),i(2,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(3,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(4,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Function,Object,Object])],g),t.StringArrayCustomNodeGroup=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(8),d=n(6);let l=class extends u.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.properties=e}getNodeStructure(e){return[d.NodeFactory.variableDeclarationNode([d.NodeFactory.variableDeclaratorNode(d.NodeFactory.identifierNode(this.identifierNamesGenerator.generate()),d.NodeFactory.objectExpressionNode(this.properties))],"const")]}};l=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],l),t.ObjectExpressionVariableDeclarationHostNode=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n let that;\n \n try {\n const getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n const getGlobal = function () {\n let globalObject;\n \n try {\n globalObject = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');')();\n } catch (e) {\n globalObject = window;\n }\n \n return globalObject;\n };\n const that = getGlobal();\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(8),d=n(6),l=n(4);let c=class extends u.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.operator=e}getNodeStructure(e){const t=d.NodeFactory.expressionStatementNode(d.NodeFactory.functionExpressionNode([d.NodeFactory.identifierNode("x"),d.NodeFactory.identifierNode("y")],d.NodeFactory.blockStatementNode([d.NodeFactory.returnStatementNode(d.NodeFactory.binaryExpressionNode(this.operator,d.NodeFactory.identifierNode("x"),d.NodeFactory.identifierNode("y")))])));return l.NodeUtils.parentizeAst(t),[t]}};c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],c),t.BinaryExpressionFunctionNode=c},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(3),p=n(4);let g=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t,n){this.blockStatementBody=e,this.shuffledKeys=t,this.originalKeysIndexesInShuffledArray=n}getNodeStructure(e){const t=this.randomGenerator.getRandomString(6),n=this.randomGenerator.getRandomString(6),r=l.NodeFactory.blockStatementNode([l.NodeFactory.variableDeclarationNode([l.NodeFactory.variableDeclaratorNode(l.NodeFactory.identifierNode(t),l.NodeFactory.callExpressionNode(l.NodeFactory.memberExpressionNode(l.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),l.NodeFactory.identifierNode("split")),[l.NodeFactory.literalNode("|")]))],"const"),l.NodeFactory.variableDeclarationNode([l.NodeFactory.variableDeclaratorNode(l.NodeFactory.identifierNode(n),l.NodeFactory.literalNode(0))],"let"),l.NodeFactory.whileStatementNode(l.NodeFactory.literalNode(!0),l.NodeFactory.blockStatementNode([l.NodeFactory.switchStatementNode(l.NodeFactory.memberExpressionNode(l.NodeFactory.identifierNode(t),l.NodeFactory.updateExpressionNode("++",l.NodeFactory.identifierNode(n)),!0),this.shuffledKeys.map((e,t)=>{const n=this.blockStatementBody[e],r=[n];return c.NodeGuards.isReturnStatementNode(n)||r.push(l.NodeFactory.continueStatement()),l.NodeFactory.switchCaseNode(l.NodeFactory.literalNode(String(t)),r)})),l.NodeFactory.breakStatement()]))]);return p.NodeUtils.parentizeAst(r),[r]}};r([u.initializable(),o("design:type",Array)],g.prototype,"blockStatementBody",void 0),r([u.initializable(),o("design:type",Array)],g.prototype,"originalKeysIndexesInShuffledArray",void 0),r([u.initializable(),o("design:type",Array)],g.prototype,"shuffledKeys",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],g),t.BlockStatementControlFlowFlatteningNode=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(8),d=n(6),l=n(4);let c=class extends u.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t){this.blockStatementNode=e,this.deadCodeInjectionRootAstHostNode=t}getNodeStructure(e){const t=this.randomGenerator.getMathRandom()>.5,n=this.randomGenerator.getMathRandom()>.5,r=t?"===":"!==",o=this.randomGenerator.getRandomString(5),i=n?o:this.randomGenerator.getRandomString(5),[a,s]=t===n?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],u=d.NodeFactory.blockStatementNode([d.NodeFactory.ifStatementNode(d.NodeFactory.binaryExpressionNode(r,d.NodeFactory.literalNode(o),d.NodeFactory.literalNode(i)),a,s)]);return l.NodeUtils.parentizeAst(u),[u]}};c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],c),t.BlockStatementDeadCodeInjectionNode=c},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(4);let p=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t,n,r){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=n,this.expressionArguments=r}getNodeStructure(){const e=l.NodeFactory.expressionStatementNode(l.NodeFactory.callExpressionNode(l.NodeFactory.memberExpressionNode(l.NodeFactory.identifierNode(this.controlFlowStorageName),l.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return c.NodeUtils.parentizeAst(e),[e]}};r([u.initializable(),o("design:type",Object)],p.prototype,"callee",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageKey",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageName",void 0),r([u.initializable(),o("design:type",Array)],p.prototype,"expressionArguments",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.CallExpressionControlFlowStorageCallNode=p},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(4);let p=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.expressionArguments=e}getNodeStructure(e){const t=l.NodeFactory.identifierNode("callee"),n=[],r=this.expressionArguments.length;for(let e=0;e=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(3),p=n(4);let g=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.controlFlowStorage=e}getNodeStructure(e){const t=Array.from(this.controlFlowStorage.getStorage()).map(([e,t])=>{const n=t.getNode()[0];if(!c.NodeGuards.isExpressionStatementNode(n))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return l.NodeFactory.propertyNode(l.NodeFactory.identifierNode(e),n.expression)});let n=l.NodeFactory.variableDeclarationNode([l.NodeFactory.variableDeclaratorNode(l.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),l.NodeFactory.objectExpressionNode(t))],"const");return n=p.NodeUtils.parentizeAst(n),[n]}};r([u.initializable(),o("design:type",Object)],g.prototype,"controlFlowStorage",void 0),g=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],g),t.ControlFlowStorageNode=g},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(24),d=n(211),l=n(57),c=n(5),p=n(8),g=n(4);let h=class extends p.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(e){return g.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){const e=this.options.target!==u.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():l.GlobalVariableNoEvalTemplate();return this.customNodeFormatter.formatTemplate(d.ConsoleOutputDisableExpressionTemplate(),{consoleLogDisableFunctionName:this.identifierNamesGenerator.generate(),globalVariableTemplate:e,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};r([c.initializable(),o("design:type",String)],h.prototype,"callsControllerFunctionName",void 0),h=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],h),t.ConsoleOutputDisableExpressionNode=h},function(e,t){function n(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}n.keys=function(){return[]},n.resolve=n,e.exports=n,n.id=210},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n const {consoleLogDisableFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n const func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n const c = {};\n \n c.log = func;\n c.warn = func;\n c.debug = func;\n c.info = func;\n c.error = func;\n c.exception = func;\n c.table = func;\n c.trace = func;\n \n return c;\n })(func);\n } else {\n that.console.log = func;\n that.console.warn = func;\n that.console.debug = func;\n that.console.info = func;\n that.console.error = func;\n that.console.exception = func;\n that.console.table = func;\n that.console.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=a(n(7)),c=s(n(213)),p=n(3);let g=class{constructor(e){this.prevailingKindOfVariables=e.getPrevailingKind()}formatTemplate(e,t){return c.default(e,t)}formatStructure(e){for(const t of e)l.replace(t,{enter:e=>{if(p.NodeGuards.isVariableDeclarationNode(e))return"var"===this.prevailingKindOfVariables&&(e.kind="var"),e}});return e}};g=r([u.injectable(),i(0,u.inject(d.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),o("design:paramtypes",[Object])],g),t.CustomNodeFormatter=g},function(e,t){var n=/\{([0-9a-zA-Z_]+)\}/g;e.exports=function(e){var t;if(2===arguments.length&&"object"==typeof arguments[1])t=arguments[1];else{t=new Array(arguments.length-1);for(var r=1;r=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(215),l=n(8),c=n(4);let p=class extends l.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(e){return c.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){return this.customNodeFormatter.formatTemplate(d.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};r([u.initializable(),o("design:type",String)],p.prototype,"callsControllerFunctionName",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"debugProtectionFunctionName",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.DebugProtectionFunctionCallNode=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {singleNodeCallControllerFunctionName}(\n this,\n function () {\n const regExp1 = new RegExp('function *\\\\( *\\\\)');\n const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n const result = {debugProtectionFunctionName}('init');\n \n if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {\n result('0');\n } else {\n {debugProtectionFunctionName}();\n }\n }\n )();\n })();\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(217),l=n(8),c=n(4);let p=class extends l.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return c.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){return this.customNodeFormatter.formatTemplate(d.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};r([u.initializable(),o("design:type",String)],p.prototype,"debugProtectionFunctionName",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.DebugProtectionFunctionIntervalNode=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionIntervalTemplate=function(){return"\n setInterval(function () {\n {debugProtectionFunctionName}();\n }, 4000);\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(24),d=n(5),l=n(219),c=n(220),p=n(221),g=n(8),h=n(4);let f=class extends g.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return h.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){const e=this.options.target!==u.ObfuscationTarget.BrowserNoEval?l.DebuggerTemplate():c.DebuggerTemplateNoEval();return this.customNodeFormatter.formatTemplate(p.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};r([d.initializable(),o("design:type",String)],f.prototype,"debugProtectionFunctionName",void 0),f=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],f),t.DebugProtectionFunctionNode=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplate=function(){return"\n if (typeof counter === 'string') {\n return (function (arg) {}.constructor('while (true) {}').apply('counter'));\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n (function () {return true;}.constructor('debu' + 'gger').call('action'));\n } else {\n (function () {return false;}.constructor('debu' + 'gger').apply('stateObject'));\n }\n \n }\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplateNoEval=function(){return"\n if (typeof counter === 'string') {\n const func = function () {\n while (true) {}\n };\n \n return func();\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n debugger;\n } else {\n debugger;\n }\n \n }\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionTemplate=function(){return"\n function {debugProtectionFunctionName} (ret) {\n function debuggerProtection (counter) {\n \n {debuggerTemplate}\n \n debuggerProtection(++counter);\n }\n \n try {\n if (ret) {\n return debuggerProtection;\n } else {\n debuggerProtection(0);\n }\n } catch (y) {}\n }\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(24),d=n(5),l=n(223),c=n(57),p=n(8),g=n(4);let h=class extends p.AbstractCustomNode{constructor(e,t,n,r,o){super(e,t,n,r),this.cryptUtils=o}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(e){return g.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){const e=this.options.domainLock.join(";"),[t,n]=this.cryptUtils.hideString(e,3*e.length),r=this.options.target!==u.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():c.GlobalVariableNoEvalTemplate();return this.customNodeFormatter.formatTemplate(l.DomainLockNodeTemplate(),{domainLockFunctionName:this.identifierNamesGenerator.generate(),diff:n,domains:t,globalVariableTemplate:r,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};r([d.initializable(),o("design:type",String)],h.prototype,"callsControllerFunctionName",void 0),h=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),i(4,a.inject(s.ServiceIdentifiers.ICryptUtils)),o("design:paramtypes",[Function,Object,Object,Object,Object])],h),t.DomainLockNode=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockNodeTemplate=function(){return'\n const {domainLockFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n const func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (let i = 0; i < 1000; i--) {\n const isPositive = i > 0;\n \n switch (isPositive) {\n case true:\n return this.item + \'_\' + this.value + \'_\' + i;\n default:\n this.item + \'_\' + this.value;\n }\n }\n }()\n };\n };\n \n const regExp = new RegExp("[{diff}]", "g");\n const domains = "{domains}".replace(regExp, "").split(";");\n let document;\n let domain;\n let location;\n let hostname;\n\n for (let d in that) {\n if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {\n document = d;\n \n break;\n }\n }\n\n for (let d1 in that[document]) {\n if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {\n domain = d1;\n \n break;\n }\n }\n\n if (!("~" > domain)) {\n for (let d2 in that[document]) {\n if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {\n location = d2;\n \n break;\n }\n }\n\n for (let d3 in that[document][location]) {\n if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {\n hostname = d3;\n \n break;\n }\n }\n }\n \n if (!document || !that[document]) {\n return;\n }\n \n const documentDomain = that[document][domain];\n const documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n const currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n let ok = false;\n \n for (let i = 0; i < domains.length; i++) {\n const domain = domains[i];\n const position = currentDomain.length - domain.length;\n const lastIndex = currentDomain.indexOf(domain, position);\n const endsWith = lastIndex !== -1 && lastIndex === position;\n \n if (endsWith) {\n if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {\n ok = true;\n }\n }\n }\n \n if (!ok) {\n data;\n } else {\n return;\n }\n \n func();\n });\n\n {domainLockFunctionName}();\n '}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(4);let p=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t,n,r){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=n,this.rightValue=r}getNodeStructure(){const e=l.NodeFactory.expressionStatementNode(l.NodeFactory.callExpressionNode(l.NodeFactory.memberExpressionNode(l.NodeFactory.identifierNode(this.controlFlowStorageName),l.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return c.NodeUtils.parentizeAst(e),[e]}};r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageKey",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageName",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.ExpressionWithOperatorControlFlowStorageCallNode=p},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(8),d=n(6),l=n(4);let c=class extends u.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.operator=e}getNodeStructure(e){const t=d.NodeFactory.expressionStatementNode(d.NodeFactory.functionExpressionNode([d.NodeFactory.identifierNode("x"),d.NodeFactory.identifierNode("y")],d.NodeFactory.blockStatementNode([d.NodeFactory.returnStatementNode(d.NodeFactory.logicalExpressionNode(this.operator,d.NodeFactory.identifierNode("x"),d.NodeFactory.identifierNode("y")))])));return l.NodeUtils.parentizeAst(t),[t]}};c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],c),t.LogicalExpressionFunctionNode=c},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(23),d=n(5),l=n(227),c=n(41),p=n(8),g=n(29),h=n(4);let f=class extends p.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(e){return h.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){return this.appendEvent===u.ObfuscationEvent.AfterObfuscation?g.JavaScriptObfuscator.obfuscate(this.customNodeFormatter.formatTemplate(l.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed})).getObfuscatedCode():this.customNodeFormatter.formatTemplate(l.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};r([d.initializable(),o("design:type",String)],f.prototype,"callsControllerFunctionName",void 0),r([d.initializable(),o("design:type",String)],f.prototype,"appendEvent",void 0),f=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],f),t.NodeCallsControllerFunctionNode=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleNodeCallControllerTemplate=function(){return"\n const {singleNodeCallControllerFunctionName} = (function(){\n let firstCall = true;\n \n return function (context, fn){\n const rfn = firstCall ? function(){\n if(fn){\n const res = fn.apply(context, arguments);\n fn = null;\n return res;\n }\n } : function(){}\n \n firstCall = false;\n \n return rfn;\n }\n })();\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(41),l=n(229),c=n(8),p=n(29),g=n(4);let h=class extends c.AbstractCustomNode{constructor(e,t,n,r,o){super(e,t,n,r),this.escapeSequenceEncoder=o}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(e){return g.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){return p.JavaScriptObfuscator.obfuscate(this.customNodeFormatter.formatTemplate(l.SelfDefendingTemplate(this.escapeSequenceEncoder),{selfDefendingFunctionName:this.identifierNamesGenerator.generate(),singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},d.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed,unicodeEscapeSequence:!0})).getObfuscatedCode()}};r([u.initializable(),o("design:type",String)],h.prototype,"callsControllerFunctionName",void 0),h=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),i(4,a.inject(s.ServiceIdentifiers.IEscapeSequenceEncoder)),o("design:paramtypes",[Function,Object,Object,Object,Object])],h),t.SelfDefendingUnicodeNode=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const {selfDefendingFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n const func1 = function(){return 'dev';},\n func2 = function () {\n return 'window';\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return !regExp.test(func1.toString());\n };\n \n const test2 = function () {\n const regExp = new RegExp('${e.encode("(\\\\[x|u](\\w){2,4})+",!0)}');\n \n return regExp.test(func2.toString());\n };\n \n const recursiveFunc1 = function (string) {\n const i = ~-1 >> 1 + 255 % 0;\n \n if (string.indexOf('i' === i)) {\n recursiveFunc2(string)\n }\n };\n \n const recursiveFunc2 = function (string) {\n const i = ~-4 >> 1 + 255 % 0;\n \n if (string.indexOf((true+"")[3]) !== i) {\n recursiveFunc1(string)\n }\n };\n \n if (!test1()) {\n if (!test2()) {\n recursiveFunc1('indеxOf');\n } else {\n recursiveFunc1('indexOf');\n }\n } else {\n recursiveFunc1('indеxOf');\n }\n })\n \n {selfDefendingFunctionName}();\n `}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(24),d=n(33),l=n(5),c=n(41),p=n(231),g=n(57),h=n(232),f=n(233),m=n(234),b=n(235),y=n(236),S=n(8),_=n(29),C=n(4);let N=class extends S.AbstractCustomNode{constructor(e,t,n,r,o){super(e,t,n,r),this.escapeSequenceEncoder=o}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){const e=this.getDecodeStringArrayTemplate();return _.JavaScriptObfuscator.obfuscate(this.customNodeFormatter.formatTemplate(b.StringArrayCallsWrapperTemplate(),{decodeNodeTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}getDecodeStringArrayTemplate(){const e=this.options.target!==u.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():g.GlobalVariableNoEvalTemplate(),t=this.customNodeFormatter.formatTemplate(p.AtobTemplate(),{globalVariableTemplate:e});let n="",r="";switch(this.options.selfDefending&&(r=this.customNodeFormatter.formatTemplate(f.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case d.StringArrayEncoding.Rc4:n=this.customNodeFormatter.formatTemplate(y.StringArrayRc4DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,rc4Polyfill:h.Rc4Template(),selfDefendingCode:r,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case d.StringArrayEncoding.Base64:n=this.customNodeFormatter.formatTemplate(m.StringArrayBase64DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:r,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return n}};r([l.initializable(),o("design:type",String)],N.prototype,"stringArrayName",void 0),r([l.initializable(),o("design:type",String)],N.prototype,"stringArrayCallsWrapperName",void 0),N=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),i(4,a.inject(s.ServiceIdentifiers.IEscapeSequenceEncoder)),o("design:paramtypes",[Function,Object,Object,Object,Object])],N),t.StringArrayCallsWrapper=N},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n const str = String(input).replace(/=+$/, '');\n let output = '';\n for (\n let bc = 0, bs, buffer, idx = 0;\n buffer = str.charAt(idx++);\n ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,\n bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0\n ) {\n buffer = chars.indexOf(buffer);\n }\n return output;\n }\n );\n })();\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n const rc4 = function (str, key) {\n let s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (let k = 0, length = str.length; k < length; k++) {\n newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);\n }\n \n str = decodeURIComponent(newStr);\n \t \n let i;\n \t \n\t for (i = 0; i < 256; i++) {\n s[i] = i;\n }\n \n for (i = 0; i < 256; i++) {\n j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n }\n \n i = 0;\n j = 0;\n \n for (let y = 0; y < str.length; y++) {\n i = (i + 1) % 256;\n j = (j + s[i]) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);\n }\n \n return res;\n }\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e,t){const n=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6),i=e.getRandomString(6),a=e.getRandomString(6),s=e.getRandomString(6),u=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n const StatesClass = function (${n}) {\n this.${n} = ${n};\n this.${r} = [1, 0, 0];\n this.${o} = function(){return 'newState';};\n this.${i} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${a} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n const regExp = new RegExp(this.${i} + this.${a});\n const expression = regExp.test(this.${o}.toString())\n ? --this.${r}[1]\n : --this.${r}[0];\n \n return this.${u}(expression);\n };\n \n StatesClass.prototype.${u} = function (${l}) {\n if (!Boolean(~${l})) {\n return ${l};\n }\n \n return this.${d}(this.${n});\n };\n\n StatesClass.prototype.${d} = function (${n}) {\n for (let i = 0, len = this.${r}.length; i < len; i++) {\n this.${r}.push(Math.round(Math.random()));\n len = this.${r}.length;\n }\n \n return ${n}(this.${r}[0]);\n };\n\n new StatesClass({stringArrayCallsWrapperName}).${s}();\n `}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayBase64DecodeNodeTemplate=function(e){const t=e.getRandomString(6),n=e.getRandomString(6),r=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {stringArrayCallsWrapperName}.${n} = function (str) {\n const string = atob(str);\n let newStringChars = [];\n \n for (let i = 0, length = string.length; i < length; i++) {\n newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);\n }\n \n return decodeURIComponent(newStringChars);\n };\n \n {stringArrayCallsWrapperName}.${r} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const cachedValue = {stringArrayCallsWrapperName}.${r}[index];\n \n if (cachedValue === undefined) {\n {selfDefendingCode}\n \n value = {stringArrayCallsWrapperName}.${n}(value);\n {stringArrayCallsWrapperName}.${r}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayCallsWrapperTemplate=function(){return"\n const {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n let value = {stringArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n "}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRc4DecodeNodeTemplate=function(e){const t=e.getRandomString(6),n=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {rc4Polyfill}\n {stringArrayCallsWrapperName}.${n} = rc4;\n \n {stringArrayCallsWrapperName}.${r} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const cachedValue = {stringArrayCallsWrapperName}.${r}[index];\n\n if (cachedValue === undefined) {\n if ({stringArrayCallsWrapperName}.${o} === undefined) {\n {selfDefendingCode}\n \n {stringArrayCallsWrapperName}.${o} = true;\n }\n \n value = {stringArrayCallsWrapperName}.${n}(value, key);\n {stringArrayCallsWrapperName}.${r}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(238),l=n(8),c=n(4);let p=class extends l.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t){this.stringArrayStorage=e,this.stringArrayName=t}getNodeStructure(e){return c.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){return this.customNodeFormatter.formatTemplate(d.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};r([u.initializable(),o("design:type",Object)],p.prototype,"stringArrayStorage",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"stringArrayName",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.StringArrayNode=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n const {stringArrayName} = [{stringArray}];\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(41),l=n(240),c=n(241),p=n(8),g=n(29),h=n(4),f=n(44);let m=class extends p.AbstractCustomNode{constructor(e,t,n,r,o){super(e,t,n,r),this.escapeSequenceEncoder=o}initialize(e,t){this.stringArrayName=e,this.stringArrayRotationAmount=t}getNodeStructure(e){return h.NodeUtils.convertCodeToStructure(e)}getNodeTemplate(){const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate();let n="";return n=this.options.selfDefending?this.customNodeFormatter.formatTemplate(l.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,g.JavaScriptObfuscator.obfuscate(this.customNodeFormatter.formatTemplate(c.StringArrayRotateFunctionTemplate(),{code:n,timesName:e,stringArrayName:this.stringArrayName,stringArrayRotationAmount:f.NumberUtils.toHex(this.stringArrayRotationAmount),whileFunctionName:t}),Object.assign(Object.assign({},d.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}};r([u.initializable(),o("design:type",String)],m.prototype,"stringArrayName",void 0),r([u.initializable(),o("design:type",Number)],m.prototype,"stringArrayRotationAmount",void 0),m=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),i(4,a.inject(s.ServiceIdentifiers.IEscapeSequenceEncoder)),o("design:paramtypes",[Function,Object,Object,Object,Object])],m),t.StringArrayRotateFunctionNode=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const selfDefendingFunc = function () {\n const object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n let updatedCookie = name + "=" + value;\n let i = 0;\n \n for (let i = 0, len = options.length; i < len; i++) {\n const propName = options[i];\n \n updatedCookie += "; " + propName;\n \n const propValue = options[propName];\n \n options.push(propValue);\n len = options.length;\n \n if (propValue !== true) {\n updatedCookie += "=" + propValue;\n }\n }\n\n document['cookie'] = updatedCookie;\n },\n removeCookie: function(){return 'dev';},\n getCookie: function (document, name) {\n document = document || function (value) { return value };\n const matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n const func = function (param1, param2) {\n param1(++param2);\n };\n \n func({whileFunctionName}, {timesName});\n \n return matches ? decodeURIComponent(matches[1]) : undefined;\n }\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n let cookie = '';\n const result = object['updateCookie']();\n \n if (!result) {\n object['setCookie'](['*'], 'counter', 1);\n } else if (result) {\n cookie = object['getCookie'](null, 'counter');\n } else {\n object['removeCookie']();\n }\n };\n \n selfDefendingFunc();\n `}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n const {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotationAmount});\n "}},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6),c=n(4);let p=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=l.NodeFactory.expressionStatementNode(l.NodeFactory.memberExpressionNode(l.NodeFactory.identifierNode(this.controlFlowStorageName),l.NodeFactory.identifierNode(this.controlFlowStorageKey)));return c.NodeUtils.parentizeAst(e),[e]}};r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageKey",void 0),r([u.initializable(),o("design:type",String)],p.prototype,"controlFlowStorageName",void 0),p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],p),t.StringLiteralControlFlowStorageCallNode=p},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(5),d=n(8),l=n(6);let c=class extends d.AbstractCustomNode{constructor(e,t,n,r){super(e,t,n,r)}initialize(e){this.literalValue=e}getNodeStructure(e){return[l.NodeFactory.expressionStatementNode(l.NodeFactory.literalNode(this.literalValue))]}};r([u.initializable(),o("design:type",String)],c.prototype,"literalValue",void 0),c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomNodeFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],c),t.StringLiteralNode=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0);t.finalizingTransformersModule=new r.ContainerModule(e=>{})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(42),a=n(246),s=n(247),u=n(248);t.generatorsModule=new r.ContainerModule(e=>{e(o.ServiceIdentifiers.IIdentifierNamesGenerator).to(a.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(o.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(o.ServiceIdentifiers.IIdentifierNamesGenerator).to(u.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator),e(o.ServiceIdentifiers.Factory__IIdentifierNamesGenerator).toFactory(function(){let e=null;return t=>n=>{if(e)return e;let r;switch(n.identifierNamesGenerator){case i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:r=t.container.getNamed(o.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:r=t.container.getNamed(o.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:r=t.container.getNamed(o.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=r,r}}())})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(58);let l=r=class extends d.AbstractIdentifierNamesGenerator{constructor(e,t,n){super(e,t),this.arrayUtils=n,this.identifierNamesSet=new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary)),this.identifiersIterator=this.identifierNamesSet.values()}static incrementIdentifierName(e){let t="",n=!1;for(const r of e)n||r!==r.toUpperCase()?n||r!==r.toLowerCase()?t+=r:(t+=r.toUpperCase(),n=!0):t+=r.toLowerCase();return n?t:null}generate(){if(!this.identifierNamesSet.size)throw new Error("Too many identifiers in the code, add more words to identifiers dictionary");const e=this.identifiersIterator.next();return e.done?(this.identifierNamesSet=new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet])),this.identifiersIterator=this.identifierNamesSet.values(),this.generate()):e.value}generateWithPrefix(){return`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}_`:""}${this.generate()}`.replace("__","_")}getInitialIdentifierNames(e){const t=e.filter(Boolean).map(e=>e.toLowerCase());return this.arrayUtils.shuffle(t)}getIncrementedIdentifierNames(e){const t=[];for(const n of e){const e=r.incrementIdentifierName(n);e&&t.push(e)}return this.arrayUtils.shuffle(t)}};l=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(1,s.inject(u.ServiceIdentifiers.IOptions)),a(2,s.inject(u.ServiceIdentifiers.IArrayUtils)),i("design:paramtypes",[Object,Object,Object])],l),t.DictionaryIdentifierNamesGenerator=l},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(58),l=n(44),c=n(34);let p=r=class extends d.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.randomVariableNameSet=new Set}generate(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),n=l.NumberUtils.toHex(t),o=c.Utils.hexadecimalPrefix.length+1,i=e?e-o:r.baseIdentifierNameLength,a=n.substr(0,i),s=`_${c.Utils.hexadecimalPrefix}${a}`;return this.randomVariableNameSet.has(s)?this.generate(e):(this.randomVariableNameSet.add(s),s)}generateWithPrefix(e){const t=this.generate(e);return`${this.options.identifiersPrefix}${t}`.replace("__","_")}};p.baseIdentifierNameLength=6,p=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(1,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],p),t.HexadecimalIdentifierNamesGenerator=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(58);let l=r=class extends d.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=r.initMangledNameCharacter}generate(e){const t=this.generateNewMangledName(this.previousMangledName);return this.previousMangledName=t,t}generateWithPrefix(e){return`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}_`:""}${this.generate(e)}`}isValidIdentifierName(e){return super.isValidIdentifierName(e)&&!r.reservedNamesSet.has(e)}generateNewMangledName(e){let t=(e=>{const t=r.nameSequence,n=t.length,o=e.length,i=e=>"0".repeat(e);let a=o-1;do{const r=e[a],s=t.indexOf(r);if(s!==n-1){return e.substring(0,a)+t[s+1]+i(o-(a+1))}--a}while(a>=0);return`a${i(o)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}};l.initMangledNameCharacter="9",l.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),l.reservedNamesSet=new Set(["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"]),l=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(1,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],l),t.MangledIdentifierNamesGenerator=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(17),o=n(0),i=n(1);t.nodeTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.Factory__INodeTransformer).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeTransformer))})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(17),o=n(0),i=n(1),a=n(45),s=n(91),u=n(22),d=n(251),l=n(252),c=n(253),p=n(255),g=n(256),h=n(257),f=n(258);t.obfuscatingTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(c.LabeledStatementTransformer).whenTargetNamed(u.NodeTransformer.LabeledStatementTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.LiteralTransformer).whenTargetNamed(u.NodeTransformer.LiteralTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.ScopeIdentifiersTransformer).whenTargetNamed(u.NodeTransformer.ScopeIdentifiersTransformer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(g.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(h.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(i.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObfuscatingReplacer)),e(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(46),d=n(6);let l=class extends u.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){let n=e.name;if(this.blockScopesMap.has(t)){const e=this.blockScopesMap.get(t);e.has(n)&&(n=e.get(n))}return d.NodeFactory.identifierNode(n)}storeGlobalName(e,t){const n=e.name;if(this.isReservedName(n))return;const r=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(n,r)}storeLocalName(e,t){const n=e.name;if(this.isReservedName(n))return;const r=this.identifierNamesGenerator.generate();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(n,r)}preserveName(e){this.identifierNamesGenerator.preserveName(e)}isReservedName(e){return!!this.options.reservedNames.length&&this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};l=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object])],l),t.BaseIdentifierObfuscatingReplacer=l},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(46),l=n(6);let c=r=class extends d.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return l.NodeFactory.unaryExpressionNode("!",r.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return l.NodeFactory.unaryExpressionNode("!",l.NodeFactory.arrayExpressionNode())}replace(e){const t=e.value;if("boolean"!=typeof t)throw new Error("`BooleanLiteralObfuscatingReplacer` should accept only literals with `boolean` value");return t?r.getTrueUnaryExpressionNode():r.getFalseUnaryExpressionNode()}};c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object])],c),t.BooleanLiteralObfuscatingReplacer=c},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=a(n(7)),l=n(45),c=n(9),p=n(10),g=n(3),h=n(254);let f=class extends p.AbstractNodeTransformer{constructor(e,t,n){super(t,n),this.identifierObfuscatingReplacer=e(l.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&g.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const n=h.NodeLexicalScopeUtils.getLexicalScope(e);return n?(this.storeLabeledStatementName(e,n),this.replaceLabeledStatementName(e,n),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label,t)}replaceLabeledStatementName(e,t){d.replace(e,{enter:(e,n)=>{if(n&&g.NodeGuards.isLabelIdentifierNode(e,n)){const n=this.identifierObfuscatingReplacer.replace(e,t);e.name=n.name}}})}};f=r([s.injectable(),i(0,s.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),i(1,s.inject(u.ServiceIdentifiers.IRandomGenerator)),i(2,s.inject(u.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],f),t.LabeledStatementTransformer=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3);class o{static getLexicalScope(e){return o.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return o.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,n=[],i=0){if(n.length>=t)return n;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return r.NodeGuards.isNodeWithLexicalScope(e)&&n.push(e),e!==a?o.getLexicalScopesRecursive(a,t,n,++i):n}}t.NodeLexicalScopeUtils=o},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(91),d=n(9),l=n(10),c=n(6),p=n(3),g=n(54),h=n(16),f=n(4);let m=class extends l.AbstractNodeTransformer{constructor(e,t,n,r,o){super(t,n),this.literalObfuscatingReplacerFactory=e,this.stringArrayStorageAnalyzer=r,this.escapeSequenceEncoder=o}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(p.NodeGuards.isProgramNode(e)&&this.analyzeNode(e),t&&p.NodeGuards.isLiteralNode(e)&&!h.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};case d.TransformationStage.Finalizing:return{enter:(e,t)=>{if(t&&p.NodeGuards.isLiteralNode(e))return this.encodeLiteralNodeToEscapeSequence(e,t)}};default:return null}}analyzeNode(e){this.stringArrayStorageAnalyzer.analyze(e)}transformNode(e,t){if(g.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;let n;switch(typeof e.value){case"boolean":n=this.literalObfuscatingReplacerFactory(u.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e);break;case"number":n=this.literalObfuscatingReplacerFactory(u.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e);break;case"string":n=this.literalObfuscatingReplacerFactory(u.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e);break;default:n=e}return f.NodeUtils.parentizeNode(n,t),n}encodeLiteralNodeToEscapeSequence(e,t){return"string"!=typeof e.value?e:c.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e.value,this.options.unicodeEscapeSequence))}};m=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IObfuscatingReplacer)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),i(3,a.inject(s.ServiceIdentifiers.IStringArrayStorageAnalyzer)),i(4,a.inject(s.ServiceIdentifiers.IEscapeSequenceEncoder)),o("design:paramtypes",[Function,Object,Object,Object,Object])],m),t.LiteralTransformer=m},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1),u=n(46),d=n(6),l=n(44),c=n(34);let p=class extends u.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){const t=e.value;if("number"!=typeof t)throw new Error("`NumberLiteralObfuscatingReplacer` should accept only literals with `number` value");let n;return this.numberLiteralCache.has(t)?n=this.numberLiteralCache.get(t):(n=l.NumberUtils.isCeil(t)?`${c.Utils.hexadecimalPrefix}${l.NumberUtils.toHex(t)}`:String(t),this.numberLiteralCache.set(t,n)),d.NodeFactory.literalNode(t,n)}};p=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object])],p),t.NumberLiteralObfuscatingReplacer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(5),l=n(33),c=n(46),p=n(16),g=n(6),h=n(44),f=n(34);let m=r=class extends c.AbstractObfuscatingReplacer{constructor(e,t,n){super(n),this.nodesCache=new Map,this.stringArrayStorage=e,this.stringArrayStorageAnalyzer=t}static getHexadecimalLiteralNode(e){const t=g.NodeFactory.literalNode(e);return p.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=g.NodeFactory.literalNode(e);return p.NodeMetadata.set(t,{replacedLiteral:!0}),t}initialize(){this.stringArrayStorageCallsWrapperName=this.stringArrayStorage.getStorageCallsWrapperName(),this.options.shuffleStringArray&&this.stringArrayStorage.shuffleStorage(),this.options.rotateStringArray&&this.stringArrayStorage.rotateStorage()}replace(e){const t=e.value;if("string"!=typeof t)throw new Error("`StringLiteralObfuscatingReplacer` should accept only literals with `string` value");const n=this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(e),r=`${t}-${Boolean(n)}`;if(this.nodesCache.has(r)&&this.options.stringArrayEncoding!==l.StringArrayEncoding.Rc4)return this.nodesCache.get(r);const o=n?this.replaceWithStringArrayCallNode(n):this.replaceWithLiteralNode(t);return this.nodesCache.set(r,o),o}replaceWithLiteralNode(e){return g.NodeFactory.literalNode(e)}replaceWithStringArrayCallNode(e){const{index:t,decodeKey:n}=e,o=`${f.Utils.hexadecimalPrefix}${h.NumberUtils.toHex(t)}`,i=[r.getHexadecimalLiteralNode(o)];n&&i.push(r.getRc4KeyLiteralNode(n));const a=g.NodeFactory.identifierNode(this.stringArrayStorageCallsWrapperName);return g.NodeFactory.callExpressionNode(a,i)}};o([d.initializable(),i("design:type",String)],m.prototype,"stringArrayStorageCallsWrapperName",void 0),o([s.postConstruct(),i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],m.prototype,"initialize",null),m=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.TStringArrayStorage)),a(1,s.inject(u.ServiceIdentifiers.IStringArrayStorageAnalyzer)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object,Object])],m),t.StringLiteralObfuscatingReplacer=m},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(7)),c=n(45),p=n(9),g=n(10),h=n(3),f=n(16);let m=r=class extends g.AbstractNodeTransformer{constructor(e,t,n,r){super(t,n),this.lexicalScopesWithObjectPatternWithoutDeclarationMap=new Map,this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeAnalyzer=r}getVisitor(e){switch(e){case p.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&h.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.transformNode(e,t)}};default:return null}}analyzeNode(e,t){this.scopeAnalyzer.analyze(e)}transformNode(e,t){const n=this.scopeAnalyzer.acquireScope(e);return this.traverseScopeVariables(n),e}traverseScopeVariables(e){const t=e.variableScope,n=h.NodeGuards.isNodeWithBlockLexicalScope(t.block)?t.block:null,o=r.globalScopeNames.includes(t.type);if(n){for(const t of e.variables)if(t.name!==r.argumentsVariableName){if(!this.options.renameGlobals&&o){if(!t.defs.every(e=>"ImportBinding"===e.type||"CatchClause"===e.type))continue}this.transformScopeVariableIdentifiers(t,n,o)}for(const t of e.childScopes)this.traverseScopeVariables(t)}}transformScopeVariableIdentifiers(e,t,n){for(const r of e.identifiers)this.isReplaceableIdentifierNode(r,t,e)&&(this.storeIdentifierName(r,t,n),this.replaceIdentifierName(r,t,e))}storeIdentifierName(e,t,n){n?this.identifierObfuscatingReplacer.storeGlobalName(e,t):this.identifierObfuscatingReplacer.storeLocalName(e,t)}replaceIdentifierName(e,t,n){const r=this.identifierObfuscatingReplacer.replace(e,t);e.name=r.name,n.references.forEach(t=>{t.identifier.name=e.name})}isReplaceableIdentifierNode(e,t,n){const r=e.parentNode;return!(!r||f.NodeMetadata.isIgnoredNode(e)||this.isProhibitedPropertyNode(e,r)||this.isProhibitedClassDeclarationNameIdentifierNode(n,e,r)||this.isProhibitedExportNamedClassDeclarationIdentifierNode(e,r)||this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,r)||this.isProhibitedExportNamedVariableDeclarationIdentifierNode(e,r)||this.isProhibitedImportSpecifierNode(e,r)||this.isProhibitedVariableNameUsedInObjectPatternNode(n,e,t)||h.NodeGuards.isLabelIdentifierNode(e,r))}isProhibitedClassDeclarationNameIdentifierNode(e,t,n){return h.NodeGuards.isClassDeclarationNode(e.scope.block)&&h.NodeGuards.isClassDeclarationNode(n)&&n.id===t}isProhibitedExportNamedClassDeclarationIdentifierNode(e,t){return h.NodeGuards.isClassDeclarationNode(t)&&t.id===e&&!!t.parentNode&&h.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,t){return h.NodeGuards.isFunctionDeclarationNode(t)&&t.id===e&&!!t.parentNode&&h.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedVariableDeclarationIdentifierNode(e,t){return h.NodeGuards.isVariableDeclaratorNode(t)&&t.id===e&&!!t.parentNode&&h.NodeGuards.isVariableDeclarationNode(t.parentNode)&&!!t.parentNode.parentNode&&h.NodeGuards.isExportNamedDeclarationNode(t.parentNode.parentNode)}isProhibitedImportSpecifierNode(e,t){return h.NodeGuards.isImportSpecifierNode(t)&&t.imported.name===t.local.name}isProhibitedPropertyNode(e,t){return h.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e}isProhibitedVariableNameUsedInObjectPatternNode(e,t,n){let r=this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(n);if(!1===r)return!1;if(!e.defs.some(e=>"var"===e.kind))return!1;let o=!1;return l.traverse(n,{enter:(e,n)=>{if(h.NodeGuards.isObjectPatternNode(e)&&n&&h.NodeGuards.isAssignmentExpressionNode(n)){r=!0;const n=e.properties;for(const e of n)if(!e.computed&&e.shorthand&&h.NodeGuards.isIdentifierNode(e.key)&&t.name===e.key.name)return o=!0,l.VisitorOption.Break}}}),this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(n,null!=r&&r),o}};m.argumentsVariableName="arguments",m.globalScopeNames=["global","module"],m=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),a(1,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(2,u.inject(d.ServiceIdentifiers.IOptions)),a(3,u.inject(d.ServiceIdentifiers.IScopeAnalyzer)),i("design:paramtypes",[Function,Object,Object,Object])],m),t.ScopeIdentifiersTransformer=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(260),a=n(336);t.optionsModule=new r.ContainerModule(e=>{e(o.ServiceIdentifiers.IOptions).to(i.Options).inSingletonScope(),e(o.ServiceIdentifiers.IOptionsNormalizer).to(a.OptionsNormalizer).inSingletonScope()})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),d=n(92),l=n(42),c=n(24),p=n(43),g=n(33),h=n(63),f=n(333),m=n(334);let b=r=class{constructor(e,t){Object.assign(this,h.DEFAULT_PRESET,e);const n=d.validateSync(this,r.validatorOptions);if(n.length)throw new ReferenceError(`Validation failed. errors:\n${f.ValidationErrorsFormatter.format(n)}`);Object.assign(this,t.normalize(this))}};b.validatorOptions={validationError:{target:!1}},o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"compact",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"controlFlowFlattening",void 0),o([d.IsNumber(),d.Min(0),d.Max(1),i("design:type",Number)],b.prototype,"controlFlowFlatteningThreshold",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"deadCodeInjection",void 0),o([d.IsNumber(),i("design:type",Number)],b.prototype,"deadCodeInjectionThreshold",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"debugProtection",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"debugProtectionInterval",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"disableConsoleOutput",void 0),o([d.IsArray(),d.ArrayUnique(),d.IsString({each:!0}),m.IsAllowedForObfuscationTargets([c.ObfuscationTarget.Browser,c.ObfuscationTarget.BrowserNoEval]),i("design:type",Array)],b.prototype,"domainLock",void 0),o([d.IsIn([l.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,l.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,l.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),i("design:type",Object)],b.prototype,"identifierNamesGenerator",void 0),o([d.IsString(),i("design:type",String)],b.prototype,"identifiersPrefix",void 0),o([d.IsArray(),d.ArrayUnique(),d.IsString({each:!0}),d.ValidateIf(e=>e.identifierNamesGenerator===l.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),d.ArrayNotEmpty(),i("design:type",Array)],b.prototype,"identifiersDictionary",void 0),o([d.IsString(),i("design:type",String)],b.prototype,"inputFileName",void 0),o([d.IsString(),i("design:type",String)],b.prototype,"inputFilePath",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"log",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"renameGlobals",void 0),o([d.IsArray(),d.ArrayUnique(),d.IsString({each:!0}),i("design:type",Array)],b.prototype,"reservedNames",void 0),o([d.IsArray(),d.ArrayUnique(),d.IsString({each:!0}),i("design:type",Array)],b.prototype,"reservedStrings",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"rotateStringArray",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"selfDefending",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"shuffleStringArray",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"sourceMap",void 0),o([d.IsString(),d.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),d.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),i("design:type",String)],b.prototype,"sourceMapBaseUrl",void 0),o([d.IsString(),i("design:type",String)],b.prototype,"sourceMapFileName",void 0),o([d.IsIn([p.SourceMapMode.Inline,p.SourceMapMode.Separate]),i("design:type",Object)],b.prototype,"sourceMapMode",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"splitStrings",void 0),o([d.IsNumber(),d.ValidateIf(e=>Boolean(e.splitStrings)),d.Min(1),i("design:type",Number)],b.prototype,"splitStringsChunkLength",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"stringArray",void 0),o([d.IsIn([!0,!1,g.StringArrayEncoding.Base64,g.StringArrayEncoding.Rc4]),i("design:type",Object)],b.prototype,"stringArrayEncoding",void 0),o([d.IsNumber(),d.Min(0),d.Max(1),i("design:type",Number)],b.prototype,"stringArrayThreshold",void 0),o([d.IsIn([c.ObfuscationTarget.Browser,c.ObfuscationTarget.BrowserNoEval,c.ObfuscationTarget.Node]),i("design:type",Object)],b.prototype,"target",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"transformObjectKeys",void 0),o([d.IsBoolean(),i("design:type",Boolean)],b.prototype,"unicodeEscapeSequence",void 0),b=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.TInputOptions)),a(1,s.inject(u.ServiceIdentifiers.IOptionsNormalizer)),i("design:paramtypes",[Object,Object])],b),t.Options=b},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(59),o=n(27),i=function(){function e(){}return e.prototype.transform=function(e){var t=[];return Object.keys(e.properties).forEach((function(n){e.properties[n].forEach((function(i){if(!o.ValidationTypes.isValid(i.type))throw new Error("Validation schema "+e.name+"#"+n+" as incorrect type "+i.type);var a={message:i.message,groups:i.groups,always:i.always,each:i.each},s={type:i.type,target:e.name,propertyName:n,constraints:i.constraints,validationTypeOptions:i.options,validationOptions:a};t.push(new r.ValidationMetadata(s))}))})),t},e}();t.ValidationSchemaToMetadataTransformer=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(94),o=n(35),i=n(28),a=n(27),s=n(263),u=n(264),d=function(){function e(e,t){this.validator=e,this.validatorOptions=t,this.awaitingPromises=[],this.ignoreAsyncValidations=!1,this.metadataStorage=i.getFromContainer(o.MetadataStorage)}return e.prototype.execute=function(e,t,n){var o=this;this.metadataStorage.hasValidationMetaData||console.warn("No metadata found. There is more than once class-validator version installed probably. You need to flatten your dependencies.");var i=this.validatorOptions?this.validatorOptions.groups:void 0,s=this.metadataStorage.getTargetValidationMetadatas(e.constructor,t,i),u=this.metadataStorage.groupByPropertyName(s);if(this.validatorOptions&&this.validatorOptions.forbidUnknownValues&&!s.length){var d=new r.ValidationError;return this.validatorOptions&&this.validatorOptions.validationError&&void 0!==this.validatorOptions.validationError.target&&!0!==this.validatorOptions.validationError.target||(d.target=e),d.value=void 0,d.property=void 0,d.children=[],d.constraints={unknownValue:"an unknown value was passed to the validate function"},void n.push(d)}this.validatorOptions&&this.validatorOptions.whitelist&&this.whitelist(e,u,n),Object.keys(u).forEach((function(t){var r=e[t],i=u[t].filter((function(e){return e.type===a.ValidationTypes.IS_DEFINED})),s=u[t].filter((function(e){return e.type!==a.ValidationTypes.IS_DEFINED&&e.type!==a.ValidationTypes.WHITELIST}));r instanceof Promise&&s.find((function(e){return e.type===a.ValidationTypes.PROMISE_VALIDATION}))?o.awaitingPromises.push(r.then((function(r){o.performValidations(e,r,t,i,s,n)}))):o.performValidations(e,r,t,i,s,n)}))},e.prototype.whitelist=function(e,t,n){var r=this,o=[];Object.keys(e).forEach((function(e){t[e]&&0!==t[e].length||o.push(e)})),o.length>0&&(this.validatorOptions&&this.validatorOptions.forbidNonWhitelisted?o.forEach((function(t){var o,i=r.generateValidationError(e,e[t],t);i.constraints=((o={})[a.ValidationTypes.WHITELIST]="property "+t+" should not exist",o),i.children=void 0,n.push(i)})):o.forEach((function(t){return delete e[t]})))},e.prototype.stripEmptyErrors=function(e){var t=this;return e.filter((function(e){if(e.children&&(e.children=t.stripEmptyErrors(e.children)),0===Object.keys(e.constraints).length){if(0===e.children.length)return!1;delete e.constraints}return!0}))},e.prototype.performValidations=function(e,t,n,r,o,i){var s=o.filter((function(e){return e.type===a.ValidationTypes.CUSTOM_VALIDATION})),u=o.filter((function(e){return e.type===a.ValidationTypes.NESTED_VALIDATION})),d=o.filter((function(e){return e.type===a.ValidationTypes.CONDITIONAL_VALIDATION})),l=this.generateValidationError(e,t,n);i.push(l),this.conditionalValidations(e,t,d)&&(this.defaultValidations(e,t,r,l.constraints),this.mapContexts(e,t,r,l),void 0===t&&this.validatorOptions&&!0===this.validatorOptions.skipUndefinedProperties||null===t&&this.validatorOptions&&!0===this.validatorOptions.skipNullProperties||null==t&&this.validatorOptions&&!0===this.validatorOptions.skipMissingProperties||(this.defaultValidations(e,t,o,l.constraints),this.customValidations(e,t,s,l.constraints),this.nestedValidations(t,u,l.children),this.mapContexts(e,t,o,l),this.mapContexts(e,t,s,l)))},e.prototype.generateValidationError=function(e,t,n){var o=new r.ValidationError;return this.validatorOptions&&this.validatorOptions.validationError&&void 0!==this.validatorOptions.validationError.target&&!0!==this.validatorOptions.validationError.target||(o.target=e),this.validatorOptions&&this.validatorOptions.validationError&&void 0!==this.validatorOptions.validationError.value&&!0!==this.validatorOptions.validationError.value||(o.value=t),o.property=n,o.children=[],o.constraints={},o},e.prototype.conditionalValidations=function(e,t,n){return n.map((function(n){return n.constraints[0](e,t)})).reduce((function(e,t){return e&&t}),!0)},e.prototype.defaultValidations=function(e,t,n,r){var o=this;return n.filter((function(e){return e.each?t instanceof Array||t instanceof Set||t instanceof Map?!u.convertToArray(t).every((function(t){return o.validator.validateValueByMetadata(t,e)})):void 0:!o.validator.validateValueByMetadata(t,e)})).forEach((function(n){var i=o.createValidationError(e,t,n),a=i[0],s=i[1];r[a]=s}))},e.prototype.customValidations=function(e,t,n,r){var a=this;n.forEach((function(n){i.getFromContainer(o.MetadataStorage).getTargetValidatorConstraints(n.constraintCls).forEach((function(o){if(!o.async||!a.ignoreAsyncValidations){var i={targetName:e.constructor?e.constructor.name:void 0,property:n.propertyName,object:e,value:t,constraints:n.constraints};if(n.each&&(t instanceof Array||t instanceof Set||t instanceof Map)){var s=u.convertToArray(t).map((function(e){return o.instance.validate(e,i)}));if(s.some((function(e){return u.isPromise(e)}))){var d=s.map((function(e){return u.isPromise(e)?e:Promise.resolve(e)})),l=Promise.all(d).then((function(i){if(!i.every((function(e){return e}))){var s=a.createValidationError(e,t,n,o),u=s[0],d=s[1];r[u]=d}}));a.awaitingPromises.push(l)}else{if(!s.every((function(e){return e}))){var c=a.createValidationError(e,t,n,o);f=c[0],m=c[1];r[f]=m}}}else{var p=o.instance.validate(t,i);if(u.isPromise(p)){var g=p.then((function(i){if(!i){var s=a.createValidationError(e,t,n,o),u=s[0],d=s[1];r[u]=d}}));a.awaitingPromises.push(g)}else if(!p){var h=a.createValidationError(e,t,n,o),f=h[0],m=h[1];r[f]=m}}}}))}))},e.prototype.nestedPromiseValidations=function(e,t,n){var r=this;e instanceof Promise&&this.awaitingPromises.push(e.then((function(e){return r.nestedValidations(e,t,n)})))},e.prototype.nestedValidations=function(e,t,n){var o=this;void 0!==e&&t.forEach((function(t){var i;if(t.type===a.ValidationTypes.NESTED_VALIDATION||t.type===a.ValidationTypes.PROMISE_VALIDATION){var s="string"==typeof t.target?t.target:void 0;if(e instanceof Array||e instanceof Set||e instanceof Map)(e instanceof Set?Array.from(e):e).forEach((function(t,r){var i=o.generateValidationError(e,t,r.toString());n.push(i),o.execute(t,s,i.children)}));else if(e instanceof Object)o.execute(e,s,n);else{var u=new r.ValidationError;u.value=e,u.property=t.propertyName,u.target=t.target;var d=o.createValidationError(t.target,e,t),l=d[0],c=d[1];u.constraints=((i={})[l]=c,i),n.push(u)}}}))},e.prototype.mapContexts=function(e,t,n,r){var o=this;return n.forEach((function(e){if(e.context){var t=void 0;if(e.type===a.ValidationTypes.CUSTOM_VALIDATION)t=o.metadataStorage.getTargetValidatorConstraints(e.constraintCls)[0];var n=o.getConstraintType(e,t);r.constraints[n]&&(r.contexts||(r.contexts={}),r.contexts[n]=Object.assign(r.contexts[n]||{},e.context))}}))},e.prototype.createValidationError=function(e,t,n,r){var o=e.constructor?e.constructor.name:void 0,i=this.getConstraintType(n,r),u={targetName:o,property:n.propertyName,object:e,value:t,constraints:n.constraints},d=n.message;return n.message||this.validatorOptions&&(!this.validatorOptions||this.validatorOptions.dismissDefaultMessages)||(r&&r.instance.defaultMessage instanceof Function&&(d=r.instance.defaultMessage(u)),d||(d=a.ValidationTypes.getMessage(i,n.each))),[i,s.ValidationUtils.replaceMessageSpecialTokens(d,u)]},e.prototype.getConstraintType=function(e,t){return t&&t.name?t.name:e.type},e}();t.ValidationExecutor=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.replaceMessageSpecialTokens=function(e,t){var n;return e instanceof Function?n=e(t):"string"==typeof e&&(n=e),n&&t.constraints instanceof Array&&t.constraints.forEach((function(e,t){n=n.replace(new RegExp("\\$constraint"+(t+1),"g"),e)})),n&&void 0!==t.value&&null!==t.value&&"string"==typeof t.value&&(n=n.replace(/\$value/g,t.value)),n&&(n=n.replace(/\$property/g,t.property)),n&&(n=n.replace(/\$target/g,t.targetName)),n},e}();t.ValidationUtils=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPromise=function(e){return null!==e&&"object"==typeof e&&"function"==typeof e.then},t.convertToArray=function(e){return e instanceof Map?Array.from(e.values()):Array.isArray(e)?e:Array.from(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=Ie(n(60)),o=Ie(n(95)),i=Ie(n(266)),a=Ie(n(267)),s=Ie(n(268)),u=Ie(n(269)),d=Ie(n(270)),l=Ie(n(271)),c=Ie(n(272)),p=Ie(n(273)),g=Ie(n(47)),h=Ie(n(274)),f=Ie(n(61)),m=Ie(n(275)),b=Te(n(276)),y=Te(n(277)),S=Ie(n(278)),_=Ie(n(279)),C=Ie(n(280)),N=Ie(n(281)),A=Ie(n(282)),v=Ie(n(99)),E=Ie(n(100)),T=Ie(n(283)),I=Ie(n(284)),D=Ie(n(285)),P=Ie(n(98)),M=Te(n(286)),O=Ie(n(287)),F=Ie(n(101)),R=Ie(n(288)),$=Ie(n(289)),x=Ie(n(290)),w=Ie(n(291)),L=Ie(n(292)),B=Ie(n(293)),G=Ie(n(294)),j=Ie(n(295)),U=Ie(n(296)),k=Ie(n(297)),V=Ie(n(298)),H=Ie(n(97)),W=Ie(n(299)),z=Ie(n(300)),K=Ie(n(301)),Y=Ie(n(302)),J=Ie(n(303)),q=Ie(n(304)),Z=Ie(n(305)),X=Ie(n(306)),Q=Ie(n(307)),ee=Ie(n(308)),te=Te(n(309)),ne=Ie(n(310)),re=Ie(n(311)),oe=Ie(n(312)),ie=Ie(n(313)),ae=Ie(n(314)),se=Ie(n(315)),ue=Ie(n(316)),de=Ie(n(317)),le=Ie(n(318)),ce=Ie(n(319)),pe=Ie(n(320)),ge=Te(n(321)),he=Ie(n(102)),fe=Ie(n(103)),me=Ie(n(322)),be=Ie(n(323)),ye=Ie(n(324)),Se=Ie(n(325)),_e=Ie(n(326)),Ce=Ie(n(104)),Ne=Ie(n(327)),Ae=Ie(n(328)),ve=Ie(n(329));function Ee(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return Ee=function(){return e},e}function Te(e){if(e&&e.__esModule)return e;var t=Ee();if(t&&t.has(e))return t.get(e);var n={};if(null!=e){var r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var i=r?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(n,o,i):n[o]=e[o]}}return n.default=e,t&&t.set(e,n),n}function Ie(e){return e&&e.__esModule?e:{default:e}}var De={version:"12.0.0",toDate:r.default,toFloat:o.default,toInt:i.default,toBoolean:a.default,equals:s.default,contains:u.default,matches:d.default,isEmail:l.default,isURL:c.default,isMACAddress:p.default,isIP:g.default,isIPRange:h.default,isFQDN:f.default,isBoolean:m.default,isBIC:L.default,isAlpha:b.default,isAlphaLocales:b.locales,isAlphanumeric:y.default,isAlphanumericLocales:y.locales,isNumeric:S.default,isPort:_.default,isLowercase:C.default,isUppercase:N.default,isAscii:A.default,isFullWidth:v.default,isHalfWidth:E.default,isVariableWidth:T.default,isMultibyte:I.default,isSurrogatePair:D.default,isInt:P.default,isFloat:M.default,isFloatLocales:M.locales,isDecimal:O.default,isHexadecimal:F.default,isOctal:R.default,isDivisibleBy:$.default,isHexColor:x.default,isISRC:w.default,isMD5:B.default,isHash:G.default,isJWT:j.default,isJSON:U.default,isEmpty:k.default,isLength:V.default,isByteLength:H.default,isUUID:W.default,isMongoId:z.default,isAfter:K.default,isBefore:Y.default,isIn:J.default,isCreditCard:q.default,isIdentityCard:Z.default,isISIN:X.default,isISBN:Q.default,isISSN:ee.default,isMobilePhone:te.default,isMobilePhoneLocales:te.locales,isPostalCode:ge.default,isPostalCodeLocales:ge.locales,isCurrency:ne.default,isISO8601:re.default,isRFC3339:oe.default,isISO31661Alpha2:ie.default,isISO31661Alpha3:ae.default,isBase32:se.default,isBase64:ue.default,isDataURI:de.default,isMagnetURI:le.default,isMimeType:ce.default,isLatLong:pe.default,ltrim:he.default,rtrim:fe.default,trim:me.default,escape:be.default,unescape:ye.default,stripLow:Se.default,whitelist:_e.default,blacklist:Ce.default,isWhitelisted:Ne.default,normalizeEmail:Ae.default,toString:toString,isSlug:ve.default};t.default=De,e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,o.default)(e),parseInt(e,t||10)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,o.default)(e),t)return"1"===e||"true"===e;return"0"!==e&&"false"!==e&&""!==e};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,o.default)(e),e===t};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e),e.indexOf((0,o.default)(t))>=0};var r=i(n(2)),o=i(n(96));function i(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){(0,o.default)(e),"[object RegExp]"!==Object.prototype.toString.call(t)&&(t=new RegExp(t,n));return t.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.default)(e),(t=(0,o.default)(t,d)).require_display_name||t.allow_display_name){var n=e.match(l);if(n){var u,m=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){o=!0,i=e}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}(n,3);if(u=m[1],e=m[2],u.endsWith(" ")&&(u=u.substr(0,u.length-1)),!function(e){var t=e.match(/^"(.+)"$/i),n=t?t[1]:e;if(!n.trim())return!1;if(/[\.";<>]/.test(n)){if(!t)return!1;if(!(n.split('"').length===n.split('\\"').length))return!1}return!0}(u))return!1}else if(t.require_display_name)return!1}if(!t.ignore_max_length&&e.length>254)return!1;var b=e.split("@"),y=b.pop(),S=b.join("@"),_=y.toLowerCase();if(t.domain_specific_validation&&("gmail.com"===_||"googlemail.com"===_)){var C=(S=S.toLowerCase()).split("+")[0];if(!(0,i.default)(C.replace(".",""),{min:6,max:30}))return!1;for(var N=C.split("."),A=0;A$/i,c=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,p=/^[a-z\d]+$/,g=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,h=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,f=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.default)(e),!e||e.length>=2083||/[\s<>]/.test(e))return!1;if(0===e.indexOf("mailto:"))return!1;var n,s,c,p,g,h,f,m;if(t=(0,a.default)(t,u),f=e.split("#"),e=f.shift(),f=e.split("?"),e=f.shift(),(f=e.split("://")).length>1){if(n=f.shift().toLowerCase(),t.require_valid_protocol&&-1===t.protocols.indexOf(n))return!1}else{if(t.require_protocol)return!1;if("//"===e.substr(0,2)){if(!t.allow_protocol_relative_urls)return!1;f[0]=e.substr(2)}}if(""===(e=f.join("://")))return!1;if(f=e.split("/"),""===(e=f.shift())&&!t.require_host)return!0;if((f=e.split("@")).length>1){if(t.disallow_auth)return!1;if((s=f.shift()).indexOf(":")>=0&&s.split(":").length>2)return!1}p=f.join("@"),h=null,m=null;var b=p.match(d);b?(c="",m=b[1],h=b[2]||null):(f=p.split(":"),c=f.shift(),f.length&&(h=f.join(":")));if(null!==h&&(g=parseInt(h,10),!/^[0-9]+$/.test(h)||g<=0||g>65535))return!1;if(!((0,i.default)(c)||(0,o.default)(c,t)||m&&(0,i.default)(m,6)))return!1;if(c=c||m,t.host_whitelist&&!l(c,t.host_whitelist))return!1;if(t.host_blacklist&&l(c,t.host_blacklist))return!1;return!0};var r=s(n(2)),o=s(n(61)),i=s(n(47)),a=s(n(25));function s(e){return e&&e.__esModule?e:{default:e}}var u={protocols:["http","https","ftp"],require_tld:!0,require_protocol:!1,require_host:!0,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1},d=/^\[([^\]]+)\](?::([0-9]+))?$/;function l(e,t){for(var n=0;n1&&t[1].startsWith("0"))return!1;return(0,o.default)(t[0],4)&&t[1]<=32&&t[1]>=0};var r=i(n(2)),o=i(n(47));function i(e){return e&&e.__esModule?e:{default:e}}var a=/^\d{1,2}$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),["true","false","1","0"].indexOf(e)>=0};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"en-US";if((0,o.default)(e),t in i.alpha)return i.alpha[t].test(e);throw new Error("Invalid locale '".concat(t,"'"))},t.locales=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r},i=n(48);var a=Object.keys(i.alpha);t.locales=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"en-US";if((0,o.default)(e),t in i.alphanumeric)return i.alphanumeric[t].test(e);throw new Error("Invalid locale '".concat(t,"'"))},t.locales=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r},i=n(48);var a=Object.keys(i.alphanumeric);t.locales=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,o.default)(e),t&&t.no_symbols)return a.test(e);return i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[+-]?([0-9]*[.])?[0-9]+$/,a=/^[0-9]+$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e,{min:0,max:65535})};var r,o=(r=n(98))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),e===e.toLowerCase()};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),e===e.toUpperCase()};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[\x00-\x7F]+$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.fullWidth.test(e)&&a.halfWidth.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r},i=n(99),a=n(100);e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[^\x00-\x7F]/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[\uD800-\uDBFF][\uDC00-\uDFFF]/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,o.default)(e),t=t||{};var n=new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(t.locale?i.decimal[t.locale]:".","[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));if(""===e||"."===e||"-"===e||"+"===e)return!1;var r=parseFloat(e.replace(",","."));return n.test(e)&&(!t.hasOwnProperty("min")||r>=t.min)&&(!t.hasOwnProperty("max")||r<=t.max)&&(!t.hasOwnProperty("lt")||rt.gt)},t.locales=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r},i=n(48);var a=Object.keys(i.decimal);t.locales=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,o.default)(e),(t=(0,r.default)(t,u)).locale in a.decimal)return!(0,i.default)(d,e.replace(/ /g,""))&&function(e){return new RegExp("^[-+]?([0-9]+)?(\\".concat(a.decimal[e.locale],"[0-9]{").concat(e.decimal_digits,"})").concat(e.force_decimal?"":"?","$"))}(t).test(e);throw new Error("Invalid locale '".concat(t.locale,"'"))};var r=s(n(25)),o=s(n(2)),i=s(n(62)),a=n(48);function s(e){return e&&e.__esModule?e:{default:e}}var u={force_decimal:!1,decimal_digits:"1,",locale:"en-US"},d=["","-","+"];e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(0o)?[0-7]+$/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e),(0,o.default)(e)%parseInt(t,10)==0};var r=i(n(2)),o=i(n(95));function i(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^#?([0-9A-F]{3}|[0-9A-F]{6})$/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[A-z]{4}[A-z]{2}\w{2}(\w{3})?$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[a-f0-9]{32}$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,o.default)(e),new RegExp("^[a-fA-F0-9]{".concat(i[t],"}$")).test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i={md5:32,md4:32,sha1:40,sha256:64,sha384:96,sha512:128,ripemd128:32,ripemd160:40,tiger128:32,tiger160:40,tiger192:48,crc32:8,crc32b:8};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^([A-Za-z0-9\-_~+\/]+[=]{0,2})\.([A-Za-z0-9\-_~+\/]+[=]{0,2})(?:\.([A-Za-z0-9\-_~+\/]+[=]{0,2}))?$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){(0,o.default)(e);try{var t=JSON.parse(e);return!!t&&"object"===i(t)}catch(e){}return!1};var r,o=(r=n(2))&&r.__esModule?r:{default:r};function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e),0===((t=(0,o.default)(t,a)).ignore_whitespace?e.trim().length:e.length)};var r=i(n(2)),o=i(n(25));function i(e){return e&&e.__esModule?e:{default:e}}var a={ignore_whitespace:!1};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n,r;(0,o.default)(e),"object"===i(t)?(n=t.min||0,r=t.max):(n=arguments[1]||0,r=arguments[2]);var a=e.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],s=e.length-a.length;return s>=n&&(void 0===r||s<=r)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"all";(0,o.default)(e);var n=i[t];return n&&n.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i={3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e),(0,o.default)(e)&&24===e.length};var r=i(n(2)),o=i(n(101));function i(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String(new Date);(0,r.default)(e);var n=(0,o.default)(t),i=(0,o.default)(e);return!!(i&&n&&i>n)};var r=i(n(2)),o=i(n(60));function i(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String(new Date);(0,r.default)(e);var n=(0,o.default)(t),i=(0,o.default)(e);return!!(i&&n&&i=0}if("object"===a(t))return t.hasOwnProperty(e);if(t&&"function"==typeof t.indexOf)return t.indexOf(e)>=0;return!1};var r=i(n(2)),o=i(n(96));function i(e){return e&&e.__esModule?e:{default:e}}function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){(0,o.default)(e);var t=e.replace(/[- ]+/g,"");if(!i.test(t))return!1;for(var n,r,a,s=0,u=t.length-1;u>=0;u--)n=t.substring(u,u+1),r=parseInt(n,10),s+=a&&(r*=2)>=10?r%10+1:r,a=!a;return!(s%10!=0||!t)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14})$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,o.default)(e),t in i)return i[t](e);if("any"===t){for(var n in i){if(i.hasOwnProperty(n))if((0,i[n])(e))return!0}return!1}throw new Error("Invalid locale '".concat(t,"'"))};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i={ES:function(e){(0,o.default)(e);var t={X:0,Y:1,Z:2},n=e.trim().toUpperCase();if(!/^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/.test(n))return!1;var r=n.slice(0,-1).replace(/[X,Y,Z]/g,(function(e){return t[e]}));return n.endsWith(["T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E"][r%23])},"he-IL":function(e){var t=e.trim();if(!/^\d{9}$/.test(t))return!1;for(var n,r=t,o=0,i=0;i9?n-9:n;return o%10==0},"zh-TW":function(e){var t={A:10,B:11,C:12,D:13,E:14,F:15,G:16,H:17,I:34,J:18,K:19,L:20,M:21,N:22,O:35,P:23,Q:24,R:25,S:26,T:27,U:28,V:29,W:32,X:30,Y:31,Z:33},n=e.trim().toUpperCase();return!!/^[A-Z][0-9]{9}$/.test(n)&&Array.from(n).reduce((function(e,n,r){if(0===r){var o=t[n];return o%10*9+Math.floor(o/10)}return 9===r?(10-e%10-Number(n))%10==0:e+Number(n)*(9-r)}),0)}};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if((0,o.default)(e),!i.test(e))return!1;for(var t,n,r=e.replace(/[A-Z]/g,(function(e){return parseInt(e,36)})),a=0,s=!0,u=r.length-2;u>=0;u--)t=r.substring(u,u+1),n=parseInt(t,10),a+=s&&(n*=2)>=10?n+1:n,s=!s;return parseInt(e.substr(e.length-1),10)===(1e4-a)%10};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[A-Z]{2}[0-9A-Z]{9}[0-9]$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if((0,o.default)(t),!(n=String(n)))return e(t,10)||e(t,13);var r,u=t.replace(/[\s-]+/g,""),d=0;if("10"===n){if(!i.test(u))return!1;for(r=0;r<9;r++)d+=(r+1)*u.charAt(r);if("X"===u.charAt(9)?d+=100:d+=10*u.charAt(9),d%11==0)return!!u}else if("13"===n){if(!a.test(u))return!1;for(r=0;r<12;r++)d+=s[r%2]*u.charAt(r);if(u.charAt(12)-(10-d%10)%10==0)return!!u}return!1};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(?:[0-9]{9}X|[0-9]{10})$/,a=/^(?:[0-9]{13})$/,s=[1,3];e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(0,o.default)(e);var n=i;if(n=t.require_hyphen?n.replace("?",""):n,!(n=t.case_sensitive?new RegExp(n):new RegExp(n,"i")).test(e))return!1;for(var r=e.replace("-","").toUpperCase(),a=0,s=0;s0&&t%8==0&&i.test(e))return!0;return!1};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[A-Z2-7]+=*$/;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){(0,o.default)(e);var t=e.length;if(!t||t%4!=0||i.test(e))return!1;var n=e.indexOf("=");return-1===n||n===t-1||n===t-2&&"="===e[t-1]};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[^A-Z0-9+\/=]/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){(0,o.default)(e);var t=e.split(",");if(t.length<2)return!1;var n=t.shift().trim().split(";"),r=n.shift();if("data:"!==r.substr(0,5))return!1;var u=r.substr(5);if(""!==u&&!i.test(u))return!1;for(var d=0;d/g,">").replace(/\//g,"/").replace(/\\/g,"\").replace(/`/g,"`")};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),e.replace(/&/g,"&").replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(///g,"/").replace(/\/g,"\\").replace(/`/g,"`")};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)(e);var n=t?"\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F":"\\x00-\\x1F\\x7F";return(0,o.default)(e,n)};var r=i(n(2)),o=i(n(104));function i(e){return e&&e.__esModule?e:{default:e}}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,o.default)(e),e.replace(new RegExp("[^".concat(t,"]+"),"g"),"")};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,o.default)(e);for(var n=e.length-1;n>=0;n--)if(-1===t.indexOf(e[n]))return!1;return!0};var r,o=(r=n(2))&&r.__esModule?r:{default:r};e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){t=(0,o.default)(t,i);var n=e.split("@"),r=n.pop(),c=[n.join("@"),r];if(c[1]=c[1].toLowerCase(),"gmail.com"===c[1]||"googlemail.com"===c[1]){if(t.gmail_remove_subaddress&&(c[0]=c[0].split("+")[0]),t.gmail_remove_dots&&(c[0]=c[0].replace(/\.+/g,l)),!c[0].length)return!1;(t.all_lowercase||t.gmail_lowercase)&&(c[0]=c[0].toLowerCase()),c[1]=t.gmail_convert_googlemaildotcom?"gmail.com":c[1]}else if(a.indexOf(c[1])>=0){if(t.icloud_remove_subaddress&&(c[0]=c[0].split("+")[0]),!c[0].length)return!1;(t.all_lowercase||t.icloud_lowercase)&&(c[0]=c[0].toLowerCase())}else if(s.indexOf(c[1])>=0){if(t.outlookdotcom_remove_subaddress&&(c[0]=c[0].split("+")[0]),!c[0].length)return!1;(t.all_lowercase||t.outlookdotcom_lowercase)&&(c[0]=c[0].toLowerCase())}else if(u.indexOf(c[1])>=0){if(t.yahoo_remove_subaddress){var p=c[0].split("-");c[0]=p.length>1?p.slice(0,-1).join("-"):p[0]}if(!c[0].length)return!1;(t.all_lowercase||t.yahoo_lowercase)&&(c[0]=c[0].toLowerCase())}else d.indexOf(c[1])>=0?((t.all_lowercase||t.yandex_lowercase)&&(c[0]=c[0].toLowerCase()),c[1]="yandex.ru"):t.all_lowercase&&(c[0]=c[0].toLowerCase());return c.join("@")};var r,o=(r=n(25))&&r.__esModule?r:{default:r};var i={all_lowercase:!0,gmail_lowercase:!0,gmail_remove_dots:!0,gmail_remove_subaddress:!0,gmail_convert_googlemaildotcom:!0,outlookdotcom_lowercase:!0,outlookdotcom_remove_subaddress:!0,yahoo_lowercase:!0,yahoo_remove_subaddress:!0,yandex_lowercase:!0,icloud_lowercase:!0,icloud_remove_subaddress:!0},a=["icloud.com","me.com"],s=["hotmail.at","hotmail.be","hotmail.ca","hotmail.cl","hotmail.co.il","hotmail.co.nz","hotmail.co.th","hotmail.co.uk","hotmail.com","hotmail.com.ar","hotmail.com.au","hotmail.com.br","hotmail.com.gr","hotmail.com.mx","hotmail.com.pe","hotmail.com.tr","hotmail.com.vn","hotmail.cz","hotmail.de","hotmail.dk","hotmail.es","hotmail.fr","hotmail.hu","hotmail.id","hotmail.ie","hotmail.in","hotmail.it","hotmail.jp","hotmail.kr","hotmail.lv","hotmail.my","hotmail.ph","hotmail.pt","hotmail.sa","hotmail.sg","hotmail.sk","live.be","live.co.uk","live.com","live.com.ar","live.com.mx","live.de","live.es","live.eu","live.fr","live.it","live.nl","msn.com","outlook.at","outlook.be","outlook.cl","outlook.co.il","outlook.co.nz","outlook.co.th","outlook.com","outlook.com.ar","outlook.com.au","outlook.com.br","outlook.com.gr","outlook.com.pe","outlook.com.tr","outlook.com.vn","outlook.cz","outlook.de","outlook.dk","outlook.es","outlook.fr","outlook.hu","outlook.id","outlook.ie","outlook.in","outlook.it","outlook.jp","outlook.kr","outlook.lv","outlook.my","outlook.ph","outlook.pt","outlook.sa","outlook.sg","outlook.sk","passport.com"],u=["rocketmail.com","yahoo.ca","yahoo.co.uk","yahoo.com","yahoo.de","yahoo.fr","yahoo.in","yahoo.it","ymail.com"],d=["yandex.ru","yandex.ua","yandex.kz","yandex.com","yandex.by","ya.ru"];function l(e){return e.length>1?e:""}e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^[^-_](?!.*?[-_]{2,})([a-z0-9\\-]{1,}).*[^-_]$/;e.exports=t.default,e.exports.default=t.default},function(module,exports,__webpack_require__){var require,require,f;f=function(){var define,module,exports;return function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){if(!s&&"function"==typeof require&&require)return require(a,!0);if(i)return i(a,!0);var u=new Error("Cannot find module '"+a+"'");throw u.code="MODULE_NOT_FOUND",u}var d=n[a]={exports:{}};t[a][0].call(d.exports,(function(e){return o(t[a][1][e]||e)}),d,d.exports,e,t,n,r)}return n[a].exports}for(var i="function"==typeof require&&require,a=0;a>>0),goog.uidCounter_=0,goog.getHashCode=goog.getUid,goog.removeHashCode=goog.removeUid,goog.cloneObject=function(e){var t=goog.typeOf(e);if("object"==t||"array"==t){if("function"==typeof e.clone)return e.clone();for(var n in t="array"==t?[]:{},e)t[n]=goog.cloneObject(e[n]);return t}return e},goog.bindNative_=function(e,t,n){return e.call.apply(e.bind,arguments)},goog.bindJs_=function(e,t,n){if(!e)throw Error();if(2{"use strict";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()')})),a("es7",(function(){return b("2 ** 2 == 4")})),a("es8",(function(){return b("async () => 1, true")})),a("es9",(function(){return b("({...rest} = {}), true")})),a("es_next",(function(){return!1})),{target:c,map:d}},goog.Transpiler.prototype.needsTranspile=function(e,t){if("always"==goog.TRANSPILE)return!0;if("never"==goog.TRANSPILE)return!1;if(!this.requiresTranspilation_){var n=this.createRequiresTranspilation_();this.requiresTranspilation_=n.map,this.transpilationTarget_=this.transpilationTarget_||n.target}if(e in this.requiresTranspilation_)return!!this.requiresTranspilation_[e]||!(!goog.inHtmlDocument_()||"es6"!=t||"noModule"in goog.global.document.createElement("script"));throw Error("Unknown language mode: "+e)},goog.Transpiler.prototype.transpile=function(e,t){return goog.transpile_(e,t,this.transpilationTarget_)},goog.transpiler_=new goog.Transpiler,goog.protectScriptTag_=function(e){return e.replace(/<\/(SCRIPT)/gi,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={},this.idToPath_={},this.written_={},this.loadingDeps_=[],this.depsToLoad_=[],this.paused_=!1,this.factory_=new goog.DependencyFactory(goog.transpiler_),this.deferredCallbacks_={},this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(e,t){function n(){r&&(goog.global.setTimeout(r,0),r=null)}var r=t;if(e.length){for(var o=[],i=0;i<\/script>",t.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(r):r)}else{var o=t.createElement("script");o.defer=goog.Dependency.defer_,o.async=!1,o.type="text/javascript",(r=goog.getScriptNonce())&&o.setAttribute("nonce",r),goog.DebugLoader_.IS_OLD_IE_?(e.pause(),o.onreadystatechange=function(){"loaded"!=o.readyState&&"complete"!=o.readyState||(e.loaded(),e.resume())}):o.onload=function(){o.onload=null,e.loaded()},o.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path,t.head.appendChild(o)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),e.loaded()):e.pause()},goog.Es6ModuleDependency=function(e,t,n,r,o){goog.Dependency.call(this,e,t,n,r,o)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(e){if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?e.loaded():e.pause();else if(goog.inHtmlDocument_()){var t=goog.global.document,n=this;if(goog.isDocumentLoading_()){var r=function(e,n){var r=n?'