diff --git a/CHANGELOG.md b/CHANGELOG.md index 04222e25..8f960b78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ v0.25.0 * Fixed a bunch of conflicts between generated identifier names. Fixed https://github.com/javascript-obfuscator/javascript-obfuscator/issues/550. Fixed https://github.com/javascript-obfuscator/javascript-obfuscator/issues/549 * Prevented transformation of object keys in sequence expression that has `super` call * Support of output directory paths with a dot symbol +* Changed `--output` logic. Now `--output` value can describe if it's a file or a directory path. Check README.md for more info v0.24.6 --- diff --git a/README.md b/README.md index 6b2c28e7..731c2bf7 100644 --- a/README.md +++ b/README.md @@ -212,6 +212,8 @@ Usage: ```sh javascript-obfuscator input_file_name.js [options] javascript-obfuscator input_file_name.js --output output_file_name.js [options] +javascript-obfuscator input_file_name.js --output output_folder_name [options] +javascript-obfuscator input_folder_name --output output_folder_name [options] ``` Obfuscation of single input file with `.js` extension. diff --git a/dist/index.browser.js b/dist/index.browser.js index 103594cc..b14aa836 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=111)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10);t.METADATA_KEY=r;var o=n(113);t.Container=o.Container;var i=n(17);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(129);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(130);t.injectable=s.injectable;var u=n(131);t.tagged=u.tagged;var l=n(132);t.named=l.named;var d=n(70);t.inject=d.inject,t.LazyServiceIdentifer=d.LazyServiceIdentifer;var c=n(133);t.optional=c.optional;var p=n(134);t.unmanaged=p.unmanaged;var g=n(135);t.multiInject=g.multiInject;var h=n(136);t.targetName=h.targetName;var f=n(137);t.postConstruct=f.postConstruct;var m=n(68);t.MetadataReader=m.MetadataReader;var b=n(24);t.id=b.id;var y=n(20);t.decorate=y.decorate;var S=n(73);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var C=n(32);t.getServiceIdentifierAsString=C.getServiceIdentifierAsString;var _=n(138);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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(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(38);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===r.NodeType.AssignmentExpression}static isAssignmentPatternNode(e){return e.type===r.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===r.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===r.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===r.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===r.NodeType.CallExpression}static isClassDeclarationNode(e){return e.type===r.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===r.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===r.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===r.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===r.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return o.isFunctionDeclarationNode(e)||o.isFunctionExpressionNode(e)||o.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===r.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===r.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===r.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===r.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===r.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const n=o.isLabeledStatementNode(t)&&t.label===e,r=o.isContinueStatementNode(t)&&t.label===e,i=o.isBreakStatementNode(t)&&t.label===e;return n||r||i}static isLabeledStatementNode(e){return e.type===r.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===r.NodeType.Literal}static isMemberExpressionNode(e){return e.type===r.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===r.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return o.isProgramNode(e)||o.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return o.isNodeWithLexicalScope(e)||o.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return o.isProgramNode(e)||o.isBlockStatementNode(e)&&o.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return o.isProgramNode(e)||o.isBlockStatementNode(e)||o.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===r.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===r.NodeType.ObjectExpression}static isProgramNode(e){return e.type===r.NodeType.Program}static isPropertyNode(e){return e.type===r.NodeType.Property}static isRestElementNode(e){return e.type===r.NodeType.RestElement}static isReturnStatementNode(e){return e.type===r.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===r.NodeType.SequenceExpression}static isSuperNode(e){return e.type===r.NodeType.Super}static isSwitchCaseNode(e){return e.type===r.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===r.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===r.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===r.NodeType.UnaryExpression}static isUseStrictOperator(e){return o.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===r.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===r.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===r.NodeType.WhileStatement}}t.NodeGuards=o,o.nodesWithLexicalStatements=[r.NodeType.ArrowFunctionExpression,r.NodeType.FunctionDeclaration,r.NodeType.FunctionExpression,r.NodeType.MethodDefinition]},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(57)),i=r(n(7)),a=n(54),s=n(84),u=n(3),l=n(19);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=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),u.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),l.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+o.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return u.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(n=>{if("parentNode"===n)return;const r=e[n];let o;o=null===r||r instanceof RegExp?r:Array.isArray(r)?r.map(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});const r={configurable:!0,enumerable:!0};function o(e,t,n){Reflect.hasMetadata(e,n)||Reflect.defineMetadata(e,t,n)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(n,i)=>{const a=n[e];if(!a||"function"!=typeof a)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return o("_initialized",!1,n),o("_initializablePropertiesSet",new Set,n),o("_wrappedMethodsSet",new Set,n),function(e,t){const n=Object.getOwnPropertyNames(e),o=[t,"constructor"];n.forEach(n=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(o.includes(n)||a.has(n)||s.has(n))return;if("function"!=typeof e[n])return;const u=null!==(i=Object.getOwnPropertyDescriptor(e,n))&&void 0!==i?i:r,l=u.value;Object.defineProperty(e,n,Object.assign(Object.assign({},u),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return l.apply(this,arguments)}})),s.add(n)})}(n,e),function(e,t,n){var o;const i=null!==(o=Object.getOwnPropertyDescriptor(e,t))&&void 0!==o?o:r,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[n],e}}))}(n,e,i),function(e,t){var n;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const o=`_${t.toString()}`,i=null!==(n=Object.getOwnPropertyDescriptor(e,o))&&void 0!==n?n:r;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{get:function(){if(void 0===this[o])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[o]},set:function(e){this[o]=e}})),i}(n,i)}}},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(57)),i=n(38);class a{static programNode(e=[]){return{type:i.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:i.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,n){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,n){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:i.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:i.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:i.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:i.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:i.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:i.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,n){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:n,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:i.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,n){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},n&&{alternate:n}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,n){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,n=!1){return{type:i.NodeType.MemberExpression,computed:n,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,n,r){return{type:i.NodeType.MethodDefinition,key:e,value:t,kind:n,computed:r,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,n=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:n,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:i.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:i.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:i.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,n=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:n,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:i.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:i.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:i.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:i.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,n){!function e(t){"use strict";var r,o,i,a,s,u;function l(e){var t,n,r={};for(t in e)e.hasOwnProperty(t)&&(n=e[t],r[t]="object"==typeof n&&null!==n?l(n):n);return r}function d(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={}},d.prototype.replace=function(e){this.parent[this.key]=e},d.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[d=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],[d,f],"Property",null);else{if(!g(b[f]))continue;o=new c(b[f],[d,f],null,null)}n.push(o)}}else g(b)&&n.push(new c(b,d,null,null))}}else if(o=r.pop(),l=this.__execute(t.leave,o),this.__state===a||l===a)return},p.prototype.replace=function(e,t){var n,r,o,i,l,p,f,m,b,y,S,C,_;function A(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 d(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[_,m],null,new d(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,_,null,new d(o,_)))}}else if(p=r.pop(),void 0!==(l=this.__execute(t.leave,p))&&l!==a&&l!==s&&l!==u&&p.ref.replace(l),this.__state!==u&&l!==u||A(p),this.__state===a||l===a)return C.root;return C.root},t.version=n(141).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}),function(e){e.Initializing="Initializing",e.Preparing="Preparing",e.DeadCodeInjection="DeadCodeInjection",e.ControlFlowFlattening="ControlFlowFlattening",e.Converting="Converting",e.Obfuscating="Obfuscating",e.Finalizing="Finalizing"}(t.TransformationStage||(t.TransformationStage={}))},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t){this.randomGenerator=e,this.options=t}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],u),t.AbstractNodeTransformer=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NAMED_TAG="named",t.NAME_TAG="name",t.UNMANAGED_TAG="unmanaged",t.OPTIONAL_TAG="optional",t.INJECT_TAG="inject",t.MULTI_INJECT_TAG="multi_inject",t.TAGGED="inversify:tagged",t.TAGGED_PROP="inversify:tagged_props",t.PARAM_TYPES="inversify:paramtypes",t.DESIGN_PARAM_TYPES="design:paramtypes",t.POST_CONSTRUCT="post_construct"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",t.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",t.NULL_ARGUMENT="NULL argument",t.KEY_NOT_FOUND="Key Not Found",t.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",t.CANNOT_UNBIND="Could not unbind serviceIdentifier:",t.NOT_REGISTERED="No matching bindings found for serviceIdentifier:",t.MISSING_INJECTABLE_ANNOTATION="Missing required @injectable annotation in:",t.MISSING_INJECT_ANNOTATION="Missing required @inject or @multiInject annotation in:",t.UNDEFINED_INJECT_ANNOTATION=function(e){return"@inject called with undefined this could mean that the class "+e+" has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation."},t.CIRCULAR_DEPENDENCY="Circular dependency found:",t.NOT_IMPLEMENTED="Sorry, this feature is not fully implemented yet.",t.INVALID_BINDING_TYPE="Invalid binding type:",t.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",t.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",t.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!",t.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",t.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",t.ARGUMENTS_LENGTH_MISMATCH=function(){for(var e=[],t=0;t= than the number of constructor arguments of its base class."},t.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",t.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE="Invalid Container option. Default scope must be a string ('singleton' or 'transient').",t.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",t.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",t.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",t.POST_CONSTRUCT_ERROR=function(){for(var e=[],t=0;t=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,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.customCodeHelperFormatter=t,this.randomGenerator=n,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomCodeHelperFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],u),t.AbstractCustomNode=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)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),l=n(204),d=n(205);let c=r=class{constructor(e,t,n,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=n,this.randomGenerator=r,this.options=o}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};c.globalVariableTemplateFunctions=[l.GlobalVariableTemplate1(),d.GlobalVariableTemplate2()],c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),a(1,s.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),a(2,s.inject(u.ServiceIdentifiers.ICustomCodeHelperObfuscator)),a(3,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(4,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object,Object])],c),t.AbstractCustomCodeHelper=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(139),a=n(158),s=n(186),u=n(195),l=n(236),d=n(248),c=n(249),p=n(253),g=n(255),h=n(257),f=n(258),m=n(266),b=n(357),y=n(367),S=n(371),C=n(385),_=n(387),A=n(389),v=n(391),N=n(392),E=n(393);t.InversifyContainerFacade=class{constructor(){this.container=new r.Container}static getFactory(e){return t=>n=>t.container.getNamed(e,n)}static getCacheFactory(e){return t=>{const n=new Map;return r=>{if(n.has(r))return n.get(r);const o=t.container.getNamed(e,r);return n.set(r,o),o}}}static getConstructorFactory(e,...t){return n=>{const r=new Map,o=[];return i=>{if(t.forEach((e,t)=>{o[t]||(o[t]=n.container.get(e))}),r.has(i))return new(r.get(i))(...o);const a=n.container.getNamed(e,i);return r.set(i,a),new a(...o)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,n){this.container.bind(o.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new N.SourceCode(e,t)).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>n).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ILogger).to(_.Logger).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IJavaScriptObfuscator).to(C.JavaScriptObfuscator).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ITransformersRunner).to(E.TransformersRunner).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IObfuscatedCode).to(v.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(A.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(u.customCodeHelpersModule),this.container.load(l.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(c.generatorsModule),this.container.load(p.initializingTransformersModule),this.container.load(g.nodeModule),this.container.load(h.nodeTransformersModule),this.container.load(f.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(b.preparingTransformersModule),this.container.load(y.storagesModule),this.container.load(S.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.BindingScopeEnum={Request:"Request",Singleton:"Singleton",Transient:"Transient"};t.BindingTypeEnum={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};t.TargetTypeEnum={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3);class o{static getParentNodeWithStatements(e){return o.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return o.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return o.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return o.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(r.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 r.NodeGuards.isNodeWithStatements(t)?e:o.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return r.NodeGuards.isNodeWithStatements(t)?t:o.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(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.isProgramNode(e)||r.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&n.push(e),e!==a?o.getParentNodesWithStatementsRecursive(a,t,n,++i):n}static getSiblingStatementByOffset(e,t){const n=o.getScopeOfNode(e),i=r.NodeGuards.isSwitchCaseNode(n)?n.consequent:n.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static set(e,t){var n;e.metadata=Object.assign(null!==(n=e.metadata)&&void 0!==n?n:{},t)}static get(e,t){return void 0!==e.metadata?e.metadata[t]:void 0}static isIgnoredNode(e){return!0===r.get(e,"ignoredNode")}static isReplacedLiteral(e){return!0===r.get(e,"replacedLiteral")}}t.NodeMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10);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 l=a[u];if(Array.isArray(l))for(var d=0,c=l;d1&&r.callsGraph.length?o.getOptimalBlockScope(r.callsGraph,0,--n):r.callee}static insertBefore(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r)}static insertAfter(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r+1)}static insertAtIndex(e,t,n){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e).slice(0,n),...t,...o.getScopeStatements(e).slice(n)])}static prepend(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...t,...o.getScopeStatements(e)])}static getScopeStatements(e){return r.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){r.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});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});var r=0;t.id=function(){return r++}},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(41);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=r,r.hexadecimalPrefix="0x"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=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});var r=n(11);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(/\/+/),l=0,d=u.length-1;d>=0;d--)"."===(a=u[d])?u.splice(d,1):".."===a?l++:l>0&&(""===a?(u.splice(d+1,l),l=0):(u.splice(d,2),l--));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 l(e){return e}function d(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?l:function(e){return d(e)?"$"+e:e},t.fromSetString=u?l:function(e){return d(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}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const n=this.customCodeHelpers.get(e);n&&t(n)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],u),t.AbstractCustomCodeHelperGroup=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(41);t.StringArrayEncoding=r.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(268),o=function(){function e(){this.validationMetadatas=[],this.constraintMetadatas=[]}return Object.defineProperty(e.prototype,"hasValidationMetaData",{get:function(){return!!this.validationMetadatas.length},enumerable:!0,configurable:!0}),e.prototype.addValidationSchema=function(e){var t=this;(new r.ValidationSchemaToMetadataTransformer).transform(e).forEach((function(e){return t.addValidationMetadata(e)}))},e.prototype.addValidationMetadata=function(e){this.validationMetadatas.push(e)},e.prototype.addConstraintMetadata=function(e){this.constraintMetadatas.push(e)},e.prototype.groupByPropertyName=function(e){var t={};return e.forEach((function(e){t[e.propertyName]||(t[e.propertyName]=[]),t[e.propertyName].push(e)})),t},e.prototype.getTargetValidationMetadatas=function(e,t,n){var r=this.validationMetadatas.filter((function(r){return(r.target===e||r.target===t)&&(!!r.always||(!(n&&n.length>0)||r.groups&&!!r.groups.find((function(e){return-1!==n.indexOf(e)}))))})),o=this.validationMetadatas.filter((function(t){return"string"!=typeof t.target&&(t.target!==e&&((!(t.target instanceof Function)||e.prototype instanceof t.target)&&(!!t.always||(!(n&&n.length>0)||t.groups&&!!t.groups.find((function(e){return-1!==n.indexOf(e)}))))))})).filter((function(e){return!r.find((function(t){return t.propertyName===e.propertyName&&t.type===e.type}))}));return r.concat(o)},e.prototype.getTargetValidatorConstraints=function(e){return this.constraintMetadatas.filter((function(t){return t.target===e}))},e}();t.MetadataStorage=o},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ArrayExpression="ArrayExpression",e.ArrayPattern="ArrayPattern",e.ArrowFunctionExpression="ArrowFunctionExpression",e.AssignmentExpression="AssignmentExpression",e.AssignmentPattern="AssignmentPattern",e.AwaitExpression="AwaitExpression",e.BinaryExpression="BinaryExpression",e.BlockStatement="BlockStatement",e.BreakStatement="BreakStatement",e.CallExpression="CallExpression",e.CatchClause="CatchClause",e.ClassDeclaration="ClassDeclaration",e.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,n){"use strict";(function(t){var r=n(148); +!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=111)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10);t.METADATA_KEY=r;var o=n(113);t.Container=o.Container;var i=n(17);t.BindingScopeEnum=i.BindingScopeEnum,t.BindingTypeEnum=i.BindingTypeEnum,t.TargetTypeEnum=i.TargetTypeEnum;var a=n(129);t.AsyncContainerModule=a.AsyncContainerModule,t.ContainerModule=a.ContainerModule;var s=n(130);t.injectable=s.injectable;var u=n(131);t.tagged=u.tagged;var l=n(132);t.named=l.named;var d=n(70);t.inject=d.inject,t.LazyServiceIdentifer=d.LazyServiceIdentifer;var c=n(133);t.optional=c.optional;var p=n(134);t.unmanaged=p.unmanaged;var g=n(135);t.multiInject=g.multiInject;var h=n(136);t.targetName=h.targetName;var f=n(137);t.postConstruct=f.postConstruct;var m=n(68);t.MetadataReader=m.MetadataReader;var b=n(24);t.id=b.id;var y=n(20);t.decorate=y.decorate;var S=n(73);t.traverseAncerstors=S.traverseAncerstors,t.taggedConstraint=S.taggedConstraint,t.namedConstraint=S.namedConstraint,t.typeConstraint=S.typeConstraint;var C=n(32);t.getServiceIdentifierAsString=C.getServiceIdentifierAsString;var _=n(138);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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(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(38);class o{static isArrayPatternNode(e){return e.type===r.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===r.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===r.NodeType.AssignmentExpression}static isAssignmentPatternNode(e){return e.type===r.NodeType.AssignmentPattern}static isAwaitExpressionNode(e){return e.type===r.NodeType.AwaitExpression}static isBlockStatementNode(e){return e.type===r.NodeType.BlockStatement}static isBreakStatementNode(e){return e.type===r.NodeType.BreakStatement}static isCallExpressionNode(e){return e.type===r.NodeType.CallExpression}static isClassDeclarationNode(e){return e.type===r.NodeType.ClassDeclaration&&null!==e.id}static isContinueStatementNode(e){return e.type===r.NodeType.ContinueStatement}static isDirectiveNode(e){return e.type===r.NodeType.ExpressionStatement&&"directive"in e}static isExportNamedDeclarationNode(e){return e.type===r.NodeType.ExportNamedDeclaration}static isExpressionStatementNode(e){return e.type===r.NodeType.ExpressionStatement&&!("directive"in e)}static isFunctionNode(e){return o.isFunctionDeclarationNode(e)||o.isFunctionExpressionNode(e)||o.isArrowFunctionExpressionNode(e)}static isFunctionDeclarationNode(e){return e.type===r.NodeType.FunctionDeclaration&&null!==e.id}static isFunctionExpressionNode(e){return e.type===r.NodeType.FunctionExpression}static isIdentifierNode(e){return e.type===r.NodeType.Identifier}static isImportDeclarationNode(e){return e.type===r.NodeType.ImportDeclaration}static isImportSpecifierNode(e){return e.type===r.NodeType.ImportSpecifier}static isLabelIdentifierNode(e,t){const n=o.isLabeledStatementNode(t)&&t.label===e,r=o.isContinueStatementNode(t)&&t.label===e,i=o.isBreakStatementNode(t)&&t.label===e;return n||r||i}static isLabeledStatementNode(e){return e.type===r.NodeType.LabeledStatement}static isLiteralNode(e){return e.type===r.NodeType.Literal}static isMemberExpressionNode(e){return e.type===r.NodeType.MemberExpression}static isMethodDefinitionNode(e){return e.type===r.NodeType.MethodDefinition}static isNode(e){return e&&void 0!==!e.type}static isNodeWithLexicalScope(e){return o.isProgramNode(e)||o.isFunctionNode(e)}static isNodeWithBlockLexicalScope(e){return o.isNodeWithLexicalScope(e)||o.isBlockStatementNode(e)}static isNodeWithLexicalScopeStatements(e,t){return o.isProgramNode(e)||o.isBlockStatementNode(e)&&o.nodesWithLexicalStatements.includes(t.type)}static isNodeWithStatements(e){return o.isProgramNode(e)||o.isBlockStatementNode(e)||o.isSwitchCaseNode(e)}static isNodeWithComments(e){return Boolean(e.leadingComments)||Boolean(e.trailingComments)}static isObjectPatternNode(e){return e.type===r.NodeType.ObjectPattern}static isObjectExpressionNode(e){return e.type===r.NodeType.ObjectExpression}static isProgramNode(e){return e.type===r.NodeType.Program}static isPropertyNode(e){return e.type===r.NodeType.Property}static isRestElementNode(e){return e.type===r.NodeType.RestElement}static isReturnStatementNode(e){return e.type===r.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===r.NodeType.SequenceExpression}static isSuperNode(e){return e.type===r.NodeType.Super}static isSwitchCaseNode(e){return e.type===r.NodeType.SwitchCase}static isTaggedTemplateExpressionNode(e){return e.type===r.NodeType.TaggedTemplateExpression}static isTemplateLiteralNode(e){return e.type===r.NodeType.TemplateLiteral}static isUnaryExpressionNode(e){return e.type===r.NodeType.UnaryExpression}static isUseStrictOperator(e){return o.isDirectiveNode(e)&&"use strict"===e.directive}static isVariableDeclarationNode(e){return e.type===r.NodeType.VariableDeclaration}static isVariableDeclaratorNode(e){return e.type===r.NodeType.VariableDeclarator}static isWhileStatementNode(e){return e.type===r.NodeType.WhileStatement}}t.NodeGuards=o,o.nodesWithLexicalStatements=[r.NodeType.ArrowFunctionExpression,r.NodeType.FunctionDeclaration,r.NodeType.FunctionExpression,r.NodeType.MethodDefinition]},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(57)),i=r(n(7)),a=n(54),s=n(84),u=n(3),l=n(19);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=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(d.parentizeNode(e,t),u.NodeGuards.isLiteralNode(e)&&d.addXVerbatimPropertyTo(e),l.NodeMetadata.set(e,{ignoredNode:!1}),e)}),t.body}static convertStructureToCode(e){return e.reduce((e,t)=>e+o.generate(t,{sourceMapWithCode:!0}).code,"")}static getUnaryExpressionArgumentNode(e){return u.NodeGuards.isUnaryExpressionNode(e.argument)?d.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:d.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(n=>{if("parentNode"===n)return;const r=e[n];let o;o=null===r||r instanceof RegExp?r:Array.isArray(r)?r.map(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});const r={configurable:!0,enumerable:!0};function o(e,t,n){Reflect.hasMetadata(e,n)||Reflect.defineMetadata(e,t,n)}t.initializable=function(e="initialize"){const t=Object.keys(this)[0];return(n,i)=>{const a=n[e];if(!a||"function"!=typeof a)throw new Error(`\`${e}\` method with initialization logic not `+`found. \`@${t}\` decorator requires \`${e}\` method`);return o("_initialized",!1,n),o("_initializablePropertiesSet",new Set,n),o("_wrappedMethodsSet",new Set,n),function(e,t){const n=Object.getOwnPropertyNames(e),o=[t,"constructor"];n.forEach(n=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(o.includes(n)||a.has(n)||s.has(n))return;if("function"!=typeof e[n])return;const u=null!==(i=Object.getOwnPropertyDescriptor(e,n))&&void 0!==i?i:r,l=u.value;Object.defineProperty(e,n,Object.assign(Object.assign({},u),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return l.apply(this,arguments)}})),s.add(n)})}(n,e),function(e,t,n){var o;const i=null!==(o=Object.getOwnPropertyDescriptor(e,t))&&void 0!==o?o:r,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[n],e}}))}(n,e,i),function(e,t){var n;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const o=`_${t.toString()}`,i=null!==(n=Object.getOwnPropertyDescriptor(e,o))&&void 0!==n?n:r;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{get:function(){if(void 0===this[o])throw new Error(`Property \`${t.toString()}\` is not initialized! Initialize it first!`);return this[o]},set:function(e){this[o]=e}})),i}(n,i)}}},function(e,t,n){"use strict";var r=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const o=r(n(57)),i=n(38);class a{static programNode(e=[]){return{type:i.NodeType.Program,body:e,sourceType:"script",metadata:{ignoredNode:!1}}}static arrayExpressionNode(e=[]){return{type:i.NodeType.ArrayExpression,elements:e,metadata:{ignoredNode:!1}}}static assignmentExpressionNode(e,t,n){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,n){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static blockStatementNode(e=[]){return{type:i.NodeType.BlockStatement,body:e,metadata:{ignoredNode:!1}}}static breakStatement(e){return{type:i.NodeType.BreakStatement,label:e,metadata:{ignoredNode:!1}}}static callExpressionNode(e,t=[]){return{type:i.NodeType.CallExpression,callee:e,arguments:t,metadata:{ignoredNode:!1}}}static continueStatement(e){return{type:i.NodeType.ContinueStatement,label:e,metadata:{ignoredNode:!1}}}static directiveNode(e,t){return{type:i.NodeType.ExpressionStatement,expression:e,directive:t,metadata:{ignoredNode:!1}}}static expressionStatementNode(e){return{type:i.NodeType.ExpressionStatement,expression:e,metadata:{ignoredNode:!1}}}static functionDeclarationNode(e,t,n){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:n,generator:!1,metadata:{ignoredNode:!1}}}static functionExpressionNode(e,t){return{type:i.NodeType.FunctionExpression,params:e,body:t,generator:!1,metadata:{ignoredNode:!1}}}static ifStatementNode(e,t,n){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},n&&{alternate:n}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:o.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,n){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:n,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,n=!1){return{type:i.NodeType.MemberExpression,computed:n,object:e,property:t,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,n=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:n,metadata:{ignoredNode:!1}}}static returnStatementNode(e){return{type:i.NodeType.ReturnStatement,argument:e,metadata:{ignoredNode:!1}}}static switchStatementNode(e,t){return{type:i.NodeType.SwitchStatement,discriminant:e,cases:t,metadata:{ignoredNode:!1}}}static switchCaseNode(e,t){return{type:i.NodeType.SwitchCase,test:e,consequent:t,metadata:{ignoredNode:!1}}}static unaryExpressionNode(e,t,n=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:n,metadata:{ignoredNode:!1}}}static updateExpressionNode(e,t){return{type:i.NodeType.UpdateExpression,operator:e,argument:t,prefix:!1,metadata:{ignoredNode:!1}}}static variableDeclarationNode(e=[],t="var"){return{type:i.NodeType.VariableDeclaration,declarations:e,kind:t,metadata:{ignoredNode:!1}}}static variableDeclaratorNode(e,t){return{type:i.NodeType.VariableDeclarator,id:e,init:t,metadata:{ignoredNode:!1}}}static whileStatementNode(e,t){return{type:i.NodeType.WhileStatement,test:e,body:t,metadata:{ignoredNode:!1}}}}t.NodeFactory=a},function(e,t,n){!function e(t){"use strict";var r,o,i,a,s,u;function l(e){var t,n,r={};for(t in e)e.hasOwnProperty(t)&&(n=e[t],r[t]="object"==typeof n&&null!==n?l(n):n);return r}function d(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={}},d.prototype.replace=function(e){this.parent[this.key]=e},d.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[d=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],[d,f],"Property",null);else{if(!g(b[f]))continue;o=new c(b[f],[d,f],null,null)}n.push(o)}}else g(b)&&n.push(new c(b,d,null,null))}}else if(o=r.pop(),l=this.__execute(t.leave,o),this.__state===a||l===a)return},p.prototype.replace=function(e,t){var n,r,o,i,l,p,f,m,b,y,S,C,_;function A(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 d(y,m));else{if(!g(y[m]))continue;p=new c(y[m],[_,m],null,new d(y,m))}n.push(p)}}else g(y)&&n.push(new c(y,_,null,new d(o,_)))}}else if(p=r.pop(),void 0!==(l=this.__execute(t.leave,p))&&l!==a&&l!==s&&l!==u&&p.ref.replace(l),this.__state!==u&&l!==u||A(p),this.__state===a||l===a)return C.root;return C.root},t.version=n(141).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}),function(e){e.Initializing="Initializing",e.Preparing="Preparing",e.DeadCodeInjection="DeadCodeInjection",e.ControlFlowFlattening="ControlFlowFlattening",e.Converting="Converting",e.Obfuscating="Obfuscating",e.Finalizing="Finalizing"}(t.TransformationStage||(t.TransformationStage={}))},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},i=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=n(1);let u=class{constructor(e,t){this.randomGenerator=e,this.options=t}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(1,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Object,Object])],u),t.AbstractNodeTransformer=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NAMED_TAG="named",t.NAME_TAG="name",t.UNMANAGED_TAG="unmanaged",t.OPTIONAL_TAG="optional",t.INJECT_TAG="inject",t.MULTI_INJECT_TAG="multi_inject",t.TAGGED="inversify:tagged",t.TAGGED_PROP="inversify:tagged_props",t.PARAM_TYPES="inversify:paramtypes",t.DESIGN_PARAM_TYPES="design:paramtypes",t.POST_CONSTRUCT="post_construct"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DUPLICATED_INJECTABLE_DECORATOR="Cannot apply @injectable decorator multiple times.",t.DUPLICATED_METADATA="Metadata key was used more than once in a parameter:",t.NULL_ARGUMENT="NULL argument",t.KEY_NOT_FOUND="Key Not Found",t.AMBIGUOUS_MATCH="Ambiguous match found for serviceIdentifier:",t.CANNOT_UNBIND="Could not unbind serviceIdentifier:",t.NOT_REGISTERED="No matching bindings found for serviceIdentifier:",t.MISSING_INJECTABLE_ANNOTATION="Missing required @injectable annotation in:",t.MISSING_INJECT_ANNOTATION="Missing required @inject or @multiInject annotation in:",t.UNDEFINED_INJECT_ANNOTATION=function(e){return"@inject called with undefined this could mean that the class "+e+" has a circular dependency problem. You can use a LazyServiceIdentifer to overcome this limitation."},t.CIRCULAR_DEPENDENCY="Circular dependency found:",t.NOT_IMPLEMENTED="Sorry, this feature is not fully implemented yet.",t.INVALID_BINDING_TYPE="Invalid binding type:",t.NO_MORE_SNAPSHOTS_AVAILABLE="No snapshot available to restore.",t.INVALID_MIDDLEWARE_RETURN="Invalid return type in middleware. Middleware must return!",t.INVALID_FUNCTION_BINDING="Value provided to function binding must be a function!",t.INVALID_TO_SELF_VALUE="The toSelf function can only be applied when a constructor is used as service identifier",t.INVALID_DECORATOR_OPERATION="The @inject @multiInject @tagged and @named decorators must be applied to the parameters of a class constructor or a class property.",t.ARGUMENTS_LENGTH_MISMATCH=function(){for(var e=[],t=0;t= than the number of constructor arguments of its base class."},t.CONTAINER_OPTIONS_MUST_BE_AN_OBJECT="Invalid Container constructor argument. Container options must be an object.",t.CONTAINER_OPTIONS_INVALID_DEFAULT_SCOPE="Invalid Container option. Default scope must be a string ('singleton' or 'transient').",t.CONTAINER_OPTIONS_INVALID_AUTO_BIND_INJECTABLE="Invalid Container option. Auto bind injectable must be a boolean",t.CONTAINER_OPTIONS_INVALID_SKIP_BASE_CHECK="Invalid Container option. Skip base check must be a boolean",t.MULTIPLE_POST_CONSTRUCT_METHODS="Cannot apply @postConstruct decorator multiple times in the same class",t.POST_CONSTRUCT_ERROR=function(){for(var e=[],t=0;t=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,r){this.cachedNode=null,this.identifierNamesGenerator=e(r),this.customCodeHelperFormatter=t,this.randomGenerator=n,this.options=r}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.ICustomCodeHelperFormatter)),i(2,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(3,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object,Object])],u),t.AbstractCustomNode=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)}};Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),u=n(1),l=n(204),d=n(205);let c=r=class{constructor(e,t,n,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=n,this.randomGenerator=r,this.options=o}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(r.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};c.globalVariableTemplateFunctions=[l.GlobalVariableTemplate1(),d.GlobalVariableTemplate2()],c=r=o([s.injectable(),a(0,s.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),a(1,s.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),a(2,s.inject(u.ServiceIdentifiers.ICustomCodeHelperObfuscator)),a(3,s.inject(u.ServiceIdentifiers.IRandomGenerator)),a(4,s.inject(u.ServiceIdentifiers.IOptions)),i("design:paramtypes",[Function,Object,Object,Object,Object])],c),t.AbstractCustomCodeHelper=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(0),o=n(1),i=n(139),a=n(158),s=n(186),u=n(195),l=n(236),d=n(248),c=n(249),p=n(253),g=n(255),h=n(257),f=n(258),m=n(266),b=n(357),y=n(367),S=n(371),C=n(385),_=n(387),A=n(389),v=n(391),N=n(392),E=n(393);t.InversifyContainerFacade=class{constructor(){this.container=new r.Container}static getFactory(e){return t=>n=>t.container.getNamed(e,n)}static getCacheFactory(e){return t=>{const n=new Map;return r=>{if(n.has(r))return n.get(r);const o=t.container.getNamed(e,r);return n.set(r,o),o}}}static getConstructorFactory(e,...t){return n=>{const r=new Map,o=[];return i=>{if(t.forEach((e,t)=>{o[t]||(o[t]=n.container.get(e))}),r.has(i))return new(r.get(i))(...o);const a=n.container.getNamed(e,i);return r.set(i,a),new a(...o)}}}get(e){return this.container.get(e)}getNamed(e,t){return this.container.getNamed(e,t)}load(e,t,n){this.container.bind(o.ServiceIdentifiers.ISourceCode).toDynamicValue(()=>new N.SourceCode(e,t)).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>n).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ILogger).to(_.Logger).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IJavaScriptObfuscator).to(C.JavaScriptObfuscator).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.ITransformersRunner).to(E.TransformersRunner).inSingletonScope(),this.container.bind(o.ServiceIdentifiers.IObfuscatedCode).to(v.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(A.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(u.customCodeHelpersModule),this.container.load(l.customNodesModule),this.container.load(d.finalizingTransformersModule),this.container.load(c.generatorsModule),this.container.load(p.initializingTransformersModule),this.container.load(g.nodeModule),this.container.load(h.nodeTransformersModule),this.container.load(f.obfuscatingTransformersModule),this.container.load(m.optionsModule),this.container.load(b.preparingTransformersModule),this.container.load(y.storagesModule),this.container.load(S.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.BindingScopeEnum={Request:"Request",Singleton:"Singleton",Transient:"Transient"};t.BindingTypeEnum={ConstantValue:"ConstantValue",Constructor:"Constructor",DynamicValue:"DynamicValue",Factory:"Factory",Function:"Function",Instance:"Instance",Invalid:"Invalid",Provider:"Provider"};t.TargetTypeEnum={ClassProperty:"ClassProperty",ConstructorArgument:"ConstructorArgument",Variable:"Variable"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3);class o{static getParentNodeWithStatements(e){return o.getParentNodesWithStatementsRecursive(e,1)[0]}static getParentNodesWithStatements(e){return o.getParentNodesWithStatementsRecursive(e)}static getNextSiblingStatement(e){return o.getSiblingStatementByOffset(e,1)}static getPreviousSiblingStatement(e){return o.getSiblingStatementByOffset(e,-1)}static getRootStatementOfNode(e){if(r.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 r.NodeGuards.isNodeWithStatements(t)?e:o.getRootStatementOfNode(t)}static getScopeOfNode(e){const t=e.parentNode;if(!t)throw new ReferenceError("`parentNode` property of given node is `undefined`");return r.NodeGuards.isNodeWithStatements(t)?t:o.getScopeOfNode(t)}static getParentNodesWithStatementsRecursive(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.isProgramNode(e)||r.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&n.push(e),e!==a?o.getParentNodesWithStatementsRecursive(a,t,n,++i):n}static getSiblingStatementByOffset(e,t){const n=o.getScopeOfNode(e),i=r.NodeGuards.isSwitchCaseNode(n)?n.consequent:n.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static set(e,t){var n;e.metadata=Object.assign(null!==(n=e.metadata)&&void 0!==n?n:{},t)}static get(e,t){return void 0!==e.metadata?e.metadata[t]:void 0}static isIgnoredNode(e){return!0===r.get(e,"ignoredNode")}static isReplacedLiteral(e){return!0===r.get(e,"replacedLiteral")}}t.NodeMetadata=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10);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 l=a[u];if(Array.isArray(l))for(var d=0,c=l;d1&&r.callsGraph.length?o.getOptimalBlockScope(r.callsGraph,0,--n):r.callee}static insertBefore(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r)}static insertAfter(e,t,n){const r=o.getScopeStatements(e).indexOf(n);o.insertAtIndex(e,t,r+1)}static insertAtIndex(e,t,n){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...o.getScopeStatements(e).slice(0,n),...t,...o.getScopeStatements(e).slice(n)])}static prepend(e,t){t=o.parentizeScopeStatementsBeforeAppend(e,t),o.setScopeStatements(e,[...t,...o.getScopeStatements(e)])}static getScopeStatements(e){return r.NodeGuards.isSwitchCaseNode(e)?e.consequent:e.body}static parentizeScopeStatementsBeforeAppend(e,t){return t.forEach(t=>{t.parentNode=e}),t}static setScopeStatements(e,t){r.NodeGuards.isSwitchCaseNode(e)?e.consequent=t:e.body=t}}t.NodeAppender=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});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});var r=0;t.id=function(){return r++}},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(41);t.ObfuscationTarget=r.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;for(var n in t)void 0===e[n]&&(e[n]=t[n]);return e},e.exports=t.default,e.exports.default=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=r,r.hexadecimalPrefix="0x"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=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});var r=n(11);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(/\/+/),l=0,d=u.length-1;d>=0;d--)"."===(a=u[d])?u.splice(d,1):".."===a?l++:l>0&&(""===a?(u.splice(d+1,l),l=0):(u.splice(d,2),l--));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 l(e){return e}function d(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?l:function(e){return d(e)?"$"+e:e},t.fromSetString=u?l:function(e){return d(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}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const n=this.customCodeHelpers.get(e);n&&t(n)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};u=r([a.injectable(),i(0,a.inject(s.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),i(1,a.inject(s.ServiceIdentifiers.IRandomGenerator)),i(2,a.inject(s.ServiceIdentifiers.IOptions)),o("design:paramtypes",[Function,Object,Object])],u),t.AbstractCustomCodeHelperGroup=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(41);t.StringArrayEncoding=r.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(268),o=function(){function e(){this.validationMetadatas=[],this.constraintMetadatas=[]}return Object.defineProperty(e.prototype,"hasValidationMetaData",{get:function(){return!!this.validationMetadatas.length},enumerable:!0,configurable:!0}),e.prototype.addValidationSchema=function(e){var t=this;(new r.ValidationSchemaToMetadataTransformer).transform(e).forEach((function(e){return t.addValidationMetadata(e)}))},e.prototype.addValidationMetadata=function(e){this.validationMetadatas.push(e)},e.prototype.addConstraintMetadata=function(e){this.constraintMetadatas.push(e)},e.prototype.groupByPropertyName=function(e){var t={};return e.forEach((function(e){t[e.propertyName]||(t[e.propertyName]=[]),t[e.propertyName].push(e)})),t},e.prototype.getTargetValidationMetadatas=function(e,t,n){var r=this.validationMetadatas.filter((function(r){return(r.target===e||r.target===t)&&(!!r.always||(!(n&&n.length>0)||r.groups&&!!r.groups.find((function(e){return-1!==n.indexOf(e)}))))})),o=this.validationMetadatas.filter((function(t){return"string"!=typeof t.target&&(t.target!==e&&((!(t.target instanceof Function)||e.prototype instanceof t.target)&&(!!t.always||(!(n&&n.length>0)||t.groups&&!!t.groups.find((function(e){return-1!==n.indexOf(e)}))))))})).filter((function(e){return!r.find((function(t){return t.propertyName===e.propertyName&&t.type===e.type}))}));return r.concat(o)},e.prototype.getTargetValidatorConstraints=function(e){return this.constraintMetadatas.filter((function(t){return t.target===e}))},e}();t.MetadataStorage=o},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ArrayExpression="ArrayExpression",e.ArrayPattern="ArrayPattern",e.ArrowFunctionExpression="ArrowFunctionExpression",e.AssignmentExpression="AssignmentExpression",e.AssignmentPattern="AssignmentPattern",e.AwaitExpression="AwaitExpression",e.BinaryExpression="BinaryExpression",e.BlockStatement="BlockStatement",e.BreakStatement="BreakStatement",e.CallExpression="CallExpression",e.CatchClause="CatchClause",e.ClassDeclaration="ClassDeclaration",e.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,n){"use strict";(function(t){var r=n(148); /*! * The buffer module from node.js, for the browser. * @@ -42,7 +42,7 @@ MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ -var n;!function(n){!function(r){var o="object"==typeof t?t:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),i=a(n);function a(e,t){return function(n,r){"function"!=typeof e[n]&&Object.defineProperty(e,n,{configurable:!0,writable:!0,value:r}),t&&t(n,r)}}void 0===o.Reflect?o.Reflect=n:i=a(o.Reflect,i),function(t){var n=Object.prototype.hasOwnProperty,r="function"==typeof Symbol,o=r&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",i=r&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",a="function"==typeof Object.create,s={__proto__:[]}instanceof Array,u=!a&&!s,l={create:a?function(){return R(Object.create(null))}:s?function(){return R({__proto__:null})}:function(){return R({})},has:u?function(e,t){return n.call(e,t)}:function(e,t){return t in e},get:u?function(e,t){return n.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},d=Object.getPrototypeOf(Function),c="object"==typeof e&&e.env&&"true"===e.env.REFLECT_METADATA_USE_MAP_POLYFILL,p=c||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?function(){var e={},t=[],n=function(){function e(e,t,n){this._index=0,this._keys=e,this._values=t,this._selector=n}return e.prototype["@@iterator"]=function(){return this},e.prototype[i]=function(){return this},e.prototype.next=function(){var e=this._index;if(e>=0&&e=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:n,done:!1}}return{value:void 0,done:!0}},e.prototype.throw=function(e){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),e},e.prototype.return=function(e){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:e,done:!0}},e}();return function(){function t(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),t.prototype.has=function(e){return this._find(e,!1)>=0},t.prototype.get=function(e){var t=this._find(e,!1);return t>=0?this._values[t]:void 0},t.prototype.set=function(e,t){var n=this._find(e,!0);return this._values[n]=t,this},t.prototype.delete=function(t){var n=this._find(t,!1);if(n>=0){for(var r=this._keys.length,o=n+1;o=0;--n){var r=(0,e[n])(t);if(!_(r)&&!A(r)){if(!D(r))throw new TypeError;t=r}}return t}(e,t)}if(!T(e))throw new TypeError;if(!v(t))throw new TypeError;if(!v(r)&&!_(r)&&!A(r))throw new TypeError;return A(r)&&(r=void 0),function(e,t,n,r){for(var o=e.length-1;o>=0;--o){var i=(0,e[o])(t,n,r);if(!_(i)&&!A(i)){if(!v(i))throw new TypeError;r=i}}return r}(e,t,n=E(n),r)})),t("metadata",(function(e,t){return function(n,r){if(!v(n))throw new TypeError;if(!_(r)&&!function(e){switch(C(e)){case 3:case 4:return!0;default:return!1}}(r))throw new TypeError;y(e,t,n,r)}})),t("defineMetadata",(function(e,t,n,r){if(!v(n))throw new TypeError;return _(r)||(r=E(r)),y(e,t,n,r)})),t("hasMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return!0;var o=F(n);return!A(o)&&e(t,o,r)}(e,t,n)})),t("hasOwnMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),m(e,t,n)})),t("getMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return b(t,n,r);var o=F(n);return A(o)?void 0:e(t,o,r)}(e,t,n)})),t("getOwnMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),b(e,t,n)})),t("getMetadataKeys",(function(e,t){if(!v(e))throw new TypeError;return _(t)||(t=E(t)),function e(t,n){var r=S(t,n),o=F(t);if(null===o)return r;var i=e(o,n);if(i.length<=0)return r;if(r.length<=0)return i;for(var a=new g,s=[],u=0,l=r;u0)return!0;var o=h.get(t);return o.delete(n),o.size>0||(h.delete(t),!0)}))}(i)}()}(n||(n={}))}).call(this,n(49),n(37))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?o(e.value):new n((function(t){t(e.value)})).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=r[2&i[0]?"return":i[0]?"throw":"next"])&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[0,o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?g.length:n.length),f=function e(t,n){for(var r=t.getPropertiesMetadata(n),o=[],a=Object.keys(r),s=0,l=a;s0?d:e(t,r)}return 0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.str=e}return e.prototype.startsWith=function(e){return 0===this.str.indexOf(e)},e.prototype.endsWith=function(e){var t,n=e.split("").reverse().join("");return t=this.str.split("").reverse().join(""),this.startsWith.call({str:t},n)},e.prototype.contains=function(e){return-1!==this.str.indexOf(e)},e.prototype.equals=function(e){return this.str===e},e.prototype.value=function(){return this.str},e}();t.QueryableString=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(24),o=function(){function e(e,t,n,o,i){this.id=r.id(),this.serviceIdentifier=e,this.parentContext=t,this.parentRequest=n,this.target=i,this.childRequests=[],this.bindings=Array.isArray(o)?o:[o],this.requestScope=null===n?new Map:null}return e.prototype.addChildRequest=function(t,n,r){var o=new e(t,this.parentContext,this,n,r);return this.childRequests.push(o),o},e}();t.Request=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(69),a=n(32),s=n(123),u=function(e,t,n){try{return n()}catch(n){throw i.isStackOverflowExeption(n)?new Error(r.CIRCULAR_DEPENDENCY_IN_FACTORY(e,t.toString())):n}},l=function(e){return function(t){t.parentContext.setCurrentRequest(t);var n=t.bindings,i=t.childRequests,d=t.target&&t.target.isArray(),c=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(d&&c)return i.map((function(t){return l(e)(t)}));var p=null;if(!t.target.isOptional()||0!==n.length){var g=n[0],h=g.scope===o.BindingScopeEnum.Singleton,f=g.scope===o.BindingScopeEnum.Request;if(h&&g.activated)return g.cache;if(f&&null!==e&&e.has(g.id))return e.get(g.id);if(g.type===o.BindingTypeEnum.ConstantValue)p=g.cache;else if(g.type===o.BindingTypeEnum.Function)p=g.cache;else if(g.type===o.BindingTypeEnum.Constructor)p=g.implementationType;else if(g.type===o.BindingTypeEnum.DynamicValue&&null!==g.dynamicValue)p=u("toDynamicValue",g.serviceIdentifier,(function(){return g.dynamicValue(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Factory&&null!==g.factory)p=u("toFactory",g.serviceIdentifier,(function(){return g.factory(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Provider&&null!==g.provider)p=u("toProvider",g.serviceIdentifier,(function(){return g.provider(t.parentContext)}));else{if(g.type!==o.BindingTypeEnum.Instance||null===g.implementationType){var m=a.getServiceIdentifierAsString(t.serviceIdentifier);throw new Error(r.INVALID_BINDING_TYPE+" "+m)}p=s.resolveInstance(g.implementationType,i,l(e))}return"function"==typeof g.onActivation&&(p=g.onActivation(t.parentContext,p)),h&&(g.cache=p,g.activated=!0),f&&null!==e&&!e.has(g.id)&&e.set(g.id,p),p}}};t.resolve=function(e){return l(e.plan.rootRequest.requestScope)(e.plan.rootRequest)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(10);t.resolveInstance=function(e,t,n){var a,s,u=null;if(t.length>0){var l=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ConstructorArgument})).map(n);s=l,u=function(e,t,n){var r=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ClassProperty})),i=r.map(n);return r.forEach((function(t,n){var r;r=t.target.name.value();var o=i[n];e[r]=o})),e}(u=new((a=e).bind.apply(a,[void 0].concat(s))),t,n)}else u=new e;return function(e,t){if(Reflect.hasMetadata(i.POST_CONSTRUCT,e)){var n=Reflect.getMetadata(i.POST_CONSTRUCT,e);try{t[n.value]()}catch(t){throw new Error(r.POST_CONSTRUCT_ERROR(e.name,t.message))}}}(e,u),u}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(125),a=n(72),s=function(){function e(e){this._binding=e}return e.prototype.to=function(e){return this._binding.type=o.BindingTypeEnum.Instance,this._binding.implementationType=e,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toSelf=function(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error(""+r.INVALID_TO_SELF_VALUE);var e=this._binding.serviceIdentifier;return this.to(e)},e.prototype.toConstantValue=function(e){return this._binding.type=o.BindingTypeEnum.ConstantValue,this._binding.cache=e,this._binding.dynamicValue=null,this._binding.implementationType=null,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toDynamicValue=function(e){return this._binding.type=o.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=e,this._binding.implementationType=null,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toConstructor=function(e){return this._binding.type=o.BindingTypeEnum.Constructor,this._binding.implementationType=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFunction=function(e){if("function"!=typeof e)throw new Error(r.INVALID_FUNCTION_BINDING);var t=this.toConstantValue(e);return this._binding.type=o.BindingTypeEnum.Function,t},e.prototype.toAutoFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=function(t){return function(){return t.container.get(e)}},new a.BindingWhenOnSyntax(this._binding)},e.prototype.toProvider=function(e){return this._binding.type=o.BindingTypeEnum.Provider,this._binding.provider=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toService=function(e){this.toDynamicValue((function(t){return t.container.get(e)}))},e}();t.BindingToSyntax=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(126),o=n(50),i=n(51),a=function(){function e(e){this._binding=e,this._bindingWhenSyntax=new i.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new o.BindingOnSyntax(this._binding),this._bindingInSyntax=new r.BindingInSyntax(e)}return e.prototype.inRequestScope=function(){return this._bindingInSyntax.inRequestScope()},e.prototype.inSingletonScope=function(){return this._bindingInSyntax.inSingletonScope()},e.prototype.inTransientScope=function(){return this._bindingInSyntax.inTransientScope()},e.prototype.when=function(e){return this._bindingWhenSyntax.when(e)},e.prototype.whenTargetNamed=function(e){return this._bindingWhenSyntax.whenTargetNamed(e)},e.prototype.whenTargetIsDefault=function(){return this._bindingWhenSyntax.whenTargetIsDefault()},e.prototype.whenTargetTagged=function(e,t){return this._bindingWhenSyntax.whenTargetTagged(e,t)},e.prototype.whenInjectedInto=function(e){return this._bindingWhenSyntax.whenInjectedInto(e)},e.prototype.whenParentNamed=function(e){return this._bindingWhenSyntax.whenParentNamed(e)},e.prototype.whenParentTagged=function(e,t){return this._bindingWhenSyntax.whenParentTagged(e,t)},e.prototype.whenAnyAncestorIs=function(e){return this._bindingWhenSyntax.whenAnyAncestorIs(e)},e.prototype.whenNoAncestorIs=function(e){return this._bindingWhenSyntax.whenNoAncestorIs(e)},e.prototype.whenAnyAncestorNamed=function(e){return this._bindingWhenSyntax.whenAnyAncestorNamed(e)},e.prototype.whenAnyAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(e,t)},e.prototype.whenNoAncestorNamed=function(e){return this._bindingWhenSyntax.whenNoAncestorNamed(e)},e.prototype.whenNoAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenNoAncestorTagged(e,t)},e.prototype.whenAnyAncestorMatches=function(e){return this._bindingWhenSyntax.whenAnyAncestorMatches(e)},e.prototype.whenNoAncestorMatches=function(e){return this._bindingWhenSyntax.whenNoAncestorMatches(e)},e.prototype.onActivation=function(e){return this._bindingOnSyntax.onActivation(e)},e}();t.BindingInWhenOnSyntax=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=n(72),i=function(){function e(e){this._binding=e}return e.prototype.inRequestScope=function(){return this._binding.scope=r.BindingScopeEnum.Request,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inSingletonScope=function(){return this._binding.scope=r.BindingScopeEnum.Singleton,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inTransientScope=function(){return this._binding.scope=r.BindingScopeEnum.Transient,new o.BindingWhenOnSyntax(this._binding)},e}();t.BindingInSyntax=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.of=function(t,n){var r=new e;return r.bindings=t,r.middleware=n,r},e}();t.ContainerSnapshot=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=function(){function e(){this._map=new Map}return e.prototype.getMap=function(){return this._map},e.prototype.add=function(e,t){if(null==e)throw new Error(r.NULL_ARGUMENT);if(null==t)throw new Error(r.NULL_ARGUMENT);var n=this._map.get(e);void 0!==n?(n.push(t),this._map.set(e,n)):this._map.set(e,[t])},e.prototype.get=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);var t=this._map.get(e);if(void 0!==t)return t;throw new Error(r.KEY_NOT_FOUND)},e.prototype.remove=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);if(!this._map.delete(e))throw new Error(r.KEY_NOT_FOUND)},e.prototype.removeByCondition=function(e){var t=this;this._map.forEach((function(n,r){var o=n.filter((function(t){return!e(t)}));o.length>0?t._map.set(r,o):t._map.delete(r)}))},e.prototype.hasKey=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);return this._map.has(e)},e.prototype.clone=function(){var t=new e;return this._map.forEach((function(e,n){e.forEach((function(e){return t.add(n,e.clone())}))})),t},e.prototype.traverse=function(e){this._map.forEach((function(t,n){e(n,t)}))},e}();t.Lookup=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(24),o=function(e){this.id=r.id(),this.registry=e};t.ContainerModule=o;var i=function(e){this.id=r.id(),this.registry=e};t.AsyncContainerModule=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10);t.injectable=function(){return function(e){if(Reflect.hasOwnMetadata(o.PARAM_TYPES,e))throw new Error(r.DUPLICATED_INJECTABLE_DECORATOR);var t=Reflect.getMetadata(o.DESIGN_PARAM_TYPES,e)||[];return Reflect.defineMetadata(o.PARAM_TYPES,t,e),e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(13),o=n(20);t.tagged=function(e,t){return function(n,i,a){var s=new r.Metadata(e,t);"number"==typeof a?o.tagParameter(n,i,a,s):o.tagProperty(n,i,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.named=function(e){return function(t,n,a){var s=new o.Metadata(r.NAMED_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.optional=function(){return function(e,t,n){var a=new o.Metadata(r.OPTIONAL_TAG,!0);"number"==typeof n?i.tagParameter(e,t,n,a):i.tagProperty(e,t,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.unmanaged=function(){return function(e,t,n){var a=new o.Metadata(r.UNMANAGED_TAG,!0);i.tagParameter(e,t,n,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.multiInject=function(e){return function(t,n,a){var s=new o.Metadata(r.MULTI_INJECT_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.targetName=function(e){return function(t,n,a){var s=new o.Metadata(r.NAME_TAG,e);i.tagParameter(t,n,a,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10),i=n(13);t.postConstruct=function(){return function(e,t,n){var a=new i.Metadata(o.POST_CONSTRUCT,t);if(Reflect.hasOwnMetadata(o.POST_CONSTRUCT,e.constructor))throw new Error(r.MULTIPLE_POST_CONSTRUCT_METHODS);Reflect.defineMetadata(o.POST_CONSTRUCT,a,e.constructor)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.multiBindToService=function(e){return function(t){return function(){for(var n=[],r=0;r{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(c.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(p.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(g.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(u.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),l=n(1),d=s(n(7)),c=n(74),p=n(3),g=n(18);let h=r=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,n=r.limitThresholdActivationLength-1;let o=t;return t>n&&(o=Math.round(n+t*r.limitThreshold),o>t&&(o=t)),o}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=r.getLimitIndex(e.length),n=[],o=e.length;for(let r=0;rt);r++){const t=e[r];d.traverse(t,{enter:r=>{if(p.NodeGuards.isCallExpressionNode(r))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(r)?d.VisitorOption.Skip:void this.analyzeCallExpressionNode(n,e,r)}})}return n}analyzeCallExpressionNode(e,t,n){r.calleeDataExtractorsList.forEach(r=>{const o=this.calleeDataExtractorFactory(r).extract(t,n.callee);o&&e.push(Object.assign(Object.assign({},o),{callsGraph:this.analyzeRecursive(o.callee.body)}))})}};h.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],h.limitThresholdActivationLength=25,h.limitThreshold=.002,h=r=o([u.injectable(),a(0,u.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),i("design:paramtypes",[Function])],h),t.CallsGraphAnalyzer=h},function(e){e.exports=JSON.parse('{"name":"estraverse","description":"ECMAScript JS AST traversal functions","homepage":"https://github.com/estools/estraverse","main":"estraverse.js","version":"4.3.0","engines":{"node":">=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"http://github.com/Constellation"}],"repository":{"type":"git","url":"http://github.com/estools/estraverse.git"},"devDependencies":{"babel-preset-env":"^1.6.1","babel-register":"^6.3.13","chai":"^2.1.1","espree":"^1.11.0","gulp":"^3.8.10","gulp-bump":"^0.2.2","gulp-filter":"^2.0.0","gulp-git":"^1.0.1","gulp-tag-version":"^1.3.0","jshint":"^2.5.6","mocha":"^2.1.0"},"license":"BSD-2-Clause","scripts":{"test":"npm run-script lint && npm run-script unit-test","lint":"jshint estraverse.js","unit-test":"mocha --compilers js:babel-register"}}')},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(52),u=n(3),l=n(18);let d=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!u.NodeGuards.isIdentifierNode(t))return null;const n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return n?{callee:n,name:t.name}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:e=>{if(u.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};d=r([i.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(52),u=n(3),l=n(18);let d=class extends s.AbstractCalleeDataExtractor{extract(e,t){var n;let r=null;return u.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),u.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:null!==(n=t.name)&&void 0!==n?n:null}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:(e,r)=>{if(u.NodeGuards.isFunctionExpressionNode(e)&&r&&u.NodeGuards.isVariableDeclaratorNode(r)&&u.NodeGuards.isIdentifierNode(r.id)&&r.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};d=r([i.injectable()],d),t.FunctionExpressionCalleeDataExtractor=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.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(7)),u=n(52),l=n(3),d=n(18);let c=r=class extends u.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const n=l.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,r=l.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return n||r}extract(e,t){if(!l.NodeGuards.isMemberExpressionNode(t))return null;const n=this.createObjectMembersCallsChain([],t);if(!n.length)return null;const r=n[n.length-1],o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),n);return o?{callee:o,name:r}:null}createObjectMembersCallsChain(e,t){if(l.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!l.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return l.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(l.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;let r=null;return s.traverse(e,{enter:e=>{if(l.NodeGuards.isVariableDeclaratorNode(e)&&l.NodeGuards.isIdentifierNode(e.id)&&e.init&&l.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===n)return r=this.findCalleeBlockStatement(e.init.properties,t),s.VisitorOption.Break}}),r}findCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;for(const o of e)if(r.isValidTargetPropertyNode(o,n)){if(l.NodeGuards.isObjectExpressionNode(o.value))return this.findCalleeBlockStatement(o.value.properties,t);if(l.NodeGuards.isFunctionExpressionNode(o.value))return o.value.body}return null}};c=r=o([a.injectable()],c),t.ObjectExpressionCalleeDataExtractor=c},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),l=n(1),d=s(n(7)),c=n(3);let p=r=class{constructor(e){this.prevailingKindOfVariables=r.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const n=[];d.traverse(e,{enter:e=>{c.NodeGuards.isVariableDeclarationNode(e)&&n.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(n))&&void 0!==t?t:r.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};p.defaultKindOfVariables="var",p=r=o([u.injectable(),a(0,u.inject(l.ServiceIdentifiers.IArrayUtils)),i("design:paramtypes",[Object])],p),t.PrevailingKindOfVariablesAnalyzer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(147)),u=i(n(7)),l=n(54),d=n(3);let c=r=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){u.replace(e,{enter:e=>(e.range||(e.range=[r.emptyRangeValue,r.emptyRangeValue]),e)})}static isRootNode(e){return d.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=r.sourceTypes.length;r.attachMissingRanges(e);for(let n=0;n{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],n=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==n||n.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};c.eslintScopeOptions={ecmaVersion:l.ecmaVersion,optimistic:!0},c.sourceTypes=["script","module"],c.emptyRangeValue=0,c=r=o([a.injectable()],c),t.ScopeAnalyzer=c},function(e,t,n){"use strict";const r=n(39),o=n(152),i=n(153),a=n(53),s=n(40),u=n(75).Scope,l=n(156).version;e.exports={version:l,Reference:a,Variable:s,Scope:u,ScopeManager:o,analyze:function(e,t){const n=function e(t,n){function r(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof Array)&&!(e instanceof RegExp)}for(const o in n)if(Object.prototype.hasOwnProperty.call(n,o)){const i=n[o];r(i)?r(t[o])?e(t[o],i):t[o]=e({},i):t[o]=i}return t}({optimistic:!1,directive:!1,nodejsScope:!1,impliedStrict:!1,sourceType:"script",ecmaVersion:5,childVisitorKeys:null,fallback:"iteration"},t),a=new o(n);return new i(n,a).visit(e),r(null===a.__currentScope,"currentScope should be null."),a}}},function(e,t,n){"use strict"; +var n;!function(n){!function(r){var o="object"==typeof t?t:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),i=a(n);function a(e,t){return function(n,r){"function"!=typeof e[n]&&Object.defineProperty(e,n,{configurable:!0,writable:!0,value:r}),t&&t(n,r)}}void 0===o.Reflect?o.Reflect=n:i=a(o.Reflect,i),function(t){var n=Object.prototype.hasOwnProperty,r="function"==typeof Symbol,o=r&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",i=r&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",a="function"==typeof Object.create,s={__proto__:[]}instanceof Array,u=!a&&!s,l={create:a?function(){return R(Object.create(null))}:s?function(){return R({__proto__:null})}:function(){return R({})},has:u?function(e,t){return n.call(e,t)}:function(e,t){return t in e},get:u?function(e,t){return n.call(e,t)?e[t]:void 0}:function(e,t){return e[t]}},d=Object.getPrototypeOf(Function),c="object"==typeof e&&e.env&&"true"===e.env.REFLECT_METADATA_USE_MAP_POLYFILL,p=c||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?function(){var e={},t=[],n=function(){function e(e,t,n){this._index=0,this._keys=e,this._values=t,this._selector=n}return e.prototype["@@iterator"]=function(){return this},e.prototype[i]=function(){return this},e.prototype.next=function(){var e=this._index;if(e>=0&&e=this._keys.length?(this._index=-1,this._keys=t,this._values=t):this._index++,{value:n,done:!1}}return{value:void 0,done:!0}},e.prototype.throw=function(e){throw this._index>=0&&(this._index=-1,this._keys=t,this._values=t),e},e.prototype.return=function(e){return this._index>=0&&(this._index=-1,this._keys=t,this._values=t),{value:e,done:!0}},e}();return function(){function t(){this._keys=[],this._values=[],this._cacheKey=e,this._cacheIndex=-2}return Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),t.prototype.has=function(e){return this._find(e,!1)>=0},t.prototype.get=function(e){var t=this._find(e,!1);return t>=0?this._values[t]:void 0},t.prototype.set=function(e,t){var n=this._find(e,!0);return this._values[n]=t,this},t.prototype.delete=function(t){var n=this._find(t,!1);if(n>=0){for(var r=this._keys.length,o=n+1;o=0;--n){var r=(0,e[n])(t);if(!_(r)&&!A(r)){if(!D(r))throw new TypeError;t=r}}return t}(e,t)}if(!T(e))throw new TypeError;if(!v(t))throw new TypeError;if(!v(r)&&!_(r)&&!A(r))throw new TypeError;return A(r)&&(r=void 0),function(e,t,n,r){for(var o=e.length-1;o>=0;--o){var i=(0,e[o])(t,n,r);if(!_(i)&&!A(i)){if(!v(i))throw new TypeError;r=i}}return r}(e,t,n=E(n),r)})),t("metadata",(function(e,t){return function(n,r){if(!v(n))throw new TypeError;if(!_(r)&&!function(e){switch(C(e)){case 3:case 4:return!0;default:return!1}}(r))throw new TypeError;y(e,t,n,r)}})),t("defineMetadata",(function(e,t,n,r){if(!v(n))throw new TypeError;return _(r)||(r=E(r)),y(e,t,n,r)})),t("hasMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return!0;var o=F(n);return!A(o)&&e(t,o,r)}(e,t,n)})),t("hasOwnMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),m(e,t,n)})),t("getMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),function e(t,n,r){if(m(t,n,r))return b(t,n,r);var o=F(n);return A(o)?void 0:e(t,o,r)}(e,t,n)})),t("getOwnMetadata",(function(e,t,n){if(!v(t))throw new TypeError;return _(n)||(n=E(n)),b(e,t,n)})),t("getMetadataKeys",(function(e,t){if(!v(e))throw new TypeError;return _(t)||(t=E(t)),function e(t,n){var r=S(t,n),o=F(t);if(null===o)return r;var i=e(o,n);if(i.length<=0)return r;if(r.length<=0)return i;for(var a=new g,s=[],u=0,l=r;u0)return!0;var o=h.get(t);return o.delete(n),o.size>0||(h.delete(t),!0)}))}(i)}()}(n||(n={}))}).call(this,n(49),n(37))},function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{u(r.next(e))}catch(e){i(e)}}function s(e){try{u(r.throw(e))}catch(e){i(e)}}function u(e){e.done?o(e.value):new n((function(t){t(e.value)})).then(a,s)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=r[2&i[0]?"return":i[0]?"throw":"next"])&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[0,o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0?g.length:n.length),f=function e(t,n){for(var r=t.getPropertiesMetadata(n),o=[],a=Object.keys(r),s=0,l=a;s0?d:e(t,r)}return 0}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e){this.str=e}return e.prototype.startsWith=function(e){return 0===this.str.indexOf(e)},e.prototype.endsWith=function(e){var t,n=e.split("").reverse().join("");return t=this.str.split("").reverse().join(""),this.startsWith.call({str:t},n)},e.prototype.contains=function(e){return-1!==this.str.indexOf(e)},e.prototype.equals=function(e){return this.str===e},e.prototype.value=function(){return this.str},e}();t.QueryableString=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(24),o=function(){function e(e,t,n,o,i){this.id=r.id(),this.serviceIdentifier=e,this.parentContext=t,this.parentRequest=n,this.target=i,this.childRequests=[],this.bindings=Array.isArray(o)?o:[o],this.requestScope=null===n?new Map:null}return e.prototype.addChildRequest=function(t,n,r){var o=new e(t,this.parentContext,this,n,r);return this.childRequests.push(o),o},e}();t.Request=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(69),a=n(32),s=n(123),u=function(e,t,n){try{return n()}catch(n){throw i.isStackOverflowExeption(n)?new Error(r.CIRCULAR_DEPENDENCY_IN_FACTORY(e,t.toString())):n}},l=function(e){return function(t){t.parentContext.setCurrentRequest(t);var n=t.bindings,i=t.childRequests,d=t.target&&t.target.isArray(),c=!(t.parentRequest&&t.parentRequest.target&&t.target&&t.parentRequest.target.matchesArray(t.target.serviceIdentifier));if(d&&c)return i.map((function(t){return l(e)(t)}));var p=null;if(!t.target.isOptional()||0!==n.length){var g=n[0],h=g.scope===o.BindingScopeEnum.Singleton,f=g.scope===o.BindingScopeEnum.Request;if(h&&g.activated)return g.cache;if(f&&null!==e&&e.has(g.id))return e.get(g.id);if(g.type===o.BindingTypeEnum.ConstantValue)p=g.cache;else if(g.type===o.BindingTypeEnum.Function)p=g.cache;else if(g.type===o.BindingTypeEnum.Constructor)p=g.implementationType;else if(g.type===o.BindingTypeEnum.DynamicValue&&null!==g.dynamicValue)p=u("toDynamicValue",g.serviceIdentifier,(function(){return g.dynamicValue(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Factory&&null!==g.factory)p=u("toFactory",g.serviceIdentifier,(function(){return g.factory(t.parentContext)}));else if(g.type===o.BindingTypeEnum.Provider&&null!==g.provider)p=u("toProvider",g.serviceIdentifier,(function(){return g.provider(t.parentContext)}));else{if(g.type!==o.BindingTypeEnum.Instance||null===g.implementationType){var m=a.getServiceIdentifierAsString(t.serviceIdentifier);throw new Error(r.INVALID_BINDING_TYPE+" "+m)}p=s.resolveInstance(g.implementationType,i,l(e))}return"function"==typeof g.onActivation&&(p=g.onActivation(t.parentContext,p)),h&&(g.cache=p,g.activated=!0),f&&null!==e&&!e.has(g.id)&&e.set(g.id,p),p}}};t.resolve=function(e){return l(e.plan.rootRequest.requestScope)(e.plan.rootRequest)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(10);t.resolveInstance=function(e,t,n){var a,s,u=null;if(t.length>0){var l=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ConstructorArgument})).map(n);s=l,u=function(e,t,n){var r=t.filter((function(e){return null!==e.target&&e.target.type===o.TargetTypeEnum.ClassProperty})),i=r.map(n);return r.forEach((function(t,n){var r;r=t.target.name.value();var o=i[n];e[r]=o})),e}(u=new((a=e).bind.apply(a,[void 0].concat(s))),t,n)}else u=new e;return function(e,t){if(Reflect.hasMetadata(i.POST_CONSTRUCT,e)){var n=Reflect.getMetadata(i.POST_CONSTRUCT,e);try{t[n.value]()}catch(t){throw new Error(r.POST_CONSTRUCT_ERROR(e.name,t.message))}}}(e,u),u}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(17),i=n(125),a=n(72),s=function(){function e(e){this._binding=e}return e.prototype.to=function(e){return this._binding.type=o.BindingTypeEnum.Instance,this._binding.implementationType=e,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toSelf=function(){if("function"!=typeof this._binding.serviceIdentifier)throw new Error(""+r.INVALID_TO_SELF_VALUE);var e=this._binding.serviceIdentifier;return this.to(e)},e.prototype.toConstantValue=function(e){return this._binding.type=o.BindingTypeEnum.ConstantValue,this._binding.cache=e,this._binding.dynamicValue=null,this._binding.implementationType=null,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toDynamicValue=function(e){return this._binding.type=o.BindingTypeEnum.DynamicValue,this._binding.cache=null,this._binding.dynamicValue=e,this._binding.implementationType=null,new i.BindingInWhenOnSyntax(this._binding)},e.prototype.toConstructor=function(e){return this._binding.type=o.BindingTypeEnum.Constructor,this._binding.implementationType=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toFunction=function(e){if("function"!=typeof e)throw new Error(r.INVALID_FUNCTION_BINDING);var t=this.toConstantValue(e);return this._binding.type=o.BindingTypeEnum.Function,t},e.prototype.toAutoFactory=function(e){return this._binding.type=o.BindingTypeEnum.Factory,this._binding.factory=function(t){return function(){return t.container.get(e)}},new a.BindingWhenOnSyntax(this._binding)},e.prototype.toProvider=function(e){return this._binding.type=o.BindingTypeEnum.Provider,this._binding.provider=e,new a.BindingWhenOnSyntax(this._binding)},e.prototype.toService=function(e){this.toDynamicValue((function(t){return t.container.get(e)}))},e}();t.BindingToSyntax=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(126),o=n(50),i=n(51),a=function(){function e(e){this._binding=e,this._bindingWhenSyntax=new i.BindingWhenSyntax(this._binding),this._bindingOnSyntax=new o.BindingOnSyntax(this._binding),this._bindingInSyntax=new r.BindingInSyntax(e)}return e.prototype.inRequestScope=function(){return this._bindingInSyntax.inRequestScope()},e.prototype.inSingletonScope=function(){return this._bindingInSyntax.inSingletonScope()},e.prototype.inTransientScope=function(){return this._bindingInSyntax.inTransientScope()},e.prototype.when=function(e){return this._bindingWhenSyntax.when(e)},e.prototype.whenTargetNamed=function(e){return this._bindingWhenSyntax.whenTargetNamed(e)},e.prototype.whenTargetIsDefault=function(){return this._bindingWhenSyntax.whenTargetIsDefault()},e.prototype.whenTargetTagged=function(e,t){return this._bindingWhenSyntax.whenTargetTagged(e,t)},e.prototype.whenInjectedInto=function(e){return this._bindingWhenSyntax.whenInjectedInto(e)},e.prototype.whenParentNamed=function(e){return this._bindingWhenSyntax.whenParentNamed(e)},e.prototype.whenParentTagged=function(e,t){return this._bindingWhenSyntax.whenParentTagged(e,t)},e.prototype.whenAnyAncestorIs=function(e){return this._bindingWhenSyntax.whenAnyAncestorIs(e)},e.prototype.whenNoAncestorIs=function(e){return this._bindingWhenSyntax.whenNoAncestorIs(e)},e.prototype.whenAnyAncestorNamed=function(e){return this._bindingWhenSyntax.whenAnyAncestorNamed(e)},e.prototype.whenAnyAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenAnyAncestorTagged(e,t)},e.prototype.whenNoAncestorNamed=function(e){return this._bindingWhenSyntax.whenNoAncestorNamed(e)},e.prototype.whenNoAncestorTagged=function(e,t){return this._bindingWhenSyntax.whenNoAncestorTagged(e,t)},e.prototype.whenAnyAncestorMatches=function(e){return this._bindingWhenSyntax.whenAnyAncestorMatches(e)},e.prototype.whenNoAncestorMatches=function(e){return this._bindingWhenSyntax.whenNoAncestorMatches(e)},e.prototype.onActivation=function(e){return this._bindingOnSyntax.onActivation(e)},e}();t.BindingInWhenOnSyntax=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(17),o=n(72),i=function(){function e(e){this._binding=e}return e.prototype.inRequestScope=function(){return this._binding.scope=r.BindingScopeEnum.Request,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inSingletonScope=function(){return this._binding.scope=r.BindingScopeEnum.Singleton,new o.BindingWhenOnSyntax(this._binding)},e.prototype.inTransientScope=function(){return this._binding.scope=r.BindingScopeEnum.Transient,new o.BindingWhenOnSyntax(this._binding)},e}();t.BindingInSyntax=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){}return e.of=function(t,n){var r=new e;return r.bindings=t,r.middleware=n,r},e}();t.ContainerSnapshot=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=function(){function e(){this._map=new Map}return e.prototype.getMap=function(){return this._map},e.prototype.add=function(e,t){if(null==e)throw new Error(r.NULL_ARGUMENT);if(null==t)throw new Error(r.NULL_ARGUMENT);var n=this._map.get(e);void 0!==n?(n.push(t),this._map.set(e,n)):this._map.set(e,[t])},e.prototype.get=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);var t=this._map.get(e);if(void 0!==t)return t;throw new Error(r.KEY_NOT_FOUND)},e.prototype.remove=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);if(!this._map.delete(e))throw new Error(r.KEY_NOT_FOUND)},e.prototype.removeByCondition=function(e){var t=this;this._map.forEach((function(n,r){var o=n.filter((function(t){return!e(t)}));o.length>0?t._map.set(r,o):t._map.delete(r)}))},e.prototype.hasKey=function(e){if(null==e)throw new Error(r.NULL_ARGUMENT);return this._map.has(e)},e.prototype.clone=function(){var t=new e;return this._map.forEach((function(e,n){e.forEach((function(e){return t.add(n,e.clone())}))})),t},e.prototype.traverse=function(e){this._map.forEach((function(t,n){e(n,t)}))},e}();t.Lookup=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(24),o=function(e){this.id=r.id(),this.registry=e};t.ContainerModule=o;var i=function(e){this.id=r.id(),this.registry=e};t.AsyncContainerModule=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10);t.injectable=function(){return function(e){if(Reflect.hasOwnMetadata(o.PARAM_TYPES,e))throw new Error(r.DUPLICATED_INJECTABLE_DECORATOR);var t=Reflect.getMetadata(o.DESIGN_PARAM_TYPES,e)||[];return Reflect.defineMetadata(o.PARAM_TYPES,t,e),e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(13),o=n(20);t.tagged=function(e,t){return function(n,i,a){var s=new r.Metadata(e,t);"number"==typeof a?o.tagParameter(n,i,a,s):o.tagProperty(n,i,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.named=function(e){return function(t,n,a){var s=new o.Metadata(r.NAMED_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.optional=function(){return function(e,t,n){var a=new o.Metadata(r.OPTIONAL_TAG,!0);"number"==typeof n?i.tagParameter(e,t,n,a):i.tagProperty(e,t,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.unmanaged=function(){return function(e,t,n){var a=new o.Metadata(r.UNMANAGED_TAG,!0);i.tagParameter(e,t,n,a)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.multiInject=function(e){return function(t,n,a){var s=new o.Metadata(r.MULTI_INJECT_TAG,e);"number"==typeof a?i.tagParameter(t,n,a,s):i.tagProperty(t,n,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),o=n(13),i=n(20);t.targetName=function(e){return function(t,n,a){var s=new o.Metadata(r.NAME_TAG,e);i.tagParameter(t,n,a,s)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(11),o=n(10),i=n(13);t.postConstruct=function(){return function(e,t,n){var a=new i.Metadata(o.POST_CONSTRUCT,t);if(Reflect.hasOwnMetadata(o.POST_CONSTRUCT,e.constructor))throw new Error(r.MULTIPLE_POST_CONSTRUCT_METHODS);Reflect.defineMetadata(o.POST_CONSTRUCT,a,e.constructor)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.multiBindToService=function(e){return function(t){return function(){for(var n=[],r=0;r{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(c.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(p.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(g.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(u.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(r.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),l=n(1),d=s(n(7)),c=n(74),p=n(3),g=n(18);let h=r=class{constructor(e){this.calleeDataExtractorFactory=e}static getLimitIndex(e){const t=e-1,n=r.limitThresholdActivationLength-1;let o=t;return t>n&&(o=Math.round(n+t*r.limitThreshold),o>t&&(o=t)),o}analyze(e){return this.analyzeRecursive(e.body)}analyzeRecursive(e){const t=r.getLimitIndex(e.length),n=[],o=e.length;for(let r=0;rt);r++){const t=e[r];d.traverse(t,{enter:r=>{if(p.NodeGuards.isCallExpressionNode(r))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(r)?d.VisitorOption.Skip:void this.analyzeCallExpressionNode(n,e,r)}})}return n}analyzeCallExpressionNode(e,t,n){r.calleeDataExtractorsList.forEach(r=>{const o=this.calleeDataExtractorFactory(r).extract(t,n.callee);o&&e.push(Object.assign(Object.assign({},o),{callsGraph:this.analyzeRecursive(o.callee.body)}))})}};h.calleeDataExtractorsList=[c.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,c.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,c.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],h.limitThresholdActivationLength=25,h.limitThreshold=.002,h=r=o([u.injectable(),a(0,u.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),i("design:paramtypes",[Function])],h),t.CallsGraphAnalyzer=h},function(e){e.exports=JSON.parse('{"name":"estraverse","description":"ECMAScript JS AST traversal functions","homepage":"https://github.com/estools/estraverse","main":"estraverse.js","version":"4.3.0","engines":{"node":">=4.0"},"maintainers":[{"name":"Yusuke Suzuki","email":"utatane.tea@gmail.com","web":"http://github.com/Constellation"}],"repository":{"type":"git","url":"http://github.com/estools/estraverse.git"},"devDependencies":{"babel-preset-env":"^1.6.1","babel-register":"^6.3.13","chai":"^2.1.1","espree":"^1.11.0","gulp":"^3.8.10","gulp-bump":"^0.2.2","gulp-filter":"^2.0.0","gulp-git":"^1.0.1","gulp-tag-version":"^1.3.0","jshint":"^2.5.6","mocha":"^2.1.0"},"license":"BSD-2-Clause","scripts":{"test":"npm run-script lint && npm run-script unit-test","lint":"jshint estraverse.js","unit-test":"mocha --compilers js:babel-register"}}')},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(52),u=n(3),l=n(18);let d=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!u.NodeGuards.isIdentifierNode(t))return null;const n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name);return n?{callee:n,name:t.name}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:e=>{if(u.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};d=r([i.injectable()],d),t.FunctionDeclarationCalleeDataExtractor=d},function(e,t,n){"use strict";var r=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=n(0),a=o(n(7)),s=n(52),u=n(3),l=n(18);let d=class extends s.AbstractCalleeDataExtractor{extract(e,t){var n;let r=null;return u.NodeGuards.isIdentifierNode(t)&&(r=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),u.NodeGuards.isFunctionExpressionNode(t)&&(r=t.body),r?{callee:r,name:null!==(n=t.name)&&void 0!==n?n:null}:null}getCalleeBlockStatement(e,t){let n=null;return a.traverse(e,{enter:(e,r)=>{if(u.NodeGuards.isFunctionExpressionNode(e)&&r&&u.NodeGuards.isVariableDeclaratorNode(r)&&u.NodeGuards.isIdentifierNode(r.id)&&r.id.name===t)return n=e.body,a.VisitorOption.Break}}),n}};d=r([i.injectable()],d),t.FunctionExpressionCalleeDataExtractor=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.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(7)),u=n(52),l=n(3),d=n(18);let c=r=class extends u.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const n=l.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,r=l.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return n||r}extract(e,t){if(!l.NodeGuards.isMemberExpressionNode(t))return null;const n=this.createObjectMembersCallsChain([],t);if(!n.length)return null;const r=n[n.length-1],o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),n);return o?{callee:o,name:r}:null}createObjectMembersCallsChain(e,t){if(l.NodeGuards.isIdentifierNode(t.property)&&!t.computed)e.unshift(t.property.name);else{if(!l.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return l.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(l.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;let r=null;return s.traverse(e,{enter:e=>{if(l.NodeGuards.isVariableDeclaratorNode(e)&&l.NodeGuards.isIdentifierNode(e.id)&&e.init&&l.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===n)return r=this.findCalleeBlockStatement(e.init.properties,t),s.VisitorOption.Break}}),r}findCalleeBlockStatement(e,t){const n=t.shift();if(!n)return null;for(const o of e)if(r.isValidTargetPropertyNode(o,n)){if(l.NodeGuards.isObjectExpressionNode(o.value))return this.findCalleeBlockStatement(o.value.properties,t);if(l.NodeGuards.isFunctionExpressionNode(o.value))return o.value.body}return null}};c=r=o([a.injectable()],c),t.ObjectExpressionCalleeDataExtractor=c},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},a=this&&this.__param||function(e,t){return function(n,r){t(n,r,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=n(0),l=n(1),d=s(n(7)),c=n(3);let p=r=class{constructor(e){this.prevailingKindOfVariables=r.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const n=[];d.traverse(e,{enter:e=>{c.NodeGuards.isVariableDeclarationNode(e)&&n.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(n))&&void 0!==t?t:r.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};p.defaultKindOfVariables="var",p=r=o([u.injectable(),a(0,u.inject(l.ServiceIdentifiers.IArrayUtils)),i("design:paramtypes",[Object])],p),t.PrevailingKindOfVariablesAnalyzer=p},function(e,t,n){"use strict";var r,o=this&&this.__decorate||function(e,t,n,r){var o,i=arguments.length,a=i<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=n(0),s=i(n(147)),u=i(n(7)),l=n(54),d=n(3);let c=r=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){u.replace(e,{enter:e=>(e.range||(e.range=[r.emptyRangeValue,r.emptyRangeValue]),e)})}static isRootNode(e){return d.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=r.sourceTypes.length;r.attachMissingRanges(e);for(let n=0;n{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],n=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==n||n.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};c.eslintScopeOptions={ecmaVersion:l.ecmaVersion,optimistic:!0},c.sourceTypes=["script","module"],c.emptyRangeValue=0,c=r=o([a.injectable()],c),t.ScopeAnalyzer=c},function(e,t,n){"use strict";const r=n(39),o=n(152),i=n(153),a=n(53),s=n(40),u=n(75).Scope,l=n(156).version;e.exports={version:l,Reference:a,Variable:s,Scope:u,ScopeManager:o,analyze:function(e,t){const n=function e(t,n){function r(e){return"object"==typeof e&&e instanceof Object&&!(e instanceof Array)&&!(e instanceof RegExp)}for(const o in n)if(Object.prototype.hasOwnProperty.call(n,o)){const i=n[o];r(i)?r(t[o])?e(t[o],i):t[o]=e({},i):t[o]=i}return t}({optimistic:!1,directive:!1,nodejsScope:!1,impliedStrict:!1,sourceType:"script",ecmaVersion:5,childVisitorKeys:null,fallback:"iteration"},t),a=new o(n);return new i(n,a).visit(e),r(null===a.__currentScope,"currentScope should be null."),a}}},function(e,t,n){"use strict"; /* object-assign (c) Sindre Sorhus diff --git a/dist/index.cli.js b/dist/index.cli.js index 0ce96be3..0c559d5b 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=249)}([function(e,t){e.exports=require("inversify")},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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(35);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===o.NodeType.AssignmentExpression}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 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,i=n.isBreakStatementNode(t)&&t.label===e;return r||o||i}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 isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===o.NodeType.SequenceExpression}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})},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=o(r(12)),a=r(44),s=r(57),c=r(4),d=r(19);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),c.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.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 c.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(l.cloneRecursive):"object"==typeof o?l.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=l},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,i)=>{const a=r[e];if(!a||"function"!=typeof a)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=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||s.has(r))return;if("function"!=typeof e[r])return;const c=null!==(i=Object.getOwnPropertyDescriptor(e,r))&&void 0!==i?i:o,d=c.value;Object.defineProperty(e,r,Object.assign(Object.assign({},c),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return d.apply(this,arguments)}})),s.add(r)})}(r,e),function(e,t,r){var n;const i=null!==(n=Object.getOwnPropertyDescriptor(e,t))&&void 0!==n?n:o,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,i),function(e,t){var r;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const n=`_${t.toString()}`,i=null!==(r=Object.getOwnPropertyDescriptor(e,n))&&void 0!==r?r:o;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{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}})),i}(r,i)}}},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=r(35);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,r){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:r,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,r){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,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,r){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:n.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:i.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:i.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,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,r=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3);let f=class{constructor(e,t){this.randomGenerator=e,this.options=t}};f=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],f),t.AbstractNodeTransformer=f},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomCodeHelpersTransformer="CustomCodeHelpersTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3);let y=class{constructor(e,t,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.randomGenerator=r,this.options=o}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};y=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],y),t.AbstractCustomNode=y},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(117),v=r(118);let I=o=class{constructor(e,t,r,o,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=r,this.randomGenerator=o,this.options=n}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};I.globalVariableTemplateFunctions=[N.GlobalVariableTemplate1(),v.GlobalVariableTemplate2()],I=o=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],I),t.AbstractCustomCodeHelper=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(75),a=r(85),s=r(98),c=r(109),d=r(149),l=r(162),u=r(163),f=r(167),p=r(169),m=r(172),g=r(173),y=r(182),h=r(204),b=r(218),N=r(223),v=r(233),I=r(73),S=r(237),O=r(239),C=r(240),j=r(241);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 i=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(i))return new(o.get(i))(...n);const a=r.container.getNamed(e,i);return o.set(i,a),new a(...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 C.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(I.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(v.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(j.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(O.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(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customCodeHelpersModule),this.container.load(d.customNodesModule),this.container.load(l.finalizingTransformersModule),this.container.load(u.generatorsModule),this.container.load(f.initializingTransformersModule),this.container.load(p.nodeModule),this.container.load(m.nodeTransformersModule),this.container.load(g.obfuscatingTransformersModule),this.container.load(y.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(b.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&r.push(e),e!==a?n.getParentNodesWithStatementsRecursive(a,t,r,++i):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),i=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static set(e,t){var r;e.metadata=Object.assign(null!==(r=e.metadata)&&void 0!==r?r:{},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 isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(4);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 i=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(i,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.callsGraph.length?n.getOptimalBlockScope(o.callsGraph,0,--r):o.callee}static insertBefore(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o)}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});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==a?n.getLexicalScopesRecursive(a,t,r,++i):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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});class o{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(5),f=r(2),p=r(3);let m=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const r=this.customCodeHelpers.get(e);r&&t(r)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierNamesGeneratorFactory&&u.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],m),t.AbstractCustomCodeHelperGroup=m},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);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(31);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},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.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2);let l=class{constructor(e){this.options=e}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],l),t.AbstractObfuscatingReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!0,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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.Dot=".",e.Comma=","}(t.StringSeparator||(t.StringSeparator={}))},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{};n=o([r(0).injectable()],n),t.AbstractCalleeDataExtractor=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ecmaVersion=11},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);t.NodeLiteralUtils=class{static isProhibitedLiteralNode(e,t){return!(!o.NodeGuards.isPropertyNode(t)||t.computed||t.key!==e)||!!o.NodeGuards.isImportDeclarationNode(t)}}},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3);let g=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 i=t.getStorageId(),a=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return a.set(r,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};g=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],g),t.AbstractControlFlowReplacer=g},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n const 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})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(4);let p=class{constructor(e,t){this.preservedNamesSet=new Set,this.lexicalScopesPreservedNamesMap=new Map,this.randomGenerator=e,this.options=t}generate(e,t){return f.NodeGuards.isProgramNode(e)?this.generateForGlobalScope():this.generateForLexicalScope(e)}preserveName(e){this.preservedNamesSet.add(e)}preserveNameForLexicalScope(e,t){var r;const o=null!==(r=this.lexicalScopesPreservedNamesMap.get(t))&&void 0!==r?r:new Set;o.add(e),this.lexicalScopesPreservedNamesMap.set(t,o)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNamesSet.has(e)}isValidIdentifierNameInLexicalScopes(e,t){var r;if(!this.isValidIdentifierName(e))return!1;for(const o of t){const t=null!==(r=this.lexicalScopesPreservedNamesMap.get(o))&&void 0!==r?r:null;if(t&&t.has(e))return!1}return!0}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.AbstractIdentifierNamesGenerator=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(7);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){return this.storage.get(e)}getOrThrow(e){const t=this.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,r]of this.storage)if(e===r)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)}};a([p.initializable(),s("design:type",String)],m.prototype,"storageId",void 0),a([p.initializable(),s("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],m.prototype,"storage",void 0),a([d.postConstruct(),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],m.prototype,"initialize",null),m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],m),t.MapStorage=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(1),n=r(17);class i{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const i=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),i}}t.JavaScriptObfuscator=i,i.version=null!=="0.25.2"?"0.25.2":"unknown"},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";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(20),f=r(2),p=r(3),m=r(21),g=r(46),y=r(4);let h=class extends g.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(m.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!y.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};h=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IControlFlowCustomNode)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TControlFlowCustomNodeFactory&&u.TControlFlowCustomNodeFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],h),t.ExpressionWithOperatorControlFlowReplacer=h},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(88)),a=n(r(89)),s=n(r(58));class c{static parse(e,t){const r=c.sourceTypes.length;for(let o=0;o"),s=`...${o.substring(n,i).replace(/^\s+/,"")}...`;throw new Error(`ERROR at line ${r.line}: ${t}\n${a} ${s}`)}}t.ASTParserFacade=c,c.colorError=s.default.red,c.nearestSymbolsCount=15,c.sourceTypes=["script","module"]},function(e,t){e.exports=require("chalk")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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.BasePropertiesExtractor="BasePropertiesExtractor",e.ObjectExpressionToVariableDeclarationExtractor="ObjectExpressionToVariableDeclarationExtractor"}(t.ObjectExpressionExtractor||(t.ObjectExpressionExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ObjectExpressionVariableDeclarationHostNode="ObjectExpressionVariableDeclarationHostNode"}(t.ObjectExpressionKeysTransformerCustomNode||(t.ObjectExpressionKeysTransformerCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutput="ConsoleOutput",e.DebugProtection="DebugProtection",e.DomainLock="DomainLock",e.SelfDefending="SelfDefending",e.StringArray="StringArray"}(t.CustomCodeHelperGroup||(t.CustomCodeHelperGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(4);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),!a.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;n=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(226)),m=r(227),g=r(2),y=r(228),h=r(7);let b=o=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new m.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=o.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}|${p.default(this.sourceCode.getSourceCode())}`}};b.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",s([h.initializable(),c("design:type","function"==typeof(n=void 0!==m.Chance&&m.Chance.Chance)?n:Object)],b.prototype,"randomGenerator",void 0),s([u.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],b.prototype,"initialize",null),b=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.ISourceCode)),d(1,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(i=void 0!==y.ISourceCode&&y.ISourceCode)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],b),t.RandomGenerator=b},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(58)),f=r(2),p=r(74);let m=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,null!=o?o:"")}info(e,t){this.options.log&&o.log(o.colorInfo,p.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,p.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,p.LoggingPrefix.Base,e,t)}};m.colorInfo=u.default.cyan,m.colorSuccess=u.default.green,m.colorWarn=u.default.yellow,m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IOptions&&f.IOptions)?n:Object])],m),t.Logger=m},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(17),n=r(0),i=r(1),a=r(54),s=r(76),c=r(78),d=r(79),l=r(80),u=r(81),f=r(82),p=r(84);t.analyzersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(u.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(f.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(p.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(77),p=r(54),m=r(4),g=r(18);let y=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];u.traverse(t,{enter:o=>{if(m.NodeGuards.isCallExpressionNode(o))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(o)?u.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),{callsGraph:this.analyzeRecursive(n.callee.body)}))})}};y.calleeDataExtractorsList=[p.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,p.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,p.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],y.limitThresholdActivationLength=25,y.limitThreshold=.002,y=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),a("design:paramtypes",["function"==typeof(n=void 0!==f.TCalleeDataExtractorFactory&&f.TCalleeDataExtractorFactory)?n:Object])],y),t.CallsGraphAnalyzer=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!c.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(d.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(c.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){var r;let o=null;return c.NodeGuards.isIdentifierNode(t)&&(o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),c.NodeGuards.isFunctionExpressionNode(t)&&(o=t.body),o?{callee:o,name:null!==(r=t.name)&&void 0!==r?r:null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(c.NodeGuards.isFunctionExpressionNode(e)&&o&&c.NodeGuards.isVariableDeclaratorNode(o)&&c.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(12)),c=r(43),d=r(4),l=r(18);let u=o=class extends c.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),s.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(d.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};u=o=n([a.injectable()],u),t.ObjectExpressionCalleeDataExtractor=u},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(36),p=r(4);let m=o=class{constructor(e){this.prevailingKindOfVariables=o.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const r=[];u.traverse(e,{enter:e=>{p.NodeGuards.isVariableDeclarationNode(e)&&r.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(r))&&void 0!==t?t:o.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};m.defaultKindOfVariables="var",m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IArrayUtils)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IArrayUtils&&f.IArrayUtils)?n:Object])],m),t.PrevailingKindOfVariablesAnalyzer=m},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(83)),c=i(r(12)),d=r(44),l=r(4);let u=o=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){c.replace(e,{enter:e=>(e.range||(e.range=[o.emptyRangeValue,o.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=o.sourceTypes.length;o.attachMissingRanges(e);for(let r=0;r{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],r=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==r||r.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};u.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},u.sourceTypes=["script","module"],u.emptyRangeValue=0,u=o=n([a.injectable()],u),t.ScopeAnalyzer=u},function(e,t){e.exports=require("eslint-scope")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(2),g=r(3),y=r(37),h=r(4),b=r(19),N=r(45);let v=o=class{constructor(e,t,r){this.stringArrayStorageData=new Map,this.stringArrayStorage=e,this.randomGenerator=t,this.options=r}analyze(e){this.options.stringArray&&p.traverse(e,{enter:(e,t)=>{if(t)return b.NodeMetadata.isIgnoredNode(e)?p.VisitorOption.Skip:void(h.NodeGuards.isLiteralNode(e)&&this.analyzeLiteralNode(e,t))}})}getItemDataForLiteralNode(e){return this.stringArrayStorageData.get(e)}analyzeLiteralNode(e,t){"string"==typeof e.value&&(N.NodeLiteralUtils.isProhibitedLiteralNode(e,t)||this.shouldAddValueToStringArray(e.value)&&this.stringArrayStorageData.set(e,this.stringArrayStorage.getOrThrow(e.value)))}shouldAddValueToStringArray(e){return e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}};v.minimumLengthForStringArray=3,v=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.IStringArrayStorage)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==y.IStringArrayStorage&&y.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.StringArrayStorageAnalyzer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(55),s=r(13),c=r(86),d=r(87),l=r(90),u=r(91),f=r(93),p=r(96),m=r(97);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(p.LogicalExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(m.StringLiteralControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(i.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56);let h=o=class extends y.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.BinaryExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}};h.usingExistingIdentifierChance=.5,h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.BinaryExpressionControlFlowReplacer=h},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(20),y=r(36),h=r(2),b=r(3),N=r(21),v=r(10),I=r(11),S=r(4),O=r(6);let C=o=class extends I.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=S.NodeGuards.isBreakStatementNode(e)||S.NodeGuards.isContinueStatementNode(e),r=S.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=S.NodeGuards.isClassDeclarationNode(e);return S.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return m.traverse(e,{enter:e=>{if(S.NodeGuards.isWhileStatementNode(e))return m.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case v.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&S.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),i=this.arrayUtils.shuffle(n),a=n.map(e=>i.indexOf(e)),s=this.controlFlowCustomNodeFactory(N.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,i,a);const c=s.getNode()[0];return O.NodeUtils.parentizeNode(c,t),c}};C=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IControlFlowCustomNode)),l(1,f.inject(p.ServiceIdentifiers.IArrayUtils)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TControlFlowCustomNodeFactory&&g.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==h.IOptions&&h.IOptions)?s:Object])],C),t.BlockStatementControlFlowTransformer=C},function(e,t){e.exports=require("acorn")},function(e,t){e.exports=require("acorn-import-meta")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!h.NodeGuards.isIdentifierNode(n))return e;const i=String(e.arguments.length),a=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionFunctionNode),s=e.arguments;a.initialize(s);const c=this.insertCustomNodeToControlFlowStorage(a,r,i,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),c,n,s)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!h.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};b.usingExistingIdentifierChance=.5,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.CallExpressionControlFlowReplacer=b},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(92),y=r(2),h=r(3),b=r(59),N=r(60),v=r(13),I=r(35),S=r(10),O=r(11),C=r(8),j=r(4),_=r(18),R=r(6);let F=o=class extends O.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 j.NodeGuards.isBreakStatementNode(e)||j.NodeGuards.isContinueStatementNode(e)||j.NodeGuards.isAwaitExpressionNode(e)||j.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!j.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=_.NodeStatementUtils.getScopeOfNode(e),r=j.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),i=C.NodeFactory.blockStatementNode(n),a=e.id.name;let s=!1;return m.traverse(i,{enter:e=>{if(j.NodeGuards.isIdentifierNode(e)&&e.name===a)return s=!0,m.VisitorOption.Break}}),s}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return m.traverse(e,{enter:e=>{if(j.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,m.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(m.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,m.VisitorOption.Break}}),!t)return!1;return _.NodeStatementUtils.getParentNodeWithStatements(e).type!==I.NodeType.Program}getVisitor(e){switch(e){case S.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&j.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&j.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case S.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){m.traverse(e,{enter:e=>{if(!j.NodeGuards.isBlockStatementNode(e))return;const t=R.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),i=this.collectedBlockStatements.splice(n,1)[0];return i===e?e:this.replaceBlockStatementNode(e,i,t)}restoreNode(e,t){const r=e.body[0];if(!j.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 j.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=C.NodeFactory.programNode([C.NodeFactory.expressionStatementNode(C.NodeFactory.functionExpressionNode([],e))]);return R.NodeUtils.parentizeAst(t),R.NodeUtils.parentizeNode(t,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,S.TransformationStage.Obfuscating),e}replaceBlockStatementNode(e,t,r){const n=C.NodeFactory.blockStatementNode([C.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const i=this.deadCodeInjectionCustomNodeFactory(N.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);i.initialize(e,n);const a=i.getNode()[0];return R.NodeUtils.parentizeNode(a,r),a}};F.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",F.maxNestedBlockStatementsCount=4,F.minCollectedBlockStatementsCount=5,F.transformersToRenameBlockScopeIdentifiers=[v.NodeTransformer.LabeledStatementTransformer,v.NodeTransformer.ScopeIdentifiersTransformer],F=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),l(1,f.inject(p.ServiceIdentifiers.ITransformersRunner)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TDeadNodeInjectionCustomNodeFactory&&g.TDeadNodeInjectionCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==b.ITransformersRunner&&b.ITransformersRunner)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],F),t.DeadCodeInjectionTransformer=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(12)),y=r(20),h=r(94),b=r(95),N=r(2),v=r(3),I=r(21),S=r(55),O=r(35),C=r(10),j=r(11),_=r(22),R=r(4),F=r(19),T=r(18),x=r(6);let w=o=class extends j.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 C.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!R.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(I.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),_.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),x.NodeUtils.parentizeAst(e),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(R.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=T.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(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){g.replace(e,{enter:(e,r)=>{if(F.NodeMetadata.isIgnoredNode(e))return g.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return g.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})}})}};w.controlFlowReplacersMap=new Map([[O.NodeType.BinaryExpression,S.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[O.NodeType.CallExpression,S.ControlFlowReplacer.CallExpressionControlFlowReplacer],[O.NodeType.LogicalExpression,S.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[O.NodeType.Literal,S.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),w.hostNodeSearchMinDepth=0,w.hostNodeSearchMaxDepth=2,w=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.Factory__TControlFlowStorage)),u(1,p.inject(m.ServiceIdentifiers.Factory__IControlFlowReplacer)),u(2,p.inject(m.ServiceIdentifiers.Factory__IControlFlowCustomNode)),u(3,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==b.TControlFlowStorageFactory&&b.TControlFlowStorageFactory)?n:Object,"function"==typeof(i=void 0!==h.TControlFlowReplacerFactory&&h.TControlFlowReplacerFactory)?i:Object,"function"==typeof(a=void 0!==y.TControlFlowCustomNodeFactory&&y.TControlFlowCustomNodeFactory)?a:Object,"function"==typeof(s=void 0!==v.IRandomGenerator&&v.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==N.IOptions&&N.IOptions)?c:Object])],w),t.FunctionControlFlowTransformer=w},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56),h=r(4),b=r(6);let N=o=class extends y.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,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.LogicalExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=h.NodeGuards.isUnaryExpressionNode(e)?b.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(h.NodeGuards.isLiteralNode(t)||h.NodeGuards.isIdentifierNode(t)||h.NodeGuards.isObjectExpressionNode(t)||h.NodeGuards.isExpressionStatementNode(t))})}};N.usingExistingIdentifierChance=.5,N=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],N),t.LogicalExpressionControlFlowReplacer=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(h.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralNode);i.initialize(e.value);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!h.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};b.usingExistingIdentifierChance=1,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.StringLiteralControlFlowReplacer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(17),i=r(1),a=r(13),s=r(61),c=r(99),d=r(101),l=r(102),u=r(103),f=r(105),p=r(106),m=r(107),g=r(108);t.convertingTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(a.NodeTransformer.MemberExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(a.NodeTransformer.MethodDefinitionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionKeysTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.ObjectExpressionTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.SplitStringTransformer).whenTargetNamed(a.NodeTransformer.SplitStringTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.TemplateLiteralTransformer).whenTargetNamed(a.NodeTransformer.TemplateLiteralTransformer),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(c.ObjectExpressionToVariableDeclarationExtractor).whenTargetNamed(s.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(g.BasePropertiesExtractor).whenTargetNamed(s.ObjectExpressionExtractor.BasePropertiesExtractor),e(i.ServiceIdentifiers.Factory__IObjectExpressionExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObjectExpressionExtractor))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(100),l=r(62),u=r(22),f=r(4),p=r(18),m=r(6),g=r(23);let y=class{constructor(e){this.objectExpressionKeysTransformerCustomNodeFactory=e}extract(e,t){return this.transformObjectExpressionToVariableDeclaration(e,t)}transformObjectExpressionToVariableDeclaration(e,t){var r;const o=p.NodeStatementUtils.getScopeOfNode(t),n=f.NodeGuards.isNodeWithLexicalScope(o)?o:null!==(r=g.NodeLexicalScopeUtils.getLexicalScope(o))&&void 0!==r?r:null;if(!n)throw new Error("Cannot find lexical scope node for the host statement node");const i=e.properties,a=this.getObjectExpressionHostNode(n,i),s=[a];return u.NodeAppender.insertBefore(o,s,t),m.NodeUtils.parentizeAst(a),m.NodeUtils.parentizeNode(a,o),{nodeToReplace:this.getObjectExpressionIdentifierNode(a),objectExpressionHostStatement:a,objectExpressionNode:this.getObjectExpressionNode(a)}}getObjectExpressionHostNode(e,t){const r=this.objectExpressionKeysTransformerCustomNodeFactory(l.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!f.NodeGuards.isVariableDeclarationNode(o))throw new Error("`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node");return o}getObjectExpressionIdentifierNode(e){const t=e.declarations[0].id;if(!f.NodeGuards.isIdentifierNode(t))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property");return t}getObjectExpressionNode(e){var t;const r=null!==(t=e.declarations[0].init)&&void 0!==t?t:null;if(!r||!f.NodeGuards.isObjectExpressionNode(r))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property");return r}};y=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),i("design:paramtypes",["function"==typeof(o=void 0!==d.TObjectExpressionKeysTransformerCustomNodeFactory&&d.TObjectExpressionKeysTransformerCustomNodeFactory)?o:Object])],y),t.ObjectExpressionToVariableDeclarationExtractor=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(g.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=m.NodeFactory.literalNode(e.property.name)}return e}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.MemberExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4);let h=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case p.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&y.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return y.NodeGuards.isIdentifierNode(e.key)?this.replaceIdentifierKey(e,e.key):y.NodeGuards.isLiteralNode(e.key)?this.replaceLiteralKey(e,e.key):e}replaceIdentifierKey(e,t){return o.ignoredNames.includes(t.name)||e.computed||(e.computed=!0,e.key=g.NodeFactory.literalNode(t.name)),e}replaceLiteralKey(e,t){return"string"!=typeof t.value||o.ignoredNames.includes(t.value)||e.computed||(e.computed=!0),e}};h.ignoredNames=["constructor"],h=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],h),t.MethodDefinitionTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(104),g=r(2),y=r(3),h=r(10),b=r(11),N=r(4),v=r(18),I=r(61);let S=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.objectExpressionExtractorFactory=e}static isProhibitedHostStatement(e,t){return o.isReferencedIdentifierName(e,t)||o.isProhibitedSequenceExpression(e,t)}static isReferencedIdentifierName(e,t){const r=[];let o=!1,n=!1;return p.traverse(t,{enter:t=>{t===e&&(n=!0),N.NodeGuards.isIdentifierNode(t)&&(n?r.includes(t.name)&&(o=!0):r.push(t.name))},leave:t=>{if(t===e)return n=!1,p.VisitorOption.Break}}),o}static isProhibitedSequenceExpression(e,t){return N.NodeGuards.isExpressionStatementNode(t)&&N.NodeGuards.isSequenceExpressionNode(t.expression)&&t.expression.expressions.some(e=>N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isSuperNode(e.callee))}getVisitor(e){if(!this.options.transformObjectKeys)return null;switch(e){case h.TransformationStage.Converting:return{leave:(e,t)=>{if(t&&N.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(!e.properties.length)return e;const r=v.NodeStatementUtils.getRootStatementOfNode(e);return o.isProhibitedHostStatement(e,r)?e:this.applyObjectExpressionKeysExtractorsRecursive(o.objectExpressionExtractorNames,e,r)}applyObjectExpressionKeysExtractorsRecursive(e,t,r){const o=[...e],n=o.shift();if(!n)return t;const{nodeToReplace:i,objectExpressionHostStatement:a,objectExpressionNode:s}=this.objectExpressionExtractorFactory(n).extract(t,r);return this.applyObjectExpressionKeysExtractorsRecursive(o,s,a),i}};S.objectExpressionExtractorNames=[I.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,I.ObjectExpressionExtractor.BasePropertiesExtractor],S=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==m.TObjectExpressionExtractorFactory&&m.TObjectExpressionExtractorFactory)?n:Object,"function"==typeof(i=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],S),t.ObjectExpressionKeysTransformer=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.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){g.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=m.NodeFactory.literalNode(e.key.value))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),g.NodeGuards.isIdentifierNode(e.key)&&(e.key=m.NodeFactory.literalNode(e.key.name))}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.ObjectExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),v=r(45),I=r(6);let S=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ObjectExpressionKeysTransformer,g.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let i=0;i{if(this.options.splitStrings)return t&&N.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if(v.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;const r=this.transformLiteralNodeByChunkLength(e,t,o.firstPassChunkLength);return f.replace(r,{enter:(e,t)=>{if(t&&N.NodeGuards.isLiteralNode(e))return this.transformLiteralNodeByChunkLength(e,t,this.options.splitStringsChunkLength)}})}transformLiteralNodeByChunkLength(e,t,r){if("string"!=typeof e.value)return e;if(r>=e.value.length)return e;const n=o.chunkString(e.value,r),i=this.transformStringChunksToBinaryExpressionNode(n);return I.NodeUtils.parentizeAst(i),I.NodeUtils.parentizeNode(i,t),i}transformStringChunksToBinaryExpressionNode(e){const t=e.shift(),r=e.shift();if(!t||!r)throw new Error("First and second chunks values should not be empty");const o=b.NodeFactory.binaryExpressionNode("+",b.NodeFactory.literalNode(t),b.NodeFactory.literalNode(r));return e.reduce((e,t)=>{const r=b.NodeFactory.literalNode(t);return b.NodeFactory.binaryExpressionNode("+",e,r)},o)}};S.firstPassChunkLength=1e3,S=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],S),t.SplitStringTransformer=S},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4),h=r(6);let b=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return!!e&&y.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return y.NodeGuards.isTemplateLiteralNode(e)&&!y.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case p.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,i=[];if(e.quasis.forEach(e=>{i.push(g.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&i.push(t)}),i=i.filter(e=>!(y.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(i[0])||o.isLiteralNodeWithStringValue(i[1])||i.unshift(g.NodeFactory.literalNode("")),i.length>1){let e=g.NodeFactory.binaryExpressionNode("+",i.shift(),i.shift());i.forEach(t=>{e=g.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=i[0];return h.NodeUtils.parentizeAst(n),h.NodeUtils.parentizeNode(n,t),n}};b=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],b),t.TemplateLiteralTransformer=b},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(22),s=r(8),c=r(4),d=r(18);let l=o=class{static getPropertyNodeKeyName(e){const t=e.key;return!c.NodeGuards.isLiteralNode(t)||"string"!=typeof t.value&&"number"!=typeof t.value?c.NodeGuards.isIdentifierNode(t)?t.name:null:t.value.toString()}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extract(e,t){const r=e.parentNode;return r&&c.NodeGuards.isVariableDeclaratorNode(r)&&c.NodeGuards.isIdentifierNode(r.id)?this.transformObjectExpressionNode(e,t,r.id):{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}transformObjectExpressionNode(e,t,r){const o=e.properties,[n,i]=this.extractPropertiesToExpressionStatements(o,t,r),s=d.NodeStatementUtils.getScopeOfNode(t);return this.filterExtractedObjectExpressionProperties(e,i),a.NodeAppender.insertAfter(s,n,t),{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}extractPropertiesToExpressionStatements(e,t,r){const n=e.length,i=[],a=[];for(let d=0;d!t.includes(r))}};l=o=n([i.injectable()],l),t.BasePropertiesExtractor=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(27),s=r(63),c=r(110),d=r(111),l=r(112),u=r(113),f=r(114),p=r(115),m=r(119),g=r(121),y=r(123),h=r(125),b=r(127),N=r(131),v=r(133),I=r(135),S=r(137),O=r(144),C=r(146);t.customCodeHelpersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICustomCodeHelper).to(p.ConsoleOutputDisableCodeHelper).whenTargetNamed(a.CustomCodeHelper.ConsoleOutputDisable),e(i.ServiceIdentifiers.ICustomCodeHelper).to(y.DebugProtectionFunctionCallCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionCall),e(i.ServiceIdentifiers.ICustomCodeHelper).to(h.DebugProtectionFunctionIntervalCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionInterval),e(i.ServiceIdentifiers.ICustomCodeHelper).to(b.DebugProtectionFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(N.DomainLockCodeHelper).whenTargetNamed(a.CustomCodeHelper.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelper).to(v.CallsControllerFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.CallsControllerFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(I.SelfDefendingUnicodeCodeHelper).whenTargetNamed(a.CustomCodeHelper.SelfDefendingUnicode),e(i.ServiceIdentifiers.ICustomCodeHelper).to(S.StringArrayCallsWrapperCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayCallsWrapper),e(i.ServiceIdentifiers.ICustomCodeHelper).to(O.StringArrayCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArray),e(i.ServiceIdentifiers.ICustomCodeHelper).to(C.StringArrayRotateFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayRotateFunction),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(c.ConsoleOutputCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.ConsoleOutput),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(d.DebugProtectionCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DebugProtection),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(l.DomainLockCustomCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(u.SelfDefendingCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.SelfDefending),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(f.StringArrayCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.StringArray),e(i.ServiceIdentifiers.Factory__ICustomCodeHelper).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelper)),e(i.ServiceIdentifiers.Factory__ICustomCodeHelperGroup).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelperGroup)),e(i.ServiceIdentifiers.ICustomCodeHelperFormatter).to(m.CustomCodeHelperFormatter).inSingletonScope(),e(i.ServiceIdentifiers.ICustomCodeHelperObfuscator).to(g.CustomCodeHelperObfuscator).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23),O=r(4);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.disableConsoleOutput)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.ConsoleOutputDisable,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.disableConsoleOutput)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.ConsoleOutputDisable),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.ConsoleOutputDisable,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.ConsoleOutputCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(4),O=r(23);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.debugProtection)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=O.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionCall,e=>{e.initialize(s,c),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunction,t=>{t.initialize(s),I.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionInterval,t=>{const r=S.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);t.initialize(s),I.NodeAppender.insertAtIndex(e,t.getNode(),o)})}initialize(){if(this.customCodeHelpers=new Map,!this.options.debugProtection)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunction),t=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionCall),r=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionInterval),o=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunction,e),this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionCall,t),this.options.debugProtectionInterval&&this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionInterval,r),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,o)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DebugProtectionCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23),O=r(4);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.domainLock.length)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DomainLock,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.domainLock.length)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DomainLock),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DomainLock,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DomainLockCustomCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23);let O=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.selfDefending)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope(),c=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope();this.appendCustomNodeIfExist(b.CustomCodeHelper.SelfDefendingUnicode,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.selfDefending)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.SelfDefendingUnicode),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.SelfDefendingUnicode,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],O.prototype,"customCodeHelpers",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],O),t.SelfDefendingCodeHelperGroup=O},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(29),g=r(5),y=r(2),h=r(3),b=r(37),N=r(7),v=r(27),I=r(25),S=r(30),O=r(22);let C=class extends S.AbstractCustomCodeHelperGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=I.ObfuscationEvent.AfterObfuscation,this.customCodeHelperFactory=e,this.stringArrayStorage=t}appendNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArray,t=>{O.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArrayCallsWrapper,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArrayRotateFunction,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customCodeHelpers=new Map,!this.options.stringArray)return;const e=this.customCodeHelperFactory(v.CustomCodeHelper.StringArray),t=this.customCodeHelperFactory(v.CustomCodeHelper.StringArrayCallsWrapper),r=this.customCodeHelperFactory(v.CustomCodeHelper.StringArrayRotateFunction),o=this.stringArrayStorage.getStorageName(),n=this.stringArrayStorage.getStorageCallsWrapperName(),i=this.stringArrayStorage.getRotationAmount();e.initialize(this.stringArrayStorage,o),t.initialize(o,n),r.initialize(o,i),this.customCodeHelpers.set(v.CustomCodeHelper.StringArray,e),this.customCodeHelpers.set(v.CustomCodeHelper.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customCodeHelpers.set(v.CustomCodeHelper.StringArrayRotateFunction,r)}};d([N.initializable(),l("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__ICustomCodeHelper)),u(1,f.inject(p.ServiceIdentifiers.IStringArrayStorage)),u(2,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TCustomCodeHelperFactory&&m.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==b.IStringArrayStorage&&b.IStringArrayStorage)?i:Object,"function"==typeof(a=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],C),t.StringArrayCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(116),v=r(48),I=r(7),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.callsControllerFunctionName=e,this.consoleOutputDisableFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():v.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(N.ConsoleOutputDisableExpressionTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,consoleLogDisableFunctionName:this.consoleOutputDisableFunctionName,globalVariableTemplate:e})}};c([I.initializable(),d("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),c([I.initializable(),d("design:type",String)],C.prototype,"consoleOutputDisableFunctionName",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],C),t.ConsoleOutputDisableCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n const {consoleLogDisableFunctionName} = {callControllerFunctionName}(this, function () {\n const func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n const c = {};\n \n c.log = func;\n c.warn = func;\n c.debug = func;\n c.info = func;\n c.error = func;\n c.exception = func;\n c.table = func;\n c.trace = func;\n \n return c;\n })(func);\n } else {\n that.console.log = func;\n that.console.warn = func;\n that.console.debug = func;\n that.console.info = func;\n that.console.error = func;\n that.console.exception = func;\n that.console.table = func;\n that.console.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n let that;\n \n try {\n const getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n const getGlobal = function () {\n let globalObject;\n \n try {\n globalObject = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');')();\n } catch (e) {\n globalObject = window;\n }\n \n return globalObject;\n };\n const that = getGlobal();\n "}},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=s(r(12)),f=c(r(120)),p=r(64),m=r(4);let g=class{constructor(e){this.prevailingKindOfVariables=e.getPrevailingKind()}formatTemplate(e,t){return f.default(e,t)}formatStructure(e){for(const t of e)u.replace(t,{enter:e=>{if(m.NodeGuards.isVariableDeclarationNode(e))return"var"===this.prevailingKindOfVariables&&(e.kind="var"),e}});return e}};g=n([d.injectable(),a(0,d.inject(l.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),i("design:paramtypes",["function"==typeof(o=void 0!==p.IPrevailingKindOfVariablesAnalyzer&&p.IPrevailingKindOfVariablesAnalyzer)?o:Object])],g),t.CustomCodeHelperFormatter=g},function(e,t){e.exports=require("string-template")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(122),p=r(53);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}obfuscateTemplate(e,t={}){return p.JavaScriptObfuscator.obfuscate(e,Object.assign(Object.assign(Object.assign({},f.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()}),t)).getObfuscatedCode()}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],m),t.CustomCodeHelperObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(124),v=r(16),I=r(6);let S=class extends v.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(e){return I.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,callControllerFunctionName:this.callsControllerFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"callsControllerFunctionName",void 0),c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionCallCodeHelper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {callControllerFunctionName}(\n this,\n function () {\n const regExp1 = new RegExp('function *\\\\( *\\\\)');\n const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n const result = {debugProtectionFunctionName}('init');\n \n if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {\n result('0');\n } else {\n {debugProtectionFunctionName}();\n }\n }\n )();\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(126),v=r(16),I=r(6);let S=class extends v.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return I.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionIntervalCodeHelper=S},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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(7),v=r(128),I=r(129),S=r(130),O=r(16),C=r(6);let j=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?v.DebuggerTemplate():I.DebuggerTemplateNoEval();return this.customCodeHelperFormatter.formatTemplate(S.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([N.initializable(),d("design:type",String)],j.prototype,"debugProtectionFunctionName",void 0),j=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],j),t.DebugProtectionFunctionCodeHelper=j},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 const func = function () {\n while (true) {}\n };\n \n return func();\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n debugger;\n } else {\n debugger;\n }\n \n }\n "}},function(e,t,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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(49),b=r(2),N=r(3),v=r(24),I=r(7),S=r(132),O=r(48),C=r(16),j=r(6);let _=class extends C.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.cryptUtils=i}initialize(e,t){this.callsControllerFunctionName=e,this.domainLockFunctionName=t}getNodeStructure(e){return j.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==v.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():O.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(S.DomainLockTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,domainLockFunctionName:this.domainLockFunctionName,diff:r,domains:t,globalVariableTemplate:o})}};d([I.initializable(),l("design:type",String)],_.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type",String)],_.prototype,"domainLockFunctionName",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.ICryptUtils)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object])],_),t.DomainLockCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockTemplate=function(){return'\n const {domainLockFunctionName} = {callControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n const func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (let i = 0; i < 1000; i--) {\n const isPositive = i > 0;\n \n switch (isPositive) {\n case true:\n return this.item + \'_\' + this.value + \'_\' + i;\n default:\n this.item + \'_\' + this.value;\n }\n }\n }()\n };\n };\n \n const regExp = new RegExp("[{diff}]", "g");\n const domains = "{domains}".replace(regExp, "").split(";");\n let document;\n let domain;\n let location;\n let hostname;\n\n for (let d in that) {\n if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {\n document = d;\n \n break;\n }\n }\n\n for (let d1 in that[document]) {\n if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {\n domain = d1;\n \n break;\n }\n }\n\n if (!("~" > domain)) {\n for (let d2 in that[document]) {\n if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {\n location = d2;\n \n break;\n }\n }\n\n for (let d3 in that[document][location]) {\n if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {\n hostname = d3;\n \n break;\n }\n }\n }\n \n if (!document || !that[document]) {\n return;\n }\n \n const documentDomain = that[document][domain];\n const documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n const currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n let ok = false;\n \n for (let i = 0; i < domains.length; i++) {\n const domain = domains[i];\n const position = currentDomain.length - domain.length;\n const lastIndex = currentDomain.indexOf(domain, position);\n const endsWith = lastIndex !== -1 && lastIndex === position;\n \n if (endsWith) {\n if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {\n ok = true;\n }\n }\n }\n \n if (!ok) {\n data;\n } else {\n return;\n }\n \n func();\n });\n\n {domainLockFunctionName}();\n '}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(14),y=r(9),h=r(2),b=r(3),N=r(25),v=r(7),I=r(134),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.appendEvent===N.ObfuscationEvent.AfterObfuscation?this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(I.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})):this.customCodeHelperFormatter.formatTemplate(I.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})}};d([v.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type","function"==typeof(o=void 0!==N.ObfuscationEvent&&N.ObfuscationEvent)?o:Object)],C.prototype,"appendEvent",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperFormatter&&y.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.CallsControllerFunctionCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleCallControllerTemplate=function(){return"\n const {callControllerFunctionName} = (function(){\n let firstCall = true;\n \n return function (context, fn){\n const rfn = firstCall ? function(){\n if(fn){\n const res = fn.apply(context, arguments);\n fn = null;\n return res;\n }\n } : function(){}\n \n firstCall = false;\n \n return rfn;\n }\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(7),I=r(136),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.callsControllerFunctionName=e,this.selfDefendingFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(I.SelfDefendingTemplate(this.escapeSequenceEncoder),{callControllerFunctionName:this.callsControllerFunctionName,selfDefendingFunctionName:this.selfDefendingFunctionName})}};d([v.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type",String)],C.prototype,"selfDefendingFunctionName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],C),t.SelfDefendingUnicodeCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return"\n const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {\n const test = function () {\n const regExp = test\n .constructor('return /\" + this + \"/')()\n .compile('^([^ ]+( +[^ ]+)+)+[^ ]}');\n \n return !regExp.test({selfDefendingFunctionName});\n };\n \n return test();\n });\n \n {selfDefendingFunctionName}();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(24),I=r(28),S=r(7),O=r(138),C=r(48),j=r(139),_=r(140),R=r(141),F=r(142),T=r(143),x=r(16),w=r(6);let P=class extends x.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(e){return w.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.getDecodeStringArrayTemplate(),t=[`^${this.stringArrayName}$`];return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(F.StringArrayCallsWrapperTemplate(),{decodeCodeHelperTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),{reservedNames:t})}getDecodeStringArrayTemplate(){const e=this.options.target!==v.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():C.GlobalVariableNoEvalTemplate(),t=this.customCodeHelperFormatter.formatTemplate(O.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=this.customCodeHelperFormatter.formatTemplate(_.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case I.StringArrayEncoding.Rc4:r=this.customCodeHelperFormatter.formatTemplate(T.StringArrayRC4DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,rc4Polyfill:j.Rc4Template(),stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case I.StringArrayEncoding.Base64:r=this.customCodeHelperFormatter.formatTemplate(R.StringArrayBase64DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};d([S.initializable(),l("design:type",String)],P.prototype,"stringArrayName",void 0),d([S.initializable(),l("design:type",String)],P.prototype,"stringArrayCallsWrapperName",void 0),P=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],P),t.StringArrayCallsWrapperCodeHelper=P},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n const str = String(input).replace(/=+$/, '');\n let output = '';\n for (\n let bc = 0, bs, buffer, idx = 0;\n buffer = str.charAt(idx++);\n ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,\n bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0\n ) {\n buffer = chars.indexOf(buffer);\n }\n return output;\n }\n );\n })();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n const rc4 = function (str, key) {\n let s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (let k = 0, length = str.length; k < length; k++) {\n newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);\n }\n \n str = decodeURIComponent(newStr);\n \t \n let i;\n \t \n\t for (i = 0; i < 256; i++) {\n s[i] = i;\n }\n \n for (i = 0; i < 256; i++) {\n j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n }\n \n i = 0;\n j = 0;\n \n for (let y = 0; y < str.length; y++) {\n i = (i + 1) % 256;\n j = (j + s[i]) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);\n }\n \n return res;\n }\n "}},function(e,t,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),i=e.getRandomString(6),a=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n const StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${i} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${a} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n const regExp = new RegExp(this.${i} + this.${a});\n const expression = regExp.test(this.${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 (let 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.StringArrayBase64DecodeTemplate=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 const string = atob(str);\n let newStringChars = [];\n \n for (let i = 0, length = string.length; i < length; i++) {\n newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);\n }\n \n return decodeURIComponent(newStringChars);\n };\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const 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 const {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n let value = {stringArrayName}[index];\n \n {decodeCodeHelperTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRC4DecodeTemplate=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 const 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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(37),v=r(7),I=r(145),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.stringArrayStorage=e,this.stringArrayName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(I.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};d([v.initializable(),l("design:type","function"==typeof(o=void 0!==N.IStringArrayStorage&&N.IStringArrayStorage)?o:Object)],C.prototype,"stringArrayStorage",void 0),d([v.initializable(),l("design:type",String)],C.prototype,"stringArrayName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.StringArrayCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n const {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(7),I=r(147),S=r(148),O=r(16),C=r(6),j=r(38);let _=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayRotationAmount=t}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.identifierNamesGenerator.generateForGlobalScope(),t=this.identifierNamesGenerator.generateForGlobalScope(),r=[`^${this.stringArrayName}$`];let o="";return o=this.options.selfDefending?this.customCodeHelperFormatter.formatTemplate(I.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(S.StringArrayRotateFunctionTemplate(),{code:o,timesName:e,whileFunctionName:t,stringArrayName:this.stringArrayName,stringArrayRotationAmount:j.NumberUtils.toHex(this.stringArrayRotationAmount)}),{reservedNames:r})}};d([v.initializable(),l("design:type",String)],_.prototype,"stringArrayName",void 0),d([v.initializable(),l("design:type",Number)],_.prototype,"stringArrayRotationAmount",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],_),t.StringArrayRotateFunctionCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const selfDefendingFunc = function () {\n const object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n let updatedCookie = name + "=" + value;\n let i = 0;\n \n for (let i = 0, len = options.length; i < len; i++) {\n const propName = options[i];\n \n updatedCookie += "; " + propName;\n \n const propValue = options[propName];\n \n options.push(propValue);\n len = options.length;\n \n if (propValue !== true) {\n updatedCookie += "=" + propValue;\n }\n }\n\n document['cookie'] = updatedCookie;\n },\n removeCookie: function(){return 'dev';},\n getCookie: function (document, name) {\n document = document || function (value) { return value };\n const matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n const func = function (param1, param2) {\n param1(++param2);\n };\n \n func({whileFunctionName}, {timesName});\n \n return matches ? decodeURIComponent(matches[1]) : undefined;\n }\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n let cookie = '';\n const result = object['updateCookie']();\n \n if (!result) {\n object['setCookie'](['*'], 'counter', 1);\n } else if (result) {\n cookie = object['getCookie'](null, 'counter');\n } else {\n object['removeCookie']();\n }\n };\n \n selfDefendingFunc();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n const {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotationAmount});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(21),s=r(60),c=r(62),d=r(150),l=r(151),u=r(152),f=r(153),p=r(154),m=r(155),g=r(156),y=r(158),h=r(159),b=r(160),N=r(161);t.customNodesModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(l.BinaryExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(u.BlockStatementControlFlowFlatteningNode).whenTargetNamed(a.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(p.CallExpressionControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(m.CallExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.ControlFlowStorageNode).whenTargetNamed(a.ControlFlowCustomNode.ControlFlowStorageNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.LogicalExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.StringLiteralNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.StringLiteralControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(f.BlockStatementDeadCodeInjectionNode).whenTargetNamed(s.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(d.ObjectExpressionVariableDeclarationHostNode).whenTargetNamed(c.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode),e(i.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions)),e(i.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(4);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.lexicalScopeNode=e,this.properties=t}getNodeStructure(){const e=b.NodeGuards.isProgramNode(this.lexicalScopeNode)?this.identifierNamesGenerator.generateForGlobalScope():this.identifierNamesGenerator.generateForLexicalScope(this.lexicalScopeNode);return[h.NodeFactory.variableDeclarationNode([h.NodeFactory.variableDeclaratorNode(h.NodeFactory.identifierNode(e),h.NodeFactory.objectExpressionNode(this.properties))],"const")]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.ObjectExpressionVariableDeclarationHostNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.binaryExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BinaryExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(4),v=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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=b.NodeFactory.blockStatementNode([b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(e),b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),b.NodeFactory.identifierNode("split")),[b.NodeFactory.literalNode("|")]))],"const"),b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(t),b.NodeFactory.literalNode(0))],"let"),b.NodeFactory.whileStatementNode(b.NodeFactory.literalNode(!0),b.NodeFactory.blockStatementNode([b.NodeFactory.switchStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(e),b.NodeFactory.updateExpressionNode("++",b.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return N.NodeGuards.isReturnStatementNode(r)||o.push(b.NodeFactory.continueStatement()),b.NodeFactory.switchCaseNode(b.NodeFactory.literalNode(String(t)),o)})),b.NodeFactory.breakStatement()]))]);return v.NodeUtils.parentizeAst(r),[r]}};s([y.initializable(),c("design:type",Array)],I.prototype,"blockStatementBody",void 0),s([y.initializable(),c("design:type",Array)],I.prototype,"originalKeysIndexesInShuffledArray",void 0),s([y.initializable(),c("design:type",Array)],I.prototype,"shuffledKeys",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.BlockStatementControlFlowFlatteningNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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),[i,a]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=h.NodeFactory.blockStatementNode([h.NodeFactory.ifStatementNode(h.NodeFactory.binaryExpressionNode(r,h.NodeFactory.literalNode(o),h.NodeFactory.literalNode(n)),i,a)]);return b.NodeUtils.parentizeAst(s),[s]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BlockStatementDeadCodeInjectionNode=N},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(2),y=r(3),h=r(7),b=r(15),N=r(8),v=r(6);let I=class extends b.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=N.NodeFactory.expressionStatementNode(N.NodeFactory.callExpressionNode(N.NodeFactory.memberExpressionNode(N.NodeFactory.identifierNode(this.controlFlowStorageName),N.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return v.NodeUtils.parentizeAst(e),[e]}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof ESTree&&ESTree.Expression)?o:Object)],I.prototype,"callee",void 0),c([h.initializable(),d("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),c([h.initializable(),d("design:type",String)],I.prototype,"controlFlowStorageName",void 0),c([h.initializable(),d("design:type",Array)],I.prototype,"expressionArguments",void 0),I=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],I),t.CallExpressionControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=b.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(157),m=r(5),g=r(9),y=r(2),h=r(3),b=r(7),N=r(15),v=r(8),I=r(4),S=r(6);let O=class extends N.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.controlFlowStorage=e}getNodeStructure(){const e=Array.from(this.controlFlowStorage.getStorage()).map(([e,t])=>{const r=t.getNode()[0];if(!I.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return v.NodeFactory.propertyNode(v.NodeFactory.identifierNode(e),r.expression)});let t=v.NodeFactory.variableDeclarationNode([v.NodeFactory.variableDeclaratorNode(v.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),v.NodeFactory.objectExpressionNode(e))],"const");return t=S.NodeUtils.parentizeAst(t),[t]}};c([b.initializable(),d("design:type","function"==typeof(o=void 0!==p.TControlFlowStorage&&p.TControlFlowStorage)?o:Object)],O.prototype,"controlFlowStorage",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],O),t.ControlFlowStorageNode=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageName",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.ExpressionWithOperatorControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.logicalExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.LogicalExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageName",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.StringLiteralControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8);let N=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.literalValue=e}getNodeStructure(){return[b.NodeFactory.expressionStatementNode(b.NodeFactory.literalNode(this.literalValue))]}};s([y.initializable(),c("design:type",String)],N.prototype,"literalValue",void 0),N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.StringLiteralNode=N},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(1),i=r(33),a=r(164),s=r(165),c=r(166);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(a.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.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 i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(36),p=r(2),m=r(3),g=r(50),y=r(23);let h=o=class extends g.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}generateForGlobalScope(){const e=this.generateNewDictionaryName();return this.preserveName(e),e}generateForLexicalScope(e){const t=[e,...y.NodeLexicalScopeUtils.getLexicalScopes(e)],r=this.generateNewDictionaryName();return this.isValidIdentifierNameInLexicalScopes(r,t)?(this.preserveNameForLexicalScope(r,e),r):this.generateForLexicalScope(e)}generateWithPrefix(){const e=`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:""}${this.generateNewDictionaryName()}`;return this.isValidIdentifierName(e)?(this.preserveName(e),e):this.generateWithPrefix()}generateNewDictionaryName(){if(!this.identifierNamesSet.size)throw new Error("Too many identifiers in the code, add more words to identifiers dictionary");const e=this.identifiersIterator.next();if(!e.done){const t=e.value;return this.isValidIdentifierName(t)?e.value:this.generateNewDictionaryName()}return this.identifierNamesSet=new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet])),this.identifiersIterator=this.identifierNamesSet.values(),this.generateNewDictionaryName()}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)}};h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(1,l.inject(u.ServiceIdentifiers.IOptions)),d(2,l.inject(u.ServiceIdentifiers.IArrayUtils)),c("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object,"function"==typeof(a=void 0!==f.IArrayUtils&&f.IArrayUtils)?a:Object])],h),t.DictionaryIdentifierNamesGenerator=h},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(38),g=r(26);let y=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t)}generateForGlobalScope(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=m.NumberUtils.toHex(t),n=g.Utils.hexadecimalPrefix.length+1,i=e?e-n:o.baseIdentifierNameLength,a=r.substr(0,i),s=`_${g.Utils.hexadecimalPrefix}${a}`;return this.isValidIdentifierName(s)?(this.preserveName(s),s):this.generateForGlobalScope(e)}generateForLexicalScope(e,t){return this.generateForGlobalScope(t)}generateWithPrefix(e){const t=this.generateForGlobalScope(e);return`${this.options.identifiersPrefix}${t}`.replace("__","_")}};y.baseIdentifierNameLength=6,y=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],y),t.HexadecimalIdentifierNamesGenerator=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(23);let g=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.initMangledNameCharacter}generateForGlobalScope(e){const t=this.generateNewMangledName(this.previousMangledName);return this.previousMangledName=t,this.preserveName(t),t}generateForLexicalScope(e,t){const r=[e,...m.NodeLexicalScopeUtils.getLexicalScopes(e)];let n=this.getLastMangledNameForScopes(r);do{n=this.generateNewMangledName(n)}while(!this.isValidIdentifierNameInLexicalScopes(n,r));return o.lastMangledNameInScopeMap.set(e,n),this.preserveNameForLexicalScope(n,e),n}generateWithPrefix(e){const t=this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:"",r=this.generateNewMangledName(this.previousMangledName),o=`${t}${r}`;return this.previousMangledName=r,this.isValidIdentifierName(o)?(this.preserveName(o),o):this.generateWithPrefix(e)}isValidIdentifierName(e){return super.isValidIdentifierName(e)&&!o.reservedNamesSet.has(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=t.length,n=e.length,i=e=>"0".repeat(e);let a=n-1;do{const o=e[a],s=t.indexOf(o);if(s!==r-1){return e.substring(0,a)+t[s+1]+i(n-(a+1))}--a}while(a>=0);return`a${i(n)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}getLastMangledNameForScopes(e){var t;for(const r of e){const e=null!==(t=o.lastMangledNameInScopeMap.get(r))&&void 0!==t?t:null;if(e)return e}return o.initMangledNameCharacter}};g.initMangledNameCharacter="9",g.lastMangledNameInScopeMap=new Map,g.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),g.reservedNamesSet=new Set(["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"]),g=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],g),t.MangledIdentifierNamesGenerator=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(13),a=r(168);t.initializingTransformersModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.INodeTransformer).to(a.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer)})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(10),y=r(11),h=r(65),b=r(4);let N=o=class extends y.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case g.TransformationStage.Initializing:return{leave:e=>{if(b.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(!e.comments||!e.comments.length)return e;const t=this.transformComments(e.comments);return 0===t.length?e:e.body.length?(f.traverse(e,{enter:r=>{if(r===e)return;const o=t.findIndex(e=>e.range&&r.range&&e.range[0]0&&(e.trailingComments=t.reverse()),e):(e.leadingComments=t,e)}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||h.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};N.preservedWords=["@license","@preserve"],N=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],N),t.CommentsTransformer=N},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(170);t.nodeModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IScopeIdentifiersTraverser).to(i.ScopeIdentifiersTraverser).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(171),u=r(4);let f=o=class{constructor(e){this.scopeAnalyzer=e}traverse(e,t,r){this.scopeAnalyzer.analyze(e);const o=this.scopeAnalyzer.acquireScope(e);this.traverseScopeVariables(o,o,r)}traverseScopeVariables(e,t,r){const n=t.variableScope,i=u.NodeGuards.isNodeWithBlockLexicalScope(n.block)?n.block:null,a=o.globalScopeNames.includes(n.type);if(i){for(const s of t.variables){if(s.name===o.argumentsVariableName)continue;r({isGlobalDeclaration:a,isBubblingDeclaration:s.identifiers.some(e=>e.parentNode&&u.NodeGuards.isPropertyNode(e.parentNode)&&e.parentNode.shorthand),rootScope:e,variable:s,variableScope:n,variableLexicalScopeNode:i})}for(const o of t.childScopes)this.traverseScopeVariables(e,o,r)}}};f.argumentsVariableName="arguments",f.globalScopeNames=["global","module"],f=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IScopeAnalyzer)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IScopeAnalyzer&&l.IScopeAnalyzer)?n:Object])],f),t.ScopeIdentifiersTraverser=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1);t.nodeTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(39),s=r(66),c=r(13),d=r(174),l=r(175),u=r(176),f=r(177),p=r(179),m=r(180),g=r(181);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(u.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(g.ScopeIdentifiersTransformer).whenTargetNamed(c.NodeTransformer.ScopeIdentifiersTransformer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(p.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(m.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(i.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObfuscatingReplacer)),e(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(5),u=r(2),f=r(40),p=r(8);let m=class extends f.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){let r=e.name;if(this.blockScopesMap.has(t)){const e=this.blockScopesMap.get(t);e.has(r)&&(r=e.get(r))}return p.NodeFactory.identifierNode(r)}storeGlobalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}storeLocalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateForLexicalScope(t);this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}preserveName(e){this.identifierNamesGenerator.preserveName(e.name)}preserveNameForLexicalScope(e,t){this.identifierNamesGenerator.preserveNameForLexicalScope(e.name,t)}isReservedName(e){return!!this.options.reservedNames.length&&this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.TIdentifierNamesGeneratorFactory&&l.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==u.IOptions&&u.IOptions)?n:Object])],m),t.BaseIdentifierObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(40),f=r(8);let p=o=class extends u.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",f.NodeFactory.arrayExpressionNode())}replace(e){const t=e.value;if("boolean"!=typeof t)throw new Error("`BooleanLiteralObfuscatingReplacer` should accept only literals with `boolean` value");return t?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};p=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.BooleanLiteralObfuscatingReplacer=p},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(51),m=r(2),g=r(3),y=r(39),h=r(10),b=r(11),N=r(4),v=r(23);let I=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(y.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&N.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=v.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label,t)}replaceLabeledStatementName(e,t){f.replace(e,{enter:(e,r)=>{if(r&&N.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e,t);e.name=r.name}}})}};I=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),c(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(2,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierObfuscatingReplacerFactory&&p.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==m.IOptions&&m.IOptions)?i:Object])],I),t.LabeledStatementTransformer=I},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(178),m=r(32),g=r(2),y=r(3),h=r(67),b=r(66),N=r(10),v=r(11),I=r(8),S=r(4),O=r(45),C=r(19),j=r(6);let _=class extends v.AbstractNodeTransformer{constructor(e,t,r,o,n){super(t,r),this.literalObfuscatingReplacerFactory=e,this.stringArrayStorageAnalyzer=o,this.escapeSequenceEncoder=n}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(S.NodeGuards.isProgramNode(e)&&this.analyzeNode(e),t&&S.NodeGuards.isLiteralNode(e)&&!C.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};case N.TransformationStage.Finalizing:return{enter:(e,t)=>{if(t&&S.NodeGuards.isLiteralNode(e))return this.encodeLiteralNodeToEscapeSequence(e,t)}};default:return null}}analyzeNode(e){this.stringArrayStorageAnalyzer.analyze(e)}transformNode(e,t){if(O.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e);break;case"number":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e);break;case"string":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e);break;default:r=e}return j.NodeUtils.parentizeNode(r,t),r}encodeLiteralNodeToEscapeSequence(e,t){return"string"!=typeof e.value?e:I.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e.value,this.options.unicodeEscapeSequence))}};_=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IObfuscatingReplacer)),l(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(2,u.inject(f.ServiceIdentifiers.IOptions)),l(3,u.inject(f.ServiceIdentifiers.IStringArrayStorageAnalyzer)),l(4,u.inject(f.ServiceIdentifiers.IEscapeSequenceEncoder)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TLiteralObfuscatingReplacerFactory&&p.TLiteralObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IStringArrayStorageAnalyzer&&h.IStringArrayStorageAnalyzer)?a:Object,"function"==typeof(s=void 0!==m.IEscapeSequenceEncoder&&m.IEscapeSequenceEncoder)?s:Object])],_),t.LiteralTransformer=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2),l=r(40),u=r(8),f=r(38),p=r(26);let m=class extends l.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){const t=e.value;if("number"!=typeof t)throw new Error("`NumberLiteralObfuscatingReplacer` should accept only literals with `number` value");let r;return this.numberLiteralCache.has(t)?r=this.numberLiteralCache.get(t):(r=f.NumberUtils.isCeil(t)?`${p.Utils.hexadecimalPrefix}${f.NumberUtils.toHex(t)}`:String(t),this.numberLiteralCache.set(t,r)),u.NodeFactory.literalNode(t,r)}};m=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],m),t.NumberLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(2),p=r(37),m=r(67),g=r(28),y=r(40),h=r(19),b=r(8),N=r(38),v=r(26);let I=o=class extends y.AbstractObfuscatingReplacer{constructor(e,t,r){super(r),this.nodesCache=new Map,this.stringArrayStorage=e,this.stringArrayStorageAnalyzer=t}static getHexadecimalLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}initialize(){this.options.shuffleStringArray&&this.stringArrayStorage.shuffleStorage(),this.options.rotateStringArray&&this.stringArrayStorage.rotateStorage()}replace(e){const t=e.value;if("string"!=typeof t)throw new Error("`StringLiteralObfuscatingReplacer` should accept only literals with `string` value");const r=this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(e),o=`${t}-${Boolean(r)}`;if(this.nodesCache.has(o)&&this.options.stringArrayEncoding!==g.StringArrayEncoding.Rc4)return this.nodesCache.get(o);const n=r?this.replaceWithStringArrayCallNode(r):this.replaceWithLiteralNode(t);return this.nodesCache.set(o,n),n}replaceWithLiteralNode(e){return b.NodeFactory.literalNode(e)}replaceWithStringArrayCallNode(e){const{index:t,decodeKey:r}=e,n=`${v.Utils.hexadecimalPrefix}${N.NumberUtils.toHex(t)}`,i=[o.getHexadecimalLiteralNode(n)];r&&i.push(o.getRc4KeyLiteralNode(r));const a=b.NodeFactory.identifierNode(this.stringArrayStorage.getStorageCallsWrapperName());return b.NodeFactory.callExpressionNode(a,i)}};s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],I.prototype,"initialize",null),I=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IStringArrayStorage)),d(1,l.inject(u.ServiceIdentifiers.IStringArrayStorageAnalyzer)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==p.IStringArrayStorage&&p.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==m.IStringArrayStorageAnalyzer&&m.IStringArrayStorageAnalyzer)?i:Object,"function"==typeof(a=void 0!==f.IOptions&&f.IOptions)?a:Object])],I),t.StringLiteralObfuscatingReplacer=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(51),g=r(2),y=r(3),h=r(68),b=r(39),N=r(10),v=r(11),I=r(4),S=r(19);let O=class extends v.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.lexicalScopesWithObjectPatternWithoutDeclarationMap=new Map,this.identifierObfuscatingReplacer=e(b.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&I.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,e=>{const{isGlobalDeclaration:t,variable:r,variableLexicalScopeNode:o}=e;if(!this.options.renameGlobals&&t){if(!r.defs.every(e=>"ImportBinding"===e.type||"CatchClause"===e.type))return}this.transformScopeVariableIdentifiers(r,o,t)}),e}transformScopeVariableIdentifiers(e,t,r){var o;const n=null!==(o=e.identifiers[0])&&void 0!==o?o:null;n&&this.isReplaceableIdentifierNode(n,t,e)&&(this.storeIdentifierName(n,t,r),this.replaceIdentifierName(n,t,e))}storeIdentifierName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e,t):this.identifierObfuscatingReplacer.storeLocalName(e,t)}replaceIdentifierName(e,t,r){const o=this.identifierObfuscatingReplacer.replace(e,t);r.identifiers.forEach(e=>{e.name=o.name}),r.references.forEach(t=>{t.identifier.name=e.name})}isReplaceableIdentifierNode(e,t,r){const o=e.parentNode;return!(!o||S.NodeMetadata.isIgnoredNode(e)||this.isProhibitedPropertyNode(e,o)||this.isProhibitedClassDeclarationNameIdentifierNode(r,e,o)||this.isProhibitedExportNamedClassDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedVariableDeclarationIdentifierNode(e,o)||this.isProhibitedImportSpecifierNode(e,o)||this.isProhibitedVariableNameUsedInObjectPatternNode(r,e,t)||I.NodeGuards.isLabelIdentifierNode(e,o))}isProhibitedClassDeclarationNameIdentifierNode(e,t,r){return I.NodeGuards.isClassDeclarationNode(e.scope.block)&&I.NodeGuards.isClassDeclarationNode(r)&&r.id===t}isProhibitedExportNamedClassDeclarationIdentifierNode(e,t){return I.NodeGuards.isClassDeclarationNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,t){return I.NodeGuards.isFunctionDeclarationNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedVariableDeclarationIdentifierNode(e,t){return I.NodeGuards.isVariableDeclaratorNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isVariableDeclarationNode(t.parentNode)&&!!t.parentNode.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode.parentNode)}isProhibitedImportSpecifierNode(e,t){return I.NodeGuards.isImportSpecifierNode(t)&&t.imported.name===t.local.name}isProhibitedPropertyNode(e,t){const r=I.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e,o=I.NodeGuards.isAssignmentPatternNode(t)&&t.left===e&&!!t.parentNode&&I.NodeGuards.isPropertyNode(t.parentNode)&&t.left===t.parentNode.key;return r||o}isProhibitedVariableNameUsedInObjectPatternNode(e,t,r){let o=this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(r);if(!1===o)return!1;if(!e.defs.some(e=>"var"===e.kind))return!1;let n=!1;return p.traverse(r,{enter:(e,r)=>{if(I.NodeGuards.isObjectPatternNode(e)&&r&&I.NodeGuards.isAssignmentExpressionNode(r)){o=!0;const r=e.properties;for(const e of r)if(!e.computed&&e.shorthand&&I.NodeGuards.isIdentifierNode(e.key)&&t.name===e.key.name)return n=!0,p.VisitorOption.Break}}}),this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(r,null!=o&&o),n}};O=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),d(3,u.inject(f.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierObfuscatingReplacerFactory&&m.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IScopeIdentifiersTraverser&&h.IScopeIdentifiersTraverser)?a:Object])],O),t.ScopeIdentifiersTransformer=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(183),a=r(190);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(i.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(a.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(31),m=r(0),g=r(1),y=r(69),h=r(184),b=r(185),N=r(186),v=r(33),I=r(24),S=r(34),O=r(28),C=r(41),j=r(187),_=r(188);let R=o=class{constructor(e,t){Object.assign(this,C.DEFAULT_PRESET,e);const r=y.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${j.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};R.validatorOptions={validationError:{target:!1}},l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"compact",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"controlFlowFlattening",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"controlFlowFlatteningThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"deadCodeInjection",void 0),l([y.IsNumber(),u("design:type",Number)],R.prototype,"deadCodeInjectionThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtection",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtectionInterval",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"disableConsoleOutput",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),_.IsAllowedForObfuscationTargets([I.ObfuscationTarget.Browser,I.ObfuscationTarget.BrowserNoEval]),u("design:type",Array)],R.prototype,"domainLock",void 0),l([y.IsIn([v.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,v.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,v.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),u("design:type","function"==typeof(n=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?n:Object)],R.prototype,"identifierNamesGenerator",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"identifiersPrefix",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),y.ValidateIf(e=>e.identifierNamesGenerator===v.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),y.ArrayNotEmpty(),u("design:type",Array)],R.prototype,"identifiersDictionary",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"inputFileName",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"log",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"renameGlobals",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedNames",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedStrings",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"rotateStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"selfDefending",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"shuffleStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"sourceMap",void 0),l([y.IsString(),y.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),y.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),u("design:type",String)],R.prototype,"sourceMapBaseUrl",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"sourceMapFileName",void 0),l([y.IsIn([S.SourceMapMode.Inline,S.SourceMapMode.Separate]),u("design:type","function"==typeof(i=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?i:Object)],R.prototype,"sourceMapMode",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"splitStrings",void 0),l([y.IsNumber(),y.ValidateIf(e=>Boolean(e.splitStrings)),y.Min(1),u("design:type",Number)],R.prototype,"splitStringsChunkLength",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"stringArray",void 0),l([y.IsIn([!0,!1,O.StringArrayEncoding.Base64,O.StringArrayEncoding.Rc4]),u("design:type","function"==typeof(a=void 0!==b.TStringArrayEncoding&&b.TStringArrayEncoding)?a:Object)],R.prototype,"stringArrayEncoding",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"stringArrayThreshold",void 0),l([y.IsIn([I.ObfuscationTarget.Browser,I.ObfuscationTarget.BrowserNoEval,I.ObfuscationTarget.Node]),u("design:type","function"==typeof(s=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?s:Object)],R.prototype,"target",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"transformObjectKeys",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"unicodeEscapeSequence",void 0),R=o=l([m.injectable(),f(0,m.inject(g.ServiceIdentifiers.TInputOptions)),f(1,m.inject(g.ServiceIdentifiers.IOptionsNormalizer)),u("design:paramtypes",["function"==typeof(c=void 0!==h.TInputOptions&&h.TInputOptions)?c:Object,"function"==typeof(d=void 0!==N.IOptionsNormalizer&&N.IOptionsNormalizer)?d:Object])],R),t.Options=R},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(69),i=o(r(189)),a=r(42),s=r(41);t.IsAllowedForObfuscationTargets=function(e,t){return(r,o)=>{n.registerDecorator({propertyName:o,constraints:[e],name:"IsAllowedForObfuscationTargets",options:t,target:r.constructor,validator:{validate(t,r){const n=r.object,a=s.DEFAULT_PRESET[o];return i.default(t,a)||e.includes(n.target)},defaultMessage:t=>`This option allowed only for obfuscation targets: ${e.join(`${a.StringSeparator.Comma} `)}`}})}}},function(e,t){e.exports=require("fast-deep-equal")},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(191),s=r(192),c=r(193),d=r(194),l=r(195),u=r(196),f=r(197),p=r(198),m=r(199),g=r(200),y=r(201),h=r(202),b=r(203);let N=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};N.normalizerRules=[a.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,f.SelfDefendingRule,p.SourceMapBaseUrlRule,m.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,y.StringArrayRule,h.StringArrayEncodingRule,b.StringArrayThresholdRule],N=o=n([i.injectable()],N),t.OptionsNormalizer=N},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(41);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});const o=r(42);t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(o.StringSeparator.Dot).slice(0,-1).join(o.StringSeparator.Dot)||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});const o=r(42);t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;if(t){t=t.replace(/^\/+/,"").replace(/(?:\.js)?(?:\.map)?$/,"");let r=t.split(o.StringSeparator.Dot);const n=r.length,i=r[n-1];n>1&&i.length<=3&&(r=r.slice(0,-1)),t=r.join(o.StringSeparator.Dot),e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})}return 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,shuffleStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);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(17),n=r(0),i=r(1),a=r(13),s=r(70),c=r(205),d=r(65),l=r(206),u=r(210),f=r(212),p=r(213),m=r(215),g=r(216),y=r(217);t.preparingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(l.CustomCodeHelpersTransformer).whenTargetNamed(a.NodeTransformer.CustomCodeHelpersTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.EvalCallExpressionTransformer).whenTargetNamed(a.NodeTransformer.EvalCallExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.MetadataTransformer).whenTargetNamed(a.NodeTransformer.MetadataTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.ObfuscatingGuardsTransformer).whenTargetNamed(a.NodeTransformer.ObfuscatingGuardsTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.ParentificationTransformer).whenTargetNamed(a.NodeTransformer.ParentificationTransformer),e(i.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(d.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(g.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(i.ServiceIdentifiers.INodeTransformer).to(y.VariablePreserveTransformer).whenTargetNamed(a.NodeTransformer.VariablePreserveTransformer),e(i.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeGuard))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=r(4);let c=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(207),g=r(208),y=r(2),h=r(3),b=r(209),N=r(64),v=r(13),I=r(25),S=r(10),O=r(11),C=r(4);let j=class extends O.AbstractNodeTransformer{constructor(e,t,r,o,n,i){super(n,i),this.runAfter=[v.NodeTransformer.ParentificationTransformer,v.NodeTransformer.VariablePreserveTransformer],this.callsGraphData=[],this.callsGraphAnalyzer=e,this.prevailingKindOfVariablesAnalyzer=t,this.obfuscationEventEmitter=r,this.customCodeHelperGroupStorage=o}getVisitor(e){switch(e){case S.TransformationStage.Preparing:return{leave:(e,t)=>{if(C.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case S.TransformationStage.Finalizing:return{leave:(e,t)=>{C.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.callsGraphData=this.callsGraphAnalyzer.analyze(e),this.prevailingKindOfVariablesAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customCodeHelperGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendNodes.bind(e))}),this.obfuscationEventEmitter.emit(I.ObfuscationEvent.BeforeObfuscation,e,this.callsGraphData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(I.ObfuscationEvent.AfterObfuscation,e,this.callsGraphData)}};j=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.ICallsGraphAnalyzer)),u(1,f.inject(p.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),u(2,f.inject(p.ServiceIdentifiers.IObfuscationEventEmitter)),u(3,f.inject(p.ServiceIdentifiers.TCustomNodeGroupStorage)),u(4,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(5,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(o=void 0!==b.ICallsGraphAnalyzer&&b.ICallsGraphAnalyzer)?o:Object,"function"==typeof(n=void 0!==N.IPrevailingKindOfVariablesAnalyzer&&N.IPrevailingKindOfVariablesAnalyzer)?n:Object,"function"==typeof(i=void 0!==g.IObfuscationEventEmitter&&g.IObfuscationEventEmitter)?i:Object,"function"==typeof(a=void 0!==m.TCustomCodeHelperGroupStorage&&m.TCustomCodeHelperGroupStorage)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],j),t.CustomCodeHelpersTransformer=j},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(211)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),v=r(6);let I=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return N.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):N.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 y.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case y.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 i;try{i=v.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const a=b.NodeFactory.functionExpressionNode([],b.NodeFactory.blockStatementNode(i));return v.NodeUtils.parentizeAst(a),v.NodeUtils.parentizeNode(a,t),this.evalRootAstHostNodeSet.add(a),a}restoreNode(e,t){const r=e.body.body,o=v.NodeUtils.convertStructureToCode(r);return b.NodeFactory.callExpressionNode(b.NodeFactory.identifierNode("eval"),[b.NodeFactory.literalNode(f.default(o))])}isEvalRootAstHostNode(e){return N.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};I=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],I),t.EvalCallExpressionTransformer=I},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(13),p=r(10),m=r(11),g=r(4),y=r(19);let h=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[f.NodeTransformer.ParentificationTransformer,f.NodeTransformer.VariablePreserveTransformer]}getVisitor(e){switch(e){case p.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return y.NodeMetadata.set(e,{ignoredNode:!1}),g.NodeGuards.isLiteralNode(e)&&y.NodeMetadata.set(e,{replacedLiteral:!1}),e}};h=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],h),t.MetadataTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(214),p=r(2),m=r(3),g=r(13),y=r(70),h=r(10),b=r(11),N=r(19);let v=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case h.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 N.NodeMetadata.set(e,{ignoredNode:!r}),e}};v.obfuscatingGuardsList=[y.ObfuscatingGuard.BlackListObfuscatingGuard,y.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,y.ObfuscatingGuard.ReservedStringObfuscatingGuard],v=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__INodeGuard)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TObfuscatingGuardFactory&&f.TObfuscatingGuardFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],v),t.ObfuscatingGuardsTransformer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(6);let g=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return m.NodeUtils.parentizeNode(e,t)}};g=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],g),t.ParentificationTransformer=g},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(2),d=r(1),l=r(4);let u=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!l.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))}};u=n([s.injectable(),a(0,s.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==c.IOptions&&c.IOptions)?o:Object])],u),t.ReservedStringObfuscatingGuard=u},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(51),f=r(2),p=r(3),m=r(68),g=r(13),y=r(1),h=r(10),b=r(11),N=r(39),v=r(4);let I=class extends b.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer],this.identifierObfuscatingReplacer=e(N.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o,this.preserveScopeVariableIdentifiers=this.preserveScopeVariableIdentifiers.bind(this)}getVisitor(e){switch(e){case h.TransformationStage.Preparing:case h.TransformationStage.Converting:case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&v.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,this.preserveScopeVariableIdentifiers),e}preserveScopeVariableIdentifiers(e){const{isGlobalDeclaration:t,isBubblingDeclaration:r,variable:o,variableScope:n}=e;for(const e of o.identifiers)t||r?this.preserveIdentifierNameForRootLexicalScope(e):this.preserveIdentifierNameForLexicalScope(e,n)}preserveIdentifierNameForRootLexicalScope(e){this.identifierObfuscatingReplacer.preserveName(e)}preserveIdentifierNameForLexicalScope(e,t){const r=v.NodeGuards.isNodeWithLexicalScope(t.block)?t.block:null;r&&this.identifierObfuscatingReplacer.preserveNameForLexicalScope(e,r)}};I=s([l.injectable(),d(0,l.inject(y.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,l.inject(y.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(y.ServiceIdentifiers.IOptions)),d(3,l.inject(y.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierObfuscatingReplacerFactory&&u.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object,"function"==typeof(a=void 0!==m.IScopeIdentifiersTraverser&&m.IScopeIdentifiersTraverser)?a:Object])],I),t.VariablePreserveTransformer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(219),a=r(220),s=r(222);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(a.CustomCodeHelperGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.IStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(i.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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(52);let p=class extends f.MapStorage{constructor(e,t){super(e,t)}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.ControlFlowStorage=p},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(221),p=r(2),m=r(3),g=r(63),y=r(52);let h=o=class extends y.MapStorage{constructor(e,t,r){super(t,r),this.customCodeHelperGroupFactory=e}initialize(){super.initialize(),o.customCodeHelperGroupsList.forEach(e=>{const t=this.customCodeHelperGroupFactory(e);this.storage.set(e,t)})}};h.customCodeHelperGroupsList=[g.CustomCodeHelperGroup.ConsoleOutput,g.CustomCodeHelperGroup.DebugProtection,g.CustomCodeHelperGroup.DomainLock,g.CustomCodeHelperGroup.SelfDefending,g.CustomCodeHelperGroup.StringArray],s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],h.prototype,"initialize",null),h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TCustomCodeHelperGroupFactory&&f.TCustomCodeHelperGroupFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.CustomCodeHelperGroupStorage=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=r(5),y=r(36),h=r(49),b=r(32),N=r(2),v=r(3),I=r(28),S=r(52);let O=o=class extends S.MapStorage{constructor(e,t,r,n,i,a){super(r,n),this.rc4EncodedValuesSourcesCache=new Map,this.rotationAmount=0,this.identifierNamesGenerator=e(n),this.arrayUtils=t,this.cryptUtils=i,this.escapeSequenceEncoder=a,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}initialize(){super.initialize(),this.rotationAmount=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(o.minimumRotationAmount,o.maximumRotationAmount):0}get(e){return this.getOrSetIfDoesNotExist(e)}getRotationAmount(){return this.rotationAmount}getStorageName(){return this.getStorageId()}getStorageId(){return this.stringArrayStorageName||(this.stringArrayStorageName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageName}getStorageCallsWrapperName(){return this.stringArrayStorageCallsWrapperName||(this.stringArrayStorageCallsWrapperName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageCallsWrapperName}rotateStorage(){this.getLength()&&(this.storage=new Map(this.arrayUtils.rotate(Array.from(this.storage.entries()),this.rotationAmount)))}shuffleStorage(){this.storage=new Map(this.arrayUtils.shuffle(Array.from(this.storage.entries())).map(([e,t],r)=>(t.index=r,[e,t])).sort(([,e],[,t])=>e.index-t.index))}toString(){return Array.from(this.storage.values()).map(e=>`'${this.escapeSequenceEncoder.encode(e.encodedValue,this.options.unicodeEscapeSequence)}'`).toString()}getOrSetIfDoesNotExist(e){const{encodedValue:t,decodeKey:r}=this.getEncodedValue(e),o=this.storage.get(t);if(o)return o;const n={encodedValue:t,decodeKey:r,value:e,index:this.getLength()};return this.storage.set(t,n),n}getEncodedValue(e){var t;switch(this.options.stringArrayEncoding){case I.StringArrayEncoding.Rc4:{const r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),o=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r)),n=null!==(t=this.rc4EncodedValuesSourcesCache.get(o))&&void 0!==t?t:[];let i=n.length;return(!i||!n.includes(e))&&(n.push(e),i++),this.rc4EncodedValuesSourcesCache.set(o,n),i>1?this.getEncodedValue(e):{encodedValue:o,decodeKey:r}}case I.StringArrayEncoding.Base64:{const t=null;return{encodedValue:this.cryptUtils.btoa(e),decodeKey:t}}default:return{encodedValue:e,decodeKey:null}}}};O.minimumRotationAmount=100,O.maximumRotationAmount=500,O.rc4KeyLength=4,O.rc4KeysCount=50,O.stringArrayNameLength=7,l([p.postConstruct(),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",void 0)],O.prototype,"initialize",null),O=o=l([p.injectable(),f(0,p.inject(m.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),f(1,p.inject(m.ServiceIdentifiers.IArrayUtils)),f(2,p.inject(m.ServiceIdentifiers.IRandomGenerator)),f(3,p.inject(m.ServiceIdentifiers.IOptions)),f(4,p.inject(m.ServiceIdentifiers.ICryptUtils)),f(5,p.inject(m.ServiceIdentifiers.IEscapeSequenceEncoder)),u("design:paramtypes",["function"==typeof(n=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==v.IRandomGenerator&&v.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==N.IOptions&&N.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object,"function"==typeof(d=void 0!==b.IEscapeSequenceEncoder&&b.IEscapeSequenceEncoder)?d:Object])],O),t.StringArrayStorage=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(224),a=r(225),s=r(229),c=r(230),d=r(231),l=r(71);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(i.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(a.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";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3);let l=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rn&&(o=i,n=e),r[i]=e}return o}rotate(e,t){if(!e.length)throw new ReferenceError("Cannot rotate empty array.");if(t<=0)return e;const r=e;let o;for(;t--;)o=r.pop(),o&&r.unshift(o);return r}shuffle(e){const t=[...e];for(let e=t.length;e;e--){const r=Math.floor(this.randomGenerator.getMathRandom()*e);[t[e-1],t[r]]=[t[r],t[e-1]]}return t}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IRandomGenerator)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IRandomGenerator&&d.IRandomGenerator)?o:Object])],l),t.ArrayUtils=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3),l=r(71),u=r(26);let f=class{constructor(e){this.randomGenerator=e}btoa(e){let t="";e=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(`${u.Utils.hexadecimalPrefix}${t}`,16)));for(let r,o,n=0,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(i="=",n%1);t+=i.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:l.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(;r=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{constructor(){this.stringsCache=new Map}encode(e,t){const r=`${e}-${String(t)}`;if(this.stringsCache.has(r))return this.stringsCache.get(r);const o=new RegExp("[\\s\\S]","g"),n=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const c=e.replace(o,e=>t||n.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(r,c),this.stringsCache.set(`${c}-${String(t)}`,c),c}};n=o([r(0).injectable()],n),t.EscapeSequenceEncoder=n},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=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)}};n=o([r(0).injectable()],n),t.LevelledTopologicalSorter=n},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(232);let l=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){void 0===t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.ILevelledTopologicalSorter)),i("design:paramtypes",["function"==typeof(o=void 0!==d.ILevelledTopologicalSorter&&d.ILevelledTopologicalSorter)?o:Object])],l),t.NodeTransformerNamesGroupsBuilder=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(47)),y=r(234),h=r(235),b=r(2),N=r(3),v=r(59),I=r(236),S=r(13),O=r(10),C=r(44),j=r(57),_=r(4),R=r(26);let F=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(I.LoggingMessage.Version,R.Utils.buildVersionMessage("0.25.2",1582733614409)),this.logger.info(I.LoggingMessage.ObfuscationStarted),this.logger.info(I.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),i=(Date.now()-t)/1e3;return this.logger.success(I.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(n)}parseCode(e){return j.ASTParserFacade.parse(e,o.parseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,O.TransformationStage.Initializing),!_.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,O.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,O.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,O.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,O.TransformationStage.Converting),e=this.runTransformationStage(e,O.TransformationStage.Obfuscating),e=this.runTransformationStage(e,O.TransformationStage.Finalizing)):(this.logger.warn(I.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=g.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(I.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};F.parseOptions={ecmaVersion:C.ecmaVersion,allowHashBang:!0,allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,locations:!0,ranges:!0},F.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},F.transformersList=[S.NodeTransformer.BlockStatementControlFlowTransformer,S.NodeTransformer.CommentsTransformer,S.NodeTransformer.CustomCodeHelpersTransformer,S.NodeTransformer.DeadCodeInjectionTransformer,S.NodeTransformer.EvalCallExpressionTransformer,S.NodeTransformer.FunctionControlFlowTransformer,S.NodeTransformer.LabeledStatementTransformer,S.NodeTransformer.LiteralTransformer,S.NodeTransformer.MemberExpressionTransformer,S.NodeTransformer.MetadataTransformer,S.NodeTransformer.MethodDefinitionTransformer,S.NodeTransformer.ObfuscatingGuardsTransformer,S.NodeTransformer.ObjectExpressionKeysTransformer,S.NodeTransformer.ObjectExpressionTransformer,S.NodeTransformer.ParentificationTransformer,S.NodeTransformer.ScopeIdentifiersTransformer,S.NodeTransformer.SplitStringTransformer,S.NodeTransformer.TemplateLiteralTransformer,S.NodeTransformer.VariablePreserveTransformer],F=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.ITransformersRunner)),u(1,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(2,p.inject(m.ServiceIdentifiers.Factory__IObfuscatedCode)),u(3,p.inject(m.ServiceIdentifiers.ILogger)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==v.ITransformersRunner&&v.ITransformersRunner)?n:Object,"function"==typeof(i=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==y.TObfuscatedCodeFactory&&y.TObfuscatedCodeFactory)?a:Object,"function"==typeof(s=void 0!==h.ILogger&&h.ILogger)?s:Object,"function"==typeof(c=void 0!==b.IOptions&&b.IOptions)?c:Object])],F),t.JavaScriptObfuscator=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(238));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=o([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(49),u=r(7),f=r(34),p=r(2);let m=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 f.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case f.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};i([u.initializable(),a("design:type",String)],m.prototype,"obfuscatedCode",void 0),i([u.initializable(),a("design:type",String)],m.prototype,"sourceMap",void 0),m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.ICryptUtils)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.ICryptUtils&&l.ICryptUtils)?o:Object,"function"==typeof(n=void 0!==p.IOptions&&p.IOptions)?n:Object])],m),t.ObfuscatedCode=m},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(242),p=r(243),m=r(244),g=r(4),y=r(19);let h=class{constructor(e,t){this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;const o=this.buildNormalizedNodeTransformers(t,r),n=this.nodeTransformerNamesGroupsBuilder.build(o);for(const t of n){const n=[],i=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(n.length||i.length)&&u.replace(e,{enter:this.mergeVisitorsForDirection(n,m.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,m.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e,t){return e.reduce((e,r)=>{const o=this.nodeTransformerFactory(r);return o.getVisitor(t)?Object.assign(Object.assign({},e),{[r]:o}):e},{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(y.NodeMetadata.isIgnoredNode(o))return u.VisitorOption.Skip;for(let i=0;ie}};h=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__INodeTransformer)),s(1,d.inject(l.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),a("design:paramtypes",["function"==typeof(o=void 0!==f.TNodeTransformerFactory&&f.TNodeTransformerFactory)?o:Object,"function"==typeof(n=void 0!==p.INodeTransformerNamesGroupsBuilder&&p.INodeTransformerNamesGroupsBuilder)?n:Object])],h),t.TransformersRunner=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=d(r(251)),u=d(r(246)),f=r(252),p=r(7),m=r(41),g=r(253),y=r(254),h=r(255),b=r(256),N=r(257),v=r(258),I=r(259),S=r(53),O=r(73),C=r(261),j=r(263),_=r(26),R=r(74);class F{constructor(e){this.rawArguments=e,this.arguments=e.slice(2)}static buildOptions(e,t){const r=F.filterOptions(e),o=e.config,n=o?u.resolve(o,"."):"",i=n?I.CLIUtils.getUserConfig(n):{},a=u.basename(t);return Object.assign(Object.assign(Object.assign(Object.assign({},m.DEFAULT_PRESET),i),r),{inputFileName:a})}static filterOptions(e){const t={};return Object.keys(e).forEach(r=>{void 0!==e[r]&&(t[r]=e[r])}),t}initialize(){this.inputPath=u.normalize(this.arguments[0]||""),this.commands=new l.Command,this.configureCommands(),this.configureHelp(),this.inputCLIOptions=this.commands.opts(),this.sourceCodeReader=new j.SourceCodeReader(this.inputPath,this.inputCLIOptions),this.obfuscatedCodeWriter=new C.ObfuscatedCodeWriter(this.inputPath,this.inputCLIOptions)}run(){if(!this.arguments.length||this.arguments.includes("--help"))return void this.commands.outputHelp();const e=this.sourceCodeReader.readSourceCode();this.processSourceCodeData(e)}configureCommands(){this.commands.usage(" [options]").version(_.Utils.buildVersionMessage("0.25.2",1582733614409),"-v, --version").option("-o, --output ","Output path for obfuscated code").option("--compact ","Disable one line output code compacting",y.BooleanSanitizer).option("--config ","Name of js / json config file").option("--control-flow-flattening ","Enables control flow flattening",y.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",y.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)",y.BooleanSanitizer).option("--debug-protection-interval ","Disable browser Debug panel even after page was loaded (can cause DevTools enabled browser freeze)",y.BooleanSanitizer).option("--disable-console-output ","Allow console.log, console.info, console.error and console.warn messages output into browser console",y.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)",g.ArraySanitizer).option("--exclude (comma separated, without whitespaces)","A filename or glob which indicates files to exclude from obfuscation",g.ArraySanitizer).option("--identifier-names-generator ","Sets identifier names generator. Values: hexadecimal, mangled, dictionary. Default: hexadecimal",h.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",g.ArraySanitizer).option("--log ","Enables logging of the information to the console",y.BooleanSanitizer).option("--reserved-names (comma separated, without whitespaces)","Disables obfuscation and generation of identifiers, which being matched by passed RegExp patterns (comma separated)",g.ArraySanitizer).option("--reserved-strings (comma separated, without whitespaces)","Disables transformation of string literals, which being matched by passed RegExp patterns (comma separated)",g.ArraySanitizer).option("--rename-globals ","Allows to enable obfuscation of global variable and function names with declaration.",y.BooleanSanitizer).option("--rotate-string-array ","Enable rotation of string array values during obfuscation",y.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",y.BooleanSanitizer).option("--shuffle-string-array ","Randomly shuffles string array items",y.BooleanSanitizer).option("--source-map ","Enables source map generation",y.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",N.SourceMapModeSanitizer).option("--split-strings ","Splits literal strings into chunks with length of `splitStringsChunkLength` option value",y.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",y.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",v.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",b.ObfuscationTargetSanitizer).option("--transform-object-keys ","Enables transformation of object keys",y.BooleanSanitizer).option("--unicode-escape-sequence ","Allows to enable/disable string conversion to unicode escape sequence",y.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){e.forEach(({filePath:e,content:t},r)=>{const o=this.obfuscatedCodeWriter.getOutputCodePath(e);try{O.Logger.log(O.Logger.colorInfo,R.LoggingPrefix.CLI,`Obfuscating file: ${e}...`),this.processSourceCode(t,e,o,r)}catch(t){throw O.Logger.log(O.Logger.colorInfo,R.LoggingPrefix.CLI,`Error in file: ${e}...`),t}})}processSourceCode(e,t,r,o){var n;let i=F.buildOptions(this.inputCLIOptions,t);if(null!==o){const e=`${null!==(n=this.inputCLIOptions.identifiersPrefix)&&void 0!==n?n:F.baseIdentifiersPrefix}${o}`;i=Object.assign(Object.assign({},i),{identifiersPrefix:e})}i.sourceMap?this.processSourceCodeWithSourceMap(e,r,i):this.processSourceCodeWithoutSourceMap(e,r,i)}processSourceCodeWithoutSourceMap(e,t,r){const o=S.JavaScriptObfuscator.obfuscate(e,r).getObfuscatedCode();this.obfuscatedCodeWriter.writeFile(t,o)}processSourceCodeWithSourceMap(e,t,r){var o;const n=this.obfuscatedCodeWriter.getOutputSourceMapPath(t,null!==(o=r.sourceMapFileName)&&void 0!==o?o:"");r=Object.assign(Object.assign({},r),{sourceMapFileName:u.basename(n)});const i=S.JavaScriptObfuscator.obfuscate(e,r);this.obfuscatedCodeWriter.writeFile(t,i.getObfuscatedCode()),"separate"===r.sourceMapMode&&i.getSourceMap()&&this.obfuscatedCodeWriter.writeFile(n,i.getSourceMap())}}F.availableInputExtensions=[".js"],F.encoding="utf8",F.obfuscatedFilePrefix="-obfuscated",F.baseIdentifiersPrefix="a",s([p.initializable(),c("design:type","function"==typeof(o=void 0!==l&&l.CommanderStatic)?o:Object)],F.prototype,"commands",void 0),s([p.initializable(),c("design:type","function"==typeof(n=void 0!==f.TInputCLIOptions&&f.TInputCLIOptions)?n:Object)],F.prototype,"inputCLIOptions",void 0),s([p.initializable(),c("design:type",String)],F.prototype,"inputPath",void 0),s([p.initializable(),c("design:type","function"==typeof(i=void 0!==j.SourceCodeReader&&j.SourceCodeReader)?i:Object)],F.prototype,"sourceCodeReader",void 0),s([p.initializable(),c("design:type","function"==typeof(a=void 0!==C.ObfuscatedCodeWriter&&C.ObfuscatedCodeWriter)?a:Object)],F.prototype,"obfuscatedCodeWriter",void 0),t.JavaScriptObfuscatorCLI=F},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(250);e.exports=o.JavaScriptObfuscatorCLI},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(245);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})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArraySanitizer=e=>{if(e.endsWith(","))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(33);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(24);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(34);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(28);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});t.CLIUtils=class{static getUserConfig(e){let t;try{t=r(260)(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}}},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=260},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(247)),i=o(r(262)),a=o(r(246)),s=r(42),c=r(245);t.ObfuscatedCodeWriter=class{constructor(e,t){this.inputPath=e,this.options=t}getOutputCodePath(e){const t=this.options.output?a.normalize(this.options.output):null;if(!t)return a.normalize(e).split(s.StringSeparator.Dot).map((e,t)=>0===t?`${e}${c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix}`:e).join(s.StringSeparator.Dot);const r=n.lstatSync(this.inputPath),o=a.extname(t),i=r.isDirectory(),d=!c.JavaScriptObfuscatorCLI.availableInputExtensions.includes(o);if(i){if(d)return a.join(t,e);throw new Error("Output path for directory obfuscation should be a directory path")}return d?a.join(t,a.basename(e)):t}getOutputSourceMapPath(e,t=""){return t&&(e=`${e.substring(0,e.lastIndexOf("/"))}/${t}`),/\.js\.map$/.test(e)?/\.js$/.test(e)&&(e+=".map"):e=`${e.split(s.StringSeparator.Dot)[0]}.js.map`,e}writeFile(e,t){i.sync(a.dirname(e)),n.writeFileSync(e,t,{encoding:c.JavaScriptObfuscatorCLI.encoding})}}},function(e,t){e.exports=require("mkdirp")},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(247)),a=o(r(246)),s=n(r(264)),c=r(245);class d{constructor(e,t){this.inputPath=e,this.options=t}static isExcludedPath(e,t=[]){if(!t.length)return!1;const r=a.basename(e),o=!!s.default([e],t).length;return t.some(t=>e.includes(t)||r.includes(t))||o}static isDirectoryPath(e){try{return i.statSync(e).isDirectory()}catch(e){return!1}}static isFilePath(e){try{return i.statSync(e).isFile()}catch(e){return!1}}static isValidDirectory(e,t=[]){return!d.isExcludedPath(e,t)}static isValidFile(e,t=[]){return c.JavaScriptObfuscatorCLI.availableInputExtensions.includes(a.extname(e))&&!e.includes(c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix)&&!d.isExcludedPath(e,t)}static readFile(e){return{filePath:a.normalize(e),content:i.readFileSync(e,c.JavaScriptObfuscatorCLI.encoding)}}readSourceCode(){if(d.isFilePath(this.inputPath)&&d.isValidFile(this.inputPath,this.options.exclude))return[d.readFile(this.inputPath)];if(d.isDirectoryPath(this.inputPath)&&d.isValidDirectory(this.inputPath,this.options.exclude))return this.readDirectoryRecursive(this.inputPath);const e=c.JavaScriptObfuscatorCLI.availableInputExtensions.map(e=>`\`${e}\``).join(", ");throw new ReferenceError(`Given input path must be a valid ${e} file or directory path`)}readDirectoryRecursive(e,t=[]){return i.readdirSync(e,c.JavaScriptObfuscatorCLI.encoding).forEach(r=>{const o=`${e}/${r}`;if(d.isDirectoryPath(o)&&d.isValidDirectory(o,this.options.exclude))t.push(...this.readDirectoryRecursive(o));else if(d.isFilePath(o)&&d.isValidFile(o,this.options.exclude)){const e=d.readFile(o);t.push(e)}else;}),t}}t.SourceCodeReader=d},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=249)}([function(e,t){e.exports=require("inversify")},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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(35);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===o.NodeType.AssignmentExpression}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 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,i=n.isBreakStatementNode(t)&&t.label===e;return r||o||i}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 isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===o.NodeType.SequenceExpression}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})},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=o(r(12)),a=r(44),s=r(57),c=r(4),d=r(19);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),c.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.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 c.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(l.cloneRecursive):"object"==typeof o?l.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=l},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,i)=>{const a=r[e];if(!a||"function"!=typeof a)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=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||s.has(r))return;if("function"!=typeof e[r])return;const c=null!==(i=Object.getOwnPropertyDescriptor(e,r))&&void 0!==i?i:o,d=c.value;Object.defineProperty(e,r,Object.assign(Object.assign({},c),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return d.apply(this,arguments)}})),s.add(r)})}(r,e),function(e,t,r){var n;const i=null!==(n=Object.getOwnPropertyDescriptor(e,t))&&void 0!==n?n:o,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,i),function(e,t){var r;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const n=`_${t.toString()}`,i=null!==(r=Object.getOwnPropertyDescriptor(e,n))&&void 0!==r?r:o;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{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}})),i}(r,i)}}},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=r(35);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,r){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:r,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,r){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,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,r){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:n.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:i.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,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,r=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3);let f=class{constructor(e,t){this.randomGenerator=e,this.options=t}};f=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],f),t.AbstractNodeTransformer=f},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomCodeHelpersTransformer="CustomCodeHelpersTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3);let y=class{constructor(e,t,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.randomGenerator=r,this.options=o}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};y=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],y),t.AbstractCustomNode=y},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(117),v=r(118);let I=o=class{constructor(e,t,r,o,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=r,this.randomGenerator=o,this.options=n}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};I.globalVariableTemplateFunctions=[N.GlobalVariableTemplate1(),v.GlobalVariableTemplate2()],I=o=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],I),t.AbstractCustomCodeHelper=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(75),a=r(85),s=r(98),c=r(109),d=r(149),l=r(162),u=r(163),f=r(167),p=r(169),m=r(172),g=r(173),y=r(182),h=r(204),b=r(218),N=r(223),v=r(233),I=r(73),S=r(237),O=r(239),C=r(240),j=r(241);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 i=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(i))return new(o.get(i))(...n);const a=r.container.getNamed(e,i);return o.set(i,a),new a(...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 C.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(I.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(v.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(j.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(O.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(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customCodeHelpersModule),this.container.load(d.customNodesModule),this.container.load(l.finalizingTransformersModule),this.container.load(u.generatorsModule),this.container.load(f.initializingTransformersModule),this.container.load(p.nodeModule),this.container.load(m.nodeTransformersModule),this.container.load(g.obfuscatingTransformersModule),this.container.load(y.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(b.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&r.push(e),e!==a?n.getParentNodesWithStatementsRecursive(a,t,r,++i):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),i=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static set(e,t){var r;e.metadata=Object.assign(null!==(r=e.metadata)&&void 0!==r?r:{},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 isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(4);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 i=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(i,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.callsGraph.length?n.getOptimalBlockScope(o.callsGraph,0,--r):o.callee}static insertBefore(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o)}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});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==a?n.getLexicalScopesRecursive(a,t,r,++i):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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});class o{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(5),f=r(2),p=r(3);let m=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const r=this.customCodeHelpers.get(e);r&&t(r)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierNamesGeneratorFactory&&u.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],m),t.AbstractCustomCodeHelperGroup=m},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);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(31);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},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.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2);let l=class{constructor(e){this.options=e}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],l),t.AbstractObfuscatingReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!0,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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.Dot=".",e.Comma=","}(t.StringSeparator||(t.StringSeparator={}))},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{};n=o([r(0).injectable()],n),t.AbstractCalleeDataExtractor=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ecmaVersion=11},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);t.NodeLiteralUtils=class{static isProhibitedLiteralNode(e,t){return!(!o.NodeGuards.isPropertyNode(t)||t.computed||t.key!==e)||!!o.NodeGuards.isImportDeclarationNode(t)}}},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3);let g=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 i=t.getStorageId(),a=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return a.set(r,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};g=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],g),t.AbstractControlFlowReplacer=g},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n const 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})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(4);let p=class{constructor(e,t){this.preservedNamesSet=new Set,this.lexicalScopesPreservedNamesMap=new Map,this.randomGenerator=e,this.options=t}generate(e,t){return f.NodeGuards.isProgramNode(e)?this.generateForGlobalScope():this.generateForLexicalScope(e)}preserveName(e){this.preservedNamesSet.add(e)}preserveNameForLexicalScope(e,t){var r;const o=null!==(r=this.lexicalScopesPreservedNamesMap.get(t))&&void 0!==r?r:new Set;o.add(e),this.lexicalScopesPreservedNamesMap.set(t,o)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNamesSet.has(e)}isValidIdentifierNameInLexicalScopes(e,t){var r;if(!this.isValidIdentifierName(e))return!1;for(const o of t){const t=null!==(r=this.lexicalScopesPreservedNamesMap.get(o))&&void 0!==r?r:null;if(t&&t.has(e))return!1}return!0}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.AbstractIdentifierNamesGenerator=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(7);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){return this.storage.get(e)}getOrThrow(e){const t=this.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,r]of this.storage)if(e===r)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)}};a([p.initializable(),s("design:type",String)],m.prototype,"storageId",void 0),a([p.initializable(),s("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],m.prototype,"storage",void 0),a([d.postConstruct(),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],m.prototype,"initialize",null),m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],m),t.MapStorage=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(1),n=r(17);class i{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const i=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),i}}t.JavaScriptObfuscator=i,i.version=null!=="0.25.2"?"0.25.2":"unknown"},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";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(20),f=r(2),p=r(3),m=r(21),g=r(46),y=r(4);let h=class extends g.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(m.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!y.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};h=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IControlFlowCustomNode)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TControlFlowCustomNodeFactory&&u.TControlFlowCustomNodeFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],h),t.ExpressionWithOperatorControlFlowReplacer=h},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(88)),a=n(r(89)),s=n(r(58));class c{static parse(e,t){const r=c.sourceTypes.length;for(let o=0;o"),s=`...${o.substring(n,i).replace(/^\s+/,"")}...`;throw new Error(`ERROR at line ${r.line}: ${t}\n${a} ${s}`)}}t.ASTParserFacade=c,c.colorError=s.default.red,c.nearestSymbolsCount=15,c.sourceTypes=["script","module"]},function(e,t){e.exports=require("chalk")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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.BasePropertiesExtractor="BasePropertiesExtractor",e.ObjectExpressionToVariableDeclarationExtractor="ObjectExpressionToVariableDeclarationExtractor"}(t.ObjectExpressionExtractor||(t.ObjectExpressionExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ObjectExpressionVariableDeclarationHostNode="ObjectExpressionVariableDeclarationHostNode"}(t.ObjectExpressionKeysTransformerCustomNode||(t.ObjectExpressionKeysTransformerCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutput="ConsoleOutput",e.DebugProtection="DebugProtection",e.DomainLock="DomainLock",e.SelfDefending="SelfDefending",e.StringArray="StringArray"}(t.CustomCodeHelperGroup||(t.CustomCodeHelperGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(4);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),!a.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;n=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(226)),m=r(227),g=r(2),y=r(228),h=r(7);let b=o=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new m.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=o.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}|${p.default(this.sourceCode.getSourceCode())}`}};b.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",s([h.initializable(),c("design:type","function"==typeof(n=void 0!==m.Chance&&m.Chance.Chance)?n:Object)],b.prototype,"randomGenerator",void 0),s([u.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],b.prototype,"initialize",null),b=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.ISourceCode)),d(1,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(i=void 0!==y.ISourceCode&&y.ISourceCode)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],b),t.RandomGenerator=b},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(58)),f=r(2),p=r(74);let m=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,null!=o?o:"")}info(e,t){this.options.log&&o.log(o.colorInfo,p.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,p.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,p.LoggingPrefix.Base,e,t)}};m.colorInfo=u.default.cyan,m.colorSuccess=u.default.green,m.colorWarn=u.default.yellow,m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IOptions&&f.IOptions)?n:Object])],m),t.Logger=m},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(17),n=r(0),i=r(1),a=r(54),s=r(76),c=r(78),d=r(79),l=r(80),u=r(81),f=r(82),p=r(84);t.analyzersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(u.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(f.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(p.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(77),p=r(54),m=r(4),g=r(18);let y=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];u.traverse(t,{enter:o=>{if(m.NodeGuards.isCallExpressionNode(o))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(o)?u.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),{callsGraph:this.analyzeRecursive(n.callee.body)}))})}};y.calleeDataExtractorsList=[p.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,p.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,p.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],y.limitThresholdActivationLength=25,y.limitThreshold=.002,y=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),a("design:paramtypes",["function"==typeof(n=void 0!==f.TCalleeDataExtractorFactory&&f.TCalleeDataExtractorFactory)?n:Object])],y),t.CallsGraphAnalyzer=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!c.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(d.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(c.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){var r;let o=null;return c.NodeGuards.isIdentifierNode(t)&&(o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),c.NodeGuards.isFunctionExpressionNode(t)&&(o=t.body),o?{callee:o,name:null!==(r=t.name)&&void 0!==r?r:null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(c.NodeGuards.isFunctionExpressionNode(e)&&o&&c.NodeGuards.isVariableDeclaratorNode(o)&&c.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(12)),c=r(43),d=r(4),l=r(18);let u=o=class extends c.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),s.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(d.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};u=o=n([a.injectable()],u),t.ObjectExpressionCalleeDataExtractor=u},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(36),p=r(4);let m=o=class{constructor(e){this.prevailingKindOfVariables=o.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const r=[];u.traverse(e,{enter:e=>{p.NodeGuards.isVariableDeclarationNode(e)&&r.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(r))&&void 0!==t?t:o.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};m.defaultKindOfVariables="var",m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IArrayUtils)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IArrayUtils&&f.IArrayUtils)?n:Object])],m),t.PrevailingKindOfVariablesAnalyzer=m},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(83)),c=i(r(12)),d=r(44),l=r(4);let u=o=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){c.replace(e,{enter:e=>(e.range||(e.range=[o.emptyRangeValue,o.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=o.sourceTypes.length;o.attachMissingRanges(e);for(let r=0;r{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],r=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==r||r.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};u.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},u.sourceTypes=["script","module"],u.emptyRangeValue=0,u=o=n([a.injectable()],u),t.ScopeAnalyzer=u},function(e,t){e.exports=require("eslint-scope")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(2),g=r(3),y=r(37),h=r(4),b=r(19),N=r(45);let v=o=class{constructor(e,t,r){this.stringArrayStorageData=new Map,this.stringArrayStorage=e,this.randomGenerator=t,this.options=r}analyze(e){this.options.stringArray&&p.traverse(e,{enter:(e,t)=>{if(t)return b.NodeMetadata.isIgnoredNode(e)?p.VisitorOption.Skip:void(h.NodeGuards.isLiteralNode(e)&&this.analyzeLiteralNode(e,t))}})}getItemDataForLiteralNode(e){return this.stringArrayStorageData.get(e)}analyzeLiteralNode(e,t){"string"==typeof e.value&&(N.NodeLiteralUtils.isProhibitedLiteralNode(e,t)||this.shouldAddValueToStringArray(e.value)&&this.stringArrayStorageData.set(e,this.stringArrayStorage.getOrThrow(e.value)))}shouldAddValueToStringArray(e){return e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}};v.minimumLengthForStringArray=3,v=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.IStringArrayStorage)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==y.IStringArrayStorage&&y.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.StringArrayStorageAnalyzer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(55),s=r(13),c=r(86),d=r(87),l=r(90),u=r(91),f=r(93),p=r(96),m=r(97);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(p.LogicalExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(m.StringLiteralControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(i.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56);let h=o=class extends y.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.BinaryExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}};h.usingExistingIdentifierChance=.5,h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.BinaryExpressionControlFlowReplacer=h},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(20),y=r(36),h=r(2),b=r(3),N=r(21),v=r(10),I=r(11),S=r(4),O=r(6);let C=o=class extends I.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=S.NodeGuards.isBreakStatementNode(e)||S.NodeGuards.isContinueStatementNode(e),r=S.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=S.NodeGuards.isClassDeclarationNode(e);return S.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return m.traverse(e,{enter:e=>{if(S.NodeGuards.isWhileStatementNode(e))return m.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case v.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&S.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),i=this.arrayUtils.shuffle(n),a=n.map(e=>i.indexOf(e)),s=this.controlFlowCustomNodeFactory(N.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,i,a);const c=s.getNode()[0];return O.NodeUtils.parentizeNode(c,t),c}};C=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IControlFlowCustomNode)),l(1,f.inject(p.ServiceIdentifiers.IArrayUtils)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TControlFlowCustomNodeFactory&&g.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==h.IOptions&&h.IOptions)?s:Object])],C),t.BlockStatementControlFlowTransformer=C},function(e,t){e.exports=require("acorn")},function(e,t){e.exports=require("acorn-import-meta")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!h.NodeGuards.isIdentifierNode(n))return e;const i=String(e.arguments.length),a=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionFunctionNode),s=e.arguments;a.initialize(s);const c=this.insertCustomNodeToControlFlowStorage(a,r,i,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),c,n,s)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!h.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};b.usingExistingIdentifierChance=.5,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.CallExpressionControlFlowReplacer=b},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(92),y=r(2),h=r(3),b=r(59),N=r(60),v=r(13),I=r(35),S=r(10),O=r(11),C=r(8),j=r(4),_=r(18),R=r(6);let F=o=class extends O.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 j.NodeGuards.isBreakStatementNode(e)||j.NodeGuards.isContinueStatementNode(e)||j.NodeGuards.isAwaitExpressionNode(e)||j.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!j.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=_.NodeStatementUtils.getScopeOfNode(e),r=j.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),i=C.NodeFactory.blockStatementNode(n),a=e.id.name;let s=!1;return m.traverse(i,{enter:e=>{if(j.NodeGuards.isIdentifierNode(e)&&e.name===a)return s=!0,m.VisitorOption.Break}}),s}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return m.traverse(e,{enter:e=>{if(j.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,m.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(m.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,m.VisitorOption.Break}}),!t)return!1;return _.NodeStatementUtils.getParentNodeWithStatements(e).type!==I.NodeType.Program}getVisitor(e){switch(e){case S.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&j.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&j.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case S.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){m.traverse(e,{enter:e=>{if(!j.NodeGuards.isBlockStatementNode(e))return;const t=R.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),i=this.collectedBlockStatements.splice(n,1)[0];return i===e?e:this.replaceBlockStatementNode(e,i,t)}restoreNode(e,t){const r=e.body[0];if(!j.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 j.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=C.NodeFactory.programNode([C.NodeFactory.expressionStatementNode(C.NodeFactory.functionExpressionNode([],e))]);return R.NodeUtils.parentizeAst(t),R.NodeUtils.parentizeNode(t,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,S.TransformationStage.Obfuscating),e}replaceBlockStatementNode(e,t,r){const n=C.NodeFactory.blockStatementNode([C.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const i=this.deadCodeInjectionCustomNodeFactory(N.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);i.initialize(e,n);const a=i.getNode()[0];return R.NodeUtils.parentizeNode(a,r),a}};F.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",F.maxNestedBlockStatementsCount=4,F.minCollectedBlockStatementsCount=5,F.transformersToRenameBlockScopeIdentifiers=[v.NodeTransformer.LabeledStatementTransformer,v.NodeTransformer.ScopeIdentifiersTransformer],F=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),l(1,f.inject(p.ServiceIdentifiers.ITransformersRunner)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TDeadNodeInjectionCustomNodeFactory&&g.TDeadNodeInjectionCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==b.ITransformersRunner&&b.ITransformersRunner)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],F),t.DeadCodeInjectionTransformer=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(12)),y=r(20),h=r(94),b=r(95),N=r(2),v=r(3),I=r(21),S=r(55),O=r(35),C=r(10),j=r(11),_=r(22),R=r(4),F=r(19),T=r(18),x=r(6);let w=o=class extends j.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 C.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!R.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(I.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),_.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),x.NodeUtils.parentizeAst(e),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(R.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=T.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(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){g.replace(e,{enter:(e,r)=>{if(F.NodeMetadata.isIgnoredNode(e))return g.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return g.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})}})}};w.controlFlowReplacersMap=new Map([[O.NodeType.BinaryExpression,S.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[O.NodeType.CallExpression,S.ControlFlowReplacer.CallExpressionControlFlowReplacer],[O.NodeType.LogicalExpression,S.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[O.NodeType.Literal,S.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),w.hostNodeSearchMinDepth=0,w.hostNodeSearchMaxDepth=2,w=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.Factory__TControlFlowStorage)),u(1,p.inject(m.ServiceIdentifiers.Factory__IControlFlowReplacer)),u(2,p.inject(m.ServiceIdentifiers.Factory__IControlFlowCustomNode)),u(3,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==b.TControlFlowStorageFactory&&b.TControlFlowStorageFactory)?n:Object,"function"==typeof(i=void 0!==h.TControlFlowReplacerFactory&&h.TControlFlowReplacerFactory)?i:Object,"function"==typeof(a=void 0!==y.TControlFlowCustomNodeFactory&&y.TControlFlowCustomNodeFactory)?a:Object,"function"==typeof(s=void 0!==v.IRandomGenerator&&v.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==N.IOptions&&N.IOptions)?c:Object])],w),t.FunctionControlFlowTransformer=w},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56),h=r(4),b=r(6);let N=o=class extends y.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,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.LogicalExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=h.NodeGuards.isUnaryExpressionNode(e)?b.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(h.NodeGuards.isLiteralNode(t)||h.NodeGuards.isIdentifierNode(t)||h.NodeGuards.isObjectExpressionNode(t)||h.NodeGuards.isExpressionStatementNode(t))})}};N.usingExistingIdentifierChance=.5,N=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],N),t.LogicalExpressionControlFlowReplacer=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(h.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralNode);i.initialize(e.value);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!h.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};b.usingExistingIdentifierChance=1,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.StringLiteralControlFlowReplacer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(17),i=r(1),a=r(13),s=r(61),c=r(99),d=r(101),l=r(102),u=r(103),f=r(105),p=r(106),m=r(107),g=r(108);t.convertingTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(a.NodeTransformer.MemberExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(a.NodeTransformer.MethodDefinitionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionKeysTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.ObjectExpressionTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.SplitStringTransformer).whenTargetNamed(a.NodeTransformer.SplitStringTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.TemplateLiteralTransformer).whenTargetNamed(a.NodeTransformer.TemplateLiteralTransformer),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(c.ObjectExpressionToVariableDeclarationExtractor).whenTargetNamed(s.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(g.BasePropertiesExtractor).whenTargetNamed(s.ObjectExpressionExtractor.BasePropertiesExtractor),e(i.ServiceIdentifiers.Factory__IObjectExpressionExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObjectExpressionExtractor))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(100),l=r(62),u=r(22),f=r(4),p=r(18),m=r(6),g=r(23);let y=class{constructor(e){this.objectExpressionKeysTransformerCustomNodeFactory=e}extract(e,t){return this.transformObjectExpressionToVariableDeclaration(e,t)}transformObjectExpressionToVariableDeclaration(e,t){var r;const o=p.NodeStatementUtils.getScopeOfNode(t),n=f.NodeGuards.isNodeWithLexicalScope(o)?o:null!==(r=g.NodeLexicalScopeUtils.getLexicalScope(o))&&void 0!==r?r:null;if(!n)throw new Error("Cannot find lexical scope node for the host statement node");const i=e.properties,a=this.getObjectExpressionHostNode(n,i),s=[a];return u.NodeAppender.insertBefore(o,s,t),m.NodeUtils.parentizeAst(a),m.NodeUtils.parentizeNode(a,o),{nodeToReplace:this.getObjectExpressionIdentifierNode(a),objectExpressionHostStatement:a,objectExpressionNode:this.getObjectExpressionNode(a)}}getObjectExpressionHostNode(e,t){const r=this.objectExpressionKeysTransformerCustomNodeFactory(l.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!f.NodeGuards.isVariableDeclarationNode(o))throw new Error("`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node");return o}getObjectExpressionIdentifierNode(e){const t=e.declarations[0].id;if(!f.NodeGuards.isIdentifierNode(t))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property");return t}getObjectExpressionNode(e){var t;const r=null!==(t=e.declarations[0].init)&&void 0!==t?t:null;if(!r||!f.NodeGuards.isObjectExpressionNode(r))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property");return r}};y=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),i("design:paramtypes",["function"==typeof(o=void 0!==d.TObjectExpressionKeysTransformerCustomNodeFactory&&d.TObjectExpressionKeysTransformerCustomNodeFactory)?o:Object])],y),t.ObjectExpressionToVariableDeclarationExtractor=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(g.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=m.NodeFactory.literalNode(e.property.name)}return e}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.MemberExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4);let h=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case p.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&y.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return y.NodeGuards.isIdentifierNode(e.key)?this.replaceIdentifierKey(e,e.key):y.NodeGuards.isLiteralNode(e.key)?this.replaceLiteralKey(e,e.key):e}replaceIdentifierKey(e,t){return o.ignoredNames.includes(t.name)||e.computed||(e.computed=!0,e.key=g.NodeFactory.literalNode(t.name)),e}replaceLiteralKey(e,t){return"string"!=typeof t.value||o.ignoredNames.includes(t.value)||e.computed||(e.computed=!0),e}};h.ignoredNames=["constructor"],h=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],h),t.MethodDefinitionTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(104),g=r(2),y=r(3),h=r(10),b=r(11),N=r(4),v=r(18),I=r(61);let S=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.objectExpressionExtractorFactory=e}static isProhibitedHostStatement(e,t){return o.isReferencedIdentifierName(e,t)||o.isProhibitedSequenceExpression(e,t)}static isReferencedIdentifierName(e,t){const r=[];let o=!1,n=!1;return p.traverse(t,{enter:t=>{t===e&&(n=!0),N.NodeGuards.isIdentifierNode(t)&&(n?r.includes(t.name)&&(o=!0):r.push(t.name))},leave:t=>{if(t===e)return n=!1,p.VisitorOption.Break}}),o}static isProhibitedSequenceExpression(e,t){return N.NodeGuards.isExpressionStatementNode(t)&&N.NodeGuards.isSequenceExpressionNode(t.expression)&&t.expression.expressions.some(e=>N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isSuperNode(e.callee))}getVisitor(e){if(!this.options.transformObjectKeys)return null;switch(e){case h.TransformationStage.Converting:return{leave:(e,t)=>{if(t&&N.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(!e.properties.length)return e;const r=v.NodeStatementUtils.getRootStatementOfNode(e);return o.isProhibitedHostStatement(e,r)?e:this.applyObjectExpressionKeysExtractorsRecursive(o.objectExpressionExtractorNames,e,r)}applyObjectExpressionKeysExtractorsRecursive(e,t,r){const o=[...e],n=o.shift();if(!n)return t;const{nodeToReplace:i,objectExpressionHostStatement:a,objectExpressionNode:s}=this.objectExpressionExtractorFactory(n).extract(t,r);return this.applyObjectExpressionKeysExtractorsRecursive(o,s,a),i}};S.objectExpressionExtractorNames=[I.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,I.ObjectExpressionExtractor.BasePropertiesExtractor],S=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==m.TObjectExpressionExtractorFactory&&m.TObjectExpressionExtractorFactory)?n:Object,"function"==typeof(i=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],S),t.ObjectExpressionKeysTransformer=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.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){g.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=m.NodeFactory.literalNode(e.key.value))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),g.NodeGuards.isIdentifierNode(e.key)&&(e.key=m.NodeFactory.literalNode(e.key.name))}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.ObjectExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),v=r(45),I=r(6);let S=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ObjectExpressionKeysTransformer,g.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let i=0;i{if(this.options.splitStrings)return t&&N.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if(v.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;const r=this.transformLiteralNodeByChunkLength(e,t,o.firstPassChunkLength);return f.replace(r,{enter:(e,t)=>{if(t&&N.NodeGuards.isLiteralNode(e))return this.transformLiteralNodeByChunkLength(e,t,this.options.splitStringsChunkLength)}})}transformLiteralNodeByChunkLength(e,t,r){if("string"!=typeof e.value)return e;if(r>=e.value.length)return e;const n=o.chunkString(e.value,r),i=this.transformStringChunksToBinaryExpressionNode(n);return I.NodeUtils.parentizeAst(i),I.NodeUtils.parentizeNode(i,t),i}transformStringChunksToBinaryExpressionNode(e){const t=e.shift(),r=e.shift();if(!t||!r)throw new Error("First and second chunks values should not be empty");const o=b.NodeFactory.binaryExpressionNode("+",b.NodeFactory.literalNode(t),b.NodeFactory.literalNode(r));return e.reduce((e,t)=>{const r=b.NodeFactory.literalNode(t);return b.NodeFactory.binaryExpressionNode("+",e,r)},o)}};S.firstPassChunkLength=1e3,S=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],S),t.SplitStringTransformer=S},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4),h=r(6);let b=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return!!e&&y.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return y.NodeGuards.isTemplateLiteralNode(e)&&!y.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case p.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,i=[];if(e.quasis.forEach(e=>{i.push(g.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&i.push(t)}),i=i.filter(e=>!(y.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(i[0])||o.isLiteralNodeWithStringValue(i[1])||i.unshift(g.NodeFactory.literalNode("")),i.length>1){let e=g.NodeFactory.binaryExpressionNode("+",i.shift(),i.shift());i.forEach(t=>{e=g.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=i[0];return h.NodeUtils.parentizeAst(n),h.NodeUtils.parentizeNode(n,t),n}};b=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],b),t.TemplateLiteralTransformer=b},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(22),s=r(8),c=r(4),d=r(18);let l=o=class{static getPropertyNodeKeyName(e){const t=e.key;return!c.NodeGuards.isLiteralNode(t)||"string"!=typeof t.value&&"number"!=typeof t.value?c.NodeGuards.isIdentifierNode(t)?t.name:null:t.value.toString()}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extract(e,t){const r=e.parentNode;return r&&c.NodeGuards.isVariableDeclaratorNode(r)&&c.NodeGuards.isIdentifierNode(r.id)?this.transformObjectExpressionNode(e,t,r.id):{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}transformObjectExpressionNode(e,t,r){const o=e.properties,[n,i]=this.extractPropertiesToExpressionStatements(o,t,r),s=d.NodeStatementUtils.getScopeOfNode(t);return this.filterExtractedObjectExpressionProperties(e,i),a.NodeAppender.insertAfter(s,n,t),{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}extractPropertiesToExpressionStatements(e,t,r){const n=e.length,i=[],a=[];for(let d=0;d!t.includes(r))}};l=o=n([i.injectable()],l),t.BasePropertiesExtractor=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(27),s=r(63),c=r(110),d=r(111),l=r(112),u=r(113),f=r(114),p=r(115),m=r(119),g=r(121),y=r(123),h=r(125),b=r(127),N=r(131),v=r(133),I=r(135),S=r(137),O=r(144),C=r(146);t.customCodeHelpersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICustomCodeHelper).to(p.ConsoleOutputDisableCodeHelper).whenTargetNamed(a.CustomCodeHelper.ConsoleOutputDisable),e(i.ServiceIdentifiers.ICustomCodeHelper).to(y.DebugProtectionFunctionCallCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionCall),e(i.ServiceIdentifiers.ICustomCodeHelper).to(h.DebugProtectionFunctionIntervalCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionInterval),e(i.ServiceIdentifiers.ICustomCodeHelper).to(b.DebugProtectionFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(N.DomainLockCodeHelper).whenTargetNamed(a.CustomCodeHelper.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelper).to(v.CallsControllerFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.CallsControllerFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(I.SelfDefendingUnicodeCodeHelper).whenTargetNamed(a.CustomCodeHelper.SelfDefendingUnicode),e(i.ServiceIdentifiers.ICustomCodeHelper).to(S.StringArrayCallsWrapperCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayCallsWrapper),e(i.ServiceIdentifiers.ICustomCodeHelper).to(O.StringArrayCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArray),e(i.ServiceIdentifiers.ICustomCodeHelper).to(C.StringArrayRotateFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayRotateFunction),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(c.ConsoleOutputCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.ConsoleOutput),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(d.DebugProtectionCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DebugProtection),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(l.DomainLockCustomCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(u.SelfDefendingCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.SelfDefending),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(f.StringArrayCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.StringArray),e(i.ServiceIdentifiers.Factory__ICustomCodeHelper).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelper)),e(i.ServiceIdentifiers.Factory__ICustomCodeHelperGroup).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelperGroup)),e(i.ServiceIdentifiers.ICustomCodeHelperFormatter).to(m.CustomCodeHelperFormatter).inSingletonScope(),e(i.ServiceIdentifiers.ICustomCodeHelperObfuscator).to(g.CustomCodeHelperObfuscator).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23),O=r(4);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.disableConsoleOutput)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.ConsoleOutputDisable,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.disableConsoleOutput)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.ConsoleOutputDisable),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.ConsoleOutputDisable,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.ConsoleOutputCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(4),O=r(23);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.debugProtection)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=O.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionCall,e=>{e.initialize(s,c),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunction,t=>{t.initialize(s),I.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionInterval,t=>{const r=S.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);t.initialize(s),I.NodeAppender.insertAtIndex(e,t.getNode(),o)})}initialize(){if(this.customCodeHelpers=new Map,!this.options.debugProtection)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunction),t=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionCall),r=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionInterval),o=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunction,e),this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionCall,t),this.options.debugProtectionInterval&&this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionInterval,r),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,o)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DebugProtectionCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23),O=r(4);let C=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.domainLock.length)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DomainLock,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.domainLock.length)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DomainLock),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DomainLock,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DomainLockCustomCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),v=r(30),I=r(22),S=r(23);let O=class extends v.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.selfDefending)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?I.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?I.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope(),c=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope();this.appendCustomNodeIfExist(b.CustomCodeHelper.SelfDefendingUnicode,e=>{e.initialize(c,s),I.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),I.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.selfDefending)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.SelfDefendingUnicode),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.SelfDefendingUnicode,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],O.prototype,"customCodeHelpers",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],O),t.SelfDefendingCodeHelperGroup=O},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(29),g=r(5),y=r(2),h=r(3),b=r(37),N=r(7),v=r(27),I=r(25),S=r(30),O=r(22);let C=class extends S.AbstractCustomCodeHelperGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=I.ObfuscationEvent.AfterObfuscation,this.customCodeHelperFactory=e,this.stringArrayStorage=t}appendNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArray,t=>{O.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArrayCallsWrapper,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(v.CustomCodeHelper.StringArrayRotateFunction,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customCodeHelpers=new Map,!this.options.stringArray)return;const e=this.customCodeHelperFactory(v.CustomCodeHelper.StringArray),t=this.customCodeHelperFactory(v.CustomCodeHelper.StringArrayCallsWrapper),r=this.customCodeHelperFactory(v.CustomCodeHelper.StringArrayRotateFunction),o=this.stringArrayStorage.getStorageName(),n=this.stringArrayStorage.getStorageCallsWrapperName(),i=this.stringArrayStorage.getRotationAmount();e.initialize(this.stringArrayStorage,o),t.initialize(o,n),r.initialize(o,i),this.customCodeHelpers.set(v.CustomCodeHelper.StringArray,e),this.customCodeHelpers.set(v.CustomCodeHelper.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customCodeHelpers.set(v.CustomCodeHelper.StringArrayRotateFunction,r)}};d([N.initializable(),l("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__ICustomCodeHelper)),u(1,f.inject(p.ServiceIdentifiers.IStringArrayStorage)),u(2,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TCustomCodeHelperFactory&&m.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==b.IStringArrayStorage&&b.IStringArrayStorage)?i:Object,"function"==typeof(a=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],C),t.StringArrayCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(116),v=r(48),I=r(7),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.callsControllerFunctionName=e,this.consoleOutputDisableFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():v.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(N.ConsoleOutputDisableExpressionTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,consoleLogDisableFunctionName:this.consoleOutputDisableFunctionName,globalVariableTemplate:e})}};c([I.initializable(),d("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),c([I.initializable(),d("design:type",String)],C.prototype,"consoleOutputDisableFunctionName",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],C),t.ConsoleOutputDisableCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n const {consoleLogDisableFunctionName} = {callControllerFunctionName}(this, function () {\n const func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n const c = {};\n \n c.log = func;\n c.warn = func;\n c.debug = func;\n c.info = func;\n c.error = func;\n c.exception = func;\n c.table = func;\n c.trace = func;\n \n return c;\n })(func);\n } else {\n that.console.log = func;\n that.console.warn = func;\n that.console.debug = func;\n that.console.info = func;\n that.console.error = func;\n that.console.exception = func;\n that.console.table = func;\n that.console.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n let that;\n \n try {\n const getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n const getGlobal = function () {\n let globalObject;\n \n try {\n globalObject = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');')();\n } catch (e) {\n globalObject = window;\n }\n \n return globalObject;\n };\n const that = getGlobal();\n "}},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=s(r(12)),f=c(r(120)),p=r(64),m=r(4);let g=class{constructor(e){this.prevailingKindOfVariables=e.getPrevailingKind()}formatTemplate(e,t){return f.default(e,t)}formatStructure(e){for(const t of e)u.replace(t,{enter:e=>{if(m.NodeGuards.isVariableDeclarationNode(e))return"var"===this.prevailingKindOfVariables&&(e.kind="var"),e}});return e}};g=n([d.injectable(),a(0,d.inject(l.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),i("design:paramtypes",["function"==typeof(o=void 0!==p.IPrevailingKindOfVariablesAnalyzer&&p.IPrevailingKindOfVariablesAnalyzer)?o:Object])],g),t.CustomCodeHelperFormatter=g},function(e,t){e.exports=require("string-template")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(122),p=r(53);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}obfuscateTemplate(e,t={}){return p.JavaScriptObfuscator.obfuscate(e,Object.assign(Object.assign(Object.assign({},f.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()}),t)).getObfuscatedCode()}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],m),t.CustomCodeHelperObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(124),v=r(16),I=r(6);let S=class extends v.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(e){return I.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,callControllerFunctionName:this.callsControllerFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"callsControllerFunctionName",void 0),c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionCallCodeHelper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {callControllerFunctionName}(\n this,\n function () {\n const regExp1 = new RegExp('function *\\\\( *\\\\)');\n const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n const result = {debugProtectionFunctionName}('init');\n \n if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {\n result('0');\n } else {\n {debugProtectionFunctionName}();\n }\n }\n )();\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(126),v=r(16),I=r(6);let S=class extends v.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return I.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionIntervalCodeHelper=S},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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(7),v=r(128),I=r(129),S=r(130),O=r(16),C=r(6);let j=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?v.DebuggerTemplate():I.DebuggerTemplateNoEval();return this.customCodeHelperFormatter.formatTemplate(S.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([N.initializable(),d("design:type",String)],j.prototype,"debugProtectionFunctionName",void 0),j=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],j),t.DebugProtectionFunctionCodeHelper=j},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 const func = function () {\n while (true) {}\n };\n \n return func();\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n debugger;\n } else {\n debugger;\n }\n \n }\n "}},function(e,t,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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(49),b=r(2),N=r(3),v=r(24),I=r(7),S=r(132),O=r(48),C=r(16),j=r(6);let _=class extends C.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.cryptUtils=i}initialize(e,t){this.callsControllerFunctionName=e,this.domainLockFunctionName=t}getNodeStructure(e){return j.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==v.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():O.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(S.DomainLockTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,domainLockFunctionName:this.domainLockFunctionName,diff:r,domains:t,globalVariableTemplate:o})}};d([I.initializable(),l("design:type",String)],_.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type",String)],_.prototype,"domainLockFunctionName",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.ICryptUtils)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object])],_),t.DomainLockCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockTemplate=function(){return'\n const {domainLockFunctionName} = {callControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n const func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (let i = 0; i < 1000; i--) {\n const isPositive = i > 0;\n \n switch (isPositive) {\n case true:\n return this.item + \'_\' + this.value + \'_\' + i;\n default:\n this.item + \'_\' + this.value;\n }\n }\n }()\n };\n };\n \n const regExp = new RegExp("[{diff}]", "g");\n const domains = "{domains}".replace(regExp, "").split(";");\n let document;\n let domain;\n let location;\n let hostname;\n\n for (let d in that) {\n if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {\n document = d;\n \n break;\n }\n }\n\n for (let d1 in that[document]) {\n if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {\n domain = d1;\n \n break;\n }\n }\n\n if (!("~" > domain)) {\n for (let d2 in that[document]) {\n if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {\n location = d2;\n \n break;\n }\n }\n\n for (let d3 in that[document][location]) {\n if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {\n hostname = d3;\n \n break;\n }\n }\n }\n \n if (!document || !that[document]) {\n return;\n }\n \n const documentDomain = that[document][domain];\n const documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n const currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n let ok = false;\n \n for (let i = 0; i < domains.length; i++) {\n const domain = domains[i];\n const position = currentDomain.length - domain.length;\n const lastIndex = currentDomain.indexOf(domain, position);\n const endsWith = lastIndex !== -1 && lastIndex === position;\n \n if (endsWith) {\n if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {\n ok = true;\n }\n }\n }\n \n if (!ok) {\n data;\n } else {\n return;\n }\n \n func();\n });\n\n {domainLockFunctionName}();\n '}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(14),y=r(9),h=r(2),b=r(3),N=r(25),v=r(7),I=r(134),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.appendEvent===N.ObfuscationEvent.AfterObfuscation?this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(I.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})):this.customCodeHelperFormatter.formatTemplate(I.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})}};d([v.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type","function"==typeof(o=void 0!==N.ObfuscationEvent&&N.ObfuscationEvent)?o:Object)],C.prototype,"appendEvent",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperFormatter&&y.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.CallsControllerFunctionCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleCallControllerTemplate=function(){return"\n const {callControllerFunctionName} = (function(){\n let firstCall = true;\n \n return function (context, fn){\n const rfn = firstCall ? function(){\n if(fn){\n const res = fn.apply(context, arguments);\n fn = null;\n return res;\n }\n } : function(){}\n \n firstCall = false;\n \n return rfn;\n }\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(7),I=r(136),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.callsControllerFunctionName=e,this.selfDefendingFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(I.SelfDefendingTemplate(this.escapeSequenceEncoder),{callControllerFunctionName:this.callsControllerFunctionName,selfDefendingFunctionName:this.selfDefendingFunctionName})}};d([v.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type",String)],C.prototype,"selfDefendingFunctionName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],C),t.SelfDefendingUnicodeCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return"\n const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {\n const test = function () {\n const regExp = test\n .constructor('return /\" + this + \"/')()\n .compile('^([^ ]+( +[^ ]+)+)+[^ ]}');\n \n return !regExp.test({selfDefendingFunctionName});\n };\n \n return test();\n });\n \n {selfDefendingFunctionName}();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(24),I=r(28),S=r(7),O=r(138),C=r(48),j=r(139),_=r(140),R=r(141),F=r(142),T=r(143),x=r(16),w=r(6);let P=class extends x.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(e){return w.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.getDecodeStringArrayTemplate(),t=[`^${this.stringArrayName}$`];return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(F.StringArrayCallsWrapperTemplate(),{decodeCodeHelperTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),{reservedNames:t})}getDecodeStringArrayTemplate(){const e=this.options.target!==v.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():C.GlobalVariableNoEvalTemplate(),t=this.customCodeHelperFormatter.formatTemplate(O.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=this.customCodeHelperFormatter.formatTemplate(_.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case I.StringArrayEncoding.Rc4:r=this.customCodeHelperFormatter.formatTemplate(T.StringArrayRC4DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,rc4Polyfill:j.Rc4Template(),stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case I.StringArrayEncoding.Base64:r=this.customCodeHelperFormatter.formatTemplate(R.StringArrayBase64DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};d([S.initializable(),l("design:type",String)],P.prototype,"stringArrayName",void 0),d([S.initializable(),l("design:type",String)],P.prototype,"stringArrayCallsWrapperName",void 0),P=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],P),t.StringArrayCallsWrapperCodeHelper=P},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n const str = String(input).replace(/=+$/, '');\n let output = '';\n for (\n let bc = 0, bs, buffer, idx = 0;\n buffer = str.charAt(idx++);\n ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,\n bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0\n ) {\n buffer = chars.indexOf(buffer);\n }\n return output;\n }\n );\n })();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n const rc4 = function (str, key) {\n let s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (let k = 0, length = str.length; k < length; k++) {\n newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);\n }\n \n str = decodeURIComponent(newStr);\n \t \n let i;\n \t \n\t for (i = 0; i < 256; i++) {\n s[i] = i;\n }\n \n for (i = 0; i < 256; i++) {\n j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n }\n \n i = 0;\n j = 0;\n \n for (let y = 0; y < str.length; y++) {\n i = (i + 1) % 256;\n j = (j + s[i]) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);\n }\n \n return res;\n }\n "}},function(e,t,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),i=e.getRandomString(6),a=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n const StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${i} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${a} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n const regExp = new RegExp(this.${i} + this.${a});\n const expression = regExp.test(this.${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 (let 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.StringArrayBase64DecodeTemplate=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 const string = atob(str);\n let newStringChars = [];\n \n for (let i = 0, length = string.length; i < length; i++) {\n newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);\n }\n \n return decodeURIComponent(newStringChars);\n };\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const 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 const {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n let value = {stringArrayName}[index];\n \n {decodeCodeHelperTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRC4DecodeTemplate=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 const 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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(37),v=r(7),I=r(145),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.stringArrayStorage=e,this.stringArrayName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(I.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};d([v.initializable(),l("design:type","function"==typeof(o=void 0!==N.IStringArrayStorage&&N.IStringArrayStorage)?o:Object)],C.prototype,"stringArrayStorage",void 0),d([v.initializable(),l("design:type",String)],C.prototype,"stringArrayName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.StringArrayCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n const {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),v=r(7),I=r(147),S=r(148),O=r(16),C=r(6),j=r(38);let _=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayRotationAmount=t}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.identifierNamesGenerator.generateForGlobalScope(),t=this.identifierNamesGenerator.generateForGlobalScope(),r=[`^${this.stringArrayName}$`];let o="";return o=this.options.selfDefending?this.customCodeHelperFormatter.formatTemplate(I.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(S.StringArrayRotateFunctionTemplate(),{code:o,timesName:e,whileFunctionName:t,stringArrayName:this.stringArrayName,stringArrayRotationAmount:j.NumberUtils.toHex(this.stringArrayRotationAmount)}),{reservedNames:r})}};d([v.initializable(),l("design:type",String)],_.prototype,"stringArrayName",void 0),d([v.initializable(),l("design:type",Number)],_.prototype,"stringArrayRotationAmount",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],_),t.StringArrayRotateFunctionCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const selfDefendingFunc = function () {\n const object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n let updatedCookie = name + "=" + value;\n let i = 0;\n \n for (let i = 0, len = options.length; i < len; i++) {\n const propName = options[i];\n \n updatedCookie += "; " + propName;\n \n const propValue = options[propName];\n \n options.push(propValue);\n len = options.length;\n \n if (propValue !== true) {\n updatedCookie += "=" + propValue;\n }\n }\n\n document['cookie'] = updatedCookie;\n },\n removeCookie: function(){return 'dev';},\n getCookie: function (document, name) {\n document = document || function (value) { return value };\n const matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n const func = function (param1, param2) {\n param1(++param2);\n };\n \n func({whileFunctionName}, {timesName});\n \n return matches ? decodeURIComponent(matches[1]) : undefined;\n }\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n let cookie = '';\n const result = object['updateCookie']();\n \n if (!result) {\n object['setCookie'](['*'], 'counter', 1);\n } else if (result) {\n cookie = object['getCookie'](null, 'counter');\n } else {\n object['removeCookie']();\n }\n };\n \n selfDefendingFunc();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n const {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotationAmount});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(21),s=r(60),c=r(62),d=r(150),l=r(151),u=r(152),f=r(153),p=r(154),m=r(155),g=r(156),y=r(158),h=r(159),b=r(160),N=r(161);t.customNodesModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(l.BinaryExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(u.BlockStatementControlFlowFlatteningNode).whenTargetNamed(a.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(p.CallExpressionControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(m.CallExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.ControlFlowStorageNode).whenTargetNamed(a.ControlFlowCustomNode.ControlFlowStorageNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.LogicalExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.StringLiteralNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.StringLiteralControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(f.BlockStatementDeadCodeInjectionNode).whenTargetNamed(s.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(d.ObjectExpressionVariableDeclarationHostNode).whenTargetNamed(c.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode),e(i.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions)),e(i.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(4);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.lexicalScopeNode=e,this.properties=t}getNodeStructure(){const e=b.NodeGuards.isProgramNode(this.lexicalScopeNode)?this.identifierNamesGenerator.generateForGlobalScope():this.identifierNamesGenerator.generateForLexicalScope(this.lexicalScopeNode);return[h.NodeFactory.variableDeclarationNode([h.NodeFactory.variableDeclaratorNode(h.NodeFactory.identifierNode(e),h.NodeFactory.objectExpressionNode(this.properties))],"const")]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.ObjectExpressionVariableDeclarationHostNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.binaryExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BinaryExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(4),v=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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=b.NodeFactory.blockStatementNode([b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(e),b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),b.NodeFactory.identifierNode("split")),[b.NodeFactory.literalNode("|")]))],"const"),b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(t),b.NodeFactory.literalNode(0))],"let"),b.NodeFactory.whileStatementNode(b.NodeFactory.literalNode(!0),b.NodeFactory.blockStatementNode([b.NodeFactory.switchStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(e),b.NodeFactory.updateExpressionNode("++",b.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return N.NodeGuards.isReturnStatementNode(r)||o.push(b.NodeFactory.continueStatement()),b.NodeFactory.switchCaseNode(b.NodeFactory.literalNode(String(t)),o)})),b.NodeFactory.breakStatement()]))]);return v.NodeUtils.parentizeAst(r),[r]}};s([y.initializable(),c("design:type",Array)],I.prototype,"blockStatementBody",void 0),s([y.initializable(),c("design:type",Array)],I.prototype,"originalKeysIndexesInShuffledArray",void 0),s([y.initializable(),c("design:type",Array)],I.prototype,"shuffledKeys",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.BlockStatementControlFlowFlatteningNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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),[i,a]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=h.NodeFactory.blockStatementNode([h.NodeFactory.ifStatementNode(h.NodeFactory.binaryExpressionNode(r,h.NodeFactory.literalNode(o),h.NodeFactory.literalNode(n)),i,a)]);return b.NodeUtils.parentizeAst(s),[s]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BlockStatementDeadCodeInjectionNode=N},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(2),y=r(3),h=r(7),b=r(15),N=r(8),v=r(6);let I=class extends b.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=N.NodeFactory.expressionStatementNode(N.NodeFactory.callExpressionNode(N.NodeFactory.memberExpressionNode(N.NodeFactory.identifierNode(this.controlFlowStorageName),N.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return v.NodeUtils.parentizeAst(e),[e]}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof ESTree&&ESTree.Expression)?o:Object)],I.prototype,"callee",void 0),c([h.initializable(),d("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),c([h.initializable(),d("design:type",String)],I.prototype,"controlFlowStorageName",void 0),c([h.initializable(),d("design:type",Array)],I.prototype,"expressionArguments",void 0),I=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],I),t.CallExpressionControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=b.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(157),m=r(5),g=r(9),y=r(2),h=r(3),b=r(7),N=r(15),v=r(8),I=r(4),S=r(6);let O=class extends N.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.controlFlowStorage=e}getNodeStructure(){const e=Array.from(this.controlFlowStorage.getStorage()).map(([e,t])=>{const r=t.getNode()[0];if(!I.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return v.NodeFactory.propertyNode(v.NodeFactory.identifierNode(e),r.expression)});let t=v.NodeFactory.variableDeclarationNode([v.NodeFactory.variableDeclaratorNode(v.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),v.NodeFactory.objectExpressionNode(e))],"const");return t=S.NodeUtils.parentizeAst(t),[t]}};c([b.initializable(),d("design:type","function"==typeof(o=void 0!==p.TControlFlowStorage&&p.TControlFlowStorage)?o:Object)],O.prototype,"controlFlowStorage",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],O),t.ControlFlowStorageNode=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageName",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.ExpressionWithOperatorControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.logicalExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.LogicalExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],v.prototype,"controlFlowStorageName",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.StringLiteralControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8);let N=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.literalValue=e}getNodeStructure(){return[b.NodeFactory.expressionStatementNode(b.NodeFactory.literalNode(this.literalValue))]}};s([y.initializable(),c("design:type",String)],N.prototype,"literalValue",void 0),N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.StringLiteralNode=N},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(1),i=r(33),a=r(164),s=r(165),c=r(166);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(a.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.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 i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(36),p=r(2),m=r(3),g=r(50),y=r(23);let h=o=class extends g.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}generateForGlobalScope(){const e=this.generateNewDictionaryName();return this.preserveName(e),e}generateForLexicalScope(e){const t=[e,...y.NodeLexicalScopeUtils.getLexicalScopes(e)],r=this.generateNewDictionaryName();return this.isValidIdentifierNameInLexicalScopes(r,t)?(this.preserveNameForLexicalScope(r,e),r):this.generateForLexicalScope(e)}generateWithPrefix(){const e=`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:""}${this.generateNewDictionaryName()}`;return this.isValidIdentifierName(e)?(this.preserveName(e),e):this.generateWithPrefix()}generateNewDictionaryName(){if(!this.identifierNamesSet.size)throw new Error("Too many identifiers in the code, add more words to identifiers dictionary");const e=this.identifiersIterator.next();if(!e.done){const t=e.value;return this.isValidIdentifierName(t)?e.value:this.generateNewDictionaryName()}return this.identifierNamesSet=new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet])),this.identifiersIterator=this.identifierNamesSet.values(),this.generateNewDictionaryName()}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)}};h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(1,l.inject(u.ServiceIdentifiers.IOptions)),d(2,l.inject(u.ServiceIdentifiers.IArrayUtils)),c("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object,"function"==typeof(a=void 0!==f.IArrayUtils&&f.IArrayUtils)?a:Object])],h),t.DictionaryIdentifierNamesGenerator=h},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(38),g=r(26);let y=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t)}generateForGlobalScope(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=m.NumberUtils.toHex(t),n=g.Utils.hexadecimalPrefix.length+1,i=e?e-n:o.baseIdentifierNameLength,a=r.substr(0,i),s=`_${g.Utils.hexadecimalPrefix}${a}`;return this.isValidIdentifierName(s)?(this.preserveName(s),s):this.generateForGlobalScope(e)}generateForLexicalScope(e,t){return this.generateForGlobalScope(t)}generateWithPrefix(e){const t=this.generateForGlobalScope(e);return`${this.options.identifiersPrefix}${t}`.replace("__","_")}};y.baseIdentifierNameLength=6,y=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],y),t.HexadecimalIdentifierNamesGenerator=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(23);let g=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.initMangledNameCharacter}generateForGlobalScope(e){const t=this.generateNewMangledName(this.previousMangledName);return this.previousMangledName=t,this.preserveName(t),t}generateForLexicalScope(e,t){const r=[e,...m.NodeLexicalScopeUtils.getLexicalScopes(e)];let n=this.getLastMangledNameForScopes(r);do{n=this.generateNewMangledName(n)}while(!this.isValidIdentifierNameInLexicalScopes(n,r));return o.lastMangledNameInScopeMap.set(e,n),this.preserveNameForLexicalScope(n,e),n}generateWithPrefix(e){const t=this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:"",r=this.generateNewMangledName(this.previousMangledName),o=`${t}${r}`;return this.previousMangledName=r,this.isValidIdentifierName(o)?(this.preserveName(o),o):this.generateWithPrefix(e)}isValidIdentifierName(e){return super.isValidIdentifierName(e)&&!o.reservedNamesSet.has(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=t.length,n=e.length,i=e=>"0".repeat(e);let a=n-1;do{const o=e[a],s=t.indexOf(o);if(s!==r-1){return e.substring(0,a)+t[s+1]+i(n-(a+1))}--a}while(a>=0);return`a${i(n)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}getLastMangledNameForScopes(e){var t;for(const r of e){const e=null!==(t=o.lastMangledNameInScopeMap.get(r))&&void 0!==t?t:null;if(e)return e}return o.initMangledNameCharacter}};g.initMangledNameCharacter="9",g.lastMangledNameInScopeMap=new Map,g.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),g.reservedNamesSet=new Set(["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"]),g=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],g),t.MangledIdentifierNamesGenerator=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(13),a=r(168);t.initializingTransformersModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.INodeTransformer).to(a.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer)})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(10),y=r(11),h=r(65),b=r(4);let N=o=class extends y.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case g.TransformationStage.Initializing:return{leave:e=>{if(b.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(!e.comments||!e.comments.length)return e;const t=this.transformComments(e.comments);return 0===t.length?e:e.body.length?(f.traverse(e,{enter:r=>{if(r===e)return;const o=t.findIndex(e=>e.range&&r.range&&e.range[0]0&&(e.trailingComments=t.reverse()),e):(e.leadingComments=t,e)}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||h.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};N.preservedWords=["@license","@preserve"],N=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],N),t.CommentsTransformer=N},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(170);t.nodeModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IScopeIdentifiersTraverser).to(i.ScopeIdentifiersTraverser).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(171),u=r(4);let f=o=class{constructor(e){this.scopeAnalyzer=e}traverse(e,t,r){this.scopeAnalyzer.analyze(e);const o=this.scopeAnalyzer.acquireScope(e);this.traverseScopeVariables(o,o,r)}traverseScopeVariables(e,t,r){const n=t.variableScope,i=u.NodeGuards.isNodeWithBlockLexicalScope(n.block)?n.block:null,a=o.globalScopeNames.includes(n.type);if(i){for(const s of t.variables){if(s.name===o.argumentsVariableName)continue;r({isGlobalDeclaration:a,isBubblingDeclaration:s.identifiers.some(e=>e.parentNode&&u.NodeGuards.isPropertyNode(e.parentNode)&&e.parentNode.shorthand),rootScope:e,variable:s,variableScope:n,variableLexicalScopeNode:i})}for(const o of t.childScopes)this.traverseScopeVariables(e,o,r)}}};f.argumentsVariableName="arguments",f.globalScopeNames=["global","module"],f=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IScopeAnalyzer)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IScopeAnalyzer&&l.IScopeAnalyzer)?n:Object])],f),t.ScopeIdentifiersTraverser=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1);t.nodeTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(39),s=r(66),c=r(13),d=r(174),l=r(175),u=r(176),f=r(177),p=r(179),m=r(180),g=r(181);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(u.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(g.ScopeIdentifiersTransformer).whenTargetNamed(c.NodeTransformer.ScopeIdentifiersTransformer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(p.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(m.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(i.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObfuscatingReplacer)),e(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(5),u=r(2),f=r(40),p=r(8);let m=class extends f.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){let r=e.name;if(this.blockScopesMap.has(t)){const e=this.blockScopesMap.get(t);e.has(r)&&(r=e.get(r))}return p.NodeFactory.identifierNode(r)}storeGlobalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}storeLocalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateForLexicalScope(t);this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}preserveName(e){this.identifierNamesGenerator.preserveName(e.name)}preserveNameForLexicalScope(e,t){this.identifierNamesGenerator.preserveNameForLexicalScope(e.name,t)}isReservedName(e){return!!this.options.reservedNames.length&&this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.TIdentifierNamesGeneratorFactory&&l.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==u.IOptions&&u.IOptions)?n:Object])],m),t.BaseIdentifierObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(40),f=r(8);let p=o=class extends u.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",f.NodeFactory.arrayExpressionNode())}replace(e){const t=e.value;if("boolean"!=typeof t)throw new Error("`BooleanLiteralObfuscatingReplacer` should accept only literals with `boolean` value");return t?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};p=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.BooleanLiteralObfuscatingReplacer=p},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(51),m=r(2),g=r(3),y=r(39),h=r(10),b=r(11),N=r(4),v=r(23);let I=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(y.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&N.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=v.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label,t)}replaceLabeledStatementName(e,t){f.replace(e,{enter:(e,r)=>{if(r&&N.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e,t);e.name=r.name}}})}};I=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),c(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(2,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierObfuscatingReplacerFactory&&p.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==m.IOptions&&m.IOptions)?i:Object])],I),t.LabeledStatementTransformer=I},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(178),m=r(32),g=r(2),y=r(3),h=r(67),b=r(66),N=r(10),v=r(11),I=r(8),S=r(4),O=r(45),C=r(19),j=r(6);let _=class extends v.AbstractNodeTransformer{constructor(e,t,r,o,n){super(t,r),this.literalObfuscatingReplacerFactory=e,this.stringArrayStorageAnalyzer=o,this.escapeSequenceEncoder=n}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(S.NodeGuards.isProgramNode(e)&&this.analyzeNode(e),t&&S.NodeGuards.isLiteralNode(e)&&!C.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};case N.TransformationStage.Finalizing:return{enter:(e,t)=>{if(t&&S.NodeGuards.isLiteralNode(e))return this.encodeLiteralNodeToEscapeSequence(e,t)}};default:return null}}analyzeNode(e){this.stringArrayStorageAnalyzer.analyze(e)}transformNode(e,t){if(O.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e);break;case"number":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e);break;case"string":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e);break;default:r=e}return j.NodeUtils.parentizeNode(r,t),r}encodeLiteralNodeToEscapeSequence(e,t){return"string"!=typeof e.value?e:I.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e.value,this.options.unicodeEscapeSequence))}};_=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IObfuscatingReplacer)),l(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(2,u.inject(f.ServiceIdentifiers.IOptions)),l(3,u.inject(f.ServiceIdentifiers.IStringArrayStorageAnalyzer)),l(4,u.inject(f.ServiceIdentifiers.IEscapeSequenceEncoder)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TLiteralObfuscatingReplacerFactory&&p.TLiteralObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IStringArrayStorageAnalyzer&&h.IStringArrayStorageAnalyzer)?a:Object,"function"==typeof(s=void 0!==m.IEscapeSequenceEncoder&&m.IEscapeSequenceEncoder)?s:Object])],_),t.LiteralTransformer=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2),l=r(40),u=r(8),f=r(38),p=r(26);let m=class extends l.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){const t=e.value;if("number"!=typeof t)throw new Error("`NumberLiteralObfuscatingReplacer` should accept only literals with `number` value");let r;return this.numberLiteralCache.has(t)?r=this.numberLiteralCache.get(t):(r=f.NumberUtils.isCeil(t)?`${p.Utils.hexadecimalPrefix}${f.NumberUtils.toHex(t)}`:String(t),this.numberLiteralCache.set(t,r)),u.NodeFactory.literalNode(t,r)}};m=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],m),t.NumberLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(2),p=r(37),m=r(67),g=r(28),y=r(40),h=r(19),b=r(8),N=r(38),v=r(26);let I=o=class extends y.AbstractObfuscatingReplacer{constructor(e,t,r){super(r),this.nodesCache=new Map,this.stringArrayStorage=e,this.stringArrayStorageAnalyzer=t}static getHexadecimalLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}initialize(){this.options.shuffleStringArray&&this.stringArrayStorage.shuffleStorage(),this.options.rotateStringArray&&this.stringArrayStorage.rotateStorage()}replace(e){const t=e.value;if("string"!=typeof t)throw new Error("`StringLiteralObfuscatingReplacer` should accept only literals with `string` value");const r=this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(e),o=`${t}-${Boolean(r)}`;if(this.nodesCache.has(o)&&this.options.stringArrayEncoding!==g.StringArrayEncoding.Rc4)return this.nodesCache.get(o);const n=r?this.replaceWithStringArrayCallNode(r):this.replaceWithLiteralNode(t);return this.nodesCache.set(o,n),n}replaceWithLiteralNode(e){return b.NodeFactory.literalNode(e)}replaceWithStringArrayCallNode(e){const{index:t,decodeKey:r}=e,n=`${v.Utils.hexadecimalPrefix}${N.NumberUtils.toHex(t)}`,i=[o.getHexadecimalLiteralNode(n)];r&&i.push(o.getRc4KeyLiteralNode(r));const a=b.NodeFactory.identifierNode(this.stringArrayStorage.getStorageCallsWrapperName());return b.NodeFactory.callExpressionNode(a,i)}};s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],I.prototype,"initialize",null),I=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IStringArrayStorage)),d(1,l.inject(u.ServiceIdentifiers.IStringArrayStorageAnalyzer)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==p.IStringArrayStorage&&p.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==m.IStringArrayStorageAnalyzer&&m.IStringArrayStorageAnalyzer)?i:Object,"function"==typeof(a=void 0!==f.IOptions&&f.IOptions)?a:Object])],I),t.StringLiteralObfuscatingReplacer=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(51),g=r(2),y=r(3),h=r(68),b=r(39),N=r(10),v=r(11),I=r(4),S=r(19);let O=class extends v.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.lexicalScopesWithObjectPatternWithoutDeclarationMap=new Map,this.identifierObfuscatingReplacer=e(b.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&I.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,e=>{const{isGlobalDeclaration:t,variable:r,variableLexicalScopeNode:o}=e;if(!this.options.renameGlobals&&t){if(!r.defs.every(e=>"ImportBinding"===e.type||"CatchClause"===e.type))return}this.transformScopeVariableIdentifiers(r,o,t)}),e}transformScopeVariableIdentifiers(e,t,r){var o;const n=null!==(o=e.identifiers[0])&&void 0!==o?o:null;n&&this.isReplaceableIdentifierNode(n,t,e)&&(this.storeIdentifierName(n,t,r),this.replaceIdentifierName(n,t,e))}storeIdentifierName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e,t):this.identifierObfuscatingReplacer.storeLocalName(e,t)}replaceIdentifierName(e,t,r){const o=this.identifierObfuscatingReplacer.replace(e,t);r.identifiers.forEach(e=>{e.name=o.name}),r.references.forEach(t=>{t.identifier.name=e.name})}isReplaceableIdentifierNode(e,t,r){const o=e.parentNode;return!(!o||S.NodeMetadata.isIgnoredNode(e)||this.isProhibitedPropertyNode(e,o)||this.isProhibitedClassDeclarationNameIdentifierNode(r,e,o)||this.isProhibitedExportNamedClassDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedVariableDeclarationIdentifierNode(e,o)||this.isProhibitedImportSpecifierNode(e,o)||this.isProhibitedVariableNameUsedInObjectPatternNode(r,e,t)||I.NodeGuards.isLabelIdentifierNode(e,o))}isProhibitedClassDeclarationNameIdentifierNode(e,t,r){return I.NodeGuards.isClassDeclarationNode(e.scope.block)&&I.NodeGuards.isClassDeclarationNode(r)&&r.id===t}isProhibitedExportNamedClassDeclarationIdentifierNode(e,t){return I.NodeGuards.isClassDeclarationNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,t){return I.NodeGuards.isFunctionDeclarationNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedVariableDeclarationIdentifierNode(e,t){return I.NodeGuards.isVariableDeclaratorNode(t)&&t.id===e&&!!t.parentNode&&I.NodeGuards.isVariableDeclarationNode(t.parentNode)&&!!t.parentNode.parentNode&&I.NodeGuards.isExportNamedDeclarationNode(t.parentNode.parentNode)}isProhibitedImportSpecifierNode(e,t){return I.NodeGuards.isImportSpecifierNode(t)&&t.imported.name===t.local.name}isProhibitedPropertyNode(e,t){const r=I.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e,o=I.NodeGuards.isAssignmentPatternNode(t)&&t.left===e&&!!t.parentNode&&I.NodeGuards.isPropertyNode(t.parentNode)&&t.left===t.parentNode.key;return r||o}isProhibitedVariableNameUsedInObjectPatternNode(e,t,r){let o=this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(r);if(!1===o)return!1;if(!e.defs.some(e=>"var"===e.kind))return!1;let n=!1;return p.traverse(r,{enter:(e,r)=>{if(I.NodeGuards.isObjectPatternNode(e)&&r&&I.NodeGuards.isAssignmentExpressionNode(r)){o=!0;const r=e.properties;for(const e of r)if(!e.computed&&e.shorthand&&I.NodeGuards.isIdentifierNode(e.key)&&t.name===e.key.name)return n=!0,p.VisitorOption.Break}}}),this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(r,null!=o&&o),n}};O=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),d(3,u.inject(f.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierObfuscatingReplacerFactory&&m.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IScopeIdentifiersTraverser&&h.IScopeIdentifiersTraverser)?a:Object])],O),t.ScopeIdentifiersTransformer=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(183),a=r(190);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(i.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(a.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(31),m=r(0),g=r(1),y=r(69),h=r(184),b=r(185),N=r(186),v=r(33),I=r(24),S=r(34),O=r(28),C=r(41),j=r(187),_=r(188);let R=o=class{constructor(e,t){Object.assign(this,C.DEFAULT_PRESET,e);const r=y.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${j.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};R.validatorOptions={validationError:{target:!1}},l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"compact",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"controlFlowFlattening",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"controlFlowFlatteningThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"deadCodeInjection",void 0),l([y.IsNumber(),u("design:type",Number)],R.prototype,"deadCodeInjectionThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtection",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtectionInterval",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"disableConsoleOutput",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),_.IsAllowedForObfuscationTargets([I.ObfuscationTarget.Browser,I.ObfuscationTarget.BrowserNoEval]),u("design:type",Array)],R.prototype,"domainLock",void 0),l([y.IsIn([v.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,v.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,v.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),u("design:type","function"==typeof(n=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?n:Object)],R.prototype,"identifierNamesGenerator",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"identifiersPrefix",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),y.ValidateIf(e=>e.identifierNamesGenerator===v.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),y.ArrayNotEmpty(),u("design:type",Array)],R.prototype,"identifiersDictionary",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"inputFileName",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"log",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"renameGlobals",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedNames",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedStrings",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"rotateStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"selfDefending",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"shuffleStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"sourceMap",void 0),l([y.IsString(),y.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),y.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),u("design:type",String)],R.prototype,"sourceMapBaseUrl",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"sourceMapFileName",void 0),l([y.IsIn([S.SourceMapMode.Inline,S.SourceMapMode.Separate]),u("design:type","function"==typeof(i=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?i:Object)],R.prototype,"sourceMapMode",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"splitStrings",void 0),l([y.IsNumber(),y.ValidateIf(e=>Boolean(e.splitStrings)),y.Min(1),u("design:type",Number)],R.prototype,"splitStringsChunkLength",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"stringArray",void 0),l([y.IsIn([!0,!1,O.StringArrayEncoding.Base64,O.StringArrayEncoding.Rc4]),u("design:type","function"==typeof(a=void 0!==b.TStringArrayEncoding&&b.TStringArrayEncoding)?a:Object)],R.prototype,"stringArrayEncoding",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"stringArrayThreshold",void 0),l([y.IsIn([I.ObfuscationTarget.Browser,I.ObfuscationTarget.BrowserNoEval,I.ObfuscationTarget.Node]),u("design:type","function"==typeof(s=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?s:Object)],R.prototype,"target",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"transformObjectKeys",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"unicodeEscapeSequence",void 0),R=o=l([m.injectable(),f(0,m.inject(g.ServiceIdentifiers.TInputOptions)),f(1,m.inject(g.ServiceIdentifiers.IOptionsNormalizer)),u("design:paramtypes",["function"==typeof(c=void 0!==h.TInputOptions&&h.TInputOptions)?c:Object,"function"==typeof(d=void 0!==N.IOptionsNormalizer&&N.IOptionsNormalizer)?d:Object])],R),t.Options=R},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(69),i=o(r(189)),a=r(42),s=r(41);t.IsAllowedForObfuscationTargets=function(e,t){return(r,o)=>{n.registerDecorator({propertyName:o,constraints:[e],name:"IsAllowedForObfuscationTargets",options:t,target:r.constructor,validator:{validate(t,r){const n=r.object,a=s.DEFAULT_PRESET[o];return i.default(t,a)||e.includes(n.target)},defaultMessage:t=>`This option allowed only for obfuscation targets: ${e.join(`${a.StringSeparator.Comma} `)}`}})}}},function(e,t){e.exports=require("fast-deep-equal")},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(191),s=r(192),c=r(193),d=r(194),l=r(195),u=r(196),f=r(197),p=r(198),m=r(199),g=r(200),y=r(201),h=r(202),b=r(203);let N=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};N.normalizerRules=[a.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,f.SelfDefendingRule,p.SourceMapBaseUrlRule,m.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,y.StringArrayRule,h.StringArrayEncodingRule,b.StringArrayThresholdRule],N=o=n([i.injectable()],N),t.OptionsNormalizer=N},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(41);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});const o=r(42);t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(o.StringSeparator.Dot).slice(0,-1).join(o.StringSeparator.Dot)||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});const o=r(42);t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;if(t){t=t.replace(/^\/+/,"").replace(/(?:\.js)?(?:\.map)?$/,"");let r=t.split(o.StringSeparator.Dot);const n=r.length,i=r[n-1];n>1&&i.length<=3&&(r=r.slice(0,-1)),t=r.join(o.StringSeparator.Dot),e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})}return 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,shuffleStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);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(17),n=r(0),i=r(1),a=r(13),s=r(70),c=r(205),d=r(65),l=r(206),u=r(210),f=r(212),p=r(213),m=r(215),g=r(216),y=r(217);t.preparingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(l.CustomCodeHelpersTransformer).whenTargetNamed(a.NodeTransformer.CustomCodeHelpersTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.EvalCallExpressionTransformer).whenTargetNamed(a.NodeTransformer.EvalCallExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.MetadataTransformer).whenTargetNamed(a.NodeTransformer.MetadataTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.ObfuscatingGuardsTransformer).whenTargetNamed(a.NodeTransformer.ObfuscatingGuardsTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.ParentificationTransformer).whenTargetNamed(a.NodeTransformer.ParentificationTransformer),e(i.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(d.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(g.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(i.ServiceIdentifiers.INodeTransformer).to(y.VariablePreserveTransformer).whenTargetNamed(a.NodeTransformer.VariablePreserveTransformer),e(i.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeGuard))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=r(4);let c=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(207),g=r(208),y=r(2),h=r(3),b=r(209),N=r(64),v=r(13),I=r(25),S=r(10),O=r(11),C=r(4);let j=class extends O.AbstractNodeTransformer{constructor(e,t,r,o,n,i){super(n,i),this.runAfter=[v.NodeTransformer.ParentificationTransformer,v.NodeTransformer.VariablePreserveTransformer],this.callsGraphData=[],this.callsGraphAnalyzer=e,this.prevailingKindOfVariablesAnalyzer=t,this.obfuscationEventEmitter=r,this.customCodeHelperGroupStorage=o}getVisitor(e){switch(e){case S.TransformationStage.Preparing:return{leave:(e,t)=>{if(C.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case S.TransformationStage.Finalizing:return{leave:(e,t)=>{C.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.callsGraphData=this.callsGraphAnalyzer.analyze(e),this.prevailingKindOfVariablesAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customCodeHelperGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendNodes.bind(e))}),this.obfuscationEventEmitter.emit(I.ObfuscationEvent.BeforeObfuscation,e,this.callsGraphData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(I.ObfuscationEvent.AfterObfuscation,e,this.callsGraphData)}};j=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.ICallsGraphAnalyzer)),u(1,f.inject(p.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),u(2,f.inject(p.ServiceIdentifiers.IObfuscationEventEmitter)),u(3,f.inject(p.ServiceIdentifiers.TCustomNodeGroupStorage)),u(4,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(5,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(o=void 0!==b.ICallsGraphAnalyzer&&b.ICallsGraphAnalyzer)?o:Object,"function"==typeof(n=void 0!==N.IPrevailingKindOfVariablesAnalyzer&&N.IPrevailingKindOfVariablesAnalyzer)?n:Object,"function"==typeof(i=void 0!==g.IObfuscationEventEmitter&&g.IObfuscationEventEmitter)?i:Object,"function"==typeof(a=void 0!==m.TCustomCodeHelperGroupStorage&&m.TCustomCodeHelperGroupStorage)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],j),t.CustomCodeHelpersTransformer=j},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(211)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),v=r(6);let I=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return N.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):N.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 y.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case y.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 i;try{i=v.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const a=b.NodeFactory.functionExpressionNode([],b.NodeFactory.blockStatementNode(i));return v.NodeUtils.parentizeAst(a),v.NodeUtils.parentizeNode(a,t),this.evalRootAstHostNodeSet.add(a),a}restoreNode(e,t){const r=e.body.body,o=v.NodeUtils.convertStructureToCode(r);return b.NodeFactory.callExpressionNode(b.NodeFactory.identifierNode("eval"),[b.NodeFactory.literalNode(f.default(o))])}isEvalRootAstHostNode(e){return N.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};I=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],I),t.EvalCallExpressionTransformer=I},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(13),p=r(10),m=r(11),g=r(4),y=r(19);let h=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[f.NodeTransformer.ParentificationTransformer,f.NodeTransformer.VariablePreserveTransformer]}getVisitor(e){switch(e){case p.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return y.NodeMetadata.set(e,{ignoredNode:!1}),g.NodeGuards.isLiteralNode(e)&&y.NodeMetadata.set(e,{replacedLiteral:!1}),e}};h=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],h),t.MetadataTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(214),p=r(2),m=r(3),g=r(13),y=r(70),h=r(10),b=r(11),N=r(19);let v=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case h.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 N.NodeMetadata.set(e,{ignoredNode:!r}),e}};v.obfuscatingGuardsList=[y.ObfuscatingGuard.BlackListObfuscatingGuard,y.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,y.ObfuscatingGuard.ReservedStringObfuscatingGuard],v=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__INodeGuard)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TObfuscatingGuardFactory&&f.TObfuscatingGuardFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],v),t.ObfuscatingGuardsTransformer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(6);let g=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return m.NodeUtils.parentizeNode(e,t)}};g=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],g),t.ParentificationTransformer=g},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(2),d=r(1),l=r(4);let u=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!l.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))}};u=n([s.injectable(),a(0,s.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==c.IOptions&&c.IOptions)?o:Object])],u),t.ReservedStringObfuscatingGuard=u},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(51),f=r(2),p=r(3),m=r(68),g=r(13),y=r(1),h=r(10),b=r(11),N=r(39),v=r(4);let I=class extends b.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer],this.identifierObfuscatingReplacer=e(N.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o,this.preserveScopeVariableIdentifiers=this.preserveScopeVariableIdentifiers.bind(this)}getVisitor(e){switch(e){case h.TransformationStage.Preparing:case h.TransformationStage.Converting:case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&v.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,this.preserveScopeVariableIdentifiers),e}preserveScopeVariableIdentifiers(e){const{isGlobalDeclaration:t,isBubblingDeclaration:r,variable:o,variableScope:n}=e;for(const e of o.identifiers)t||r?this.preserveIdentifierNameForRootLexicalScope(e):this.preserveIdentifierNameForLexicalScope(e,n)}preserveIdentifierNameForRootLexicalScope(e){this.identifierObfuscatingReplacer.preserveName(e)}preserveIdentifierNameForLexicalScope(e,t){const r=v.NodeGuards.isNodeWithLexicalScope(t.block)?t.block:null;r&&this.identifierObfuscatingReplacer.preserveNameForLexicalScope(e,r)}};I=s([l.injectable(),d(0,l.inject(y.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,l.inject(y.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(y.ServiceIdentifiers.IOptions)),d(3,l.inject(y.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierObfuscatingReplacerFactory&&u.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object,"function"==typeof(a=void 0!==m.IScopeIdentifiersTraverser&&m.IScopeIdentifiersTraverser)?a:Object])],I),t.VariablePreserveTransformer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(219),a=r(220),s=r(222);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(a.CustomCodeHelperGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.IStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(i.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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(52);let p=class extends f.MapStorage{constructor(e,t){super(e,t)}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.ControlFlowStorage=p},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(221),p=r(2),m=r(3),g=r(63),y=r(52);let h=o=class extends y.MapStorage{constructor(e,t,r){super(t,r),this.customCodeHelperGroupFactory=e}initialize(){super.initialize(),o.customCodeHelperGroupsList.forEach(e=>{const t=this.customCodeHelperGroupFactory(e);this.storage.set(e,t)})}};h.customCodeHelperGroupsList=[g.CustomCodeHelperGroup.ConsoleOutput,g.CustomCodeHelperGroup.DebugProtection,g.CustomCodeHelperGroup.DomainLock,g.CustomCodeHelperGroup.SelfDefending,g.CustomCodeHelperGroup.StringArray],s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],h.prototype,"initialize",null),h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TCustomCodeHelperGroupFactory&&f.TCustomCodeHelperGroupFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.CustomCodeHelperGroupStorage=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=r(5),y=r(36),h=r(49),b=r(32),N=r(2),v=r(3),I=r(28),S=r(52);let O=o=class extends S.MapStorage{constructor(e,t,r,n,i,a){super(r,n),this.rc4EncodedValuesSourcesCache=new Map,this.rotationAmount=0,this.identifierNamesGenerator=e(n),this.arrayUtils=t,this.cryptUtils=i,this.escapeSequenceEncoder=a,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}initialize(){super.initialize(),this.rotationAmount=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(o.minimumRotationAmount,o.maximumRotationAmount):0}get(e){return this.getOrSetIfDoesNotExist(e)}getRotationAmount(){return this.rotationAmount}getStorageName(){return this.getStorageId()}getStorageId(){return this.stringArrayStorageName||(this.stringArrayStorageName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageName}getStorageCallsWrapperName(){return this.stringArrayStorageCallsWrapperName||(this.stringArrayStorageCallsWrapperName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageCallsWrapperName}rotateStorage(){this.getLength()&&(this.storage=new Map(this.arrayUtils.rotate(Array.from(this.storage.entries()),this.rotationAmount)))}shuffleStorage(){this.storage=new Map(this.arrayUtils.shuffle(Array.from(this.storage.entries())).map(([e,t],r)=>(t.index=r,[e,t])).sort(([,e],[,t])=>e.index-t.index))}toString(){return Array.from(this.storage.values()).map(e=>`'${this.escapeSequenceEncoder.encode(e.encodedValue,this.options.unicodeEscapeSequence)}'`).toString()}getOrSetIfDoesNotExist(e){const{encodedValue:t,decodeKey:r}=this.getEncodedValue(e),o=this.storage.get(t);if(o)return o;const n={encodedValue:t,decodeKey:r,value:e,index:this.getLength()};return this.storage.set(t,n),n}getEncodedValue(e){var t;switch(this.options.stringArrayEncoding){case I.StringArrayEncoding.Rc4:{const r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),o=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r)),n=null!==(t=this.rc4EncodedValuesSourcesCache.get(o))&&void 0!==t?t:[];let i=n.length;return(!i||!n.includes(e))&&(n.push(e),i++),this.rc4EncodedValuesSourcesCache.set(o,n),i>1?this.getEncodedValue(e):{encodedValue:o,decodeKey:r}}case I.StringArrayEncoding.Base64:{const t=null;return{encodedValue:this.cryptUtils.btoa(e),decodeKey:t}}default:return{encodedValue:e,decodeKey:null}}}};O.minimumRotationAmount=100,O.maximumRotationAmount=500,O.rc4KeyLength=4,O.rc4KeysCount=50,O.stringArrayNameLength=7,l([p.postConstruct(),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",void 0)],O.prototype,"initialize",null),O=o=l([p.injectable(),f(0,p.inject(m.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),f(1,p.inject(m.ServiceIdentifiers.IArrayUtils)),f(2,p.inject(m.ServiceIdentifiers.IRandomGenerator)),f(3,p.inject(m.ServiceIdentifiers.IOptions)),f(4,p.inject(m.ServiceIdentifiers.ICryptUtils)),f(5,p.inject(m.ServiceIdentifiers.IEscapeSequenceEncoder)),u("design:paramtypes",["function"==typeof(n=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==v.IRandomGenerator&&v.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==N.IOptions&&N.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object,"function"==typeof(d=void 0!==b.IEscapeSequenceEncoder&&b.IEscapeSequenceEncoder)?d:Object])],O),t.StringArrayStorage=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(224),a=r(225),s=r(229),c=r(230),d=r(231),l=r(71);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(i.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(a.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";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3);let l=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rn&&(o=i,n=e),r[i]=e}return o}rotate(e,t){if(!e.length)throw new ReferenceError("Cannot rotate empty array.");if(t<=0)return e;const r=e;let o;for(;t--;)o=r.pop(),o&&r.unshift(o);return r}shuffle(e){const t=[...e];for(let e=t.length;e;e--){const r=Math.floor(this.randomGenerator.getMathRandom()*e);[t[e-1],t[r]]=[t[r],t[e-1]]}return t}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IRandomGenerator)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IRandomGenerator&&d.IRandomGenerator)?o:Object])],l),t.ArrayUtils=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3),l=r(71),u=r(26);let f=class{constructor(e){this.randomGenerator=e}btoa(e){let t="";e=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(`${u.Utils.hexadecimalPrefix}${t}`,16)));for(let r,o,n=0,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(i="=",n%1);t+=i.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:l.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(;r=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{constructor(){this.stringsCache=new Map}encode(e,t){const r=`${e}-${String(t)}`;if(this.stringsCache.has(r))return this.stringsCache.get(r);const o=new RegExp("[\\s\\S]","g"),n=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const c=e.replace(o,e=>t||n.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(r,c),this.stringsCache.set(`${c}-${String(t)}`,c),c}};n=o([r(0).injectable()],n),t.EscapeSequenceEncoder=n},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=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)}};n=o([r(0).injectable()],n),t.LevelledTopologicalSorter=n},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(232);let l=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){void 0===t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.ILevelledTopologicalSorter)),i("design:paramtypes",["function"==typeof(o=void 0!==d.ILevelledTopologicalSorter&&d.ILevelledTopologicalSorter)?o:Object])],l),t.NodeTransformerNamesGroupsBuilder=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(47)),y=r(234),h=r(235),b=r(2),N=r(3),v=r(59),I=r(236),S=r(13),O=r(10),C=r(44),j=r(57),_=r(4),R=r(26);let F=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(I.LoggingMessage.Version,R.Utils.buildVersionMessage("0.25.2",1582835643247)),this.logger.info(I.LoggingMessage.ObfuscationStarted),this.logger.info(I.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),i=(Date.now()-t)/1e3;return this.logger.success(I.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(n)}parseCode(e){return j.ASTParserFacade.parse(e,o.parseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,O.TransformationStage.Initializing),!_.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,O.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,O.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,O.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,O.TransformationStage.Converting),e=this.runTransformationStage(e,O.TransformationStage.Obfuscating),e=this.runTransformationStage(e,O.TransformationStage.Finalizing)):(this.logger.warn(I.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=g.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(I.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};F.parseOptions={ecmaVersion:C.ecmaVersion,allowHashBang:!0,allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,locations:!0,ranges:!0},F.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},F.transformersList=[S.NodeTransformer.BlockStatementControlFlowTransformer,S.NodeTransformer.CommentsTransformer,S.NodeTransformer.CustomCodeHelpersTransformer,S.NodeTransformer.DeadCodeInjectionTransformer,S.NodeTransformer.EvalCallExpressionTransformer,S.NodeTransformer.FunctionControlFlowTransformer,S.NodeTransformer.LabeledStatementTransformer,S.NodeTransformer.LiteralTransformer,S.NodeTransformer.MemberExpressionTransformer,S.NodeTransformer.MetadataTransformer,S.NodeTransformer.MethodDefinitionTransformer,S.NodeTransformer.ObfuscatingGuardsTransformer,S.NodeTransformer.ObjectExpressionKeysTransformer,S.NodeTransformer.ObjectExpressionTransformer,S.NodeTransformer.ParentificationTransformer,S.NodeTransformer.ScopeIdentifiersTransformer,S.NodeTransformer.SplitStringTransformer,S.NodeTransformer.TemplateLiteralTransformer,S.NodeTransformer.VariablePreserveTransformer],F=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.ITransformersRunner)),u(1,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(2,p.inject(m.ServiceIdentifiers.Factory__IObfuscatedCode)),u(3,p.inject(m.ServiceIdentifiers.ILogger)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==v.ITransformersRunner&&v.ITransformersRunner)?n:Object,"function"==typeof(i=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==y.TObfuscatedCodeFactory&&y.TObfuscatedCodeFactory)?a:Object,"function"==typeof(s=void 0!==h.ILogger&&h.ILogger)?s:Object,"function"==typeof(c=void 0!==b.IOptions&&b.IOptions)?c:Object])],F),t.JavaScriptObfuscator=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(238));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=o([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(49),u=r(7),f=r(34),p=r(2);let m=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 f.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case f.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};i([u.initializable(),a("design:type",String)],m.prototype,"obfuscatedCode",void 0),i([u.initializable(),a("design:type",String)],m.prototype,"sourceMap",void 0),m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.ICryptUtils)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.ICryptUtils&&l.ICryptUtils)?o:Object,"function"==typeof(n=void 0!==p.IOptions&&p.IOptions)?n:Object])],m),t.ObfuscatedCode=m},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(242),p=r(243),m=r(244),g=r(4),y=r(19);let h=class{constructor(e,t){this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;const o=this.buildNormalizedNodeTransformers(t,r),n=this.nodeTransformerNamesGroupsBuilder.build(o);for(const t of n){const n=[],i=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(n.length||i.length)&&u.replace(e,{enter:this.mergeVisitorsForDirection(n,m.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,m.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e,t){return e.reduce((e,r)=>{const o=this.nodeTransformerFactory(r);return o.getVisitor(t)?Object.assign(Object.assign({},e),{[r]:o}):e},{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(y.NodeMetadata.isIgnoredNode(o))return u.VisitorOption.Skip;for(let i=0;ie}};h=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__INodeTransformer)),s(1,d.inject(l.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),a("design:paramtypes",["function"==typeof(o=void 0!==f.TNodeTransformerFactory&&f.TNodeTransformerFactory)?o:Object,"function"==typeof(n=void 0!==p.INodeTransformerNamesGroupsBuilder&&p.INodeTransformerNamesGroupsBuilder)?n:Object])],h),t.TransformersRunner=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=d(r(251)),u=d(r(246)),f=r(252),p=r(7),m=r(41),g=r(253),y=r(254),h=r(255),b=r(256),N=r(257),v=r(258),I=r(259),S=r(53),O=r(73),C=r(261),j=r(263),_=r(26),R=r(74);class F{constructor(e){this.rawArguments=e,this.arguments=e.slice(2)}static buildOptions(e,t){const r=F.filterOptions(e),o=e.config,n=o?u.resolve(o,"."):"",i=n?I.CLIUtils.getUserConfig(n):{},a=u.basename(t);return Object.assign(Object.assign(Object.assign(Object.assign({},m.DEFAULT_PRESET),i),r),{inputFileName:a})}static filterOptions(e){const t={};return Object.keys(e).forEach(r=>{void 0!==e[r]&&(t[r]=e[r])}),t}initialize(){this.inputPath=u.normalize(this.arguments[0]||""),this.commands=new l.Command,this.configureCommands(),this.configureHelp(),this.inputCLIOptions=this.commands.opts(),this.sourceCodeReader=new j.SourceCodeReader(this.inputPath,this.inputCLIOptions),this.obfuscatedCodeWriter=new C.ObfuscatedCodeWriter(this.inputPath,this.inputCLIOptions)}run(){if(!this.arguments.length||this.arguments.includes("--help"))return void this.commands.outputHelp();const e=this.sourceCodeReader.readSourceCode();this.processSourceCodeData(e)}configureCommands(){this.commands.usage(" [options]").version(_.Utils.buildVersionMessage("0.25.2",1582835643247),"-v, --version").option("-o, --output ","Output path for obfuscated code").option("--compact ","Disable one line output code compacting",y.BooleanSanitizer).option("--config ","Name of js / json config file").option("--control-flow-flattening ","Enables control flow flattening",y.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",y.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)",y.BooleanSanitizer).option("--debug-protection-interval ","Disable browser Debug panel even after page was loaded (can cause DevTools enabled browser freeze)",y.BooleanSanitizer).option("--disable-console-output ","Allow console.log, console.info, console.error and console.warn messages output into browser console",y.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)",g.ArraySanitizer).option("--exclude (comma separated, without whitespaces)","A filename or glob which indicates files to exclude from obfuscation",g.ArraySanitizer).option("--identifier-names-generator ","Sets identifier names generator. Values: hexadecimal, mangled, dictionary. Default: hexadecimal",h.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",g.ArraySanitizer).option("--log ","Enables logging of the information to the console",y.BooleanSanitizer).option("--reserved-names (comma separated, without whitespaces)","Disables obfuscation and generation of identifiers, which being matched by passed RegExp patterns (comma separated)",g.ArraySanitizer).option("--reserved-strings (comma separated, without whitespaces)","Disables transformation of string literals, which being matched by passed RegExp patterns (comma separated)",g.ArraySanitizer).option("--rename-globals ","Allows to enable obfuscation of global variable and function names with declaration.",y.BooleanSanitizer).option("--rotate-string-array ","Enable rotation of string array values during obfuscation",y.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",y.BooleanSanitizer).option("--shuffle-string-array ","Randomly shuffles string array items",y.BooleanSanitizer).option("--source-map ","Enables source map generation",y.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",N.SourceMapModeSanitizer).option("--split-strings ","Splits literal strings into chunks with length of `splitStringsChunkLength` option value",y.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",y.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",v.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",b.ObfuscationTargetSanitizer).option("--transform-object-keys ","Enables transformation of object keys",y.BooleanSanitizer).option("--unicode-escape-sequence ","Allows to enable/disable string conversion to unicode escape sequence",y.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){e.forEach(({filePath:e,content:t},r)=>{const o=this.obfuscatedCodeWriter.getOutputCodePath(e);try{O.Logger.log(O.Logger.colorInfo,R.LoggingPrefix.CLI,`Obfuscating file: ${e}...`),this.processSourceCode(t,e,o,r)}catch(t){throw O.Logger.log(O.Logger.colorInfo,R.LoggingPrefix.CLI,`Error in file: ${e}...`),t}})}processSourceCode(e,t,r,o){var n;let i=F.buildOptions(this.inputCLIOptions,t);if(null!==o){const e=`${null!==(n=this.inputCLIOptions.identifiersPrefix)&&void 0!==n?n:F.baseIdentifiersPrefix}${o}`;i=Object.assign(Object.assign({},i),{identifiersPrefix:e})}i.sourceMap?this.processSourceCodeWithSourceMap(e,r,i):this.processSourceCodeWithoutSourceMap(e,r,i)}processSourceCodeWithoutSourceMap(e,t,r){const o=S.JavaScriptObfuscator.obfuscate(e,r).getObfuscatedCode();this.obfuscatedCodeWriter.writeFile(t,o)}processSourceCodeWithSourceMap(e,t,r){var o;const n=this.obfuscatedCodeWriter.getOutputSourceMapPath(t,null!==(o=r.sourceMapFileName)&&void 0!==o?o:"");r=Object.assign(Object.assign({},r),{sourceMapFileName:u.basename(n)});const i=S.JavaScriptObfuscator.obfuscate(e,r);this.obfuscatedCodeWriter.writeFile(t,i.getObfuscatedCode()),"separate"===r.sourceMapMode&&i.getSourceMap()&&this.obfuscatedCodeWriter.writeFile(n,i.getSourceMap())}}F.availableInputExtensions=[".js"],F.encoding="utf8",F.obfuscatedFilePrefix="-obfuscated",F.baseIdentifiersPrefix="a",s([p.initializable(),c("design:type","function"==typeof(o=void 0!==l&&l.CommanderStatic)?o:Object)],F.prototype,"commands",void 0),s([p.initializable(),c("design:type","function"==typeof(n=void 0!==f.TInputCLIOptions&&f.TInputCLIOptions)?n:Object)],F.prototype,"inputCLIOptions",void 0),s([p.initializable(),c("design:type",String)],F.prototype,"inputPath",void 0),s([p.initializable(),c("design:type","function"==typeof(i=void 0!==j.SourceCodeReader&&j.SourceCodeReader)?i:Object)],F.prototype,"sourceCodeReader",void 0),s([p.initializable(),c("design:type","function"==typeof(a=void 0!==C.ObfuscatedCodeWriter&&C.ObfuscatedCodeWriter)?a:Object)],F.prototype,"obfuscatedCodeWriter",void 0),t.JavaScriptObfuscatorCLI=F},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(250);e.exports=o.JavaScriptObfuscatorCLI},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(245);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})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArraySanitizer=e=>{if(e.endsWith(","))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(33);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(24);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(34);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(28);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});t.CLIUtils=class{static getUserConfig(e){let t;try{t=r(260)(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}}},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=260},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(247)),i=o(r(262)),a=o(r(246)),s=r(42),c=r(245);t.ObfuscatedCodeWriter=class{constructor(e,t){this.inputPath=e,this.options=t}getOutputCodePath(e){const t=this.options.output?a.normalize(this.options.output):null;if(!t)return a.normalize(e).split(s.StringSeparator.Dot).map((e,t)=>0===t?`${e}${c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix}`:e).join(s.StringSeparator.Dot);const r=n.lstatSync(this.inputPath),o=a.extname(t),i=r.isDirectory(),d=!c.JavaScriptObfuscatorCLI.availableInputExtensions.includes(o);if(i){if(d)return a.join(t,e);throw new Error("Output path for directory obfuscation should be a directory path")}return d?a.join(t,a.basename(e)):t}getOutputSourceMapPath(e,t=""){return t&&(e=`${e.substring(0,e.lastIndexOf("/"))}/${t}`),/\.js\.map$/.test(e)?/\.js$/.test(e)&&(e+=".map"):e=`${e.split(s.StringSeparator.Dot)[0]}.js.map`,e}writeFile(e,t){i.sync(a.dirname(e)),n.writeFileSync(e,t,{encoding:c.JavaScriptObfuscatorCLI.encoding})}}},function(e,t){e.exports=require("mkdirp")},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(247)),a=o(r(246)),s=n(r(264)),c=r(245);class d{constructor(e,t){this.inputPath=e,this.options=t}static isExcludedPath(e,t=[]){if(!t.length)return!1;const r=a.basename(e),o=!!s.default([e],t).length;return t.some(t=>e.includes(t)||r.includes(t))||o}static isDirectoryPath(e){try{return i.statSync(e).isDirectory()}catch(e){return!1}}static isFilePath(e){try{return i.statSync(e).isFile()}catch(e){return!1}}static isValidDirectory(e,t=[]){return!d.isExcludedPath(e,t)}static isValidFile(e,t=[]){return c.JavaScriptObfuscatorCLI.availableInputExtensions.includes(a.extname(e))&&!e.includes(c.JavaScriptObfuscatorCLI.obfuscatedFilePrefix)&&!d.isExcludedPath(e,t)}static readFile(e){return{filePath:a.normalize(e),content:i.readFileSync(e,c.JavaScriptObfuscatorCLI.encoding)}}readSourceCode(){if(d.isFilePath(this.inputPath)&&d.isValidFile(this.inputPath,this.options.exclude))return[d.readFile(this.inputPath)];if(d.isDirectoryPath(this.inputPath)&&d.isValidDirectory(this.inputPath,this.options.exclude))return this.readDirectoryRecursive(this.inputPath);const e=c.JavaScriptObfuscatorCLI.availableInputExtensions.map(e=>`\`${e}\``).join(", ");throw new ReferenceError(`Given input path must be a valid ${e} file or directory path`)}readDirectoryRecursive(e,t=[]){return i.readdirSync(e,c.JavaScriptObfuscatorCLI.encoding).forEach(r=>{const o=`${e}/${r}`;if(d.isDirectoryPath(o)&&d.isValidDirectory(o,this.options.exclude))t.push(...this.readDirectoryRecursive(o));else if(d.isFilePath(o)&&d.isValidFile(o,this.options.exclude)){const e=d.readFile(o);t.push(e)}else;}),t}}t.SourceCodeReader=d},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 7636c51c..184e2f90 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=248)}([function(e,t){e.exports=require("inversify")},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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(35);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===o.NodeType.AssignmentExpression}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 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,i=n.isBreakStatementNode(t)&&t.label===e;return r||o||i}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 isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===o.NodeType.SequenceExpression}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})},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=o(r(12)),a=r(44),s=r(57),c=r(4),d=r(19);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),c.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.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 c.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(l.cloneRecursive):"object"==typeof o?l.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=l},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,i)=>{const a=r[e];if(!a||"function"!=typeof a)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=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||s.has(r))return;if("function"!=typeof e[r])return;const c=null!==(i=Object.getOwnPropertyDescriptor(e,r))&&void 0!==i?i:o,d=c.value;Object.defineProperty(e,r,Object.assign(Object.assign({},c),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return d.apply(this,arguments)}})),s.add(r)})}(r,e),function(e,t,r){var n;const i=null!==(n=Object.getOwnPropertyDescriptor(e,t))&&void 0!==n?n:o,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,i),function(e,t){var r;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const n=`_${t.toString()}`,i=null!==(r=Object.getOwnPropertyDescriptor(e,n))&&void 0!==r?r:o;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{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}})),i}(r,i)}}},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=r(35);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,r){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:r,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,r){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,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,r){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:n.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:i.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static methodDefinitionNode(e,t,r,o){return{type:i.NodeType.MethodDefinition,key:e,value:t,kind:r,computed:o,static:!1,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,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,r=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3);let f=class{constructor(e,t){this.randomGenerator=e,this.options=t}};f=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],f),t.AbstractNodeTransformer=f},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomCodeHelpersTransformer="CustomCodeHelpersTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3);let y=class{constructor(e,t,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.randomGenerator=r,this.options=o}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};y=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],y),t.AbstractCustomNode=y},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(117),I=r(118);let v=o=class{constructor(e,t,r,o,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=r,this.randomGenerator=o,this.options=n}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};v.globalVariableTemplateFunctions=[N.GlobalVariableTemplate1(),I.GlobalVariableTemplate2()],v=o=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],v),t.AbstractCustomCodeHelper=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(75),a=r(85),s=r(98),c=r(109),d=r(149),l=r(162),u=r(163),f=r(167),p=r(169),m=r(172),g=r(173),y=r(182),h=r(204),b=r(218),N=r(223),I=r(233),v=r(73),S=r(237),O=r(239),C=r(240),j=r(241);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 i=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(i))return new(o.get(i))(...n);const a=r.container.getNamed(e,i);return o.set(i,a),new a(...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 C.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(v.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(I.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(j.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(O.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(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customCodeHelpersModule),this.container.load(d.customNodesModule),this.container.load(l.finalizingTransformersModule),this.container.load(u.generatorsModule),this.container.load(f.initializingTransformersModule),this.container.load(p.nodeModule),this.container.load(m.nodeTransformersModule),this.container.load(g.obfuscatingTransformersModule),this.container.load(y.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(b.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&r.push(e),e!==a?n.getParentNodesWithStatementsRecursive(a,t,r,++i):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),i=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static set(e,t){var r;e.metadata=Object.assign(null!==(r=e.metadata)&&void 0!==r?r:{},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 isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(4);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 i=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(i,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.callsGraph.length?n.getOptimalBlockScope(o.callsGraph,0,--r):o.callee}static insertBefore(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o)}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});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==a?n.getLexicalScopesRecursive(a,t,r,++i):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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});class o{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(5),f=r(2),p=r(3);let m=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const r=this.customCodeHelpers.get(e);r&&t(r)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierNamesGeneratorFactory&&u.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],m),t.AbstractCustomCodeHelperGroup=m},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);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(31);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},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.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2);let l=class{constructor(e){this.options=e}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],l),t.AbstractObfuscatingReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!0,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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.Dot=".",e.Comma=","}(t.StringSeparator||(t.StringSeparator={}))},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{};n=o([r(0).injectable()],n),t.AbstractCalleeDataExtractor=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ecmaVersion=11},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);t.NodeLiteralUtils=class{static isProhibitedLiteralNode(e,t){return!(!o.NodeGuards.isPropertyNode(t)||t.computed||t.key!==e)||!!o.NodeGuards.isImportDeclarationNode(t)}}},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3);let g=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 i=t.getStorageId(),a=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return a.set(r,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};g=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],g),t.AbstractControlFlowReplacer=g},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n const 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})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(4);let p=class{constructor(e,t){this.preservedNamesSet=new Set,this.lexicalScopesPreservedNamesMap=new Map,this.randomGenerator=e,this.options=t}generate(e,t){return f.NodeGuards.isProgramNode(e)?this.generateForGlobalScope():this.generateForLexicalScope(e)}preserveName(e){this.preservedNamesSet.add(e)}preserveNameForLexicalScope(e,t){var r;const o=null!==(r=this.lexicalScopesPreservedNamesMap.get(t))&&void 0!==r?r:new Set;o.add(e),this.lexicalScopesPreservedNamesMap.set(t,o)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNamesSet.has(e)}isValidIdentifierNameInLexicalScopes(e,t){var r;if(!this.isValidIdentifierName(e))return!1;for(const o of t){const t=null!==(r=this.lexicalScopesPreservedNamesMap.get(o))&&void 0!==r?r:null;if(t&&t.has(e))return!1}return!0}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.AbstractIdentifierNamesGenerator=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(7);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){return this.storage.get(e)}getOrThrow(e){const t=this.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,r]of this.storage)if(e===r)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)}};a([p.initializable(),s("design:type",String)],m.prototype,"storageId",void 0),a([p.initializable(),s("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],m.prototype,"storage",void 0),a([d.postConstruct(),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],m.prototype,"initialize",null),m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],m),t.MapStorage=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(1),n=r(17);class i{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const i=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),i}}t.JavaScriptObfuscator=i,i.version=null!=="0.25.2"?"0.25.2":"unknown"},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";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(20),f=r(2),p=r(3),m=r(21),g=r(46),y=r(4);let h=class extends g.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(m.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!y.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};h=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IControlFlowCustomNode)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TControlFlowCustomNodeFactory&&u.TControlFlowCustomNodeFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],h),t.ExpressionWithOperatorControlFlowReplacer=h},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(88)),a=n(r(89)),s=n(r(58));class c{static parse(e,t){const r=c.sourceTypes.length;for(let o=0;o"),s=`...${o.substring(n,i).replace(/^\s+/,"")}...`;throw new Error(`ERROR at line ${r.line}: ${t}\n${a} ${s}`)}}t.ASTParserFacade=c,c.colorError=s.default.red,c.nearestSymbolsCount=15,c.sourceTypes=["script","module"]},function(e,t){e.exports=require("chalk")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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.BasePropertiesExtractor="BasePropertiesExtractor",e.ObjectExpressionToVariableDeclarationExtractor="ObjectExpressionToVariableDeclarationExtractor"}(t.ObjectExpressionExtractor||(t.ObjectExpressionExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ObjectExpressionVariableDeclarationHostNode="ObjectExpressionVariableDeclarationHostNode"}(t.ObjectExpressionKeysTransformerCustomNode||(t.ObjectExpressionKeysTransformerCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutput="ConsoleOutput",e.DebugProtection="DebugProtection",e.DomainLock="DomainLock",e.SelfDefending="SelfDefending",e.StringArray="StringArray"}(t.CustomCodeHelperGroup||(t.CustomCodeHelperGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(4);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),!a.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;n=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(226)),m=r(227),g=r(2),y=r(228),h=r(7);let b=o=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new m.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=o.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}|${p.default(this.sourceCode.getSourceCode())}`}};b.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",s([h.initializable(),c("design:type","function"==typeof(n=void 0!==m.Chance&&m.Chance.Chance)?n:Object)],b.prototype,"randomGenerator",void 0),s([u.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],b.prototype,"initialize",null),b=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.ISourceCode)),d(1,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(i=void 0!==y.ISourceCode&&y.ISourceCode)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],b),t.RandomGenerator=b},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(58)),f=r(2),p=r(74);let m=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,null!=o?o:"")}info(e,t){this.options.log&&o.log(o.colorInfo,p.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,p.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,p.LoggingPrefix.Base,e,t)}};m.colorInfo=u.default.cyan,m.colorSuccess=u.default.green,m.colorWarn=u.default.yellow,m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IOptions&&f.IOptions)?n:Object])],m),t.Logger=m},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(17),n=r(0),i=r(1),a=r(54),s=r(76),c=r(78),d=r(79),l=r(80),u=r(81),f=r(82),p=r(84);t.analyzersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(u.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(f.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(p.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(77),p=r(54),m=r(4),g=r(18);let y=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];u.traverse(t,{enter:o=>{if(m.NodeGuards.isCallExpressionNode(o))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(o)?u.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),{callsGraph:this.analyzeRecursive(n.callee.body)}))})}};y.calleeDataExtractorsList=[p.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,p.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,p.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],y.limitThresholdActivationLength=25,y.limitThreshold=.002,y=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),a("design:paramtypes",["function"==typeof(n=void 0!==f.TCalleeDataExtractorFactory&&f.TCalleeDataExtractorFactory)?n:Object])],y),t.CallsGraphAnalyzer=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!c.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(d.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(c.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){var r;let o=null;return c.NodeGuards.isIdentifierNode(t)&&(o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),c.NodeGuards.isFunctionExpressionNode(t)&&(o=t.body),o?{callee:o,name:null!==(r=t.name)&&void 0!==r?r:null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(c.NodeGuards.isFunctionExpressionNode(e)&&o&&c.NodeGuards.isVariableDeclaratorNode(o)&&c.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(12)),c=r(43),d=r(4),l=r(18);let u=o=class extends c.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!1===t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),s.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(d.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};u=o=n([a.injectable()],u),t.ObjectExpressionCalleeDataExtractor=u},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(36),p=r(4);let m=o=class{constructor(e){this.prevailingKindOfVariables=o.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const r=[];u.traverse(e,{enter:e=>{p.NodeGuards.isVariableDeclarationNode(e)&&r.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(r))&&void 0!==t?t:o.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};m.defaultKindOfVariables="var",m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IArrayUtils)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IArrayUtils&&f.IArrayUtils)?n:Object])],m),t.PrevailingKindOfVariablesAnalyzer=m},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(83)),c=i(r(12)),d=r(44),l=r(4);let u=o=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){c.replace(e,{enter:e=>(e.range||(e.range=[o.emptyRangeValue,o.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=o.sourceTypes.length;o.attachMissingRanges(e);for(let r=0;r{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],r=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==r||r.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};u.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},u.sourceTypes=["script","module"],u.emptyRangeValue=0,u=o=n([a.injectable()],u),t.ScopeAnalyzer=u},function(e,t){e.exports=require("eslint-scope")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(2),g=r(3),y=r(37),h=r(4),b=r(19),N=r(45);let I=o=class{constructor(e,t,r){this.stringArrayStorageData=new Map,this.stringArrayStorage=e,this.randomGenerator=t,this.options=r}analyze(e){this.options.stringArray&&p.traverse(e,{enter:(e,t)=>{if(t)return b.NodeMetadata.isIgnoredNode(e)?p.VisitorOption.Skip:void(h.NodeGuards.isLiteralNode(e)&&this.analyzeLiteralNode(e,t))}})}getItemDataForLiteralNode(e){return this.stringArrayStorageData.get(e)}analyzeLiteralNode(e,t){"string"==typeof e.value&&(N.NodeLiteralUtils.isProhibitedLiteralNode(e,t)||this.shouldAddValueToStringArray(e.value)&&this.stringArrayStorageData.set(e,this.stringArrayStorage.getOrThrow(e.value)))}shouldAddValueToStringArray(e){return e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}};I.minimumLengthForStringArray=3,I=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.IStringArrayStorage)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==y.IStringArrayStorage&&y.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.StringArrayStorageAnalyzer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(55),s=r(13),c=r(86),d=r(87),l=r(90),u=r(91),f=r(93),p=r(96),m=r(97);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(p.LogicalExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(m.StringLiteralControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(i.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56);let h=o=class extends y.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.BinaryExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}};h.usingExistingIdentifierChance=.5,h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.BinaryExpressionControlFlowReplacer=h},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(20),y=r(36),h=r(2),b=r(3),N=r(21),I=r(10),v=r(11),S=r(4),O=r(6);let C=o=class extends v.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=S.NodeGuards.isBreakStatementNode(e)||S.NodeGuards.isContinueStatementNode(e),r=S.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=S.NodeGuards.isClassDeclarationNode(e);return S.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return m.traverse(e,{enter:e=>{if(S.NodeGuards.isWhileStatementNode(e))return m.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case I.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&S.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),i=this.arrayUtils.shuffle(n),a=n.map(e=>i.indexOf(e)),s=this.controlFlowCustomNodeFactory(N.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,i,a);const c=s.getNode()[0];return O.NodeUtils.parentizeNode(c,t),c}};C=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IControlFlowCustomNode)),l(1,f.inject(p.ServiceIdentifiers.IArrayUtils)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TControlFlowCustomNodeFactory&&g.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==h.IOptions&&h.IOptions)?s:Object])],C),t.BlockStatementControlFlowTransformer=C},function(e,t){e.exports=require("acorn")},function(e,t){e.exports=require("acorn-import-meta")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!h.NodeGuards.isIdentifierNode(n))return e;const i=String(e.arguments.length),a=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionFunctionNode),s=e.arguments;a.initialize(s);const c=this.insertCustomNodeToControlFlowStorage(a,r,i,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),c,n,s)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!h.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};b.usingExistingIdentifierChance=.5,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.CallExpressionControlFlowReplacer=b},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(92),y=r(2),h=r(3),b=r(59),N=r(60),I=r(13),v=r(35),S=r(10),O=r(11),C=r(8),j=r(4),_=r(18),R=r(6);let F=o=class extends O.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 j.NodeGuards.isBreakStatementNode(e)||j.NodeGuards.isContinueStatementNode(e)||j.NodeGuards.isAwaitExpressionNode(e)||j.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!j.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=_.NodeStatementUtils.getScopeOfNode(e),r=j.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),i=C.NodeFactory.blockStatementNode(n),a=e.id.name;let s=!1;return m.traverse(i,{enter:e=>{if(j.NodeGuards.isIdentifierNode(e)&&e.name===a)return s=!0,m.VisitorOption.Break}}),s}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return m.traverse(e,{enter:e=>{if(j.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,m.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(m.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,m.VisitorOption.Break}}),!t)return!1;return _.NodeStatementUtils.getParentNodeWithStatements(e).type!==v.NodeType.Program}getVisitor(e){switch(e){case S.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&j.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&j.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case S.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){m.traverse(e,{enter:e=>{if(!j.NodeGuards.isBlockStatementNode(e))return;const t=R.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),i=this.collectedBlockStatements.splice(n,1)[0];return i===e?e:this.replaceBlockStatementNode(e,i,t)}restoreNode(e,t){const r=e.body[0];if(!j.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 j.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=C.NodeFactory.programNode([C.NodeFactory.expressionStatementNode(C.NodeFactory.functionExpressionNode([],e))]);return R.NodeUtils.parentizeAst(t),R.NodeUtils.parentizeNode(t,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,S.TransformationStage.Obfuscating),e}replaceBlockStatementNode(e,t,r){const n=C.NodeFactory.blockStatementNode([C.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const i=this.deadCodeInjectionCustomNodeFactory(N.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);i.initialize(e,n);const a=i.getNode()[0];return R.NodeUtils.parentizeNode(a,r),a}};F.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",F.maxNestedBlockStatementsCount=4,F.minCollectedBlockStatementsCount=5,F.transformersToRenameBlockScopeIdentifiers=[I.NodeTransformer.LabeledStatementTransformer,I.NodeTransformer.ScopeIdentifiersTransformer],F=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),l(1,f.inject(p.ServiceIdentifiers.ITransformersRunner)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TDeadNodeInjectionCustomNodeFactory&&g.TDeadNodeInjectionCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==b.ITransformersRunner&&b.ITransformersRunner)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],F),t.DeadCodeInjectionTransformer=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(12)),y=r(20),h=r(94),b=r(95),N=r(2),I=r(3),v=r(21),S=r(55),O=r(35),C=r(10),j=r(11),_=r(22),R=r(4),F=r(19),T=r(18),x=r(6);let G=o=class extends j.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 C.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!R.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(v.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),_.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),x.NodeUtils.parentizeAst(e),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(R.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=T.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(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){g.replace(e,{enter:(e,r)=>{if(F.NodeMetadata.isIgnoredNode(e))return g.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return g.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})}})}};G.controlFlowReplacersMap=new Map([[O.NodeType.BinaryExpression,S.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[O.NodeType.CallExpression,S.ControlFlowReplacer.CallExpressionControlFlowReplacer],[O.NodeType.LogicalExpression,S.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[O.NodeType.Literal,S.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),G.hostNodeSearchMinDepth=0,G.hostNodeSearchMaxDepth=2,G=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.Factory__TControlFlowStorage)),u(1,p.inject(m.ServiceIdentifiers.Factory__IControlFlowReplacer)),u(2,p.inject(m.ServiceIdentifiers.Factory__IControlFlowCustomNode)),u(3,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==b.TControlFlowStorageFactory&&b.TControlFlowStorageFactory)?n:Object,"function"==typeof(i=void 0!==h.TControlFlowReplacerFactory&&h.TControlFlowReplacerFactory)?i:Object,"function"==typeof(a=void 0!==y.TControlFlowCustomNodeFactory&&y.TControlFlowCustomNodeFactory)?a:Object,"function"==typeof(s=void 0!==I.IRandomGenerator&&I.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==N.IOptions&&N.IOptions)?c:Object])],G),t.FunctionControlFlowTransformer=G},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56),h=r(4),b=r(6);let N=o=class extends y.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,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.LogicalExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=h.NodeGuards.isUnaryExpressionNode(e)?b.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(h.NodeGuards.isLiteralNode(t)||h.NodeGuards.isIdentifierNode(t)||h.NodeGuards.isObjectExpressionNode(t)||h.NodeGuards.isExpressionStatementNode(t))})}};N.usingExistingIdentifierChance=.5,N=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],N),t.LogicalExpressionControlFlowReplacer=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(h.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralNode);i.initialize(e.value);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!h.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};b.usingExistingIdentifierChance=1,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.StringLiteralControlFlowReplacer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(17),i=r(1),a=r(13),s=r(61),c=r(99),d=r(101),l=r(102),u=r(103),f=r(105),p=r(106),m=r(107),g=r(108);t.convertingTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(a.NodeTransformer.MemberExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(a.NodeTransformer.MethodDefinitionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionKeysTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.ObjectExpressionTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.SplitStringTransformer).whenTargetNamed(a.NodeTransformer.SplitStringTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.TemplateLiteralTransformer).whenTargetNamed(a.NodeTransformer.TemplateLiteralTransformer),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(c.ObjectExpressionToVariableDeclarationExtractor).whenTargetNamed(s.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(g.BasePropertiesExtractor).whenTargetNamed(s.ObjectExpressionExtractor.BasePropertiesExtractor),e(i.ServiceIdentifiers.Factory__IObjectExpressionExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObjectExpressionExtractor))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(100),l=r(62),u=r(22),f=r(4),p=r(18),m=r(6),g=r(23);let y=class{constructor(e){this.objectExpressionKeysTransformerCustomNodeFactory=e}extract(e,t){return this.transformObjectExpressionToVariableDeclaration(e,t)}transformObjectExpressionToVariableDeclaration(e,t){var r;const o=p.NodeStatementUtils.getScopeOfNode(t),n=f.NodeGuards.isNodeWithLexicalScope(o)?o:null!==(r=g.NodeLexicalScopeUtils.getLexicalScope(o))&&void 0!==r?r:null;if(!n)throw new Error("Cannot find lexical scope node for the host statement node");const i=e.properties,a=this.getObjectExpressionHostNode(n,i),s=[a];return u.NodeAppender.insertBefore(o,s,t),m.NodeUtils.parentizeAst(a),m.NodeUtils.parentizeNode(a,o),{nodeToReplace:this.getObjectExpressionIdentifierNode(a),objectExpressionHostStatement:a,objectExpressionNode:this.getObjectExpressionNode(a)}}getObjectExpressionHostNode(e,t){const r=this.objectExpressionKeysTransformerCustomNodeFactory(l.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!f.NodeGuards.isVariableDeclarationNode(o))throw new Error("`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node");return o}getObjectExpressionIdentifierNode(e){const t=e.declarations[0].id;if(!f.NodeGuards.isIdentifierNode(t))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property");return t}getObjectExpressionNode(e){var t;const r=null!==(t=e.declarations[0].init)&&void 0!==t?t:null;if(!r||!f.NodeGuards.isObjectExpressionNode(r))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property");return r}};y=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),i("design:paramtypes",["function"==typeof(o=void 0!==d.TObjectExpressionKeysTransformerCustomNodeFactory&&d.TObjectExpressionKeysTransformerCustomNodeFactory)?o:Object])],y),t.ObjectExpressionToVariableDeclarationExtractor=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(g.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=m.NodeFactory.literalNode(e.property.name)}return e}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.MemberExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4);let h=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case p.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&y.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return y.NodeGuards.isIdentifierNode(e.key)?this.replaceIdentifierKey(e,e.key):y.NodeGuards.isLiteralNode(e.key)?this.replaceLiteralKey(e,e.key):e}replaceIdentifierKey(e,t){return o.ignoredNames.includes(t.name)||e.computed||(e.computed=!0,e.key=g.NodeFactory.literalNode(t.name)),e}replaceLiteralKey(e,t){return"string"!=typeof t.value||o.ignoredNames.includes(t.value)||e.computed||(e.computed=!0),e}};h.ignoredNames=["constructor"],h=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],h),t.MethodDefinitionTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(104),g=r(2),y=r(3),h=r(10),b=r(11),N=r(4),I=r(18),v=r(61);let S=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.objectExpressionExtractorFactory=e}static isProhibitedHostStatement(e,t){return o.isReferencedIdentifierName(e,t)||o.isProhibitedSequenceExpression(e,t)}static isReferencedIdentifierName(e,t){const r=[];let o=!1,n=!1;return p.traverse(t,{enter:t=>{t===e&&(n=!0),N.NodeGuards.isIdentifierNode(t)&&(n?r.includes(t.name)&&(o=!0):r.push(t.name))},leave:t=>{if(t===e)return n=!1,p.VisitorOption.Break}}),o}static isProhibitedSequenceExpression(e,t){return N.NodeGuards.isExpressionStatementNode(t)&&N.NodeGuards.isSequenceExpressionNode(t.expression)&&t.expression.expressions.some(e=>N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isSuperNode(e.callee))}getVisitor(e){if(!this.options.transformObjectKeys)return null;switch(e){case h.TransformationStage.Converting:return{leave:(e,t)=>{if(t&&N.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(!e.properties.length)return e;const r=I.NodeStatementUtils.getRootStatementOfNode(e);return o.isProhibitedHostStatement(e,r)?e:this.applyObjectExpressionKeysExtractorsRecursive(o.objectExpressionExtractorNames,e,r)}applyObjectExpressionKeysExtractorsRecursive(e,t,r){const o=[...e],n=o.shift();if(!n)return t;const{nodeToReplace:i,objectExpressionHostStatement:a,objectExpressionNode:s}=this.objectExpressionExtractorFactory(n).extract(t,r);return this.applyObjectExpressionKeysExtractorsRecursive(o,s,a),i}};S.objectExpressionExtractorNames=[v.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,v.ObjectExpressionExtractor.BasePropertiesExtractor],S=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==m.TObjectExpressionExtractorFactory&&m.TObjectExpressionExtractorFactory)?n:Object,"function"==typeof(i=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],S),t.ObjectExpressionKeysTransformer=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.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){g.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=m.NodeFactory.literalNode(e.key.value))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),g.NodeGuards.isIdentifierNode(e.key)&&(e.key=m.NodeFactory.literalNode(e.key.name))}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.ObjectExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),I=r(45),v=r(6);let S=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ObjectExpressionKeysTransformer,g.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let i=0;i{if(this.options.splitStrings)return t&&N.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if(I.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;const r=this.transformLiteralNodeByChunkLength(e,t,o.firstPassChunkLength);return f.replace(r,{enter:(e,t)=>{if(t&&N.NodeGuards.isLiteralNode(e))return this.transformLiteralNodeByChunkLength(e,t,this.options.splitStringsChunkLength)}})}transformLiteralNodeByChunkLength(e,t,r){if("string"!=typeof e.value)return e;if(r>=e.value.length)return e;const n=o.chunkString(e.value,r),i=this.transformStringChunksToBinaryExpressionNode(n);return v.NodeUtils.parentizeAst(i),v.NodeUtils.parentizeNode(i,t),i}transformStringChunksToBinaryExpressionNode(e){const t=e.shift(),r=e.shift();if(!t||!r)throw new Error("First and second chunks values should not be empty");const o=b.NodeFactory.binaryExpressionNode("+",b.NodeFactory.literalNode(t),b.NodeFactory.literalNode(r));return e.reduce((e,t)=>{const r=b.NodeFactory.literalNode(t);return b.NodeFactory.binaryExpressionNode("+",e,r)},o)}};S.firstPassChunkLength=1e3,S=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],S),t.SplitStringTransformer=S},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4),h=r(6);let b=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return!!e&&y.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return y.NodeGuards.isTemplateLiteralNode(e)&&!y.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case p.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,i=[];if(e.quasis.forEach(e=>{i.push(g.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&i.push(t)}),i=i.filter(e=>!(y.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(i[0])||o.isLiteralNodeWithStringValue(i[1])||i.unshift(g.NodeFactory.literalNode("")),i.length>1){let e=g.NodeFactory.binaryExpressionNode("+",i.shift(),i.shift());i.forEach(t=>{e=g.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=i[0];return h.NodeUtils.parentizeAst(n),h.NodeUtils.parentizeNode(n,t),n}};b=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],b),t.TemplateLiteralTransformer=b},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(22),s=r(8),c=r(4),d=r(18);let l=o=class{static getPropertyNodeKeyName(e){const t=e.key;return!c.NodeGuards.isLiteralNode(t)||"string"!=typeof t.value&&"number"!=typeof t.value?c.NodeGuards.isIdentifierNode(t)?t.name:null:t.value.toString()}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extract(e,t){const r=e.parentNode;return r&&c.NodeGuards.isVariableDeclaratorNode(r)&&c.NodeGuards.isIdentifierNode(r.id)?this.transformObjectExpressionNode(e,t,r.id):{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}transformObjectExpressionNode(e,t,r){const o=e.properties,[n,i]=this.extractPropertiesToExpressionStatements(o,t,r),s=d.NodeStatementUtils.getScopeOfNode(t);return this.filterExtractedObjectExpressionProperties(e,i),a.NodeAppender.insertAfter(s,n,t),{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}extractPropertiesToExpressionStatements(e,t,r){const n=e.length,i=[],a=[];for(let d=0;d!t.includes(r))}};l=o=n([i.injectable()],l),t.BasePropertiesExtractor=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(27),s=r(63),c=r(110),d=r(111),l=r(112),u=r(113),f=r(114),p=r(115),m=r(119),g=r(121),y=r(123),h=r(125),b=r(127),N=r(131),I=r(133),v=r(135),S=r(137),O=r(144),C=r(146);t.customCodeHelpersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICustomCodeHelper).to(p.ConsoleOutputDisableCodeHelper).whenTargetNamed(a.CustomCodeHelper.ConsoleOutputDisable),e(i.ServiceIdentifiers.ICustomCodeHelper).to(y.DebugProtectionFunctionCallCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionCall),e(i.ServiceIdentifiers.ICustomCodeHelper).to(h.DebugProtectionFunctionIntervalCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionInterval),e(i.ServiceIdentifiers.ICustomCodeHelper).to(b.DebugProtectionFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(N.DomainLockCodeHelper).whenTargetNamed(a.CustomCodeHelper.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelper).to(I.CallsControllerFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.CallsControllerFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(v.SelfDefendingUnicodeCodeHelper).whenTargetNamed(a.CustomCodeHelper.SelfDefendingUnicode),e(i.ServiceIdentifiers.ICustomCodeHelper).to(S.StringArrayCallsWrapperCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayCallsWrapper),e(i.ServiceIdentifiers.ICustomCodeHelper).to(O.StringArrayCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArray),e(i.ServiceIdentifiers.ICustomCodeHelper).to(C.StringArrayRotateFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayRotateFunction),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(c.ConsoleOutputCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.ConsoleOutput),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(d.DebugProtectionCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DebugProtection),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(l.DomainLockCustomCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(u.SelfDefendingCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.SelfDefending),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(f.StringArrayCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.StringArray),e(i.ServiceIdentifiers.Factory__ICustomCodeHelper).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelper)),e(i.ServiceIdentifiers.Factory__ICustomCodeHelperGroup).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelperGroup)),e(i.ServiceIdentifiers.ICustomCodeHelperFormatter).to(m.CustomCodeHelperFormatter).inSingletonScope(),e(i.ServiceIdentifiers.ICustomCodeHelperObfuscator).to(g.CustomCodeHelperObfuscator).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23),O=r(4);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.disableConsoleOutput)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.ConsoleOutputDisable,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.disableConsoleOutput)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.ConsoleOutputDisable),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.ConsoleOutputDisable,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.ConsoleOutputCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(4),O=r(23);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.debugProtection)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=O.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionCall,e=>{e.initialize(s,c),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunction,t=>{t.initialize(s),v.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionInterval,t=>{const r=S.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);t.initialize(s),v.NodeAppender.insertAtIndex(e,t.getNode(),o)})}initialize(){if(this.customCodeHelpers=new Map,!this.options.debugProtection)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunction),t=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionCall),r=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionInterval),o=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunction,e),this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionCall,t),this.options.debugProtectionInterval&&this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionInterval,r),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,o)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DebugProtectionCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23),O=r(4);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.domainLock.length)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DomainLock,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.domainLock.length)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DomainLock),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DomainLock,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DomainLockCustomCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23);let O=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.selfDefending)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope(),c=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope();this.appendCustomNodeIfExist(b.CustomCodeHelper.SelfDefendingUnicode,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.selfDefending)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.SelfDefendingUnicode),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.SelfDefendingUnicode,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],O.prototype,"customCodeHelpers",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],O),t.SelfDefendingCodeHelperGroup=O},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(29),g=r(5),y=r(2),h=r(3),b=r(37),N=r(7),I=r(27),v=r(25),S=r(30),O=r(22);let C=class extends S.AbstractCustomCodeHelperGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=v.ObfuscationEvent.AfterObfuscation,this.customCodeHelperFactory=e,this.stringArrayStorage=t}appendNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArray,t=>{O.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArrayCallsWrapper,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArrayRotateFunction,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customCodeHelpers=new Map,!this.options.stringArray)return;const e=this.customCodeHelperFactory(I.CustomCodeHelper.StringArray),t=this.customCodeHelperFactory(I.CustomCodeHelper.StringArrayCallsWrapper),r=this.customCodeHelperFactory(I.CustomCodeHelper.StringArrayRotateFunction),o=this.stringArrayStorage.getStorageName(),n=this.stringArrayStorage.getStorageCallsWrapperName(),i=this.stringArrayStorage.getRotationAmount();e.initialize(this.stringArrayStorage,o),t.initialize(o,n),r.initialize(o,i),this.customCodeHelpers.set(I.CustomCodeHelper.StringArray,e),this.customCodeHelpers.set(I.CustomCodeHelper.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customCodeHelpers.set(I.CustomCodeHelper.StringArrayRotateFunction,r)}};d([N.initializable(),l("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__ICustomCodeHelper)),u(1,f.inject(p.ServiceIdentifiers.IStringArrayStorage)),u(2,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TCustomCodeHelperFactory&&m.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==b.IStringArrayStorage&&b.IStringArrayStorage)?i:Object,"function"==typeof(a=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],C),t.StringArrayCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(116),I=r(48),v=r(7),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.callsControllerFunctionName=e,this.consoleOutputDisableFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():I.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(N.ConsoleOutputDisableExpressionTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,consoleLogDisableFunctionName:this.consoleOutputDisableFunctionName,globalVariableTemplate:e})}};c([v.initializable(),d("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),c([v.initializable(),d("design:type",String)],C.prototype,"consoleOutputDisableFunctionName",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],C),t.ConsoleOutputDisableCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n const {consoleLogDisableFunctionName} = {callControllerFunctionName}(this, function () {\n const func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n const c = {};\n \n c.log = func;\n c.warn = func;\n c.debug = func;\n c.info = func;\n c.error = func;\n c.exception = func;\n c.table = func;\n c.trace = func;\n \n return c;\n })(func);\n } else {\n that.console.log = func;\n that.console.warn = func;\n that.console.debug = func;\n that.console.info = func;\n that.console.error = func;\n that.console.exception = func;\n that.console.table = func;\n that.console.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n let that;\n \n try {\n const getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n const getGlobal = function () {\n let globalObject;\n \n try {\n globalObject = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');')();\n } catch (e) {\n globalObject = window;\n }\n \n return globalObject;\n };\n const that = getGlobal();\n "}},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=s(r(12)),f=c(r(120)),p=r(64),m=r(4);let g=class{constructor(e){this.prevailingKindOfVariables=e.getPrevailingKind()}formatTemplate(e,t){return f.default(e,t)}formatStructure(e){for(const t of e)u.replace(t,{enter:e=>{if(m.NodeGuards.isVariableDeclarationNode(e))return"var"===this.prevailingKindOfVariables&&(e.kind="var"),e}});return e}};g=n([d.injectable(),a(0,d.inject(l.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),i("design:paramtypes",["function"==typeof(o=void 0!==p.IPrevailingKindOfVariablesAnalyzer&&p.IPrevailingKindOfVariablesAnalyzer)?o:Object])],g),t.CustomCodeHelperFormatter=g},function(e,t){e.exports=require("string-template")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(122),p=r(53);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}obfuscateTemplate(e,t={}){return p.JavaScriptObfuscator.obfuscate(e,Object.assign(Object.assign(Object.assign({},f.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()}),t)).getObfuscatedCode()}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],m),t.CustomCodeHelperObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(124),I=r(16),v=r(6);let S=class extends I.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(e){return v.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,callControllerFunctionName:this.callsControllerFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"callsControllerFunctionName",void 0),c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionCallCodeHelper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {callControllerFunctionName}(\n this,\n function () {\n const regExp1 = new RegExp('function *\\\\( *\\\\)');\n const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n const result = {debugProtectionFunctionName}('init');\n \n if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {\n result('0');\n } else {\n {debugProtectionFunctionName}();\n }\n }\n )();\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(126),I=r(16),v=r(6);let S=class extends I.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return v.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionIntervalCodeHelper=S},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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(7),I=r(128),v=r(129),S=r(130),O=r(16),C=r(6);let j=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?I.DebuggerTemplate():v.DebuggerTemplateNoEval();return this.customCodeHelperFormatter.formatTemplate(S.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([N.initializable(),d("design:type",String)],j.prototype,"debugProtectionFunctionName",void 0),j=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],j),t.DebugProtectionFunctionCodeHelper=j},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 const func = function () {\n while (true) {}\n };\n \n return func();\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n debugger;\n } else {\n debugger;\n }\n \n }\n "}},function(e,t,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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(49),b=r(2),N=r(3),I=r(24),v=r(7),S=r(132),O=r(48),C=r(16),j=r(6);let _=class extends C.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.cryptUtils=i}initialize(e,t){this.callsControllerFunctionName=e,this.domainLockFunctionName=t}getNodeStructure(e){return j.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==I.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():O.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(S.DomainLockTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,domainLockFunctionName:this.domainLockFunctionName,diff:r,domains:t,globalVariableTemplate:o})}};d([v.initializable(),l("design:type",String)],_.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type",String)],_.prototype,"domainLockFunctionName",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.ICryptUtils)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object])],_),t.DomainLockCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockTemplate=function(){return'\n const {domainLockFunctionName} = {callControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n const func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (let i = 0; i < 1000; i--) {\n const isPositive = i > 0;\n \n switch (isPositive) {\n case true:\n return this.item + \'_\' + this.value + \'_\' + i;\n default:\n this.item + \'_\' + this.value;\n }\n }\n }()\n };\n };\n \n const regExp = new RegExp("[{diff}]", "g");\n const domains = "{domains}".replace(regExp, "").split(";");\n let document;\n let domain;\n let location;\n let hostname;\n\n for (let d in that) {\n if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {\n document = d;\n \n break;\n }\n }\n\n for (let d1 in that[document]) {\n if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {\n domain = d1;\n \n break;\n }\n }\n\n if (!("~" > domain)) {\n for (let d2 in that[document]) {\n if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {\n location = d2;\n \n break;\n }\n }\n\n for (let d3 in that[document][location]) {\n if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {\n hostname = d3;\n \n break;\n }\n }\n }\n \n if (!document || !that[document]) {\n return;\n }\n \n const documentDomain = that[document][domain];\n const documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n const currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n let ok = false;\n \n for (let i = 0; i < domains.length; i++) {\n const domain = domains[i];\n const position = currentDomain.length - domain.length;\n const lastIndex = currentDomain.indexOf(domain, position);\n const endsWith = lastIndex !== -1 && lastIndex === position;\n \n if (endsWith) {\n if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {\n ok = true;\n }\n }\n }\n \n if (!ok) {\n data;\n } else {\n return;\n }\n \n func();\n });\n\n {domainLockFunctionName}();\n '}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(14),y=r(9),h=r(2),b=r(3),N=r(25),I=r(7),v=r(134),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.appendEvent===N.ObfuscationEvent.AfterObfuscation?this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(v.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})):this.customCodeHelperFormatter.formatTemplate(v.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})}};d([I.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type","function"==typeof(o=void 0!==N.ObfuscationEvent&&N.ObfuscationEvent)?o:Object)],C.prototype,"appendEvent",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperFormatter&&y.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.CallsControllerFunctionCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleCallControllerTemplate=function(){return"\n const {callControllerFunctionName} = (function(){\n let firstCall = true;\n \n return function (context, fn){\n const rfn = firstCall ? function(){\n if(fn){\n const res = fn.apply(context, arguments);\n fn = null;\n return res;\n }\n } : function(){}\n \n firstCall = false;\n \n return rfn;\n }\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(7),v=r(136),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.callsControllerFunctionName=e,this.selfDefendingFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(v.SelfDefendingTemplate(this.escapeSequenceEncoder),{callControllerFunctionName:this.callsControllerFunctionName,selfDefendingFunctionName:this.selfDefendingFunctionName})}};d([I.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type",String)],C.prototype,"selfDefendingFunctionName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],C),t.SelfDefendingUnicodeCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return"\n const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {\n const test = function () {\n const regExp = test\n .constructor('return /\" + this + \"/')()\n .compile('^([^ ]+( +[^ ]+)+)+[^ ]}');\n \n return !regExp.test({selfDefendingFunctionName});\n };\n \n return test();\n });\n \n {selfDefendingFunctionName}();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(24),v=r(28),S=r(7),O=r(138),C=r(48),j=r(139),_=r(140),R=r(141),F=r(142),T=r(143),x=r(16),G=r(6);let w=class extends x.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(e){return G.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.getDecodeStringArrayTemplate(),t=[`^${this.stringArrayName}$`];return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(F.StringArrayCallsWrapperTemplate(),{decodeCodeHelperTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),{reservedNames:t})}getDecodeStringArrayTemplate(){const e=this.options.target!==I.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():C.GlobalVariableNoEvalTemplate(),t=this.customCodeHelperFormatter.formatTemplate(O.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=this.customCodeHelperFormatter.formatTemplate(_.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case v.StringArrayEncoding.Rc4:r=this.customCodeHelperFormatter.formatTemplate(T.StringArrayRC4DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,rc4Polyfill:j.Rc4Template(),stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case v.StringArrayEncoding.Base64:r=this.customCodeHelperFormatter.formatTemplate(R.StringArrayBase64DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};d([S.initializable(),l("design:type",String)],w.prototype,"stringArrayName",void 0),d([S.initializable(),l("design:type",String)],w.prototype,"stringArrayCallsWrapperName",void 0),w=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],w),t.StringArrayCallsWrapperCodeHelper=w},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n const str = String(input).replace(/=+$/, '');\n let output = '';\n for (\n let bc = 0, bs, buffer, idx = 0;\n buffer = str.charAt(idx++);\n ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,\n bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0\n ) {\n buffer = chars.indexOf(buffer);\n }\n return output;\n }\n );\n })();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n const rc4 = function (str, key) {\n let s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (let k = 0, length = str.length; k < length; k++) {\n newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);\n }\n \n str = decodeURIComponent(newStr);\n \t \n let i;\n \t \n\t for (i = 0; i < 256; i++) {\n s[i] = i;\n }\n \n for (i = 0; i < 256; i++) {\n j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n }\n \n i = 0;\n j = 0;\n \n for (let y = 0; y < str.length; y++) {\n i = (i + 1) % 256;\n j = (j + s[i]) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);\n }\n \n return res;\n }\n "}},function(e,t,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),i=e.getRandomString(6),a=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n const StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${i} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${a} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n const regExp = new RegExp(this.${i} + this.${a});\n const expression = regExp.test(this.${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 (let 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.StringArrayBase64DecodeTemplate=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 const string = atob(str);\n let newStringChars = [];\n \n for (let i = 0, length = string.length; i < length; i++) {\n newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);\n }\n \n return decodeURIComponent(newStringChars);\n };\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const 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 const {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n let value = {stringArrayName}[index];\n \n {decodeCodeHelperTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRC4DecodeTemplate=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 const 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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(37),I=r(7),v=r(145),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.stringArrayStorage=e,this.stringArrayName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(v.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};d([I.initializable(),l("design:type","function"==typeof(o=void 0!==N.IStringArrayStorage&&N.IStringArrayStorage)?o:Object)],C.prototype,"stringArrayStorage",void 0),d([I.initializable(),l("design:type",String)],C.prototype,"stringArrayName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.StringArrayCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n const {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(7),v=r(147),S=r(148),O=r(16),C=r(6),j=r(38);let _=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayRotationAmount=t}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.identifierNamesGenerator.generateForGlobalScope(),t=this.identifierNamesGenerator.generateForGlobalScope(),r=[`^${this.stringArrayName}$`];let o="";return o=this.options.selfDefending?this.customCodeHelperFormatter.formatTemplate(v.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(S.StringArrayRotateFunctionTemplate(),{code:o,timesName:e,whileFunctionName:t,stringArrayName:this.stringArrayName,stringArrayRotationAmount:j.NumberUtils.toHex(this.stringArrayRotationAmount)}),{reservedNames:r})}};d([I.initializable(),l("design:type",String)],_.prototype,"stringArrayName",void 0),d([I.initializable(),l("design:type",Number)],_.prototype,"stringArrayRotationAmount",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],_),t.StringArrayRotateFunctionCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const selfDefendingFunc = function () {\n const object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n let updatedCookie = name + "=" + value;\n let i = 0;\n \n for (let i = 0, len = options.length; i < len; i++) {\n const propName = options[i];\n \n updatedCookie += "; " + propName;\n \n const propValue = options[propName];\n \n options.push(propValue);\n len = options.length;\n \n if (propValue !== true) {\n updatedCookie += "=" + propValue;\n }\n }\n\n document['cookie'] = updatedCookie;\n },\n removeCookie: function(){return 'dev';},\n getCookie: function (document, name) {\n document = document || function (value) { return value };\n const matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n const func = function (param1, param2) {\n param1(++param2);\n };\n \n func({whileFunctionName}, {timesName});\n \n return matches ? decodeURIComponent(matches[1]) : undefined;\n }\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n let cookie = '';\n const result = object['updateCookie']();\n \n if (!result) {\n object['setCookie'](['*'], 'counter', 1);\n } else if (result) {\n cookie = object['getCookie'](null, 'counter');\n } else {\n object['removeCookie']();\n }\n };\n \n selfDefendingFunc();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n const {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotationAmount});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(21),s=r(60),c=r(62),d=r(150),l=r(151),u=r(152),f=r(153),p=r(154),m=r(155),g=r(156),y=r(158),h=r(159),b=r(160),N=r(161);t.customNodesModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(l.BinaryExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(u.BlockStatementControlFlowFlatteningNode).whenTargetNamed(a.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(p.CallExpressionControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(m.CallExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.ControlFlowStorageNode).whenTargetNamed(a.ControlFlowCustomNode.ControlFlowStorageNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.LogicalExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.StringLiteralNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.StringLiteralControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(f.BlockStatementDeadCodeInjectionNode).whenTargetNamed(s.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(d.ObjectExpressionVariableDeclarationHostNode).whenTargetNamed(c.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode),e(i.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions)),e(i.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(4);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.lexicalScopeNode=e,this.properties=t}getNodeStructure(){const e=b.NodeGuards.isProgramNode(this.lexicalScopeNode)?this.identifierNamesGenerator.generateForGlobalScope():this.identifierNamesGenerator.generateForLexicalScope(this.lexicalScopeNode);return[h.NodeFactory.variableDeclarationNode([h.NodeFactory.variableDeclaratorNode(h.NodeFactory.identifierNode(e),h.NodeFactory.objectExpressionNode(this.properties))],"const")]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.ObjectExpressionVariableDeclarationHostNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.binaryExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BinaryExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(4),I=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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=b.NodeFactory.blockStatementNode([b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(e),b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),b.NodeFactory.identifierNode("split")),[b.NodeFactory.literalNode("|")]))],"const"),b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(t),b.NodeFactory.literalNode(0))],"let"),b.NodeFactory.whileStatementNode(b.NodeFactory.literalNode(!0),b.NodeFactory.blockStatementNode([b.NodeFactory.switchStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(e),b.NodeFactory.updateExpressionNode("++",b.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return N.NodeGuards.isReturnStatementNode(r)||o.push(b.NodeFactory.continueStatement()),b.NodeFactory.switchCaseNode(b.NodeFactory.literalNode(String(t)),o)})),b.NodeFactory.breakStatement()]))]);return I.NodeUtils.parentizeAst(r),[r]}};s([y.initializable(),c("design:type",Array)],v.prototype,"blockStatementBody",void 0),s([y.initializable(),c("design:type",Array)],v.prototype,"originalKeysIndexesInShuffledArray",void 0),s([y.initializable(),c("design:type",Array)],v.prototype,"shuffledKeys",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.BlockStatementControlFlowFlatteningNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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),[i,a]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=h.NodeFactory.blockStatementNode([h.NodeFactory.ifStatementNode(h.NodeFactory.binaryExpressionNode(r,h.NodeFactory.literalNode(o),h.NodeFactory.literalNode(n)),i,a)]);return b.NodeUtils.parentizeAst(s),[s]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BlockStatementDeadCodeInjectionNode=N},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(2),y=r(3),h=r(7),b=r(15),N=r(8),I=r(6);let v=class extends b.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=N.NodeFactory.expressionStatementNode(N.NodeFactory.callExpressionNode(N.NodeFactory.memberExpressionNode(N.NodeFactory.identifierNode(this.controlFlowStorageName),N.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return I.NodeUtils.parentizeAst(e),[e]}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof ESTree&&ESTree.Expression)?o:Object)],v.prototype,"callee",void 0),c([h.initializable(),d("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),c([h.initializable(),d("design:type",String)],v.prototype,"controlFlowStorageName",void 0),c([h.initializable(),d("design:type",Array)],v.prototype,"expressionArguments",void 0),v=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],v),t.CallExpressionControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=b.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(157),m=r(5),g=r(9),y=r(2),h=r(3),b=r(7),N=r(15),I=r(8),v=r(4),S=r(6);let O=class extends N.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.controlFlowStorage=e}getNodeStructure(){const e=Array.from(this.controlFlowStorage.getStorage()).map(([e,t])=>{const r=t.getNode()[0];if(!v.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return I.NodeFactory.propertyNode(I.NodeFactory.identifierNode(e),r.expression)});let t=I.NodeFactory.variableDeclarationNode([I.NodeFactory.variableDeclaratorNode(I.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),I.NodeFactory.objectExpressionNode(e))],"const");return t=S.NodeUtils.parentizeAst(t),[t]}};c([b.initializable(),d("design:type","function"==typeof(o=void 0!==p.TControlFlowStorage&&p.TControlFlowStorage)?o:Object)],O.prototype,"controlFlowStorage",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],O),t.ControlFlowStorageNode=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageName",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.ExpressionWithOperatorControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.logicalExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.LogicalExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageName",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.StringLiteralControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8);let N=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.literalValue=e}getNodeStructure(){return[b.NodeFactory.expressionStatementNode(b.NodeFactory.literalNode(this.literalValue))]}};s([y.initializable(),c("design:type",String)],N.prototype,"literalValue",void 0),N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.StringLiteralNode=N},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(1),i=r(33),a=r(164),s=r(165),c=r(166);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(a.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.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 i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(36),p=r(2),m=r(3),g=r(50),y=r(23);let h=o=class extends g.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}generateForGlobalScope(){const e=this.generateNewDictionaryName();return this.preserveName(e),e}generateForLexicalScope(e){const t=[e,...y.NodeLexicalScopeUtils.getLexicalScopes(e)],r=this.generateNewDictionaryName();return this.isValidIdentifierNameInLexicalScopes(r,t)?(this.preserveNameForLexicalScope(r,e),r):this.generateForLexicalScope(e)}generateWithPrefix(){const e=`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:""}${this.generateNewDictionaryName()}`;return this.isValidIdentifierName(e)?(this.preserveName(e),e):this.generateWithPrefix()}generateNewDictionaryName(){if(!this.identifierNamesSet.size)throw new Error("Too many identifiers in the code, add more words to identifiers dictionary");const e=this.identifiersIterator.next();if(!e.done){const t=e.value;return this.isValidIdentifierName(t)?e.value:this.generateNewDictionaryName()}return this.identifierNamesSet=new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet])),this.identifiersIterator=this.identifierNamesSet.values(),this.generateNewDictionaryName()}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)}};h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(1,l.inject(u.ServiceIdentifiers.IOptions)),d(2,l.inject(u.ServiceIdentifiers.IArrayUtils)),c("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object,"function"==typeof(a=void 0!==f.IArrayUtils&&f.IArrayUtils)?a:Object])],h),t.DictionaryIdentifierNamesGenerator=h},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(38),g=r(26);let y=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t)}generateForGlobalScope(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=m.NumberUtils.toHex(t),n=g.Utils.hexadecimalPrefix.length+1,i=e?e-n:o.baseIdentifierNameLength,a=r.substr(0,i),s=`_${g.Utils.hexadecimalPrefix}${a}`;return this.isValidIdentifierName(s)?(this.preserveName(s),s):this.generateForGlobalScope(e)}generateForLexicalScope(e,t){return this.generateForGlobalScope(t)}generateWithPrefix(e){const t=this.generateForGlobalScope(e);return`${this.options.identifiersPrefix}${t}`.replace("__","_")}};y.baseIdentifierNameLength=6,y=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],y),t.HexadecimalIdentifierNamesGenerator=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(23);let g=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.initMangledNameCharacter}generateForGlobalScope(e){const t=this.generateNewMangledName(this.previousMangledName);return this.previousMangledName=t,this.preserveName(t),t}generateForLexicalScope(e,t){const r=[e,...m.NodeLexicalScopeUtils.getLexicalScopes(e)];let n=this.getLastMangledNameForScopes(r);do{n=this.generateNewMangledName(n)}while(!this.isValidIdentifierNameInLexicalScopes(n,r));return o.lastMangledNameInScopeMap.set(e,n),this.preserveNameForLexicalScope(n,e),n}generateWithPrefix(e){const t=this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:"",r=this.generateNewMangledName(this.previousMangledName),o=`${t}${r}`;return this.previousMangledName=r,this.isValidIdentifierName(o)?(this.preserveName(o),o):this.generateWithPrefix(e)}isValidIdentifierName(e){return super.isValidIdentifierName(e)&&!o.reservedNamesSet.has(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=t.length,n=e.length,i=e=>"0".repeat(e);let a=n-1;do{const o=e[a],s=t.indexOf(o);if(s!==r-1){return e.substring(0,a)+t[s+1]+i(n-(a+1))}--a}while(a>=0);return`a${i(n)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}getLastMangledNameForScopes(e){var t;for(const r of e){const e=null!==(t=o.lastMangledNameInScopeMap.get(r))&&void 0!==t?t:null;if(e)return e}return o.initMangledNameCharacter}};g.initMangledNameCharacter="9",g.lastMangledNameInScopeMap=new Map,g.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),g.reservedNamesSet=new Set(["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"]),g=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],g),t.MangledIdentifierNamesGenerator=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(13),a=r(168);t.initializingTransformersModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.INodeTransformer).to(a.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer)})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(10),y=r(11),h=r(65),b=r(4);let N=o=class extends y.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case g.TransformationStage.Initializing:return{leave:e=>{if(b.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(!e.comments||!e.comments.length)return e;const t=this.transformComments(e.comments);return 0===t.length?e:e.body.length?(f.traverse(e,{enter:r=>{if(r===e)return;const o=t.findIndex(e=>e.range&&r.range&&e.range[0]0&&(e.trailingComments=t.reverse()),e):(e.leadingComments=t,e)}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||h.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};N.preservedWords=["@license","@preserve"],N=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],N),t.CommentsTransformer=N},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(170);t.nodeModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IScopeIdentifiersTraverser).to(i.ScopeIdentifiersTraverser).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(171),u=r(4);let f=o=class{constructor(e){this.scopeAnalyzer=e}traverse(e,t,r){this.scopeAnalyzer.analyze(e);const o=this.scopeAnalyzer.acquireScope(e);this.traverseScopeVariables(o,o,r)}traverseScopeVariables(e,t,r){const n=t.variableScope,i=u.NodeGuards.isNodeWithBlockLexicalScope(n.block)?n.block:null,a=o.globalScopeNames.includes(n.type);if(i){for(const s of t.variables){if(s.name===o.argumentsVariableName)continue;r({isGlobalDeclaration:a,isBubblingDeclaration:s.identifiers.some(e=>e.parentNode&&u.NodeGuards.isPropertyNode(e.parentNode)&&e.parentNode.shorthand),rootScope:e,variable:s,variableScope:n,variableLexicalScopeNode:i})}for(const o of t.childScopes)this.traverseScopeVariables(e,o,r)}}};f.argumentsVariableName="arguments",f.globalScopeNames=["global","module"],f=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IScopeAnalyzer)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IScopeAnalyzer&&l.IScopeAnalyzer)?n:Object])],f),t.ScopeIdentifiersTraverser=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1);t.nodeTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(39),s=r(66),c=r(13),d=r(174),l=r(175),u=r(176),f=r(177),p=r(179),m=r(180),g=r(181);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(u.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(g.ScopeIdentifiersTransformer).whenTargetNamed(c.NodeTransformer.ScopeIdentifiersTransformer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(p.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(m.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(i.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObfuscatingReplacer)),e(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(5),u=r(2),f=r(40),p=r(8);let m=class extends f.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){let r=e.name;if(this.blockScopesMap.has(t)){const e=this.blockScopesMap.get(t);e.has(r)&&(r=e.get(r))}return p.NodeFactory.identifierNode(r)}storeGlobalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}storeLocalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateForLexicalScope(t);this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}preserveName(e){this.identifierNamesGenerator.preserveName(e.name)}preserveNameForLexicalScope(e,t){this.identifierNamesGenerator.preserveNameForLexicalScope(e.name,t)}isReservedName(e){return!!this.options.reservedNames.length&&this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.TIdentifierNamesGeneratorFactory&&l.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==u.IOptions&&u.IOptions)?n:Object])],m),t.BaseIdentifierObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(40),f=r(8);let p=o=class extends u.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",f.NodeFactory.arrayExpressionNode())}replace(e){const t=e.value;if("boolean"!=typeof t)throw new Error("`BooleanLiteralObfuscatingReplacer` should accept only literals with `boolean` value");return t?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};p=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.BooleanLiteralObfuscatingReplacer=p},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(51),m=r(2),g=r(3),y=r(39),h=r(10),b=r(11),N=r(4),I=r(23);let v=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(y.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&N.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=I.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label,t)}replaceLabeledStatementName(e,t){f.replace(e,{enter:(e,r)=>{if(r&&N.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e,t);e.name=r.name}}})}};v=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),c(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(2,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierObfuscatingReplacerFactory&&p.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==m.IOptions&&m.IOptions)?i:Object])],v),t.LabeledStatementTransformer=v},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(178),m=r(32),g=r(2),y=r(3),h=r(67),b=r(66),N=r(10),I=r(11),v=r(8),S=r(4),O=r(45),C=r(19),j=r(6);let _=class extends I.AbstractNodeTransformer{constructor(e,t,r,o,n){super(t,r),this.literalObfuscatingReplacerFactory=e,this.stringArrayStorageAnalyzer=o,this.escapeSequenceEncoder=n}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(S.NodeGuards.isProgramNode(e)&&this.analyzeNode(e),t&&S.NodeGuards.isLiteralNode(e)&&!C.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};case N.TransformationStage.Finalizing:return{enter:(e,t)=>{if(t&&S.NodeGuards.isLiteralNode(e))return this.encodeLiteralNodeToEscapeSequence(e,t)}};default:return null}}analyzeNode(e){this.stringArrayStorageAnalyzer.analyze(e)}transformNode(e,t){if(O.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e);break;case"number":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e);break;case"string":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e);break;default:r=e}return j.NodeUtils.parentizeNode(r,t),r}encodeLiteralNodeToEscapeSequence(e,t){return"string"!=typeof e.value?e:v.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e.value,this.options.unicodeEscapeSequence))}};_=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IObfuscatingReplacer)),l(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(2,u.inject(f.ServiceIdentifiers.IOptions)),l(3,u.inject(f.ServiceIdentifiers.IStringArrayStorageAnalyzer)),l(4,u.inject(f.ServiceIdentifiers.IEscapeSequenceEncoder)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TLiteralObfuscatingReplacerFactory&&p.TLiteralObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IStringArrayStorageAnalyzer&&h.IStringArrayStorageAnalyzer)?a:Object,"function"==typeof(s=void 0!==m.IEscapeSequenceEncoder&&m.IEscapeSequenceEncoder)?s:Object])],_),t.LiteralTransformer=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2),l=r(40),u=r(8),f=r(38),p=r(26);let m=class extends l.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){const t=e.value;if("number"!=typeof t)throw new Error("`NumberLiteralObfuscatingReplacer` should accept only literals with `number` value");let r;return this.numberLiteralCache.has(t)?r=this.numberLiteralCache.get(t):(r=f.NumberUtils.isCeil(t)?`${p.Utils.hexadecimalPrefix}${f.NumberUtils.toHex(t)}`:String(t),this.numberLiteralCache.set(t,r)),u.NodeFactory.literalNode(t,r)}};m=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],m),t.NumberLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(2),p=r(37),m=r(67),g=r(28),y=r(40),h=r(19),b=r(8),N=r(38),I=r(26);let v=o=class extends y.AbstractObfuscatingReplacer{constructor(e,t,r){super(r),this.nodesCache=new Map,this.stringArrayStorage=e,this.stringArrayStorageAnalyzer=t}static getHexadecimalLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}initialize(){this.options.shuffleStringArray&&this.stringArrayStorage.shuffleStorage(),this.options.rotateStringArray&&this.stringArrayStorage.rotateStorage()}replace(e){const t=e.value;if("string"!=typeof t)throw new Error("`StringLiteralObfuscatingReplacer` should accept only literals with `string` value");const r=this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(e),o=`${t}-${Boolean(r)}`;if(this.nodesCache.has(o)&&this.options.stringArrayEncoding!==g.StringArrayEncoding.Rc4)return this.nodesCache.get(o);const n=r?this.replaceWithStringArrayCallNode(r):this.replaceWithLiteralNode(t);return this.nodesCache.set(o,n),n}replaceWithLiteralNode(e){return b.NodeFactory.literalNode(e)}replaceWithStringArrayCallNode(e){const{index:t,decodeKey:r}=e,n=`${I.Utils.hexadecimalPrefix}${N.NumberUtils.toHex(t)}`,i=[o.getHexadecimalLiteralNode(n)];r&&i.push(o.getRc4KeyLiteralNode(r));const a=b.NodeFactory.identifierNode(this.stringArrayStorage.getStorageCallsWrapperName());return b.NodeFactory.callExpressionNode(a,i)}};s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],v.prototype,"initialize",null),v=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IStringArrayStorage)),d(1,l.inject(u.ServiceIdentifiers.IStringArrayStorageAnalyzer)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==p.IStringArrayStorage&&p.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==m.IStringArrayStorageAnalyzer&&m.IStringArrayStorageAnalyzer)?i:Object,"function"==typeof(a=void 0!==f.IOptions&&f.IOptions)?a:Object])],v),t.StringLiteralObfuscatingReplacer=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(51),g=r(2),y=r(3),h=r(68),b=r(39),N=r(10),I=r(11),v=r(4),S=r(19);let O=class extends I.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.lexicalScopesWithObjectPatternWithoutDeclarationMap=new Map,this.identifierObfuscatingReplacer=e(b.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&v.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,e=>{const{isGlobalDeclaration:t,variable:r,variableLexicalScopeNode:o}=e;if(!this.options.renameGlobals&&t){if(!r.defs.every(e=>"ImportBinding"===e.type||"CatchClause"===e.type))return}this.transformScopeVariableIdentifiers(r,o,t)}),e}transformScopeVariableIdentifiers(e,t,r){var o;const n=null!==(o=e.identifiers[0])&&void 0!==o?o:null;n&&this.isReplaceableIdentifierNode(n,t,e)&&(this.storeIdentifierName(n,t,r),this.replaceIdentifierName(n,t,e))}storeIdentifierName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e,t):this.identifierObfuscatingReplacer.storeLocalName(e,t)}replaceIdentifierName(e,t,r){const o=this.identifierObfuscatingReplacer.replace(e,t);r.identifiers.forEach(e=>{e.name=o.name}),r.references.forEach(t=>{t.identifier.name=e.name})}isReplaceableIdentifierNode(e,t,r){const o=e.parentNode;return!(!o||S.NodeMetadata.isIgnoredNode(e)||this.isProhibitedPropertyNode(e,o)||this.isProhibitedClassDeclarationNameIdentifierNode(r,e,o)||this.isProhibitedExportNamedClassDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedVariableDeclarationIdentifierNode(e,o)||this.isProhibitedImportSpecifierNode(e,o)||this.isProhibitedVariableNameUsedInObjectPatternNode(r,e,t)||v.NodeGuards.isLabelIdentifierNode(e,o))}isProhibitedClassDeclarationNameIdentifierNode(e,t,r){return v.NodeGuards.isClassDeclarationNode(e.scope.block)&&v.NodeGuards.isClassDeclarationNode(r)&&r.id===t}isProhibitedExportNamedClassDeclarationIdentifierNode(e,t){return v.NodeGuards.isClassDeclarationNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,t){return v.NodeGuards.isFunctionDeclarationNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedVariableDeclarationIdentifierNode(e,t){return v.NodeGuards.isVariableDeclaratorNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isVariableDeclarationNode(t.parentNode)&&!!t.parentNode.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode.parentNode)}isProhibitedImportSpecifierNode(e,t){return v.NodeGuards.isImportSpecifierNode(t)&&t.imported.name===t.local.name}isProhibitedPropertyNode(e,t){const r=v.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e,o=v.NodeGuards.isAssignmentPatternNode(t)&&t.left===e&&!!t.parentNode&&v.NodeGuards.isPropertyNode(t.parentNode)&&t.left===t.parentNode.key;return r||o}isProhibitedVariableNameUsedInObjectPatternNode(e,t,r){let o=this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(r);if(!1===o)return!1;if(!e.defs.some(e=>"var"===e.kind))return!1;let n=!1;return p.traverse(r,{enter:(e,r)=>{if(v.NodeGuards.isObjectPatternNode(e)&&r&&v.NodeGuards.isAssignmentExpressionNode(r)){o=!0;const r=e.properties;for(const e of r)if(!e.computed&&e.shorthand&&v.NodeGuards.isIdentifierNode(e.key)&&t.name===e.key.name)return n=!0,p.VisitorOption.Break}}}),this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(r,null!=o&&o),n}};O=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),d(3,u.inject(f.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierObfuscatingReplacerFactory&&m.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IScopeIdentifiersTraverser&&h.IScopeIdentifiersTraverser)?a:Object])],O),t.ScopeIdentifiersTransformer=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(183),a=r(190);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(i.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(a.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(31),m=r(0),g=r(1),y=r(69),h=r(184),b=r(185),N=r(186),I=r(33),v=r(24),S=r(34),O=r(28),C=r(41),j=r(187),_=r(188);let R=o=class{constructor(e,t){Object.assign(this,C.DEFAULT_PRESET,e);const r=y.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${j.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};R.validatorOptions={validationError:{target:!1}},l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"compact",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"controlFlowFlattening",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"controlFlowFlatteningThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"deadCodeInjection",void 0),l([y.IsNumber(),u("design:type",Number)],R.prototype,"deadCodeInjectionThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtection",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtectionInterval",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"disableConsoleOutput",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),_.IsAllowedForObfuscationTargets([v.ObfuscationTarget.Browser,v.ObfuscationTarget.BrowserNoEval]),u("design:type",Array)],R.prototype,"domainLock",void 0),l([y.IsIn([I.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,I.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,I.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),u("design:type","function"==typeof(n=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?n:Object)],R.prototype,"identifierNamesGenerator",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"identifiersPrefix",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),y.ValidateIf(e=>e.identifierNamesGenerator===I.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),y.ArrayNotEmpty(),u("design:type",Array)],R.prototype,"identifiersDictionary",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"inputFileName",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"log",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"renameGlobals",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedNames",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedStrings",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"rotateStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"selfDefending",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"shuffleStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"sourceMap",void 0),l([y.IsString(),y.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),y.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),u("design:type",String)],R.prototype,"sourceMapBaseUrl",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"sourceMapFileName",void 0),l([y.IsIn([S.SourceMapMode.Inline,S.SourceMapMode.Separate]),u("design:type","function"==typeof(i=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?i:Object)],R.prototype,"sourceMapMode",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"splitStrings",void 0),l([y.IsNumber(),y.ValidateIf(e=>Boolean(e.splitStrings)),y.Min(1),u("design:type",Number)],R.prototype,"splitStringsChunkLength",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"stringArray",void 0),l([y.IsIn([!0,!1,O.StringArrayEncoding.Base64,O.StringArrayEncoding.Rc4]),u("design:type","function"==typeof(a=void 0!==b.TStringArrayEncoding&&b.TStringArrayEncoding)?a:Object)],R.prototype,"stringArrayEncoding",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"stringArrayThreshold",void 0),l([y.IsIn([v.ObfuscationTarget.Browser,v.ObfuscationTarget.BrowserNoEval,v.ObfuscationTarget.Node]),u("design:type","function"==typeof(s=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?s:Object)],R.prototype,"target",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"transformObjectKeys",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"unicodeEscapeSequence",void 0),R=o=l([m.injectable(),f(0,m.inject(g.ServiceIdentifiers.TInputOptions)),f(1,m.inject(g.ServiceIdentifiers.IOptionsNormalizer)),u("design:paramtypes",["function"==typeof(c=void 0!==h.TInputOptions&&h.TInputOptions)?c:Object,"function"==typeof(d=void 0!==N.IOptionsNormalizer&&N.IOptionsNormalizer)?d:Object])],R),t.Options=R},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(69),i=o(r(189)),a=r(42),s=r(41);t.IsAllowedForObfuscationTargets=function(e,t){return(r,o)=>{n.registerDecorator({propertyName:o,constraints:[e],name:"IsAllowedForObfuscationTargets",options:t,target:r.constructor,validator:{validate(t,r){const n=r.object,a=s.DEFAULT_PRESET[o];return i.default(t,a)||e.includes(n.target)},defaultMessage:t=>`This option allowed only for obfuscation targets: ${e.join(`${a.StringSeparator.Comma} `)}`}})}}},function(e,t){e.exports=require("fast-deep-equal")},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(191),s=r(192),c=r(193),d=r(194),l=r(195),u=r(196),f=r(197),p=r(198),m=r(199),g=r(200),y=r(201),h=r(202),b=r(203);let N=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};N.normalizerRules=[a.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,f.SelfDefendingRule,p.SourceMapBaseUrlRule,m.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,y.StringArrayRule,h.StringArrayEncodingRule,b.StringArrayThresholdRule],N=o=n([i.injectable()],N),t.OptionsNormalizer=N},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(41);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});const o=r(42);t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(o.StringSeparator.Dot).slice(0,-1).join(o.StringSeparator.Dot)||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});const o=r(42);t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;if(t){t=t.replace(/^\/+/,"").replace(/(?:\.js)?(?:\.map)?$/,"");let r=t.split(o.StringSeparator.Dot);const n=r.length,i=r[n-1];n>1&&i.length<=3&&(r=r.slice(0,-1)),t=r.join(o.StringSeparator.Dot),e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})}return 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,shuffleStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);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(17),n=r(0),i=r(1),a=r(13),s=r(70),c=r(205),d=r(65),l=r(206),u=r(210),f=r(212),p=r(213),m=r(215),g=r(216),y=r(217);t.preparingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(l.CustomCodeHelpersTransformer).whenTargetNamed(a.NodeTransformer.CustomCodeHelpersTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.EvalCallExpressionTransformer).whenTargetNamed(a.NodeTransformer.EvalCallExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.MetadataTransformer).whenTargetNamed(a.NodeTransformer.MetadataTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.ObfuscatingGuardsTransformer).whenTargetNamed(a.NodeTransformer.ObfuscatingGuardsTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.ParentificationTransformer).whenTargetNamed(a.NodeTransformer.ParentificationTransformer),e(i.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(d.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(g.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(i.ServiceIdentifiers.INodeTransformer).to(y.VariablePreserveTransformer).whenTargetNamed(a.NodeTransformer.VariablePreserveTransformer),e(i.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeGuard))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=r(4);let c=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(207),g=r(208),y=r(2),h=r(3),b=r(209),N=r(64),I=r(13),v=r(25),S=r(10),O=r(11),C=r(4);let j=class extends O.AbstractNodeTransformer{constructor(e,t,r,o,n,i){super(n,i),this.runAfter=[I.NodeTransformer.ParentificationTransformer,I.NodeTransformer.VariablePreserveTransformer],this.callsGraphData=[],this.callsGraphAnalyzer=e,this.prevailingKindOfVariablesAnalyzer=t,this.obfuscationEventEmitter=r,this.customCodeHelperGroupStorage=o}getVisitor(e){switch(e){case S.TransformationStage.Preparing:return{leave:(e,t)=>{if(C.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case S.TransformationStage.Finalizing:return{leave:(e,t)=>{C.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.callsGraphData=this.callsGraphAnalyzer.analyze(e),this.prevailingKindOfVariablesAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customCodeHelperGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendNodes.bind(e))}),this.obfuscationEventEmitter.emit(v.ObfuscationEvent.BeforeObfuscation,e,this.callsGraphData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(v.ObfuscationEvent.AfterObfuscation,e,this.callsGraphData)}};j=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.ICallsGraphAnalyzer)),u(1,f.inject(p.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),u(2,f.inject(p.ServiceIdentifiers.IObfuscationEventEmitter)),u(3,f.inject(p.ServiceIdentifiers.TCustomNodeGroupStorage)),u(4,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(5,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(o=void 0!==b.ICallsGraphAnalyzer&&b.ICallsGraphAnalyzer)?o:Object,"function"==typeof(n=void 0!==N.IPrevailingKindOfVariablesAnalyzer&&N.IPrevailingKindOfVariablesAnalyzer)?n:Object,"function"==typeof(i=void 0!==g.IObfuscationEventEmitter&&g.IObfuscationEventEmitter)?i:Object,"function"==typeof(a=void 0!==m.TCustomCodeHelperGroupStorage&&m.TCustomCodeHelperGroupStorage)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],j),t.CustomCodeHelpersTransformer=j},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(211)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),I=r(6);let v=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return N.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):N.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 y.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case y.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 i;try{i=I.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const a=b.NodeFactory.functionExpressionNode([],b.NodeFactory.blockStatementNode(i));return I.NodeUtils.parentizeAst(a),I.NodeUtils.parentizeNode(a,t),this.evalRootAstHostNodeSet.add(a),a}restoreNode(e,t){const r=e.body.body,o=I.NodeUtils.convertStructureToCode(r);return b.NodeFactory.callExpressionNode(b.NodeFactory.identifierNode("eval"),[b.NodeFactory.literalNode(f.default(o))])}isEvalRootAstHostNode(e){return N.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};v=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],v),t.EvalCallExpressionTransformer=v},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(13),p=r(10),m=r(11),g=r(4),y=r(19);let h=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[f.NodeTransformer.ParentificationTransformer,f.NodeTransformer.VariablePreserveTransformer]}getVisitor(e){switch(e){case p.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return y.NodeMetadata.set(e,{ignoredNode:!1}),g.NodeGuards.isLiteralNode(e)&&y.NodeMetadata.set(e,{replacedLiteral:!1}),e}};h=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],h),t.MetadataTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(214),p=r(2),m=r(3),g=r(13),y=r(70),h=r(10),b=r(11),N=r(19);let I=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case h.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 N.NodeMetadata.set(e,{ignoredNode:!r}),e}};I.obfuscatingGuardsList=[y.ObfuscatingGuard.BlackListObfuscatingGuard,y.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,y.ObfuscatingGuard.ReservedStringObfuscatingGuard],I=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__INodeGuard)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TObfuscatingGuardFactory&&f.TObfuscatingGuardFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],I),t.ObfuscatingGuardsTransformer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(6);let g=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return m.NodeUtils.parentizeNode(e,t)}};g=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],g),t.ParentificationTransformer=g},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(2),d=r(1),l=r(4);let u=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!l.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))}};u=n([s.injectable(),a(0,s.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==c.IOptions&&c.IOptions)?o:Object])],u),t.ReservedStringObfuscatingGuard=u},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(51),f=r(2),p=r(3),m=r(68),g=r(13),y=r(1),h=r(10),b=r(11),N=r(39),I=r(4);let v=class extends b.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer],this.identifierObfuscatingReplacer=e(N.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o,this.preserveScopeVariableIdentifiers=this.preserveScopeVariableIdentifiers.bind(this)}getVisitor(e){switch(e){case h.TransformationStage.Preparing:case h.TransformationStage.Converting:case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&I.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,this.preserveScopeVariableIdentifiers),e}preserveScopeVariableIdentifiers(e){const{isGlobalDeclaration:t,isBubblingDeclaration:r,variable:o,variableScope:n}=e;for(const e of o.identifiers)t||r?this.preserveIdentifierNameForRootLexicalScope(e):this.preserveIdentifierNameForLexicalScope(e,n)}preserveIdentifierNameForRootLexicalScope(e){this.identifierObfuscatingReplacer.preserveName(e)}preserveIdentifierNameForLexicalScope(e,t){const r=I.NodeGuards.isNodeWithLexicalScope(t.block)?t.block:null;r&&this.identifierObfuscatingReplacer.preserveNameForLexicalScope(e,r)}};v=s([l.injectable(),d(0,l.inject(y.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,l.inject(y.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(y.ServiceIdentifiers.IOptions)),d(3,l.inject(y.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierObfuscatingReplacerFactory&&u.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object,"function"==typeof(a=void 0!==m.IScopeIdentifiersTraverser&&m.IScopeIdentifiersTraverser)?a:Object])],v),t.VariablePreserveTransformer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(219),a=r(220),s=r(222);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(a.CustomCodeHelperGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.IStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(i.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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(52);let p=class extends f.MapStorage{constructor(e,t){super(e,t)}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.ControlFlowStorage=p},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(221),p=r(2),m=r(3),g=r(63),y=r(52);let h=o=class extends y.MapStorage{constructor(e,t,r){super(t,r),this.customCodeHelperGroupFactory=e}initialize(){super.initialize(),o.customCodeHelperGroupsList.forEach(e=>{const t=this.customCodeHelperGroupFactory(e);this.storage.set(e,t)})}};h.customCodeHelperGroupsList=[g.CustomCodeHelperGroup.ConsoleOutput,g.CustomCodeHelperGroup.DebugProtection,g.CustomCodeHelperGroup.DomainLock,g.CustomCodeHelperGroup.SelfDefending,g.CustomCodeHelperGroup.StringArray],s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],h.prototype,"initialize",null),h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TCustomCodeHelperGroupFactory&&f.TCustomCodeHelperGroupFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.CustomCodeHelperGroupStorage=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=r(5),y=r(36),h=r(49),b=r(32),N=r(2),I=r(3),v=r(28),S=r(52);let O=o=class extends S.MapStorage{constructor(e,t,r,n,i,a){super(r,n),this.rc4EncodedValuesSourcesCache=new Map,this.rotationAmount=0,this.identifierNamesGenerator=e(n),this.arrayUtils=t,this.cryptUtils=i,this.escapeSequenceEncoder=a,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}initialize(){super.initialize(),this.rotationAmount=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(o.minimumRotationAmount,o.maximumRotationAmount):0}get(e){return this.getOrSetIfDoesNotExist(e)}getRotationAmount(){return this.rotationAmount}getStorageName(){return this.getStorageId()}getStorageId(){return this.stringArrayStorageName||(this.stringArrayStorageName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageName}getStorageCallsWrapperName(){return this.stringArrayStorageCallsWrapperName||(this.stringArrayStorageCallsWrapperName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageCallsWrapperName}rotateStorage(){this.getLength()&&(this.storage=new Map(this.arrayUtils.rotate(Array.from(this.storage.entries()),this.rotationAmount)))}shuffleStorage(){this.storage=new Map(this.arrayUtils.shuffle(Array.from(this.storage.entries())).map(([e,t],r)=>(t.index=r,[e,t])).sort(([,e],[,t])=>e.index-t.index))}toString(){return Array.from(this.storage.values()).map(e=>`'${this.escapeSequenceEncoder.encode(e.encodedValue,this.options.unicodeEscapeSequence)}'`).toString()}getOrSetIfDoesNotExist(e){const{encodedValue:t,decodeKey:r}=this.getEncodedValue(e),o=this.storage.get(t);if(o)return o;const n={encodedValue:t,decodeKey:r,value:e,index:this.getLength()};return this.storage.set(t,n),n}getEncodedValue(e){var t;switch(this.options.stringArrayEncoding){case v.StringArrayEncoding.Rc4:{const r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),o=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r)),n=null!==(t=this.rc4EncodedValuesSourcesCache.get(o))&&void 0!==t?t:[];let i=n.length;return(!i||!n.includes(e))&&(n.push(e),i++),this.rc4EncodedValuesSourcesCache.set(o,n),i>1?this.getEncodedValue(e):{encodedValue:o,decodeKey:r}}case v.StringArrayEncoding.Base64:{const t=null;return{encodedValue:this.cryptUtils.btoa(e),decodeKey:t}}default:return{encodedValue:e,decodeKey:null}}}};O.minimumRotationAmount=100,O.maximumRotationAmount=500,O.rc4KeyLength=4,O.rc4KeysCount=50,O.stringArrayNameLength=7,l([p.postConstruct(),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",void 0)],O.prototype,"initialize",null),O=o=l([p.injectable(),f(0,p.inject(m.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),f(1,p.inject(m.ServiceIdentifiers.IArrayUtils)),f(2,p.inject(m.ServiceIdentifiers.IRandomGenerator)),f(3,p.inject(m.ServiceIdentifiers.IOptions)),f(4,p.inject(m.ServiceIdentifiers.ICryptUtils)),f(5,p.inject(m.ServiceIdentifiers.IEscapeSequenceEncoder)),u("design:paramtypes",["function"==typeof(n=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==I.IRandomGenerator&&I.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==N.IOptions&&N.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object,"function"==typeof(d=void 0!==b.IEscapeSequenceEncoder&&b.IEscapeSequenceEncoder)?d:Object])],O),t.StringArrayStorage=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(224),a=r(225),s=r(229),c=r(230),d=r(231),l=r(71);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(i.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(a.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";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3);let l=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rn&&(o=i,n=e),r[i]=e}return o}rotate(e,t){if(!e.length)throw new ReferenceError("Cannot rotate empty array.");if(t<=0)return e;const r=e;let o;for(;t--;)o=r.pop(),o&&r.unshift(o);return r}shuffle(e){const t=[...e];for(let e=t.length;e;e--){const r=Math.floor(this.randomGenerator.getMathRandom()*e);[t[e-1],t[r]]=[t[r],t[e-1]]}return t}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IRandomGenerator)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IRandomGenerator&&d.IRandomGenerator)?o:Object])],l),t.ArrayUtils=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3),l=r(71),u=r(26);let f=class{constructor(e){this.randomGenerator=e}btoa(e){let t="";e=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(`${u.Utils.hexadecimalPrefix}${t}`,16)));for(let r,o,n=0,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(i="=",n%1);t+=i.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:l.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(;r=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{constructor(){this.stringsCache=new Map}encode(e,t){const r=`${e}-${String(t)}`;if(this.stringsCache.has(r))return this.stringsCache.get(r);const o=new RegExp("[\\s\\S]","g"),n=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const c=e.replace(o,e=>t||n.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(r,c),this.stringsCache.set(`${c}-${String(t)}`,c),c}};n=o([r(0).injectable()],n),t.EscapeSequenceEncoder=n},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=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)}};n=o([r(0).injectable()],n),t.LevelledTopologicalSorter=n},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(232);let l=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){void 0===t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.ILevelledTopologicalSorter)),i("design:paramtypes",["function"==typeof(o=void 0!==d.ILevelledTopologicalSorter&&d.ILevelledTopologicalSorter)?o:Object])],l),t.NodeTransformerNamesGroupsBuilder=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(47)),y=r(234),h=r(235),b=r(2),N=r(3),I=r(59),v=r(236),S=r(13),O=r(10),C=r(44),j=r(57),_=r(4),R=r(26);let F=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(v.LoggingMessage.Version,R.Utils.buildVersionMessage("0.25.2",1582733614409)),this.logger.info(v.LoggingMessage.ObfuscationStarted),this.logger.info(v.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),i=(Date.now()-t)/1e3;return this.logger.success(v.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(n)}parseCode(e){return j.ASTParserFacade.parse(e,o.parseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,O.TransformationStage.Initializing),!_.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,O.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,O.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,O.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,O.TransformationStage.Converting),e=this.runTransformationStage(e,O.TransformationStage.Obfuscating),e=this.runTransformationStage(e,O.TransformationStage.Finalizing)):(this.logger.warn(v.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=g.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(v.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};F.parseOptions={ecmaVersion:C.ecmaVersion,allowHashBang:!0,allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,locations:!0,ranges:!0},F.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},F.transformersList=[S.NodeTransformer.BlockStatementControlFlowTransformer,S.NodeTransformer.CommentsTransformer,S.NodeTransformer.CustomCodeHelpersTransformer,S.NodeTransformer.DeadCodeInjectionTransformer,S.NodeTransformer.EvalCallExpressionTransformer,S.NodeTransformer.FunctionControlFlowTransformer,S.NodeTransformer.LabeledStatementTransformer,S.NodeTransformer.LiteralTransformer,S.NodeTransformer.MemberExpressionTransformer,S.NodeTransformer.MetadataTransformer,S.NodeTransformer.MethodDefinitionTransformer,S.NodeTransformer.ObfuscatingGuardsTransformer,S.NodeTransformer.ObjectExpressionKeysTransformer,S.NodeTransformer.ObjectExpressionTransformer,S.NodeTransformer.ParentificationTransformer,S.NodeTransformer.ScopeIdentifiersTransformer,S.NodeTransformer.SplitStringTransformer,S.NodeTransformer.TemplateLiteralTransformer,S.NodeTransformer.VariablePreserveTransformer],F=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.ITransformersRunner)),u(1,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(2,p.inject(m.ServiceIdentifiers.Factory__IObfuscatedCode)),u(3,p.inject(m.ServiceIdentifiers.ILogger)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==I.ITransformersRunner&&I.ITransformersRunner)?n:Object,"function"==typeof(i=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==y.TObfuscatedCodeFactory&&y.TObfuscatedCodeFactory)?a:Object,"function"==typeof(s=void 0!==h.ILogger&&h.ILogger)?s:Object,"function"==typeof(c=void 0!==b.IOptions&&b.IOptions)?c:Object])],F),t.JavaScriptObfuscator=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(238));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=o([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(49),u=r(7),f=r(34),p=r(2);let m=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 f.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case f.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};i([u.initializable(),a("design:type",String)],m.prototype,"obfuscatedCode",void 0),i([u.initializable(),a("design:type",String)],m.prototype,"sourceMap",void 0),m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.ICryptUtils)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.ICryptUtils&&l.ICryptUtils)?o:Object,"function"==typeof(n=void 0!==p.IOptions&&p.IOptions)?n:Object])],m),t.ObfuscatedCode=m},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(242),p=r(243),m=r(244),g=r(4),y=r(19);let h=class{constructor(e,t){this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;const o=this.buildNormalizedNodeTransformers(t,r),n=this.nodeTransformerNamesGroupsBuilder.build(o);for(const t of n){const n=[],i=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(n.length||i.length)&&u.replace(e,{enter:this.mergeVisitorsForDirection(n,m.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,m.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e,t){return e.reduce((e,r)=>{const o=this.nodeTransformerFactory(r);return o.getVisitor(t)?Object.assign(Object.assign({},e),{[r]:o}):e},{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(y.NodeMetadata.isIgnoredNode(o))return u.VisitorOption.Skip;for(let i=0;ie}};h=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__INodeTransformer)),s(1,d.inject(l.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),a("design:paramtypes",["function"==typeof(o=void 0!==f.TNodeTransformerFactory&&f.TNodeTransformerFactory)?o:Object,"function"==typeof(n=void 0!==p.INodeTransformerNamesGroupsBuilder&&p.INodeTransformerNamesGroupsBuilder)?n:Object])],h),t.TransformersRunner=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(53);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=248)}([function(e,t){e.exports=require("inversify")},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__ICustomCodeHelper="Factory",e.Factory__ICustomCodeHelperGroup="Factory",e.Factory__IDeadCodeInjectionCustomNode="Factory",e.Factory__IIdentifierNamesGenerator="Factory",e.Factory__IIdentifierObfuscatingReplacer="Factory",e.Factory__INodeGuard="Factory",e.Factory__INodeTransformer="Factory",e.Factory__IObfuscatedCode="Factory",e.Factory__IObfuscatingReplacer="Factory",e.Factory__IObjectExpressionKeysTransformerCustomNode="Factory",e.Factory__IObjectExpressionExtractor="Factory",e.Factory__TControlFlowStorage="Factory",e.IArrayUtils="IArrayUtils",e.ICalleeDataExtractor="ICalleeDataExtractor",e.ICallsGraphAnalyzer="ICallsGraphAnalyzer",e.ICryptUtils="ICryptUtils",e.ICustomCodeHelper="ICustomCodeHelper",e.ICustomCodeHelperGroup="ICustomCodeHelperGroup",e.IControlFlowReplacer="IControlFlowReplacer",e.ICustomCodeHelperFormatter="ICustomCodeHelperFormatter",e.ICustomCodeHelperObfuscator="ICustomCodeHelperObfuscator",e.IEscapeSequenceEncoder="IEscapeSequenceEncoder",e.IIdentifierNamesGenerator="IIdentifierNamesGenerator",e.IIdentifierObfuscatingReplacer="IIdentifierObfuscatingReplacer",e.IJavaScriptObfuscator="IJavaScriptObfuscator",e.ILevelledTopologicalSorter="ILevelledTopologicalSorter",e.ILogger="ILogger",e.INodeGuard="INodeGuard",e.INodeTransformer="INodeTransformer",e.INodeTransformerNamesGroupsBuilder="INodeTransformerNamesGroupsBuilder",e.IObfuscationEventEmitter="IObfuscationEventEmitter",e.IObfuscatedCode="IObfuscatedCode",e.IOptions="IOptions",e.IOptionsNormalizer="IOptionsNormalizer",e.IObfuscatingReplacer="IObfuscatingReplacer",e.IPrevailingKindOfVariablesAnalyzer="IPrevailingKindOfVariablesAnalyzer",e.IObjectExpressionExtractor="IObjectExpressionExtractor",e.IRandomGenerator="IRandomGenerator",e.IScopeIdentifiersTraverser="IScopeIdentifiersTraverser",e.ISourceCode="ISourceCode",e.IScopeAnalyzer="IScopeAnalyzer",e.IStringArrayStorage="IStringArrayStorage",e.IStringArrayStorageAnalyzer="IStringArrayStorageAnalyzer",e.ITransformersRunner="ITransformersRunner",e.Newable__ICustomNode="Newable",e.Newable__TControlFlowStorage="Newable",e.TCustomNodeGroupStorage="TCustomNodeGroupStorage",e.TInputOptions="TInputOptions"}(t.ServiceIdentifiers||(t.ServiceIdentifiers={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(35);class n{static isArrayPatternNode(e){return e.type===o.NodeType.ArrayPattern}static isArrowFunctionExpressionNode(e){return e.type===o.NodeType.ArrowFunctionExpression}static isAssignmentExpressionNode(e){return e.type===o.NodeType.AssignmentExpression}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 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,i=n.isBreakStatementNode(t)&&t.label===e;return r||o||i}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 isRestElementNode(e){return e.type===o.NodeType.RestElement}static isReturnStatementNode(e){return e.type===o.NodeType.ReturnStatement}static isSequenceExpressionNode(e){return e.type===o.NodeType.SequenceExpression}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})},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=o(r(12)),a=r(44),s=r(57),c=r(4),d=r(19);class l{static addXVerbatimPropertyTo(e){return e["x-verbatim-property"]={content:e.raw,precedence:n.Precedence.Primary},e}static clone(e){return l.parentizeAst(l.cloneRecursive(e))}static convertCodeToStructure(e){const t=s.ASTParserFacade.parse(e,{ecmaVersion:a.ecmaVersion,sourceType:"script"});return i.replace(t,{enter:(e,t)=>(l.parentizeNode(e,t),c.NodeGuards.isLiteralNode(e)&&l.addXVerbatimPropertyTo(e),d.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 c.NodeGuards.isUnaryExpressionNode(e.argument)?l.getUnaryExpressionArgumentNode(e.argument):e.argument}static parentizeAst(e){return i.replace(e,{enter:l.parentizeNode}),e}static parentizeNode(e,t){return e.parentNode=null!=t?t:e,e}static cloneRecursive(e){if(null===e)return e;const t={};return Object.keys(e).forEach(r=>{if("parentNode"===r)return;const o=e[r];let n;n=null===o||o instanceof RegExp?o:Array.isArray(o)?o.map(l.cloneRecursive):"object"==typeof o?l.cloneRecursive(o):o,t[r]=n}),t}}t.NodeUtils=l},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,i)=>{const a=r[e];if(!a||"function"!=typeof a)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=>{var i;const a=Reflect.getMetadata("_initializablePropertiesSet",e),s=Reflect.getMetadata("_wrappedMethodsSet",e);if(n.includes(r)||a.has(r)||s.has(r))return;if("function"!=typeof e[r])return;const c=null!==(i=Object.getOwnPropertyDescriptor(e,r))&&void 0!==i?i:o,d=c.value;Object.defineProperty(e,r,Object.assign(Object.assign({},c),{value(){if(!Reflect.getMetadata("_initialized",this))throw new Error(`Class should be initialized with \`${t}()\` method`);return d.apply(this,arguments)}})),s.add(r)})}(r,e),function(e,t,r){var n;const i=null!==(n=Object.getOwnPropertyDescriptor(e,t))&&void 0!==n?n:o,a=i.value;Object.defineProperty(e,t,Object.assign(Object.assign({},i),{value:function(){Reflect.defineMetadata("_initialized",!0,this);const e=a.apply(this,arguments);return this[r],e}}))}(r,e,i),function(e,t){var r;Reflect.getMetadata("_initializablePropertiesSet",e).add(t);const n=`_${t.toString()}`,i=null!==(r=Object.getOwnPropertyDescriptor(e,n))&&void 0!==r?r:o;return Object.defineProperty(e,t,Object.assign(Object.assign({},i),{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}})),i}(r,i)}}},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const n=o(r(47)),i=r(35);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,r){return{type:i.NodeType.AssignmentExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static binaryExpressionNode(e,t,r){return{type:i.NodeType.BinaryExpression,operator:e,left:t,right:r,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,r){return{type:i.NodeType.FunctionDeclaration,id:a.identifierNode(e),params:t,body:r,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,r){return Object.assign(Object.assign({type:i.NodeType.IfStatement,test:e,consequent:t},r&&{alternate:r}),{metadata:{ignoredNode:!1}})}static identifierNode(e){return{type:i.NodeType.Identifier,name:e,metadata:{ignoredNode:!1}}}static importDeclarationNode(e,t){return{type:i.NodeType.ImportDeclaration,specifiers:e,source:t,metadata:{ignoredNode:!1}}}static literalNode(e,t){return t=void 0!==t?t:`'${e}'`,{type:i.NodeType.Literal,value:e,raw:t,"x-verbatim-property":{content:t,precedence:n.Precedence.Primary},metadata:{ignoredNode:!1}}}static logicalExpressionNode(e,t,r){return{type:i.NodeType.LogicalExpression,operator:e,left:t,right:r,metadata:{ignoredNode:!1}}}static memberExpressionNode(e,t,r=!1){return{type:i.NodeType.MemberExpression,computed:r,object:e,property:t,metadata:{ignoredNode:!1}}}static objectExpressionNode(e){return{type:i.NodeType.ObjectExpression,properties:e,metadata:{ignoredNode:!1}}}static propertyNode(e,t,r=!1){return{type:i.NodeType.Property,key:e,value:t,kind:"init",method:!1,shorthand:!1,computed:r,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,r=!0){return{type:i.NodeType.UnaryExpression,operator:e,argument:t,prefix:r,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,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3);let f=class{constructor(e,t){this.randomGenerator=e,this.options=t}};f=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],f),t.AbstractNodeTransformer=f},function(e,t){e.exports=require("estraverse")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BlockStatementControlFlowTransformer="BlockStatementControlFlowTransformer",e.CommentsTransformer="CommentsTransformer",e.CustomCodeHelpersTransformer="CustomCodeHelpersTransformer",e.DeadCodeInjectionTransformer="DeadCodeInjectionTransformer",e.EvalCallExpressionTransformer="EvalCallExpressionTransformer",e.FunctionControlFlowTransformer="FunctionControlFlowTransformer",e.LabeledStatementTransformer="LabeledStatementTransformer",e.LiteralTransformer="LiteralTransformer",e.MemberExpressionTransformer="MemberExpressionTransformer",e.MetadataTransformer="MetadataTransformer",e.MethodDefinitionTransformer="MethodDefinitionTransformer",e.ObfuscatingGuardsTransformer="ObfuscatingGuardsTransformer",e.ObjectExpressionKeysTransformer="ObjectExpressionKeysTransformer",e.ObjectExpressionTransformer="ObjectExpressionTransformer",e.ParentificationTransformer="ParentificationTransformer",e.ScopeIdentifiersTransformer="ScopeIdentifiersTransformer",e.SplitStringTransformer="SplitStringTransformer",e.TemplateLiteralTransformer="TemplateLiteralTransformer",e.VariablePreserveTransformer="VariablePreserveTransformer"}(t.NodeTransformer||(t.NodeTransformer={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3);let y=class{constructor(e,t,r,o){this.cachedNode=null,this.identifierNamesGenerator=e(o),this.customCodeHelperFormatter=t,this.randomGenerator=r,this.options=o}getNode(){return this.cachedNode||(this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure())),this.cachedNode}};y=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],y),t.AbstractCustomNode=y},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(117),I=r(118);let v=o=class{constructor(e,t,r,o,n){this.cachedNode=null,this.identifierNamesGenerator=e(n),this.customCodeHelperFormatter=t,this.customCodeHelperObfuscator=r,this.randomGenerator=o,this.options=n}getNode(){if(!this.cachedNode){const e=this.getCodeHelperTemplate();this.cachedNode=this.customCodeHelperFormatter.formatStructure(this.getNodeStructure(e))}return this.cachedNode}getGlobalVariableTemplate(){return this.randomGenerator.getRandomGenerator().pickone(o.globalVariableTemplateFunctions)}getCodeHelperTemplate(){return""}};v.globalVariableTemplateFunctions=[N.GlobalVariableTemplate1(),I.GlobalVariableTemplate2()],v=o=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],v),t.AbstractCustomCodeHelper=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(75),a=r(85),s=r(98),c=r(109),d=r(149),l=r(162),u=r(163),f=r(167),p=r(169),m=r(172),g=r(173),y=r(182),h=r(204),b=r(218),N=r(223),I=r(233),v=r(73),S=r(237),O=r(239),C=r(240),j=r(241);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 i=>{if(t.forEach((e,t)=>{n[t]||(n[t]=r.container.get(e))}),o.has(i))return new(o.get(i))(...n);const a=r.container.getNamed(e,i);return o.set(i,a),new a(...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 C.SourceCode(e,t)).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.TInputOptions).toDynamicValue(()=>r).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ILogger).to(v.Logger).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IJavaScriptObfuscator).to(I.JavaScriptObfuscator).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.ITransformersRunner).to(j.TransformersRunner).inSingletonScope(),this.container.bind(n.ServiceIdentifiers.IObfuscatedCode).to(O.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(S.ObfuscationEventEmitter).inSingletonScope(),this.container.load(i.analyzersModule),this.container.load(a.controlFlowTransformersModule),this.container.load(s.convertingTransformersModule),this.container.load(c.customCodeHelpersModule),this.container.load(d.customNodesModule),this.container.load(l.finalizingTransformersModule),this.container.load(u.generatorsModule),this.container.load(f.initializingTransformersModule),this.container.load(p.nodeModule),this.container.load(m.nodeTransformersModule),this.container.load(g.obfuscatingTransformersModule),this.container.load(y.optionsModule),this.container.load(h.preparingTransformersModule),this.container.load(b.storagesModule),this.container.load(N.utilsModule)}unload(){this.container.unbindAll()}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return(o.NodeGuards.isProgramNode(e)||o.NodeGuards.isNodeWithLexicalScopeStatements(e,a)&&i>0)&&r.push(e),e!==a?n.getParentNodesWithStatementsRecursive(a,t,r,++i):r}static getSiblingStatementByOffset(e,t){const r=n.getScopeOfNode(e),i=o.NodeGuards.isSwitchCaseNode(r)?r.consequent:r.body,a=i.indexOf(e);return i[a+t]||null}}t.NodeStatementUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class o{static set(e,t){var r;e.metadata=Object.assign(null!==(r=e.metadata)&&void 0!==r?r:{},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 isReplacedLiteral(e){return!0===o.get(e,"replacedLiteral")}}t.NodeMetadata=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(4);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 i=e.length?n.getOptimalBlockScope(e,o):t;n.prepend(i,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.callsGraph.length?n.getOptimalBlockScope(o.callsGraph,0,--r):o.callee}static insertBefore(e,t,r){const o=n.getScopeStatements(e).indexOf(r);n.insertAtIndex(e,t,o)}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});const o=r(4);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=[],i=0){if(r.length>=t)return r;const a=e.parentNode;if(!a)throw new ReferenceError("`parentNode` property of given node is `undefined`");return o.NodeGuards.isNodeWithLexicalScope(e)&&r.push(e),e!==a?n.getLexicalScopesRecursive(a,t,r,++i):r}}t.NodeLexicalScopeUtils=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.ObfuscationTarget=o.MakeEnum({Browser:"browser",BrowserNoEval:"browser-no-eval",Node:"node"})},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});class o{static buildVersionMessage(e,t){if(!e||!t)return"unknown";return`${e}_${new Date(parseInt(t,10)).toISOString()}`}static extractDomainFrom(e){let t;return t=e.includes("://")||0===e.indexOf("//")?e.split("/")[2]:e.split("/")[0],t=t.split(":")[0],t}}t.Utils=o,o.hexadecimalPrefix="0x"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.CallsControllerFunction="CallsControllerFunction",e.ConsoleOutputDisable="ConsoleOutputDisable",e.DebugProtectionFunctionCall="DebugProtectionFunctionCall",e.DebugProtectionFunctionInterval="DebugProtectionFunctionInterval",e.DebugProtectionFunction="DebugProtectionFunction",e.DomainLock="DomainLock",e.SelfDefendingUnicode="SelfDefendingUnicode",e.StringArrayCallsWrapper="StringArrayCallsWrapper",e.StringArray="StringArray",e.StringArrayRotateFunction="StringArrayRotateFunction"}(t.CustomCodeHelper||(t.CustomCodeHelper={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);t.StringArrayEncoding=o.MakeEnum({Base64:"base64",Rc4:"rc4"})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(5),f=r(2),p=r(3);let m=class{constructor(e,t,r){this.identifierNamesGenerator=e(r),this.randomGenerator=t,this.options=r}getAppendEvent(){return this.appendEvent}getCustomCodeHelpers(){return this.customCodeHelpers}appendCustomNodeIfExist(e,t){const r=this.customCodeHelpers.get(e);r&&t(r)}getRandomCallsGraphIndex(e){return this.randomGenerator.getRandomInteger(0,Math.max(0,Math.round(e-1)))}};m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierNamesGeneratorFactory&&u.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],m),t.AbstractCustomCodeHelperGroup=m},function(e,t){e.exports=require("@gradecam/tsenum")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(31);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(31);t.SourceMapMode=o.MakeEnum({Inline:"inline",Separate:"separate"})},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.ConditionalExpression="ConditionalExpression",e.ContinueStatement="ContinueStatement",e.ExportNamedDeclaration="ExportNamedDeclaration",e.ExpressionStatement="ExpressionStatement",e.ForStatement="ForStatement",e.ForInStatement="ForInStatement",e.ForOfStatement="ForOfStatement",e.FunctionDeclaration="FunctionDeclaration",e.FunctionExpression="FunctionExpression",e.Identifier="Identifier",e.IfStatement="IfStatement",e.ImportDeclaration="ImportDeclaration",e.ImportDefaultSpecifier="ImportDefaultSpecifier",e.ImportNamespaceSpecifier="ImportNamespaceSpecifier",e.ImportSpecifier="ImportSpecifier",e.LabeledStatement="LabeledStatement",e.Literal="Literal",e.LogicalExpression="LogicalExpression",e.MemberExpression="MemberExpression",e.MethodDefinition="MethodDefinition",e.ObjectExpression="ObjectExpression",e.ObjectPattern="ObjectPattern",e.Program="Program",e.Property="Property",e.RestElement="RestElement",e.ReturnStatement="ReturnStatement",e.SequenceExpression="SequenceExpression",e.Super="Super",e.SwitchCase="SwitchCase",e.SwitchStatement="SwitchStatement",e.TaggedTemplateExpression="TaggedTemplateExpression",e.TemplateLiteral="TemplateLiteral",e.TryStatement="TryStatement",e.UnaryExpression="UnaryExpression",e.UpdateExpression="UpdateExpression",e.VariableDeclaration="VariableDeclaration",e.VariableDeclarator="VariableDeclarator",e.WhileStatement="WhileStatement"}(t.NodeType||(t.NodeType={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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}),function(e){e.BaseIdentifierObfuscatingReplacer="BaseIdentifierObfuscatingReplacer"}(t.IdentifierObfuscatingReplacer||(t.IdentifierObfuscatingReplacer={}))},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2);let l=class{constructor(e){this.options=e}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],l),t.AbstractObfuscatingReplacer=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!0,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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.Dot=".",e.Comma=","}(t.StringSeparator||(t.StringSeparator={}))},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{};n=o([r(0).injectable()],n),t.AbstractCalleeDataExtractor=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ecmaVersion=11},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(4);t.NodeLiteralUtils=class{static isProhibitedLiteralNode(e,t){return!(!o.NodeGuards.isPropertyNode(t)||t.computed||t.key!==e)||!!o.NodeGuards.isImportDeclarationNode(t)}}},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3);let g=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 i=t.getStorageId(),a=o.getStorageKeysByIdForCurrentStorage(this.replacerDataByControlFlowStorageId,i),s=a.get(r);if(this.randomGenerator.getMathRandom(){const r=this.randomGenerator.getRandomString(e);return t.getStorage().has(r)?c(e):r},d=c(5);return a.set(r,[d]),this.replacerDataByControlFlowStorageId.set(i,a),t.set(d,e),d}};g=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],g),t.AbstractControlFlowReplacer=g},function(e,t){e.exports=require("escodegen")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableNoEvalTemplate=function(){return"\n const 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})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(4);let p=class{constructor(e,t){this.preservedNamesSet=new Set,this.lexicalScopesPreservedNamesMap=new Map,this.randomGenerator=e,this.options=t}generate(e,t){return f.NodeGuards.isProgramNode(e)?this.generateForGlobalScope():this.generateForLexicalScope(e)}preserveName(e){this.preservedNamesSet.add(e)}preserveNameForLexicalScope(e,t){var r;const o=null!==(r=this.lexicalScopesPreservedNamesMap.get(t))&&void 0!==r?r:new Set;o.add(e),this.lexicalScopesPreservedNamesMap.set(t,o)}isValidIdentifierName(e){return this.notReservedName(e)&&!this.preservedNamesSet.has(e)}isValidIdentifierNameInLexicalScopes(e,t){var r;if(!this.isValidIdentifierName(e))return!1;for(const o of t){const t=null!==(r=this.lexicalScopesPreservedNamesMap.get(o))&&void 0!==r?r:null;if(t&&t.has(e))return!1}return!0}notReservedName(e){return!this.options.reservedNames.length||!this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.AbstractIdentifierNamesGenerator=p},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(7);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}initialize(){this.storage=new Map,this.storageId=this.randomGenerator.getRandomString(6)}get(e){return this.storage.get(e)}getOrThrow(e){const t=this.get(e);if(!t)throw new Error(`No value found in map storage with key \`${e}\``);return t}getKeyOf(e){for(const[t,r]of this.storage)if(e===r)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)}};a([p.initializable(),s("design:type",String)],m.prototype,"storageId",void 0),a([p.initializable(),s("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],m.prototype,"storage",void 0),a([d.postConstruct(),s("design:type",Function),s("design:paramtypes",[]),s("design:returntype",void 0)],m.prototype,"initialize",null),m=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],m),t.MapStorage=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(72);const o=r(1),n=r(17);class i{static obfuscate(e,t={}){const r=new n.InversifyContainerFacade;r.load(e,"",t);const i=r.get(o.ServiceIdentifiers.IJavaScriptObfuscator).obfuscate(e);return r.unload(),i}}t.JavaScriptObfuscator=i,i.version=null!=="0.25.2"?"0.25.2":"unknown"},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";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(20),f=r(2),p=r(3),m=r(21),g=r(46),y=r(4);let h=class extends g.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(m.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!y.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};h=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.Factory__IControlFlowCustomNode)),c(1,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(2,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==u.TControlFlowCustomNodeFactory&&u.TControlFlowCustomNodeFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object])],h),t.ExpressionWithOperatorControlFlowReplacer=h},function(e,t,r){"use strict";var o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=o(r(88)),a=n(r(89)),s=n(r(58));class c{static parse(e,t){const r=c.sourceTypes.length;for(let o=0;o"),s=`...${o.substring(n,i).replace(/^\s+/,"")}...`;throw new Error(`ERROR at line ${r.line}: ${t}\n${a} ${s}`)}}t.ASTParserFacade=c,c.colorError=s.default.red,c.nearestSymbolsCount=15,c.sourceTypes=["script","module"]},function(e,t){e.exports=require("chalk")},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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.BasePropertiesExtractor="BasePropertiesExtractor",e.ObjectExpressionToVariableDeclarationExtractor="ObjectExpressionToVariableDeclarationExtractor"}(t.ObjectExpressionExtractor||(t.ObjectExpressionExtractor={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ObjectExpressionVariableDeclarationHostNode="ObjectExpressionVariableDeclarationHostNode"}(t.ObjectExpressionKeysTransformerCustomNode||(t.ObjectExpressionKeysTransformerCustomNode={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.ConsoleOutput="ConsoleOutput",e.DebugProtection="DebugProtection",e.DomainLock="DomainLock",e.SelfDefending="SelfDefending",e.StringArray="StringArray"}(t.CustomCodeHelperGroup||(t.CustomCodeHelperGroup={}))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(4);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),!a.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;n=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(226)),m=r(227),g=r(2),y=r(228),h=r(7);let b=o=class{constructor(e,t){this.sourceCode=e,this.options=t}initialize(){this.randomGenerator=new m.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=o.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}|${p.default(this.sourceCode.getSourceCode())}`}};b.randomGeneratorPool="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",s([h.initializable(),c("design:type","function"==typeof(n=void 0!==m.Chance&&m.Chance.Chance)?n:Object)],b.prototype,"randomGenerator",void 0),s([u.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],b.prototype,"initialize",null),b=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.ISourceCode)),d(1,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(i=void 0!==y.ISourceCode&&y.ISourceCode)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],b),t.RandomGenerator=b},function(e,t){e.exports=require("reflect-metadata")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(58)),f=r(2),p=r(74);let m=o=class{constructor(e){this.options=e}static log(e,t,r,o){const n=e(`\n${t} ${r}`);console.log(n,null!=o?o:"")}info(e,t){this.options.log&&o.log(o.colorInfo,p.LoggingPrefix.Base,e,t)}success(e,t){this.options.log&&o.log(o.colorSuccess,p.LoggingPrefix.Base,e,t)}warn(e,t){this.options.log&&o.log(o.colorWarn,p.LoggingPrefix.Base,e,t)}};m.colorInfo=u.default.cyan,m.colorSuccess=u.default.green,m.colorWarn=u.default.yellow,m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IOptions&&f.IOptions)?n:Object])],m),t.Logger=m},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(17),n=r(0),i=r(1),a=r(54),s=r(76),c=r(78),d=r(79),l=r(80),u=r(81),f=r(82),p=r(84);t.analyzersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICallsGraphAnalyzer).to(s.CallsGraphAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer).to(u.PrevailingKindOfVariablesAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IScopeAnalyzer).to(f.ScopeAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.IStringArrayStorageAnalyzer).to(p.StringArrayStorageAnalyzer).inSingletonScope(),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(c.FunctionDeclarationCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(d.FunctionExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.ICalleeDataExtractor).to(l.ObjectExpressionCalleeDataExtractor).whenTargetNamed(a.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor),e(i.ServiceIdentifiers.Factory__ICalleeDataExtractor).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.ICalleeDataExtractor))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(77),p=r(54),m=r(4),g=r(18);let y=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];u.traverse(t,{enter:o=>{if(m.NodeGuards.isCallExpressionNode(o))return t.parentNode!==g.NodeStatementUtils.getParentNodeWithStatements(o)?u.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),{callsGraph:this.analyzeRecursive(n.callee.body)}))})}};y.calleeDataExtractorsList=[p.CalleeDataExtractor.FunctionDeclarationCalleeDataExtractor,p.CalleeDataExtractor.FunctionExpressionCalleeDataExtractor,p.CalleeDataExtractor.ObjectExpressionCalleeDataExtractor],y.limitThresholdActivationLength=25,y.limitThreshold=.002,y=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__ICalleeDataExtractor)),a("design:paramtypes",["function"==typeof(n=void 0!==f.TCalleeDataExtractorFactory&&f.TCalleeDataExtractorFactory)?n:Object])],y),t.CallsGraphAnalyzer=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){if(!c.NodeGuards.isIdentifierNode(t))return null;const r=this.getCalleeBlockStatement(d.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(c.NodeGuards.isFunctionDeclarationNode(e)&&e.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionDeclarationCalleeDataExtractor=l},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(12)),s=r(43),c=r(4),d=r(18);let l=class extends s.AbstractCalleeDataExtractor{extract(e,t){var r;let o=null;return c.NodeGuards.isIdentifierNode(t)&&(o=this.getCalleeBlockStatement(d.NodeStatementUtils.getParentNodeWithStatements(e[0]),t.name)),c.NodeGuards.isFunctionExpressionNode(t)&&(o=t.body),o?{callee:o,name:null!==(r=t.name)&&void 0!==r?r:null}:null}getCalleeBlockStatement(e,t){let r=null;return a.traverse(e,{enter:(e,o)=>{if(c.NodeGuards.isFunctionExpressionNode(e)&&o&&c.NodeGuards.isVariableDeclaratorNode(o)&&c.NodeGuards.isIdentifierNode(o.id)&&o.id.name===t)return r=e.body,a.VisitorOption.Break}}),r}};l=o([i.injectable()],l),t.FunctionExpressionCalleeDataExtractor=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(12)),c=r(43),d=r(4),l=r(18);let u=o=class extends c.AbstractCalleeDataExtractor{static isValidTargetPropertyNode(e,t){if(!e.key)return!1;const r=d.NodeGuards.isIdentifierNode(e.key)&&e.key.name===t,o=d.NodeGuards.isLiteralNode(e.key)&&Boolean(e.key.value)&&e.key.value===t;return r||o}extract(e,t){if(!d.NodeGuards.isMemberExpressionNode(t))return null;const r=this.createObjectMembersCallsChain([],t);if(!r.length)return null;const o=r[r.length-1],n=this.getCalleeBlockStatement(l.NodeStatementUtils.getParentNodeWithStatements(e[0]),r);return n?{callee:n,name:o}:null}createObjectMembersCallsChain(e,t){if(d.NodeGuards.isIdentifierNode(t.property)&&!t.computed)e.unshift(t.property.name);else{if(!d.NodeGuards.isLiteralNode(t.property)||"string"!=typeof t.property.value&&"number"!=typeof t.property.value)return e;e.unshift(t.property.value)}return d.NodeGuards.isMemberExpressionNode(t.object)?this.createObjectMembersCallsChain(e,t.object):(d.NodeGuards.isIdentifierNode(t.object)&&e.unshift(t.object.name),e)}getCalleeBlockStatement(e,t){const r=t.shift();if(!r)return null;let o=null;return s.traverse(e,{enter:e=>{if(d.NodeGuards.isVariableDeclaratorNode(e)&&d.NodeGuards.isIdentifierNode(e.id)&&e.init&&d.NodeGuards.isObjectExpressionNode(e.init)&&e.id.name===r)return o=this.findCalleeBlockStatement(e.init.properties,t),s.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(d.NodeGuards.isObjectExpressionNode(n.value))return this.findCalleeBlockStatement(n.value.properties,t);if(d.NodeGuards.isFunctionExpressionNode(n.value))return n.value.body}return null}};u=o=n([a.injectable()],u),t.ObjectExpressionCalleeDataExtractor=u},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(36),p=r(4);let m=o=class{constructor(e){this.prevailingKindOfVariables=o.defaultKindOfVariables,this.arrayUtils=e}analyze(e){var t;const r=[];u.traverse(e,{enter:e=>{p.NodeGuards.isVariableDeclarationNode(e)&&r.push(e.kind)}}),this.prevailingKindOfVariables=null!==(t=this.arrayUtils.findMostOccurringElement(r))&&void 0!==t?t:o.defaultKindOfVariables}getPrevailingKind(){return this.prevailingKindOfVariables}};m.defaultKindOfVariables="var",m=o=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.IArrayUtils)),a("design:paramtypes",["function"==typeof(n=void 0!==f.IArrayUtils&&f.IArrayUtils)?n:Object])],m),t.PrevailingKindOfVariablesAnalyzer=m},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=i(r(83)),c=i(r(12)),d=r(44),l=r(4);let u=o=class{constructor(){this.scopeManager=null}static attachMissingRanges(e){c.replace(e,{enter:e=>(e.range||(e.range=[o.emptyRangeValue,o.emptyRangeValue]),e)})}static isRootNode(e){return l.NodeGuards.isProgramNode(e)||e.parentNode===e}analyze(e){const t=o.sourceTypes.length;o.attachMissingRanges(e);for(let r=0;r{if("class"===e.type&&e.upper){if(!e.variables.length)return;const t=e.variables[0],r=e.upper.variables.find(e=>t.defs.some(e=>"ClassName"===e.type)&&e.name===t.name);null==r||r.references.push(...e.variables[0].references)}});for(const t of e.childScopes)this.sanitizeScopes(t)}};u.eslintScopeOptions={ecmaVersion:d.ecmaVersion,optimistic:!0},u.sourceTypes=["script","module"],u.emptyRangeValue=0,u=o=n([a.injectable()],u),t.ScopeAnalyzer=u},function(e,t){e.exports=require("eslint-scope")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(2),g=r(3),y=r(37),h=r(4),b=r(19),N=r(45);let I=o=class{constructor(e,t,r){this.stringArrayStorageData=new Map,this.stringArrayStorage=e,this.randomGenerator=t,this.options=r}analyze(e){this.options.stringArray&&p.traverse(e,{enter:(e,t)=>{if(t)return b.NodeMetadata.isIgnoredNode(e)?p.VisitorOption.Skip:void(h.NodeGuards.isLiteralNode(e)&&this.analyzeLiteralNode(e,t))}})}getItemDataForLiteralNode(e){return this.stringArrayStorageData.get(e)}analyzeLiteralNode(e,t){"string"==typeof e.value&&(N.NodeLiteralUtils.isProhibitedLiteralNode(e,t)||this.shouldAddValueToStringArray(e.value)&&this.stringArrayStorageData.set(e,this.stringArrayStorage.getOrThrow(e.value)))}shouldAddValueToStringArray(e){return e.length>=o.minimumLengthForStringArray&&this.randomGenerator.getMathRandom()<=this.options.stringArrayThreshold}};I.minimumLengthForStringArray=3,I=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.IStringArrayStorage)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==y.IStringArrayStorage&&y.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.StringArrayStorageAnalyzer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(55),s=r(13),c=r(86),d=r(87),l=r(90),u=r(91),f=r(93),p=r(96),m=r(97);t.controlFlowTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.BlockStatementControlFlowTransformer).whenTargetNamed(s.NodeTransformer.BlockStatementControlFlowTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.DeadCodeInjectionTransformer).whenTargetNamed(s.NodeTransformer.DeadCodeInjectionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.FunctionControlFlowTransformer).whenTargetNamed(s.NodeTransformer.FunctionControlFlowTransformer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(c.BinaryExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.BinaryExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(l.CallExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.CallExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(p.LogicalExpressionControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.LogicalExpressionControlFlowReplacer),e(i.ServiceIdentifiers.IControlFlowReplacer).to(m.StringLiteralControlFlowReplacer).whenTargetNamed(a.ControlFlowReplacer.StringLiteralControlFlowReplacer),e(i.ServiceIdentifiers.Factory__IControlFlowReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IControlFlowReplacer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56);let h=o=class extends y.ExpressionWithOperatorControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.operator,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.BinaryExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}};h.usingExistingIdentifierChance=.5,h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.BinaryExpressionControlFlowReplacer=h},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(20),y=r(36),h=r(2),b=r(3),N=r(21),I=r(10),v=r(11),S=r(4),O=r(6);let C=o=class extends v.AbstractNodeTransformer{constructor(e,t,r,o){super(r,o),this.controlFlowCustomNodeFactory=e,this.arrayUtils=t}static isProhibitedStatementNode(e){const t=S.NodeGuards.isBreakStatementNode(e)||S.NodeGuards.isContinueStatementNode(e),r=S.NodeGuards.isVariableDeclarationNode(e)&&("const"===e.kind||"let"===e.kind),o=S.NodeGuards.isClassDeclarationNode(e);return S.NodeGuards.isFunctionDeclarationNode(e)||t||r||o}static canTransformBlockStatementNode(e){let t=!0;return m.traverse(e,{enter:e=>{if(S.NodeGuards.isWhileStatementNode(e))return m.VisitorOption.Skip;o.isProhibitedStatementNode(e)&&(t=!1)}}),e.body.length<=4&&(t=!1),t}getVisitor(e){switch(e){case I.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&S.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),i=this.arrayUtils.shuffle(n),a=n.map(e=>i.indexOf(e)),s=this.controlFlowCustomNodeFactory(N.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode);s.initialize(r,i,a);const c=s.getNode()[0];return O.NodeUtils.parentizeNode(c,t),c}};C=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IControlFlowCustomNode)),l(1,f.inject(p.ServiceIdentifiers.IArrayUtils)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TControlFlowCustomNodeFactory&&g.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==h.IOptions&&h.IOptions)?s:Object])],C),t.BlockStatementControlFlowTransformer=C},function(e,t){e.exports=require("acorn")},function(e,t){e.exports=require("acorn-import-meta")},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){const n=e.callee;if(!h.NodeGuards.isIdentifierNode(n))return e;const i=String(e.arguments.length),a=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionFunctionNode),s=e.arguments;a.initialize(s);const c=this.insertCustomNodeToControlFlowStorage(a,r,i,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),c,n,s)}getControlFlowStorageCallNode(e,t,r,o){const n=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode);n.initialize(e,t,r,o);const i=n.getNode()[0];if(!i||!h.NodeGuards.isExpressionStatementNode(i))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return i.expression}};b.usingExistingIdentifierChance=.5,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.CallExpressionControlFlowReplacer=b},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},u=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=u(r(12)),g=r(92),y=r(2),h=r(3),b=r(59),N=r(60),I=r(13),v=r(35),S=r(10),O=r(11),C=r(8),j=r(4),_=r(18),R=r(6);let F=o=class extends O.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 j.NodeGuards.isBreakStatementNode(e)||j.NodeGuards.isContinueStatementNode(e)||j.NodeGuards.isAwaitExpressionNode(e)||j.NodeGuards.isSuperNode(e)}static isScopeHoistingFunctionDeclaration(e){if(!j.NodeGuards.isFunctionDeclarationNode(e))return!1;const t=_.NodeStatementUtils.getScopeOfNode(e),r=j.NodeGuards.isSwitchCaseNode(t)?t.consequent:t.body,o=r.indexOf(e);if(0===o)return!1;const n=r.slice(0,o),i=C.NodeFactory.blockStatementNode(n),a=e.id.name;let s=!1;return m.traverse(i,{enter:e=>{if(j.NodeGuards.isIdentifierNode(e)&&e.name===a)return s=!0,m.VisitorOption.Break}}),s}static isValidCollectedBlockStatementNode(e){if(!e.body.length)return!1;let t=0,r=!0;return m.traverse(e,{enter:e=>{if(j.NodeGuards.isBlockStatementNode(e)&&t++,t>o.maxNestedBlockStatementsCount||o.isProhibitedNodeInsideCollectedBlockStatement(e)||o.isScopeHoistingFunctionDeclaration(e))return r=!1,m.VisitorOption.Break}}),r}static isValidWrappedBlockStatementNode(e){if(!e.body.length)return!1;let t=!0;if(m.traverse(e,{enter:e=>{if(o.isScopeHoistingFunctionDeclaration(e))return t=!1,m.VisitorOption.Break}}),!t)return!1;return _.NodeStatementUtils.getParentNodeWithStatements(e).type!==v.NodeType.Program}getVisitor(e){switch(e){case S.TransformationStage.DeadCodeInjection:return{enter:(e,t)=>{if(t&&j.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),e},leave:(e,t)=>{if(t&&j.NodeGuards.isBlockStatementNode(e))return this.transformNode(e,t)}};case S.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){m.traverse(e,{enter:e=>{if(!j.NodeGuards.isBlockStatementNode(e))return;const t=R.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),i=this.collectedBlockStatements.splice(n,1)[0];return i===e?e:this.replaceBlockStatementNode(e,i,t)}restoreNode(e,t){const r=e.body[0];if(!j.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 j.NodeGuards.isBlockStatementNode(e)&&this.deadCodeInjectionRootAstHostNodeSet.has(e)}makeClonedBlockStatementNodeUnique(e){const t=C.NodeFactory.programNode([C.NodeFactory.expressionStatementNode(C.NodeFactory.functionExpressionNode([],e))]);return R.NodeUtils.parentizeAst(t),R.NodeUtils.parentizeNode(t,t),this.transformersRunner.transform(t,o.transformersToRenameBlockScopeIdentifiers,S.TransformationStage.Obfuscating),e}replaceBlockStatementNode(e,t,r){const n=C.NodeFactory.blockStatementNode([C.NodeFactory.functionDeclarationNode(o.deadCodeInjectionRootAstHostNodeName,[],t)]);this.deadCodeInjectionRootAstHostNodeSet.add(n);const i=this.deadCodeInjectionCustomNodeFactory(N.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode);i.initialize(e,n);const a=i.getNode()[0];return R.NodeUtils.parentizeNode(a,r),a}};F.deadCodeInjectionRootAstHostNodeName="deadCodeInjectionRootAstHostNode",F.maxNestedBlockStatementsCount=4,F.minCollectedBlockStatementsCount=5,F.transformersToRenameBlockScopeIdentifiers=[I.NodeTransformer.LabeledStatementTransformer,I.NodeTransformer.ScopeIdentifiersTransformer],F=o=c([f.injectable(),l(0,f.inject(p.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode)),l(1,f.inject(p.ServiceIdentifiers.ITransformersRunner)),l(2,f.inject(p.ServiceIdentifiers.IRandomGenerator)),l(3,f.inject(p.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==g.TDeadNodeInjectionCustomNodeFactory&&g.TDeadNodeInjectionCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==b.ITransformersRunner&&b.ITransformersRunner)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],F),t.DeadCodeInjectionTransformer=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(12)),y=r(20),h=r(94),b=r(95),N=r(2),I=r(3),v=r(21),S=r(55),O=r(35),C=r(10),j=r(11),_=r(22),R=r(4),F=r(19),T=r(18),x=r(6);let G=o=class extends j.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 C.TransformationStage.ControlFlowFlattening:return{leave:(e,t)=>{if(t&&(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e)))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(this.visitedFunctionNodes.add(e),!R.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(v.ControlFlowCustomNode.ControlFlowStorageNode);return n.initialize(o),_.NodeAppender.prepend(r,n.getNode()),this.hostNodesWithControlFlowNode.add(r),x.NodeUtils.parentizeAst(e),e}getControlFlowStorage(e){const t=this.controlFlowStorageFactory();if(this.controlFlowData.has(e)){this.hostNodesWithControlFlowNode.has(e)&&(R.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=T.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(R.NodeGuards.isFunctionDeclarationNode(e)||R.NodeGuards.isFunctionExpressionNode(e)||R.NodeGuards.isArrowFunctionExpressionNode(e))&&this.visitedFunctionNodes.has(e)}transformFunctionBody(e,t){g.replace(e,{enter:(e,r)=>{if(F.NodeMetadata.isIgnoredNode(e))return g.VisitorOption.Skip;if(this.isVisitedFunctionNode(e)||!r)return g.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})}})}};G.controlFlowReplacersMap=new Map([[O.NodeType.BinaryExpression,S.ControlFlowReplacer.BinaryExpressionControlFlowReplacer],[O.NodeType.CallExpression,S.ControlFlowReplacer.CallExpressionControlFlowReplacer],[O.NodeType.LogicalExpression,S.ControlFlowReplacer.LogicalExpressionControlFlowReplacer],[O.NodeType.Literal,S.ControlFlowReplacer.StringLiteralControlFlowReplacer]]),G.hostNodeSearchMinDepth=0,G.hostNodeSearchMaxDepth=2,G=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.Factory__TControlFlowStorage)),u(1,p.inject(m.ServiceIdentifiers.Factory__IControlFlowReplacer)),u(2,p.inject(m.ServiceIdentifiers.Factory__IControlFlowCustomNode)),u(3,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==b.TControlFlowStorageFactory&&b.TControlFlowStorageFactory)?n:Object,"function"==typeof(i=void 0!==h.TControlFlowReplacerFactory&&h.TControlFlowReplacerFactory)?i:Object,"function"==typeof(a=void 0!==y.TControlFlowCustomNodeFactory&&y.TControlFlowCustomNodeFactory)?a:Object,"function"==typeof(s=void 0!==I.IRandomGenerator&&I.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==N.IOptions&&N.IOptions)?c:Object])],G),t.FunctionControlFlowTransformer=G},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(56),h=r(4),b=r(6);let N=o=class extends y.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,i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.LogicalExpressionFunctionNode);i.initialize(n);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a,e.left,e.right)}checkForProhibitedExpressions(e,t){return[e,t].some(e=>{let t;return t=h.NodeGuards.isUnaryExpressionNode(e)?b.NodeUtils.getUnaryExpressionArgumentNode(e):e,!(h.NodeGuards.isLiteralNode(t)||h.NodeGuards.isIdentifierNode(t)||h.NodeGuards.isObjectExpressionNode(t)||h.NodeGuards.isExpressionStatementNode(t))})}};N.usingExistingIdentifierChance=.5,N=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],N),t.LogicalExpressionControlFlowReplacer=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(20),p=r(2),m=r(3),g=r(21),y=r(46),h=r(4);let b=o=class extends y.AbstractControlFlowReplacer{constructor(e,t,r){super(e,t,r)}replace(e,t,r){if(h.NodeGuards.isPropertyNode(t)&&t.key===e)return e;if("string"!=typeof e.value||e.value.length<3)return e;const n=String(e.value),i=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralNode);i.initialize(e.value);const a=this.insertCustomNodeToControlFlowStorage(i,r,n,o.usingExistingIdentifierChance);return this.getControlFlowStorageCallNode(r.getStorageId(),a)}getControlFlowStorageCallNode(e,t){const r=this.controlFlowCustomNodeFactory(g.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!h.NodeGuards.isExpressionStatementNode(o))throw new Error("`controlFlowStorageCallCustomNode.getNode()[0]` should returns array with `ExpressionStatement` node");return o.expression}};b.usingExistingIdentifierChance=1,b=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IControlFlowCustomNode)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TControlFlowCustomNodeFactory&&f.TControlFlowCustomNodeFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],b),t.StringLiteralControlFlowReplacer=b},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(17),i=r(1),a=r(13),s=r(61),c=r(99),d=r(101),l=r(102),u=r(103),f=r(105),p=r(106),m=r(107),g=r(108);t.convertingTransformersModule=new o.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(d.MemberExpressionTransformer).whenTargetNamed(a.NodeTransformer.MemberExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(l.MethodDefinitionTransformer).whenTargetNamed(a.NodeTransformer.MethodDefinitionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.ObjectExpressionKeysTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionKeysTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.ObjectExpressionTransformer).whenTargetNamed(a.NodeTransformer.ObjectExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.SplitStringTransformer).whenTargetNamed(a.NodeTransformer.SplitStringTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.TemplateLiteralTransformer).whenTargetNamed(a.NodeTransformer.TemplateLiteralTransformer),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(c.ObjectExpressionToVariableDeclarationExtractor).whenTargetNamed(s.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor),e(i.ServiceIdentifiers.IObjectExpressionExtractor).to(g.BasePropertiesExtractor).whenTargetNamed(s.ObjectExpressionExtractor.BasePropertiesExtractor),e(i.ServiceIdentifiers.Factory__IObjectExpressionExtractor).toFactory(n.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObjectExpressionExtractor))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(100),l=r(62),u=r(22),f=r(4),p=r(18),m=r(6),g=r(23);let y=class{constructor(e){this.objectExpressionKeysTransformerCustomNodeFactory=e}extract(e,t){return this.transformObjectExpressionToVariableDeclaration(e,t)}transformObjectExpressionToVariableDeclaration(e,t){var r;const o=p.NodeStatementUtils.getScopeOfNode(t),n=f.NodeGuards.isNodeWithLexicalScope(o)?o:null!==(r=g.NodeLexicalScopeUtils.getLexicalScope(o))&&void 0!==r?r:null;if(!n)throw new Error("Cannot find lexical scope node for the host statement node");const i=e.properties,a=this.getObjectExpressionHostNode(n,i),s=[a];return u.NodeAppender.insertBefore(o,s,t),m.NodeUtils.parentizeAst(a),m.NodeUtils.parentizeNode(a,o),{nodeToReplace:this.getObjectExpressionIdentifierNode(a),objectExpressionHostStatement:a,objectExpressionNode:this.getObjectExpressionNode(a)}}getObjectExpressionHostNode(e,t){const r=this.objectExpressionKeysTransformerCustomNodeFactory(l.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode);r.initialize(e,t);const o=r.getNode()[0];if(!o||!f.NodeGuards.isVariableDeclarationNode(o))throw new Error("`objectExpressionHostCustomNode.getNode()[0]` should returns array with `VariableDeclaration` node");return o}getObjectExpressionIdentifierNode(e){const t=e.declarations[0].id;if(!f.NodeGuards.isIdentifierNode(t))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `Identifier` id property");return t}getObjectExpressionNode(e){var t;const r=null!==(t=e.declarations[0].init)&&void 0!==t?t:null;if(!r||!f.NodeGuards.isObjectExpressionNode(r))throw new Error("`objectExpressionHostNode` should contain `VariableDeclarator` node with `ObjectExpression` init property");return r}};y=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode)),i("design:paramtypes",["function"==typeof(o=void 0!==d.TObjectExpressionKeysTransformerCustomNodeFactory&&d.TObjectExpressionKeysTransformerCustomNodeFactory)?o:Object])],y),t.ObjectExpressionToVariableDeclarationExtractor=y},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.NodeGuards.isMemberExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(g.NodeGuards.isIdentifierNode(e.property)){if(e.computed)return e;e.computed=!0,e.property=m.NodeFactory.literalNode(e.property.name)}return e}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.MemberExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4);let h=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case p.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&y.NodeGuards.isMethodDefinitionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return y.NodeGuards.isIdentifierNode(e.key)?this.replaceIdentifierKey(e,e.key):y.NodeGuards.isLiteralNode(e.key)?this.replaceLiteralKey(e,e.key):e}replaceIdentifierKey(e,t){return o.ignoredNames.includes(t.name)||e.computed||(e.computed=!0,e.key=g.NodeFactory.literalNode(t.name)),e}replaceLiteralKey(e,t){return"string"!=typeof t.value||o.ignoredNames.includes(t.value)||e.computed||(e.computed=!0),e}};h.ignoredNames=["constructor"],h=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],h),t.MethodDefinitionTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(104),g=r(2),y=r(3),h=r(10),b=r(11),N=r(4),I=r(18),v=r(61);let S=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.objectExpressionExtractorFactory=e}static isProhibitedHostStatement(e,t){return o.isReferencedIdentifierName(e,t)||o.isProhibitedSequenceExpression(e,t)}static isReferencedIdentifierName(e,t){const r=[];let o=!1,n=!1;return p.traverse(t,{enter:t=>{t===e&&(n=!0),N.NodeGuards.isIdentifierNode(t)&&(n?r.includes(t.name)&&(o=!0):r.push(t.name))},leave:t=>{if(t===e)return n=!1,p.VisitorOption.Break}}),o}static isProhibitedSequenceExpression(e,t){return N.NodeGuards.isExpressionStatementNode(t)&&N.NodeGuards.isSequenceExpressionNode(t.expression)&&t.expression.expressions.some(e=>N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isSuperNode(e.callee))}getVisitor(e){if(!this.options.transformObjectKeys)return null;switch(e){case h.TransformationStage.Converting:return{leave:(e,t)=>{if(t&&N.NodeGuards.isObjectExpressionNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){if(!e.properties.length)return e;const r=I.NodeStatementUtils.getRootStatementOfNode(e);return o.isProhibitedHostStatement(e,r)?e:this.applyObjectExpressionKeysExtractorsRecursive(o.objectExpressionExtractorNames,e,r)}applyObjectExpressionKeysExtractorsRecursive(e,t,r){const o=[...e],n=o.shift();if(!n)return t;const{nodeToReplace:i,objectExpressionHostStatement:a,objectExpressionNode:s}=this.objectExpressionExtractorFactory(n).extract(t,r);return this.applyObjectExpressionKeysExtractorsRecursive(o,s,a),i}};S.objectExpressionExtractorNames=[v.ObjectExpressionExtractor.ObjectExpressionToVariableDeclarationExtractor,v.ObjectExpressionExtractor.BasePropertiesExtractor],S=o=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IObjectExpressionExtractor)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==m.TObjectExpressionExtractorFactory&&m.TObjectExpressionExtractorFactory)?n:Object,"function"==typeof(i=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==g.IOptions&&g.IOptions)?a:Object])],S),t.ObjectExpressionKeysTransformer=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(8),g=r(4);let y=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Converting:return{enter:(e,t)=>{if(t&&g.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){g.NodeGuards.isLiteralNode(e.key)&&"string"==typeof e.key.value&&(e.key=m.NodeFactory.literalNode(e.key.value))}transformBaseProperty(e){e.shorthand&&(e.shorthand=!1),g.NodeGuards.isIdentifierNode(e.key)&&(e.key=m.NodeFactory.literalNode(e.key.name))}};y=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],y),t.ObjectExpressionTransformer=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),I=r(45),v=r(6);let S=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ObjectExpressionKeysTransformer,g.NodeTransformer.TemplateLiteralTransformer]}static chunkString(e,t){const r=Math.ceil(e.length/t),o=[];let n=0;for(let i=0;i{if(this.options.splitStrings)return t&&N.NodeGuards.isLiteralNode(e)?this.transformNode(e,t):void 0}};default:return null}}transformNode(e,t){if(I.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;const r=this.transformLiteralNodeByChunkLength(e,t,o.firstPassChunkLength);return f.replace(r,{enter:(e,t)=>{if(t&&N.NodeGuards.isLiteralNode(e))return this.transformLiteralNodeByChunkLength(e,t,this.options.splitStringsChunkLength)}})}transformLiteralNodeByChunkLength(e,t,r){if("string"!=typeof e.value)return e;if(r>=e.value.length)return e;const n=o.chunkString(e.value,r),i=this.transformStringChunksToBinaryExpressionNode(n);return v.NodeUtils.parentizeAst(i),v.NodeUtils.parentizeNode(i,t),i}transformStringChunksToBinaryExpressionNode(e){const t=e.shift(),r=e.shift();if(!t||!r)throw new Error("First and second chunks values should not be empty");const o=b.NodeFactory.binaryExpressionNode("+",b.NodeFactory.literalNode(t),b.NodeFactory.literalNode(r));return e.reduce((e,t)=>{const r=b.NodeFactory.literalNode(t);return b.NodeFactory.binaryExpressionNode("+",e,r)},o)}};S.firstPassChunkLength=1e3,S=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],S),t.SplitStringTransformer=S},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(10),m=r(11),g=r(8),y=r(4),h=r(6);let b=o=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t)}static isLiteralNodeWithStringValue(e){return!!e&&y.NodeGuards.isLiteralNode(e)&&"string"==typeof e.value}static isValidTemplateLiteralNode(e,t){return y.NodeGuards.isTemplateLiteralNode(e)&&!y.NodeGuards.isTaggedTemplateExpressionNode(t)}getVisitor(e){switch(e){case p.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,i=[];if(e.quasis.forEach(e=>{i.push(g.NodeFactory.literalNode(e.value.cooked));const t=r.shift();t&&i.push(t)}),i=i.filter(e=>!(y.NodeGuards.isLiteralNode(e)&&""===e.value)),o.isLiteralNodeWithStringValue(i[0])||o.isLiteralNodeWithStringValue(i[1])||i.unshift(g.NodeFactory.literalNode("")),i.length>1){let e=g.NodeFactory.binaryExpressionNode("+",i.shift(),i.shift());i.forEach(t=>{e=g.NodeFactory.binaryExpressionNode("+",e,t)}),n=e}else n=i[0];return h.NodeUtils.parentizeAst(n),h.NodeUtils.parentizeNode(n,t),n}};b=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],b),t.TemplateLiteralTransformer=b},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(22),s=r(8),c=r(4),d=r(18);let l=o=class{static getPropertyNodeKeyName(e){const t=e.key;return!c.NodeGuards.isLiteralNode(t)||"string"!=typeof t.value&&"number"!=typeof t.value?c.NodeGuards.isIdentifierNode(t)?t.name:null:t.value.toString()}static isProhibitedPattern(e){return!e||c.NodeGuards.isObjectPatternNode(e)||c.NodeGuards.isArrayPatternNode(e)||c.NodeGuards.isAssignmentPatternNode(e)||c.NodeGuards.isRestElementNode(e)}extract(e,t){const r=e.parentNode;return r&&c.NodeGuards.isVariableDeclaratorNode(r)&&c.NodeGuards.isIdentifierNode(r.id)?this.transformObjectExpressionNode(e,t,r.id):{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}transformObjectExpressionNode(e,t,r){const o=e.properties,[n,i]=this.extractPropertiesToExpressionStatements(o,t,r),s=d.NodeStatementUtils.getScopeOfNode(t);return this.filterExtractedObjectExpressionProperties(e,i),a.NodeAppender.insertAfter(s,n,t),{nodeToReplace:e,objectExpressionHostStatement:t,objectExpressionNode:e}}extractPropertiesToExpressionStatements(e,t,r){const n=e.length,i=[],a=[];for(let d=0;d!t.includes(r))}};l=o=n([i.injectable()],l),t.BasePropertiesExtractor=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(27),s=r(63),c=r(110),d=r(111),l=r(112),u=r(113),f=r(114),p=r(115),m=r(119),g=r(121),y=r(123),h=r(125),b=r(127),N=r(131),I=r(133),v=r(135),S=r(137),O=r(144),C=r(146);t.customCodeHelpersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.ICustomCodeHelper).to(p.ConsoleOutputDisableCodeHelper).whenTargetNamed(a.CustomCodeHelper.ConsoleOutputDisable),e(i.ServiceIdentifiers.ICustomCodeHelper).to(y.DebugProtectionFunctionCallCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionCall),e(i.ServiceIdentifiers.ICustomCodeHelper).to(h.DebugProtectionFunctionIntervalCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunctionInterval),e(i.ServiceIdentifiers.ICustomCodeHelper).to(b.DebugProtectionFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.DebugProtectionFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(N.DomainLockCodeHelper).whenTargetNamed(a.CustomCodeHelper.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelper).to(I.CallsControllerFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.CallsControllerFunction),e(i.ServiceIdentifiers.ICustomCodeHelper).to(v.SelfDefendingUnicodeCodeHelper).whenTargetNamed(a.CustomCodeHelper.SelfDefendingUnicode),e(i.ServiceIdentifiers.ICustomCodeHelper).to(S.StringArrayCallsWrapperCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayCallsWrapper),e(i.ServiceIdentifiers.ICustomCodeHelper).to(O.StringArrayCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArray),e(i.ServiceIdentifiers.ICustomCodeHelper).to(C.StringArrayRotateFunctionCodeHelper).whenTargetNamed(a.CustomCodeHelper.StringArrayRotateFunction),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(c.ConsoleOutputCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.ConsoleOutput),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(d.DebugProtectionCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DebugProtection),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(l.DomainLockCustomCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.DomainLock),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(u.SelfDefendingCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.SelfDefending),e(i.ServiceIdentifiers.ICustomCodeHelperGroup).to(f.StringArrayCodeHelperGroup).whenTargetNamed(s.CustomCodeHelperGroup.StringArray),e(i.ServiceIdentifiers.Factory__ICustomCodeHelper).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelper)),e(i.ServiceIdentifiers.Factory__ICustomCodeHelperGroup).toFactory(o.InversifyContainerFacade.getFactory(i.ServiceIdentifiers.ICustomCodeHelperGroup)),e(i.ServiceIdentifiers.ICustomCodeHelperFormatter).to(m.CustomCodeHelperFormatter).inSingletonScope(),e(i.ServiceIdentifiers.ICustomCodeHelperObfuscator).to(g.CustomCodeHelperObfuscator).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23),O=r(4);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.disableConsoleOutput)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.ConsoleOutputDisable,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.disableConsoleOutput)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.ConsoleOutputDisable),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.ConsoleOutputDisable,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.ConsoleOutputCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(4),O=r(23);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.debugProtection)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=O.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&S.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionCall,e=>{e.initialize(s,c),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunction,t=>{t.initialize(s),v.NodeAppender.append(e,t.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.DebugProtectionFunctionInterval,t=>{const r=S.NodeGuards.isSwitchCaseNode(e)?e.consequent.length:e.body.length,o=this.randomGenerator.getRandomInteger(0,r);t.initialize(s),v.NodeAppender.insertAtIndex(e,t.getNode(),o)})}initialize(){if(this.customCodeHelpers=new Map,!this.options.debugProtection)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunction),t=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionCall),r=this.customCodeHelperFactory(b.CustomCodeHelper.DebugProtectionFunctionInterval),o=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunction,e),this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionCall,t),this.options.debugProtectionInterval&&this.customCodeHelpers.set(b.CustomCodeHelper.DebugProtectionFunctionInterval,r),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,o)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DebugProtectionCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23),O=r(4);let C=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.domainLock.length)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5),c=a&&O.NodeGuards.isProgramNode(a)?this.identifierNamesGenerator.generate(a):this.randomGenerator.getRandomString(5);this.appendCustomNodeIfExist(b.CustomCodeHelper.DomainLock,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.domainLock.length)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.DomainLock),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.DomainLock,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],C),t.DomainLockCustomCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(29),m=r(5),g=r(2),y=r(3),h=r(7),b=r(27),N=r(25),I=r(30),v=r(22),S=r(23);let O=class extends I.AbstractCustomCodeHelperGroup{constructor(e,t,r,o){super(t,r,o),this.appendEvent=N.ObfuscationEvent.BeforeObfuscation,this.customCodeHelperFactory=e}appendNodes(e,t){var r;if(!this.options.selfDefending)return;const o=this.getRandomCallsGraphIndex(t.length),n=t.length?v.NodeAppender.getOptimalBlockScope(t,o):e,i=t.length?v.NodeAppender.getOptimalBlockScope(t,o,1):e,a=null!==(r=S.NodeLexicalScopeUtils.getLexicalScope(n))&&void 0!==r?r:null,s=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope(),c=a?this.identifierNamesGenerator.generate(a):this.identifierNamesGenerator.generateForGlobalScope();this.appendCustomNodeIfExist(b.CustomCodeHelper.SelfDefendingUnicode,e=>{e.initialize(c,s),v.NodeAppender.prepend(n,e.getNode())}),this.appendCustomNodeIfExist(b.CustomCodeHelper.CallsControllerFunction,e=>{e.initialize(this.appendEvent,c),v.NodeAppender.prepend(i,e.getNode())})}initialize(){if(this.customCodeHelpers=new Map,!this.options.selfDefending)return;const e=this.customCodeHelperFactory(b.CustomCodeHelper.SelfDefendingUnicode),t=this.customCodeHelperFactory(b.CustomCodeHelper.CallsControllerFunction);this.customCodeHelpers.set(b.CustomCodeHelper.SelfDefendingUnicode,e),this.customCodeHelpers.set(b.CustomCodeHelper.CallsControllerFunction,t)}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],O.prototype,"customCodeHelpers",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__ICustomCodeHelper)),l(1,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TCustomCodeHelperFactory&&p.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],O),t.SelfDefendingCodeHelperGroup=O},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(29),g=r(5),y=r(2),h=r(3),b=r(37),N=r(7),I=r(27),v=r(25),S=r(30),O=r(22);let C=class extends S.AbstractCustomCodeHelperGroup{constructor(e,t,r,o,n){super(r,o,n),this.appendEvent=v.ObfuscationEvent.AfterObfuscation,this.customCodeHelperFactory=e,this.stringArrayStorage=t}appendNodes(e,t){this.stringArrayStorage.getLength()&&(this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArray,t=>{O.NodeAppender.prepend(e,t.getNode())}),this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArrayCallsWrapper,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}),this.appendCustomNodeIfExist(I.CustomCodeHelper.StringArrayRotateFunction,t=>{O.NodeAppender.insertAtIndex(e,t.getNode(),1)}))}initialize(){if(this.customCodeHelpers=new Map,!this.options.stringArray)return;const e=this.customCodeHelperFactory(I.CustomCodeHelper.StringArray),t=this.customCodeHelperFactory(I.CustomCodeHelper.StringArrayCallsWrapper),r=this.customCodeHelperFactory(I.CustomCodeHelper.StringArrayRotateFunction),o=this.stringArrayStorage.getStorageName(),n=this.stringArrayStorage.getStorageCallsWrapperName(),i=this.stringArrayStorage.getRotationAmount();e.initialize(this.stringArrayStorage,o),t.initialize(o,n),r.initialize(o,i),this.customCodeHelpers.set(I.CustomCodeHelper.StringArray,e),this.customCodeHelpers.set(I.CustomCodeHelper.StringArrayCallsWrapper,t),this.options.rotateStringArray&&this.customCodeHelpers.set(I.CustomCodeHelper.StringArrayRotateFunction,r)}};d([N.initializable(),l("design:type","function"==typeof(o="undefined"!=typeof Map&&Map)?o:Object)],C.prototype,"customCodeHelpers",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__ICustomCodeHelper)),u(1,f.inject(p.ServiceIdentifiers.IStringArrayStorage)),u(2,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TCustomCodeHelperFactory&&m.TCustomCodeHelperFactory)?n:Object,"function"==typeof(i=void 0!==b.IStringArrayStorage&&b.IStringArrayStorage)?i:Object,"function"==typeof(a=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],C),t.StringArrayCodeHelperGroup=C},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(116),I=r(48),v=r(7),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.callsControllerFunctionName=e,this.consoleOutputDisableFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():I.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(N.ConsoleOutputDisableExpressionTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,consoleLogDisableFunctionName:this.consoleOutputDisableFunctionName,globalVariableTemplate:e})}};c([v.initializable(),d("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),c([v.initializable(),d("design:type",String)],C.prototype,"consoleOutputDisableFunctionName",void 0),C=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],C),t.ConsoleOutputDisableCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleOutputDisableExpressionTemplate=function(){return"\n const {consoleLogDisableFunctionName} = {callControllerFunctionName}(this, function () {\n const func = function () {};\n \n {globalVariableTemplate}\n \n if (!that.console) {\n that.console = (function (func){\n const c = {};\n \n c.log = func;\n c.warn = func;\n c.debug = func;\n c.info = func;\n c.error = func;\n c.exception = func;\n c.table = func;\n c.trace = func;\n \n return c;\n })(func);\n } else {\n that.console.log = func;\n that.console.warn = func;\n that.console.debug = func;\n that.console.info = func;\n that.console.error = func;\n that.console.exception = func;\n that.console.table = func;\n that.console.trace = func;\n }\n });\n \n {consoleLogDisableFunctionName}();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate1=function(){return"\n let that;\n \n try {\n const getGlobal = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');');\n \n that = getGlobal();\n } catch (e) {\n that = window;\n }\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalVariableTemplate2=function(){return"\n const getGlobal = function () {\n let globalObject;\n \n try {\n globalObject = Function('return (function() ' + '{}.constructor(\"return this\")( )' + ');')();\n } catch (e) {\n globalObject = window;\n }\n \n return globalObject;\n };\n const that = getGlobal();\n "}},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}},s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=s(r(12)),f=c(r(120)),p=r(64),m=r(4);let g=class{constructor(e){this.prevailingKindOfVariables=e.getPrevailingKind()}formatTemplate(e,t){return f.default(e,t)}formatStructure(e){for(const t of e)u.replace(t,{enter:e=>{if(m.NodeGuards.isVariableDeclarationNode(e))return"var"===this.prevailingKindOfVariables&&(e.kind="var"),e}});return e}};g=n([d.injectable(),a(0,d.inject(l.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),i("design:paramtypes",["function"==typeof(o=void 0!==p.IPrevailingKindOfVariablesAnalyzer&&p.IPrevailingKindOfVariablesAnalyzer)?o:Object])],g),t.CustomCodeHelperFormatter=g},function(e,t){e.exports=require("string-template")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(122),p=r(53);let m=class{constructor(e,t){this.randomGenerator=e,this.options=t}obfuscateTemplate(e,t={}){return p.JavaScriptObfuscator.obfuscate(e,Object.assign(Object.assign(Object.assign({},f.NO_ADDITIONAL_NODES_PRESET),{identifierNamesGenerator:this.options.identifierNamesGenerator,identifiersDictionary:this.options.identifiersDictionary,seed:this.randomGenerator.getRawSeed()}),t)).getObfuscatedCode()}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],m),t.CustomCodeHelperObfuscator=m},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(33),n=r(24),i=r(34);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,shuffleStringArray:!1,sourceMap:!1,sourceMapBaseUrl:"",sourceMapFileName:"",sourceMapMode:i.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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(124),I=r(16),v=r(6);let S=class extends I.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.debugProtectionFunctionName=e,this.callsControllerFunctionName=t}getNodeStructure(e){return v.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionCallTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName,callControllerFunctionName:this.callsControllerFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"callsControllerFunctionName",void 0),c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionCallCodeHelper=S},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DebugProtectionFunctionCallTemplate=function(){return"\n (function () {\n {callControllerFunctionName}(\n this,\n function () {\n const regExp1 = new RegExp('function *\\\\( *\\\\)');\n const regExp2 = new RegExp('\\\\+\\\\+ *\\(?:[a-zA-Z_$][0-9a-zA-Z_$]*\\)', 'i');\n \n const result = {debugProtectionFunctionName}('init');\n \n if (!regExp1.test(result + 'chain') || !regExp2.test(result + 'input')) {\n result('0');\n } else {\n {debugProtectionFunctionName}();\n }\n }\n )();\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(7),N=r(126),I=r(16),v=r(6);let S=class extends I.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return v.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(N.DebugProtectionFunctionIntervalTemplate(),{debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([b.initializable(),d("design:type",String)],S.prototype,"debugProtectionFunctionName",void 0),S=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],S),t.DebugProtectionFunctionIntervalCodeHelper=S},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";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(14),y=r(2),h=r(3),b=r(24),N=r(7),I=r(128),v=r(129),S=r(130),O=r(16),C=r(6);let j=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e){this.debugProtectionFunctionName=e}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.target!==b.ObfuscationTarget.BrowserNoEval?I.DebuggerTemplate():v.DebuggerTemplateNoEval();return this.customCodeHelperFormatter.formatTemplate(S.DebugProtectionFunctionTemplate(),{debuggerTemplate:e,debugProtectionFunctionName:this.debugProtectionFunctionName})}};c([N.initializable(),d("design:type",String)],j.prototype,"debugProtectionFunctionName",void 0),j=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.ICustomCodeHelperObfuscator)),l(3,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(4,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],j),t.DebugProtectionFunctionCodeHelper=j},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 const func = function () {\n while (true) {}\n };\n \n return func();\n } else {\n if (('' + counter / counter)['length'] !== 1 || counter % 20 === 0) {\n debugger;\n } else {\n debugger;\n }\n \n }\n "}},function(e,t,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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(49),b=r(2),N=r(3),I=r(24),v=r(7),S=r(132),O=r(48),C=r(16),j=r(6);let _=class extends C.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.cryptUtils=i}initialize(e,t){this.callsControllerFunctionName=e,this.domainLockFunctionName=t}getNodeStructure(e){return j.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.options.domainLock.join(";"),[t,r]=this.cryptUtils.hideString(e,3*e.length),o=this.options.target!==I.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():O.GlobalVariableNoEvalTemplate();return this.customCodeHelperFormatter.formatTemplate(S.DomainLockTemplate(),{callControllerFunctionName:this.callsControllerFunctionName,domainLockFunctionName:this.domainLockFunctionName,diff:r,domains:t,globalVariableTemplate:o})}};d([v.initializable(),l("design:type",String)],_.prototype,"callsControllerFunctionName",void 0),d([v.initializable(),l("design:type",String)],_.prototype,"domainLockFunctionName",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.ICryptUtils)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object])],_),t.DomainLockCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DomainLockTemplate=function(){return'\n const {domainLockFunctionName} = {callControllerFunctionName}(this, function () {\n \n {globalVariableTemplate}\n \n const func = function () {\n return {\n key: \'item\',\n value: \'attribute\',\n getAttribute: function () {\n for (let i = 0; i < 1000; i--) {\n const isPositive = i > 0;\n \n switch (isPositive) {\n case true:\n return this.item + \'_\' + this.value + \'_\' + i;\n default:\n this.item + \'_\' + this.value;\n }\n }\n }()\n };\n };\n \n const regExp = new RegExp("[{diff}]", "g");\n const domains = "{domains}".replace(regExp, "").split(";");\n let document;\n let domain;\n let location;\n let hostname;\n\n for (let d in that) {\n if (d.length == 8 && d.charCodeAt(7) == 116 && d.charCodeAt(5) == 101 && d.charCodeAt(3) == 117 && d.charCodeAt(0) == 100) {\n document = d;\n \n break;\n }\n }\n\n for (let d1 in that[document]) {\n if (d1.length == 6 && d1.charCodeAt(5) == 110 && d1.charCodeAt(0) == 100) {\n domain = d1;\n \n break;\n }\n }\n\n if (!("~" > domain)) {\n for (let d2 in that[document]) {\n if (d2.length == 8 && d2.charCodeAt(7) == 110 && d2.charCodeAt(0) == 108) {\n location = d2;\n \n break;\n }\n }\n\n for (let d3 in that[document][location]) {\n if (d3.length == 8 && d3.charCodeAt(7) == 101 && d3.charCodeAt(0) == 104) {\n hostname = d3;\n \n break;\n }\n }\n }\n \n if (!document || !that[document]) {\n return;\n }\n \n const documentDomain = that[document][domain];\n const documentLocationHostName = !!that[document][location] && that[document][location][hostname];\n const currentDomain = documentDomain || documentLocationHostName;\n \n if (!currentDomain) {\n return;\n }\n \n let ok = false;\n \n for (let i = 0; i < domains.length; i++) {\n const domain = domains[i];\n const position = currentDomain.length - domain.length;\n const lastIndex = currentDomain.indexOf(domain, position);\n const endsWith = lastIndex !== -1 && lastIndex === position;\n \n if (endsWith) {\n if (currentDomain.length == domain.length || domain.indexOf(".") === 0) {\n ok = true;\n }\n }\n }\n \n if (!ok) {\n data;\n } else {\n return;\n }\n \n func();\n });\n\n {domainLockFunctionName}();\n '}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(14),y=r(9),h=r(2),b=r(3),N=r(25),I=r(7),v=r(134),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.appendEvent=e,this.callsControllerFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.appendEvent===N.ObfuscationEvent.AfterObfuscation?this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(v.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})):this.customCodeHelperFormatter.formatTemplate(v.SingleCallControllerTemplate(),{callControllerFunctionName:this.callsControllerFunctionName})}};d([I.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type","function"==typeof(o=void 0!==N.ObfuscationEvent&&N.ObfuscationEvent)?o:Object)],C.prototype,"appendEvent",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperFormatter&&y.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==g.ICustomCodeHelperObfuscator&&g.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.CallsControllerFunctionCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SingleCallControllerTemplate=function(){return"\n const {callControllerFunctionName} = (function(){\n let firstCall = true;\n \n return function (context, fn){\n const rfn = firstCall ? function(){\n if(fn){\n const res = fn.apply(context, arguments);\n fn = null;\n return res;\n }\n } : function(){}\n \n firstCall = false;\n \n return rfn;\n }\n })();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(7),v=r(136),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.callsControllerFunctionName=e,this.selfDefendingFunctionName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(v.SelfDefendingTemplate(this.escapeSequenceEncoder),{callControllerFunctionName:this.callsControllerFunctionName,selfDefendingFunctionName:this.selfDefendingFunctionName})}};d([I.initializable(),l("design:type",String)],C.prototype,"callsControllerFunctionName",void 0),d([I.initializable(),l("design:type",String)],C.prototype,"selfDefendingFunctionName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],C),t.SelfDefendingUnicodeCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return"\n const {selfDefendingFunctionName} = {callControllerFunctionName}(this, function () {\n const test = function () {\n const regExp = test\n .constructor('return /\" + this + \"/')()\n .compile('^([^ ]+( +[^ ]+)+)+[^ ]}');\n \n return !regExp.test({selfDefendingFunctionName});\n };\n \n return test();\n });\n \n {selfDefendingFunctionName}();\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(24),v=r(28),S=r(7),O=r(138),C=r(48),j=r(139),_=r(140),R=r(141),F=r(142),T=r(143),x=r(16),G=r(6);let w=class extends x.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayCallsWrapperName=t}getNodeStructure(e){return G.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.getDecodeStringArrayTemplate(),t=[`^${this.stringArrayName}$`];return this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(F.StringArrayCallsWrapperTemplate(),{decodeCodeHelperTemplate:e,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName}),{reservedNames:t})}getDecodeStringArrayTemplate(){const e=this.options.target!==I.ObfuscationTarget.BrowserNoEval?this.getGlobalVariableTemplate():C.GlobalVariableNoEvalTemplate(),t=this.customCodeHelperFormatter.formatTemplate(O.AtobTemplate(),{globalVariableTemplate:e});let r="",o="";switch(this.options.selfDefending&&(o=this.customCodeHelperFormatter.formatTemplate(_.SelfDefendingTemplate(this.randomGenerator,this.escapeSequenceEncoder),{stringArrayCallsWrapperName:this.stringArrayCallsWrapperName,stringArrayName:this.stringArrayName})),this.options.stringArrayEncoding){case v.StringArrayEncoding.Rc4:r=this.customCodeHelperFormatter.formatTemplate(T.StringArrayRC4DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,rc4Polyfill:j.Rc4Template(),stringArrayCallsWrapperName:this.stringArrayCallsWrapperName});break;case v.StringArrayEncoding.Base64:r=this.customCodeHelperFormatter.formatTemplate(R.StringArrayBase64DecodeTemplate(this.randomGenerator),{atobPolyfill:t,selfDefendingCode:o,stringArrayCallsWrapperName:this.stringArrayCallsWrapperName})}return r}};d([S.initializable(),l("design:type",String)],w.prototype,"stringArrayName",void 0),d([S.initializable(),l("design:type",String)],w.prototype,"stringArrayCallsWrapperName",void 0),w=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],w),t.StringArrayCallsWrapperCodeHelper=w},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AtobTemplate=function(){return"\n (function () {\n {globalVariableTemplate}\n \n const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\n\n that.atob || (\n that.atob = function(input) {\n const str = String(input).replace(/=+$/, '');\n let output = '';\n for (\n let bc = 0, bs, buffer, idx = 0;\n buffer = str.charAt(idx++);\n ~buffer && (bs = bc % 4 ? bs * 64 + buffer : buffer,\n bc++ % 4) ? output += String.fromCharCode(255 & bs >> (-2 * bc & 6)) : 0\n ) {\n buffer = chars.indexOf(buffer);\n }\n return output;\n }\n );\n })();\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Rc4Template=function(){return"\n const rc4 = function (str, key) {\n let s = [], j = 0, x, res = '', newStr = '';\n \n str = atob(str);\n \n for (let k = 0, length = str.length; k < length; k++) {\n newStr += '%' + ('00' + str.charCodeAt(k).toString(16)).slice(-2);\n }\n \n str = decodeURIComponent(newStr);\n \t \n let i;\n \t \n\t for (i = 0; i < 256; i++) {\n s[i] = i;\n }\n \n for (i = 0; i < 256; i++) {\n j = (j + s[i] + key.charCodeAt(i % key.length)) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n }\n \n i = 0;\n j = 0;\n \n for (let y = 0; y < str.length; y++) {\n i = (i + 1) % 256;\n j = (j + s[i]) % 256;\n x = s[i];\n s[i] = s[j];\n s[j] = x;\n res += String.fromCharCode(str.charCodeAt(y) ^ s[(s[i] + s[j]) % 256]);\n }\n \n return res;\n }\n "}},function(e,t,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),i=e.getRandomString(6),a=e.getRandomString(6),s=e.getRandomString(6),c=e.getRandomString(6),d=e.getRandomString(6),l=e.getRandomString(6);return`\n const StatesClass = function (${r}) {\n this.${r} = ${r};\n this.${o} = [1, 0, 0];\n this.${n} = function(){return 'newState';};\n this.${i} = '${t.encode("\\w+ *\\(\\) *{\\w+ *",!0)}';\n this.${a} = '${t.encode("['|\"].+['|\"];? *}",!0)}';\n };\n \n StatesClass.prototype.${s} = function () {\n const regExp = new RegExp(this.${i} + this.${a});\n const expression = regExp.test(this.${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 (let 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.StringArrayBase64DecodeTemplate=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 const string = atob(str);\n let newStringChars = [];\n \n for (let i = 0, length = string.length; i < length; i++) {\n newStringChars += '%' + ('00' + string.charCodeAt(i).toString(16)).slice(-2);\n }\n \n return decodeURIComponent(newStringChars);\n };\n \n {stringArrayCallsWrapperName}.${o} = {};\n \n {stringArrayCallsWrapperName}.${t} = true;\n }\n \n const 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 const {stringArrayCallsWrapperName} = function (index, key) {\n index = index - 0;\n \n let value = {stringArrayName}[index];\n \n {decodeCodeHelperTemplate}\n \n return value;\n };\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRC4DecodeTemplate=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 const 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";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(2),b=r(3),N=r(37),I=r(7),v=r(145),S=r(16),O=r(6);let C=class extends S.AbstractCustomCodeHelper{constructor(e,t,r,o,n){super(e,t,r,o,n)}initialize(e,t){this.stringArrayStorage=e,this.stringArrayName=t}getNodeStructure(e){return O.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){return this.customCodeHelperFormatter.formatTemplate(v.StringArrayTemplate(),{stringArrayName:this.stringArrayName,stringArray:this.stringArrayStorage.toString()})}};d([I.initializable(),l("design:type","function"==typeof(o=void 0!==N.IStringArrayStorage&&N.IStringArrayStorage)?o:Object)],C.prototype,"stringArrayStorage",void 0),d([I.initializable(),l("design:type",String)],C.prototype,"stringArrayName",void 0),C=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?a:Object,"function"==typeof(s=void 0!==b.IRandomGenerator&&b.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==h.IOptions&&h.IOptions)?c:Object])],C),t.StringArrayCodeHelper=C},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayTemplate=function(){return"\n const {stringArrayName} = [{stringArray}];\n "}},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(5),g=r(9),y=r(14),h=r(32),b=r(2),N=r(3),I=r(7),v=r(147),S=r(148),O=r(16),C=r(6),j=r(38);let _=class extends O.AbstractCustomCodeHelper{constructor(e,t,r,o,n,i){super(e,t,r,o,n),this.escapeSequenceEncoder=i}initialize(e,t){this.stringArrayName=e,this.stringArrayRotationAmount=t}getNodeStructure(e){return C.NodeUtils.convertCodeToStructure(e)}getCodeHelperTemplate(){const e=this.identifierNamesGenerator.generateForGlobalScope(),t=this.identifierNamesGenerator.generateForGlobalScope(),r=[`^${this.stringArrayName}$`];let o="";return o=this.options.selfDefending?this.customCodeHelperFormatter.formatTemplate(v.SelfDefendingTemplate(this.escapeSequenceEncoder),{timesName:e,whileFunctionName:t}):`${t}(++${e})`,this.customCodeHelperObfuscator.obfuscateTemplate(this.customCodeHelperFormatter.formatTemplate(S.StringArrayRotateFunctionTemplate(),{code:o,timesName:e,whileFunctionName:t,stringArrayName:this.stringArrayName,stringArrayRotationAmount:j.NumberUtils.toHex(this.stringArrayRotationAmount)}),{reservedNames:r})}};d([I.initializable(),l("design:type",String)],_.prototype,"stringArrayName",void 0),d([I.initializable(),l("design:type",Number)],_.prototype,"stringArrayRotationAmount",void 0),_=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),u(1,f.inject(p.ServiceIdentifiers.ICustomCodeHelperFormatter)),u(2,f.inject(p.ServiceIdentifiers.ICustomCodeHelperObfuscator)),u(3,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(4,f.inject(p.ServiceIdentifiers.IOptions)),u(5,f.inject(p.ServiceIdentifiers.IEscapeSequenceEncoder)),l("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==y.ICustomCodeHelperObfuscator&&y.ICustomCodeHelperObfuscator)?i:Object,"function"==typeof(a=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==b.IOptions&&b.IOptions)?s:Object,"function"==typeof(c=void 0!==h.IEscapeSequenceEncoder&&h.IEscapeSequenceEncoder)?c:Object])],_),t.StringArrayRotateFunctionCodeHelper=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SelfDefendingTemplate=function(e){return`\n const selfDefendingFunc = function () {\n const object = {\n data: {\n key: 'cookie',\n value: 'timeout'\n },\n setCookie: function (options, name, value, document) {\n document = document || {};\n \n let updatedCookie = name + "=" + value;\n let i = 0;\n \n for (let i = 0, len = options.length; i < len; i++) {\n const propName = options[i];\n \n updatedCookie += "; " + propName;\n \n const propValue = options[propName];\n \n options.push(propValue);\n len = options.length;\n \n if (propValue !== true) {\n updatedCookie += "=" + propValue;\n }\n }\n\n document['cookie'] = updatedCookie;\n },\n removeCookie: function(){return 'dev';},\n getCookie: function (document, name) {\n document = document || function (value) { return value };\n const matches = document(new RegExp(\n "(?:^|; )" + name.replace(/([.$?*|{}()[]\\/+^])/g, '\\$1') + "=([^;]*)"\n ));\n \n const func = function (param1, param2) {\n param1(++param2);\n };\n \n func({whileFunctionName}, {timesName});\n \n return matches ? decodeURIComponent(matches[1]) : undefined;\n }\n };\n \n const test1 = function () {\n const regExp = new RegExp('${e.encode("\\w+ *\\(\\) *{\\w+ *['|\"].+['|\"];? *}",!0)}');\n \n return regExp.test(object.removeCookie.toString());\n };\n \n object['updateCookie'] = test1;\n \n let cookie = '';\n const result = object['updateCookie']();\n \n if (!result) {\n object['setCookie'](['*'], 'counter', 1);\n } else if (result) {\n cookie = object['getCookie'](null, 'counter');\n } else {\n object['removeCookie']();\n }\n };\n \n selfDefendingFunc();\n `}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringArrayRotateFunctionTemplate=function(){return"\n (function (array, {timesName}) {\n const {whileFunctionName} = function (times) {\n while (--times) {\n array['push'](array['shift']());\n }\n };\n \n {code}\n })({stringArrayName}, 0x{stringArrayRotationAmount});\n "}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(21),s=r(60),c=r(62),d=r(150),l=r(151),u=r(152),f=r(153),p=r(154),m=r(155),g=r(156),y=r(158),h=r(159),b=r(160),N=r(161);t.customNodesModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(l.BinaryExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.BinaryExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(u.BlockStatementControlFlowFlatteningNode).whenTargetNamed(a.ControlFlowCustomNode.BlockStatementControlFlowFlatteningNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(p.CallExpressionControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(m.CallExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.CallExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(g.ControlFlowStorageNode).whenTargetNamed(a.ControlFlowCustomNode.ControlFlowStorageNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(y.ExpressionWithOperatorControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.ExpressionWithOperatorControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(h.LogicalExpressionFunctionNode).whenTargetNamed(a.ControlFlowCustomNode.LogicalExpressionFunctionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(N.StringLiteralNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(b.StringLiteralControlFlowStorageCallNode).whenTargetNamed(a.ControlFlowCustomNode.StringLiteralControlFlowStorageCallNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(f.BlockStatementDeadCodeInjectionNode).whenTargetNamed(s.DeadCodeInjectionCustomNode.BlockStatementDeadCodeInjectionNode),e(i.ServiceIdentifiers.Newable__ICustomNode).toConstructor(d.ObjectExpressionVariableDeclarationHostNode).whenTargetNamed(c.ObjectExpressionKeysTransformerCustomNode.ObjectExpressionVariableDeclarationHostNode),e(i.ServiceIdentifiers.Factory__IControlFlowCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),e(i.ServiceIdentifiers.Factory__IDeadCodeInjectionCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions)),e(i.ServiceIdentifiers.Factory__IObjectExpressionKeysTransformerCustomNode).toFactory(o.InversifyContainerFacade.getConstructorFactory(i.ServiceIdentifiers.Newable__ICustomNode,i.ServiceIdentifiers.Factory__IIdentifierNamesGenerator,i.ServiceIdentifiers.ICustomCodeHelperFormatter,i.ServiceIdentifiers.IRandomGenerator,i.ServiceIdentifiers.IOptions,i.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer))})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(4);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.lexicalScopeNode=e,this.properties=t}getNodeStructure(){const e=b.NodeGuards.isProgramNode(this.lexicalScopeNode)?this.identifierNamesGenerator.generateForGlobalScope():this.identifierNamesGenerator.generateForLexicalScope(this.lexicalScopeNode);return[h.NodeFactory.variableDeclarationNode([h.NodeFactory.variableDeclaratorNode(h.NodeFactory.identifierNode(e),h.NodeFactory.objectExpressionNode(this.properties))],"const")]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.ObjectExpressionVariableDeclarationHostNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.binaryExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BinaryExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(4),I=r(6);let v=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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=b.NodeFactory.blockStatementNode([b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(e),b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.literalNode(this.originalKeysIndexesInShuffledArray.join("|")),b.NodeFactory.identifierNode("split")),[b.NodeFactory.literalNode("|")]))],"const"),b.NodeFactory.variableDeclarationNode([b.NodeFactory.variableDeclaratorNode(b.NodeFactory.identifierNode(t),b.NodeFactory.literalNode(0))],"let"),b.NodeFactory.whileStatementNode(b.NodeFactory.literalNode(!0),b.NodeFactory.blockStatementNode([b.NodeFactory.switchStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(e),b.NodeFactory.updateExpressionNode("++",b.NodeFactory.identifierNode(t)),!0),this.shuffledKeys.map((e,t)=>{const r=this.blockStatementBody[e],o=[r];return N.NodeGuards.isReturnStatementNode(r)||o.push(b.NodeFactory.continueStatement()),b.NodeFactory.switchCaseNode(b.NodeFactory.literalNode(String(t)),o)})),b.NodeFactory.breakStatement()]))]);return I.NodeUtils.parentizeAst(r),[r]}};s([y.initializable(),c("design:type",Array)],v.prototype,"blockStatementBody",void 0),s([y.initializable(),c("design:type",Array)],v.prototype,"originalKeysIndexesInShuffledArray",void 0),s([y.initializable(),c("design:type",Array)],v.prototype,"shuffledKeys",void 0),v=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],v),t.BlockStatementControlFlowFlatteningNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}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),[i,a]=e===t?[this.blockStatementNode,this.deadCodeInjectionRootAstHostNode]:[this.deadCodeInjectionRootAstHostNode,this.blockStatementNode],s=h.NodeFactory.blockStatementNode([h.NodeFactory.ifStatementNode(h.NodeFactory.binaryExpressionNode(r,h.NodeFactory.literalNode(o),h.NodeFactory.literalNode(n)),i,a)]);return b.NodeUtils.parentizeAst(s),[s]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.BlockStatementDeadCodeInjectionNode=N},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(5),m=r(9),g=r(2),y=r(3),h=r(7),b=r(15),N=r(8),I=r(6);let v=class extends b.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.callee=r,this.expressionArguments=o}getNodeStructure(){const e=N.NodeFactory.expressionStatementNode(N.NodeFactory.callExpressionNode(N.NodeFactory.memberExpressionNode(N.NodeFactory.identifierNode(this.controlFlowStorageName),N.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.callee,...this.expressionArguments]));return I.NodeUtils.parentizeAst(e),[e]}};c([h.initializable(),d("design:type","function"==typeof(o="undefined"!=typeof ESTree&&ESTree.Expression)?o:Object)],v.prototype,"callee",void 0),c([h.initializable(),d("design:type",String)],v.prototype,"controlFlowStorageKey",void 0),c([h.initializable(),d("design:type",String)],v.prototype,"controlFlowStorageName",void 0),c([h.initializable(),d("design:type",Array)],v.prototype,"expressionArguments",void 0),v=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==p.TIdentifierNamesGeneratorFactory&&p.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==m.ICustomCodeHelperFormatter&&m.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==g.IOptions&&g.IOptions)?s:Object])],v),t.CallExpressionControlFlowStorageCallNode=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.expressionArguments=e}getNodeStructure(){const e=b.NodeFactory.identifierNode("callee"),t=[],r=this.expressionArguments.length;for(let e=0;e=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(157),m=r(5),g=r(9),y=r(2),h=r(3),b=r(7),N=r(15),I=r(8),v=r(4),S=r(6);let O=class extends N.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.controlFlowStorage=e}getNodeStructure(){const e=Array.from(this.controlFlowStorage.getStorage()).map(([e,t])=>{const r=t.getNode()[0];if(!v.NodeGuards.isExpressionStatementNode(r))throw new Error("Function node for control flow storage object should be passed inside the `ExpressionStatement` node!");return I.NodeFactory.propertyNode(I.NodeFactory.identifierNode(e),r.expression)});let t=I.NodeFactory.variableDeclarationNode([I.NodeFactory.variableDeclaratorNode(I.NodeFactory.identifierNode(this.controlFlowStorage.getStorageId()),I.NodeFactory.objectExpressionNode(e))],"const");return t=S.NodeUtils.parentizeAst(t),[t]}};c([b.initializable(),d("design:type","function"==typeof(o=void 0!==p.TControlFlowStorage&&p.TControlFlowStorage)?o:Object)],O.prototype,"controlFlowStorage",void 0),O=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),l(1,u.inject(f.ServiceIdentifiers.ICustomCodeHelperFormatter)),l(2,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(3,u.inject(f.ServiceIdentifiers.IOptions)),d("design:paramtypes",["function"==typeof(n=void 0!==m.TIdentifierNamesGeneratorFactory&&m.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==g.ICustomCodeHelperFormatter&&g.ICustomCodeHelperFormatter)?i:Object,"function"==typeof(a=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==y.IOptions&&y.IOptions)?s:Object])],O),t.ControlFlowStorageNode=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t,r,o){this.controlFlowStorageName=e,this.controlFlowStorageKey=t,this.leftValue=r,this.rightValue=o}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.callExpressionNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)),[this.leftValue,this.rightValue]));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageName",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.ExpressionWithOperatorControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(15),h=r(8),b=r(6);let N=class extends y.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.operator=e}getNodeStructure(){const e=h.NodeFactory.expressionStatementNode(h.NodeFactory.functionExpressionNode([h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")],h.NodeFactory.blockStatementNode([h.NodeFactory.returnStatementNode(h.NodeFactory.logicalExpressionNode(this.operator,h.NodeFactory.identifierNode("x"),h.NodeFactory.identifierNode("y")))])));return b.NodeUtils.parentizeAst(e),[e]}};N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.LogicalExpressionFunctionNode=N},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8),N=r(6);let I=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e,t){this.controlFlowStorageName=e,this.controlFlowStorageKey=t}getNodeStructure(){const e=b.NodeFactory.expressionStatementNode(b.NodeFactory.memberExpressionNode(b.NodeFactory.identifierNode(this.controlFlowStorageName),b.NodeFactory.identifierNode(this.controlFlowStorageKey)));return N.NodeUtils.parentizeAst(e),[e]}};s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageKey",void 0),s([y.initializable(),c("design:type",String)],I.prototype,"controlFlowStorageName",void 0),I=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],I),t.StringLiteralControlFlowStorageCallNode=I},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(5),p=r(9),m=r(2),g=r(3),y=r(7),h=r(15),b=r(8);let N=class extends h.AbstractCustomNode{constructor(e,t,r,o){super(e,t,r,o)}initialize(e){this.literalValue=e}getNodeStructure(){return[b.NodeFactory.expressionStatementNode(b.NodeFactory.literalNode(this.literalValue))]}};s([y.initializable(),c("design:type",String)],N.prototype,"literalValue",void 0),N=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),d(1,l.inject(u.ServiceIdentifiers.ICustomCodeHelperFormatter)),d(2,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(3,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(o=void 0!==f.TIdentifierNamesGeneratorFactory&&f.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==p.ICustomCodeHelperFormatter&&p.ICustomCodeHelperFormatter)?n:Object,"function"==typeof(i=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==m.IOptions&&m.IOptions)?a:Object])],N),t.StringLiteralNode=N},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(1),i=r(33),a=r(164),s=r(165),c=r(166);t.generatorsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(a.DictionaryIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(s.HexadecimalIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator),e(n.ServiceIdentifiers.IIdentifierNamesGenerator).to(c.MangledIdentifierNamesGenerator).inSingletonScope().whenTargetNamed(i.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 i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.MangledIdentifierNamesGenerator);break;case i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator:default:o=t.container.getNamed(n.ServiceIdentifiers.IIdentifierNamesGenerator,i.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator)}return e=o,o}}())})},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(36),p=r(2),m=r(3),g=r(50),y=r(23);let h=o=class extends g.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}generateForGlobalScope(){const e=this.generateNewDictionaryName();return this.preserveName(e),e}generateForLexicalScope(e){const t=[e,...y.NodeLexicalScopeUtils.getLexicalScopes(e)],r=this.generateNewDictionaryName();return this.isValidIdentifierNameInLexicalScopes(r,t)?(this.preserveNameForLexicalScope(r,e),r):this.generateForLexicalScope(e)}generateWithPrefix(){const e=`${this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:""}${this.generateNewDictionaryName()}`;return this.isValidIdentifierName(e)?(this.preserveName(e),e):this.generateWithPrefix()}generateNewDictionaryName(){if(!this.identifierNamesSet.size)throw new Error("Too many identifiers in the code, add more words to identifiers dictionary");const e=this.identifiersIterator.next();if(!e.done){const t=e.value;return this.isValidIdentifierName(t)?e.value:this.generateNewDictionaryName()}return this.identifierNamesSet=new Set(this.getIncrementedIdentifierNames([...this.identifierNamesSet])),this.identifiersIterator=this.identifierNamesSet.values(),this.generateNewDictionaryName()}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)}};h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(1,l.inject(u.ServiceIdentifiers.IOptions)),d(2,l.inject(u.ServiceIdentifiers.IArrayUtils)),c("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object,"function"==typeof(a=void 0!==f.IArrayUtils&&f.IArrayUtils)?a:Object])],h),t.DictionaryIdentifierNamesGenerator=h},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(38),g=r(26);let y=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t)}generateForGlobalScope(e){const t=this.randomGenerator.getRandomInteger(1e4,99999999),r=m.NumberUtils.toHex(t),n=g.Utils.hexadecimalPrefix.length+1,i=e?e-n:o.baseIdentifierNameLength,a=r.substr(0,i),s=`_${g.Utils.hexadecimalPrefix}${a}`;return this.isValidIdentifierName(s)?(this.preserveName(s),s):this.generateForGlobalScope(e)}generateForLexicalScope(e,t){return this.generateForGlobalScope(t)}generateWithPrefix(e){const t=this.generateForGlobalScope(e);return`${this.options.identifiersPrefix}${t}`.replace("__","_")}};y.baseIdentifierNameLength=6,y=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],y),t.HexadecimalIdentifierNamesGenerator=y},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=r(2),f=r(3),p=r(50),m=r(23);let g=o=class extends p.AbstractIdentifierNamesGenerator{constructor(e,t){super(e,t),this.previousMangledName=o.initMangledNameCharacter}generateForGlobalScope(e){const t=this.generateNewMangledName(this.previousMangledName);return this.previousMangledName=t,this.preserveName(t),t}generateForLexicalScope(e,t){const r=[e,...m.NodeLexicalScopeUtils.getLexicalScopes(e)];let n=this.getLastMangledNameForScopes(r);do{n=this.generateNewMangledName(n)}while(!this.isValidIdentifierNameInLexicalScopes(n,r));return o.lastMangledNameInScopeMap.set(e,n),this.preserveNameForLexicalScope(n,e),n}generateWithPrefix(e){const t=this.options.identifiersPrefix?`${this.options.identifiersPrefix}`:"",r=this.generateNewMangledName(this.previousMangledName),o=`${t}${r}`;return this.previousMangledName=r,this.isValidIdentifierName(o)?(this.preserveName(o),o):this.generateWithPrefix(e)}isValidIdentifierName(e){return super.isValidIdentifierName(e)&&!o.reservedNamesSet.has(e)}generateNewMangledName(e){let t=(e=>{const t=o.nameSequence,r=t.length,n=e.length,i=e=>"0".repeat(e);let a=n-1;do{const o=e[a],s=t.indexOf(o);if(s!==r-1){return e.substring(0,a)+t[s+1]+i(n-(a+1))}--a}while(a>=0);return`a${i(n)}`})(e);return this.isValidIdentifierName(t)||(t=this.generateNewMangledName(t)),t}getLastMangledNameForScopes(e){var t;for(const r of e){const e=null!==(t=o.lastMangledNameInScopeMap.get(r))&&void 0!==t?t:null;if(e)return e}return o.initMangledNameCharacter}};g.initMangledNameCharacter="9",g.lastMangledNameInScopeMap=new Map,g.nameSequence="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".split(""),g.reservedNamesSet=new Set(["byte","case","char","do","else","enum","eval","for","goto","if","in","int","let","long","new","null","this","true","try","var","void","with"]),g=o=a([d.injectable(),c(0,d.inject(l.ServiceIdentifiers.IRandomGenerator)),c(1,d.inject(l.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==f.IRandomGenerator&&f.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==u.IOptions&&u.IOptions)?i:Object])],g),t.MangledIdentifierNamesGenerator=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(13),a=r(168);t.initializingTransformersModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.INodeTransformer).to(a.CommentsTransformer).whenTargetNamed(i.NodeTransformer.CommentsTransformer)})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(2),m=r(3),g=r(10),y=r(11),h=r(65),b=r(4);let N=o=class extends y.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case g.TransformationStage.Initializing:return{leave:e=>{if(b.NodeGuards.isProgramNode(e))return this.transformNode(e)}};default:return null}}transformNode(e){if(!e.comments||!e.comments.length)return e;const t=this.transformComments(e.comments);return 0===t.length?e:e.body.length?(f.traverse(e,{enter:r=>{if(r===e)return;const o=t.findIndex(e=>e.range&&r.range&&e.range[0]0&&(e.trailingComments=t.reverse()),e):(e.leadingComments=t,e)}transformComments(e){return e.filter(e=>o.preservedWords.some(t=>e.value.includes(t))||h.ConditionalCommentObfuscatingGuard.isConditionalComment(e)).reverse()}};N.preservedWords=["@license","@preserve"],N=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],N),t.CommentsTransformer=N},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(170);t.nodeModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IScopeIdentifiersTraverser).to(i.ScopeIdentifiersTraverser).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(171),u=r(4);let f=o=class{constructor(e){this.scopeAnalyzer=e}traverse(e,t,r){this.scopeAnalyzer.analyze(e);const o=this.scopeAnalyzer.acquireScope(e);this.traverseScopeVariables(o,o,r)}traverseScopeVariables(e,t,r){const n=t.variableScope,i=u.NodeGuards.isNodeWithBlockLexicalScope(n.block)?n.block:null,a=o.globalScopeNames.includes(n.type);if(i){for(const s of t.variables){if(s.name===o.argumentsVariableName)continue;r({isGlobalDeclaration:a,isBubblingDeclaration:s.identifiers.some(e=>e.parentNode&&u.NodeGuards.isPropertyNode(e.parentNode)&&e.parentNode.shorthand),rootScope:e,variable:s,variableScope:n,variableLexicalScopeNode:i})}for(const o of t.childScopes)this.traverseScopeVariables(e,o,r)}}};f.argumentsVariableName="arguments",f.globalScopeNames=["global","module"],f=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IScopeAnalyzer)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IScopeAnalyzer&&l.IScopeAnalyzer)?n:Object])],f),t.ScopeIdentifiersTraverser=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1);t.nodeTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.Factory__INodeTransformer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeTransformer))})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(17),n=r(0),i=r(1),a=r(39),s=r(66),c=r(13),d=r(174),l=r(175),u=r(176),f=r(177),p=r(179),m=r(180),g=r(181);t.obfuscatingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(u.LabeledStatementTransformer).whenTargetNamed(c.NodeTransformer.LabeledStatementTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.LiteralTransformer).whenTargetNamed(c.NodeTransformer.LiteralTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(g.ScopeIdentifiersTransformer).whenTargetNamed(c.NodeTransformer.ScopeIdentifiersTransformer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(l.BooleanLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(p.NumberLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IObfuscatingReplacer).to(m.StringLiteralObfuscatingReplacer).whenTargetNamed(s.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer),e(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer).to(d.BaseIdentifierObfuscatingReplacer).whenTargetNamed(a.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),e(i.ServiceIdentifiers.Factory__IObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IObfuscatingReplacer)),e(i.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.IIdentifierObfuscatingReplacer))})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(5),u=r(2),f=r(40),p=r(8);let m=class extends f.AbstractObfuscatingReplacer{constructor(e,t){super(t),this.blockScopesMap=new Map,this.identifierNamesGenerator=e(t)}replace(e,t){let r=e.name;if(this.blockScopesMap.has(t)){const e=this.blockScopesMap.get(t);e.has(r)&&(r=e.get(r))}return p.NodeFactory.identifierNode(r)}storeGlobalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateWithPrefix();this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}storeLocalName(e,t){const r=e.name;if(this.isReservedName(r))return;const o=this.identifierNamesGenerator.generateForLexicalScope(t);this.blockScopesMap.has(t)||this.blockScopesMap.set(t,new Map),this.blockScopesMap.get(t).set(r,o)}preserveName(e){this.identifierNamesGenerator.preserveName(e.name)}preserveNameForLexicalScope(e,t){this.identifierNamesGenerator.preserveNameForLexicalScope(e.name,t)}isReservedName(e){return!!this.options.reservedNames.length&&this.options.reservedNames.some(t=>null!==new RegExp(t,"g").exec(e))}};m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.TIdentifierNamesGeneratorFactory&&l.TIdentifierNamesGeneratorFactory)?o:Object,"function"==typeof(n=void 0!==u.IOptions&&u.IOptions)?n:Object])],m),t.BaseIdentifierObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(40),f=r(8);let p=o=class extends u.AbstractObfuscatingReplacer{constructor(e){super(e)}static getTrueUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",o.getFalseUnaryExpressionNode())}static getFalseUnaryExpressionNode(){return f.NodeFactory.unaryExpressionNode("!",f.NodeFactory.arrayExpressionNode())}replace(e){const t=e.value;if("boolean"!=typeof t)throw new Error("`BooleanLiteralObfuscatingReplacer` should accept only literals with `boolean` value");return t?o.getTrueUnaryExpressionNode():o.getFalseUnaryExpressionNode()}};p=o=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.BooleanLiteralObfuscatingReplacer=p},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(12)),p=r(51),m=r(2),g=r(3),y=r(39),h=r(10),b=r(11),N=r(4),I=r(23);let v=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.identifierObfuscatingReplacer=e(y.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer)}getVisitor(e){switch(e){case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&N.NodeGuards.isLabeledStatementNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){const r=I.NodeLexicalScopeUtils.getLexicalScope(e);return r?(this.storeLabeledStatementName(e,r),this.replaceLabeledStatementName(e,r),e):e}storeLabeledStatementName(e,t){this.identifierObfuscatingReplacer.storeLocalName(e.label,t)}replaceLabeledStatementName(e,t){f.replace(e,{enter:(e,r)=>{if(r&&N.NodeGuards.isLabelIdentifierNode(e,r)){const r=this.identifierObfuscatingReplacer.replace(e,t);e.name=r.name}}})}};v=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),c(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(2,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(o=void 0!==p.TIdentifierObfuscatingReplacerFactory&&p.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==g.IRandomGenerator&&g.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==m.IOptions&&m.IOptions)?i:Object])],v),t.LabeledStatementTransformer=v},function(e,t,r){"use strict";var o,n,i,a,s,c=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},d=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},l=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=r(178),m=r(32),g=r(2),y=r(3),h=r(67),b=r(66),N=r(10),I=r(11),v=r(8),S=r(4),O=r(45),C=r(19),j=r(6);let _=class extends I.AbstractNodeTransformer{constructor(e,t,r,o,n){super(t,r),this.literalObfuscatingReplacerFactory=e,this.stringArrayStorageAnalyzer=o,this.escapeSequenceEncoder=n}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(S.NodeGuards.isProgramNode(e)&&this.analyzeNode(e),t&&S.NodeGuards.isLiteralNode(e)&&!C.NodeMetadata.isReplacedLiteral(e))return this.transformNode(e,t)}};case N.TransformationStage.Finalizing:return{enter:(e,t)=>{if(t&&S.NodeGuards.isLiteralNode(e))return this.encodeLiteralNodeToEscapeSequence(e,t)}};default:return null}}analyzeNode(e){this.stringArrayStorageAnalyzer.analyze(e)}transformNode(e,t){if(O.NodeLiteralUtils.isProhibitedLiteralNode(e,t))return e;let r;switch(typeof e.value){case"boolean":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.BooleanLiteralObfuscatingReplacer).replace(e);break;case"number":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.NumberLiteralObfuscatingReplacer).replace(e);break;case"string":r=this.literalObfuscatingReplacerFactory(b.LiteralObfuscatingReplacer.StringLiteralObfuscatingReplacer).replace(e);break;default:r=e}return j.NodeUtils.parentizeNode(r,t),r}encodeLiteralNodeToEscapeSequence(e,t){return"string"!=typeof e.value?e:v.NodeFactory.literalNode(this.escapeSequenceEncoder.encode(e.value,this.options.unicodeEscapeSequence))}};_=c([u.injectable(),l(0,u.inject(f.ServiceIdentifiers.Factory__IObfuscatingReplacer)),l(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),l(2,u.inject(f.ServiceIdentifiers.IOptions)),l(3,u.inject(f.ServiceIdentifiers.IStringArrayStorageAnalyzer)),l(4,u.inject(f.ServiceIdentifiers.IEscapeSequenceEncoder)),d("design:paramtypes",["function"==typeof(o=void 0!==p.TLiteralObfuscatingReplacerFactory&&p.TLiteralObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IStringArrayStorageAnalyzer&&h.IStringArrayStorageAnalyzer)?a:Object,"function"==typeof(s=void 0!==m.IEscapeSequenceEncoder&&m.IEscapeSequenceEncoder)?s:Object])],_),t.LiteralTransformer=_},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(2),l=r(40),u=r(8),f=r(38),p=r(26);let m=class extends l.AbstractObfuscatingReplacer{constructor(e){super(e),this.numberLiteralCache=new Map}replace(e){const t=e.value;if("number"!=typeof t)throw new Error("`NumberLiteralObfuscatingReplacer` should accept only literals with `number` value");let r;return this.numberLiteralCache.has(t)?r=this.numberLiteralCache.get(t):(r=f.NumberUtils.isCeil(t)?`${p.Utils.hexadecimalPrefix}${f.NumberUtils.toHex(t)}`:String(t),this.numberLiteralCache.set(t,r)),u.NodeFactory.literalNode(t,r)}};m=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IOptions&&d.IOptions)?o:Object])],m),t.NumberLiteralObfuscatingReplacer=m},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(2),p=r(37),m=r(67),g=r(28),y=r(40),h=r(19),b=r(8),N=r(38),I=r(26);let v=o=class extends y.AbstractObfuscatingReplacer{constructor(e,t,r){super(r),this.nodesCache=new Map,this.stringArrayStorage=e,this.stringArrayStorageAnalyzer=t}static getHexadecimalLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}static getRc4KeyLiteralNode(e){const t=b.NodeFactory.literalNode(e);return h.NodeMetadata.set(t,{replacedLiteral:!0}),t}initialize(){this.options.shuffleStringArray&&this.stringArrayStorage.shuffleStorage(),this.options.rotateStringArray&&this.stringArrayStorage.rotateStorage()}replace(e){const t=e.value;if("string"!=typeof t)throw new Error("`StringLiteralObfuscatingReplacer` should accept only literals with `string` value");const r=this.stringArrayStorageAnalyzer.getItemDataForLiteralNode(e),o=`${t}-${Boolean(r)}`;if(this.nodesCache.has(o)&&this.options.stringArrayEncoding!==g.StringArrayEncoding.Rc4)return this.nodesCache.get(o);const n=r?this.replaceWithStringArrayCallNode(r):this.replaceWithLiteralNode(t);return this.nodesCache.set(o,n),n}replaceWithLiteralNode(e){return b.NodeFactory.literalNode(e)}replaceWithStringArrayCallNode(e){const{index:t,decodeKey:r}=e,n=`${I.Utils.hexadecimalPrefix}${N.NumberUtils.toHex(t)}`,i=[o.getHexadecimalLiteralNode(n)];r&&i.push(o.getRc4KeyLiteralNode(r));const a=b.NodeFactory.identifierNode(this.stringArrayStorage.getStorageCallsWrapperName());return b.NodeFactory.callExpressionNode(a,i)}};s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],v.prototype,"initialize",null),v=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.IStringArrayStorage)),d(1,l.inject(u.ServiceIdentifiers.IStringArrayStorageAnalyzer)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==p.IStringArrayStorage&&p.IStringArrayStorage)?n:Object,"function"==typeof(i=void 0!==m.IStringArrayStorageAnalyzer&&m.IStringArrayStorageAnalyzer)?i:Object,"function"==typeof(a=void 0!==f.IOptions&&f.IOptions)?a:Object])],v),t.StringLiteralObfuscatingReplacer=v},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},l=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const u=r(0),f=r(1),p=l(r(12)),m=r(51),g=r(2),y=r(3),h=r(68),b=r(39),N=r(10),I=r(11),v=r(4),S=r(19);let O=class extends I.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.lexicalScopesWithObjectPatternWithoutDeclarationMap=new Map,this.identifierObfuscatingReplacer=e(b.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o}getVisitor(e){switch(e){case N.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&v.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,e=>{const{isGlobalDeclaration:t,variable:r,variableLexicalScopeNode:o}=e;if(!this.options.renameGlobals&&t){if(!r.defs.every(e=>"ImportBinding"===e.type||"CatchClause"===e.type))return}this.transformScopeVariableIdentifiers(r,o,t)}),e}transformScopeVariableIdentifiers(e,t,r){var o;const n=null!==(o=e.identifiers[0])&&void 0!==o?o:null;n&&this.isReplaceableIdentifierNode(n,t,e)&&(this.storeIdentifierName(n,t,r),this.replaceIdentifierName(n,t,e))}storeIdentifierName(e,t,r){r?this.identifierObfuscatingReplacer.storeGlobalName(e,t):this.identifierObfuscatingReplacer.storeLocalName(e,t)}replaceIdentifierName(e,t,r){const o=this.identifierObfuscatingReplacer.replace(e,t);r.identifiers.forEach(e=>{e.name=o.name}),r.references.forEach(t=>{t.identifier.name=e.name})}isReplaceableIdentifierNode(e,t,r){const o=e.parentNode;return!(!o||S.NodeMetadata.isIgnoredNode(e)||this.isProhibitedPropertyNode(e,o)||this.isProhibitedClassDeclarationNameIdentifierNode(r,e,o)||this.isProhibitedExportNamedClassDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,o)||this.isProhibitedExportNamedVariableDeclarationIdentifierNode(e,o)||this.isProhibitedImportSpecifierNode(e,o)||this.isProhibitedVariableNameUsedInObjectPatternNode(r,e,t)||v.NodeGuards.isLabelIdentifierNode(e,o))}isProhibitedClassDeclarationNameIdentifierNode(e,t,r){return v.NodeGuards.isClassDeclarationNode(e.scope.block)&&v.NodeGuards.isClassDeclarationNode(r)&&r.id===t}isProhibitedExportNamedClassDeclarationIdentifierNode(e,t){return v.NodeGuards.isClassDeclarationNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedFunctionDeclarationIdentifierNode(e,t){return v.NodeGuards.isFunctionDeclarationNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode)}isProhibitedExportNamedVariableDeclarationIdentifierNode(e,t){return v.NodeGuards.isVariableDeclaratorNode(t)&&t.id===e&&!!t.parentNode&&v.NodeGuards.isVariableDeclarationNode(t.parentNode)&&!!t.parentNode.parentNode&&v.NodeGuards.isExportNamedDeclarationNode(t.parentNode.parentNode)}isProhibitedImportSpecifierNode(e,t){return v.NodeGuards.isImportSpecifierNode(t)&&t.imported.name===t.local.name}isProhibitedPropertyNode(e,t){const r=v.NodeGuards.isPropertyNode(t)&&!t.computed&&t.key===e,o=v.NodeGuards.isAssignmentPatternNode(t)&&t.left===e&&!!t.parentNode&&v.NodeGuards.isPropertyNode(t.parentNode)&&t.left===t.parentNode.key;return r||o}isProhibitedVariableNameUsedInObjectPatternNode(e,t,r){let o=this.lexicalScopesWithObjectPatternWithoutDeclarationMap.get(r);if(!1===o)return!1;if(!e.defs.some(e=>"var"===e.kind))return!1;let n=!1;return p.traverse(r,{enter:(e,r)=>{if(v.NodeGuards.isObjectPatternNode(e)&&r&&v.NodeGuards.isAssignmentExpressionNode(r)){o=!0;const r=e.properties;for(const e of r)if(!e.computed&&e.shorthand&&v.NodeGuards.isIdentifierNode(e.key)&&t.name===e.key.name)return n=!0,p.VisitorOption.Break}}}),this.lexicalScopesWithObjectPatternWithoutDeclarationMap.set(r,null!=o&&o),n}};O=s([u.injectable(),d(0,u.inject(f.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,u.inject(f.ServiceIdentifiers.IRandomGenerator)),d(2,u.inject(f.ServiceIdentifiers.IOptions)),d(3,u.inject(f.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==m.TIdentifierObfuscatingReplacerFactory&&m.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==y.IRandomGenerator&&y.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==g.IOptions&&g.IOptions)?i:Object,"function"==typeof(a=void 0!==h.IScopeIdentifiersTraverser&&h.IScopeIdentifiersTraverser)?a:Object])],O),t.ScopeIdentifiersTransformer=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(183),a=r(190);t.optionsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IOptions).to(i.Options).inSingletonScope(),e(n.ServiceIdentifiers.IOptionsNormalizer).to(a.OptionsNormalizer).inSingletonScope()})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(31),m=r(0),g=r(1),y=r(69),h=r(184),b=r(185),N=r(186),I=r(33),v=r(24),S=r(34),O=r(28),C=r(41),j=r(187),_=r(188);let R=o=class{constructor(e,t){Object.assign(this,C.DEFAULT_PRESET,e);const r=y.validateSync(this,o.validatorOptions);if(r.length)throw new ReferenceError(`Validation failed. errors:\n${j.ValidationErrorsFormatter.format(r)}`);Object.assign(this,t.normalize(this))}};R.validatorOptions={validationError:{target:!1}},l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"compact",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"controlFlowFlattening",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"controlFlowFlatteningThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"deadCodeInjection",void 0),l([y.IsNumber(),u("design:type",Number)],R.prototype,"deadCodeInjectionThreshold",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtection",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"debugProtectionInterval",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"disableConsoleOutput",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),_.IsAllowedForObfuscationTargets([v.ObfuscationTarget.Browser,v.ObfuscationTarget.BrowserNoEval]),u("design:type",Array)],R.prototype,"domainLock",void 0),l([y.IsIn([I.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator,I.IdentifierNamesGenerator.HexadecimalIdentifierNamesGenerator,I.IdentifierNamesGenerator.MangledIdentifierNamesGenerator]),u("design:type","function"==typeof(n=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?n:Object)],R.prototype,"identifierNamesGenerator",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"identifiersPrefix",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),y.ValidateIf(e=>e.identifierNamesGenerator===I.IdentifierNamesGenerator.DictionaryIdentifierNamesGenerator),y.ArrayNotEmpty(),u("design:type",Array)],R.prototype,"identifiersDictionary",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"inputFileName",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"log",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"renameGlobals",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedNames",void 0),l([y.IsArray(),y.ArrayUnique(),y.IsString({each:!0}),u("design:type",Array)],R.prototype,"reservedStrings",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"rotateStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"selfDefending",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"shuffleStringArray",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"sourceMap",void 0),l([y.IsString(),y.ValidateIf(e=>Boolean(e.sourceMapBaseUrl)),y.IsUrl({require_protocol:!0,require_tld:!1,require_valid_protocol:!0}),u("design:type",String)],R.prototype,"sourceMapBaseUrl",void 0),l([y.IsString(),u("design:type",String)],R.prototype,"sourceMapFileName",void 0),l([y.IsIn([S.SourceMapMode.Inline,S.SourceMapMode.Separate]),u("design:type","function"==typeof(i=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?i:Object)],R.prototype,"sourceMapMode",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"splitStrings",void 0),l([y.IsNumber(),y.ValidateIf(e=>Boolean(e.splitStrings)),y.Min(1),u("design:type",Number)],R.prototype,"splitStringsChunkLength",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"stringArray",void 0),l([y.IsIn([!0,!1,O.StringArrayEncoding.Base64,O.StringArrayEncoding.Rc4]),u("design:type","function"==typeof(a=void 0!==b.TStringArrayEncoding&&b.TStringArrayEncoding)?a:Object)],R.prototype,"stringArrayEncoding",void 0),l([y.IsNumber(),y.Min(0),y.Max(1),u("design:type",Number)],R.prototype,"stringArrayThreshold",void 0),l([y.IsIn([v.ObfuscationTarget.Browser,v.ObfuscationTarget.BrowserNoEval,v.ObfuscationTarget.Node]),u("design:type","function"==typeof(s=void 0!==p.TypeFromEnum&&p.TypeFromEnum)?s:Object)],R.prototype,"target",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"transformObjectKeys",void 0),l([y.IsBoolean(),u("design:type",Boolean)],R.prototype,"unicodeEscapeSequence",void 0),R=o=l([m.injectable(),f(0,m.inject(g.ServiceIdentifiers.TInputOptions)),f(1,m.inject(g.ServiceIdentifiers.IOptionsNormalizer)),u("design:paramtypes",["function"==typeof(c=void 0!==h.TInputOptions&&h.TInputOptions)?c:Object,"function"==typeof(d=void 0!==N.IOptionsNormalizer&&N.IOptionsNormalizer)?d:Object])],R),t.Options=R},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const n=r(69),i=o(r(189)),a=r(42),s=r(41);t.IsAllowedForObfuscationTargets=function(e,t){return(r,o)=>{n.registerDecorator({propertyName:o,constraints:[e],name:"IsAllowedForObfuscationTargets",options:t,target:r.constructor,validator:{validate(t,r){const n=r.object,a=s.DEFAULT_PRESET[o];return i.default(t,a)||e.includes(n.target)},defaultMessage:t=>`This option allowed only for obfuscation targets: ${e.join(`${a.StringSeparator.Comma} `)}`}})}}},function(e,t){e.exports=require("fast-deep-equal")},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=r(191),s=r(192),c=r(193),d=r(194),l=r(195),u=r(196),f=r(197),p=r(198),m=r(199),g=r(200),y=r(201),h=r(202),b=r(203);let N=o=class{normalize(e){let t=Object.assign({},e);for(const e of o.normalizerRules)t=e(t);return t}};N.normalizerRules=[a.ControlFlowFlatteningThresholdRule,s.DeadCodeInjectionRule,c.DeadCodeInjectionThresholdRule,d.DomainLockRule,l.InputFileNameRule,u.SeedRule,f.SelfDefendingRule,p.SourceMapBaseUrlRule,m.SourceMapFileNameRule,g.SplitStringsChunkLengthRule,y.StringArrayRule,h.StringArrayEncodingRule,b.StringArrayThresholdRule],N=o=n([i.injectable()],N),t.OptionsNormalizer=N},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(41);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});const o=r(42);t.InputFileNameRule=e=>{let{inputFileName:t}=e;return t&&(t=t.replace(/^\/+/,"").split(o.StringSeparator.Dot).slice(0,-1).join(o.StringSeparator.Dot)||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});const o=r(42);t.SourceMapFileNameRule=e=>{let{sourceMapFileName:t}=e;if(t){t=t.replace(/^\/+/,"").replace(/(?:\.js)?(?:\.map)?$/,"");let r=t.split(o.StringSeparator.Dot);const n=r.length,i=r[n-1];n>1&&i.length<=3&&(r=r.slice(0,-1)),t=r.join(o.StringSeparator.Dot),e=Object.assign(Object.assign({},e),{sourceMapFileName:`${t}.js.map`})}return 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,shuffleStringArray:!1,stringArray:!1,stringArrayEncoding:!1,stringArrayThreshold:0})),e)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(28);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(17),n=r(0),i=r(1),a=r(13),s=r(70),c=r(205),d=r(65),l=r(206),u=r(210),f=r(212),p=r(213),m=r(215),g=r(216),y=r(217);t.preparingTransformersModule=new n.ContainerModule(e=>{e(i.ServiceIdentifiers.INodeTransformer).to(l.CustomCodeHelpersTransformer).whenTargetNamed(a.NodeTransformer.CustomCodeHelpersTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(u.EvalCallExpressionTransformer).whenTargetNamed(a.NodeTransformer.EvalCallExpressionTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(f.MetadataTransformer).whenTargetNamed(a.NodeTransformer.MetadataTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(p.ObfuscatingGuardsTransformer).whenTargetNamed(a.NodeTransformer.ObfuscatingGuardsTransformer),e(i.ServiceIdentifiers.INodeTransformer).to(m.ParentificationTransformer).whenTargetNamed(a.NodeTransformer.ParentificationTransformer),e(i.ServiceIdentifiers.INodeGuard).to(c.BlackListObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.BlackListObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(d.ConditionalCommentObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ConditionalCommentObfuscatingGuard),e(i.ServiceIdentifiers.INodeGuard).to(g.ReservedStringObfuscatingGuard).inSingletonScope().whenTargetNamed(s.ObfuscatingGuard.ReservedStringObfuscatingGuard),e(i.ServiceIdentifiers.INodeTransformer).to(y.VariablePreserveTransformer).whenTargetNamed(a.NodeTransformer.VariablePreserveTransformer),e(i.ServiceIdentifiers.Factory__INodeGuard).toFactory(o.InversifyContainerFacade.getCacheFactory(i.ServiceIdentifiers.INodeGuard))})},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},i=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)};Object.defineProperty(t,"__esModule",{value:!0});const a=r(0),s=r(4);let c=o=class{constructor(){this.blackListGuardsLength=o.blackListGuards.length}check(e){for(let t=0;t=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const f=r(0),p=r(1),m=r(207),g=r(208),y=r(2),h=r(3),b=r(209),N=r(64),I=r(13),v=r(25),S=r(10),O=r(11),C=r(4);let j=class extends O.AbstractNodeTransformer{constructor(e,t,r,o,n,i){super(n,i),this.runAfter=[I.NodeTransformer.ParentificationTransformer,I.NodeTransformer.VariablePreserveTransformer],this.callsGraphData=[],this.callsGraphAnalyzer=e,this.prevailingKindOfVariablesAnalyzer=t,this.obfuscationEventEmitter=r,this.customCodeHelperGroupStorage=o}getVisitor(e){switch(e){case S.TransformationStage.Preparing:return{leave:(e,t)=>{if(C.NodeGuards.isProgramNode(e))return this.analyzeNode(e,t),this.appendCustomNodesBeforeObfuscation(e,t),this.transformNode(e,t)}};case S.TransformationStage.Finalizing:return{leave:(e,t)=>{C.NodeGuards.isProgramNode(e)&&this.appendCustomNodesAfterObfuscation(e,t)}};default:return null}}analyzeNode(e,t){this.callsGraphData=this.callsGraphAnalyzer.analyze(e),this.prevailingKindOfVariablesAnalyzer.analyze(e)}transformNode(e,t){return e}appendCustomNodesBeforeObfuscation(e,t){this.customCodeHelperGroupStorage.getStorage().forEach(e=>{e.initialize(),this.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendNodes.bind(e))}),this.obfuscationEventEmitter.emit(v.ObfuscationEvent.BeforeObfuscation,e,this.callsGraphData)}appendCustomNodesAfterObfuscation(e,t){this.obfuscationEventEmitter.emit(v.ObfuscationEvent.AfterObfuscation,e,this.callsGraphData)}};j=d([f.injectable(),u(0,f.inject(p.ServiceIdentifiers.ICallsGraphAnalyzer)),u(1,f.inject(p.ServiceIdentifiers.IPrevailingKindOfVariablesAnalyzer)),u(2,f.inject(p.ServiceIdentifiers.IObfuscationEventEmitter)),u(3,f.inject(p.ServiceIdentifiers.TCustomNodeGroupStorage)),u(4,f.inject(p.ServiceIdentifiers.IRandomGenerator)),u(5,f.inject(p.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(o=void 0!==b.ICallsGraphAnalyzer&&b.ICallsGraphAnalyzer)?o:Object,"function"==typeof(n=void 0!==N.IPrevailingKindOfVariablesAnalyzer&&N.IPrevailingKindOfVariablesAnalyzer)?n:Object,"function"==typeof(i=void 0!==g.IObfuscationEventEmitter&&g.IObfuscationEventEmitter)?i:Object,"function"==typeof(a=void 0!==m.TCustomCodeHelperGroupStorage&&m.TCustomCodeHelperGroupStorage)?a:Object,"function"==typeof(s=void 0!==h.IRandomGenerator&&h.IRandomGenerator)?s:Object,"function"==typeof(c=void 0!==y.IOptions&&y.IOptions)?c:Object])],j),t.CustomCodeHelpersTransformer=j},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},s=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},c=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},d=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=d(r(211)),p=r(2),m=r(3),g=r(13),y=r(10),h=r(11),b=r(8),N=r(4),I=r(6);let v=o=class extends h.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.evalRootAstHostNodeSet=new Set}static extractEvalStringFromCallExpressionArgument(e){return N.NodeGuards.isLiteralNode(e)?o.extractEvalStringFromLiteralNode(e):N.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 y.TransformationStage.Preparing:return{enter:(e,t)=>{if(t&&N.NodeGuards.isCallExpressionNode(e)&&N.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return this.transformNode(e,t)}};case y.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 i;try{i=I.NodeUtils.convertCodeToStructure(n)}catch(t){return e}const a=b.NodeFactory.functionExpressionNode([],b.NodeFactory.blockStatementNode(i));return I.NodeUtils.parentizeAst(a),I.NodeUtils.parentizeNode(a,t),this.evalRootAstHostNodeSet.add(a),a}restoreNode(e,t){const r=e.body.body,o=I.NodeUtils.convertStructureToCode(r);return b.NodeFactory.callExpressionNode(b.NodeFactory.identifierNode("eval"),[b.NodeFactory.literalNode(f.default(o))])}isEvalRootAstHostNode(e){return N.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}};v=o=a([l.injectable(),c(0,l.inject(u.ServiceIdentifiers.IRandomGenerator)),c(1,l.inject(u.ServiceIdentifiers.IOptions)),s("design:paramtypes",["function"==typeof(n=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==p.IOptions&&p.IOptions)?i:Object])],v),t.EvalCallExpressionTransformer=v},function(e,t){e.exports=require("js-string-escape")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(13),p=r(10),m=r(11),g=r(4),y=r(19);let h=class extends m.AbstractNodeTransformer{constructor(e,t){super(e,t),this.runAfter=[f.NodeTransformer.ParentificationTransformer,f.NodeTransformer.VariablePreserveTransformer]}getVisitor(e){switch(e){case p.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return y.NodeMetadata.set(e,{ignoredNode:!1}),g.NodeGuards.isLiteralNode(e)&&y.NodeMetadata.set(e,{replacedLiteral:!1}),e}};h=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],h),t.MetadataTransformer=h},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(214),p=r(2),m=r(3),g=r(13),y=r(70),h=r(10),b=r(11),N=r(19);let I=o=class extends b.AbstractNodeTransformer{constructor(e,t,r){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer,g.NodeTransformer.VariablePreserveTransformer],this.obfuscatingGuards=o.obfuscatingGuardsList.map(e)}getVisitor(e){switch(e){case h.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 N.NodeMetadata.set(e,{ignoredNode:!r}),e}};I.obfuscatingGuardsList=[y.ObfuscatingGuard.BlackListObfuscatingGuard,y.ObfuscatingGuard.ConditionalCommentObfuscatingGuard,y.ObfuscatingGuard.ReservedStringObfuscatingGuard],I=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__INodeGuard)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TObfuscatingGuardFactory&&f.TObfuscatingGuardFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],I),t.ObfuscatingGuardsTransformer=I},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(10),p=r(11),m=r(6);let g=class extends p.AbstractNodeTransformer{constructor(e,t){super(e,t)}getVisitor(e){switch(e){case f.TransformationStage.Preparing:return{enter:(e,t)=>this.transformNode(e,t)};default:return null}}transformNode(e,t){return m.NodeUtils.parentizeNode(e,t)}};g=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],g),t.ParentificationTransformer=g},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(2),d=r(1),l=r(4);let u=class{constructor(e){this.options=e}check(e){return!this.options.reservedStrings.length||!l.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))}};u=n([s.injectable(),a(0,s.inject(d.ServiceIdentifiers.IOptions)),i("design:paramtypes",["function"==typeof(o=void 0!==c.IOptions&&c.IOptions)?o:Object])],u),t.ReservedStringObfuscatingGuard=u},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(51),f=r(2),p=r(3),m=r(68),g=r(13),y=r(1),h=r(10),b=r(11),N=r(39),I=r(4);let v=class extends b.AbstractNodeTransformer{constructor(e,t,r,o){super(t,r),this.runAfter=[g.NodeTransformer.ParentificationTransformer],this.identifierObfuscatingReplacer=e(N.IdentifierObfuscatingReplacer.BaseIdentifierObfuscatingReplacer),this.scopeIdentifiersTraverser=o,this.preserveScopeVariableIdentifiers=this.preserveScopeVariableIdentifiers.bind(this)}getVisitor(e){switch(e){case h.TransformationStage.Preparing:case h.TransformationStage.Converting:case h.TransformationStage.Obfuscating:return{enter:(e,t)=>{if(t&&I.NodeGuards.isProgramNode(e))return this.transformNode(e,t)}};default:return null}}transformNode(e,t){return this.scopeIdentifiersTraverser.traverse(e,t,this.preserveScopeVariableIdentifiers),e}preserveScopeVariableIdentifiers(e){const{isGlobalDeclaration:t,isBubblingDeclaration:r,variable:o,variableScope:n}=e;for(const e of o.identifiers)t||r?this.preserveIdentifierNameForRootLexicalScope(e):this.preserveIdentifierNameForLexicalScope(e,n)}preserveIdentifierNameForRootLexicalScope(e){this.identifierObfuscatingReplacer.preserveName(e)}preserveIdentifierNameForLexicalScope(e,t){const r=I.NodeGuards.isNodeWithLexicalScope(t.block)?t.block:null;r&&this.identifierObfuscatingReplacer.preserveNameForLexicalScope(e,r)}};v=s([l.injectable(),d(0,l.inject(y.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),d(1,l.inject(y.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(y.ServiceIdentifiers.IOptions)),d(3,l.inject(y.ServiceIdentifiers.IScopeIdentifiersTraverser)),c("design:paramtypes",["function"==typeof(o=void 0!==u.TIdentifierObfuscatingReplacerFactory&&u.TIdentifierObfuscatingReplacerFactory)?o:Object,"function"==typeof(n=void 0!==p.IRandomGenerator&&p.IRandomGenerator)?n:Object,"function"==typeof(i=void 0!==f.IOptions&&f.IOptions)?i:Object,"function"==typeof(a=void 0!==m.IScopeIdentifiersTraverser&&m.IScopeIdentifiersTraverser)?a:Object])],v),t.VariablePreserveTransformer=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(219),a=r(220),s=r(222);t.storagesModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.TCustomNodeGroupStorage).to(a.CustomCodeHelperGroupStorage).inSingletonScope(),e(n.ServiceIdentifiers.IStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(n.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(i.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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(2),u=r(3),f=r(52);let p=class extends f.MapStorage{constructor(e,t){super(e,t)}};p=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.IRandomGenerator)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==u.IRandomGenerator&&u.IRandomGenerator)?o:Object,"function"==typeof(n=void 0!==l.IOptions&&l.IOptions)?n:Object])],p),t.ControlFlowStorage=p},function(e,t,r){"use strict";var o,n,i,a,s=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},c=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},d=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const l=r(0),u=r(1),f=r(221),p=r(2),m=r(3),g=r(63),y=r(52);let h=o=class extends y.MapStorage{constructor(e,t,r){super(t,r),this.customCodeHelperGroupFactory=e}initialize(){super.initialize(),o.customCodeHelperGroupsList.forEach(e=>{const t=this.customCodeHelperGroupFactory(e);this.storage.set(e,t)})}};h.customCodeHelperGroupsList=[g.CustomCodeHelperGroup.ConsoleOutput,g.CustomCodeHelperGroup.DebugProtection,g.CustomCodeHelperGroup.DomainLock,g.CustomCodeHelperGroup.SelfDefending,g.CustomCodeHelperGroup.StringArray],s([l.postConstruct(),c("design:type",Function),c("design:paramtypes",[]),c("design:returntype",void 0)],h.prototype,"initialize",null),h=o=s([l.injectable(),d(0,l.inject(u.ServiceIdentifiers.Factory__ICustomCodeHelperGroup)),d(1,l.inject(u.ServiceIdentifiers.IRandomGenerator)),d(2,l.inject(u.ServiceIdentifiers.IOptions)),c("design:paramtypes",["function"==typeof(n=void 0!==f.TCustomCodeHelperGroupFactory&&f.TCustomCodeHelperGroupFactory)?n:Object,"function"==typeof(i=void 0!==m.IRandomGenerator&&m.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==p.IOptions&&p.IOptions)?a:Object])],h),t.CustomCodeHelperGroupStorage=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d,l=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},u=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},f=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=r(5),y=r(36),h=r(49),b=r(32),N=r(2),I=r(3),v=r(28),S=r(52);let O=o=class extends S.MapStorage{constructor(e,t,r,n,i,a){super(r,n),this.rc4EncodedValuesSourcesCache=new Map,this.rotationAmount=0,this.identifierNamesGenerator=e(n),this.arrayUtils=t,this.cryptUtils=i,this.escapeSequenceEncoder=a,this.rc4Keys=this.randomGenerator.getRandomGenerator().n(()=>this.randomGenerator.getRandomGenerator().string({length:o.rc4KeyLength}),o.rc4KeysCount)}initialize(){super.initialize(),this.rotationAmount=this.options.rotateStringArray?this.randomGenerator.getRandomInteger(o.minimumRotationAmount,o.maximumRotationAmount):0}get(e){return this.getOrSetIfDoesNotExist(e)}getRotationAmount(){return this.rotationAmount}getStorageName(){return this.getStorageId()}getStorageId(){return this.stringArrayStorageName||(this.stringArrayStorageName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageName}getStorageCallsWrapperName(){return this.stringArrayStorageCallsWrapperName||(this.stringArrayStorageCallsWrapperName=this.identifierNamesGenerator.generateWithPrefix(o.stringArrayNameLength)),this.stringArrayStorageCallsWrapperName}rotateStorage(){this.getLength()&&(this.storage=new Map(this.arrayUtils.rotate(Array.from(this.storage.entries()),this.rotationAmount)))}shuffleStorage(){this.storage=new Map(this.arrayUtils.shuffle(Array.from(this.storage.entries())).map(([e,t],r)=>(t.index=r,[e,t])).sort(([,e],[,t])=>e.index-t.index))}toString(){return Array.from(this.storage.values()).map(e=>`'${this.escapeSequenceEncoder.encode(e.encodedValue,this.options.unicodeEscapeSequence)}'`).toString()}getOrSetIfDoesNotExist(e){const{encodedValue:t,decodeKey:r}=this.getEncodedValue(e),o=this.storage.get(t);if(o)return o;const n={encodedValue:t,decodeKey:r,value:e,index:this.getLength()};return this.storage.set(t,n),n}getEncodedValue(e){var t;switch(this.options.stringArrayEncoding){case v.StringArrayEncoding.Rc4:{const r=this.randomGenerator.getRandomGenerator().pickone(this.rc4Keys),o=this.cryptUtils.btoa(this.cryptUtils.rc4(e,r)),n=null!==(t=this.rc4EncodedValuesSourcesCache.get(o))&&void 0!==t?t:[];let i=n.length;return(!i||!n.includes(e))&&(n.push(e),i++),this.rc4EncodedValuesSourcesCache.set(o,n),i>1?this.getEncodedValue(e):{encodedValue:o,decodeKey:r}}case v.StringArrayEncoding.Base64:{const t=null;return{encodedValue:this.cryptUtils.btoa(e),decodeKey:t}}default:return{encodedValue:e,decodeKey:null}}}};O.minimumRotationAmount=100,O.maximumRotationAmount=500,O.rc4KeyLength=4,O.rc4KeysCount=50,O.stringArrayNameLength=7,l([p.postConstruct(),u("design:type",Function),u("design:paramtypes",[]),u("design:returntype",void 0)],O.prototype,"initialize",null),O=o=l([p.injectable(),f(0,p.inject(m.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),f(1,p.inject(m.ServiceIdentifiers.IArrayUtils)),f(2,p.inject(m.ServiceIdentifiers.IRandomGenerator)),f(3,p.inject(m.ServiceIdentifiers.IOptions)),f(4,p.inject(m.ServiceIdentifiers.ICryptUtils)),f(5,p.inject(m.ServiceIdentifiers.IEscapeSequenceEncoder)),u("design:paramtypes",["function"==typeof(n=void 0!==g.TIdentifierNamesGeneratorFactory&&g.TIdentifierNamesGeneratorFactory)?n:Object,"function"==typeof(i=void 0!==y.IArrayUtils&&y.IArrayUtils)?i:Object,"function"==typeof(a=void 0!==I.IRandomGenerator&&I.IRandomGenerator)?a:Object,"function"==typeof(s=void 0!==N.IOptions&&N.IOptions)?s:Object,"function"==typeof(c=void 0!==h.ICryptUtils&&h.ICryptUtils)?c:Object,"function"==typeof(d=void 0!==b.IEscapeSequenceEncoder&&b.IEscapeSequenceEncoder)?d:Object])],O),t.StringArrayStorage=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const o=r(0),n=r(1),i=r(224),a=r(225),s=r(229),c=r(230),d=r(231),l=r(71);t.utilsModule=new o.ContainerModule(e=>{e(n.ServiceIdentifiers.IArrayUtils).to(i.ArrayUtils).inSingletonScope(),e(n.ServiceIdentifiers.IRandomGenerator).to(l.RandomGenerator).inSingletonScope(),e(n.ServiceIdentifiers.ICryptUtils).to(a.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";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3);let l=class{constructor(e){this.randomGenerator=e}createWithRange(e){const t=[];for(let r=0;rn&&(o=i,n=e),r[i]=e}return o}rotate(e,t){if(!e.length)throw new ReferenceError("Cannot rotate empty array.");if(t<=0)return e;const r=e;let o;for(;t--;)o=r.pop(),o&&r.unshift(o);return r}shuffle(e){const t=[...e];for(let e=t.length;e;e--){const r=Math.floor(this.randomGenerator.getMathRandom()*e);[t[e-1],t[r]]=[t[r],t[e-1]]}return t}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.IRandomGenerator)),i("design:paramtypes",["function"==typeof(o=void 0!==d.IRandomGenerator&&d.IRandomGenerator)?o:Object])],l),t.ArrayUtils=l},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(3),l=r(71),u=r(26);let f=class{constructor(e){this.randomGenerator=e}btoa(e){let t="";e=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(`${u.Utils.hexadecimalPrefix}${t}`,16)));for(let r,o,n=0,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|n)||(i="=",n%1);t+=i.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:l.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(;r=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=class{constructor(){this.stringsCache=new Map}encode(e,t){const r=`${e}-${String(t)}`;if(this.stringsCache.has(r))return this.stringsCache.get(r);const o=new RegExp("[\\s\\S]","g"),n=new RegExp("['\"\\\\\\s]"),i=new RegExp("[\\x00-\\x7F]");let a,s;const c=e.replace(o,e=>t||n.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(r,c),this.stringsCache.set(`${c}-${String(t)}`,c),c}};n=o([r(0).injectable()],n),t.EscapeSequenceEncoder=n},function(e,t,r){"use strict";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a};Object.defineProperty(t,"__esModule",{value:!0});let n=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)}};n=o([r(0).injectable()],n),t.LevelledTopologicalSorter=n},function(e,t,r){"use strict";var o,n=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,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(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(0),c=r(1),d=r(232);let l=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){void 0===t[n]?r.push([o,null]):r.push([n,o])}else r.push([o,null])}return r}};l=n([s.injectable(),a(0,s.inject(c.ServiceIdentifiers.ILevelledTopologicalSorter)),i("design:paramtypes",["function"==typeof(o=void 0!==d.ILevelledTopologicalSorter&&d.ILevelledTopologicalSorter)?o:Object])],l),t.NodeTransformerNamesGroupsBuilder=l},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";var o,n,i,a,s,c,d=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},l=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},u=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},f=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const p=r(0),m=r(1),g=f(r(47)),y=r(234),h=r(235),b=r(2),N=r(3),I=r(59),v=r(236),S=r(13),O=r(10),C=r(44),j=r(57),_=r(4),R=r(26);let F=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(v.LoggingMessage.Version,R.Utils.buildVersionMessage("0.25.2",1582835643247)),this.logger.info(v.LoggingMessage.ObfuscationStarted),this.logger.info(v.LoggingMessage.RandomGeneratorSeed,this.randomGenerator.getInputSeed());const r=this.parseCode(e),o=this.transformAstTree(r),n=this.generateCode(e,o),i=(Date.now()-t)/1e3;return this.logger.success(v.LoggingMessage.ObfuscationCompleted,i),this.getObfuscatedCode(n)}parseCode(e){return j.ASTParserFacade.parse(e,o.parseOptions)}transformAstTree(e){return e=this.runTransformationStage(e,O.TransformationStage.Initializing),!_.NodeGuards.isProgramNode(e)||e.body.length||e.leadingComments||e.trailingComments?(e=this.runTransformationStage(e,O.TransformationStage.Preparing),this.options.deadCodeInjection&&(e=this.runTransformationStage(e,O.TransformationStage.DeadCodeInjection)),this.options.controlFlowFlattening&&(e=this.runTransformationStage(e,O.TransformationStage.ControlFlowFlattening)),e=this.runTransformationStage(e,O.TransformationStage.Converting),e=this.runTransformationStage(e,O.TransformationStage.Obfuscating),e=this.runTransformationStage(e,O.TransformationStage.Finalizing)):(this.logger.warn(v.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=g.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(v.LoggingMessage.TransformationStage,t),this.transformersRunner.transform(e,o.transformersList,t)}};F.parseOptions={ecmaVersion:C.ecmaVersion,allowHashBang:!0,allowImportExportEverywhere:!0,allowReturnOutsideFunction:!0,locations:!0,ranges:!0},F.escodegenParams={comment:!0,verbatim:"x-verbatim-property",sourceMapWithCode:!0},F.transformersList=[S.NodeTransformer.BlockStatementControlFlowTransformer,S.NodeTransformer.CommentsTransformer,S.NodeTransformer.CustomCodeHelpersTransformer,S.NodeTransformer.DeadCodeInjectionTransformer,S.NodeTransformer.EvalCallExpressionTransformer,S.NodeTransformer.FunctionControlFlowTransformer,S.NodeTransformer.LabeledStatementTransformer,S.NodeTransformer.LiteralTransformer,S.NodeTransformer.MemberExpressionTransformer,S.NodeTransformer.MetadataTransformer,S.NodeTransformer.MethodDefinitionTransformer,S.NodeTransformer.ObfuscatingGuardsTransformer,S.NodeTransformer.ObjectExpressionKeysTransformer,S.NodeTransformer.ObjectExpressionTransformer,S.NodeTransformer.ParentificationTransformer,S.NodeTransformer.ScopeIdentifiersTransformer,S.NodeTransformer.SplitStringTransformer,S.NodeTransformer.TemplateLiteralTransformer,S.NodeTransformer.VariablePreserveTransformer],F=o=d([p.injectable(),u(0,p.inject(m.ServiceIdentifiers.ITransformersRunner)),u(1,p.inject(m.ServiceIdentifiers.IRandomGenerator)),u(2,p.inject(m.ServiceIdentifiers.Factory__IObfuscatedCode)),u(3,p.inject(m.ServiceIdentifiers.ILogger)),u(4,p.inject(m.ServiceIdentifiers.IOptions)),l("design:paramtypes",["function"==typeof(n=void 0!==I.ITransformersRunner&&I.ITransformersRunner)?n:Object,"function"==typeof(i=void 0!==N.IRandomGenerator&&N.IRandomGenerator)?i:Object,"function"==typeof(a=void 0!==y.TObfuscatedCodeFactory&&y.TObfuscatedCodeFactory)?a:Object,"function"==typeof(s=void 0!==h.ILogger&&h.ILogger)?s:Object,"function"==typeof(c=void 0!==b.IOptions&&b.IOptions)?c:Object])],F),t.JavaScriptObfuscator=F},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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";var o=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),a=n(r(238));i.decorate(i.injectable(),a.default);let s=class extends a.default{};s=o([i.injectable()],s),t.ObfuscationEventEmitter=s},function(e,t){e.exports=require("eventemitter3")},function(e,t,r){"use strict";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(0),d=r(1),l=r(49),u=r(7),f=r(34),p=r(2);let m=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 f.SourceMapMode.Inline:t+=`data:application/json;base64,${this.cryptUtils.btoa(this.sourceMap)}`;break;case f.SourceMapMode.Separate:default:if(!e)return this.obfuscatedCode;t+=e}return`${this.obfuscatedCode}\n${t}`}};i([u.initializable(),a("design:type",String)],m.prototype,"obfuscatedCode",void 0),i([u.initializable(),a("design:type",String)],m.prototype,"sourceMap",void 0),m=i([c.injectable(),s(0,c.inject(d.ServiceIdentifiers.ICryptUtils)),s(1,c.inject(d.ServiceIdentifiers.IOptions)),a("design:paramtypes",["function"==typeof(o=void 0!==l.ICryptUtils&&l.ICryptUtils)?o:Object,"function"==typeof(n=void 0!==p.IOptions&&p.IOptions)?n:Object])],m),t.ObfuscatedCode=m},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";var o,n,i=this&&this.__decorate||function(e,t,r,o){var n,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,o);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(a=(i<3?n(a):i>3?n(t,r,a):n(t,r))||a);return i>3&&a&&Object.defineProperty(t,r,a),a},a=this&&this.__metadata||function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},s=this&&this.__param||function(e,t){return function(r,o){t(r,o,e)}},c=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t};Object.defineProperty(t,"__esModule",{value:!0});const d=r(0),l=r(1),u=c(r(12)),f=r(242),p=r(243),m=r(244),g=r(4),y=r(19);let h=class{constructor(e,t){this.nodeTransformerFactory=e,this.nodeTransformerNamesGroupsBuilder=t}transform(e,t,r){if(!t.length)return e;const o=this.buildNormalizedNodeTransformers(t,r),n=this.nodeTransformerNamesGroupsBuilder.build(o);for(const t of n){const n=[],i=[];for(const e of t){const t=o[e].getVisitor(r);t&&(t.enter&&n.push({enter:t.enter}),t.leave&&i.push({leave:t.leave}))}(n.length||i.length)&&u.replace(e,{enter:this.mergeVisitorsForDirection(n,m.VisitorDirection.Enter),leave:this.mergeVisitorsForDirection(i,m.VisitorDirection.Leave)})}return e}buildNormalizedNodeTransformers(e,t){return e.reduce((e,r)=>{const o=this.nodeTransformerFactory(r);return o.getVisitor(t)?Object.assign(Object.assign({},e),{[r]:o}):e},{})}mergeVisitorsForDirection(e,t){const r=e.length;return r?(o,n)=>{if(y.NodeMetadata.isIgnoredNode(o))return u.VisitorOption.Skip;for(let i=0;ie}};h=i([d.injectable(),s(0,d.inject(l.ServiceIdentifiers.Factory__INodeTransformer)),s(1,d.inject(l.ServiceIdentifiers.INodeTransformerNamesGroupsBuilder)),a("design:paramtypes",["function"==typeof(o=void 0!==f.TNodeTransformerFactory&&f.TNodeTransformerFactory)?o:Object,"function"==typeof(n=void 0!==p.INodeTransformerNamesGroupsBuilder&&p.INodeTransformerNamesGroupsBuilder)?n:Object])],h),t.TransformersRunner=h},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},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(53);e.exports=o.JavaScriptObfuscator}]); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/package.json b/package.json index ae2e546e..41e9ff87 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "reflect-metadata": "0.1.13", "source-map-support": "0.5.16", "string-template": "1.0.0", - "tslib": "1.11.0" + "tslib": "1.11.1" }, "devDependencies": { "@types/chai": "4.2.9", @@ -71,14 +71,14 @@ "eslint-plugin-prefer-arrow": "1.1.7", "eslint-plugin-unicorn": "16.1.1", "fork-ts-checker-notifier-webpack-plugin": "2.0.0", - "fork-ts-checker-webpack-plugin": "4.0.4", + "fork-ts-checker-webpack-plugin": "4.0.5", "mocha": "7.1.0", "nyc": "15.0.0", "pjson": "1.0.9", "pre-commit": "1.2.2", "rimraf": "3.0.2", "sinon": "9.0.0", - "threads": "1.2.0", + "threads": "1.3.0", "ts-loader": "6.2.1", "ts-node": "6.1.0", "typescript": "3.8.2", diff --git a/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts b/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts index f3ff5911..74feedb2 100644 --- a/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts +++ b/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts @@ -79,7 +79,7 @@ export class ObjectExpressionCalleeDataExtractor extends AbstractCalleeDataExtra memberExpression: ESTree.MemberExpression ): TObjectMembersCallsChain { // first step: processing memberExpression `property` property - if (NodeGuards.isIdentifierNode(memberExpression.property) && memberExpression.computed === false) { + if (NodeGuards.isIdentifierNode(memberExpression.property) && !memberExpression.computed) { currentChain.unshift(memberExpression.property.name); } else if ( NodeGuards.isLiteralNode(memberExpression.property) && diff --git a/src/enums/JSFuck.ts b/src/enums/JSFuck.ts deleted file mode 100644 index b1b5021b..00000000 --- a/src/enums/JSFuck.ts +++ /dev/null @@ -1,58 +0,0 @@ -export enum JSFuck { - False = '![]', - True = '!![]', - - a = '(false+"")[1]', - b = '([]["entries"]()+"")[2]', - c = '([]["fill"]+"")[3]', - d = '(undefined+"")[2]', - e = '(true+"")[3]', - f = '(false+"")[0]', - g = '(false+[0]+String)[20]', - h = '(+(101))["toString"](21)[1]', - i = '([false]+undefined)[10]', - j = '([]["entries"]()+"")[3]', - k = '(+(20))["toString"](21)', - l = '(false+"")[2]', - m = '(Number+"")[11]', - n = '(undefined+"")[1]', - o = '(true+[]["fill"])[10]', - p = '(+(211))["toString"](31)[1]', - q = '(+(212))["toString"](31)[1]', - r = '(true+"")[1]', - s = '(false+"")[3]', - t = '(true+"")[0]', - u = '(undefined+"")[0]', - v = '(+(31))["toString"](32)', - w = '(+(32))["toString"](33)', - x = '(+(101))["toString"](34)[1]', - y = '(NaN+[Infinity])[10]', - z = '(+(35))["toString"](36)', - - A = '(+[]+Array)[10]', - B = '(+[]+Boolean)[10]', - C = 'Function("return escape")()(("")["italics"]())[2]', - D = 'Function("return escape")()([]["fill"])["slice"]("-1")', - E = '(RegExp+"")[12]', - F = '(+[]+Function)[10]', - G = '(false+Function("return Date")()())[30]', - H = '\'H\'', - I = '(Infinity+"")[0]', - J = '\'J\'', - K = '\'K\'', - L = '\'L\'', - M = '(true+Function("return Date")()())[30]', - N = '(NaN+"")[0]', - O = '(NaN+Function("return{}")())[11]', - P = '\'P\'', - Q = '\'Q\'', - R = '(+[]+RegExp)[10]', - S = '(+[]+String)[10]', - T = '(NaN+Function("return Date")()())[30]', - U = '(NaN+Function("return{}")()["toString"]["call"]())[11]', - V = '\'V\'', - W = '\'W\'', - X = '\'X\'', - Y = '\'Y\'', - Z = '\'Z\'', -} diff --git a/src/node/NodeFactory.ts b/src/node/NodeFactory.ts index 3c95ce00..07a8e480 100644 --- a/src/node/NodeFactory.ts +++ b/src/node/NodeFactory.ts @@ -303,30 +303,6 @@ export class NodeFactory { }; } - /** - * @param {Expression} key - * @param {FunctionExpression} value - * @param {"constructor" | "method" | "get" | "set"} kind - * @param {boolean} computed - * @returns {MethodDefinition} - */ - public static methodDefinitionNode ( - key: ESTree.Expression, - value: ESTree.FunctionExpression, - kind: 'constructor' | 'method' | 'get' | 'set', - computed: boolean, - ): ESTree.MethodDefinition { - return { - type: NodeType.MethodDefinition, - key, - value, - kind, - computed, - static: false, - metadata: { ignoredNode: false } - }; - } - /** * @param {Property[]} properties * @returns {ObjectExpression} diff --git a/src/types/node-transformers/TReplaceableIdentifiers.ts b/src/types/node-transformers/TReplaceableIdentifiers.ts deleted file mode 100644 index c93b295d..00000000 --- a/src/types/node-transformers/TReplaceableIdentifiers.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as ESTree from 'estree'; - -export type TReplaceableIdentifiers = Map >; diff --git a/src/types/node-transformers/TReplaceableIdentifiersNames.ts b/src/types/node-transformers/TReplaceableIdentifiersNames.ts deleted file mode 100644 index fe5cd322..00000000 --- a/src/types/node-transformers/TReplaceableIdentifiersNames.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as ESTree from 'estree'; - -export type TReplaceableIdentifiersNames = Map ; diff --git a/src/types/node/TimportSpecifier.ts b/src/types/node/TimportSpecifier.ts deleted file mode 100644 index a0da4f4e..00000000 --- a/src/types/node/TimportSpecifier.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as ESTree from 'estree'; - -export type TImportSpecifier = ESTree.ImportSpecifier - | ESTree.ImportDefaultSpecifier - | ESTree.ImportNamespaceSpecifier; diff --git a/yarn.lock b/yarn.lock index 693db471..bc0db9b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2208,10 +2208,10 @@ fork-ts-checker-notifier-webpack-plugin@2.0.0: dependencies: node-notifier "^6.0.0" -fork-ts-checker-webpack-plugin@4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.0.4.tgz#ba1be68d63dcf509f6d1b08fb8e19efb6d7e8a96" - integrity sha512-6IEqHH6s+tv5sho5d3dn7dfcnbjKHwfqL74kRfpAP2e8MCHuMh5ixtYrbdfPO4Zat3S5gwULOoVArjK3HMwNdA== +fork-ts-checker-webpack-plugin@4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.0.5.tgz#1982b464cb8a44d224940a95a0d075c8bbd700bf" + integrity sha512-7juf7VGQ4GD7beQI2vsHlWME4H7cabXn4+zYzvWTOYQUjn3L+3tWQe8j9KnVOpdCf+1PoSvYMRT2A2kltfGLtQ== dependencies: babel-code-frame "^6.22.0" chalk "^2.4.1" @@ -3781,10 +3781,10 @@ object.values@^1.1.0: function-bind "^1.1.1" has "^1.0.3" -observable-fns@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/observable-fns/-/observable-fns-0.5.0.tgz#9b71bb3e1a6ac9840b3922b67de0092773230177" - integrity sha512-BWmxvFppAKRWWTYns+yW3RaoXLTkSVF1cnLNe06opO4/C4VVfZgRkwSEBLOAA6bcTNM1zDDRz2T+l52cPNuaZQ== +observable-fns@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/observable-fns/-/observable-fns-0.5.1.tgz#9b56478690dd0fa8603e3a7e7d2975d88bca0904" + integrity sha512-wf7g4Jpo1Wt2KIqZKLGeiuLOEMqpaOZ5gJn7DmSdqXgTdxRwSdBhWegQQpPteQ2gZvzCKqNNpwb853wcpA0j7A== once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" @@ -5041,15 +5041,15 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -threads@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/threads/-/threads-1.2.0.tgz#f8a7a70aa355f003cccf894f85d55ff0bb87436b" - integrity sha512-QGHWxkLA+5IYe+Z1d/uhfYk+AbproPFAZoW48vrd+1N3MP37+e4wsyntpwhSixlY42dGtqRgP4b/Fqy/D6QBEQ== +threads@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/threads/-/threads-1.3.0.tgz#24e2ccd5f50c9df39ffedd61fba2c798c38886f8" + integrity sha512-Z/sUxUDfwaNoDERcorYK+sGANn9i4PwMVAYdpCfpTiOmcNrLygb2c5BmQgizOnsPqXtXNlaRZRCNUr5h/eT8/Q== dependencies: callsites "^3.1.0" debug "^4.1.1" is-observable "^1.1.0" - observable-fns "^0.5.0" + observable-fns "^0.5.1" optionalDependencies: tiny-worker ">= 2" @@ -5161,10 +5161,10 @@ ts-node@6.1.0: source-map-support "^0.5.6" yn "^2.0.0" -tslib@1.11.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.0.tgz#f1f3528301621a53220d58373ae510ff747a66bc" - integrity sha512-BmndXUtiTn/VDDrJzQE7Mm22Ix3PxgLltW9bSNLoeCY31gnG2OPx0QqJnuc9oMIKioYrz487i6K9o4Pdn0j+Kg== +tslib@1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" + integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== tslib@^1.8.1, tslib@^1.9.0: version "1.10.0"