diff --git a/CHANGELOG.md b/CHANGELOG.md index c5b52f39c..e134f5d3c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,12 @@ Change Log +v0.20.4 +--- +* Fixed typings. Now string values correctly assignable to enum-like options + v0.20.3 --- * Fixed `for-await-of` statement: https://github.com/javascript-obfuscator/javascript-obfuscator/issues/419 -* Fixed typings. Now string values correctly assignable to enum-like options v0.20.2 --- diff --git a/dist/index.browser.js b/dist/index.browser.js index 95fcfb778..9ab170621 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=101)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11);t.METADATA_KEY=r;var o=n(104);t.Container=o.Container;var i=n(16);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(120);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(121);t.injectable=s.injectable;var u=n(122);t.tagged=u.tagged;var d=n(123);t.named=d.named;var l=n(63);t.inject=l.inject,t.LazyServiceIdentifer=l.LazyServiceIdentifer;var c=n(124);t.optional=c.optional;var p=n(125);t.unmanaged=p.unmanaged;var g=n(126);t.multiInject=g.multiInject;var h=n(127);t.targetName=h.targetName;var f=n(128);t.postConstruct=f.postConstruct;var m=n(61);t.MetadataReader=m.MetadataReader;var b=n(22);t.id=b.id;var y=n(20);t.decorate=y.decorate;var S=n(66);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var C=n(34);t.getServiceIdentifierAsString=C.getServiceIdentifierAsString;var _=n(129);t.multiBindToService=_.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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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(17);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}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 isCatchClauseNode(e){return e.type===r.NodeType.CatchClause}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 isReplaceableIdentifierNode(e,t){return o.isIdentifierNode(e)&&!o.parentNodeIsPropertyNode(e,t)&&!o.parentNodeIsMemberExpressionNode(e,t)&&!o.parentNodeIsMethodDefinitionNode(e,t)&&!o.isLabelIdentifierNode(e,t)}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";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(53)),i=r(n(74)),a=r(n(10)),s=n(3),u=n(13);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:o.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=i.parse(e,{sourceType:"script"});return a.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),u.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 s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return a.replace(e,{enter:d.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(d.cloneRecursive):"object"==typeof r?d.cloneRecursive(r):r,t[n]=o}),t}}t.NodeUtils=d},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";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(53)),i=n(17);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 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){"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(179),l=n(180);let c=r=class{constructor(e,t,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.randomGenerator=t,this.options=n}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}};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.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],c),t.AbstractCustomNode=c},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[_=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],[_,m],"Property",new l(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[_,m],null,new l(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,_,null,new l(o,_)))}}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 C.root;return C.root},t.version=n(132).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";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;tn=>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 _.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(C.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;l=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}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3);class o{static append(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,n,r=0){const i=e.length?o.getOptimalBlockScope(e,r):t;o.prepend(i,n)}static getOptimalBlockScope(e,t,n=1/0){const r=e[t];if(n<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return n>1&&r.stackTrace.length?o.getOptimalBlockScope(r.stackTrace,0,--n):r.callee}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}),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(39);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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";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(102);const r=n(1),o=n(19);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.20.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)}getRandomStackTraceIndex(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});class r{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||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(242),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,n){var r,o,i;!function(a){if("object"==typeof e.exports){var s=a(n(187),t);void 0!==s&&(e.exports=s)}else o=[n,t],void 0===(i="function"==typeof(r=a)?r.apply(t,o):r)||(e.exports=i)}((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(e){return Object.freeze.apply(Object,arguments)};"function"!=typeof Object.freeze&&(n=function(e){return e}),"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),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);let u=class{constructor(e){this.options=e}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object])],u),t.AbstractObfuscatingReplacer=u},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,4)||e(t,6);if("4"===n){if(!i.test(t))return!1;var r=t.split(".").sort((function(e,t){return e-t}));return r[3]<=255}if("6"===n){var s=t.split(":"),u=!1,d=e(s[s.length-1],4),l=d?7:8;if(s.length>l)return!1;if("::"===t)return!0;"::"===t.substr(0,2)?(s.shift(),s.shift(),u=!0):"::"===t.substr(t.length-2)&&(s.pop(),s.pop(),u=!0);for(var c=0;c0&&c=1:s.length===l}return!1};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/,a=/^[0-9A-F]{1,4}$/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.commaDecimal=t.dotDecimal=t.arabicLocales=t.englishLocales=t.decimal=t.alphanumeric=t.alpha=void 0;var r={"en-US":/^[A-Z]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ω]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,"fa-IR":/^['آابپتثجچهخدذرزژسشصضطظعغفقکگلمنوهی']+$/i};t.alpha=r;var o={"en-US":/^[0-9A-Z]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,"fa-IR":/^['0-9آابپتثجچهخدذرزژسشصضطظعغفقکگلمنوهی۱۲۳۴۵۶۷۸۹۰']+$/i};t.alphanumeric=o;var i={"en-US":".",ar:"٫"};t.decimal=i;var a=["AU","GB","HK","IN","NZ","ZA","ZM"];t.englishLocales=a;for(var s,u=0;u=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});let o=class{};o=r([n(0).injectable()],o),t.AbstractCalleeDataExtractor=o},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);let d=r=class{constructor(e,t,n){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=n}static getStorageKeysByIdForCurrentStorage(e,t){let n;return n=e.has(t)?e.get(t):new Map,n}insertCustomNodeToControlFlowStorage(e,t,n,o){const i=t.getStorageId(),a=r.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(n);if(this.randomGenerator.getMathRandom(){const n=this.randomGenerator.getRandomString(e);return t.getStorage().has(n)?u(e):n},d=u(5);return a.set(n,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};d=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])],d),t.AbstractControlFlowReplacer=d},function(e,t,n){(function(e){!function(){"use strict";var r,o,i,a,s,u,d,l,c,p,g,h,f,m,b,y,S,C,_,N,A,v,E,T,I,D;function P(e){return K.Statement.hasOwnProperty(e.type)}s=n(10),u=n(139),r=s.Syntax,i={"||":(o={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,LogicalOR:3,LogicalAND:4,BitwiseOR:5,BitwiseXOR:6,BitwiseAND:7,Equality:8,Relational:9,BitwiseSHIFT:10,Additive:11,Multiplicative:12,Await:13,Unary:13,Postfix:14,Call:15,New:16,TaggedTemplate:17,Member:18,Primary:19}).LogicalOR,"&&":o.LogicalAND,"|":o.BitwiseOR,"^":o.BitwiseXOR,"&":o.BitwiseAND,"==":o.Equality,"!=":o.Equality,"===":o.Equality,"!==":o.Equality,is:o.Equality,isnt:o.Equality,"<":o.Relational,">":o.Relational,"<=":o.Relational,">=":o.Relational,in:o.Relational,instanceof:o.Relational,"<<":o.BitwiseSHIFT,">>":o.BitwiseSHIFT,">>>":o.BitwiseSHIFT,"+":o.Additive,"-":o.Additive,"*":o.Multiplicative,"%":o.Multiplicative,"/":o.Multiplicative};function M(e,t){var n="";for(t|=0;t>0;t>>>=1,e+=e)1&t&&(n+=e);return n}function O(e){var t=e.length;return t&&u.code.isLineTerminator(e.charCodeAt(t-1))}function R(e,t){var n;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function F(e,t){var n,r;function o(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof RegExp)}for(n in t)t.hasOwnProperty(n)&&(o(r=t[n])?o(e[n])?F(e[n],r):e[n]=F({},r):e[n]=r);return e}function $(e,t){return 8232==(-2&e)?(t?"u":"\\u")+(8232===e?"2028":"2029"):10===e||13===e?(t?"":"\\")+(10===e?"n":"r"):String.fromCharCode(e)}function x(e,t){var n;return 8===e?"\\b":12===e?"\\f":9===e?"\\t":(n=e.toString(16).toUpperCase(),c||e>255?"\\u"+"0000".slice(n.length)+n:0!==e||u.code.isDecimalDigit(t)?11===e?"\\x0B":"\\x"+"00".slice(n.length)+n:"\\0")}function w(e){if(92===e)return"\\\\";if(10===e)return"\\n";if(13===e)return"\\r";if(8232===e)return"\\u2028";if(8233===e)return"\\u2029";throw new Error("Incorrectly classified character")}function L(e,t){if(!v)return Array.isArray(e)?function e(t){var n,r,o,i="";for(n=0,r=t.length;na&&(s=a)}for(void 0!==t?(l=d,"*"===n[1][s]&&(t+=" "),d=t):(1&s&&--s,l=d),r=1,o=n.length;r0){if(a=t,T){for(t=[],g=(i=e.leadingComments[0]).extendedRange,h=i.range,(b=((m=E.substring(g[0],h[0])).match(/\n/g)||[]).length)>0?(t.push(M("\n",b)),t.push(k(U(i)))):(t.push(m),t.push(U(i))),f=h,n=1,o=e.leadingComments.length;n0?(t.push(M("\n",b)),t.push(k(U(i)))):(t.push(m),t.push(U(i)));else for(s=!O(L(t).toString()),c=M(" ",function(e){var t;for(t=e.length-1;t>=0&&!u.code.isLineTerminator(e.charCodeAt(t));--t);return e.length-1-t}(L([d,t,l]).toString())),n=0,o=e.trailingComments.length;n")),e.expression?(t.push(b),"{"===(n=this.generateExpression(e.body,o.Assignment,7)).toString().charAt(0)&&(n=["(",n,")"]),t.push(n)):t.push(this.maybeBlock(e.body,9)),t},K.prototype.generateIterationForStatement=function(e,t,n){var i=["for"+(t.await?B()+"await":"")+b+"("],a=this;return j((function(){t.left.type===r.VariableDeclaration?j((function(){i.push(t.left.kind+B()),i.push(a.generateStatement(t.left.declarations[0],0))})):i.push(a.generateExpression(t.left,o.Call,7)),i=G(i,e),i=[G(i,a.generateExpression(t.right,o.Assignment,7)),")"]})),i.push(this.maybeBlock(t.body,n)),i},K.prototype.generatePropertyKey=function(e,t){var n=[];return t&&n.push("["),n.push(this.generateExpression(e,o.Sequence,7)),t&&n.push("]"),n},K.prototype.generateAssignment=function(e,t,n,r,i){return o.Assignment2&&("\n"===(r=E.substring(n[0]+1,n[1]-1))[0]&&(o=["{"]),o.push(r)),d=1,8&t&&(d|=16),a=0,s=e.body.length;a0&&(e.body[a-1].trailingComments||e.body[a].leadingComments||H(e.body[a-1].range[1],e.body[a].range[0],o))),a===s-1&&(d|=32),u=e.body[a].leadingComments&&T?i.generateStatement(e.body[a],d):k(i.generateStatement(e.body[a],d)),o.push(u),O(L(u).toString())||T&&a1?j(u):u(),n.push(this.semicolon(t)),n},ThrowStatement:function(e,t){return[G("throw",this.generateExpression(e.argument,o.Sequence,7)),this.semicolon(t)]},TryStatement:function(e,t){var n,r,o,i;if(n=["try",this.maybeBlock(e.block,1)],n=this.maybeBlockSuffix(e.block,n),e.handlers)for(r=0,o=e.handlers.length;r0?"\n":""],a=17,o=0;o0&&(e.body[o-1].trailingComments||e.body[o].leadingComments||H(e.body[o-1].range[1],e.body[o].range[0],n))),r=k(this.generateStatement(e.body[o],a)),n.push(r),o+10){for(r.push("("),a=0,s=i;a=2&&48===a.charCodeAt(0))&&i.push(" "),i.push("."),i.push(Y(e.property))),W(i,o.Member,t)},MetaProperty:function(e,t,n){var r;return(r=[]).push("string"==typeof e.meta?e.meta:Y(e.meta)),r.push("."),r.push("string"==typeof e.property?e.property:Y(e.property)),W(r,o.Member,t)},UnaryExpression:function(e,t,n){var r,i,a,s,d;return i=this.generateExpression(e.argument,o.Unary,7),""===b?r=G(e.operator,i):(r=[e.operator],e.operator.length>2?r=G(r,i):(d=(s=L(r).toString()).charCodeAt(s.length-1),a=i.toString().charCodeAt(0),(43===d||45===d)&&d===a||u.code.isIdentifierPartES5(d)&&u.code.isIdentifierPartES5(a)?(r.push(B()),r.push(i)):r.push(i))),W(r,o.Unary,t)},YieldExpression:function(e,t,n){var r;return r=e.delegate?"yield*":"yield",e.argument&&(r=G(r,this.generateExpression(e.argument,o.Yield,7))),W(r,o.Yield,t)},AwaitExpression:function(e,t,n){return W(G(e.all?"await*":"await",this.generateExpression(e.argument,o.Await,7)),o.Await,t)},UpdateExpression:function(e,t,n){return e.prefix?W([e.operator,this.generateExpression(e.argument,o.Unary,7)],o.Unary,t):W([this.generateExpression(e.argument,o.Postfix,7),e.operator],o.Postfix,t)},FunctionExpression:function(e,t,n){var r=[J(e,!0),"function"];return e.id?(r.push(q(e)||B()),r.push(Y(e.id))):r.push(q(e)||b),r.push(this.generateFunctionBody(e)),r},ArrayPattern:function(e,t,n){return this.ArrayExpression(e,t,n,!0)},ArrayExpression:function(e,t,n,r){var i,a,s=this;return e.elements.length?(a=!r&&e.elements.length>1,i=["[",a?m:""],j((function(t){var n,r;for(n=0,r=e.elements.length;n1,j((function(){a=u.generateExpression(e.properties[0],o.Sequence,7)})),r||(s=L(a).toString(),/[\r\n]/g.test(s))?(j((function(t){var n,s;if(i=["{",m,t,a],r)for(i.push(","+m),n=1,s=e.properties.length;n126))){a+=x(r,e.charCodeAt(t+1));continue}}a+=String.fromCharCode(r)}if(i=(o=!("double"===h||"auto"===h&&d0&&(o=+r.slice(i+1),r=r.slice(0,i)),n>=0&&(o-=r.length-n-1,r=+(r.slice(0,n)+r.slice(n+1))+""),i=0;48===r.charCodeAt(r.length+i-1);)--i;return 0!==i&&(o-=i,r=r.slice(0,i)),0!==o&&(r+="e"+o),(r.length1e12&&Math.floor(e)===e&&(r="0x"+e.toString(16)).length0||N.moz.comprehensionExpressionStartsWithAssignment?i=G(i,u):i.push(u)})),e.filter&&(i=G(i,"if"+b),u=this.generateExpression(e.filter,o.Sequence,7),i=G(i,["(",u,")"])),N.moz.comprehensionExpressionStartsWithAssignment||(u=this.generateExpression(e.body,o.Assignment,7),i=G(i,u)),i.push(e.type===r.GeneratorExpression?")":"]"),i},ComprehensionBlock:function(e,t,n){var i;return i=G(i=e.left.type===r.VariableDeclaration?[e.left.kind,B(),this.generateStatement(e.left.declarations[0],0)]:this.generateExpression(e.left,o.Call,7),e.of?"of":"in"),i=G(i,this.generateExpression(e.right,o.Sequence,7)),["for"+b+"(",i,")"]},SpreadElement:function(e,t,n){return["...",this.generateExpression(e.argument,o.Assignment,7)]},TaggedTemplateExpression:function(e,t,n){var r=3;return 2&n||(r=1),W([this.generateExpression(e.tag,o.Call,r),this.generateExpression(e.quasi,o.Primary,4)],o.TaggedTemplate,t)},TemplateElement:function(e,t,n){return e.value.raw},TemplateLiteral:function(e,t,n){var r,i,a;for(r=["`"],i=0,a=e.quasis.length;ie)return!1;if((n+=t[r+1])>=e)return!0}}function h(e,t){return e<65?36===e:e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&d.test(String.fromCharCode(e)):!1!==t&&g(e,c)))}function f(e,t){return e<48?36===e:e<58||!(e<65)&&(e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&l.test(String.fromCharCode(e)):!1!==t&&(g(e,c)||g(e,p)))))}var m=function(e,t){void 0===t&&(t={}),this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=t.binop||null,this.updateContext=null};function b(e,t){return new m(e,{beforeExpr:!0,binop:t})}var y={beforeExpr:!0},S={startsExpr:!0},C={};function _(e,t){return void 0===t&&(t={}),t.keyword=e,C[e]=new m(e,t)}var N={num:new m("num",S),regexp:new m("regexp",S),string:new m("string",S),name:new m("name",S),eof:new m("eof"),bracketL:new m("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new m("]"),braceL:new m("{",{beforeExpr:!0,startsExpr:!0}),braceR:new m("}"),parenL:new m("(",{beforeExpr:!0,startsExpr:!0}),parenR:new m(")"),comma:new m(",",y),semi:new m(";",y),colon:new m(":",y),dot:new m("."),question:new m("?",y),arrow:new m("=>",y),template:new m("template"),invalidTemplate:new m("invalidTemplate"),ellipsis:new m("...",y),backQuote:new m("`",S),dollarBraceL:new m("${",{beforeExpr:!0,startsExpr:!0}),eq:new m("=",{beforeExpr:!0,isAssign:!0}),assign:new m("_=",{beforeExpr:!0,isAssign:!0}),incDec:new m("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new m("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:b("||",1),logicalAND:b("&&",2),bitwiseOR:b("|",3),bitwiseXOR:b("^",4),bitwiseAND:b("&",5),equality:b("==/!=/===/!==",6),relational:b("/<=/>=",7),bitShift:b("<>/>>>",8),plusMin:new m("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:b("%",10),star:b("*",10),slash:b("/",10),starstar:new m("**",{beforeExpr:!0}),_break:_("break"),_case:_("case",y),_catch:_("catch"),_continue:_("continue"),_debugger:_("debugger"),_default:_("default",y),_do:_("do",{isLoop:!0,beforeExpr:!0}),_else:_("else",y),_finally:_("finally"),_for:_("for",{isLoop:!0}),_function:_("function",S),_if:_("if"),_return:_("return",y),_switch:_("switch"),_throw:_("throw",y),_try:_("try"),_var:_("var"),_const:_("const"),_while:_("while",{isLoop:!0}),_with:_("with"),_new:_("new",{beforeExpr:!0,startsExpr:!0}),_this:_("this",S),_super:_("super",S),_class:_("class",S),_extends:_("extends",y),_export:_("export"),_import:_("import",S),_null:_("null",S),_true:_("true",S),_false:_("false",S),_in:_("in",{beforeExpr:!0,binop:7}),_instanceof:_("instanceof",{beforeExpr:!0,binop:7}),_typeof:_("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:_("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:_("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},A=/\r\n?|\n|\u2028|\u2029/,v=new RegExp(A.source,"g");function E(e,t){return 10===e||13===e||!t&&(8232===e||8233===e)}var T=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,I=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,D=Object.prototype,P=D.hasOwnProperty,M=D.toString;function O(e,t){return P.call(e,t)}var R=Array.isArray||function(e){return"[object Array]"===M.call(e)};function F(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}var $=function(e,t){this.line=e,this.column=t};$.prototype.offset=function(e){return new $(this.line,this.column+e)};var x=function(e,t,n){this.start=t,this.end=n,null!==e.sourceFile&&(this.source=e.sourceFile)};function w(e,t){for(var n=1,r=0;;){v.lastIndex=r;var o=v.exec(e);if(!(o&&o.index=2015&&(t.ecmaVersion-=2009),null==t.allowReserved&&(t.allowReserved=t.ecmaVersion<5),R(t.onToken)){var r=t.onToken;t.onToken=function(e){return r.push(e)}}return R(t.onComment)&&(t.onComment=function(e,t){return function(n,r,o,i,a,s){var u={type:n?"Block":"Line",value:r,start:o,end:i};e.locations&&(u.loc=new x(this,a,s)),e.ranges&&(u.range=[o,i]),t.push(u)}}(t,t.onComment)),t}function G(e,t){return 2|(e?4:0)|(t?8:0)}var k=function(e,t,n){this.options=e=B(e),this.sourceFile=e.sourceFile,this.keywords=F(i[e.ecmaVersion>=6?6:"module"===e.sourceType?"5module":5]);var o="";if(!0!==e.allowReserved){for(var a=e.ecmaVersion;!(o=r[a]);a--);"module"===e.sourceType&&(o+=" await")}this.reservedWords=F(o);var s=(o?o+" ":"")+r.strict;this.reservedWordsStrict=F(s),this.reservedWordsStrictBind=F(s+" "+r.strictBind),this.input=String(t),this.containsEsc=!1,n?(this.pos=n,this.lineStart=this.input.lastIndexOf("\n",n-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(A).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=N.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===e.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports={},0===this.pos&&e.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null},j={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0}};k.prototype.parse=function(){var e=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(e)},j.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},j.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0},j.inAsync.get=function(){return(4&this.currentVarScope().flags)>0},j.allowSuper.get=function(){return(64&this.currentThisScope().flags)>0},j.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},j.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},k.prototype.inNonArrowFunction=function(){return(2&this.currentThisScope().flags)>0},k.extend=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var n=this,r=0;r-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var n=t?e.parenthesizedAssign:e.parenthesizedBind;n>-1&&this.raiseRecoverable(n,"Parenthesized pattern")}},U.checkExpressionErrors=function(e,t){if(!e)return!1;var n=e.shorthandAssign,r=e.doubleProto;if(!t)return n>=0||r>=0;n>=0&&this.raise(n,"Shorthand property assignments are valid only in destructuring patterns"),r>=0&&this.raiseRecoverable(r,"Redefinition of __proto__ property")},U.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos=6&&this.unexpected(),this.parseFunctionStatement(i,!1,!e);case N._class:return e&&this.unexpected(),this.parseClass(i,!0);case N._if:return this.parseIfStatement(i);case N._return:return this.parseReturnStatement(i);case N._switch:return this.parseSwitchStatement(i);case N._throw:return this.parseThrowStatement(i);case N._try:return this.parseTryStatement(i);case N._const:case N._var:return r=r||this.value,e&&"var"!==r&&this.unexpected(),this.parseVarStatement(i,r);case N._while:return this.parseWhileStatement(i);case N._with:return this.parseWithStatement(i);case N.braceL:return this.parseBlock(!0,i);case N.semi:return this.parseEmptyStatement(i);case N._export:case N._import:if(this.options.ecmaVersion>10&&o===N._import){I.lastIndex=this.pos;var a=I.exec(this.input),s=this.pos+a[0].length;if(40===this.input.charCodeAt(s))return this.parseExpressionStatement(i,this.parseExpression())}return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),o===N._import?this.parseImport(i):this.parseExport(i,n);default:if(this.isAsyncFunction())return e&&this.unexpected(),this.next(),this.parseFunctionStatement(i,!0,!e);var u=this.value,d=this.parseExpression();return o===N.name&&"Identifier"===d.type&&this.eat(N.colon)?this.parseLabeledStatement(i,u,d,e):this.parseExpressionStatement(i,d)}},W.parseBreakContinueStatement=function(e,t){var n="break"===t;this.next(),this.eat(N.semi)||this.insertSemicolon()?e.label=null:this.type!==N.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var r=0;r=6?this.eat(N.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},W.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(z),this.enterScope(0),this.expect(N.parenL),this.type===N.semi)return t>-1&&this.unexpected(t),this.parseFor(e,null);var n=this.isLet();if(this.type===N._var||this.type===N._const||n){var r=this.startNode(),o=n?"let":this.value;return this.next(),this.parseVar(r,!0,o),this.finishNode(r,"VariableDeclaration"),(this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&1===r.declarations.length?(this.options.ecmaVersion>=9&&(this.type===N._in?t>-1&&this.unexpected(t):e.await=t>-1),this.parseForIn(e,r)):(t>-1&&this.unexpected(t),this.parseFor(e,r))}var i=new H,a=this.parseExpression(!0,i);return this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.options.ecmaVersion>=9&&(this.type===N._in?t>-1&&this.unexpected(t):e.await=t>-1),this.toAssignable(a,!1,i),this.checkLVal(a),this.parseForIn(e,a)):(this.checkExpressionErrors(i,!0),t>-1&&this.unexpected(t),this.parseFor(e,a))},W.parseFunctionStatement=function(e,t,n){return this.next(),this.parseFunction(e,J|(n?0:q),!1,t)},W.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(N._else)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")},W.parseReturnStatement=function(e){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(N.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},W.parseSwitchStatement=function(e){var t;this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(N.braceL),this.labels.push(K),this.enterScope(0);for(var n=!1;this.type!==N.braceR;)if(this.type===N._case||this.type===N._default){var r=this.type===N._case;t&&this.finishNode(t,"SwitchCase"),e.cases.push(t=this.startNode()),t.consequent=[],this.next(),r?t.test=this.parseExpression():(n&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),n=!0,t.test=null),this.expect(N.colon)}else t||this.unexpected(),t.consequent.push(this.parseStatement(null));return this.exitScope(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},W.parseThrowStatement=function(e){return this.next(),A.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")};var Y=[];W.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===N._catch){var t=this.startNode();if(this.next(),this.eat(N.parenL)){t.param=this.parseBindingAtom();var n="Identifier"===t.param.type;this.enterScope(n?32:0),this.checkLVal(t.param,n?4:2),this.expect(N.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),t.param=null,this.enterScope(0);t.body=this.parseBlock(!1),this.exitScope(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(N._finally)?this.parseBlock():null,e.handler||e.finalizer||this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},W.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},W.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(z),e.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(e,"WhileStatement")},W.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement("with"),this.finishNode(e,"WithStatement")},W.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},W.parseLabeledStatement=function(e,t,n,r){for(var o=0,i=this.labels;o=0;s--){var u=this.labels[s];if(u.statementStart!==e.start)break;u.statementStart=this.start,u.kind=a}return this.labels.push({name:t,kind:a,statementStart:this.start}),e.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")},W.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},W.parseBlock=function(e,t){for(void 0===e&&(e=!0),void 0===t&&(t=this.startNode()),t.body=[],this.expect(N.braceL),e&&this.enterScope(0);!this.eat(N.braceR);){var n=this.parseStatement(null);t.body.push(n)}return e&&this.exitScope(),this.finishNode(t,"BlockStatement")},W.parseFor=function(e,t){return e.init=t,this.expect(N.semi),e.test=this.type===N.semi?null:this.parseExpression(),this.expect(N.semi),e.update=this.type===N.parenR?null:this.parseExpression(),this.expect(N.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,"ForStatement")},W.parseForIn=function(e,t){var n=this.type===N._in;return this.next(),"VariableDeclaration"===t.type&&null!=t.declarations[0].init&&(!n||this.options.ecmaVersion<8||this.strict||"var"!==t.kind||"Identifier"!==t.declarations[0].id.type)?this.raise(t.start,(n?"for-in":"for-of")+" loop variable declaration may not have an initializer"):"AssignmentPattern"===t.type&&this.raise(t.start,"Invalid left-hand side in for-loop"),e.left=t,e.right=n?this.parseExpression():this.parseMaybeAssign(),this.expect(N.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,n?"ForInStatement":"ForOfStatement")},W.parseVar=function(e,t,n){for(e.declarations=[],e.kind=n;;){var r=this.startNode();if(this.parseVarId(r,n),this.eat(N.eq)?r.init=this.parseMaybeAssign(t):"const"!==n||this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"===r.id.type||t&&(this.type===N._in||this.isContextual("of"))?r.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),e.declarations.push(this.finishNode(r,"VariableDeclarator")),!this.eat(N.comma))break}return e},W.parseVarId=function(e,t){e.id=this.parseBindingAtom(),this.checkLVal(e.id,"var"===t?1:2,!1)};var J=1,q=2;W.parseFunction=function(e,t,n,r){this.initFunction(e),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!r)&&(this.type===N.star&&t&q&&this.unexpected(),e.generator=this.eat(N.star)),this.options.ecmaVersion>=8&&(e.async=!!r),t&J&&(e.id=4&t&&this.type!==N.name?null:this.parseIdent(),!e.id||t&q||this.checkLVal(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?1:2:3));var o=this.yieldPos,i=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(G(e.async,e.generator)),t&J||(e.id=this.type===N.name?this.parseIdent():null),this.parseFunctionParams(e),this.parseFunctionBody(e,n,!1),this.yieldPos=o,this.awaitPos=i,this.awaitIdentPos=a,this.finishNode(e,t&J?"FunctionDeclaration":"FunctionExpression")},W.parseFunctionParams=function(e){this.expect(N.parenL),e.params=this.parseBindingList(N.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},W.parseClass=function(e,t){this.next();var n=this.strict;this.strict=!0,this.parseClassId(e,t),this.parseClassSuper(e);var r=this.startNode(),o=!1;for(r.body=[],this.expect(N.braceL);!this.eat(N.braceR);){var i=this.parseClassElement(null!==e.superClass);i&&(r.body.push(i),"MethodDefinition"===i.type&&"constructor"===i.kind&&(o&&this.raise(i.start,"Duplicate constructor in the same class"),o=!0))}return e.body=this.finishNode(r,"ClassBody"),this.strict=n,this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},W.parseClassElement=function(e){var t=this;if(this.eat(N.semi))return null;var n=this.startNode(),r=function(e,r){void 0===r&&(r=!1);var o=t.start,i=t.startLoc;return!!t.eatContextual(e)&&(!(t.type===N.parenL||r&&t.canInsertSemicolon())||(n.key&&t.unexpected(),n.computed=!1,n.key=t.startNodeAt(o,i),n.key.name=e,t.finishNode(n.key,"Identifier"),!1))};n.kind="method",n.static=r("static");var o=this.eat(N.star),i=!1;o||(this.options.ecmaVersion>=8&&r("async",!0)?(i=!0,o=this.options.ecmaVersion>=9&&this.eat(N.star)):r("get")?n.kind="get":r("set")&&(n.kind="set")),n.key||this.parsePropertyName(n);var a=n.key,s=!1;return n.computed||n.static||!("Identifier"===a.type&&"constructor"===a.name||"Literal"===a.type&&"constructor"===a.value)?n.static&&"Identifier"===a.type&&"prototype"===a.name&&this.raise(a.start,"Classes may not have a static property named prototype"):("method"!==n.kind&&this.raise(a.start,"Constructor can't have get/set modifier"),o&&this.raise(a.start,"Constructor can't be a generator"),i&&this.raise(a.start,"Constructor can't be an async method"),n.kind="constructor",s=e),this.parseClassMethod(n,o,i,s),"get"===n.kind&&0!==n.value.params.length&&this.raiseRecoverable(n.value.start,"getter should have no params"),"set"===n.kind&&1!==n.value.params.length&&this.raiseRecoverable(n.value.start,"setter should have exactly one param"),"set"===n.kind&&"RestElement"===n.value.params[0].type&&this.raiseRecoverable(n.value.params[0].start,"Setter cannot use rest params"),n},W.parseClassMethod=function(e,t,n,r){return e.value=this.parseMethod(t,n,r),this.finishNode(e,"MethodDefinition")},W.parseClassId=function(e,t){this.type===N.name?(e.id=this.parseIdent(),t&&this.checkLVal(e.id,2,!1)):(!0===t&&this.unexpected(),e.id=null)},W.parseClassSuper=function(e){e.superClass=this.eat(N._extends)?this.parseExprSubscripts():null},W.parseExport=function(e,t){if(this.next(),this.eat(N.star))return this.expectContextual("from"),this.type!==N.string&&this.unexpected(),e.source=this.parseExprAtom(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(N._default)){var n;if(this.checkExport(t,"default",this.lastTokStart),this.type===N._function||(n=this.isAsyncFunction())){var r=this.startNode();this.next(),n&&this.next(),e.declaration=this.parseFunction(r,4|J,!1,n)}else if(this.type===N._class){var o=this.startNode();e.declaration=this.parseClass(o,"nullableID")}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(null),"VariableDeclaration"===e.declaration.type?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id.name,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))this.type!==N.string&&this.unexpected(),e.source=this.parseExprAtom();else{for(var i=0,a=e.specifiers;i=6&&e)switch(e.type){case"Identifier":this.inAsync&&"await"===e.name&&this.raise(e.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern",n&&this.checkPatternErrors(n,!0);for(var r=0,o=e.properties;r=8&&!i&&"async"===a.name&&!this.canInsertSemicolon()&&this.eat(N._function))return this.parseFunction(this.startNodeAt(r,o),0,!1,!0);if(n&&!this.canInsertSemicolon()){if(this.eat(N.arrow))return this.parseArrowExpression(this.startNodeAt(r,o),[a],!1);if(this.options.ecmaVersion>=8&&"async"===a.name&&this.type===N.name&&!i)return a=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(N.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(r,o),[a],!0)}return a;case N.regexp:var s=this.value;return(t=this.parseLiteral(s.value)).regex={pattern:s.pattern,flags:s.flags},t;case N.num:case N.string:return this.parseLiteral(this.value);case N._null:case N._true:case N._false:return(t=this.startNode()).value=this.type===N._null?null:this.type===N._true,t.raw=this.type.keyword,this.next(),this.finishNode(t,"Literal");case N.parenL:var u=this.start,d=this.parseParenAndDistinguishExpression(n);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(d)&&(e.parenthesizedAssign=u),e.parenthesizedBind<0&&(e.parenthesizedBind=u)),d;case N.bracketL:return t=this.startNode(),this.next(),t.elements=this.parseExprList(N.bracketR,!0,!0,e),this.finishNode(t,"ArrayExpression");case N.braceL:return this.parseObj(!1,e);case N._function:return t=this.startNode(),this.next(),this.parseFunction(t,0);case N._class:return this.parseClass(this.startNode(),!1);case N._new:return this.parseNew();case N.backQuote:return this.parseTemplate();case N._import:return this.options.ecmaVersion>=11?this.parseExprImport():this.unexpected();default:this.unexpected()}},X.parseExprImport=function(){var e=this.startNode();switch(this.next(),this.type){case N.parenL:return this.parseDynamicImport(e);default:this.unexpected()}},X.parseDynamicImport=function(e){if(this.next(),e.source=this.parseMaybeAssign(),!this.eat(N.parenR)){var t=this.start;this.eat(N.comma)&&this.eat(N.parenR)?this.raiseRecoverable(t,"Trailing comma is not allowed in import()"):this.unexpected(t)}return this.finishNode(e,"ImportExpression")},X.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.input.slice(this.start,this.end),110===t.raw.charCodeAt(t.raw.length-1)&&(t.bigint=t.raw.slice(0,-1)),this.next(),this.finishNode(t,"Literal")},X.parseParenExpression=function(){this.expect(N.parenL);var e=this.parseExpression();return this.expect(N.parenR),e},X.parseParenAndDistinguishExpression=function(e){var t,n=this.start,r=this.startLoc,o=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var i,a=this.start,s=this.startLoc,u=[],d=!0,l=!1,c=new H,p=this.yieldPos,g=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==N.parenR;){if(d?d=!1:this.expect(N.comma),o&&this.afterTrailingComma(N.parenR,!0)){l=!0;break}if(this.type===N.ellipsis){i=this.start,u.push(this.parseParenItem(this.parseRestBinding())),this.type===N.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}u.push(this.parseMaybeAssign(!1,c,this.parseParenItem))}var h=this.start,f=this.startLoc;if(this.expect(N.parenR),e&&!this.canInsertSemicolon()&&this.eat(N.arrow))return this.checkPatternErrors(c,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=p,this.awaitPos=g,this.parseParenArrowList(n,r,u);u.length&&!l||this.unexpected(this.lastTokStart),i&&this.unexpected(i),this.checkExpressionErrors(c,!0),this.yieldPos=p||this.yieldPos,this.awaitPos=g||this.awaitPos,u.length>1?((t=this.startNodeAt(a,s)).expressions=u,this.finishNodeAt(t,"SequenceExpression",h,f)):t=u[0]}else t=this.parseParenExpression();if(this.options.preserveParens){var m=this.startNodeAt(n,r);return m.expression=t,this.finishNode(m,"ParenthesizedExpression")}return t},X.parseParenItem=function(e){return e},X.parseParenArrowList=function(e,t,n){return this.parseArrowExpression(this.startNodeAt(e,t),n)};var Q=[];X.parseNew=function(){var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(N.dot)){e.meta=t;var n=this.containsEsc;return e.property=this.parseIdent(!0),("target"!==e.property.name||n)&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is new.target"),this.inNonArrowFunction()||this.raiseRecoverable(e.start,"new.target can only be used in functions"),this.finishNode(e,"MetaProperty")}var r=this.start,o=this.startLoc,i=this.type===N._import;return e.callee=this.parseSubscripts(this.parseExprAtom(),r,o,!0),i&&"ImportExpression"===e.callee.type&&this.raise(r,"Cannot use new with import()"),this.eat(N.parenL)?e.arguments=this.parseExprList(N.parenR,this.options.ecmaVersion>=8,!1):e.arguments=Q,this.finishNode(e,"NewExpression")},X.parseTemplateElement=function(e){var t=e.isTagged,n=this.startNode();return this.type===N.invalidTemplate?(t||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),n.value={raw:this.value,cooked:null}):n.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),n.tail=this.type===N.backQuote,this.finishNode(n,"TemplateElement")},X.parseTemplate=function(e){void 0===e&&(e={});var t=e.isTagged;void 0===t&&(t=!1);var n=this.startNode();this.next(),n.expressions=[];var r=this.parseTemplateElement({isTagged:t});for(n.quasis=[r];!r.tail;)this.type===N.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(N.dollarBraceL),n.expressions.push(this.parseExpression()),this.expect(N.braceR),n.quasis.push(r=this.parseTemplateElement({isTagged:t}));return this.next(),this.finishNode(n,"TemplateLiteral")},X.isAsyncProp=function(e){return!e.computed&&"Identifier"===e.key.type&&"async"===e.key.name&&(this.type===N.name||this.type===N.num||this.type===N.string||this.type===N.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===N.star)&&!A.test(this.input.slice(this.lastTokEnd,this.start))},X.parseObj=function(e,t){var n=this.startNode(),r=!0,o={};for(n.properties=[],this.next();!this.eat(N.braceR);){if(r)r=!1;else if(this.expect(N.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(N.braceR))break;var i=this.parseProperty(e,t);e||this.checkPropClash(i,o,t),n.properties.push(i)}return this.finishNode(n,e?"ObjectPattern":"ObjectExpression")},X.parseProperty=function(e,t){var n,r,o,i,a=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(N.ellipsis))return e?(a.argument=this.parseIdent(!1),this.type===N.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(a,"RestElement")):(this.type===N.parenL&&t&&(t.parenthesizedAssign<0&&(t.parenthesizedAssign=this.start),t.parenthesizedBind<0&&(t.parenthesizedBind=this.start)),a.argument=this.parseMaybeAssign(!1,t),this.type===N.comma&&t&&t.trailingComma<0&&(t.trailingComma=this.start),this.finishNode(a,"SpreadElement"));this.options.ecmaVersion>=6&&(a.method=!1,a.shorthand=!1,(e||t)&&(o=this.start,i=this.startLoc),e||(n=this.eat(N.star)));var s=this.containsEsc;return this.parsePropertyName(a),!e&&!s&&this.options.ecmaVersion>=8&&!n&&this.isAsyncProp(a)?(r=!0,n=this.options.ecmaVersion>=9&&this.eat(N.star),this.parsePropertyName(a,t)):r=!1,this.parsePropertyValue(a,e,n,r,o,i,t,s),this.finishNode(a,"Property")},X.parsePropertyValue=function(e,t,n,r,o,i,a,s){if((n||r)&&this.type===N.colon&&this.unexpected(),this.eat(N.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,a),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===N.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(n,r);else if(t||s||!(this.options.ecmaVersion>=5)||e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||this.type===N.comma||this.type===N.braceR)this.options.ecmaVersion>=6&&!e.computed&&"Identifier"===e.key.type?((n||r)&&this.unexpected(),this.checkUnreserved(e.key),"await"!==e.key.name||this.awaitIdentPos||(this.awaitIdentPos=o),e.kind="init",t?e.value=this.parseMaybeDefault(o,i,e.key):this.type===N.eq&&a?(a.shorthandAssign<0&&(a.shorthandAssign=this.start),e.value=this.parseMaybeDefault(o,i,e.key)):e.value=e.key,e.shorthand=!0):this.unexpected();else{(n||r)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var u="get"===e.kind?0:1;if(e.value.params.length!==u){var d=e.value.start;"get"===e.kind?this.raiseRecoverable(d,"getter should have no params"):this.raiseRecoverable(d,"setter should have exactly one param")}else"set"===e.kind&&"RestElement"===e.value.params[0].type&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}},X.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(N.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(N.bracketR),e.key;e.computed=!1}return e.key=this.type===N.num||this.type===N.string?this.parseExprAtom():this.parseIdent("never"!==this.options.allowReserved)},X.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},X.parseMethod=function(e,t,n){var r=this.startNode(),o=this.yieldPos,i=this.awaitPos,a=this.awaitIdentPos;return this.initFunction(r),this.options.ecmaVersion>=6&&(r.generator=e),this.options.ecmaVersion>=8&&(r.async=!!t),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|G(t,r.generator)|(n?128:0)),this.expect(N.parenL),r.params=this.parseBindingList(N.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(r,!1,!0),this.yieldPos=o,this.awaitPos=i,this.awaitIdentPos=a,this.finishNode(r,"FunctionExpression")},X.parseArrowExpression=function(e,t,n){var r=this.yieldPos,o=this.awaitPos,i=this.awaitIdentPos;return this.enterScope(16|G(n,!1)),this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!n),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0,!1),this.yieldPos=r,this.awaitPos=o,this.awaitIdentPos=i,this.finishNode(e,"ArrowFunctionExpression")},X.parseFunctionBody=function(e,t,n){var r=t&&this.type!==N.braceL,o=this.strict,i=!1;if(r)e.body=this.parseMaybeAssign(),e.expression=!0,this.checkParams(e,!1);else{var a=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);o&&!a||(i=this.strictDirective(this.end))&&a&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list");var s=this.labels;this.labels=[],i&&(this.strict=!0),this.checkParams(e,!o&&!i&&!t&&!n&&this.isSimpleParamList(e.params)),e.body=this.parseBlock(!1),e.expression=!1,this.adaptDirectivePrologue(e.body.body),this.labels=s}this.exitScope(),this.strict&&e.id&&this.checkLVal(e.id,5),this.strict=o},X.isSimpleParamList=function(e){for(var t=0,n=e;t-1||o.functions.indexOf(e)>-1||o.var.indexOf(e)>-1,o.lexical.push(e),this.inModule&&1&o.flags&&delete this.undefinedExports[e]}else if(4===t){this.currentScope().lexical.push(e)}else if(3===t){var i=this.currentScope();r=this.treatFunctionsAsVar?i.lexical.indexOf(e)>-1:i.lexical.indexOf(e)>-1||i.var.indexOf(e)>-1,i.functions.push(e)}else for(var a=this.scopeStack.length-1;a>=0;--a){var s=this.scopeStack[a];if(s.lexical.indexOf(e)>-1&&!(32&s.flags&&s.lexical[0]===e)||!this.treatFunctionsAsVarInScope(s)&&s.functions.indexOf(e)>-1){r=!0;break}if(s.var.push(e),this.inModule&&1&s.flags&&delete this.undefinedExports[e],3&s.flags)break}r&&this.raiseRecoverable(n,"Identifier '"+e+"' has already been declared")},te.checkLocalExport=function(e){-1===this.scopeStack[0].lexical.indexOf(e.name)&&-1===this.scopeStack[0].var.indexOf(e.name)&&(this.undefinedExports[e.name]=e)},te.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},te.currentVarScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(3&t.flags)return t}},te.currentThisScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(3&t.flags&&!(16&t.flags))return t}};var re=function(e,t,n){this.type="",this.start=t,this.end=0,e.options.locations&&(this.loc=new x(e,n)),e.options.directSourceFile&&(this.sourceFile=e.options.directSourceFile),e.options.ranges&&(this.range=[t,0])},oe=k.prototype;function ie(e,t,n,r){return e.type=t,e.end=n,this.options.locations&&(e.loc.end=r),this.options.ranges&&(e.range[1]=n),e}oe.startNode=function(){return new re(this,this.start,this.startLoc)},oe.startNodeAt=function(e,t){return new re(this,e,t)},oe.finishNode=function(e,t){return ie.call(this,e,t,this.lastTokEnd,this.lastTokEndLoc)},oe.finishNodeAt=function(e,t,n,r){return ie.call(this,e,t,n,r)};var ae=function(e,t,n,r,o){this.token=e,this.isExpr=!!t,this.preserveSpace=!!n,this.override=r,this.generator=!!o},se={b_stat:new ae("{",!1),b_expr:new ae("{",!0),b_tmpl:new ae("${",!1),p_stat:new ae("(",!1),p_expr:new ae("(",!0),q_tmpl:new ae("`",!0,!0,(function(e){return e.tryReadTemplateToken()})),f_stat:new ae("function",!1),f_expr:new ae("function",!0),f_expr_gen:new ae("function",!0,!1,null,!0),f_gen:new ae("function",!1,!1,null,!0)},ue=k.prototype;ue.initialContext=function(){return[se.b_stat]},ue.braceIsBlock=function(e){var t=this.curContext();return t===se.f_expr||t===se.f_stat||(e!==N.colon||t!==se.b_stat&&t!==se.b_expr?e===N._return||e===N.name&&this.exprAllowed?A.test(this.input.slice(this.lastTokEnd,this.start)):e===N._else||e===N.semi||e===N.eof||e===N.parenR||e===N.arrow||(e===N.braceL?t===se.b_stat:e!==N._var&&e!==N._const&&e!==N.name&&!this.exprAllowed):!t.isExpr)},ue.inGeneratorContext=function(){for(var e=this.context.length-1;e>=1;e--){var t=this.context[e];if("function"===t.token)return t.generator}return!1},ue.updateContext=function(e){var t,n=this.type;n.keyword&&e===N.dot?this.exprAllowed=!1:(t=n.updateContext)?t.call(this,e):this.exprAllowed=n.beforeExpr},N.parenR.updateContext=N.braceR.updateContext=function(){if(1!==this.context.length){var e=this.context.pop();e===se.b_stat&&"function"===this.curContext().token&&(e=this.context.pop()),this.exprAllowed=!e.isExpr}else this.exprAllowed=!0},N.braceL.updateContext=function(e){this.context.push(this.braceIsBlock(e)?se.b_stat:se.b_expr),this.exprAllowed=!0},N.dollarBraceL.updateContext=function(){this.context.push(se.b_tmpl),this.exprAllowed=!0},N.parenL.updateContext=function(e){var t=e===N._if||e===N._for||e===N._with||e===N._while;this.context.push(t?se.p_stat:se.p_expr),this.exprAllowed=!0},N.incDec.updateContext=function(){},N._function.updateContext=N._class.updateContext=function(e){!e.beforeExpr||e===N.semi||e===N._else||e===N._return&&A.test(this.input.slice(this.lastTokEnd,this.start))||(e===N.colon||e===N.braceL)&&this.curContext()===se.b_stat?this.context.push(se.f_stat):this.context.push(se.f_expr),this.exprAllowed=!1},N.backQuote.updateContext=function(){this.curContext()===se.q_tmpl?this.context.pop():this.context.push(se.q_tmpl),this.exprAllowed=!1},N.star.updateContext=function(e){if(e===N._function){var t=this.context.length-1;this.context[t]===se.f_expr?this.context[t]=se.f_expr_gen:this.context[t]=se.f_gen}this.exprAllowed=!0},N.name.updateContext=function(e){var t=!1;this.options.ecmaVersion>=6&&e!==N.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(t=!0),this.exprAllowed=t};var de="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",le=de+" Extended_Pictographic",ce={9:de,10:le,11:"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS Extended_Pictographic"},pe="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",ge="Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",he=ge+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",fe={9:ge,10:he,11:"Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho"},me={};function be(e){var t=me[e]={binary:F(ce[e]+" "+pe),nonBinary:{General_Category:F(pe),Script:F(fe[e])}};t.nonBinary.Script_Extensions=t.nonBinary.Script,t.nonBinary.gc=t.nonBinary.General_Category,t.nonBinary.sc=t.nonBinary.Script,t.nonBinary.scx=t.nonBinary.Script_Extensions}be(9),be(10),be(11);var ye=k.prototype,Se=function(e){this.parser=e,this.validFlags="gim"+(e.options.ecmaVersion>=6?"uy":"")+(e.options.ecmaVersion>=9?"s":""),this.unicodeProperties=me[e.options.ecmaVersion>=11?11:e.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function Ce(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function _e(e){return 36===e||e>=40&&e<=43||46===e||63===e||e>=91&&e<=94||e>=123&&e<=125}function Ne(e){return e>=65&&e<=90||e>=97&&e<=122}function Ae(e){return Ne(e)||95===e}function ve(e){return Ae(e)||Ee(e)}function Ee(e){return e>=48&&e<=57}function Te(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Ie(e){return e>=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e-48}function De(e){return e>=48&&e<=55}Se.prototype.reset=function(e,t,n){var r=-1!==n.indexOf("u");this.start=0|e,this.source=t+"",this.flags=n,this.switchU=r&&this.parser.options.ecmaVersion>=6,this.switchN=r&&this.parser.options.ecmaVersion>=9},Se.prototype.raise=function(e){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+e)},Se.prototype.at=function(e){var t=this.source,n=t.length;if(e>=n)return-1;var r=t.charCodeAt(e);return!this.switchU||r<=55295||r>=57344||e+1>=n?r:(r<<10)+t.charCodeAt(e+1)-56613888},Se.prototype.nextIndex=function(e){var t=this.source,n=t.length;if(e>=n)return n;var r=t.charCodeAt(e);return!this.switchU||r<=55295||r>=57344||e+1>=n?e+1:e+2},Se.prototype.current=function(){return this.at(this.pos)},Se.prototype.lookahead=function(){return this.at(this.nextIndex(this.pos))},Se.prototype.advance=function(){this.pos=this.nextIndex(this.pos)},Se.prototype.eat=function(e){return this.current()===e&&(this.advance(),!0)},ye.validateRegExpFlags=function(e){for(var t=e.validFlags,n=e.flags,r=0;r-1&&this.raise(e.start,"Duplicate regular expression flag")}},ye.validateRegExpPattern=function(e){this.regexp_pattern(e),!e.switchN&&this.options.ecmaVersion>=9&&e.groupNames.length>0&&(e.switchN=!0,this.regexp_pattern(e))},ye.regexp_pattern=function(e){e.pos=0,e.lastIntValue=0,e.lastStringValue="",e.lastAssertionIsQuantifiable=!1,e.numCapturingParens=0,e.maxBackReference=0,e.groupNames.length=0,e.backReferenceNames.length=0,this.regexp_disjunction(e),e.pos!==e.source.length&&(e.eat(41)&&e.raise("Unmatched ')'"),(e.eat(93)||e.eat(125))&&e.raise("Lone quantifier brackets")),e.maxBackReference>e.numCapturingParens&&e.raise("Invalid escape");for(var t=0,n=e.backReferenceNames;t=9&&(n=e.eat(60)),e.eat(61)||e.eat(33))return this.regexp_disjunction(e),e.eat(41)||e.raise("Unterminated group"),e.lastAssertionIsQuantifiable=!n,!0}return e.pos=t,!1},ye.regexp_eatQuantifier=function(e,t){return void 0===t&&(t=!1),!!this.regexp_eatQuantifierPrefix(e,t)&&(e.eat(63),!0)},ye.regexp_eatQuantifierPrefix=function(e,t){return e.eat(42)||e.eat(43)||e.eat(63)||this.regexp_eatBracedQuantifier(e,t)},ye.regexp_eatBracedQuantifier=function(e,t){var n=e.pos;if(e.eat(123)){var r=0,o=-1;if(this.regexp_eatDecimalDigits(e)&&(r=e.lastIntValue,e.eat(44)&&this.regexp_eatDecimalDigits(e)&&(o=e.lastIntValue),e.eat(125)))return-1!==o&&o=9?this.regexp_groupSpecifier(e):63===e.current()&&e.raise("Invalid group"),this.regexp_disjunction(e),e.eat(41))return e.numCapturingParens+=1,!0;e.raise("Unterminated group")}return!1},ye.regexp_eatExtendedAtom=function(e){return e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)||this.regexp_eatInvalidBracedQuantifier(e)||this.regexp_eatExtendedPatternCharacter(e)},ye.regexp_eatInvalidBracedQuantifier=function(e){return this.regexp_eatBracedQuantifier(e,!0)&&e.raise("Nothing to repeat"),!1},ye.regexp_eatSyntaxCharacter=function(e){var t=e.current();return!!_e(t)&&(e.lastIntValue=t,e.advance(),!0)},ye.regexp_eatPatternCharacters=function(e){for(var t=e.pos,n=0;-1!==(n=e.current())&&!_e(n);)e.advance();return e.pos!==t},ye.regexp_eatExtendedPatternCharacter=function(e){var t=e.current();return!(-1===t||36===t||t>=40&&t<=43||46===t||63===t||91===t||94===t||124===t)&&(e.advance(),!0)},ye.regexp_groupSpecifier=function(e){if(e.eat(63)){if(this.regexp_eatGroupName(e))return-1!==e.groupNames.indexOf(e.lastStringValue)&&e.raise("Duplicate capture group name"),void e.groupNames.push(e.lastStringValue);e.raise("Invalid group")}},ye.regexp_eatGroupName=function(e){if(e.lastStringValue="",e.eat(60)){if(this.regexp_eatRegExpIdentifierName(e)&&e.eat(62))return!0;e.raise("Invalid capture group name")}return!1},ye.regexp_eatRegExpIdentifierName=function(e){if(e.lastStringValue="",this.regexp_eatRegExpIdentifierStart(e)){for(e.lastStringValue+=Ce(e.lastIntValue);this.regexp_eatRegExpIdentifierPart(e);)e.lastStringValue+=Ce(e.lastIntValue);return!0}return!1},ye.regexp_eatRegExpIdentifierStart=function(e){var t=e.pos,n=e.current();return e.advance(),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e)&&(n=e.lastIntValue),function(e){return h(e,!0)||36===e||95===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},ye.regexp_eatRegExpIdentifierPart=function(e){var t=e.pos,n=e.current();return e.advance(),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e)&&(n=e.lastIntValue),function(e){return f(e,!0)||36===e||95===e||8204===e||8205===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},ye.regexp_eatAtomEscape=function(e){return!!(this.regexp_eatBackReference(e)||this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)||e.switchN&&this.regexp_eatKGroupName(e))||(e.switchU&&(99===e.current()&&e.raise("Invalid unicode escape"),e.raise("Invalid escape")),!1)},ye.regexp_eatBackReference=function(e){var t=e.pos;if(this.regexp_eatDecimalEscape(e)){var n=e.lastIntValue;if(e.switchU)return n>e.maxBackReference&&(e.maxBackReference=n),!0;if(n<=e.numCapturingParens)return!0;e.pos=t}return!1},ye.regexp_eatKGroupName=function(e){if(e.eat(107)){if(this.regexp_eatGroupName(e))return e.backReferenceNames.push(e.lastStringValue),!0;e.raise("Invalid named reference")}return!1},ye.regexp_eatCharacterEscape=function(e){return this.regexp_eatControlEscape(e)||this.regexp_eatCControlLetter(e)||this.regexp_eatZero(e)||this.regexp_eatHexEscapeSequence(e)||this.regexp_eatRegExpUnicodeEscapeSequence(e)||!e.switchU&&this.regexp_eatLegacyOctalEscapeSequence(e)||this.regexp_eatIdentityEscape(e)},ye.regexp_eatCControlLetter=function(e){var t=e.pos;if(e.eat(99)){if(this.regexp_eatControlLetter(e))return!0;e.pos=t}return!1},ye.regexp_eatZero=function(e){return 48===e.current()&&!Ee(e.lookahead())&&(e.lastIntValue=0,e.advance(),!0)},ye.regexp_eatControlEscape=function(e){var t=e.current();return 116===t?(e.lastIntValue=9,e.advance(),!0):110===t?(e.lastIntValue=10,e.advance(),!0):118===t?(e.lastIntValue=11,e.advance(),!0):102===t?(e.lastIntValue=12,e.advance(),!0):114===t&&(e.lastIntValue=13,e.advance(),!0)},ye.regexp_eatControlLetter=function(e){var t=e.current();return!!Ne(t)&&(e.lastIntValue=t%32,e.advance(),!0)},ye.regexp_eatRegExpUnicodeEscapeSequence=function(e){var t,n=e.pos;if(e.eat(117)){if(this.regexp_eatFixedHexDigits(e,4)){var r=e.lastIntValue;if(e.switchU&&r>=55296&&r<=56319){var o=e.pos;if(e.eat(92)&&e.eat(117)&&this.regexp_eatFixedHexDigits(e,4)){var i=e.lastIntValue;if(i>=56320&&i<=57343)return e.lastIntValue=1024*(r-55296)+(i-56320)+65536,!0}e.pos=o,e.lastIntValue=r}return!0}if(e.switchU&&e.eat(123)&&this.regexp_eatHexDigits(e)&&e.eat(125)&&((t=e.lastIntValue)>=0&&t<=1114111))return!0;e.switchU&&e.raise("Invalid unicode escape"),e.pos=n}return!1},ye.regexp_eatIdentityEscape=function(e){if(e.switchU)return!!this.regexp_eatSyntaxCharacter(e)||!!e.eat(47)&&(e.lastIntValue=47,!0);var t=e.current();return!(99===t||e.switchN&&107===t)&&(e.lastIntValue=t,e.advance(),!0)},ye.regexp_eatDecimalEscape=function(e){e.lastIntValue=0;var t=e.current();if(t>=49&&t<=57){do{e.lastIntValue=10*e.lastIntValue+(t-48),e.advance()}while((t=e.current())>=48&&t<=57);return!0}return!1},ye.regexp_eatCharacterClassEscape=function(e){var t=e.current();if(function(e){return 100===e||68===e||115===e||83===e||119===e||87===e}(t))return e.lastIntValue=-1,e.advance(),!0;if(e.switchU&&this.options.ecmaVersion>=9&&(80===t||112===t)){if(e.lastIntValue=-1,e.advance(),e.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(e)&&e.eat(125))return!0;e.raise("Invalid property name")}return!1},ye.regexp_eatUnicodePropertyValueExpression=function(e){var t=e.pos;if(this.regexp_eatUnicodePropertyName(e)&&e.eat(61)){var n=e.lastStringValue;if(this.regexp_eatUnicodePropertyValue(e)){var r=e.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(e,n,r),!0}}if(e.pos=t,this.regexp_eatLoneUnicodePropertyNameOrValue(e)){var o=e.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(e,o),!0}return!1},ye.regexp_validateUnicodePropertyNameAndValue=function(e,t,n){O(e.unicodeProperties.nonBinary,t)||e.raise("Invalid property name"),e.unicodeProperties.nonBinary[t].test(n)||e.raise("Invalid property value")},ye.regexp_validateUnicodePropertyNameOrValue=function(e,t){e.unicodeProperties.binary.test(t)||e.raise("Invalid property name")},ye.regexp_eatUnicodePropertyName=function(e){var t=0;for(e.lastStringValue="";Ae(t=e.current());)e.lastStringValue+=Ce(t),e.advance();return""!==e.lastStringValue},ye.regexp_eatUnicodePropertyValue=function(e){var t=0;for(e.lastStringValue="";ve(t=e.current());)e.lastStringValue+=Ce(t),e.advance();return""!==e.lastStringValue},ye.regexp_eatLoneUnicodePropertyNameOrValue=function(e){return this.regexp_eatUnicodePropertyValue(e)},ye.regexp_eatCharacterClass=function(e){if(e.eat(91)){if(e.eat(94),this.regexp_classRanges(e),e.eat(93))return!0;e.raise("Unterminated character class")}return!1},ye.regexp_classRanges=function(e){for(;this.regexp_eatClassAtom(e);){var t=e.lastIntValue;if(e.eat(45)&&this.regexp_eatClassAtom(e)){var n=e.lastIntValue;!e.switchU||-1!==t&&-1!==n||e.raise("Invalid character class"),-1!==t&&-1!==n&&t>n&&e.raise("Range out of order in character class")}}},ye.regexp_eatClassAtom=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatClassEscape(e))return!0;if(e.switchU){var n=e.current();(99===n||De(n))&&e.raise("Invalid class escape"),e.raise("Invalid escape")}e.pos=t}var r=e.current();return 93!==r&&(e.lastIntValue=r,e.advance(),!0)},ye.regexp_eatClassEscape=function(e){var t=e.pos;if(e.eat(98))return e.lastIntValue=8,!0;if(e.switchU&&e.eat(45))return e.lastIntValue=45,!0;if(!e.switchU&&e.eat(99)){if(this.regexp_eatClassControlLetter(e))return!0;e.pos=t}return this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)},ye.regexp_eatClassControlLetter=function(e){var t=e.current();return!(!Ee(t)&&95!==t)&&(e.lastIntValue=t%32,e.advance(),!0)},ye.regexp_eatHexEscapeSequence=function(e){var t=e.pos;if(e.eat(120)){if(this.regexp_eatFixedHexDigits(e,2))return!0;e.switchU&&e.raise("Invalid escape"),e.pos=t}return!1},ye.regexp_eatDecimalDigits=function(e){var t=e.pos,n=0;for(e.lastIntValue=0;Ee(n=e.current());)e.lastIntValue=10*e.lastIntValue+(n-48),e.advance();return e.pos!==t},ye.regexp_eatHexDigits=function(e){var t=e.pos,n=0;for(e.lastIntValue=0;Te(n=e.current());)e.lastIntValue=16*e.lastIntValue+Ie(n),e.advance();return e.pos!==t},ye.regexp_eatLegacyOctalEscapeSequence=function(e){if(this.regexp_eatOctalDigit(e)){var t=e.lastIntValue;if(this.regexp_eatOctalDigit(e)){var n=e.lastIntValue;t<=3&&this.regexp_eatOctalDigit(e)?e.lastIntValue=64*t+8*n+e.lastIntValue:e.lastIntValue=8*t+n}else e.lastIntValue=t;return!0}return!1},ye.regexp_eatOctalDigit=function(e){var t=e.current();return De(t)?(e.lastIntValue=t-48,e.advance(),!0):(e.lastIntValue=0,!1)},ye.regexp_eatFixedHexDigits=function(e,t){var n=e.pos;e.lastIntValue=0;for(var r=0;r>10),56320+(1023&e)))}Me.next=function(){this.options.onToken&&this.options.onToken(new Pe(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},Me.getToken=function(){return this.next(),new Pe(this)},"undefined"!=typeof Symbol&&(Me[Symbol.iterator]=function(){var e=this;return{next:function(){var t=e.getToken();return{done:t.type===N.eof,value:t}}}}),Me.curContext=function(){return this.context[this.context.length-1]},Me.nextToken=function(){var e=this.curContext();return e&&e.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(N.eof):e.override?e.override(this):void this.readToken(this.fullCharCodeAtPos())},Me.readToken=function(e){return h(e,this.options.ecmaVersion>=6)||92===e?this.readWord():this.getTokenFromCode(e)},Me.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);return e<=55295||e>=57344?e:(e<<10)+this.input.charCodeAt(this.pos+1)-56613888},Me.skipBlockComment=function(){var e,t=this.options.onComment&&this.curPosition(),n=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(v.lastIndex=n;(e=v.exec(this.input))&&e.index8&&e<14||e>=5760&&T.test(String.fromCharCode(e))))break e;++this.pos}}},Me.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var n=this.type;this.type=e,this.value=t,this.updateContext(n)},Me.readToken_dot=function(){var e=this.input.charCodeAt(this.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===e&&46===t?(this.pos+=3,this.finishToken(N.ellipsis)):(++this.pos,this.finishToken(N.dot))},Me.readToken_slash=function(){var e=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===e?this.finishOp(N.assign,2):this.finishOp(N.slash,1)},Me.readToken_mult_modulo_exp=function(e){var t=this.input.charCodeAt(this.pos+1),n=1,r=42===e?N.star:N.modulo;return this.options.ecmaVersion>=7&&42===e&&42===t&&(++n,r=N.starstar,t=this.input.charCodeAt(this.pos+2)),61===t?this.finishOp(N.assign,n+1):this.finishOp(r,n)},Me.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?this.finishOp(124===e?N.logicalOR:N.logicalAND,2):61===t?this.finishOp(N.assign,2):this.finishOp(124===e?N.bitwiseOR:N.bitwiseAND,1)},Me.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(N.assign,2):this.finishOp(N.bitwiseXOR,1)},Me.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?45!==t||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!A.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(N.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===t?this.finishOp(N.assign,2):this.finishOp(N.plusMin,1)},Me.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.pos+1),n=1;return t===e?(n=62===e&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+n)?this.finishOp(N.assign,n+1):this.finishOp(N.bitShift,n)):33!==t||60!==e||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===t&&(n=2),this.finishOp(N.relational,n)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},Me.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.pos+1);return 61===t?this.finishOp(N.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===e&&62===t&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(N.arrow)):this.finishOp(61===e?N.eq:N.prefix,1)},Me.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(N.parenL);case 41:return++this.pos,this.finishToken(N.parenR);case 59:return++this.pos,this.finishToken(N.semi);case 44:return++this.pos,this.finishToken(N.comma);case 91:return++this.pos,this.finishToken(N.bracketL);case 93:return++this.pos,this.finishToken(N.bracketR);case 123:return++this.pos,this.finishToken(N.braceL);case 125:return++this.pos,this.finishToken(N.braceR);case 58:return++this.pos,this.finishToken(N.colon);case 63:return++this.pos,this.finishToken(N.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(N.backQuote);case 48:var t=this.input.charCodeAt(this.pos+1);if(120===t||88===t)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===t||79===t)return this.readRadixNumber(8);if(98===t||66===t)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 126:return this.finishOp(N.prefix,1)}this.raise(this.pos,"Unexpected character '"+Oe(e)+"'")},Me.finishOp=function(e,t){var n=this.input.slice(this.pos,this.pos+t);return this.pos+=t,this.finishToken(e,n)},Me.readRegexp=function(){for(var e,t,n=this.pos;;){this.pos>=this.input.length&&this.raise(n,"Unterminated regular expression");var r=this.input.charAt(this.pos);if(A.test(r)&&this.raise(n,"Unterminated regular expression"),e)e=!1;else{if("["===r)t=!0;else if("]"===r&&t)t=!1;else if("/"===r&&!t)break;e="\\"===r}++this.pos}var o=this.input.slice(n,this.pos);++this.pos;var i=this.pos,a=this.readWord1();this.containsEsc&&this.unexpected(i);var s=this.regexpState||(this.regexpState=new Se(this));s.reset(n,o,a),this.validateRegExpFlags(s),this.validateRegExpPattern(s);var u=null;try{u=new RegExp(o,a)}catch(e){}return this.finishToken(N.regexp,{pattern:o,flags:a,value:u})},Me.readInt=function(e,t){for(var n=this.pos,r=0,o=0,i=null==t?1/0:t;o=97?a-97+10:a>=65?a-65+10:a>=48&&a<=57?a-48:1/0)>=e)break;++this.pos,r=r*e+s}return this.pos===n||null!=t&&this.pos-n!==t?null:r},Me.readRadixNumber=function(e){var t=this.pos;this.pos+=2;var n=this.readInt(e);return null==n&&this.raise(this.start+2,"Expected number in radix "+e),this.options.ecmaVersion>=11&&110===this.input.charCodeAt(this.pos)?(n="undefined"!=typeof BigInt?BigInt(this.input.slice(t,this.pos)):null,++this.pos):h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(N.num,n)},Me.readNumber=function(e){var t=this.pos;e||null!==this.readInt(10)||this.raise(t,"Invalid number");var n=this.pos-t>=2&&48===this.input.charCodeAt(t);n&&this.strict&&this.raise(t,"Invalid number"),n&&/[89]/.test(this.input.slice(t,this.pos))&&(n=!1);var r=this.input.charCodeAt(this.pos);if(!n&&!e&&this.options.ecmaVersion>=11&&110===r){var o=this.input.slice(t,this.pos),i="undefined"!=typeof BigInt?BigInt(o):null;return++this.pos,h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(N.num,i)}46!==r||n||(++this.pos,this.readInt(10),r=this.input.charCodeAt(this.pos)),69!==r&&101!==r||n||(43!==(r=this.input.charCodeAt(++this.pos))&&45!==r||++this.pos,null===this.readInt(10)&&this.raise(t,"Invalid number")),h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var a=this.input.slice(t,this.pos),s=n?parseInt(a,8):parseFloat(a);return this.finishToken(N.num,s)},Me.readCodePoint=function(){var e;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var t=++this.pos;e=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,e>1114111&&this.invalidStringToken(t,"Code point out of bounds")}else e=this.readHexChar(4);return e},Me.readString=function(e){for(var t="",n=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===e)break;92===r?(t+=this.input.slice(n,this.pos),t+=this.readEscapedChar(!1),n=this.pos):(E(r,this.options.ecmaVersion>=10)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return t+=this.input.slice(n,this.pos++),this.finishToken(N.string,t)};var Re={};Me.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(e){if(e!==Re)throw e;this.readInvalidTemplateToken()}this.inTemplateElement=!1},Me.invalidStringToken=function(e,t){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Re;this.raise(e,t)},Me.readTmplToken=function(){for(var e="",t=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var n=this.input.charCodeAt(this.pos);if(96===n||36===n&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==N.template&&this.type!==N.invalidTemplate?(e+=this.input.slice(t,this.pos),this.finishToken(N.template,e)):36===n?(this.pos+=2,this.finishToken(N.dollarBraceL)):(++this.pos,this.finishToken(N.backQuote));if(92===n)e+=this.input.slice(t,this.pos),e+=this.readEscapedChar(!0),t=this.pos;else if(E(n)){switch(e+=this.input.slice(t,this.pos),++this.pos,n){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(n)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},Me.readInvalidTemplateToken=function(){for(;this.pos=48&&t<=55){var n=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],r=parseInt(n,8);return r>255&&(n=n.slice(0,-1),r=parseInt(n,8)),this.pos+=n.length-1,t=this.input.charCodeAt(this.pos),"0"===n&&56!==t&&57!==t||!this.strict&&!e||this.invalidStringToken(this.pos-1-n.length,e?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(r)}return E(t)?"":String.fromCharCode(t)}},Me.readHexChar=function(e){var t=this.pos,n=this.readInt(16,e);return null===n&&this.invalidStringToken(t,"Bad character escape sequence"),n},Me.readWord1=function(){this.containsEsc=!1;for(var e="",t=!0,n=this.pos,r=this.options.ecmaVersion>=6;this.pos=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.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};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.AbstractIdentifierNamesGenerator=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){this.groups=[],this.always=!1,this.each=!1,this.context=void 0,this.type=e.type,this.target=e.target,this.propertyName=e.propertyName,this.constraints=e.constraints,this.constraintCls=e.constraintCls,this.validationTypeOptions=e.validationTypeOptions,e.validationOptions&&(this.message=e.validationOptions.message,this.groups=e.validationOptions.groups,this.always=e.validationOptions.always,this.each=e.validationOptions.each,this.context=e.validationOptions.context)};t.ValidationMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),e=Date.parse(e),isNaN(e)?null:new Date(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){(0,r.default)(e),(t=(0,o.default)(t,a)).allow_trailing_dot&&"."===e[e.length-1]&&(e=e.substring(0,e.length-1));for(var n=e.split("."),i=0;i63)return!1;if(t.require_tld){var s=n.pop();if(!n.length||!/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(s))return!1;if(/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(s))return!1}for(var u,d=0;d=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(21),d=n(52),l=n(3);let c=class extends d.AbstractControlFlowReplacer{constructor(e,t,n){super(e,t,n)}getControlFlowStorageCallNode(e,t,n,r){const o=this.controlFlowCustomNodeFactory(u.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);o.initialize(e,t,n,r);const i=o.getNode()[0];if(!i||!l.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IControlFlowCustomNode)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],c),t.ExpressionWithOperatorControlFlowReplacer=c},function(e,t){!function(){"use strict";var t,n,r,o,i,a;function s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(Math.floor((e-65536)/1024)+55296)+String.fromCharCode((e-65536)%1024+56320)}for(n={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},r=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],o=new Array(128),a=0;a<128;++a)o[a]=a>=97&&a<=122||a>=65&&a<=90||36===a||95===a;for(i=new Array(128),a=0;a<128;++a)i[a]=a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||36===a||95===a;e.exports={isDecimalDigit:function(e){return 48<=e&&e<=57},isHexDigit:function(e){return 48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70},isOctalDigit:function(e){return e>=48&&e<=55},isWhiteSpace:function(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&r.indexOf(e)>=0},isLineTerminator:function(e){return 10===e||13===e||8232===e||8233===e},isIdentifierStartES5:function(e){return e<128?o[e]:n.NonAsciiIdentifierStart.test(s(e))},isIdentifierPartES5:function(e){return e<128?i[e]:n.NonAsciiIdentifierPart.test(s(e))},isIdentifierStartES6:function(e){return e<128?o[e]:t.NonAsciiIdentifierStart.test(s(e))},isIdentifierPartES6:function(e){return e<128?i[e]:t.NonAsciiIdentifierPart.test(s(e))}}}()},function(e,t,n){var r=n(72),o=n(35),i=n(73).ArraySet,a=n(144).MappingList;function s(e){e||(e={}),this._file=o.getArg(e,"file",null),this._sourceRoot=o.getArg(e,"sourceRoot",null),this._skipValidation=o.getArg(e,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new a,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,n=new s({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var r={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(r.source=e.source,null!=t&&(r.source=o.relative(t,r.source)),r.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(r.name=e.name)),n.addMapping(r)})),e.sources.forEach((function(r){var i=r;null!==t&&(i=o.relative(t,r)),n._sources.has(i)||n._sources.add(i);var a=e.sourceContentFor(r);null!=a&&n.setSourceContent(r,a)})),n},s.prototype.addMapping=function(e){var t=o.getArg(e,"generated"),n=o.getArg(e,"original",null),r=o.getArg(e,"source",null),i=o.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,n,r,i),null!=r&&(r=String(r),this._sources.has(r)||this._sources.add(r)),null!=i&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:r,name:i})},s.prototype.setSourceContent=function(e,t){var n=e;null!=this._sourceRoot&&(n=o.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[o.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[o.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,n){var r=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');r=e.file}var a=this._sourceRoot;null!=a&&(r=o.relative(a,r));var s=new i,u=new i;this._mappings.unsortedForEach((function(t){if(t.source===r&&null!=t.originalLine){var i=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=i.source&&(t.source=i.source,null!=n&&(t.source=o.join(n,t.source)),null!=a&&(t.source=o.relative(a,t.source)),t.originalLine=i.line,t.originalColumn=i.column,null!=i.name&&(t.name=i.name))}var d=t.source;null==d||s.has(d)||s.add(d);var l=t.name;null==l||u.has(l)||u.add(l)}),this),this._sources=s,this._names=u,e.sources.forEach((function(t){var r=e.sourceContentFor(t);null!=r&&(null!=n&&(t=o.join(n,t)),null!=a&&(t=o.relative(a,t)),this.setSourceContent(t,r))}),this)},s.prototype._validateMapping=function(e,t,n,r){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:r}))},s.prototype._serializeMappings=function(){for(var e,t,n,i,a=0,s=1,u=0,d=0,l=0,c=0,p="",g=this._mappings.toArray(),h=0,f=g.length;h0){if(!o.compareByGeneratedPositionsInflated(t,g[h-1]))continue;e+=","}e+=r.encode(t.generatedColumn-a),a=t.generatedColumn,null!=t.source&&(i=this._sources.indexOf(t.source),e+=r.encode(i-c),c=i,e+=r.encode(t.originalLine-1-d),d=t.originalLine-1,e+=r.encode(t.originalColumn-u),u=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=r.encode(n-l),l=n)),p+=e}return p},s.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=o.relative(t,e));var n=o.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null}),this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.SourceMapGenerator=s},function(e,t,n){var r=n(143);t.encode=function(e){var t,n="",o=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&o,(o>>>=5)>0&&(t|=32),n+=r.encode(t)}while(o>0);return n},t.decode=function(e,t,n){var o,i,a,s,u=e.length,d=0,l=0;do{if(t>=u)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(i=r.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));o=!!(32&i),d+=(i&=31)<>1,1==(1&a)?-s:s),n.rest=t}},function(e,t,n){var r=n(35),o=Object.prototype.hasOwnProperty,i="undefined"!=typeof Map;function a(){this._array=[],this._set=i?new Map:Object.create(null)}a.fromArray=function(e,t){for(var n=new a,r=0,o=e.length;r=0)return t}else{var n=r.toSetString(e);if(o.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')},a.prototype.at=function(e){if(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},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(25),l=n(8),c=n(3),p=n(23);let g=r=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return c.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:c.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return c.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const n=e.length,o=[],i=[];for(let a=0;a!t.includes(n))}transformObjectExpressionNode(e,t){const n=e.properties,[r,o]=this.extractPropertiesToExpressionStatements(n,t),i=this.getHostStatement(e),a=this.getHostNodeWithStatements(e,i);return this.filterExtractedObjectExpressionProperties(e,o),d.NodeAppender.insertAfter(a,r,i),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const n=p.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,n),n}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=p.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};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.AbstractPropertiesExtractor=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},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=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&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},e.prototype.isNumber=function(e,t){if(void 0===t&&(t={}),"number"!=typeof e)return!1;if(e===1/0||e===-1/0)return t.allowInfinity;if(Number.isNaN(e))return t.allowNaN;if(t.maxDecimalPlaces){var n=0;if(e%1!=0&&(n=e.toString().split(".")[1].length),n>t.maxDecimalPlaces)return!1}return Number.isFinite(e)},e.prototype.isInt=function(e){return"number"==typeof e&&Number.isInteger(e)},e.prototype.isDivisibleBy=function(e,t){return"number"==typeof e&&"number"==typeof t&&this.validatorJs.isDivisibleBy(String(e),t)},e.prototype.isPositive=function(e){return"number"==typeof e&&e>0},e.prototype.isNegative=function(e){return"number"==typeof e&&e<0},e.prototype.min=function(e,t){return"number"==typeof e&&"number"==typeof t&&e>=t},e.prototype.max=function(e,t){return"number"==typeof e&&"number"==typeof t&&e<=t},e.prototype.minDate=function(e,t){return e instanceof Date&&e.getTime()>=t.getTime()},e.prototype.maxDate=function(e,t){return e instanceof Date&&e.getTime()<=t.getTime()},e.prototype.isBooleanString=function(e){return"string"==typeof e&&this.validatorJs.isBoolean(e)},e.prototype.isNumberString=function(e,t){return"string"==typeof e&&this.validatorJs.isNumeric(e,t)},e.prototype.contains=function(e,t){return"string"==typeof e&&this.validatorJs.contains(e,t)},e.prototype.notContains=function(e,t){return"string"==typeof e&&!this.validatorJs.contains(e,t)},e.prototype.isAlpha=function(e,t){return"string"==typeof e&&this.validatorJs.isAlpha(e,t)},e.prototype.isAlphanumeric=function(e,t){return"string"==typeof e&&this.validatorJs.isAlphanumeric(e,t)},e.prototype.isDecimal=function(e,t){return"string"==typeof e&&this.validatorJs.isDecimal(e,t)},e.prototype.isAscii=function(e){return"string"==typeof e&&this.validatorJs.isAscii(e)},e.prototype.isBase64=function(e){return"string"==typeof e&&this.validatorJs.isBase64(e)},e.prototype.isByteLength=function(e,t,n){return"string"==typeof e&&this.validatorJs.isByteLength(e,t,n)},e.prototype.isCreditCard=function(e){return"string"==typeof e&&this.validatorJs.isCreditCard(e)},e.prototype.isCurrency=function(e,t){return"string"==typeof e&&this.validatorJs.isCurrency(e,t)},e.prototype.isEmail=function(e,t){return"string"==typeof e&&this.validatorJs.isEmail(e,t)},e.prototype.isFQDN=function(e,t){return"string"==typeof e&&this.validatorJs.isFQDN(e,t)},e.prototype.isFullWidth=function(e){return"string"==typeof e&&this.validatorJs.isFullWidth(e)},e.prototype.isHalfWidth=function(e){return"string"==typeof e&&this.validatorJs.isHalfWidth(e)},e.prototype.isVariableWidth=function(e){return"string"==typeof e&&this.validatorJs.isVariableWidth(e)},e.prototype.isHexColor=function(e){return"string"==typeof e&&this.validatorJs.isHexColor(e)},e.prototype.isHexadecimal=function(e){return"string"==typeof e&&this.validatorJs.isHexadecimal(e)},e.prototype.isMACAddress=function(e){return"string"==typeof e&&this.validatorJs.isMACAddress(e)},e.prototype.isIP=function(e,t){return"string"==typeof e&&this.validatorJs.isIP(e,t)},e.prototype.isPort=function(e){return"string"==typeof e&&this.validatorJs.isPort(e)},e.prototype.isISBN=function(e,t){return"string"==typeof e&&this.validatorJs.isISBN(e,t)},e.prototype.isISIN=function(e){return"string"==typeof e&&this.validatorJs.isISIN(e)},e.prototype.isISO8601=function(e){return"string"==typeof e&&this.validatorJs.isISO8601(e)},e.prototype.isJSON=function(e){return"string"==typeof e&&this.validatorJs.isJSON(e)},e.prototype.isJWT=function(e){return"string"==typeof e&&this.validatorJs.isJWT(e)},e.prototype.isObject=function(e){return null!=e&&("object"==typeof e||"function"==typeof e)&&!Array.isArray(e)},e.prototype.isNotEmptyObject=function(e){return this.isObject(e)&&!this._isEmptyObject(e)},e.prototype.isLowercase=function(e){return"string"==typeof e&&this.validatorJs.isLowercase(e)},e.prototype.isMobilePhone=function(e,t){return"string"==typeof e&&this.validatorJs.isMobilePhone(e,t)},e.prototype.isPhoneNumber=function(e,t){try{var n=this.libPhoneNumber.phoneUtil.parseAndKeepRawInput(e,t);return this.libPhoneNumber.phoneUtil.isValidNumber(n)}catch(e){return!1}},e.prototype.isISO31661Alpha2=function(e){return"string"==typeof e&&this.validatorJs.isISO31661Alpha2(e)},e.prototype.isISO31661Alpha3=function(e){return"string"==typeof e&&this.validatorJs.isISO31661Alpha3(e)},e.prototype.isMongoId=function(e){return"string"==typeof e&&this.validatorJs.isMongoId(e)},e.prototype.isMultibyte=function(e){return"string"==typeof e&&this.validatorJs.isMultibyte(e)},e.prototype.isSurrogatePair=function(e){return"string"==typeof e&&this.validatorJs.isSurrogatePair(e)},e.prototype.isURL=function(e,t){return"string"==typeof e&&this.validatorJs.isURL(e,t)},e.prototype.isUUID=function(e,t){return"string"==typeof e&&this.validatorJs.isUUID(e,t)},e.prototype.isUppercase=function(e){return"string"==typeof e&&this.validatorJs.isUppercase(e)},e.prototype.length=function(e,t,n){return"string"==typeof e&&this.validatorJs.isLength(e,t,n)},e.prototype.minLength=function(e,t){return"string"==typeof e&&this.length(e,t)},e.prototype.maxLength=function(e,t){return"string"==typeof e&&this.length(e,0,t)},e.prototype.matches=function(e,t,n){return"string"==typeof e&&this.validatorJs.matches(e,t,n)},e.prototype.isMilitaryTime=function(e){return this.matches(e,/^([01]\d|2[0-3]):?([0-5]\d)$/)},e.prototype.isHash=function(e,t){return"string"==typeof e&&this.validatorJs.isHash(e,t)},e.prototype.isISSN=function(e,t){return"string"==typeof e&&this.validatorJs.isISSN(e,t)},e.prototype.arrayContains=function(e,t){return e instanceof Array&&t.every((function(t){return-1!==e.indexOf(t)}))},e.prototype.arrayNotContains=function(e,t){return e instanceof Array&&t.every((function(t){return-1===e.indexOf(t)}))},e.prototype.arrayNotEmpty=function(e){return e instanceof Array&&e.length>0},e.prototype.arrayMinSize=function(e,t){return e instanceof Array&&e.length>=t},e.prototype.arrayMaxSize=function(e,t){return e instanceof Array&&e.length<=t},e.prototype.arrayUnique=function(e){if(!(e instanceof Array))return!1;var t=e.filter((function(e,t,n){return n.indexOf(e)===t}));return e.length===t.length},e.prototype.isInstance=function(e,t){return t&&"function"==typeof t&&e instanceof t},e}();t.Validator=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.prototype.toString=function(e,t,n){var r=this;void 0===e&&(e=!1),void 0===t&&(t=!1),void 0===n&&(n="");var o=e?"":"",i=e?"":"",a=function(e){return" - property "+o+n+e+i+" has failed the following constraints: "+o+Object.keys(r.constraints).join(", ")+i+" \n"};if(t){var s=Number.isInteger(+this.property)?"["+this.property+"]":(n?".":"")+this.property;return this.constraints?a(s):this.children.map((function(t){return t.toString(e,!0,""+n+s)})).join("")}return"An instance of "+o+(this.target?this.target.constructor.name:"an object")+i+" has failed the validation:\n"+(this.constraints?a(this.property):"")+this.children.map((function(t){return t.toString(e,!0,r.property)})).join("")},e}();t.ValidationError=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),parseFloat(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";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){"object"===r(e)&&null!==e?e="function"==typeof e.toString?e.toString():"[object Object]":(null==e||isNaN(e)&&!e.length)&&(e="");return String(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){var n,r;(0,o.default)(e),"object"===i(t)?(n=t.min||0,r=t.max):(n=arguments[1],r=arguments[2]);var a=encodeURI(e).split(/%..|./).length-1;return a>=n&&(void 0===r||a<=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,t){(0,o.default)(e);var n=(t=t||{}).hasOwnProperty("allow_leading_zeroes")&&!t.allow_leading_zeroes?i:a,r=!t.hasOwnProperty("min")||e>=t.min,s=!t.hasOwnProperty("max")||e<=t.max,u=!t.hasOwnProperty("lt")||et.gt;return n.test(e)&&r&&s&&u&&d};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(?:[-+]?(?:0|[1-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),i.test(e)},t.fullWidth=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;t.fullWidth=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)},t.halfWidth=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;t.halfWidth=i},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=/^(0x|0h)?[0-9A-F]+$/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){(0,o.default)(e);var n=t?new RegExp("^[".concat(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+"),"g"):/^\s+/g;return e.replace(n,"")};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);var n=t?new RegExp("[".concat(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+$"),"g"):/\s+$/g;return e.replace(n,"")};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.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});var r=n(32),o=function(){function e(e,t,n){void 0===n&&(n=!1),this.target=e,this.name=t,this.async=n}return Object.defineProperty(e.prototype,"instance",{get:function(){return r.getFromContainer(this.target)},enumerable:!0,configurable:!0}),e}();t.ConstraintMetadata=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(41),o=n(27),i=n(42);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:r.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:o.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},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(3);let s=r=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return r.obfuscationEnableCommentRegExp.test(e.value)||r.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!a.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,n=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),n&&(this.obfuscationAllowedForNextNode=this.checkComments(n)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let n=this.obfuscationAllowedForCurrentNode;for(let o=0;o=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(4);let d=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,n]of this.storage)if(e===n)return t;return null}getLength(){return this.storage.size}getStorage(){return this.storage}getStorageId(){return this.storageId}has(e){return this.storage.has(e)}mergeWith(e,t=!1){this.storage=new Map([...this.storage,...e.getStorage()]),t&&(this.storageId=e.getStorageId())}set(e,t){this.storage.set(e,t)}};r([u.initializable(),o("design:type",String)],d.prototype,"storageId",void 0),r([u.initializable(),o("design:type",Map)],d.prototype,"storage",void 0),r([a.postConstruct(),o("design:type",Function),o("design:paramtypes",[]),o("design:returntype",void 0)],d.prototype,"initialize",null),d=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],d),t.MapStorage=d},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.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(348)),c=n(351),p=n(4);let g=r=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new c.Chance(this.getRawSeed())}getMathRandom(){return this.getRandomInteger(0,99999)/1e5}getRandomGenerator(){return this.randomGenerator}getRandomInteger(e,t){return this.getRandomGenerator().integer({min:e,max:t})}getRandomString(e,t=r.randomGeneratorPool){return this.getRandomGenerator().string({length:e,pool:t})}getInputSeed(){return this.options.seed.toString()}getRawSeed(){const e=this.getInputSeed();return`${e}`.split("|").length>1?e:`${e}|${l.default(this.sourceCode.getSourceCode())}`}};g.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",o([p.initializable(),i("design:type",Object)],g.prototype,"randomGenerator",void 0),o([u.postConstruct(),i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],g.prototype,"initialize",null),g=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.ISourceCode)),a(1,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],g),t.RandomGenerator=g},function(e,t){var n={utf8:{stringToBytes:function(e){return n.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(n.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],n=0;n{const t={};return((e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");const n=o?o.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>S(t.template,...e),Object.setPrototypeOf(t,p.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=l,t.template};function p(e){return c(e)}for(const[e,t]of Object.entries(r))d[e]={get(){const n=m(this,f(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};d.visible={get(){const e=m(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const g=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of g)d[e]={get(){const{level:t}=this;return function(...n){const o=f(r.color[u[t]][e](...n),r.color.close,this._styler);return m(this,o,this._isEmpty)}}};for(const e of g){d["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const o=f(r.bgColor[u[t]][e](...n),r.bgColor.close,this._styler);return m(this,o,this._isEmpty)}}}}const h=Object.defineProperties(()=>{},{...d,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),f=(e,t,n)=>{let r,o;return void 0===n?(r=e,o=t):(r=n.openAll+e,o=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:o,parent:n}},m=(e,t,n)=>{const r=(...e)=>b(r,1===e.length?""+e[0]:e.join(" "));return r.__proto__=h,r._generator=e,r._styler=t,r._isEmpty=n,r},b=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:o}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=a(t,n.close,n.open),n=n.parent;const i=t.indexOf("\n");return-1!==i&&(t=s(t,o,r,i)),r+t+o};let y;const S=(e,...t)=>{const[r]=t;if(!Array.isArray(r))return t.join(" ");const o=t.slice(1),i=[r.raw[0]];for(let e=1;e1&&(o-=1)),[360*o,100*i,100*d]},i.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const o=i.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[o,100*a,100*r]},i.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.min(1-t,1-n,1-r);return[100*((1-t-o)/(1-o)||0),100*((1-n-o)/(1-o)||0),100*((1-r-o)/(1-o)||0),100*o]},i.rgb.keyword=function(e){const t=o[e];if(t)return t;let n,i=1/0;for(const t of Object.keys(r)){const o=r[t],u=(s=o,((a=e)[0]-s[0])**2+(a[1]-s[1])**2+(a[2]-s[2])**2);u.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,[100*(.4124*t+.3576*n+.1805*r),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},i.rgb.lab=function(e){const t=i.rgb.xyz(e);let n=t[0],r=t[1],o=t[2];return n/=95.047,r/=100,o/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,o=o>.008856?o**(1/3):7.787*o+16/116,[116*r-16,500*(n-r),200*(r-o)]},i.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let o,i,a;if(0===n)return a=255*r,[a,a,a];o=r<.5?r*(1+n):r+n-r*n;const s=2*r-o,u=[0,0,0];for(let e=0;e<3;e++)i=t+1/3*-(e-1),i<0&&i++,i>1&&i--,a=6*i<1?s+6*(o-s)*i:2*i<1?o:3*i<2?s+(o-s)*(2/3-i)*6:s,u[e]=255*a;return u},i.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,o=n;const i=Math.max(r,.01);return r*=2,n*=r<=1?r:2-r,o*=i<=1?i:2-i,[t,100*(0===r?2*o/(i+o):2*n/(r+n)),100*((r+n)/2)]},i.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const o=Math.floor(t)%6,i=t-Math.floor(t),a=255*r*(1-n),s=255*r*(1-n*i),u=255*r*(1-n*(1-i));switch(r*=255,o){case 0:return[r,u,a];case 1:return[s,r,a];case 2:return[a,r,u];case 3:return[a,s,r];case 4:return[u,a,r];case 5:return[r,a,s]}},i.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,o=Math.max(r,.01);let i,a;a=(2-n)*r;const s=(2-n)*o;return i=n*o,i/=s<=1?s:2-s,i=i||0,a/=2,[t,100*i,100*a]},i.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const o=n+r;let i;o>1&&(n/=o,r/=o);const a=Math.floor(6*t),s=1-r;i=6*t-a,0!=(1&a)&&(i=1-i);const u=n+i*(s-n);let d,l,c;switch(a){default:case 6:case 0:d=s,l=u,c=n;break;case 1:d=u,l=s,c=n;break;case 2:d=n,l=s,c=u;break;case 3:d=n,l=u,c=s;break;case 4:d=u,l=n,c=s;break;case 5:d=s,l=n,c=u}return[255*d,255*l,255*c]},i.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,o=e[3]/100;return[255*(1-Math.min(1,t*(1-o)+o)),255*(1-Math.min(1,n*(1-o)+o)),255*(1-Math.min(1,r*(1-o)+o))]},i.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let o,i,a;return o=3.2406*t+-1.5372*n+-.4986*r,i=-.9689*t+1.8758*n+.0415*r,a=.0557*t+-.204*n+1.057*r,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,a=a>.0031308?1.055*a**(1/2.4)-.055:12.92*a,o=Math.min(Math.max(0,o),1),i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),[255*o,255*i,255*a]},i.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];return t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,[116*n-16,500*(t-n),200*(n-r)]},i.lab.xyz=function(e){let t,n,r;n=(e[0]+16)/116,t=e[1]/500+n,r=n-e[2]/200;const o=n**3,i=t**3,a=r**3;return n=o>.008856?o:(n-16/116)/7.787,t=i>.008856?i:(t-16/116)/7.787,r=a>.008856?a:(r-16/116)/7.787,t*=95.047,n*=100,r*=108.883,[t,n,r]},i.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let o;return o=360*Math.atan2(r,n)/2/Math.PI,o<0&&(o+=360),[t,Math.sqrt(n*n+r*r),o]},i.lch.lab=function(e){const t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},i.rgb.ansi16=function(e,t=null){const[n,r,o]=e;let a=null===t?i.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),0===a)return 30;let s=30+(Math.round(o/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return 2===a&&(s+=60),s},i.hsv.ansi16=function(e){return i.rgb.ansi16(i.hsv.rgb(e),e[2])},i.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},i.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;return e-=16,[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},i.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},i.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];3===t[0].length&&(n=n.split("").map(e=>e+e).join(""));const r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},i.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.max(Math.max(t,n),r),i=Math.min(Math.min(t,n),r),a=o-i;let s,u;return s=a<1?i/(1-a):0,u=a<=0?0:o===t?(n-r)/a%6:o===n?2+(r-t)/a:4+(t-n)/a,u/=6,u%=1,[360*u,100*a,100*s]},i.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let o=0;return r<1&&(o=(n-.5*r)/(1-r)),[e[0],100*r,100*o]},i.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let o=0;return r<1&&(o=(n-r)/(1-r)),[e[0],100*r,100*o]},i.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];const o=[0,0,0],i=t%1*6,a=i%1,s=1-a;let u=0;switch(Math.floor(i)){case 0:o[0]=1,o[1]=a,o[2]=0;break;case 1:o[0]=s,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=a;break;case 3:o[0]=0,o[1]=s,o[2]=1;break;case 4:o[0]=a,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=s}return u=(1-n)*r,[255*(n*o[0]+u),255*(n*o[1]+u),255*(n*o[2]+u)]},i.hcg.hsv=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);let r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},i.hcg.hsl=function(e){const t=e[1]/100,n=e[2]/100*(1-t)+.5*t;let r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},i.hcg.hwb=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},i.hwb.hcg=function(e){const t=e[1]/100,n=1-e[2]/100,r=n-t;let o=0;return r<1&&(o=(n-r)/(1-r)),[e[0],100*r,100*o]},i.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},i.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},i.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},i.gray.hsl=function(e){return[0,0,e[0]]},i.gray.hsv=i.gray.hsl,i.gray.hwb=function(e){return[0,100,e[0]]},i.gray.cmyk=function(e){return[0,0,0,e[0]]},i.gray.lab=function(e){return[e[0],0,0]},i.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},i.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(33);e.exports=r.JavaScriptObfuscator},function(e,t,n){(function(e,t){ +!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=101)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11);t.METADATA_KEY=r;var o=n(104);t.Container=o.Container;var i=n(16);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(120);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(121);t.injectable=s.injectable;var u=n(122);t.tagged=u.tagged;var d=n(123);t.named=d.named;var l=n(63);t.inject=l.inject,t.LazyServiceIdentifer=l.LazyServiceIdentifer;var c=n(124);t.optional=c.optional;var p=n(125);t.unmanaged=p.unmanaged;var g=n(126);t.multiInject=g.multiInject;var h=n(127);t.targetName=h.targetName;var f=n(128);t.postConstruct=f.postConstruct;var m=n(61);t.MetadataReader=m.MetadataReader;var b=n(22);t.id=b.id;var y=n(20);t.decorate=y.decorate;var S=n(66);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var C=n(34);t.getServiceIdentifierAsString=C.getServiceIdentifierAsString;var _=n(129);t.multiBindToService=_.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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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(17);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}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 isCatchClauseNode(e){return e.type===r.NodeType.CatchClause}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 isReplaceableIdentifierNode(e,t){return o.isIdentifierNode(e)&&!o.parentNodeIsPropertyNode(e,t)&&!o.parentNodeIsMemberExpressionNode(e,t)&&!o.parentNodeIsMethodDefinitionNode(e,t)&&!o.isLabelIdentifierNode(e,t)}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";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(53)),i=r(n(74)),a=r(n(10)),s=n(3),u=n(13);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:o.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=i.parse(e,{sourceType:"script"});return a.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),u.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 s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return a.replace(e,{enter:d.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(d.cloneRecursive):"object"==typeof r?d.cloneRecursive(r):r,t[n]=o}),t}}t.NodeUtils=d},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";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(53)),i=n(17);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 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){"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(179),l=n(180);let c=r=class{constructor(e,t,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.randomGenerator=t,this.options=n}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}};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.IRandomGenerator)),a(2,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object])],c),t.AbstractCustomNode=c},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[_=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],[_,m],"Property",new l(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[_,m],null,new l(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,_,null,new l(o,_)))}}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 C.root;return C.root},t.version=n(132).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";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;tn=>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 _.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(C.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;l=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}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3);class o{static append(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,n,r=0){const i=e.length?o.getOptimalBlockScope(e,r):t;o.prepend(i,n)}static getOptimalBlockScope(e,t,n=1/0){const r=e[t];if(n<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return n>1&&r.stackTrace.length?o.getOptimalBlockScope(r.stackTrace,0,--n):r.callee}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}),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(39);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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";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(102);const r=n(1),o=n(19);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.20.4"},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)}getRandomStackTraceIndex(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});class r{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||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(242),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,n){var r,o,i;!function(a){if("object"==typeof e.exports){var s=a(n(187),t);void 0!==s&&(e.exports=s)}else o=[n,t],void 0===(i="function"==typeof(r=a)?r.apply(t,o):r)||(e.exports=i)}((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(e){return Object.freeze.apply(Object,arguments)};"function"!=typeof Object.freeze&&(n=function(e){return e}),"function"!=typeof Object.assign&&Object.defineProperty(Object,"assign",{value:function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var n=Object(e),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);let u=class{constructor(e){this.options=e}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object])],u),t.AbstractObfuscatingReplacer=u},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,4)||e(t,6);if("4"===n){if(!i.test(t))return!1;var r=t.split(".").sort((function(e,t){return e-t}));return r[3]<=255}if("6"===n){var s=t.split(":"),u=!1,d=e(s[s.length-1],4),l=d?7:8;if(s.length>l)return!1;if("::"===t)return!0;"::"===t.substr(0,2)?(s.shift(),s.shift(),u=!0):"::"===t.substr(t.length-2)&&(s.pop(),s.pop(),u=!0);for(var c=0;c0&&c=1:s.length===l}return!1};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/,a=/^[0-9A-F]{1,4}$/i;e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.commaDecimal=t.dotDecimal=t.arabicLocales=t.englishLocales=t.decimal=t.alphanumeric=t.alpha=void 0;var r={"en-US":/^[A-Z]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ω]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,"fa-IR":/^['آابپتثجچهخدذرزژسشصضطظعغفقکگلمنوهی']+$/i};t.alpha=r;var o={"en-US":/^[0-9A-Z]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÇÉÊÍÕÓÔÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,"fa-IR":/^['0-9آابپتثجچهخدذرزژسشصضطظعغفقکگلمنوهی۱۲۳۴۵۶۷۸۹۰']+$/i};t.alphanumeric=o;var i={"en-US":".",ar:"٫"};t.decimal=i;var a=["AU","GB","HK","IN","NZ","ZA","ZM"];t.englishLocales=a;for(var s,u=0;u=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});let o=class{};o=r([n(0).injectable()],o),t.AbstractCalleeDataExtractor=o},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);let d=r=class{constructor(e,t,n){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=n}static getStorageKeysByIdForCurrentStorage(e,t){let n;return n=e.has(t)?e.get(t):new Map,n}insertCustomNodeToControlFlowStorage(e,t,n,o){const i=t.getStorageId(),a=r.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(n);if(this.randomGenerator.getMathRandom(){const n=this.randomGenerator.getRandomString(e);return t.getStorage().has(n)?u(e):n},d=u(5);return a.set(n,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};d=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])],d),t.AbstractControlFlowReplacer=d},function(e,t,n){(function(e){!function(){"use strict";var r,o,i,a,s,u,d,l,c,p,g,h,f,m,b,y,S,C,_,N,A,v,E,T,I,D;function P(e){return K.Statement.hasOwnProperty(e.type)}s=n(10),u=n(139),r=s.Syntax,i={"||":(o={Sequence:0,Yield:1,Assignment:1,Conditional:2,ArrowFunction:2,LogicalOR:3,LogicalAND:4,BitwiseOR:5,BitwiseXOR:6,BitwiseAND:7,Equality:8,Relational:9,BitwiseSHIFT:10,Additive:11,Multiplicative:12,Await:13,Unary:13,Postfix:14,Call:15,New:16,TaggedTemplate:17,Member:18,Primary:19}).LogicalOR,"&&":o.LogicalAND,"|":o.BitwiseOR,"^":o.BitwiseXOR,"&":o.BitwiseAND,"==":o.Equality,"!=":o.Equality,"===":o.Equality,"!==":o.Equality,is:o.Equality,isnt:o.Equality,"<":o.Relational,">":o.Relational,"<=":o.Relational,">=":o.Relational,in:o.Relational,instanceof:o.Relational,"<<":o.BitwiseSHIFT,">>":o.BitwiseSHIFT,">>>":o.BitwiseSHIFT,"+":o.Additive,"-":o.Additive,"*":o.Multiplicative,"%":o.Multiplicative,"/":o.Multiplicative};function M(e,t){var n="";for(t|=0;t>0;t>>>=1,e+=e)1&t&&(n+=e);return n}function O(e){var t=e.length;return t&&u.code.isLineTerminator(e.charCodeAt(t-1))}function R(e,t){var n;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function F(e,t){var n,r;function o(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof RegExp)}for(n in t)t.hasOwnProperty(n)&&(o(r=t[n])?o(e[n])?F(e[n],r):e[n]=F({},r):e[n]=r);return e}function $(e,t){return 8232==(-2&e)?(t?"u":"\\u")+(8232===e?"2028":"2029"):10===e||13===e?(t?"":"\\")+(10===e?"n":"r"):String.fromCharCode(e)}function x(e,t){var n;return 8===e?"\\b":12===e?"\\f":9===e?"\\t":(n=e.toString(16).toUpperCase(),c||e>255?"\\u"+"0000".slice(n.length)+n:0!==e||u.code.isDecimalDigit(t)?11===e?"\\x0B":"\\x"+"00".slice(n.length)+n:"\\0")}function w(e){if(92===e)return"\\\\";if(10===e)return"\\n";if(13===e)return"\\r";if(8232===e)return"\\u2028";if(8233===e)return"\\u2029";throw new Error("Incorrectly classified character")}function L(e,t){if(!v)return Array.isArray(e)?function e(t){var n,r,o,i="";for(n=0,r=t.length;na&&(s=a)}for(void 0!==t?(l=d,"*"===n[1][s]&&(t+=" "),d=t):(1&s&&--s,l=d),r=1,o=n.length;r0){if(a=t,T){for(t=[],g=(i=e.leadingComments[0]).extendedRange,h=i.range,(b=((m=E.substring(g[0],h[0])).match(/\n/g)||[]).length)>0?(t.push(M("\n",b)),t.push(k(U(i)))):(t.push(m),t.push(U(i))),f=h,n=1,o=e.leadingComments.length;n0?(t.push(M("\n",b)),t.push(k(U(i)))):(t.push(m),t.push(U(i)));else for(s=!O(L(t).toString()),c=M(" ",function(e){var t;for(t=e.length-1;t>=0&&!u.code.isLineTerminator(e.charCodeAt(t));--t);return e.length-1-t}(L([d,t,l]).toString())),n=0,o=e.trailingComments.length;n")),e.expression?(t.push(b),"{"===(n=this.generateExpression(e.body,o.Assignment,7)).toString().charAt(0)&&(n=["(",n,")"]),t.push(n)):t.push(this.maybeBlock(e.body,9)),t},K.prototype.generateIterationForStatement=function(e,t,n){var i=["for"+(t.await?B()+"await":"")+b+"("],a=this;return j((function(){t.left.type===r.VariableDeclaration?j((function(){i.push(t.left.kind+B()),i.push(a.generateStatement(t.left.declarations[0],0))})):i.push(a.generateExpression(t.left,o.Call,7)),i=G(i,e),i=[G(i,a.generateExpression(t.right,o.Assignment,7)),")"]})),i.push(this.maybeBlock(t.body,n)),i},K.prototype.generatePropertyKey=function(e,t){var n=[];return t&&n.push("["),n.push(this.generateExpression(e,o.Sequence,7)),t&&n.push("]"),n},K.prototype.generateAssignment=function(e,t,n,r,i){return o.Assignment2&&("\n"===(r=E.substring(n[0]+1,n[1]-1))[0]&&(o=["{"]),o.push(r)),d=1,8&t&&(d|=16),a=0,s=e.body.length;a0&&(e.body[a-1].trailingComments||e.body[a].leadingComments||H(e.body[a-1].range[1],e.body[a].range[0],o))),a===s-1&&(d|=32),u=e.body[a].leadingComments&&T?i.generateStatement(e.body[a],d):k(i.generateStatement(e.body[a],d)),o.push(u),O(L(u).toString())||T&&a1?j(u):u(),n.push(this.semicolon(t)),n},ThrowStatement:function(e,t){return[G("throw",this.generateExpression(e.argument,o.Sequence,7)),this.semicolon(t)]},TryStatement:function(e,t){var n,r,o,i;if(n=["try",this.maybeBlock(e.block,1)],n=this.maybeBlockSuffix(e.block,n),e.handlers)for(r=0,o=e.handlers.length;r0?"\n":""],a=17,o=0;o0&&(e.body[o-1].trailingComments||e.body[o].leadingComments||H(e.body[o-1].range[1],e.body[o].range[0],n))),r=k(this.generateStatement(e.body[o],a)),n.push(r),o+10){for(r.push("("),a=0,s=i;a=2&&48===a.charCodeAt(0))&&i.push(" "),i.push("."),i.push(Y(e.property))),W(i,o.Member,t)},MetaProperty:function(e,t,n){var r;return(r=[]).push("string"==typeof e.meta?e.meta:Y(e.meta)),r.push("."),r.push("string"==typeof e.property?e.property:Y(e.property)),W(r,o.Member,t)},UnaryExpression:function(e,t,n){var r,i,a,s,d;return i=this.generateExpression(e.argument,o.Unary,7),""===b?r=G(e.operator,i):(r=[e.operator],e.operator.length>2?r=G(r,i):(d=(s=L(r).toString()).charCodeAt(s.length-1),a=i.toString().charCodeAt(0),(43===d||45===d)&&d===a||u.code.isIdentifierPartES5(d)&&u.code.isIdentifierPartES5(a)?(r.push(B()),r.push(i)):r.push(i))),W(r,o.Unary,t)},YieldExpression:function(e,t,n){var r;return r=e.delegate?"yield*":"yield",e.argument&&(r=G(r,this.generateExpression(e.argument,o.Yield,7))),W(r,o.Yield,t)},AwaitExpression:function(e,t,n){return W(G(e.all?"await*":"await",this.generateExpression(e.argument,o.Await,7)),o.Await,t)},UpdateExpression:function(e,t,n){return e.prefix?W([e.operator,this.generateExpression(e.argument,o.Unary,7)],o.Unary,t):W([this.generateExpression(e.argument,o.Postfix,7),e.operator],o.Postfix,t)},FunctionExpression:function(e,t,n){var r=[J(e,!0),"function"];return e.id?(r.push(q(e)||B()),r.push(Y(e.id))):r.push(q(e)||b),r.push(this.generateFunctionBody(e)),r},ArrayPattern:function(e,t,n){return this.ArrayExpression(e,t,n,!0)},ArrayExpression:function(e,t,n,r){var i,a,s=this;return e.elements.length?(a=!r&&e.elements.length>1,i=["[",a?m:""],j((function(t){var n,r;for(n=0,r=e.elements.length;n1,j((function(){a=u.generateExpression(e.properties[0],o.Sequence,7)})),r||(s=L(a).toString(),/[\r\n]/g.test(s))?(j((function(t){var n,s;if(i=["{",m,t,a],r)for(i.push(","+m),n=1,s=e.properties.length;n126))){a+=x(r,e.charCodeAt(t+1));continue}}a+=String.fromCharCode(r)}if(i=(o=!("double"===h||"auto"===h&&d0&&(o=+r.slice(i+1),r=r.slice(0,i)),n>=0&&(o-=r.length-n-1,r=+(r.slice(0,n)+r.slice(n+1))+""),i=0;48===r.charCodeAt(r.length+i-1);)--i;return 0!==i&&(o-=i,r=r.slice(0,i)),0!==o&&(r+="e"+o),(r.length1e12&&Math.floor(e)===e&&(r="0x"+e.toString(16)).length0||N.moz.comprehensionExpressionStartsWithAssignment?i=G(i,u):i.push(u)})),e.filter&&(i=G(i,"if"+b),u=this.generateExpression(e.filter,o.Sequence,7),i=G(i,["(",u,")"])),N.moz.comprehensionExpressionStartsWithAssignment||(u=this.generateExpression(e.body,o.Assignment,7),i=G(i,u)),i.push(e.type===r.GeneratorExpression?")":"]"),i},ComprehensionBlock:function(e,t,n){var i;return i=G(i=e.left.type===r.VariableDeclaration?[e.left.kind,B(),this.generateStatement(e.left.declarations[0],0)]:this.generateExpression(e.left,o.Call,7),e.of?"of":"in"),i=G(i,this.generateExpression(e.right,o.Sequence,7)),["for"+b+"(",i,")"]},SpreadElement:function(e,t,n){return["...",this.generateExpression(e.argument,o.Assignment,7)]},TaggedTemplateExpression:function(e,t,n){var r=3;return 2&n||(r=1),W([this.generateExpression(e.tag,o.Call,r),this.generateExpression(e.quasi,o.Primary,4)],o.TaggedTemplate,t)},TemplateElement:function(e,t,n){return e.value.raw},TemplateLiteral:function(e,t,n){var r,i,a;for(r=["`"],i=0,a=e.quasis.length;ie)return!1;if((n+=t[r+1])>=e)return!0}}function h(e,t){return e<65?36===e:e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&d.test(String.fromCharCode(e)):!1!==t&&g(e,c)))}function f(e,t){return e<48?36===e:e<58||!(e<65)&&(e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&l.test(String.fromCharCode(e)):!1!==t&&(g(e,c)||g(e,p)))))}var m=function(e,t){void 0===t&&(t={}),this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=t.binop||null,this.updateContext=null};function b(e,t){return new m(e,{beforeExpr:!0,binop:t})}var y={beforeExpr:!0},S={startsExpr:!0},C={};function _(e,t){return void 0===t&&(t={}),t.keyword=e,C[e]=new m(e,t)}var N={num:new m("num",S),regexp:new m("regexp",S),string:new m("string",S),name:new m("name",S),eof:new m("eof"),bracketL:new m("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new m("]"),braceL:new m("{",{beforeExpr:!0,startsExpr:!0}),braceR:new m("}"),parenL:new m("(",{beforeExpr:!0,startsExpr:!0}),parenR:new m(")"),comma:new m(",",y),semi:new m(";",y),colon:new m(":",y),dot:new m("."),question:new m("?",y),arrow:new m("=>",y),template:new m("template"),invalidTemplate:new m("invalidTemplate"),ellipsis:new m("...",y),backQuote:new m("`",S),dollarBraceL:new m("${",{beforeExpr:!0,startsExpr:!0}),eq:new m("=",{beforeExpr:!0,isAssign:!0}),assign:new m("_=",{beforeExpr:!0,isAssign:!0}),incDec:new m("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new m("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:b("||",1),logicalAND:b("&&",2),bitwiseOR:b("|",3),bitwiseXOR:b("^",4),bitwiseAND:b("&",5),equality:b("==/!=/===/!==",6),relational:b("/<=/>=",7),bitShift:b("<>/>>>",8),plusMin:new m("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:b("%",10),star:b("*",10),slash:b("/",10),starstar:new m("**",{beforeExpr:!0}),_break:_("break"),_case:_("case",y),_catch:_("catch"),_continue:_("continue"),_debugger:_("debugger"),_default:_("default",y),_do:_("do",{isLoop:!0,beforeExpr:!0}),_else:_("else",y),_finally:_("finally"),_for:_("for",{isLoop:!0}),_function:_("function",S),_if:_("if"),_return:_("return",y),_switch:_("switch"),_throw:_("throw",y),_try:_("try"),_var:_("var"),_const:_("const"),_while:_("while",{isLoop:!0}),_with:_("with"),_new:_("new",{beforeExpr:!0,startsExpr:!0}),_this:_("this",S),_super:_("super",S),_class:_("class",S),_extends:_("extends",y),_export:_("export"),_import:_("import",S),_null:_("null",S),_true:_("true",S),_false:_("false",S),_in:_("in",{beforeExpr:!0,binop:7}),_instanceof:_("instanceof",{beforeExpr:!0,binop:7}),_typeof:_("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:_("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:_("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},A=/\r\n?|\n|\u2028|\u2029/,v=new RegExp(A.source,"g");function E(e,t){return 10===e||13===e||!t&&(8232===e||8233===e)}var T=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,I=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,D=Object.prototype,P=D.hasOwnProperty,M=D.toString;function O(e,t){return P.call(e,t)}var R=Array.isArray||function(e){return"[object Array]"===M.call(e)};function F(e){return new RegExp("^(?:"+e.replace(/ /g,"|")+")$")}var $=function(e,t){this.line=e,this.column=t};$.prototype.offset=function(e){return new $(this.line,this.column+e)};var x=function(e,t,n){this.start=t,this.end=n,null!==e.sourceFile&&(this.source=e.sourceFile)};function w(e,t){for(var n=1,r=0;;){v.lastIndex=r;var o=v.exec(e);if(!(o&&o.index=2015&&(t.ecmaVersion-=2009),null==t.allowReserved&&(t.allowReserved=t.ecmaVersion<5),R(t.onToken)){var r=t.onToken;t.onToken=function(e){return r.push(e)}}return R(t.onComment)&&(t.onComment=function(e,t){return function(n,r,o,i,a,s){var u={type:n?"Block":"Line",value:r,start:o,end:i};e.locations&&(u.loc=new x(this,a,s)),e.ranges&&(u.range=[o,i]),t.push(u)}}(t,t.onComment)),t}function G(e,t){return 2|(e?4:0)|(t?8:0)}var k=function(e,t,n){this.options=e=B(e),this.sourceFile=e.sourceFile,this.keywords=F(i[e.ecmaVersion>=6?6:"module"===e.sourceType?"5module":5]);var o="";if(!0!==e.allowReserved){for(var a=e.ecmaVersion;!(o=r[a]);a--);"module"===e.sourceType&&(o+=" await")}this.reservedWords=F(o);var s=(o?o+" ":"")+r.strict;this.reservedWordsStrict=F(s),this.reservedWordsStrictBind=F(s+" "+r.strictBind),this.input=String(t),this.containsEsc=!1,n?(this.pos=n,this.lineStart=this.input.lastIndexOf("\n",n-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(A).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=N.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===e.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports={},0===this.pos&&e.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null},j={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0}};k.prototype.parse=function(){var e=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(e)},j.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},j.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0},j.inAsync.get=function(){return(4&this.currentVarScope().flags)>0},j.allowSuper.get=function(){return(64&this.currentThisScope().flags)>0},j.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},j.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},k.prototype.inNonArrowFunction=function(){return(2&this.currentThisScope().flags)>0},k.extend=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var n=this,r=0;r-1&&this.raiseRecoverable(e.trailingComma,"Comma is not permitted after the rest element");var n=t?e.parenthesizedAssign:e.parenthesizedBind;n>-1&&this.raiseRecoverable(n,"Parenthesized pattern")}},U.checkExpressionErrors=function(e,t){if(!e)return!1;var n=e.shorthandAssign,r=e.doubleProto;if(!t)return n>=0||r>=0;n>=0&&this.raise(n,"Shorthand property assignments are valid only in destructuring patterns"),r>=0&&this.raiseRecoverable(r,"Redefinition of __proto__ property")},U.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos=6&&this.unexpected(),this.parseFunctionStatement(i,!1,!e);case N._class:return e&&this.unexpected(),this.parseClass(i,!0);case N._if:return this.parseIfStatement(i);case N._return:return this.parseReturnStatement(i);case N._switch:return this.parseSwitchStatement(i);case N._throw:return this.parseThrowStatement(i);case N._try:return this.parseTryStatement(i);case N._const:case N._var:return r=r||this.value,e&&"var"!==r&&this.unexpected(),this.parseVarStatement(i,r);case N._while:return this.parseWhileStatement(i);case N._with:return this.parseWithStatement(i);case N.braceL:return this.parseBlock(!0,i);case N.semi:return this.parseEmptyStatement(i);case N._export:case N._import:if(this.options.ecmaVersion>10&&o===N._import){I.lastIndex=this.pos;var a=I.exec(this.input),s=this.pos+a[0].length;if(40===this.input.charCodeAt(s))return this.parseExpressionStatement(i,this.parseExpression())}return this.options.allowImportExportEverywhere||(t||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),o===N._import?this.parseImport(i):this.parseExport(i,n);default:if(this.isAsyncFunction())return e&&this.unexpected(),this.next(),this.parseFunctionStatement(i,!0,!e);var u=this.value,d=this.parseExpression();return o===N.name&&"Identifier"===d.type&&this.eat(N.colon)?this.parseLabeledStatement(i,u,d,e):this.parseExpressionStatement(i,d)}},W.parseBreakContinueStatement=function(e,t){var n="break"===t;this.next(),this.eat(N.semi)||this.insertSemicolon()?e.label=null:this.type!==N.name?this.unexpected():(e.label=this.parseIdent(),this.semicolon());for(var r=0;r=6?this.eat(N.semi):this.semicolon(),this.finishNode(e,"DoWhileStatement")},W.parseForStatement=function(e){this.next();var t=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(z),this.enterScope(0),this.expect(N.parenL),this.type===N.semi)return t>-1&&this.unexpected(t),this.parseFor(e,null);var n=this.isLet();if(this.type===N._var||this.type===N._const||n){var r=this.startNode(),o=n?"let":this.value;return this.next(),this.parseVar(r,!0,o),this.finishNode(r,"VariableDeclaration"),(this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&1===r.declarations.length?(this.options.ecmaVersion>=9&&(this.type===N._in?t>-1&&this.unexpected(t):e.await=t>-1),this.parseForIn(e,r)):(t>-1&&this.unexpected(t),this.parseFor(e,r))}var i=new H,a=this.parseExpression(!0,i);return this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.options.ecmaVersion>=9&&(this.type===N._in?t>-1&&this.unexpected(t):e.await=t>-1),this.toAssignable(a,!1,i),this.checkLVal(a),this.parseForIn(e,a)):(this.checkExpressionErrors(i,!0),t>-1&&this.unexpected(t),this.parseFor(e,a))},W.parseFunctionStatement=function(e,t,n){return this.next(),this.parseFunction(e,J|(n?0:q),!1,t)},W.parseIfStatement=function(e){return this.next(),e.test=this.parseParenExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(N._else)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")},W.parseReturnStatement=function(e){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(N.semi)||this.insertSemicolon()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},W.parseSwitchStatement=function(e){var t;this.next(),e.discriminant=this.parseParenExpression(),e.cases=[],this.expect(N.braceL),this.labels.push(K),this.enterScope(0);for(var n=!1;this.type!==N.braceR;)if(this.type===N._case||this.type===N._default){var r=this.type===N._case;t&&this.finishNode(t,"SwitchCase"),e.cases.push(t=this.startNode()),t.consequent=[],this.next(),r?t.test=this.parseExpression():(n&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),n=!0,t.test=null),this.expect(N.colon)}else t||this.unexpected(),t.consequent.push(this.parseStatement(null));return this.exitScope(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(e,"SwitchStatement")},W.parseThrowStatement=function(e){return this.next(),A.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")};var Y=[];W.parseTryStatement=function(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.type===N._catch){var t=this.startNode();if(this.next(),this.eat(N.parenL)){t.param=this.parseBindingAtom();var n="Identifier"===t.param.type;this.enterScope(n?32:0),this.checkLVal(t.param,n?4:2),this.expect(N.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),t.param=null,this.enterScope(0);t.body=this.parseBlock(!1),this.exitScope(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(N._finally)?this.parseBlock():null,e.handler||e.finalizer||this.raise(e.start,"Missing catch or finally clause"),this.finishNode(e,"TryStatement")},W.parseVarStatement=function(e,t){return this.next(),this.parseVar(e,!1,t),this.semicolon(),this.finishNode(e,"VariableDeclaration")},W.parseWhileStatement=function(e){return this.next(),e.test=this.parseParenExpression(),this.labels.push(z),e.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(e,"WhileStatement")},W.parseWithStatement=function(e){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),e.object=this.parseParenExpression(),e.body=this.parseStatement("with"),this.finishNode(e,"WithStatement")},W.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},W.parseLabeledStatement=function(e,t,n,r){for(var o=0,i=this.labels;o=0;s--){var u=this.labels[s];if(u.statementStart!==e.start)break;u.statementStart=this.start,u.kind=a}return this.labels.push({name:t,kind:a,statementStart:this.start}),e.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")},W.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},W.parseBlock=function(e,t){for(void 0===e&&(e=!0),void 0===t&&(t=this.startNode()),t.body=[],this.expect(N.braceL),e&&this.enterScope(0);!this.eat(N.braceR);){var n=this.parseStatement(null);t.body.push(n)}return e&&this.exitScope(),this.finishNode(t,"BlockStatement")},W.parseFor=function(e,t){return e.init=t,this.expect(N.semi),e.test=this.type===N.semi?null:this.parseExpression(),this.expect(N.semi),e.update=this.type===N.parenR?null:this.parseExpression(),this.expect(N.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,"ForStatement")},W.parseForIn=function(e,t){var n=this.type===N._in;return this.next(),"VariableDeclaration"===t.type&&null!=t.declarations[0].init&&(!n||this.options.ecmaVersion<8||this.strict||"var"!==t.kind||"Identifier"!==t.declarations[0].id.type)?this.raise(t.start,(n?"for-in":"for-of")+" loop variable declaration may not have an initializer"):"AssignmentPattern"===t.type&&this.raise(t.start,"Invalid left-hand side in for-loop"),e.left=t,e.right=n?this.parseExpression():this.parseMaybeAssign(),this.expect(N.parenR),e.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(e,n?"ForInStatement":"ForOfStatement")},W.parseVar=function(e,t,n){for(e.declarations=[],e.kind=n;;){var r=this.startNode();if(this.parseVarId(r,n),this.eat(N.eq)?r.init=this.parseMaybeAssign(t):"const"!==n||this.type===N._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"===r.id.type||t&&(this.type===N._in||this.isContextual("of"))?r.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),e.declarations.push(this.finishNode(r,"VariableDeclarator")),!this.eat(N.comma))break}return e},W.parseVarId=function(e,t){e.id=this.parseBindingAtom(),this.checkLVal(e.id,"var"===t?1:2,!1)};var J=1,q=2;W.parseFunction=function(e,t,n,r){this.initFunction(e),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!r)&&(this.type===N.star&&t&q&&this.unexpected(),e.generator=this.eat(N.star)),this.options.ecmaVersion>=8&&(e.async=!!r),t&J&&(e.id=4&t&&this.type!==N.name?null:this.parseIdent(),!e.id||t&q||this.checkLVal(e.id,this.strict||e.generator||e.async?this.treatFunctionsAsVar?1:2:3));var o=this.yieldPos,i=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(G(e.async,e.generator)),t&J||(e.id=this.type===N.name?this.parseIdent():null),this.parseFunctionParams(e),this.parseFunctionBody(e,n,!1),this.yieldPos=o,this.awaitPos=i,this.awaitIdentPos=a,this.finishNode(e,t&J?"FunctionDeclaration":"FunctionExpression")},W.parseFunctionParams=function(e){this.expect(N.parenL),e.params=this.parseBindingList(N.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},W.parseClass=function(e,t){this.next();var n=this.strict;this.strict=!0,this.parseClassId(e,t),this.parseClassSuper(e);var r=this.startNode(),o=!1;for(r.body=[],this.expect(N.braceL);!this.eat(N.braceR);){var i=this.parseClassElement(null!==e.superClass);i&&(r.body.push(i),"MethodDefinition"===i.type&&"constructor"===i.kind&&(o&&this.raise(i.start,"Duplicate constructor in the same class"),o=!0))}return e.body=this.finishNode(r,"ClassBody"),this.strict=n,this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},W.parseClassElement=function(e){var t=this;if(this.eat(N.semi))return null;var n=this.startNode(),r=function(e,r){void 0===r&&(r=!1);var o=t.start,i=t.startLoc;return!!t.eatContextual(e)&&(!(t.type===N.parenL||r&&t.canInsertSemicolon())||(n.key&&t.unexpected(),n.computed=!1,n.key=t.startNodeAt(o,i),n.key.name=e,t.finishNode(n.key,"Identifier"),!1))};n.kind="method",n.static=r("static");var o=this.eat(N.star),i=!1;o||(this.options.ecmaVersion>=8&&r("async",!0)?(i=!0,o=this.options.ecmaVersion>=9&&this.eat(N.star)):r("get")?n.kind="get":r("set")&&(n.kind="set")),n.key||this.parsePropertyName(n);var a=n.key,s=!1;return n.computed||n.static||!("Identifier"===a.type&&"constructor"===a.name||"Literal"===a.type&&"constructor"===a.value)?n.static&&"Identifier"===a.type&&"prototype"===a.name&&this.raise(a.start,"Classes may not have a static property named prototype"):("method"!==n.kind&&this.raise(a.start,"Constructor can't have get/set modifier"),o&&this.raise(a.start,"Constructor can't be a generator"),i&&this.raise(a.start,"Constructor can't be an async method"),n.kind="constructor",s=e),this.parseClassMethod(n,o,i,s),"get"===n.kind&&0!==n.value.params.length&&this.raiseRecoverable(n.value.start,"getter should have no params"),"set"===n.kind&&1!==n.value.params.length&&this.raiseRecoverable(n.value.start,"setter should have exactly one param"),"set"===n.kind&&"RestElement"===n.value.params[0].type&&this.raiseRecoverable(n.value.params[0].start,"Setter cannot use rest params"),n},W.parseClassMethod=function(e,t,n,r){return e.value=this.parseMethod(t,n,r),this.finishNode(e,"MethodDefinition")},W.parseClassId=function(e,t){this.type===N.name?(e.id=this.parseIdent(),t&&this.checkLVal(e.id,2,!1)):(!0===t&&this.unexpected(),e.id=null)},W.parseClassSuper=function(e){e.superClass=this.eat(N._extends)?this.parseExprSubscripts():null},W.parseExport=function(e,t){if(this.next(),this.eat(N.star))return this.expectContextual("from"),this.type!==N.string&&this.unexpected(),e.source=this.parseExprAtom(),this.semicolon(),this.finishNode(e,"ExportAllDeclaration");if(this.eat(N._default)){var n;if(this.checkExport(t,"default",this.lastTokStart),this.type===N._function||(n=this.isAsyncFunction())){var r=this.startNode();this.next(),n&&this.next(),e.declaration=this.parseFunction(r,4|J,!1,n)}else if(this.type===N._class){var o=this.startNode();e.declaration=this.parseClass(o,"nullableID")}else e.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(e,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())e.declaration=this.parseStatement(null),"VariableDeclaration"===e.declaration.type?this.checkVariableExport(t,e.declaration.declarations):this.checkExport(t,e.declaration.id.name,e.declaration.id.start),e.specifiers=[],e.source=null;else{if(e.declaration=null,e.specifiers=this.parseExportSpecifiers(t),this.eatContextual("from"))this.type!==N.string&&this.unexpected(),e.source=this.parseExprAtom();else{for(var i=0,a=e.specifiers;i=6&&e)switch(e.type){case"Identifier":this.inAsync&&"await"===e.name&&this.raise(e.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern",n&&this.checkPatternErrors(n,!0);for(var r=0,o=e.properties;r=8&&!i&&"async"===a.name&&!this.canInsertSemicolon()&&this.eat(N._function))return this.parseFunction(this.startNodeAt(r,o),0,!1,!0);if(n&&!this.canInsertSemicolon()){if(this.eat(N.arrow))return this.parseArrowExpression(this.startNodeAt(r,o),[a],!1);if(this.options.ecmaVersion>=8&&"async"===a.name&&this.type===N.name&&!i)return a=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(N.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(r,o),[a],!0)}return a;case N.regexp:var s=this.value;return(t=this.parseLiteral(s.value)).regex={pattern:s.pattern,flags:s.flags},t;case N.num:case N.string:return this.parseLiteral(this.value);case N._null:case N._true:case N._false:return(t=this.startNode()).value=this.type===N._null?null:this.type===N._true,t.raw=this.type.keyword,this.next(),this.finishNode(t,"Literal");case N.parenL:var u=this.start,d=this.parseParenAndDistinguishExpression(n);return e&&(e.parenthesizedAssign<0&&!this.isSimpleAssignTarget(d)&&(e.parenthesizedAssign=u),e.parenthesizedBind<0&&(e.parenthesizedBind=u)),d;case N.bracketL:return t=this.startNode(),this.next(),t.elements=this.parseExprList(N.bracketR,!0,!0,e),this.finishNode(t,"ArrayExpression");case N.braceL:return this.parseObj(!1,e);case N._function:return t=this.startNode(),this.next(),this.parseFunction(t,0);case N._class:return this.parseClass(this.startNode(),!1);case N._new:return this.parseNew();case N.backQuote:return this.parseTemplate();case N._import:return this.options.ecmaVersion>=11?this.parseExprImport():this.unexpected();default:this.unexpected()}},X.parseExprImport=function(){var e=this.startNode();switch(this.next(),this.type){case N.parenL:return this.parseDynamicImport(e);default:this.unexpected()}},X.parseDynamicImport=function(e){if(this.next(),e.source=this.parseMaybeAssign(),!this.eat(N.parenR)){var t=this.start;this.eat(N.comma)&&this.eat(N.parenR)?this.raiseRecoverable(t,"Trailing comma is not allowed in import()"):this.unexpected(t)}return this.finishNode(e,"ImportExpression")},X.parseLiteral=function(e){var t=this.startNode();return t.value=e,t.raw=this.input.slice(this.start,this.end),110===t.raw.charCodeAt(t.raw.length-1)&&(t.bigint=t.raw.slice(0,-1)),this.next(),this.finishNode(t,"Literal")},X.parseParenExpression=function(){this.expect(N.parenL);var e=this.parseExpression();return this.expect(N.parenR),e},X.parseParenAndDistinguishExpression=function(e){var t,n=this.start,r=this.startLoc,o=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var i,a=this.start,s=this.startLoc,u=[],d=!0,l=!1,c=new H,p=this.yieldPos,g=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==N.parenR;){if(d?d=!1:this.expect(N.comma),o&&this.afterTrailingComma(N.parenR,!0)){l=!0;break}if(this.type===N.ellipsis){i=this.start,u.push(this.parseParenItem(this.parseRestBinding())),this.type===N.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}u.push(this.parseMaybeAssign(!1,c,this.parseParenItem))}var h=this.start,f=this.startLoc;if(this.expect(N.parenR),e&&!this.canInsertSemicolon()&&this.eat(N.arrow))return this.checkPatternErrors(c,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=p,this.awaitPos=g,this.parseParenArrowList(n,r,u);u.length&&!l||this.unexpected(this.lastTokStart),i&&this.unexpected(i),this.checkExpressionErrors(c,!0),this.yieldPos=p||this.yieldPos,this.awaitPos=g||this.awaitPos,u.length>1?((t=this.startNodeAt(a,s)).expressions=u,this.finishNodeAt(t,"SequenceExpression",h,f)):t=u[0]}else t=this.parseParenExpression();if(this.options.preserveParens){var m=this.startNodeAt(n,r);return m.expression=t,this.finishNode(m,"ParenthesizedExpression")}return t},X.parseParenItem=function(e){return e},X.parseParenArrowList=function(e,t,n){return this.parseArrowExpression(this.startNodeAt(e,t),n)};var Q=[];X.parseNew=function(){var e=this.startNode(),t=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(N.dot)){e.meta=t;var n=this.containsEsc;return e.property=this.parseIdent(!0),("target"!==e.property.name||n)&&this.raiseRecoverable(e.property.start,"The only valid meta property for new is new.target"),this.inNonArrowFunction()||this.raiseRecoverable(e.start,"new.target can only be used in functions"),this.finishNode(e,"MetaProperty")}var r=this.start,o=this.startLoc,i=this.type===N._import;return e.callee=this.parseSubscripts(this.parseExprAtom(),r,o,!0),i&&"ImportExpression"===e.callee.type&&this.raise(r,"Cannot use new with import()"),this.eat(N.parenL)?e.arguments=this.parseExprList(N.parenR,this.options.ecmaVersion>=8,!1):e.arguments=Q,this.finishNode(e,"NewExpression")},X.parseTemplateElement=function(e){var t=e.isTagged,n=this.startNode();return this.type===N.invalidTemplate?(t||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),n.value={raw:this.value,cooked:null}):n.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),n.tail=this.type===N.backQuote,this.finishNode(n,"TemplateElement")},X.parseTemplate=function(e){void 0===e&&(e={});var t=e.isTagged;void 0===t&&(t=!1);var n=this.startNode();this.next(),n.expressions=[];var r=this.parseTemplateElement({isTagged:t});for(n.quasis=[r];!r.tail;)this.type===N.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(N.dollarBraceL),n.expressions.push(this.parseExpression()),this.expect(N.braceR),n.quasis.push(r=this.parseTemplateElement({isTagged:t}));return this.next(),this.finishNode(n,"TemplateLiteral")},X.isAsyncProp=function(e){return!e.computed&&"Identifier"===e.key.type&&"async"===e.key.name&&(this.type===N.name||this.type===N.num||this.type===N.string||this.type===N.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===N.star)&&!A.test(this.input.slice(this.lastTokEnd,this.start))},X.parseObj=function(e,t){var n=this.startNode(),r=!0,o={};for(n.properties=[],this.next();!this.eat(N.braceR);){if(r)r=!1;else if(this.expect(N.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(N.braceR))break;var i=this.parseProperty(e,t);e||this.checkPropClash(i,o,t),n.properties.push(i)}return this.finishNode(n,e?"ObjectPattern":"ObjectExpression")},X.parseProperty=function(e,t){var n,r,o,i,a=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(N.ellipsis))return e?(a.argument=this.parseIdent(!1),this.type===N.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(a,"RestElement")):(this.type===N.parenL&&t&&(t.parenthesizedAssign<0&&(t.parenthesizedAssign=this.start),t.parenthesizedBind<0&&(t.parenthesizedBind=this.start)),a.argument=this.parseMaybeAssign(!1,t),this.type===N.comma&&t&&t.trailingComma<0&&(t.trailingComma=this.start),this.finishNode(a,"SpreadElement"));this.options.ecmaVersion>=6&&(a.method=!1,a.shorthand=!1,(e||t)&&(o=this.start,i=this.startLoc),e||(n=this.eat(N.star)));var s=this.containsEsc;return this.parsePropertyName(a),!e&&!s&&this.options.ecmaVersion>=8&&!n&&this.isAsyncProp(a)?(r=!0,n=this.options.ecmaVersion>=9&&this.eat(N.star),this.parsePropertyName(a,t)):r=!1,this.parsePropertyValue(a,e,n,r,o,i,t,s),this.finishNode(a,"Property")},X.parsePropertyValue=function(e,t,n,r,o,i,a,s){if((n||r)&&this.type===N.colon&&this.unexpected(),this.eat(N.colon))e.value=t?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,a),e.kind="init";else if(this.options.ecmaVersion>=6&&this.type===N.parenL)t&&this.unexpected(),e.kind="init",e.method=!0,e.value=this.parseMethod(n,r);else if(t||s||!(this.options.ecmaVersion>=5)||e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||this.type===N.comma||this.type===N.braceR)this.options.ecmaVersion>=6&&!e.computed&&"Identifier"===e.key.type?((n||r)&&this.unexpected(),this.checkUnreserved(e.key),"await"!==e.key.name||this.awaitIdentPos||(this.awaitIdentPos=o),e.kind="init",t?e.value=this.parseMaybeDefault(o,i,e.key):this.type===N.eq&&a?(a.shorthandAssign<0&&(a.shorthandAssign=this.start),e.value=this.parseMaybeDefault(o,i,e.key)):e.value=e.key,e.shorthand=!0):this.unexpected();else{(n||r)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),e.value=this.parseMethod(!1);var u="get"===e.kind?0:1;if(e.value.params.length!==u){var d=e.value.start;"get"===e.kind?this.raiseRecoverable(d,"getter should have no params"):this.raiseRecoverable(d,"setter should have exactly one param")}else"set"===e.kind&&"RestElement"===e.value.params[0].type&&this.raiseRecoverable(e.value.params[0].start,"Setter cannot use rest params")}},X.parsePropertyName=function(e){if(this.options.ecmaVersion>=6){if(this.eat(N.bracketL))return e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(N.bracketR),e.key;e.computed=!1}return e.key=this.type===N.num||this.type===N.string?this.parseExprAtom():this.parseIdent("never"!==this.options.allowReserved)},X.initFunction=function(e){e.id=null,this.options.ecmaVersion>=6&&(e.generator=e.expression=!1),this.options.ecmaVersion>=8&&(e.async=!1)},X.parseMethod=function(e,t,n){var r=this.startNode(),o=this.yieldPos,i=this.awaitPos,a=this.awaitIdentPos;return this.initFunction(r),this.options.ecmaVersion>=6&&(r.generator=e),this.options.ecmaVersion>=8&&(r.async=!!t),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|G(t,r.generator)|(n?128:0)),this.expect(N.parenL),r.params=this.parseBindingList(N.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(r,!1,!0),this.yieldPos=o,this.awaitPos=i,this.awaitIdentPos=a,this.finishNode(r,"FunctionExpression")},X.parseArrowExpression=function(e,t,n){var r=this.yieldPos,o=this.awaitPos,i=this.awaitIdentPos;return this.enterScope(16|G(n,!1)),this.initFunction(e),this.options.ecmaVersion>=8&&(e.async=!!n),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,e.params=this.toAssignableList(t,!0),this.parseFunctionBody(e,!0,!1),this.yieldPos=r,this.awaitPos=o,this.awaitIdentPos=i,this.finishNode(e,"ArrowFunctionExpression")},X.parseFunctionBody=function(e,t,n){var r=t&&this.type!==N.braceL,o=this.strict,i=!1;if(r)e.body=this.parseMaybeAssign(),e.expression=!0,this.checkParams(e,!1);else{var a=this.options.ecmaVersion>=7&&!this.isSimpleParamList(e.params);o&&!a||(i=this.strictDirective(this.end))&&a&&this.raiseRecoverable(e.start,"Illegal 'use strict' directive in function with non-simple parameter list");var s=this.labels;this.labels=[],i&&(this.strict=!0),this.checkParams(e,!o&&!i&&!t&&!n&&this.isSimpleParamList(e.params)),e.body=this.parseBlock(!1),e.expression=!1,this.adaptDirectivePrologue(e.body.body),this.labels=s}this.exitScope(),this.strict&&e.id&&this.checkLVal(e.id,5),this.strict=o},X.isSimpleParamList=function(e){for(var t=0,n=e;t-1||o.functions.indexOf(e)>-1||o.var.indexOf(e)>-1,o.lexical.push(e),this.inModule&&1&o.flags&&delete this.undefinedExports[e]}else if(4===t){this.currentScope().lexical.push(e)}else if(3===t){var i=this.currentScope();r=this.treatFunctionsAsVar?i.lexical.indexOf(e)>-1:i.lexical.indexOf(e)>-1||i.var.indexOf(e)>-1,i.functions.push(e)}else for(var a=this.scopeStack.length-1;a>=0;--a){var s=this.scopeStack[a];if(s.lexical.indexOf(e)>-1&&!(32&s.flags&&s.lexical[0]===e)||!this.treatFunctionsAsVarInScope(s)&&s.functions.indexOf(e)>-1){r=!0;break}if(s.var.push(e),this.inModule&&1&s.flags&&delete this.undefinedExports[e],3&s.flags)break}r&&this.raiseRecoverable(n,"Identifier '"+e+"' has already been declared")},te.checkLocalExport=function(e){-1===this.scopeStack[0].lexical.indexOf(e.name)&&-1===this.scopeStack[0].var.indexOf(e.name)&&(this.undefinedExports[e.name]=e)},te.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},te.currentVarScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(3&t.flags)return t}},te.currentThisScope=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e];if(3&t.flags&&!(16&t.flags))return t}};var re=function(e,t,n){this.type="",this.start=t,this.end=0,e.options.locations&&(this.loc=new x(e,n)),e.options.directSourceFile&&(this.sourceFile=e.options.directSourceFile),e.options.ranges&&(this.range=[t,0])},oe=k.prototype;function ie(e,t,n,r){return e.type=t,e.end=n,this.options.locations&&(e.loc.end=r),this.options.ranges&&(e.range[1]=n),e}oe.startNode=function(){return new re(this,this.start,this.startLoc)},oe.startNodeAt=function(e,t){return new re(this,e,t)},oe.finishNode=function(e,t){return ie.call(this,e,t,this.lastTokEnd,this.lastTokEndLoc)},oe.finishNodeAt=function(e,t,n,r){return ie.call(this,e,t,n,r)};var ae=function(e,t,n,r,o){this.token=e,this.isExpr=!!t,this.preserveSpace=!!n,this.override=r,this.generator=!!o},se={b_stat:new ae("{",!1),b_expr:new ae("{",!0),b_tmpl:new ae("${",!1),p_stat:new ae("(",!1),p_expr:new ae("(",!0),q_tmpl:new ae("`",!0,!0,(function(e){return e.tryReadTemplateToken()})),f_stat:new ae("function",!1),f_expr:new ae("function",!0),f_expr_gen:new ae("function",!0,!1,null,!0),f_gen:new ae("function",!1,!1,null,!0)},ue=k.prototype;ue.initialContext=function(){return[se.b_stat]},ue.braceIsBlock=function(e){var t=this.curContext();return t===se.f_expr||t===se.f_stat||(e!==N.colon||t!==se.b_stat&&t!==se.b_expr?e===N._return||e===N.name&&this.exprAllowed?A.test(this.input.slice(this.lastTokEnd,this.start)):e===N._else||e===N.semi||e===N.eof||e===N.parenR||e===N.arrow||(e===N.braceL?t===se.b_stat:e!==N._var&&e!==N._const&&e!==N.name&&!this.exprAllowed):!t.isExpr)},ue.inGeneratorContext=function(){for(var e=this.context.length-1;e>=1;e--){var t=this.context[e];if("function"===t.token)return t.generator}return!1},ue.updateContext=function(e){var t,n=this.type;n.keyword&&e===N.dot?this.exprAllowed=!1:(t=n.updateContext)?t.call(this,e):this.exprAllowed=n.beforeExpr},N.parenR.updateContext=N.braceR.updateContext=function(){if(1!==this.context.length){var e=this.context.pop();e===se.b_stat&&"function"===this.curContext().token&&(e=this.context.pop()),this.exprAllowed=!e.isExpr}else this.exprAllowed=!0},N.braceL.updateContext=function(e){this.context.push(this.braceIsBlock(e)?se.b_stat:se.b_expr),this.exprAllowed=!0},N.dollarBraceL.updateContext=function(){this.context.push(se.b_tmpl),this.exprAllowed=!0},N.parenL.updateContext=function(e){var t=e===N._if||e===N._for||e===N._with||e===N._while;this.context.push(t?se.p_stat:se.p_expr),this.exprAllowed=!0},N.incDec.updateContext=function(){},N._function.updateContext=N._class.updateContext=function(e){!e.beforeExpr||e===N.semi||e===N._else||e===N._return&&A.test(this.input.slice(this.lastTokEnd,this.start))||(e===N.colon||e===N.braceL)&&this.curContext()===se.b_stat?this.context.push(se.f_stat):this.context.push(se.f_expr),this.exprAllowed=!1},N.backQuote.updateContext=function(){this.curContext()===se.q_tmpl?this.context.pop():this.context.push(se.q_tmpl),this.exprAllowed=!1},N.star.updateContext=function(e){if(e===N._function){var t=this.context.length-1;this.context[t]===se.f_expr?this.context[t]=se.f_expr_gen:this.context[t]=se.f_gen}this.exprAllowed=!0},N.name.updateContext=function(e){var t=!1;this.options.ecmaVersion>=6&&e!==N.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(t=!0),this.exprAllowed=t};var de="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",le=de+" Extended_Pictographic",ce={9:de,10:le,11:"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS Extended_Pictographic"},pe="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",ge="Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",he=ge+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",fe={9:ge,10:he,11:"Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho"},me={};function be(e){var t=me[e]={binary:F(ce[e]+" "+pe),nonBinary:{General_Category:F(pe),Script:F(fe[e])}};t.nonBinary.Script_Extensions=t.nonBinary.Script,t.nonBinary.gc=t.nonBinary.General_Category,t.nonBinary.sc=t.nonBinary.Script,t.nonBinary.scx=t.nonBinary.Script_Extensions}be(9),be(10),be(11);var ye=k.prototype,Se=function(e){this.parser=e,this.validFlags="gim"+(e.options.ecmaVersion>=6?"uy":"")+(e.options.ecmaVersion>=9?"s":""),this.unicodeProperties=me[e.options.ecmaVersion>=11?11:e.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function Ce(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function _e(e){return 36===e||e>=40&&e<=43||46===e||63===e||e>=91&&e<=94||e>=123&&e<=125}function Ne(e){return e>=65&&e<=90||e>=97&&e<=122}function Ae(e){return Ne(e)||95===e}function ve(e){return Ae(e)||Ee(e)}function Ee(e){return e>=48&&e<=57}function Te(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function Ie(e){return e>=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e-48}function De(e){return e>=48&&e<=55}Se.prototype.reset=function(e,t,n){var r=-1!==n.indexOf("u");this.start=0|e,this.source=t+"",this.flags=n,this.switchU=r&&this.parser.options.ecmaVersion>=6,this.switchN=r&&this.parser.options.ecmaVersion>=9},Se.prototype.raise=function(e){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+e)},Se.prototype.at=function(e){var t=this.source,n=t.length;if(e>=n)return-1;var r=t.charCodeAt(e);return!this.switchU||r<=55295||r>=57344||e+1>=n?r:(r<<10)+t.charCodeAt(e+1)-56613888},Se.prototype.nextIndex=function(e){var t=this.source,n=t.length;if(e>=n)return n;var r=t.charCodeAt(e);return!this.switchU||r<=55295||r>=57344||e+1>=n?e+1:e+2},Se.prototype.current=function(){return this.at(this.pos)},Se.prototype.lookahead=function(){return this.at(this.nextIndex(this.pos))},Se.prototype.advance=function(){this.pos=this.nextIndex(this.pos)},Se.prototype.eat=function(e){return this.current()===e&&(this.advance(),!0)},ye.validateRegExpFlags=function(e){for(var t=e.validFlags,n=e.flags,r=0;r-1&&this.raise(e.start,"Duplicate regular expression flag")}},ye.validateRegExpPattern=function(e){this.regexp_pattern(e),!e.switchN&&this.options.ecmaVersion>=9&&e.groupNames.length>0&&(e.switchN=!0,this.regexp_pattern(e))},ye.regexp_pattern=function(e){e.pos=0,e.lastIntValue=0,e.lastStringValue="",e.lastAssertionIsQuantifiable=!1,e.numCapturingParens=0,e.maxBackReference=0,e.groupNames.length=0,e.backReferenceNames.length=0,this.regexp_disjunction(e),e.pos!==e.source.length&&(e.eat(41)&&e.raise("Unmatched ')'"),(e.eat(93)||e.eat(125))&&e.raise("Lone quantifier brackets")),e.maxBackReference>e.numCapturingParens&&e.raise("Invalid escape");for(var t=0,n=e.backReferenceNames;t=9&&(n=e.eat(60)),e.eat(61)||e.eat(33))return this.regexp_disjunction(e),e.eat(41)||e.raise("Unterminated group"),e.lastAssertionIsQuantifiable=!n,!0}return e.pos=t,!1},ye.regexp_eatQuantifier=function(e,t){return void 0===t&&(t=!1),!!this.regexp_eatQuantifierPrefix(e,t)&&(e.eat(63),!0)},ye.regexp_eatQuantifierPrefix=function(e,t){return e.eat(42)||e.eat(43)||e.eat(63)||this.regexp_eatBracedQuantifier(e,t)},ye.regexp_eatBracedQuantifier=function(e,t){var n=e.pos;if(e.eat(123)){var r=0,o=-1;if(this.regexp_eatDecimalDigits(e)&&(r=e.lastIntValue,e.eat(44)&&this.regexp_eatDecimalDigits(e)&&(o=e.lastIntValue),e.eat(125)))return-1!==o&&o=9?this.regexp_groupSpecifier(e):63===e.current()&&e.raise("Invalid group"),this.regexp_disjunction(e),e.eat(41))return e.numCapturingParens+=1,!0;e.raise("Unterminated group")}return!1},ye.regexp_eatExtendedAtom=function(e){return e.eat(46)||this.regexp_eatReverseSolidusAtomEscape(e)||this.regexp_eatCharacterClass(e)||this.regexp_eatUncapturingGroup(e)||this.regexp_eatCapturingGroup(e)||this.regexp_eatInvalidBracedQuantifier(e)||this.regexp_eatExtendedPatternCharacter(e)},ye.regexp_eatInvalidBracedQuantifier=function(e){return this.regexp_eatBracedQuantifier(e,!0)&&e.raise("Nothing to repeat"),!1},ye.regexp_eatSyntaxCharacter=function(e){var t=e.current();return!!_e(t)&&(e.lastIntValue=t,e.advance(),!0)},ye.regexp_eatPatternCharacters=function(e){for(var t=e.pos,n=0;-1!==(n=e.current())&&!_e(n);)e.advance();return e.pos!==t},ye.regexp_eatExtendedPatternCharacter=function(e){var t=e.current();return!(-1===t||36===t||t>=40&&t<=43||46===t||63===t||91===t||94===t||124===t)&&(e.advance(),!0)},ye.regexp_groupSpecifier=function(e){if(e.eat(63)){if(this.regexp_eatGroupName(e))return-1!==e.groupNames.indexOf(e.lastStringValue)&&e.raise("Duplicate capture group name"),void e.groupNames.push(e.lastStringValue);e.raise("Invalid group")}},ye.regexp_eatGroupName=function(e){if(e.lastStringValue="",e.eat(60)){if(this.regexp_eatRegExpIdentifierName(e)&&e.eat(62))return!0;e.raise("Invalid capture group name")}return!1},ye.regexp_eatRegExpIdentifierName=function(e){if(e.lastStringValue="",this.regexp_eatRegExpIdentifierStart(e)){for(e.lastStringValue+=Ce(e.lastIntValue);this.regexp_eatRegExpIdentifierPart(e);)e.lastStringValue+=Ce(e.lastIntValue);return!0}return!1},ye.regexp_eatRegExpIdentifierStart=function(e){var t=e.pos,n=e.current();return e.advance(),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e)&&(n=e.lastIntValue),function(e){return h(e,!0)||36===e||95===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},ye.regexp_eatRegExpIdentifierPart=function(e){var t=e.pos,n=e.current();return e.advance(),92===n&&this.regexp_eatRegExpUnicodeEscapeSequence(e)&&(n=e.lastIntValue),function(e){return f(e,!0)||36===e||95===e||8204===e||8205===e}(n)?(e.lastIntValue=n,!0):(e.pos=t,!1)},ye.regexp_eatAtomEscape=function(e){return!!(this.regexp_eatBackReference(e)||this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)||e.switchN&&this.regexp_eatKGroupName(e))||(e.switchU&&(99===e.current()&&e.raise("Invalid unicode escape"),e.raise("Invalid escape")),!1)},ye.regexp_eatBackReference=function(e){var t=e.pos;if(this.regexp_eatDecimalEscape(e)){var n=e.lastIntValue;if(e.switchU)return n>e.maxBackReference&&(e.maxBackReference=n),!0;if(n<=e.numCapturingParens)return!0;e.pos=t}return!1},ye.regexp_eatKGroupName=function(e){if(e.eat(107)){if(this.regexp_eatGroupName(e))return e.backReferenceNames.push(e.lastStringValue),!0;e.raise("Invalid named reference")}return!1},ye.regexp_eatCharacterEscape=function(e){return this.regexp_eatControlEscape(e)||this.regexp_eatCControlLetter(e)||this.regexp_eatZero(e)||this.regexp_eatHexEscapeSequence(e)||this.regexp_eatRegExpUnicodeEscapeSequence(e)||!e.switchU&&this.regexp_eatLegacyOctalEscapeSequence(e)||this.regexp_eatIdentityEscape(e)},ye.regexp_eatCControlLetter=function(e){var t=e.pos;if(e.eat(99)){if(this.regexp_eatControlLetter(e))return!0;e.pos=t}return!1},ye.regexp_eatZero=function(e){return 48===e.current()&&!Ee(e.lookahead())&&(e.lastIntValue=0,e.advance(),!0)},ye.regexp_eatControlEscape=function(e){var t=e.current();return 116===t?(e.lastIntValue=9,e.advance(),!0):110===t?(e.lastIntValue=10,e.advance(),!0):118===t?(e.lastIntValue=11,e.advance(),!0):102===t?(e.lastIntValue=12,e.advance(),!0):114===t&&(e.lastIntValue=13,e.advance(),!0)},ye.regexp_eatControlLetter=function(e){var t=e.current();return!!Ne(t)&&(e.lastIntValue=t%32,e.advance(),!0)},ye.regexp_eatRegExpUnicodeEscapeSequence=function(e){var t,n=e.pos;if(e.eat(117)){if(this.regexp_eatFixedHexDigits(e,4)){var r=e.lastIntValue;if(e.switchU&&r>=55296&&r<=56319){var o=e.pos;if(e.eat(92)&&e.eat(117)&&this.regexp_eatFixedHexDigits(e,4)){var i=e.lastIntValue;if(i>=56320&&i<=57343)return e.lastIntValue=1024*(r-55296)+(i-56320)+65536,!0}e.pos=o,e.lastIntValue=r}return!0}if(e.switchU&&e.eat(123)&&this.regexp_eatHexDigits(e)&&e.eat(125)&&((t=e.lastIntValue)>=0&&t<=1114111))return!0;e.switchU&&e.raise("Invalid unicode escape"),e.pos=n}return!1},ye.regexp_eatIdentityEscape=function(e){if(e.switchU)return!!this.regexp_eatSyntaxCharacter(e)||!!e.eat(47)&&(e.lastIntValue=47,!0);var t=e.current();return!(99===t||e.switchN&&107===t)&&(e.lastIntValue=t,e.advance(),!0)},ye.regexp_eatDecimalEscape=function(e){e.lastIntValue=0;var t=e.current();if(t>=49&&t<=57){do{e.lastIntValue=10*e.lastIntValue+(t-48),e.advance()}while((t=e.current())>=48&&t<=57);return!0}return!1},ye.regexp_eatCharacterClassEscape=function(e){var t=e.current();if(function(e){return 100===e||68===e||115===e||83===e||119===e||87===e}(t))return e.lastIntValue=-1,e.advance(),!0;if(e.switchU&&this.options.ecmaVersion>=9&&(80===t||112===t)){if(e.lastIntValue=-1,e.advance(),e.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(e)&&e.eat(125))return!0;e.raise("Invalid property name")}return!1},ye.regexp_eatUnicodePropertyValueExpression=function(e){var t=e.pos;if(this.regexp_eatUnicodePropertyName(e)&&e.eat(61)){var n=e.lastStringValue;if(this.regexp_eatUnicodePropertyValue(e)){var r=e.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(e,n,r),!0}}if(e.pos=t,this.regexp_eatLoneUnicodePropertyNameOrValue(e)){var o=e.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(e,o),!0}return!1},ye.regexp_validateUnicodePropertyNameAndValue=function(e,t,n){O(e.unicodeProperties.nonBinary,t)||e.raise("Invalid property name"),e.unicodeProperties.nonBinary[t].test(n)||e.raise("Invalid property value")},ye.regexp_validateUnicodePropertyNameOrValue=function(e,t){e.unicodeProperties.binary.test(t)||e.raise("Invalid property name")},ye.regexp_eatUnicodePropertyName=function(e){var t=0;for(e.lastStringValue="";Ae(t=e.current());)e.lastStringValue+=Ce(t),e.advance();return""!==e.lastStringValue},ye.regexp_eatUnicodePropertyValue=function(e){var t=0;for(e.lastStringValue="";ve(t=e.current());)e.lastStringValue+=Ce(t),e.advance();return""!==e.lastStringValue},ye.regexp_eatLoneUnicodePropertyNameOrValue=function(e){return this.regexp_eatUnicodePropertyValue(e)},ye.regexp_eatCharacterClass=function(e){if(e.eat(91)){if(e.eat(94),this.regexp_classRanges(e),e.eat(93))return!0;e.raise("Unterminated character class")}return!1},ye.regexp_classRanges=function(e){for(;this.regexp_eatClassAtom(e);){var t=e.lastIntValue;if(e.eat(45)&&this.regexp_eatClassAtom(e)){var n=e.lastIntValue;!e.switchU||-1!==t&&-1!==n||e.raise("Invalid character class"),-1!==t&&-1!==n&&t>n&&e.raise("Range out of order in character class")}}},ye.regexp_eatClassAtom=function(e){var t=e.pos;if(e.eat(92)){if(this.regexp_eatClassEscape(e))return!0;if(e.switchU){var n=e.current();(99===n||De(n))&&e.raise("Invalid class escape"),e.raise("Invalid escape")}e.pos=t}var r=e.current();return 93!==r&&(e.lastIntValue=r,e.advance(),!0)},ye.regexp_eatClassEscape=function(e){var t=e.pos;if(e.eat(98))return e.lastIntValue=8,!0;if(e.switchU&&e.eat(45))return e.lastIntValue=45,!0;if(!e.switchU&&e.eat(99)){if(this.regexp_eatClassControlLetter(e))return!0;e.pos=t}return this.regexp_eatCharacterClassEscape(e)||this.regexp_eatCharacterEscape(e)},ye.regexp_eatClassControlLetter=function(e){var t=e.current();return!(!Ee(t)&&95!==t)&&(e.lastIntValue=t%32,e.advance(),!0)},ye.regexp_eatHexEscapeSequence=function(e){var t=e.pos;if(e.eat(120)){if(this.regexp_eatFixedHexDigits(e,2))return!0;e.switchU&&e.raise("Invalid escape"),e.pos=t}return!1},ye.regexp_eatDecimalDigits=function(e){var t=e.pos,n=0;for(e.lastIntValue=0;Ee(n=e.current());)e.lastIntValue=10*e.lastIntValue+(n-48),e.advance();return e.pos!==t},ye.regexp_eatHexDigits=function(e){var t=e.pos,n=0;for(e.lastIntValue=0;Te(n=e.current());)e.lastIntValue=16*e.lastIntValue+Ie(n),e.advance();return e.pos!==t},ye.regexp_eatLegacyOctalEscapeSequence=function(e){if(this.regexp_eatOctalDigit(e)){var t=e.lastIntValue;if(this.regexp_eatOctalDigit(e)){var n=e.lastIntValue;t<=3&&this.regexp_eatOctalDigit(e)?e.lastIntValue=64*t+8*n+e.lastIntValue:e.lastIntValue=8*t+n}else e.lastIntValue=t;return!0}return!1},ye.regexp_eatOctalDigit=function(e){var t=e.current();return De(t)?(e.lastIntValue=t-48,e.advance(),!0):(e.lastIntValue=0,!1)},ye.regexp_eatFixedHexDigits=function(e,t){var n=e.pos;e.lastIntValue=0;for(var r=0;r>10),56320+(1023&e)))}Me.next=function(){this.options.onToken&&this.options.onToken(new Pe(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},Me.getToken=function(){return this.next(),new Pe(this)},"undefined"!=typeof Symbol&&(Me[Symbol.iterator]=function(){var e=this;return{next:function(){var t=e.getToken();return{done:t.type===N.eof,value:t}}}}),Me.curContext=function(){return this.context[this.context.length-1]},Me.nextToken=function(){var e=this.curContext();return e&&e.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(N.eof):e.override?e.override(this):void this.readToken(this.fullCharCodeAtPos())},Me.readToken=function(e){return h(e,this.options.ecmaVersion>=6)||92===e?this.readWord():this.getTokenFromCode(e)},Me.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.pos);return e<=55295||e>=57344?e:(e<<10)+this.input.charCodeAt(this.pos+1)-56613888},Me.skipBlockComment=function(){var e,t=this.options.onComment&&this.curPosition(),n=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(v.lastIndex=n;(e=v.exec(this.input))&&e.index8&&e<14||e>=5760&&T.test(String.fromCharCode(e))))break e;++this.pos}}},Me.finishToken=function(e,t){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var n=this.type;this.type=e,this.value=t,this.updateContext(n)},Me.readToken_dot=function(){var e=this.input.charCodeAt(this.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===e&&46===t?(this.pos+=3,this.finishToken(N.ellipsis)):(++this.pos,this.finishToken(N.dot))},Me.readToken_slash=function(){var e=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===e?this.finishOp(N.assign,2):this.finishOp(N.slash,1)},Me.readToken_mult_modulo_exp=function(e){var t=this.input.charCodeAt(this.pos+1),n=1,r=42===e?N.star:N.modulo;return this.options.ecmaVersion>=7&&42===e&&42===t&&(++n,r=N.starstar,t=this.input.charCodeAt(this.pos+2)),61===t?this.finishOp(N.assign,n+1):this.finishOp(r,n)},Me.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?this.finishOp(124===e?N.logicalOR:N.logicalAND,2):61===t?this.finishOp(N.assign,2):this.finishOp(124===e?N.bitwiseOR:N.bitwiseAND,1)},Me.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(N.assign,2):this.finishOp(N.bitwiseXOR,1)},Me.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.pos+1);return t===e?45!==t||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!A.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(N.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===t?this.finishOp(N.assign,2):this.finishOp(N.plusMin,1)},Me.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.pos+1),n=1;return t===e?(n=62===e&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+n)?this.finishOp(N.assign,n+1):this.finishOp(N.bitShift,n)):33!==t||60!==e||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===t&&(n=2),this.finishOp(N.relational,n)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},Me.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.pos+1);return 61===t?this.finishOp(N.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===e&&62===t&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(N.arrow)):this.finishOp(61===e?N.eq:N.prefix,1)},Me.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(N.parenL);case 41:return++this.pos,this.finishToken(N.parenR);case 59:return++this.pos,this.finishToken(N.semi);case 44:return++this.pos,this.finishToken(N.comma);case 91:return++this.pos,this.finishToken(N.bracketL);case 93:return++this.pos,this.finishToken(N.bracketR);case 123:return++this.pos,this.finishToken(N.braceL);case 125:return++this.pos,this.finishToken(N.braceR);case 58:return++this.pos,this.finishToken(N.colon);case 63:return++this.pos,this.finishToken(N.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(N.backQuote);case 48:var t=this.input.charCodeAt(this.pos+1);if(120===t||88===t)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===t||79===t)return this.readRadixNumber(8);if(98===t||66===t)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 126:return this.finishOp(N.prefix,1)}this.raise(this.pos,"Unexpected character '"+Oe(e)+"'")},Me.finishOp=function(e,t){var n=this.input.slice(this.pos,this.pos+t);return this.pos+=t,this.finishToken(e,n)},Me.readRegexp=function(){for(var e,t,n=this.pos;;){this.pos>=this.input.length&&this.raise(n,"Unterminated regular expression");var r=this.input.charAt(this.pos);if(A.test(r)&&this.raise(n,"Unterminated regular expression"),e)e=!1;else{if("["===r)t=!0;else if("]"===r&&t)t=!1;else if("/"===r&&!t)break;e="\\"===r}++this.pos}var o=this.input.slice(n,this.pos);++this.pos;var i=this.pos,a=this.readWord1();this.containsEsc&&this.unexpected(i);var s=this.regexpState||(this.regexpState=new Se(this));s.reset(n,o,a),this.validateRegExpFlags(s),this.validateRegExpPattern(s);var u=null;try{u=new RegExp(o,a)}catch(e){}return this.finishToken(N.regexp,{pattern:o,flags:a,value:u})},Me.readInt=function(e,t){for(var n=this.pos,r=0,o=0,i=null==t?1/0:t;o=97?a-97+10:a>=65?a-65+10:a>=48&&a<=57?a-48:1/0)>=e)break;++this.pos,r=r*e+s}return this.pos===n||null!=t&&this.pos-n!==t?null:r},Me.readRadixNumber=function(e){var t=this.pos;this.pos+=2;var n=this.readInt(e);return null==n&&this.raise(this.start+2,"Expected number in radix "+e),this.options.ecmaVersion>=11&&110===this.input.charCodeAt(this.pos)?(n="undefined"!=typeof BigInt?BigInt(this.input.slice(t,this.pos)):null,++this.pos):h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(N.num,n)},Me.readNumber=function(e){var t=this.pos;e||null!==this.readInt(10)||this.raise(t,"Invalid number");var n=this.pos-t>=2&&48===this.input.charCodeAt(t);n&&this.strict&&this.raise(t,"Invalid number"),n&&/[89]/.test(this.input.slice(t,this.pos))&&(n=!1);var r=this.input.charCodeAt(this.pos);if(!n&&!e&&this.options.ecmaVersion>=11&&110===r){var o=this.input.slice(t,this.pos),i="undefined"!=typeof BigInt?BigInt(o):null;return++this.pos,h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(N.num,i)}46!==r||n||(++this.pos,this.readInt(10),r=this.input.charCodeAt(this.pos)),69!==r&&101!==r||n||(43!==(r=this.input.charCodeAt(++this.pos))&&45!==r||++this.pos,null===this.readInt(10)&&this.raise(t,"Invalid number")),h(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var a=this.input.slice(t,this.pos),s=n?parseInt(a,8):parseFloat(a);return this.finishToken(N.num,s)},Me.readCodePoint=function(){var e;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var t=++this.pos;e=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,e>1114111&&this.invalidStringToken(t,"Code point out of bounds")}else e=this.readHexChar(4);return e},Me.readString=function(e){for(var t="",n=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===e)break;92===r?(t+=this.input.slice(n,this.pos),t+=this.readEscapedChar(!1),n=this.pos):(E(r,this.options.ecmaVersion>=10)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return t+=this.input.slice(n,this.pos++),this.finishToken(N.string,t)};var Re={};Me.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(e){if(e!==Re)throw e;this.readInvalidTemplateToken()}this.inTemplateElement=!1},Me.invalidStringToken=function(e,t){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Re;this.raise(e,t)},Me.readTmplToken=function(){for(var e="",t=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var n=this.input.charCodeAt(this.pos);if(96===n||36===n&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==N.template&&this.type!==N.invalidTemplate?(e+=this.input.slice(t,this.pos),this.finishToken(N.template,e)):36===n?(this.pos+=2,this.finishToken(N.dollarBraceL)):(++this.pos,this.finishToken(N.backQuote));if(92===n)e+=this.input.slice(t,this.pos),e+=this.readEscapedChar(!0),t=this.pos;else if(E(n)){switch(e+=this.input.slice(t,this.pos),++this.pos,n){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(n)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),t=this.pos}else++this.pos}},Me.readInvalidTemplateToken=function(){for(;this.pos=48&&t<=55){var n=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],r=parseInt(n,8);return r>255&&(n=n.slice(0,-1),r=parseInt(n,8)),this.pos+=n.length-1,t=this.input.charCodeAt(this.pos),"0"===n&&56!==t&&57!==t||!this.strict&&!e||this.invalidStringToken(this.pos-1-n.length,e?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(r)}return E(t)?"":String.fromCharCode(t)}},Me.readHexChar=function(e){var t=this.pos,n=this.readInt(16,e);return null===n&&this.invalidStringToken(t,"Bad character escape sequence"),n},Me.readWord1=function(){this.containsEsc=!1;for(var e="",t=!0,n=this.pos,r=this.options.ecmaVersion>=6;this.pos=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.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};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.AbstractIdentifierNamesGenerator=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(e){this.groups=[],this.always=!1,this.each=!1,this.context=void 0,this.type=e.type,this.target=e.target,this.propertyName=e.propertyName,this.constraints=e.constraints,this.constraintCls=e.constraintCls,this.validationTypeOptions=e.validationTypeOptions,e.validationOptions&&(this.message=e.validationOptions.message,this.groups=e.validationOptions.groups,this.always=e.validationOptions.always,this.each=e.validationOptions.each,this.context=e.validationOptions.context)};t.ValidationMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),e=Date.parse(e),isNaN(e)?null:new Date(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){(0,r.default)(e),(t=(0,o.default)(t,a)).allow_trailing_dot&&"."===e[e.length-1]&&(e=e.substring(0,e.length-1));for(var n=e.split("."),i=0;i63)return!1;if(t.require_tld){var s=n.pop();if(!n.length||!/^([a-z\u00a1-\uffff]{2,}|xn[a-z0-9-]{2,})$/i.test(s))return!1;if(/[\s\u2002-\u200B\u202F\u205F\u3000\uFEFF\uDB40\uDC20]/.test(s))return!1}for(var u,d=0;d=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(21),d=n(52),l=n(3);let c=class extends d.AbstractControlFlowReplacer{constructor(e,t,n){super(e,t,n)}getControlFlowStorageCallNode(e,t,n,r){const o=this.controlFlowCustomNodeFactory(u.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);o.initialize(e,t,n,r);const i=o.getNode()[0];if(!i||!l.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};c=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IControlFlowCustomNode)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],c),t.ExpressionWithOperatorControlFlowReplacer=c},function(e,t){!function(){"use strict";var t,n,r,o,i,a;function s(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(Math.floor((e-65536)/1024)+55296)+String.fromCharCode((e-65536)%1024+56320)}for(n={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,NonAsciiIdentifierPart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/},t={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},r=[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279],o=new Array(128),a=0;a<128;++a)o[a]=a>=97&&a<=122||a>=65&&a<=90||36===a||95===a;for(i=new Array(128),a=0;a<128;++a)i[a]=a>=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57||36===a||95===a;e.exports={isDecimalDigit:function(e){return 48<=e&&e<=57},isHexDigit:function(e){return 48<=e&&e<=57||97<=e&&e<=102||65<=e&&e<=70},isOctalDigit:function(e){return e>=48&&e<=55},isWhiteSpace:function(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&r.indexOf(e)>=0},isLineTerminator:function(e){return 10===e||13===e||8232===e||8233===e},isIdentifierStartES5:function(e){return e<128?o[e]:n.NonAsciiIdentifierStart.test(s(e))},isIdentifierPartES5:function(e){return e<128?i[e]:n.NonAsciiIdentifierPart.test(s(e))},isIdentifierStartES6:function(e){return e<128?o[e]:t.NonAsciiIdentifierStart.test(s(e))},isIdentifierPartES6:function(e){return e<128?i[e]:t.NonAsciiIdentifierPart.test(s(e))}}}()},function(e,t,n){var r=n(72),o=n(35),i=n(73).ArraySet,a=n(144).MappingList;function s(e){e||(e={}),this._file=o.getArg(e,"file",null),this._sourceRoot=o.getArg(e,"sourceRoot",null),this._skipValidation=o.getArg(e,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new a,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,n=new s({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var r={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(r.source=e.source,null!=t&&(r.source=o.relative(t,r.source)),r.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(r.name=e.name)),n.addMapping(r)})),e.sources.forEach((function(r){var i=r;null!==t&&(i=o.relative(t,r)),n._sources.has(i)||n._sources.add(i);var a=e.sourceContentFor(r);null!=a&&n.setSourceContent(r,a)})),n},s.prototype.addMapping=function(e){var t=o.getArg(e,"generated"),n=o.getArg(e,"original",null),r=o.getArg(e,"source",null),i=o.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,n,r,i),null!=r&&(r=String(r),this._sources.has(r)||this._sources.add(r)),null!=i&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:r,name:i})},s.prototype.setSourceContent=function(e,t){var n=e;null!=this._sourceRoot&&(n=o.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[o.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[o.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,n){var r=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');r=e.file}var a=this._sourceRoot;null!=a&&(r=o.relative(a,r));var s=new i,u=new i;this._mappings.unsortedForEach((function(t){if(t.source===r&&null!=t.originalLine){var i=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=i.source&&(t.source=i.source,null!=n&&(t.source=o.join(n,t.source)),null!=a&&(t.source=o.relative(a,t.source)),t.originalLine=i.line,t.originalColumn=i.column,null!=i.name&&(t.name=i.name))}var d=t.source;null==d||s.has(d)||s.add(d);var l=t.name;null==l||u.has(l)||u.add(l)}),this),this._sources=s,this._names=u,e.sources.forEach((function(t){var r=e.sourceContentFor(t);null!=r&&(null!=n&&(t=o.join(n,t)),null!=a&&(t=o.relative(a,t)),this.setSourceContent(t,r))}),this)},s.prototype._validateMapping=function(e,t,n,r){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||n||r)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:r}))},s.prototype._serializeMappings=function(){for(var e,t,n,i,a=0,s=1,u=0,d=0,l=0,c=0,p="",g=this._mappings.toArray(),h=0,f=g.length;h0){if(!o.compareByGeneratedPositionsInflated(t,g[h-1]))continue;e+=","}e+=r.encode(t.generatedColumn-a),a=t.generatedColumn,null!=t.source&&(i=this._sources.indexOf(t.source),e+=r.encode(i-c),c=i,e+=r.encode(t.originalLine-1-d),d=t.originalLine-1,e+=r.encode(t.originalColumn-u),u=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=r.encode(n-l),l=n)),p+=e}return p},s.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=o.relative(t,e));var n=o.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null}),this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.SourceMapGenerator=s},function(e,t,n){var r=n(143);t.encode=function(e){var t,n="",o=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&o,(o>>>=5)>0&&(t|=32),n+=r.encode(t)}while(o>0);return n},t.decode=function(e,t,n){var o,i,a,s,u=e.length,d=0,l=0;do{if(t>=u)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(i=r.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));o=!!(32&i),d+=(i&=31)<>1,1==(1&a)?-s:s),n.rest=t}},function(e,t,n){var r=n(35),o=Object.prototype.hasOwnProperty,i="undefined"!=typeof Map;function a(){this._array=[],this._set=i?new Map:Object.create(null)}a.fromArray=function(e,t){for(var n=new a,r=0,o=e.length;r=0)return t}else{var n=r.toSetString(e);if(o.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')},a.prototype.at=function(e){if(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},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(25),l=n(8),c=n(3),p=n(23);let g=r=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return c.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:c.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return c.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const n=e.length,o=[],i=[];for(let a=0;a!t.includes(n))}transformObjectExpressionNode(e,t){const n=e.properties,[r,o]=this.extractPropertiesToExpressionStatements(n,t),i=this.getHostStatement(e),a=this.getHostNodeWithStatements(e,i);return this.filterExtractedObjectExpressionProperties(e,o),d.NodeAppender.insertAfter(a,r,i),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const n=p.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,n),n}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=p.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};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.AbstractPropertiesExtractor=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},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=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&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},e.prototype.isNumber=function(e,t){if(void 0===t&&(t={}),"number"!=typeof e)return!1;if(e===1/0||e===-1/0)return t.allowInfinity;if(Number.isNaN(e))return t.allowNaN;if(t.maxDecimalPlaces){var n=0;if(e%1!=0&&(n=e.toString().split(".")[1].length),n>t.maxDecimalPlaces)return!1}return Number.isFinite(e)},e.prototype.isInt=function(e){return"number"==typeof e&&Number.isInteger(e)},e.prototype.isDivisibleBy=function(e,t){return"number"==typeof e&&"number"==typeof t&&this.validatorJs.isDivisibleBy(String(e),t)},e.prototype.isPositive=function(e){return"number"==typeof e&&e>0},e.prototype.isNegative=function(e){return"number"==typeof e&&e<0},e.prototype.min=function(e,t){return"number"==typeof e&&"number"==typeof t&&e>=t},e.prototype.max=function(e,t){return"number"==typeof e&&"number"==typeof t&&e<=t},e.prototype.minDate=function(e,t){return e instanceof Date&&e.getTime()>=t.getTime()},e.prototype.maxDate=function(e,t){return e instanceof Date&&e.getTime()<=t.getTime()},e.prototype.isBooleanString=function(e){return"string"==typeof e&&this.validatorJs.isBoolean(e)},e.prototype.isNumberString=function(e,t){return"string"==typeof e&&this.validatorJs.isNumeric(e,t)},e.prototype.contains=function(e,t){return"string"==typeof e&&this.validatorJs.contains(e,t)},e.prototype.notContains=function(e,t){return"string"==typeof e&&!this.validatorJs.contains(e,t)},e.prototype.isAlpha=function(e,t){return"string"==typeof e&&this.validatorJs.isAlpha(e,t)},e.prototype.isAlphanumeric=function(e,t){return"string"==typeof e&&this.validatorJs.isAlphanumeric(e,t)},e.prototype.isDecimal=function(e,t){return"string"==typeof e&&this.validatorJs.isDecimal(e,t)},e.prototype.isAscii=function(e){return"string"==typeof e&&this.validatorJs.isAscii(e)},e.prototype.isBase64=function(e){return"string"==typeof e&&this.validatorJs.isBase64(e)},e.prototype.isByteLength=function(e,t,n){return"string"==typeof e&&this.validatorJs.isByteLength(e,t,n)},e.prototype.isCreditCard=function(e){return"string"==typeof e&&this.validatorJs.isCreditCard(e)},e.prototype.isCurrency=function(e,t){return"string"==typeof e&&this.validatorJs.isCurrency(e,t)},e.prototype.isEmail=function(e,t){return"string"==typeof e&&this.validatorJs.isEmail(e,t)},e.prototype.isFQDN=function(e,t){return"string"==typeof e&&this.validatorJs.isFQDN(e,t)},e.prototype.isFullWidth=function(e){return"string"==typeof e&&this.validatorJs.isFullWidth(e)},e.prototype.isHalfWidth=function(e){return"string"==typeof e&&this.validatorJs.isHalfWidth(e)},e.prototype.isVariableWidth=function(e){return"string"==typeof e&&this.validatorJs.isVariableWidth(e)},e.prototype.isHexColor=function(e){return"string"==typeof e&&this.validatorJs.isHexColor(e)},e.prototype.isHexadecimal=function(e){return"string"==typeof e&&this.validatorJs.isHexadecimal(e)},e.prototype.isMACAddress=function(e){return"string"==typeof e&&this.validatorJs.isMACAddress(e)},e.prototype.isIP=function(e,t){return"string"==typeof e&&this.validatorJs.isIP(e,t)},e.prototype.isPort=function(e){return"string"==typeof e&&this.validatorJs.isPort(e)},e.prototype.isISBN=function(e,t){return"string"==typeof e&&this.validatorJs.isISBN(e,t)},e.prototype.isISIN=function(e){return"string"==typeof e&&this.validatorJs.isISIN(e)},e.prototype.isISO8601=function(e){return"string"==typeof e&&this.validatorJs.isISO8601(e)},e.prototype.isJSON=function(e){return"string"==typeof e&&this.validatorJs.isJSON(e)},e.prototype.isJWT=function(e){return"string"==typeof e&&this.validatorJs.isJWT(e)},e.prototype.isObject=function(e){return null!=e&&("object"==typeof e||"function"==typeof e)&&!Array.isArray(e)},e.prototype.isNotEmptyObject=function(e){return this.isObject(e)&&!this._isEmptyObject(e)},e.prototype.isLowercase=function(e){return"string"==typeof e&&this.validatorJs.isLowercase(e)},e.prototype.isMobilePhone=function(e,t){return"string"==typeof e&&this.validatorJs.isMobilePhone(e,t)},e.prototype.isPhoneNumber=function(e,t){try{var n=this.libPhoneNumber.phoneUtil.parseAndKeepRawInput(e,t);return this.libPhoneNumber.phoneUtil.isValidNumber(n)}catch(e){return!1}},e.prototype.isISO31661Alpha2=function(e){return"string"==typeof e&&this.validatorJs.isISO31661Alpha2(e)},e.prototype.isISO31661Alpha3=function(e){return"string"==typeof e&&this.validatorJs.isISO31661Alpha3(e)},e.prototype.isMongoId=function(e){return"string"==typeof e&&this.validatorJs.isMongoId(e)},e.prototype.isMultibyte=function(e){return"string"==typeof e&&this.validatorJs.isMultibyte(e)},e.prototype.isSurrogatePair=function(e){return"string"==typeof e&&this.validatorJs.isSurrogatePair(e)},e.prototype.isURL=function(e,t){return"string"==typeof e&&this.validatorJs.isURL(e,t)},e.prototype.isUUID=function(e,t){return"string"==typeof e&&this.validatorJs.isUUID(e,t)},e.prototype.isUppercase=function(e){return"string"==typeof e&&this.validatorJs.isUppercase(e)},e.prototype.length=function(e,t,n){return"string"==typeof e&&this.validatorJs.isLength(e,t,n)},e.prototype.minLength=function(e,t){return"string"==typeof e&&this.length(e,t)},e.prototype.maxLength=function(e,t){return"string"==typeof e&&this.length(e,0,t)},e.prototype.matches=function(e,t,n){return"string"==typeof e&&this.validatorJs.matches(e,t,n)},e.prototype.isMilitaryTime=function(e){return this.matches(e,/^([01]\d|2[0-3]):?([0-5]\d)$/)},e.prototype.isHash=function(e,t){return"string"==typeof e&&this.validatorJs.isHash(e,t)},e.prototype.isISSN=function(e,t){return"string"==typeof e&&this.validatorJs.isISSN(e,t)},e.prototype.arrayContains=function(e,t){return e instanceof Array&&t.every((function(t){return-1!==e.indexOf(t)}))},e.prototype.arrayNotContains=function(e,t){return e instanceof Array&&t.every((function(t){return-1===e.indexOf(t)}))},e.prototype.arrayNotEmpty=function(e){return e instanceof Array&&e.length>0},e.prototype.arrayMinSize=function(e,t){return e instanceof Array&&e.length>=t},e.prototype.arrayMaxSize=function(e,t){return e instanceof Array&&e.length<=t},e.prototype.arrayUnique=function(e){if(!(e instanceof Array))return!1;var t=e.filter((function(e,t,n){return n.indexOf(e)===t}));return e.length===t.length},e.prototype.isInstance=function(e,t){return t&&"function"==typeof t&&e instanceof t},e}();t.Validator=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.prototype.toString=function(e,t,n){var r=this;void 0===e&&(e=!1),void 0===t&&(t=!1),void 0===n&&(n="");var o=e?"":"",i=e?"":"",a=function(e){return" - property "+o+n+e+i+" has failed the following constraints: "+o+Object.keys(r.constraints).join(", ")+i+" \n"};if(t){var s=Number.isInteger(+this.property)?"["+this.property+"]":(n?".":"")+this.property;return this.constraints?a(s):this.children.map((function(t){return t.toString(e,!0,""+n+s)})).join("")}return"An instance of "+o+(this.target?this.target.constructor.name:"an object")+i+" has failed the validation:\n"+(this.constraints?a(this.property):"")+this.children.map((function(t){return t.toString(e,!0,r.property)})).join("")},e}();t.ValidationError=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),parseFloat(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";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){"object"===r(e)&&null!==e?e="function"==typeof e.toString?e.toString():"[object Object]":(null==e||isNaN(e)&&!e.length)&&(e="");return String(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){var n,r;(0,o.default)(e),"object"===i(t)?(n=t.min||0,r=t.max):(n=arguments[1],r=arguments[2]);var a=encodeURI(e).split(/%..|./).length-1;return a>=n&&(void 0===r||a<=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,t){(0,o.default)(e);var n=(t=t||{}).hasOwnProperty("allow_leading_zeroes")&&!t.allow_leading_zeroes?i:a,r=!t.hasOwnProperty("min")||e>=t.min,s=!t.hasOwnProperty("max")||e<=t.max,u=!t.hasOwnProperty("lt")||et.gt;return n.test(e)&&r&&s&&u&&d};var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/^(?:[-+]?(?:0|[1-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),i.test(e)},t.fullWidth=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;t.fullWidth=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,o.default)(e),i.test(e)},t.halfWidth=void 0;var r,o=(r=n(2))&&r.__esModule?r:{default:r};var i=/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;t.halfWidth=i},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=/^(0x|0h)?[0-9A-F]+$/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){(0,o.default)(e);var n=t?new RegExp("^[".concat(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+"),"g"):/^\s+/g;return e.replace(n,"")};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);var n=t?new RegExp("[".concat(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"]+$"),"g"):/\s+$/g;return e.replace(n,"")};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.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});var r=n(32),o=function(){function e(e,t,n){void 0===n&&(n=!1),this.target=e,this.name=t,this.async=n}return Object.defineProperty(e.prototype,"instance",{get:function(){return r.getFromContainer(this.target)},enumerable:!0,configurable:!0}),e}();t.ConstraintMetadata=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(41),o=n(27),i=n(42);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:r.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:o.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},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(3);let s=r=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return r.obfuscationEnableCommentRegExp.test(e.value)||r.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!a.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,n=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),n&&(this.obfuscationAllowedForNextNode=this.checkComments(n)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let n=this.obfuscationAllowedForCurrentNode;for(let o=0;o=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(4);let d=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,n]of this.storage)if(e===n)return t;return null}getLength(){return this.storage.size}getStorage(){return this.storage}getStorageId(){return this.storageId}has(e){return this.storage.has(e)}mergeWith(e,t=!1){this.storage=new Map([...this.storage,...e.getStorage()]),t&&(this.storageId=e.getStorageId())}set(e,t){this.storage.set(e,t)}};r([u.initializable(),o("design:type",String)],d.prototype,"storageId",void 0),r([u.initializable(),o("design:type",Map)],d.prototype,"storage",void 0),r([a.postConstruct(),o("design:type",Function),o("design:paramtypes",[]),o("design:returntype",void 0)],d.prototype,"initialize",null),d=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],d),t.MapStorage=d},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.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),d=n(1),l=s(n(348)),c=n(351),p=n(4);let g=r=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new c.Chance(this.getRawSeed())}getMathRandom(){return this.getRandomInteger(0,99999)/1e5}getRandomGenerator(){return this.randomGenerator}getRandomInteger(e,t){return this.getRandomGenerator().integer({min:e,max:t})}getRandomString(e,t=r.randomGeneratorPool){return this.getRandomGenerator().string({length:e,pool:t})}getInputSeed(){return this.options.seed.toString()}getRawSeed(){const e=this.getInputSeed();return`${e}`.split("|").length>1?e:`${e}|${l.default(this.sourceCode.getSourceCode())}`}};g.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",o([p.initializable(),i("design:type",Object)],g.prototype,"randomGenerator",void 0),o([u.postConstruct(),i("design:type",Function),i("design:paramtypes",[]),i("design:returntype",void 0)],g.prototype,"initialize",null),g=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.ISourceCode)),a(1,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object])],g),t.RandomGenerator=g},function(e,t){var n={utf8:{stringToBytes:function(e){return n.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(n.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],n=0;n{const t={};return((e,t={})=>{if(t.level>3||t.level<0)throw new Error("The `level` option should be an integer from 0 to 3");const n=o?o.level:0;e.level=void 0===t.level?n:t.level})(t,e),t.template=(...e)=>S(t.template,...e),Object.setPrototypeOf(t,p.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},t.template.Instance=l,t.template};function p(e){return c(e)}for(const[e,t]of Object.entries(r))d[e]={get(){const n=m(this,f(t.open,t.close,this._styler),this._isEmpty);return Object.defineProperty(this,e,{value:n}),n}};d.visible={get(){const e=m(this,this._styler,!0);return Object.defineProperty(this,"visible",{value:e}),e}};const g=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(const e of g)d[e]={get(){const{level:t}=this;return function(...n){const o=f(r.color[u[t]][e](...n),r.color.close,this._styler);return m(this,o,this._isEmpty)}}};for(const e of g){d["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const{level:t}=this;return function(...n){const o=f(r.bgColor[u[t]][e](...n),r.bgColor.close,this._styler);return m(this,o,this._isEmpty)}}}}const h=Object.defineProperties(()=>{},{...d,level:{enumerable:!0,get(){return this._generator.level},set(e){this._generator.level=e}}}),f=(e,t,n)=>{let r,o;return void 0===n?(r=e,o=t):(r=n.openAll+e,o=t+n.closeAll),{open:e,close:t,openAll:r,closeAll:o,parent:n}},m=(e,t,n)=>{const r=(...e)=>b(r,1===e.length?""+e[0]:e.join(" "));return r.__proto__=h,r._generator=e,r._styler=t,r._isEmpty=n,r},b=(e,t)=>{if(e.level<=0||!t)return e._isEmpty?"":t;let n=e._styler;if(void 0===n)return t;const{openAll:r,closeAll:o}=n;if(-1!==t.indexOf(""))for(;void 0!==n;)t=a(t,n.close,n.open),n=n.parent;const i=t.indexOf("\n");return-1!==i&&(t=s(t,o,r,i)),r+t+o};let y;const S=(e,...t)=>{const[r]=t;if(!Array.isArray(r))return t.join(" ");const o=t.slice(1),i=[r.raw[0]];for(let e=1;e1&&(o-=1)),[360*o,100*i,100*d]},i.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const o=i.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[o,100*a,100*r]},i.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.min(1-t,1-n,1-r);return[100*((1-t-o)/(1-o)||0),100*((1-n-o)/(1-o)||0),100*((1-r-o)/(1-o)||0),100*o]},i.rgb.keyword=function(e){const t=o[e];if(t)return t;let n,i=1/0;for(const t of Object.keys(r)){const o=r[t],u=(s=o,((a=e)[0]-s[0])**2+(a[1]-s[1])**2+(a[2]-s[2])**2);u.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,[100*(.4124*t+.3576*n+.1805*r),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},i.rgb.lab=function(e){const t=i.rgb.xyz(e);let n=t[0],r=t[1],o=t[2];return n/=95.047,r/=100,o/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,o=o>.008856?o**(1/3):7.787*o+16/116,[116*r-16,500*(n-r),200*(r-o)]},i.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let o,i,a;if(0===n)return a=255*r,[a,a,a];o=r<.5?r*(1+n):r+n-r*n;const s=2*r-o,u=[0,0,0];for(let e=0;e<3;e++)i=t+1/3*-(e-1),i<0&&i++,i>1&&i--,a=6*i<1?s+6*(o-s)*i:2*i<1?o:3*i<2?s+(o-s)*(2/3-i)*6:s,u[e]=255*a;return u},i.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,o=n;const i=Math.max(r,.01);return r*=2,n*=r<=1?r:2-r,o*=i<=1?i:2-i,[t,100*(0===r?2*o/(i+o):2*n/(r+n)),100*((r+n)/2)]},i.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const o=Math.floor(t)%6,i=t-Math.floor(t),a=255*r*(1-n),s=255*r*(1-n*i),u=255*r*(1-n*(1-i));switch(r*=255,o){case 0:return[r,u,a];case 1:return[s,r,a];case 2:return[a,r,u];case 3:return[a,s,r];case 4:return[u,a,r];case 5:return[r,a,s]}},i.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,o=Math.max(r,.01);let i,a;a=(2-n)*r;const s=(2-n)*o;return i=n*o,i/=s<=1?s:2-s,i=i||0,a/=2,[t,100*i,100*a]},i.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const o=n+r;let i;o>1&&(n/=o,r/=o);const a=Math.floor(6*t),s=1-r;i=6*t-a,0!=(1&a)&&(i=1-i);const u=n+i*(s-n);let d,l,c;switch(a){default:case 6:case 0:d=s,l=u,c=n;break;case 1:d=u,l=s,c=n;break;case 2:d=n,l=s,c=u;break;case 3:d=n,l=u,c=s;break;case 4:d=u,l=n,c=s;break;case 5:d=s,l=n,c=u}return[255*d,255*l,255*c]},i.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,o=e[3]/100;return[255*(1-Math.min(1,t*(1-o)+o)),255*(1-Math.min(1,n*(1-o)+o)),255*(1-Math.min(1,r*(1-o)+o))]},i.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let o,i,a;return o=3.2406*t+-1.5372*n+-.4986*r,i=-.9689*t+1.8758*n+.0415*r,a=.0557*t+-.204*n+1.057*r,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,a=a>.0031308?1.055*a**(1/2.4)-.055:12.92*a,o=Math.min(Math.max(0,o),1),i=Math.min(Math.max(0,i),1),a=Math.min(Math.max(0,a),1),[255*o,255*i,255*a]},i.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];return t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,[116*n-16,500*(t-n),200*(n-r)]},i.lab.xyz=function(e){let t,n,r;n=(e[0]+16)/116,t=e[1]/500+n,r=n-e[2]/200;const o=n**3,i=t**3,a=r**3;return n=o>.008856?o:(n-16/116)/7.787,t=i>.008856?i:(t-16/116)/7.787,r=a>.008856?a:(r-16/116)/7.787,t*=95.047,n*=100,r*=108.883,[t,n,r]},i.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let o;return o=360*Math.atan2(r,n)/2/Math.PI,o<0&&(o+=360),[t,Math.sqrt(n*n+r*r),o]},i.lch.lab=function(e){const t=e[0],n=e[1],r=e[2]/360*2*Math.PI;return[t,n*Math.cos(r),n*Math.sin(r)]},i.rgb.ansi16=function(e,t=null){const[n,r,o]=e;let a=null===t?i.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),0===a)return 30;let s=30+(Math.round(o/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return 2===a&&(s+=60),s},i.hsv.ansi16=function(e){return i.rgb.ansi16(i.hsv.rgb(e),e[2])},i.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},i.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},i.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;return e-=16,[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},i.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},i.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];3===t[0].length&&(n=n.split("").map(e=>e+e).join(""));const r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},i.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,o=Math.max(Math.max(t,n),r),i=Math.min(Math.min(t,n),r),a=o-i;let s,u;return s=a<1?i/(1-a):0,u=a<=0?0:o===t?(n-r)/a%6:o===n?2+(r-t)/a:4+(t-n)/a,u/=6,u%=1,[360*u,100*a,100*s]},i.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let o=0;return r<1&&(o=(n-.5*r)/(1-r)),[e[0],100*r,100*o]},i.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let o=0;return r<1&&(o=(n-r)/(1-r)),[e[0],100*r,100*o]},i.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];const o=[0,0,0],i=t%1*6,a=i%1,s=1-a;let u=0;switch(Math.floor(i)){case 0:o[0]=1,o[1]=a,o[2]=0;break;case 1:o[0]=s,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=a;break;case 3:o[0]=0,o[1]=s,o[2]=1;break;case 4:o[0]=a,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=s}return u=(1-n)*r,[255*(n*o[0]+u),255*(n*o[1]+u),255*(n*o[2]+u)]},i.hcg.hsv=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);let r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},i.hcg.hsl=function(e){const t=e[1]/100,n=e[2]/100*(1-t)+.5*t;let r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},i.hcg.hwb=function(e){const t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},i.hwb.hcg=function(e){const t=e[1]/100,n=1-e[2]/100,r=n-t;let o=0;return r<1&&(o=(n-r)/(1-r)),[e[0],100*r,100*o]},i.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},i.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},i.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},i.gray.hsl=function(e){return[0,0,e[0]]},i.gray.hsv=i.gray.hsl,i.gray.hwb=function(e){return[0,100,e[0]]},i.gray.cmyk=function(e){return[0,0,0,e[0]]},i.gray.lab=function(e){return[e[0],0,0]},i.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},i.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(33);e.exports=r.JavaScriptObfuscator},function(e,t,n){(function(e,t){ /*! ***************************************************************************** Copyright (C) Microsoft. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use @@ -50,5 +50,5 @@ e.exports=function(e){return null!=e&&(n(e)||function(e){return"function"==typeo * @author Feross Aboukhadijeh * @license MIT */ -var r=n(353),o=n(354),i=n(355);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return k(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(e).length;default:if(r)return k(e).length;t=(""+t).toLowerCase(),r=!0}}function f(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return P(this,t,n);case"utf8":case"utf-8":return T(this,t,n);case"ascii":return I(this,t,n);case"latin1":case"binary":return D(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function b(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,o);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):y(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,o){var i,a=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function d(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-u),i=n;i>=0;i--){for(var c=!0,p=0;po&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function T(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:d>223?3:d>191?2:1;if(o+c<=n)switch(c){case 1:d<128&&(l=d);break;case 2:128==(192&(i=e[o+1]))&&(u=(31&d)<<6|63&i)>127&&(l=u);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(u=(15&d)<<12|(63&i)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(u=(15&d)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,c=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=c}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,o){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),d=this.slice(r,o),l=e.slice(t,n),c=0;co)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return S(this,e,t,n);case"utf8":case"utf-8":return C(this,e,t,n);case"ascii":return _(this,e,t,n);case"latin1":case"binary":return N(this,e,t,n);case"base64":return A(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return v(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function I(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,n,r,o,i){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function F(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function $(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function x(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function w(e,t,n,r,i){return i||x(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function L(e,t,n,r,i){return i||x(e,0,n,8),o.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},u.prototype.readUInt8=function(e,t){return t||O(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||O(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||O(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||O(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||O(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},u.prototype.readInt8=function(e,t){return t||O(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||O(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||O(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||O(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||O(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||O(e,4,this.length),o.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||O(e,4,this.length),o.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||O(e,8,this.length),o.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||O(e,8,this.length),o.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||R(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):F(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):F(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):$(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):F(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):F(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):$(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return w(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return w(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return L(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return L(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!u.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function j(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(B,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function U(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(48))},function(e,t,n){"use strict";t.byteLength=function(e){var t=d(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,r=d(e),a=r[0],s=r[1],u=new i(function(e,t,n){return 3*(t+n)/4-n}(0,a,s)),l=0,c=s>0?a-4:a;for(n=0;n>16&255,u[l++]=t>>8&255,u[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,u[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t);return u},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,u=(1<>1,l=-7,c=n?o-1:0,p=n?-1:1,g=e[t+c];for(c+=p,i=g&(1<<-l)-1,g>>=-l,l+=s;l>0;i=256*i+e[t+c],c+=p,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+c],c+=p,l-=8);if(0===i)i=1-d;else{if(i===u)return a?NaN:1/0*(g?-1:1);a+=Math.pow(2,r),i-=d}return(g?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,u,d=8*i-o-1,l=(1<>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,g=r?0:i-1,h=r?1:-1,f=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+c>=1?p/u:p*Math.pow(2,1-c))*u>=2&&(a++,u/=2),a+c>=l?(s=0,a=l):a+c>=1?(s=(t*u-1)*Math.pow(2,o),a+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,o),a=0));o>=8;e[n+g]=255&s,g+=h,s/=256,o-=8);for(a=a<0;e[n+g]=255&a,g+=h,a/=256,d-=8);e[n+g-h]|=128*f}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},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};Object.defineProperty(t,"__esModule",{value:!0});let o=class{constructor(){this.stringsCache=new Map}encode(e,t){const n=`${e}-${String(t)}`;if(this.stringsCache.has(n))return this.stringsCache.get(n);const r=new RegExp("[\\s\\S]","g"),o=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const u=e.replace(r,e=>t||o.exec(e)?(i.exec(e)?(a="\\x",s="00"):(a="\\u",s="0000"),`${a}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(n,u),u}};o=r([n(0).injectable()],o),t.EscapeSequenceEncoder=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};Object.defineProperty(t,"__esModule",{value:!0});let o=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],n={};for(const r of e)void 0===n[r]&&this.visit(t,n,r);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const n of t){for(let t=n.length-1;t>=0;t-=1)n[t]===e&&n.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const n of e)this.hasPrecedents(n)||t.push(n);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const n=this.graph.get(t);return n&&!n.includes(e)&&n.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,n){const r=t[n];if("visiting"===r)throw new Error(`Detected cycle involving node: ${n}`);if(r)return;t[n]="visiting";const o=this.getPrecedents(n);for(const n of o)this.visit(e,t,n);t[n]="ok",e.push(n)}};o=r([n(0).injectable()],o),t.LevelledTopologicalSorter=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);let u=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),n=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of n)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const n=[];for(const r of e){const e=t[r].runAfter;if(e&&e.length)for(const o of e){!t[o]?n.push([r,null]):n.push([o,r])}else n.push([r,null])}return n}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.ILevelledTopologicalSorter)),o("design:paramtypes",[Object])],u),t.NodeTransformerNamesGroupsBuilder=u},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(53)),c=n(360),p=n(24),g=n(6),h=n(361),f=n(3);let m=r=class{constructor(e,t,n,r,o){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=n,this.logger=r,this.options=o}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.3"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const n=this.parseCode(e),r=this.transformAstTree(n),o=this.generateCode(e,r),i=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(o)}parseCode(e){return h.EspreeFacade.parse(e,r.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,g.TransformationStage.Initializing),!f.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,g.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,g.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,g.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,g.TransformationStage.Converting),e=this.runTransformationStage(e,g.TransformationStage.Obfuscating),e=this.runTransformationStage(e,g.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const n=Object.assign({},r.escodegenParams);this.options.sourceMap&&(n.sourceMap=this.options.inputFileName||"sourceMap",n.sourceContent=e);const o=l.generate(t,Object.assign(Object.assign({},n),{format:{compact:this.options.compact}}));return o.map=o.map?o.map.toString():"",o}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,r.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[p.NodeTransformer.BlockStatementControlFlowTransformer,p.NodeTransformer.ClassDeclarationTransformer,p.NodeTransformer.CommentsTransformer,p.NodeTransformer.CustomNodesTransformer,p.NodeTransformer.DeadCodeInjectionTransformer,p.NodeTransformer.EvalCallExpressionTransformer,p.NodeTransformer.FunctionControlFlowTransformer,p.NodeTransformer.CatchClauseTransformer,p.NodeTransformer.FunctionDeclarationTransformer,p.NodeTransformer.FunctionTransformer,p.NodeTransformer.ImportDeclarationTransformer,p.NodeTransformer.LabeledStatementTransformer,p.NodeTransformer.LiteralTransformer,p.NodeTransformer.MemberExpressionTransformer,p.NodeTransformer.MetadataTransformer,p.NodeTransformer.MethodDefinitionTransformer,p.NodeTransformer.ObfuscatingGuardsTransformer,p.NodeTransformer.ObjectExpressionKeysTransformer,p.NodeTransformer.ObjectExpressionTransformer,p.NodeTransformer.ParentificationTransformer,p.NodeTransformer.SplitStringTransformer,p.NodeTransformer.TemplateLiteralTransformer,p.NodeTransformer.VariableDeclarationTransformer,p.NodeTransformer.VariablePreserveTransformer],m=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.ITransformersRunner)),a(1,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(2,u.inject(d.ServiceIdentifiers.Factory__IObfuscatedCode)),a(3,u.inject(d.ServiceIdentifiers.ILogger)),a(4,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},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},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(74)),a=o(n(99));class s{static parse(e,t){const n=s.sourceTypes.length;for(let r=0;r"),u=`...${r.substring(o,i).replace(/^\s+/,"")}...`;throw new Error(`Line ${n.line}: ${t}\n${a} ${u}`)}}t.EspreeFacade=s,s.colorError=a.default.red,s.nearestSymbolsCount=15,s.sourceTypes=["script","module"]},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(364));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(363)(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(100),o=n(366),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(100);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)}},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=s(n(99)),c=n(371);let p=r=class{constructor(e){this.options=e}static log(e,t,n,r){const o=e(`\n${t} ${n}`);console.log(o,r||"")}info(e,t){this.options.log&&r.log(r.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&r.log(r.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&r.log(r.colorWarn,c.LoggingPrefix.Base,e,t)}};p.colorInfo=l.default.cyan,p.colorSuccess=l.default.green,p.colorWarn=l.default.yellow,p=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object])],p),t.Logger=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},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.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(373));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=r([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,o="~";function i(){}function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function s(e,t,n,r,i){if("function"!=typeof n)throw new TypeError("The listener must be a function");var s=new a(n,r||e,i),u=o?o+t:t;return e._events[u]?e._events[u].fn?e._events[u]=[e._events[u],s]:e._events[u].push(s):(e._events[u]=s,e._eventsCount++),e}function u(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function d(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(o=!1)),d.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)r.call(e,t)&&n.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},d.prototype.listeners=function(e){var t=o?o+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var r=0,i=n.length,a=new Array(i);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(4),d=n(42);let l=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case d.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case d.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};r([u.initializable(),o("design:type",String)],l.prototype,"obfuscatedCode",void 0),r([u.initializable(),o("design:type",String)],l.prototype,"sourceMap",void 0),l=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.ICryptUtils)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],l),t.ObfuscatedCode=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},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(10)),l=n(377),c=n(3),p=n(13);let g=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,n){if(!t.length)return e;let r,o;this.cachedNodeTransformersData.has(t)?[r,o]=this.cachedNodeTransformersData.get(t):(r=this.buildNormalizedNodeTransformers(t),o=this.nodeTransformerNamesGroupsBuilder.build(r),this.cachedNodeTransformersData.set(t,[r,o]));for(const t of o){const o=[],i=[];for(const e of t){const t=r[e].getVisitor(n);t&&(t.enter&&o.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(o.length||i.length)&&d.replace(e,{enter:this.mergeVisitorsForDirection(o,l.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,l.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const n=e.length;return n?(r,o)=>{if(p.NodeMetadata.isIgnoredNode(r))return d.VisitorOption.Skip;for(let i=0;ie}};g=r([s.injectable(),i(0,s.inject(u.ServiceIdentifiers.Factory__INodeTransformer)),i(1,s.inject(u.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o("design:paramtypes",[Function,Object])],g),t.TransformersRunner=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))}])})); +var r=n(353),o=n(354),i=n(355);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return k(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(e).length;default:if(r)return k(e).length;t=(""+t).toLowerCase(),r=!0}}function f(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return P(this,t,n);case"utf8":case"utf-8":return T(this,t,n);case"ascii":return I(this,t,n);case"latin1":case"binary":return D(this,t,n);case"base64":return E(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function b(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,o);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):y(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,o){var i,a=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function d(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var l=-1;for(i=n;is&&(n=s-u),i=n;i>=0;i--){for(var c=!0,p=0;po&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function E(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function T(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:d>223?3:d>191?2:1;if(o+c<=n)switch(c){case 1:d<128&&(l=d);break;case 2:128==(192&(i=e[o+1]))&&(u=(31&d)<<6|63&i)>127&&(l=u);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(u=(15&d)<<12|(63&i)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(u=(15&d)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,c=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=c}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,o){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),d=this.slice(r,o),l=e.slice(t,n),c=0;co)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return S(this,e,t,n);case"utf8":case"utf-8":return C(this,e,t,n);case"ascii":return _(this,e,t,n);case"latin1":case"binary":return N(this,e,t,n);case"base64":return A(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return v(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function I(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,n,r,o,i){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function F(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function $(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function x(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function w(e,t,n,r,i){return i||x(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function L(e,t,n,r,i){return i||x(e,0,n,8),o.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},u.prototype.readUInt8=function(e,t){return t||O(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||O(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||O(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||O(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||O(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},u.prototype.readInt8=function(e,t){return t||O(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||O(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||O(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||O(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||O(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||O(e,4,this.length),o.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||O(e,4,this.length),o.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||O(e,8,this.length),o.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||O(e,8,this.length),o.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||R(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):F(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):F(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):$(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):F(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):F(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):$(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):$(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return w(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return w(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return L(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return L(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!u.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function j(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(B,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function U(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(48))},function(e,t,n){"use strict";t.byteLength=function(e){var t=d(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,r=d(e),a=r[0],s=r[1],u=new i(function(e,t,n){return 3*(t+n)/4-n}(0,a,s)),l=0,c=s>0?a-4:a;for(n=0;n>16&255,u[l++]=t>>8&255,u[l++]=255&t;2===s&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,u[l++]=255&t);1===s&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t);return u},t.fromByteArray=function(e){for(var t,n=e.length,o=n%3,i=[],a=0,s=n-o;as?s:a+16383));1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return i.join("")};for(var r=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var o,i,a=[],s=t;s>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return a.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,o){var i,a,s=8*o-r-1,u=(1<>1,l=-7,c=n?o-1:0,p=n?-1:1,g=e[t+c];for(c+=p,i=g&(1<<-l)-1,g>>=-l,l+=s;l>0;i=256*i+e[t+c],c+=p,l-=8);for(a=i&(1<<-l)-1,i>>=-l,l+=r;l>0;a=256*a+e[t+c],c+=p,l-=8);if(0===i)i=1-d;else{if(i===u)return a?NaN:1/0*(g?-1:1);a+=Math.pow(2,r),i-=d}return(g?-1:1)*a*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var a,s,u,d=8*i-o-1,l=(1<>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,g=r?0:i-1,h=r?1:-1,f=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+c>=1?p/u:p*Math.pow(2,1-c))*u>=2&&(a++,u/=2),a+c>=l?(s=0,a=l):a+c>=1?(s=(t*u-1)*Math.pow(2,o),a+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,o),a=0));o>=8;e[n+g]=255&s,g+=h,s/=256,o-=8);for(a=a<0;e[n+g]=255&a,g+=h,a/=256,d-=8);e[n+g-h]|=128*f}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},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};Object.defineProperty(t,"__esModule",{value:!0});let o=class{constructor(){this.stringsCache=new Map}encode(e,t){const n=`${e}-${String(t)}`;if(this.stringsCache.has(n))return this.stringsCache.get(n);const r=new RegExp("[\\s\\S]","g"),o=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const u=e.replace(r,e=>t||o.exec(e)?(i.exec(e)?(a="\\x",s="00"):(a="\\u",s="0000"),`${a}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(n,u),u}};o=r([n(0).injectable()],o),t.EscapeSequenceEncoder=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};Object.defineProperty(t,"__esModule",{value:!0});let o=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],n={};for(const r of e)void 0===n[r]&&this.visit(t,n,r);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const n of t){for(let t=n.length-1;t>=0;t-=1)n[t]===e&&n.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const n of e)this.hasPrecedents(n)||t.push(n);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const n=this.graph.get(t);return n&&!n.includes(e)&&n.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,n){const r=t[n];if("visiting"===r)throw new Error(`Detected cycle involving node: ${n}`);if(r)return;t[n]="visiting";const o=this.getPrecedents(n);for(const n of o)this.visit(e,t,n);t[n]="ok",e.push(n)}};o=r([n(0).injectable()],o),t.LevelledTopologicalSorter=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);let u=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),n=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of n)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const n=[];for(const r of e){const e=t[r].runAfter;if(e&&e.length)for(const o of e){!t[o]?n.push([r,null]):n.push([o,r])}else n.push([r,null])}return n}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.ILevelledTopologicalSorter)),o("design:paramtypes",[Object])],u),t.NodeTransformerNamesGroupsBuilder=u},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(53)),c=n(360),p=n(24),g=n(6),h=n(361),f=n(3);let m=r=class{constructor(e,t,n,r,o){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=n,this.logger=r,this.options=o}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.4"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const n=this.parseCode(e),r=this.transformAstTree(n),o=this.generateCode(e,r),i=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(o)}parseCode(e){return h.EspreeFacade.parse(e,r.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,g.TransformationStage.Initializing),!f.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,g.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,g.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,g.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,g.TransformationStage.Converting),e=this.runTransformationStage(e,g.TransformationStage.Obfuscating),e=this.runTransformationStage(e,g.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const n=Object.assign({},r.escodegenParams);this.options.sourceMap&&(n.sourceMap=this.options.inputFileName||"sourceMap",n.sourceContent=e);const o=l.generate(t,Object.assign(Object.assign({},n),{format:{compact:this.options.compact}}));return o.map=o.map?o.map.toString():"",o}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,r.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[p.NodeTransformer.BlockStatementControlFlowTransformer,p.NodeTransformer.ClassDeclarationTransformer,p.NodeTransformer.CommentsTransformer,p.NodeTransformer.CustomNodesTransformer,p.NodeTransformer.DeadCodeInjectionTransformer,p.NodeTransformer.EvalCallExpressionTransformer,p.NodeTransformer.FunctionControlFlowTransformer,p.NodeTransformer.CatchClauseTransformer,p.NodeTransformer.FunctionDeclarationTransformer,p.NodeTransformer.FunctionTransformer,p.NodeTransformer.ImportDeclarationTransformer,p.NodeTransformer.LabeledStatementTransformer,p.NodeTransformer.LiteralTransformer,p.NodeTransformer.MemberExpressionTransformer,p.NodeTransformer.MetadataTransformer,p.NodeTransformer.MethodDefinitionTransformer,p.NodeTransformer.ObfuscatingGuardsTransformer,p.NodeTransformer.ObjectExpressionKeysTransformer,p.NodeTransformer.ObjectExpressionTransformer,p.NodeTransformer.ParentificationTransformer,p.NodeTransformer.SplitStringTransformer,p.NodeTransformer.TemplateLiteralTransformer,p.NodeTransformer.VariableDeclarationTransformer,p.NodeTransformer.VariablePreserveTransformer],m=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.ITransformersRunner)),a(1,u.inject(d.ServiceIdentifiers.IRandomGenerator)),a(2,u.inject(d.ServiceIdentifiers.Factory__IObfuscatedCode)),a(3,u.inject(d.ServiceIdentifiers.ILogger)),a(4,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},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},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(n(74)),a=o(n(99));class s{static parse(e,t){const n=s.sourceTypes.length;for(let r=0;r"),u=`...${r.substring(o,i).replace(/^\s+/,"")}...`;throw new Error(`Line ${n.line}: ${t}\n${a} ${u}`)}}t.EspreeFacade=s,s.colorError=a.default.red,s.nearestSymbolsCount=15,s.sourceTypes=["script","module"]},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(364));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(363)(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(100),o=n(366),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(100);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)}},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=s(n(99)),c=n(371);let p=r=class{constructor(e){this.options=e}static log(e,t,n,r){const o=e(`\n${t} ${n}`);console.log(o,r||"")}info(e,t){this.options.log&&r.log(r.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&r.log(r.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&r.log(r.colorWarn,c.LoggingPrefix.Base,e,t)}};p.colorInfo=l.default.cyan,p.colorSuccess=l.default.green,p.colorWarn=l.default.yellow,p=r=o([u.injectable(),a(0,u.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Object])],p),t.Logger=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},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.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(373));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=r([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,o="~";function i(){}function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function s(e,t,n,r,i){if("function"!=typeof n)throw new TypeError("The listener must be a function");var s=new a(n,r||e,i),u=o?o+t:t;return e._events[u]?e._events[u].fn?e._events[u]=[e._events[u],s]:e._events[u].push(s):(e._events[u]=s,e._eventsCount++),e}function u(e,t){0==--e._eventsCount?e._events=new i:delete e._events[t]}function d(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(o=!1)),d.prototype.eventNames=function(){var e,t,n=[];if(0===this._eventsCount)return n;for(t in e=this._events)r.call(e,t)&&n.push(o?t.slice(1):t);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(e)):n},d.prototype.listeners=function(e){var t=o?o+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var r=0,i=n.length,a=new Array(i);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(4),d=n(42);let l=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case d.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case d.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};r([u.initializable(),o("design:type",String)],l.prototype,"obfuscatedCode",void 0),r([u.initializable(),o("design:type",String)],l.prototype,"sourceMap",void 0),l=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.ICryptUtils)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],l),t.ObfuscatedCode=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},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(10)),l=n(377),c=n(3),p=n(13);let g=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,n){if(!t.length)return e;let r,o;this.cachedNodeTransformersData.has(t)?[r,o]=this.cachedNodeTransformersData.get(t):(r=this.buildNormalizedNodeTransformers(t),o=this.nodeTransformerNamesGroupsBuilder.build(r),this.cachedNodeTransformersData.set(t,[r,o]));for(const t of o){const o=[],i=[];for(const e of t){const t=r[e].getVisitor(n);t&&(t.enter&&o.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(o.length||i.length)&&d.replace(e,{enter:this.mergeVisitorsForDirection(o,l.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,l.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const n=e.length;return n?(r,o)=>{if(p.NodeMetadata.isIgnoredNode(r))return d.VisitorOption.Skip;for(let i=0;ie}};g=r([s.injectable(),i(0,s.inject(u.ServiceIdentifiers.Factory__INodeTransformer)),i(1,s.inject(u.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o("design:paramtypes",[Function,Object])],g),t.TransformersRunner=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))}])})); //# sourceMappingURL=index.browser.js.map \ No newline at end of file diff --git a/dist/index.cli.js b/dist/index.cli.js index 8c2ebb09e..5f1781ac2 100644 --- a/dist/index.cli.js +++ b/dist/index.cli.js @@ -21,5 +21,5 @@ 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. */ -require("source-map-support").install(),module.exports=function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=200)}([function(e,t){e.exports=require("inversify")},function(e,t){e.exports=require("tslib")},function(e,t,r){"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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(13);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentPatternNode(e){return e.type===o.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===o.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===o.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===o.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===o.NodeType.CallExpression}static isCatchClauseNode(e){return e.type===o.NodeType.CatchClause}static isClassDeclarationNode(e){return e.type===o.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===o.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===o.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===o.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===o.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return n.isFunctionDeclarationNode(e)||n.isFunctionExpressionNode(e)||n.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===o.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===o.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===o.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===o.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===o.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const r=n.isLabeledStatementNode(t)&&t.label===e,o=n.isContinueStatementNode(t)&&t.label===e,a=n.isBreakStatementNode(t)&&t.label===e;return r||o||a}static isLabeledStatementNode(e){return e.type===o.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===o.NodeType.Literal}static isMemberExpressionNode(e){return e.type===o.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===o.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return n.isProgramNode(e)||n.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return n.isNodeWithLexicalScope(e)||n.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return n.isProgramNode(e)||n.isBlockStatementNode(e)&&n.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return n.isProgramNode(e)||n.isBlockStatementNode(e)||n.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===o.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===o.NodeType.ObjectExpression}static isProgramNode(e){return e.type===o.NodeType.Program}static isPropertyNode(e){return e.type===o.NodeType.Property}static parentNodeIsPropertyNode(e,t){return n.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return n.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return n.isMethodDefinitionNode(t)&&!t.computed}static isReplaceableIdentifierNode(e,t){return n.isIdentifierNode(e)&&!n.parentNodeIsPropertyNode(e,t)&&!n.parentNodeIsMemberExpressionNode(e,t)&&!n.parentNodeIsMethodDefinitionNode(e,t)&&!n.isLabelIdentifierNode(e,t)}static isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSuperNode(e){return e.type===o.NodeType.Super}static isSwitchCaseNode(e){return e.type===o.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===o.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===o.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===o.NodeType.UnaryExpression}static isUseStrictOperator(e){return n.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===o.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===o.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===o.NodeType.WhileStatement}}t.NodeGuards=n,n.nodesWithLexicalStatements=[o.NodeType.ArrowFunctionExpression,o.NodeType.FunctionDeclaration,o.NodeType.FunctionExpression,o.NodeType.MethodDefinition]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o={configurable:!0,enumerable:!0};function n(e,t,r){Reflect.hasMetadata(e,r)||Reflect.defineMetadata(e,t,r)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(r,a)=>{const i=r[e];if(!i||"function"!=typeof i)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return n("_initialized",!1,r),n("_initializablePropertiesSet",new Set,r),n("_wrappedMethodsSet",new Set,r),function(e,t){const r=Object.getOwnPropertyNames(e),n=[t,"constructor"];r.forEach(r=>{const a=Reflect.getMetadata("_initializablePropertiesSet",e),i=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||i.has(r))return;if("function"!=typeof e[r])return;const s=Object.getOwnPropertyDescriptor(e,r)||o,c=s.value;Object.defineProperty(e,r,Object.assign(Object.assign({},s),{value:function(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return c.apply(this,arguments)}})),i.add(r)})}(r,e),function(e,t,r){const n=Object.getOwnPropertyDescriptor(e,t)||o,a=n.value;Object.defineProperty(e,t,Object.assign(Object.assign({},n),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,a),function(e,t){Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const r=`_${t.toString()}`,n=Object.getOwnPropertyDescriptor(e,r)||o;return Object.defineProperty(e,t,Object.assign(Object.assign({},n),{get:function(){if(void 0===this[r])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[r]},set:function(e){this[r]=e}})),n}(r,a)}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(36)),a=o.__importStar(r(43)),i=o.__importStar(r(10)),s=r(3),c=r(11);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=a.parse(e,{sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),c.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+n.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.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(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(d.cloneRecursive):"object"==typeof o?d.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=d},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.randomGenerator=e,this.options=t}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractNodeTransformer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1).__importStar(r(36)),n=r(13);class a{static programNode(e=[]){return{type:n.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:n.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,r){return{type:n.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:n.NodeType.BinaryExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:n.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:n.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:n.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:n.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:n.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:n.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,r){return{type:n.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:n.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,r){return Object.assign(Object.assign({type:n.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:n.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:n.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:n.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:n.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:n.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:n.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:n.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:n.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:n.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:n.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,r=!0){return{type:n.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:n.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:n.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:n.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:n.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(86),c=r(87);let d=o=class{constructor(e,t,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}};d.globalVariableTemplateFunctions=[s.GlobalVariableTemplate1(),c.GlobalVariableTemplate2()],d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.AbstractCustomNode=d},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{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===o.get(e,"ignoredNode")}static isRenamedIdentifier(e){return!0===o.get(e,"renamedIdentifier")}static isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t){e.exports=require("string-template")},function(e,t,r){"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.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",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.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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(57),i=r(62),s=r(70),c=r(79),d=r(125),l=r(126),u=r(130),p=r(131),m=r(145),f=r(163),g=r(174),N=r(179),_=r(187),h=r(55),b=r(190),y=r(192),S=r(193),I=r(194);t.InversifyContainerFacade=class{constructor(){this.container=new o.Container}static getFactory(e){return t=>r=>t.container.getNamed(e,r)}static getCacheFactory(e){return t=>{const r=new Map;return o=>{if(r.has(o))return r.get(o);const n=t.container.getNamed(e,o);return r.set(o,n),n}}}static getConstructorFactory(e,...t){return r=>{const o=new Map,n=[];return a=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(a))return new(o.get(a))(...n);const i=r.container.getNamed(e,a);return o.set(a,i),new i(...n)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,r){this.container.bind(n.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new S.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(h.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(_.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(I.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(y.ObfuscatedCode),this.container.bind(n.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,r)=>{const o=e.container.get(n.ServiceIdentifiers.IObfuscatedCode);return o.initialize(t,r),o}),this.container.bind(n.ServiceIdentifiers.IObfuscationEventEmitter).to(b.ObfuscationEventEmitter).inSingletonScope(),this.container.load(a.analyzersModule),this.container.load(i.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(u.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(f.preparingTransformersModule),this.container.load(g.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionFunctionNode="BinaryExpressionFunctionNode",e.BlockStatementControlFlowFlatteningNode="BlockStatementControlFlowFlatteningNode",e.CallExpressionControlFlowStorageCallNode="CallExpressionControlFlowStorageCallNode",e.CallExpressionFunctionNode="CallExpressionFunctionNode",e.ControlFlowStorageNode="ControlFlowStorageNode",e.ExpressionWithOperatorControlFlowStorageCallNode="ExpressionWithOperatorControlFlowStorageCallNode",e.LogicalExpressionFunctionNode="LogicalExpressionFunctionNode",e.StringLiteralControlFlowStorageCallNode="StringLiteralControlFlowStorageCallNode",e.StringLiteralNode="StringLiteralNode"}(t.ControlFlowCustomNode||(t.ControlFlowCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getParentNodeWithStatements(e){return n.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return n.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return n.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return n.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(o.NodeGuards.isProgramNode(e))throw new Error("Unable to find root statement for `Program` node");const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?e:n.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?t:n.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,i)&&a>0)&&r.push(e),e!==i?n.getParentNodesWithStatementsRecursive(i,t,r,++a):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),a=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,i=a.indexOf(e);return a[i+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static append(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,r,o=0){const a=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(a,r)}static getOptimalBlockScope(e,t,r=1/0){const o=e[t];if(r<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return r>1&&o.stackTrace.length?n.getOptimalBlockScope(o.stackTrace,0,--r):o.callee}static insertAfter(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o+1)}static insertAtIndex(e,t,r){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e).slice(0,r),...t,...n.getScopeStatements(e).slice(r)])}static prepend(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...t,...n.getScopeStatements(e)])}static getScopeStatements(e){return o.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){o.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(2),n=r(15);class a{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const a=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),a}}t.JavaScriptObfuscator=a,a.version="0.20.3"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const r=this.customNodes.get(e);r&&t(r)}getRandomStackTraceIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],i),t.AbstractCustomNodeGroup=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.IdentifierNamesGenerator=o.MakeEnum({DictionaryIdentifierNamesGenerator:"dictionary",HexadecimalIdentifierNamesGenerator:"hexadecimal",MangledIdentifierNamesGenerator:"mangled"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.NO_ADDITIONAL_NODES_PRESET=Object.freeze({compact:!0,controlFlowFlattening:!1,controlFlowFlatteningThreshold:0,deadCodeInjection:!1,deadCodeInjectionThreshold:0,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!1,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:0,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.NumberUtils=class{static toHex(e){return e.toString(16)}static isCeil(e){return e%1==0}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.options=e}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],i),t.AbstractObfuscatingReplacer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{};a=o.__decorate([n.injectable()],a),t.AbstractCalleeDataExtractor=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2);let s=o=class{constructor(e,t,r){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=r}static getStorageKeysByIdForCurrentStorage(e,t){let r;return r=e.has(t)?e.get(t):new Map,r}insertCustomNodeToControlFlowStorage(e,t,r,n){const a=t.getStorageId(),i=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,a),s=i.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return i.set(r,[d]),this.replacerDataByControlFlowStorageId.set(a,i),t.set(d,e),d}};s=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],s),t.AbstractControlFlowReplacer=s},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n var that = (typeof window !== 'undefined'\n ? window\n : (typeof process === 'object' &&\n typeof require === 'function' &&\n typeof global === 'object')\n ? global\n : this);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractIdentifierNamesGenerator=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.FunctionDeclarationCalleeDataExtractor="FunctionDeclarationCalleeDataExtractor",e.FunctionExpressionCalleeDataExtractor="FunctionExpressionCalleeDataExtractor",e.ObjectExpressionCalleeDataExtractor="ObjectExpressionCalleeDataExtractor"}(t.CalleeDataExtractor||(t.CalleeDataExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionControlFlowReplacer="BinaryExpressionControlFlowReplacer",e.CallExpressionControlFlowReplacer="CallExpressionControlFlowReplacer",e.LogicalExpressionControlFlowReplacer="LogicalExpressionControlFlowReplacer",e.StringLiteralControlFlowReplacer="StringLiteralControlFlowReplacer"}(t.ControlFlowReplacer||(t.ControlFlowReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(16),s=r(35),c=r(3);let d=class extends s.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!c.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IControlFlowCustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.ExpressionWithOperatorControlFlowReplacer=d},function(e,t){e.exports=require("espree")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementDeadCodeInjectionNode="BlockStatementDeadCodeInjectionNode"}(t.DeadCodeInjectionCustomNode||(t.DeadCodeInjectionCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AssignmentExpressionPropertiesExtractor="AssignmentExpressionPropertiesExtractor",e.VariableDeclaratorPropertiesExtractor="VariableDeclaratorPropertiesExtractor"}(t.PropertiesExtractor||(t.PropertiesExtractor={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(20),c=r(8),d=r(3),l=r(18);let u=o=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return d.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:d.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return d.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||d.NodeGuards.isObjectPatternNode(e)||d.NodeGuards.isArrayPatternNode(e)||d.NodeGuards.isAssignmentPatternNode(e)||d.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const r=e.length,n=[],a=[];for(let i=0;i!t.includes(r))}transformObjectExpressionNode(e,t){const r=e.properties,[o,n]=this.extractPropertiesToExpressionStatements(r,t),a=this.getHostStatement(e),i=this.getHostNodeWithStatements(e,a);return this.filterExtractedObjectExpressionProperties(e,n),s.NodeAppender.insertAfter(i,o,a),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const r=l.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,r),r}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=l.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.AbstractPropertiesExtractor=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return o.obfuscationEnableCommentRegExp.test(e.value)||o.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!i.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,r=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),r&&(this.obfuscationAllowedForNextNode=this.checkComments(r)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let r=this.obfuscationAllowedForCurrentNode;for(let n=0;n1?e:`${e}|${s.default(this.sourceCode.getSourceCode())}`}};l.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n.__decorate([d.initializable(),n.__metadata("design:type",Object)],l.prototype,"randomGenerator",void 0),n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],l.prototype,"initialize",null),l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ISourceCode)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.RandomGenerator=l},function(e,t){e.exports=require("chalk")},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(53)),c=r(56);let d=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,o||"")}info(e,t){this.options.log&&o.log(o.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,c.LoggingPrefix.Base,e,t)}};d.colorInfo=s.default.cyan,d.colorSuccess=s.default.green,d.colorWarn=s.default.yellow,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.Logger=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(40),s=r(58),c=r(59),d=r(60),l=r(61);t.analyzersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.IStackTraceAnalyzer).to(l.StackTraceAnalyzer).inSingletonScope(),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(s.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){if(!s.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return r?{callee:r,name:t.name}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:e=>{if(s.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){let r=null;return s.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),s.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:t.name||null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(s.NodeGuards.isFunctionExpressionNode(e)&&o&&s.NodeGuards.isVariableDeclaratorNode(o)&&s.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionExpressionCalleeDataExtractor=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=n.__importStar(r(10)),s=r(34),c=r(3),d=r(18);let l=o=class extends s.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=c.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=c.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!c.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(c.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!c.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return c.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(c.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return i.traverse(e,{enter:e=>{if(c.NodeGuards.isVariableDeclaratorNode(e)&&c.NodeGuards.isIdentifierNode(e.id)&&e.init&&c.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),i.VisitorOption.Break}}),o}findCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;for(const n of e)if(o.isValidTargetPropertyNode(n,r)){if(c.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(c.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};l=o=n.__decorate([a.injectable()],l),t.ObjectExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(40),d=r(3),l=r(18);let u=o=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,r=o.limitThresholdActivationLength-1;let n=t;return t>r&&(n=Math.round(r+t*o.limitThreshold),n>t&&(n=t)),n}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=o.getLimitIndex(e.length),r=[],n=e.length;for(let o=0;ot);o++){const t=e[o];s.traverse(t,{enter:o=>{if(d.NodeGuards.isCallExpressionNode(o))return t.parentNode!==l.NodeStatementUtils.getParentNodeWithStatements(o)?s.VisitorOption.Skip:void this.analyzeCallExpressionNode(r,e,o)}})}return r}analyzeCallExpressionNode(e,t,r){o.calleeDataExtractorsList.forEach(o=>{const n=this.calleeDataExtractorFactory(o).extract(t,r.callee);n&&e.push(Object.assign(Object.assign({},n),{stackTrace:this.analyzeRecursive(n.callee.body)}))})}};u.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],u.limitThresholdActivationLength=25,u.limitThreshold=.002,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICalleeDataExtractor)),n.__metadata("design:paramtypes",[Function])],u),t.StackTraceAnalyzer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(41),s=r(19),c=r(63),d=r(64),l=r(65),u=r(66),p=r(67),m=r(68),f=r(69);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(m.LogicalExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(f.StringLiteralControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(a.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42);let d=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.BinaryExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}};d.usingExistingIdentifierChance=.5,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.BinaryExpressionControlFlowReplacer=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(6),l=r(7),u=r(3),p=r(5);let m=o=class extends l.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=u.NodeGuards.isBreakStatementNode(e)||u.NodeGuards.isContinueStatementNode(e),r=u.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=u.NodeGuards.isClassDeclarationNode(e);return u.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return s.traverse(e,{enter:e=>{if(u.NodeGuards.isWhileStatementNode(e))return s.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case d.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&u.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold||!o.canTransformBlockStatementNode(e))return e;const r=e.body,n=this.arrayUtils.createWithRange(r.length),a=this.arrayUtils.shuffle(n),i=n.map(e=>a.indexOf(e)),s=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,a,i);const d=s.getNode()[0];return p.NodeUtils.parentizeNode(d,t),d}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.BlockStatementControlFlowTransformer=m},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!d.NodeGuards.isIdentifierNode(n))return e;const a=String(e.arguments.length),i=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionFunctionNode),c=e.arguments;i.initialize(c);const l=this.insertCustomNodeToControlFlowStorage(i,r,a,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),l,n,c)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!d.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};l.usingExistingIdentifierChance=.5,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(44),d=r(19),l=r(13),u=r(6),p=r(7),m=r(8),f=r(3),g=r(18),N=r(5);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.deadCodeInjectionRootAstHostNodeSet=new Set,this.collectedBlockStatements=[],this.collectedBlockStatementsTotalLength=0,this.deadCodeInjectionCustomNodeFactory=e,this.transformersRunner=t}static isProhibitedNodeInsideCollectedBlockStatement(e){return f.NodeGuards.isBreakStatementNode(e)||f.NodeGuards.isContinueStatementNode(e)||f.NodeGuards.isAwaitExpressionNode(e)||f.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!f.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=g.NodeStatementUtils.getScopeOfNode(e),r=f.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),a=m.NodeFactory.blockStatementNode(n),i=e.id.name;let c=!1;return s.traverse(a,{enter:e=>{if(f.NodeGuards.isIdentifierNode(e)&&e.name===i)return c=!0,s.VisitorOption.Break}}),c}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return s.traverse(e,{enter:e=>{if(f.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,s.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(s.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,s.VisitorOption.Break}}),!t)return!1;return g.NodeStatementUtils.getParentNodeWithStatements(e).type!==l.NodeType.Program}getVisitor(e){switch(e){case u.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&f.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&f.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case u.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){s.traverse(e,{enter:e=>{if(!f.NodeGuards.isBlockStatementNode(e))return;const t=N.NodeUtils.clone(e);if(!o.isValidCollectedBlockStatementNode(t))return;const r=this.makeClonedBlockStatementNodeUnique(t);this.collectedBlockStatements.push(r)}}),this.collectedBlockStatementsTotalLength=this.collectedBlockStatements.length}transformNode(e,t){if(!this.collectedBlockStatements.length||this.collectedBlockStatementsTotalLengththis.options.deadCodeInjectionThreshold||!o.isValidWrappedBlockStatementNode(e))return e;const r=this.collectedBlockStatements.length-1,n=this.randomGenerator.getRandomInteger(0,r),a=this.collectedBlockStatements.splice(n,1)[0];return a===e?e:this.replaceBlockStatementNode(e,a,t)}restoreNode(e,t){const r=e.body[0];if(!f.NodeGuards.isFunctionDeclarationNode(r))throw new Error("Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node");return r.body}isDeadCodeInjectionRootAstHostNode(e){return f.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=m.NodeFactory.functionExpressionNode([],e);return N.NodeUtils.parentizeNode(t,t),N.NodeUtils.parentizeNode(e,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,u.TransformationStage.Obfuscating).body}replaceBlockStatementNode(e,t,r){const n=m.NodeFactory.blockStatementNode([m.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const a=this.deadCodeInjectionCustomNodeFactory(c.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);a.initialize(e,n);const i=a.getNode()[0];return N.NodeUtils.parentizeNode(i,r),i}};_.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",_.maxNestedBlockStatementsCount=4,_.minCollectedBlockStatementsCount=5,_.transformersToRenameBlockScopeIdentifiers=[d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.VariableDeclarationTransformer],_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],_),t.DeadCodeInjectionTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(41),l=r(13),u=r(6),p=r(7),m=r(20),f=r(3),g=r(11),N=r(18);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.controlFlowData=new Map,this.visitedFunctionNodes=new Set,this.hostNodesWithControlFlowNode=new Set,this.controlFlowStorageFactory=e,this.controlFlowReplacerFactory=t,this.controlFlowCustomNodeFactory=r}getVisitor(e){switch(e){case u.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!f.NodeGuards.isBlockStatementNode(e.body))return e;const r=this.getHostNode(e.body),o=this.getControlFlowStorage(r);if(this.controlFlowData.set(r,o),this.transformFunctionBody(e.body,o),!o.getLength())return e;const n=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),m.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(f.NodeGuards.isSwitchCaseNode(e)?e.consequent.shift():e.body.shift());const r=this.controlFlowData.get(e);t.mergeWith(r,!0)}return t}getHostNode(e){const t=N.NodeStatementUtils.getParentNodesWithStatements(e);return 1===t.length?e:(t.pop(),t.length>o.hostNodeSearchMinDepth&&t.splice(0,o.hostNodeSearchMinDepth),t.length>o.hostNodeSearchMaxDepth&&(t.length=o.hostNodeSearchMaxDepth),this.randomGenerator.getRandomGenerator().pickone(t))}isVisitedFunctionNode(e){return(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){s.replace(e,{enter:(e,r)=>{if(g.NodeMetadata.isIgnoredNode(e))return s.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return s.VisitorOption.Skip;if(!o.controlFlowReplacersMap.has(e.type))return e;if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold)return e;const n=o.controlFlowReplacersMap.get(e.type);return void 0===n?e:Object.assign(Object.assign({},this.controlFlowReplacerFactory(n).replace(e,r,t)),{parentNode:r})}})}};_.controlFlowReplacersMap=new Map([[l.NodeType.BinaryExpression,d.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[l.NodeType.CallExpression,d.ControlFlowReplacer.CallExpressionControlFlowReplacer],[l.NodeType.LogicalExpression,d.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[l.NodeType.Literal,d.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),_.hostNodeSearchMinDepth=0,_.hostNodeSearchMaxDepth=2,_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__TControlFlowStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.Factory__IControlFlowReplacer)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(3,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Function,Function,Object,Object])],_),t.FunctionControlFlowTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42),d=r(3),l=r(5);let u=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(this.checkForProhibitedExpressions(e.left,e.right))return e;const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.LogicalExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=d.NodeGuards.isUnaryExpressionNode(e)?l.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(d.NodeGuards.isLiteralNode(t)||d.NodeGuards.isIdentifierNode(t)||d.NodeGuards.isObjectExpressionNode(t)||d.NodeGuards.isExpressionStatementNode(t))})}};u.usingExistingIdentifierChance=.5,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.LogicalExpressionControlFlowReplacer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(d.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralNode);a.initialize(e.value);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!d.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};l.usingExistingIdentifierChance=1,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(15),a=r(2),i=r(19),s=r(45),c=r(71),d=r(72),l=r(73),u=r(74),p=r(75),m=r(76),f=r(77),g=r(78);t.convertingTransformersModule=new o.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(i.NodeTransformer.MemberExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(i.NodeTransformer.MethodDefinitionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionKeysTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ObjectExpressionTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.SplitStringTransformer).whenTargetNamed(i.NodeTransformer.SplitStringTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.TemplateLiteralTransformer).whenTargetNamed(i.NodeTransformer.TemplateLiteralTransformer),e(a.ServiceIdentifiers.IPropertiesExtractor).to(c.AssignmentExpressionPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.AssignmentExpressionPropertiesExtractor),e(a.ServiceIdentifiers.IPropertiesExtractor).to(g.VariableDeclaratorPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.VariableDeclaratorPropertiesExtractor),e(a.ServiceIdentifiers.Factory__IPropertiesExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IPropertiesExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(46);let s=class extends i.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){const r=t.parentNode,o=t.left;return i.AbstractPropertiesExtractor.isProhibitedPattern(o)?e:r&&i.AbstractPropertiesExtractor.isProhibitedHostParent(r)?e:this.transformObjectExpressionNode(e,o)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.AssignmentExpressionPropertiesExtractor=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(d.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=c.NodeFactory.literalNode(e.property.name)}return e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MemberExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3);let u=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&l.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return l.NodeGuards.isIdentifierNode(e.key)&&!o.ignoredNames.includes(e.key.name)&&!1===e.computed&&(e.computed=!0,e.key=d.NodeFactory.literalNode(e.key.name)),e}};u.ignoredNames=["constructor"],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.MethodDefinitionTransformer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(13),c=r(45),d=r(6),l=r(7),u=r(3);let p=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.propertiesExtractorFactory=e}getVisitor(e){return e!==d.TransformationStage.Converting?null:{enter:(e,t)=>{if(this.options.transformObjectKeys&&t&&u.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}}}transformNode(e,t){if(!e.properties.length)return e;const r=o.propertiesExtractorsMap.get(t.type);return r?this.propertiesExtractorFactory(r).extract(e,t):e}};p.propertiesExtractorsMap=new Map([[s.NodeType.AssignmentExpression,c.PropertiesExtractor.AssignmentExpressionPropertiesExtractor],[s.NodeType.VariableDeclarator,c.PropertiesExtractor.VariableDeclaratorPropertiesExtractor]]),p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IPropertiesExtractor)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],p),t.ObjectExpressionKeysTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.escapeSequenceEncoder=e}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.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){d.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.value)))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),d.NodeGuards.isIdentifierNode(e.key)&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.name)))}getPropertyKeyValue(e){return this.options.unicodeEscapeSequence?this.escapeSequenceEncoder.encode(e,!0):e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object])],l),t.ObjectExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(19),c=r(6),d=r(7),l=r(8),u=r(3);let p=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[s.NodeTransformer.ObjectExpressionKeysTransformer,s.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let a=0;a{if(this.options.splitStrings)return t&&u.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if("string"!=typeof e.value)return e;if(u.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e)return e;if(this.options.splitStringsChunkLength>=e.value.length)return e;const r=o.chunkString(e.value,this.options.splitStringsChunkLength);return this.transformStringChunksToBinaryExpressionNode(r)}transformStringChunksToBinaryExpressionNode(e){const t=e.pop();if(void 0===t)throw new Error("Last chunk value should not be empty");const r=l.NodeFactory.literalNode(t);return 0===e.length?r:l.NodeFactory.binaryExpressionNode("+",this.transformStringChunksToBinaryExpressionNode(e),r)}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.SplitStringTransformer=p},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3),u=r(5);let p=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return e&&l.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return l.NodeGuards.isTemplateLiteralNode(e)&&!l.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&o.isValidTemplateLiteralNode(e,t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=e.expressions;let n,a=[];if(e.quasis.forEach(e=>{a.push(d.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&a.push(t)}),a=a.filter(e=>!(l.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(a[0])||o.isLiteralNodeWithStringValue(a[1])||a.unshift(d.NodeFactory.literalNode("")),a.length>1){let e=d.NodeFactory.binaryExpressionNode("+",a.shift(),a.shift());a.forEach(t=>{e=d.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=a[0];return u.NodeUtils.parentizeAst(n),n}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.TemplateLiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(46),c=r(3);let d=class extends s.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){return!c.NodeGuards.isIdentifierNode(t.id)||this.isProhibitedObjectExpressionNode(e,t.id)?e:this.transformObjectExpressionNode(e,t.id)}getHostVariableDeclaratorNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclaratorNode(t))throw new Error("Cannot get `VariableDeclarator` node for `ObjectExpression` node");return t}getHostVariableDeclarationNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclarationNode(t))throw new Error("Cannot get `VariableDeclaration` node for `VariableDeclarator` node");return t}isProhibitedObjectExpressionNode(e,t){const r=this.getHostVariableDeclaratorNode(e),o=this.getHostVariableDeclarationNode(r),{declarations:n}=o,a=n.indexOf(r);if(a===n.length-1)return!1;const s=n.slice(a);let d=!1;return s.forEach(e=>{i.traverse(e,{enter:e=>c.NodeGuards.isMemberExpressionNode(e)&&c.NodeGuards.isIdentifierNode(e.object)&&e.object.name===t.name?(d=!0,i.VisitorOption.Break):e})}),d}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.VariableDeclaratorPropertiesExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(16),s=r(23),c=r(47),d=r(44),l=r(80),u=r(81),p=r(82),m=r(83),f=r(84),g=r(85),N=r(88),_=r(89),h=r(90),b=r(91),y=r(92),S=r(93),I=r(95),v=r(97),C=r(99),O=r(103),j=r(105),F=r(106),x=r(107),T=r(109),E=r(111),w=r(118),G=r(120),R=r(123),P=r(124);t.customNodesModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.ICustomNode).to(S.ConsoleOutputDisableExpressionNode).whenTargetNamed(s.CustomNode.ConsoleOutputDisableExpressionNode),e(a.ServiceIdentifiers.ICustomNode).to(I.DebugProtectionFunctionCallNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionCallNode),e(a.ServiceIdentifiers.ICustomNode).to(v.DebugProtectionFunctionIntervalNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionIntervalNode),e(a.ServiceIdentifiers.ICustomNode).to(C.DebugProtectionFunctionNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(O.DomainLockNode).whenTargetNamed(s.CustomNode.DomainLockNode),e(a.ServiceIdentifiers.ICustomNode).to(x.NodeCallsControllerFunctionNode).whenTargetNamed(s.CustomNode.NodeCallsControllerFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(T.SelfDefendingUnicodeNode).whenTargetNamed(s.CustomNode.SelfDefendingUnicodeNode),e(a.ServiceIdentifiers.ICustomNode).to(E.StringArrayCallsWrapper).whenTargetNamed(s.CustomNode.StringArrayCallsWrapper),e(a.ServiceIdentifiers.ICustomNode).to(w.StringArrayNode).whenTargetNamed(s.CustomNode.StringArrayNode),e(a.ServiceIdentifiers.ICustomNode).to(G.StringArrayRotateFunctionNode).whenTargetNamed(s.CustomNode.StringArrayRotateFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.BinaryExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.BlockStatementControlFlowFlatteningNode).whenTargetNamed(i.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.CallExpressionControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.CallExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ControlFlowStorageNode).whenTargetNamed(i.ControlFlowCustomNode.ControlFlowStorageNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(j.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(F.LogicalExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(P.StringLiteralNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(R.StringLiteralControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(_.BlockStatementDeadCodeInjectionNode).whenTargetNamed(d.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(a.ServiceIdentifiers.ICustomNodeGroup).to(l.ConsoleOutputCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.ConsoleOutputCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(u.DebugProtectionCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DebugProtectionCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(p.DomainLockCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DomainLockCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(m.SelfDefendingCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.SelfDefendingCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(f.StringArrayCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.StringArrayCustomNodeGroup),e(a.ServiceIdentifiers.Factory__ICustomNode).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNode)),e(a.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__ICustomNodeGroup).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNodeGroup))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.ConsoleOutputDisableExpressionNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.disableConsoleOutput)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.ConsoleOutputDisableExpressionNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.ConsoleOutputDisableExpressionNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.ConsoleOutputCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20),u=r(3);let p=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionCallNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionNode,t=>{l.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionIntervalNode,t=>{const r=u.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);l.NodeAppender.insertAtIndex(e,t.getNode(),o)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.debugProtection)return;const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate(),r=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionNode),o=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionCallNode),n=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionIntervalNode),a=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);r.initialize(e),o.initialize(e,t),n.initialize(e),a.initialize(this.appendEvent,t),this.customNodes.set(s.CustomNode.DebugProtectionFunctionNode,r),this.customNodes.set(s.CustomNode.DebugProtectionFunctionCallNode,o),this.options.debugProtectionInterval&&this.customNodes.set(s.CustomNode.DebugProtectionFunctionIntervalNode,n),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,a)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],p.prototype,"customNodes",void 0),p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],p),t.DebugProtectionCustomNodeGroup=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DomainLockNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.domainLock.length)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.DomainLockNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.DomainLockNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.DomainLockCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.SelfDefendingUnicodeNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.selfDefending)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.SelfDefendingUnicodeNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.SelfDefendingUnicodeNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.SelfDefendingCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e,this.stringArrayStorage=t}appendCustomNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(s.CustomNode.StringArrayNode,t=>{l.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayCallsWrapper,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayRotateFunctionNode,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customNodes=new Map,!this.options.stringArray)return;const e=this.customNodeFactory(s.CustomNode.StringArrayNode),t=this.customNodeFactory(s.CustomNode.StringArrayCallsWrapper),r=this.customNodeFactory(s.CustomNode.StringArrayRotateFunctionNode),o=this.stringArrayStorage.getStorageId(),[n,a]=o.split("|");let i;i=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(100,500):0,e.initialize(this.stringArrayStorage,n,i),t.initialize(n,a),r.initialize(n,i),this.customNodes.set(s.CustomNode.StringArrayNode,e),this.customNodes.set(s.CustomNode.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customNodes.set(s.CustomNode.StringArrayRotateFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.TStringArrayStorage)),o.__param(2,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Function,Object,Object])],u),t.StringArrayCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.binaryExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BinaryExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n var that;\n \n try {\n var getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n var getGlobal = function () {\n var 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 var that = getGlobal();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(3),l=r(5);let u=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.blockStatementBody=e,this.shuffledKeys=t,this.originalKeysIndexesInShuffledArray=r}getNodeStructure(){const e=this.randomGenerator.getRandomString(6),t=this.randomGenerator.getRandomString(6),r=c.NodeFactory.blockStatementNode([c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(e),c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),c.NodeFactory.identifierNode("split")),[c.NodeFactory.literalNode("|")])),c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(t),c.NodeFactory.literalNode(0))]),c.NodeFactory.whileStatementNode(c.NodeFactory.literalNode(!0),c.NodeFactory.blockStatementNode([c.NodeFactory.switchStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(e),c.NodeFactory.updateExpressionNode("++",c.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return d.NodeGuards.isReturnStatementNode(r)||o.push(c.NodeFactory.continueStatement()),c.NodeFactory.switchCaseNode(c.NodeFactory.literalNode(String(t)),o)})),c.NodeFactory.breakStatement()]))]);return l.NodeUtils.parentizeAst(r),[r]}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"blockStatementBody",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"originalKeysIndexesInShuffledArray",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"shuffledKeys",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.BlockStatementControlFlowFlatteningNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.blockStatementNode=e,this.deadCodeInjectionRootAstHostNode=t}getNodeStructure(){const e=this.randomGenerator.getMathRandom()>.5,t=this.randomGenerator.getMathRandom()>.5,r=e?"===":"!==",o=this.randomGenerator.getRandomString(5),n=t?o:this.randomGenerator.getRandomString(5),[a,i]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=c.NodeFactory.blockStatementNode([c.NodeFactory.ifStatementNode(c.NodeFactory.binaryExpressionNode(r,c.NodeFactory.literalNode(o),c.NodeFactory.literalNode(n)),a,i)]);return d.NodeUtils.parentizeAst(s),[s]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"blockStatementNode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"deadCodeInjectionRootAstHostNode",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BlockStatementDeadCodeInjectionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"callee",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],l.prototype,"expressionArguments",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=c.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e{const r=t.getNode()[0];if(!d.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return c.NodeFactory.propertyNode(c.NodeFactory.identifierNode(e),r.expression)});let t=c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),c.NodeFactory.objectExpressionNode(e))]);return t=l.NodeUtils.parentizeAst(t),[t]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],u.prototype,"controlFlowStorage",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ControlFlowStorageNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(94),d=r(37),l=r(4),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():d.GlobalVariableNoEvalTemplate();return i.default(c.ConsoleOutputDisableExpressionTemplate(),{consoleLogDisableFunctionName:this.identifierNamesGenerator.generate(),globalVariableTemplate:e,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([l.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.ConsoleOutputDisableExpressionNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n var {consoleLogDisableFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n var 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.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.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(96),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"callsControllerFunctionName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionCallNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {singleNodeCallControllerFunctionName}(this, function () {\n var regExp1 = new RegExp('function *\\\\( *\\\\)');\n var regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n var 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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(98),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionIntervalNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionIntervalTemplate=function(){return"\n setInterval(function () {\n {debugProtectionFunctionName}();\n }, 4000);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(100),l=r(101),u=r(102),p=r(9),m=r(5);let f=class extends p.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?d.DebuggerTemplate():l.DebuggerTemplateNoEval();return i.default(u.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"debugProtectionFunctionName",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.DebugProtectionFunctionNode=f},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplateNoEval=function(){return"\n if (typeof counter === 'string') {\n var 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,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(104),l=r(37),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.cryptUtils=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():l.GlobalVariableNoEvalTemplate();return i.default(d.DomainLockNodeTemplate(),{domainLockFunctionName:this.identifierNamesGenerator.generate(),diff:r,domains:t,globalVariableTemplate:o,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.DomainLockNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockNodeTemplate=function(){return'\n var {domainLockFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n var func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (var i = 0; i < 1000; i--) {\n var 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 var regExp = new RegExp("[{diff}]", "g");\n var domains = "{domains}".replace(regExp, "").split(";");\n var document;\n var domain;\n var location;\n var hostname;\n\n for (var 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 (var 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 (var 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 (var 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 var documentDomain = that[document][domain];\n var documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n var currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n var ok = false;\n \n for (var i = 0; i < domains.length; i++) {\n var domain = domains[i];\n var position = currentDomain.length - domain.length;\n var lastIndex = currentDomain.indexOf(domain, position);\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"leftValue",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"rightValue",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.ExpressionWithOperatorControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.logicalExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.LogicalExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(21),c=r(4),d=r(108),l=r(31),u=r(9),p=r(24),m=r(5);let f=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return this.appendEvent===s.ObfuscationEvent.AfterObfuscation?p.JavaScriptObfuscator.obfuscate(i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed})).getObfuscatedCode():i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"callsControllerFunctionName",void 0),o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"appendEvent",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.NodeCallsControllerFunctionNode=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleNodeCallControllerTemplate=function(){return"\n var {singleNodeCallControllerFunctionName} = (function(){\n var firstCall = true;\n \n return function (context, fn){\n var rfn = firstCall ? function(){\n if(fn){\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(110),l=r(9),u=r(24),p=r(5);let m=class extends l.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return u.JavaScriptObfuscator.obfuscate(i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{selfDefendingFunctionName:this.identifierNamesGenerator.generate(),singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed,unicodeEscapeSequence:!0})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.SelfDefendingUnicodeNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var {selfDefendingFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func1 = function(){return 'dev';},\n func2 = function () {\n return 'window';\n };\n \n var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return !regExp.test(func1.toString());\n };\n \n var test2 = function () {\n var regExp = new RegExp('${e.encode("(\\\\[x|u](\\w){2,4})+",!0)}');\n \n return regExp.test(func2.toString());\n };\n \n var recursiveFunc1 = function (string) {\n var i = ~-1 >> 1 + 255 % 0;\n \n if (string.indexOf('i' === i)) {\n recursiveFunc2(string)\n }\n };\n \n var recursiveFunc2 = function (string) {\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(29),d=r(4),l=r(31),u=r(112),p=r(37),m=r(113),f=r(114),g=r(115),N=r(116),_=r(117),h=r(9),b=r(24),y=r(5);let S=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(){return y.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.getDecodeStringArrayTemplate();return b.JavaScriptObfuscator.obfuscate(i.default(N.StringArrayCallsWrapperTemplate(),{decodeNodeTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}getDecodeStringArrayTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():p.GlobalVariableNoEvalTemplate(),t=i.default(u.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=i.default(f.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case c.StringArrayEncoding.Rc4:r=i.default(_.StringArrayRc4DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,rc4Polyfill:m.Rc4Template(),selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case c.StringArrayEncoding.Base64:r=i.default(g.StringArrayBase64DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayName",void 0),o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayCallsWrapperName",void 0),S=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],S),t.StringArrayCallsWrapper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n var str = String(input).replace(/=+$/, '');\n for (\n var bc = 0, bs, buffer, idx = 0, output = '';\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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n var rc4 = function (str, key) {\n var s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (var 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\t for (var 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 (var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e,t){const r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6),a=e.getRandomString(6),i=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n var StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${a} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${i} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n var regExp = new RegExp(this.${a} + this.${i});\n var expression = regExp.test(this.${n}.toString())\n ? --this.${o}[1]\n : --this.${o}[0];\n \n return this.${c}(expression);\n };\n \n StatesClass.prototype.${c} = function (${l}) {\n if (!Boolean(~${l})) {\n return ${l};\n }\n \n return this.${d}(this.${r});\n };\n\n StatesClass.prototype.${d} = function (${r}) {\n for (var i = 0, len = this.${o}.length; i < len; i++) {\n this.${o}.push(Math.round(Math.random()));\n len = this.${o}.length;\n }\n \n return ${r}(this.${o}[0]);\n };\n\n new StatesClass({stringArrayCallsWrapperName}).${s}();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayBase64DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {stringArrayCallsWrapperName}.${r} = function (str) {\n var string = atob(str);\n var newStringChars = [];\n \n for (var 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}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n \n if (cachedValue === undefined) {\n {selfDefendingCode}\n \n value = {stringArrayCallsWrapperName}.${r}(value);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayCallsWrapperTemplate=function(){return"\n var {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n var value = {stringArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRc4DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {rc4Polyfill}\n {stringArrayCallsWrapperName}.${r} = rc4;\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n\n if (cachedValue === undefined) {\n if ({stringArrayCallsWrapperName}.${n} === undefined) {\n {selfDefendingCode}\n \n {stringArrayCallsWrapperName}.${n} = true;\n }\n \n value = {stringArrayCallsWrapperName}.${r}(value, key);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(119),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.stringArrayStorage=e,this.stringArrayName=t,this.stringArrayRotateValue=r}getNode(){return this.stringArrayStorage.rotateArray(this.stringArrayRotateValue),super.getNode()}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};o.__decorate([s.initializable(),o.__metadata("design:type",Object)],u.prototype,"stringArrayStorage",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],u.prototype,"stringArrayRotateValue",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.StringArrayNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n var {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(121),l=r(122),u=r(9),p=r(24),m=r(5),f=r(32);let g=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayRotateValue=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate();let r="";return r=this.options.selfDefending?i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,p.JavaScriptObfuscator.obfuscate(i.default(l.StringArrayRotateFunctionTemplate(),{code:r,timesName:e,stringArrayName:this.stringArrayName,stringArrayRotateValue:f.NumberUtils.toHex(this.stringArrayRotateValue),whileFunctionName:t}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],g.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],g.prototype,"stringArrayRotateValue",void 0),g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],g),t.StringArrayRotateFunctionNode=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var selfDefendingFunc = function () {\n var object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n var updatedCookie = name + "=" + value;\n\n var i = 0;\n \n for (var i = 0, len = options.length; i < len; i++) {\n var propName = options[i];\n \n updatedCookie += "; " + propName;\n \n var 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 var matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n var 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 var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n var cookie = '';\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n var {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotateValue});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8);let d=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.literalValue=e}getNodeStructure(){return[c.NodeFactory.expressionStatementNode(c.NodeFactory.literalNode(this.literalValue))]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],d.prototype,"literalValue",void 0),d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.StringLiteralNode=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0);t.finalizingTransformersModule=new o.ContainerModule(e=>{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(27),i=r(127),s=r(128),c=r(129);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(i.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator),e(n.ServiceIdentifiers.Factory__IIdentifierNamesGenerator).toFactory(function(){let e=null;return t=>r=>{if(e)return e;let o;switch(r.identifierNamesGenerator){case a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t,r){super(e,t),this.arrayUtils=r,this.identifierNamesSet=new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary)),this.identifiersIterator=this.identifierNamesSet.values()}static incrementIdentifierName(e){let t="",r=!1;for(const o of e)r||o!==o.toUpperCase()?r||o!==o.toLowerCase()?t+=o:(t+=o.toUpperCase(),r=!0):t+=o.toLowerCase();return r?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 r of e){const e=o.incrementIdentifierName(r);e&&t.push(e)}return this.arrayUtils.shuffle(t)}};c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__param(2,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__metadata("design:paramtypes",[Object,Object,Object])],c),t.DictionaryIdentifierNamesGenerator=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38),c=r(32),d=r(26);let l=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.randomVariableNameSet=new Set}generate(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=c.NumberUtils.toHex(t),n=d.Utils.hexadecimalPrefix.length+1,a=e?e-n:o.baseIdentifierNameLength,i=r.substr(0,a),s=`_${d.Utils.hexadecimalPrefix}${i}`;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("__","_")}};l.baseIdentifierNameLength=6,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.HexadecimalIdentifierNamesGenerator=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.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)&&!o.reservedNames.includes(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=e.length,n=e=>"0".repeat(e);let a=r-1;do{const o=e.charAt(a),i=t.indexOf(o);if(i!==t.length-1){return e.substring(0,a)+t[i+1]+n(r-(a+1))}--a}while(a>=0);return`a${n(r)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}};c.initMangledNameCharacter="9",c.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),c.reservedNames=["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"],c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],c),t.MangledIdentifierNamesGenerator=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2);t.nodeTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(14),s=r(48),c=r(19),d=r(132),l=r(133),u=r(134),p=r(135),m=r(136),f=r(137),g=r(138),N=r(139),_=r(140),h=r(141),b=r(142),y=r(143);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(u.CatchClauseTransformer).whenTargetNamed(c.NodeTransformer.CatchClauseTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ClassDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ClassDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.FunctionDeclarationTransformer).whenTargetNamed(c.NodeTransformer.FunctionDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.FunctionTransformer).whenTargetNamed(c.NodeTransformer.FunctionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ImportDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ImportDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(N.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(_.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(y.VariableDeclarationTransformer).whenTargetNamed(c.NodeTransformer.VariableDeclarationTransformer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(h.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(b.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(i.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(a.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IObfuscatingReplacer)),e(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8);let c=class extends i.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){if(this.blockScopesMap.has(t)){const r=this.blockScopesMap.get(t);r.has(e)&&(e=r.get(e))}return s.NodeFactory.identifierNode(e)}storeGlobalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,r)}storeLocalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generate();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,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))}};c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object])],c),t.BaseIdentifierObfuscatingReplacer=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(33),c=r(8);let d=o=class extends s.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",c.NodeFactory.arrayExpressionNode())}replace(e){return e?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.BooleanLiteralObfuscatingReplacer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22),p=r(11);let m=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isCatchClauseNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeCatchClauseParam(e,r),this.replaceCatchClauseParam(e,r),e):e}storeCatchClauseParam(e,t){l.NodeGuards.isIdentifierNode(e.param)&&this.identifierObfuscatingReplacer.storeLocalName(e.param.name,t)}replaceCatchClauseParam(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isReplaceableIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t).name;e.name!==r&&(e.name=r,p.NodeMetadata.set(e,{renamedIdentifier:!0}))}}})}};m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.CatchClauseTransformer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isClassDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeClassName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeClassName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ClassDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(t);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeFunctionName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeFunctionName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&o!==e&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.FunctionDeclarationTransformer=f},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11),f=r(13);let g=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedIdentifierOfPropertyNode(e,t){return u.NodeGuards.isIdentifierNode(e)&&!!t&&u.NodeGuards.isPropertyNode(t)&&t.key===e}static isProhibitedIdentifierOfShorthandPropertyNode(e){return u.NodeGuards.isPropertyNode(e)&&e.shorthand&&u.NodeGuards.isIdentifierNode(e.key)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeFunctionParams(e,r),this.replaceFunctionParams(e,r),e):e}isGlobalFunctionDeclarationIdentifier(e,t){if(!u.NodeGuards.isFunctionDeclarationNode(t)||t.id!==e)return!1;const r=p.NodeLexicalScopeUtils.getLexicalScopes(t)[1];if(!r)return!1;const o=r.type===f.NodeType.Program;return!this.options.renameGlobals&&o}storeFunctionParams(e,t){const r={enter:(e,r)=>{if(!o.isProhibitedIdentifierOfPropertyNode(e,r))return u.NodeGuards.isAssignmentPatternNode(e)&&u.NodeGuards.isIdentifierNode(e.left)?(this.identifierObfuscatingReplacer.storeLocalName(e.left.name,t),s.VisitorOption.Skip):void(u.NodeGuards.isIdentifierNode(e)&&this.identifierObfuscatingReplacer.storeLocalName(e.name,t))}};e.params.forEach(e=>{s.traverse(e,r)})}replaceFunctionParams(e,t,r=new Set){const n={enter:(n,a)=>{if(u.NodeGuards.isFunctionNode(n)&&n!==e)return this.replaceFunctionParams(n,t,new Set(r)),s.VisitorOption.Skip;if(o.isProhibitedIdentifierOfShorthandPropertyNode(n))r.add(n.key.name);else if(a&&u.NodeGuards.isReplaceableIdentifierNode(n,a)&&!m.NodeMetadata.isRenamedIdentifier(n)&&!r.has(n.name)){if(this.isGlobalFunctionDeclarationIdentifier(n,a))return;const e=this.identifierObfuscatingReplacer.replace(n.name,t).name;n.name!==e&&(n.name=e,m.NodeMetadata.set(n,{renamedIdentifier:!0}))}}};s.replace(e,n)}};g=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],g),t.FunctionTransformer=g},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedImportSpecifierNode(e){return u.NodeGuards.isImportSpecifierNode(e)&&e.imported.name===e.local.name}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isImportDeclarationNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeImportSpecifierNames(e,r),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(r):this.replaceScopeIdentifiers(r),e):e}storeImportSpecifierNames(e,t){e.specifiers.forEach(e=>{o.isProhibitedImportSpecifierNode(e)||this.identifierObfuscatingReplacer.storeGlobalName(e.local.name,t)})}replaceScopeCachedIdentifiers(e){this.replaceableIdentifiers.get(e).forEach(t=>{const r=this.identifierObfuscatingReplacer.replace(t.name,e);t.name=r.name,m.NodeMetadata.set(t,{renamedIdentifier:!0})})}replaceScopeIdentifiers(e){const t=[];s.replace(e,{enter:(r,o)=>{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;r.name!==o?(r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0})):t.push(r)}}}),this.replaceableIdentifiers.set(e,t)}};f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ImportDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22);let p=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label.name,t)}replaceLabeledStatementName(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t);e.name=r.name}}})}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LabeledStatementTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(48),s=r(6),c=r(7),d=r(3),l=r(11),u=r(5);let p=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.literalObfuscatingReplacerFactory=e}getVisitor(e){switch(e){case s.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&d.NodeGuards.isLiteralNode(e)&&!l.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.isProhibitedNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e.value);break;case"number":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e.value);break;case"string":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e.value);break;default:r=e}return u.NodeUtils.parentizeNode(r,t),r}isProhibitedNode(e,t){return!(!d.NodeGuards.isPropertyNode(t)||t.key!==e)||!!d.NodeGuards.isImportDeclarationNode(t)}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8),c=r(32),d=r(26);let l=class extends i.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){let t;return this.numberLiteralCache.has(e)?t=this.numberLiteralCache.get(e):(t=c.NumberUtils.isCeil(e)?`${d.Utils.hexadecimalPrefix}${c.NumberUtils.toHex(e)}`:String(e),this.numberLiteralCache.set(e,t)),s.NodeFactory.literalNode(e,t)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],l),t.NumberLiteralObfuscatingReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(29),c=r(33),d=r(11),l=r(8),u=r(32),p=r(26);let m=o=class extends c.AbstractObfuscatingReplacer{constructor(e,t,r,n,a){super(a),this.nodesCache=new Map,this.stringLiteralHexadecimalIndexCache=new Map,this.stringArrayStorage=e,this.escapeSequenceEncoder=t,this.randomGenerator=r,this.cryptUtils=n,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}static getHexadecimalLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}replace(e){const t=this.canUseStringArray(e),r=`${e}-${String(t)}`;if(this.nodesCache.has(r)&&this.options.stringArrayEncoding!==s.StringArrayEncoding.Rc4)return this.nodesCache.get(r);const o=t?this.replaceWithStringArrayCallNode(e):this.replaceWithLiteralNode(e);return this.nodesCache.set(r,o),o}canUseStringArray(e){return this.options.stringArray&&e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}getStringArrayHexadecimalIndex(e,t){if(this.stringLiteralHexadecimalIndexCache.has(e))return{fromCache:!0,index:this.stringLiteralHexadecimalIndexCache.get(e)};const r=u.NumberUtils.toHex(t),o=`${p.Utils.hexadecimalPrefix}${r}`;return this.stringLiteralHexadecimalIndexCache.set(e,o),{fromCache:!1,index:o}}getEncodedValue(e){let t,r=null;switch(this.options.stringArrayEncoding){case s.StringArrayEncoding.Rc4:r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),t=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r));break;case s.StringArrayEncoding.Base64:t=this.cryptUtils.btoa(e);break;default:t=e}return{encodedValue:t,key:r}}replaceWithLiteralNode(e){return l.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e,this.options.unicodeEscapeSequence))}replaceWithStringArrayCallNode(e){const{encodedValue:t,key:r}=this.getEncodedValue(e),n=this.escapeSequenceEncoder.encode(t,this.options.unicodeEscapeSequence),a=this.stringArrayStorage.getLength(),i=this.stringArrayStorage.getStorageId().split("|")[1],{fromCache:s,index:c}=this.getStringArrayHexadecimalIndex(n,a);s||this.stringArrayStorage.set(a,n);const u=[o.getHexadecimalLiteralNode(c)];r&&u.push(o.getRc4KeyLiteralNode(this.escapeSequenceEncoder.encode(r,this.options.unicodeEscapeSequence)));const p=l.NodeFactory.identifierNode(i);return d.NodeMetadata.set(p,{renamedIdentifier:!0}),l.NodeFactory.callExpressionNode(p,u)}};m.minimumLengthForStringArray=3,m.rc4KeyLength=4,m.rc4KeysCount=50,m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TStringArrayStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.IEscapeSequenceEncoder)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.ICryptUtils)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],m),t.StringLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(144),f=r(11);let g=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isVariableDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r="var"===e.kind?p.NodeLexicalScopeUtils.getLexicalScope(e):m.NodeBlockLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;if(!this.options.renameGlobals&&o)return e;const n="var"===e.kind?r:t;return this.storeVariableNames(e,r,o),this.replaceableIdentifiers.has(n)?this.replaceScopeCachedIdentifiers(e,r,n):this.replaceScopeIdentifiers(n,r),e}storeVariableNames(e,t,r){this.traverseDeclarationIdentifiers(e,e=>{r?this.identifierObfuscatingReplacer.storeGlobalName(e.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.name,t)})}replaceScopeCachedIdentifiers(e,t,r){const o=this.replaceableIdentifiers.get(r),n=[];this.traverseDeclarationIdentifiers(e,e=>{n.push(e.name)}),n.forEach(e=>{const r=o.get(e);if(!r)return;const n=r.length;for(let o=0;o{if(o&&u.NodeGuards.isReplaceableIdentifierNode(e,o)&&!f.NodeMetadata.isRenamedIdentifier(e)){const o=this.identifierObfuscatingReplacer.replace(e.name,t).name;if(e.name!==o)e.name=o,f.NodeMetadata.set(e,{renamedIdentifier:!0});else{const t=r.get(e.name)||[];t.push(e),r.set(e.name,t)}}}}),this.replaceableIdentifiers.set(e,r)}traverseDeclarationIdentifiers(e,t){e.declarations.forEach(e=>{i.traverse(e.id,{enter:e=>{if(u.NodeGuards.isPropertyNode(e))return i.VisitorOption.Skip;u.NodeGuards.isIdentifierNode(e)&&t(e)}})})}};g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],g),t.VariableDeclarationTransformer=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithBlockLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeBlockLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(146),i=r(149);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(a.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(i.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(147),c=r(27),d=r(17),l=r(28),u=r(29),p=r(39),m=r(148);let f=o=class{constructor(e,t){Object.assign(this,p.DEFAULT_PRESET,e);const r=s.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${m.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};f.validatorOptions={validationError:{target:!1}},n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"compact",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"controlFlowFlattening",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"controlFlowFlatteningThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"deadCodeInjection",void 0),n.__decorate([s.IsNumber(),n.__metadata("design:type",Number)],f.prototype,"deadCodeInjectionThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtection",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtectionInterval",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"disableConsoleOutput",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"domainLock",void 0),n.__decorate([s.IsIn([c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,c.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,c.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),n.__metadata("design:type",Object)],f.prototype,"identifierNamesGenerator",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"identifiersPrefix",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),s.ValidateIf(e=>e.identifierNamesGenerator===c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),s.ArrayNotEmpty(),n.__metadata("design:type",Array)],f.prototype,"identifiersDictionary",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"inputFileName",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"log",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"renameGlobals",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedNames",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedStrings",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"rotateStringArray",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"selfDefending",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"sourceMap",void 0),n.__decorate([s.IsString(),s.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),s.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),n.__metadata("design:type",String)],f.prototype,"sourceMapBaseUrl",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"sourceMapFileName",void 0),n.__decorate([s.IsIn([l.SourceMapMode.Inline,l.SourceMapMode.Separate]),n.__metadata("design:type",Object)],f.prototype,"sourceMapMode",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"splitStrings",void 0),n.__decorate([s.IsNumber(),s.ValidateIf(e=>Boolean(e.splitStrings)),s.Min(1),n.__metadata("design:type",Number)],f.prototype,"splitStringsChunkLength",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"stringArray",void 0),n.__decorate([s.IsIn([!0,!1,u.StringArrayEncoding.Base64,u.StringArrayEncoding.Rc4]),n.__metadata("design:type",Object)],f.prototype,"stringArrayEncoding",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"stringArrayThreshold",void 0),n.__decorate([s.IsIn([d.ObfuscationTarget.Browser,d.ObfuscationTarget.BrowserNoEval,d.ObfuscationTarget.Node]),n.__metadata("design:type",Object)],f.prototype,"target",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"transformObjectKeys",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"unicodeEscapeSequence",void 0),f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TInputOptions)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptionsNormalizer)),n.__metadata("design:paramtypes",[Object,Object])],f),t.Options=f},function(e,t){e.exports=require("class-validator")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static format(e){return e.reduce((e,t)=>[...e,o.formatWithNestedConstraints(t)],[]).join("\n")}static formatWithNestedConstraints(e){const t=e.constraints;return`${`\`${e.property}\` errors:\n`}${Object.keys(t).map(e=>` - ${t[e]}\n`).join()}`}}t.ValidationErrorsFormatter=o},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(150),s=r(151),c=r(152),d=r(153),l=r(154),u=r(155),p=r(156),m=r(157),f=r(158),g=r(159),N=r(160),_=r(161),h=r(162);let b=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};b.normalizerRules=[i.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,p.SelfDefendingRule,m.SourceMapBaseUrlRule,f.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,N.StringArrayRule,_.StringArrayEncodingRule,h.StringArrayThresholdRule],b=o=n.__decorate([a.injectable()],b),t.OptionsNormalizer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ControlFlowFlatteningThresholdRule=e=>(0===e.controlFlowFlatteningThreshold&&(e=Object.assign(Object.assign({},e),{controlFlowFlattening:!1,controlFlowFlatteningThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(39);t.DeadCodeInjectionRule=e=>(e.deadCodeInjection&&((e=Object.assign(Object.assign({},e),{deadCodeInjection:!0,stringArray:!0})).stringArrayThreshold||(e=Object.assign(Object.assign({},e),{stringArray:!0,stringArrayThreshold:o.DEFAULT_PRESET.stringArrayThreshold}))),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeadCodeInjectionThresholdRule=e=>(0===e.deadCodeInjectionThreshold&&(e=Object.assign(Object.assign({},e),{deadCodeInjection:!1,deadCodeInjectionThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(26);t.DomainLockRule=e=>{if(e.domainLock.length){const t=[];for(const r of e.domainLock)t.push(o.Utils.extractDomainFrom(r));e=Object.assign(Object.assign({},e),{domainLock:t})}return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".").slice(0,-1).join(".")||t,e=Object.assign(Object.assign({},e),{inputFileName:`${t}.js`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeedRule=e=>{if(e.seed)return Object.assign(Object.assign({},e),{seed:e.seed});return Object.assign(Object.assign({},e),{seed:(t=0,r=999999999,Math.floor(Math.random()*(r-t+1)+t))});var t,r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingRule=e=>(e.selfDefending&&(e=Object.assign(Object.assign({},e),{compact:!0,selfDefending:!0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapBaseUrlRule=e=>{const{sourceMapBaseUrl:t}=e;return e.sourceMapFileName?(t&&!t.endsWith("/")&&(e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:`${t}/`})),e):e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:""})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".")[0],e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SplitStringsChunkLengthRule=e=>e=0===e.splitStringsChunkLength?Object.assign(Object.assign({},e),{splitStrings:!1,splitStringsChunkLength:0}):Object.assign(Object.assign({},e),{splitStringsChunkLength:Math.floor(e.splitStringsChunkLength)})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRule=e=>(e.stringArray||(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingRule=e=>(!0===e.stringArrayEncoding&&(e=Object.assign(Object.assign({},e),{stringArrayEncoding:o.StringArrayEncoding.Base64})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayThresholdRule=e=>(0===e.stringArrayThreshold&&(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(19),s=r(49),c=r(164),d=r(165),l=r(50),u=r(166),p=r(167),m=r(169),f=r(170),g=r(171),N=r(172),_=r(173);t.preparingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.CustomNodesTransformer).whenTargetNamed(i.NodeTransformer.CustomNodesTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.EvalCallExpressionTransformer).whenTargetNamed(i.NodeTransformer.EvalCallExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.MetadataTransformer).whenTargetNamed(i.NodeTransformer.MetadataTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.ObfuscatingGuardsTransformer).whenTargetNamed(i.NodeTransformer.ObfuscatingGuardsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ParentificationTransformer).whenTargetNamed(i.NodeTransformer.ParentificationTransformer),e(a.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(l.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(N.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(a.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeGuard)),e(a.ServiceIdentifiers.INodeTransformer).to(_.VariablePreserveTransformer).whenTargetNamed(i.NodeTransformer.VariablePreserveTransformer)})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t{if(l.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(e.comments){const t=this.transformComments(e.comments);s.traverse(e,{enter:e=>{if(0===t.length)return;const r=t.findIndex(t=>t.range&&e.range&&t.range[0]0&&(e.trailingComments=t.reverse())}return e}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||u.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};p.preservedWords=["@license","@preserve"],p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.CommentsTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(21),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.stackTraceData=[],this.stackTraceAnalyzer=e,this.obfuscationEventEmitter=t,this.customNodeGroupStorage=r}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{leave:(e,t)=>{if(d.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case s.TransformationStage.Finalizing:return{leave:(e,t)=>{d.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.stackTraceData=this.stackTraceAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customNodeGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendCustomNodes.bind(e))}),this.obfuscationEventEmitter.emit(i.ObfuscationEvent.BeforeObfuscation,e,this.stackTraceData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(i.ObfuscationEvent.AfterObfuscation,e,this.stackTraceData)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IStackTraceAnalyzer)),o.__param(1,n.inject(a.ServiceIdentifiers.IObfuscationEventEmitter)),o.__param(2,n.inject(a.ServiceIdentifiers.TCustomNodeGroupStorage)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],l),t.CustomNodesTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(168)),c=r(6),d=r(7),l=r(8),u=r(3),p=r(5);let m=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return u.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):u.NodeGuards.isTemplateLiteralNode(e)?o.extractEvalStringFromTemplateLiteralNode(e):null}static extractEvalStringFromLiteralNode(e){return"string"==typeof e.value?e.value:null}static extractEvalStringFromTemplateLiteralNode(e){const t=e.quasis;return 1!==t.length||e.expressions.length?null:t[0].value.cooked}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&u.NodeGuards.isCallExpressionNode(e)&&u.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case c.TransformationStage.Finalizing:return this.evalRootAstHostNodeSet.size?{leave:(e,t)=>{if(t&&this.isEvalRootAstHostNode(e))return this.restoreNode(e,t)}}:null;default:return null}}transformNode(e,t){const r=e.arguments[0];if(!r)return e;const n=o.extractEvalStringFromCallExpressionArgument(r);if(!n)return e;let a;try{a=p.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const i=l.NodeFactory.functionExpressionNode([],l.NodeFactory.blockStatementNode(a));return this.evalRootAstHostNodeSet.add(i),i}restoreNode(e,t){const r=e.body.body,o=p.NodeUtils.convertStructureToCode(r);return l.NodeFactory.callExpressionNode(l.NodeFactory.identifierNode("eval"),[l.NodeFactory.literalNode(s.default(o))])}isEvalRootAstHostNode(e){return u.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],m),t.EvalCallExpressionTransformer=m},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(3),d=r(11);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return d.NodeMetadata.set(e,{ignoredNode:!1}),c.NodeGuards.isIdentifierNode(e)&&d.NodeMetadata.set(e,{renamedIdentifier:!1}),c.NodeGuards.isLiteralNode(e)&&d.NodeMetadata.set(e,{replacedLiteral:!1}),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MetadataTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(49),c=r(6),d=r(7),l=r(11);let u=o=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){const r=this.obfuscatingGuards.every(t=>t.check(e));return l.NodeMetadata.set(e,{ignoredNode:!r}),e}};u.obfuscatingGuardsList=[s.ObfuscatingGuard.BlackListObfuscatingGuard,s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,s.ObfuscatingGuard.ReservedStringObfuscatingGuard],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__INodeGuard)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ObfuscatingGuardsTransformer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(5);let d=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return c.NodeUtils.parentizeNode(e,t)}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.ParentificationTransformer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(3);let s=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!i.NodeGuards.isLiteralNode(e)||"string"!=typeof e.value||!this.isReservedString(e.value)}isReservedString(e){return this.options.reservedStrings.some(t=>null!==new RegExp(t,"g").exec(e))}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],s),t.ReservedStringObfuscatingGuard=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(14),i=r(2),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{enter:(e,t)=>{if(d.NodeGuards.isIdentifierNode(e)&&t&&(d.NodeGuards.parentNodeIsPropertyNode(e,t)||d.NodeGuards.parentNodeIsMemberExpressionNode(e,t)||d.NodeGuards.parentNodeIsMethodDefinitionNode(e,t)||d.NodeGuards.isLabelIdentifierNode(e,t)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.identifierObfuscatingReplacer.preserveName(e.name),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(i.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(i.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.VariablePreserveTransformer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(175),i=r(176),s=r(177);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(i.CustomNodeGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.TStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(a.ControlFlowStorage),e(n.ServiceIdentifiers.Factory__TControlFlowStorage).toFactory(e=>()=>{const t=new(e.container.get(n.ServiceIdentifiers.Newable__TControlFlowStorage))(e.container.get(n.ServiceIdentifiers.IRandomGenerator),e.container.get(n.ServiceIdentifiers.IOptions));return t.initialize(),t})})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(51);let s=class extends i.MapStorage{constructor(e,t){super(e,t)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ControlFlowStorage=s},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(47),c=r(51);let d=o=class extends c.MapStorage{constructor(e,t,r){super(t,r),this.customNodeGroupFactory=e}initialize(){super.initialize(),o.customNodeGroupsList.forEach(e=>{const t=this.customNodeGroupFactory(e);t&&this.storage.set(e,t)})}};d.customNodeGroupsList=[s.CustomNodeGroup.ConsoleOutputCustomNodeGroup,s.CustomNodeGroup.DebugProtectionCustomNodeGroup,s.CustomNodeGroup.DomainLockCustomNodeGroup,s.CustomNodeGroup.SelfDefendingCustomNodeGroup,s.CustomNodeGroup.StringArrayCustomNodeGroup],n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],d.prototype,"initialize",null),d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICustomNodeGroup)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.CustomNodeGroupStorage=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(178);let c=o=class extends s.ArrayStorage{constructor(e,t,r,o){super(r,o),this.identifierNamesGenerator=e(o),this.arrayUtils=t}initialize(){super.initialize();const e=this.identifierNamesGenerator.generate(o.stringArrayNameLength),t=this.identifierNamesGenerator.generate(o.stringArrayNameLength),r=`${this.options.identifiersPrefix}${e}`,n=`${this.options.identifiersPrefix}${t}`;this.storageId=`${r}|${n}`}rotateArray(e){this.storage=this.arrayUtils.rotate(this.storage,e)}toString(){return this.storage.map(e=>`'${e}'`).toString()}};c.stringArrayNameLength=7,n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],c.prototype,"initialize",null),c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],c),t.StringArrayStorage=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4);let s=class{constructor(e,t){this.storageLength=0,this.randomGenerator=e,this.options=t}initialize(){this.storage=[],this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage[e];if(!t)throw new Error(`No value found in array storage with key \`${e}\``);return t}getKeyOf(e){const t=this.storage.indexOf(e);return t>=0?t:null}getLength(){return this.storageLength}getStorage(){return this.storage}getStorageId(){return this.storageId}mergeWith(e,t=!1){this.storage=[...this.storage,...e.getStorage()],t&&(this.storageId=e.getStorageId())}set(e,t){e===this.storageLength?this.storage.push(t):this.storage.splice(e,0,t),this.storageLength++}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],s.prototype,"storage",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],s.prototype,"storageId",void 0),o.__decorate([n.postConstruct(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",void 0)],s.prototype,"initialize",null),s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ArrayStorage=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(180),i=r(181),s=r(184),c=r(185),d=r(186),l=r(52);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(a.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(i.CryptUtils).inSingletonScope(),e(n.ServiceIdentifiers.IEscapeSequenceEncoder).to(s.EscapeSequenceEncoder).inSingletonScope(),e(n.ServiceIdentifiers.ILevelledTopologicalSorter).to(c.LevelledTopologicalSorter),e(n.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder).to(d.NodeTransformerNamesGroupsBuilder).inSingletonScope()})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rString.fromCharCode(parseInt(`${s.Utils.hexadecimalPrefix}${t}`)));for(let r,o,n=0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(a="=",n%1);t+=a.charAt(63&r>>8-n%1*8)){if(o=e.charCodeAt(n+=.75),o>255)throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");r=r<<8|o}return t}hideString(e,t){let r=this.randomGenerator.getRandomGenerator().string({length:t,pool:i.RandomGenerator.randomGeneratorPool}).replace(new RegExp(`[${o=e,o.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}]`,"g"),"");var o;const n=r.split("");return this.randomGenerator.getRandomGenerator().shuffle(n),r=n.join(""),[((e,t)=>{let r=-1,o=-1,n="";for(;rt||n.exec(e)?(a.exec(e)?(i="\\x",s="00"):(i="\\u",s="0000"),`${i}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(r,c),c}};a=o.__decorate([n.injectable()],a),t.EscapeSequenceEncoder=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],r={};for(const o of e)void 0===r[o]&&this.visit(t,r,o);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const r of t){for(let t=r.length-1;t>=0;t-=1)r[t]===e&&r.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const r of e)this.hasPrecedents(r)||t.push(r);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const r=this.graph.get(t);return r&&!r.includes(e)&&r.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,r){const o=t[r];if("visiting"===o)throw new Error(`Detected cycle involving node: ${r}`);if(o)return;t[r]="visiting";const n=this.getPrecedents(r);for(const r of n)this.visit(e,t,r);t[r]="ok",e.push(r)}};a=o.__decorate([n.injectable()],a),t.LevelledTopologicalSorter=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),r=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of r)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const r=[];for(const o of e){const e=t[o].runAfter;if(e&&e.length)for(const n of e){!t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ILevelledTopologicalSorter)),o.__metadata("design:paramtypes",[Object])],i),t.NodeTransformerNamesGroupsBuilder=i},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(36)),c=r(188),d=r(19),l=r(6),u=r(189),p=r(3);let m=o=class{constructor(e,t,r,o,n){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=r,this.logger=o,this.options=n}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.3"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),a=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,a),this.getObfuscatedCode(n)}parseCode(e){return u.EspreeFacade.parse(e,o.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,l.TransformationStage.Initializing),!p.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,l.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,l.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,l.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,l.TransformationStage.Converting),e=this.runTransformationStage(e,l.TransformationStage.Obfuscating),e=this.runTransformationStage(e,l.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const r=Object.assign({},o.escodegenParams);this.options.sourceMap&&(r.sourceMap=this.options.inputFileName||"sourceMap",r.sourceContent=e);const n=s.generate(t,Object.assign(Object.assign({},r),{format:{compact:this.options.compact}}));return n.map=n.map?n.map.toString():"",n}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[d.NodeTransformer.BlockStatementControlFlowTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.CommentsTransformer,d.NodeTransformer.CustomNodesTransformer,d.NodeTransformer.DeadCodeInjectionTransformer,d.NodeTransformer.EvalCallExpressionTransformer,d.NodeTransformer.FunctionControlFlowTransformer,d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.ImportDeclarationTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.LiteralTransformer,d.NodeTransformer.MemberExpressionTransformer,d.NodeTransformer.MetadataTransformer,d.NodeTransformer.MethodDefinitionTransformer,d.NodeTransformer.ObfuscatingGuardsTransformer,d.NodeTransformer.ObjectExpressionKeysTransformer,d.NodeTransformer.ObjectExpressionTransformer,d.NodeTransformer.ParentificationTransformer,d.NodeTransformer.SplitStringTransformer,d.NodeTransformer.TemplateLiteralTransformer,d.NodeTransformer.VariableDeclarationTransformer,d.NodeTransformer.VariablePreserveTransformer],m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IObfuscatedCode)),n.__param(3,a.inject(i.ServiceIdentifiers.ILogger)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(43)),a=o.__importDefault(r(53));class i{static parse(e,t){const r=i.sourceTypes.length;for(let o=0;o"),c=`...${o.substring(n,a).replace(/^\s+/,"")}...`;throw new Error(`Line ${r.line}: ${t}\n${s} ${c}`)}}t.EspreeFacade=i,i.colorError=a.default.red,i.nearestSymbolsCount=15,i.sourceTypes=["script","module"]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importDefault(r(191));n.decorate(n.injectable(),a.default);let i=class extends a.default{};i=o.__decorate([n.injectable()],i),t.ObfuscationEventEmitter=i},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(28);let c=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case s.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case s.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"obfuscatedCode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"sourceMap",void 0),c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],c),t.ObfuscatedCode=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(195),c=r(3),d=r(11);let l=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;let o,n;this.cachedNodeTransformersData.has(t)?[o,n]=this.cachedNodeTransformersData.get(t):(o=this.buildNormalizedNodeTransformers(t),n=this.nodeTransformerNamesGroupsBuilder.build(o),this.cachedNodeTransformersData.set(t,[o,n]));for(const t of n){const n=[],a=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&a.push({leave:t.leave}))}(n.length||a.length)&&i.replace(e,{enter:this.mergeVisitorsForDirection(n,s.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(a,s.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(d.NodeMetadata.isIgnoredNode(o))return i.VisitorOption.Skip;for(let a=0;ae}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__INodeTransformer)),o.__param(1,n.inject(a.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o.__metadata("design:paramtypes",[Function,Object])],l),t.TransformersRunner=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(202)),a=o.__importStar(r(197)),i=r(4),s=r(39),c=r(203),d=r(204),l=r(205),u=r(206),p=r(207),m=r(208),f=r(209),g=r(24),N=r(212);class _{constructor(e){this.rawArguments=e,this.arguments=e.slice(2)}static filterOptions(e){const t={};return Object.keys(e).forEach(r=>{void 0!==e[r]&&(t[r]=e[r])}),t}static processSourceCodeWithoutSourceMap(e,t,r){const o=g.JavaScriptObfuscator.obfuscate(e,r).getObfuscatedCode();f.CLIUtils.writeFile(t,o)}static processSourceCodeWithSourceMap(e,t,r){const o=f.CLIUtils.getOutputSourceMapPath(t,r.sourceMapFileName||"");r=Object.assign(Object.assign({},r),{sourceMapFileName:a.basename(o)});const n=g.JavaScriptObfuscator.obfuscate(e,r);f.CLIUtils.writeFile(t,n.getObfuscatedCode()),"separate"===r.sourceMapMode&&n.getSourceMap()&&f.CLIUtils.writeFile(o,n.getSourceMap())}initialize(){this.inputPath=a.normalize(this.arguments[0]||""),this.commands=new n.Command,this.configureCommands(),this.configureHelp(),this.inputCLIOptions=this.commands.opts()}run(){if(!this.arguments.length||this.arguments.includes("--help"))return void this.commands.outputHelp();const e=new N.SourceCodeReader(this.inputCLIOptions).readSourceCode(this.inputPath);this.processSourceCodeData(e)}buildOptions(){const e=_.filterOptions(this.inputCLIOptions),t=this.inputCLIOptions.config,r=t?a.resolve(t,"."):"",o=r?f.CLIUtils.getUserConfig(r):{},n=a.basename(this.inputPath);return Object.assign(Object.assign(Object.assign(Object.assign({},s.DEFAULT_PRESET),o),e),{inputFileName:n})}configureCommands(){this.commands.usage(" [options]").version("0.20.3","-v, --version").option("-o, --output ","Output path for obfuscated code").option("--compact ","Disable one line output code compacting",d.BooleanSanitizer).option("--config ","Name of js / json config file").option("--control-flow-flattening ","Enables control flow flattening",d.BooleanSanitizer).option("--control-flow-flattening-threshold ","The probability that the control flow flattening transformation will be applied to the node",parseFloat).option("--dead-code-injection ","Enables dead code injection",d.BooleanSanitizer).option("--dead-code-injection-threshold ","The probability that the dead code injection transformation will be applied to the node",parseFloat).option("--debug-protection ","Disable browser Debug panel (can cause DevTools enabled browser freeze)",d.BooleanSanitizer).option("--debug-protection-interval ","Disable browser Debug panel even after page was loaded (can cause DevTools enabled browser freeze)",d.BooleanSanitizer).option("--disable-console-output ","Allow console.log, console.info, console.error and console.warn messages output into browser console",d.BooleanSanitizer).option("--domain-lock (comma separated, without whitespaces)","Blocks the execution of the code in domains that do not match the passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--exclude (comma separated, without whitespaces)","A filename or glob which indicates files to exclude from obfuscation",c.ArraySanitizer).option("--identifier-names-generator ","Sets identifier names generator. Values: hexadecimal, mangled, dictionary. Default: hexadecimal",l.IdentifierNamesGeneratorSanitizer).option("--identifiers-prefix ","Sets prefix for all global identifiers.").option("--identifiers-dictionary (comma separated, without whitespaces)","Identifiers dictionary (comma separated) for `--identifier-names-generator dictionary` option",c.ArraySanitizer).option("--log ","Enables logging of the information to the console",d.BooleanSanitizer).option("--reserved-names (comma separated, without whitespaces)","Disables obfuscation and generation of identifiers, which being matched by passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--reserved-strings (comma separated, without whitespaces)","Disables transformation of string literals, which being matched by passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--rename-globals ","Allows to enable obfuscation of global variable and function names with declaration.",d.BooleanSanitizer).option("--rotate-string-array ","Disable rotation of unicode array values during obfuscation",d.BooleanSanitizer).option("--seed ","Sets seed for random generator. This is useful for creating repeatable results.",parseFloat).option("--self-defending ","Disables self-defending for obfuscated code",d.BooleanSanitizer).option("--source-map ","Enables source map generation",d.BooleanSanitizer).option("--source-map-base-url ","Sets base url to the source map import url when `--source-map-mode=separate`").option("--source-map-file-name ","Sets file name for output source map when `--source-map-mode=separate`").option("--source-map-mode ","Specify source map output mode. Values: inline, separate. Default: separate",p.SourceMapModeSanitizer).option("--split-strings ","Splits literal strings into chunks with length of `splitStringsChunkLength` option value",d.BooleanSanitizer).option("--split-strings-chunk-length ","Sets chunk length of `splitStrings` option",parseFloat).option("--string-array ","Disables gathering of all literal strings into an array and replacing every literal string with an array call",d.BooleanSanitizer).option("--string-array-encoding ","Encodes all strings in strings array using base64 or rc4 (this option can slow down your code speed. Values: true, false, base64, rc4. Default: false",m.StringArrayEncodingSanitizer).option("--string-array-threshold ","The probability that the literal string will be inserted into stringArray (Default: 0.8, Min: 0, Max: 1)",parseFloat).option("--target ","Allows to set target environment for obfuscated code. Values: browser, browser-no-eval, node. Default: browser",u.ObfuscationTargetSanitizer).option("--transform-object-keys ","Enables transformation of object keys",d.BooleanSanitizer).option("--unicode-escape-sequence ","Allows to enable/disable string conversion to unicode escape sequence",d.BooleanSanitizer).parse(this.rawArguments)}configureHelp(){this.commands.on("--help",()=>{console.log(" Examples:\n"),console.log(" %> javascript-obfuscator input_file_name.js --compact true --self-defending false"),console.log(" %> javascript-obfuscator input_file_name.js --output output_file_name.js --compact true --self-defending false"),console.log(" %> javascript-obfuscator input_directory_name --compact true --self-defending false"),console.log("")})}processSourceCodeData(e){const t=this.inputCLIOptions.output?a.normalize(this.inputCLIOptions.output):"";if(Array.isArray(e))e.forEach(({filePath:e,content:r},o)=>{const n=t?a.join(t,e):f.CLIUtils.getOutputCodePath(e);this.processSourceCode(r,n,o)});else{const r=t||f.CLIUtils.getOutputCodePath(this.inputPath);this.processSourceCode(e,r,null)}}processSourceCode(e,t,r){let o=this.buildOptions();if(null!==r){const e=`${this.inputCLIOptions.identifiersPrefix||_.baseIdentifiersPrefix}${r}`;o=Object.assign(Object.assign({},o),{identifiersPrefix:e})}o.sourceMap?_.processSourceCodeWithSourceMap(e,t,o):_.processSourceCodeWithoutSourceMap(e,t,o)}}_.encoding="utf8",_.obfuscatedFilePrefix="-obfuscated",_.baseIdentifiersPrefix="a",o.__decorate([i.initializable(),o.__metadata("design:type",Object)],_.prototype,"commands",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],_.prototype,"inputCLIOptions",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],_.prototype,"inputPath",void 0),t.JavaScriptObfuscatorCLI=_},function(e,t){e.exports=require("path")},function(e,t){e.exports=require("fs")},,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(201);e.exports=o.JavaScriptObfuscatorCLI},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(196);t.JavaScriptObfuscatorCLI=class{static obfuscate(e){const t=new o.JavaScriptObfuscatorCLI(e);t.initialize(),t.run()}}},function(e,t){e.exports=require("commander")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArraySanitizer=e=>{if(/,$/.test(e))throw new SyntaxError("Multiple values should be wrapped inside quotes: --option-name 'value1','value2'");return e.split(",").map(e=>e.trim())}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanSanitizer=e=>"true"===e||"1"===e},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27);t.IdentifierNamesGeneratorSanitizer=e=>{if(!Object.keys(o.IdentifierNamesGenerator).some(t=>o.IdentifierNamesGenerator[t]===e))throw new ReferenceError("Invalid value of `--identifier-names-generator` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17);t.ObfuscationTargetSanitizer=e=>{if(!Object.keys(o.ObfuscationTarget).some(t=>o.ObfuscationTarget[t]===e))throw new ReferenceError("Invalid value of `--target` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);t.SourceMapModeSanitizer=e=>{if(!Object.keys(o.SourceMapMode).some(t=>o.SourceMapMode[t]===e))throw new ReferenceError("Invalid value of `--source-map-mode` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingSanitizer=e=>{switch(e){case"true":case"1":case o.StringArrayEncoding.Base64:return!0;case o.StringArrayEncoding.Rc4:return o.StringArrayEncoding.Rc4;default:return!1}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(198)),a=o.__importStar(r(210)),i=o.__importStar(r(197)),s=r(196);t.CLIUtils=class{static getOutputCodePath(e){return i.normalize(e).split(".").map((e,t)=>0===t?`${e}${s.JavaScriptObfuscatorCLI.obfuscatedFilePrefix}`:e).join(".")}static getOutputSourceMapPath(e,t=""){return t&&(e=`${e.substring(0,e.lastIndexOf("/"))}/${t}`),/\.js\.map$/.test(e)?/\.js$/.test(e)&&(e+=".map"):e=`${e.split(".")[0]}.js.map`,e}static getUserConfig(e){let t;try{t=r(211)(e)}catch(r){try{t=require(e)}catch(e){throw new ReferenceError("Given config path must be a valid `.js` or `.json` file path")}}return t}static writeFile(e,t){a.sync(i.dirname(e)),n.writeFileSync(e,t,{encoding:s.JavaScriptObfuscatorCLI.encoding})}}},function(e,t){e.exports=require("mkdirp")},function(e,t){function r(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}r.keys=function(){return[]},r.resolve=r,e.exports=r,r.id=211},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(198)),a=o.__importStar(r(197)),i=o.__importDefault(r(213)),s=r(56),c=r(196),d=r(55);class l{constructor(e){this.options=e}static isExcludedPath(e,t=[]){if(!t.length)return!1;const r=a.basename(e),o=!!i.default([e],t).length;return t.some(t=>e.includes(t)||r.includes(t))||o}static isDirectoryPath(e){try{return n.statSync(e).isDirectory()}catch(e){return!1}}static isFilePath(e){try{return n.statSync(e).isFile()}catch(e){return!1}}static logFilePath(e){const t=a.normalize(e);d.Logger.log(d.Logger.colorInfo,s.LoggingPrefix.CLI,`Obfuscating file: ${t}...`)}readSourceCode(e){if(l.isFilePath(e)&&this.isValidFile(e))return this.readFile(e);if(l.isDirectoryPath(e)&&this.isValidDirectory(e))return this.readDirectoryRecursive(e);const t=l.availableInputExtensions.map(e=>`\`${e}\``).join(", ");throw new ReferenceError(`Given input path must be a valid ${t} file or directory path`)}readDirectoryRecursive(e,t=[]){return n.readdirSync(e,c.JavaScriptObfuscatorCLI.encoding).forEach(r=>{const o=`${e}/${r}`;if(l.isDirectoryPath(o)&&this.isValidDirectory(o))t.push(...this.readDirectoryRecursive(o));else if(l.isFilePath(o)&&this.isValidFile(o)){const e=this.readFile(o);t.push({filePath:o,content:e})}}),t}readFile(e){return l.logFilePath(e),n.readFileSync(e,c.JavaScriptObfuscatorCLI.encoding)}isValidDirectory(e){return!l.isExcludedPath(e,this.options.exclude)}isValidFile(e){return l.availableInputExtensions.includes(a.extname(e))&&!e.includes(c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix)&&!l.isExcludedPath(e,this.options.exclude)}}t.SourceCodeReader=l,l.availableInputExtensions=[".js"]},function(e,t){e.exports=require("multimatch")}]); +require("source-map-support").install(),module.exports=function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=200)}([function(e,t){e.exports=require("inversify")},function(e,t){e.exports=require("tslib")},function(e,t,r){"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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(13);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentPatternNode(e){return e.type===o.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===o.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===o.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===o.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===o.NodeType.CallExpression}static isCatchClauseNode(e){return e.type===o.NodeType.CatchClause}static isClassDeclarationNode(e){return e.type===o.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===o.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===o.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===o.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===o.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return n.isFunctionDeclarationNode(e)||n.isFunctionExpressionNode(e)||n.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===o.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===o.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===o.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===o.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===o.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const r=n.isLabeledStatementNode(t)&&t.label===e,o=n.isContinueStatementNode(t)&&t.label===e,a=n.isBreakStatementNode(t)&&t.label===e;return r||o||a}static isLabeledStatementNode(e){return e.type===o.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===o.NodeType.Literal}static isMemberExpressionNode(e){return e.type===o.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===o.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return n.isProgramNode(e)||n.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return n.isNodeWithLexicalScope(e)||n.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return n.isProgramNode(e)||n.isBlockStatementNode(e)&&n.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return n.isProgramNode(e)||n.isBlockStatementNode(e)||n.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===o.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===o.NodeType.ObjectExpression}static isProgramNode(e){return e.type===o.NodeType.Program}static isPropertyNode(e){return e.type===o.NodeType.Property}static parentNodeIsPropertyNode(e,t){return n.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return n.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return n.isMethodDefinitionNode(t)&&!t.computed}static isReplaceableIdentifierNode(e,t){return n.isIdentifierNode(e)&&!n.parentNodeIsPropertyNode(e,t)&&!n.parentNodeIsMemberExpressionNode(e,t)&&!n.parentNodeIsMethodDefinitionNode(e,t)&&!n.isLabelIdentifierNode(e,t)}static isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSuperNode(e){return e.type===o.NodeType.Super}static isSwitchCaseNode(e){return e.type===o.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===o.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===o.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===o.NodeType.UnaryExpression}static isUseStrictOperator(e){return n.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===o.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===o.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===o.NodeType.WhileStatement}}t.NodeGuards=n,n.nodesWithLexicalStatements=[o.NodeType.ArrowFunctionExpression,o.NodeType.FunctionDeclaration,o.NodeType.FunctionExpression,o.NodeType.MethodDefinition]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o={configurable:!0,enumerable:!0};function n(e,t,r){Reflect.hasMetadata(e,r)||Reflect.defineMetadata(e,t,r)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(r,a)=>{const i=r[e];if(!i||"function"!=typeof i)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return n("_initialized",!1,r),n("_initializablePropertiesSet",new Set,r),n("_wrappedMethodsSet",new Set,r),function(e,t){const r=Object.getOwnPropertyNames(e),n=[t,"constructor"];r.forEach(r=>{const a=Reflect.getMetadata("_initializablePropertiesSet",e),i=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||i.has(r))return;if("function"!=typeof e[r])return;const s=Object.getOwnPropertyDescriptor(e,r)||o,c=s.value;Object.defineProperty(e,r,Object.assign(Object.assign({},s),{value:function(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return c.apply(this,arguments)}})),i.add(r)})}(r,e),function(e,t,r){const n=Object.getOwnPropertyDescriptor(e,t)||o,a=n.value;Object.defineProperty(e,t,Object.assign(Object.assign({},n),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,a),function(e,t){Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const r=`_${t.toString()}`,n=Object.getOwnPropertyDescriptor(e,r)||o;return Object.defineProperty(e,t,Object.assign(Object.assign({},n),{get:function(){if(void 0===this[r])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[r]},set:function(e){this[r]=e}})),n}(r,a)}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(36)),a=o.__importStar(r(43)),i=o.__importStar(r(10)),s=r(3),c=r(11);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=a.parse(e,{sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),c.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+n.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.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(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(d.cloneRecursive):"object"==typeof o?d.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=d},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.randomGenerator=e,this.options=t}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractNodeTransformer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1).__importStar(r(36)),n=r(13);class a{static programNode(e=[]){return{type:n.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:n.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,r){return{type:n.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:n.NodeType.BinaryExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:n.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:n.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:n.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:n.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:n.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:n.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,r){return{type:n.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:n.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,r){return Object.assign(Object.assign({type:n.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:n.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:n.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:n.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:n.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:n.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:n.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:n.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:n.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:n.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:n.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,r=!0){return{type:n.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:n.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:n.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:n.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:n.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(86),c=r(87);let d=o=class{constructor(e,t,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}};d.globalVariableTemplateFunctions=[s.GlobalVariableTemplate1(),c.GlobalVariableTemplate2()],d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.AbstractCustomNode=d},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{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===o.get(e,"ignoredNode")}static isRenamedIdentifier(e){return!0===o.get(e,"renamedIdentifier")}static isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t){e.exports=require("string-template")},function(e,t,r){"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.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",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.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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(57),i=r(62),s=r(70),c=r(79),d=r(125),l=r(126),u=r(130),p=r(131),m=r(145),f=r(163),g=r(174),N=r(179),_=r(187),h=r(55),b=r(190),y=r(192),S=r(193),I=r(194);t.InversifyContainerFacade=class{constructor(){this.container=new o.Container}static getFactory(e){return t=>r=>t.container.getNamed(e,r)}static getCacheFactory(e){return t=>{const r=new Map;return o=>{if(r.has(o))return r.get(o);const n=t.container.getNamed(e,o);return r.set(o,n),n}}}static getConstructorFactory(e,...t){return r=>{const o=new Map,n=[];return a=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(a))return new(o.get(a))(...n);const i=r.container.getNamed(e,a);return o.set(a,i),new i(...n)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,r){this.container.bind(n.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new S.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(h.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(_.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(I.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(y.ObfuscatedCode),this.container.bind(n.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,r)=>{const o=e.container.get(n.ServiceIdentifiers.IObfuscatedCode);return o.initialize(t,r),o}),this.container.bind(n.ServiceIdentifiers.IObfuscationEventEmitter).to(b.ObfuscationEventEmitter).inSingletonScope(),this.container.load(a.analyzersModule),this.container.load(i.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(u.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(f.preparingTransformersModule),this.container.load(g.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionFunctionNode="BinaryExpressionFunctionNode",e.BlockStatementControlFlowFlatteningNode="BlockStatementControlFlowFlatteningNode",e.CallExpressionControlFlowStorageCallNode="CallExpressionControlFlowStorageCallNode",e.CallExpressionFunctionNode="CallExpressionFunctionNode",e.ControlFlowStorageNode="ControlFlowStorageNode",e.ExpressionWithOperatorControlFlowStorageCallNode="ExpressionWithOperatorControlFlowStorageCallNode",e.LogicalExpressionFunctionNode="LogicalExpressionFunctionNode",e.StringLiteralControlFlowStorageCallNode="StringLiteralControlFlowStorageCallNode",e.StringLiteralNode="StringLiteralNode"}(t.ControlFlowCustomNode||(t.ControlFlowCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getParentNodeWithStatements(e){return n.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return n.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return n.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return n.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(o.NodeGuards.isProgramNode(e))throw new Error("Unable to find root statement for `Program` node");const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?e:n.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?t:n.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,i)&&a>0)&&r.push(e),e!==i?n.getParentNodesWithStatementsRecursive(i,t,r,++a):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),a=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,i=a.indexOf(e);return a[i+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static append(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,r,o=0){const a=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(a,r)}static getOptimalBlockScope(e,t,r=1/0){const o=e[t];if(r<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return r>1&&o.stackTrace.length?n.getOptimalBlockScope(o.stackTrace,0,--r):o.callee}static insertAfter(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o+1)}static insertAtIndex(e,t,r){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e).slice(0,r),...t,...n.getScopeStatements(e).slice(r)])}static prepend(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...t,...n.getScopeStatements(e)])}static getScopeStatements(e){return o.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){o.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(2),n=r(15);class a{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const a=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),a}}t.JavaScriptObfuscator=a,a.version="0.20.4"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const r=this.customNodes.get(e);r&&t(r)}getRandomStackTraceIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],i),t.AbstractCustomNodeGroup=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.IdentifierNamesGenerator=o.MakeEnum({DictionaryIdentifierNamesGenerator:"dictionary",HexadecimalIdentifierNamesGenerator:"hexadecimal",MangledIdentifierNamesGenerator:"mangled"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.NO_ADDITIONAL_NODES_PRESET=Object.freeze({compact:!0,controlFlowFlattening:!1,controlFlowFlatteningThreshold:0,deadCodeInjection:!1,deadCodeInjectionThreshold:0,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!1,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:0,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.NumberUtils=class{static toHex(e){return e.toString(16)}static isCeil(e){return e%1==0}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.options=e}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],i),t.AbstractObfuscatingReplacer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{};a=o.__decorate([n.injectable()],a),t.AbstractCalleeDataExtractor=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2);let s=o=class{constructor(e,t,r){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=r}static getStorageKeysByIdForCurrentStorage(e,t){let r;return r=e.has(t)?e.get(t):new Map,r}insertCustomNodeToControlFlowStorage(e,t,r,n){const a=t.getStorageId(),i=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,a),s=i.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return i.set(r,[d]),this.replacerDataByControlFlowStorageId.set(a,i),t.set(d,e),d}};s=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],s),t.AbstractControlFlowReplacer=s},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n var that = (typeof window !== 'undefined'\n ? window\n : (typeof process === 'object' &&\n typeof require === 'function' &&\n typeof global === 'object')\n ? global\n : this);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractIdentifierNamesGenerator=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.FunctionDeclarationCalleeDataExtractor="FunctionDeclarationCalleeDataExtractor",e.FunctionExpressionCalleeDataExtractor="FunctionExpressionCalleeDataExtractor",e.ObjectExpressionCalleeDataExtractor="ObjectExpressionCalleeDataExtractor"}(t.CalleeDataExtractor||(t.CalleeDataExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionControlFlowReplacer="BinaryExpressionControlFlowReplacer",e.CallExpressionControlFlowReplacer="CallExpressionControlFlowReplacer",e.LogicalExpressionControlFlowReplacer="LogicalExpressionControlFlowReplacer",e.StringLiteralControlFlowReplacer="StringLiteralControlFlowReplacer"}(t.ControlFlowReplacer||(t.ControlFlowReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(16),s=r(35),c=r(3);let d=class extends s.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!c.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IControlFlowCustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.ExpressionWithOperatorControlFlowReplacer=d},function(e,t){e.exports=require("espree")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementDeadCodeInjectionNode="BlockStatementDeadCodeInjectionNode"}(t.DeadCodeInjectionCustomNode||(t.DeadCodeInjectionCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AssignmentExpressionPropertiesExtractor="AssignmentExpressionPropertiesExtractor",e.VariableDeclaratorPropertiesExtractor="VariableDeclaratorPropertiesExtractor"}(t.PropertiesExtractor||(t.PropertiesExtractor={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(20),c=r(8),d=r(3),l=r(18);let u=o=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return d.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:d.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return d.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||d.NodeGuards.isObjectPatternNode(e)||d.NodeGuards.isArrayPatternNode(e)||d.NodeGuards.isAssignmentPatternNode(e)||d.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const r=e.length,n=[],a=[];for(let i=0;i!t.includes(r))}transformObjectExpressionNode(e,t){const r=e.properties,[o,n]=this.extractPropertiesToExpressionStatements(r,t),a=this.getHostStatement(e),i=this.getHostNodeWithStatements(e,a);return this.filterExtractedObjectExpressionProperties(e,n),s.NodeAppender.insertAfter(i,o,a),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const r=l.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,r),r}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=l.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.AbstractPropertiesExtractor=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return o.obfuscationEnableCommentRegExp.test(e.value)||o.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!i.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,r=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),r&&(this.obfuscationAllowedForNextNode=this.checkComments(r)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let r=this.obfuscationAllowedForCurrentNode;for(let n=0;n1?e:`${e}|${s.default(this.sourceCode.getSourceCode())}`}};l.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n.__decorate([d.initializable(),n.__metadata("design:type",Object)],l.prototype,"randomGenerator",void 0),n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],l.prototype,"initialize",null),l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ISourceCode)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.RandomGenerator=l},function(e,t){e.exports=require("chalk")},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(53)),c=r(56);let d=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,o||"")}info(e,t){this.options.log&&o.log(o.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,c.LoggingPrefix.Base,e,t)}};d.colorInfo=s.default.cyan,d.colorSuccess=s.default.green,d.colorWarn=s.default.yellow,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.Logger=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(40),s=r(58),c=r(59),d=r(60),l=r(61);t.analyzersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.IStackTraceAnalyzer).to(l.StackTraceAnalyzer).inSingletonScope(),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(s.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){if(!s.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return r?{callee:r,name:t.name}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:e=>{if(s.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){let r=null;return s.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),s.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:t.name||null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(s.NodeGuards.isFunctionExpressionNode(e)&&o&&s.NodeGuards.isVariableDeclaratorNode(o)&&s.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionExpressionCalleeDataExtractor=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=n.__importStar(r(10)),s=r(34),c=r(3),d=r(18);let l=o=class extends s.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=c.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=c.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!c.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(c.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!c.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return c.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(c.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return i.traverse(e,{enter:e=>{if(c.NodeGuards.isVariableDeclaratorNode(e)&&c.NodeGuards.isIdentifierNode(e.id)&&e.init&&c.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),i.VisitorOption.Break}}),o}findCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;for(const n of e)if(o.isValidTargetPropertyNode(n,r)){if(c.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(c.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};l=o=n.__decorate([a.injectable()],l),t.ObjectExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(40),d=r(3),l=r(18);let u=o=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,r=o.limitThresholdActivationLength-1;let n=t;return t>r&&(n=Math.round(r+t*o.limitThreshold),n>t&&(n=t)),n}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=o.getLimitIndex(e.length),r=[],n=e.length;for(let o=0;ot);o++){const t=e[o];s.traverse(t,{enter:o=>{if(d.NodeGuards.isCallExpressionNode(o))return t.parentNode!==l.NodeStatementUtils.getParentNodeWithStatements(o)?s.VisitorOption.Skip:void this.analyzeCallExpressionNode(r,e,o)}})}return r}analyzeCallExpressionNode(e,t,r){o.calleeDataExtractorsList.forEach(o=>{const n=this.calleeDataExtractorFactory(o).extract(t,r.callee);n&&e.push(Object.assign(Object.assign({},n),{stackTrace:this.analyzeRecursive(n.callee.body)}))})}};u.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],u.limitThresholdActivationLength=25,u.limitThreshold=.002,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICalleeDataExtractor)),n.__metadata("design:paramtypes",[Function])],u),t.StackTraceAnalyzer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(41),s=r(19),c=r(63),d=r(64),l=r(65),u=r(66),p=r(67),m=r(68),f=r(69);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(m.LogicalExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(f.StringLiteralControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(a.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42);let d=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.BinaryExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}};d.usingExistingIdentifierChance=.5,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.BinaryExpressionControlFlowReplacer=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(6),l=r(7),u=r(3),p=r(5);let m=o=class extends l.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=u.NodeGuards.isBreakStatementNode(e)||u.NodeGuards.isContinueStatementNode(e),r=u.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=u.NodeGuards.isClassDeclarationNode(e);return u.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return s.traverse(e,{enter:e=>{if(u.NodeGuards.isWhileStatementNode(e))return s.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case d.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&u.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold||!o.canTransformBlockStatementNode(e))return e;const r=e.body,n=this.arrayUtils.createWithRange(r.length),a=this.arrayUtils.shuffle(n),i=n.map(e=>a.indexOf(e)),s=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,a,i);const d=s.getNode()[0];return p.NodeUtils.parentizeNode(d,t),d}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.BlockStatementControlFlowTransformer=m},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!d.NodeGuards.isIdentifierNode(n))return e;const a=String(e.arguments.length),i=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionFunctionNode),c=e.arguments;i.initialize(c);const l=this.insertCustomNodeToControlFlowStorage(i,r,a,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),l,n,c)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!d.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};l.usingExistingIdentifierChance=.5,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(44),d=r(19),l=r(13),u=r(6),p=r(7),m=r(8),f=r(3),g=r(18),N=r(5);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.deadCodeInjectionRootAstHostNodeSet=new Set,this.collectedBlockStatements=[],this.collectedBlockStatementsTotalLength=0,this.deadCodeInjectionCustomNodeFactory=e,this.transformersRunner=t}static isProhibitedNodeInsideCollectedBlockStatement(e){return f.NodeGuards.isBreakStatementNode(e)||f.NodeGuards.isContinueStatementNode(e)||f.NodeGuards.isAwaitExpressionNode(e)||f.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!f.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=g.NodeStatementUtils.getScopeOfNode(e),r=f.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),a=m.NodeFactory.blockStatementNode(n),i=e.id.name;let c=!1;return s.traverse(a,{enter:e=>{if(f.NodeGuards.isIdentifierNode(e)&&e.name===i)return c=!0,s.VisitorOption.Break}}),c}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return s.traverse(e,{enter:e=>{if(f.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,s.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(s.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,s.VisitorOption.Break}}),!t)return!1;return g.NodeStatementUtils.getParentNodeWithStatements(e).type!==l.NodeType.Program}getVisitor(e){switch(e){case u.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&f.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&f.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case u.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){s.traverse(e,{enter:e=>{if(!f.NodeGuards.isBlockStatementNode(e))return;const t=N.NodeUtils.clone(e);if(!o.isValidCollectedBlockStatementNode(t))return;const r=this.makeClonedBlockStatementNodeUnique(t);this.collectedBlockStatements.push(r)}}),this.collectedBlockStatementsTotalLength=this.collectedBlockStatements.length}transformNode(e,t){if(!this.collectedBlockStatements.length||this.collectedBlockStatementsTotalLengththis.options.deadCodeInjectionThreshold||!o.isValidWrappedBlockStatementNode(e))return e;const r=this.collectedBlockStatements.length-1,n=this.randomGenerator.getRandomInteger(0,r),a=this.collectedBlockStatements.splice(n,1)[0];return a===e?e:this.replaceBlockStatementNode(e,a,t)}restoreNode(e,t){const r=e.body[0];if(!f.NodeGuards.isFunctionDeclarationNode(r))throw new Error("Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node");return r.body}isDeadCodeInjectionRootAstHostNode(e){return f.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=m.NodeFactory.functionExpressionNode([],e);return N.NodeUtils.parentizeNode(t,t),N.NodeUtils.parentizeNode(e,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,u.TransformationStage.Obfuscating).body}replaceBlockStatementNode(e,t,r){const n=m.NodeFactory.blockStatementNode([m.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const a=this.deadCodeInjectionCustomNodeFactory(c.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);a.initialize(e,n);const i=a.getNode()[0];return N.NodeUtils.parentizeNode(i,r),i}};_.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",_.maxNestedBlockStatementsCount=4,_.minCollectedBlockStatementsCount=5,_.transformersToRenameBlockScopeIdentifiers=[d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.VariableDeclarationTransformer],_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],_),t.DeadCodeInjectionTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(41),l=r(13),u=r(6),p=r(7),m=r(20),f=r(3),g=r(11),N=r(18);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.controlFlowData=new Map,this.visitedFunctionNodes=new Set,this.hostNodesWithControlFlowNode=new Set,this.controlFlowStorageFactory=e,this.controlFlowReplacerFactory=t,this.controlFlowCustomNodeFactory=r}getVisitor(e){switch(e){case u.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!f.NodeGuards.isBlockStatementNode(e.body))return e;const r=this.getHostNode(e.body),o=this.getControlFlowStorage(r);if(this.controlFlowData.set(r,o),this.transformFunctionBody(e.body,o),!o.getLength())return e;const n=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),m.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(f.NodeGuards.isSwitchCaseNode(e)?e.consequent.shift():e.body.shift());const r=this.controlFlowData.get(e);t.mergeWith(r,!0)}return t}getHostNode(e){const t=N.NodeStatementUtils.getParentNodesWithStatements(e);return 1===t.length?e:(t.pop(),t.length>o.hostNodeSearchMinDepth&&t.splice(0,o.hostNodeSearchMinDepth),t.length>o.hostNodeSearchMaxDepth&&(t.length=o.hostNodeSearchMaxDepth),this.randomGenerator.getRandomGenerator().pickone(t))}isVisitedFunctionNode(e){return(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){s.replace(e,{enter:(e,r)=>{if(g.NodeMetadata.isIgnoredNode(e))return s.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return s.VisitorOption.Skip;if(!o.controlFlowReplacersMap.has(e.type))return e;if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold)return e;const n=o.controlFlowReplacersMap.get(e.type);return void 0===n?e:Object.assign(Object.assign({},this.controlFlowReplacerFactory(n).replace(e,r,t)),{parentNode:r})}})}};_.controlFlowReplacersMap=new Map([[l.NodeType.BinaryExpression,d.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[l.NodeType.CallExpression,d.ControlFlowReplacer.CallExpressionControlFlowReplacer],[l.NodeType.LogicalExpression,d.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[l.NodeType.Literal,d.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),_.hostNodeSearchMinDepth=0,_.hostNodeSearchMaxDepth=2,_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__TControlFlowStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.Factory__IControlFlowReplacer)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(3,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Function,Function,Object,Object])],_),t.FunctionControlFlowTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42),d=r(3),l=r(5);let u=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(this.checkForProhibitedExpressions(e.left,e.right))return e;const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.LogicalExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=d.NodeGuards.isUnaryExpressionNode(e)?l.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(d.NodeGuards.isLiteralNode(t)||d.NodeGuards.isIdentifierNode(t)||d.NodeGuards.isObjectExpressionNode(t)||d.NodeGuards.isExpressionStatementNode(t))})}};u.usingExistingIdentifierChance=.5,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.LogicalExpressionControlFlowReplacer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(d.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralNode);a.initialize(e.value);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!d.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};l.usingExistingIdentifierChance=1,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(15),a=r(2),i=r(19),s=r(45),c=r(71),d=r(72),l=r(73),u=r(74),p=r(75),m=r(76),f=r(77),g=r(78);t.convertingTransformersModule=new o.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(i.NodeTransformer.MemberExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(i.NodeTransformer.MethodDefinitionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionKeysTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ObjectExpressionTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.SplitStringTransformer).whenTargetNamed(i.NodeTransformer.SplitStringTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.TemplateLiteralTransformer).whenTargetNamed(i.NodeTransformer.TemplateLiteralTransformer),e(a.ServiceIdentifiers.IPropertiesExtractor).to(c.AssignmentExpressionPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.AssignmentExpressionPropertiesExtractor),e(a.ServiceIdentifiers.IPropertiesExtractor).to(g.VariableDeclaratorPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.VariableDeclaratorPropertiesExtractor),e(a.ServiceIdentifiers.Factory__IPropertiesExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IPropertiesExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(46);let s=class extends i.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){const r=t.parentNode,o=t.left;return i.AbstractPropertiesExtractor.isProhibitedPattern(o)?e:r&&i.AbstractPropertiesExtractor.isProhibitedHostParent(r)?e:this.transformObjectExpressionNode(e,o)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.AssignmentExpressionPropertiesExtractor=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(d.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=c.NodeFactory.literalNode(e.property.name)}return e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MemberExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3);let u=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&l.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return l.NodeGuards.isIdentifierNode(e.key)&&!o.ignoredNames.includes(e.key.name)&&!1===e.computed&&(e.computed=!0,e.key=d.NodeFactory.literalNode(e.key.name)),e}};u.ignoredNames=["constructor"],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.MethodDefinitionTransformer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(13),c=r(45),d=r(6),l=r(7),u=r(3);let p=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.propertiesExtractorFactory=e}getVisitor(e){return e!==d.TransformationStage.Converting?null:{enter:(e,t)=>{if(this.options.transformObjectKeys&&t&&u.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}}}transformNode(e,t){if(!e.properties.length)return e;const r=o.propertiesExtractorsMap.get(t.type);return r?this.propertiesExtractorFactory(r).extract(e,t):e}};p.propertiesExtractorsMap=new Map([[s.NodeType.AssignmentExpression,c.PropertiesExtractor.AssignmentExpressionPropertiesExtractor],[s.NodeType.VariableDeclarator,c.PropertiesExtractor.VariableDeclaratorPropertiesExtractor]]),p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IPropertiesExtractor)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],p),t.ObjectExpressionKeysTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.escapeSequenceEncoder=e}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.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){d.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.value)))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),d.NodeGuards.isIdentifierNode(e.key)&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.name)))}getPropertyKeyValue(e){return this.options.unicodeEscapeSequence?this.escapeSequenceEncoder.encode(e,!0):e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object])],l),t.ObjectExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(19),c=r(6),d=r(7),l=r(8),u=r(3);let p=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[s.NodeTransformer.ObjectExpressionKeysTransformer,s.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let a=0;a{if(this.options.splitStrings)return t&&u.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if("string"!=typeof e.value)return e;if(u.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e)return e;if(this.options.splitStringsChunkLength>=e.value.length)return e;const r=o.chunkString(e.value,this.options.splitStringsChunkLength);return this.transformStringChunksToBinaryExpressionNode(r)}transformStringChunksToBinaryExpressionNode(e){const t=e.pop();if(void 0===t)throw new Error("Last chunk value should not be empty");const r=l.NodeFactory.literalNode(t);return 0===e.length?r:l.NodeFactory.binaryExpressionNode("+",this.transformStringChunksToBinaryExpressionNode(e),r)}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.SplitStringTransformer=p},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3),u=r(5);let p=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return e&&l.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return l.NodeGuards.isTemplateLiteralNode(e)&&!l.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&o.isValidTemplateLiteralNode(e,t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=e.expressions;let n,a=[];if(e.quasis.forEach(e=>{a.push(d.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&a.push(t)}),a=a.filter(e=>!(l.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(a[0])||o.isLiteralNodeWithStringValue(a[1])||a.unshift(d.NodeFactory.literalNode("")),a.length>1){let e=d.NodeFactory.binaryExpressionNode("+",a.shift(),a.shift());a.forEach(t=>{e=d.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=a[0];return u.NodeUtils.parentizeAst(n),n}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.TemplateLiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(46),c=r(3);let d=class extends s.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){return!c.NodeGuards.isIdentifierNode(t.id)||this.isProhibitedObjectExpressionNode(e,t.id)?e:this.transformObjectExpressionNode(e,t.id)}getHostVariableDeclaratorNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclaratorNode(t))throw new Error("Cannot get `VariableDeclarator` node for `ObjectExpression` node");return t}getHostVariableDeclarationNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclarationNode(t))throw new Error("Cannot get `VariableDeclaration` node for `VariableDeclarator` node");return t}isProhibitedObjectExpressionNode(e,t){const r=this.getHostVariableDeclaratorNode(e),o=this.getHostVariableDeclarationNode(r),{declarations:n}=o,a=n.indexOf(r);if(a===n.length-1)return!1;const s=n.slice(a);let d=!1;return s.forEach(e=>{i.traverse(e,{enter:e=>c.NodeGuards.isMemberExpressionNode(e)&&c.NodeGuards.isIdentifierNode(e.object)&&e.object.name===t.name?(d=!0,i.VisitorOption.Break):e})}),d}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.VariableDeclaratorPropertiesExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(16),s=r(23),c=r(47),d=r(44),l=r(80),u=r(81),p=r(82),m=r(83),f=r(84),g=r(85),N=r(88),_=r(89),h=r(90),b=r(91),y=r(92),S=r(93),I=r(95),v=r(97),C=r(99),O=r(103),j=r(105),F=r(106),x=r(107),T=r(109),E=r(111),w=r(118),G=r(120),R=r(123),P=r(124);t.customNodesModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.ICustomNode).to(S.ConsoleOutputDisableExpressionNode).whenTargetNamed(s.CustomNode.ConsoleOutputDisableExpressionNode),e(a.ServiceIdentifiers.ICustomNode).to(I.DebugProtectionFunctionCallNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionCallNode),e(a.ServiceIdentifiers.ICustomNode).to(v.DebugProtectionFunctionIntervalNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionIntervalNode),e(a.ServiceIdentifiers.ICustomNode).to(C.DebugProtectionFunctionNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(O.DomainLockNode).whenTargetNamed(s.CustomNode.DomainLockNode),e(a.ServiceIdentifiers.ICustomNode).to(x.NodeCallsControllerFunctionNode).whenTargetNamed(s.CustomNode.NodeCallsControllerFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(T.SelfDefendingUnicodeNode).whenTargetNamed(s.CustomNode.SelfDefendingUnicodeNode),e(a.ServiceIdentifiers.ICustomNode).to(E.StringArrayCallsWrapper).whenTargetNamed(s.CustomNode.StringArrayCallsWrapper),e(a.ServiceIdentifiers.ICustomNode).to(w.StringArrayNode).whenTargetNamed(s.CustomNode.StringArrayNode),e(a.ServiceIdentifiers.ICustomNode).to(G.StringArrayRotateFunctionNode).whenTargetNamed(s.CustomNode.StringArrayRotateFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.BinaryExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.BlockStatementControlFlowFlatteningNode).whenTargetNamed(i.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.CallExpressionControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.CallExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ControlFlowStorageNode).whenTargetNamed(i.ControlFlowCustomNode.ControlFlowStorageNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(j.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(F.LogicalExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(P.StringLiteralNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(R.StringLiteralControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(_.BlockStatementDeadCodeInjectionNode).whenTargetNamed(d.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(a.ServiceIdentifiers.ICustomNodeGroup).to(l.ConsoleOutputCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.ConsoleOutputCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(u.DebugProtectionCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DebugProtectionCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(p.DomainLockCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DomainLockCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(m.SelfDefendingCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.SelfDefendingCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(f.StringArrayCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.StringArrayCustomNodeGroup),e(a.ServiceIdentifiers.Factory__ICustomNode).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNode)),e(a.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__ICustomNodeGroup).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNodeGroup))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.ConsoleOutputDisableExpressionNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.disableConsoleOutput)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.ConsoleOutputDisableExpressionNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.ConsoleOutputDisableExpressionNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.ConsoleOutputCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20),u=r(3);let p=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionCallNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionNode,t=>{l.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionIntervalNode,t=>{const r=u.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);l.NodeAppender.insertAtIndex(e,t.getNode(),o)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.debugProtection)return;const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate(),r=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionNode),o=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionCallNode),n=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionIntervalNode),a=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);r.initialize(e),o.initialize(e,t),n.initialize(e),a.initialize(this.appendEvent,t),this.customNodes.set(s.CustomNode.DebugProtectionFunctionNode,r),this.customNodes.set(s.CustomNode.DebugProtectionFunctionCallNode,o),this.options.debugProtectionInterval&&this.customNodes.set(s.CustomNode.DebugProtectionFunctionIntervalNode,n),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,a)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],p.prototype,"customNodes",void 0),p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],p),t.DebugProtectionCustomNodeGroup=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DomainLockNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.domainLock.length)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.DomainLockNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.DomainLockNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.DomainLockCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.SelfDefendingUnicodeNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.selfDefending)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.SelfDefendingUnicodeNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.SelfDefendingUnicodeNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.SelfDefendingCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e,this.stringArrayStorage=t}appendCustomNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(s.CustomNode.StringArrayNode,t=>{l.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayCallsWrapper,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayRotateFunctionNode,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customNodes=new Map,!this.options.stringArray)return;const e=this.customNodeFactory(s.CustomNode.StringArrayNode),t=this.customNodeFactory(s.CustomNode.StringArrayCallsWrapper),r=this.customNodeFactory(s.CustomNode.StringArrayRotateFunctionNode),o=this.stringArrayStorage.getStorageId(),[n,a]=o.split("|");let i;i=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(100,500):0,e.initialize(this.stringArrayStorage,n,i),t.initialize(n,a),r.initialize(n,i),this.customNodes.set(s.CustomNode.StringArrayNode,e),this.customNodes.set(s.CustomNode.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customNodes.set(s.CustomNode.StringArrayRotateFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.TStringArrayStorage)),o.__param(2,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Function,Object,Object])],u),t.StringArrayCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.binaryExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BinaryExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n var that;\n \n try {\n var getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n var getGlobal = function () {\n var 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 var that = getGlobal();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(3),l=r(5);let u=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.blockStatementBody=e,this.shuffledKeys=t,this.originalKeysIndexesInShuffledArray=r}getNodeStructure(){const e=this.randomGenerator.getRandomString(6),t=this.randomGenerator.getRandomString(6),r=c.NodeFactory.blockStatementNode([c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(e),c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),c.NodeFactory.identifierNode("split")),[c.NodeFactory.literalNode("|")])),c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(t),c.NodeFactory.literalNode(0))]),c.NodeFactory.whileStatementNode(c.NodeFactory.literalNode(!0),c.NodeFactory.blockStatementNode([c.NodeFactory.switchStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(e),c.NodeFactory.updateExpressionNode("++",c.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return d.NodeGuards.isReturnStatementNode(r)||o.push(c.NodeFactory.continueStatement()),c.NodeFactory.switchCaseNode(c.NodeFactory.literalNode(String(t)),o)})),c.NodeFactory.breakStatement()]))]);return l.NodeUtils.parentizeAst(r),[r]}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"blockStatementBody",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"originalKeysIndexesInShuffledArray",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"shuffledKeys",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.BlockStatementControlFlowFlatteningNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.blockStatementNode=e,this.deadCodeInjectionRootAstHostNode=t}getNodeStructure(){const e=this.randomGenerator.getMathRandom()>.5,t=this.randomGenerator.getMathRandom()>.5,r=e?"===":"!==",o=this.randomGenerator.getRandomString(5),n=t?o:this.randomGenerator.getRandomString(5),[a,i]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=c.NodeFactory.blockStatementNode([c.NodeFactory.ifStatementNode(c.NodeFactory.binaryExpressionNode(r,c.NodeFactory.literalNode(o),c.NodeFactory.literalNode(n)),a,i)]);return d.NodeUtils.parentizeAst(s),[s]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"blockStatementNode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"deadCodeInjectionRootAstHostNode",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BlockStatementDeadCodeInjectionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"callee",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],l.prototype,"expressionArguments",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=c.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e{const r=t.getNode()[0];if(!d.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return c.NodeFactory.propertyNode(c.NodeFactory.identifierNode(e),r.expression)});let t=c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),c.NodeFactory.objectExpressionNode(e))]);return t=l.NodeUtils.parentizeAst(t),[t]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],u.prototype,"controlFlowStorage",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ControlFlowStorageNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(94),d=r(37),l=r(4),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():d.GlobalVariableNoEvalTemplate();return i.default(c.ConsoleOutputDisableExpressionTemplate(),{consoleLogDisableFunctionName:this.identifierNamesGenerator.generate(),globalVariableTemplate:e,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([l.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.ConsoleOutputDisableExpressionNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n var {consoleLogDisableFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n var 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.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.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(96),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"callsControllerFunctionName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionCallNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {singleNodeCallControllerFunctionName}(this, function () {\n var regExp1 = new RegExp('function *\\\\( *\\\\)');\n var regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n var 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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(98),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionIntervalNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionIntervalTemplate=function(){return"\n setInterval(function () {\n {debugProtectionFunctionName}();\n }, 4000);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(100),l=r(101),u=r(102),p=r(9),m=r(5);let f=class extends p.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?d.DebuggerTemplate():l.DebuggerTemplateNoEval();return i.default(u.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"debugProtectionFunctionName",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.DebugProtectionFunctionNode=f},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplateNoEval=function(){return"\n if (typeof counter === 'string') {\n var 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,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(104),l=r(37),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.cryptUtils=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():l.GlobalVariableNoEvalTemplate();return i.default(d.DomainLockNodeTemplate(),{domainLockFunctionName:this.identifierNamesGenerator.generate(),diff:r,domains:t,globalVariableTemplate:o,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.DomainLockNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockNodeTemplate=function(){return'\n var {domainLockFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n var func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (var i = 0; i < 1000; i--) {\n var 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 var regExp = new RegExp("[{diff}]", "g");\n var domains = "{domains}".replace(regExp, "").split(";");\n var document;\n var domain;\n var location;\n var hostname;\n\n for (var 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 (var 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 (var 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 (var 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 var documentDomain = that[document][domain];\n var documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n var currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n var ok = false;\n \n for (var i = 0; i < domains.length; i++) {\n var domain = domains[i];\n var position = currentDomain.length - domain.length;\n var lastIndex = currentDomain.indexOf(domain, position);\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"leftValue",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"rightValue",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.ExpressionWithOperatorControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.logicalExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.LogicalExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(21),c=r(4),d=r(108),l=r(31),u=r(9),p=r(24),m=r(5);let f=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return this.appendEvent===s.ObfuscationEvent.AfterObfuscation?p.JavaScriptObfuscator.obfuscate(i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed})).getObfuscatedCode():i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"callsControllerFunctionName",void 0),o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"appendEvent",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.NodeCallsControllerFunctionNode=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleNodeCallControllerTemplate=function(){return"\n var {singleNodeCallControllerFunctionName} = (function(){\n var firstCall = true;\n \n return function (context, fn){\n var rfn = firstCall ? function(){\n if(fn){\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(110),l=r(9),u=r(24),p=r(5);let m=class extends l.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return u.JavaScriptObfuscator.obfuscate(i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{selfDefendingFunctionName:this.identifierNamesGenerator.generate(),singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed,unicodeEscapeSequence:!0})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.SelfDefendingUnicodeNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var {selfDefendingFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func1 = function(){return 'dev';},\n func2 = function () {\n return 'window';\n };\n \n var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return !regExp.test(func1.toString());\n };\n \n var test2 = function () {\n var regExp = new RegExp('${e.encode("(\\\\[x|u](\\w){2,4})+",!0)}');\n \n return regExp.test(func2.toString());\n };\n \n var recursiveFunc1 = function (string) {\n var i = ~-1 >> 1 + 255 % 0;\n \n if (string.indexOf('i' === i)) {\n recursiveFunc2(string)\n }\n };\n \n var recursiveFunc2 = function (string) {\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(29),d=r(4),l=r(31),u=r(112),p=r(37),m=r(113),f=r(114),g=r(115),N=r(116),_=r(117),h=r(9),b=r(24),y=r(5);let S=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(){return y.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.getDecodeStringArrayTemplate();return b.JavaScriptObfuscator.obfuscate(i.default(N.StringArrayCallsWrapperTemplate(),{decodeNodeTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}getDecodeStringArrayTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():p.GlobalVariableNoEvalTemplate(),t=i.default(u.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=i.default(f.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case c.StringArrayEncoding.Rc4:r=i.default(_.StringArrayRc4DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,rc4Polyfill:m.Rc4Template(),selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case c.StringArrayEncoding.Base64:r=i.default(g.StringArrayBase64DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayName",void 0),o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayCallsWrapperName",void 0),S=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],S),t.StringArrayCallsWrapper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n var str = String(input).replace(/=+$/, '');\n for (\n var bc = 0, bs, buffer, idx = 0, output = '';\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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n var rc4 = function (str, key) {\n var s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (var 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\t for (var 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 (var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e,t){const r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6),a=e.getRandomString(6),i=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n var StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${a} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${i} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n var regExp = new RegExp(this.${a} + this.${i});\n var expression = regExp.test(this.${n}.toString())\n ? --this.${o}[1]\n : --this.${o}[0];\n \n return this.${c}(expression);\n };\n \n StatesClass.prototype.${c} = function (${l}) {\n if (!Boolean(~${l})) {\n return ${l};\n }\n \n return this.${d}(this.${r});\n };\n\n StatesClass.prototype.${d} = function (${r}) {\n for (var i = 0, len = this.${o}.length; i < len; i++) {\n this.${o}.push(Math.round(Math.random()));\n len = this.${o}.length;\n }\n \n return ${r}(this.${o}[0]);\n };\n\n new StatesClass({stringArrayCallsWrapperName}).${s}();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayBase64DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {stringArrayCallsWrapperName}.${r} = function (str) {\n var string = atob(str);\n var newStringChars = [];\n \n for (var 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}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n \n if (cachedValue === undefined) {\n {selfDefendingCode}\n \n value = {stringArrayCallsWrapperName}.${r}(value);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayCallsWrapperTemplate=function(){return"\n var {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n var value = {stringArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRc4DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {rc4Polyfill}\n {stringArrayCallsWrapperName}.${r} = rc4;\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n\n if (cachedValue === undefined) {\n if ({stringArrayCallsWrapperName}.${n} === undefined) {\n {selfDefendingCode}\n \n {stringArrayCallsWrapperName}.${n} = true;\n }\n \n value = {stringArrayCallsWrapperName}.${r}(value, key);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(119),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.stringArrayStorage=e,this.stringArrayName=t,this.stringArrayRotateValue=r}getNode(){return this.stringArrayStorage.rotateArray(this.stringArrayRotateValue),super.getNode()}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};o.__decorate([s.initializable(),o.__metadata("design:type",Object)],u.prototype,"stringArrayStorage",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],u.prototype,"stringArrayRotateValue",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.StringArrayNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n var {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(121),l=r(122),u=r(9),p=r(24),m=r(5),f=r(32);let g=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayRotateValue=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate();let r="";return r=this.options.selfDefending?i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,p.JavaScriptObfuscator.obfuscate(i.default(l.StringArrayRotateFunctionTemplate(),{code:r,timesName:e,stringArrayName:this.stringArrayName,stringArrayRotateValue:f.NumberUtils.toHex(this.stringArrayRotateValue),whileFunctionName:t}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],g.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],g.prototype,"stringArrayRotateValue",void 0),g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],g),t.StringArrayRotateFunctionNode=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var selfDefendingFunc = function () {\n var object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n var updatedCookie = name + "=" + value;\n\n var i = 0;\n \n for (var i = 0, len = options.length; i < len; i++) {\n var propName = options[i];\n \n updatedCookie += "; " + propName;\n \n var 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 var matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n var 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 var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n var cookie = '';\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n var {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotateValue});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8);let d=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.literalValue=e}getNodeStructure(){return[c.NodeFactory.expressionStatementNode(c.NodeFactory.literalNode(this.literalValue))]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],d.prototype,"literalValue",void 0),d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.StringLiteralNode=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0);t.finalizingTransformersModule=new o.ContainerModule(e=>{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(27),i=r(127),s=r(128),c=r(129);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(i.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator),e(n.ServiceIdentifiers.Factory__IIdentifierNamesGenerator).toFactory(function(){let e=null;return t=>r=>{if(e)return e;let o;switch(r.identifierNamesGenerator){case a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t,r){super(e,t),this.arrayUtils=r,this.identifierNamesSet=new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary)),this.identifiersIterator=this.identifierNamesSet.values()}static incrementIdentifierName(e){let t="",r=!1;for(const o of e)r||o!==o.toUpperCase()?r||o!==o.toLowerCase()?t+=o:(t+=o.toUpperCase(),r=!0):t+=o.toLowerCase();return r?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 r of e){const e=o.incrementIdentifierName(r);e&&t.push(e)}return this.arrayUtils.shuffle(t)}};c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__param(2,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__metadata("design:paramtypes",[Object,Object,Object])],c),t.DictionaryIdentifierNamesGenerator=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38),c=r(32),d=r(26);let l=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.randomVariableNameSet=new Set}generate(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=c.NumberUtils.toHex(t),n=d.Utils.hexadecimalPrefix.length+1,a=e?e-n:o.baseIdentifierNameLength,i=r.substr(0,a),s=`_${d.Utils.hexadecimalPrefix}${i}`;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("__","_")}};l.baseIdentifierNameLength=6,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.HexadecimalIdentifierNamesGenerator=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.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)&&!o.reservedNames.includes(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=e.length,n=e=>"0".repeat(e);let a=r-1;do{const o=e.charAt(a),i=t.indexOf(o);if(i!==t.length-1){return e.substring(0,a)+t[i+1]+n(r-(a+1))}--a}while(a>=0);return`a${n(r)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}};c.initMangledNameCharacter="9",c.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),c.reservedNames=["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"],c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],c),t.MangledIdentifierNamesGenerator=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2);t.nodeTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(14),s=r(48),c=r(19),d=r(132),l=r(133),u=r(134),p=r(135),m=r(136),f=r(137),g=r(138),N=r(139),_=r(140),h=r(141),b=r(142),y=r(143);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(u.CatchClauseTransformer).whenTargetNamed(c.NodeTransformer.CatchClauseTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ClassDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ClassDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.FunctionDeclarationTransformer).whenTargetNamed(c.NodeTransformer.FunctionDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.FunctionTransformer).whenTargetNamed(c.NodeTransformer.FunctionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ImportDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ImportDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(N.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(_.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(y.VariableDeclarationTransformer).whenTargetNamed(c.NodeTransformer.VariableDeclarationTransformer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(h.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(b.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(i.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(a.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IObfuscatingReplacer)),e(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8);let c=class extends i.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){if(this.blockScopesMap.has(t)){const r=this.blockScopesMap.get(t);r.has(e)&&(e=r.get(e))}return s.NodeFactory.identifierNode(e)}storeGlobalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,r)}storeLocalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generate();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,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))}};c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object])],c),t.BaseIdentifierObfuscatingReplacer=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(33),c=r(8);let d=o=class extends s.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",c.NodeFactory.arrayExpressionNode())}replace(e){return e?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.BooleanLiteralObfuscatingReplacer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22),p=r(11);let m=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isCatchClauseNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeCatchClauseParam(e,r),this.replaceCatchClauseParam(e,r),e):e}storeCatchClauseParam(e,t){l.NodeGuards.isIdentifierNode(e.param)&&this.identifierObfuscatingReplacer.storeLocalName(e.param.name,t)}replaceCatchClauseParam(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isReplaceableIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t).name;e.name!==r&&(e.name=r,p.NodeMetadata.set(e,{renamedIdentifier:!0}))}}})}};m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.CatchClauseTransformer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isClassDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeClassName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeClassName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ClassDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(t);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeFunctionName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeFunctionName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&o!==e&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.FunctionDeclarationTransformer=f},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11),f=r(13);let g=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedIdentifierOfPropertyNode(e,t){return u.NodeGuards.isIdentifierNode(e)&&!!t&&u.NodeGuards.isPropertyNode(t)&&t.key===e}static isProhibitedIdentifierOfShorthandPropertyNode(e){return u.NodeGuards.isPropertyNode(e)&&e.shorthand&&u.NodeGuards.isIdentifierNode(e.key)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeFunctionParams(e,r),this.replaceFunctionParams(e,r),e):e}isGlobalFunctionDeclarationIdentifier(e,t){if(!u.NodeGuards.isFunctionDeclarationNode(t)||t.id!==e)return!1;const r=p.NodeLexicalScopeUtils.getLexicalScopes(t)[1];if(!r)return!1;const o=r.type===f.NodeType.Program;return!this.options.renameGlobals&&o}storeFunctionParams(e,t){const r={enter:(e,r)=>{if(!o.isProhibitedIdentifierOfPropertyNode(e,r))return u.NodeGuards.isAssignmentPatternNode(e)&&u.NodeGuards.isIdentifierNode(e.left)?(this.identifierObfuscatingReplacer.storeLocalName(e.left.name,t),s.VisitorOption.Skip):void(u.NodeGuards.isIdentifierNode(e)&&this.identifierObfuscatingReplacer.storeLocalName(e.name,t))}};e.params.forEach(e=>{s.traverse(e,r)})}replaceFunctionParams(e,t,r=new Set){const n={enter:(n,a)=>{if(u.NodeGuards.isFunctionNode(n)&&n!==e)return this.replaceFunctionParams(n,t,new Set(r)),s.VisitorOption.Skip;if(o.isProhibitedIdentifierOfShorthandPropertyNode(n))r.add(n.key.name);else if(a&&u.NodeGuards.isReplaceableIdentifierNode(n,a)&&!m.NodeMetadata.isRenamedIdentifier(n)&&!r.has(n.name)){if(this.isGlobalFunctionDeclarationIdentifier(n,a))return;const e=this.identifierObfuscatingReplacer.replace(n.name,t).name;n.name!==e&&(n.name=e,m.NodeMetadata.set(n,{renamedIdentifier:!0}))}}};s.replace(e,n)}};g=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],g),t.FunctionTransformer=g},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedImportSpecifierNode(e){return u.NodeGuards.isImportSpecifierNode(e)&&e.imported.name===e.local.name}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isImportDeclarationNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeImportSpecifierNames(e,r),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(r):this.replaceScopeIdentifiers(r),e):e}storeImportSpecifierNames(e,t){e.specifiers.forEach(e=>{o.isProhibitedImportSpecifierNode(e)||this.identifierObfuscatingReplacer.storeGlobalName(e.local.name,t)})}replaceScopeCachedIdentifiers(e){this.replaceableIdentifiers.get(e).forEach(t=>{const r=this.identifierObfuscatingReplacer.replace(t.name,e);t.name=r.name,m.NodeMetadata.set(t,{renamedIdentifier:!0})})}replaceScopeIdentifiers(e){const t=[];s.replace(e,{enter:(r,o)=>{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;r.name!==o?(r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0})):t.push(r)}}}),this.replaceableIdentifiers.set(e,t)}};f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ImportDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22);let p=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label.name,t)}replaceLabeledStatementName(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t);e.name=r.name}}})}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LabeledStatementTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(48),s=r(6),c=r(7),d=r(3),l=r(11),u=r(5);let p=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.literalObfuscatingReplacerFactory=e}getVisitor(e){switch(e){case s.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&d.NodeGuards.isLiteralNode(e)&&!l.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.isProhibitedNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e.value);break;case"number":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e.value);break;case"string":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e.value);break;default:r=e}return u.NodeUtils.parentizeNode(r,t),r}isProhibitedNode(e,t){return!(!d.NodeGuards.isPropertyNode(t)||t.key!==e)||!!d.NodeGuards.isImportDeclarationNode(t)}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8),c=r(32),d=r(26);let l=class extends i.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){let t;return this.numberLiteralCache.has(e)?t=this.numberLiteralCache.get(e):(t=c.NumberUtils.isCeil(e)?`${d.Utils.hexadecimalPrefix}${c.NumberUtils.toHex(e)}`:String(e),this.numberLiteralCache.set(e,t)),s.NodeFactory.literalNode(e,t)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],l),t.NumberLiteralObfuscatingReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(29),c=r(33),d=r(11),l=r(8),u=r(32),p=r(26);let m=o=class extends c.AbstractObfuscatingReplacer{constructor(e,t,r,n,a){super(a),this.nodesCache=new Map,this.stringLiteralHexadecimalIndexCache=new Map,this.stringArrayStorage=e,this.escapeSequenceEncoder=t,this.randomGenerator=r,this.cryptUtils=n,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}static getHexadecimalLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}replace(e){const t=this.canUseStringArray(e),r=`${e}-${String(t)}`;if(this.nodesCache.has(r)&&this.options.stringArrayEncoding!==s.StringArrayEncoding.Rc4)return this.nodesCache.get(r);const o=t?this.replaceWithStringArrayCallNode(e):this.replaceWithLiteralNode(e);return this.nodesCache.set(r,o),o}canUseStringArray(e){return this.options.stringArray&&e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}getStringArrayHexadecimalIndex(e,t){if(this.stringLiteralHexadecimalIndexCache.has(e))return{fromCache:!0,index:this.stringLiteralHexadecimalIndexCache.get(e)};const r=u.NumberUtils.toHex(t),o=`${p.Utils.hexadecimalPrefix}${r}`;return this.stringLiteralHexadecimalIndexCache.set(e,o),{fromCache:!1,index:o}}getEncodedValue(e){let t,r=null;switch(this.options.stringArrayEncoding){case s.StringArrayEncoding.Rc4:r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),t=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r));break;case s.StringArrayEncoding.Base64:t=this.cryptUtils.btoa(e);break;default:t=e}return{encodedValue:t,key:r}}replaceWithLiteralNode(e){return l.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e,this.options.unicodeEscapeSequence))}replaceWithStringArrayCallNode(e){const{encodedValue:t,key:r}=this.getEncodedValue(e),n=this.escapeSequenceEncoder.encode(t,this.options.unicodeEscapeSequence),a=this.stringArrayStorage.getLength(),i=this.stringArrayStorage.getStorageId().split("|")[1],{fromCache:s,index:c}=this.getStringArrayHexadecimalIndex(n,a);s||this.stringArrayStorage.set(a,n);const u=[o.getHexadecimalLiteralNode(c)];r&&u.push(o.getRc4KeyLiteralNode(this.escapeSequenceEncoder.encode(r,this.options.unicodeEscapeSequence)));const p=l.NodeFactory.identifierNode(i);return d.NodeMetadata.set(p,{renamedIdentifier:!0}),l.NodeFactory.callExpressionNode(p,u)}};m.minimumLengthForStringArray=3,m.rc4KeyLength=4,m.rc4KeysCount=50,m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TStringArrayStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.IEscapeSequenceEncoder)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.ICryptUtils)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],m),t.StringLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(144),f=r(11);let g=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isVariableDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r="var"===e.kind?p.NodeLexicalScopeUtils.getLexicalScope(e):m.NodeBlockLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;if(!this.options.renameGlobals&&o)return e;const n="var"===e.kind?r:t;return this.storeVariableNames(e,r,o),this.replaceableIdentifiers.has(n)?this.replaceScopeCachedIdentifiers(e,r,n):this.replaceScopeIdentifiers(n,r),e}storeVariableNames(e,t,r){this.traverseDeclarationIdentifiers(e,e=>{r?this.identifierObfuscatingReplacer.storeGlobalName(e.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.name,t)})}replaceScopeCachedIdentifiers(e,t,r){const o=this.replaceableIdentifiers.get(r),n=[];this.traverseDeclarationIdentifiers(e,e=>{n.push(e.name)}),n.forEach(e=>{const r=o.get(e);if(!r)return;const n=r.length;for(let o=0;o{if(o&&u.NodeGuards.isReplaceableIdentifierNode(e,o)&&!f.NodeMetadata.isRenamedIdentifier(e)){const o=this.identifierObfuscatingReplacer.replace(e.name,t).name;if(e.name!==o)e.name=o,f.NodeMetadata.set(e,{renamedIdentifier:!0});else{const t=r.get(e.name)||[];t.push(e),r.set(e.name,t)}}}}),this.replaceableIdentifiers.set(e,r)}traverseDeclarationIdentifiers(e,t){e.declarations.forEach(e=>{i.traverse(e.id,{enter:e=>{if(u.NodeGuards.isPropertyNode(e))return i.VisitorOption.Skip;u.NodeGuards.isIdentifierNode(e)&&t(e)}})})}};g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],g),t.VariableDeclarationTransformer=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithBlockLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeBlockLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(146),i=r(149);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(a.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(i.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(147),c=r(27),d=r(17),l=r(28),u=r(29),p=r(39),m=r(148);let f=o=class{constructor(e,t){Object.assign(this,p.DEFAULT_PRESET,e);const r=s.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${m.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};f.validatorOptions={validationError:{target:!1}},n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"compact",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"controlFlowFlattening",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"controlFlowFlatteningThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"deadCodeInjection",void 0),n.__decorate([s.IsNumber(),n.__metadata("design:type",Number)],f.prototype,"deadCodeInjectionThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtection",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtectionInterval",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"disableConsoleOutput",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"domainLock",void 0),n.__decorate([s.IsIn([c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,c.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,c.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),n.__metadata("design:type",Object)],f.prototype,"identifierNamesGenerator",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"identifiersPrefix",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),s.ValidateIf(e=>e.identifierNamesGenerator===c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),s.ArrayNotEmpty(),n.__metadata("design:type",Array)],f.prototype,"identifiersDictionary",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"inputFileName",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"log",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"renameGlobals",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedNames",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedStrings",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"rotateStringArray",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"selfDefending",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"sourceMap",void 0),n.__decorate([s.IsString(),s.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),s.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),n.__metadata("design:type",String)],f.prototype,"sourceMapBaseUrl",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"sourceMapFileName",void 0),n.__decorate([s.IsIn([l.SourceMapMode.Inline,l.SourceMapMode.Separate]),n.__metadata("design:type",Object)],f.prototype,"sourceMapMode",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"splitStrings",void 0),n.__decorate([s.IsNumber(),s.ValidateIf(e=>Boolean(e.splitStrings)),s.Min(1),n.__metadata("design:type",Number)],f.prototype,"splitStringsChunkLength",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"stringArray",void 0),n.__decorate([s.IsIn([!0,!1,u.StringArrayEncoding.Base64,u.StringArrayEncoding.Rc4]),n.__metadata("design:type",Object)],f.prototype,"stringArrayEncoding",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"stringArrayThreshold",void 0),n.__decorate([s.IsIn([d.ObfuscationTarget.Browser,d.ObfuscationTarget.BrowserNoEval,d.ObfuscationTarget.Node]),n.__metadata("design:type",Object)],f.prototype,"target",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"transformObjectKeys",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"unicodeEscapeSequence",void 0),f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TInputOptions)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptionsNormalizer)),n.__metadata("design:paramtypes",[Object,Object])],f),t.Options=f},function(e,t){e.exports=require("class-validator")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static format(e){return e.reduce((e,t)=>[...e,o.formatWithNestedConstraints(t)],[]).join("\n")}static formatWithNestedConstraints(e){const t=e.constraints;return`${`\`${e.property}\` errors:\n`}${Object.keys(t).map(e=>` - ${t[e]}\n`).join()}`}}t.ValidationErrorsFormatter=o},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(150),s=r(151),c=r(152),d=r(153),l=r(154),u=r(155),p=r(156),m=r(157),f=r(158),g=r(159),N=r(160),_=r(161),h=r(162);let b=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};b.normalizerRules=[i.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,p.SelfDefendingRule,m.SourceMapBaseUrlRule,f.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,N.StringArrayRule,_.StringArrayEncodingRule,h.StringArrayThresholdRule],b=o=n.__decorate([a.injectable()],b),t.OptionsNormalizer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ControlFlowFlatteningThresholdRule=e=>(0===e.controlFlowFlatteningThreshold&&(e=Object.assign(Object.assign({},e),{controlFlowFlattening:!1,controlFlowFlatteningThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(39);t.DeadCodeInjectionRule=e=>(e.deadCodeInjection&&((e=Object.assign(Object.assign({},e),{deadCodeInjection:!0,stringArray:!0})).stringArrayThreshold||(e=Object.assign(Object.assign({},e),{stringArray:!0,stringArrayThreshold:o.DEFAULT_PRESET.stringArrayThreshold}))),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeadCodeInjectionThresholdRule=e=>(0===e.deadCodeInjectionThreshold&&(e=Object.assign(Object.assign({},e),{deadCodeInjection:!1,deadCodeInjectionThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(26);t.DomainLockRule=e=>{if(e.domainLock.length){const t=[];for(const r of e.domainLock)t.push(o.Utils.extractDomainFrom(r));e=Object.assign(Object.assign({},e),{domainLock:t})}return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".").slice(0,-1).join(".")||t,e=Object.assign(Object.assign({},e),{inputFileName:`${t}.js`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeedRule=e=>{if(e.seed)return Object.assign(Object.assign({},e),{seed:e.seed});return Object.assign(Object.assign({},e),{seed:(t=0,r=999999999,Math.floor(Math.random()*(r-t+1)+t))});var t,r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingRule=e=>(e.selfDefending&&(e=Object.assign(Object.assign({},e),{compact:!0,selfDefending:!0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapBaseUrlRule=e=>{const{sourceMapBaseUrl:t}=e;return e.sourceMapFileName?(t&&!t.endsWith("/")&&(e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:`${t}/`})),e):e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:""})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".")[0],e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SplitStringsChunkLengthRule=e=>e=0===e.splitStringsChunkLength?Object.assign(Object.assign({},e),{splitStrings:!1,splitStringsChunkLength:0}):Object.assign(Object.assign({},e),{splitStringsChunkLength:Math.floor(e.splitStringsChunkLength)})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRule=e=>(e.stringArray||(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingRule=e=>(!0===e.stringArrayEncoding&&(e=Object.assign(Object.assign({},e),{stringArrayEncoding:o.StringArrayEncoding.Base64})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayThresholdRule=e=>(0===e.stringArrayThreshold&&(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(19),s=r(49),c=r(164),d=r(165),l=r(50),u=r(166),p=r(167),m=r(169),f=r(170),g=r(171),N=r(172),_=r(173);t.preparingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.CustomNodesTransformer).whenTargetNamed(i.NodeTransformer.CustomNodesTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.EvalCallExpressionTransformer).whenTargetNamed(i.NodeTransformer.EvalCallExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.MetadataTransformer).whenTargetNamed(i.NodeTransformer.MetadataTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.ObfuscatingGuardsTransformer).whenTargetNamed(i.NodeTransformer.ObfuscatingGuardsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ParentificationTransformer).whenTargetNamed(i.NodeTransformer.ParentificationTransformer),e(a.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(l.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(N.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(a.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeGuard)),e(a.ServiceIdentifiers.INodeTransformer).to(_.VariablePreserveTransformer).whenTargetNamed(i.NodeTransformer.VariablePreserveTransformer)})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t{if(l.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(e.comments){const t=this.transformComments(e.comments);s.traverse(e,{enter:e=>{if(0===t.length)return;const r=t.findIndex(t=>t.range&&e.range&&t.range[0]0&&(e.trailingComments=t.reverse())}return e}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||u.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};p.preservedWords=["@license","@preserve"],p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.CommentsTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(21),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.stackTraceData=[],this.stackTraceAnalyzer=e,this.obfuscationEventEmitter=t,this.customNodeGroupStorage=r}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{leave:(e,t)=>{if(d.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case s.TransformationStage.Finalizing:return{leave:(e,t)=>{d.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.stackTraceData=this.stackTraceAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customNodeGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendCustomNodes.bind(e))}),this.obfuscationEventEmitter.emit(i.ObfuscationEvent.BeforeObfuscation,e,this.stackTraceData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(i.ObfuscationEvent.AfterObfuscation,e,this.stackTraceData)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IStackTraceAnalyzer)),o.__param(1,n.inject(a.ServiceIdentifiers.IObfuscationEventEmitter)),o.__param(2,n.inject(a.ServiceIdentifiers.TCustomNodeGroupStorage)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],l),t.CustomNodesTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(168)),c=r(6),d=r(7),l=r(8),u=r(3),p=r(5);let m=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return u.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):u.NodeGuards.isTemplateLiteralNode(e)?o.extractEvalStringFromTemplateLiteralNode(e):null}static extractEvalStringFromLiteralNode(e){return"string"==typeof e.value?e.value:null}static extractEvalStringFromTemplateLiteralNode(e){const t=e.quasis;return 1!==t.length||e.expressions.length?null:t[0].value.cooked}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&u.NodeGuards.isCallExpressionNode(e)&&u.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case c.TransformationStage.Finalizing:return this.evalRootAstHostNodeSet.size?{leave:(e,t)=>{if(t&&this.isEvalRootAstHostNode(e))return this.restoreNode(e,t)}}:null;default:return null}}transformNode(e,t){const r=e.arguments[0];if(!r)return e;const n=o.extractEvalStringFromCallExpressionArgument(r);if(!n)return e;let a;try{a=p.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const i=l.NodeFactory.functionExpressionNode([],l.NodeFactory.blockStatementNode(a));return this.evalRootAstHostNodeSet.add(i),i}restoreNode(e,t){const r=e.body.body,o=p.NodeUtils.convertStructureToCode(r);return l.NodeFactory.callExpressionNode(l.NodeFactory.identifierNode("eval"),[l.NodeFactory.literalNode(s.default(o))])}isEvalRootAstHostNode(e){return u.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],m),t.EvalCallExpressionTransformer=m},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(3),d=r(11);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return d.NodeMetadata.set(e,{ignoredNode:!1}),c.NodeGuards.isIdentifierNode(e)&&d.NodeMetadata.set(e,{renamedIdentifier:!1}),c.NodeGuards.isLiteralNode(e)&&d.NodeMetadata.set(e,{replacedLiteral:!1}),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MetadataTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(49),c=r(6),d=r(7),l=r(11);let u=o=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){const r=this.obfuscatingGuards.every(t=>t.check(e));return l.NodeMetadata.set(e,{ignoredNode:!r}),e}};u.obfuscatingGuardsList=[s.ObfuscatingGuard.BlackListObfuscatingGuard,s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,s.ObfuscatingGuard.ReservedStringObfuscatingGuard],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__INodeGuard)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ObfuscatingGuardsTransformer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(5);let d=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return c.NodeUtils.parentizeNode(e,t)}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.ParentificationTransformer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(3);let s=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!i.NodeGuards.isLiteralNode(e)||"string"!=typeof e.value||!this.isReservedString(e.value)}isReservedString(e){return this.options.reservedStrings.some(t=>null!==new RegExp(t,"g").exec(e))}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],s),t.ReservedStringObfuscatingGuard=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(14),i=r(2),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{enter:(e,t)=>{if(d.NodeGuards.isIdentifierNode(e)&&t&&(d.NodeGuards.parentNodeIsPropertyNode(e,t)||d.NodeGuards.parentNodeIsMemberExpressionNode(e,t)||d.NodeGuards.parentNodeIsMethodDefinitionNode(e,t)||d.NodeGuards.isLabelIdentifierNode(e,t)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.identifierObfuscatingReplacer.preserveName(e.name),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(i.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(i.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.VariablePreserveTransformer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(175),i=r(176),s=r(177);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(i.CustomNodeGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.TStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(a.ControlFlowStorage),e(n.ServiceIdentifiers.Factory__TControlFlowStorage).toFactory(e=>()=>{const t=new(e.container.get(n.ServiceIdentifiers.Newable__TControlFlowStorage))(e.container.get(n.ServiceIdentifiers.IRandomGenerator),e.container.get(n.ServiceIdentifiers.IOptions));return t.initialize(),t})})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(51);let s=class extends i.MapStorage{constructor(e,t){super(e,t)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ControlFlowStorage=s},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(47),c=r(51);let d=o=class extends c.MapStorage{constructor(e,t,r){super(t,r),this.customNodeGroupFactory=e}initialize(){super.initialize(),o.customNodeGroupsList.forEach(e=>{const t=this.customNodeGroupFactory(e);t&&this.storage.set(e,t)})}};d.customNodeGroupsList=[s.CustomNodeGroup.ConsoleOutputCustomNodeGroup,s.CustomNodeGroup.DebugProtectionCustomNodeGroup,s.CustomNodeGroup.DomainLockCustomNodeGroup,s.CustomNodeGroup.SelfDefendingCustomNodeGroup,s.CustomNodeGroup.StringArrayCustomNodeGroup],n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],d.prototype,"initialize",null),d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICustomNodeGroup)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.CustomNodeGroupStorage=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(178);let c=o=class extends s.ArrayStorage{constructor(e,t,r,o){super(r,o),this.identifierNamesGenerator=e(o),this.arrayUtils=t}initialize(){super.initialize();const e=this.identifierNamesGenerator.generate(o.stringArrayNameLength),t=this.identifierNamesGenerator.generate(o.stringArrayNameLength),r=`${this.options.identifiersPrefix}${e}`,n=`${this.options.identifiersPrefix}${t}`;this.storageId=`${r}|${n}`}rotateArray(e){this.storage=this.arrayUtils.rotate(this.storage,e)}toString(){return this.storage.map(e=>`'${e}'`).toString()}};c.stringArrayNameLength=7,n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],c.prototype,"initialize",null),c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],c),t.StringArrayStorage=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4);let s=class{constructor(e,t){this.storageLength=0,this.randomGenerator=e,this.options=t}initialize(){this.storage=[],this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage[e];if(!t)throw new Error(`No value found in array storage with key \`${e}\``);return t}getKeyOf(e){const t=this.storage.indexOf(e);return t>=0?t:null}getLength(){return this.storageLength}getStorage(){return this.storage}getStorageId(){return this.storageId}mergeWith(e,t=!1){this.storage=[...this.storage,...e.getStorage()],t&&(this.storageId=e.getStorageId())}set(e,t){e===this.storageLength?this.storage.push(t):this.storage.splice(e,0,t),this.storageLength++}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],s.prototype,"storage",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],s.prototype,"storageId",void 0),o.__decorate([n.postConstruct(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",void 0)],s.prototype,"initialize",null),s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ArrayStorage=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(180),i=r(181),s=r(184),c=r(185),d=r(186),l=r(52);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(a.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(i.CryptUtils).inSingletonScope(),e(n.ServiceIdentifiers.IEscapeSequenceEncoder).to(s.EscapeSequenceEncoder).inSingletonScope(),e(n.ServiceIdentifiers.ILevelledTopologicalSorter).to(c.LevelledTopologicalSorter),e(n.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder).to(d.NodeTransformerNamesGroupsBuilder).inSingletonScope()})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rString.fromCharCode(parseInt(`${s.Utils.hexadecimalPrefix}${t}`)));for(let r,o,n=0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(a="=",n%1);t+=a.charAt(63&r>>8-n%1*8)){if(o=e.charCodeAt(n+=.75),o>255)throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");r=r<<8|o}return t}hideString(e,t){let r=this.randomGenerator.getRandomGenerator().string({length:t,pool:i.RandomGenerator.randomGeneratorPool}).replace(new RegExp(`[${o=e,o.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}]`,"g"),"");var o;const n=r.split("");return this.randomGenerator.getRandomGenerator().shuffle(n),r=n.join(""),[((e,t)=>{let r=-1,o=-1,n="";for(;rt||n.exec(e)?(a.exec(e)?(i="\\x",s="00"):(i="\\u",s="0000"),`${i}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(r,c),c}};a=o.__decorate([n.injectable()],a),t.EscapeSequenceEncoder=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],r={};for(const o of e)void 0===r[o]&&this.visit(t,r,o);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const r of t){for(let t=r.length-1;t>=0;t-=1)r[t]===e&&r.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const r of e)this.hasPrecedents(r)||t.push(r);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const r=this.graph.get(t);return r&&!r.includes(e)&&r.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,r){const o=t[r];if("visiting"===o)throw new Error(`Detected cycle involving node: ${r}`);if(o)return;t[r]="visiting";const n=this.getPrecedents(r);for(const r of n)this.visit(e,t,r);t[r]="ok",e.push(r)}};a=o.__decorate([n.injectable()],a),t.LevelledTopologicalSorter=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),r=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of r)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const r=[];for(const o of e){const e=t[o].runAfter;if(e&&e.length)for(const n of e){!t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ILevelledTopologicalSorter)),o.__metadata("design:paramtypes",[Object])],i),t.NodeTransformerNamesGroupsBuilder=i},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(36)),c=r(188),d=r(19),l=r(6),u=r(189),p=r(3);let m=o=class{constructor(e,t,r,o,n){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=r,this.logger=o,this.options=n}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.4"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),a=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,a),this.getObfuscatedCode(n)}parseCode(e){return u.EspreeFacade.parse(e,o.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,l.TransformationStage.Initializing),!p.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,l.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,l.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,l.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,l.TransformationStage.Converting),e=this.runTransformationStage(e,l.TransformationStage.Obfuscating),e=this.runTransformationStage(e,l.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const r=Object.assign({},o.escodegenParams);this.options.sourceMap&&(r.sourceMap=this.options.inputFileName||"sourceMap",r.sourceContent=e);const n=s.generate(t,Object.assign(Object.assign({},r),{format:{compact:this.options.compact}}));return n.map=n.map?n.map.toString():"",n}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[d.NodeTransformer.BlockStatementControlFlowTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.CommentsTransformer,d.NodeTransformer.CustomNodesTransformer,d.NodeTransformer.DeadCodeInjectionTransformer,d.NodeTransformer.EvalCallExpressionTransformer,d.NodeTransformer.FunctionControlFlowTransformer,d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.ImportDeclarationTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.LiteralTransformer,d.NodeTransformer.MemberExpressionTransformer,d.NodeTransformer.MetadataTransformer,d.NodeTransformer.MethodDefinitionTransformer,d.NodeTransformer.ObfuscatingGuardsTransformer,d.NodeTransformer.ObjectExpressionKeysTransformer,d.NodeTransformer.ObjectExpressionTransformer,d.NodeTransformer.ParentificationTransformer,d.NodeTransformer.SplitStringTransformer,d.NodeTransformer.TemplateLiteralTransformer,d.NodeTransformer.VariableDeclarationTransformer,d.NodeTransformer.VariablePreserveTransformer],m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IObfuscatedCode)),n.__param(3,a.inject(i.ServiceIdentifiers.ILogger)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(43)),a=o.__importDefault(r(53));class i{static parse(e,t){const r=i.sourceTypes.length;for(let o=0;o"),c=`...${o.substring(n,a).replace(/^\s+/,"")}...`;throw new Error(`Line ${r.line}: ${t}\n${s} ${c}`)}}t.EspreeFacade=i,i.colorError=a.default.red,i.nearestSymbolsCount=15,i.sourceTypes=["script","module"]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importDefault(r(191));n.decorate(n.injectable(),a.default);let i=class extends a.default{};i=o.__decorate([n.injectable()],i),t.ObfuscationEventEmitter=i},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(28);let c=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case s.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case s.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"obfuscatedCode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"sourceMap",void 0),c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],c),t.ObfuscatedCode=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(195),c=r(3),d=r(11);let l=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;let o,n;this.cachedNodeTransformersData.has(t)?[o,n]=this.cachedNodeTransformersData.get(t):(o=this.buildNormalizedNodeTransformers(t),n=this.nodeTransformerNamesGroupsBuilder.build(o),this.cachedNodeTransformersData.set(t,[o,n]));for(const t of n){const n=[],a=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&a.push({leave:t.leave}))}(n.length||a.length)&&i.replace(e,{enter:this.mergeVisitorsForDirection(n,s.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(a,s.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(d.NodeMetadata.isIgnoredNode(o))return i.VisitorOption.Skip;for(let a=0;ae}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__INodeTransformer)),o.__param(1,n.inject(a.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o.__metadata("design:paramtypes",[Function,Object])],l),t.TransformersRunner=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(202)),a=o.__importStar(r(197)),i=r(4),s=r(39),c=r(203),d=r(204),l=r(205),u=r(206),p=r(207),m=r(208),f=r(209),g=r(24),N=r(212);class _{constructor(e){this.rawArguments=e,this.arguments=e.slice(2)}static filterOptions(e){const t={};return Object.keys(e).forEach(r=>{void 0!==e[r]&&(t[r]=e[r])}),t}static processSourceCodeWithoutSourceMap(e,t,r){const o=g.JavaScriptObfuscator.obfuscate(e,r).getObfuscatedCode();f.CLIUtils.writeFile(t,o)}static processSourceCodeWithSourceMap(e,t,r){const o=f.CLIUtils.getOutputSourceMapPath(t,r.sourceMapFileName||"");r=Object.assign(Object.assign({},r),{sourceMapFileName:a.basename(o)});const n=g.JavaScriptObfuscator.obfuscate(e,r);f.CLIUtils.writeFile(t,n.getObfuscatedCode()),"separate"===r.sourceMapMode&&n.getSourceMap()&&f.CLIUtils.writeFile(o,n.getSourceMap())}initialize(){this.inputPath=a.normalize(this.arguments[0]||""),this.commands=new n.Command,this.configureCommands(),this.configureHelp(),this.inputCLIOptions=this.commands.opts()}run(){if(!this.arguments.length||this.arguments.includes("--help"))return void this.commands.outputHelp();const e=new N.SourceCodeReader(this.inputCLIOptions).readSourceCode(this.inputPath);this.processSourceCodeData(e)}buildOptions(){const e=_.filterOptions(this.inputCLIOptions),t=this.inputCLIOptions.config,r=t?a.resolve(t,"."):"",o=r?f.CLIUtils.getUserConfig(r):{},n=a.basename(this.inputPath);return Object.assign(Object.assign(Object.assign(Object.assign({},s.DEFAULT_PRESET),o),e),{inputFileName:n})}configureCommands(){this.commands.usage(" [options]").version("0.20.4","-v, --version").option("-o, --output ","Output path for obfuscated code").option("--compact ","Disable one line output code compacting",d.BooleanSanitizer).option("--config ","Name of js / json config file").option("--control-flow-flattening ","Enables control flow flattening",d.BooleanSanitizer).option("--control-flow-flattening-threshold ","The probability that the control flow flattening transformation will be applied to the node",parseFloat).option("--dead-code-injection ","Enables dead code injection",d.BooleanSanitizer).option("--dead-code-injection-threshold ","The probability that the dead code injection transformation will be applied to the node",parseFloat).option("--debug-protection ","Disable browser Debug panel (can cause DevTools enabled browser freeze)",d.BooleanSanitizer).option("--debug-protection-interval ","Disable browser Debug panel even after page was loaded (can cause DevTools enabled browser freeze)",d.BooleanSanitizer).option("--disable-console-output ","Allow console.log, console.info, console.error and console.warn messages output into browser console",d.BooleanSanitizer).option("--domain-lock (comma separated, without whitespaces)","Blocks the execution of the code in domains that do not match the passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--exclude (comma separated, without whitespaces)","A filename or glob which indicates files to exclude from obfuscation",c.ArraySanitizer).option("--identifier-names-generator ","Sets identifier names generator. Values: hexadecimal, mangled, dictionary. Default: hexadecimal",l.IdentifierNamesGeneratorSanitizer).option("--identifiers-prefix ","Sets prefix for all global identifiers.").option("--identifiers-dictionary (comma separated, without whitespaces)","Identifiers dictionary (comma separated) for `--identifier-names-generator dictionary` option",c.ArraySanitizer).option("--log ","Enables logging of the information to the console",d.BooleanSanitizer).option("--reserved-names (comma separated, without whitespaces)","Disables obfuscation and generation of identifiers, which being matched by passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--reserved-strings (comma separated, without whitespaces)","Disables transformation of string literals, which being matched by passed RegExp patterns (comma separated)",c.ArraySanitizer).option("--rename-globals ","Allows to enable obfuscation of global variable and function names with declaration.",d.BooleanSanitizer).option("--rotate-string-array ","Disable rotation of unicode array values during obfuscation",d.BooleanSanitizer).option("--seed ","Sets seed for random generator. This is useful for creating repeatable results.",parseFloat).option("--self-defending ","Disables self-defending for obfuscated code",d.BooleanSanitizer).option("--source-map ","Enables source map generation",d.BooleanSanitizer).option("--source-map-base-url ","Sets base url to the source map import url when `--source-map-mode=separate`").option("--source-map-file-name ","Sets file name for output source map when `--source-map-mode=separate`").option("--source-map-mode ","Specify source map output mode. Values: inline, separate. Default: separate",p.SourceMapModeSanitizer).option("--split-strings ","Splits literal strings into chunks with length of `splitStringsChunkLength` option value",d.BooleanSanitizer).option("--split-strings-chunk-length ","Sets chunk length of `splitStrings` option",parseFloat).option("--string-array ","Disables gathering of all literal strings into an array and replacing every literal string with an array call",d.BooleanSanitizer).option("--string-array-encoding ","Encodes all strings in strings array using base64 or rc4 (this option can slow down your code speed. Values: true, false, base64, rc4. Default: false",m.StringArrayEncodingSanitizer).option("--string-array-threshold ","The probability that the literal string will be inserted into stringArray (Default: 0.8, Min: 0, Max: 1)",parseFloat).option("--target ","Allows to set target environment for obfuscated code. Values: browser, browser-no-eval, node. Default: browser",u.ObfuscationTargetSanitizer).option("--transform-object-keys ","Enables transformation of object keys",d.BooleanSanitizer).option("--unicode-escape-sequence ","Allows to enable/disable string conversion to unicode escape sequence",d.BooleanSanitizer).parse(this.rawArguments)}configureHelp(){this.commands.on("--help",()=>{console.log(" Examples:\n"),console.log(" %> javascript-obfuscator input_file_name.js --compact true --self-defending false"),console.log(" %> javascript-obfuscator input_file_name.js --output output_file_name.js --compact true --self-defending false"),console.log(" %> javascript-obfuscator input_directory_name --compact true --self-defending false"),console.log("")})}processSourceCodeData(e){const t=this.inputCLIOptions.output?a.normalize(this.inputCLIOptions.output):"";if(Array.isArray(e))e.forEach(({filePath:e,content:r},o)=>{const n=t?a.join(t,e):f.CLIUtils.getOutputCodePath(e);this.processSourceCode(r,n,o)});else{const r=t||f.CLIUtils.getOutputCodePath(this.inputPath);this.processSourceCode(e,r,null)}}processSourceCode(e,t,r){let o=this.buildOptions();if(null!==r){const e=`${this.inputCLIOptions.identifiersPrefix||_.baseIdentifiersPrefix}${r}`;o=Object.assign(Object.assign({},o),{identifiersPrefix:e})}o.sourceMap?_.processSourceCodeWithSourceMap(e,t,o):_.processSourceCodeWithoutSourceMap(e,t,o)}}_.encoding="utf8",_.obfuscatedFilePrefix="-obfuscated",_.baseIdentifiersPrefix="a",o.__decorate([i.initializable(),o.__metadata("design:type",Object)],_.prototype,"commands",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],_.prototype,"inputCLIOptions",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],_.prototype,"inputPath",void 0),t.JavaScriptObfuscatorCLI=_},function(e,t){e.exports=require("path")},function(e,t){e.exports=require("fs")},,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(201);e.exports=o.JavaScriptObfuscatorCLI},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(196);t.JavaScriptObfuscatorCLI=class{static obfuscate(e){const t=new o.JavaScriptObfuscatorCLI(e);t.initialize(),t.run()}}},function(e,t){e.exports=require("commander")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArraySanitizer=e=>{if(/,$/.test(e))throw new SyntaxError("Multiple values should be wrapped inside quotes: --option-name 'value1','value2'");return e.split(",").map(e=>e.trim())}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanSanitizer=e=>"true"===e||"1"===e},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27);t.IdentifierNamesGeneratorSanitizer=e=>{if(!Object.keys(o.IdentifierNamesGenerator).some(t=>o.IdentifierNamesGenerator[t]===e))throw new ReferenceError("Invalid value of `--identifier-names-generator` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17);t.ObfuscationTargetSanitizer=e=>{if(!Object.keys(o.ObfuscationTarget).some(t=>o.ObfuscationTarget[t]===e))throw new ReferenceError("Invalid value of `--target` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);t.SourceMapModeSanitizer=e=>{if(!Object.keys(o.SourceMapMode).some(t=>o.SourceMapMode[t]===e))throw new ReferenceError("Invalid value of `--source-map-mode` option");return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingSanitizer=e=>{switch(e){case"true":case"1":case o.StringArrayEncoding.Base64:return!0;case o.StringArrayEncoding.Rc4:return o.StringArrayEncoding.Rc4;default:return!1}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(198)),a=o.__importStar(r(210)),i=o.__importStar(r(197)),s=r(196);t.CLIUtils=class{static getOutputCodePath(e){return i.normalize(e).split(".").map((e,t)=>0===t?`${e}${s.JavaScriptObfuscatorCLI.obfuscatedFilePrefix}`:e).join(".")}static getOutputSourceMapPath(e,t=""){return t&&(e=`${e.substring(0,e.lastIndexOf("/"))}/${t}`),/\.js\.map$/.test(e)?/\.js$/.test(e)&&(e+=".map"):e=`${e.split(".")[0]}.js.map`,e}static getUserConfig(e){let t;try{t=r(211)(e)}catch(r){try{t=require(e)}catch(e){throw new ReferenceError("Given config path must be a valid `.js` or `.json` file path")}}return t}static writeFile(e,t){a.sync(i.dirname(e)),n.writeFileSync(e,t,{encoding:s.JavaScriptObfuscatorCLI.encoding})}}},function(e,t){e.exports=require("mkdirp")},function(e,t){function r(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}r.keys=function(){return[]},r.resolve=r,e.exports=r,r.id=211},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(198)),a=o.__importStar(r(197)),i=o.__importDefault(r(213)),s=r(56),c=r(196),d=r(55);class l{constructor(e){this.options=e}static isExcludedPath(e,t=[]){if(!t.length)return!1;const r=a.basename(e),o=!!i.default([e],t).length;return t.some(t=>e.includes(t)||r.includes(t))||o}static isDirectoryPath(e){try{return n.statSync(e).isDirectory()}catch(e){return!1}}static isFilePath(e){try{return n.statSync(e).isFile()}catch(e){return!1}}static logFilePath(e){const t=a.normalize(e);d.Logger.log(d.Logger.colorInfo,s.LoggingPrefix.CLI,`Obfuscating file: ${t}...`)}readSourceCode(e){if(l.isFilePath(e)&&this.isValidFile(e))return this.readFile(e);if(l.isDirectoryPath(e)&&this.isValidDirectory(e))return this.readDirectoryRecursive(e);const t=l.availableInputExtensions.map(e=>`\`${e}\``).join(", ");throw new ReferenceError(`Given input path must be a valid ${t} file or directory path`)}readDirectoryRecursive(e,t=[]){return n.readdirSync(e,c.JavaScriptObfuscatorCLI.encoding).forEach(r=>{const o=`${e}/${r}`;if(l.isDirectoryPath(o)&&this.isValidDirectory(o))t.push(...this.readDirectoryRecursive(o));else if(l.isFilePath(o)&&this.isValidFile(o)){const e=this.readFile(o);t.push({filePath:o,content:e})}}),t}readFile(e){return l.logFilePath(e),n.readFileSync(e,c.JavaScriptObfuscatorCLI.encoding)}isValidDirectory(e){return!l.isExcludedPath(e,this.options.exclude)}isValidFile(e){return l.availableInputExtensions.includes(a.extname(e))&&!e.includes(c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix)&&!l.isExcludedPath(e,this.options.exclude)}}t.SourceCodeReader=l,l.availableInputExtensions=[".js"]},function(e,t){e.exports=require("multimatch")}]); //# sourceMappingURL=index.cli.js.map \ No newline at end of file diff --git a/dist/index.js b/dist/index.js index 26b452c83..062be2002 100644 --- a/dist/index.js +++ b/dist/index.js @@ -21,5 +21,5 @@ 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. */ -require("source-map-support").install(),module.exports=function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=199)}([function(e,t){e.exports=require("inversify")},function(e,t){e.exports=require("tslib")},function(e,t,r){"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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(13);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentPatternNode(e){return e.type===o.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===o.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===o.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===o.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===o.NodeType.CallExpression}static isCatchClauseNode(e){return e.type===o.NodeType.CatchClause}static isClassDeclarationNode(e){return e.type===o.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===o.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===o.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===o.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===o.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return n.isFunctionDeclarationNode(e)||n.isFunctionExpressionNode(e)||n.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===o.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===o.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===o.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===o.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===o.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const r=n.isLabeledStatementNode(t)&&t.label===e,o=n.isContinueStatementNode(t)&&t.label===e,a=n.isBreakStatementNode(t)&&t.label===e;return r||o||a}static isLabeledStatementNode(e){return e.type===o.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===o.NodeType.Literal}static isMemberExpressionNode(e){return e.type===o.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===o.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return n.isProgramNode(e)||n.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return n.isNodeWithLexicalScope(e)||n.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return n.isProgramNode(e)||n.isBlockStatementNode(e)&&n.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return n.isProgramNode(e)||n.isBlockStatementNode(e)||n.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===o.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===o.NodeType.ObjectExpression}static isProgramNode(e){return e.type===o.NodeType.Program}static isPropertyNode(e){return e.type===o.NodeType.Property}static parentNodeIsPropertyNode(e,t){return n.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return n.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return n.isMethodDefinitionNode(t)&&!t.computed}static isReplaceableIdentifierNode(e,t){return n.isIdentifierNode(e)&&!n.parentNodeIsPropertyNode(e,t)&&!n.parentNodeIsMemberExpressionNode(e,t)&&!n.parentNodeIsMethodDefinitionNode(e,t)&&!n.isLabelIdentifierNode(e,t)}static isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSuperNode(e){return e.type===o.NodeType.Super}static isSwitchCaseNode(e){return e.type===o.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===o.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===o.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===o.NodeType.UnaryExpression}static isUseStrictOperator(e){return n.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===o.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===o.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===o.NodeType.WhileStatement}}t.NodeGuards=n,n.nodesWithLexicalStatements=[o.NodeType.ArrowFunctionExpression,o.NodeType.FunctionDeclaration,o.NodeType.FunctionExpression,o.NodeType.MethodDefinition]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o={configurable:!0,enumerable:!0};function n(e,t,r){Reflect.hasMetadata(e,r)||Reflect.defineMetadata(e,t,r)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(r,a)=>{const i=r[e];if(!i||"function"!=typeof i)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return n("_initialized",!1,r),n("_initializablePropertiesSet",new Set,r),n("_wrappedMethodsSet",new Set,r),function(e,t){const r=Object.getOwnPropertyNames(e),n=[t,"constructor"];r.forEach(r=>{const a=Reflect.getMetadata("_initializablePropertiesSet",e),i=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||i.has(r))return;if("function"!=typeof e[r])return;const s=Object.getOwnPropertyDescriptor(e,r)||o,c=s.value;Object.defineProperty(e,r,Object.assign(Object.assign({},s),{value:function(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return c.apply(this,arguments)}})),i.add(r)})}(r,e),function(e,t,r){const n=Object.getOwnPropertyDescriptor(e,t)||o,a=n.value;Object.defineProperty(e,t,Object.assign(Object.assign({},n),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,a),function(e,t){Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const r=`_${t.toString()}`,n=Object.getOwnPropertyDescriptor(e,r)||o;return Object.defineProperty(e,t,Object.assign(Object.assign({},n),{get:function(){if(void 0===this[r])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[r]},set:function(e){this[r]=e}})),n}(r,a)}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(36)),a=o.__importStar(r(43)),i=o.__importStar(r(10)),s=r(3),c=r(11);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=a.parse(e,{sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),c.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+n.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.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(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(d.cloneRecursive):"object"==typeof o?d.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=d},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.randomGenerator=e,this.options=t}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractNodeTransformer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1).__importStar(r(36)),n=r(13);class a{static programNode(e=[]){return{type:n.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:n.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,r){return{type:n.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:n.NodeType.BinaryExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:n.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:n.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:n.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:n.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:n.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:n.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,r){return{type:n.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:n.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,r){return Object.assign(Object.assign({type:n.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:n.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:n.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:n.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:n.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:n.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:n.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:n.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:n.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:n.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:n.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,r=!0){return{type:n.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:n.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:n.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:n.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:n.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(86),c=r(87);let d=o=class{constructor(e,t,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}};d.globalVariableTemplateFunctions=[s.GlobalVariableTemplate1(),c.GlobalVariableTemplate2()],d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.AbstractCustomNode=d},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{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===o.get(e,"ignoredNode")}static isRenamedIdentifier(e){return!0===o.get(e,"renamedIdentifier")}static isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t){e.exports=require("string-template")},function(e,t,r){"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.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",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.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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(57),i=r(62),s=r(70),c=r(79),d=r(125),l=r(126),u=r(130),p=r(131),m=r(145),f=r(163),g=r(174),N=r(179),_=r(187),h=r(55),b=r(190),y=r(192),S=r(193),I=r(194);t.InversifyContainerFacade=class{constructor(){this.container=new o.Container}static getFactory(e){return t=>r=>t.container.getNamed(e,r)}static getCacheFactory(e){return t=>{const r=new Map;return o=>{if(r.has(o))return r.get(o);const n=t.container.getNamed(e,o);return r.set(o,n),n}}}static getConstructorFactory(e,...t){return r=>{const o=new Map,n=[];return a=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(a))return new(o.get(a))(...n);const i=r.container.getNamed(e,a);return o.set(a,i),new i(...n)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,r){this.container.bind(n.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new S.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(h.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(_.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(I.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(y.ObfuscatedCode),this.container.bind(n.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,r)=>{const o=e.container.get(n.ServiceIdentifiers.IObfuscatedCode);return o.initialize(t,r),o}),this.container.bind(n.ServiceIdentifiers.IObfuscationEventEmitter).to(b.ObfuscationEventEmitter).inSingletonScope(),this.container.load(a.analyzersModule),this.container.load(i.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(u.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(f.preparingTransformersModule),this.container.load(g.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionFunctionNode="BinaryExpressionFunctionNode",e.BlockStatementControlFlowFlatteningNode="BlockStatementControlFlowFlatteningNode",e.CallExpressionControlFlowStorageCallNode="CallExpressionControlFlowStorageCallNode",e.CallExpressionFunctionNode="CallExpressionFunctionNode",e.ControlFlowStorageNode="ControlFlowStorageNode",e.ExpressionWithOperatorControlFlowStorageCallNode="ExpressionWithOperatorControlFlowStorageCallNode",e.LogicalExpressionFunctionNode="LogicalExpressionFunctionNode",e.StringLiteralControlFlowStorageCallNode="StringLiteralControlFlowStorageCallNode",e.StringLiteralNode="StringLiteralNode"}(t.ControlFlowCustomNode||(t.ControlFlowCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getParentNodeWithStatements(e){return n.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return n.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return n.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return n.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(o.NodeGuards.isProgramNode(e))throw new Error("Unable to find root statement for `Program` node");const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?e:n.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?t:n.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,i)&&a>0)&&r.push(e),e!==i?n.getParentNodesWithStatementsRecursive(i,t,r,++a):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),a=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,i=a.indexOf(e);return a[i+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static append(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,r,o=0){const a=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(a,r)}static getOptimalBlockScope(e,t,r=1/0){const o=e[t];if(r<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return r>1&&o.stackTrace.length?n.getOptimalBlockScope(o.stackTrace,0,--r):o.callee}static insertAfter(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o+1)}static insertAtIndex(e,t,r){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e).slice(0,r),...t,...n.getScopeStatements(e).slice(r)])}static prepend(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...t,...n.getScopeStatements(e)])}static getScopeStatements(e){return o.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){o.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(2),n=r(15);class a{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const a=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),a}}t.JavaScriptObfuscator=a,a.version="0.20.3"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const r=this.customNodes.get(e);r&&t(r)}getRandomStackTraceIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],i),t.AbstractCustomNodeGroup=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.IdentifierNamesGenerator=o.MakeEnum({DictionaryIdentifierNamesGenerator:"dictionary",HexadecimalIdentifierNamesGenerator:"hexadecimal",MangledIdentifierNamesGenerator:"mangled"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.NO_ADDITIONAL_NODES_PRESET=Object.freeze({compact:!0,controlFlowFlattening:!1,controlFlowFlatteningThreshold:0,deadCodeInjection:!1,deadCodeInjectionThreshold:0,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!1,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:0,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.NumberUtils=class{static toHex(e){return e.toString(16)}static isCeil(e){return e%1==0}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.options=e}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],i),t.AbstractObfuscatingReplacer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{};a=o.__decorate([n.injectable()],a),t.AbstractCalleeDataExtractor=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2);let s=o=class{constructor(e,t,r){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=r}static getStorageKeysByIdForCurrentStorage(e,t){let r;return r=e.has(t)?e.get(t):new Map,r}insertCustomNodeToControlFlowStorage(e,t,r,n){const a=t.getStorageId(),i=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,a),s=i.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return i.set(r,[d]),this.replacerDataByControlFlowStorageId.set(a,i),t.set(d,e),d}};s=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],s),t.AbstractControlFlowReplacer=s},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n var that = (typeof window !== 'undefined'\n ? window\n : (typeof process === 'object' &&\n typeof require === 'function' &&\n typeof global === 'object')\n ? global\n : this);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractIdentifierNamesGenerator=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.FunctionDeclarationCalleeDataExtractor="FunctionDeclarationCalleeDataExtractor",e.FunctionExpressionCalleeDataExtractor="FunctionExpressionCalleeDataExtractor",e.ObjectExpressionCalleeDataExtractor="ObjectExpressionCalleeDataExtractor"}(t.CalleeDataExtractor||(t.CalleeDataExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionControlFlowReplacer="BinaryExpressionControlFlowReplacer",e.CallExpressionControlFlowReplacer="CallExpressionControlFlowReplacer",e.LogicalExpressionControlFlowReplacer="LogicalExpressionControlFlowReplacer",e.StringLiteralControlFlowReplacer="StringLiteralControlFlowReplacer"}(t.ControlFlowReplacer||(t.ControlFlowReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(16),s=r(35),c=r(3);let d=class extends s.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!c.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IControlFlowCustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.ExpressionWithOperatorControlFlowReplacer=d},function(e,t){e.exports=require("espree")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementDeadCodeInjectionNode="BlockStatementDeadCodeInjectionNode"}(t.DeadCodeInjectionCustomNode||(t.DeadCodeInjectionCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AssignmentExpressionPropertiesExtractor="AssignmentExpressionPropertiesExtractor",e.VariableDeclaratorPropertiesExtractor="VariableDeclaratorPropertiesExtractor"}(t.PropertiesExtractor||(t.PropertiesExtractor={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(20),c=r(8),d=r(3),l=r(18);let u=o=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return d.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:d.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return d.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||d.NodeGuards.isObjectPatternNode(e)||d.NodeGuards.isArrayPatternNode(e)||d.NodeGuards.isAssignmentPatternNode(e)||d.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const r=e.length,n=[],a=[];for(let i=0;i!t.includes(r))}transformObjectExpressionNode(e,t){const r=e.properties,[o,n]=this.extractPropertiesToExpressionStatements(r,t),a=this.getHostStatement(e),i=this.getHostNodeWithStatements(e,a);return this.filterExtractedObjectExpressionProperties(e,n),s.NodeAppender.insertAfter(i,o,a),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const r=l.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,r),r}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=l.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.AbstractPropertiesExtractor=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return o.obfuscationEnableCommentRegExp.test(e.value)||o.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!i.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,r=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),r&&(this.obfuscationAllowedForNextNode=this.checkComments(r)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let r=this.obfuscationAllowedForCurrentNode;for(let n=0;n1?e:`${e}|${s.default(this.sourceCode.getSourceCode())}`}};l.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n.__decorate([d.initializable(),n.__metadata("design:type",Object)],l.prototype,"randomGenerator",void 0),n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],l.prototype,"initialize",null),l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ISourceCode)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.RandomGenerator=l},function(e,t){e.exports=require("chalk")},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(53)),c=r(56);let d=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,o||"")}info(e,t){this.options.log&&o.log(o.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,c.LoggingPrefix.Base,e,t)}};d.colorInfo=s.default.cyan,d.colorSuccess=s.default.green,d.colorWarn=s.default.yellow,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.Logger=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(40),s=r(58),c=r(59),d=r(60),l=r(61);t.analyzersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.IStackTraceAnalyzer).to(l.StackTraceAnalyzer).inSingletonScope(),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(s.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){if(!s.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return r?{callee:r,name:t.name}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:e=>{if(s.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){let r=null;return s.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),s.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:t.name||null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(s.NodeGuards.isFunctionExpressionNode(e)&&o&&s.NodeGuards.isVariableDeclaratorNode(o)&&s.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionExpressionCalleeDataExtractor=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=n.__importStar(r(10)),s=r(34),c=r(3),d=r(18);let l=o=class extends s.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=c.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=c.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!c.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(c.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!c.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return c.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(c.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return i.traverse(e,{enter:e=>{if(c.NodeGuards.isVariableDeclaratorNode(e)&&c.NodeGuards.isIdentifierNode(e.id)&&e.init&&c.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),i.VisitorOption.Break}}),o}findCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;for(const n of e)if(o.isValidTargetPropertyNode(n,r)){if(c.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(c.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};l=o=n.__decorate([a.injectable()],l),t.ObjectExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(40),d=r(3),l=r(18);let u=o=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,r=o.limitThresholdActivationLength-1;let n=t;return t>r&&(n=Math.round(r+t*o.limitThreshold),n>t&&(n=t)),n}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=o.getLimitIndex(e.length),r=[],n=e.length;for(let o=0;ot);o++){const t=e[o];s.traverse(t,{enter:o=>{if(d.NodeGuards.isCallExpressionNode(o))return t.parentNode!==l.NodeStatementUtils.getParentNodeWithStatements(o)?s.VisitorOption.Skip:void this.analyzeCallExpressionNode(r,e,o)}})}return r}analyzeCallExpressionNode(e,t,r){o.calleeDataExtractorsList.forEach(o=>{const n=this.calleeDataExtractorFactory(o).extract(t,r.callee);n&&e.push(Object.assign(Object.assign({},n),{stackTrace:this.analyzeRecursive(n.callee.body)}))})}};u.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],u.limitThresholdActivationLength=25,u.limitThreshold=.002,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICalleeDataExtractor)),n.__metadata("design:paramtypes",[Function])],u),t.StackTraceAnalyzer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(41),s=r(19),c=r(63),d=r(64),l=r(65),u=r(66),p=r(67),m=r(68),f=r(69);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(m.LogicalExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(f.StringLiteralControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(a.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42);let d=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.BinaryExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}};d.usingExistingIdentifierChance=.5,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.BinaryExpressionControlFlowReplacer=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(6),l=r(7),u=r(3),p=r(5);let m=o=class extends l.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=u.NodeGuards.isBreakStatementNode(e)||u.NodeGuards.isContinueStatementNode(e),r=u.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=u.NodeGuards.isClassDeclarationNode(e);return u.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return s.traverse(e,{enter:e=>{if(u.NodeGuards.isWhileStatementNode(e))return s.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case d.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&u.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold||!o.canTransformBlockStatementNode(e))return e;const r=e.body,n=this.arrayUtils.createWithRange(r.length),a=this.arrayUtils.shuffle(n),i=n.map(e=>a.indexOf(e)),s=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,a,i);const d=s.getNode()[0];return p.NodeUtils.parentizeNode(d,t),d}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.BlockStatementControlFlowTransformer=m},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!d.NodeGuards.isIdentifierNode(n))return e;const a=String(e.arguments.length),i=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionFunctionNode),c=e.arguments;i.initialize(c);const l=this.insertCustomNodeToControlFlowStorage(i,r,a,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),l,n,c)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!d.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};l.usingExistingIdentifierChance=.5,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(44),d=r(19),l=r(13),u=r(6),p=r(7),m=r(8),f=r(3),g=r(18),N=r(5);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.deadCodeInjectionRootAstHostNodeSet=new Set,this.collectedBlockStatements=[],this.collectedBlockStatementsTotalLength=0,this.deadCodeInjectionCustomNodeFactory=e,this.transformersRunner=t}static isProhibitedNodeInsideCollectedBlockStatement(e){return f.NodeGuards.isBreakStatementNode(e)||f.NodeGuards.isContinueStatementNode(e)||f.NodeGuards.isAwaitExpressionNode(e)||f.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!f.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=g.NodeStatementUtils.getScopeOfNode(e),r=f.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),a=m.NodeFactory.blockStatementNode(n),i=e.id.name;let c=!1;return s.traverse(a,{enter:e=>{if(f.NodeGuards.isIdentifierNode(e)&&e.name===i)return c=!0,s.VisitorOption.Break}}),c}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return s.traverse(e,{enter:e=>{if(f.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,s.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(s.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,s.VisitorOption.Break}}),!t)return!1;return g.NodeStatementUtils.getParentNodeWithStatements(e).type!==l.NodeType.Program}getVisitor(e){switch(e){case u.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&f.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&f.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case u.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){s.traverse(e,{enter:e=>{if(!f.NodeGuards.isBlockStatementNode(e))return;const t=N.NodeUtils.clone(e);if(!o.isValidCollectedBlockStatementNode(t))return;const r=this.makeClonedBlockStatementNodeUnique(t);this.collectedBlockStatements.push(r)}}),this.collectedBlockStatementsTotalLength=this.collectedBlockStatements.length}transformNode(e,t){if(!this.collectedBlockStatements.length||this.collectedBlockStatementsTotalLengththis.options.deadCodeInjectionThreshold||!o.isValidWrappedBlockStatementNode(e))return e;const r=this.collectedBlockStatements.length-1,n=this.randomGenerator.getRandomInteger(0,r),a=this.collectedBlockStatements.splice(n,1)[0];return a===e?e:this.replaceBlockStatementNode(e,a,t)}restoreNode(e,t){const r=e.body[0];if(!f.NodeGuards.isFunctionDeclarationNode(r))throw new Error("Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node");return r.body}isDeadCodeInjectionRootAstHostNode(e){return f.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=m.NodeFactory.functionExpressionNode([],e);return N.NodeUtils.parentizeNode(t,t),N.NodeUtils.parentizeNode(e,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,u.TransformationStage.Obfuscating).body}replaceBlockStatementNode(e,t,r){const n=m.NodeFactory.blockStatementNode([m.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const a=this.deadCodeInjectionCustomNodeFactory(c.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);a.initialize(e,n);const i=a.getNode()[0];return N.NodeUtils.parentizeNode(i,r),i}};_.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",_.maxNestedBlockStatementsCount=4,_.minCollectedBlockStatementsCount=5,_.transformersToRenameBlockScopeIdentifiers=[d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.VariableDeclarationTransformer],_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],_),t.DeadCodeInjectionTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(41),l=r(13),u=r(6),p=r(7),m=r(20),f=r(3),g=r(11),N=r(18);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.controlFlowData=new Map,this.visitedFunctionNodes=new Set,this.hostNodesWithControlFlowNode=new Set,this.controlFlowStorageFactory=e,this.controlFlowReplacerFactory=t,this.controlFlowCustomNodeFactory=r}getVisitor(e){switch(e){case u.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!f.NodeGuards.isBlockStatementNode(e.body))return e;const r=this.getHostNode(e.body),o=this.getControlFlowStorage(r);if(this.controlFlowData.set(r,o),this.transformFunctionBody(e.body,o),!o.getLength())return e;const n=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),m.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(f.NodeGuards.isSwitchCaseNode(e)?e.consequent.shift():e.body.shift());const r=this.controlFlowData.get(e);t.mergeWith(r,!0)}return t}getHostNode(e){const t=N.NodeStatementUtils.getParentNodesWithStatements(e);return 1===t.length?e:(t.pop(),t.length>o.hostNodeSearchMinDepth&&t.splice(0,o.hostNodeSearchMinDepth),t.length>o.hostNodeSearchMaxDepth&&(t.length=o.hostNodeSearchMaxDepth),this.randomGenerator.getRandomGenerator().pickone(t))}isVisitedFunctionNode(e){return(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){s.replace(e,{enter:(e,r)=>{if(g.NodeMetadata.isIgnoredNode(e))return s.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return s.VisitorOption.Skip;if(!o.controlFlowReplacersMap.has(e.type))return e;if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold)return e;const n=o.controlFlowReplacersMap.get(e.type);return void 0===n?e:Object.assign(Object.assign({},this.controlFlowReplacerFactory(n).replace(e,r,t)),{parentNode:r})}})}};_.controlFlowReplacersMap=new Map([[l.NodeType.BinaryExpression,d.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[l.NodeType.CallExpression,d.ControlFlowReplacer.CallExpressionControlFlowReplacer],[l.NodeType.LogicalExpression,d.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[l.NodeType.Literal,d.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),_.hostNodeSearchMinDepth=0,_.hostNodeSearchMaxDepth=2,_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__TControlFlowStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.Factory__IControlFlowReplacer)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(3,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Function,Function,Object,Object])],_),t.FunctionControlFlowTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42),d=r(3),l=r(5);let u=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(this.checkForProhibitedExpressions(e.left,e.right))return e;const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.LogicalExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=d.NodeGuards.isUnaryExpressionNode(e)?l.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(d.NodeGuards.isLiteralNode(t)||d.NodeGuards.isIdentifierNode(t)||d.NodeGuards.isObjectExpressionNode(t)||d.NodeGuards.isExpressionStatementNode(t))})}};u.usingExistingIdentifierChance=.5,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.LogicalExpressionControlFlowReplacer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(d.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralNode);a.initialize(e.value);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!d.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};l.usingExistingIdentifierChance=1,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(15),a=r(2),i=r(19),s=r(45),c=r(71),d=r(72),l=r(73),u=r(74),p=r(75),m=r(76),f=r(77),g=r(78);t.convertingTransformersModule=new o.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(i.NodeTransformer.MemberExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(i.NodeTransformer.MethodDefinitionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionKeysTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ObjectExpressionTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.SplitStringTransformer).whenTargetNamed(i.NodeTransformer.SplitStringTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.TemplateLiteralTransformer).whenTargetNamed(i.NodeTransformer.TemplateLiteralTransformer),e(a.ServiceIdentifiers.IPropertiesExtractor).to(c.AssignmentExpressionPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.AssignmentExpressionPropertiesExtractor),e(a.ServiceIdentifiers.IPropertiesExtractor).to(g.VariableDeclaratorPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.VariableDeclaratorPropertiesExtractor),e(a.ServiceIdentifiers.Factory__IPropertiesExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IPropertiesExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(46);let s=class extends i.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){const r=t.parentNode,o=t.left;return i.AbstractPropertiesExtractor.isProhibitedPattern(o)?e:r&&i.AbstractPropertiesExtractor.isProhibitedHostParent(r)?e:this.transformObjectExpressionNode(e,o)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.AssignmentExpressionPropertiesExtractor=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(d.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=c.NodeFactory.literalNode(e.property.name)}return e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MemberExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3);let u=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&l.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return l.NodeGuards.isIdentifierNode(e.key)&&!o.ignoredNames.includes(e.key.name)&&!1===e.computed&&(e.computed=!0,e.key=d.NodeFactory.literalNode(e.key.name)),e}};u.ignoredNames=["constructor"],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.MethodDefinitionTransformer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(13),c=r(45),d=r(6),l=r(7),u=r(3);let p=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.propertiesExtractorFactory=e}getVisitor(e){return e!==d.TransformationStage.Converting?null:{enter:(e,t)=>{if(this.options.transformObjectKeys&&t&&u.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}}}transformNode(e,t){if(!e.properties.length)return e;const r=o.propertiesExtractorsMap.get(t.type);return r?this.propertiesExtractorFactory(r).extract(e,t):e}};p.propertiesExtractorsMap=new Map([[s.NodeType.AssignmentExpression,c.PropertiesExtractor.AssignmentExpressionPropertiesExtractor],[s.NodeType.VariableDeclarator,c.PropertiesExtractor.VariableDeclaratorPropertiesExtractor]]),p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IPropertiesExtractor)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],p),t.ObjectExpressionKeysTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.escapeSequenceEncoder=e}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.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){d.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.value)))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),d.NodeGuards.isIdentifierNode(e.key)&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.name)))}getPropertyKeyValue(e){return this.options.unicodeEscapeSequence?this.escapeSequenceEncoder.encode(e,!0):e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object])],l),t.ObjectExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(19),c=r(6),d=r(7),l=r(8),u=r(3);let p=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[s.NodeTransformer.ObjectExpressionKeysTransformer,s.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let a=0;a{if(this.options.splitStrings)return t&&u.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if("string"!=typeof e.value)return e;if(u.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e)return e;if(this.options.splitStringsChunkLength>=e.value.length)return e;const r=o.chunkString(e.value,this.options.splitStringsChunkLength);return this.transformStringChunksToBinaryExpressionNode(r)}transformStringChunksToBinaryExpressionNode(e){const t=e.pop();if(void 0===t)throw new Error("Last chunk value should not be empty");const r=l.NodeFactory.literalNode(t);return 0===e.length?r:l.NodeFactory.binaryExpressionNode("+",this.transformStringChunksToBinaryExpressionNode(e),r)}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.SplitStringTransformer=p},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3),u=r(5);let p=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return e&&l.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return l.NodeGuards.isTemplateLiteralNode(e)&&!l.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&o.isValidTemplateLiteralNode(e,t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=e.expressions;let n,a=[];if(e.quasis.forEach(e=>{a.push(d.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&a.push(t)}),a=a.filter(e=>!(l.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(a[0])||o.isLiteralNodeWithStringValue(a[1])||a.unshift(d.NodeFactory.literalNode("")),a.length>1){let e=d.NodeFactory.binaryExpressionNode("+",a.shift(),a.shift());a.forEach(t=>{e=d.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=a[0];return u.NodeUtils.parentizeAst(n),n}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.TemplateLiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(46),c=r(3);let d=class extends s.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){return!c.NodeGuards.isIdentifierNode(t.id)||this.isProhibitedObjectExpressionNode(e,t.id)?e:this.transformObjectExpressionNode(e,t.id)}getHostVariableDeclaratorNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclaratorNode(t))throw new Error("Cannot get `VariableDeclarator` node for `ObjectExpression` node");return t}getHostVariableDeclarationNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclarationNode(t))throw new Error("Cannot get `VariableDeclaration` node for `VariableDeclarator` node");return t}isProhibitedObjectExpressionNode(e,t){const r=this.getHostVariableDeclaratorNode(e),o=this.getHostVariableDeclarationNode(r),{declarations:n}=o,a=n.indexOf(r);if(a===n.length-1)return!1;const s=n.slice(a);let d=!1;return s.forEach(e=>{i.traverse(e,{enter:e=>c.NodeGuards.isMemberExpressionNode(e)&&c.NodeGuards.isIdentifierNode(e.object)&&e.object.name===t.name?(d=!0,i.VisitorOption.Break):e})}),d}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.VariableDeclaratorPropertiesExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(16),s=r(23),c=r(47),d=r(44),l=r(80),u=r(81),p=r(82),m=r(83),f=r(84),g=r(85),N=r(88),_=r(89),h=r(90),b=r(91),y=r(92),S=r(93),I=r(95),v=r(97),C=r(99),O=r(103),j=r(105),F=r(106),T=r(107),x=r(109),E=r(111),w=r(118),G=r(120),R=r(123),P=r(124);t.customNodesModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.ICustomNode).to(S.ConsoleOutputDisableExpressionNode).whenTargetNamed(s.CustomNode.ConsoleOutputDisableExpressionNode),e(a.ServiceIdentifiers.ICustomNode).to(I.DebugProtectionFunctionCallNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionCallNode),e(a.ServiceIdentifiers.ICustomNode).to(v.DebugProtectionFunctionIntervalNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionIntervalNode),e(a.ServiceIdentifiers.ICustomNode).to(C.DebugProtectionFunctionNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(O.DomainLockNode).whenTargetNamed(s.CustomNode.DomainLockNode),e(a.ServiceIdentifiers.ICustomNode).to(T.NodeCallsControllerFunctionNode).whenTargetNamed(s.CustomNode.NodeCallsControllerFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(x.SelfDefendingUnicodeNode).whenTargetNamed(s.CustomNode.SelfDefendingUnicodeNode),e(a.ServiceIdentifiers.ICustomNode).to(E.StringArrayCallsWrapper).whenTargetNamed(s.CustomNode.StringArrayCallsWrapper),e(a.ServiceIdentifiers.ICustomNode).to(w.StringArrayNode).whenTargetNamed(s.CustomNode.StringArrayNode),e(a.ServiceIdentifiers.ICustomNode).to(G.StringArrayRotateFunctionNode).whenTargetNamed(s.CustomNode.StringArrayRotateFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.BinaryExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.BlockStatementControlFlowFlatteningNode).whenTargetNamed(i.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.CallExpressionControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.CallExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ControlFlowStorageNode).whenTargetNamed(i.ControlFlowCustomNode.ControlFlowStorageNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(j.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(F.LogicalExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(P.StringLiteralNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(R.StringLiteralControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(_.BlockStatementDeadCodeInjectionNode).whenTargetNamed(d.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(a.ServiceIdentifiers.ICustomNodeGroup).to(l.ConsoleOutputCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.ConsoleOutputCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(u.DebugProtectionCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DebugProtectionCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(p.DomainLockCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DomainLockCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(m.SelfDefendingCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.SelfDefendingCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(f.StringArrayCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.StringArrayCustomNodeGroup),e(a.ServiceIdentifiers.Factory__ICustomNode).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNode)),e(a.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__ICustomNodeGroup).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNodeGroup))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.ConsoleOutputDisableExpressionNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.disableConsoleOutput)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.ConsoleOutputDisableExpressionNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.ConsoleOutputDisableExpressionNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.ConsoleOutputCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20),u=r(3);let p=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionCallNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionNode,t=>{l.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionIntervalNode,t=>{const r=u.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);l.NodeAppender.insertAtIndex(e,t.getNode(),o)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.debugProtection)return;const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate(),r=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionNode),o=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionCallNode),n=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionIntervalNode),a=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);r.initialize(e),o.initialize(e,t),n.initialize(e),a.initialize(this.appendEvent,t),this.customNodes.set(s.CustomNode.DebugProtectionFunctionNode,r),this.customNodes.set(s.CustomNode.DebugProtectionFunctionCallNode,o),this.options.debugProtectionInterval&&this.customNodes.set(s.CustomNode.DebugProtectionFunctionIntervalNode,n),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,a)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],p.prototype,"customNodes",void 0),p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],p),t.DebugProtectionCustomNodeGroup=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DomainLockNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.domainLock.length)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.DomainLockNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.DomainLockNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.DomainLockCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.SelfDefendingUnicodeNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.selfDefending)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.SelfDefendingUnicodeNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.SelfDefendingUnicodeNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.SelfDefendingCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e,this.stringArrayStorage=t}appendCustomNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(s.CustomNode.StringArrayNode,t=>{l.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayCallsWrapper,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayRotateFunctionNode,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customNodes=new Map,!this.options.stringArray)return;const e=this.customNodeFactory(s.CustomNode.StringArrayNode),t=this.customNodeFactory(s.CustomNode.StringArrayCallsWrapper),r=this.customNodeFactory(s.CustomNode.StringArrayRotateFunctionNode),o=this.stringArrayStorage.getStorageId(),[n,a]=o.split("|");let i;i=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(100,500):0,e.initialize(this.stringArrayStorage,n,i),t.initialize(n,a),r.initialize(n,i),this.customNodes.set(s.CustomNode.StringArrayNode,e),this.customNodes.set(s.CustomNode.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customNodes.set(s.CustomNode.StringArrayRotateFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.TStringArrayStorage)),o.__param(2,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Function,Object,Object])],u),t.StringArrayCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.binaryExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BinaryExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n var that;\n \n try {\n var getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n var getGlobal = function () {\n var 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 var that = getGlobal();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(3),l=r(5);let u=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.blockStatementBody=e,this.shuffledKeys=t,this.originalKeysIndexesInShuffledArray=r}getNodeStructure(){const e=this.randomGenerator.getRandomString(6),t=this.randomGenerator.getRandomString(6),r=c.NodeFactory.blockStatementNode([c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(e),c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),c.NodeFactory.identifierNode("split")),[c.NodeFactory.literalNode("|")])),c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(t),c.NodeFactory.literalNode(0))]),c.NodeFactory.whileStatementNode(c.NodeFactory.literalNode(!0),c.NodeFactory.blockStatementNode([c.NodeFactory.switchStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(e),c.NodeFactory.updateExpressionNode("++",c.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return d.NodeGuards.isReturnStatementNode(r)||o.push(c.NodeFactory.continueStatement()),c.NodeFactory.switchCaseNode(c.NodeFactory.literalNode(String(t)),o)})),c.NodeFactory.breakStatement()]))]);return l.NodeUtils.parentizeAst(r),[r]}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"blockStatementBody",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"originalKeysIndexesInShuffledArray",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"shuffledKeys",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.BlockStatementControlFlowFlatteningNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.blockStatementNode=e,this.deadCodeInjectionRootAstHostNode=t}getNodeStructure(){const e=this.randomGenerator.getMathRandom()>.5,t=this.randomGenerator.getMathRandom()>.5,r=e?"===":"!==",o=this.randomGenerator.getRandomString(5),n=t?o:this.randomGenerator.getRandomString(5),[a,i]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=c.NodeFactory.blockStatementNode([c.NodeFactory.ifStatementNode(c.NodeFactory.binaryExpressionNode(r,c.NodeFactory.literalNode(o),c.NodeFactory.literalNode(n)),a,i)]);return d.NodeUtils.parentizeAst(s),[s]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"blockStatementNode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"deadCodeInjectionRootAstHostNode",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BlockStatementDeadCodeInjectionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"callee",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],l.prototype,"expressionArguments",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=c.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e{const r=t.getNode()[0];if(!d.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return c.NodeFactory.propertyNode(c.NodeFactory.identifierNode(e),r.expression)});let t=c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),c.NodeFactory.objectExpressionNode(e))]);return t=l.NodeUtils.parentizeAst(t),[t]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],u.prototype,"controlFlowStorage",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ControlFlowStorageNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(94),d=r(37),l=r(4),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():d.GlobalVariableNoEvalTemplate();return i.default(c.ConsoleOutputDisableExpressionTemplate(),{consoleLogDisableFunctionName:this.identifierNamesGenerator.generate(),globalVariableTemplate:e,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([l.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.ConsoleOutputDisableExpressionNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n var {consoleLogDisableFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n var 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.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.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(96),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"callsControllerFunctionName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionCallNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {singleNodeCallControllerFunctionName}(this, function () {\n var regExp1 = new RegExp('function *\\\\( *\\\\)');\n var regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n var 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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(98),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionIntervalNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionIntervalTemplate=function(){return"\n setInterval(function () {\n {debugProtectionFunctionName}();\n }, 4000);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(100),l=r(101),u=r(102),p=r(9),m=r(5);let f=class extends p.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?d.DebuggerTemplate():l.DebuggerTemplateNoEval();return i.default(u.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"debugProtectionFunctionName",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.DebugProtectionFunctionNode=f},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplateNoEval=function(){return"\n if (typeof counter === 'string') {\n var 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,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(104),l=r(37),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.cryptUtils=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():l.GlobalVariableNoEvalTemplate();return i.default(d.DomainLockNodeTemplate(),{domainLockFunctionName:this.identifierNamesGenerator.generate(),diff:r,domains:t,globalVariableTemplate:o,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.DomainLockNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockNodeTemplate=function(){return'\n var {domainLockFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n var func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (var i = 0; i < 1000; i--) {\n var 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 var regExp = new RegExp("[{diff}]", "g");\n var domains = "{domains}".replace(regExp, "").split(";");\n var document;\n var domain;\n var location;\n var hostname;\n\n for (var 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 (var 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 (var 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 (var 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 var documentDomain = that[document][domain];\n var documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n var currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n var ok = false;\n \n for (var i = 0; i < domains.length; i++) {\n var domain = domains[i];\n var position = currentDomain.length - domain.length;\n var lastIndex = currentDomain.indexOf(domain, position);\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"leftValue",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"rightValue",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.ExpressionWithOperatorControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.logicalExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.LogicalExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(21),c=r(4),d=r(108),l=r(31),u=r(9),p=r(24),m=r(5);let f=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return this.appendEvent===s.ObfuscationEvent.AfterObfuscation?p.JavaScriptObfuscator.obfuscate(i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed})).getObfuscatedCode():i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"callsControllerFunctionName",void 0),o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"appendEvent",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.NodeCallsControllerFunctionNode=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleNodeCallControllerTemplate=function(){return"\n var {singleNodeCallControllerFunctionName} = (function(){\n var firstCall = true;\n \n return function (context, fn){\n var rfn = firstCall ? function(){\n if(fn){\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(110),l=r(9),u=r(24),p=r(5);let m=class extends l.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return u.JavaScriptObfuscator.obfuscate(i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{selfDefendingFunctionName:this.identifierNamesGenerator.generate(),singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed,unicodeEscapeSequence:!0})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.SelfDefendingUnicodeNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var {selfDefendingFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func1 = function(){return 'dev';},\n func2 = function () {\n return 'window';\n };\n \n var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return !regExp.test(func1.toString());\n };\n \n var test2 = function () {\n var regExp = new RegExp('${e.encode("(\\\\[x|u](\\w){2,4})+",!0)}');\n \n return regExp.test(func2.toString());\n };\n \n var recursiveFunc1 = function (string) {\n var i = ~-1 >> 1 + 255 % 0;\n \n if (string.indexOf('i' === i)) {\n recursiveFunc2(string)\n }\n };\n \n var recursiveFunc2 = function (string) {\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(29),d=r(4),l=r(31),u=r(112),p=r(37),m=r(113),f=r(114),g=r(115),N=r(116),_=r(117),h=r(9),b=r(24),y=r(5);let S=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(){return y.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.getDecodeStringArrayTemplate();return b.JavaScriptObfuscator.obfuscate(i.default(N.StringArrayCallsWrapperTemplate(),{decodeNodeTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}getDecodeStringArrayTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():p.GlobalVariableNoEvalTemplate(),t=i.default(u.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=i.default(f.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case c.StringArrayEncoding.Rc4:r=i.default(_.StringArrayRc4DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,rc4Polyfill:m.Rc4Template(),selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case c.StringArrayEncoding.Base64:r=i.default(g.StringArrayBase64DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayName",void 0),o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayCallsWrapperName",void 0),S=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],S),t.StringArrayCallsWrapper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n var str = String(input).replace(/=+$/, '');\n for (\n var bc = 0, bs, buffer, idx = 0, output = '';\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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n var rc4 = function (str, key) {\n var s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (var 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\t for (var 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 (var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e,t){const r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6),a=e.getRandomString(6),i=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n var StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${a} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${i} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n var regExp = new RegExp(this.${a} + this.${i});\n var expression = regExp.test(this.${n}.toString())\n ? --this.${o}[1]\n : --this.${o}[0];\n \n return this.${c}(expression);\n };\n \n StatesClass.prototype.${c} = function (${l}) {\n if (!Boolean(~${l})) {\n return ${l};\n }\n \n return this.${d}(this.${r});\n };\n\n StatesClass.prototype.${d} = function (${r}) {\n for (var i = 0, len = this.${o}.length; i < len; i++) {\n this.${o}.push(Math.round(Math.random()));\n len = this.${o}.length;\n }\n \n return ${r}(this.${o}[0]);\n };\n\n new StatesClass({stringArrayCallsWrapperName}).${s}();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayBase64DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {stringArrayCallsWrapperName}.${r} = function (str) {\n var string = atob(str);\n var newStringChars = [];\n \n for (var 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}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n \n if (cachedValue === undefined) {\n {selfDefendingCode}\n \n value = {stringArrayCallsWrapperName}.${r}(value);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayCallsWrapperTemplate=function(){return"\n var {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n var value = {stringArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRc4DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {rc4Polyfill}\n {stringArrayCallsWrapperName}.${r} = rc4;\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n\n if (cachedValue === undefined) {\n if ({stringArrayCallsWrapperName}.${n} === undefined) {\n {selfDefendingCode}\n \n {stringArrayCallsWrapperName}.${n} = true;\n }\n \n value = {stringArrayCallsWrapperName}.${r}(value, key);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(119),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.stringArrayStorage=e,this.stringArrayName=t,this.stringArrayRotateValue=r}getNode(){return this.stringArrayStorage.rotateArray(this.stringArrayRotateValue),super.getNode()}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};o.__decorate([s.initializable(),o.__metadata("design:type",Object)],u.prototype,"stringArrayStorage",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],u.prototype,"stringArrayRotateValue",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.StringArrayNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n var {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(121),l=r(122),u=r(9),p=r(24),m=r(5),f=r(32);let g=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayRotateValue=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate();let r="";return r=this.options.selfDefending?i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,p.JavaScriptObfuscator.obfuscate(i.default(l.StringArrayRotateFunctionTemplate(),{code:r,timesName:e,stringArrayName:this.stringArrayName,stringArrayRotateValue:f.NumberUtils.toHex(this.stringArrayRotateValue),whileFunctionName:t}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],g.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],g.prototype,"stringArrayRotateValue",void 0),g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],g),t.StringArrayRotateFunctionNode=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var selfDefendingFunc = function () {\n var object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n var updatedCookie = name + "=" + value;\n\n var i = 0;\n \n for (var i = 0, len = options.length; i < len; i++) {\n var propName = options[i];\n \n updatedCookie += "; " + propName;\n \n var 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 var matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n var 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 var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n var cookie = '';\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n var {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotateValue});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8);let d=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.literalValue=e}getNodeStructure(){return[c.NodeFactory.expressionStatementNode(c.NodeFactory.literalNode(this.literalValue))]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],d.prototype,"literalValue",void 0),d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.StringLiteralNode=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0);t.finalizingTransformersModule=new o.ContainerModule(e=>{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(27),i=r(127),s=r(128),c=r(129);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(i.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator),e(n.ServiceIdentifiers.Factory__IIdentifierNamesGenerator).toFactory(function(){let e=null;return t=>r=>{if(e)return e;let o;switch(r.identifierNamesGenerator){case a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t,r){super(e,t),this.arrayUtils=r,this.identifierNamesSet=new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary)),this.identifiersIterator=this.identifierNamesSet.values()}static incrementIdentifierName(e){let t="",r=!1;for(const o of e)r||o!==o.toUpperCase()?r||o!==o.toLowerCase()?t+=o:(t+=o.toUpperCase(),r=!0):t+=o.toLowerCase();return r?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 r of e){const e=o.incrementIdentifierName(r);e&&t.push(e)}return this.arrayUtils.shuffle(t)}};c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__param(2,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__metadata("design:paramtypes",[Object,Object,Object])],c),t.DictionaryIdentifierNamesGenerator=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38),c=r(32),d=r(26);let l=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.randomVariableNameSet=new Set}generate(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=c.NumberUtils.toHex(t),n=d.Utils.hexadecimalPrefix.length+1,a=e?e-n:o.baseIdentifierNameLength,i=r.substr(0,a),s=`_${d.Utils.hexadecimalPrefix}${i}`;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("__","_")}};l.baseIdentifierNameLength=6,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.HexadecimalIdentifierNamesGenerator=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.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)&&!o.reservedNames.includes(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=e.length,n=e=>"0".repeat(e);let a=r-1;do{const o=e.charAt(a),i=t.indexOf(o);if(i!==t.length-1){return e.substring(0,a)+t[i+1]+n(r-(a+1))}--a}while(a>=0);return`a${n(r)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}};c.initMangledNameCharacter="9",c.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),c.reservedNames=["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"],c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],c),t.MangledIdentifierNamesGenerator=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2);t.nodeTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(14),s=r(48),c=r(19),d=r(132),l=r(133),u=r(134),p=r(135),m=r(136),f=r(137),g=r(138),N=r(139),_=r(140),h=r(141),b=r(142),y=r(143);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(u.CatchClauseTransformer).whenTargetNamed(c.NodeTransformer.CatchClauseTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ClassDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ClassDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.FunctionDeclarationTransformer).whenTargetNamed(c.NodeTransformer.FunctionDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.FunctionTransformer).whenTargetNamed(c.NodeTransformer.FunctionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ImportDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ImportDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(N.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(_.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(y.VariableDeclarationTransformer).whenTargetNamed(c.NodeTransformer.VariableDeclarationTransformer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(h.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(b.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(i.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(a.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IObfuscatingReplacer)),e(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8);let c=class extends i.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){if(this.blockScopesMap.has(t)){const r=this.blockScopesMap.get(t);r.has(e)&&(e=r.get(e))}return s.NodeFactory.identifierNode(e)}storeGlobalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,r)}storeLocalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generate();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,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))}};c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object])],c),t.BaseIdentifierObfuscatingReplacer=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(33),c=r(8);let d=o=class extends s.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",c.NodeFactory.arrayExpressionNode())}replace(e){return e?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.BooleanLiteralObfuscatingReplacer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22),p=r(11);let m=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isCatchClauseNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeCatchClauseParam(e,r),this.replaceCatchClauseParam(e,r),e):e}storeCatchClauseParam(e,t){l.NodeGuards.isIdentifierNode(e.param)&&this.identifierObfuscatingReplacer.storeLocalName(e.param.name,t)}replaceCatchClauseParam(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isReplaceableIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t).name;e.name!==r&&(e.name=r,p.NodeMetadata.set(e,{renamedIdentifier:!0}))}}})}};m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.CatchClauseTransformer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isClassDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeClassName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeClassName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ClassDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(t);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeFunctionName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeFunctionName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&o!==e&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.FunctionDeclarationTransformer=f},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11),f=r(13);let g=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedIdentifierOfPropertyNode(e,t){return u.NodeGuards.isIdentifierNode(e)&&!!t&&u.NodeGuards.isPropertyNode(t)&&t.key===e}static isProhibitedIdentifierOfShorthandPropertyNode(e){return u.NodeGuards.isPropertyNode(e)&&e.shorthand&&u.NodeGuards.isIdentifierNode(e.key)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeFunctionParams(e,r),this.replaceFunctionParams(e,r),e):e}isGlobalFunctionDeclarationIdentifier(e,t){if(!u.NodeGuards.isFunctionDeclarationNode(t)||t.id!==e)return!1;const r=p.NodeLexicalScopeUtils.getLexicalScopes(t)[1];if(!r)return!1;const o=r.type===f.NodeType.Program;return!this.options.renameGlobals&&o}storeFunctionParams(e,t){const r={enter:(e,r)=>{if(!o.isProhibitedIdentifierOfPropertyNode(e,r))return u.NodeGuards.isAssignmentPatternNode(e)&&u.NodeGuards.isIdentifierNode(e.left)?(this.identifierObfuscatingReplacer.storeLocalName(e.left.name,t),s.VisitorOption.Skip):void(u.NodeGuards.isIdentifierNode(e)&&this.identifierObfuscatingReplacer.storeLocalName(e.name,t))}};e.params.forEach(e=>{s.traverse(e,r)})}replaceFunctionParams(e,t,r=new Set){const n={enter:(n,a)=>{if(u.NodeGuards.isFunctionNode(n)&&n!==e)return this.replaceFunctionParams(n,t,new Set(r)),s.VisitorOption.Skip;if(o.isProhibitedIdentifierOfShorthandPropertyNode(n))r.add(n.key.name);else if(a&&u.NodeGuards.isReplaceableIdentifierNode(n,a)&&!m.NodeMetadata.isRenamedIdentifier(n)&&!r.has(n.name)){if(this.isGlobalFunctionDeclarationIdentifier(n,a))return;const e=this.identifierObfuscatingReplacer.replace(n.name,t).name;n.name!==e&&(n.name=e,m.NodeMetadata.set(n,{renamedIdentifier:!0}))}}};s.replace(e,n)}};g=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],g),t.FunctionTransformer=g},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedImportSpecifierNode(e){return u.NodeGuards.isImportSpecifierNode(e)&&e.imported.name===e.local.name}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isImportDeclarationNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeImportSpecifierNames(e,r),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(r):this.replaceScopeIdentifiers(r),e):e}storeImportSpecifierNames(e,t){e.specifiers.forEach(e=>{o.isProhibitedImportSpecifierNode(e)||this.identifierObfuscatingReplacer.storeGlobalName(e.local.name,t)})}replaceScopeCachedIdentifiers(e){this.replaceableIdentifiers.get(e).forEach(t=>{const r=this.identifierObfuscatingReplacer.replace(t.name,e);t.name=r.name,m.NodeMetadata.set(t,{renamedIdentifier:!0})})}replaceScopeIdentifiers(e){const t=[];s.replace(e,{enter:(r,o)=>{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;r.name!==o?(r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0})):t.push(r)}}}),this.replaceableIdentifiers.set(e,t)}};f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ImportDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22);let p=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label.name,t)}replaceLabeledStatementName(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t);e.name=r.name}}})}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LabeledStatementTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(48),s=r(6),c=r(7),d=r(3),l=r(11),u=r(5);let p=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.literalObfuscatingReplacerFactory=e}getVisitor(e){switch(e){case s.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&d.NodeGuards.isLiteralNode(e)&&!l.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.isProhibitedNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e.value);break;case"number":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e.value);break;case"string":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e.value);break;default:r=e}return u.NodeUtils.parentizeNode(r,t),r}isProhibitedNode(e,t){return!(!d.NodeGuards.isPropertyNode(t)||t.key!==e)||!!d.NodeGuards.isImportDeclarationNode(t)}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8),c=r(32),d=r(26);let l=class extends i.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){let t;return this.numberLiteralCache.has(e)?t=this.numberLiteralCache.get(e):(t=c.NumberUtils.isCeil(e)?`${d.Utils.hexadecimalPrefix}${c.NumberUtils.toHex(e)}`:String(e),this.numberLiteralCache.set(e,t)),s.NodeFactory.literalNode(e,t)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],l),t.NumberLiteralObfuscatingReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(29),c=r(33),d=r(11),l=r(8),u=r(32),p=r(26);let m=o=class extends c.AbstractObfuscatingReplacer{constructor(e,t,r,n,a){super(a),this.nodesCache=new Map,this.stringLiteralHexadecimalIndexCache=new Map,this.stringArrayStorage=e,this.escapeSequenceEncoder=t,this.randomGenerator=r,this.cryptUtils=n,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}static getHexadecimalLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}replace(e){const t=this.canUseStringArray(e),r=`${e}-${String(t)}`;if(this.nodesCache.has(r)&&this.options.stringArrayEncoding!==s.StringArrayEncoding.Rc4)return this.nodesCache.get(r);const o=t?this.replaceWithStringArrayCallNode(e):this.replaceWithLiteralNode(e);return this.nodesCache.set(r,o),o}canUseStringArray(e){return this.options.stringArray&&e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}getStringArrayHexadecimalIndex(e,t){if(this.stringLiteralHexadecimalIndexCache.has(e))return{fromCache:!0,index:this.stringLiteralHexadecimalIndexCache.get(e)};const r=u.NumberUtils.toHex(t),o=`${p.Utils.hexadecimalPrefix}${r}`;return this.stringLiteralHexadecimalIndexCache.set(e,o),{fromCache:!1,index:o}}getEncodedValue(e){let t,r=null;switch(this.options.stringArrayEncoding){case s.StringArrayEncoding.Rc4:r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),t=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r));break;case s.StringArrayEncoding.Base64:t=this.cryptUtils.btoa(e);break;default:t=e}return{encodedValue:t,key:r}}replaceWithLiteralNode(e){return l.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e,this.options.unicodeEscapeSequence))}replaceWithStringArrayCallNode(e){const{encodedValue:t,key:r}=this.getEncodedValue(e),n=this.escapeSequenceEncoder.encode(t,this.options.unicodeEscapeSequence),a=this.stringArrayStorage.getLength(),i=this.stringArrayStorage.getStorageId().split("|")[1],{fromCache:s,index:c}=this.getStringArrayHexadecimalIndex(n,a);s||this.stringArrayStorage.set(a,n);const u=[o.getHexadecimalLiteralNode(c)];r&&u.push(o.getRc4KeyLiteralNode(this.escapeSequenceEncoder.encode(r,this.options.unicodeEscapeSequence)));const p=l.NodeFactory.identifierNode(i);return d.NodeMetadata.set(p,{renamedIdentifier:!0}),l.NodeFactory.callExpressionNode(p,u)}};m.minimumLengthForStringArray=3,m.rc4KeyLength=4,m.rc4KeysCount=50,m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TStringArrayStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.IEscapeSequenceEncoder)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.ICryptUtils)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],m),t.StringLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(144),f=r(11);let g=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isVariableDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r="var"===e.kind?p.NodeLexicalScopeUtils.getLexicalScope(e):m.NodeBlockLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;if(!this.options.renameGlobals&&o)return e;const n="var"===e.kind?r:t;return this.storeVariableNames(e,r,o),this.replaceableIdentifiers.has(n)?this.replaceScopeCachedIdentifiers(e,r,n):this.replaceScopeIdentifiers(n,r),e}storeVariableNames(e,t,r){this.traverseDeclarationIdentifiers(e,e=>{r?this.identifierObfuscatingReplacer.storeGlobalName(e.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.name,t)})}replaceScopeCachedIdentifiers(e,t,r){const o=this.replaceableIdentifiers.get(r),n=[];this.traverseDeclarationIdentifiers(e,e=>{n.push(e.name)}),n.forEach(e=>{const r=o.get(e);if(!r)return;const n=r.length;for(let o=0;o{if(o&&u.NodeGuards.isReplaceableIdentifierNode(e,o)&&!f.NodeMetadata.isRenamedIdentifier(e)){const o=this.identifierObfuscatingReplacer.replace(e.name,t).name;if(e.name!==o)e.name=o,f.NodeMetadata.set(e,{renamedIdentifier:!0});else{const t=r.get(e.name)||[];t.push(e),r.set(e.name,t)}}}}),this.replaceableIdentifiers.set(e,r)}traverseDeclarationIdentifiers(e,t){e.declarations.forEach(e=>{i.traverse(e.id,{enter:e=>{if(u.NodeGuards.isPropertyNode(e))return i.VisitorOption.Skip;u.NodeGuards.isIdentifierNode(e)&&t(e)}})})}};g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],g),t.VariableDeclarationTransformer=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithBlockLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeBlockLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(146),i=r(149);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(a.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(i.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(147),c=r(27),d=r(17),l=r(28),u=r(29),p=r(39),m=r(148);let f=o=class{constructor(e,t){Object.assign(this,p.DEFAULT_PRESET,e);const r=s.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${m.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};f.validatorOptions={validationError:{target:!1}},n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"compact",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"controlFlowFlattening",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"controlFlowFlatteningThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"deadCodeInjection",void 0),n.__decorate([s.IsNumber(),n.__metadata("design:type",Number)],f.prototype,"deadCodeInjectionThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtection",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtectionInterval",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"disableConsoleOutput",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"domainLock",void 0),n.__decorate([s.IsIn([c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,c.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,c.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),n.__metadata("design:type",Object)],f.prototype,"identifierNamesGenerator",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"identifiersPrefix",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),s.ValidateIf(e=>e.identifierNamesGenerator===c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),s.ArrayNotEmpty(),n.__metadata("design:type",Array)],f.prototype,"identifiersDictionary",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"inputFileName",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"log",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"renameGlobals",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedNames",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedStrings",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"rotateStringArray",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"selfDefending",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"sourceMap",void 0),n.__decorate([s.IsString(),s.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),s.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),n.__metadata("design:type",String)],f.prototype,"sourceMapBaseUrl",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"sourceMapFileName",void 0),n.__decorate([s.IsIn([l.SourceMapMode.Inline,l.SourceMapMode.Separate]),n.__metadata("design:type",Object)],f.prototype,"sourceMapMode",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"splitStrings",void 0),n.__decorate([s.IsNumber(),s.ValidateIf(e=>Boolean(e.splitStrings)),s.Min(1),n.__metadata("design:type",Number)],f.prototype,"splitStringsChunkLength",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"stringArray",void 0),n.__decorate([s.IsIn([!0,!1,u.StringArrayEncoding.Base64,u.StringArrayEncoding.Rc4]),n.__metadata("design:type",Object)],f.prototype,"stringArrayEncoding",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"stringArrayThreshold",void 0),n.__decorate([s.IsIn([d.ObfuscationTarget.Browser,d.ObfuscationTarget.BrowserNoEval,d.ObfuscationTarget.Node]),n.__metadata("design:type",Object)],f.prototype,"target",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"transformObjectKeys",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"unicodeEscapeSequence",void 0),f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TInputOptions)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptionsNormalizer)),n.__metadata("design:paramtypes",[Object,Object])],f),t.Options=f},function(e,t){e.exports=require("class-validator")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static format(e){return e.reduce((e,t)=>[...e,o.formatWithNestedConstraints(t)],[]).join("\n")}static formatWithNestedConstraints(e){const t=e.constraints;return`${`\`${e.property}\` errors:\n`}${Object.keys(t).map(e=>` - ${t[e]}\n`).join()}`}}t.ValidationErrorsFormatter=o},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(150),s=r(151),c=r(152),d=r(153),l=r(154),u=r(155),p=r(156),m=r(157),f=r(158),g=r(159),N=r(160),_=r(161),h=r(162);let b=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};b.normalizerRules=[i.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,p.SelfDefendingRule,m.SourceMapBaseUrlRule,f.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,N.StringArrayRule,_.StringArrayEncodingRule,h.StringArrayThresholdRule],b=o=n.__decorate([a.injectable()],b),t.OptionsNormalizer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ControlFlowFlatteningThresholdRule=e=>(0===e.controlFlowFlatteningThreshold&&(e=Object.assign(Object.assign({},e),{controlFlowFlattening:!1,controlFlowFlatteningThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(39);t.DeadCodeInjectionRule=e=>(e.deadCodeInjection&&((e=Object.assign(Object.assign({},e),{deadCodeInjection:!0,stringArray:!0})).stringArrayThreshold||(e=Object.assign(Object.assign({},e),{stringArray:!0,stringArrayThreshold:o.DEFAULT_PRESET.stringArrayThreshold}))),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeadCodeInjectionThresholdRule=e=>(0===e.deadCodeInjectionThreshold&&(e=Object.assign(Object.assign({},e),{deadCodeInjection:!1,deadCodeInjectionThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(26);t.DomainLockRule=e=>{if(e.domainLock.length){const t=[];for(const r of e.domainLock)t.push(o.Utils.extractDomainFrom(r));e=Object.assign(Object.assign({},e),{domainLock:t})}return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".").slice(0,-1).join(".")||t,e=Object.assign(Object.assign({},e),{inputFileName:`${t}.js`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeedRule=e=>{if(e.seed)return Object.assign(Object.assign({},e),{seed:e.seed});return Object.assign(Object.assign({},e),{seed:(t=0,r=999999999,Math.floor(Math.random()*(r-t+1)+t))});var t,r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingRule=e=>(e.selfDefending&&(e=Object.assign(Object.assign({},e),{compact:!0,selfDefending:!0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapBaseUrlRule=e=>{const{sourceMapBaseUrl:t}=e;return e.sourceMapFileName?(t&&!t.endsWith("/")&&(e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:`${t}/`})),e):e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:""})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".")[0],e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SplitStringsChunkLengthRule=e=>e=0===e.splitStringsChunkLength?Object.assign(Object.assign({},e),{splitStrings:!1,splitStringsChunkLength:0}):Object.assign(Object.assign({},e),{splitStringsChunkLength:Math.floor(e.splitStringsChunkLength)})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRule=e=>(e.stringArray||(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingRule=e=>(!0===e.stringArrayEncoding&&(e=Object.assign(Object.assign({},e),{stringArrayEncoding:o.StringArrayEncoding.Base64})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayThresholdRule=e=>(0===e.stringArrayThreshold&&(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(19),s=r(49),c=r(164),d=r(165),l=r(50),u=r(166),p=r(167),m=r(169),f=r(170),g=r(171),N=r(172),_=r(173);t.preparingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.CustomNodesTransformer).whenTargetNamed(i.NodeTransformer.CustomNodesTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.EvalCallExpressionTransformer).whenTargetNamed(i.NodeTransformer.EvalCallExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.MetadataTransformer).whenTargetNamed(i.NodeTransformer.MetadataTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.ObfuscatingGuardsTransformer).whenTargetNamed(i.NodeTransformer.ObfuscatingGuardsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ParentificationTransformer).whenTargetNamed(i.NodeTransformer.ParentificationTransformer),e(a.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(l.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(N.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(a.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeGuard)),e(a.ServiceIdentifiers.INodeTransformer).to(_.VariablePreserveTransformer).whenTargetNamed(i.NodeTransformer.VariablePreserveTransformer)})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t{if(l.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(e.comments){const t=this.transformComments(e.comments);s.traverse(e,{enter:e=>{if(0===t.length)return;const r=t.findIndex(t=>t.range&&e.range&&t.range[0]0&&(e.trailingComments=t.reverse())}return e}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||u.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};p.preservedWords=["@license","@preserve"],p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.CommentsTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(21),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.stackTraceData=[],this.stackTraceAnalyzer=e,this.obfuscationEventEmitter=t,this.customNodeGroupStorage=r}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{leave:(e,t)=>{if(d.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case s.TransformationStage.Finalizing:return{leave:(e,t)=>{d.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.stackTraceData=this.stackTraceAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customNodeGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendCustomNodes.bind(e))}),this.obfuscationEventEmitter.emit(i.ObfuscationEvent.BeforeObfuscation,e,this.stackTraceData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(i.ObfuscationEvent.AfterObfuscation,e,this.stackTraceData)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IStackTraceAnalyzer)),o.__param(1,n.inject(a.ServiceIdentifiers.IObfuscationEventEmitter)),o.__param(2,n.inject(a.ServiceIdentifiers.TCustomNodeGroupStorage)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],l),t.CustomNodesTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(168)),c=r(6),d=r(7),l=r(8),u=r(3),p=r(5);let m=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return u.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):u.NodeGuards.isTemplateLiteralNode(e)?o.extractEvalStringFromTemplateLiteralNode(e):null}static extractEvalStringFromLiteralNode(e){return"string"==typeof e.value?e.value:null}static extractEvalStringFromTemplateLiteralNode(e){const t=e.quasis;return 1!==t.length||e.expressions.length?null:t[0].value.cooked}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&u.NodeGuards.isCallExpressionNode(e)&&u.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case c.TransformationStage.Finalizing:return this.evalRootAstHostNodeSet.size?{leave:(e,t)=>{if(t&&this.isEvalRootAstHostNode(e))return this.restoreNode(e,t)}}:null;default:return null}}transformNode(e,t){const r=e.arguments[0];if(!r)return e;const n=o.extractEvalStringFromCallExpressionArgument(r);if(!n)return e;let a;try{a=p.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const i=l.NodeFactory.functionExpressionNode([],l.NodeFactory.blockStatementNode(a));return this.evalRootAstHostNodeSet.add(i),i}restoreNode(e,t){const r=e.body.body,o=p.NodeUtils.convertStructureToCode(r);return l.NodeFactory.callExpressionNode(l.NodeFactory.identifierNode("eval"),[l.NodeFactory.literalNode(s.default(o))])}isEvalRootAstHostNode(e){return u.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],m),t.EvalCallExpressionTransformer=m},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(3),d=r(11);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return d.NodeMetadata.set(e,{ignoredNode:!1}),c.NodeGuards.isIdentifierNode(e)&&d.NodeMetadata.set(e,{renamedIdentifier:!1}),c.NodeGuards.isLiteralNode(e)&&d.NodeMetadata.set(e,{replacedLiteral:!1}),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MetadataTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(49),c=r(6),d=r(7),l=r(11);let u=o=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){const r=this.obfuscatingGuards.every(t=>t.check(e));return l.NodeMetadata.set(e,{ignoredNode:!r}),e}};u.obfuscatingGuardsList=[s.ObfuscatingGuard.BlackListObfuscatingGuard,s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,s.ObfuscatingGuard.ReservedStringObfuscatingGuard],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__INodeGuard)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ObfuscatingGuardsTransformer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(5);let d=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return c.NodeUtils.parentizeNode(e,t)}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.ParentificationTransformer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(3);let s=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!i.NodeGuards.isLiteralNode(e)||"string"!=typeof e.value||!this.isReservedString(e.value)}isReservedString(e){return this.options.reservedStrings.some(t=>null!==new RegExp(t,"g").exec(e))}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],s),t.ReservedStringObfuscatingGuard=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(14),i=r(2),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{enter:(e,t)=>{if(d.NodeGuards.isIdentifierNode(e)&&t&&(d.NodeGuards.parentNodeIsPropertyNode(e,t)||d.NodeGuards.parentNodeIsMemberExpressionNode(e,t)||d.NodeGuards.parentNodeIsMethodDefinitionNode(e,t)||d.NodeGuards.isLabelIdentifierNode(e,t)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.identifierObfuscatingReplacer.preserveName(e.name),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(i.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(i.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.VariablePreserveTransformer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(175),i=r(176),s=r(177);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(i.CustomNodeGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.TStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(a.ControlFlowStorage),e(n.ServiceIdentifiers.Factory__TControlFlowStorage).toFactory(e=>()=>{const t=new(e.container.get(n.ServiceIdentifiers.Newable__TControlFlowStorage))(e.container.get(n.ServiceIdentifiers.IRandomGenerator),e.container.get(n.ServiceIdentifiers.IOptions));return t.initialize(),t})})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(51);let s=class extends i.MapStorage{constructor(e,t){super(e,t)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ControlFlowStorage=s},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(47),c=r(51);let d=o=class extends c.MapStorage{constructor(e,t,r){super(t,r),this.customNodeGroupFactory=e}initialize(){super.initialize(),o.customNodeGroupsList.forEach(e=>{const t=this.customNodeGroupFactory(e);t&&this.storage.set(e,t)})}};d.customNodeGroupsList=[s.CustomNodeGroup.ConsoleOutputCustomNodeGroup,s.CustomNodeGroup.DebugProtectionCustomNodeGroup,s.CustomNodeGroup.DomainLockCustomNodeGroup,s.CustomNodeGroup.SelfDefendingCustomNodeGroup,s.CustomNodeGroup.StringArrayCustomNodeGroup],n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],d.prototype,"initialize",null),d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICustomNodeGroup)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.CustomNodeGroupStorage=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(178);let c=o=class extends s.ArrayStorage{constructor(e,t,r,o){super(r,o),this.identifierNamesGenerator=e(o),this.arrayUtils=t}initialize(){super.initialize();const e=this.identifierNamesGenerator.generate(o.stringArrayNameLength),t=this.identifierNamesGenerator.generate(o.stringArrayNameLength),r=`${this.options.identifiersPrefix}${e}`,n=`${this.options.identifiersPrefix}${t}`;this.storageId=`${r}|${n}`}rotateArray(e){this.storage=this.arrayUtils.rotate(this.storage,e)}toString(){return this.storage.map(e=>`'${e}'`).toString()}};c.stringArrayNameLength=7,n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],c.prototype,"initialize",null),c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],c),t.StringArrayStorage=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4);let s=class{constructor(e,t){this.storageLength=0,this.randomGenerator=e,this.options=t}initialize(){this.storage=[],this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage[e];if(!t)throw new Error(`No value found in array storage with key \`${e}\``);return t}getKeyOf(e){const t=this.storage.indexOf(e);return t>=0?t:null}getLength(){return this.storageLength}getStorage(){return this.storage}getStorageId(){return this.storageId}mergeWith(e,t=!1){this.storage=[...this.storage,...e.getStorage()],t&&(this.storageId=e.getStorageId())}set(e,t){e===this.storageLength?this.storage.push(t):this.storage.splice(e,0,t),this.storageLength++}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],s.prototype,"storage",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],s.prototype,"storageId",void 0),o.__decorate([n.postConstruct(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",void 0)],s.prototype,"initialize",null),s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ArrayStorage=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(180),i=r(181),s=r(184),c=r(185),d=r(186),l=r(52);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(a.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(i.CryptUtils).inSingletonScope(),e(n.ServiceIdentifiers.IEscapeSequenceEncoder).to(s.EscapeSequenceEncoder).inSingletonScope(),e(n.ServiceIdentifiers.ILevelledTopologicalSorter).to(c.LevelledTopologicalSorter),e(n.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder).to(d.NodeTransformerNamesGroupsBuilder).inSingletonScope()})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rString.fromCharCode(parseInt(`${s.Utils.hexadecimalPrefix}${t}`)));for(let r,o,n=0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(a="=",n%1);t+=a.charAt(63&r>>8-n%1*8)){if(o=e.charCodeAt(n+=.75),o>255)throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");r=r<<8|o}return t}hideString(e,t){let r=this.randomGenerator.getRandomGenerator().string({length:t,pool:i.RandomGenerator.randomGeneratorPool}).replace(new RegExp(`[${o=e,o.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}]`,"g"),"");var o;const n=r.split("");return this.randomGenerator.getRandomGenerator().shuffle(n),r=n.join(""),[((e,t)=>{let r=-1,o=-1,n="";for(;rt||n.exec(e)?(a.exec(e)?(i="\\x",s="00"):(i="\\u",s="0000"),`${i}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(r,c),c}};a=o.__decorate([n.injectable()],a),t.EscapeSequenceEncoder=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],r={};for(const o of e)void 0===r[o]&&this.visit(t,r,o);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const r of t){for(let t=r.length-1;t>=0;t-=1)r[t]===e&&r.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const r of e)this.hasPrecedents(r)||t.push(r);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const r=this.graph.get(t);return r&&!r.includes(e)&&r.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,r){const o=t[r];if("visiting"===o)throw new Error(`Detected cycle involving node: ${r}`);if(o)return;t[r]="visiting";const n=this.getPrecedents(r);for(const r of n)this.visit(e,t,r);t[r]="ok",e.push(r)}};a=o.__decorate([n.injectable()],a),t.LevelledTopologicalSorter=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),r=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of r)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const r=[];for(const o of e){const e=t[o].runAfter;if(e&&e.length)for(const n of e){!t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ILevelledTopologicalSorter)),o.__metadata("design:paramtypes",[Object])],i),t.NodeTransformerNamesGroupsBuilder=i},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(36)),c=r(188),d=r(19),l=r(6),u=r(189),p=r(3);let m=o=class{constructor(e,t,r,o,n){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=r,this.logger=o,this.options=n}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.3"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),a=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,a),this.getObfuscatedCode(n)}parseCode(e){return u.EspreeFacade.parse(e,o.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,l.TransformationStage.Initializing),!p.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,l.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,l.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,l.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,l.TransformationStage.Converting),e=this.runTransformationStage(e,l.TransformationStage.Obfuscating),e=this.runTransformationStage(e,l.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const r=Object.assign({},o.escodegenParams);this.options.sourceMap&&(r.sourceMap=this.options.inputFileName||"sourceMap",r.sourceContent=e);const n=s.generate(t,Object.assign(Object.assign({},r),{format:{compact:this.options.compact}}));return n.map=n.map?n.map.toString():"",n}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[d.NodeTransformer.BlockStatementControlFlowTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.CommentsTransformer,d.NodeTransformer.CustomNodesTransformer,d.NodeTransformer.DeadCodeInjectionTransformer,d.NodeTransformer.EvalCallExpressionTransformer,d.NodeTransformer.FunctionControlFlowTransformer,d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.ImportDeclarationTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.LiteralTransformer,d.NodeTransformer.MemberExpressionTransformer,d.NodeTransformer.MetadataTransformer,d.NodeTransformer.MethodDefinitionTransformer,d.NodeTransformer.ObfuscatingGuardsTransformer,d.NodeTransformer.ObjectExpressionKeysTransformer,d.NodeTransformer.ObjectExpressionTransformer,d.NodeTransformer.ParentificationTransformer,d.NodeTransformer.SplitStringTransformer,d.NodeTransformer.TemplateLiteralTransformer,d.NodeTransformer.VariableDeclarationTransformer,d.NodeTransformer.VariablePreserveTransformer],m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IObfuscatedCode)),n.__param(3,a.inject(i.ServiceIdentifiers.ILogger)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(43)),a=o.__importDefault(r(53));class i{static parse(e,t){const r=i.sourceTypes.length;for(let o=0;o"),c=`...${o.substring(n,a).replace(/^\s+/,"")}...`;throw new Error(`Line ${r.line}: ${t}\n${s} ${c}`)}}t.EspreeFacade=i,i.colorError=a.default.red,i.nearestSymbolsCount=15,i.sourceTypes=["script","module"]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importDefault(r(191));n.decorate(n.injectable(),a.default);let i=class extends a.default{};i=o.__decorate([n.injectable()],i),t.ObfuscationEventEmitter=i},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(28);let c=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case s.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case s.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"obfuscatedCode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"sourceMap",void 0),c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],c),t.ObfuscatedCode=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(195),c=r(3),d=r(11);let l=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;let o,n;this.cachedNodeTransformersData.has(t)?[o,n]=this.cachedNodeTransformersData.get(t):(o=this.buildNormalizedNodeTransformers(t),n=this.nodeTransformerNamesGroupsBuilder.build(o),this.cachedNodeTransformersData.set(t,[o,n]));for(const t of n){const n=[],a=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&a.push({leave:t.leave}))}(n.length||a.length)&&i.replace(e,{enter:this.mergeVisitorsForDirection(n,s.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(a,s.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(d.NodeMetadata.isIgnoredNode(o))return i.VisitorOption.Skip;for(let a=0;ae}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__INodeTransformer)),o.__param(1,n.inject(a.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o.__metadata("design:paramtypes",[Function,Object])],l),t.TransformersRunner=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))},,,,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(24);e.exports=o.JavaScriptObfuscator}]); +require("source-map-support").install(),module.exports=function(e){var t={};function r(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,o){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(o,n,function(t){return e[t]}.bind(null,n));return o},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=199)}([function(e,t){e.exports=require("inversify")},function(e,t){e.exports=require("tslib")},function(e,t,r){"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__IPropertiesExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICryptUtils="ICryptUtils",e.ICustomNode="ICustomNode",e.ICustomNodeGroup="ICustomNodeGroup",e.IControlFlowReplacer="IControlFlowReplacer",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.IPropertiesExtractor="IPropertiesExtractor",e.IRandomGenerator="IRandomGenerator",e.ISourceCode="ISourceCode",e.ISourceMapCorrector="ISourceMapCorrector",e.IStackTraceAnalyzer="IStackTraceAnalyzer",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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(13);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentPatternNode(e){return e.type===o.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===o.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===o.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===o.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===o.NodeType.CallExpression}static isCatchClauseNode(e){return e.type===o.NodeType.CatchClause}static isClassDeclarationNode(e){return e.type===o.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===o.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===o.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===o.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===o.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return n.isFunctionDeclarationNode(e)||n.isFunctionExpressionNode(e)||n.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===o.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===o.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===o.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===o.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===o.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const r=n.isLabeledStatementNode(t)&&t.label===e,o=n.isContinueStatementNode(t)&&t.label===e,a=n.isBreakStatementNode(t)&&t.label===e;return r||o||a}static isLabeledStatementNode(e){return e.type===o.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===o.NodeType.Literal}static isMemberExpressionNode(e){return e.type===o.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===o.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return n.isProgramNode(e)||n.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return n.isNodeWithLexicalScope(e)||n.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return n.isProgramNode(e)||n.isBlockStatementNode(e)&&n.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return n.isProgramNode(e)||n.isBlockStatementNode(e)||n.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===o.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===o.NodeType.ObjectExpression}static isProgramNode(e){return e.type===o.NodeType.Program}static isPropertyNode(e){return e.type===o.NodeType.Property}static parentNodeIsPropertyNode(e,t){return n.isPropertyNode(t)&&!t.computed&&t.key===e}static parentNodeIsMemberExpressionNode(e,t){return n.isMemberExpressionNode(t)&&!t.computed&&t.property===e}static parentNodeIsMethodDefinitionNode(e,t){return n.isMethodDefinitionNode(t)&&!t.computed}static isReplaceableIdentifierNode(e,t){return n.isIdentifierNode(e)&&!n.parentNodeIsPropertyNode(e,t)&&!n.parentNodeIsMemberExpressionNode(e,t)&&!n.parentNodeIsMethodDefinitionNode(e,t)&&!n.isLabelIdentifierNode(e,t)}static isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSuperNode(e){return e.type===o.NodeType.Super}static isSwitchCaseNode(e){return e.type===o.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===o.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===o.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===o.NodeType.UnaryExpression}static isUseStrictOperator(e){return n.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===o.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===o.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===o.NodeType.WhileStatement}}t.NodeGuards=n,n.nodesWithLexicalStatements=[o.NodeType.ArrowFunctionExpression,o.NodeType.FunctionDeclaration,o.NodeType.FunctionExpression,o.NodeType.MethodDefinition]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o={configurable:!0,enumerable:!0};function n(e,t,r){Reflect.hasMetadata(e,r)||Reflect.defineMetadata(e,t,r)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(r,a)=>{const i=r[e];if(!i||"function"!=typeof i)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return n("_initialized",!1,r),n("_initializablePropertiesSet",new Set,r),n("_wrappedMethodsSet",new Set,r),function(e,t){const r=Object.getOwnPropertyNames(e),n=[t,"constructor"];r.forEach(r=>{const a=Reflect.getMetadata("_initializablePropertiesSet",e),i=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||i.has(r))return;if("function"!=typeof e[r])return;const s=Object.getOwnPropertyDescriptor(e,r)||o,c=s.value;Object.defineProperty(e,r,Object.assign(Object.assign({},s),{value:function(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return c.apply(this,arguments)}})),i.add(r)})}(r,e),function(e,t,r){const n=Object.getOwnPropertyDescriptor(e,t)||o,a=n.value;Object.defineProperty(e,t,Object.assign(Object.assign({},n),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,a),function(e,t){Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const r=`_${t.toString()}`,n=Object.getOwnPropertyDescriptor(e,r)||o;return Object.defineProperty(e,t,Object.assign(Object.assign({},n),{get:function(){if(void 0===this[r])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[r]},set:function(e){this[r]=e}})),n}(r,a)}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(36)),a=o.__importStar(r(43)),i=o.__importStar(r(10)),s=r(3),c=r(11);class d{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return d.parentizeAst(d.cloneRecursive(e))}static convertCodeToStructure(e){const t=a.parse(e,{sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),s.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),c.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+n.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return s.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.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(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(d.cloneRecursive):"object"==typeof o?d.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=d},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.randomGenerator=e,this.options=t}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractNodeTransformer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1).__importStar(r(36)),n=r(13);class a{static programNode(e=[]){return{type:n.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:n.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,r){return{type:n.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:n.NodeType.BinaryExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:n.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:n.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:n.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:n.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:n.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:n.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,r){return{type:n.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:n.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,r){return Object.assign(Object.assign({type:n.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:n.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:n.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:n.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:n.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:n.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:n.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:n.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:n.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:n.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:n.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,r=!0){return{type:n.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:n.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:n.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:n.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:n.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(86),c=r(87);let d=o=class{constructor(e,t,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.getNodeStructure()),this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}};d.globalVariableTemplateFunctions=[s.GlobalVariableTemplate1(),c.GlobalVariableTemplate2()],d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.AbstractCustomNode=d},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{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===o.get(e,"ignoredNode")}static isRenamedIdentifier(e){return!0===o.get(e,"renamedIdentifier")}static isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t){e.exports=require("string-template")},function(e,t,r){"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.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",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.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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(57),i=r(62),s=r(70),c=r(79),d=r(125),l=r(126),u=r(130),p=r(131),m=r(145),f=r(163),g=r(174),N=r(179),_=r(187),h=r(55),b=r(190),y=r(192),S=r(193),I=r(194);t.InversifyContainerFacade=class{constructor(){this.container=new o.Container}static getFactory(e){return t=>r=>t.container.getNamed(e,r)}static getCacheFactory(e){return t=>{const r=new Map;return o=>{if(r.has(o))return r.get(o);const n=t.container.getNamed(e,o);return r.set(o,n),n}}}static getConstructorFactory(e,...t){return r=>{const o=new Map,n=[];return a=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(a))return new(o.get(a))(...n);const i=r.container.getNamed(e,a);return o.set(a,i),new i(...n)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,r){this.container.bind(n.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new S.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(h.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(_.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(I.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(y.ObfuscatedCode),this.container.bind(n.ServiceIdentifiers.Factory__IObfuscatedCode).toFactory(e=>(t,r)=>{const o=e.container.get(n.ServiceIdentifiers.IObfuscatedCode);return o.initialize(t,r),o}),this.container.bind(n.ServiceIdentifiers.IObfuscationEventEmitter).to(b.ObfuscationEventEmitter).inSingletonScope(),this.container.load(a.analyzersModule),this.container.load(i.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(l.generatorsModule),this.container.load(u.nodeTransformersModule),this.container.load(p.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(f.preparingTransformersModule),this.container.load(g.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionFunctionNode="BinaryExpressionFunctionNode",e.BlockStatementControlFlowFlatteningNode="BlockStatementControlFlowFlatteningNode",e.CallExpressionControlFlowStorageCallNode="CallExpressionControlFlowStorageCallNode",e.CallExpressionFunctionNode="CallExpressionFunctionNode",e.ControlFlowStorageNode="ControlFlowStorageNode",e.ExpressionWithOperatorControlFlowStorageCallNode="ExpressionWithOperatorControlFlowStorageCallNode",e.LogicalExpressionFunctionNode="LogicalExpressionFunctionNode",e.StringLiteralControlFlowStorageCallNode="StringLiteralControlFlowStorageCallNode",e.StringLiteralNode="StringLiteralNode"}(t.ControlFlowCustomNode||(t.ControlFlowCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getParentNodeWithStatements(e){return n.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return n.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return n.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return n.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(o.NodeGuards.isProgramNode(e))throw new Error("Unable to find root statement for `Program` node");const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?e:n.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithStatements(t)?t:n.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,i)&&a>0)&&r.push(e),e!==i?n.getParentNodesWithStatementsRecursive(i,t,r,++a):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),a=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,i=a.indexOf(e);return a[i+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.ClassDeclarationTransformer="ClassDeclarationTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomNodesTransformer="CustomNodesTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.CatchClauseTransformer="CatchClauseTransformer",e.FunctionDeclarationTransformer="FunctionDeclarationTransformer",e.FunctionTransformer="FunctionTransformer",e.ImportDeclarationTransformer="ImportDeclarationTransformer",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.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariableDeclarationTransformer="VariableDeclarationTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static append(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e),...t])}static appendToOptimalBlockScope(e,t,r,o=0){const a=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(a,r)}static getOptimalBlockScope(e,t,r=1/0){const o=e[t];if(r<=0)throw new Error("Invalid `deep` argument value. Value should be bigger then 0.");return r>1&&o.stackTrace.length?n.getOptimalBlockScope(o.stackTrace,0,--r):o.callee}static insertAfter(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o+1)}static insertAtIndex(e,t,r){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...n.getScopeStatements(e).slice(0,r),...t,...n.getScopeStatements(e).slice(r)])}static prepend(e,t){t=n.parentizeScopeStatementsBeforeAppend(e,t),n.setScopeStatements(e,[...t,...n.getScopeStatements(e)])}static getScopeStatements(e){return o.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){o.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AfterObfuscation="afterObfuscation",e.BeforeObfuscation="beforeObfuscation"}(t.ObfuscationEvent||(t.ObfuscationEvent={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(54);const o=r(2),n=r(15);class a{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const a=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),a}}t.JavaScriptObfuscator=a,a.version="0.20.4"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomNodes(){return this.customNodes}appendCustomNodeIfExist(e,t){const r=this.customNodes.get(e);r&&t(r)}getRandomStackTraceIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],i),t.AbstractCustomNodeGroup=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static extractDomainFrom(e){let t;return t=e.indexOf("://")>-1||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.IdentifierNamesGenerator=o.MakeEnum({DictionaryIdentifierNamesGenerator:"dictionary",HexadecimalIdentifierNamesGenerator:"hexadecimal",MangledIdentifierNamesGenerator:"mangled"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(30);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.NO_ADDITIONAL_NODES_PRESET=Object.freeze({compact:!0,controlFlowFlattening:!1,controlFlowFlatteningThreshold:0,deadCodeInjection:!1,deadCodeInjectionThreshold:0,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!1,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:0,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.NumberUtils=class{static toHex(e){return e.toString(16)}static isCeil(e){return e%1==0}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.options=e}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],i),t.AbstractObfuscatingReplacer=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{};a=o.__decorate([n.injectable()],a),t.AbstractCalleeDataExtractor=a},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2);let s=o=class{constructor(e,t,r){this.replacerDataByControlFlowStorageId=new Map,this.controlFlowCustomNodeFactory=e,this.randomGenerator=t,this.options=r}static getStorageKeysByIdForCurrentStorage(e,t){let r;return r=e.has(t)?e.get(t):new Map,r}insertCustomNodeToControlFlowStorage(e,t,r,n){const a=t.getStorageId(),i=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,a),s=i.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return i.set(r,[d]),this.replacerDataByControlFlowStorageId.set(a,i),t.set(d,e),d}};s=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],s),t.AbstractControlFlowReplacer=s},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n var that = (typeof window !== 'undefined'\n ? window\n : (typeof process === 'object' &&\n typeof require === 'function' &&\n typeof global === 'object')\n ? global\n : this);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e,t){this.preservedNames=[],this.randomGenerator=e,this.options=t}preserveName(e){this.preservedNames.push(e)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNames.includes(e)}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],i),t.AbstractIdentifierNamesGenerator=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(27),n=r(17),a=r(28);t.DEFAULT_PRESET=Object.freeze({compact:!0,config:"",controlFlowFlattening:!1,controlFlowFlatteningThreshold:.75,deadCodeInjection:!1,deadCodeInjectionThreshold:.4,debugProtection:!1,debugProtectionInterval:!1,disableConsoleOutput:!1,domainLock:[],exclude:[],identifierNamesGenerator:o.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,identifiersPrefix:"",identifiersDictionary:[],inputFileName:"",log:!1,renameGlobals:!1,reservedNames:[],reservedStrings:[],rotateStringArray:!0,seed:0,selfDefending:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:a.SourceMapMode.Separate,splitStrings:!1,splitStringsChunkLength:10,stringArray:!0,stringArrayEncoding:!1,stringArrayThreshold:.75,target:n.ObfuscationTarget.Browser,transformObjectKeys:!1,unicodeEscapeSequence:!1})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.FunctionDeclarationCalleeDataExtractor="FunctionDeclarationCalleeDataExtractor",e.FunctionExpressionCalleeDataExtractor="FunctionExpressionCalleeDataExtractor",e.ObjectExpressionCalleeDataExtractor="ObjectExpressionCalleeDataExtractor"}(t.CalleeDataExtractor||(t.CalleeDataExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BinaryExpressionControlFlowReplacer="BinaryExpressionControlFlowReplacer",e.CallExpressionControlFlowReplacer="CallExpressionControlFlowReplacer",e.LogicalExpressionControlFlowReplacer="LogicalExpressionControlFlowReplacer",e.StringLiteralControlFlowReplacer="StringLiteralControlFlowReplacer"}(t.ControlFlowReplacer||(t.ControlFlowReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(16),s=r(35),c=r(3);let d=class extends s.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!c.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IControlFlowCustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.ExpressionWithOperatorControlFlowReplacer=d},function(e,t){e.exports=require("espree")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementDeadCodeInjectionNode="BlockStatementDeadCodeInjectionNode"}(t.DeadCodeInjectionCustomNode||(t.DeadCodeInjectionCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.AssignmentExpressionPropertiesExtractor="AssignmentExpressionPropertiesExtractor",e.VariableDeclaratorPropertiesExtractor="VariableDeclaratorPropertiesExtractor"}(t.PropertiesExtractor||(t.PropertiesExtractor={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(20),c=r(8),d=r(3),l=r(18);let u=o=class{constructor(e,t){this.cachedHostNodesWithStatementsMap=new Map,this.cachedHostStatementsMap=new Map,this.randomGenerator=e,this.options=t}static getPropertyNodeKeyName(e){if(!e.key)return null;const t=e.key;return d.NodeGuards.isLiteralNode(t)&&"string"==typeof t.value?t.value:d.NodeGuards.isIdentifierNode(t)?t.name:null}static isProhibitedHostParent(e){return d.NodeGuards.isMemberExpressionNode(e)}static isProhibitedPattern(e){return!e||d.NodeGuards.isObjectPatternNode(e)||d.NodeGuards.isArrayPatternNode(e)||d.NodeGuards.isAssignmentPatternNode(e)||d.NodeGuards.isRestElementNode(e)}extractPropertiesToExpressionStatements(e,t){const r=e.length,n=[],a=[];for(let i=0;i!t.includes(r))}transformObjectExpressionNode(e,t){const r=e.properties,[o,n]=this.extractPropertiesToExpressionStatements(r,t),a=this.getHostStatement(e),i=this.getHostNodeWithStatements(e,a);return this.filterExtractedObjectExpressionProperties(e,n),s.NodeAppender.insertAfter(i,o,a),e}getHostNodeWithStatements(e,t){if(this.cachedHostNodesWithStatementsMap.has(e))return this.cachedHostNodesWithStatementsMap.get(e);const r=l.NodeStatementUtils.getScopeOfNode(t);return this.cachedHostNodesWithStatementsMap.set(e,r),r}getHostStatement(e){if(this.cachedHostStatementsMap.has(e))return this.cachedHostStatementsMap.get(e);const t=l.NodeStatementUtils.getRootStatementOfNode(e);return this.cachedHostStatementsMap.set(e,t),t}};u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.AbstractPropertiesExtractor=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutputCustomNodeGroup="ConsoleOutputCustomNodeGroup",e.DebugProtectionCustomNodeGroup="DebugProtectionCustomNodeGroup",e.DomainLockCustomNodeGroup="DomainLockCustomNodeGroup",e.SelfDefendingCustomNodeGroup="SelfDefendingCustomNodeGroup",e.StringArrayCustomNodeGroup="StringArrayCustomNodeGroup"}(t.CustomNodeGroup||(t.CustomNodeGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BooleanLiteralObfuscatingReplacer="BooleanLiteralObfuscatingReplacer",e.NumberLiteralObfuscatingReplacer="NumberLiteralObfuscatingReplacer",e.StringLiteralObfuscatingReplacer="StringLiteralObfuscatingReplacer"}(t.LiteralObfuscatingReplacer||(t.LiteralObfuscatingReplacer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlackListObfuscatingGuard="BlackListObfuscatingGuard",e.ConditionalCommentObfuscatingGuard="ConditionalCommentObfuscatingGuard",e.ReservedStringObfuscatingGuard="ReservedStringObfuscatingGuard"}(t.ObfuscatingGuard||(t.ObfuscatingGuard={}))},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}static isConditionalComment(e){return o.obfuscationEnableCommentRegExp.test(e.value)||o.obfuscationDisableCommentRegExp.test(e.value)}check(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!i.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;const t=e.leadingComments,r=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),r&&(this.obfuscationAllowedForNextNode=this.checkComments(r)),this.obfuscationAllowedForCurrentNode}checkComments(e){const t=e.length;let r=this.obfuscationAllowedForCurrentNode;for(let n=0;n1?e:`${e}|${s.default(this.sourceCode.getSourceCode())}`}};l.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n.__decorate([d.initializable(),n.__metadata("design:type",Object)],l.prototype,"randomGenerator",void 0),n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],l.prototype,"initialize",null),l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ISourceCode)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.RandomGenerator=l},function(e,t){e.exports=require("chalk")},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(53)),c=r(56);let d=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,o||"")}info(e,t){this.options.log&&o.log(o.colorInfo,c.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,c.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,c.LoggingPrefix.Base,e,t)}};d.colorInfo=s.default.cyan,d.colorSuccess=s.default.green,d.colorWarn=s.default.yellow,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.Logger=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Base="[javascript-obfuscator]",e.CLI="[javascript-obfuscator-cli]"}(t.LoggingPrefix||(t.LoggingPrefix={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(40),s=r(58),c=r(59),d=r(60),l=r(61);t.analyzersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.IStackTraceAnalyzer).to(l.StackTraceAnalyzer).inSingletonScope(),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(s.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(i.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(a.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){if(!s.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return r?{callee:r,name:t.name}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:e=>{if(s.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importStar(r(10)),i=r(34),s=r(3),c=r(18);let d=class extends i.AbstractCalleeDataExtractor{extract(e,t){let r=null;return s.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(c.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),s.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:t.name||null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(s.NodeGuards.isFunctionExpressionNode(e)&&o&&s.NodeGuards.isVariableDeclaratorNode(o)&&s.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};d=o.__decorate([n.injectable()],d),t.FunctionExpressionCalleeDataExtractor=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=n.__importStar(r(10)),s=r(34),c=r(3),d=r(18);let l=o=class extends s.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=c.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=c.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!c.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(c.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!c.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return c.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(c.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return i.traverse(e,{enter:e=>{if(c.NodeGuards.isVariableDeclaratorNode(e)&&c.NodeGuards.isIdentifierNode(e.id)&&e.init&&c.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),i.VisitorOption.Break}}),o}findCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;for(const n of e)if(o.isValidTargetPropertyNode(n,r)){if(c.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(c.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};l=o=n.__decorate([a.injectable()],l),t.ObjectExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(40),d=r(3),l=r(18);let u=o=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,r=o.limitThresholdActivationLength-1;let n=t;return t>r&&(n=Math.round(r+t*o.limitThreshold),n>t&&(n=t)),n}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=o.getLimitIndex(e.length),r=[],n=e.length;for(let o=0;ot);o++){const t=e[o];s.traverse(t,{enter:o=>{if(d.NodeGuards.isCallExpressionNode(o))return t.parentNode!==l.NodeStatementUtils.getParentNodeWithStatements(o)?s.VisitorOption.Skip:void this.analyzeCallExpressionNode(r,e,o)}})}return r}analyzeCallExpressionNode(e,t,r){o.calleeDataExtractorsList.forEach(o=>{const n=this.calleeDataExtractorFactory(o).extract(t,r.callee);n&&e.push(Object.assign(Object.assign({},n),{stackTrace:this.analyzeRecursive(n.callee.body)}))})}};u.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],u.limitThresholdActivationLength=25,u.limitThreshold=.002,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICalleeDataExtractor)),n.__metadata("design:paramtypes",[Function])],u),t.StackTraceAnalyzer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(41),s=r(19),c=r(63),d=r(64),l=r(65),u=r(66),p=r(67),m=r(68),f=r(69);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(m.LogicalExpressionControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(a.ServiceIdentifiers.IControlFlowReplacer).to(f.StringLiteralControlFlowReplacer).whenTargetNamed(i.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(a.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42);let d=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.BinaryExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}};d.usingExistingIdentifierChance=.5,d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.BinaryExpressionControlFlowReplacer=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(6),l=r(7),u=r(3),p=r(5);let m=o=class extends l.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=u.NodeGuards.isBreakStatementNode(e)||u.NodeGuards.isContinueStatementNode(e),r=u.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=u.NodeGuards.isClassDeclarationNode(e);return u.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return s.traverse(e,{enter:e=>{if(u.NodeGuards.isWhileStatementNode(e))return s.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case d.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&u.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold||!o.canTransformBlockStatementNode(e))return e;const r=e.body,n=this.arrayUtils.createWithRange(r.length),a=this.arrayUtils.shuffle(n),i=n.map(e=>a.indexOf(e)),s=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,a,i);const d=s.getNode()[0];return p.NodeUtils.parentizeNode(d,t),d}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.BlockStatementControlFlowTransformer=m},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!d.NodeGuards.isIdentifierNode(n))return e;const a=String(e.arguments.length),i=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionFunctionNode),c=e.arguments;i.initialize(c);const l=this.insertCustomNodeToControlFlowStorage(i,r,a,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),l,n,c)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const a=n.getNode()[0];if(!a||!d.NodeGuards.isExpressionStatementNode(a))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return a.expression}};l.usingExistingIdentifierChance=.5,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(44),d=r(19),l=r(13),u=r(6),p=r(7),m=r(8),f=r(3),g=r(18),N=r(5);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.deadCodeInjectionRootAstHostNodeSet=new Set,this.collectedBlockStatements=[],this.collectedBlockStatementsTotalLength=0,this.deadCodeInjectionCustomNodeFactory=e,this.transformersRunner=t}static isProhibitedNodeInsideCollectedBlockStatement(e){return f.NodeGuards.isBreakStatementNode(e)||f.NodeGuards.isContinueStatementNode(e)||f.NodeGuards.isAwaitExpressionNode(e)||f.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!f.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=g.NodeStatementUtils.getScopeOfNode(e),r=f.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),a=m.NodeFactory.blockStatementNode(n),i=e.id.name;let c=!1;return s.traverse(a,{enter:e=>{if(f.NodeGuards.isIdentifierNode(e)&&e.name===i)return c=!0,s.VisitorOption.Break}}),c}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return s.traverse(e,{enter:e=>{if(f.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,s.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(s.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,s.VisitorOption.Break}}),!t)return!1;return g.NodeStatementUtils.getParentNodeWithStatements(e).type!==l.NodeType.Program}getVisitor(e){switch(e){case u.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&f.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&f.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case u.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){s.traverse(e,{enter:e=>{if(!f.NodeGuards.isBlockStatementNode(e))return;const t=N.NodeUtils.clone(e);if(!o.isValidCollectedBlockStatementNode(t))return;const r=this.makeClonedBlockStatementNodeUnique(t);this.collectedBlockStatements.push(r)}}),this.collectedBlockStatementsTotalLength=this.collectedBlockStatements.length}transformNode(e,t){if(!this.collectedBlockStatements.length||this.collectedBlockStatementsTotalLengththis.options.deadCodeInjectionThreshold||!o.isValidWrappedBlockStatementNode(e))return e;const r=this.collectedBlockStatements.length-1,n=this.randomGenerator.getRandomInteger(0,r),a=this.collectedBlockStatements.splice(n,1)[0];return a===e?e:this.replaceBlockStatementNode(e,a,t)}restoreNode(e,t){const r=e.body[0];if(!f.NodeGuards.isFunctionDeclarationNode(r))throw new Error("Wrong dead code injection root AST host node. Host node should contain `FunctionDeclaration` node");return r.body}isDeadCodeInjectionRootAstHostNode(e){return f.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=m.NodeFactory.functionExpressionNode([],e);return N.NodeUtils.parentizeNode(t,t),N.NodeUtils.parentizeNode(e,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,u.TransformationStage.Obfuscating).body}replaceBlockStatementNode(e,t,r){const n=m.NodeFactory.blockStatementNode([m.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const a=this.deadCodeInjectionCustomNodeFactory(c.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);a.initialize(e,n);const i=a.getNode()[0];return N.NodeUtils.parentizeNode(i,r),i}};_.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",_.maxNestedBlockStatementsCount=4,_.minCollectedBlockStatementsCount=5,_.transformersToRenameBlockScopeIdentifiers=[d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.VariableDeclarationTransformer],_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],_),t.DeadCodeInjectionTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(16),d=r(41),l=r(13),u=r(6),p=r(7),m=r(20),f=r(3),g=r(11),N=r(18);let _=o=class extends p.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.controlFlowData=new Map,this.visitedFunctionNodes=new Set,this.hostNodesWithControlFlowNode=new Set,this.controlFlowStorageFactory=e,this.controlFlowReplacerFactory=t,this.controlFlowCustomNodeFactory=r}getVisitor(e){switch(e){case u.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!f.NodeGuards.isBlockStatementNode(e.body))return e;const r=this.getHostNode(e.body),o=this.getControlFlowStorage(r);if(this.controlFlowData.set(r,o),this.transformFunctionBody(e.body,o),!o.getLength())return e;const n=this.controlFlowCustomNodeFactory(c.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),m.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(f.NodeGuards.isSwitchCaseNode(e)?e.consequent.shift():e.body.shift());const r=this.controlFlowData.get(e);t.mergeWith(r,!0)}return t}getHostNode(e){const t=N.NodeStatementUtils.getParentNodesWithStatements(e);return 1===t.length?e:(t.pop(),t.length>o.hostNodeSearchMinDepth&&t.splice(0,o.hostNodeSearchMinDepth),t.length>o.hostNodeSearchMaxDepth&&(t.length=o.hostNodeSearchMaxDepth),this.randomGenerator.getRandomGenerator().pickone(t))}isVisitedFunctionNode(e){return(f.NodeGuards.isFunctionDeclarationNode(e)||f.NodeGuards.isFunctionExpressionNode(e)||f.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){s.replace(e,{enter:(e,r)=>{if(g.NodeMetadata.isIgnoredNode(e))return s.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return s.VisitorOption.Skip;if(!o.controlFlowReplacersMap.has(e.type))return e;if(this.randomGenerator.getMathRandom()>this.options.controlFlowFlatteningThreshold)return e;const n=o.controlFlowReplacersMap.get(e.type);return void 0===n?e:Object.assign(Object.assign({},this.controlFlowReplacerFactory(n).replace(e,r,t)),{parentNode:r})}})}};_.controlFlowReplacersMap=new Map([[l.NodeType.BinaryExpression,d.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[l.NodeType.CallExpression,d.ControlFlowReplacer.CallExpressionControlFlowReplacer],[l.NodeType.LogicalExpression,d.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[l.NodeType.Literal,d.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),_.hostNodeSearchMinDepth=0,_.hostNodeSearchMaxDepth=2,_=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__TControlFlowStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.Factory__IControlFlowReplacer)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(3,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Function,Function,Object,Object])],_),t.FunctionControlFlowTransformer=_},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(42),d=r(3),l=r(5);let u=o=class extends c.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(this.checkForProhibitedExpressions(e.left,e.right))return e;const n=e.operator,a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.LogicalExpressionFunctionNode);a.initialize(n);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=d.NodeGuards.isUnaryExpressionNode(e)?l.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(d.NodeGuards.isLiteralNode(t)||d.NodeGuards.isIdentifierNode(t)||d.NodeGuards.isObjectExpressionNode(t)||d.NodeGuards.isExpressionStatementNode(t))})}};u.usingExistingIdentifierChance=.5,u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.LogicalExpressionControlFlowReplacer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(16),c=r(35),d=r(3);let l=o=class extends c.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(d.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),a=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralNode);a.initialize(e.value);const i=this.insertCustomNodeToControlFlowStorage(a,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),i)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(s.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!d.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};l.usingExistingIdentifierChance=1,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IControlFlowCustomNode)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(15),a=r(2),i=r(19),s=r(45),c=r(71),d=r(72),l=r(73),u=r(74),p=r(75),m=r(76),f=r(77),g=r(78);t.convertingTransformersModule=new o.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(i.NodeTransformer.MemberExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(i.NodeTransformer.MethodDefinitionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionKeysTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ObjectExpressionTransformer).whenTargetNamed(i.NodeTransformer.ObjectExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.SplitStringTransformer).whenTargetNamed(i.NodeTransformer.SplitStringTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.TemplateLiteralTransformer).whenTargetNamed(i.NodeTransformer.TemplateLiteralTransformer),e(a.ServiceIdentifiers.IPropertiesExtractor).to(c.AssignmentExpressionPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.AssignmentExpressionPropertiesExtractor),e(a.ServiceIdentifiers.IPropertiesExtractor).to(g.VariableDeclaratorPropertiesExtractor).whenTargetNamed(s.PropertiesExtractor.VariableDeclaratorPropertiesExtractor),e(a.ServiceIdentifiers.Factory__IPropertiesExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IPropertiesExtractor))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(46);let s=class extends i.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){const r=t.parentNode,o=t.left;return i.AbstractPropertiesExtractor.isProhibitedPattern(o)?e:r&&i.AbstractPropertiesExtractor.isProhibitedHostParent(r)?e:this.transformObjectExpressionNode(e,o)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.AssignmentExpressionPropertiesExtractor=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(d.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=c.NodeFactory.literalNode(e.property.name)}return e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MemberExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3);let u=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&l.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return l.NodeGuards.isIdentifierNode(e.key)&&!o.ignoredNames.includes(e.key.name)&&!1===e.computed&&(e.computed=!0,e.key=d.NodeFactory.literalNode(e.key.name)),e}};u.ignoredNames=["constructor"],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],u),t.MethodDefinitionTransformer=u},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(13),c=r(45),d=r(6),l=r(7),u=r(3);let p=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.propertiesExtractorFactory=e}getVisitor(e){return e!==d.TransformationStage.Converting?null:{enter:(e,t)=>{if(this.options.transformObjectKeys&&t&&u.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}}}transformNode(e,t){if(!e.properties.length)return e;const r=o.propertiesExtractorsMap.get(t.type);return r?this.propertiesExtractorFactory(r).extract(e,t):e}};p.propertiesExtractorsMap=new Map([[s.NodeType.AssignmentExpression,c.PropertiesExtractor.AssignmentExpressionPropertiesExtractor],[s.NodeType.VariableDeclarator,c.PropertiesExtractor.VariableDeclaratorPropertiesExtractor]]),p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IPropertiesExtractor)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],p),t.ObjectExpressionKeysTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(8),d=r(3);let l=class extends s.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.escapeSequenceEncoder=e}getVisitor(e){switch(e){case i.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&d.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){d.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.value)))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),d.NodeGuards.isIdentifierNode(e.key)&&(e.key=c.NodeFactory.literalNode(this.getPropertyKeyValue(e.key.name)))}getPropertyKeyValue(e){return this.options.unicodeEscapeSequence?this.escapeSequenceEncoder.encode(e,!0):e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object])],l),t.ObjectExpressionTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(19),c=r(6),d=r(7),l=r(8),u=r(3);let p=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[s.NodeTransformer.ObjectExpressionKeysTransformer,s.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let a=0;a{if(this.options.splitStrings)return t&&u.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if("string"!=typeof e.value)return e;if(u.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e)return e;if(this.options.splitStringsChunkLength>=e.value.length)return e;const r=o.chunkString(e.value,this.options.splitStringsChunkLength);return this.transformStringChunksToBinaryExpressionNode(r)}transformStringChunksToBinaryExpressionNode(e){const t=e.pop();if(void 0===t)throw new Error("Last chunk value should not be empty");const r=l.NodeFactory.literalNode(t);return 0===e.length?r:l.NodeFactory.binaryExpressionNode("+",this.transformStringChunksToBinaryExpressionNode(e),r)}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.SplitStringTransformer=p},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(6),c=r(7),d=r(8),l=r(3),u=r(5);let p=o=class extends c.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return e&&l.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return l.NodeGuards.isTemplateLiteralNode(e)&&!l.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case s.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&o.isValidTemplateLiteralNode(e,t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=e.expressions;let n,a=[];if(e.quasis.forEach(e=>{a.push(d.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&a.push(t)}),a=a.filter(e=>!(l.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(a[0])||o.isLiteralNodeWithStringValue(a[1])||a.unshift(d.NodeFactory.literalNode("")),a.length>1){let e=d.NodeFactory.binaryExpressionNode("+",a.shift(),a.shift());a.forEach(t=>{e=d.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=a[0];return u.NodeUtils.parentizeAst(n),n}};p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.TemplateLiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(46),c=r(3);let d=class extends s.AbstractPropertiesExtractor{constructor(e,t){super(e,t)}extract(e,t){return!c.NodeGuards.isIdentifierNode(t.id)||this.isProhibitedObjectExpressionNode(e,t.id)?e:this.transformObjectExpressionNode(e,t.id)}getHostVariableDeclaratorNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclaratorNode(t))throw new Error("Cannot get `VariableDeclarator` node for `ObjectExpression` node");return t}getHostVariableDeclarationNode(e){const{parentNode:t}=e;if(!t||!c.NodeGuards.isVariableDeclarationNode(t))throw new Error("Cannot get `VariableDeclaration` node for `VariableDeclarator` node");return t}isProhibitedObjectExpressionNode(e,t){const r=this.getHostVariableDeclaratorNode(e),o=this.getHostVariableDeclarationNode(r),{declarations:n}=o,a=n.indexOf(r);if(a===n.length-1)return!1;const s=n.slice(a);let d=!1;return s.forEach(e=>{i.traverse(e,{enter:e=>c.NodeGuards.isMemberExpressionNode(e)&&c.NodeGuards.isIdentifierNode(e.object)&&e.object.name===t.name?(d=!0,i.VisitorOption.Break):e})}),d}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.VariableDeclaratorPropertiesExtractor=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(16),s=r(23),c=r(47),d=r(44),l=r(80),u=r(81),p=r(82),m=r(83),f=r(84),g=r(85),N=r(88),_=r(89),h=r(90),b=r(91),y=r(92),S=r(93),I=r(95),v=r(97),C=r(99),O=r(103),j=r(105),F=r(106),T=r(107),x=r(109),E=r(111),w=r(118),G=r(120),R=r(123),P=r(124);t.customNodesModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.ICustomNode).to(S.ConsoleOutputDisableExpressionNode).whenTargetNamed(s.CustomNode.ConsoleOutputDisableExpressionNode),e(a.ServiceIdentifiers.ICustomNode).to(I.DebugProtectionFunctionCallNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionCallNode),e(a.ServiceIdentifiers.ICustomNode).to(v.DebugProtectionFunctionIntervalNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionIntervalNode),e(a.ServiceIdentifiers.ICustomNode).to(C.DebugProtectionFunctionNode).whenTargetNamed(s.CustomNode.DebugProtectionFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(O.DomainLockNode).whenTargetNamed(s.CustomNode.DomainLockNode),e(a.ServiceIdentifiers.ICustomNode).to(T.NodeCallsControllerFunctionNode).whenTargetNamed(s.CustomNode.NodeCallsControllerFunctionNode),e(a.ServiceIdentifiers.ICustomNode).to(x.SelfDefendingUnicodeNode).whenTargetNamed(s.CustomNode.SelfDefendingUnicodeNode),e(a.ServiceIdentifiers.ICustomNode).to(E.StringArrayCallsWrapper).whenTargetNamed(s.CustomNode.StringArrayCallsWrapper),e(a.ServiceIdentifiers.ICustomNode).to(w.StringArrayNode).whenTargetNamed(s.CustomNode.StringArrayNode),e(a.ServiceIdentifiers.ICustomNode).to(G.StringArrayRotateFunctionNode).whenTargetNamed(s.CustomNode.StringArrayRotateFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.BinaryExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.BlockStatementControlFlowFlatteningNode).whenTargetNamed(i.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.CallExpressionControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.CallExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.CallExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ControlFlowStorageNode).whenTargetNamed(i.ControlFlowCustomNode.ControlFlowStorageNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(j.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(F.LogicalExpressionFunctionNode).whenTargetNamed(i.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(P.StringLiteralNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(R.StringLiteralControlFlowStorageCallNode).whenTargetNamed(i.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(a.ServiceIdentifiers.Newable__ICustomNode).toConstructor(_.BlockStatementDeadCodeInjectionNode).whenTargetNamed(d.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(a.ServiceIdentifiers.ICustomNodeGroup).to(l.ConsoleOutputCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.ConsoleOutputCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(u.DebugProtectionCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DebugProtectionCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(p.DomainLockCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.DomainLockCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(m.SelfDefendingCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.SelfDefendingCustomNodeGroup),e(a.ServiceIdentifiers.ICustomNodeGroup).to(f.StringArrayCustomNodeGroup).whenTargetNamed(c.CustomNodeGroup.StringArrayCustomNodeGroup),e(a.ServiceIdentifiers.Factory__ICustomNode).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNode)),e(a.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(a.ServiceIdentifiers.Newable__ICustomNode,a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,a.ServiceIdentifiers.IRandomGenerator,a.ServiceIdentifiers.IOptions)),e(a.ServiceIdentifiers.Factory__ICustomNodeGroup).toFactory(o.InversifyContainerFacade.getFactory(a.ServiceIdentifiers.ICustomNodeGroup))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.ConsoleOutputDisableExpressionNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.disableConsoleOutput)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.ConsoleOutputDisableExpressionNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.ConsoleOutputDisableExpressionNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.ConsoleOutputCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20),u=r(3);let p=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionCallNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionNode,t=>{l.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.DebugProtectionFunctionIntervalNode,t=>{const r=u.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);l.NodeAppender.insertAtIndex(e,t.getNode(),o)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.debugProtection)return;const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate(),r=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionNode),o=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionCallNode),n=this.customNodeFactory(s.CustomNode.DebugProtectionFunctionIntervalNode),a=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);r.initialize(e),o.initialize(e,t),n.initialize(e),a.initialize(this.appendEvent,t),this.customNodes.set(s.CustomNode.DebugProtectionFunctionNode,r),this.customNodes.set(s.CustomNode.DebugProtectionFunctionCallNode,o),this.options.debugProtectionInterval&&this.customNodes.set(s.CustomNode.DebugProtectionFunctionIntervalNode,n),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,a)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],p.prototype,"customNodes",void 0),p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],p),t.DebugProtectionCustomNodeGroup=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.BeforeObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.DomainLockNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.domainLock.length)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.DomainLockNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.DomainLockNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.DomainLockCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e}appendCustomNodes(e,t){const r=this.getRandomStackTraceIndex(t.length);this.appendCustomNodeIfExist(s.CustomNode.SelfDefendingUnicodeNode,o=>{l.NodeAppender.appendToOptimalBlockScope(t,e,o.getNode(),r)}),this.appendCustomNodeIfExist(s.CustomNode.NodeCallsControllerFunctionNode,o=>{const n=t.length?l.NodeAppender.getOptimalBlockScope(t,r,1):e;l.NodeAppender.prepend(n,o.getNode())})}initialize(){if(this.customNodes=new Map,!this.options.selfDefending)return;const e=this.identifierNamesGenerator.generate(),t=this.customNodeFactory(s.CustomNode.SelfDefendingUnicodeNode),r=this.customNodeFactory(s.CustomNode.NodeCallsControllerFunctionNode);t.initialize(e),r.initialize(this.appendEvent,e),this.customNodes.set(s.CustomNode.SelfDefendingUnicodeNode,t),this.customNodes.set(s.CustomNode.NodeCallsControllerFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Function,Object,Object])],u),t.SelfDefendingCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(23),c=r(21),d=r(25),l=r(20);let u=class extends d.AbstractCustomNodeGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=c.ObfuscationEvent.AfterObfuscation,this.customNodeFactory=e,this.stringArrayStorage=t}appendCustomNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(s.CustomNode.StringArrayNode,t=>{l.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayCallsWrapper,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(s.CustomNode.StringArrayRotateFunctionNode,t=>{l.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customNodes=new Map,!this.options.stringArray)return;const e=this.customNodeFactory(s.CustomNode.StringArrayNode),t=this.customNodeFactory(s.CustomNode.StringArrayCallsWrapper),r=this.customNodeFactory(s.CustomNode.StringArrayRotateFunctionNode),o=this.stringArrayStorage.getStorageId(),[n,a]=o.split("|");let i;i=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(100,500):0,e.initialize(this.stringArrayStorage,n,i),t.initialize(n,a),r.initialize(n,i),this.customNodes.set(s.CustomNode.StringArrayNode,e),this.customNodes.set(s.CustomNode.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customNodes.set(s.CustomNode.StringArrayRotateFunctionNode,r)}};o.__decorate([i.initializable(),o.__metadata("design:type",Map)],u.prototype,"customNodes",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__ICustomNode)),o.__param(1,n.inject(a.ServiceIdentifiers.TStringArrayStorage)),o.__param(2,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Function,Object,Object])],u),t.StringArrayCustomNodeGroup=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.binaryExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BinaryExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n var that;\n \n try {\n var getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n var getGlobal = function () {\n var 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 var that = getGlobal();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(3),l=r(5);let u=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.blockStatementBody=e,this.shuffledKeys=t,this.originalKeysIndexesInShuffledArray=r}getNodeStructure(){const e=this.randomGenerator.getRandomString(6),t=this.randomGenerator.getRandomString(6),r=c.NodeFactory.blockStatementNode([c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(e),c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),c.NodeFactory.identifierNode("split")),[c.NodeFactory.literalNode("|")])),c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(t),c.NodeFactory.literalNode(0))]),c.NodeFactory.whileStatementNode(c.NodeFactory.literalNode(!0),c.NodeFactory.blockStatementNode([c.NodeFactory.switchStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(e),c.NodeFactory.updateExpressionNode("++",c.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return d.NodeGuards.isReturnStatementNode(r)||o.push(c.NodeFactory.continueStatement()),c.NodeFactory.switchCaseNode(c.NodeFactory.literalNode(String(t)),o)})),c.NodeFactory.breakStatement()]))]);return l.NodeUtils.parentizeAst(r),[r]}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"blockStatementBody",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"originalKeysIndexesInShuffledArray",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],u.prototype,"shuffledKeys",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.BlockStatementControlFlowFlatteningNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.blockStatementNode=e,this.deadCodeInjectionRootAstHostNode=t}getNodeStructure(){const e=this.randomGenerator.getMathRandom()>.5,t=this.randomGenerator.getMathRandom()>.5,r=e?"===":"!==",o=this.randomGenerator.getRandomString(5),n=t?o:this.randomGenerator.getRandomString(5),[a,i]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=c.NodeFactory.blockStatementNode([c.NodeFactory.ifStatementNode(c.NodeFactory.binaryExpressionNode(r,c.NodeFactory.literalNode(o),c.NodeFactory.literalNode(n)),a,i)]);return d.NodeUtils.parentizeAst(s),[s]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"blockStatementNode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"deadCodeInjectionRootAstHostNode",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.BlockStatementDeadCodeInjectionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"callee",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Array)],l.prototype,"expressionArguments",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.CallExpressionControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=c.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e{const r=t.getNode()[0];if(!d.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return c.NodeFactory.propertyNode(c.NodeFactory.identifierNode(e),r.expression)});let t=c.NodeFactory.variableDeclarationNode([c.NodeFactory.variableDeclaratorNode(c.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),c.NodeFactory.objectExpressionNode(e))]);return t=l.NodeUtils.parentizeAst(t),[t]}};o.__decorate([i.initializable(),o.__metadata("design:type",Object)],u.prototype,"controlFlowStorage",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ControlFlowStorageNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(94),d=r(37),l=r(4),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():d.GlobalVariableNoEvalTemplate();return i.default(c.ConsoleOutputDisableExpressionTemplate(),{consoleLogDisableFunctionName:this.identifierNamesGenerator.generate(),globalVariableTemplate:e,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([l.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.ConsoleOutputDisableExpressionNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n var {consoleLogDisableFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n var 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.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.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(96),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"callsControllerFunctionName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionCallNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {singleNodeCallControllerFunctionName}(this, function () {\n var regExp1 = new RegExp('function *\\\\( *\\\\)');\n var regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n var 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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(98),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"debugProtectionFunctionName",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.DebugProtectionFunctionIntervalNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionIntervalTemplate=function(){return"\n setInterval(function () {\n {debugProtectionFunctionName}();\n }, 4000);\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(100),l=r(101),u=r(102),p=r(9),m=r(5);let f=class extends p.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?d.DebuggerTemplate():l.DebuggerTemplateNoEval();return i.default(u.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"debugProtectionFunctionName",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.DebugProtectionFunctionNode=f},function(e,t,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebuggerTemplateNoEval=function(){return"\n if (typeof counter === 'string') {\n var 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,r){"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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(4),d=r(104),l=r(37),u=r(9),p=r(5);let m=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.cryptUtils=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():l.GlobalVariableNoEvalTemplate();return i.default(d.DomainLockNodeTemplate(),{domainLockFunctionName:this.identifierNamesGenerator.generate(),diff:r,domains:t,globalVariableTemplate:o,singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.DomainLockNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockNodeTemplate=function(){return'\n var {domainLockFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n var func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (var i = 0; i < 1000; i--) {\n var 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 var regExp = new RegExp("[{diff}]", "g");\n var domains = "{domains}".replace(regExp, "").split(";");\n var document;\n var domain;\n var location;\n var hostname;\n\n for (var 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 (var 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 (var 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 (var 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 var documentDomain = that[document][domain];\n var documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n var currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n var ok = false;\n \n for (var i = 0; i < domains.length; i++) {\n var domain = domains[i];\n var position = currentDomain.length - domain.length;\n var lastIndex = currentDomain.indexOf(domain, position);\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.callExpressionNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"leftValue",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",Object)],l.prototype,"rightValue",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.ExpressionWithOperatorControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.operator=e}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.functionExpressionNode([c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")],c.NodeFactory.blockStatementNode([c.NodeFactory.returnStatementNode(c.NodeFactory.logicalExpressionNode(this.operator,c.NodeFactory.identifierNode("x"),c.NodeFactory.identifierNode("y")))])));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"operator",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.LogicalExpressionFunctionNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(21),c=r(4),d=r(108),l=r(31),u=r(9),p=r(24),m=r(5);let f=class extends u.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return this.appendEvent===s.ObfuscationEvent.AfterObfuscation?p.JavaScriptObfuscator.obfuscate(i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed})).getObfuscatedCode():i.default(d.SingleNodeCallControllerTemplate(),{singleNodeCallControllerFunctionName:this.callsControllerFunctionName})}};o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"callsControllerFunctionName",void 0),o.__decorate([c.initializable(),o.__metadata("design:type",String)],f.prototype,"appendEvent",void 0),f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.NodeCallsControllerFunctionNode=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleNodeCallControllerTemplate=function(){return"\n var {singleNodeCallControllerFunctionName} = (function(){\n var firstCall = true;\n \n return function (context, fn){\n var rfn = firstCall ? function(){\n if(fn){\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(110),l=r(9),u=r(24),p=r(5);let m=class extends l.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e){this.callsControllerFunctionName=e}getNodeStructure(){return p.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return u.JavaScriptObfuscator.obfuscate(i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{selfDefendingFunctionName:this.identifierNamesGenerator.generate(),singleNodeCallControllerFunctionName:this.callsControllerFunctionName}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.options.seed,unicodeEscapeSequence:!0})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],m.prototype,"callsControllerFunctionName",void 0),m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],m),t.SelfDefendingUnicodeNode=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var {selfDefendingFunctionName} = {singleNodeCallControllerFunctionName}(this, function () {\n var func1 = function(){return 'dev';},\n func2 = function () {\n return 'window';\n };\n \n var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return !regExp.test(func1.toString());\n };\n \n var test2 = function () {\n var regExp = new RegExp('${e.encode("(\\\\[x|u](\\w){2,4})+",!0)}');\n \n return regExp.test(func2.toString());\n };\n \n var recursiveFunc1 = function (string) {\n var i = ~-1 >> 1 + 255 % 0;\n \n if (string.indexOf('i' === i)) {\n recursiveFunc2(string)\n }\n };\n \n var recursiveFunc2 = function (string) {\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(17),c=r(29),d=r(4),l=r(31),u=r(112),p=r(37),m=r(113),f=r(114),g=r(115),N=r(116),_=r(117),h=r(9),b=r(24),y=r(5);let S=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(){return y.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.getDecodeStringArrayTemplate();return b.JavaScriptObfuscator.obfuscate(i.default(N.StringArrayCallsWrapperTemplate(),{decodeNodeTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),Object.assign(Object.assign({},l.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}getDecodeStringArrayTemplate(){const e=this.options.target!==s.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():p.GlobalVariableNoEvalTemplate(),t=i.default(u.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=i.default(f.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case c.StringArrayEncoding.Rc4:r=i.default(_.StringArrayRc4DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,rc4Polyfill:m.Rc4Template(),selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case c.StringArrayEncoding.Base64:r=i.default(g.StringArrayBase64DecodeNodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayName",void 0),o.__decorate([d.initializable(),o.__metadata("design:type",String)],S.prototype,"stringArrayCallsWrapperName",void 0),S=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],S),t.StringArrayCallsWrapper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n var str = String(input).replace(/=+$/, '');\n for (\n var bc = 0, bs, buffer, idx = 0, output = '';\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 "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n var rc4 = function (str, key) {\n var s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (var 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\t for (var 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 (var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e,t){const r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6),a=e.getRandomString(6),i=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n var StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${a} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${i} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n var regExp = new RegExp(this.${a} + this.${i});\n var expression = regExp.test(this.${n}.toString())\n ? --this.${o}[1]\n : --this.${o}[0];\n \n return this.${c}(expression);\n };\n \n StatesClass.prototype.${c} = function (${l}) {\n if (!Boolean(~${l})) {\n return ${l};\n }\n \n return this.${d}(this.${r});\n };\n\n StatesClass.prototype.${d} = function (${r}) {\n for (var i = 0, len = this.${o}.length; i < len; i++) {\n this.${o}.push(Math.round(Math.random()));\n len = this.${o}.length;\n }\n \n return ${r}(this.${o}[0]);\n };\n\n new StatesClass({stringArrayCallsWrapperName}).${s}();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayBase64DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {stringArrayCallsWrapperName}.${r} = function (str) {\n var string = atob(str);\n var newStringChars = [];\n \n for (var 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}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n \n if (cachedValue === undefined) {\n {selfDefendingCode}\n \n value = {stringArrayCallsWrapperName}.${r}(value);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayCallsWrapperTemplate=function(){return"\n var {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n var value = {stringArrayName}[index];\n \n {decodeNodeTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRc4DecodeNodeTemplate=function(e){const t=e.getRandomString(6),r=e.getRandomString(6),o=e.getRandomString(6),n=e.getRandomString(6);return`\n if ({stringArrayCallsWrapperName}.${t} === undefined) {\n {atobPolyfill}\n \n {rc4Polyfill}\n {stringArrayCallsWrapperName}.${r} = rc4;\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n var cachedValue = {stringArrayCallsWrapperName}.${o}[index];\n\n if (cachedValue === undefined) {\n if ({stringArrayCallsWrapperName}.${n} === undefined) {\n {selfDefendingCode}\n \n {stringArrayCallsWrapperName}.${n} = true;\n }\n \n value = {stringArrayCallsWrapperName}.${r}(value, key);\n {stringArrayCallsWrapperName}.${o}[index] = value;\n } else {\n value = cachedValue;\n }\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(119),d=r(9),l=r(5);let u=class extends d.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t,r){this.stringArrayStorage=e,this.stringArrayName=t,this.stringArrayRotateValue=r}getNode(){return this.stringArrayStorage.rotateArray(this.stringArrayRotateValue),super.getNode()}getNodeStructure(){return l.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){return i.default(c.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};o.__decorate([s.initializable(),o.__metadata("design:type",Object)],u.prototype,"stringArrayStorage",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",String)],u.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],u.prototype,"stringArrayRotateValue",void 0),u=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],u),t.StringArrayNode=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n var {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importDefault(r(12)),s=r(4),c=r(31),d=r(121),l=r(122),u=r(9),p=r(24),m=r(5),f=r(32);let g=class extends u.AbstractCustomNode{constructor(e,t,r,o){super(e,t,o),this.escapeSequenceEncoder=r}initialize(e,t){this.stringArrayName=e,this.stringArrayRotateValue=t}getNodeStructure(){return m.NodeUtils.convertCodeToStructure(this.getTemplate())}getTemplate(){const e=this.identifierNamesGenerator.generate(),t=this.identifierNamesGenerator.generate();let r="";return r=this.options.selfDefending?i.default(d.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,p.JavaScriptObfuscator.obfuscate(i.default(l.StringArrayRotateFunctionTemplate(),{code:r,timesName:e,stringArrayName:this.stringArrayName,stringArrayRotateValue:f.NumberUtils.toHex(this.stringArrayRotateValue),whileFunctionName:t}),Object.assign(Object.assign({},c.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()})).getObfuscatedCode()}};o.__decorate([s.initializable(),o.__metadata("design:type",String)],g.prototype,"stringArrayName",void 0),o.__decorate([s.initializable(),o.__metadata("design:type",Number)],g.prototype,"stringArrayRotateValue",void 0),g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IEscapeSequenceEncoder)),o.__param(3,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object,Object])],g),t.StringArrayRotateFunctionNode=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n var selfDefendingFunc = function () {\n var object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n var updatedCookie = name + "=" + value;\n\n var i = 0;\n \n for (var i = 0, len = options.length; i < len; i++) {\n var propName = options[i];\n \n updatedCookie += "; " + propName;\n \n var 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 var matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n var 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 var test1 = function () {\n var regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n var cookie = '';\n var 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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n var {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotateValue});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8),d=r(5);let l=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=c.NodeFactory.expressionStatementNode(c.NodeFactory.memberExpressionNode(c.NodeFactory.identifierNode(this.controlFlowStorageName),c.NodeFactory.identifierNode(this.controlFlowStorageKey)));return d.NodeUtils.parentizeAst(e),[e]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageKey",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],l.prototype,"controlFlowStorageName",void 0),l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.StringLiteralControlFlowStorageCallNode=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(9),c=r(8);let d=class extends s.AbstractCustomNode{constructor(e,t,r){super(e,t,r)}initialize(e){this.literalValue=e}getNodeStructure(){return[c.NodeFactory.expressionStatementNode(c.NodeFactory.literalNode(this.literalValue))]}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],d.prototype,"literalValue",void 0),d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],d),t.StringLiteralNode=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0);t.finalizingTransformersModule=new o.ContainerModule(e=>{})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(27),i=r(127),s=r(128),c=r(129);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(i.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator),e(n.ServiceIdentifiers.Factory__IIdentifierNamesGenerator).toFactory(function(){let e=null;return t=>r=>{if(e)return e;let o;switch(r.identifierNamesGenerator){case a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,a.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t,r){super(e,t),this.arrayUtils=r,this.identifierNamesSet=new Set(this.getInitialIdentifierNames(this.options.identifiersDictionary)),this.identifiersIterator=this.identifierNamesSet.values()}static incrementIdentifierName(e){let t="",r=!1;for(const o of e)r||o!==o.toUpperCase()?r||o!==o.toLowerCase()?t+=o:(t+=o.toUpperCase(),r=!0):t+=o.toLowerCase();return r?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 r of e){const e=o.incrementIdentifierName(r);e&&t.push(e)}return this.arrayUtils.shuffle(t)}};c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__param(2,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__metadata("design:paramtypes",[Object,Object,Object])],c),t.DictionaryIdentifierNamesGenerator=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38),c=r(32),d=r(26);let l=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.randomVariableNameSet=new Set}generate(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=c.NumberUtils.toHex(t),n=d.Utils.hexadecimalPrefix.length+1,a=e?e-n:o.baseIdentifierNameLength,i=r.substr(0,a),s=`_${d.Utils.hexadecimalPrefix}${i}`;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("__","_")}};l.baseIdentifierNameLength=6,l=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],l),t.HexadecimalIdentifierNamesGenerator=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(38);let c=o=class extends s.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.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)&&!o.reservedNames.includes(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=e.length,n=e=>"0".repeat(e);let a=r-1;do{const o=e.charAt(a),i=t.indexOf(o);if(i!==t.length-1){return e.substring(0,a)+t[i+1]+n(r-(a+1))}--a}while(a>=0);return`a${n(r)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}};c.initMangledNameCharacter="9",c.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),c.reservedNames=["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"],c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],c),t.MangledIdentifierNamesGenerator=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2);t.nodeTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(14),s=r(48),c=r(19),d=r(132),l=r(133),u=r(134),p=r(135),m=r(136),f=r(137),g=r(138),N=r(139),_=r(140),h=r(141),b=r(142),y=r(143);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(u.CatchClauseTransformer).whenTargetNamed(c.NodeTransformer.CatchClauseTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.ClassDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ClassDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.FunctionDeclarationTransformer).whenTargetNamed(c.NodeTransformer.FunctionDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.FunctionTransformer).whenTargetNamed(c.NodeTransformer.FunctionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ImportDeclarationTransformer).whenTargetNamed(c.NodeTransformer.ImportDeclarationTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(N.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(_.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(y.VariableDeclarationTransformer).whenTargetNamed(c.NodeTransformer.VariableDeclarationTransformer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(h.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IObfuscatingReplacer).to(b.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(i.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(a.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IObfuscatingReplacer)),e(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8);let c=class extends i.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){if(this.blockScopesMap.has(t)){const r=this.blockScopesMap.get(t);r.has(e)&&(e=r.get(e))}return s.NodeFactory.identifierNode(e)}storeGlobalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,r)}storeLocalName(e,t){if(this.isReservedName(e))return;const r=this.identifierNamesGenerator.generate();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(e,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))}};c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object])],c),t.BaseIdentifierObfuscatingReplacer=c},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(33),c=r(8);let d=o=class extends s.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return c.NodeFactory.unaryExpressionNode("!",c.NodeFactory.arrayExpressionNode())}replace(e){return e?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object])],d),t.BooleanLiteralObfuscatingReplacer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22),p=r(11);let m=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isCatchClauseNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeCatchClauseParam(e,r),this.replaceCatchClauseParam(e,r),e):e}storeCatchClauseParam(e,t){l.NodeGuards.isIdentifierNode(e.param)&&this.identifierObfuscatingReplacer.storeLocalName(e.param.name,t)}replaceCatchClauseParam(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isReplaceableIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t).name;e.name!==r&&(e.name=r,p.NodeMetadata.set(e,{renamedIdentifier:!0}))}}})}};m=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],m),t.CatchClauseTransformer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isClassDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeClassName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeClassName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ClassDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(t);if(!r)return e;const o=r.type===c.NodeType.Program;return!this.options.renameGlobals&&o?e:(this.storeFunctionName(e,r,o),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(e,r):this.replaceScopeIdentifiers(r),e)}storeFunctionName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,t)}replaceScopeCachedIdentifiers(e,t){const r=this.replaceableIdentifiers.get(t).get(e.id.name);if(!r)return;const o=r.length;for(let e=0;e{if(o&&o!==e&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;if(r.name!==o)r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0});else{const e=t.get(r.name)||[];e.push(r),t.set(r.name,e)}}}}),this.replaceableIdentifiers.set(e,t)}};f=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],f),t.FunctionDeclarationTransformer=f},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11),f=r(13);let g=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedIdentifierOfPropertyNode(e,t){return u.NodeGuards.isIdentifierNode(e)&&!!t&&u.NodeGuards.isPropertyNode(t)&&t.key===e}static isProhibitedIdentifierOfShorthandPropertyNode(e){return u.NodeGuards.isPropertyNode(e)&&e.shorthand&&u.NodeGuards.isIdentifierNode(e.key)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isFunctionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeFunctionParams(e,r),this.replaceFunctionParams(e,r),e):e}isGlobalFunctionDeclarationIdentifier(e,t){if(!u.NodeGuards.isFunctionDeclarationNode(t)||t.id!==e)return!1;const r=p.NodeLexicalScopeUtils.getLexicalScopes(t)[1];if(!r)return!1;const o=r.type===f.NodeType.Program;return!this.options.renameGlobals&&o}storeFunctionParams(e,t){const r={enter:(e,r)=>{if(!o.isProhibitedIdentifierOfPropertyNode(e,r))return u.NodeGuards.isAssignmentPatternNode(e)&&u.NodeGuards.isIdentifierNode(e.left)?(this.identifierObfuscatingReplacer.storeLocalName(e.left.name,t),s.VisitorOption.Skip):void(u.NodeGuards.isIdentifierNode(e)&&this.identifierObfuscatingReplacer.storeLocalName(e.name,t))}};e.params.forEach(e=>{s.traverse(e,r)})}replaceFunctionParams(e,t,r=new Set){const n={enter:(n,a)=>{if(u.NodeGuards.isFunctionNode(n)&&n!==e)return this.replaceFunctionParams(n,t,new Set(r)),s.VisitorOption.Skip;if(o.isProhibitedIdentifierOfShorthandPropertyNode(n))r.add(n.key.name);else if(a&&u.NodeGuards.isReplaceableIdentifierNode(n,a)&&!m.NodeMetadata.isRenamedIdentifier(n)&&!r.has(n.name)){if(this.isGlobalFunctionDeclarationIdentifier(n,a))return;const e=this.identifierObfuscatingReplacer.replace(n.name,t).name;n.name!==e&&(n.name=e,m.NodeMetadata.set(n,{renamedIdentifier:!0}))}}};s.replace(e,n)}};g=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],g),t.FunctionTransformer=g},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(10)),c=r(14),d=r(6),l=r(7),u=r(3),p=r(22),m=r(11);let f=o=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(c.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}static isProhibitedImportSpecifierNode(e){return u.NodeGuards.isImportSpecifierNode(e)&&e.imported.name===e.local.name}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isImportDeclarationNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=p.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeImportSpecifierNames(e,r),this.replaceableIdentifiers.has(r)?this.replaceScopeCachedIdentifiers(r):this.replaceScopeIdentifiers(r),e):e}storeImportSpecifierNames(e,t){e.specifiers.forEach(e=>{o.isProhibitedImportSpecifierNode(e)||this.identifierObfuscatingReplacer.storeGlobalName(e.local.name,t)})}replaceScopeCachedIdentifiers(e){this.replaceableIdentifiers.get(e).forEach(t=>{const r=this.identifierObfuscatingReplacer.replace(t.name,e);t.name=r.name,m.NodeMetadata.set(t,{renamedIdentifier:!0})})}replaceScopeIdentifiers(e){const t=[];s.replace(e,{enter:(r,o)=>{if(o&&u.NodeGuards.isReplaceableIdentifierNode(r,o)&&!m.NodeMetadata.isRenamedIdentifier(r)){const o=this.identifierObfuscatingReplacer.replace(r.name,e).name;r.name!==o?(r.name=o,m.NodeMetadata.set(r,{renamedIdentifier:!0})):t.push(r)}}}),this.replaceableIdentifiers.set(e,t)}};f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],f),t.ImportDeclarationTransformer=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(6),d=r(7),l=r(3),u=r(22);let p=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case c.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&l.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=u.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label.name,t)}replaceLabeledStatementName(e,t){i.replace(e,{enter:(e,r)=>{if(r&&l.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e.name,t);e.name=r.name}}})}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LabeledStatementTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(48),s=r(6),c=r(7),d=r(3),l=r(11),u=r(5);let p=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.literalObfuscatingReplacerFactory=e}getVisitor(e){switch(e){case s.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&d.NodeGuards.isLiteralNode(e)&&!l.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.isProhibitedNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e.value);break;case"number":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e.value);break;case"string":r=this.literalObfuscatingReplacerFactory(i.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e.value);break;default:r=e}return u.NodeUtils.parentizeNode(r,t),r}isProhibitedNode(e,t){return!(!d.NodeGuards.isPropertyNode(t)||t.key!==e)||!!d.NodeGuards.isImportDeclarationNode(t)}};p=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],p),t.LiteralTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(33),s=r(8),c=r(32),d=r(26);let l=class extends i.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){let t;return this.numberLiteralCache.has(e)?t=this.numberLiteralCache.get(e):(t=c.NumberUtils.isCeil(e)?`${d.Utils.hexadecimalPrefix}${c.NumberUtils.toHex(e)}`:String(e),this.numberLiteralCache.set(e,t)),s.NodeFactory.literalNode(e,t)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],l),t.NumberLiteralObfuscatingReplacer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(29),c=r(33),d=r(11),l=r(8),u=r(32),p=r(26);let m=o=class extends c.AbstractObfuscatingReplacer{constructor(e,t,r,n,a){super(a),this.nodesCache=new Map,this.stringLiteralHexadecimalIndexCache=new Map,this.stringArrayStorage=e,this.escapeSequenceEncoder=t,this.randomGenerator=r,this.cryptUtils=n,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}static getHexadecimalLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=l.NodeFactory.literalNode(e);return d.NodeMetadata.set(t,{replacedLiteral:!0}),t}replace(e){const t=this.canUseStringArray(e),r=`${e}-${String(t)}`;if(this.nodesCache.has(r)&&this.options.stringArrayEncoding!==s.StringArrayEncoding.Rc4)return this.nodesCache.get(r);const o=t?this.replaceWithStringArrayCallNode(e):this.replaceWithLiteralNode(e);return this.nodesCache.set(r,o),o}canUseStringArray(e){return this.options.stringArray&&e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}getStringArrayHexadecimalIndex(e,t){if(this.stringLiteralHexadecimalIndexCache.has(e))return{fromCache:!0,index:this.stringLiteralHexadecimalIndexCache.get(e)};const r=u.NumberUtils.toHex(t),o=`${p.Utils.hexadecimalPrefix}${r}`;return this.stringLiteralHexadecimalIndexCache.set(e,o),{fromCache:!1,index:o}}getEncodedValue(e){let t,r=null;switch(this.options.stringArrayEncoding){case s.StringArrayEncoding.Rc4:r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),t=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r));break;case s.StringArrayEncoding.Base64:t=this.cryptUtils.btoa(e);break;default:t=e}return{encodedValue:t,key:r}}replaceWithLiteralNode(e){return l.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e,this.options.unicodeEscapeSequence))}replaceWithStringArrayCallNode(e){const{encodedValue:t,key:r}=this.getEncodedValue(e),n=this.escapeSequenceEncoder.encode(t,this.options.unicodeEscapeSequence),a=this.stringArrayStorage.getLength(),i=this.stringArrayStorage.getStorageId().split("|")[1],{fromCache:s,index:c}=this.getStringArrayHexadecimalIndex(n,a);s||this.stringArrayStorage.set(a,n);const u=[o.getHexadecimalLiteralNode(c)];r&&u.push(o.getRc4KeyLiteralNode(this.escapeSequenceEncoder.encode(r,this.options.unicodeEscapeSequence)));const p=l.NodeFactory.identifierNode(i);return d.NodeMetadata.set(p,{renamedIdentifier:!0}),l.NodeFactory.callExpressionNode(p,u)}};m.minimumLengthForStringArray=3,m.rc4KeyLength=4,m.rc4KeysCount=50,m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TStringArrayStorage)),n.__param(1,a.inject(i.ServiceIdentifiers.IEscapeSequenceEncoder)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.ICryptUtils)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],m),t.StringLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(14),c=r(13),d=r(6),l=r(7),u=r(3),p=r(22),m=r(144),f=r(11);let g=class extends l.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.replaceableIdentifiers=new Map,this.identifierObfuscatingReplacer=e(s.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case d.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&u.NodeGuards.isVariableDeclarationNode(e)&&!u.NodeGuards.isExportNamedDeclarationNode(t))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r="var"===e.kind?p.NodeLexicalScopeUtils.getLexicalScope(e):m.NodeBlockLexicalScopeUtils.getLexicalScope(e);if(!r)return e;const o=r.type===c.NodeType.Program;if(!this.options.renameGlobals&&o)return e;const n="var"===e.kind?r:t;return this.storeVariableNames(e,r,o),this.replaceableIdentifiers.has(n)?this.replaceScopeCachedIdentifiers(e,r,n):this.replaceScopeIdentifiers(n,r),e}storeVariableNames(e,t,r){this.traverseDeclarationIdentifiers(e,e=>{r?this.identifierObfuscatingReplacer.storeGlobalName(e.name,t):this.identifierObfuscatingReplacer.storeLocalName(e.name,t)})}replaceScopeCachedIdentifiers(e,t,r){const o=this.replaceableIdentifiers.get(r),n=[];this.traverseDeclarationIdentifiers(e,e=>{n.push(e.name)}),n.forEach(e=>{const r=o.get(e);if(!r)return;const n=r.length;for(let o=0;o{if(o&&u.NodeGuards.isReplaceableIdentifierNode(e,o)&&!f.NodeMetadata.isRenamedIdentifier(e)){const o=this.identifierObfuscatingReplacer.replace(e.name,t).name;if(e.name!==o)e.name=o,f.NodeMetadata.set(e,{renamedIdentifier:!0});else{const t=r.get(e.name)||[];t.push(e),r.set(e.name,t)}}}}),this.replaceableIdentifiers.set(e,r)}traverseDeclarationIdentifiers(e,t){e.declarations.forEach(e=>{i.traverse(e.id,{enter:e=>{if(u.NodeGuards.isPropertyNode(e))return i.VisitorOption.Skip;u.NodeGuards.isIdentifierNode(e)&&t(e)}})})}};g=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],g),t.VariableDeclarationTransformer=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(3);class n{static getLexicalScope(e){return n.getLexicalScopesRecursive(e,1)[0]}static getLexicalScopes(e){return n.getLexicalScopesRecursive(e)}static getLexicalScopesRecursive(e,t=1/0,r=[],a=0){if(r.length>=t)return r;const i=e.parentNode;if(!i)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithBlockLexicalScope(e)&&r.push(e),e!==i?n.getLexicalScopesRecursive(i,t,r,++a):r}}t.NodeBlockLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(146),i=r(149);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(a.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(i.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(147),c=r(27),d=r(17),l=r(28),u=r(29),p=r(39),m=r(148);let f=o=class{constructor(e,t){Object.assign(this,p.DEFAULT_PRESET,e);const r=s.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${m.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};f.validatorOptions={validationError:{target:!1}},n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"compact",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"controlFlowFlattening",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"controlFlowFlatteningThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"deadCodeInjection",void 0),n.__decorate([s.IsNumber(),n.__metadata("design:type",Number)],f.prototype,"deadCodeInjectionThreshold",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtection",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"debugProtectionInterval",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"disableConsoleOutput",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"domainLock",void 0),n.__decorate([s.IsIn([c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,c.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,c.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),n.__metadata("design:type",Object)],f.prototype,"identifierNamesGenerator",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"identifiersPrefix",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),s.ValidateIf(e=>e.identifierNamesGenerator===c.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),s.ArrayNotEmpty(),n.__metadata("design:type",Array)],f.prototype,"identifiersDictionary",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"inputFileName",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"log",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"renameGlobals",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedNames",void 0),n.__decorate([s.IsArray(),s.ArrayUnique(),s.IsString({each:!0}),n.__metadata("design:type",Array)],f.prototype,"reservedStrings",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"rotateStringArray",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"selfDefending",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"sourceMap",void 0),n.__decorate([s.IsString(),s.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),s.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),n.__metadata("design:type",String)],f.prototype,"sourceMapBaseUrl",void 0),n.__decorate([s.IsString(),n.__metadata("design:type",String)],f.prototype,"sourceMapFileName",void 0),n.__decorate([s.IsIn([l.SourceMapMode.Inline,l.SourceMapMode.Separate]),n.__metadata("design:type",Object)],f.prototype,"sourceMapMode",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"splitStrings",void 0),n.__decorate([s.IsNumber(),s.ValidateIf(e=>Boolean(e.splitStrings)),s.Min(1),n.__metadata("design:type",Number)],f.prototype,"splitStringsChunkLength",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"stringArray",void 0),n.__decorate([s.IsIn([!0,!1,u.StringArrayEncoding.Base64,u.StringArrayEncoding.Rc4]),n.__metadata("design:type",Object)],f.prototype,"stringArrayEncoding",void 0),n.__decorate([s.IsNumber(),s.Min(0),s.Max(1),n.__metadata("design:type",Number)],f.prototype,"stringArrayThreshold",void 0),n.__decorate([s.IsIn([d.ObfuscationTarget.Browser,d.ObfuscationTarget.BrowserNoEval,d.ObfuscationTarget.Node]),n.__metadata("design:type",Object)],f.prototype,"target",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"transformObjectKeys",void 0),n.__decorate([s.IsBoolean(),n.__metadata("design:type",Boolean)],f.prototype,"unicodeEscapeSequence",void 0),f=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.TInputOptions)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptionsNormalizer)),n.__metadata("design:paramtypes",[Object,Object])],f),t.Options=f},function(e,t){e.exports=require("class-validator")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static format(e){return e.reduce((e,t)=>[...e,o.formatWithNestedConstraints(t)],[]).join("\n")}static formatWithNestedConstraints(e){const t=e.constraints;return`${`\`${e.property}\` errors:\n`}${Object.keys(t).map(e=>` - ${t[e]}\n`).join()}`}}t.ValidationErrorsFormatter=o},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(150),s=r(151),c=r(152),d=r(153),l=r(154),u=r(155),p=r(156),m=r(157),f=r(158),g=r(159),N=r(160),_=r(161),h=r(162);let b=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};b.normalizerRules=[i.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,p.SelfDefendingRule,m.SourceMapBaseUrlRule,f.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,N.StringArrayRule,_.StringArrayEncodingRule,h.StringArrayThresholdRule],b=o=n.__decorate([a.injectable()],b),t.OptionsNormalizer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ControlFlowFlatteningThresholdRule=e=>(0===e.controlFlowFlatteningThreshold&&(e=Object.assign(Object.assign({},e),{controlFlowFlattening:!1,controlFlowFlatteningThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(39);t.DeadCodeInjectionRule=e=>(e.deadCodeInjection&&((e=Object.assign(Object.assign({},e),{deadCodeInjection:!0,stringArray:!0})).stringArrayThreshold||(e=Object.assign(Object.assign({},e),{stringArray:!0,stringArrayThreshold:o.DEFAULT_PRESET.stringArrayThreshold}))),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeadCodeInjectionThresholdRule=e=>(0===e.deadCodeInjectionThreshold&&(e=Object.assign(Object.assign({},e),{deadCodeInjection:!1,deadCodeInjectionThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(26);t.DomainLockRule=e=>{if(e.domainLock.length){const t=[];for(const r of e.domainLock)t.push(o.Utils.extractDomainFrom(r));e=Object.assign(Object.assign({},e),{domainLock:t})}return e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".").slice(0,-1).join(".")||t,e=Object.assign(Object.assign({},e),{inputFileName:`${t}.js`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeedRule=e=>{if(e.seed)return Object.assign(Object.assign({},e),{seed:e.seed});return Object.assign(Object.assign({},e),{seed:(t=0,r=999999999,Math.floor(Math.random()*(r-t+1)+t))});var t,r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingRule=e=>(e.selfDefending&&(e=Object.assign(Object.assign({},e),{compact:!0,selfDefending:!0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapBaseUrlRule=e=>{const{sourceMapBaseUrl:t}=e;return e.sourceMapFileName?(t&&!t.endsWith("/")&&(e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:`${t}/`})),e):e=Object.assign(Object.assign({},e),{sourceMapBaseUrl:""})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(".")[0],e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})),e}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SplitStringsChunkLengthRule=e=>e=0===e.splitStringsChunkLength?Object.assign(Object.assign({},e),{splitStrings:!1,splitStringsChunkLength:0}):Object.assign(Object.assign({},e),{splitStringsChunkLength:Math.floor(e.splitStringsChunkLength)})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRule=e=>(e.stringArray||(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(29);t.StringArrayEncodingRule=e=>(!0===e.stringArrayEncoding&&(e=Object.assign(Object.assign({},e),{stringArrayEncoding:o.StringArrayEncoding.Base64})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayThresholdRule=e=>(0===e.stringArrayThreshold&&(e=Object.assign(Object.assign({},e),{rotateStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(15),n=r(0),a=r(2),i=r(19),s=r(49),c=r(164),d=r(165),l=r(50),u=r(166),p=r(167),m=r(169),f=r(170),g=r(171),N=r(172),_=r(173);t.preparingTransformersModule=new n.ContainerModule(e=>{e(a.ServiceIdentifiers.INodeTransformer).to(d.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(u.CustomNodesTransformer).whenTargetNamed(i.NodeTransformer.CustomNodesTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(p.EvalCallExpressionTransformer).whenTargetNamed(i.NodeTransformer.EvalCallExpressionTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(m.MetadataTransformer).whenTargetNamed(i.NodeTransformer.MetadataTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(f.ObfuscatingGuardsTransformer).whenTargetNamed(i.NodeTransformer.ObfuscatingGuardsTransformer),e(a.ServiceIdentifiers.INodeTransformer).to(g.ParentificationTransformer).whenTargetNamed(i.NodeTransformer.ParentificationTransformer),e(a.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(l.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(a.ServiceIdentifiers.INodeGuard).to(N.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(a.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(a.ServiceIdentifiers.INodeGuard)),e(a.ServiceIdentifiers.INodeTransformer).to(_.VariablePreserveTransformer).whenTargetNamed(i.NodeTransformer.VariablePreserveTransformer)})},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(3);let s=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t{if(l.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(e.comments){const t=this.transformComments(e.comments);s.traverse(e,{enter:e=>{if(0===t.length)return;const r=t.findIndex(t=>t.range&&e.range&&t.range[0]0&&(e.trailingComments=t.reverse())}return e}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||u.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};p.preservedWords=["@license","@preserve"],p=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],p),t.CommentsTransformer=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(21),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r,o,n){super(o,n),this.stackTraceData=[],this.stackTraceAnalyzer=e,this.obfuscationEventEmitter=t,this.customNodeGroupStorage=r}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{leave:(e,t)=>{if(d.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case s.TransformationStage.Finalizing:return{leave:(e,t)=>{d.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.stackTraceData=this.stackTraceAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customNodeGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendCustomNodes.bind(e))}),this.obfuscationEventEmitter.emit(i.ObfuscationEvent.BeforeObfuscation,e,this.stackTraceData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(i.ObfuscationEvent.AfterObfuscation,e,this.stackTraceData)}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IStackTraceAnalyzer)),o.__param(1,n.inject(a.ServiceIdentifiers.IObfuscationEventEmitter)),o.__param(2,n.inject(a.ServiceIdentifiers.TCustomNodeGroupStorage)),o.__param(3,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(4,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object,Object,Object,Object])],l),t.CustomNodesTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importDefault(r(168)),c=r(6),d=r(7),l=r(8),u=r(3),p=r(5);let m=o=class extends d.AbstractNodeTransformer{constructor(e,t){super(e,t),this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return u.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):u.NodeGuards.isTemplateLiteralNode(e)?o.extractEvalStringFromTemplateLiteralNode(e):null}static extractEvalStringFromLiteralNode(e){return"string"==typeof e.value?e.value:null}static extractEvalStringFromTemplateLiteralNode(e){const t=e.quasis;return 1!==t.length||e.expressions.length?null:t[0].value.cooked}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&u.NodeGuards.isCallExpressionNode(e)&&u.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case c.TransformationStage.Finalizing:return this.evalRootAstHostNodeSet.size?{leave:(e,t)=>{if(t&&this.isEvalRootAstHostNode(e))return this.restoreNode(e,t)}}:null;default:return null}}transformNode(e,t){const r=e.arguments[0];if(!r)return e;const n=o.extractEvalStringFromCallExpressionArgument(r);if(!n)return e;let a;try{a=p.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const i=l.NodeFactory.functionExpressionNode([],l.NodeFactory.blockStatementNode(a));return this.evalRootAstHostNodeSet.add(i),i}restoreNode(e,t){const r=e.body.body,o=p.NodeUtils.convertStructureToCode(r);return l.NodeFactory.callExpressionNode(l.NodeFactory.identifierNode("eval"),[l.NodeFactory.literalNode(s.default(o))])}isEvalRootAstHostNode(e){return u.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object])],m),t.EvalCallExpressionTransformer=m},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(3),d=r(11);let l=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return d.NodeMetadata.set(e,{ignoredNode:!1}),c.NodeGuards.isIdentifierNode(e)&&d.NodeMetadata.set(e,{renamedIdentifier:!1}),c.NodeGuards.isLiteralNode(e)&&d.NodeMetadata.set(e,{replacedLiteral:!1}),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],l),t.MetadataTransformer=l},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(49),c=r(6),d=r(7),l=r(11);let u=o=class extends d.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case c.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){const r=this.obfuscatingGuards.every(t=>t.check(e));return l.NodeMetadata.set(e,{ignoredNode:!r}),e}};u.obfuscatingGuardsList=[s.ObfuscatingGuard.BlackListObfuscatingGuard,s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,s.ObfuscatingGuard.ReservedStringObfuscatingGuard],u=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__INodeGuard)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],u),t.ObfuscatingGuardsTransformer=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(6),s=r(7),c=r(5);let d=class extends s.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case i.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return c.NodeUtils.parentizeNode(e,t)}};d=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],d),t.ParentificationTransformer=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(3);let s=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!i.NodeGuards.isLiteralNode(e)||"string"!=typeof e.value||!this.isReservedString(e.value)}isReservedString(e){return this.options.reservedStrings.some(t=>null!==new RegExp(t,"g").exec(e))}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object])],s),t.ReservedStringObfuscatingGuard=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(14),i=r(2),s=r(6),c=r(7),d=r(3);let l=class extends c.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case s.TransformationStage.Preparing:return{enter:(e,t)=>{if(d.NodeGuards.isIdentifierNode(e)&&t&&(d.NodeGuards.parentNodeIsPropertyNode(e,t)||d.NodeGuards.parentNodeIsMemberExpressionNode(e,t)||d.NodeGuards.parentNodeIsMethodDefinitionNode(e,t)||d.NodeGuards.isLabelIdentifierNode(e,t)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.identifierObfuscatingReplacer.preserveName(e.name),e}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),o.__param(1,n.inject(i.ServiceIdentifiers.IRandomGenerator)),o.__param(2,n.inject(i.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Function,Object,Object])],l),t.VariablePreserveTransformer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(175),i=r(176),s=r(177);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(i.CustomNodeGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.TStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(a.ControlFlowStorage),e(n.ServiceIdentifiers.Factory__TControlFlowStorage).toFactory(e=>()=>{const t=new(e.container.get(n.ServiceIdentifiers.Newable__TControlFlowStorage))(e.container.get(n.ServiceIdentifiers.IRandomGenerator),e.container.get(n.ServiceIdentifiers.IOptions));return t.initialize(),t})})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(51);let s=class extends i.MapStorage{constructor(e,t){super(e,t)}};s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ControlFlowStorage=s},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(47),c=r(51);let d=o=class extends c.MapStorage{constructor(e,t,r){super(t,r),this.customNodeGroupFactory=e}initialize(){super.initialize(),o.customNodeGroupsList.forEach(e=>{const t=this.customNodeGroupFactory(e);t&&this.storage.set(e,t)})}};d.customNodeGroupsList=[s.CustomNodeGroup.ConsoleOutputCustomNodeGroup,s.CustomNodeGroup.DebugProtectionCustomNodeGroup,s.CustomNodeGroup.DomainLockCustomNodeGroup,s.CustomNodeGroup.SelfDefendingCustomNodeGroup,s.CustomNodeGroup.StringArrayCustomNodeGroup],n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],d.prototype,"initialize",null),d=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__ICustomNodeGroup)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object])],d),t.CustomNodeGroupStorage=d},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=r(178);let c=o=class extends s.ArrayStorage{constructor(e,t,r,o){super(r,o),this.identifierNamesGenerator=e(o),this.arrayUtils=t}initialize(){super.initialize();const e=this.identifierNamesGenerator.generate(o.stringArrayNameLength),t=this.identifierNamesGenerator.generate(o.stringArrayNameLength),r=`${this.options.identifiersPrefix}${e}`,n=`${this.options.identifiersPrefix}${t}`;this.storageId=`${r}|${n}`}rotateArray(e){this.storage=this.arrayUtils.rotate(this.storage,e)}toString(){return this.storage.map(e=>`'${e}'`).toString()}};c.stringArrayNameLength=7,n.__decorate([a.postConstruct(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],c.prototype,"initialize",null),c=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),n.__param(1,a.inject(i.ServiceIdentifiers.IArrayUtils)),n.__param(2,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(3,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Function,Object,Object,Object])],c),t.StringArrayStorage=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4);let s=class{constructor(e,t){this.storageLength=0,this.randomGenerator=e,this.options=t}initialize(){this.storage=[],this.storageId=this.randomGenerator.getRandomString(6)}get(e){const t=this.storage[e];if(!t)throw new Error(`No value found in array storage with key \`${e}\``);return t}getKeyOf(e){const t=this.storage.indexOf(e);return t>=0?t:null}getLength(){return this.storageLength}getStorage(){return this.storage}getStorageId(){return this.storageId}mergeWith(e,t=!1){this.storage=[...this.storage,...e.getStorage()],t&&(this.storageId=e.getStorageId())}set(e,t){e===this.storageLength?this.storage.push(t):this.storage.splice(e,0,t),this.storageLength++}};o.__decorate([i.initializable(),o.__metadata("design:type",Array)],s.prototype,"storage",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],s.prototype,"storageId",void 0),o.__decorate([n.postConstruct(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",void 0)],s.prototype,"initialize",null),s=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.IRandomGenerator)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],s),t.ArrayStorage=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(2),a=r(180),i=r(181),s=r(184),c=r(185),d=r(186),l=r(52);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(a.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(i.CryptUtils).inSingletonScope(),e(n.ServiceIdentifiers.IEscapeSequenceEncoder).to(s.EscapeSequenceEncoder).inSingletonScope(),e(n.ServiceIdentifiers.ILevelledTopologicalSorter).to(c.LevelledTopologicalSorter),e(n.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder).to(d.NodeTransformerNamesGroupsBuilder).inSingletonScope()})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rString.fromCharCode(parseInt(`${s.Utils.hexadecimalPrefix}${t}`)));for(let r,o,n=0,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(a="=",n%1);t+=a.charAt(63&r>>8-n%1*8)){if(o=e.charCodeAt(n+=.75),o>255)throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");r=r<<8|o}return t}hideString(e,t){let r=this.randomGenerator.getRandomGenerator().string({length:t,pool:i.RandomGenerator.randomGeneratorPool}).replace(new RegExp(`[${o=e,o.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}]`,"g"),"");var o;const n=r.split("");return this.randomGenerator.getRandomGenerator().shuffle(n),r=n.join(""),[((e,t)=>{let r=-1,o=-1,n="";for(;rt||n.exec(e)?(a.exec(e)?(i="\\x",s="00"):(i="\\u",s="0000"),`${i}${(s+e.charCodeAt(0).toString(16)).slice(-s.length)}`):e);return this.stringsCache.set(r,c),c}};a=o.__decorate([n.injectable()],a),t.EscapeSequenceEncoder=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0);let a=class{constructor(){this.graph=new Map}add(e,t=null){return null!==t?this.link(e,t):this.register(e)}sort(){const e=Array.from(this.graph.keys()),t=[],r={};for(const o of e)void 0===r[o]&&this.visit(t,r,o);return t}sortByGroups(){this.sort();const e=[];for(;this.hasNodes();){const t=this.findRootNodes();e.push(t);for(const e of t)this.delete(e)}return e}delete(e){if(this.getPrecedents(e).length)throw new Error(`Unable to remove non-root node: ${e}`);this.graph.delete(e);const t=Array.from(this.graph.values());for(const r of t){for(let t=r.length-1;t>=0;t-=1)r[t]===e&&r.splice(t,1)}}findRootNodes(){const e=Array.from(this.graph.keys()),t=[];for(const r of e)this.hasPrecedents(r)||t.push(r);return t}getPrecedents(e){const t=this.graph.get(e);if(!t)throw new Error(`Unknown node: ${e}`);return t}hasNodes(){return this.graph.size>0}hasPrecedents(e){return this.getPrecedents(e).length>0}link(e,t){this.register(e),this.register(t);const r=this.graph.get(t);return r&&!r.includes(e)&&r.push(e),this}register(e){return this.graph.has(e)||this.graph.set(e,[]),this}visit(e,t,r){const o=t[r];if("visiting"===o)throw new Error(`Detected cycle involving node: ${r}`);if(o)return;t[r]="visiting";const n=this.getPrecedents(r);for(const r of n)this.visit(e,t,r);t[r]="ok",e.push(r)}};a=o.__decorate([n.injectable()],a),t.LevelledTopologicalSorter=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2);let i=class{constructor(e){this.levelledTopologicalSorter=e}build(e){const t=Object.keys(e),r=this.buildNodeTransformersRelationEdges(t,e);for(const[e,t]of r)this.levelledTopologicalSorter.add(e,t);return this.levelledTopologicalSorter.sortByGroups()}buildNodeTransformersRelationEdges(e,t){const r=[];for(const o of e){const e=t[o].runAfter;if(e&&e.length)for(const n of e){!t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};i=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ILevelledTopologicalSorter)),o.__metadata("design:paramtypes",[Object])],i),t.NodeTransformerNamesGroupsBuilder=i},function(e,t,r){"use strict";var o;Object.defineProperty(t,"__esModule",{value:!0});const n=r(1),a=r(0),i=r(2),s=n.__importStar(r(36)),c=r(188),d=r(19),l=r(6),u=r(189),p=r(3);let m=o=class{constructor(e,t,r,o,n){this.transformersRunner=e,this.randomGenerator=t,this.obfuscatedCodeFactory=r,this.logger=o,this.options=n}obfuscate(e){const t=Date.now();this.logger.info(c.LoggingMessage.Version,"0.20.4"),this.logger.info(c.LoggingMessage.ObfuscationStarted),this.logger.info(c.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),a=(Date.now()-t)/1e3;return this.logger.success(c.LoggingMessage.ObfuscationCompleted,a),this.getObfuscatedCode(n)}parseCode(e){return u.EspreeFacade.parse(e,o.espreeParseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,l.TransformationStage.Initializing),!p.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,l.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,l.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,l.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,l.TransformationStage.Converting),e=this.runTransformationStage(e,l.TransformationStage.Obfuscating),e=this.runTransformationStage(e,l.TransformationStage.Finalizing)):(this.logger.warn(c.LoggingMessage.EmptySourceCode),e)}generateCode(e,t){const r=Object.assign({},o.escodegenParams);this.options.sourceMap&&(r.sourceMap=this.options.inputFileName||"sourceMap",r.sourceContent=e);const n=s.generate(t,Object.assign(Object.assign({},r),{format:{compact:this.options.compact}}));return n.map=n.map?n.map.toString():"",n}getObfuscatedCode(e){return this.obfuscatedCodeFactory(e.code,e.map)}runTransformationStage(e,t){return this.logger.info(c.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};m.espreeParseOptions={comment:!0,ecmaVersion:10,loc:!0,range:!0},m.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},m.transformersList=[d.NodeTransformer.BlockStatementControlFlowTransformer,d.NodeTransformer.ClassDeclarationTransformer,d.NodeTransformer.CommentsTransformer,d.NodeTransformer.CustomNodesTransformer,d.NodeTransformer.DeadCodeInjectionTransformer,d.NodeTransformer.EvalCallExpressionTransformer,d.NodeTransformer.FunctionControlFlowTransformer,d.NodeTransformer.CatchClauseTransformer,d.NodeTransformer.FunctionDeclarationTransformer,d.NodeTransformer.FunctionTransformer,d.NodeTransformer.ImportDeclarationTransformer,d.NodeTransformer.LabeledStatementTransformer,d.NodeTransformer.LiteralTransformer,d.NodeTransformer.MemberExpressionTransformer,d.NodeTransformer.MetadataTransformer,d.NodeTransformer.MethodDefinitionTransformer,d.NodeTransformer.ObfuscatingGuardsTransformer,d.NodeTransformer.ObjectExpressionKeysTransformer,d.NodeTransformer.ObjectExpressionTransformer,d.NodeTransformer.ParentificationTransformer,d.NodeTransformer.SplitStringTransformer,d.NodeTransformer.TemplateLiteralTransformer,d.NodeTransformer.VariableDeclarationTransformer,d.NodeTransformer.VariablePreserveTransformer],m=o=n.__decorate([a.injectable(),n.__param(0,a.inject(i.ServiceIdentifiers.ITransformersRunner)),n.__param(1,a.inject(i.ServiceIdentifiers.IRandomGenerator)),n.__param(2,a.inject(i.ServiceIdentifiers.Factory__IObfuscatedCode)),n.__param(3,a.inject(i.ServiceIdentifiers.ILogger)),n.__param(4,a.inject(i.ServiceIdentifiers.IOptions)),n.__metadata("design:paramtypes",[Object,Object,Function,Object,Object])],m),t.JavaScriptObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.EmptySourceCode="Empty source code. Obfuscation canceled...",e.ObfuscationCompleted="Obfuscation completed. Total time: %s sec.",e.ObfuscationStarted="Obfuscation started...",e.RandomGeneratorSeed="Random generator seed: %s...",e.TransformationStage="Transformation stage: %s...",e.Version="Version: %s"}(t.LoggingMessage||(t.LoggingMessage={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=o.__importStar(r(43)),a=o.__importDefault(r(53));class i{static parse(e,t){const r=i.sourceTypes.length;for(let o=0;o"),c=`...${o.substring(n,a).replace(/^\s+/,"")}...`;throw new Error(`Line ${r.line}: ${t}\n${s} ${c}`)}}t.EspreeFacade=i,i.colorError=a.default.red,i.nearestSymbolsCount=15,i.sourceTypes=["script","module"]},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=o.__importDefault(r(191));n.decorate(n.injectable(),a.default);let i=class extends a.default{};i=o.__decorate([n.injectable()],i),t.ObfuscationEventEmitter=i},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=r(4),s=r(28);let c=class{constructor(e,t){this.cryptUtils=e,this.options=t}initialize(e,t){this.obfuscatedCode=e,this.sourceMap=t}getObfuscatedCode(){return this.correctObfuscatedCode()}getSourceMap(){return this.sourceMap}toString(){return this.obfuscatedCode}correctObfuscatedCode(){if(!this.sourceMap)return this.obfuscatedCode;const e=this.options.sourceMapBaseUrl+this.options.sourceMapFileName;let t="//# sourceMappingURL=";switch(this.options.sourceMapMode){case s.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case s.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"obfuscatedCode",void 0),o.__decorate([i.initializable(),o.__metadata("design:type",String)],c.prototype,"sourceMap",void 0),c=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.ICryptUtils)),o.__param(1,n.inject(a.ServiceIdentifiers.IOptions)),o.__metadata("design:paramtypes",[Object,Object])],c),t.ObfuscatedCode=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.SourceCode=class{constructor(e,t){this.sourceCode=e,this.sourceMap=t}getSourceCode(){return this.sourceCode}getSourceMap(){return this.sourceMap}toString(){return this.sourceCode}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(1),n=r(0),a=r(2),i=o.__importStar(r(10)),s=r(195),c=r(3),d=r(11);let l=class{constructor(e,t){this.cachedNodeTransformersData=new Map,this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;let o,n;this.cachedNodeTransformersData.has(t)?[o,n]=this.cachedNodeTransformersData.get(t):(o=this.buildNormalizedNodeTransformers(t),n=this.nodeTransformerNamesGroupsBuilder.build(o),this.cachedNodeTransformersData.set(t,[o,n]));for(const t of n){const n=[],a=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&a.push({leave:t.leave}))}(n.length||a.length)&&i.replace(e,{enter:this.mergeVisitorsForDirection(n,s.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(a,s.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e){return e.reduce((e,t)=>Object.assign(Object.assign({},e),{[t]:this.nodeTransformerFactory(t)}),{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(d.NodeMetadata.isIgnoredNode(o))return i.VisitorOption.Skip;for(let a=0;ae}};l=o.__decorate([n.injectable(),o.__param(0,n.inject(a.ServiceIdentifiers.Factory__INodeTransformer)),o.__param(1,n.inject(a.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),o.__metadata("design:paramtypes",[Function,Object])],l),t.TransformersRunner=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Enter="enter",e.Leave="leave"}(t.VisitorDirection||(t.VisitorDirection={}))},,,,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(24);e.exports=o.JavaScriptObfuscator}]); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/package.json b/package.json index 120570b39..928e57543 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "javascript-obfuscator", - "version": "0.20.3", + "version": "0.20.4", "description": "JavaScript obfuscator", "keywords": [ "obfuscator", diff --git a/src/enums/ObfuscationTarget.ts b/src/enums/ObfuscationTarget.ts index 60f6a57c4..691038144 100644 --- a/src/enums/ObfuscationTarget.ts +++ b/src/enums/ObfuscationTarget.ts @@ -1,9 +1,9 @@ import { MakeEnum } from '@gradecam/tsenum'; export const ObfuscationTarget: Readonly<{ - BrowserNoEval: string; - Node: string; - Browser: string; + Browser: 'browser'; + BrowserNoEval: 'browser-no-eval'; + Node: 'node'; }> = MakeEnum({ Browser: 'browser', BrowserNoEval: 'browser-no-eval', diff --git a/src/enums/StringArrayEncoding.ts b/src/enums/StringArrayEncoding.ts index 0af3e3750..9289dc73f 100644 --- a/src/enums/StringArrayEncoding.ts +++ b/src/enums/StringArrayEncoding.ts @@ -1,8 +1,8 @@ import { MakeEnum } from '@gradecam/tsenum'; export const StringArrayEncoding: Readonly<{ - Rc4: string; - Base64: string; + Base64: 'base64'; + Rc4: 'rc4'; }> = MakeEnum({ Base64: 'base64', Rc4: 'rc4' diff --git a/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts b/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts index 383c9b99a..01624e475 100644 --- a/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts +++ b/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts @@ -1,9 +1,9 @@ import { MakeEnum } from '@gradecam/tsenum'; export const IdentifierNamesGenerator: Readonly<{ - MangledIdentifierNamesGenerator: string; - DictionaryIdentifierNamesGenerator: string; - HexadecimalIdentifierNamesGenerator: string; + DictionaryIdentifierNamesGenerator: 'dictionary'; + HexadecimalIdentifierNamesGenerator: 'hexadecimal'; + MangledIdentifierNamesGenerator: 'mangled'; }> = MakeEnum({ DictionaryIdentifierNamesGenerator: 'dictionary', HexadecimalIdentifierNamesGenerator: 'hexadecimal', diff --git a/src/enums/source-map/SourceMapMode.ts b/src/enums/source-map/SourceMapMode.ts index eb70a0318..76da954f7 100644 --- a/src/enums/source-map/SourceMapMode.ts +++ b/src/enums/source-map/SourceMapMode.ts @@ -1,8 +1,8 @@ import { MakeEnum } from '@gradecam/tsenum'; export const SourceMapMode: Readonly<{ - Separate: string; - Inline: string; + Inline: 'inline'; + Separate: 'separate'; }> = MakeEnum({ Inline: 'inline', Separate: 'separate'