/* Copyright 2012 Marijn Haverbeke SPDX-License-Identifier: MIT */ var p; var ba="undefined"===typeof globalThis?this||window:globalThis,ca=function(a){function b(f){return 48>f?36===f:58>f?!0:65>f?!1:91>f?!0:97>f?95===f:123>f?!0:170<=f&&Kc.test(String.fromCharCode(f))}function d(f){return 65>f?36===f:91>f?!0:97>f?95===f:123>f?!0:170<=f&&Qb.test(String.fromCharCode(f))}function c(f,h){var l=r;for(var n=1,w=0;;){Ta.lastIndex=w;var K=Ta.exec(l);if(K&&K.indexf)++m;else if(47===f)if(f=r.charCodeAt(m+1),42===f){f=void 0;var h=z.Aa&&z.D&&new g,l=m,n=r.indexOf("*/",m+=2);-1===n&&c(m-2,"Unterminated comment");m=n+2;if(z.D)for(Ta.lastIndex=l;(f=Ta.exec(r))&&f.index=f?Rb(!0):(++m,k(Sb));return;case 40:return++m,k(X);case 41:return++m,k(V);case 59:return++m,k(Y);case 44:return++m,k(ea);case 91:return++m,k(db);case 93:return++m,k(eb);case 123:return++m,k(za);case 125:return++m,k(pa);case 58:return++m,k(Aa);case 63:return++m,k(Tb);case 48:if(f=r.charCodeAt(m+1),120===f||88===f){m+=2;f=Ba(16);null===f&&c(I+2,"Expected hexadecimal number");d(r.charCodeAt(m))&&c(m,"Identifier directly after number");k(Ca,f);return}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return Rb(!1); case 34:case 39:m++;for(var h="";;){m>=oa&&c(I,"Unterminated string constant");var l=r.charCodeAt(m);if(l===f){++m;k(Ua,h);break}if(92===l){l=r.charCodeAt(++m);var n=/^[0-7]+/.exec(r.slice(m,m+3));for(n&&(n=n[0]);n&&255=oa)return k(gb);f=r.charCodeAt(m);if(d(f)||92===f)return $b();if(!1===R(f)){f=String.fromCharCode(f);if("\\"===f||Qb.test(f))return $b();c(m,"Unexpected character '"+f+"'")}}function L(f,h){var l=r.slice(m,m+h);m+=h;k(f,l)}function Ub(){for(var f, h,l=m;;){m>=oa&&c(l,"Unterminated regexp");var n=r.charAt(m);Wa.test(n)&&c(l,"Unterminated regexp");if(f)f=!1;else{if("["===n)h=!0;else if("]"===n&&h)h=!1;else if("/"===n&&!h)break;f="\\"===n}++m}f=r.slice(l,m);++m;(h=ac())&&!/^[gmi]*$/.test(h)&&c(l,"Invalid regexp flag");try{var w=new RegExp(f,h)}catch(K){throw K instanceof SyntaxError&&c(l,K.message),K;}k(bc,w)}function Ba(f,h){for(var l=m,n=0,w=void 0===h?Infinity:h,K=0;K=O? O-48:Infinity;if(O>=f)break;++m;n=n*f+O}return m===l||void 0!==h&&m-l!==h?null:n}function Rb(f){var h=m,l=!1,n=48===r.charCodeAt(m);f||null!==Ba(10)||c(h,"Invalid number");46===r.charCodeAt(m)&&(++m,Ba(10),l=!0);f=r.charCodeAt(m);if(69===f||101===f)f=r.charCodeAt(++m),43!==f&&45!==f||++m,null===Ba(10)&&c(h,"Invalid number"),l=!0;d(r.charCodeAt(m))&&c(m,"Identifier directly after number");f=r.slice(h,m);var w;l?w=parseFloat(f):n&&1!==f.length?/[89]/.test(f)||S?c(h,"Invalid number"):w=parseInt(f,8): w=parseInt(f,10);k(Ca,w)}function Va(f){f=Ba(16,f);null===f&&c(I,"Bad character escape sequence");return f}function ac(){qa=!1;for(var f,h=!0,l=m;;){var n=r.charCodeAt(m);if(b(n))qa&&(f+=r.charAt(m)),++m;else if(92===n){qa||(f=r.slice(l,m));qa=!0;117!==r.charCodeAt(++m)&&c(m,"Expecting Unicode escape sequence \\uXXXX");++m;n=Va(4);var w=String.fromCharCode(n);w||c(m-1,"Invalid Unicode escape");(h?d(n):b(n))||c(m-4,"Invalid Unicode escape");f+=w}else break;h=!1}return qa?f:r.slice(l,m)}function $b(){var f= ac(),h=ra;!qa&&Vc(f)&&(h=Wc[f]);k(h,f)}function B(){hb=I;fa=na;ib=cb;ha()}function jb(f){S=f;m=I;if(z.D)for(;mh){var w=ia(f);w.left=f;w.operator=T;f=x;B();w.right=wb(xb(),n,l);n=y(w,f===Wb||f===Xb?"LogicalExpression":"BinaryExpression");return wb(n,h,l)}return f}function xb(){if(x.prefix){var f= M(),h=x.Yb;f.operator=T;ya=f.prefix=!0;B();f.J=xb();h?Ya(f.J):S&&"delete"===f.operator&&"Identifier"===f.J.type&&c(f.start,"Deleting local variable in strict mode");return y(f,h?"UpdateExpression":"UnaryExpression")}for(h=Ga(ab());x.ac&&!Xa();)f=ia(h),f.operator=T,f.prefix=!1,f.J=h,Ya(h),B(),h=y(f,"UpdateExpression");return h}function Ga(f,h){if(E(Sb)){var l=ia(f);l.object=f;l.Ya=aa(!0);l.fb=!1;return Ga(y(l,"MemberExpression"),h)}return E(db)?(l=ia(f),l.object=f,l.Ya=N(),l.fb=!0,F(eb),Ga(y(l,"MemberExpression"), h)):!h&&E(X)?(l=ia(f),l.callee=f,l.arguments=yb(V,!1),Ga(y(l,"CallExpression"),h)):f}function ab(){switch(x){case tc:var f=M();B();return y(f,"ThisExpression");case ra:return aa();case Ca:case Ua:case bc:return f=M(),f.value=T,f.raw=r.slice(I,na),B(),y(f,"Literal");case uc:case vc:case wc:return f=M(),f.value=x.cb,f.raw=x.l,B(),y(f,"Literal");case X:f=fb;var h=I;B();var l=N();l.start=h;l.end=na;z.D&&(l.O.start=f,l.O.end=cb);z.Za&&(l.j=[h,na]);F(V);return l;case db:return f=M(),B(),f.elements=yb(eb, !0,!0),y(f,"ArrayExpression");case za:f=M();h=!0;l=!1;f.h=[];for(B();!E(pa);){if(h)h=!1;else if(F(ea),z.sb&&E(pa))break;var n={key:x===Ca||x===Ua?ab():aa(!0)},w=!1;if(E(Aa)){n.value=N(!0);var K=n.kind="init"}else"Identifier"!==n.key.type||"get"!==n.key.name&&"set"!==n.key.name?Z():(w=l=!0,K=n.kind=n.key.name,n.key=x===Ca||x===Ua?ab():aa(!0),x!==X&&Z(),n.value=sb(M(),!1));if("Identifier"===n.key.type&&(S||l))for(var O=0;Ol?f.id:f.sa[l],(yc(n.name)||Za(n.name))&&c(n.start,"Defining '"+n.name+"' in strict mode"),0<=l)for(var w=0;w>>0;return b===Number(a)?b:NaN}function Sa(a){var b=a>>>0;return String(b)===String(a)&&4294967295!==b?b:NaN}function ta(a,b,d){b?a.start=b:delete a.start;d?a.end=d:delete a.end;for(var c in a)if(a[c]!==a.O&&a.hasOwnProperty(c)){var e=a[c];e&&"object"===typeof e&&ta(e,b,d)}}t.prototype.REGEXP_MODE=2;t.prototype.REGEXP_THREAD_TIMEOUT=1E3;t.prototype.POLYFILL_TIMEOUT=1E3;p=t.prototype;p.R=!1;p.Ma=!1;p.Ib=0;p.hc=0; function da(a,b){var d={},c;for(c in va)d[c]=va[c];d.sourceFile=b;return Pa.j.parse(a,d)}p.Hb=function(a){var b=this.j[0];if(!b||"Program"!==b.node.type)throw Error("Expecting original AST to start with a Program node");"string"===typeof a&&(a=da(a,"appendCode"+this.Ib++));if(!a||"Program"!==a.type)throw Error("Expecting new AST to start with a Program node");bb(this,a,b.scope);Array.prototype.push.apply(b.node.body,a.body);b.node.body.lb=null;b.done=!1}; p.nb=function(){var a=this.j,b;do{var d=a[a.length-1];if(this.wa)break;else if(!d||"Program"===d.node.type&&d.done){if(!this.$.length)return!1;d=this.$[0];if(!d||d.time>Date.now())d=null;else{this.$.shift();0<=d.j&&Ab(this,d,d.j);var c=new u(d.node,d.scope);d.o&&(c.ma=2,c.C=this.Qa,c.aa=d.o,c.Ta=!0,c.G=d.A);d=c}if(!d)break}c=d.node;var e=Oa;Oa=this;try{var g=this.rb[c.type](a,d,c)}catch(k){if(k!==Ia)throw this.value!==k&&(this.value=void 0),k;}finally{Oa=e}g&&a.push(g);if(this.R)throw this.value= void 0,Error("Getter not supported in this context");if(this.Ma)throw this.value=void 0,Error("Setter not supported in this context");b||c.end||(b=Date.now()+this.POLYFILL_TIMEOUT)}while(!c.end&&b>Date.now());return!0};p.Cb=function(){for(;!this.wa&&this.nb(););return this.wa};p.Wb=function(){if(this.wa)return ua.ASYNC;var a=this.j;return!(a=a[a.length-1])||"Program"===a.node.type&&a.done?(a=this.$[0])?a.time>Date.now()?ua.TASK:ua.STEP:ua.DONE:ua.STEP}; function Bb(a,b){a.g(b,"NaN",NaN,xa);a.g(b,"Infinity",Infinity,xa);a.g(b,"undefined",void 0,xa);a.g(b,"window",b,wa);a.g(b,"this",b,xa);a.g(b,"self",b);a.L=new D(null);a.X=new D(a.L);Cb(a,b);Db(a,b);b.Ca=a.L;a.g(b,"constructor",a.u,v);Eb(a,b);Fb(a,b);Gb(a,b);Hb(a,b);Ib(a,b);Jb(a,b);Kb(a,b);Lb(a,b);Mb(a,b);var d=a.i(function(){throw EvalError("Can't happen");},!1);d.eval=!0;a.g(b,"eval",d,v);a.g(b,"parseInt",a.i(parseInt,!1),v);a.g(b,"parseFloat",a.i(parseFloat,!1),v);a.g(b,"isNaN",a.i(isNaN,!1),v); a.g(b,"isFinite",a.i(isFinite,!1),v);for(var c=[[escape,"escape"],[unescape,"unescape"],[decodeURI,"decodeURI"],[decodeURIComponent,"decodeURIComponent"],[encodeURI,"encodeURI"],[encodeURIComponent,"encodeURIComponent"]],e=0;e>>0;if(!b||0>b)c.length=0;else{b--;var d=c[b];delete c[b];c.length=b;return d}});g("push",function(c){if(!this)throw TypeError();for(var b=Object(this),d=b.length>>>0,a=0;a>>0;if(!b||0>b)c.length=0;else{for(var d=c[0],a=0;a>>0;if(!d||0>d)d=0;for(var a=d-1;0<=a;a--)a in b?b[a+arguments.length]=b[a]:delete b[a+arguments.length];for(a=0;a>>0;if(!b||2>b)return c;for(var d=0;d>>0;b|=0;if(!a||b>=a)return-1;for(b=Math.max(0<=b?b:a-Math.abs(b),0);b>>0;if(!a)return-1;var e=a-1;1>>0;c|=0;c=0<=c?c:Math.max(0,a+c);"undefined"!==typeof b?(Infinity!==b&&(b|=0),b=0>b?a+b:Math.min(b,a)):b=a;b-=c;a=Array(b);for(var e=0;e>>0;c|=0;c=0>c?Math.max(e+\nc,0):Math.min(c,e);b=2>arguments.length?e-c:Math.max(0,Math.min(b|0,e-c));for(var h=[],f=c;f=c;f--)f in a?a[f+k]=a[f]:delete a[f+k];e+=k;for(f=2;f>>0;c="undefined"===typeof c?",":""+c;for(var a="",e=0;e>>0;for(1>>0,e=[],h=2<=arguments.length?arguments[1]:void 0,f=0;f>>0;for(1>>0;1>>0,a=0;if(2===arguments.length)var e=arguments[1];else{for(;a=d)throw TypeError("Reduce of empty array with no initial value");e=b[a++]}for(;a>>0)-1;if(2<=arguments.length)var a=arguments[1];else{for(;0<=d&&!(d in b);)d--;if(0>d)throw TypeError("Reduce of empty array with no initial value");a=b[d--]}for(;0<=d;d--)d in b&&(a=c(a,b[d],d,b));return a});g("some",function(c){if(!this||"function"!==typeof c)throw TypeError();for(var b=Object(this),d=b.length>>>0,a=2<=arguments.length?arguments[1]:void 0,e=0;eString(this[a+1])){var e=this[a],h=a in this;a+1 in this?this[a]=this[a+1]:delete this[a];h?this[a+1]=e:delete this[a+1];d++}if(!d)break}return this});g("toLocaleString",function(){if(!this)throw TypeError();for(var c=Object(this),b=c.length>>>0,d=[],a=0;ab.charCodeAt(0)&&P(this,a,this.F)){var d=Sa(b);if(!isNaN(d)&&d>=":c>>=e;break;case ">>>=":c>>>=e;break;case "&=":c&=e;break;case "^=":c^=e;break;case "|=":c|=e;break;default:throw SyntaxError("Unknown assignment expression: "+d.operator);}if(d=hd(this,b.Ia,c))return b.ya=!0,b.kb=c,ld(this,d,b.Ia,c);a.pop();a[a.length-1].value=c}}; t.prototype.stepBinaryExpression=function(a,b,d){if(!b.na)return b.na=!0,new u(d.left,b.scope);if(!b.Ga)return b.Ga=!0,b.qa=b.value,new u(d.right,b.scope);a.pop();var c=b.qa;b=b.value;switch(d.operator){case "==":d=c==b;break;case "!=":d=c!=b;break;case "===":d=c===b;break;case "!==":d=c!==b;break;case ">":d=c>b;break;case ">=":d=c>=b;break;case "<":d=c>":d=c>>b;break;case ">>>":d=c>>>b;break;case "in":b instanceof D||H(this,this.o,"'in' expects an object, not '"+b+"'");d=ad(this,b,c);break;case "instanceof":P(this,b,this.P)||H(this,this.o,"'instanceof' expects an object, not '"+b+"'");d=c instanceof D?P(this,c,b):!1;break;default:throw SyntaxError("Unknown binary operator: "+d.operator);}a[a.length-1].value=d}; t.prototype.stepBlockStatement=function(a,b,d){var c=b.B||0;if(d=d.body[c])return b.B=c+1,new u(d,b.scope);a.pop()};t.prototype.stepBreakStatement=function(a,b,d){id(this,1,void 0,d.label&&d.label.name)};t.prototype.Fb=0; t.prototype.stepCallExpression=function(a,b,d){if(!b.ma){b.ma=1;var c=new u(d.callee,b.scope);c.xa=!0;return c}if(1===b.ma){b.ma=2;var e=b.value;if(Array.isArray(e)){if(b.aa=gd(this,e),e[0]===Ja?b.Mb="eval"===e[1]:b.C=e[0],e=b.aa,this.R)return b.ma=1,kd(this,e,b.value)}else b.aa=e;b.G=[];b.B=0}e=b.aa;if(!b.Ta){0!==b.B&&b.G.push(b.value);if(d.arguments[b.B])return new u(d.arguments[b.B++],b.scope);if("NewExpression"===d.type){e instanceof D&&!e.zb||H(this,this.o,Q(this,d.callee)+" is not a constructor"); if(e===this.ua)b.C=Cc(this);else{var g=e.h.prototype;if("object"!==typeof g||null===g)g=this.L;b.C=this.s(g)}b.isConstructor=!0}b.Ta=!0}if(b.hb)a.pop(),a[a.length-1].value=b.isConstructor&&"object"!==typeof b.value?b.C:b.value;else{b.hb=!0;e instanceof D||H(this,this.o,Q(this,d.callee)+" is not a function");if(a=e.node){d=ja(this,a.body,e.Xa);c=Cc(this);for(e=0;ee?b.G[e]: void 0);d.U||(b.C=md(this,b.C));this.g(d.object,"this",b.C,wa);b.value=void 0;return new u(a.body,d)}if(e.eval)if(e=b.G[0],"string"!==typeof e)b.value=e;else{try{c=da(String(e),"eval"+this.Fb++)}catch(q){H(this,this.Y,"Invalid code: "+q.message)}e=this.Da();e.type="EvalProgram_";e.body=c.body;ta(e,d.start,d.end);d=b.Mb?b.scope:this.M;d.U?d=ja(this,c,d):bb(this,c,d);this.value=void 0;return new u(e,d)}else if(e.Va)b.scope.U||(b.C=md(this,b.C)),b.value=e.Va.apply(b.C,b.G);else if(e.bb){var k=this;c= e.bb.length-1;c=b.G.concat(Array(c)).slice(0,c);c.push(function(q){b.value=q;k.wa=!1});this.wa=!0;b.scope.U||(b.C=md(this,b.C));e.bb.apply(b.C,c)}else H(this,this.o,Q(this,d.callee)+" is not callable")}}; t.prototype.stepConditionalExpression=function(a,b,d){var c=b.ra||0;if(0===c)return b.ra=1,new u(d.test,b.scope);if(1===c){b.ra=2;if((c=!!b.value)&&d.fa)return new u(d.fa,b.scope);if(!c&&d.alternate)return new u(d.alternate,b.scope);this.value=void 0}a.pop();"ConditionalExpression"===d.type&&(a[a.length-1].value=b.value)};t.prototype.stepContinueStatement=function(a,b,d){id(this,2,void 0,d.label&&d.label.name)};t.prototype.stepDebuggerStatement=function(a){a.pop()}; t.prototype.stepDoWhileStatement=function(a,b,d){"DoWhileStatement"===d.type&&void 0===b.ka&&(b.value=!0,b.ka=!0);if(!b.ka)return b.ka=!0,new u(d.test,b.scope);if(!b.value)a.pop();else if(d.body)return b.ka=!1,b.ca=!0,new u(d.body,b.scope)};t.prototype.stepEmptyStatement=function(a){a.pop()};t.prototype.stepEvalProgram_=function(a,b,d){var c=b.B||0;if(d=d.body[c])return b.B=c+1,new u(d,b.scope);a.pop();a[a.length-1].value=this.value}; t.prototype.stepExpressionStatement=function(a,b,d){if(!b.oa)return this.value=void 0,b.oa=!0,new u(d.pa,b.scope);a.pop();this.value=b.value}; t.prototype.stepForInStatement=function(a,b,d){if(!b.Rb&&(b.Rb=!0,d.left.ia&&d.left.ia[0].za))return b.scope.U&&H(this,this.Y,"for-in loop variable declaration may not have an initializer"),new u(d.left,b.scope);if(!b.Fa)return b.Fa=!0,b.ta||(b.ta=b.value),new u(d.right,b.scope);b.ca||(b.ca=!0,b.v=b.value,b.mb=Object.create(null));if(void 0===b.Ua)a:for(;;){if(b.v instanceof D)for(b.Ba||(b.Ba=Object.getOwnPropertyNames(b.v.h));;){var c=b.Ba.shift();if(void 0===c)break;if(Object.prototype.hasOwnProperty.call(b.v.h, c)&&!b.mb[c]&&(b.mb[c]=!0,Object.prototype.propertyIsEnumerable.call(b.v.h,c))){b.Ua=c;break a}}else if(null!==b.v&&void 0!==b.v)for(b.Ba||(b.Ba=Object.getOwnPropertyNames(b.v));;){c=b.Ba.shift();if(void 0===c)break;b.mb[c]=!0;if(Object.prototype.propertyIsEnumerable.call(b.v,c)){b.Ua=c;break a}}b.v=Bc(this,b.v);b.Ba=null;if(null===b.v){a.pop();return}}if(!b.wb)if(b.wb=!0,a=d.left,"VariableDeclaration"===a.type)b.ta=[Ja,a.ia[0].id.name];else return b.ta=null,b=new u(a,b.scope),b.xa=!0,b;b.ta||(b.ta= b.value);if(!b.ya&&(b.ya=!0,a=b.Ua,c=hd(this,b.ta,a)))return ld(this,c,b.ta,a);b.Ua=void 0;b.wb=!1;b.ya=!1;if(d.body)return new u(d.body,b.scope)};t.prototype.stepForStatement=function(a,b,d){switch(b.ra){default:b.ra=1;if(d.za)return new u(d.za,b.scope);break;case 1:b.ra=2;if(d.test)return new u(d.test,b.scope);break;case 2:b.ra=3;if(d.test&&!b.value)a.pop();else return b.ca=!0,new u(d.body,b.scope);break;case 3:if(b.ra=1,d.update)return new u(d.update,b.scope)}}; t.prototype.stepFunctionDeclaration=function(a){a.pop()};t.prototype.stepFunctionExpression=function(a,b,d){a.pop();b=a[a.length-1];a=b.scope;d.id&&(a=dd(this,a));b.value=Pb(this,d,a,b.Sa);d.id&&this.g(a.object,d.id.name,b.value,wa)};t.prototype.stepIdentifier=function(a,b,d){a.pop();if(b.xa)a[a.length-1].value=[Ja,d.name];else{b=ed(this,d.name);if(this.R)return kd(this,b,this.Qa);a[a.length-1].value=b}};t.prototype.stepIfStatement=t.prototype.stepConditionalExpression; t.prototype.stepLabeledStatement=function(a,b,d){a.pop();a=b.labels||[];a.push(d.label.name);b=new u(d.body,b.scope);b.labels=a;return b};t.prototype.stepLiteral=function(a,b,d){a.pop();b=d.value;b instanceof RegExp&&(d=this.s(this.Pa),Ic(this,d,b),b=d);a[a.length-1].value=b}; t.prototype.stepLogicalExpression=function(a,b,d){if("&&"!==d.operator&&"||"!==d.operator)throw SyntaxError("Unknown logical operator: "+d.operator);if(!b.na)return b.na=!0,new u(d.left,b.scope);if(b.Ga)a.pop(),a[a.length-1].value=b.value;else if("&&"===d.operator&&!b.value||"||"===d.operator&&b.value)a.pop(),a[a.length-1].value=b.value;else return b.Ga=!0,new u(d.right,b.scope)}; t.prototype.stepMemberExpression=function(a,b,d){if(!b.Fa)return b.Fa=!0,new u(d.object,b.scope);if(d.fb)if(b.Sb)d=b.value;else return b.v=b.value,b.Sb=!0,new u(d.Ya,b.scope);else b.v=b.value,d=d.Ya.name;a.pop();if(b.xa)a[a.length-1].value=[b.v,d];else{d=this.N(b.v,d);if(this.R)return kd(this,d,b.v);a[a.length-1].value=d}};t.prototype.stepNewExpression=t.prototype.stepCallExpression; t.prototype.stepObjectExpression=function(a,b,d){var c=b.B||0,e=d.h[c];if(b.v){var g=b.Sa;b.La[g]||(b.La[g]={});b.La[g][e.kind]=b.value;b.B=++c;e=d.h[c]}else b.v=this.s(this.L),b.La=Object.create(null);if(e){var k=e.key;if("Identifier"===k.type)g=k.name;else if("Literal"===k.type)g=k.value;else throw SyntaxError("Unknown object structure: "+k.type);b.Sa=g;return new u(e.value,b.scope)}for(k in b.La)d=b.La[k],"get"in d||"set"in d?this.g(b.v,k,Ka,{configurable:!0,enumerable:!0,get:d.get,set:d.set}): this.g(b.v,k,d.init);a.pop();a[a.length-1].value=b.v};t.prototype.stepProgram=function(a,b,d){if(a=d.body.shift())return b.done=!1,new u(a,b.scope);b.done=!0};t.prototype.stepReturnStatement=function(a,b,d){if(d.J&&!b.oa)return b.oa=!0,new u(d.J,b.scope);id(this,3,b.value)};t.prototype.stepSequenceExpression=function(a,b,d){var c=b.B||0;if(d=d.xb[c])return b.B=c+1,new u(d,b.scope);a.pop();a[a.length-1].value=b.value}; t.prototype.stepSwitchStatement=function(a,b,d){if(!b.ka)return b.ka=1,new u(d.Nb,b.scope);1===b.ka&&(b.ka=2,b.fc=b.value,b.gb=-1);for(;;){var c=b.jb||0,e=d.tb[c];if(b.Ka||!e||e.test)if(e||b.Ka||-1===b.gb)if(e){if(!b.Ka&&!b.Db&&e.test)return b.Db=!0,new u(e.test,b.scope);if(b.Ka||b.value===b.fc){b.Ka=!0;var g=b.B||0;if(e.fa[g])return b.Xb=!0,b.B=g+1,new u(e.fa[g],b.scope)}b.Db=!1;b.B=0;b.jb=c+1}else{a.pop();break}else b.Ka=!0,b.jb=b.gb;else b.gb=c,b.jb=c+1}}; t.prototype.stepThisExpression=function(a){a.pop();a[a.length-1].value=ed(this,"this")};t.prototype.stepThrowStatement=function(a,b,d){if(b.oa)H(this,b.value);else return b.oa=!0,new u(d.J,b.scope)}; t.prototype.stepTryStatement=function(a,b,d){if(!b.Ob)return b.Ob=!0,new u(d.block,b.scope);if(b.ha&&4===b.ha.type&&!b.Qb&&d.Ha)return b.Qb=!0,a=dd(this,b.scope),this.g(a.object,d.Ha.Wa.name,b.ha.value),b.ha=void 0,new u(d.Ha.body,a);if(!b.Pb&&d.ib)return b.Pb=!0,new u(d.ib,b.scope);a.pop();b.ha&&id(this,b.ha.type,b.ha.value,b.ha.label)}; t.prototype.stepUnaryExpression=function(a,b,d){if(!b.oa)return b.oa=!0,a=new u(d.J,b.scope),a.xa="delete"===d.operator,a;a.pop();var c=b.value;switch(d.operator){case "-":c=-c;break;case "+":c=+c;break;case "!":c=!c;break;case "~":c=~c;break;case "delete":d=!0;if(Array.isArray(c)){var e=c[0];e===Ja&&(e=b.scope);c=String(c[1]);try{delete e.h[c]}catch(g){b.scope.U?H(this,this.o,"Cannot delete property '"+c+"' of '"+e+"'"):d=!1}}c=d;break;case "typeof":c=c&&"Function"===c.H?"function":typeof c;break; case "void":c=void 0;break;default:throw SyntaxError("Unknown unary operator: "+d.operator);}a[a.length-1].value=c}; t.prototype.stepUpdateExpression=function(a,b,d){if(!b.na)return b.na=!0,a=new u(d.J,b.scope),a.xa=!0,a;b.Ja||(b.Ja=b.value);b.Ea&&(b.qa=b.value);if(!b.Ea){var c=gd(this,b.Ja);b.qa=c;if(this.R)return b.Ea=!0,kd(this,c,b.Ja)}if(b.ya)a.pop(),a[a.length-1].value=b.kb;else{c=Number(b.qa);if("++"===d.operator)var e=c+1;else if("--"===d.operator)e=c-1;else throw SyntaxError("Unknown update expression: "+d.operator);d=d.prefix?e:c;if(c=hd(this,b.Ja,e))return b.ya=!0,b.kb=d,ld(this,c,b.Ja,e);a.pop();a[a.length- 1].value=d}};t.prototype.stepVariableDeclaration=function(a,b,d){d=d.ia;var c=b.B||0,e=d[c];b.Ab&&e&&(fd(this,e.id.name,b.value),b.Ab=!1,e=d[++c]);for(;e;){if(e.za)return b.B=c,b.Ab=!0,b.Sa=e.id.name,new u(e.za,b.scope);e=d[++c]}a.pop()};t.prototype.stepWithStatement=function(a,b,d){if(!b.Fa)return b.Fa=!0,new u(d.object,b.scope);a.pop();a=dd(this,b.scope,b.value);return new u(d.body,a)};t.prototype.stepWhileStatement=t.prototype.stepDoWhileStatement;Pa.Interpreter=t;t.prototype.step=t.prototype.nb; t.prototype.run=t.prototype.Cb;t.prototype.getStatus=t.prototype.Wb;t.prototype.appendCode=t.prototype.Hb;t.prototype.createObject=t.prototype.ga;t.prototype.createObjectProto=t.prototype.s;t.prototype.createNativeFunction=t.prototype.i;t.prototype.createAsyncFunction=t.prototype.ub;t.prototype.getProperty=t.prototype.N;t.prototype.setProperty=t.prototype.g;t.prototype.nativeToPseudo=t.prototype.S;t.prototype.pseudoToNative=t.prototype.T;t.prototype.getGlobalScope=t.prototype.Ub; t.prototype.setGlobalScope=t.prototype.cc;t.prototype.getStateStack=t.prototype.Vb;t.prototype.setStateStack=t.prototype.dc;t.Status=ua;t.VALUE_IN_DESCRIPTOR=Ka;